commit 9552918d8d4343a5a6746e4010083ff87778847b Author: scayac Date: Fri Apr 18 21:29:53 2025 +0200 Commit v1 diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..6cf7250 --- /dev/null +++ b/.gitignore @@ -0,0 +1,9 @@ +.pio +.vscode/.browse.c_cpp.db* +.vscode/c_cpp_properties.json +.vscode/launch.json +.vscode/ipch +.pioenvs +.piolibdeps +.clang_complete +.gcc-flags.json \ No newline at end of file diff --git a/.vscode/extensions.json b/.vscode/extensions.json new file mode 100644 index 0000000..080e70d --- /dev/null +++ b/.vscode/extensions.json @@ -0,0 +1,10 @@ +{ + // See http://go.microsoft.com/fwlink/?LinkId=827846 + // for the documentation about the extensions.json format + "recommendations": [ + "platformio.platformio-ide" + ], + "unwantedRecommendations": [ + "ms-vscode.cpptools-extension-pack" + ] +} diff --git a/build/firmware.hex b/build/firmware.hex new file mode 100644 index 0000000..4e170af --- /dev/null +++ b/build/firmware.hex @@ -0,0 +1,1501 @@ +:100000000C9411040C9442040C9442040C94420489 +:100010000C9442040C9442040C9442040C94420448 +:100020000C9442040C9442040C9442040C94420438 +:100030000C9442040C9442040C9442040C94420428 +:100040000C9442040C9442040C9442040C94420418 +:100050000C9442040C9442040C9442040C9490249A +:100060000C9442040C9442040C9442040C944204F8 +:100070000C9442040C9442040C9442040C944204E8 +:100080000C9442040C9442040C9442040C944204D8 +:100090000C9442040C9442040C9442040C944204C8 +:1000A0000C9442040C9442040C9442040C944204B8 +:1000B0000C9442040C9442040C9442040C944204A8 +:1000C0000C9442040C9442040C9442040C94420498 +:1000D0000C9442040C9442040C9442040C94420488 +:1000E0000C9442040C949B200C9475230C948F2345 +:1000F0000C948E1E0C94AB230C9417050C944E0597 +:100100000C94DB1C0C9432050C947C230C949A23E5 +:100110000C947E230C949D230C94760E0C946923EE +:100120000C94FF230C94A4230C943C050C9473238F +:100130000C9421050C9440050C94151D0C94290574 +:100140000C9485230C94181D0C94170F0C94250502 +:100150000C94581F0C941D050C9406080C943F0E2B +:100160000C9425210C94090E0C946C230C945805C6 +:100170000C940B1D0C9462230C94ED070C94472AED +:100180000C94272A0C944A050C942C050C947F0996 +:100190000C9444050C94A1230C94CA1F0C94D70D05 +:1001A0000C9436050C9452050C9407080C945705D2 +:1001B0000C94E51F0C945C050C94F70E0C948823AA +:1001C0000C94B70E0C94E41C0C9492230C940E1D0A +:1001D0000C94E5214602000000FF0800053E5B4F3D +:1001E0005B3E053E6B4F6B3E051C3E7C3E1C05187E +:1001F0003C7E3C18051C577D571C051C5E7F5E1C11 +:100200000400183C1805FFE7C3E7FF040018241892 +:1002100005FFE7DBE7FF0530483A060E052629799A +:10022000292605407F05050705407F05253F055A1E +:100230003CE73C5A057F3E1C1C0805081C1C3E7F01 +:100240000514227F221405FFFFFFFFFF05F0F0F0E9 +:10025000F0F003FFFFFF05000000FFFF050F0F0F89 +:100260000F0F0508047E04080510207E20100508E5 +:10027000082A1C0805081C2A080805AA005500AA17 +:1002800005AA55AA55AA0530383E383005060E3E57 +:100290000E06020000015F0307000705147F147FAC +:1002A0001405444AFF4A320563130864630536495E +:1002B0004936480107033E41410341413E05082AB2 +:1002C0001C2A080508083E08080260E0040808081F +:1002D00008026060056010080403053E5149453E70 +:1002E0000304027F05714949494605414949493698 +:1002F000050F0808087F054F49494931053E49491E +:10030000493005030101017F053649494936050693 +:100310004949493E026C6C026CEC03081422041437 +:1003200014141403221408050159090906053E4155 +:100330005D594E057E0909097E057F494949360503 +:100340003E41414141057F4141413E057F49494987 +:1003500041057F09090901053E41414979057F08A9 +:1003600008087F03417F4105304141413F057F0837 +:10037000142241057F40404040057F020C027F056A +:100380007F0408107F053E4141413E057F09090970 +:1003900006053E4141617E057F091929460546490A +:1003A0004949310501017F0101053F4040403F05BA +:1003B0001F2040201F053F4038403F0563140814AC +:1003C00063050304780403056151494543037F41F4 +:1003D000410503040810600341417F050402010246 +:1003E00004048080808003010204043844447C04B7 +:1003F0007F4444380438444444043844447F043837 +:1004000054545804047E05010418A4A47C047F04F9 +:100410000478017D0384857C047F102844017F05D6 +:100420007C04780478047C04047804384444380458 +:10043000FC24241804182424FC047C040408045814 +:1004400054543403047F04043C40407C041C20408A +:100450007C053C4030403C046C10106C041CA0A097 +:100460007C046454544C0408364141017F044141EA +:1004700036080402010201057F4141417F053E55D6 +:10048000555541053844443844057C2A2A3E140514 +:100490007E0202060605027E027E02056355494180 +:1004A00063053844443C0405407E201E20050602B6 +:1004B0007E0202086313086463006060052A2A2A2A +:1004C0002A2A03514A4403444A51050000FF01030C +:1004D00003E080FF053612362436030205020218B7 +:1004E00018021010053040FF0101041F01011E0019 +:1004F0000000000901017F017F020C027F00000063 +:100500000000000100017D0418247E2404447E457F +:100510004105221C141C2205012A7C2A01017704B2 +:100520004E55553903020002077E81BDA5A5817E87 +:100530000326292F0508142A142204080808180382 +:10054000080808077E81BD95A9817E05010101018A +:10055000010302050203242E2403191512031515A5 +:100560000A02020104F82040780506097F017F0293 +:100570001818040080A0C003121F100326292605A6 +:1005800022142A140808402F1008041E117C084069 +:100590002F10080462554C0915553F1008041E1110 +:1005A0007C053048484D40057815161478057814B8 +:1005B000161578057A1514157A0578161516790525 +:1005C0007815141578057814151478077E09097FB5 +:1005D000494941059EA1612121057C5455464405A8 +:1005E0007C54564544057E55544546057C55544536 +:1005F0004403457E4403447E4503467D4603457CD3 +:100600004505087F49413E057C0A11227D05384495 +:10061000454638053844464538053A4544453A0587 +:1006200038464546390538454445380522140814EE +:1006300022057C625A463E053C4041423C053C4016 +:1006400042413C053C4241423C053C4140413C0565 +:1006500002047A0502043F12120C057E49494E300D +:10066000043845467C043844467D043846457E04BB +:100670003A45467D043845447D04304A4D7A07208A +:10068000545438545458049CA26222043855565885 +:100690000438545659043856555A0438555459029A +:1006A000017A027A01030279020302780204304BD4 +:1006B0004B3C047A090A710430494A300430484AF4 +:1006C0003104304A49320432494A31043944443908 +:1006D0000508082A08080438544C38043841427880 +:1006E0000438404279043842417A043A40407A045E +:1006F00018A0A27904FC282810041AA0A07A0000EF +:100700002100240027002A002D00300033000101C1 +:100710000000040107010A01000022002500280052 +:100720002B002E00310034000201000005010801F9 +:100730000B01000020002300260029002C002F00C0 +:10074000320000010000030106010901050505054D +:10075000070508080808020202020A0A0808040439 +:100760000404010101010101010103030303030367 +:100770000303040707070C0C0C0C0C0C0C0C0202F6 +:10078000020206060606060606060B0B0B0B0B0BF3 +:100790000B0B010210202008081020401020408080 +:1007A0000201020108040201010204081020408035 +:1007B00080402010080402018004020180402010C3 +:1007C000080402010804020101020408102040800C +:1007D000010204081020408000000A0B02090C0DE1 +:1007E0000E080703040100000000000000000000E4 +:1007F00000000000000000000000000000000000F9 +:1008000000000000121110000000000000000000B5 +:100810000000000000000000000000000000272A87 +:10082000472A11241FBECFEFD1E2DEBFCDBF00E0CB +:100830000CBF13E0A0E0B2E0E8E3FCE500E00BBF92 +:1008400002C007900D92AE37B107D9F724E0AEE7AA +:10085000B3E001C01D92AA33B207E1F714E0C0E192 +:10086000D4E000E006C021970109802FFE010E941C +:10087000E52BCF30D10780E00807A9F70E94DA24E2 +:100880000C940A2E0C940000829590E09C01359502 +:100890002795359527952373880F991F880F991FE2 +:1008A0008C7C282B30E0C901959587958575220FA2 +:1008B000331F2A7A822B0895CF93DF93262F269514 +:1008C000382F70E0680F791FFC018E2F831B821771 +:1008D00050F4819161507109DB019C91EF012197E6 +:1008E00098838C93F2CFDF91CF910895482FFC012C +:1008F0008E2F841B8617E0F4219130E0C901959575 +:1009000087958575220F331F2A7A822B90E09C01F0 +:1009100035952795359527952373880F991F880F4F +:10092000991F8C7C822B8295DF0111978C93E0CFED +:100930000895FC0180A5681758F4A5A1B6A184E428 +:10094000689FA00DB11D11249D965C934E939C97BA +:1009500080A5681758F4A5A1B6A184E4689FA00DEE +:10096000B11D112457963C932E93569780A5681776 +:1009700098F4A5A1B6A184E4689FA00DB11D11242F +:1009800018961C921E9217971A961C921E921997EF +:100990001C961C921E921B9780A5681780F405A0D8 +:1009A000F6A1E02D84E4689FE00DF11D112481E0A3 +:1009B00090E0918F808F138E128E16861586089583 +:1009C0004617A8F090913404491788F490913504A3 +:1009D000891768F4E0913204F091330494E4899F1C +:1009E000E00DF11D112463A344A381E0089580E08C +:1009F00008958150823108F05AC0E82FF0E088272E +:100A0000EB5FFA4F8F4F0C94E52B25052905170551 +:100A10001D05210557052C05320536053C05400509 +:100A200044054A054E055705520558055C05809159 +:100A300080008F77809380000895809180008F7D63 +:100A4000F9CF80918000877FF5CF84B58F7784BD03 +:100A5000089584B58F7DFBCF8091B0008F77809310 +:100A6000B00008958091B0008F7DF9CF8091900003 +:100A70008F77809390000895809190008F7DF9CFBB +:100A800080919000877FF5CF8091A0008F77809331 +:100A9000A00008958091A0008F7DF9CF8091A000E3 +:100AA000877FF5CF809120018F7780932001089573 +:100AB000809120018F7DF9CF80912001877FF5CF34 +:100AC000CF93DF93282F30E0F901E852F84F84915B +:100AD000F901EE56F84FD491F901E45BF84FC49157 +:100AE000CC23A1F081110E94F904EC2FF0E0EE0F6D +:100AF000FF1FEE5CF84FA591B491EC91ED2381E0DE +:100B000090E009F480E0DF91CF91089580E090E0DB +:100B1000FACF1F93CF93DF93282F30E0F901E852EB +:100B2000F84F8491F901EE56F84FD491F901E45B46 +:100B3000F84FC491CC23A9F0162F81110E94F9041B +:100B4000EC2FF0E0EE0FFF1FE85EF84FA591B49197 +:100B50008FB7F894EC91111108C0D095DE23DC9387 +:100B60008FBFDF91CF911F910895DE2BF8CFCF93E8 +:100B7000DF9390E0FC01EE56F84F2491845B984F90 +:100B8000FC0184918823D1F090E0880F991FFC012B +:100B9000E250F94FA591B491FC01E85EF84FC59180 +:100BA000D491623071F49FB7F8943C91822F809574 +:100BB00083238C93E8812E2B28839FBFDF91CF91D5 +:100BC00008958FB7F894EC912E2B2C938FBFF6CF0E +:100BD0003FB7F8948091090490910A04A0910B0406 +:100BE000B0910C0426B5A89B05C02F3F19F00196C3 +:100BF000A11DB11D3FBFBA2FA92F982F8827BC0177 +:100C0000CD01620F711D811D911D42E0660F771F9E +:100C1000881F991F4A95D1F708958F929F92AF929E +:100C2000BF92CF92DF92EF92FF926B017C010E9404 +:100C3000E8054B015C01C114D104E104F104B9F0F1 +:100C40000E94E805681979098A099B09683E734082 +:100C50008105910580F321E0C21AD108E108F1086D +:100C600088EE880E83E0981EA11CB11CE4CFFF9093 +:100C7000EF90DF90CF90BF90AF909F908F900895AE +:100C80002FB7F894609105047091060480910704D1 +:100C9000909108042FBF0895FC01848D90A1A6A512 +:100CA000B7A591FD15C0882381F0808D918D0597A2 +:100CB000A9F481E024A535A52A173B0709F080E0B7 +:100CC00080AB1197B7A7A6A70895828D938DEFCF1C +:100CD000882379F0808D918D059759F7CD01019684 +:100CE00097A786A781E011969C91911180E080AB37 +:100CF0000895828D938DF0CFFC018689978982308B +:100D0000910591F42389348936A325A331A720A71F +:100D10008230910561F42189328933A722A7029795 +:100D200049F08FEF87A3089521893289EDCF238978 +:100D30003489F3CF81E0F6CFFC018385681738F55D +:100D40002485358579E0679F200D311D112484812C +:100D500050E09381992371F0882331F087E090E08F +:100D6000FC01E41BF50BAF01240F351FF901808155 +:100D70000C944404882331F087E090E0BC01641BAC +:100D8000750BAB01240F351FF9018081089580E0B8 +:100D900008958F929F92AF92BF92CF92DF92EF927F +:100DA000FF92CF93DF93FC01242F30E083818823CF +:100DB00009F447C087E090E0821B930B91E001C0EB +:100DC000990F8A95EAF78385681708F040C0248553 +:100DD0003585A90189E0689F400D511D1124BA0194 +:100DE000E48130E020E080E0A7E0B0E0C12CD12C2D +:100DF0007601C394F22FAD01421B530BE11101C0E8 +:100E0000A901460F571FEA014881492351F04601C5 +:100E1000570104C0880C991CAA1CBB1CFA95D2F778 +:100E200088292F5F3F4F2830310521F7DF91CF917F +:100E3000FF90EF90DF90CF90BF90AF909F908F90FA +:100E4000089591E001C0990F4A95EAF7BCCF80E080 +:100E5000EDCFFC01228121110C94C9060C949C0653 +:100E6000462F477023E0769567952A95E1F70C9415 +:100E70002907CF92DF92EF92FF921F93CF93DF93D8 +:100E8000DC0158961C92589788E059968C93599794 +:100E90005A961C925A975C961C921E925B978FEF03 +:100EA00090E05E969C938E935D9790961C921E9216 +:100EB0005F9756968D919C915797009709F478C04B +:100EC000FC012491263409F031C03196E491E130DF +:100ED00009F453C022E030E0E23021F5FC01329603 +:100EE00024913196E49130E0322F22272E0F311DCC +:100EF0005C963C932E935B97FC013496249131963B +:100F0000E49130E0322F22272E0F311D5E963C9364 +:100F10002E935D97FC013696E4915996EC93599780 +:100F200027E030E090963C932E935F975F96CD90AC +:100F3000DC909097F12CE12C5B962D913C915C9785 +:100F40005D96CD91DC915E9710E0C217D30770F1EA +:100F5000FC01EC0DFD1D4491141708F4142F50E012 +:100F600070E060E04F5F5F4F6F4F7F4FC40ED51E44 +:100F7000E61EF71E2F5F3F4FE8CFFC013296E4914B +:100F8000F0E05C96FC93EE935B97FC013396E49162 +:100F9000F0E05E96FC93EE935D97FC013496E4914D +:100FA0005996EC93599725E030E0BCCF5A961C93A4 +:100FB000DF91CF911F91FF90EF90DF90CF90089538 +:100FC00061E084E00E94890585E00E946005019748 +:100FD000D9F360E084E00C948905CF93DF931F92EE +:100FE0001F92CDB7DEB769831A82DC01ED91FC91C7 +:100FF0000084F185E02DBE016F5F7F4F199581E080 +:1010000090E00F900F90DF91CF910895089590E0B8 +:1010100080E00895FC0180819181009711F00C948B +:10102000892C0895CF92DF92EF92FF920F931F9336 +:10103000CF93DF93CDB7DEB762970FB6F894DEBFDC +:101040000FBECDBF8C01CB01F8011182108213823B +:101050001282158214824AE09E012F5F3F4F690180 +:10106000B9010E944D2BF60101900020E9F731975C +:101070007F01EC18FD08F80180819181009729F02B +:10108000228133812E153F0590F4B7016F5F7F4FAA +:101090000E94122DF801009799F091838083F382CA +:1010A000E28224813581232B11F4FC011082F801A6 +:1010B000F582E482B601808191810E94032E0DC0E9 +:1010C00080819181009711F00E94892CF801118292 +:1010D0001082158214821382128262960FB6F894DF +:1010E000DEBF0FBECDBFDF91CF911F910F91FF905B +:1010F000EF90DF90CF900895CF92DF92EF92FF9222 +:101100001F93CF93DF93D0E0C0E03BE0C32ED12C00 +:10111000E12CF12C11E0C430D105C1F00E94F52A78 +:10112000A70196010E94822BFB01DB01A051BC4F5D +:101130008C918111F0CF1C93EE0FFF1FEE59FC4FE5 +:1011400061E080810E9489052196E5CFD0E0C0E072 +:101150009BE0C92ED12CE12CF12C11E0C430D1053B +:10116000C1F00E94F52AA70196010E94822BFB0183 +:10117000DB01AB51BC4F8C918111F0CF1C93EE0F72 +:10118000FF1FE45BFC4F61E080810E94890521968E +:10119000E5CFDF91CF911F91FF90EF90DF90CF903F +:1011A0000895CF92DF92EF92FF920F931F93CF9308 +:1011B000DF93EC0188858823A1F080918003882348 +:1011C00061F08FB7F89490918003913041F59DB311 +:1011D00090937F039DB39DBB8FBF80E58CBD81E065 +:1011E0008DBD60E08F810E94890588858823D1F0BC +:1011F00030E020E08B8590E0880F991F2817390791 +:10120000C8F5EE85FF85E20FF31F80818EBD0000DB +:101210000DB407FEFDCF8EB52F5F3F4FEBCF809310 +:101220007F03DBCF10E000E08B8590E0880F991FF3 +:1012300008171907F8F4EE85FF85E00FF11FE0802D +:10124000DE80CD8088E0F82E6E2D661F6627661F33 +:101250008C2D0E948905EE0C61E08D2D0E94890580 +:1012600060E08D2D0E948905FA94F110EDCF0F5F9B +:101270001F4FDACF61E08F810E948905888588231E +:1012800071F080918003882351F09FB7F8942091EA +:10129000800380917F03213059F48DBB9FBFDF9184 +:1012A000CF911F910F91FF90EF90DF90CF90089515 +:1012B0008FBFF5CF0F931F93CF93FC01A081B18116 +:1012C0005A96CC9186A9C80F83A98C17A0F48F01D8 +:1012D00084A995A9009711F00E94892CF801C3AB4D +:1012E0008C2F90E0009711F481E090E00E94ED2BAC +:1012F000F80195AB84ABCF911F910F910895CF92D8 +:10130000DF92EF92FF920F931F93CF93DF937C01B5 +:101310006B01EA01CA0101960E94ED2B8C01009736 +:10132000F1F0AE01B6010E94F32DF801EC0FFD1FA4 +:101330001082D701ED91FC910084F185E02DB80178 +:10134000C7011995C8010E94892CCE01DF91CF9168 +:101350001F910F91FF90EF90DF90CF900895D0E014 +:10136000C0E0F3CFCF92DF92EF92FF920F931F93E3 +:10137000CF936C017B01C42F8901DC01D196ED91E3 +:10138000FC91309709F1808191818E159F05C1F400 +:101390000280F381E02D80818C1708F4C82F4C2F38 +:1013A00050E0BF016F5F7F4FC8010E94F32D8C2F6B +:1013B000CF911F910F91FF90EF90DF90CF90089504 +:1013C0000480F581E02DDDCFF6018081918122AD91 +:1013D00033ADDC0156964D915C912417350751F0E1 +:1013E0002115310511F424ED31E0FC01378B268BFA +:1013F0000E9439070115110509F448C0D6012D9145 +:101400003C91F901878D90A1B0E0A0E0438D548D0F +:10141000E416F506A0F1658D768D6E157F0578F1E1 +:1014200066897789FB01E80FF91FE416F50659F084 +:10143000E4918E0F911DA11DB11D0196A11DB11D3D +:101440004F5F5F4FEFCF4491C41710F50196A11D78 +:10145000B11DA801801B910B642F601B6C1708F055 +:10146000A6CFBC01640F751FD9015696ED91FC9172 +:10147000E60FF71FE491DA01ED93AD01EDCF4C2FAC +:1014800050E070E060E0C8010E94FC2DC0E08FCF0A +:10149000C491DCCF1F93CF93DF93EC01142F2CA9C1 +:1014A0003DA94BA90E94B209112389F0882379F044 +:1014B00090E02EA9921758F42BA9821730F4ECA9CA +:1014C000FDA9E80FF11D10828F5F9F5FF2CFDF91C2 +:1014D000CF911F9108950F931F93CF93DF93EC014A +:1014E0008B01EEA5FFA541E08181811101C040E0A3 +:1014F000608170E0CE010E944A0AF801808328A131 +:101500009C8D21FD10C0992359F0288D398D2530EF +:10151000310581F4682F8CA99DA90E945C040AC042 +:101520002A8D3B8DF4CF9923B9F0288D398D253044 +:10153000310581F788A180FF06C0F80160818CA980 +:101540009DA90E947604CE010E944C0681E0DF91A5 +:10155000CF911F910F9108952A8D3B8DE8CF0F9366 +:101560001F93CF93DF93EC01FB011082ACA5BDA5C7 +:10157000BFA7AEA7109719F08C91811108C081E028 +:1015800088AB80E0DF91CF911F910F91089518AA49 +:101590008C8D98A191FD10C0882359F0888D998D6C +:1015A000059781F40D900020E9F71297BFA7AEA729 +:1015B00009C08A8D9B8DF4CF882331F1888D998D58 +:1015C000059781F7AEA5BFA541E011968C911197C3 +:1015D000811101C040E08B016C9170E0CE010E944E +:1015E0004A0AF801808328A19C8D21FD13C099230C +:1015F00071F0288D398D2530310599F4682F8CA92B +:101600009DA90E945C040DC08A8D9B8DD9CF2A8D27 +:101610003B8DF1CF992399F0288D398D25303105F7 +:1016200069F788A180FF06C0F80160818CA99DA997 +:101630000E947604CE010E944C0681E0A3CF2A8D41 +:101640003B8DECCFFC01438550E0440F551F70E00B +:1016500060E0868597850C94FC2DBF92CF92DF9237 +:10166000EF92FF920F931F93CF93DF93FC0123859B +:10167000621708F04EC0EC01F9E06F9F7001112471 +:10168000D12CC12C062F10E0BB24B394BC0CEC85EC +:10169000FD85EE0DFF1D808590E00C2C02C0959518 +:1016A00087950A94E2F780FF27C0CE010E94220BA3 +:1016B0008B858150990B801B910B880F991F2E856C +:1016C0003F85820F931FFC01B082EC85FD85EE0DF6 +:1016D000FF1DEC0DFD1D40818B858150990B801BFA +:1016E000910B880F991F2E853F85820F931FFC0158 +:1016F0004183CE010E94D108FFEFCF1ADF0A88E0B4 +:10170000C816D10409F68C859D85E80EF91EF701EF +:101710001086DF91CF911F910F91FF90EF90DF9096 +:10172000CF90BF9008950F931F93CF93DF93EC0159 +:10173000162F042F822F9B8191110E94440499E05F +:10174000199F90011124AC85BD85A20FB31F602F96 +:1017500070E09C8147E050E0461B570B911101C09F +:10176000AB01A40FB51F8C93EC85FD85E20FF31F31 +:1017700020858C818823F1F047E050E0461B570B11 +:1017800081E090E0A0E0B0E004C0880F991FAA1F9C +:10179000BB1F4A95D2F7822B80878C89882321F042 +:1017A000612FCE010E942D0B81E0DF91CF911F911F +:1017B0000F91089581E090E0A0E0B0E004C0880FB0 +:1017C000991FAA1FBB1F0A95D2F7E5CF9F92AF9230 +:1017D000BF92CF92DF92EF92FF920F931F93CF931E +:1017E000DF93FC0189E0689FE001112481E090E033 +:1017F000A0E0B0E06C017D01042E04C0CC0CDD1C27 +:10180000EE1CFF1C0A94D2F7BC2C7C2D709507E0CF +:1018100010E0041B110904C0880F991FAA1FBB1FE9 +:101820000A95D2F7A82E382F309590E080E0022F4D +:1018300010E027E0E22EF12CAC01A485B585AC0FB9 +:10184000BD1F248193806801082E02C0D594C794DF +:101850000A94E2F7C0FE2AC0222319F0A701481B10 +:10186000590BA40FB51F2C914B2D91104A2D242BF1 +:101870002C93019688309105F9F684859585C80FDB +:10188000D91F8FEF88878489882319F0CF010E94A0 +:101890002D0B81E0DF91CF911F910F91FF90EF9081 +:1018A000DF90CF90BF90AF909F900895222319F0C2 +:1018B000A701481B590BA40FB51F2C91472F91105E +:1018C000432F2423D5CFFC0152813385552321F0AA +:1018D000631730F40C94E60B631710F40C94930B1D +:1018E00080E00895242F462F477033E07695679562 +:1018F0003A95E1F70C94630CFC0152813385552332 +:1019000031F0631750F4483041F00C94930B631797 +:1019100020F4483011F00C94E60B80E00895CF924B +:10192000DF92EF92FF920F931F93CF93DF93FC010F +:10193000722F82815385882309F45DC0651708F0F2 +:10194000BEC0283009F4BBC009E0609F70011124BB +:10195000848595858E0D9F1D50E0A22FB0E02481D7 +:101960002223B9F127E030E0E901C41BD50BAE0119 +:101970002A1B3B0B480F591FEA014881820F931F16 +:10198000EC01488384859585E701C80FD91F288518 +:101990008481882301F147E050E04A1B5B0B81E022 +:1019A00090E0A0E0B0E004C0880F991FAA1FBB1F01 +:1019B0004A95D2F7822B88878489811118C081E0EB +:1019C000DF91CF911F910F91FF90EF90DF90CF901B +:1019D00008959D01CFCF81E090E0A0E0B0E004C089 +:1019E000880F991FAA1FBB1F7A95D2F7E3CFCF01AB +:1019F0000E942D0BE4CFA42FB0E09381992309F42A +:101A00004FC027E030E02A1B3B0B91E001C0990F4B +:101A10002A95EAF76517A0F6783091F2D9E06D9F24 +:101A2000A001112401E010E020E030E0680179011C +:101A3000072E04C0CC0CDD1CEE1CFF1C0A94D2F750 +:101A4000DC2DCC2DC095A7E0B0E0A71BB10904C0E8 +:101A5000000F111F221F331FAA95D2F7F02E0095F9 +:101A600030E020E0A485B585A40FB51FA20FB31FF9 +:101A70008C917381182F1923D9F0711117C07D2F04 +:101A8000872B8C932F5F3F4F2830310559F7848582 +:101A90009585480F591F8FEFDA0118968C938CCFDC +:101AA00091E001C0990F4A95EAF7B4CF7F2DE8CFB6 +:101AB000711103C07C2F8723E4CF702FFCCF80E00F +:101AC0007FCF8F929F92AF92BF92CF92DF92EF9291 +:101AD000FF920F931F93CF93DF9300D000D01F92FC +:101AE0001F92CDB7DEB78C01D62E29E0629F700120 +:101AF0001124FA013197E730F10568F48827EC5793 +:101B0000F24F8F4F0C94E52BD70D090E3F0E760E3A +:101B1000B70EF70E170FDC0112968C918823C1F1D6 +:101B200030E020E0D8011C96ED91FC911D97EE0D60 +:101B3000FF1DE20FF31F808113969C91992331F1D1 +:101B400090E09595879580832F5F3F4F2830310532 +:101B500049F7F80184859585E80EF91E8FEFD701C6 +:101B600018968C9381E028960FB6F894DEBF0FBECE +:101B7000CDBFDF91CF911F910F91FF90EF90DF903C +:101B8000CF90BF90AF909F908F900895880FDBCF3C +:101B900087E090E0D8011C96ED91FC91EE0DFF1DC1 +:101BA000E80FF91F208121830197A0F7D2CFF80118 +:101BB00082818823E1F030E020E0D8011C96ED918D +:101BC000FC911D97EE0DFF1DE20FF31F8081139610 +:101BD0009C91992341F0880F80832F5F3F4F2830DD +:101BE000310559F7B6CF90E095958795F5CF81E00F +:101BF00090E0D8011C96ED91FC91EE0DFF1DE80FD1 +:101C0000F91F20813197208301968830910589F74B +:101C1000A0CFF801C28085898823F9F040E0C8018F +:101C2000CC20C1F00E949C068983CC20C1F020E02A +:101C3000CC24C394C20E4C2D6D2DC8010E948F0C74 +:101C40002C2D2730A9F7298147E06D2DC8010E946E +:101C50007C0C7FCF0E94C906E7CF1982E6CF87E0D0 +:101C600090E0D8011C96ED91FC91EE0DFF1DE80F60 +:101C7000F91F2081220F2083019798F7E4CFF80104 +:101C8000C28085898823D9F047E0C801CC20A1F023 +:101C90000E949C068983CC20A1F028E0CC24CA9421 +:101CA000C20E4C2D6D2DC8010E948F0C2C2DC11021 +:101CB000F5CF298140E0C9CF0E94C906EBCF198238 +:101CC000EACF30E020E0D8011C96ED91FC91EE0DBA +:101CD000FF1DE20FF31F808190E09595879580832B +:101CE0002F5F3F4F2830310571F7E3CFF801828134 +:101CF0008823C1F0B12CA12CD8011C96CD90DC908A +:101D0000CE0CDF1CCA0CDB1CF60180810E9444044F +:101D1000D6018C93BFEFAB1ABB0AE8E0AE16B10454 +:101D200059F717CF30E020E047E050E0D8011C968B +:101D30008D919C918E0D9F1DFC01E20FF31FD080B1 +:101D4000BA01621B730B860F971FDC018C91808395 +:101D5000D8011C96ED91FC91EE0DFF1DE60FF71FCB +:101D6000D0822F5F3F4F2430310501F7F2CEF801CA +:101D70008281882329F130E020E047E050E0D8015B +:101D80001C968D919C918E0D9F1DFC01E20FF31FFF +:101D9000D080BA01621B730B860F971FDC018C91F8 +:101DA0008083D8011C96ED91FC91EE0DFF1DE60F8E +:101DB000F71FD0822F5F3F4F2430310501F7C9CE86 +:101DC000B12CA12CF801C484D584CE0CDF1CCA0C24 +:101DD000DB1CD6018C910E944404F6018083FFEF46 +:101DE000AF1ABF0A28E0A216B10461F7B2CECE0145 +:101DF00001965C014C0187E0C82E4C2D6D2DC80169 +:101E00000E942907D4018D934D01CA94BFEFCB12D4 +:101E1000F4CFC12CF50121915F014C2D6D2DC8012E +:101E20000E947C0CC394F8E0CF12F4CF92CE90E0E5 +:101E300080E0D8011C96ED91FC91EE0DFF1DE80F9E +:101E4000F91F20812095208301968830910589F71C +:101E500080CECF92DF92EF92FF920F931F93CF939A +:101E6000DF93EC01DD24D394F12CE12C01E010E0B0 +:101E7000B9E0CB2ECE010E94220B98010E2C02C09D +:101E8000220F331F0A94E2F7E0E090E08B85E81719 +:101E900098F5EC9DA0011124AC85BD85A40FB51F5C +:101EA00018966C9170E062237323672B19F16E2FE3 +:101EB00070E08150990B861B970B880F991FAE8598 +:101EC000BF85A80FB91FDC92AC85BD85A40FB51FD7 +:101ED000AE0DBF1DFC918B858150990B861B970B16 +:101EE000880F991F4E855F85840F951FDC01119621 +:101EF000FC9391E0EF5FCACF992319F0CE010E94C5 +:101F0000D108BFEFEB1AFB0AD39488E0E816F1047E +:101F100009F0B0CF80E099E02B85821748F4EC857A +:101F2000FD85899FE00DF11D112410868F5FF4CF90 +:101F3000DF91CF911F910F91FF90EF90DF90CF90A5 +:101F40000895CF93DF93C9E078E05FEF4617B0F0D4 +:101F50006C9F90011124FC01A485B585A20FB31FCD +:101F6000FD01D72F1192DA95E9F7DC011C96ED916E +:101F7000FC91E20FF31F50876F5FE8CFFC012489CB +:101F8000222321F0DF91CF910C94290FDF91CF9183 +:101F900008956F927F928F929F92AF92BF92CF924D +:101FA000DF92EF92FF920F931F93CF93DF9300D0B6 +:101FB00000D000D0CDB7DEB78C01E62EF42E59014B +:101FC000D12C461708F4D7C0DC015496DC90549706 +:101FD00054961C9224303105B8F522303105D0F5E5 +:101FE0002130310509F4DDC0D80155968C91882344 +:101FF00009F487C0B8E0FB9EB0011124695F7F4FF0 +:10200000C8010E943007C82EAE2CB12C8F2D0F2C8A +:10201000000C990B8A159B050CF48AC050E040E037 +:102020006F2DC8010E94610D99249A949F0C47E07E +:10203000692DC8010E942907282F40E06F2DC80193 +:102040000E94630CF92CE2CF2430310561F0283076 +:10205000310550F6A5016E2DC8010E94610DE39473 +:10206000FE14C0F77FC0642F70E0AE2CB12C4B0182 +:102070008A189B08BFEF8B1A9B0A97FE03C0EFEFED +:102080008E1A9E0A95948794712C29E0C22E472DB2 +:1020900050E0481559050CF0D2C0F801248535856B +:1020A000FA01EA0DFB1DCE9EC001CF9E900D1124BA +:1020B000820F931FFC01DE0111966C2C01900D9292 +:1020C0006A94E1F7FB01E41BF50BCE9EA001CF9EC5 +:1020D000500D1124F901E40FF51FDC018C2D019046 +:1020E0000D928A95E1F7F801A485B585A40FB51F77 +:1020F000FE0131968C2D01900D928A95E1F7739433 +:10210000C6CFF801A288B388A114B10479F0F8E031 +:10211000FF9EB0011124695F7F4FC8010E94300704 +:10212000482F70E060E08F2DF5011995C12C6CCF20 +:10213000D8015096ED91FC915197309749F0559602 +:102140008C91811105C070E060E08E2D1995C82E2C +:10215000B50183E0660F771F8A95E1F74C2DC80122 +:102160000E94720CD8015496DC92DD2009F471C0F3 +:10217000C8010E94290F8D2D29960FB6F894DEBF55 +:102180000FBECDBFDF91CF911F910F91FF90EF90C8 +:10219000DF90CF90BF90AF909F908F907F906F9087 +:1021A0000895FC0185898823B1F1F8E06F9FB001A3 +:1021B0001124C8010E943007C82E41E050E06E2D66 +:1021C000C8010E94610DBB24B394BE0C40E06B2D8E +:1021D000C8010E942907282F47E06E2DC8010E94E0 +:1021E000630CEB2CFB1448F7D8015096ED91FC9151 +:1021F0005197309749F055968C91811105C061E057 +:1022000070E08F2D1995C82EB8E0FB9EB001112407 +:10221000695F7F4FA3CFA288B388A114B10469F08E +:10222000B8E06B9FB0011124C8010E943007482F0D +:1022300061E070E08E2DF5011995C12CBECF44E010 +:1022400050E06E2DC8010E94610DE394FE14B8F7B2 +:1022500089CFDD24D3948FCF8F929F92AF92BF927C +:10226000CF92DF92EF92FF920F931F93CF93DF9362 +:10227000EC01F62E8D859E85442309F4E0C08E0185 +:10228000095C1F4F35E0C32ED12C82309105E9F057 +:1022900050F08330910509F441C0049709F4A8C0B7 +:1022A00085E090E00FC0BE01695C7F4FCE010E94C7 +:1022B000AF0A811103C086E090E004C019AE18AEE9 +:1022C00083E090E09E878D870DC01FAA88A9882390 +:1022D000B1F0DE86CD868D859E852FA9211116C091 +:1022E000059799F7DF91CF911F910F91FF90EF9094 +:1022F000DF90CF90BF90AF909F908F900895B801DE +:10230000CE010E946B0A8111E6CFE3CF059751F30E +:1023100019AE18AE83E090E09E878D878FA9882341 +:1023200029F121E02F2530E04CA16BA18881998112 +:102330000E94C90F888199816D8D2CA93DA948AD56 +:1023400059AD662301F1BA016F5F7F4F79AF68AF76 +:10235000240F351FF90140814095FF20F1F06BA15A +:10236000F8E06F9FB00111240E94720C2FA988AD74 +:1023700099AD2817190609F0B5CF88A9811115C0A4 +:1023800082E090E09FCFBA016F5F7F4F79AF68AF77 +:10239000240F351FF9014081E0CF6CA128E0629F36 +:1023A000B0011124695F7F4FDFCF29893A89FF206F +:1023B000B1F08F859889A901481B590BCA01019674 +:1023C0002BA158E0259F80199109112499AF88AF5E +:1023D000181619060CF064CF84E090E073CF8CA13E +:1023E000E8E08E9FC00111240796821B930BEECF6D +:1023F00021E0262730E04CA16BA1888199810E94C1 +:10240000C90F888199814D8D4195FF2081F06BA185 +:10241000F8E06F9FB00111240E94720C88AD99AD55 +:10242000019799AF88AF892B09F05CCF39CF6CA1A8 +:1024300028E0629FB0011124695F7F4FEDCF8430A7 +:10244000910539F0059709F036CF84E090E09E873A +:102450008D8721E02F2530E04CA16BA188819981E7 +:102460000E94C90F888199814D8D4195FF2009F403 +:1024700045C06BA138E0639FB00111240E94720C2B +:102480000CA110E0ABA0B12C6801CA18DB088FEFDB +:10249000C81AD80A23E0CC0CDD1C2A95E1F78E8DF2 +:1024A0009F8D009721F08C159D0508F46C010F5F3E +:1024B0001F4F83E0000F111F8A95E1F793E0AA0CEC +:1024C000BB1C9A95E1F7FF2021F145017401EA1840 +:1024D000FB0880169106DCF5B401888199810E9481 +:1024E000300790E02D8D222389F02FEF30E0821706 +:1024F000930769F5EFEF8E1A9E0AE8CF6CA158E0BA +:10250000659FB0011124695F7F4FB8CF30E020E0B4 +:10251000EECF01501109F12CE12C0A151B05BCF07E +:10252000B801888199810E94300790E02D8D222387 +:1025300059F02FEF30E08217930749F40150110949 +:10254000FFEFEF1AFF0AE9CF30E020E0F4CFEC1400 +:10255000FD0408F0B0CEC6CECF93DF93EC014CA1C2 +:102560006BA1461720F0888199810E94A10F8D8D63 +:10257000882351F027E030E04CA16BA1888199813C +:10258000DF91CF910C94C90FDF91CF910895CF9235 +:10259000DF92EF92FF920F931F93CF93DF93EC01A3 +:1025A0000E94AC12C988DA887E0187E3E80EF11C2C +:1025B000B701CE010E94AF0A19AE18AE86018B8911 +:1025C0009C89081719077CF18FA928AD39AD8217AE +:1025D000130611F081110AC01FAA88A9811104C035 +:1025E000B701CE010E946B0A19AE18AE8FA98823DD +:1025F00031F38881998148AD59AD9A012F5F3F4FE2 +:10260000ECA9FDA9E40FF51F4D8D39AF28AF442388 +:1026100041F040814095B8010E94720C01501109AF +:10262000CECF4081F8CFDF91CF911F910F91FF90D6 +:10263000EF90DF90CF900895FF920F931F93CF9369 +:10264000DF93EC01F62E8D859E85442309F462C04C +:102650008430910530F5019758F18D859E85059759 +:1026600021F483E090E09E878D87CE010E94C712FF +:102670000DA11EA12FA18AA59BA5820F911D27FD4B +:102680009A9580179107E1F04D8D4195B8018881A9 +:1026900099810E94720C8FA1080F111D87FD1A9558 +:1026A000E9CF0597D1F285E090E09E878D872CC019 +:1026B000CE010E947C0683E090E09E878D87CDCF7F +:1026C000FF2069F06DA17EA10617170741F04D8D1F +:1026D00081E048274195888199810E94720C8DA1E3 +:1026E0009EA12FA1022E000C330B4AA55BA5420F21 +:1026F000531F8417950721F445E050E05E874D870E +:10270000820F931F9EA38DA3DF91CF911F910F91F5 +:10271000FF9008958430910500F5019700F1CE01F6 +:102720000E94C71208A519A56DA17EA18FA1082E30 +:10273000000C990B9B01280F391F20173107B9F0A6 +:102740004D8D4195B801888199810E94720C8FA1AD +:10275000080F111D87FD1A95E7CF059751F5CE019A +:102760000E947C0683E090E09E878D87D8CFFF2073 +:1027700079F02AA53BA5820F931F6817790741F0CE +:102780004D8D81E048274195888199810E94720C86 +:102790008DA19EA12FA1022E000C330B4AA55BA593 +:1027A000420F531F8417950709F0AACF46E050E067 +:1027B000A5CF86E090E079CFCF92DF92EF92FF92A3 +:1027C0001F93CF93DF93EC01D42E8D859E856623D6 +:1027D00009F458C084309105A8F50197D0F1CE01D5 +:1027E0000E94C7122DA13EA12830310569F1E8A44D +:1027F000F9A481E090E001C0880F2A95EAF7182F2C +:10280000D11010952FA18AA59BA5820F911D27FDA0 +:102810009A958E159F0549F1C880D980B701C601E8 +:102820000E9430079D8D412F9923E9F04095482B58 +:10283000B701C6010E94720C8FA1E80EF11C87FD42 +:10284000FA94E0CF059759F285E090E09E878D8756 +:1028500011C0CE010E947C061EA21DA283E090E062 +:102860009E878D87BCCF4823E3CF8DA19EA1019683 +:102870009EA38DA3DF91CF911F91FF90EF90DF90EA +:10288000CF9008958430910598F5019798F1CE0185 +:102890000E94C7128DA19EA110E097FD05C011E016 +:1028A00001C0110F8A95EAF7E8A4F9A4D110109598 +:1028B0002FA18AA59BA5820F911D27FD9A958E15A4 +:1028C0009F0531F1C880D980B701C6010E94300749 +:1028D0009D8D412F9923D1F04095482BB701C6011A +:1028E0000E94720C8FA1E80EF11C87FDFA94E0CFD4 +:1028F0000597C1F4CE010E947C0687E090E09EA37C +:102900008DA383E090E09E878D87C1CF4823E6CFDB +:102910008DA19EA197FF04C026E030E03E872D8761 +:102920000197A6CF86E090E091CFFF920F931F937F +:10293000CF93DF93EC01F42E8D859E85662309F4F9 +:1029400044C08430910538F5019760F1CE010E94B2 +:10295000C7122DA13EA18AA59BA528173907E9F02A +:1029600008A519A58FA1082E000C990B2DA13EA139 +:102970004AA55BA5480F591F4017510709F464C0C9 +:10298000F11018C002171307C1F48FA1080F111D11 +:1029900087FD1A95E7CF0597C9F285E090E09E87FD +:1029A0008D8756C0CE010E947C0683E090E09E8712 +:1029B0008D87CCCF0217130741F74D8D4195B80194 +:1029C000888199810E94720CE0CF8430910500F5D6 +:1029D000019700F1CE010E94C71208A519A54AA5CA +:1029E0005BA58FA1082E000C990B2DA13EA1BA0169 +:1029F000680F791F6017710701F1F11013C00217FA +:102A0000130799F48FA1080F111D87FD1A95E7CFC1 +:102A1000059721F5CE010E947C0683E090E09E8719 +:102A20008D87D8CF0217130769F74D8D4195B801EF +:102A3000888199810E94720CE5CF2417350724F410 +:102A400046E050E05E874D87820F931F9EA38DA3C3 +:102A5000DF91CF911F910F91FF90089586E090E054 +:102A60009ECFCF92DF92EF92FF920F931F93CF935F +:102A7000DF93EC01162F8D859E85442309F458C001 +:102A800084309105B0F5019708F43AC0CE010E9458 +:102A9000C7122DA13EA190E080E0111102C08FEF7E +:102AA00090E02817390739F1E8A4F9A42FA18AA5E5 +:102AB0009BA5820F911D27FD9A958E159F0581F18B +:102AC0000D8DC880D980B701C6010E943007011161 +:102AD00080954DA111114095482301114095B701F2 +:102AE000C6010E94720C8FA1E80EF11C87FDFA94BA +:102AF000DDCF059759F285E090E09E878D8771C004 +:102B0000CE010E947C068FEF90E0111102C081E09F +:102B100090E09EA38DA383E090E09E878D87B6CF43 +:102B20008DA19EA1112309F457C09595879557C093 +:102B30008430910550F5019750F1CE010E94C712E3 +:102B4000E8A4F9A42FA18AA59BA5820F911D27FDBA +:102B50009A958E159F0559F10D8DC880D980B701C2 +:102B6000C6010E943007011180954DA111114095B9 +:102B7000482301114095B701C6010E94720C8FA134 +:102B8000E80EF11C87FDFA94DDCF0597C1F4CE0164 +:102B90000E947C0681E090E0111102C08FEF90E06E +:102BA0009EA38DA383E090E09E878D87C6CF8DA1E5 +:102BB0009EA1111107C0009709F0B7CF06C086E0AB +:102BC00090E09BCF8F3F910539F426E030E03E87BF +:102BD0002D87112309F4A9CF880F991F81609EA327 +:102BE0008DA3DF91CF911F910F91FF90EF90DF9018 +:102BF000CF900895EF92FF920F931F93CF93DF939F +:102C0000EC01162F8D859E85442309F488C08330FE +:102C1000910528F00397B1F185E090E02AC0698919 +:102C20007A898B899C899B01281B390BC90137FD47 +:102C300001969595879501969EA38DA31123B9F0D2 +:102C40004D8D11E041274195681B790B8881998151 +:102C50000E94720C4D8D412741956B897C898DA115 +:102C60009EA1680F791F888199810E94720C83E070 +:102C700090E09E878D87DF91CF911F910F91FF90FC +:102C8000EF9008958DA19EA197FDC6CFCE010E9421 +:102C9000C712F12CE12C6DA17EA1E616F706C4F453 +:102CA0004D8D41956B897C896E0D7F1D8881998141 +:102CB0000E94720C4D8D419569897A896E197F0940 +:102CC000888199810E94720C3FEFE31AF30AE3CFE7 +:102CD000615071097EA36DA3112369F277FDCBCFFB +:102CE0004D8D11E0412741958B899C89680F791F93 +:102CF000888199810E94720C4D8D41274195698987 +:102D00007A898DA19EA1681B790B88819981DF91B9 +:102D1000CF911F910F91FF90EF900C94720C833024 +:102D2000910531F108F077C0019708F477C0CE0122 +:102D30000E94AC12CE010E94C7121EA21DA2112336 +:102D400099F04D8D01E04027419569897A89888104 +:102D500099810E94720C4D8D402741956B897C8929 +:102D6000888199810E94720C83E090E09E878D8714 +:102D70002DA13EA169897A898B899C89AB01481B69 +:102D8000590BCA0157FD01969595879582179307B0 +:102D90000CF444C04D8D4195621B730B8881998161 +:102DA0000E94720C4D8D41956B897C898DA19EA1ED +:102DB000680F791F888199810E94720C2DA13EA114 +:102DC0002F5F3F4F3EA32DA3112309F454CF6989F0 +:102DD0007A898B899C89AB01481B590BCA0157FD25 +:102DE000019695958795821793070CF444CF4D8DE6 +:102DF00011E041274195621B730B888199810E94E4 +:102E0000720C4D8D412741956B897C898DA19EA1C6 +:102E1000680F791F7ACF059709F489CF86E090E093 +:102E200028CFCF92DF92FF920F931F93CF93DF9320 +:102E3000EC01F62E8D859E85442309F484C08330F1 +:102E4000910570F0039751F185E090E09E878D87A2 +:102E5000DF91CF911F910F91FF90DF90CF90089558 +:102E60001EA21DA2CE010E94AC12FF2099F04D8D32 +:102E700011E04127419569897A89888199810E9469 +:102E8000720C4D8D412741956B897C898881998190 +:102E90000E94720C83E090E09E878D87CE010E9495 +:102EA000AC12CE010E94C7120B891C8989899A89AC +:102EB000801B910B97FD01966C01D594C7948DA151 +:102EC0009EA1080F191FC816D9060CF4BDCF0F5FBD +:102ED0001F4F69897A898DA19EA19B01281B390BFF +:102EE0000217130744F44D8D4195B80188819981EB +:102EF0000E94720CECCF01969EA38DA3FF2009F4D3 +:102F0000A7CFC816D9060CF4A3CF4D8D11E04127E9 +:102F10004195681B790B888199810E94720C4D8DB7 +:102F2000412741956B897C898DA19EA1680F791FEE +:102F300088819981DF91CF911F910F91FF90DF9050 +:102F4000CF900C94720C83309105D1F1A0F50197CC +:102F5000A0F189899A892B893C89821B930B97FD63 +:102F60000196959587959EA38DA3CE010E94AC12E4 +:102F7000CE010E94C712FF20D9F04D8D11E04127EC +:102F8000419569897A898DA19EA1681B790B8881F9 +:102F900099810E94720C4D8D412741956B897C89E6 +:102FA0008DA19EA1680F791F888199810E94720C62 +:102FB00083E090E04BCF059761F286E090E046CF4A +:102FC0008DA19EA197FDF9CF4D8D419569897A8993 +:102FD000681B790B888199810E94720C4D8D4195F7 +:102FE0006B897C898DA19EA1680F791F8881998149 +:102FF0000E94720C8DA19EA101979EA38DA3FF201C +:1030000009F426CF97FD24CF4D8D11E0412741953E +:1030100069897A897ECFCF92DF92EF92FF920F93E8 +:103020001F93CF93DF93EC01D62EC42E790180E05D +:103030004617E0F02A30310508F069C0CE010E9441 +:10304000220B92E0E916F10409F453C0C0F4E11434 +:10305000F10429F1F1E0EF16F10409F443C0D3942F +:10306000CD1478F7CE010E94D10881E0DF91CF9195 +:103070001F910F91FF90EF90DF90CF90089583E024 +:10308000E816F104E9F194E0E916F10441F781E072 +:103090000115110509F480E0819599E006C081E0F1 +:1030A0000115110509F080E09CE04D2D50E02B85C5 +:1030B0002150330B241B350B220F331F6E857F8568 +:1030C000260F371FF90190832B852150330B241BCA +:1030D000350B220F331F4E855F85240F351FF901F5 +:1030E0008183BDCF802F083011050CF087E09BE075 +:1030F000DCCF802F003111050CF08FE09AE0D5CFA6 +:1031000081E00115110509F480E09FE0CECF81E058 +:103110000130110509F080E0FBE0EF16F10449F001 +:103120008C8B0130110509F0A0CFCE010E94290F30 +:103130009CCF8D8B9ACFAF92BF92CF92DF92EF92BE +:10314000FF920F931F93CF93DF93EC01F62E8D85A3 +:103150009E85442309F470C08430910590F5019751 +:10316000B8F1CE010E94AC12CE010E94C712CBA0D2 +:1031700088E0C89E60011124EE24E394F11002C09F +:1031800050E8E52E0DA11EA18CA190E0019643E030 +:10319000880F991F4A95E1F7C816D906BCF5A88093 +:1031A000B980B601C5010E943007101611062CF532 +:1031B000FF2009F1880F9D8D91118E290150110971 +:1031C000F4CF059771F285E090E09E878D8729C046 +:1031D00087E090E09EA38DA310E000E02BE030E0BC +:1031E0004CA16BA1888199810E940B1883E090E02B +:1031F0009E878D87B6CF8695DECF482FB601C50155 +:103200000E94720C8FEFC81AD80ABCCF01151105A5 +:1032100021F485E090E09E878D87015011091EA35F +:103220000DA3DF91CF911F910F91FF90EF90DF9051 +:10323000CF90BF90AF9008958430910560F50197CD +:1032400060F10BA188E0089F8001112430E8E32E93 +:10325000F11002C0EE24E3948CA190E0019623E0EB +:10326000880F991F2A95E1F708171907FCF4C88001 +:10327000D980B801C6010E943007482FFF20A1F075 +:1032800046958D8D81114E29B801C6010E94720CA0 +:103290000F5F1F4FE1CF0597B1F41EA21DA283E07F +:1032A00090E09E878D87CDCF440FEBCF8DA19EA15F +:1032B0008730910521F426E030E03E872D87019686 +:1032C0009EA38DA3AECF86E090E07FCFAF92BF925A +:1032D000CF92DF92EF92FF920F931F93CF93DF93E2 +:1032E000EC01F62EE42E8D859E85222309F4DDC0A7 +:1032F0008430910598F50197C0F1CE010E94AC127F +:10330000CE010E94C7120DA11EA1EE2009F466C0D5 +:10331000EE24E394F11002C070E8E72ECDA0DEA009 +:103320008CA190E0019663E0880F991F6A95E1F700 +:1033300008171907CCF5A880B980B801C5010E940B +:1033400030079601121613062CF5FF2009F1880F9D +:103350009D8D91118E2921503109F4CF059769F285 +:1033600085E090E09E878D8795C087E090E09EA3E2 +:103370008DA310E000E02BE030E04CA16BA1888130 +:1033800099810E940B1883E090E09E878D87B5CFCE +:103390008695DECFB8016C197D09482FC5010E94C2 +:1033A000720C0F5F1F4FBACF10E000E08DA19EA1FD +:1033B000081719070CF063C04D8D41956CA128E0EA +:1033C000629FB0011124695F7F4F601B710B888180 +:1033D00099810E94720C0F5F1F4FE8CF8CA138E0DB +:1033E000839FC00111249C01201B310B8901085FC0 +:1033F0001F4FEE24E394F11002C050E8E52ECDA05B +:10340000DEA08BA138E0839FC001112408171907A3 +:10341000FCF0A880B980B801C5010E943007960170 +:10342000121613065CF4FF2039F0880F9D8D911160 +:103430008E2921503109F4CF8695F8CFB8016C0D53 +:103440007D1D482FC5010E94720C01501109D7CF74 +:1034500010E000E08DA19EA10817190784F44D8D9E +:1034600041956BA188E0689FB0011124600F711F26 +:10347000888199810E94720C0F5F1F4FEBCF8DA145 +:103480009EA1009721F425E030E03E872D8701972B +:103490009EA38DA3DF91CF911F910F91FF90EF908D +:1034A000DF90CF90BF90AF9008958430910580F564 +:1034B000019788F1EE20C1F10CA128E0029F800164 +:1034C00011240A5F1F4F40E8B42EF11002C0BB2444 +:1034D000B394C880D9808BA138E0839FC0011124A8 +:1034E000081719070CF450C0B801C6010E94300734 +:1034F000482FFF20B9F046958D8D81114B29B801D9 +:103500006F5F7F4FC6010E94720C01501109E1CF1D +:10351000059709F059C01EA21DA283E090E09E8786 +:103520008D87C8CF440FE8CF0BA188E0089F8001AA +:1035300011240F5F1F4F30E8B32EF11002C0BB24DF +:10354000B394C880D9808CA190E0019623E0880FC5 +:10355000991F2A95E1F708171907B4F4B801C601B5 +:103560000E943007482FFF2069F046958D8D81110C +:103570004B29B80161507109C6010E94720C0F5F9E +:103580001F4FDFCF440FF2CF888199814D8D419538 +:10359000EE2091F06BA128E0629FB00111240E94FF +:1035A000720C8DA19EA18730910521F426E030E0B8 +:1035B0003E872D8701966CCF6CA138E0639FB001E8 +:1035C0001124695F7F4FEBCF86E090E0CBCE0F9365 +:1035D0001F939B018A01FC014385415060E00E94DA +:1035E0000B181F910F9108950F931F93FC0161A376 +:1035F000062F10E022E030E044A163A18081918198 +:103600000E940B181F910F9108952F923F924F9295 +:103610005F926F927F928F929F92AF92BF92CF9262 +:10362000DF92EF92FF920F931F93CF93DF9300D01F +:1036300000D000D01F921F92CDB7DEB79B838A8344 +:1036400004969D838C8350E040E06AE070E00E9425 +:10365000E71A212C198206E010E035E0632E712C68 +:1036600043E0442E512CAA81BB8198968C91989767 +:10367000281610F00C94DD239596ED91FC9124E42E +:10368000229EE00DF11D1124FB87EA8712A2858599 +:1036900096858630910511F40C94AE23248D222357 +:1036A000C9F0C780D084F12CE12C0597C9F00E94A5 +:1036B0004006EA85FB8583809480A580B6806819E2 +:1036C00079098A099B096C157D058E059F0518F5FA +:1036D00080E09CC1AA85BB851996CD90DC90E3CF94 +:1036E0000E944006AA85BB8513968D909D90AD9053 +:1036F000BC901697AB01BC01481959096A097B09AE +:103700001B968D919C91B0E0A0E0481759076A077D +:103710007B0768F6DDCFEA85FB8592809110D8CFD4 +:103720000E944006AA85BB8513966D937D938D9369 +:103730009C93169781E092968C9392979C96AD906D +:10374000BC909D97A114B10409F456C11D968D91AA +:103750009C91009709F435C0069709F44DC1AA85DC +:10376000BB855C963C905C97332009F4F8C0589672 +:10377000ED91FC913197EC31F10508F096C3882763 +:10378000EB53F44E8F4F0C94E52BDB1CE41C0B1D0C +:103790000E1D151DE521181D8E1E581F9B20E51FAF +:1037A00025216223692373236C237C2375237E23C5 +:1037B000852388238F2392239A239D23A123A42347 +:1037C000AB23EA85FB85B7A6A6A6E4A0F8E0EF9EAA +:1037D000700111249701295F3F4F7901AA85BB85AC +:1037E00093968C91B8E08B9FE018F1081124EFEFCD +:1037F000EE1AFE0AD12CC12CD5016D915D01662314 +:10380000C1F0EA85FB8524A935A970E043A9CF0161 +:103810000E94B20990E0C80ED91E892B69F3D50128 +:103820008C91882349F3EA85FB8586A9C80ED11CB3 +:10383000E3CFAA85BB855096DC92CE921F97569611 +:103840008D919C918130910509F455C028F0029723 +:1038500071F1992493941DC0EA85FB8584A190E0C1 +:10386000019623E0880F991F2A95E1F79C012150CA +:103870003109328B218BEC14FD0490F483A1F8E024 +:103880008F9FC0011124AA85BB8554969C938E936B +:10389000539781E09826EA85FB85958A848F5FCFD0 +:1038A0008C199D09EA85FB85948B838BD2CFAA85E1 +:1038B000BB8593968C91B8E08B9FC0011124EA855B +:1038C000FB85948B838BEC14FD0468F484A1F8E0F1 +:1038D0008F9FC00111240796AA85BB8552969C93A1 +:1038E0008E935197D6CF0197C80ED91EEA85FB85D6 +:1038F000D28AC18AAECFAA85BB8593962C91B8E0B7 +:103900002B9F90011124EC14FD0498F4EA85FB85AB +:1039100084A1F8E08F9FC00111240796AA85BB857A +:1039200052969C938E93519754963C932E93539713 +:10393000B0CFEC18FD08F694E794E20EF31EEA858A +:10394000FB85F48AE38AF1E0CF1AD108CE0CDF1CA4 +:10395000AA85BB855296DC92CE9251977ACFAA85E2 +:10396000BB855A96ED91FC913197EC31F10508F049 +:103970009CC28827E154F34E8F4F0C94E52BCA1F4D +:10398000E41C0B1D0E1D151DE521181D8E1E581F54 +:103990009B20E51F25216223692373236C237C234D +:1039A00075237E23852388238F2392239A239D23A7 +:1039B000A123A423AB238A859B850E94C712EA8595 +:1039C000FB857686658606C0432D61E08A859B85EA +:1039D0000E949B18AA85BB855C968C915C971D966E +:1039E0002D913C91882329F081E02530310509F49F +:1039F00080E0EA85FB85848F81E0AA85BB851D96E2 +:103A00002D913C912630310509F062CEB981B82B59 +:103A1000B983239428CE432D60E0D8CF432D61E0B5 +:103A20008A859B850E942C11D5CF432D60E0F8CF6D +:103A3000EA85FB8585859685332009F4EAC07F01F8 +:103A4000F7E3EF0EF11C82309105A1F130F00397FE +:103A500009F45BC0AA85BB8565C26A857B85695C04 +:103A60007F4F8A859B850E94AF0A811103C0AA857A +:103A7000BB859AC68A859B850E94AC12EA85FB8528 +:103A800011AE10AE83A1F8E08F9FC0011124AA856A +:103A9000BB8596969C938E93959751968D919C910C +:103AA00052979B969C938E939A971E965C924E92F9 +:103AB0001D9790CFEA85FB8517AA80A9882381F0FE +:103AC000AA85BB851E967C926E921D97EA85FB8522 +:103AD0008585968527A921110BC0059759F77ACFBF +:103AE000B7018A859B850E946B0A8111EFCFE8CFD1 +:103AF000059709F46FCFAA85BB85D9961C921E92B3 +:103B0000D8971E965C924E921D97EA85FB8565A11B +:103B100076A182A593A504A8F5A9E02DAA85BB8569 +:103B2000D8962D913C91D997E20FF31F40816817E9 +:103B3000790751F48D919C9111975D962C912111EB +:103B400040950E94720C3BCF411135C0AA85BB85C0 +:103B500096969C938E939597EA85FB8585A196A171 +:103B600022A533A582179307C1F420AD31AD43A13F +:103B7000F8E04F9FA0011124AA85BB8596965C931F +:103B80004E9395972F5F3F4FD9963C932E93D8979E +:103B900001979B969C938E939A97EA85FB8527A91C +:103BA00080AD91AD2817190609F014CF82E090E09E +:103BB000968785870FCFEA85FB85458D4195808166 +:103BC00091810E94720CAA85BB8595966D917C911E +:103BD00096976F5F7F4F96967C936E9395978D9196 +:103BE0009C9111975D96EC915D97D4962D913C91A7 +:103BF000D597D8964D915C91240F351FEE2331F067 +:103C0000F901408140950E94720CA6CFD9014C91D8 +:103C1000FACF8130910508F42ACF8430910568F0FD +:103C2000059709F024CFEA85FB858189928993A7BE +:103C300082A796A385A356864586AA85BB85CD9087 +:103C4000DC9011975D968C91912C812C882319F032 +:103C500088248A94912CEA85FB85A388B488AA8558 +:103C6000BB859596ED90FC90B701C6010E94300788 +:103C7000EA85FB8522A533A58815190451F42A1578 +:103C80003B053CF0C901019793A782A736A325A362 +:103C9000E6CF2F5F3F4F2A153B050CF4E8CEEA85AF +:103CA000FB8524A1F8E02F9F90011124295F3F4F4D +:103CB000E216F3063CF4B7016F5F7F4F482FC60151 +:103CC0000E94720CAA85BB855D964C915D974195CB +:103CD00095966D917C9196978D919C910E94720C16 +:103CE000EA85FB8525A136A12F5F3F4F36A325A38B +:103CF00084A190E00196B3E0880F991FBA95E1F78F +:103D00002817390709F066CE82A593A59C0121509A +:103D1000310933A722A796A385A35CCEEA85FB854C +:103D200085859685332009F469C08430910508F0B3 +:103D300042C0019708F443C08A859B850E94AC125B +:103D40008A859B850E94C712EA85FB85E3A0F8E07F +:103D5000EF9E7001112499249394AA85BB859596B2 +:103D6000CD90DC90969794968C91B8E08B9FC00193 +:103D7000112407968E159F0590F1EA85FB85A0809A +:103D8000B180B701C5010E943007482F50E087E09D +:103D900090E08C199D093320E9F002C055954795B4 +:103DA0008A95E2F7B701C5010E94720C3924FFEF32 +:103DB000EF1AFF0AD2CF059709F4BECF4BCEAA85E2 +:103DC000BB8596961C921E9295971E965C924E927B +:103DD0001D97B2CF01C0440F8A95EAF7E3CF2FEFCA +:103DE000C21AD20AAA85BB859696DC92CE92959786 +:103DF000B8E0CB16D10409F0EDCDE1CD84309105CA +:103E0000A0F50197A8F1AA85BB859396EC90B8E040 +:103E1000EB9E700111249924939488248394EA855D +:103E2000FB85C5A0D6A084A1F8E08F9FC001112416 +:103E300007968E159F0558F1AA85BB85AD90BC905D +:103E4000B701C5010E943007482F50E09920C9F002 +:103E500001C0440FCA94EAF7B701C5010E94720C71 +:103E60009824BFEFEB1AFB0ADACF059709F0FFCDD4 +:103E700021E030E0EA85FB8536A325A356864586FA +:103E8000C2CF02C055954795CA94E2F7E5CFEFEF50 +:103E9000CE1ADE0AAA85BB859696DC92CE929597BD +:103EA000B8E0CB16D10409F095CDEA85FB8507C4AF +:103EB000EA85FB8585859685332009F45AC08430D0 +:103EC000910500F58230910500F5009781F1019789 +:103ED00009F0C0CDAA85BB8595966D917C9196978A +:103EE000CB01019696969C938E939597CD010E9457 +:103EF000F41A8A859B850E94C712EA85FB8556863F +:103F0000458668CD059709F0A5CDAA85BB85959610 +:103F10006D917C9196979A968D919C919B9786171F +:103F20009707ECF41E967C926E921D9753CDAA854E +:103F3000BB8596961C921E92959791968C9191971F +:103F400090E09B969C938E939A97CD010E94AC1221 +:103F500021E030E0EA85FB85368725873BCDCB0124 +:103F60000196EA85FB8596A385A3CF010E94F41AEA +:103F700031CD8430910598F40197A0F0EA85FB8556 +:103F800065A176A1CB01019777FFEBCF62A5CF01A9 +:103F90000E94F41A8A859B850E94AC1268CD059711 +:103FA00009F065CDEA85FB8561A1862F90E093A796 +:103FB00082A796A385A3CF010E94F41A8A859B85C8 +:103FC0000E94C712AA85BB8570CDEA85FB858585D1 +:103FD00096858230910509F45DC048F4009769F038 +:103FE0000197B9F031102EC186E090E0E6C0833031 +:103FF000910509F492C00597A9F7AA85BB85969605 +:104000001C921E929597E1E0F0E01E96FC93EE93D1 +:104010001D97AA85BB8595968D919C919697019643 +:1040200096969C938E9395979396EC90B8E0EB9E22 +:1040300070011124DD24D394EA85FB8525A136A1E6 +:1040400084A190E00196A3E0880F991FAA95E1F75B +:10405000E816F90694F4C70183709927821793072D +:1040600044F4458D4D254195B701808191810E9491 +:10407000720CFFEFEF1AFF0ADFCF82E090E02430EE +:10408000310509F0A7CCAA85BB851E969C938E931B +:104090001D97A0CC8A859B850E94AC12332021F00D +:1040A0008A859B850E94C712EA85FB8585A196A11A +:1040B000019796A385A3E3A0F8E0EF9E7001112479 +:1040C000DD24D394AA85BB8595962D913C91969736 +:1040D00094968C91949790E00196E3E0880F991F55 +:1040E000EA95E1F7E816F906A4F4C7018370992769 +:1040F0008217930754F45D964C915D974D25419539 +:10410000B7018D919C910E94720CBFEFEB1AFB0AD4 +:10411000D9CF232B09F05ECCF0CE8A859B850E94F7 +:10412000AC12332009F40FC18A859B850E94C71207 +:1041300085E090E0A8CFAA85BB851D968D919C91C6 +:104140008230910509F43CC038F08330910509F4C0 +:104150006EC0059709F0F5C0EA85FB85E3A0F8E09D +:10416000EF9E70011124AA85BB8594968C9194973B +:1041700090E0019673E0880F991F7A95E1F7E816B1 +:10418000F906CCF45D96BC905D97CD90DC90B701BC +:10419000C6010E943007B110809545E5E0FE4AEA6D +:1041A000482BB1104095B701C6010E94720CBFEFB9 +:1041B000EB1AFB0AD8CF82E090E0EA85FB85F8CCC9 +:1041C0008A859B850E94AC12332021F08A859B85CD +:1041D0000E94C712AA85BB859396EC90B8E0EB9E2F +:1041E00070011124EA85FB8584A190E0019663E0CB +:1041F000880F991F6A95E1F7E816F9060CF0E2CEF0 +:10420000B58CC080D180B701C6010E943007B110C3 +:1042100080954AEAE0FE45E5482BB1104095B7018C +:10422000C6010E94720CFFEFEF1AFF0ADBCF8A85EE +:104230009B850E94AC12332009F4D6CE8A859B85DB +:104240000E94C71285E090E0B8CFEA85FB8585859E +:1042500096858430910508F079C0019708F479C0FB +:10426000EA85FB8516A215A20E94F52A4B015C0186 +:104270000E94F52A6E837F8388879987AA85BB85EC +:104280009596CD90DC90BFEFCB1ADB0AEA85FB85D3 +:10429000D6A2C5A2C501B4012BE030E040E050E059 +:1042A0000E94822B70E09B012F573C4F7901D9016E +:1042B000BC906E817F818885998528E030E040E060 +:1042C00050E00E94822B8B2D90E0062E02C0959527 +:1042D00087950A94E2F780FF05C0B8E8CB16B3E1F2 +:1042E000DB0614F281E090E001C0880F6A95EAF7DE +:1042F000B82AF701B0828A859B850E94C712AA85D9 +:10430000BB8596961C921E9295979396EC90B8E07A +:10431000EB9E70011124EA85FB8584A1F8E08F9F54 +:10432000C001112407968E159F0510F5E1E8F3E012 +:1043300081918F3F09F04ECB29E833E02E173F07DC +:10434000B9F73110F5CE86E090E09DCE059709F0E3 +:1043500049CEE1E8F3E011922CE833E02E173F0755 +:10436000D1F7AA85BB851E965C924E921D9778CF99 +:10437000AA85BB85CD90DC90B701C6010E943007AD +:10438000AA85BB859596ED91FC91EF57FC4F408136 +:10439000311001C040954823B701C6010E94720C3C +:1043A000EA85FB8585A196A101968B30910531F0B8 +:1043B00096A385A3BFEFEB1AFB0AADCFAA85BB85F9 +:1043C00096961C921E929597F5CFAA85BB851D9651 +:1043D0008D919C913110C8C18430910508F0C0C105 +:1043E000019778F58A859B850E947C06EA85FB8586 +:1043F00080A591A522A533A58217930724F431A7A0 +:1044000020A793A782A7AA85BB85DE968D919C9154 +:10441000DF97892B09F4C8C1EA85FB8583A1F8E001 +:104420008F9FC00111240197AA85BB8596969C9306 +:104430008E93959797961C9297971E965C924E92A4 +:104440001D978A859B850E94C712EA85FB8585A1F9 +:1044500096A1019696A385A3F12C6F01F1E4CF0EEE +:10446000D11CD6012C91EA85FB8565A176A1822F0E +:1044700090E0F21608F0E1C04F2D50E0641B750B80 +:1044800084A190E0019633E0880F991F3A95E1F7F7 +:10449000681779072CF583A1F8E08F9FC0011124DC +:1044A00068177907ECF0AA85BB858D919C911197CF +:1044B00097963C919797320390011124420F531F16 +:1044C000DE96ED91FC91DF97E40FF51F5D962C9140 +:1044D000222309F4B0C0E4914E2F40950E94720C43 +:1044E000F394BFCFEA85FB8517A284A190E00196E3 +:1044F00053E0880F991F5A95E1F796A385A3568636 +:1045000045868A859B850E94C712AA85BB8595969C +:104510008D919C919697019796969C938E939597E3 +:10452000F12C6D01B0E4CB0ED11CF6012081AA85DF +:10453000BB8595966D917C919697F21608F03AC0DE +:10454000EF2DF0E06E0F7F1F94968C91949790E082 +:10455000019643E0880F991F4A95E1F7681779079C +:104560002CF593968C91B8E08B9FC00111246817AD +:104570007907E4F0AA85BB858D919C911197979658 +:104580004C9197974203A00111244E0F5F1FDC96B8 +:10459000ED91FC91DD97E40FF51F5D962C912223A0 +:1045A00039F0E4914E2F40950E94720CF394BDCFE8 +:1045B0004491FACF7B01B1E0EB1AF108EA85FB8563 +:1045C00082A593A5E816F9065CF0458D4195B701E3 +:1045D000808191810E94720CF1E0EF1AF108EECF18 +:1045E000AA85BB8597968C9197978F5F97968C93AA +:1045F0009797082E000C990BFD01EE5BFF4F208171 +:104600002817190609F014F497961C92EA85FB8581 +:1046100083A1F8E08F9FC0011124D6012C91821B49 +:1046200091090197EA85FB8525A136A1281739074D +:1046300009F0D0C9C6C9449151CF7B01E81AF90AE3 +:10464000EA85FB8582A593A5E816F9065CF0458D01 +:104650004195B701808191810E94720CF1E0EF1ABF +:10466000F108EECFAA85BB8597968C9197978F5FBF +:1046700097968C939797082E000C990BFD01ED5B94 +:10468000FF4F20812817190609F014F497961C9201 +:10469000EA85FB8584A1F8E08F9F90011124295FB2 +:1046A0003F4FD6018C91820F932F911D0196EA8581 +:1046B000FB8525A136A12817390709F08BC9168774 +:1046C000058788C9432D60E08A859B850E941C135D +:1046D00081C9432D61E0F8CF41E0632D8A859B8538 +:1046E0000E94951477C940E0F8CF41E0632D8A8598 +:1046F0009B850E94DC136EC940E0F8CF432D60E03B +:104700008A859B850E94FA1565C9432D61E0F8CF23 +:10471000432D60E08A859B850E9411175BC9432D5C +:1047200061E0F8CF232D41E061E08A859B850E94FE +:10473000661950C9232D40E0F7CF232D41E060E0FA +:10474000F4CF232D40E0FBCF432D61E08A859B858C +:104750000E9431153FC9432D60E0F8CF81E056C972 +:10476000059709F43FCE83C98430910510F5019770 +:1047700008F0C7CE8A859B850E947C06EA85FB856A +:1047800080A591A522A533A58217930724F431A70C +:1047900020A793A782A7AA85BB85DC968D919C91C3 +:1047A000DD97892B09F09ECE1E961C930E931D97C4 +:1047B00011C9059709F4A5CE4DC941E050E06AE062 +:1047C00070E08C819D810E94E71A89812B960FB63B +:1047D000F894DEBF0FBECDBFDF91CF911F910F9137 +:1047E000FF90EF90DF90CF90BF90AF909F908F9011 +:1047F0007F906F905F904F903F902F9008950F9310 +:104800001F93CF93DF93EC018B0188A521E030E06B +:10481000882321F0EDA1FEA126893789A80160E057 +:10482000CE010E949904CE010E94051B8111FBCF8D +:10483000F80101900020E9F7CF010197801B910B4F +:10484000DF91CF911F910F910895EF92FF920F93F7 +:104850001F93CF93DF93CDB7DEB762970FB6F8946F +:10486000DEBF0FBECDBF9C017B018A0140913204A7 +:104870005091330490E084E460913504961748F435 +:10488000FA01989FE00DF11D1124168615869F5F91 +:10489000F3CFB901CE0101960E941208B701CE01F3 +:1048A00007960E941208B801CE010D960E941208C8 +:1048B00049815A8121E030E060E08DE094E00E947F +:1048C00099044F81588521E030E061E08DE094E06B +:1048D0000E9499044D855E8521E030E062E08DE024 +:1048E00094E00E9499048DE094E00E94051BCE01A3 +:1048F0000D960E940A08CE0107960E940A08CE0172 +:1049000001960E940A0862960FB6F894DEBF0FBEA9 +:10491000CDBFDF91CF911F910F91FF90EF90089540 +:104920001F920F920FB60F9211242F933F938F93E4 +:104930009F93AF93BF938091050490910604A0913B +:104940000704B09108043091040423E0230F2D37AD +:1049500058F50196A11DB11D209304048093050410 +:1049600090930604A0930704B0930804809109046F +:1049700090910A04A0910B04B0910C040196A11D22 +:10498000B11D8093090490930A04A0930B04B09383 +:104990000C04BF91AF919F918F913F912F910F90F8 +:1049A0000FBE0F901F90189526E8230F0296A11DA9 +:1049B000B11DD2CFCF93DF9300D01F92CDB7DEB71A +:1049C000789484B5826084BD84B5816084BD85B5EA +:1049D000826085BD85B5816085BD80916E008160F6 +:1049E00080936E001092810080918100826080939C +:1049F000810080918100816080938100809180009E +:104A00008160809380008091B10084608093B100C8 +:104A10008091B00081608093B000809191008260AD +:104A200080939100809191008160809391008091AA +:104A300090008160809390008091A10082608093BB +:104A4000A1008091A10081608093A1008091A000CD +:104A500081608093A0008091210182608093210178 +:104A600080912101816080932101809120018160EA +:104A70008093200180917A00846080937A008091F5 +:104A80007A00826080937A0080917A0081608093BE +:104A90007A0080917A00806880937A001092C10039 +:104AA0000CE413E042E6E42E43E0F42E50E2C52E7F +:104AB00053E0D52E26E333E03A832983E981FA8156 +:104AC00080813296FA83E98362E00E94B705F6019D +:104AD0008081F2E0CF0ED11C62E00E94B705F701A1 +:104AE0008081F2E0EF0EF11C61E00E94B705F80151 +:104AF00080810E5F1F4F61E00E94B70529813A81D6 +:104B00002C543340D9F662E085E00E94B70561E09D +:104B100084E00E94B70561E084E00E9489058091ED +:104B20001904882309F424C10FB70983F8948091EC +:104B30008C03811127C0E1E8F7E08491E7ECF7E00E +:104B40009491E82FF0E0EE0FFF1FE250F94FA5918E +:104B5000B491EC91E92321F461E085E30E94890599 +:104B600061E085E30E94B7058CB580618CBD8CB592 +:104B700080648CBD61E084E30E94B70561E083E35B +:104B80000E94B70580918C038F5F80938C031981FD +:104B90001FBF61E0809118040E94B70561E0809119 +:104BA00018040E9489051092220410922104109288 +:104BB0002404109223048091270490912804845D9A +:104BC000914051F084ED91E0909328048093270464 +:104BD00081E194E00E94390700911C04098319E0E7 +:104BE000019FC00111240E94ED2B8C0190931E04A3 +:104BF00080931D042981822F90E0880F991F0E94C5 +:104C0000ED2B9093200480931F04892B09F4BBC0E3 +:104C1000012B09F4B8C050E040E063E070E081E1AE +:104C200094E00E94E71A47E050E061E070E081E123 +:104C300094E00E94E71A47E050E062E070E081E112 +:104C400094E00E94E71A50E040E064E070E081E107 +:104C500094E00E94E71A40911C04415060E081E119 +:104C600094E00E94A10F50E040E070E060E081E13C +:104C700094E00E94E71A50E040E06BE070E081E1D0 +:104C800094E00E94E71A41E050E06AE070E081E1C0 +:104C900094E00E94E71A01E0098389E080933504DB +:104CA00086E692E00E94ED2BDC0129E030E02D93B6 +:104CB0003D93FD018A599D4F46E050E037E021E0E9 +:104CC00011821082128213821482158216825687F4 +:104CD0004587178E168E10A231A313A214A215A613 +:104CE00014A612AA11AA13AA15AA14AA26AB13AEC7 +:104CF00012AE15AE14AE17AE16AEEC5BFF4FE81752 +:104D0000F907F1F6B0933304A0933204198111230B +:104D100009F4D7C0AB2B09F4D4C01B8284E4F82E6D +:104D200091E1C92E94E0D92E809135040B810817AA +:104D300060F51981112309F4C4C000913204109167 +:104D400033042B812F9D000D111D1124F801D182F8 +:104D5000C082C8010E945A09FB81FF5FFB8321E0EA +:104D60002983F80184A995A9892BF1F61982DCCF52 +:104D700061E0809116040E94B70561E080911704FC +:104D80000E94B70506CF198288CF0981002309F454 +:104D900098C0409134044150813021F460E080E0BB +:104DA0000E94E00440913404415007E010E022E00A +:104DB00030E060E081E194E00E940B1890913504AE +:104DC000A0913204B0913304FD0180E02AE030E08C +:104DD000981741F030872783328721878F5FEC5BFC +:104DE000FF4FF6CF9923C9F017968D919C91189794 +:104DF0004AE0489F9001499F300D112480E094E4DF +:104E000040913504841760F4FD01899FE00DF11D88 +:104E10001124348723878F5FF3CF90E080E0E8CFC1 +:104E2000198214E480913204909133042091350466 +:104E30000981021768F4019F800D911D112401E082 +:104E4000FC0106AB0E945A0909810F5F0983EACF72 +:104E500020E034E440913504241748F4FC01239FFA +:104E6000E00DF11D1124178E168E2F5FF3CF20E079 +:104E700044E430913504FC01231768F020E041E060 +:104E800050E0231781F0518F408F138E128E2F5FC9 +:104E9000EC5BFF4FF6CF249FE00DF11D1124178A24 +:104EA000168A2F5FE6CF20E034E4409135042417C2 +:104EB00040F4FC01239FE00DF11D1124158E2F5F9E +:104EC000F4CF1982809135041981181770F48091FC +:104ED00032049091330424E4129F800D911D11241B +:104EE0000E94AC121F5F1983EDCF42E060E080E0CA +:104EF0000E94E00445E063E081E00E94E00448E0B5 +:104F000066E082E00E94E00480913504882339F055 +:104F10006FE080913204909133040E94F41A8091E2 +:104F20003504823048F0809132049091330462E07D +:104F30008C5B9F4F0E94F41A80913504833048F0B7 +:104F4000809132049091330461E088579F4F0E9412 +:104F5000F41A50E040E070E060E090E080E00E94F1 +:104F6000252480917B00877F80937B0080E4809361 +:104F70007C0080917A00806480937A0080917A002E +:104F800086FDFCCF6091780070917900072E000CAF +:104F9000880B990B611571058105910511F00E942F +:104FA000442B85E00E94600508E1E02E02E0F02E2F +:104FB000892B09F080C081E08093030420913204A2 +:104FC0003091330480E094E440913504841748F430 +:104FD000F901899FE00DF11D1124168615868F5F5A +:104FE000F3CF21E030E048E753E060E08DE094E06B +:104FF0000E94990421E030E048E753E061E08DE051 +:1050000094E00E94990421E030E048E753E062E038 +:105010008DE094E00E9499048DE094E00E94051BCD +:105020001BE0212E312C412C512C8091030488232C +:1050300009F48AC00CE413E0A0E2EA2EA3E0FA2E01 +:10504000B2E6CB2EB3E0DB2EE6E3F3E0FA83E983AE +:10505000E981FA8180813296FA83E9830E946005B2 +:10506000F6012081F2E0CF0ED11C61E0892B09F01E +:1050700060E0822F0E948905F7018081F2E0EF0E47 +:10508000F11C0E946005F80120810E5F1F4F61E056 +:10509000892B09F060E0822F0E94890529813A81DD +:1050A0002C543340A9F6E0E0F0E0EF2B09F4BDCF3B +:1050B0000E940000BACF02E613E01A830983870139 +:1050C000F80161918F01E981FA8180813296FA833A +:1050D000E9830E94890529813A812857334081F765 +:1050E0008701055F1F4F8CE493E09A838983F80161 +:1050F00061918F01E981FA8180813296FA83E98397 +:105100000E94890529813A812256334081F766E958 +:1051100070E080E090E00E940D0656E1E50EF11C83 +:1051200080E2E81683E0F80631F60E94E0070E946C +:1051300040066093FF0370930004809301049093F2 +:1051400002040E947C086CCF0E944006AB01BC01A7 +:105150008091FF0390910004A0910104B09102049A +:10516000A090FD03B090FE03C090FB03D090FC0321 +:105170008A019B01081B190B2A0B3B0B00361A4EA8 +:105180002105310508F45BC000EF13E025EE33E0A4 +:105190003A83298339014801FCE4EF2EF3E0FF2E26 +:1051A00042E653E05C834B83EB81FC818081329645 +:1051B000FC83EB8360E00E948905F7018081F2E0C7 +:1051C000EF0EF11C60E00E948905F40111924F017D +:1051D000F30111923F012B813C812857334021F785 +:1051E00050E040E0B501C6010E94252468E873E163 +:1051F00080E090E00E940D060E94E0071092FC0300 +:105200001092FB031092FE031092FD030E944006D1 +:105210006093FF0370930004809301049093020451 +:10522000F80111928F01E981FA811192FA83E983E1 +:10523000F3E00B3F1F07A1F70E947C0834CF805A90 +:105240009541AF4FBF4F8C019D01041B150B260BE1 +:10525000370BC901B80128EE33E040E050E00E946E +:10526000B42BA901B501C6010E9425240E94400665 +:105270006B017C010DE813E069EBA62E63E0B62E0E +:1052800070E2672E73E0772EE6E38E2EE3E09E2E2B +:105290001A821982F4018081F2E08F0E911C0E9423 +:1052A0006005892B09F04FC0F50180819181A281B1 +:1052B000B381A7019601281B390B4A0B5B0BDA015E +:1052C000C90181399140A105B105E8F1C082D182BF +:1052D000E282F382E981FA81E051FC4F8091FB0385 +:1052E0009091FC032081222309F497C001969093AA +:1052F000FC038093FB031082E981FA81EE0FFF1F0C +:10530000EE59FC4F60E080810E9489050E94F52AD9 +:10531000A20191010E94822B29813A812617370729 +:10532000A9F3FB01E051FC4F20812111EFCF31E0C7 +:105330003083CB01880F991FFC01EE59FC4F61E0CF +:1053400080810E948905F3018081F2E06F0E711C5B +:105350000E946005892B09F04FC0F801808191817E +:10536000A281B381A7019601281B390B4A0B5B0B65 +:10537000DA01C90181399140A105B105E8F1C08286 +:10538000D182E282F382E981FA81EB51FC4F809174 +:10539000FD039091FE032081222309F44BC0019666 +:1053A0009093FE038093FD031082E981FA81EE0F52 +:1053B000FF1FE45BFC4F60E080810E9489050E9432 +:1053C000F52AA20191010E94822B29813A81261798 +:1053D0003707A9F3FB01EB51FC4F20812111EFCFDF +:1053E00031E03083CB01880F991FFC01E45BFC4F57 +:1053F00061E080810E94890549815A814F5F5F4F3A +:105400005A8349830C5F1F4F54E0A50EB11C89815C +:105410009A810B9709F03ECF46CE029797FD05C0C3 +:105420009093FC038093FB038ECF1092FC031092A9 +:10543000FB0389CF029797FD05C09093FE038093ED +:10544000FD03DACF1092FE031092FD03D5CFEDE0FD +:10545000F4E0138212828EE092E09183808383E3F2 +:10546000818784E3828785E3838714868EE793E0D0 +:105470009687858789E0878791E0908F21E030E0EB +:105480003583248396831782108687A308950F930C +:105490001F93CF93DF938EE092E090930E0480935E +:1054A0000D04C0913204D0913304209759F1FE01CC +:1054B00032972081318144E4429FC001439F900D87 +:1054C0001124C80FD91F80913204909133048C1796 +:1054D0009D07A1F0C454D10989A99AA9009739F070 +:1054E000FC01048115810E94892CC801F7CF8CA989 +:1054F0009DA9009741F30E94892CE5CFCE01029728 +:105500000E94892C80911904882399F09FB7F89400 +:1055100080918C03882319F0815080938C038091B3 +:105520008C03811105C08CB58F7B8CBD10928003DC +:105530009FBF80911D0490911E040E94892C809130 +:105540001F0490912004DF91CF911F910F910C9433 +:10555000892C8F929F92AF92BF92CF92DF92EF925F +:10556000FF92CF93DF93EC01688179818A819B81DF +:10557000611571058105910521F464E279ED8BE5F2 +:1055800097E02DE133EF41E050E00E94822B49018A +:105590005A019B01AC01A7EAB1E40E94A12B6B0167 +:1055A0007C01ACEEB4EFA50194010E94AF2BC60EB6 +:1055B000D71EE81EF91EF7FE06C081E0C81AD10802 +:1055C000E10880E8F80AC882D982EA82FB82C70132 +:1055D000B6019F77DF91CF91FF90EF90DF90CF9052 +:1055E000BF90AF909F908F9008958F929F92AF92AF +:1055F000BF92CF92DF92EF92FF9260910002709182 +:1056000001028091020290910302611571058105EA +:10561000910521F464E279ED8BE597E02DE133EF1C +:1056200041E050E00E94822B49015A019B01AC01EC +:10563000A7EAB1E40E94A12B6B017C01ACEEB4EFB0 +:10564000A50194010E94AF2BC60ED71EE81EF91EBD +:10565000F7FE06C081E0C81AD108E10880E8F80A20 +:10566000C0920002D0920102E0920202F092030284 +:10567000C701B6019F77FF90EF90DF90CF90BF906A +:10568000AF909F908F9008956093000270930102F5 +:1056900080930202909303020895BB274A3031F4AD +:1056A000992322F4BDE2909581959F4F0C94592B3C +:1056B000BB27FB015527AA27880F991FAA1FA417EC +:1056C00010F0A41B83955051B9F7A05DAA3308F0E0 +:1056D000A95DA193009779F7B111B1931192CB0114 +:1056E0000C94722BDC01FC01672F71917723E1F799 +:1056F000329704C07C916D9370836291AE17BF079F +:10570000C8F30895052E97FB1EF400940E94992B70 +:1057100057FD07D00E94B42B07FC03D04EF40C9425 +:10572000992B50954095309521953F4F4F4F5F4FA6 +:10573000089590958095709561957F4F8F4F9F4FFD +:1057400008950E94D62BA59F900DB49F900DA49F05 +:10575000800D911D11240895B7FF0C94A12B0E9478 +:10576000A12B821B930B0895A1E21A2EAA1BBB1B2F +:10577000FD010DC0AA1FBB1FEE1FFF1FA217B3071D +:10578000E407F50720F0A21BB30BE40BF50B661F33 +:10579000771F881F991F1A9469F7609570958095F7 +:1057A00090959B01AC01BD01CF010895A29FB0016E +:1057B000B39FC001A39F700D811D1124911DB29F45 +:1057C000700D811D1124911D0895EE0FFF1F881F7C +:1057D0008BBF0790F691E02D19940F931F93CF93F1 +:1057E000DF938230910510F482E090E0E09138047C +:1057F000F091390430E020E0B0E0A0E0309799F477 +:105800002115310509F44AC0281B390B2430310514 +:10581000D8F58A819B816115710589F1FB0193831C +:105820008283FE0111C0408151810281138148179A +:105830005907E0F04817590799F4109761F012964C +:105840000C93129713961C933296CF01DF91CF9150 +:105850001F910F9108950093380410933904F4CFE9 +:105860002115310551F04217530738F0A901DB012A +:105870009A01BD01DF01F801C1CFEF01F9CF90938B +:10588000390480933804CDCFFE01E20FF31F8193DA +:1058900091932250310939832883D7CF2091360440 +:1058A00030913704232B41F42091060230910702F6 +:1058B000309337042093360420910402309105027E +:1058C0002115310541F42DB73EB7409108025091A2 +:1058D0000902241B350BE0913604F0913704E217DE +:1058E000F307A0F42E1B3F0B2817390778F0AC0103 +:1058F0004E5F5F4F2417350748F04E0F5F1F5093E0 +:10590000370440933604819391939FCFF0E0E0E019 +:105910009CCFCF93DF930097E9F0FC01329713827D +:105920001282A0913804B0913904ED0130E020E0FA +:105930001097A1F420813181820F931F20913604AA +:10594000309137042817390709F061C0F093370404 +:10595000E0933604DF91CF910895EA01CE17DF0777 +:10596000E8F54A815B819E0141155105B1F7E901D6 +:10597000FB83EA8349915991C40FD51FEC17FD07AA +:1059800061F4808191810296840F951FE9019983CA +:105990008883828193819B838A83F0E0E0E0129682 +:1059A0008D919C9113970097B9F52D913C9111978A +:1059B000CD010296820F931F209136043091370457 +:1059C0002817390739F6309751F51092390410929B +:1059D0003804B0933704A0933604BCCFD383C2837A +:1059E00040815181840F951FC817D90761F44E5F1C +:1059F0005F4F88819981480F591F518340838A8165 +:105A00009B81938382832115310509F0B0CFF093F8 +:105A10003904E09338049ECFFD01DC01C0CF13822E +:105A20001282D7CF4F925F926F927F928F929F9206 +:105A3000AF92BF92CF92DF92EF92FF920F931F939C +:105A4000CF93DF938C01009799F4CB01DF91CF9135 +:105A50001F910F91FF90EF90DF90CF90BF90AF908C +:105A60009F908F907F906F905F904F900C94ED2B54 +:105A7000FC01E60FF71F9C0122503109E217F307E2 +:105A800008F4AEC0D901CD91DC911197C617D707A4 +:105A900020F1C530D10578F0CE010497861797071D +:105AA00050F0C61BD70B2297C193D1936D937C9373 +:105AB000CF010E94892CC801DF91CF911F910F91D6 +:105AC000FF90EF90DF90CF90BF90AF909F908F901E +:105AD0007F906F905F904F9008955B01AC1ABD0A64 +:105AE0004C018C0E9D1EA0913804B0913904512CAC +:105AF000412CF12CE12C109731F5809136049091D6 +:105B000037048815990509F05CC04616570608F059 +:105B100058C08091040290910502009741F48DB71E +:105B20009EB74091080250910902841B950BE8171B +:105B3000F90708F055C0F0933704E0933604F901F3 +:105B400071836083B8CF8D919C91119712966C9060 +:105B5000129713967C901397A815B90559F56C0107 +:105B600042E0C40ED11CCA14DB0420F1AC014A1976 +:105B70005B09DA011296159780F062827382518375 +:105B80004083D9016D937C93E114F10471F0D70146 +:105B90001396FC93EE9312978ECF22968C0F9D1F37 +:105BA000F90191838083F301EFCFF0933904E093FF +:105BB000380481CF4816590608F42C017D01D30121 +:105BC0009ACFCB010E94ED2B7C01009749F0AE01EA +:105BD000B8010E94F32DC8010E94892C87016BCF68 +:105BE00010E000E068CFFB01DC0102C001900D92E3 +:105BF00041505040D8F70895DC0101C06D934150E9 +:105C00005040E0F70895FB01DC0101900D92002067 +:105C1000E1F7089514E0C0E1D4E000E006C0802F71 +:105C2000FE010E94E52B2196011DC131D10780E0C4 +:085C30000807A9F7F894FFCF63 +:105C38000100000000003A04800000000000ED07A9 +:105C48007F0907080608FF23000000000000000085 +:105C58000000000000000000000000010101000039 +:105C68000000000000000000000000000101010128 +:105C7800010000000000000000000000000000011A +:105C8800010100000000000000000000000000000A +:105C980000000101010000000000000000000000F9 +:105CA80000000001010101010000000000000000E7 +:105CB80000000000000001010100000000000000D9 +:105CC80000000000000000000000000000000001CB +:105CD80001010101000000000000000000000000B8 +:105CE80000000000000000000000010101000000A9 +:105CF800000000000000000000000000000000009C +:105D08000000000101010000000000000000000088 +:105D18000000000000000000000000000101010177 +:105D2800010000000000000000000000000000006A +:105D38000000000000000001010100000000000058 +:105D4800000000000000000000000000000000004B +:105D58002D002F00310023002500270029002B00EB +:105D68001D001F002100070009000B000D000F0097 +:105D7800110013001500170019001B002C002E003D +:105D8800300022002400260028002A001C001E00E3 +:105D98002000060008000A000C000E001000120087 +:0E5DA8001400160018001A0054455354000051 +:00000001FF diff --git a/build/upload.sh b/build/upload.sh new file mode 100644 index 0000000..0359ad1 --- /dev/null +++ b/build/upload.sh @@ -0,0 +1 @@ +avrdude -v -patmega2560 -cwiring -P/dev/ttyUSB0 -b115200 -D -Uflash:w:firmware.hex:i diff --git a/include/README b/include/README new file mode 100644 index 0000000..194dcd4 --- /dev/null +++ b/include/README @@ -0,0 +1,39 @@ + +This directory is intended for project header files. + +A header file is a file containing C declarations and macro definitions +to be shared between several project source files. You request the use of a +header file in your project source file (C, C++, etc) located in `src` folder +by including it, with the C preprocessing directive `#include'. + +```src/main.c + +#include "header.h" + +int main (void) +{ + ... +} +``` + +Including a header file produces the same results as copying the header file +into each source file that needs it. Such copying would be time-consuming +and error-prone. With a header file, the related declarations appear +in only one place. If they need to be changed, they can be changed in one +place, and programs that include the header file will automatically use the +new version when next recompiled. The header file eliminates the labor of +finding and changing all the copies as well as the risk that a failure to +find one copy will result in inconsistencies within a program. + +In C, the usual convention is to give header files names that end with `.h'. +It is most portable to use only letters, digits, dashes, and underscores in +header file names, and at most one dot. + +Read more about using header files in official GCC documentation: + +* Include Syntax +* Include Operation +* Once-Only Headers +* Computed Includes + +https://gcc.gnu.org/onlinedocs/cpp/Header-Files.html diff --git a/lib/MD_MAX72XX/.gitignore b/lib/MD_MAX72XX/.gitignore new file mode 100644 index 0000000..b860150 --- /dev/null +++ b/lib/MD_MAX72XX/.gitignore @@ -0,0 +1,73 @@ +#OS junk files +[Tt]humbs.db +*.DS_Store +#.gitignore + +#dOxygen project documentation and related files +#[Dd]oc/html/ +#[Mm]edia/photo/ +[Mm]edia/music/ +[Mm]edia/video/ + +#Stuff +*.zip + +#Visual Studio files +*.sln +*.vcxproj +*.filters +*.vsarduino.h +*.[Oo]bj +*.user +*.aps +*.pch +*.vspscc +*.vssscc +*_i.c +*_p.c +*.ncb +*.suo +*.tlb +*.tlh +*.bak +*.[Cc]ache +*.ilk +*.log +*.lib +*.sbr +*.sdf +*.opensdf +*.unsuccessfulbuild +*.vmps.xml +ipch/ +[Oo]bj/ +[Bb]in +[Dd]ebug*/ +[Rr]elease*/ +Ankh.NoLoad +.vs/ + +#Video files +*.mov +*.mp3 +*.mp4 +*.wlmp + +#Pelles C files +*.ppj +*.tag +*.ppx + +#Additional Atmel Studio files +*.atsln +*.atsuo +*.cppproj + +#Project files +[Bb]uild/ + +# Office Temp Files +~$* + +# visual studio database projects +*.dbmdl diff --git a/lib/MD_MAX72XX/Doxyfile.dox b/lib/MD_MAX72XX/Doxyfile.dox new file mode 100644 index 0000000..b233902 --- /dev/null +++ b/lib/MD_MAX72XX/Doxyfile.dox @@ -0,0 +1,2846 @@ +# Doxyfile 1.9.8 + +# This file describes the settings to be used by the documentation system +# doxygen (www.doxygen.org) for a project. +# +# All text after a double hash (##) is considered a comment and is placed in +# front of the TAG it is preceding. +# +# All text after a single hash (#) is considered a comment and will be ignored. +# The format is: +# TAG = value [value, ...] +# For lists, items can also be appended using: +# TAG += value [value, ...] +# Values that contain spaces should be placed between quotes (\" \"). +# +# Note: +# +# Use doxygen to compare the used configuration file with the template +# configuration file: +# doxygen -x [configFile] +# Use doxygen to compare the used configuration file with the template +# configuration file without replacing the environment variables or CMake type +# replacement variables: +# doxygen -x_noenv [configFile] + +#--------------------------------------------------------------------------- +# Project related configuration options +#--------------------------------------------------------------------------- + +# This tag specifies the encoding used for all characters in the configuration +# file that follow. The default is UTF-8 which is also the encoding used for all +# text before the first occurrence of this tag. Doxygen uses libiconv (or the +# iconv built into libc) for the transcoding. See +# https://www.gnu.org/software/libiconv/ for the list of possible encodings. +# The default value is: UTF-8. + +DOXYFILE_ENCODING = UTF-8 + +# The PROJECT_NAME tag is a single word (or a sequence of words surrounded by +# double-quotes, unless you are using Doxywizard) that should identify the +# project for which the documentation is generated. This name is used in the +# title of most generated pages and in a few other places. +# The default value is: My Project. + +PROJECT_NAME = "MD_MAX72xx LED Matrix Arduino Library" + +# The PROJECT_NUMBER tag can be used to enter a project or revision number. This +# could be handy for archiving the generated documentation or if some version +# control system is used. + +PROJECT_NUMBER = 3.5 + +# Using the PROJECT_BRIEF tag one can provide an optional one line description +# for a project that appears at the top of each page and should give viewer a +# quick idea about the purpose of the project. Keep the description short. + +PROJECT_BRIEF = "Library to control connected MAX72XX devices as a pixel array" + +# With the PROJECT_LOGO tag one can specify a logo or an icon that is included +# in the documentation. The maximum height of the logo should not exceed 55 +# pixels and the maximum width should not exceed 200 pixels. Doxygen will copy +# the logo to the output directory. + +PROJECT_LOGO = C:/Users/Marco/Documents/Programming/Arduino/Sketchbook/libraries/MD_MAX72xx/media/photo/MajicDesigns_Logo.png + +# The OUTPUT_DIRECTORY tag is used to specify the (relative or absolute) path +# into which the generated documentation will be written. If a relative path is +# entered, it will be relative to the location where doxygen was started. If +# left blank the current directory will be used. + +OUTPUT_DIRECTORY = docs + +# If the CREATE_SUBDIRS tag is set to YES then doxygen will create up to 4096 +# sub-directories (in 2 levels) under the output directory of each output format +# and will distribute the generated files over these directories. Enabling this +# option can be useful when feeding doxygen a huge amount of source files, where +# putting all generated files in the same directory would otherwise causes +# performance problems for the file system. Adapt CREATE_SUBDIRS_LEVEL to +# control the number of sub-directories. +# The default value is: NO. + +CREATE_SUBDIRS = NO + +# Controls the number of sub-directories that will be created when +# CREATE_SUBDIRS tag is set to YES. Level 0 represents 16 directories, and every +# level increment doubles the number of directories, resulting in 4096 +# directories at level 8 which is the default and also the maximum value. The +# sub-directories are organized in 2 levels, the first level always has a fixed +# number of 16 directories. +# Minimum value: 0, maximum value: 8, default value: 8. +# This tag requires that the tag CREATE_SUBDIRS is set to YES. + +CREATE_SUBDIRS_LEVEL = 8 + +# If the ALLOW_UNICODE_NAMES tag is set to YES, doxygen will allow non-ASCII +# characters to appear in the names of generated files. If set to NO, non-ASCII +# characters will be escaped, for example _xE3_x81_x84 will be used for Unicode +# U+3044. +# The default value is: NO. + +ALLOW_UNICODE_NAMES = NO + +# The OUTPUT_LANGUAGE tag is used to specify the language in which all +# documentation generated by doxygen is written. Doxygen will use this +# information to generate all constant output in the proper language. +# Possible values are: Afrikaans, Arabic, Armenian, Brazilian, Bulgarian, +# Catalan, Chinese, Chinese-Traditional, Croatian, Czech, Danish, Dutch, English +# (United States), Esperanto, Farsi (Persian), Finnish, French, German, Greek, +# Hindi, Hungarian, Indonesian, Italian, Japanese, Japanese-en (Japanese with +# English messages), Korean, Korean-en (Korean with English messages), Latvian, +# Lithuanian, Macedonian, Norwegian, Persian (Farsi), Polish, Portuguese, +# Romanian, Russian, Serbian, Serbian-Cyrillic, Slovak, Slovene, Spanish, +# Swedish, Turkish, Ukrainian and Vietnamese. +# The default value is: English. + +OUTPUT_LANGUAGE = English + +# If the BRIEF_MEMBER_DESC tag is set to YES, doxygen will include brief member +# descriptions after the members that are listed in the file and class +# documentation (similar to Javadoc). Set to NO to disable this. +# The default value is: YES. + +BRIEF_MEMBER_DESC = YES + +# If the REPEAT_BRIEF tag is set to YES, doxygen will prepend the brief +# description of a member or function before the detailed description +# +# Note: If both HIDE_UNDOC_MEMBERS and BRIEF_MEMBER_DESC are set to NO, the +# brief descriptions will be completely suppressed. +# The default value is: YES. + +REPEAT_BRIEF = YES + +# This tag implements a quasi-intelligent brief description abbreviator that is +# used to form the text in various listings. Each string in this list, if found +# as the leading text of the brief description, will be stripped from the text +# and the result, after processing the whole list, is used as the annotated +# text. Otherwise, the brief description is used as-is. If left blank, the +# following values are used ($name is automatically replaced with the name of +# the entity):The $name class, The $name widget, The $name file, is, provides, +# specifies, contains, represents, a, an and the. + +ABBREVIATE_BRIEF = "The $name class" \ + "The $name widget" \ + "The $name file" \ + is \ + provides \ + specifies \ + contains \ + represents \ + a \ + an \ + the + +# If the ALWAYS_DETAILED_SEC and REPEAT_BRIEF tags are both set to YES then +# doxygen will generate a detailed section even if there is only a brief +# description. +# The default value is: NO. + +ALWAYS_DETAILED_SEC = NO + +# If the INLINE_INHERITED_MEMB tag is set to YES, doxygen will show all +# inherited members of a class in the documentation of that class as if those +# members were ordinary class members. Constructors, destructors and assignment +# operators of the base classes will not be shown. +# The default value is: NO. + +INLINE_INHERITED_MEMB = NO + +# If the FULL_PATH_NAMES tag is set to YES, doxygen will prepend the full path +# before files name in the file list and in the header files. If set to NO the +# shortest path that makes the file name unique will be used +# The default value is: YES. + +FULL_PATH_NAMES = YES + +# The STRIP_FROM_PATH tag can be used to strip a user-defined part of the path. +# Stripping is only done if one of the specified strings matches the left-hand +# part of the path. The tag can be used to show relative paths in the file list. +# If left blank the directory from which doxygen is run is used as the path to +# strip. +# +# Note that you can specify absolute paths here, but also relative paths, which +# will be relative from the directory where doxygen is started. +# This tag requires that the tag FULL_PATH_NAMES is set to YES. + +STRIP_FROM_PATH = + +# The STRIP_FROM_INC_PATH tag can be used to strip a user-defined part of the +# path mentioned in the documentation of a class, which tells the reader which +# header file to include in order to use a class. If left blank only the name of +# the header file containing the class definition is used. Otherwise one should +# specify the list of include paths that are normally passed to the compiler +# using the -I flag. + +STRIP_FROM_INC_PATH = + +# If the SHORT_NAMES tag is set to YES, doxygen will generate much shorter (but +# less readable) file names. This can be useful is your file systems doesn't +# support long names like on DOS, Mac, or CD-ROM. +# The default value is: NO. + +SHORT_NAMES = NO + +# If the JAVADOC_AUTOBRIEF tag is set to YES then doxygen will interpret the +# first line (until the first dot) of a Javadoc-style comment as the brief +# description. If set to NO, the Javadoc-style will behave just like regular Qt- +# style comments (thus requiring an explicit @brief command for a brief +# description.) +# The default value is: NO. + +JAVADOC_AUTOBRIEF = NO + +# If the JAVADOC_BANNER tag is set to YES then doxygen will interpret a line +# such as +# /*************** +# as being the beginning of a Javadoc-style comment "banner". If set to NO, the +# Javadoc-style will behave just like regular comments and it will not be +# interpreted by doxygen. +# The default value is: NO. + +JAVADOC_BANNER = NO + +# If the QT_AUTOBRIEF tag is set to YES then doxygen will interpret the first +# line (until the first dot) of a Qt-style comment as the brief description. If +# set to NO, the Qt-style will behave just like regular Qt-style comments (thus +# requiring an explicit \brief command for a brief description.) +# The default value is: NO. + +QT_AUTOBRIEF = NO + +# The MULTILINE_CPP_IS_BRIEF tag can be set to YES to make doxygen treat a +# multi-line C++ special comment block (i.e. a block of //! or /// comments) as +# a brief description. This used to be the default behavior. The new default is +# to treat a multi-line C++ comment block as a detailed description. Set this +# tag to YES if you prefer the old behavior instead. +# +# Note that setting this tag to YES also means that rational rose comments are +# not recognized any more. +# The default value is: NO. + +MULTILINE_CPP_IS_BRIEF = NO + +# By default Python docstrings are displayed as preformatted text and doxygen's +# special commands cannot be used. By setting PYTHON_DOCSTRING to NO the +# doxygen's special commands can be used and the contents of the docstring +# documentation blocks is shown as doxygen documentation. +# The default value is: YES. + +PYTHON_DOCSTRING = YES + +# If the INHERIT_DOCS tag is set to YES then an undocumented member inherits the +# documentation from any documented member that it re-implements. +# The default value is: YES. + +INHERIT_DOCS = YES + +# If the SEPARATE_MEMBER_PAGES tag is set to YES then doxygen will produce a new +# page for each member. If set to NO, the documentation of a member will be part +# of the file/class/namespace that contains it. +# The default value is: NO. + +SEPARATE_MEMBER_PAGES = NO + +# The TAB_SIZE tag can be used to set the number of spaces in a tab. Doxygen +# uses this value to replace tabs by spaces in code fragments. +# Minimum value: 1, maximum value: 16, default value: 4. + +TAB_SIZE = 2 + +# This tag can be used to specify a number of aliases that act as commands in +# the documentation. An alias has the form: +# name=value +# For example adding +# "sideeffect=@par Side Effects:^^" +# will allow you to put the command \sideeffect (or @sideeffect) in the +# documentation, which will result in a user-defined paragraph with heading +# "Side Effects:". Note that you cannot put \n's in the value part of an alias +# to insert newlines (in the resulting output). You can put ^^ in the value part +# of an alias to insert a newline as if a physical newline was in the original +# file. When you need a literal { or } or , in the value part of an alias you +# have to escape them by means of a backslash (\), this can lead to conflicts +# with the commands \{ and \} for these it is advised to use the version @{ and +# @} or use a double escape (\\{ and \\}) + +ALIASES = + +# Set the OPTIMIZE_OUTPUT_FOR_C tag to YES if your project consists of C sources +# only. Doxygen will then generate output that is more tailored for C. For +# instance, some of the names that are used will be different. The list of all +# members will be omitted, etc. +# The default value is: NO. + +OPTIMIZE_OUTPUT_FOR_C = NO + +# Set the OPTIMIZE_OUTPUT_JAVA tag to YES if your project consists of Java or +# Python sources only. Doxygen will then generate output that is more tailored +# for that language. For instance, namespaces will be presented as packages, +# qualified scopes will look different, etc. +# The default value is: NO. + +OPTIMIZE_OUTPUT_JAVA = NO + +# Set the OPTIMIZE_FOR_FORTRAN tag to YES if your project consists of Fortran +# sources. Doxygen will then generate output that is tailored for Fortran. +# The default value is: NO. + +OPTIMIZE_FOR_FORTRAN = NO + +# Set the OPTIMIZE_OUTPUT_VHDL tag to YES if your project consists of VHDL +# sources. Doxygen will then generate output that is tailored for VHDL. +# The default value is: NO. + +OPTIMIZE_OUTPUT_VHDL = NO + +# Set the OPTIMIZE_OUTPUT_SLICE tag to YES if your project consists of Slice +# sources only. Doxygen will then generate output that is more tailored for that +# language. For instance, namespaces will be presented as modules, types will be +# separated into more groups, etc. +# The default value is: NO. + +OPTIMIZE_OUTPUT_SLICE = NO + +# Doxygen selects the parser to use depending on the extension of the files it +# parses. With this tag you can assign which parser to use for a given +# extension. Doxygen has a built-in mapping, but you can override or extend it +# using this tag. The format is ext=language, where ext is a file extension, and +# language is one of the parsers supported by doxygen: IDL, Java, JavaScript, +# Csharp (C#), C, C++, Lex, D, PHP, md (Markdown), Objective-C, Python, Slice, +# VHDL, Fortran (fixed format Fortran: FortranFixed, free formatted Fortran: +# FortranFree, unknown formatted Fortran: Fortran. In the later case the parser +# tries to guess whether the code is fixed or free formatted code, this is the +# default for Fortran type files). For instance to make doxygen treat .inc files +# as Fortran files (default is PHP), and .f files as C (default is Fortran), +# use: inc=Fortran f=C. +# +# Note: For files without extension you can use no_extension as a placeholder. +# +# Note that for custom extensions you also need to set FILE_PATTERNS otherwise +# the files are not read by doxygen. When specifying no_extension you should add +# * to the FILE_PATTERNS. +# +# Note see also the list of default file extension mappings. + +EXTENSION_MAPPING = + +# If the MARKDOWN_SUPPORT tag is enabled then doxygen pre-processes all comments +# according to the Markdown format, which allows for more readable +# documentation. See https://daringfireball.net/projects/markdown/ for details. +# The output of markdown processing is further processed by doxygen, so you can +# mix doxygen, HTML, and XML commands with Markdown formatting. Disable only in +# case of backward compatibilities issues. +# The default value is: YES. + +MARKDOWN_SUPPORT = YES + +# When the TOC_INCLUDE_HEADINGS tag is set to a non-zero value, all headings up +# to that level are automatically included in the table of contents, even if +# they do not have an id attribute. +# Note: This feature currently applies only to Markdown headings. +# Minimum value: 0, maximum value: 99, default value: 5. +# This tag requires that the tag MARKDOWN_SUPPORT is set to YES. + +TOC_INCLUDE_HEADINGS = 0 + +# The MARKDOWN_ID_STYLE tag can be used to specify the algorithm used to +# generate identifiers for the Markdown headings. Note: Every identifier is +# unique. +# Possible values are: DOXYGEN use a fixed 'autotoc_md' string followed by a +# sequence number starting at 0 and GITHUB use the lower case version of title +# with any whitespace replaced by '-' and punctuation characters removed. +# The default value is: DOXYGEN. +# This tag requires that the tag MARKDOWN_SUPPORT is set to YES. + +MARKDOWN_ID_STYLE = DOXYGEN + +# When enabled doxygen tries to link words that correspond to documented +# classes, or namespaces to their corresponding documentation. Such a link can +# be prevented in individual cases by putting a % sign in front of the word or +# globally by setting AUTOLINK_SUPPORT to NO. +# The default value is: YES. + +AUTOLINK_SUPPORT = YES + +# If you use STL classes (i.e. std::string, std::vector, etc.) but do not want +# to include (a tag file for) the STL sources as input, then you should set this +# tag to YES in order to let doxygen match functions declarations and +# definitions whose arguments contain STL classes (e.g. func(std::string); +# versus func(std::string) {}). This also make the inheritance and collaboration +# diagrams that involve STL classes more complete and accurate. +# The default value is: NO. + +BUILTIN_STL_SUPPORT = NO + +# If you use Microsoft's C++/CLI language, you should set this option to YES to +# enable parsing support. +# The default value is: NO. + +CPP_CLI_SUPPORT = NO + +# Set the SIP_SUPPORT tag to YES if your project consists of sip (see: +# https://www.riverbankcomputing.com/software/sip/intro) sources only. Doxygen +# will parse them like normal C++ but will assume all classes use public instead +# of private inheritance when no explicit protection keyword is present. +# The default value is: NO. + +SIP_SUPPORT = NO + +# For Microsoft's IDL there are propget and propput attributes to indicate +# getter and setter methods for a property. Setting this option to YES will make +# doxygen to replace the get and set methods by a property in the documentation. +# This will only work if the methods are indeed getting or setting a simple +# type. If this is not the case, or you want to show the methods anyway, you +# should set this option to NO. +# The default value is: YES. + +IDL_PROPERTY_SUPPORT = YES + +# If member grouping is used in the documentation and the DISTRIBUTE_GROUP_DOC +# tag is set to YES then doxygen will reuse the documentation of the first +# member in the group (if any) for the other members of the group. By default +# all members of a group must be documented explicitly. +# The default value is: NO. + +DISTRIBUTE_GROUP_DOC = NO + +# If one adds a struct or class to a group and this option is enabled, then also +# any nested class or struct is added to the same group. By default this option +# is disabled and one has to add nested compounds explicitly via \ingroup. +# The default value is: NO. + +GROUP_NESTED_COMPOUNDS = NO + +# Set the SUBGROUPING tag to YES to allow class member groups of the same type +# (for instance a group of public functions) to be put as a subgroup of that +# type (e.g. under the Public Functions section). Set it to NO to prevent +# subgrouping. Alternatively, this can be done per class using the +# \nosubgrouping command. +# The default value is: YES. + +SUBGROUPING = YES + +# When the INLINE_GROUPED_CLASSES tag is set to YES, classes, structs and unions +# are shown inside the group in which they are included (e.g. using \ingroup) +# instead of on a separate page (for HTML and Man pages) or section (for LaTeX +# and RTF). +# +# Note that this feature does not work in combination with +# SEPARATE_MEMBER_PAGES. +# The default value is: NO. + +INLINE_GROUPED_CLASSES = NO + +# When the INLINE_SIMPLE_STRUCTS tag is set to YES, structs, classes, and unions +# with only public data fields or simple typedef fields will be shown inline in +# the documentation of the scope in which they are defined (i.e. file, +# namespace, or group documentation), provided this scope is documented. If set +# to NO, structs, classes, and unions are shown on a separate page (for HTML and +# Man pages) or section (for LaTeX and RTF). +# The default value is: NO. + +INLINE_SIMPLE_STRUCTS = NO + +# When TYPEDEF_HIDES_STRUCT tag is enabled, a typedef of a struct, union, or +# enum is documented as struct, union, or enum with the name of the typedef. So +# typedef struct TypeS {} TypeT, will appear in the documentation as a struct +# with name TypeT. When disabled the typedef will appear as a member of a file, +# namespace, or class. And the struct will be named TypeS. This can typically be +# useful for C code in case the coding convention dictates that all compound +# types are typedef'ed and only the typedef is referenced, never the tag name. +# The default value is: NO. + +TYPEDEF_HIDES_STRUCT = NO + +# The size of the symbol lookup cache can be set using LOOKUP_CACHE_SIZE. This +# cache is used to resolve symbols given their name and scope. Since this can be +# an expensive process and often the same symbol appears multiple times in the +# code, doxygen keeps a cache of pre-resolved symbols. If the cache is too small +# doxygen will become slower. If the cache is too large, memory is wasted. The +# cache size is given by this formula: 2^(16+LOOKUP_CACHE_SIZE). The valid range +# is 0..9, the default is 0, corresponding to a cache size of 2^16=65536 +# symbols. At the end of a run doxygen will report the cache usage and suggest +# the optimal cache size from a speed point of view. +# Minimum value: 0, maximum value: 9, default value: 0. + +LOOKUP_CACHE_SIZE = 0 + +# The NUM_PROC_THREADS specifies the number of threads doxygen is allowed to use +# during processing. When set to 0 doxygen will based this on the number of +# cores available in the system. You can set it explicitly to a value larger +# than 0 to get more control over the balance between CPU load and processing +# speed. At this moment only the input processing can be done using multiple +# threads. Since this is still an experimental feature the default is set to 1, +# which effectively disables parallel processing. Please report any issues you +# encounter. Generating dot graphs in parallel is controlled by the +# DOT_NUM_THREADS setting. +# Minimum value: 0, maximum value: 32, default value: 1. + +NUM_PROC_THREADS = 1 + +# If the TIMESTAMP tag is set different from NO then each generated page will +# contain the date or date and time when the page was generated. Setting this to +# NO can help when comparing the output of multiple runs. +# Possible values are: YES, NO, DATETIME and DATE. +# The default value is: NO. + +TIMESTAMP = NO + +#--------------------------------------------------------------------------- +# Build related configuration options +#--------------------------------------------------------------------------- + +# If the EXTRACT_ALL tag is set to YES, doxygen will assume all entities in +# documentation are documented, even if no documentation was available. Private +# class members and static file members will be hidden unless the +# EXTRACT_PRIVATE respectively EXTRACT_STATIC tags are set to YES. +# Note: This will also disable the warnings about undocumented members that are +# normally produced when WARNINGS is set to YES. +# The default value is: NO. + +EXTRACT_ALL = NO + +# If the EXTRACT_PRIVATE tag is set to YES, all private members of a class will +# be included in the documentation. +# The default value is: NO. + +EXTRACT_PRIVATE = NO + +# If the EXTRACT_PRIV_VIRTUAL tag is set to YES, documented private virtual +# methods of a class will be included in the documentation. +# The default value is: NO. + +EXTRACT_PRIV_VIRTUAL = NO + +# If the EXTRACT_PACKAGE tag is set to YES, all members with package or internal +# scope will be included in the documentation. +# The default value is: NO. + +EXTRACT_PACKAGE = NO + +# If the EXTRACT_STATIC tag is set to YES, all static members of a file will be +# included in the documentation. +# The default value is: NO. + +EXTRACT_STATIC = YES + +# If the EXTRACT_LOCAL_CLASSES tag is set to YES, classes (and structs) defined +# locally in source files will be included in the documentation. If set to NO, +# only classes defined in header files are included. Does not have any effect +# for Java sources. +# The default value is: YES. + +EXTRACT_LOCAL_CLASSES = YES + +# This flag is only useful for Objective-C code. If set to YES, local methods, +# which are defined in the implementation section but not in the interface are +# included in the documentation. If set to NO, only methods in the interface are +# included. +# The default value is: NO. + +EXTRACT_LOCAL_METHODS = NO + +# If this flag is set to YES, the members of anonymous namespaces will be +# extracted and appear in the documentation as a namespace called +# 'anonymous_namespace{file}', where file will be replaced with the base name of +# the file that contains the anonymous namespace. By default anonymous namespace +# are hidden. +# The default value is: NO. + +EXTRACT_ANON_NSPACES = NO + +# If this flag is set to YES, the name of an unnamed parameter in a declaration +# will be determined by the corresponding definition. By default unnamed +# parameters remain unnamed in the output. +# The default value is: YES. + +RESOLVE_UNNAMED_PARAMS = YES + +# If the HIDE_UNDOC_MEMBERS tag is set to YES, doxygen will hide all +# undocumented members inside documented classes or files. If set to NO these +# members will be included in the various overviews, but no documentation +# section is generated. This option has no effect if EXTRACT_ALL is enabled. +# The default value is: NO. + +HIDE_UNDOC_MEMBERS = NO + +# If the HIDE_UNDOC_CLASSES tag is set to YES, doxygen will hide all +# undocumented classes that are normally visible in the class hierarchy. If set +# to NO, these classes will be included in the various overviews. This option +# will also hide undocumented C++ concepts if enabled. This option has no effect +# if EXTRACT_ALL is enabled. +# The default value is: NO. + +HIDE_UNDOC_CLASSES = NO + +# If the HIDE_FRIEND_COMPOUNDS tag is set to YES, doxygen will hide all friend +# declarations. If set to NO, these declarations will be included in the +# documentation. +# The default value is: NO. + +HIDE_FRIEND_COMPOUNDS = NO + +# If the HIDE_IN_BODY_DOCS tag is set to YES, doxygen will hide any +# documentation blocks found inside the body of a function. If set to NO, these +# blocks will be appended to the function's detailed documentation block. +# The default value is: NO. + +HIDE_IN_BODY_DOCS = NO + +# The INTERNAL_DOCS tag determines if documentation that is typed after a +# \internal command is included. If the tag is set to NO then the documentation +# will be excluded. Set it to YES to include the internal documentation. +# The default value is: NO. + +INTERNAL_DOCS = NO + +# With the correct setting of option CASE_SENSE_NAMES doxygen will better be +# able to match the capabilities of the underlying filesystem. In case the +# filesystem is case sensitive (i.e. it supports files in the same directory +# whose names only differ in casing), the option must be set to YES to properly +# deal with such files in case they appear in the input. For filesystems that +# are not case sensitive the option should be set to NO to properly deal with +# output files written for symbols that only differ in casing, such as for two +# classes, one named CLASS and the other named Class, and to also support +# references to files without having to specify the exact matching casing. On +# Windows (including Cygwin) and MacOS, users should typically set this option +# to NO, whereas on Linux or other Unix flavors it should typically be set to +# YES. +# Possible values are: SYSTEM, NO and YES. +# The default value is: SYSTEM. + +CASE_SENSE_NAMES = NO + +# If the HIDE_SCOPE_NAMES tag is set to NO then doxygen will show members with +# their full class and namespace scopes in the documentation. If set to YES, the +# scope will be hidden. +# The default value is: NO. + +HIDE_SCOPE_NAMES = NO + +# If the HIDE_COMPOUND_REFERENCE tag is set to NO (default) then doxygen will +# append additional text to a page's title, such as Class Reference. If set to +# YES the compound reference will be hidden. +# The default value is: NO. + +HIDE_COMPOUND_REFERENCE= NO + +# If the SHOW_HEADERFILE tag is set to YES then the documentation for a class +# will show which file needs to be included to use the class. +# The default value is: YES. + +SHOW_HEADERFILE = YES + +# If the SHOW_INCLUDE_FILES tag is set to YES then doxygen will put a list of +# the files that are included by a file in the documentation of that file. +# The default value is: YES. + +SHOW_INCLUDE_FILES = YES + +# If the SHOW_GROUPED_MEMB_INC tag is set to YES then Doxygen will add for each +# grouped member an include statement to the documentation, telling the reader +# which file to include in order to use the member. +# The default value is: NO. + +SHOW_GROUPED_MEMB_INC = NO + +# If the FORCE_LOCAL_INCLUDES tag is set to YES then doxygen will list include +# files with double quotes in the documentation rather than with sharp brackets. +# The default value is: NO. + +FORCE_LOCAL_INCLUDES = NO + +# If the INLINE_INFO tag is set to YES then a tag [inline] is inserted in the +# documentation for inline members. +# The default value is: YES. + +INLINE_INFO = NO + +# If the SORT_MEMBER_DOCS tag is set to YES then doxygen will sort the +# (detailed) documentation of file and class members alphabetically by member +# name. If set to NO, the members will appear in declaration order. +# The default value is: YES. + +SORT_MEMBER_DOCS = YES + +# If the SORT_BRIEF_DOCS tag is set to YES then doxygen will sort the brief +# descriptions of file, namespace and class members alphabetically by member +# name. If set to NO, the members will appear in declaration order. Note that +# this will also influence the order of the classes in the class list. +# The default value is: NO. + +SORT_BRIEF_DOCS = NO + +# If the SORT_MEMBERS_CTORS_1ST tag is set to YES then doxygen will sort the +# (brief and detailed) documentation of class members so that constructors and +# destructors are listed first. If set to NO the constructors will appear in the +# respective orders defined by SORT_BRIEF_DOCS and SORT_MEMBER_DOCS. +# Note: If SORT_BRIEF_DOCS is set to NO this option is ignored for sorting brief +# member documentation. +# Note: If SORT_MEMBER_DOCS is set to NO this option is ignored for sorting +# detailed member documentation. +# The default value is: NO. + +SORT_MEMBERS_CTORS_1ST = YES + +# If the SORT_GROUP_NAMES tag is set to YES then doxygen will sort the hierarchy +# of group names into alphabetical order. If set to NO the group names will +# appear in their defined order. +# The default value is: NO. + +SORT_GROUP_NAMES = NO + +# If the SORT_BY_SCOPE_NAME tag is set to YES, the class list will be sorted by +# fully-qualified names, including namespaces. If set to NO, the class list will +# be sorted only by class name, not including the namespace part. +# Note: This option is not very useful if HIDE_SCOPE_NAMES is set to YES. +# Note: This option applies only to the class list, not to the alphabetical +# list. +# The default value is: NO. + +SORT_BY_SCOPE_NAME = NO + +# If the STRICT_PROTO_MATCHING option is enabled and doxygen fails to do proper +# type resolution of all parameters of a function it will reject a match between +# the prototype and the implementation of a member function even if there is +# only one candidate or it is obvious which candidate to choose by doing a +# simple string match. By disabling STRICT_PROTO_MATCHING doxygen will still +# accept a match between prototype and implementation in such cases. +# The default value is: NO. + +STRICT_PROTO_MATCHING = NO + +# The GENERATE_TODOLIST tag can be used to enable (YES) or disable (NO) the todo +# list. This list is created by putting \todo commands in the documentation. +# The default value is: YES. + +GENERATE_TODOLIST = NO + +# The GENERATE_TESTLIST tag can be used to enable (YES) or disable (NO) the test +# list. This list is created by putting \test commands in the documentation. +# The default value is: YES. + +GENERATE_TESTLIST = NO + +# The GENERATE_BUGLIST tag can be used to enable (YES) or disable (NO) the bug +# list. This list is created by putting \bug commands in the documentation. +# The default value is: YES. + +GENERATE_BUGLIST = NO + +# The GENERATE_DEPRECATEDLIST tag can be used to enable (YES) or disable (NO) +# the deprecated list. This list is created by putting \deprecated commands in +# the documentation. +# The default value is: YES. + +GENERATE_DEPRECATEDLIST= NO + +# The ENABLED_SECTIONS tag can be used to enable conditional documentation +# sections, marked by \if ... \endif and \cond +# ... \endcond blocks. + +ENABLED_SECTIONS = + +# The MAX_INITIALIZER_LINES tag determines the maximum number of lines that the +# initial value of a variable or macro / define can have for it to appear in the +# documentation. If the initializer consists of more lines than specified here +# it will be hidden. Use a value of 0 to hide initializers completely. The +# appearance of the value of individual variables and macros / defines can be +# controlled using \showinitializer or \hideinitializer command in the +# documentation regardless of this setting. +# Minimum value: 0, maximum value: 10000, default value: 30. + +MAX_INITIALIZER_LINES = 30 + +# Set the SHOW_USED_FILES tag to NO to disable the list of files generated at +# the bottom of the documentation of classes and structs. If set to YES, the +# list will mention the files that were used to generate the documentation. +# The default value is: YES. + +SHOW_USED_FILES = YES + +# Set the SHOW_FILES tag to NO to disable the generation of the Files page. This +# will remove the Files entry from the Quick Index and from the Folder Tree View +# (if specified). +# The default value is: YES. + +SHOW_FILES = YES + +# Set the SHOW_NAMESPACES tag to NO to disable the generation of the Namespaces +# page. This will remove the Namespaces entry from the Quick Index and from the +# Folder Tree View (if specified). +# The default value is: YES. + +SHOW_NAMESPACES = YES + +# The FILE_VERSION_FILTER tag can be used to specify a program or script that +# doxygen should invoke to get the current version for each file (typically from +# the version control system). Doxygen will invoke the program by executing (via +# popen()) the command command input-file, where command is the value of the +# FILE_VERSION_FILTER tag, and input-file is the name of an input file provided +# by doxygen. Whatever the program writes to standard output is used as the file +# version. For an example see the documentation. + +FILE_VERSION_FILTER = + +# The LAYOUT_FILE tag can be used to specify a layout file which will be parsed +# by doxygen. The layout file controls the global structure of the generated +# output files in an output format independent way. To create the layout file +# that represents doxygen's defaults, run doxygen with the -l option. You can +# optionally specify a file name after the option, if omitted DoxygenLayout.xml +# will be used as the name of the layout file. See also section "Changing the +# layout of pages" for information. +# +# Note that if you run doxygen from a directory containing a file called +# DoxygenLayout.xml, doxygen will parse it automatically even if the LAYOUT_FILE +# tag is left empty. + +LAYOUT_FILE = + +# The CITE_BIB_FILES tag can be used to specify one or more bib files containing +# the reference definitions. This must be a list of .bib files. The .bib +# extension is automatically appended if omitted. This requires the bibtex tool +# to be installed. See also https://en.wikipedia.org/wiki/BibTeX for more info. +# For LaTeX the style of the bibliography can be controlled using +# LATEX_BIB_STYLE. To use this feature you need bibtex and perl available in the +# search path. See also \cite for info how to create references. + +CITE_BIB_FILES = + +#--------------------------------------------------------------------------- +# Configuration options related to warning and progress messages +#--------------------------------------------------------------------------- + +# The QUIET tag can be used to turn on/off the messages that are generated to +# standard output by doxygen. If QUIET is set to YES this implies that the +# messages are off. +# The default value is: NO. + +QUIET = NO + +# The WARNINGS tag can be used to turn on/off the warning messages that are +# generated to standard error (stderr) by doxygen. If WARNINGS is set to YES +# this implies that the warnings are on. +# +# Tip: Turn warnings on while writing the documentation. +# The default value is: YES. + +WARNINGS = YES + +# If the WARN_IF_UNDOCUMENTED tag is set to YES then doxygen will generate +# warnings for undocumented members. If EXTRACT_ALL is set to YES then this flag +# will automatically be disabled. +# The default value is: YES. + +WARN_IF_UNDOCUMENTED = YES + +# If the WARN_IF_DOC_ERROR tag is set to YES, doxygen will generate warnings for +# potential errors in the documentation, such as documenting some parameters in +# a documented function twice, or documenting parameters that don't exist or +# using markup commands wrongly. +# The default value is: YES. + +WARN_IF_DOC_ERROR = YES + +# If WARN_IF_INCOMPLETE_DOC is set to YES, doxygen will warn about incomplete +# function parameter documentation. If set to NO, doxygen will accept that some +# parameters have no documentation without warning. +# The default value is: YES. + +WARN_IF_INCOMPLETE_DOC = YES + +# This WARN_NO_PARAMDOC option can be enabled to get warnings for functions that +# are documented, but have no documentation for their parameters or return +# value. If set to NO, doxygen will only warn about wrong parameter +# documentation, but not about the absence of documentation. If EXTRACT_ALL is +# set to YES then this flag will automatically be disabled. See also +# WARN_IF_INCOMPLETE_DOC +# The default value is: NO. + +WARN_NO_PARAMDOC = YES + +# If WARN_IF_UNDOC_ENUM_VAL option is set to YES, doxygen will warn about +# undocumented enumeration values. If set to NO, doxygen will accept +# undocumented enumeration values. If EXTRACT_ALL is set to YES then this flag +# will automatically be disabled. +# The default value is: NO. + +WARN_IF_UNDOC_ENUM_VAL = NO + +# If the WARN_AS_ERROR tag is set to YES then doxygen will immediately stop when +# a warning is encountered. If the WARN_AS_ERROR tag is set to FAIL_ON_WARNINGS +# then doxygen will continue running as if WARN_AS_ERROR tag is set to NO, but +# at the end of the doxygen process doxygen will return with a non-zero status. +# If the WARN_AS_ERROR tag is set to FAIL_ON_WARNINGS_PRINT then doxygen behaves +# like FAIL_ON_WARNINGS but in case no WARN_LOGFILE is defined doxygen will not +# write the warning messages in between other messages but write them at the end +# of a run, in case a WARN_LOGFILE is defined the warning messages will be +# besides being in the defined file also be shown at the end of a run, unless +# the WARN_LOGFILE is defined as - i.e. standard output (stdout) in that case +# the behavior will remain as with the setting FAIL_ON_WARNINGS. +# Possible values are: NO, YES, FAIL_ON_WARNINGS and FAIL_ON_WARNINGS_PRINT. +# The default value is: NO. + +WARN_AS_ERROR = NO + +# The WARN_FORMAT tag determines the format of the warning messages that doxygen +# can produce. The string should contain the $file, $line, and $text tags, which +# will be replaced by the file and line number from which the warning originated +# and the warning text. Optionally the format may contain $version, which will +# be replaced by the version of the file (if it could be obtained via +# FILE_VERSION_FILTER) +# See also: WARN_LINE_FORMAT +# The default value is: $file:$line: $text. + +WARN_FORMAT = "$file:$line: $text" + +# In the $text part of the WARN_FORMAT command it is possible that a reference +# to a more specific place is given. To make it easier to jump to this place +# (outside of doxygen) the user can define a custom "cut" / "paste" string. +# Example: +# WARN_LINE_FORMAT = "'vi $file +$line'" +# See also: WARN_FORMAT +# The default value is: at line $line of file $file. + +WARN_LINE_FORMAT = "at line $line of file $file" + +# The WARN_LOGFILE tag can be used to specify a file to which warning and error +# messages should be written. If left blank the output is written to standard +# error (stderr). In case the file specified cannot be opened for writing the +# warning and error messages are written to standard error. When as file - is +# specified the warning and error messages are written to standard output +# (stdout). + +WARN_LOGFILE = + +#--------------------------------------------------------------------------- +# Configuration options related to the input files +#--------------------------------------------------------------------------- + +# The INPUT tag is used to specify the files and/or directories that contain +# documented source files. You may enter file names like myfile.cpp or +# directories like /usr/src/myproject. Separate the files or directories with +# spaces. See also FILE_PATTERNS and EXTENSION_MAPPING +# Note: If this tag is empty the current directory is searched. + +INPUT = src + +# This tag can be used to specify the character encoding of the source files +# that doxygen parses. Internally doxygen uses the UTF-8 encoding. Doxygen uses +# libiconv (or the iconv built into libc) for the transcoding. See the libiconv +# documentation (see: +# https://www.gnu.org/software/libiconv/) for the list of possible encodings. +# See also: INPUT_FILE_ENCODING +# The default value is: UTF-8. + +INPUT_ENCODING = UTF-8 + +# This tag can be used to specify the character encoding of the source files +# that doxygen parses The INPUT_FILE_ENCODING tag can be used to specify +# character encoding on a per file pattern basis. Doxygen will compare the file +# name with each pattern and apply the encoding instead of the default +# INPUT_ENCODING) if there is a match. The character encodings are a list of the +# form: pattern=encoding (like *.php=ISO-8859-1). See cfg_input_encoding +# "INPUT_ENCODING" for further information on supported encodings. + +INPUT_FILE_ENCODING = + +# If the value of the INPUT tag contains directories, you can use the +# FILE_PATTERNS tag to specify one or more wildcard patterns (like *.cpp and +# *.h) to filter out the source-files in the directories. +# +# Note that for custom extensions or not directly supported extensions you also +# need to set EXTENSION_MAPPING for the extension otherwise the files are not +# read by doxygen. +# +# Note the list of default checked file patterns might differ from the list of +# default file extension mappings. +# +# If left blank the following patterns are tested:*.c, *.cc, *.cxx, *.cxxm, +# *.cpp, *.cppm, *.c++, *.c++m, *.java, *.ii, *.ixx, *.ipp, *.i++, *.inl, *.idl, +# *.ddl, *.odl, *.h, *.hh, *.hxx, *.hpp, *.h++, *.ixx, *.l, *.cs, *.d, *.php, +# *.php4, *.php5, *.phtml, *.inc, *.m, *.markdown, *.md, *.mm, *.dox (to be +# provided as doxygen C comment), *.py, *.pyw, *.f90, *.f95, *.f03, *.f08, +# *.f18, *.f, *.for, *.vhd, *.vhdl, *.ucf, *.qsf and *.ice. + +FILE_PATTERNS = *.c \ + *.cc \ + *.cxx \ + *.cpp \ + *.c++ \ + *.d \ + *.java \ + *.ii \ + *.ixx \ + *.ipp \ + *.i++ \ + *.inl \ + *.h \ + *.hh \ + *.hxx \ + *.hpp \ + *.h++ \ + *.idl \ + *.odl \ + *.cs \ + *.php \ + *.php3 \ + *.inc \ + *.m \ + *.markdown \ + *.md \ + *.mm \ + *.dox \ + *.py \ + *.f90 \ + *.f \ + *.for \ + *.vhd \ + *.vhdl + +# The RECURSIVE tag can be used to specify whether or not subdirectories should +# be searched for input files as well. +# The default value is: NO. + +RECURSIVE = NO + +# The EXCLUDE tag can be used to specify files and/or directories that should be +# excluded from the INPUT source files. This way you can easily exclude a +# subdirectory from a directory tree whose root is specified with the INPUT tag. +# +# Note that relative paths are relative to the directory from which doxygen is +# run. + +EXCLUDE = + +# The EXCLUDE_SYMLINKS tag can be used to select whether or not files or +# directories that are symbolic links (a Unix file system feature) are excluded +# from the input. +# The default value is: NO. + +EXCLUDE_SYMLINKS = NO + +# If the value of the INPUT tag contains directories, you can use the +# EXCLUDE_PATTERNS tag to specify one or more wildcard patterns to exclude +# certain files from those directories. +# +# Note that the wildcards are matched against the file with absolute path, so to +# exclude all test directories for example use the pattern */test/* + +EXCLUDE_PATTERNS = + +# The EXCLUDE_SYMBOLS tag can be used to specify one or more symbol names +# (namespaces, classes, functions, etc.) that should be excluded from the +# output. The symbol name can be a fully qualified name, a word, or if the +# wildcard * is used, a substring. Examples: ANamespace, AClass, +# ANamespace::AClass, ANamespace::*Test + +EXCLUDE_SYMBOLS = + +# The EXAMPLE_PATH tag can be used to specify one or more files or directories +# that contain example code fragments that are included (see the \include +# command). + +EXAMPLE_PATH = + +# If the value of the EXAMPLE_PATH tag contains directories, you can use the +# EXAMPLE_PATTERNS tag to specify one or more wildcard pattern (like *.cpp and +# *.h) to filter out the source-files in the directories. If left blank all +# files are included. + +EXAMPLE_PATTERNS = * + +# If the EXAMPLE_RECURSIVE tag is set to YES then subdirectories will be +# searched for input files to be used with the \include or \dontinclude commands +# irrespective of the value of the RECURSIVE tag. +# The default value is: NO. + +EXAMPLE_RECURSIVE = NO + +# The IMAGE_PATH tag can be used to specify one or more files or directories +# that contain images that are to be included in the documentation (see the +# \image command). + +IMAGE_PATH = media/photo + +# The INPUT_FILTER tag can be used to specify a program that doxygen should +# invoke to filter for each input file. Doxygen will invoke the filter program +# by executing (via popen()) the command: +# +# +# +# where is the value of the INPUT_FILTER tag, and is the +# name of an input file. Doxygen will then use the output that the filter +# program writes to standard output. If FILTER_PATTERNS is specified, this tag +# will be ignored. +# +# Note that the filter must not add or remove lines; it is applied before the +# code is scanned, but not when the output code is generated. If lines are added +# or removed, the anchors will not be placed correctly. +# +# Note that doxygen will use the data processed and written to standard output +# for further processing, therefore nothing else, like debug statements or used +# commands (so in case of a Windows batch file always use @echo OFF), should be +# written to standard output. +# +# Note that for custom extensions or not directly supported extensions you also +# need to set EXTENSION_MAPPING for the extension otherwise the files are not +# properly processed by doxygen. + +INPUT_FILTER = + +# The FILTER_PATTERNS tag can be used to specify filters on a per file pattern +# basis. Doxygen will compare the file name with each pattern and apply the +# filter if there is a match. The filters are a list of the form: pattern=filter +# (like *.cpp=my_cpp_filter). See INPUT_FILTER for further information on how +# filters are used. If the FILTER_PATTERNS tag is empty or if none of the +# patterns match the file name, INPUT_FILTER is applied. +# +# Note that for custom extensions or not directly supported extensions you also +# need to set EXTENSION_MAPPING for the extension otherwise the files are not +# properly processed by doxygen. + +FILTER_PATTERNS = + +# If the FILTER_SOURCE_FILES tag is set to YES, the input filter (if set using +# INPUT_FILTER) will also be used to filter the input files that are used for +# producing the source files to browse (i.e. when SOURCE_BROWSER is set to YES). +# The default value is: NO. + +FILTER_SOURCE_FILES = NO + +# The FILTER_SOURCE_PATTERNS tag can be used to specify source filters per file +# pattern. A pattern will override the setting for FILTER_PATTERN (if any) and +# it is also possible to disable source filtering for a specific pattern using +# *.ext= (so without naming a filter). +# This tag requires that the tag FILTER_SOURCE_FILES is set to YES. + +FILTER_SOURCE_PATTERNS = + +# If the USE_MDFILE_AS_MAINPAGE tag refers to the name of a markdown file that +# is part of the input, its contents will be placed on the main page +# (index.html). This can be useful if you have a project on for instance GitHub +# and want to reuse the introduction page also for the doxygen output. + +USE_MDFILE_AS_MAINPAGE = + +# The Fortran standard specifies that for fixed formatted Fortran code all +# characters from position 72 are to be considered as comment. A common +# extension is to allow longer lines before the automatic comment starts. The +# setting FORTRAN_COMMENT_AFTER will also make it possible that longer lines can +# be processed before the automatic comment starts. +# Minimum value: 7, maximum value: 10000, default value: 72. + +FORTRAN_COMMENT_AFTER = 72 + +#--------------------------------------------------------------------------- +# Configuration options related to source browsing +#--------------------------------------------------------------------------- + +# If the SOURCE_BROWSER tag is set to YES then a list of source files will be +# generated. Documented entities will be cross-referenced with these sources. +# +# Note: To get rid of all source code in the generated output, make sure that +# also VERBATIM_HEADERS is set to NO. +# The default value is: NO. + +SOURCE_BROWSER = NO + +# Setting the INLINE_SOURCES tag to YES will include the body of functions, +# classes and enums directly into the documentation. +# The default value is: NO. + +INLINE_SOURCES = NO + +# Setting the STRIP_CODE_COMMENTS tag to YES will instruct doxygen to hide any +# special comment blocks from generated source code fragments. Normal C, C++ and +# Fortran comments will always remain visible. +# The default value is: YES. + +STRIP_CODE_COMMENTS = NO + +# If the REFERENCED_BY_RELATION tag is set to YES then for each documented +# entity all documented functions referencing it will be listed. +# The default value is: NO. + +REFERENCED_BY_RELATION = NO + +# If the REFERENCES_RELATION tag is set to YES then for each documented function +# all documented entities called/used by that function will be listed. +# The default value is: NO. + +REFERENCES_RELATION = NO + +# If the REFERENCES_LINK_SOURCE tag is set to YES and SOURCE_BROWSER tag is set +# to YES then the hyperlinks from functions in REFERENCES_RELATION and +# REFERENCED_BY_RELATION lists will link to the source code. Otherwise they will +# link to the documentation. +# The default value is: YES. + +REFERENCES_LINK_SOURCE = NO + +# If SOURCE_TOOLTIPS is enabled (the default) then hovering a hyperlink in the +# source code will show a tooltip with additional information such as prototype, +# brief description and links to the definition and documentation. Since this +# will make the HTML file larger and loading of large files a bit slower, you +# can opt to disable this feature. +# The default value is: YES. +# This tag requires that the tag SOURCE_BROWSER is set to YES. + +SOURCE_TOOLTIPS = YES + +# If the USE_HTAGS tag is set to YES then the references to source code will +# point to the HTML generated by the htags(1) tool instead of doxygen built-in +# source browser. The htags tool is part of GNU's global source tagging system +# (see https://www.gnu.org/software/global/global.html). You will need version +# 4.8.6 or higher. +# +# To use it do the following: +# - Install the latest version of global +# - Enable SOURCE_BROWSER and USE_HTAGS in the configuration file +# - Make sure the INPUT points to the root of the source tree +# - Run doxygen as normal +# +# Doxygen will invoke htags (and that will in turn invoke gtags), so these +# tools must be available from the command line (i.e. in the search path). +# +# The result: instead of the source browser generated by doxygen, the links to +# source code will now point to the output of htags. +# The default value is: NO. +# This tag requires that the tag SOURCE_BROWSER is set to YES. + +USE_HTAGS = NO + +# If the VERBATIM_HEADERS tag is set the YES then doxygen will generate a +# verbatim copy of the header file for each class for which an include is +# specified. Set to NO to disable this. +# See also: Section \class. +# The default value is: YES. + +VERBATIM_HEADERS = NO + +# If the CLANG_ASSISTED_PARSING tag is set to YES then doxygen will use the +# clang parser (see: +# http://clang.llvm.org/) for more accurate parsing at the cost of reduced +# performance. This can be particularly helpful with template rich C++ code for +# which doxygen's built-in parser lacks the necessary type information. +# Note: The availability of this option depends on whether or not doxygen was +# generated with the -Duse_libclang=ON option for CMake. +# The default value is: NO. + +CLANG_ASSISTED_PARSING = NO + +# If the CLANG_ASSISTED_PARSING tag is set to YES and the CLANG_ADD_INC_PATHS +# tag is set to YES then doxygen will add the directory of each input to the +# include path. +# The default value is: YES. +# This tag requires that the tag CLANG_ASSISTED_PARSING is set to YES. + +CLANG_ADD_INC_PATHS = YES + +# If clang assisted parsing is enabled you can provide the compiler with command +# line options that you would normally use when invoking the compiler. Note that +# the include paths will already be set by doxygen for the files and directories +# specified with INPUT and INCLUDE_PATH. +# This tag requires that the tag CLANG_ASSISTED_PARSING is set to YES. + +CLANG_OPTIONS = + +# If clang assisted parsing is enabled you can provide the clang parser with the +# path to the directory containing a file called compile_commands.json. This +# file is the compilation database (see: +# http://clang.llvm.org/docs/HowToSetupToolingForLLVM.html) containing the +# options used when the source files were built. This is equivalent to +# specifying the -p option to a clang tool, such as clang-check. These options +# will then be passed to the parser. Any options specified with CLANG_OPTIONS +# will be added as well. +# Note: The availability of this option depends on whether or not doxygen was +# generated with the -Duse_libclang=ON option for CMake. + +CLANG_DATABASE_PATH = + +#--------------------------------------------------------------------------- +# Configuration options related to the alphabetical class index +#--------------------------------------------------------------------------- + +# If the ALPHABETICAL_INDEX tag is set to YES, an alphabetical index of all +# compounds will be generated. Enable this if the project contains a lot of +# classes, structs, unions or interfaces. +# The default value is: YES. + +ALPHABETICAL_INDEX = YES + +# The IGNORE_PREFIX tag can be used to specify a prefix (or a list of prefixes) +# that should be ignored while generating the index headers. The IGNORE_PREFIX +# tag works for classes, function and member names. The entity will be placed in +# the alphabetical list under the first letter of the entity name that remains +# after removing the prefix. +# This tag requires that the tag ALPHABETICAL_INDEX is set to YES. + +IGNORE_PREFIX = + +#--------------------------------------------------------------------------- +# Configuration options related to the HTML output +#--------------------------------------------------------------------------- + +# If the GENERATE_HTML tag is set to YES, doxygen will generate HTML output +# The default value is: YES. + +GENERATE_HTML = YES + +# The HTML_OUTPUT tag is used to specify where the HTML docs will be put. If a +# relative path is entered the value of OUTPUT_DIRECTORY will be put in front of +# it. +# The default directory is: html. +# This tag requires that the tag GENERATE_HTML is set to YES. + +HTML_OUTPUT = . + +# The HTML_FILE_EXTENSION tag can be used to specify the file extension for each +# generated HTML page (for example: .htm, .php, .asp). +# The default value is: .html. +# This tag requires that the tag GENERATE_HTML is set to YES. + +HTML_FILE_EXTENSION = .html + +# The HTML_HEADER tag can be used to specify a user-defined HTML header file for +# each generated HTML page. If the tag is left blank doxygen will generate a +# standard header. +# +# To get valid HTML the header file that includes any scripts and style sheets +# that doxygen needs, which is dependent on the configuration options used (e.g. +# the setting GENERATE_TREEVIEW). It is highly recommended to start with a +# default header using +# doxygen -w html new_header.html new_footer.html new_stylesheet.css +# YourConfigFile +# and then modify the file new_header.html. See also section "Doxygen usage" +# for information on how to generate the default header that doxygen normally +# uses. +# Note: The header is subject to change so you typically have to regenerate the +# default header when upgrading to a newer version of doxygen. For a description +# of the possible markers and block names see the documentation. +# This tag requires that the tag GENERATE_HTML is set to YES. + +HTML_HEADER = + +# The HTML_FOOTER tag can be used to specify a user-defined HTML footer for each +# generated HTML page. If the tag is left blank doxygen will generate a standard +# footer. See HTML_HEADER for more information on how to generate a default +# footer and what special commands can be used inside the footer. See also +# section "Doxygen usage" for information on how to generate the default footer +# that doxygen normally uses. +# This tag requires that the tag GENERATE_HTML is set to YES. + +HTML_FOOTER = + +# The HTML_STYLESHEET tag can be used to specify a user-defined cascading style +# sheet that is used by each HTML page. It can be used to fine-tune the look of +# the HTML output. If left blank doxygen will generate a default style sheet. +# See also section "Doxygen usage" for information on how to generate the style +# sheet that doxygen normally uses. +# Note: It is recommended to use HTML_EXTRA_STYLESHEET instead of this tag, as +# it is more robust and this tag (HTML_STYLESHEET) will in the future become +# obsolete. +# This tag requires that the tag GENERATE_HTML is set to YES. + +HTML_STYLESHEET = + +# The HTML_EXTRA_STYLESHEET tag can be used to specify additional user-defined +# cascading style sheets that are included after the standard style sheets +# created by doxygen. Using this option one can overrule certain style aspects. +# This is preferred over using HTML_STYLESHEET since it does not replace the +# standard style sheet and is therefore more robust against future updates. +# Doxygen will copy the style sheet files to the output directory. +# Note: The order of the extra style sheet files is of importance (e.g. the last +# style sheet in the list overrules the setting of the previous ones in the +# list). +# Note: Since the styling of scrollbars can currently not be overruled in +# Webkit/Chromium, the styling will be left out of the default doxygen.css if +# one or more extra stylesheets have been specified. So if scrollbar +# customization is desired it has to be added explicitly. For an example see the +# documentation. +# This tag requires that the tag GENERATE_HTML is set to YES. + +HTML_EXTRA_STYLESHEET = + +# The HTML_EXTRA_FILES tag can be used to specify one or more extra images or +# other source files which should be copied to the HTML output directory. Note +# that these files will be copied to the base HTML output directory. Use the +# $relpath^ marker in the HTML_HEADER and/or HTML_FOOTER files to load these +# files. In the HTML_STYLESHEET file, use the file name only. Also note that the +# files will be copied as-is; there are no commands or markers available. +# This tag requires that the tag GENERATE_HTML is set to YES. + +HTML_EXTRA_FILES = + +# The HTML_COLORSTYLE tag can be used to specify if the generated HTML output +# should be rendered with a dark or light theme. +# Possible values are: LIGHT always generate light mode output, DARK always +# generate dark mode output, AUTO_LIGHT automatically set the mode according to +# the user preference, use light mode if no preference is set (the default), +# AUTO_DARK automatically set the mode according to the user preference, use +# dark mode if no preference is set and TOGGLE allow to user to switch between +# light and dark mode via a button. +# The default value is: AUTO_LIGHT. +# This tag requires that the tag GENERATE_HTML is set to YES. + +HTML_COLORSTYLE = AUTO_LIGHT + +# The HTML_COLORSTYLE_HUE tag controls the color of the HTML output. Doxygen +# will adjust the colors in the style sheet and background images according to +# this color. Hue is specified as an angle on a color-wheel, see +# https://en.wikipedia.org/wiki/Hue for more information. For instance the value +# 0 represents red, 60 is yellow, 120 is green, 180 is cyan, 240 is blue, 300 +# purple, and 360 is red again. +# Minimum value: 0, maximum value: 359, default value: 220. +# This tag requires that the tag GENERATE_HTML is set to YES. + +HTML_COLORSTYLE_HUE = 220 + +# The HTML_COLORSTYLE_SAT tag controls the purity (or saturation) of the colors +# in the HTML output. For a value of 0 the output will use gray-scales only. A +# value of 255 will produce the most vivid colors. +# Minimum value: 0, maximum value: 255, default value: 100. +# This tag requires that the tag GENERATE_HTML is set to YES. + +HTML_COLORSTYLE_SAT = 100 + +# The HTML_COLORSTYLE_GAMMA tag controls the gamma correction applied to the +# luminance component of the colors in the HTML output. Values below 100 +# gradually make the output lighter, whereas values above 100 make the output +# darker. The value divided by 100 is the actual gamma applied, so 80 represents +# a gamma of 0.8, The value 220 represents a gamma of 2.2, and 100 does not +# change the gamma. +# Minimum value: 40, maximum value: 240, default value: 80. +# This tag requires that the tag GENERATE_HTML is set to YES. + +HTML_COLORSTYLE_GAMMA = 80 + +# If the HTML_DYNAMIC_MENUS tag is set to YES then the generated HTML +# documentation will contain a main index with vertical navigation menus that +# are dynamically created via JavaScript. If disabled, the navigation index will +# consists of multiple levels of tabs that are statically embedded in every HTML +# page. Disable this option to support browsers that do not have JavaScript, +# like the Qt help browser. +# The default value is: YES. +# This tag requires that the tag GENERATE_HTML is set to YES. + +HTML_DYNAMIC_MENUS = YES + +# If the HTML_DYNAMIC_SECTIONS tag is set to YES then the generated HTML +# documentation will contain sections that can be hidden and shown after the +# page has loaded. +# The default value is: NO. +# This tag requires that the tag GENERATE_HTML is set to YES. + +HTML_DYNAMIC_SECTIONS = YES + +# If the HTML_CODE_FOLDING tag is set to YES then classes and functions can be +# dynamically folded and expanded in the generated HTML source code. +# The default value is: YES. +# This tag requires that the tag GENERATE_HTML is set to YES. + +HTML_CODE_FOLDING = YES + +# With HTML_INDEX_NUM_ENTRIES one can control the preferred number of entries +# shown in the various tree structured indices initially; the user can expand +# and collapse entries dynamically later on. Doxygen will expand the tree to +# such a level that at most the specified number of entries are visible (unless +# a fully collapsed tree already exceeds this amount). So setting the number of +# entries 1 will produce a full collapsed tree by default. 0 is a special value +# representing an infinite number of entries and will result in a full expanded +# tree by default. +# Minimum value: 0, maximum value: 9999, default value: 100. +# This tag requires that the tag GENERATE_HTML is set to YES. + +HTML_INDEX_NUM_ENTRIES = 100 + +# If the GENERATE_DOCSET tag is set to YES, additional index files will be +# generated that can be used as input for Apple's Xcode 3 integrated development +# environment (see: +# https://developer.apple.com/xcode/), introduced with OSX 10.5 (Leopard). To +# create a documentation set, doxygen will generate a Makefile in the HTML +# output directory. Running make will produce the docset in that directory and +# running make install will install the docset in +# ~/Library/Developer/Shared/Documentation/DocSets so that Xcode will find it at +# startup. See https://developer.apple.com/library/archive/featuredarticles/Doxy +# genXcode/_index.html for more information. +# The default value is: NO. +# This tag requires that the tag GENERATE_HTML is set to YES. + +GENERATE_DOCSET = NO + +# This tag determines the name of the docset feed. A documentation feed provides +# an umbrella under which multiple documentation sets from a single provider +# (such as a company or product suite) can be grouped. +# The default value is: Doxygen generated docs. +# This tag requires that the tag GENERATE_DOCSET is set to YES. + +DOCSET_FEEDNAME = "Doxygen generated docs" + +# This tag determines the URL of the docset feed. A documentation feed provides +# an umbrella under which multiple documentation sets from a single provider +# (such as a company or product suite) can be grouped. +# This tag requires that the tag GENERATE_DOCSET is set to YES. + +DOCSET_FEEDURL = + +# This tag specifies a string that should uniquely identify the documentation +# set bundle. This should be a reverse domain-name style string, e.g. +# com.mycompany.MyDocSet. Doxygen will append .docset to the name. +# The default value is: org.doxygen.Project. +# This tag requires that the tag GENERATE_DOCSET is set to YES. + +DOCSET_BUNDLE_ID = org.doxygen.Project + +# The DOCSET_PUBLISHER_ID tag specifies a string that should uniquely identify +# the documentation publisher. This should be a reverse domain-name style +# string, e.g. com.mycompany.MyDocSet.documentation. +# The default value is: org.doxygen.Publisher. +# This tag requires that the tag GENERATE_DOCSET is set to YES. + +DOCSET_PUBLISHER_ID = org.doxygen.Publisher + +# The DOCSET_PUBLISHER_NAME tag identifies the documentation publisher. +# The default value is: Publisher. +# This tag requires that the tag GENERATE_DOCSET is set to YES. + +DOCSET_PUBLISHER_NAME = Publisher + +# If the GENERATE_HTMLHELP tag is set to YES then doxygen generates three +# additional HTML index files: index.hhp, index.hhc, and index.hhk. The +# index.hhp is a project file that can be read by Microsoft's HTML Help Workshop +# on Windows. In the beginning of 2021 Microsoft took the original page, with +# a.o. the download links, offline the HTML help workshop was already many years +# in maintenance mode). You can download the HTML help workshop from the web +# archives at Installation executable (see: +# http://web.archive.org/web/20160201063255/http://download.microsoft.com/downlo +# ad/0/A/9/0A939EF6-E31C-430F-A3DF-DFAE7960D564/htmlhelp.exe). +# +# The HTML Help Workshop contains a compiler that can convert all HTML output +# generated by doxygen into a single compiled HTML file (.chm). Compiled HTML +# files are now used as the Windows 98 help format, and will replace the old +# Windows help format (.hlp) on all Windows platforms in the future. Compressed +# HTML files also contain an index, a table of contents, and you can search for +# words in the documentation. The HTML workshop also contains a viewer for +# compressed HTML files. +# The default value is: NO. +# This tag requires that the tag GENERATE_HTML is set to YES. + +GENERATE_HTMLHELP = NO + +# The CHM_FILE tag can be used to specify the file name of the resulting .chm +# file. You can add a path in front of the file if the result should not be +# written to the html output directory. +# This tag requires that the tag GENERATE_HTMLHELP is set to YES. + +CHM_FILE = + +# The HHC_LOCATION tag can be used to specify the location (absolute path +# including file name) of the HTML help compiler (hhc.exe). If non-empty, +# doxygen will try to run the HTML help compiler on the generated index.hhp. +# The file has to be specified with full path. +# This tag requires that the tag GENERATE_HTMLHELP is set to YES. + +HHC_LOCATION = + +# The GENERATE_CHI flag controls if a separate .chi index file is generated +# (YES) or that it should be included in the main .chm file (NO). +# The default value is: NO. +# This tag requires that the tag GENERATE_HTMLHELP is set to YES. + +GENERATE_CHI = NO + +# The CHM_INDEX_ENCODING is used to encode HtmlHelp index (hhk), content (hhc) +# and project file content. +# This tag requires that the tag GENERATE_HTMLHELP is set to YES. + +CHM_INDEX_ENCODING = + +# The BINARY_TOC flag controls whether a binary table of contents is generated +# (YES) or a normal table of contents (NO) in the .chm file. Furthermore it +# enables the Previous and Next buttons. +# The default value is: NO. +# This tag requires that the tag GENERATE_HTMLHELP is set to YES. + +BINARY_TOC = NO + +# The TOC_EXPAND flag can be set to YES to add extra items for group members to +# the table of contents of the HTML help documentation and to the tree view. +# The default value is: NO. +# This tag requires that the tag GENERATE_HTMLHELP is set to YES. + +TOC_EXPAND = NO + +# The SITEMAP_URL tag is used to specify the full URL of the place where the +# generated documentation will be placed on the server by the user during the +# deployment of the documentation. The generated sitemap is called sitemap.xml +# and placed on the directory specified by HTML_OUTPUT. In case no SITEMAP_URL +# is specified no sitemap is generated. For information about the sitemap +# protocol see https://www.sitemaps.org +# This tag requires that the tag GENERATE_HTML is set to YES. + +SITEMAP_URL = + +# If the GENERATE_QHP tag is set to YES and both QHP_NAMESPACE and +# QHP_VIRTUAL_FOLDER are set, an additional index file will be generated that +# can be used as input for Qt's qhelpgenerator to generate a Qt Compressed Help +# (.qch) of the generated HTML documentation. +# The default value is: NO. +# This tag requires that the tag GENERATE_HTML is set to YES. + +GENERATE_QHP = NO + +# If the QHG_LOCATION tag is specified, the QCH_FILE tag can be used to specify +# the file name of the resulting .qch file. The path specified is relative to +# the HTML output folder. +# This tag requires that the tag GENERATE_QHP is set to YES. + +QCH_FILE = + +# The QHP_NAMESPACE tag specifies the namespace to use when generating Qt Help +# Project output. For more information please see Qt Help Project / Namespace +# (see: +# https://doc.qt.io/archives/qt-4.8/qthelpproject.html#namespace). +# The default value is: org.doxygen.Project. +# This tag requires that the tag GENERATE_QHP is set to YES. + +QHP_NAMESPACE = org.doxygen.Project + +# The QHP_VIRTUAL_FOLDER tag specifies the namespace to use when generating Qt +# Help Project output. For more information please see Qt Help Project / Virtual +# Folders (see: +# https://doc.qt.io/archives/qt-4.8/qthelpproject.html#virtual-folders). +# The default value is: doc. +# This tag requires that the tag GENERATE_QHP is set to YES. + +QHP_VIRTUAL_FOLDER = doc + +# If the QHP_CUST_FILTER_NAME tag is set, it specifies the name of a custom +# filter to add. For more information please see Qt Help Project / Custom +# Filters (see: +# https://doc.qt.io/archives/qt-4.8/qthelpproject.html#custom-filters). +# This tag requires that the tag GENERATE_QHP is set to YES. + +QHP_CUST_FILTER_NAME = + +# The QHP_CUST_FILTER_ATTRS tag specifies the list of the attributes of the +# custom filter to add. For more information please see Qt Help Project / Custom +# Filters (see: +# https://doc.qt.io/archives/qt-4.8/qthelpproject.html#custom-filters). +# This tag requires that the tag GENERATE_QHP is set to YES. + +QHP_CUST_FILTER_ATTRS = + +# The QHP_SECT_FILTER_ATTRS tag specifies the list of the attributes this +# project's filter section matches. Qt Help Project / Filter Attributes (see: +# https://doc.qt.io/archives/qt-4.8/qthelpproject.html#filter-attributes). +# This tag requires that the tag GENERATE_QHP is set to YES. + +QHP_SECT_FILTER_ATTRS = + +# The QHG_LOCATION tag can be used to specify the location (absolute path +# including file name) of Qt's qhelpgenerator. If non-empty doxygen will try to +# run qhelpgenerator on the generated .qhp file. +# This tag requires that the tag GENERATE_QHP is set to YES. + +QHG_LOCATION = + +# If the GENERATE_ECLIPSEHELP tag is set to YES, additional index files will be +# generated, together with the HTML files, they form an Eclipse help plugin. To +# install this plugin and make it available under the help contents menu in +# Eclipse, the contents of the directory containing the HTML and XML files needs +# to be copied into the plugins directory of eclipse. The name of the directory +# within the plugins directory should be the same as the ECLIPSE_DOC_ID value. +# After copying Eclipse needs to be restarted before the help appears. +# The default value is: NO. +# This tag requires that the tag GENERATE_HTML is set to YES. + +GENERATE_ECLIPSEHELP = NO + +# A unique identifier for the Eclipse help plugin. When installing the plugin +# the directory name containing the HTML and XML files should also have this +# name. Each documentation set should have its own identifier. +# The default value is: org.doxygen.Project. +# This tag requires that the tag GENERATE_ECLIPSEHELP is set to YES. + +ECLIPSE_DOC_ID = org.doxygen.Project + +# If you want full control over the layout of the generated HTML pages it might +# be necessary to disable the index and replace it with your own. The +# DISABLE_INDEX tag can be used to turn on/off the condensed index (tabs) at top +# of each HTML page. A value of NO enables the index and the value YES disables +# it. Since the tabs in the index contain the same information as the navigation +# tree, you can set this option to YES if you also set GENERATE_TREEVIEW to YES. +# The default value is: NO. +# This tag requires that the tag GENERATE_HTML is set to YES. + +DISABLE_INDEX = NO + +# The GENERATE_TREEVIEW tag is used to specify whether a tree-like index +# structure should be generated to display hierarchical information. If the tag +# value is set to YES, a side panel will be generated containing a tree-like +# index structure (just like the one that is generated for HTML Help). For this +# to work a browser that supports JavaScript, DHTML, CSS and frames is required +# (i.e. any modern browser). Windows users are probably better off using the +# HTML help feature. Via custom style sheets (see HTML_EXTRA_STYLESHEET) one can +# further fine tune the look of the index (see "Fine-tuning the output"). As an +# example, the default style sheet generated by doxygen has an example that +# shows how to put an image at the root of the tree instead of the PROJECT_NAME. +# Since the tree basically has the same information as the tab index, you could +# consider setting DISABLE_INDEX to YES when enabling this option. +# The default value is: NO. +# This tag requires that the tag GENERATE_HTML is set to YES. + +GENERATE_TREEVIEW = YES + +# When both GENERATE_TREEVIEW and DISABLE_INDEX are set to YES, then the +# FULL_SIDEBAR option determines if the side bar is limited to only the treeview +# area (value NO) or if it should extend to the full height of the window (value +# YES). Setting this to YES gives a layout similar to +# https://docs.readthedocs.io with more room for contents, but less room for the +# project logo, title, and description. If either GENERATE_TREEVIEW or +# DISABLE_INDEX is set to NO, this option has no effect. +# The default value is: NO. +# This tag requires that the tag GENERATE_HTML is set to YES. + +FULL_SIDEBAR = NO + +# The ENUM_VALUES_PER_LINE tag can be used to set the number of enum values that +# doxygen will group on one line in the generated HTML documentation. +# +# Note that a value of 0 will completely suppress the enum values from appearing +# in the overview section. +# Minimum value: 0, maximum value: 20, default value: 4. +# This tag requires that the tag GENERATE_HTML is set to YES. + +ENUM_VALUES_PER_LINE = 4 + +# If the treeview is enabled (see GENERATE_TREEVIEW) then this tag can be used +# to set the initial width (in pixels) of the frame in which the tree is shown. +# Minimum value: 0, maximum value: 1500, default value: 250. +# This tag requires that the tag GENERATE_HTML is set to YES. + +TREEVIEW_WIDTH = 250 + +# If the EXT_LINKS_IN_WINDOW option is set to YES, doxygen will open links to +# external symbols imported via tag files in a separate window. +# The default value is: NO. +# This tag requires that the tag GENERATE_HTML is set to YES. + +EXT_LINKS_IN_WINDOW = NO + +# If the OBFUSCATE_EMAILS tag is set to YES, doxygen will obfuscate email +# addresses. +# The default value is: YES. +# This tag requires that the tag GENERATE_HTML is set to YES. + +OBFUSCATE_EMAILS = YES + +# If the HTML_FORMULA_FORMAT option is set to svg, doxygen will use the pdf2svg +# tool (see https://github.com/dawbarton/pdf2svg) or inkscape (see +# https://inkscape.org) to generate formulas as SVG images instead of PNGs for +# the HTML output. These images will generally look nicer at scaled resolutions. +# Possible values are: png (the default) and svg (looks nicer but requires the +# pdf2svg or inkscape tool). +# The default value is: png. +# This tag requires that the tag GENERATE_HTML is set to YES. + +HTML_FORMULA_FORMAT = png + +# Use this tag to change the font size of LaTeX formulas included as images in +# the HTML documentation. When you change the font size after a successful +# doxygen run you need to manually remove any form_*.png images from the HTML +# output directory to force them to be regenerated. +# Minimum value: 8, maximum value: 50, default value: 10. +# This tag requires that the tag GENERATE_HTML is set to YES. + +FORMULA_FONTSIZE = 10 + +# The FORMULA_MACROFILE can contain LaTeX \newcommand and \renewcommand commands +# to create new LaTeX commands to be used in formulas as building blocks. See +# the section "Including formulas" for details. + +FORMULA_MACROFILE = + +# Enable the USE_MATHJAX option to render LaTeX formulas using MathJax (see +# https://www.mathjax.org) which uses client side JavaScript for the rendering +# instead of using pre-rendered bitmaps. Use this if you do not have LaTeX +# installed or if you want to formulas look prettier in the HTML output. When +# enabled you may also need to install MathJax separately and configure the path +# to it using the MATHJAX_RELPATH option. +# The default value is: NO. +# This tag requires that the tag GENERATE_HTML is set to YES. + +USE_MATHJAX = NO + +# With MATHJAX_VERSION it is possible to specify the MathJax version to be used. +# Note that the different versions of MathJax have different requirements with +# regards to the different settings, so it is possible that also other MathJax +# settings have to be changed when switching between the different MathJax +# versions. +# Possible values are: MathJax_2 and MathJax_3. +# The default value is: MathJax_2. +# This tag requires that the tag USE_MATHJAX is set to YES. + +MATHJAX_VERSION = MathJax_2 + +# When MathJax is enabled you can set the default output format to be used for +# the MathJax output. For more details about the output format see MathJax +# version 2 (see: +# http://docs.mathjax.org/en/v2.7-latest/output.html) and MathJax version 3 +# (see: +# http://docs.mathjax.org/en/latest/web/components/output.html). +# Possible values are: HTML-CSS (which is slower, but has the best +# compatibility. This is the name for Mathjax version 2, for MathJax version 3 +# this will be translated into chtml), NativeMML (i.e. MathML. Only supported +# for NathJax 2. For MathJax version 3 chtml will be used instead.), chtml (This +# is the name for Mathjax version 3, for MathJax version 2 this will be +# translated into HTML-CSS) and SVG. +# The default value is: HTML-CSS. +# This tag requires that the tag USE_MATHJAX is set to YES. + +MATHJAX_FORMAT = HTML-CSS + +# When MathJax is enabled you need to specify the location relative to the HTML +# output directory using the MATHJAX_RELPATH option. The destination directory +# should contain the MathJax.js script. For instance, if the mathjax directory +# is located at the same level as the HTML output directory, then +# MATHJAX_RELPATH should be ../mathjax. The default value points to the MathJax +# Content Delivery Network so you can quickly see the result without installing +# MathJax. However, it is strongly recommended to install a local copy of +# MathJax from https://www.mathjax.org before deployment. The default value is: +# - in case of MathJax version 2: https://cdn.jsdelivr.net/npm/mathjax@2 +# - in case of MathJax version 3: https://cdn.jsdelivr.net/npm/mathjax@3 +# This tag requires that the tag USE_MATHJAX is set to YES. + +MATHJAX_RELPATH = http://cdn.mathjax.org/mathjax/latest + +# The MATHJAX_EXTENSIONS tag can be used to specify one or more MathJax +# extension names that should be enabled during MathJax rendering. For example +# for MathJax version 2 (see +# https://docs.mathjax.org/en/v2.7-latest/tex.html#tex-and-latex-extensions): +# MATHJAX_EXTENSIONS = TeX/AMSmath TeX/AMSsymbols +# For example for MathJax version 3 (see +# http://docs.mathjax.org/en/latest/input/tex/extensions/index.html): +# MATHJAX_EXTENSIONS = ams +# This tag requires that the tag USE_MATHJAX is set to YES. + +MATHJAX_EXTENSIONS = + +# The MATHJAX_CODEFILE tag can be used to specify a file with javascript pieces +# of code that will be used on startup of the MathJax code. See the MathJax site +# (see: +# http://docs.mathjax.org/en/v2.7-latest/output.html) for more details. For an +# example see the documentation. +# This tag requires that the tag USE_MATHJAX is set to YES. + +MATHJAX_CODEFILE = + +# When the SEARCHENGINE tag is enabled doxygen will generate a search box for +# the HTML output. The underlying search engine uses javascript and DHTML and +# should work on any modern browser. Note that when using HTML help +# (GENERATE_HTMLHELP), Qt help (GENERATE_QHP), or docsets (GENERATE_DOCSET) +# there is already a search function so this one should typically be disabled. +# For large projects the javascript based search engine can be slow, then +# enabling SERVER_BASED_SEARCH may provide a better solution. It is possible to +# search using the keyboard; to jump to the search box use + S +# (what the is depends on the OS and browser, but it is typically +# , /