0@0 0@0 479 -50@-120 200 298 0@0 root 1 26e6c951-1c58-49f0-9d3b-f38d2dc525e6 LibraryGroup-Дальномер 0@0 6 3 8 660@200 680@200 corner: 775.0d@220 660@200 corner: 795.0d@220 684@214.0d 15 550@160 570@160 corner: 610@220 550@160 corner: 630@220 578.5d@173.5d 16 400@100 420@100 corner: 480@160 400@100 corner: 500@160 434.5d@114.0d 13 250@80 270@80 corner: 329.0d@140 250@80 corner: 349.0d@140 281.0d@93.5d en 250@110 270@110 230.0d@113.5d vl53l0x 157ffa6a-fe76-4553-ad61-07086ee11b6c 318646c7-f9c7-41b1-b0ce-94f905d1a9cd dist 1bbca229-6324-45db-ad70-96058dd0b9bc c58cf3c6-b80d-419f-94fb-059846921aeb 2cd9230c-81ab-475d-9f0c-5895d3200e78 vl53l0x Для nRF24L01+ Автор: Слимпер http://flprog.ru/forum/18-626-1 SCK (Serial ClocK) — тактирование (синхронизация). ( Arduino UNO D13 | Arduino Mega D52) MOSI / MI (Master Out Slave In) — вход данных. ( Arduino UNO D11 | Arduino Mega D51) MISO / MO (Master In Slave Out) — выход данных. ( Arduino UNO D12 | Arduino Mega D50) CE/SS - Выбор ведомого на шине SPI из нескольких устройств. SCN - выбор режима приема/передача , фактически тот же CE. IRQ - выход прерывания, чаще всего не используется. Необходим для немедленной реакции микроконтроллера при приеме нового пакета данных. GND - земля, масса, минусовая шина. Vcc -питание модуля 3.3в. Для надежной работы параллельно питанию как можно ближе к радио модулю рекомендуется подключить электролитический конденсатор не менее 100мкф , а так же керамический на 0.1 мкф. Блок служит для настройки работы системы передачи данных !!! Блок должен быть расположен раньше всех остальных из этой серии. Т.е желательно вверху первой платы. Параметры Адреса Устройства - Адреса самого трубы (устройства) в сети. Может быть пустым, если устройство не будет передавать данные. Длинна должна быть равна 5 символам (цифры и буквы латинского алфавита). Вводить в кавычках. Адресов может быть несколько, водить надо через запятую, например: "1Node" , "2Node" Номер по порядку нужно будет подставлять на вход "address", блоков отвечающих за передачу данных. Нумерация адресов начинается с ноля, т.е. запись 4Node" , "6Node" , "7Node" , "9Node" означает: №0 - 4Node" ,№1 - "6Node" ,№3 - "7Node" , №4 -"9Node" Адреса Прослушки - Адреса других труб (устройств) в сети, сообщения с которых будут приниматься текущем устройствам. Может быть пустым, если устройство не будет принимать данные. Длинна одного должна быть равна 5 символам (цифры и буквы латинского алфавита). Вводить в кавычках. Адресов может быть от 1 до 5, водить надо через запятую, например: "1Node" , "2Node" Адреса для прослушки должны иметь один и тот же адрес, кроме первого байта (символа), например: "1Node" , "2Node" , "3Node" , "4Node" Скорость - скорсть предачи данных между модулями. Варианты RF24_250KBPS - 250 кБит/с, RF24_1MBPS - 1 МБит/с, RF24_2MBPS - 2 МБит/с Повторы - Количество повторный отправок до отказа. Входы ChanneNRF24 - Номер канала:0-125 Нулевой канал начинается с 2400мгц и далее с шагом 1 мгц, например 70 канал находится соответственно на 2470мгц. При установке скорости 2 МБит/с занимается ширина двух каналов. Не подключенный вход означает 0 канал. LevelNRF24 - Мощность передатчика: 0- RF24_PA_MIN, 1-RF24_PA_LOW, 2-RF24_PA_HIGH, 3- RF24_PA_MAX соответственно NRF24L01: -18dBm, -12dBm, -6dBM и 0dBm SI24R1: -6dBm, 0dBm, 3dBM и 7dBm. Не подключенный вход означает минимальную мощность. Входы ChanneNRF24 и LevelNRF24 обрабатываются только один раз при старте программы. Подразумевается использование их совместно с EEPROM или блоком меню. То есть, изменил значение в памяти, перезапустил контроллер и вступают в силу новые настройки. PauseNRF24 - пауза между отправками данных, в мс. Используется для задержки отправки следующего покета данных. Не подключенный вход означает 10мс. Initialization - при подачи 1 на вход проводит повторную инициализацию платы. Необходимо если для экономии питания было произведено отключении питания nRF24, вовремя работы контроллера. !!! Во всех других случаях вход оставлять не подключеным. Выхода NRF24_dataObtained - Поступили новые данные. Добавил выход для возможности отключения плат на которых идет обработка новых данных. rxFifoFull - Переполнение приемного буфера nRF24L01+. Означает, что высока вероятность потери части данных. !!! Необходимо принять меры. !!! Возможно, требуется оптимизировать программу текущего контроллера. Или можно увеличить интервалы отправки на передающих. Если на передающем больше одного блока передачи данных, то надо увеличит значение входа PauseNRF24 блока NRF24_Главный на передающем устройстве. 3930 IN_CE 9 69 0 Номер пина к которому подключен выход CE fbd3f2e8-8912-48b5-b6d3-eb92f773719f 50cccd23-223c-4731-b823-d37d2be38190 IN_CSN 10 Номер пина к которому подключен выход CSN 59d6f8ef-9f08-43e3-847e-3b7bb58c2577 b33eaf90-f9af-4b00-8da1-7236db40e026 Адреса Устройства "1Node" Адреса передачи 95bfcf42-fc15-4599-bfdc-8d4692cdc86f 18d6654c-e864-451c-b9df-63687ad994e4 Адреса Прослушки "2Node" Адреса слушать a91d68d3-bebb-4866-9bdb-8b2489b7eb90 8b7b7fd2-59d6-4ec4-a9a2-cd6f7db39b4b Скорость RF24_1MBPS 4bb60441-93d5-4eec-abfc-b8d4aeef9724 cc3d473b-0633-44d0-bde1-17f96407e43f Повторы Количесво повторный попыток 8ee29b24-5817-496e-886d-ddd46e810dd1 52c2f360-8901-4ca2-946b-632c63465437 Serial.print(sensor.readRangeSingleMillimeters()); if (sensor.timeoutOccurred()) { Serial.print(" TIMEOUT"); dist=(sensor.readRangeSingleMillimeters()); Serial.println();} 177 Serial.begin(9600); Wire.begin(); sensor.init(); sensor.setTimeout(500); #if defined LONG_RANGE // lower the return signal rate limit (default is 0.25 MCPS) sensor.setSignalRateLimit(0.1); // increase laser pulse periods (defaults are 14 and 10 PCLKs) sensor.setVcselPulsePeriod(VL53L0X::VcselPeriodPreRange, 18); sensor.setVcselPulsePeriod(VL53L0X::VcselPeriodFinalRange, 14); #endif 405 #include <Wire.h> #include <VL53L0X.h> sensor ; VL53L0X #define LONG_RANGE static byte attemptCounter [((sizeof NRF24_addresWrit)/(sizeof NRF24_addresWrit[0]))]; radio.stopListening(); // остановить слушать if (currentAddress!=addressCode) //Если новый адрес { radio.openWritingPipe( NRF24_addresWrit[ addressCode ] ); // назначить новый currentAddress=addressCode; } bool received =radio.write( buf, 32 ); // отправить radio.startListening(); // возобносить слушать #ifdef NRF24_DEBUG Serial.print( "Number of attempts: "); Serial.println(attemptCounter[addressCode]); if (received) Serial.println("OK"); #endif if (received) {*transmit=0; attemptCounter[addressCode]=0;} else { if (attemptCounter[addressCode]> Повторы ){ attemptCounter[addressCode]=0; *transmit=0;} else {attemptCounter[addressCode]=attemptCounter[addressCode]+1; } } NRF24_started = millis(); NRF24freelyToSend=0; //Закоментировать если надо отправлять все данные в один программный цикл return received; 929 bool RF24_write const void* buf byte addressCode bool *transmit VL53L0X examples Continuous Continuous 2F2A2054686973206578616D706C652073686F777320686F7720746F2075736520636F6E74696E756F7573206D6F646520746F2074616B650A72616E6765206D6561737572656D656E747320776974682074686520564C35334C30582E204974206973206261736564206F6E0A766C35336C30785F436F6E74696E756F757352616E67696E675F4578616D706C652E632066726F6D2074686520564C35334C3058204150492E0A0A5468652072616E67652072656164696E67732061726520696E20756E697473206F66206D6D2E202A2F0A0A23696E636C756465203C576972652E683E0A23696E636C756465203C564C35334C30582E683E0A0A564C35334C30582073656E736F723B0A0A766F696420736574757028290A7B0A202053657269616C2E626567696E2839363030293B0A2020576972652E626567696E28293B0A0A202073656E736F722E696E697428293B0A202073656E736F722E73657454696D656F757428353030293B0A0A20202F2F20537461727420636F6E74696E756F7573206261636B2D746F2D6261636B206D6F6465202874616B652072656164696E67732061730A20202F2F206661737420617320706F737369626C65292E2020546F2075736520636F6E74696E756F75732074696D6564206D6F64650A20202F2F20696E73746561642C2070726F766964652061206465736972656420696E7465722D6D6561737572656D656E7420706572696F6420696E0A20202F2F206D732028652E672E2073656E736F722E7374617274436F6E74696E756F75732831303029292E0A202073656E736F722E7374617274436F6E74696E756F757328293B0A7D0A0A766F6964206C6F6F7028290A7B0A202053657269616C2E7072696E742873656E736F722E7265616452616E6765436F6E74696E756F75734D696C6C696D65746572732829293B0A20206966202873656E736F722E74696D656F75744F63637572726564282929207B2053657269616C2E7072696E7428222054494D454F555422293B207D0A0A202053657269616C2E7072696E746C6E28293B0A7D0A .ino Single Single 2F2A2054686973206578616D706C652073686F777320686F7720746F206765742073696E676C652D73686F742072616E67650A206D6561737572656D656E74732066726F6D2074686520564C35334C30582E205468652073656E736F722063616E206F7074696F6E616C6C792062650A20636F6E66696775726564207769746820646966666572656E742072616E67696E672070726F66696C65732C2061732064657363726962656420696E0A2074686520564C35334C3058204150492075736572206D616E75616C2C20746F206765742062657474657220706572666F726D616E636520666F720A2061206365727461696E206170706C69636174696F6E2E205468697320636F6465206973206261736564206F6E2074686520666F75720A202253696E676C6552616E67696E6722206578616D706C657320696E2074686520564C35334C3058204150492E0A0A205468652072616E67652072656164696E67732061726520696E20756E697473206F66206D6D2E202A2F0A0A23696E636C756465203C576972652E683E0A23696E636C756465203C564C35334C30582E683E0A0A564C35334C30582073656E736F723B0A0A0A2F2F20556E636F6D6D656E742074686973206C696E6520746F20757365206C6F6E672072616E6765206D6F64652E20546869730A2F2F20696E63726561736573207468652073656E7369746976697479206F66207468652073656E736F7220616E6420657874656E6473206974730A2F2F20706F74656E7469616C2072616E67652C2062757420696E6372656173657320746865206C696B656C69686F6F64206F662067657474696E670A2F2F20616E20696E61636375726174652072656164696E672062656361757365206F66207265666C656374696F6E732066726F6D206F626A656374730A2F2F206F74686572207468616E2074686520696E74656E646564207461726765742E20497420776F726B73206265737420696E206461726B0A2F2F20636F6E646974696F6E732E0A0A2F2F23646566696E65204C4F4E475F52414E47450A0A0A2F2F20556E636F6D6D656E74204F4E45206F662074686573652074776F206C696E657320746F206765740A2F2F202D206869676865722073706565642061742074686520636F7374206F66206C6F776572206163637572616379204F520A2F2F202D206869676865722061636375726163792061742074686520636F7374206F66206C6F7765722073706565640A0A2F2F23646566696E6520484947485F53504545440A2F2F23646566696E6520484947485F41434355524143590A0A0A766F696420736574757028290A7B0A202053657269616C2E626567696E2839363030293B0A2020576972652E626567696E28293B0A0A202073656E736F722E696E697428293B0A202073656E736F722E73657454696D656F757428353030293B0A0A23696620646566696E6564204C4F4E475F52414E47450A20202F2F206C6F776572207468652072657475726E207369676E616C2072617465206C696D6974202864656661756C7420697320302E3235204D435053290A202073656E736F722E7365745369676E616C526174654C696D697428302E31293B0A20202F2F20696E637265617365206C617365722070756C736520706572696F6473202864656661756C74732061726520313420616E642031302050434C4B73290A202073656E736F722E736574566373656C50756C7365506572696F6428564C35334C30583A3A566373656C506572696F6450726552616E67652C203138293B0A202073656E736F722E736574566373656C50756C7365506572696F6428564C35334C30583A3A566373656C506572696F6446696E616C52616E67652C203134293B0A23656E6469660A0A23696620646566696E656420484947485F53504545440A20202F2F207265647563652074696D696E672062756467657420746F203230206D73202864656661756C742069732061626F7574203333206D73290A202073656E736F722E7365744D6561737572656D656E7454696D696E67427564676574283230303030293B0A23656C696620646566696E656420484947485F41434355524143590A20202F2F20696E6372656173652074696D696E672062756467657420746F20323030206D730A202073656E736F722E7365744D6561737572656D656E7454696D696E6742756467657428323030303030293B0A23656E6469660A7D0A0A766F6964206C6F6F7028290A7B0A202053657269616C2E7072696E742873656E736F722E7265616452616E676553696E676C654D696C6C696D65746572732829293B0A20206966202873656E736F722E74696D656F75744F63637572726564282929207B2053657269616C2E7072696E7428222054494D454F555422293B207D0A0A202053657269616C2E7072696E746C6E28293B0A7D0A .ino keywords 564C35334C3058094B4559574F5244310A0A73657441646472657373094B4559574F5244320A67657441646472657373094B4559574F5244320A696E6974094B4559574F5244320A7772697465526567094B4559574F5244320A77726974655265673136426974094B4559574F5244320A77726974655265673332426974094B4559574F5244320A72656164526567094B4559574F5244320A726561645265673136426974094B4559574F5244320A726561645265673332426974094B4559574F5244320A77726974654D756C7469094B4559574F5244320A726561644D756C7469094B4559574F5244320A7365745369676E616C526174654C696D6974094B4559574F5244320A6765745369676E616C526174654C696D6974094B4559574F5244320A7365744D6561737572656D656E7454696D696E67427564676574094B4559574F5244320A6765744D6561737572656D656E7454696D696E67427564676574094B4559574F5244320A736574566373656C50756C7365506572696F64094B4559574F5244320A676574566373656C50756C7365506572696F64094B4559574F5244320A7374617274436F6E74696E756F7573094B4559574F5244320A73746F70436F6E74696E756F7573094B4559574F5244320A7265616452616E6765436F6E74696E756F75734D696C6C696D6574657273094B4559574F5244320A7265616452616E676553696E676C654D696C6C696D6574657273094B4559574F5244320A73657454696D656F7574094B4559574F5244320A67657454696D656F7574094B4559574F5244320A74696D656F75744F63637572726564094B4559574F5244320A0A53595352414E47455F5354415254094C49544552414C310A53595354454D5F5448524553485F48494748094C49544552414C310A53595354454D5F5448524553485F4C4F57094C49544552414C310A53595354454D5F53455155454E43455F434F4E464947094C49544552414C310A53595354454D5F52414E47455F434F4E464947094C49544552414C310A53595354454D5F494E5445524D4541535552454D454E545F504552494F44094C49544552414C310A53595354454D5F494E544552525550545F434F4E4649475F4750494F094C49544552414C310A4750494F5F48565F4D55585F4143544956455F48494748094C49544552414C310A53595354454D5F494E544552525550545F434C454152094C49544552414C310A524553554C545F494E544552525550545F535441545553094C49544552414C310A524553554C545F52414E47455F535441545553094C49544552414C310A524553554C545F434F52455F414D4249454E545F57494E444F575F4556454E54535F52544E094C49544552414C310A524553554C545F434F52455F52414E47494E475F544F54414C5F4556454E54535F52544E094C49544552414C310A524553554C545F434F52455F414D4249454E545F57494E444F575F4556454E54535F524546094C49544552414C310A524553554C545F434F52455F52414E47494E475F544F54414C5F4556454E54535F524546094C49544552414C310A524553554C545F5045414B5F5349474E414C5F524154455F524546094C49544552414C310A414C474F5F504152545F544F5F504152545F52414E47455F4F46465345545F4D4D094C49544552414C310A4932435F534C4156455F4445564943455F41444452455353094C49544552414C310A4D5352435F434F4E4649475F434F4E54524F4C094C49544552414C310A5052455F52414E47455F434F4E4649475F4D494E5F534E52094C49544552414C310A5052455F52414E47455F434F4E4649475F56414C49445F50484153455F4C4F57094C49544552414C310A5052455F52414E47455F434F4E4649475F56414C49445F50484153455F48494748094C49544552414C310A5052455F52414E47455F4D494E5F434F554E545F524154455F52544E5F4C494D4954094C49544552414C310A46494E414C5F52414E47455F434F4E4649475F4D494E5F534E52094C49544552414C310A46494E414C5F52414E47455F434F4E4649475F56414C49445F50484153455F4C4F57094C49544552414C310A46494E414C5F52414E47455F434F4E4649475F56414C49445F50484153455F48494748094C49544552414C310A46494E414C5F52414E47455F434F4E4649475F4D494E5F434F554E545F524154455F52544E5F4C494D4954094C49544552414C310A5052455F52414E47455F434F4E4649475F5349474D415F5448524553485F4849094C49544552414C310A5052455F52414E47455F434F4E4649475F5349474D415F5448524553485F4C4F094C49544552414C310A5052455F52414E47455F434F4E4649475F564353454C5F504552494F44094C49544552414C310A5052455F52414E47455F434F4E4649475F54494D454F55545F4D4143524F505F4849094C49544552414C310A5052455F52414E47455F434F4E4649475F54494D454F55545F4D4143524F505F4C4F094C49544552414C310A53595354454D5F484953544F4752414D5F42494E094C49544552414C310A484953544F4752414D5F434F4E4649475F494E495449414C5F50484153455F53454C454354094C49544552414C310A484953544F4752414D5F434F4E4649475F524541444F55545F4354524C094C49544552414C310A46494E414C5F52414E47455F434F4E4649475F564353454C5F504552494F44094C49544552414C310A46494E414C5F52414E47455F434F4E4649475F54494D454F55545F4D4143524F505F4849094C49544552414C310A46494E414C5F52414E47455F434F4E4649475F54494D454F55545F4D4143524F505F4C4F094C49544552414C310A43524F535354414C4B5F434F4D50454E534154494F4E5F5045414B5F524154455F4D435053094C49544552414C310A4D5352435F434F4E4649475F54494D454F55545F4D4143524F50094C49544552414C310A534F46545F52455345545F474F325F534F46545F52455345545F4E094C49544552414C310A4944454E54494649434154494F4E5F4D4F44454C5F4944094C49544552414C310A4944454E54494649434154494F4E5F5245564953494F4E5F4944094C49544552414C310A4F53435F43414C4942524154455F56414C094C49544552414C310A474C4F42414C5F434F4E4649475F564353454C5F5749445448094C49544552414C310A474C4F42414C5F434F4E4649475F535041445F454E41424C45535F5245465F30094C49544552414C310A474C4F42414C5F434F4E4649475F535041445F454E41424C45535F5245465F31094C49544552414C310A474C4F42414C5F434F4E4649475F535041445F454E41424C45535F5245465F32094C49544552414C310A474C4F42414C5F434F4E4649475F535041445F454E41424C45535F5245465F33094C49544552414C310A474C4F42414C5F434F4E4649475F535041445F454E41424C45535F5245465F34094C49544552414C310A474C4F42414C5F434F4E4649475F535041445F454E41424C45535F5245465F35094C49544552414C310A474C4F42414C5F434F4E4649475F5245465F454E5F53544152545F53454C454354094C49544552414C310A44594E414D49435F535041445F4E554D5F5245515545535445445F5245465F53504144094C49544552414C310A44594E414D49435F535041445F5245465F454E5F53544152545F4F4646534554094C49544552414C310A504F5745525F4D414E4147454D454E545F474F315F504F5745525F464F524345094C49544552414C310A5648565F434F4E4649475F5041445F53434C5F5344415F5F4558545355505F4856094C49544552414C310A414C474F5F504841534543414C5F4C494D094C49544552414C310A414C474F5F504841534543414C5F434F4E4649475F54494D454F5554094C49544552414C310A0A566373656C506572696F6450726552616E6765094C49544552414C310A566373656C506572696F6446696E616C52616E6765094C49544552414C310A0A0A .txt library 6E616D653D564C35334C30580A76657273696F6E3D312E302E320A617574686F723D506F6C6F6C750A6D61696E7461696E65723D506F6C6F6C75203C696E626F7840706F6C6F6C752E636F6D3E0A73656E74656E63653D564C35334C30582064697374616E63652073656E736F72206C6962726172790A7061726167726170683D546869732069732061206C69627261727920666F72207468652041726475696E6F2049444520746861742068656C707320696E746572666163652077697468205354277320564C35334C30582064697374616E63652073656E736F722E0A63617465676F72793D53656E736F72730A75726C3D68747470733A2F2F6769746875622E636F6D2F706F6C6F6C752F766C35336C30782D61726475696E6F0A617263686974656374757265733D2A0A .properties LICENSE 436F7079726967687420286329203230313720506F6C6F6C7520436F72706F726174696F6E2E2020466F72206D6F726520696E666F726D6174696F6E2C207365650A0A68747470733A2F2F7777772E706F6C6F6C752E636F6D2F0A68747470733A2F2F666F72756D2E706F6C6F6C752E636F6D2F0A0A5065726D697373696F6E20697320686572656279206772616E7465642C2066726565206F66206368617267652C20746F20616E7920706572736F6E0A6F627461696E696E67206120636F7079206F66207468697320736F66747761726520616E64206173736F63696174656420646F63756D656E746174696F6E0A66696C657320287468652022536F66747761726522292C20746F206465616C20696E2074686520536F66747761726520776974686F75740A7265737472696374696F6E2C20696E636C7564696E6720776974686F7574206C696D69746174696F6E207468652072696768747320746F207573652C0A636F70792C206D6F646966792C206D657267652C207075626C6973682C20646973747269627574652C207375626C6963656E73652C20616E642F6F722073656C6C0A636F70696573206F662074686520536F6674776172652C20616E6420746F207065726D697420706572736F6E7320746F2077686F6D207468650A536F667477617265206973206675726E697368656420746F20646F20736F2C207375626A65637420746F2074686520666F6C6C6F77696E670A636F6E646974696F6E733A0A0A5468652061626F766520636F70797269676874206E6F7469636520616E642074686973207065726D697373696F6E206E6F74696365207368616C6C2062650A696E636C7564656420696E20616C6C20636F70696573206F72207375627374616E7469616C20706F7274696F6E73206F662074686520536F6674776172652E0A0A54484520534F4654574152452049532050524F564944454420224153204953222C20574954484F55542057415252414E5459204F4620414E59204B494E442C0A45585052455353204F5220494D504C4945442C20494E434C5544494E4720425554204E4F54204C494D4954454420544F205448452057415252414E544945530A4F46204D45524348414E544142494C4954592C204649544E45535320464F52204120504152544943554C415220505552504F534520414E440A4E4F4E494E4652494E47454D454E542E20494E204E4F204556454E54205348414C4C2054484520415554484F5253204F5220434F505952494748540A484F4C44455253204245204C4941424C4520464F5220414E5920434C41494D2C2044414D41474553204F52204F54484552204C494142494C4954592C0A5748455448455220494E20414E20414354494F4E204F4620434F4E54524143542C20544F5254204F52204F54484552574953452C2041524953494E470A46524F4D2C204F5554204F46204F5220494E20434F4E4E454354494F4E20574954482054484520534F465457415245204F522054484520555345204F520A4F54484552204445414C494E475320494E2054484520534F4654574152452E0A0A3D3D3D3D3D3D3D3D3D3D3D3D3D3D3D3D3D3D3D3D3D3D3D3D3D3D3D3D3D3D3D3D3D3D3D3D3D3D3D3D3D3D3D3D3D3D3D3D3D3D3D3D3D3D3D3D3D3D3D3D3D3D3D3D3D0A0A4D6F7374206F66207468652066756E6374696F6E616C697479206F662074686973206C696272617279206973206261736564206F6E2074686520564C35334C30580A4150492070726F76696465642062792053542028535453572D494D47303035292C20616E6420736F6D65206F6620746865206578706C616E61746F72790A636F6D6D656E7473206172652071756F746564206F722070617261706872617365642066726F6D207468652041504920736F7572636520636F64652C204150490A75736572206D616E75616C2028554D32303339292C20616E642074686520564C35334C3058206461746173686565742E0A0A54686520666F6C6C6F77696E67206170706C69657320746F20736F7572636520636F646520726570726F6475636564206F7220646572697665642066726F6D0A746865204150493A0A0A2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D0A0A436F7079726967687420C2A920323031362C2053544D6963726F656C656374726F6E69637320496E7465726E6174696F6E616C204E2E562E2020416C6C0A7269676874732072657365727665642E0A0A5265646973747269627574696F6E20616E642075736520696E20736F7572636520616E642062696E61727920666F726D732C2077697468206F720A776974686F7574206D6F64696669636174696F6E2C20617265207065726D69747465642070726F766964656420746861742074686520666F6C6C6F77696E670A636F6E646974696F6E7320617265206D65743A0A2A205265646973747269627574696F6E73206F6620736F7572636520636F6465206D7573742072657461696E207468652061626F766520636F707972696768740A6E6F746963652C2074686973206C697374206F6620636F6E646974696F6E7320616E642074686520666F6C6C6F77696E6720646973636C61696D65722E0A2A205265646973747269627574696F6E7320696E2062696E61727920666F726D206D75737420726570726F64756365207468652061626F76650A636F70797269676874206E6F746963652C2074686973206C697374206F6620636F6E646974696F6E7320616E642074686520666F6C6C6F77696E670A646973636C61696D657220696E2074686520646F63756D656E746174696F6E20616E642F6F72206F74686572206D6174657269616C732070726F76696465640A776974682074686520646973747269627574696F6E2E0A2A204E65697468657220746865206E616D65206F662053544D6963726F656C656374726F6E696373206E6F72207468650A6E616D6573206F662069747320636F6E7472696275746F7273206D6179206265207573656420746F20656E646F727365206F722070726F6D6F74650A70726F647563747320646572697665642066726F6D207468697320736F66747761726520776974686F7574207370656369666963207072696F720A7772697474656E207065726D697373696F6E2E0A0A5448495320534F4654574152452049532050524F56494445442042592054484520434F5059524947485420484F4C4445525320414E440A434F4E5452494255544F5253202241532049532220414E4420414E592045585052455353204F5220494D504C4945442057415252414E544945532C0A494E434C5544494E472C20425554204E4F54204C494D4954454420544F2C2054484520494D504C4945442057415252414E54494553204F460A4D45524348414E544142494C4954592C204649544E45535320464F52204120504152544943554C415220505552504F53452C20414E440A4E4F4E2D494E4652494E47454D454E54204F4620494E54454C4C45435455414C2050524F5045525459205249474854532041524520444953434C41494D45442E0A494E204E4F204556454E54205348414C4C2053544D4943524F454C454354524F4E49435320494E5445524E4154494F4E414C204E2E562E204245204C4941424C450A464F5220414E59204449524543542C20494E4449524543542C20494E434944454E54414C2C205350454349414C2C204558454D504C4152592C204F520A434F4E53455155454E5449414C2044414D414745532028494E434C5544494E472C20425554204E4F54204C494D4954454420544F2C2050524F435552454D454E540A4F46205355425354495455544520474F4F4453204F522053455256494345533B204C4F5353204F46205553452C20444154412C204F522050524F464954533B0A4F5220425553494E45535320494E54455252555054494F4E2920484F57455645522043415553454420414E44204F4E20414E59205448454F5259204F460A4C494142494C4954592C205748455448455220494E20434F4E54524143542C20535452494354204C494142494C4954592C204F5220544F52540A28494E434C5544494E47204E45474C4947454E4345204F52204F5448455257495345292041524953494E4720494E20414E5920574159204F5554204F46205448450A555345204F46205448495320534F4654574152452C204556454E2049462041445649534544204F462054484520504F53534942494C495459204F4620535543480A44414D4147452E0A0A2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D0A .txt README 2320564C35334C3058206C69627261727920666F722041726475696E6F0A0A56657273696F6E3A20312E302E323C62723E0A52656C6561736520646174653A2032303137204A756E2032373C62723E0A5B215B4275696C64205374617475735D2868747470733A2F2F7472617669732D63692E6F72672F706F6C6F6C752F766C35336C30782D61726475696E6F2E7376673F6272616E63683D6D6173746572295D2868747470733A2F2F7472617669732D63692E6F72672F706F6C6F6C752F766C35336C30782D61726475696E6F293C62723E0A5B7777772E706F6C6F6C752E636F6D5D2868747470733A2F2F7777772E706F6C6F6C752E636F6D2F290A0A23232053756D6D6172790A0A546869732069732061206C69627261727920666F72207468652041726475696E6F2049444520746861742068656C707320696E7465726661636520776974682053542773205B564C35334C30582074696D652D6F662D666C696768742064697374616E63652073656E736F725D2868747470733A2F2F7777772E706F6C6F6C752E636F6D2F70726F647563742F32343930292E20546865206C696272617279206D616B65732069742073696D706C6520746F20636F6E666967757265207468652073656E736F7220616E6420726561642072616E676520646174612066726F6D20697420766961204926737570323B432E0A0A232320537570706F7274656420706C6174666F726D730A0A54686973206C6962726172792069732064657369676E656420746F20776F726B2077697468207468652041726475696E6F204944452076657273696F6E7320312E362E78206F72206C617465723B2077652068617665206E6F74207465737465642069742077697468206561726C6965722076657273696F6E732E202054686973206C6962726172792073686F756C6420737570706F727420616E792041726475696E6F2D636F6D70617469626C6520626F6172642C20696E636C7564696E6720746865205B506F6C6F6C7520412D53746172203332553420636F6E74726F6C6C6572735D2868747470733A2F2F7777772E706F6C6F6C752E636F6D2F63617465676F72792F3134392F612D737461722D70726F6772616D6D61626C652D636F6E74726F6C6C657273292E0A0A23232047657474696E6720737461727465640A0A2323232048617264776172650A0A41205B564C35334C305820636172726965725D2868747470733A2F2F7777772E706F6C6F6C752E636F6D2F70726F647563742F32343930292063616E206265207075726368617365642066726F6D20506F6C6F6C75277320776562736974652E20204265666F726520636F6E74696E75696E672C206361726566756C2072656164696E67206F6620746865205B70726F6475637420706167655D2868747470733A2F2F7777772E706F6C6F6C752E636F6D2F70726F647563742F32343930292061732077656C6C2061732074686520564C35334C305820646174617368656574206973207265636F6D6D656E6465642E0A0A4D616B652074686520666F6C6C6F77696E6720636F6E6E656374696F6E73206265747765656E207468652041726475696E6F20616E642074686520564C35334C305820626F6172643A0A0A232323232035562041726475696E6F20626F617264730A0A28696E636C7564696E672041726475696E6F20556E6F2C204C656F6E6172646F2C204D6567613B20506F6C6F6C7520412D537461722033325534290A0A2020202041726475696E6F202020564C35334C305820626F6172640A202020202D2D2D2D2D2D2D2020202D2D2D2D2D2D2D2D2D2D2D2D2D0A2020202020202020203556202D2056494E0A2020202020202020474E44202D20474E440A2020202020202020534441202D205344410A202020202020202053434C202D2053434C0A0A2323232320332E33562041726475696E6F20626F617264730A0A28696E636C7564696E672041726475696E6F20447565290A0A2020202041726475696E6F202020564C35334C305820626F6172640A202020202D2D2D2D2D2D2D2020202D2D2D2D2D2D2D2D2D2D2D2D2D0A2020202020202020335633202D2056494E0A2020202020202020474E44202D20474E440A2020202020202020534441202D205344410A202020202020202053434C202D2053434C0A0A23232320536F6674776172650A0A496620796F7520617265207573696E672076657273696F6E20312E362E32206F72206C61746572206F6620746865205B41726475696E6F20736F6674776172652028494445295D28687474703A2F2F7777772E61726475696E6F2E63632F656E2F4D61696E2F536F667477617265292C20796F752063616E2075736520746865204C696272617279204D616E6167657220746F20696E7374616C6C2074686973206C6962726172793A0A0A312E20496E207468652041726475696E6F204944452C206F70656E207468652022536B6574636822206D656E752C2073656C6563742022496E636C756465204C696272617279222C207468656E20224D616E616765204C69627261726965732E2E2E222E0A322E2053656172636820666F722022564C35334C3058222E0A332E20436C69636B2074686520564C35334C305820656E74727920696E20746865206C6973742E0A342E20436C69636B2022496E7374616C6C222E0A0A4966207468697320646F6573206E6F7420776F726B2C20796F752063616E206D616E75616C6C7920696E7374616C6C20746865206C6962726172793A0A0A312E20446F776E6C6F616420746865205B6C61746573742072656C6561736520617263686976652066726F6D204769744875625D2868747470733A2F2F6769746875622E636F6D2F706F6C6F6C752F766C35336C30782D61726475696E6F2F72656C65617365732920616E64206465636F6D70726573732069742E0A322E2052656E616D652074686520666F6C6465722022766C35336C30782D61726475696E6F2D6D61737465722220746F2022564C35334C3058222E0A332E204D6F7665207468652022564C35334C30582220666F6C64657220696E746F2074686520226C696272617269657322206469726563746F727920696E7369646520796F75722041726475696E6F20736B65746368626F6F6B206469726563746F72792E2020596F752063616E207669657720796F757220736B65746368626F6F6B206C6F636174696F6E206279206F70656E696E6720746865202246696C6522206D656E7520616E642073656C656374696E672022507265666572656E6365732220696E207468652041726475696E6F204944452E20204966207468657265206973206E6F7420616C7265616479206120226C69627261726965732220666F6C64657220696E2074686174206C6F636174696F6E2C20796F752073686F756C64206D616B652074686520666F6C64657220796F757273656C662E0A342E20416674657220696E7374616C6C696E6720746865206C6962726172792C2072657374617274207468652041726475696E6F204944452E0A0A2323204578616D706C65730A0A5365766572616C206578616D706C6520736B6574636865732061726520617661696C61626C6520746861742073686F7720686F7720746F2075736520746865206C6962726172792E20596F752063616E20616363657373207468656D2066726F6D207468652041726475696E6F20494445206279206F70656E696E6720746865202246696C6522206D656E752C2073656C656374696E6720224578616D706C6573222C20616E64207468656E2073656C656374696E672022564C35334C3058222E20496620796F752063616E6E6F742066696E64207468657365206578616D706C65732C20746865206C696272617279207761732070726F6261626C7920696E7374616C6C656420696E636F72726563746C7920616E6420796F752073686F756C642072657472792074686520696E7374616C6C6174696F6E20696E737472756374696F6E732061626F76652E0A0A2323205354277320564C35334C30582041504920616E642074686973206C6962726172790A0A4D6F7374206F66207468652066756E6374696F6E616C697479206F662074686973206C696272617279206973206261736564206F6E20746865205B564C35334C3058204150495D28687474703A2F2F7777772E73742E636F6D2F636F6E74656E742F73745F636F6D2F656E2F70726F64756374732F656D6265646465642D736F6674776172652F70726F78696D6974792D73656E736F72732D736F6674776172652F737473772D696D673030352E68746D6C292070726F76696465642062792053542028535453572D494D47303035292C20616E6420736F6D65206F6620746865206578706C616E61746F727920636F6D6D656E747320696E2074686520636F6465206172652071756F746564206F722070617261706872617365642066726F6D207468652041504920736F7572636520636F64652C204150492075736572206D616E75616C2028554D32303339292C20616E642074686520564C35334C3058206461746173686565742E20466F72206D6F7265206578706C616E6174696F6E2061626F757420746865206C69627261727920636F646520616E6420686F772069742077617320646572697665642066726F6D20746865204150492C207365652074686520636F6D6D656E747320696E20564C35334C30582E6370702E0A0A54686973206C69627261727920697320696E74656E64656420746F2070726F76696465206120717569636B657220616E64206561736965722077617920746F206765742073746172746564207573696E672074686520564C35334C3058207769746820616E2041726475696E6F2D636F6D70617469626C6520636F6E74726F6C6C65722C20696E20636F6E747261737420746F20637573746F6D697A696E6720616E6420636F6D70696C696E6720535427732041504920666F72207468652041726475696E6F2E20546865206C696272617279206861732061206D6F72652073747265616D6C696E656420696E746572666163652C2061732077656C6C20617320736D616C6C65722073746F7261676520616E64206D656D6F727920666F6F747072696E74732E20486F77657665722C20697420646F6573206E6F7420696D706C656D656E7420736F6D65206F6620746865206D6F726520616476616E6365642066756E6374696F6E616C69747920617661696C61626C6520696E20746865204150492028666F72206578616D706C652C2063616C6962726174696E67207468652073656E736F7220746F20776F726B2077656C6C20756E646572206120636F76657220676C617373292C20616E6420697420686173206C65737320726F62757374206572726F7220636865636B696E672E20466F7220616476616E636564206170706C69636174696F6E732C20657370656369616C6C79207768656E2073746F7261676520616E64206D656D6F727920617265206C657373206F6620616E2069737375652C20636F6E7369646572207573696E672074686520564C35334C305820415049206469726563746C792E0A0A2323204C696272617279207265666572656E63650A0A2A206075696E74385F74206C6173745F737461747573603C62723E0A202054686520737461747573206F6620746865206C617374204926737570323B43207772697465207472616E736D697373696F6E2E2053656520746865205B60576972652E656E645472616E736D697373696F6E28296020646F63756D656E746174696F6E5D28687474703A2F2F61726475696E6F2E63632F656E2F5265666572656E63652F57697265456E645472616E736D697373696F6E2920666F722072657475726E2076616C7565732E0A0A2A2060564C35334C305828766F696429603C62723E0A2020436F6E7374727563746F722E0A0A2A2060766F696420736574416464726573732875696E74385F74206E65775F6164647229603C62723E0A20204368616E67657320746865204926737570323B4320736C617665206465766963652061646472657373206F662074686520564C35334C305820746F2074686520676976656E2076616C75652028372D626974292E0A0A2A206075696E74385F74206765744164647265737328766F696429603C62723E0A202052657475726E73207468652063757272656E74204926737570323B4320616464726573732E0A0A2A2060626F6F6C20696E697428626F6F6C20696F5F327638203D207472756529603C62723E0A2020496E69697469616C697A657320616E6420636F6E66696775726573207468652073656E736F722E20496620746865206F7074696F6E616C20617267756D656E742060696F5F32763860206973207472756520287468652064656661756C74206966206E6F7420737065636966696564292C207468652073656E736F7220697320636F6E6669677572656420666F7220325638206D6F64652028322E38205620492F4F293B2069662066616C73652C207468652073656E736F72206973206C65667420696E20315638206D6F64652E205468652072657475726E2076616C7565206973206120626F6F6C65616E20696E6469636174696E6720776865746865722074686520696E697469616C697A6174696F6E20636F6D706C65746564207375636365737366756C6C792E200A0A2A2060766F69642077726974655265672875696E74385F74207265672C2075696E74385F742076616C756529603C62723E0A202057726974657320616E20382D6269742073656E736F7220726567697374657220776974682074686520676976656E2076616C75652E0A0A20205265676973746572206164647265737320636F6E7374616E74732061726520646566696E656420627920746865207265674164647220656E756D65726174696F6E207479706520696E20564C35334C30582E682E3C62723E0A20204578616D706C65207573653A206073656E736F722E777269746552656728564C35334C30583A3A53595352414E47455F53544152542C2030783031293B600A0A2A2060766F696420777269746552656731364269742875696E74385F74207265672C2075696E7431365F742076616C756529603C62723E0A202057726974657320612031362D6269742073656E736F7220726567697374657220776974682074686520676976656E2076616C75652E0A0A2A2060766F696420777269746552656733324269742875696E74385F74207265672C2075696E7433325F742076616C756529603C62723E0A202057726974657320612033322D6269742073656E736F7220726567697374657220776974682074686520676976656E2076616C75652E0A0A2A206075696E74385F7420726561645265672875696E74385F742072656729603C62723E0A2020526561647320616E20382D6269742073656E736F7220726567697374657220616E642072657475726E73207468652076616C756520726561642E0A0A2A206075696E7431365F74207265616452656731364269742875696E74385F742072656729603C62723E0A2020526561647320612031362D6269742073656E736F7220726567697374657220616E642072657475726E73207468652076616C756520726561642E0A0A2A206075696E7433325F74207265616452656733324269742875696E74385F742072656729603C62723E0A2020526561647320612033322D6269742073656E736F7220726567697374657220616E642072657475726E73207468652076616C756520726561642E0A0A2A2060766F69642077726974654D756C74692875696E74385F74207265672C2075696E74385F7420636F6E7374202A207372632C2075696E74385F7420636F756E7429603C62723E0A202057726974657320616E20617262697472617279206E756D626572206F662062797465732066726F6D2074686520676976656E20617272617920746F207468652073656E736F722C207374617274696E672061742074686520676976656E2072656769737465722E0A0A2A2060766F696420726561644D756C74692875696E74385F74207265672C2075696E74385F74202A206473742C2075696E74385F7420636F756E7429603C62723E0A2020526561647320616E20617262697472617279206E756D626572206F662062797465732066726F6D207468652073656E736F722C207374617274696E672061742074686520676976656E2072656769737465722C20696E746F2074686520676976656E2061727261792E0A0A2A2060626F6F6C207365745369676E616C526174654C696D697428666C6F6174206C696D69745F4D63707329603C62723E0A202053657473207468652072657475726E207369676E616C2072617465206C696D697420746F2074686520676976656E2076616C756520696E20756E697473206F66204D43505320286D65676120636F756E747320706572207365636F6E64292E205468697320697320746865206D696E696D756D20616D706C6974756465206F6620746865207369676E616C207265666C65637465642066726F6D207468652074617267657420616E64207265636569766564206279207468652073656E736F72206E656365737361727920666F7220697420746F207265706F727420612076616C69642072656164696E672E2053657474696E672061206C6F776572206C696D697420696E637265617365732074686520706F74656E7469616C2072616E6765206F66207468652073656E736F722062757420616C736F20696E6372656173657320746865206C696B656C69686F6F64206F662067657474696E6720616E20696E61636375726174652072656164696E672062656361757365206F66207265666C656374696F6E732066726F6D206F626A65637473206F74686572207468616E2074686520696E74656E646564207461726765742E2054686973206C696D697420697320696E697469616C697A656420746F20302E3235204D4350532062792064656661756C742E205468652072657475726E2076616C7565206973206120626F6F6C65616E20696E6469636174696E6720776865746865722074686520726571756573746564206C696D6974207761732076616C69642E0A0A2A2060666C6F6174206765745369676E616C526174654C696D697428766F696429603C62723E0A202052657475726E73207468652063757272656E742072657475726E207369676E616C2072617465206C696D697420696E204D4350532E0A0A2A2060626F6F6C207365744D6561737572656D656E7454696D696E674275646765742875696E7433325F74206275646765745F757329603C62723E0A20205365747320746865206D6561737572656D656E742074696D696E672062756467657420746F2074686520676976656E2076616C756520696E206D6963726F7365636F6E64732E2054686973206973207468652074696D6520616C6C6F77656420666F72206F6E652072616E6765206D6561737572656D656E743B2061206C6F6E6765722074696D696E672062756467657420616C6C6F777320666F72206D6F7265206163637572617465206D6561737572656D656E74732E205468652064656661756C74206275646765742069732061626F7574203333303030206D6963726F7365636F6E64732C206F72203333206D733B20746865206D696E696D756D206973203230206D732E205468652072657475726E2076616C7565206973206120626F6F6C65616E20696E6469636174696E672077686574686572207468652072657175657374656420627564676574207761732076616C69642E0A0A2A206075696E7433325F74206765744D6561737572656D656E7454696D696E6742756467657428766F696429603C62723E0A202052657475726E73207468652063757272656E74206D6561737572656D656E742074696D696E672062756467657420696E206D6963726F7365636F6E64732E0A0A2A2060626F6F6C20736574566373656C50756C7365506572696F6428766373656C506572696F645479706520747970652C2075696E74385F7420706572696F645F70636C6B7329600A2020536574732074686520564353454C2028766572746963616C20636176697479207375726661636520656D697474696E67206C61736572292070756C736520706572696F6420666F722074686520676976656E20706572696F642074797065202860564C35334C30583A3A566373656C506572696F6450726552616E676560206F722060564C35334C30583A3A566373656C506572696F6446696E616C52616E6765602920746F2074686520676976656E2076616C75652028696E2050434C4B73292E204C6F6E67657220706572696F647320696E6372656173652074686520706F74656E7469616C2072616E6765206F66207468652073656E736F722E2056616C69642076616C7565732061726520286576656E206E756D62657273206F6E6C79293A0A0A20205072653A20313220746F2031382028696E697469616C697A656420746F2031342062792064656661756C74293C62723E0A202046696E616C3A203820746F2031342028696E697469616C697A656420746F2031302062792064656661756C74290A0A20205468652072657475726E2076616C7565206973206120626F6F6C65616E20696E6469636174696E672077686574686572207468652072657175657374656420706572696F64207761732076616C69642E0A0A2A206075696E74385F7420676574566373656C50756C7365506572696F6428766373656C506572696F6454797065207479706529603C62723E0A202052657475726E73207468652063757272656E7420564353454C2070756C736520706572696F6420666F722074686520676976656E20706572696F6420747970652E0A0A2A2060766F6964207374617274436F6E74696E756F75732875696E7433325F7420706572696F645F6D73203D203029603C62723E0A202053746172747320636F6E74696E756F75732072616E67696E67206D6561737572656D656E74732E20496620746865206F7074696F6E616C20617267756D656E742060706572696F645F6D7360206973203020287468652064656661756C74206966206E6F7420737065636966696564292C20636F6E74696E756F7573206261636B2D746F2D6261636B206D6F6465206973207573656420287468652073656E736F722074616B6573206D6561737572656D656E7473206173206F6674656E20617320706F737369626C65293B206966206974206973206E6F6E7A65726F2C20636F6E74696E756F75732074696D6564206D6F646520697320757365642C2077697468207468652073706563696669656420696E7465722D6D6561737572656D656E7420706572696F6420696E206D696C6C697365636F6E64732064657465726D696E696E6720686F77206F6674656E207468652073656E736F722074616B65732061206D6561737572656D656E742E0A0A2A2060766F69642073746F70436F6E74696E756F757328766F696429603C62723E0A202053746F707320636F6E74696E756F7573206D6F64652E0A0A2A206075696E7431365F74207265616452616E6765436F6E74696E756F75734D696C6C696D657465727328766F696429603C62723E0A202052657475726E7320612072616E67652072656164696E6720696E206D696C6C696D6574657273207768656E20636F6E74696E756F7573206D6F6465206973206163746976652E0A0A2A206075696E7431365F74207265616452616E676553696E676C654D696C6C696D657465727328766F696429603C62723E0A2020506572666F726D7320612073696E676C652D73686F742072616E67696E67206D6561737572656D656E7420616E642072657475726E73207468652072656164696E6720696E206D696C6C696D65746572732E0A0A2A2060766F69642073657454696D656F75742875696E7431365F742074696D656F757429603C62723E0A20205365747320612074696D656F757420706572696F6420696E206D696C6C697365636F6E64732061667465722077686963682072656164206F7065726174696F6E732077696C6C2061626F7274206966207468652073656E736F72206973206E6F742072656164792E20412076616C7565206F6620302064697361626C6573207468652074696D656F75742E0A0A2A206075696E7431365F742067657454696D656F757428766F696429603C62723E0A202052657475726E73207468652063757272656E742074696D656F757420706572696F642073657474696E672E0A0A2A2060626F6F6C2074696D656F75744F6363757272656428766F696429603C62723E0A2020496E646963617465732077686574686572206120726561642074696D656F757420686173206F636375727265642073696E636520746865206C6173742063616C6C20746F206074696D656F75744F636375727265642829602E0A0A23232056657273696F6E20686973746F72790A0A2A20312E302E32202832303137204A756E203237293A2046697865642061207479706F20696E2061207265676973746572206D6F64696669636174696F6E20696E206067657453706164496E666F28296020287468616E6B732040747269646765292E0A2A20312E302E3120283230313620446563203038293A2046697865642074797065206572726F7220696E20607265616452656733324269742829602E0A2A20312E302E3020283230313620417567203132293A204F726967696E616C2072656C656173652E0A .md VL53L0X 2F2F204D6F7374206F66207468652066756E6374696F6E616C697479206F662074686973206C696272617279206973206261736564206F6E2074686520564C35334C3058204150490A2F2F2070726F76696465642062792053542028535453572D494D47303035292C20616E6420736F6D65206F6620746865206578706C616E61746F727920636F6D6D656E7473206172652071756F7465640A2F2F206F722070617261706872617365642066726F6D207468652041504920736F7572636520636F64652C204150492075736572206D616E75616C2028554D32303339292C20616E64207468650A2F2F20564C35334C3058206461746173686565742E0A0A23696E636C756465203C564C35334C30582E683E0A23696E636C756465203C576972652E683E0A0A2F2F20446566696E6573202F2F2F2F2F2F2F2F2F2F2F2F2F2F2F2F2F2F2F2F2F2F2F2F2F2F2F2F2F2F2F2F2F2F2F2F2F2F2F2F2F2F2F2F2F2F2F2F2F2F2F2F2F2F2F2F2F2F2F2F2F2F2F2F2F2F2F2F2F0A0A2F2F205468652041726475696E6F2074776F2D7769726520696E746572666163652075736573206120372D626974206E756D62657220666F722074686520616464726573732C0A2F2F20616E64207365747320746865206C6173742062697420636F72726563746C79206261736564206F6E20726561647320616E64207772697465730A23646566696E6520414444524553535F44454641554C54203062303130313030310A0A2F2F205265636F7264207468652063757272656E742074696D6520746F20636865636B20616E207570636F6D696E672074696D656F757420616761696E73740A23646566696E6520737461727454696D656F75742829202874696D656F75745F73746172745F6D73203D206D696C6C69732829290A0A2F2F20436865636B2069662074696D656F757420697320656E61626C6564202873657420746F206E6F6E7A65726F2076616C75652920616E642068617320657870697265640A23646566696E6520636865636B54696D656F75744578706972656428292028696F5F74696D656F7574203E203020262620282875696E7431365F74296D696C6C69732829202D2074696D656F75745F73746172745F6D7329203E20696F5F74696D656F7574290A0A2F2F204465636F646520564353454C2028766572746963616C20636176697479207375726661636520656D697474696E67206C61736572292070756C736520706572696F6420696E2050434C4B730A2F2F2066726F6D2072656769737465722076616C75650A2F2F206261736564206F6E20564C35334C30585F6465636F64655F766373656C5F706572696F6428290A23646566696E65206465636F6465566373656C506572696F64287265675F76616C292020202020202828287265675F76616C29202B203129203C3C2031290A0A2F2F20456E636F646520564353454C2070756C736520706572696F642072656769737465722076616C75652066726F6D20706572696F6420696E2050434C4B730A2F2F206261736564206F6E20564C35334C30585F656E636F64655F766373656C5F706572696F6428290A23646566696E6520656E636F6465566373656C506572696F6428706572696F645F70636C6B732920282828706572696F645F70636C6B7329203E3E203129202D2031290A0A2F2F2043616C63756C617465206D6163726F20706572696F6420696E202A6E616E6F7365636F6E64732A2066726F6D20564353454C20706572696F6420696E2050434C4B730A2F2F206261736564206F6E20564C35334C30585F63616C635F6D6163726F5F706572696F645F707328290A2F2F20504C4C5F706572696F645F7073203D20313635353B206D6163726F5F706572696F645F76636C6B73203D20323330340A23646566696E652063616C634D6163726F506572696F6428766373656C5F706572696F645F70636C6B7329202828282875696E7433325F742932333034202A2028766373656C5F706572696F645F70636C6B7329202A203136353529202B2035303029202F2031303030290A0A2F2F20436F6E7374727563746F7273202F2F2F2F2F2F2F2F2F2F2F2F2F2F2F2F2F2F2F2F2F2F2F2F2F2F2F2F2F2F2F2F2F2F2F2F2F2F2F2F2F2F2F2F2F2F2F2F2F2F2F2F2F2F2F2F2F2F2F2F2F2F2F2F0A0A564C35334C30583A3A564C35334C305828766F6964290A20203A206164647265737328414444524553535F44454641554C54290A20202C20696F5F74696D656F7574283029202F2F206E6F2074696D656F75740A20202C206469645F74696D656F75742866616C7365290A7B0A7D0A0A2F2F205075626C6963204D6574686F6473202F2F2F2F2F2F2F2F2F2F2F2F2F2F2F2F2F2F2F2F2F2F2F2F2F2F2F2F2F2F2F2F2F2F2F2F2F2F2F2F2F2F2F2F2F2F2F2F2F2F2F2F2F2F2F2F2F2F2F2F2F2F0A0A766F696420564C35334C30583A3A736574416464726573732875696E74385F74206E65775F61646472290A7B0A20207772697465526567284932435F534C4156455F4445564943455F414444524553532C206E65775F6164647220262030783746293B0A202061646472657373203D206E65775F616464723B0A7D0A0A2F2F20496E697469616C697A652073656E736F72207573696E672073657175656E6365206261736564206F6E20564C35334C30585F44617461496E697428292C0A2F2F20564C35334C30585F537461746963496E697428292C20616E6420564C35334C30585F506572666F726D52656643616C6962726174696F6E28292E0A2F2F20546869732066756E6374696F6E20646F6573206E6F7420706572666F726D207265666572656E636520535041442063616C6962726174696F6E0A2F2F2028564C35334C30585F506572666F726D526566537061644D616E6167656D656E742829292C2073696E636520746865204150492075736572206D616E75616C207361797320746861742069740A2F2F20697320706572666F726D6564206279205354206F6E207468652062617265206D6F64756C65733B206974207365656D73206C696B6520746861742073686F756C6420776F726B2077656C6C0A2F2F20656E6F75676820756E6C657373206120636F76657220676C6173732069732061646465642E0A2F2F20496620696F5F32763820286F7074696F6E616C292069732074727565206F72206E6F7420676976656E2C207468652073656E736F7220697320636F6E6669677572656420666F72203256380A2F2F206D6F64652E0A626F6F6C20564C35334C30583A3A696E697428626F6F6C20696F5F327638290A7B0A20202F2F20564C35334C30585F44617461496E6974282920626567696E0A0A20202F2F2073656E736F72207573657320315638206D6F646520666F7220492F4F2062792064656661756C743B2073776974636820746F20325638206D6F6465206966206E65636573736172790A202069662028696F5F327638290A20207B0A202020207772697465526567285648565F434F4E4649475F5041445F53434C5F5344415F5F4558545355505F48562C0A20202020202072656164526567285648565F434F4E4649475F5041445F53434C5F5344415F5F4558545355505F485629207C2030783031293B202F2F207365742062697420300A20207D0A0A20202F2F202253657420493243207374616E64617264206D6F6465220A2020777269746552656728307838382C2030783030293B0A0A2020777269746552656728307838302C2030783031293B0A2020777269746552656728307846462C2030783031293B0A2020777269746552656728307830302C2030783030293B0A202073746F705F7661726961626C65203D20726561645265672830783931293B0A2020777269746552656728307830302C2030783031293B0A2020777269746552656728307846462C2030783030293B0A2020777269746552656728307838302C2030783030293B0A0A20202F2F2064697361626C65205349474E414C5F524154455F4D535243202862697420312920616E64205349474E414C5F524154455F5052455F52414E47452028626974203429206C696D697420636865636B730A20207772697465526567284D5352435F434F4E4649475F434F4E54524F4C2C2072656164526567284D5352435F434F4E4649475F434F4E54524F4C29207C2030783132293B0A0A20202F2F207365742066696E616C2072616E6765207369676E616C2072617465206C696D697420746F20302E3235204D43505320286D696C6C696F6E20636F756E747320706572207365636F6E64290A20207365745369676E616C526174654C696D697428302E3235293B0A0A202077726974655265672853595354454D5F53455155454E43455F434F4E4649472C2030784646293B0A0A20202F2F20564C35334C30585F44617461496E6974282920656E640A0A20202F2F20564C35334C30585F537461746963496E6974282920626567696E0A0A202075696E74385F7420737061645F636F756E743B0A2020626F6F6C20737061645F747970655F69735F61706572747572653B0A2020696620282167657453706164496E666F2826737061645F636F756E742C2026737061645F747970655F69735F61706572747572652929207B2072657475726E2066616C73653B207D0A0A20202F2F205468652053504144206D61702028526566476F6F64537061644D617029206973207265616420627920564C35334C30585F6765745F696E666F5F66726F6D5F646576696365282920696E0A20202F2F20746865204150492C20627574207468652073616D652064617461207365656D7320746F206265206D6F726520656173696C79207265616461626C652066726F6D0A20202F2F20474C4F42414C5F434F4E4649475F535041445F454E41424C45535F5245465F30207468726F756768205F362C20736F20726561642069742066726F6D2074686572650A202075696E74385F74207265665F737061645F6D61705B365D3B0A2020726561644D756C746928474C4F42414C5F434F4E4649475F535041445F454E41424C45535F5245465F302C207265665F737061645F6D61702C2036293B0A0A20202F2F202D2D20564C35334C30585F7365745F7265666572656E63655F7370616473282920626567696E2028617373756D65204E564D2076616C756573206172652076616C6964290A0A2020777269746552656728307846462C2030783031293B0A202077726974655265672844594E414D49435F535041445F5245465F454E5F53544152545F4F46465345542C2030783030293B0A202077726974655265672844594E414D49435F535041445F4E554D5F5245515545535445445F5245465F535041442C2030783243293B0A2020777269746552656728307846462C2030783030293B0A2020777269746552656728474C4F42414C5F434F4E4649475F5245465F454E5F53544152545F53454C4543542C2030784234293B0A0A202075696E74385F742066697273745F737061645F746F5F656E61626C65203D20737061645F747970655F69735F6170657274757265203F203132203A20303B202F2F2031322069732074686520666972737420617065727475726520737061640A202075696E74385F742073706164735F656E61626C6564203D20303B0A0A2020666F72202875696E74385F742069203D20303B2069203C2034383B20692B2B290A20207B0A202020206966202869203C2066697273745F737061645F746F5F656E61626C65207C7C2073706164735F656E61626C6564203D3D20737061645F636F756E74290A202020207B0A2020202020202F2F205468697320626974206973206C6F776572207468616E20746865206669727374206F6E6520746861742073686F756C6420626520656E61626C65642C206F720A2020202020202F2F20287265666572656E63655F737061645F636F756E74292062697473206861766520616C7265616479206265656E20656E61626C65642C20736F207A65726F2074686973206269740A2020202020207265665F737061645F6D61705B69202F20385D20263D207E2831203C3C2028692025203829293B0A202020207D0A20202020656C73652069662028287265665F737061645F6D61705B69202F20385D203E3E202869202520382929202620307831290A202020207B0A20202020202073706164735F656E61626C65642B2B3B0A202020207D0A20207D0A0A202077726974654D756C746928474C4F42414C5F434F4E4649475F535041445F454E41424C45535F5245465F302C207265665F737061645F6D61702C2036293B0A0A20202F2F202D2D20564C35334C30585F7365745F7265666572656E63655F7370616473282920656E640A0A20202F2F202D2D20564C35334C30585F6C6F61645F74756E696E675F73657474696E6773282920626567696E0A20202F2F2044656661756C7454756E696E6753657474696E67732066726F6D20766C35336C30785F74756E696E672E680A0A2020777269746552656728307846462C2030783031293B0A2020777269746552656728307830302C2030783030293B0A0A2020777269746552656728307846462C2030783030293B0A2020777269746552656728307830392C2030783030293B0A2020777269746552656728307831302C2030783030293B0A2020777269746552656728307831312C2030783030293B0A0A2020777269746552656728307832342C2030783031293B0A2020777269746552656728307832352C2030784646293B0A2020777269746552656728307837352C2030783030293B0A0A2020777269746552656728307846462C2030783031293B0A2020777269746552656728307834452C2030783243293B0A2020777269746552656728307834382C2030783030293B0A2020777269746552656728307833302C2030783230293B0A0A2020777269746552656728307846462C2030783030293B0A2020777269746552656728307833302C2030783039293B0A2020777269746552656728307835342C2030783030293B0A2020777269746552656728307833312C2030783034293B0A2020777269746552656728307833322C2030783033293B0A2020777269746552656728307834302C2030783833293B0A2020777269746552656728307834362C2030783235293B0A2020777269746552656728307836302C2030783030293B0A2020777269746552656728307832372C2030783030293B0A2020777269746552656728307835302C2030783036293B0A2020777269746552656728307835312C2030783030293B0A2020777269746552656728307835322C2030783936293B0A2020777269746552656728307835362C2030783038293B0A2020777269746552656728307835372C2030783330293B0A2020777269746552656728307836312C2030783030293B0A2020777269746552656728307836322C2030783030293B0A2020777269746552656728307836342C2030783030293B0A2020777269746552656728307836352C2030783030293B0A2020777269746552656728307836362C2030784130293B0A0A2020777269746552656728307846462C2030783031293B0A2020777269746552656728307832322C2030783332293B0A2020777269746552656728307834372C2030783134293B0A2020777269746552656728307834392C2030784646293B0A2020777269746552656728307834412C2030783030293B0A0A2020777269746552656728307846462C2030783030293B0A2020777269746552656728307837412C2030783041293B0A2020777269746552656728307837422C2030783030293B0A2020777269746552656728307837382C2030783231293B0A0A2020777269746552656728307846462C2030783031293B0A2020777269746552656728307832332C2030783334293B0A2020777269746552656728307834322C2030783030293B0A2020777269746552656728307834342C2030784646293B0A2020777269746552656728307834352C2030783236293B0A2020777269746552656728307834362C2030783035293B0A2020777269746552656728307834302C2030783430293B0A2020777269746552656728307830452C2030783036293B0A2020777269746552656728307832302C2030783141293B0A2020777269746552656728307834332C2030783430293B0A0A2020777269746552656728307846462C2030783030293B0A2020777269746552656728307833342C2030783033293B0A2020777269746552656728307833352C2030783434293B0A0A2020777269746552656728307846462C2030783031293B0A2020777269746552656728307833312C2030783034293B0A2020777269746552656728307834422C2030783039293B0A2020777269746552656728307834432C2030783035293B0A2020777269746552656728307834442C2030783034293B0A0A2020777269746552656728307846462C2030783030293B0A2020777269746552656728307834342C2030783030293B0A2020777269746552656728307834352C2030783230293B0A2020777269746552656728307834372C2030783038293B0A2020777269746552656728307834382C2030783238293B0A2020777269746552656728307836372C2030783030293B0A2020777269746552656728307837302C2030783034293B0A2020777269746552656728307837312C2030783031293B0A2020777269746552656728307837322C2030784645293B0A2020777269746552656728307837362C2030783030293B0A2020777269746552656728307837372C2030783030293B0A0A2020777269746552656728307846462C2030783031293B0A2020777269746552656728307830442C2030783031293B0A0A2020777269746552656728307846462C2030783030293B0A2020777269746552656728307838302C2030783031293B0A2020777269746552656728307830312C2030784638293B0A0A2020777269746552656728307846462C2030783031293B0A2020777269746552656728307838452C2030783031293B0A2020777269746552656728307830302C2030783031293B0A2020777269746552656728307846462C2030783030293B0A2020777269746552656728307838302C2030783030293B0A0A20202F2F202D2D20564C35334C30585F6C6F61645F74756E696E675F73657474696E6773282920656E640A0A20202F2F202253657420696E7465727275707420636F6E66696720746F206E65772073616D706C65207265616479220A20202F2F202D2D20564C35334C30585F5365744770696F436F6E666967282920626567696E0A0A202077726974655265672853595354454D5F494E544552525550545F434F4E4649475F4750494F2C2030783034293B0A20207772697465526567284750494F5F48565F4D55585F4143544956455F484947482C2072656164526567284750494F5F48565F4D55585F4143544956455F48494748292026207E30783130293B202F2F20616374697665206C6F770A202077726974655265672853595354454D5F494E544552525550545F434C4541522C2030783031293B0A0A20202F2F202D2D20564C35334C30585F5365744770696F436F6E666967282920656E640A0A20206D6561737572656D656E745F74696D696E675F6275646765745F7573203D206765744D6561737572656D656E7454696D696E6742756467657428293B0A0A20202F2F202244697361626C65204D53524320616E64205443432062792064656661756C74220A20202F2F204D535243203D204D696E696D756D205369676E616C205261746520436865636B0A20202F2F20544343203D205461726765742043656E747265436865636B0A20202F2F202D2D20564C35334C30585F53657453657175656E636553746570456E61626C65282920626567696E0A0A202077726974655265672853595354454D5F53455155454E43455F434F4E4649472C2030784538293B0A0A20202F2F202D2D20564C35334C30585F53657453657175656E636553746570456E61626C65282920656E640A0A20202F2F2022526563616C63756C6174652074696D696E6720627564676574220A20207365744D6561737572656D656E7454696D696E67427564676574286D6561737572656D656E745F74696D696E675F6275646765745F7573293B0A0A20202F2F20564C35334C30585F537461746963496E6974282920656E640A0A20202F2F20564C35334C30585F506572666F726D52656643616C6962726174696F6E282920626567696E2028564C35334C30585F706572666F726D5F7265665F63616C6962726174696F6E2829290A0A20202F2F202D2D20564C35334C30585F706572666F726D5F7668765F63616C6962726174696F6E282920626567696E0A0A202077726974655265672853595354454D5F53455155454E43455F434F4E4649472C2030783031293B0A20206966202821706572666F726D53696E676C6552656643616C6962726174696F6E28307834302929207B2072657475726E2066616C73653B207D0A0A20202F2F202D2D20564C35334C30585F706572666F726D5F7668765F63616C6962726174696F6E282920656E640A0A20202F2F202D2D20564C35334C30585F706572666F726D5F70686173655F63616C6962726174696F6E282920626567696E0A0A202077726974655265672853595354454D5F53455155454E43455F434F4E4649472C2030783032293B0A20206966202821706572666F726D53696E676C6552656643616C6962726174696F6E28307830302929207B2072657475726E2066616C73653B207D0A0A20202F2F202D2D20564C35334C30585F706572666F726D5F70686173655F63616C6962726174696F6E282920656E640A0A20202F2F2022726573746F7265207468652070726576696F75732053657175656E636520436F6E666967220A202077726974655265672853595354454D5F53455155454E43455F434F4E4649472C2030784538293B0A0A20202F2F20564C35334C30585F506572666F726D52656643616C6962726174696F6E282920656E640A0A202072657475726E20747275653B0A7D0A0A2F2F20577269746520616E20382D6269742072656769737465720A766F696420564C35334C30583A3A77726974655265672875696E74385F74207265672C2075696E74385F742076616C7565290A7B0A2020576972652E626567696E5472616E736D697373696F6E2861646472657373293B0A2020576972652E777269746528726567293B0A2020576972652E77726974652876616C7565293B0A20206C6173745F737461747573203D20576972652E656E645472616E736D697373696F6E28293B0A7D0A0A2F2F20577269746520612031362D6269742072656769737465720A766F696420564C35334C30583A3A777269746552656731364269742875696E74385F74207265672C2075696E7431365F742076616C7565290A7B0A2020576972652E626567696E5472616E736D697373696F6E2861646472657373293B0A2020576972652E777269746528726567293B0A2020576972652E7772697465282876616C7565203E3E20382920262030784646293B202F2F2076616C7565206869676820627974650A2020576972652E7772697465282076616C756520202020202020262030784646293B202F2F2076616C7565206C6F7720627974650A20206C6173745F737461747573203D20576972652E656E645472616E736D697373696F6E28293B0A7D0A0A2F2F20577269746520612033322D6269742072656769737465720A766F696420564C35334C30583A3A777269746552656733324269742875696E74385F74207265672C2075696E7433325F742076616C7565290A7B0A2020576972652E626567696E5472616E736D697373696F6E2861646472657373293B0A2020576972652E777269746528726567293B0A2020576972652E7772697465282876616C7565203E3E2032342920262030784646293B202F2F2076616C7565206869676865737420627974650A2020576972652E7772697465282876616C7565203E3E2031362920262030784646293B0A2020576972652E7772697465282876616C7565203E3E2020382920262030784646293B0A2020576972652E7772697465282076616C75652020202020202020262030784646293B202F2F2076616C7565206C6F7765737420627974650A20206C6173745F737461747573203D20576972652E656E645472616E736D697373696F6E28293B0A7D0A0A2F2F205265616420616E20382D6269742072656769737465720A75696E74385F7420564C35334C30583A3A726561645265672875696E74385F7420726567290A7B0A202075696E74385F742076616C75653B0A0A2020576972652E626567696E5472616E736D697373696F6E2861646472657373293B0A2020576972652E777269746528726567293B0A20206C6173745F737461747573203D20576972652E656E645472616E736D697373696F6E28293B0A0A2020576972652E7265717565737446726F6D28616464726573732C202875696E74385F742931293B0A202076616C7565203D20576972652E7265616428293B0A0A202072657475726E2076616C75653B0A7D0A0A2F2F205265616420612031362D6269742072656769737465720A75696E7431365F7420564C35334C30583A3A7265616452656731364269742875696E74385F7420726567290A7B0A202075696E7431365F742076616C75653B0A0A2020576972652E626567696E5472616E736D697373696F6E2861646472657373293B0A2020576972652E777269746528726567293B0A20206C6173745F737461747573203D20576972652E656E645472616E736D697373696F6E28293B0A0A2020576972652E7265717565737446726F6D28616464726573732C202875696E74385F742932293B0A202076616C756520203D202875696E7431365F7429576972652E726561642829203C3C20383B202F2F2076616C7565206869676820627974650A202076616C7565207C3D2020202020202020202020576972652E7265616428293B2020202020202F2F2076616C7565206C6F7720627974650A0A202072657475726E2076616C75653B0A7D0A0A2F2F205265616420612033322D6269742072656769737465720A75696E7433325F7420564C35334C30583A3A7265616452656733324269742875696E74385F7420726567290A7B0A202075696E7433325F742076616C75653B0A0A2020576972652E626567696E5472616E736D697373696F6E2861646472657373293B0A2020576972652E777269746528726567293B0A20206C6173745F737461747573203D20576972652E656E645472616E736D697373696F6E28293B0A0A2020576972652E7265717565737446726F6D28616464726573732C202875696E74385F742934293B0A202076616C756520203D202875696E7433325F7429576972652E726561642829203C3C2032343B202F2F2076616C7565206869676865737420627974650A202076616C7565207C3D202875696E7433325F7429576972652E726561642829203C3C2031363B0A202076616C7565207C3D202875696E7431365F7429576972652E726561642829203C3C2020383B0A202076616C7565207C3D2020202020202020202020576972652E7265616428293B202020202020202F2F2076616C7565206C6F7765737420627974650A0A202072657475726E2076616C75653B0A7D0A0A2F2F20577269746520616E20617262697472617279206E756D626572206F662062797465732066726F6D2074686520676976656E20617272617920746F207468652073656E736F722C0A2F2F207374617274696E672061742074686520676976656E2072656769737465720A766F696420564C35334C30583A3A77726974654D756C74692875696E74385F74207265672C2075696E74385F7420636F6E7374202A207372632C2075696E74385F7420636F756E74290A7B0A2020576972652E626567696E5472616E736D697373696F6E2861646472657373293B0A2020576972652E777269746528726567293B0A0A20207768696C652028636F756E742D2D203E2030290A20207B0A20202020576972652E7772697465282A287372632B2B29293B0A20207D0A0A20206C6173745F737461747573203D20576972652E656E645472616E736D697373696F6E28293B0A7D0A0A2F2F205265616420616E20617262697472617279206E756D626572206F662062797465732066726F6D207468652073656E736F722C207374617274696E672061742074686520676976656E0A2F2F2072656769737465722C20696E746F2074686520676976656E2061727261790A766F696420564C35334C30583A3A726561644D756C74692875696E74385F74207265672C2075696E74385F74202A206473742C2075696E74385F7420636F756E74290A7B0A2020576972652E626567696E5472616E736D697373696F6E2861646472657373293B0A2020576972652E777269746528726567293B0A20206C6173745F737461747573203D20576972652E656E645472616E736D697373696F6E28293B0A0A2020576972652E7265717565737446726F6D28616464726573732C20636F756E74293B0A0A20207768696C652028636F756E742D2D203E2030290A20207B0A202020202A286473742B2B29203D20576972652E7265616428293B0A20207D0A7D0A0A2F2F20536574207468652072657475726E207369676E616C2072617465206C696D697420636865636B2076616C756520696E20756E697473206F66204D43505320286D65676120636F756E74730A2F2F20706572207365636F6E64292E20225468697320726570726573656E74732074686520616D706C6974756465206F6620746865207369676E616C207265666C65637465642066726F6D207468650A2F2F2074617267657420616E642064657465637465642062792074686520646576696365223B2073657474696E672074686973206C696D69742070726573756D61626C792064657465726D696E65730A2F2F20746865206D696E696D756D206D6561737572656D656E74206E656365737361727920666F72207468652073656E736F7220746F207265706F727420612076616C69642072656164696E672E0A2F2F2053657474696E672061206C6F776572206C696D697420696E637265617365732074686520706F74656E7469616C2072616E6765206F66207468652073656E736F722062757420616C736F0A2F2F207365656D7320746F20696E63726561736520746865206C696B656C69686F6F64206F662067657474696E6720616E20696E61636375726174652072656164696E672062656361757365206F660A2F2F20756E77616E746564207265666C656374696F6E732066726F6D206F626A65637473206F74686572207468616E2074686520696E74656E646564207461726765742E0A2F2F2044656661756C747320746F20302E3235204D43505320617320696E697469616C697A6564206279207468652053542041504920616E642074686973206C6962726172792E0A626F6F6C20564C35334C30583A3A7365745369676E616C526174654C696D697428666C6F6174206C696D69745F4D637073290A7B0A2020696620286C696D69745F4D637073203C2030207C7C206C696D69745F4D637073203E203531312E393929207B2072657475726E2066616C73653B207D0A0A20202F2F2051392E3720666978656420706F696E7420666F726D617420283920696E746567657220626974732C2037206672616374696F6E616C2062697473290A2020777269746552656731364269742846494E414C5F52414E47455F434F4E4649475F4D494E5F434F554E545F524154455F52544E5F4C494D49542C206C696D69745F4D637073202A202831203C3C203729293B0A202072657475726E20747275653B0A7D0A0A2F2F20476574207468652072657475726E207369676E616C2072617465206C696D697420636865636B2076616C756520696E204D4350530A666C6F617420564C35334C30583A3A6765745369676E616C526174654C696D697428766F6964290A7B0A202072657475726E2028666C6F6174297265616452656731364269742846494E414C5F52414E47455F434F4E4649475F4D494E5F434F554E545F524154455F52544E5F4C494D495429202F202831203C3C2037293B0A7D0A0A2F2F2053657420746865206D6561737572656D656E742074696D696E672062756467657420696E206D6963726F7365636F6E64732C207768696368206973207468652074696D6520616C6C6F7765640A2F2F20666F72206F6E65206D6561737572656D656E743B207468652053542041504920616E642074686973206C6962726172792074616B652063617265206F662073706C697474696E67207468650A2F2F2074696D696E672062756467657420616D6F6E6720746865207375622D737465707320696E207468652072616E67696E672073657175656E63652E2041206C6F6E6765722074696D696E670A2F2F2062756467657420616C6C6F777320666F72206D6F7265206163637572617465206D6561737572656D656E74732E20496E6372656173696E67207468652062756467657420627920610A2F2F20666163746F72206F66204E20646563726561736573207468652072616E6765206D6561737572656D656E74207374616E6461726420646576696174696F6E206279206120666163746F72206F660A2F2F2073717274284E292E2044656661756C747320746F2061626F7574203333206D696C6C697365636F6E64733B20746865206D696E696D756D206973203230206D732E0A2F2F206261736564206F6E20564C35334C30585F7365745F6D6561737572656D656E745F74696D696E675F6275646765745F6D6963726F5F7365636F6E647328290A626F6F6C20564C35334C30583A3A7365744D6561737572656D656E7454696D696E674275646765742875696E7433325F74206275646765745F7573290A7B0A202053657175656E636553746570456E61626C657320656E61626C65733B0A202053657175656E63655374657054696D656F7574732074696D656F7574733B0A0A202075696E7431365F7420636F6E73742053746172744F766572686561642020202020203D20313332303B202F2F206E6F74652074686174207468697320697320646966666572656E74207468616E207468652076616C756520696E206765745F0A202075696E7431365F7420636F6E737420456E644F7665726865616420202020202020203D203936303B0A202075696E7431365F7420636F6E7374204D7372634F76657268656164202020202020203D203636303B0A202075696E7431365F7420636F6E7374205463634F7665726865616420202020202020203D203539303B0A202075696E7431365F7420636F6E7374204473734F7665726865616420202020202020203D203639303B0A202075696E7431365F7420636F6E73742050726552616E67654F766572686561642020203D203636303B0A202075696E7431365F7420636F6E73742046696E616C52616E67654F76657268656164203D203535303B0A0A202075696E7433325F7420636F6E7374204D696E54696D696E67427564676574203D2032303030303B0A0A2020696620286275646765745F7573203C204D696E54696D696E6742756467657429207B2072657475726E2066616C73653B207D0A0A202075696E7433325F7420757365645F6275646765745F7573203D2053746172744F76657268656164202B20456E644F766572686561643B0A0A202067657453657175656E636553746570456E61626C65732826656E61626C6573293B0A202067657453657175656E63655374657054696D656F7574732826656E61626C65732C202674696D656F757473293B0A0A202069662028656E61626C65732E746363290A20207B0A20202020757365645F6275646765745F7573202B3D202874696D656F7574732E6D7372635F6473735F7463635F7573202B205463634F76657268656164293B0A20207D0A0A202069662028656E61626C65732E647373290A20207B0A20202020757365645F6275646765745F7573202B3D2032202A202874696D656F7574732E6D7372635F6473735F7463635F7573202B204473734F76657268656164293B0A20207D0A2020656C73652069662028656E61626C65732E6D737263290A20207B0A20202020757365645F6275646765745F7573202B3D202874696D656F7574732E6D7372635F6473735F7463635F7573202B204D7372634F76657268656164293B0A20207D0A0A202069662028656E61626C65732E7072655F72616E6765290A20207B0A20202020757365645F6275646765745F7573202B3D202874696D656F7574732E7072655F72616E67655F7573202B2050726552616E67654F76657268656164293B0A20207D0A0A202069662028656E61626C65732E66696E616C5F72616E6765290A20207B0A20202020757365645F6275646765745F7573202B3D2046696E616C52616E67654F766572686561643B0A0A202020202F2F20224E6F74652074686174207468652066696E616C2072616E67652074696D656F75742069732064657465726D696E6564206279207468652074696D696E670A202020202F2F2062756467657420616E64207468652073756D206F6620616C6C206F746865722074696D656F7574732077697468696E207468652073657175656E63652E0A202020202F2F204966207468657265206973206E6F20726F6F6D20666F72207468652066696E616C2072616E67652074696D656F75742C207468656E20616E206572726F720A202020202F2F2077696C6C206265207365742E204F7468657277697365207468652072656D61696E696E672074696D652077696C6C206265206170706C69656420746F0A202020202F2F207468652066696E616C2072616E67652E220A0A2020202069662028757365645F6275646765745F7573203E206275646765745F7573290A202020207B0A2020202020202F2F20225265717565737465642074696D656F757420746F6F206269672E220A20202020202072657475726E2066616C73653B0A202020207D0A0A2020202075696E7433325F742066696E616C5F72616E67655F74696D656F75745F7573203D206275646765745F7573202D20757365645F6275646765745F75733B0A0A202020202F2F207365745F73657175656E63655F737465705F74696D656F7574282920626567696E0A202020202F2F202853657175656E6365537465704964203D3D20564C35334C30585F53455155454E4345535445505F46494E414C5F52414E4745290A0A202020202F2F2022466F72207468652066696E616C2072616E67652074696D656F75742C20746865207072652D72616E67652074696D656F75740A202020202F2F20206D7573742062652061646465642E20546F20646F207468697320626F74682066696E616C20616E64207072652D72616E67650A202020202F2F202074696D656F757473206D7573742062652065787072657373656420696E206D6163726F20706572696F6473204D436C6B730A202020202F2F2020626563617573652074686579206861766520646966666572656E7420766373656C20706572696F64732E220A0A2020202075696E7431365F742066696E616C5F72616E67655F74696D656F75745F6D636C6B73203D0A20202020202074696D656F75744D6963726F7365636F6E6473546F4D636C6B732866696E616C5F72616E67655F74696D656F75745F75732C0A20202020202020202020202020202020202020202020202020202020202020202074696D656F7574732E66696E616C5F72616E67655F766373656C5F706572696F645F70636C6B73293B0A0A2020202069662028656E61626C65732E7072655F72616E6765290A202020207B0A20202020202066696E616C5F72616E67655F74696D656F75745F6D636C6B73202B3D2074696D656F7574732E7072655F72616E67655F6D636C6B733B0A202020207D0A0A20202020777269746552656731364269742846494E414C5F52414E47455F434F4E4649475F54494D454F55545F4D4143524F505F48492C0A202020202020656E636F646554696D656F75742866696E616C5F72616E67655F74696D656F75745F6D636C6B7329293B0A0A202020202F2F207365745F73657175656E63655F737465705F74696D656F7574282920656E640A0A202020206D6561737572656D656E745F74696D696E675F6275646765745F7573203D206275646765745F75733B202F2F2073746F726520666F7220696E7465726E616C2072657573650A20207D0A202072657475726E20747275653B0A7D0A0A2F2F2047657420746865206D6561737572656D656E742074696D696E672062756467657420696E206D6963726F7365636F6E64730A2F2F206261736564206F6E20564C35334C30585F6765745F6D6561737572656D656E745F74696D696E675F6275646765745F6D6963726F5F7365636F6E647328290A2F2F20696E2075730A75696E7433325F7420564C35334C30583A3A6765744D6561737572656D656E7454696D696E6742756467657428766F6964290A7B0A202053657175656E636553746570456E61626C657320656E61626C65733B0A202053657175656E63655374657054696D656F7574732074696D656F7574733B0A0A202075696E7431365F7420636F6E73742053746172744F7665726865616420202020203D20313931303B202F2F206E6F74652074686174207468697320697320646966666572656E74207468616E207468652076616C756520696E207365745F0A202075696E7431365F7420636F6E737420456E644F7665726865616420202020202020203D203936303B0A202075696E7431365F7420636F6E7374204D7372634F76657268656164202020202020203D203636303B0A202075696E7431365F7420636F6E7374205463634F7665726865616420202020202020203D203539303B0A202075696E7431365F7420636F6E7374204473734F7665726865616420202020202020203D203639303B0A202075696E7431365F7420636F6E73742050726552616E67654F766572686561642020203D203636303B0A202075696E7431365F7420636F6E73742046696E616C52616E67654F76657268656164203D203535303B0A0A20202F2F2022537461727420616E6420656E64206F766572686561642074696D657320616C776179732070726573656E74220A202075696E7433325F74206275646765745F7573203D2053746172744F76657268656164202B20456E644F766572686561643B0A0A202067657453657175656E636553746570456E61626C65732826656E61626C6573293B0A202067657453657175656E63655374657054696D656F7574732826656E61626C65732C202674696D656F757473293B0A0A202069662028656E61626C65732E746363290A20207B0A202020206275646765745F7573202B3D202874696D656F7574732E6D7372635F6473735F7463635F7573202B205463634F76657268656164293B0A20207D0A0A202069662028656E61626C65732E647373290A20207B0A202020206275646765745F7573202B3D2032202A202874696D656F7574732E6D7372635F6473735F7463635F7573202B204473734F76657268656164293B0A20207D0A2020656C73652069662028656E61626C65732E6D737263290A20207B0A202020206275646765745F7573202B3D202874696D656F7574732E6D7372635F6473735F7463635F7573202B204D7372634F76657268656164293B0A20207D0A0A202069662028656E61626C65732E7072655F72616E6765290A20207B0A202020206275646765745F7573202B3D202874696D656F7574732E7072655F72616E67655F7573202B2050726552616E67654F76657268656164293B0A20207D0A0A202069662028656E61626C65732E66696E616C5F72616E6765290A20207B0A202020206275646765745F7573202B3D202874696D656F7574732E66696E616C5F72616E67655F7573202B2046696E616C52616E67654F76657268656164293B0A20207D0A0A20206D6561737572656D656E745F74696D696E675F6275646765745F7573203D206275646765745F75733B202F2F2073746F726520666F7220696E7465726E616C2072657573650A202072657475726E206275646765745F75733B0A7D0A0A2F2F205365742074686520564353454C2028766572746963616C20636176697479207375726661636520656D697474696E67206C61736572292070756C736520706572696F6420666F72207468650A2F2F20676976656E20706572696F64207479706520287072652D72616E6765206F722066696E616C2072616E67652920746F2074686520676976656E2076616C756520696E2050434C4B732E0A2F2F204C6F6E67657220706572696F6473207365656D20746F20696E6372656173652074686520706F74656E7469616C2072616E6765206F66207468652073656E736F722E0A2F2F2056616C69642076616C7565732061726520286576656E206E756D62657273206F6E6C79293A0A2F2F20207072653A2020313220746F2031382028696E697469616C697A65642064656661756C743A203134290A2F2F202066696E616C3A203820746F2031342028696E697469616C697A65642064656661756C743A203130290A2F2F206261736564206F6E20564C35334C30585F7365745F766373656C5F70756C73655F706572696F6428290A626F6F6C20564C35334C30583A3A736574566373656C50756C7365506572696F6428766373656C506572696F645479706520747970652C2075696E74385F7420706572696F645F70636C6B73290A7B0A202075696E74385F7420766373656C5F706572696F645F726567203D20656E636F6465566373656C506572696F6428706572696F645F70636C6B73293B0A0A202053657175656E636553746570456E61626C657320656E61626C65733B0A202053657175656E63655374657054696D656F7574732074696D656F7574733B0A0A202067657453657175656E636553746570456E61626C65732826656E61626C6573293B0A202067657453657175656E63655374657054696D656F7574732826656E61626C65732C202674696D656F757473293B0A0A20202F2F20224170706C792073706563696669632073657474696E677320666F72207468652072657175657374656420636C6F636B20706572696F64220A20202F2F202252652D63616C63756C61746520616E64206170706C792074696D656F7574732C20696E206D6163726F20706572696F6473220A0A20202F2F20225768656E2074686520564353454C20706572696F6420666F722074686520707265206F722066696E616C2072616E6765206973206368616E6765642C0A20202F2F2074686520636F72726573706F6E64696E672074696D656F7574206D75737420626520726561642066726F6D2074686520646576696365207573696E670A20202F2F207468652063757272656E7420564353454C20706572696F642C207468656E20746865206E657720564353454C20706572696F642063616E2062650A20202F2F206170706C6965642E205468652074696D656F7574207468656E206D757374206265207772697474656E206261636B20746F20746865206465766963650A20202F2F207573696E6720746865206E657720564353454C20706572696F642E0A20202F2F0A20202F2F20466F7220746865204D5352432074696D656F75742C207468652073616D65206170706C696573202D20746869732074696D656F7574206265696E670A20202F2F20646570656E64616E74206F6E20746865207072652D72616E676520766373656C20706572696F642E220A0A0A20206966202874797065203D3D20566373656C506572696F6450726552616E6765290A20207B0A202020202F2F202253657420706861736520636865636B206C696D697473220A202020207377697463682028706572696F645F70636C6B73290A202020207B0A202020202020636173652031323A0A20202020202020207772697465526567285052455F52414E47455F434F4E4649475F56414C49445F50484153455F484947482C2030783138293B0A2020202020202020627265616B3B0A0A202020202020636173652031343A0A20202020202020207772697465526567285052455F52414E47455F434F4E4649475F56414C49445F50484153455F484947482C2030783330293B0A2020202020202020627265616B3B0A0A202020202020636173652031363A0A20202020202020207772697465526567285052455F52414E47455F434F4E4649475F56414C49445F50484153455F484947482C2030783430293B0A2020202020202020627265616B3B0A0A202020202020636173652031383A0A20202020202020207772697465526567285052455F52414E47455F434F4E4649475F56414C49445F50484153455F484947482C2030783530293B0A2020202020202020627265616B3B0A0A20202020202064656661756C743A0A20202020202020202F2F20696E76616C696420706572696F640A202020202020202072657475726E2066616C73653B0A202020207D0A202020207772697465526567285052455F52414E47455F434F4E4649475F56414C49445F50484153455F4C4F572C2030783038293B0A0A202020202F2F206170706C79206E657720564353454C20706572696F640A202020207772697465526567285052455F52414E47455F434F4E4649475F564353454C5F504552494F442C20766373656C5F706572696F645F726567293B0A0A202020202F2F207570646174652074696D656F7574730A0A202020202F2F207365745F73657175656E63655F737465705F74696D656F7574282920626567696E0A202020202F2F202853657175656E6365537465704964203D3D20564C35334C30585F53455155454E4345535445505F5052455F52414E4745290A0A2020202075696E7431365F74206E65775F7072655F72616E67655F74696D656F75745F6D636C6B73203D0A20202020202074696D656F75744D6963726F7365636F6E6473546F4D636C6B732874696D656F7574732E7072655F72616E67655F75732C20706572696F645F70636C6B73293B0A0A2020202077726974655265673136426974285052455F52414E47455F434F4E4649475F54494D454F55545F4D4143524F505F48492C0A202020202020656E636F646554696D656F7574286E65775F7072655F72616E67655F74696D656F75745F6D636C6B7329293B0A0A202020202F2F207365745F73657175656E63655F737465705F74696D656F7574282920656E640A0A202020202F2F207365745F73657175656E63655F737465705F74696D656F7574282920626567696E0A202020202F2F202853657175656E6365537465704964203D3D20564C35334C30585F53455155454E4345535445505F4D535243290A0A2020202075696E7431365F74206E65775F6D7372635F74696D656F75745F6D636C6B73203D0A20202020202074696D656F75744D6963726F7365636F6E6473546F4D636C6B732874696D656F7574732E6D7372635F6473735F7463635F75732C20706572696F645F70636C6B73293B0A0A202020207772697465526567284D5352435F434F4E4649475F54494D454F55545F4D4143524F502C0A202020202020286E65775F6D7372635F74696D656F75745F6D636C6B73203E2032353629203F20323535203A20286E65775F6D7372635F74696D656F75745F6D636C6B73202D203129293B0A0A202020202F2F207365745F73657175656E63655F737465705F74696D656F7574282920656E640A20207D0A2020656C7365206966202874797065203D3D20566373656C506572696F6446696E616C52616E6765290A20207B0A202020207377697463682028706572696F645F70636C6B73290A202020207B0A2020202020206361736520383A0A202020202020202077726974655265672846494E414C5F52414E47455F434F4E4649475F56414C49445F50484153455F484947482C2030783130293B0A202020202020202077726974655265672846494E414C5F52414E47455F434F4E4649475F56414C49445F50484153455F4C4F572C202030783038293B0A2020202020202020777269746552656728474C4F42414C5F434F4E4649475F564353454C5F57494454482C2030783032293B0A2020202020202020777269746552656728414C474F5F504841534543414C5F434F4E4649475F54494D454F55542C2030783043293B0A2020202020202020777269746552656728307846462C2030783031293B0A2020202020202020777269746552656728414C474F5F504841534543414C5F4C494D2C2030783330293B0A2020202020202020777269746552656728307846462C2030783030293B0A2020202020202020627265616B3B0A0A202020202020636173652031303A0A202020202020202077726974655265672846494E414C5F52414E47455F434F4E4649475F56414C49445F50484153455F484947482C2030783238293B0A202020202020202077726974655265672846494E414C5F52414E47455F434F4E4649475F56414C49445F50484153455F4C4F572C202030783038293B0A2020202020202020777269746552656728474C4F42414C5F434F4E4649475F564353454C5F57494454482C2030783033293B0A2020202020202020777269746552656728414C474F5F504841534543414C5F434F4E4649475F54494D454F55542C2030783039293B0A2020202020202020777269746552656728307846462C2030783031293B0A2020202020202020777269746552656728414C474F5F504841534543414C5F4C494D2C2030783230293B0A2020202020202020777269746552656728307846462C2030783030293B0A2020202020202020627265616B3B0A0A202020202020636173652031323A0A202020202020202077726974655265672846494E414C5F52414E47455F434F4E4649475F56414C49445F50484153455F484947482C2030783338293B0A202020202020202077726974655265672846494E414C5F52414E47455F434F4E4649475F56414C49445F50484153455F4C4F572C202030783038293B0A2020202020202020777269746552656728474C4F42414C5F434F4E4649475F564353454C5F57494454482C2030783033293B0A2020202020202020777269746552656728414C474F5F504841534543414C5F434F4E4649475F54494D454F55542C2030783038293B0A2020202020202020777269746552656728307846462C2030783031293B0A2020202020202020777269746552656728414C474F5F504841534543414C5F4C494D2C2030783230293B0A2020202020202020777269746552656728307846462C2030783030293B0A2020202020202020627265616B3B0A0A202020202020636173652031343A0A202020202020202077726974655265672846494E414C5F52414E47455F434F4E4649475F56414C49445F50484153455F484947482C2030783438293B0A202020202020202077726974655265672846494E414C5F52414E47455F434F4E4649475F56414C49445F50484153455F4C4F572C202030783038293B0A2020202020202020777269746552656728474C4F42414C5F434F4E4649475F564353454C5F57494454482C2030783033293B0A2020202020202020777269746552656728414C474F5F504841534543414C5F434F4E4649475F54494D454F55542C2030783037293B0A2020202020202020777269746552656728307846462C2030783031293B0A2020202020202020777269746552656728414C474F5F504841534543414C5F4C494D2C2030783230293B0A2020202020202020777269746552656728307846462C2030783030293B0A2020202020202020627265616B3B0A0A20202020202064656661756C743A0A20202020202020202F2F20696E76616C696420706572696F640A202020202020202072657475726E2066616C73653B0A202020207D0A0A202020202F2F206170706C79206E657720564353454C20706572696F640A2020202077726974655265672846494E414C5F52414E47455F434F4E4649475F564353454C5F504552494F442C20766373656C5F706572696F645F726567293B0A0A202020202F2F207570646174652074696D656F7574730A0A202020202F2F207365745F73657175656E63655F737465705F74696D656F7574282920626567696E0A202020202F2F202853657175656E6365537465704964203D3D20564C35334C30585F53455155454E4345535445505F46494E414C5F52414E4745290A0A202020202F2F2022466F72207468652066696E616C2072616E67652074696D656F75742C20746865207072652D72616E67652074696D656F75740A202020202F2F20206D7573742062652061646465642E20546F20646F207468697320626F74682066696E616C20616E64207072652D72616E67650A202020202F2F202074696D656F757473206D7573742062652065787072657373656420696E206D6163726F20706572696F6473204D436C6B730A202020202F2F2020626563617573652074686579206861766520646966666572656E7420766373656C20706572696F64732E220A0A2020202075696E7431365F74206E65775F66696E616C5F72616E67655F74696D656F75745F6D636C6B73203D0A20202020202074696D656F75744D6963726F7365636F6E6473546F4D636C6B732874696D656F7574732E66696E616C5F72616E67655F75732C20706572696F645F70636C6B73293B0A0A2020202069662028656E61626C65732E7072655F72616E6765290A202020207B0A2020202020206E65775F66696E616C5F72616E67655F74696D656F75745F6D636C6B73202B3D2074696D656F7574732E7072655F72616E67655F6D636C6B733B0A202020207D0A0A20202020777269746552656731364269742846494E414C5F52414E47455F434F4E4649475F54494D454F55545F4D4143524F505F48492C0A202020202020656E636F646554696D656F7574286E65775F66696E616C5F72616E67655F74696D656F75745F6D636C6B7329293B0A0A202020202F2F207365745F73657175656E63655F737465705F74696D656F757420656E640A20207D0A2020656C73650A20207B0A202020202F2F20696E76616C696420747970650A2020202072657475726E2066616C73653B0A20207D0A0A20202F2F202246696E616C6C792C207468652074696D696E6720627564676574206D7573742062652072652D6170706C696564220A0A20207365744D6561737572656D656E7454696D696E67427564676574286D6561737572656D656E745F74696D696E675F6275646765745F7573293B0A0A20202F2F2022506572666F726D207468652070686173652063616C6962726174696F6E2E2054686973206973206E6565646564206166746572206368616E67696E67206F6E20766373656C20706572696F642E220A20202F2F20564C35334C30585F706572666F726D5F70686173655F63616C6962726174696F6E282920626567696E0A0A202075696E74385F742073657175656E63655F636F6E666967203D20726561645265672853595354454D5F53455155454E43455F434F4E464947293B0A202077726974655265672853595354454D5F53455155454E43455F434F4E4649472C2030783032293B0A2020706572666F726D53696E676C6552656643616C6962726174696F6E28307830293B0A202077726974655265672853595354454D5F53455155454E43455F434F4E4649472C2073657175656E63655F636F6E666967293B0A0A20202F2F20564C35334C30585F706572666F726D5F70686173655F63616C6962726174696F6E282920656E640A0A202072657475726E20747275653B0A7D0A0A2F2F204765742074686520564353454C2070756C736520706572696F6420696E2050434C4B7320666F722074686520676976656E20706572696F6420747970652E0A2F2F206261736564206F6E20564C35334C30585F6765745F766373656C5F70756C73655F706572696F6428290A75696E74385F7420564C35334C30583A3A676574566373656C50756C7365506572696F6428766373656C506572696F64547970652074797065290A7B0A20206966202874797065203D3D20566373656C506572696F6450726552616E6765290A20207B0A2020202072657475726E206465636F6465566373656C506572696F642872656164526567285052455F52414E47455F434F4E4649475F564353454C5F504552494F4429293B0A20207D0A2020656C7365206966202874797065203D3D20566373656C506572696F6446696E616C52616E6765290A20207B0A2020202072657475726E206465636F6465566373656C506572696F6428726561645265672846494E414C5F52414E47455F434F4E4649475F564353454C5F504552494F4429293B0A20207D0A2020656C7365207B2072657475726E203235353B207D0A7D0A0A2F2F20537461727420636F6E74696E756F75732072616E67696E67206D6561737572656D656E74732E20496620706572696F645F6D7320286F7074696F6E616C292069732030206F72206E6F740A2F2F20676976656E2C20636F6E74696E756F7573206261636B2D746F2D6261636B206D6F6465206973207573656420287468652073656E736F722074616B6573206D6561737572656D656E74732061730A2F2F206F6674656E20617320706F737369626C65293B206F74686572776973652C20636F6E74696E756F75732074696D6564206D6F646520697320757365642C20776974682074686520676976656E0A2F2F20696E7465722D6D6561737572656D656E7420706572696F6420696E206D696C6C697365636F6E64732064657465726D696E696E6720686F77206F6674656E207468652073656E736F720A2F2F2074616B65732061206D6561737572656D656E742E0A2F2F206261736564206F6E20564C35334C30585F53746172744D6561737572656D656E7428290A766F696420564C35334C30583A3A7374617274436F6E74696E756F75732875696E7433325F7420706572696F645F6D73290A7B0A2020777269746552656728307838302C2030783031293B0A2020777269746552656728307846462C2030783031293B0A2020777269746552656728307830302C2030783030293B0A2020777269746552656728307839312C2073746F705F7661726961626C65293B0A2020777269746552656728307830302C2030783031293B0A2020777269746552656728307846462C2030783030293B0A2020777269746552656728307838302C2030783030293B0A0A202069662028706572696F645F6D7320213D2030290A20207B0A202020202F2F20636F6E74696E756F75732074696D6564206D6F64650A0A202020202F2F20564C35334C30585F536574496E7465724D6561737572656D656E74506572696F644D696C6C695365636F6E6473282920626567696E0A0A2020202075696E7431365F74206F73635F63616C6962726174655F76616C203D20726561645265673136426974284F53435F43414C4942524154455F56414C293B0A0A20202020696620286F73635F63616C6962726174655F76616C20213D2030290A202020207B0A202020202020706572696F645F6D73202A3D206F73635F63616C6962726174655F76616C3B0A202020207D0A0A20202020777269746552656733324269742853595354454D5F494E5445524D4541535552454D454E545F504552494F442C20706572696F645F6D73293B0A0A202020202F2F20564C35334C30585F536574496E7465724D6561737572656D656E74506572696F644D696C6C695365636F6E6473282920656E640A0A2020202077726974655265672853595352414E47455F53544152542C2030783034293B202F2F20564C35334C30585F5245475F53595352414E47455F4D4F44455F54494D45440A20207D0A2020656C73650A20207B0A202020202F2F20636F6E74696E756F7573206261636B2D746F2D6261636B206D6F64650A2020202077726974655265672853595352414E47455F53544152542C2030783032293B202F2F20564C35334C30585F5245475F53595352414E47455F4D4F44455F4241434B544F4241434B0A20207D0A7D0A0A2F2F2053746F7020636F6E74696E756F7573206D6561737572656D656E74730A2F2F206261736564206F6E20564C35334C30585F53746F704D6561737572656D656E7428290A766F696420564C35334C30583A3A73746F70436F6E74696E756F757328766F6964290A7B0A202077726974655265672853595352414E47455F53544152542C2030783031293B202F2F20564C35334C30585F5245475F53595352414E47455F4D4F44455F53494E474C4553484F540A0A2020777269746552656728307846462C2030783031293B0A2020777269746552656728307830302C2030783030293B0A2020777269746552656728307839312C2030783030293B0A2020777269746552656728307830302C2030783031293B0A2020777269746552656728307846462C2030783030293B0A7D0A0A2F2F2052657475726E7320612072616E67652072656164696E6720696E206D696C6C696D6574657273207768656E20636F6E74696E756F7573206D6F6465206973206163746976650A2F2F20287265616452616E676553696E676C654D696C6C696D6574657273282920616C736F2063616C6C7320746869732066756E6374696F6E206166746572207374617274696E6720610A2F2F2073696E676C652D73686F742072616E6765206D6561737572656D656E74290A75696E7431365F7420564C35334C30583A3A7265616452616E6765436F6E74696E756F75734D696C6C696D657465727328766F6964290A7B0A2020737461727454696D656F757428293B0A20207768696C652028287265616452656728524553554C545F494E544552525550545F535441545553292026203078303729203D3D2030290A20207B0A2020202069662028636865636B54696D656F7574457870697265642829290A202020207B0A2020202020206469645F74696D656F7574203D20747275653B0A20202020202072657475726E2036353533353B0A202020207D0A20207D0A0A20202F2F20617373756D7074696F6E733A204C696E65617269747920436F7272656374697665204761696E2069732031303030202864656661756C74293B0A20202F2F206672616374696F6E616C2072616E67696E67206973206E6F7420656E61626C65640A202075696E7431365F742072616E6765203D2072656164526567313642697428524553554C545F52414E47455F535441545553202B203130293B0A0A202077726974655265672853595354454D5F494E544552525550545F434C4541522C2030783031293B0A0A202072657475726E2072616E67653B0A7D0A0A2F2F20506572666F726D7320612073696E676C652D73686F742072616E6765206D6561737572656D656E7420616E642072657475726E73207468652072656164696E6720696E0A2F2F206D696C6C696D65746572730A2F2F206261736564206F6E20564C35334C30585F506572666F726D53696E676C6552616E67696E674D6561737572656D656E7428290A75696E7431365F7420564C35334C30583A3A7265616452616E676553696E676C654D696C6C696D657465727328766F6964290A7B0A2020777269746552656728307838302C2030783031293B0A2020777269746552656728307846462C2030783031293B0A2020777269746552656728307830302C2030783030293B0A2020777269746552656728307839312C2073746F705F7661726961626C65293B0A2020777269746552656728307830302C2030783031293B0A2020777269746552656728307846462C2030783030293B0A2020777269746552656728307838302C2030783030293B0A0A202077726974655265672853595352414E47455F53544152542C2030783031293B0A0A20202F2F20225761697420756E74696C2073746172742062697420686173206265656E20636C6561726564220A2020737461727454696D656F757428293B0A20207768696C652028726561645265672853595352414E47455F53544152542920262030783031290A20207B0A2020202069662028636865636B54696D656F7574457870697265642829290A202020207B0A2020202020206469645F74696D656F7574203D20747275653B0A20202020202072657475726E2036353533353B0A202020207D0A20207D0A0A202072657475726E207265616452616E6765436F6E74696E756F75734D696C6C696D657465727328293B0A7D0A0A2F2F2044696420612074696D656F7574206F6363757220696E206F6E65206F662074686520726561642066756E6374696F6E732073696E636520746865206C6173742063616C6C20746F0A2F2F2074696D656F75744F6363757272656428293F0A626F6F6C20564C35334C30583A3A74696D656F75744F6363757272656428290A7B0A2020626F6F6C20746D70203D206469645F74696D656F75743B0A20206469645F74696D656F7574203D2066616C73653B0A202072657475726E20746D703B0A7D0A0A2F2F2050726976617465204D6574686F6473202F2F2F2F2F2F2F2F2F2F2F2F2F2F2F2F2F2F2F2F2F2F2F2F2F2F2F2F2F2F2F2F2F2F2F2F2F2F2F2F2F2F2F2F2F2F2F2F2F2F2F2F2F2F2F2F2F2F2F2F2F0A0A2F2F20476574207265666572656E63652053504144202873696E676C652070686F746F6E206176616C616E6368652064696F64652920636F756E7420616E6420747970650A2F2F206261736564206F6E20564C35334C30585F6765745F696E666F5F66726F6D5F64657669636528292C0A2F2F20627574206F6E6C792067657473207265666572656E6365205350414420636F756E7420616E6420747970650A626F6F6C20564C35334C30583A3A67657453706164496E666F2875696E74385F74202A20636F756E742C20626F6F6C202A20747970655F69735F6170657274757265290A7B0A202075696E74385F7420746D703B0A0A2020777269746552656728307838302C2030783031293B0A2020777269746552656728307846462C2030783031293B0A2020777269746552656728307830302C2030783030293B0A0A2020777269746552656728307846462C2030783036293B0A2020777269746552656728307838332C2072656164526567283078383329207C2030783034293B0A2020777269746552656728307846462C2030783037293B0A2020777269746552656728307838312C2030783031293B0A0A2020777269746552656728307838302C2030783031293B0A0A2020777269746552656728307839342C2030783662293B0A2020777269746552656728307838332C2030783030293B0A2020737461727454696D656F757428293B0A20207768696C65202872656164526567283078383329203D3D2030783030290A20207B0A2020202069662028636865636B54696D656F757445787069726564282929207B2072657475726E2066616C73653B207D0A20207D0A2020777269746552656728307838332C2030783031293B0A2020746D70203D20726561645265672830783932293B0A0A20202A636F756E74203D20746D70202620307837663B0A20202A747970655F69735F6170657274757265203D2028746D70203E3E203729202620307830313B0A0A2020777269746552656728307838312C2030783030293B0A2020777269746552656728307846462C2030783036293B0A2020777269746552656728307838332C2072656164526567283078383329202026207E30783034293B0A2020777269746552656728307846462C2030783031293B0A2020777269746552656728307830302C2030783031293B0A0A2020777269746552656728307846462C2030783030293B0A2020777269746552656728307838302C2030783030293B0A0A202072657475726E20747275653B0A7D0A0A2F2F204765742073657175656E6365207374657020656E61626C65730A2F2F206261736564206F6E20564C35334C30585F47657453657175656E636553746570456E61626C657328290A766F696420564C35334C30583A3A67657453657175656E636553746570456E61626C65732853657175656E636553746570456E61626C6573202A20656E61626C6573290A7B0A202075696E74385F742073657175656E63655F636F6E666967203D20726561645265672853595354454D5F53455155454E43455F434F4E464947293B0A0A2020656E61626C65732D3E746363202020202020202020203D202873657175656E63655F636F6E666967203E3E2034292026203078313B0A2020656E61626C65732D3E647373202020202020202020203D202873657175656E63655F636F6E666967203E3E2033292026203078313B0A2020656E61626C65732D3E6D7372632020202020202020203D202873657175656E63655F636F6E666967203E3E2032292026203078313B0A2020656E61626C65732D3E7072655F72616E6765202020203D202873657175656E63655F636F6E666967203E3E2036292026203078313B0A2020656E61626C65732D3E66696E616C5F72616E676520203D202873657175656E63655F636F6E666967203E3E2037292026203078313B0A7D0A0A2F2F204765742073657175656E636520737465702074696D656F7574730A2F2F206261736564206F6E206765745F73657175656E63655F737465705F74696D656F757428292C0A2F2F20627574206765747320616C6C2074696D656F75747320696E7374656164206F66206A7573742074686520726571756573746564206F6E652C20616E6420616C736F2073746F7265730A2F2F20696E7465726D6564696174652076616C7565730A766F696420564C35334C30583A3A67657453657175656E63655374657054696D656F7574732853657175656E636553746570456E61626C657320636F6E7374202A20656E61626C65732C2053657175656E63655374657054696D656F757473202A2074696D656F757473290A7B0A202074696D656F7574732D3E7072655F72616E67655F766373656C5F706572696F645F70636C6B73203D20676574566373656C50756C7365506572696F6428566373656C506572696F6450726552616E6765293B0A0A202074696D656F7574732D3E6D7372635F6473735F7463635F6D636C6B73203D2072656164526567284D5352435F434F4E4649475F54494D454F55545F4D4143524F5029202B20313B0A202074696D656F7574732D3E6D7372635F6473735F7463635F7573203D0A2020202074696D656F75744D636C6B73546F4D6963726F7365636F6E64732874696D656F7574732D3E6D7372635F6473735F7463635F6D636C6B732C0A2020202020202020202020202020202020202020202020202020202020202074696D656F7574732D3E7072655F72616E67655F766373656C5F706572696F645F70636C6B73293B0A0A202074696D656F7574732D3E7072655F72616E67655F6D636C6B73203D0A202020206465636F646554696D656F757428726561645265673136426974285052455F52414E47455F434F4E4649475F54494D454F55545F4D4143524F505F484929293B0A202074696D656F7574732D3E7072655F72616E67655F7573203D0A2020202074696D656F75744D636C6B73546F4D6963726F7365636F6E64732874696D656F7574732D3E7072655F72616E67655F6D636C6B732C0A2020202020202020202020202020202020202020202020202020202020202074696D656F7574732D3E7072655F72616E67655F766373656C5F706572696F645F70636C6B73293B0A0A202074696D656F7574732D3E66696E616C5F72616E67655F766373656C5F706572696F645F70636C6B73203D20676574566373656C50756C7365506572696F6428566373656C506572696F6446696E616C52616E6765293B0A0A202074696D656F7574732D3E66696E616C5F72616E67655F6D636C6B73203D0A202020206465636F646554696D656F7574287265616452656731364269742846494E414C5F52414E47455F434F4E4649475F54494D454F55545F4D4143524F505F484929293B0A0A202069662028656E61626C65732D3E7072655F72616E6765290A20207B0A2020202074696D656F7574732D3E66696E616C5F72616E67655F6D636C6B73202D3D2074696D656F7574732D3E7072655F72616E67655F6D636C6B733B0A20207D0A0A202074696D656F7574732D3E66696E616C5F72616E67655F7573203D0A2020202074696D656F75744D636C6B73546F4D6963726F7365636F6E64732874696D656F7574732D3E66696E616C5F72616E67655F6D636C6B732C0A2020202020202020202020202020202020202020202020202020202020202074696D656F7574732D3E66696E616C5F72616E67655F766373656C5F706572696F645F70636C6B73293B0A7D0A0A2F2F204465636F64652073657175656E636520737465702074696D656F757420696E204D434C4B732066726F6D2072656769737465722076616C75650A2F2F206261736564206F6E20564C35334C30585F6465636F64655F74696D656F757428290A2F2F204E6F74653A20746865206F726967696E616C2066756E6374696F6E2072657475726E656420612075696E7433325F742C20627574207468652072657475726E2076616C75652069730A2F2F20616C776179732073746F72656420696E20612075696E7431365F742E0A75696E7431365F7420564C35334C30583A3A6465636F646554696D656F75742875696E7431365F74207265675F76616C290A7B0A20202F2F20666F726D61743A2022284C5342797465202A20325E4D534279746529202B2031220A202072657475726E202875696E7431365F742928287265675F76616C20262030783030464629203C3C0A2020202020202020202875696E7431365F742928287265675F76616C20262030784646303029203E3E20382929202B20313B0A7D0A0A2F2F20456E636F64652073657175656E636520737465702074696D656F75742072656769737465722076616C75652066726F6D2074696D656F757420696E204D434C4B730A2F2F206261736564206F6E20564C35334C30585F656E636F64655F74696D656F757428290A2F2F204E6F74653A20746865206F726967696E616C2066756E6374696F6E20746F6F6B20612075696E7431365F742C206275742074686520617267756D656E742070617373656420746F2069740A2F2F20697320616C7761797320612075696E7431365F742E0A75696E7431365F7420564C35334C30583A3A656E636F646554696D656F75742875696E7431365F742074696D656F75745F6D636C6B73290A7B0A20202F2F20666F726D61743A2022284C5342797465202A20325E4D534279746529202B2031220A0A202075696E7433325F74206C735F62797465203D20303B0A202075696E7431365F74206D735F62797465203D20303B0A0A20206966202874696D656F75745F6D636C6B73203E2030290A20207B0A202020206C735F62797465203D2074696D656F75745F6D636C6B73202D20313B0A0A202020207768696C652028286C735F627974652026203078464646464646303029203E2030290A202020207B0A2020202020206C735F62797465203E3E3D20313B0A2020202020206D735F627974652B2B3B0A202020207D0A0A2020202072657475726E20286D735F62797465203C3C203829207C20286C735F6279746520262030784646293B0A20207D0A2020656C7365207B2072657475726E20303B207D0A7D0A0A2F2F20436F6E766572742073657175656E636520737465702074696D656F75742066726F6D204D434C4B7320746F206D6963726F7365636F6E6473207769746820676976656E20564353454C20706572696F6420696E2050434C4B730A2F2F206261736564206F6E20564C35334C30585F63616C635F74696D656F75745F757328290A75696E7433325F7420564C35334C30583A3A74696D656F75744D636C6B73546F4D6963726F7365636F6E64732875696E7431365F742074696D656F75745F706572696F645F6D636C6B732C2075696E74385F7420766373656C5F706572696F645F70636C6B73290A7B0A202075696E7433325F74206D6163726F5F706572696F645F6E73203D2063616C634D6163726F506572696F6428766373656C5F706572696F645F70636C6B73293B0A0A202072657475726E20282874696D656F75745F706572696F645F6D636C6B73202A206D6163726F5F706572696F645F6E7329202B20286D6163726F5F706572696F645F6E73202F20322929202F20313030303B0A7D0A0A2F2F20436F6E766572742073657175656E636520737465702074696D656F75742066726F6D206D6963726F7365636F6E647320746F204D434C4B73207769746820676976656E20564353454C20706572696F6420696E2050434C4B730A2F2F206261736564206F6E20564C35334C30585F63616C635F74696D656F75745F6D636C6B7328290A75696E7433325F7420564C35334C30583A3A74696D656F75744D6963726F7365636F6E6473546F4D636C6B732875696E7433325F742074696D656F75745F706572696F645F75732C2075696E74385F7420766373656C5F706572696F645F70636C6B73290A7B0A202075696E7433325F74206D6163726F5F706572696F645F6E73203D2063616C634D6163726F506572696F6428766373656C5F706572696F645F70636C6B73293B0A0A202072657475726E2028282874696D656F75745F706572696F645F7573202A203130303029202B20286D6163726F5F706572696F645F6E73202F20322929202F206D6163726F5F706572696F645F6E73293B0A7D0A0A0A2F2F206261736564206F6E20564C35334C30585F706572666F726D5F73696E676C655F7265665F63616C6962726174696F6E28290A626F6F6C20564C35334C30583A3A706572666F726D53696E676C6552656643616C6962726174696F6E2875696E74385F74207668765F696E69745F62797465290A7B0A202077726974655265672853595352414E47455F53544152542C2030783031207C207668765F696E69745F62797465293B202F2F20564C35334C30585F5245475F53595352414E47455F4D4F44455F53544152545F53544F500A0A2020737461727454696D656F757428293B0A20207768696C652028287265616452656728524553554C545F494E544552525550545F535441545553292026203078303729203D3D2030290A20207B0A2020202069662028636865636B54696D656F757445787069726564282929207B2072657475726E2066616C73653B207D0A20207D0A0A202077726974655265672853595354454D5F494E544552525550545F434C4541522C2030783031293B0A0A202077726974655265672853595352414E47455F53544152542C2030783030293B0A0A202072657475726E20747275653B0A7D0A .cpp VL53L0X 2369666E64656620564C35334C30585F680A23646566696E6520564C35334C30585F680A0A23696E636C756465203C41726475696E6F2E683E0A0A636C61737320564C35334C30580A7B0A20207075626C69633A0A202020202F2F207265676973746572206164647265737365732066726F6D2041504920766C35336C30785F6465766963652E6820286F726465726564206173206C6973746564207468657265290A20202020656E756D20726567416464720A202020207B0A20202020202053595352414E47455F53544152542020202020202020202020202020202020202020202020202020202020203D20307830302C0A0A20202020202053595354454D5F5448524553485F4849474820202020202020202020202020202020202020202020202020203D20307830432C0A20202020202053595354454D5F5448524553485F4C4F572020202020202020202020202020202020202020202020202020203D20307830452C0A0A20202020202053595354454D5F53455155454E43455F434F4E464947202020202020202020202020202020202020202020203D20307830312C0A20202020202053595354454D5F52414E47455F434F4E464947202020202020202020202020202020202020202020202020203D20307830392C0A20202020202053595354454D5F494E5445524D4541535552454D454E545F504552494F4420202020202020202020202020203D20307830342C0A0A20202020202053595354454D5F494E544552525550545F434F4E4649475F4750494F202020202020202020202020202020203D20307830412C0A0A2020202020204750494F5F48565F4D55585F4143544956455F484947482020202020202020202020202020202020202020203D20307838342C0A0A20202020202053595354454D5F494E544552525550545F434C454152202020202020202020202020202020202020202020203D20307830422C0A0A202020202020524553554C545F494E544552525550545F5354415455532020202020202020202020202020202020202020203D20307831332C0A202020202020524553554C545F52414E47455F535441545553202020202020202020202020202020202020202020202020203D20307831342C0A0A202020202020524553554C545F434F52455F414D4249454E545F57494E444F575F4556454E54535F52544E202020202020203D20307842432C0A202020202020524553554C545F434F52455F52414E47494E475F544F54414C5F4556454E54535F52544E20202020202020203D20307843302C0A202020202020524553554C545F434F52455F414D4249454E545F57494E444F575F4556454E54535F524546202020202020203D20307844302C0A202020202020524553554C545F434F52455F52414E47494E475F544F54414C5F4556454E54535F52454620202020202020203D20307844342C0A202020202020524553554C545F5045414B5F5349474E414C5F524154455F52454620202020202020202020202020202020203D20307842362C0A0A202020202020414C474F5F504152545F544F5F504152545F52414E47455F4F46465345545F4D4D20202020202020202020203D20307832382C0A0A2020202020204932435F534C4156455F4445564943455F4144445245535320202020202020202020202020202020202020203D20307838412C0A0A2020202020204D5352435F434F4E4649475F434F4E54524F4C202020202020202020202020202020202020202020202020203D20307836302C0A0A2020202020205052455F52414E47455F434F4E4649475F4D494E5F534E5220202020202020202020202020202020202020203D20307832372C0A2020202020205052455F52414E47455F434F4E4649475F56414C49445F50484153455F4C4F572020202020202020202020203D20307835362C0A2020202020205052455F52414E47455F434F4E4649475F56414C49445F50484153455F4849474820202020202020202020203D20307835372C0A2020202020205052455F52414E47455F4D494E5F434F554E545F524154455F52544E5F4C494D4954202020202020202020203D20307836342C0A0A20202020202046494E414C5F52414E47455F434F4E4649475F4D494E5F534E522020202020202020202020202020202020203D20307836372C0A20202020202046494E414C5F52414E47455F434F4E4649475F56414C49445F50484153455F4C4F57202020202020202020203D20307834372C0A20202020202046494E414C5F52414E47455F434F4E4649475F56414C49445F50484153455F484947482020202020202020203D20307834382C0A20202020202046494E414C5F52414E47455F434F4E4649475F4D494E5F434F554E545F524154455F52544E5F4C494D4954203D20307834342C0A0A2020202020205052455F52414E47455F434F4E4649475F5349474D415F5448524553485F48492020202020202020202020203D20307836312C0A2020202020205052455F52414E47455F434F4E4649475F5349474D415F5448524553485F4C4F2020202020202020202020203D20307836322C0A0A2020202020205052455F52414E47455F434F4E4649475F564353454C5F504552494F442020202020202020202020202020203D20307835302C0A2020202020205052455F52414E47455F434F4E4649475F54494D454F55545F4D4143524F505F4849202020202020202020203D20307835312C0A2020202020205052455F52414E47455F434F4E4649475F54494D454F55545F4D4143524F505F4C4F202020202020202020203D20307835322C0A0A20202020202053595354454D5F484953544F4752414D5F42494E2020202020202020202020202020202020202020202020203D20307838312C0A202020202020484953544F4752414D5F434F4E4649475F494E495449414C5F50484153455F53454C454354202020202020203D20307833332C0A202020202020484953544F4752414D5F434F4E4649475F524541444F55545F4354524C2020202020202020202020202020203D20307835352C0A0A20202020202046494E414C5F52414E47455F434F4E4649475F564353454C5F504552494F44202020202020202020202020203D20307837302C0A20202020202046494E414C5F52414E47455F434F4E4649475F54494D454F55545F4D4143524F505F484920202020202020203D20307837312C0A20202020202046494E414C5F52414E47455F434F4E4649475F54494D454F55545F4D4143524F505F4C4F20202020202020203D20307837322C0A20202020202043524F535354414C4B5F434F4D50454E534154494F4E5F5045414B5F524154455F4D435053202020202020203D20307832302C0A0A2020202020204D5352435F434F4E4649475F54494D454F55545F4D4143524F502020202020202020202020202020202020203D20307834362C0A0A202020202020534F46545F52455345545F474F325F534F46545F52455345545F4E20202020202020202020202020202020203D20307842462C0A2020202020204944454E54494649434154494F4E5F4D4F44454C5F49442020202020202020202020202020202020202020203D20307843302C0A2020202020204944454E54494649434154494F4E5F5245564953494F4E5F49442020202020202020202020202020202020203D20307843322C0A0A2020202020204F53435F43414C4942524154455F56414C2020202020202020202020202020202020202020202020202020203D20307846382C0A0A202020202020474C4F42414C5F434F4E4649475F564353454C5F5749445448202020202020202020202020202020202020203D20307833322C0A202020202020474C4F42414C5F434F4E4649475F535041445F454E41424C45535F5245465F302020202020202020202020203D20307842302C0A202020202020474C4F42414C5F434F4E4649475F535041445F454E41424C45535F5245465F312020202020202020202020203D20307842312C0A202020202020474C4F42414C5F434F4E4649475F535041445F454E41424C45535F5245465F322020202020202020202020203D20307842322C0A202020202020474C4F42414C5F434F4E4649475F535041445F454E41424C45535F5245465F332020202020202020202020203D20307842332C0A202020202020474C4F42414C5F434F4E4649475F535041445F454E41424C45535F5245465F342020202020202020202020203D20307842342C0A202020202020474C4F42414C5F434F4E4649475F535041445F454E41424C45535F5245465F352020202020202020202020203D20307842352C0A0A202020202020474C4F42414C5F434F4E4649475F5245465F454E5F53544152545F53454C45435420202020202020202020203D20307842362C0A20202020202044594E414D49435F535041445F4E554D5F5245515545535445445F5245465F535041442020202020202020203D20307834452C0A20202020202044594E414D49435F535041445F5245465F454E5F53544152545F4F46465345542020202020202020202020203D20307834462C0A202020202020504F5745525F4D414E4147454D454E545F474F315F504F5745525F464F5243452020202020202020202020203D20307838302C0A0A2020202020205648565F434F4E4649475F5041445F53434C5F5344415F5F4558545355505F485620202020202020202020203D20307838392C0A0A202020202020414C474F5F504841534543414C5F4C494D2020202020202020202020202020202020202020202020202020203D20307833302C0A202020202020414C474F5F504841534543414C5F434F4E4649475F54494D454F5554202020202020202020202020202020203D20307833302C0A202020207D3B0A0A20202020656E756D20766373656C506572696F6454797065207B20566373656C506572696F6450726552616E67652C20566373656C506572696F6446696E616C52616E6765207D3B0A0A2020202075696E74385F74206C6173745F7374617475733B202F2F20737461747573206F66206C61737420493243207472616E736D697373696F6E0A0A20202020564C35334C305828766F6964293B0A0A20202020766F696420736574416464726573732875696E74385F74206E65775F61646472293B0A20202020696E6C696E652075696E74385F74206765744164647265737328766F696429207B2072657475726E20616464726573733B207D0A0A20202020626F6F6C20696E697428626F6F6C20696F5F327638203D2074727565293B0A0A20202020766F69642077726974655265672875696E74385F74207265672C2075696E74385F742076616C7565293B0A20202020766F696420777269746552656731364269742875696E74385F74207265672C2075696E7431365F742076616C7565293B0A20202020766F696420777269746552656733324269742875696E74385F74207265672C2075696E7433325F742076616C7565293B0A2020202075696E74385F7420726561645265672875696E74385F7420726567293B0A2020202075696E7431365F74207265616452656731364269742875696E74385F7420726567293B0A2020202075696E7433325F74207265616452656733324269742875696E74385F7420726567293B0A0A20202020766F69642077726974654D756C74692875696E74385F74207265672C2075696E74385F7420636F6E7374202A207372632C2075696E74385F7420636F756E74293B0A20202020766F696420726561644D756C74692875696E74385F74207265672C2075696E74385F74202A206473742C2075696E74385F7420636F756E74293B0A0A20202020626F6F6C207365745369676E616C526174654C696D697428666C6F6174206C696D69745F4D637073293B0A20202020666C6F6174206765745369676E616C526174654C696D697428766F6964293B0A0A20202020626F6F6C207365744D6561737572656D656E7454696D696E674275646765742875696E7433325F74206275646765745F7573293B0A2020202075696E7433325F74206765744D6561737572656D656E7454696D696E6742756467657428766F6964293B0A0A20202020626F6F6C20736574566373656C50756C7365506572696F6428766373656C506572696F645479706520747970652C2075696E74385F7420706572696F645F70636C6B73293B0A2020202075696E74385F7420676574566373656C50756C7365506572696F6428766373656C506572696F64547970652074797065293B0A0A20202020766F6964207374617274436F6E74696E756F75732875696E7433325F7420706572696F645F6D73203D2030293B0A20202020766F69642073746F70436F6E74696E756F757328766F6964293B0A2020202075696E7431365F74207265616452616E6765436F6E74696E756F75734D696C6C696D657465727328766F6964293B0A2020202075696E7431365F74207265616452616E676553696E676C654D696C6C696D657465727328766F6964293B0A0A20202020696E6C696E6520766F69642073657454696D656F75742875696E7431365F742074696D656F757429207B20696F5F74696D656F7574203D2074696D656F75743B207D0A20202020696E6C696E652075696E7431365F742067657454696D656F757428766F696429207B2072657475726E20696F5F74696D656F75743B207D0A20202020626F6F6C2074696D656F75744F6363757272656428766F6964293B0A0A2020707269766174653A0A202020202F2F205443433A205461726765742043656E747265436865636B0A202020202F2F204D5352433A204D696E696D756D205369676E616C205261746520436865636B0A202020202F2F204453533A2044796E616D696320537061642053656C656374696F6E0A0A202020207374727563742053657175656E636553746570456E61626C65730A202020207B0A202020202020626F6F6C65616E207463632C206D7372632C206473732C207072655F72616E67652C2066696E616C5F72616E67653B0A202020207D3B0A0A202020207374727563742053657175656E63655374657054696D656F7574730A202020207B0A20202020202075696E7431365F74207072655F72616E67655F766373656C5F706572696F645F70636C6B732C2066696E616C5F72616E67655F766373656C5F706572696F645F70636C6B733B0A0A20202020202075696E7431365F74206D7372635F6473735F7463635F6D636C6B732C207072655F72616E67655F6D636C6B732C2066696E616C5F72616E67655F6D636C6B733B0A20202020202075696E7433325F74206D7372635F6473735F7463635F75732C202020207072655F72616E67655F75732C2020202066696E616C5F72616E67655F75733B0A202020207D3B0A0A2020202075696E74385F7420616464726573733B0A2020202075696E7431365F7420696F5F74696D656F75743B0A20202020626F6F6C206469645F74696D656F75743B0A2020202075696E7431365F742074696D656F75745F73746172745F6D733B0A0A2020202075696E74385F742073746F705F7661726961626C653B202F2F207265616420627920696E697420616E642075736564207768656E207374617274696E67206D6561737572656D656E743B2069732053746F705661726961626C65206669656C64206F6620564C35334C30585F446576446174615F742073747275637475726520696E204150490A2020202075696E7433325F74206D6561737572656D656E745F74696D696E675F6275646765745F75733B0A0A20202020626F6F6C2067657453706164496E666F2875696E74385F74202A20636F756E742C20626F6F6C202A20747970655F69735F6170657274757265293B0A0A20202020766F69642067657453657175656E636553746570456E61626C65732853657175656E636553746570456E61626C6573202A20656E61626C6573293B0A20202020766F69642067657453657175656E63655374657054696D656F7574732853657175656E636553746570456E61626C657320636F6E7374202A20656E61626C65732C2053657175656E63655374657054696D656F757473202A2074696D656F757473293B0A0A20202020626F6F6C20706572666F726D53696E676C6552656643616C6962726174696F6E2875696E74385F74207668765F696E69745F62797465293B0A0A202020207374617469632075696E7431365F74206465636F646554696D656F75742875696E7431365F742076616C7565293B0A202020207374617469632075696E7431365F7420656E636F646554696D656F75742875696E7431365F742074696D656F75745F6D636C6B73293B0A202020207374617469632075696E7433325F742074696D656F75744D636C6B73546F4D6963726F7365636F6E64732875696E7431365F742074696D656F75745F706572696F645F6D636C6B732C2075696E74385F7420766373656C5F706572696F645F70636C6B73293B0A202020207374617469632075696E7433325F742074696D656F75744D6963726F7365636F6E6473546F4D636C6B732875696E7433325F742074696D656F75745F706572696F645F75732C2075696E74385F7420766373656C5F706572696F645F70636C6B73293B0A7D3B0A0A23656E6469660A0A0A0A .h 6627fbff-4a38-4beb-bb40-c3e475759817 Для vl53l0x vcc 3.3-5 v gnd -gnd sda -sda по распиновке scl-scl по распиновке выход растояние в мм используемая библиотека VL53L0X.h 134 if (en==1) { dist=(sensor.readRangeSingleMillimeters()); } 60 Wire.begin(); sensor.init(); sensor.setTimeout(500); sensor.setSignalRateLimit(0.1); sensor.setVcselPulsePeriod(VL53L0X::VcselPeriodPreRange, 18); sensor.setVcselPulsePeriod(VL53L0X::VcselPeriodFinalRange, 14); 230 #include <Wire.h> #include <VL53L0X.h> sensor ; VL53L0X 250@100 corner: 270@120 period 250@130 270@130 237.0d@133.5d dely 1036b3aa-a4b6-4b77-a7dd-a1246ba07d97 587baa96-6308-4ac6-b556-dbfba8b6ac73 b7fd5afa-2f96-4285-b068-6eaa9f16333e if (en==1) { dist=(sensor.readRangeSingleMillimeters()); delay ( dely ); } 77 250@120 corner: 270@140 329.0d@120 corner: 349.0d@140 349.0d@130 7805f4d0-b121-4d88-a69e-bef3550d4169 Для vl53l0x vcc 3.3-5 v gnd -gnd sda -sda по распиновке scl-scl по распиновке выход растояние в мм используемая библиотека VL53L0X.h P.S. Добавил входы en, и period в милисекундах by CanCer 191 if (en==1) { long interval= period ; // интервал между включение/выключением светодиода (1 секунда) unsigned long currentMillis = millis(); //проверяем не прошел ли нужный интервал, если прошел то if(currentMillis - previousMillis > interval) { // сохраняем время последнего переключения previousMillis = currentMillis; dist=(sensor.readRangeSingleMillimeters()); } } 388 #include <Wire.h> #include <VL53L0X.h> sensor ; VL53L0X храним время последнего переключения светодиода previousMillis = 0; long 59.0d 18.0d 329.0d@130 349.0d@130 corner: 349.0d@130 I1 400@130 420@130 I2 300 400@150 420@150 380.0d@153.5d 500@150 < Q 9.0d 480@150 500@150 corner: 500@190 550@190 570@190 550@180 corner: 570@200 17 410@200 430@200 corner: 490@260 410@200 corner: 510@260 444.5d@214.0d 14 250@180 270@180 corner: 329.0d@240 250@180 corner: 349.0d@240 281.0d@193.5d 250@210 270@210 230.0d@213.5d 250@200 corner: 270@220 250@230 270@230 237.0d@233.5d 250@220 corner: 270@240 329.0d@220 corner: 349.0d@240 349.0d@230 2 329.0d@230 349.0d@230 corner: 349.0d@230 I1 410@230 430@230 410@220 corner: 430@240 I2 410@250 430@250 390.0d@253.5d 410@240 corner: 430@260 490@240 corner: 510@260 510@250 < 490@250 510@210 corner: 510@250 550@210 570@210 550@200 corner: 570@220 610@200 corner: 630@220 630@210 610@210 630@210 corner: 630@210 660@210 674@210 660@200 corner: 674@220 8.0d 87.0d Светодиод платы D0 digital 341.0d 9600 arduinoIDE 154 4096 ESP8266 NodeMcu v3 109802410 default