Dooble: bump version

* add haiku theme
* new app icon
This commit is contained in:
Gerasim Troeglazov
2018-06-09 23:52:09 +10:00
parent c4ffd55060
commit aca938b62f
5 changed files with 580 additions and 472 deletions

View File

@@ -14,318 +14,183 @@ resource app_version {
resource app_signature "application/x-vnd.dooble";
resource vector_icon {
$"6E636966070301A9E5034B80C1036DB4E4037FD3F603EED32B03E1622905005B"
$"001CBC3FB38EBC3FB38EC01FB27BC7A8B5F3C49AB341C698B5BEC4E7B488C5F7"
$"B4B8C533B500C634B56BC5B1B541C5F0B56DC566B571C5ABB56FC555B614C531"
$"B75AC544B6B7C56AB788C5DEB7E4C5A4B7B6C568B7E3C47CB7E3C4F2B7E2C484"
$"B7B6C494B75DC48CB78AC3F6B70EC2B0B681C355B6C3C2DFB6F8C33FB7E4C30E"
$"B76EC31EB7E4C2BEB7E4C2DEB7E4C275B750C1C3B637C23AB6AEC168B5F742B5"
$"CFC0F5B5ECBFEFB6A1BE55B7E3BF2AB74EBE39B7E3BDE2B7E2BDFFB7E3BD95B7"
$"64BCCBB68DBD34B6F5BC04B6CABAC9B7DEBB1DB705BA57B7DFB973B7EAB9E5B7"
$"E432B780BBA9B6BEBADAB6FEBC04B6A8BC76B61BBC4BB66DBCDEB626BDAEB60A"
$"BD4AB631BE93B5BAC06DB54CBF7CB571C061B4ECC01CB435C07DB471BF62B394"
$"BD74B397BE5EB38BBD0EB3FFBBFDB463BC8CB445BC40B42DBCC9B3C6BC84B3F9"
$"BC9BB3B3BC3FB38EBC6DB3A0BC3FB38E0007C002B38FC002B38FC0C6B3E2C269"
$"B3C5C19DB3B3C1CDB3D2C094B3DDC131B3DCC0F6B44EC1DDB514C149B4E1C2E1"
$"B514C4E8B51BC3E5B4FAC4A4B414C2AEB3BDC379B41DC1D9B354C002B38FC0E5"
$"B36AC002B38F0004C1D4B54CC1D4B54CC268B671C4D1B72DC3CAB69FC512B691"
$"C507B541C536B5E8C3F6B530C1D4B54CC2E4B530C1D4B54C0203BD11B67FBE0A"
$"B611BD67B6E3BE2AB795BDC5B740BEEDB710C020B5A7BFB2B67EBF12270209B4"
$"B0B99BB577B8BBB5C5B784B994B4ABB789B5D1B90DB5AFB94BB7EDB936B6D5B9"
$"04B7F0B876B7F0B8BDB7F0B8D6B75BB890B60FB8D4B6AFB835B661B781B706B7"
$"DBB6B3B782B753B786B7EDB784B7A0B771B7EDB734B7EFB748B7EEB732B7AAB7"
$"2FB722B731B766B62FB7C70040C7D6B618C7D6B618C951B736CB31BA71CA6DB8"
$"C4CB14BA6CCAB9BA5DCAD7BA62CAF0BB58CB36BD54CB19BC55CB5FBD17CBAEBC"
$"9ACB86BCD8CB91BD26CB67BE43CB53BDB2CB93BE95CC0FBF20CBD4BED9CC25BE"
$"CBCC4ABE20CC39BE76CC4ABE20CC53BE4FCC53BE4FCC53BE4FCC53C0AACC53C0"
$"AACC53C0AACC4DC0D7CC4DC0D7CC3BC01ACB87BECBCC07BF5DCB9DBFBFCC2FC1"
$"955EC0BBCC06C2E9CAFFC564CB9FC434CAFFC490CA43C315CAC8C3BDC9D3C3BB"
$"C91CC520C972C46BC953C516C9C2C504C98BC50DC91EC590C7E1C6B6C87D50C8"
$"0EC73BC85BC849C835C7C2C8D5C7F4C9CBC74CC952C7A2C896C8F8C50FCB2CC6"
$"EECA4EC50FCB16C510CAD2C510CAE9C501CAC0C4D5CA8BC4E3CA9DC553CA59C6"
$"41C9CDC5E5CA38C66FC925C628C7CBC63AC874C5EEC7D5C57AC7EAC5B4C7DFC5"
$"D6C792C607C69FC606C71FC5B6C69FC512C69FC564C69FC4F8C711C4BDC7F3C4"
$"DFC783C4BDC7F3C4A1C809C4A1C809C4A9C794C4BCC6ABC4B2C720C3BFC6DAC1"
$"E2C79CC2C9C72BC1E0C788C1D8C74CC1DBC760C2D0C6E8C4D2C659C3D2C6A3C4"
$"F3C590C504C3F8C502C4C4C3FEC479C1EBC568C2FBC500C1D9C55FC1A3C546C1"
$"B5C54EC2AEC4B4C4D7C3B7C3CAC444C4B4C34CC45EC27BC494C2DFC349C26CC1"
$"49C34DC246C2EEC133C33EC0F0C311C106C320C1F7C2A7C41FC21FC308C257C3"
$"B7C0A8C228BE14C2B4BF7BC1D2BE14C127BE15C17CBE14C15DBDEBC1CBBD97C1"
$"94BDC1C199BD23C136BC3CC168BCB0C143BC24C16BBBDCC15EBBF4C1BFBC62C2"
$"77BD65C206BCF4C31ABD8EC45FBD24C3C0BD45C431BC20C396BA26C3EDBB20C3"
$"C2BA14C41BB9F4C3EEBA04C46DBAFCC4ECBD17C4B1BC08C57FBD0AC69BBCA9C6"
$"28BD17C745BC0AC84ABA81C7ECBB58C815BA06C768B93BC7B9B9A3C7D0B97BC8"
$"A3B9FBC83AB9BBC8B4B9C1C8D7B94DC8C6B987C8BCB92FC887B8F5C8A2B912C8"
$"BFB8B7C92CB83AC8F7B87AC932B881C93FB90FC939B8C8C986B92ECA13B96CC9"
$"CDB94EC9D9B8E5C926B7F8C998B85BC91AB7EEC8F7B7CDC903B7D8C8A6B731C7"
$"D6B618C84EB699C7D6B6180005C92EB941C92EB941C90EB99BC8CDBA51C8EEB9"
$"F6C99EBB3FCAEABD58CA43BC4CCAE2BC3DCA51BA16CAB9BB1FCA24B99AC92EB9"
$"41C997B979C92EB9410004C896BAB1C896BAB1C818BB80C6E0BCF0C774BC32C8"
$"23BD0DCA98BDADC965BD3FCA1EBC91C896BAB1C973BB89C896BAB10006C52FBE"
$"63C52FBE63C530BF89C563C1D5C565C0AEC654C1D1C839C169C777C225C93CC0"
$"87CAD5BE59CA41BF93C9F4BD7CC772BD4DC899BD79C68CBD17C52FBE63C5A1BD"
$"A0C52FBE630005C2B6BDD6C2B6BDD6C2E7BE3DC34BBF0AC319BEA4C39FBEDFC4"
$"43BE7EC3F6BEB6C49FBE49C482BD79C473BDD0C3E7BD8FC2B6BDD6C34EBDAFC2"
$"B6BDD60004C392BF45C392BF45C3F6C03CC4F3C210C467C12EC4FDC0EFC4A3BE"
$"B3C4D9BFCFC448BEE4C392BF45C3EDBF15C392BF450004C83DC1D5C83DC1D5C8"
$"DAC20FCA12C284C976C248CA7CC171CACCBF2ACACEC052C9F6C012C83DC1D5C9"
$"20C0F9C83DC1D50006CB30BF30CB30BF30CB0AC062CA62C2B0CAA4C185CAD1C3"
$"35CB30C47CCB2DC3C8CB5CC409CBA9C31FCB86C395CB90C325CB45C336CB5EC3"
$"30CBFDC1F8CB30BF30CBABC074CB30BF300004C55DC231C55DC231C55EC28FC5"
$"61C34BC560C2EDC606C308C71FC22FC69DC2A8C689C226C55DC231C5F3C228C5"
$"5DC2310008C775C263C775C263C6CEC2C9C58CC3A6C633C341C5D5C48FC66DC6"
$"5FC628C575C6CDC66DC78DC67DC72DC689C828C643C8D2C524C87DC5A8C939C4"
$"6DC9DEC2EAC9B3C3BAC9B8C2A1C915C272C95AC291C891C24DC775C263C7F3C2"
$"0BC775C2630004C53FC4F2C53FC4F2C533C56CC523C661C52BC5E6C54AC65FC5"
$"C0C659C598C65BC5AAC5DBC53FC4F2C583C560C53FC4F20204C6C7C801C6FAC7"
$"A3C6B4C892C6E2C9B5C6CFC925C74FC938C803C820C7D3C8C3C821C7B9C7A0C7"
$"1CC7DBC766C754C764003AB772B8F7B772B8F7B7832FB7B4B902B7A4B8FFB6BA"
$"BA14B58DBCBEB5F6BB59B63CBCF8B7ACBD42B6EEBD5AB884BCF5B9F0BBDBB92F"
$"BC53B9ACBB13B94BB978B96CBA48B962B974B9A6B969B98FB96DB9F1B978BA86"
$"B99BBA3BB989BA80BA40BA7DBB89BA7EBAE5BB46BB1DBCEFBA74BC12BAB1BCFF"
$"BA7CBD3033BD1FBA8BBC55BAF4BAA9BBCBBB7DBB5BBACBBC34BB21BD02BAEABC"
$"A1BC4CBD14BE7DBC363ABC6FBE7DBC36BE8BBC59BE8BBC59BD8EBCE5BB5BBD62"
$"BC72BD22BB9EBE36BC73BFBCBBFEBEFFBCEEBF9ABDE4BF55BD6BBF7CBD9EBF86"
$"BD16BFEEBD59BFB8BCF5C009BCB3C042BCD4C025BCEAC0A4BD58C169BD21C106"
$"BD87C162BDE5C159BDB6C15DBDF8C163BE33C183BE1FC178BE07C1A2BDAFC1E0"
$"BDDBC1C1BDEFC264BE64C373BE31C2E9BE52C382BE1EC3AEBE2FC39FBDC7C324"
$"BD05C21DBD7AC28FBC64C1EDBB23C25CBBBFC23BBB5CC395BC2CC5F1BB9AC4D3"
$"BCE4C556BE8DC46CBD9FC4B1BDD5C532BC2EC67CBCD7C5A6BCC6C67DBDF4C67D"
$"BD5DC67DBD7CC6A7BC8BC6F8BD03C6D0BCC1C78BBD45C8A6BCFDC81BBD0AC8A4"
$"BC93C896BCCEC89EBC5DC7F7BBBBC6CFBC14C75EBB73C733BAE9C7FEBB2CC798"
$"BAD4C7F4BA98C7D5BAACC7E0BABEC791BB0CC70ABAE5C74EBA82C70DB96DC713"
$"B9F8C710B9CDC75DBA87C7F632C7A6BA87C7F6BA7DC816BA7DC816B9F9C7D0B8"
$"F6C73BB97AC781B82FC6D3B671C69BB74BC6C2B67DC726B6C2C835B673C7BCB7"
$"06C8A3B7AAC96AB757C908B61AC838B422C4C7B4EEC691B45AC4E5B4C9C522B4"
$"92C503B493C431B44CC24AB474C33CB421C263B3D3C29FB3FCC283B3F6C22CB4"
$"1AC139B431C1B4B3EBC0E6B362C05FB3A3C0A4B35AC0FEB357C23EB352C19EB2"
$"C9BF76B47FB9F3B320BC75B46EBADDB544BC7BB49EBBCDB5A6BBDBB64DBA8CB5"
$"FDBB35B63DBA77B60EBA39B61DBA4EB684B9CDB772B8F7B6F7B95EB772B8F700"
$"05B46DBC04B46DBC04B42CBC6AB3D0BD4DB3D7BCCFB3BFBE52B450C04FB3E0BF"
$"5FB47CBF37B516BD17B4C4BE26B548BC98B46DBC04B4B7BC50B46DBC040004B8"
$"61BD50B861BD50B8EDBD5ABA08BD53B97BBD5ABA0EBCF1BA14BC2BBA12BC8EB9"
$"76BC77B861BD50B8E2BCD9B861BD500004B56939B56939B4F6BE1424C077B4B1"
$"BF44B57ABF83B747BDA4B65EBE91B6A8BD69B56939B608BD30B569390004BA8A"
$"BD6ABA8ABD6ABA7ABE90BADAC0D6BA9DBFB7BB3AC09FBBF3C024BB98C063BB79"
$"BF3CBA8ABD6ABB23BE41BA8ABD6A0007B742BE10B742BE10B62FBEF7B48CC144"
$"B537C005B5C8C1F3B898C23EB732C237B940C246BA31C15AB9C3C1C8BA70C11E"
$"BA50C076BA50C0C1BA34BF87BA26BDA5BA28BE96B930BDA8B742BE10B80BBD58"
$"B742BE100003B372BDF2B372BDF2B33BBEDFB3FFC0ABB319C00EB3DABFC1B372"
$"BDF2B3C8BED0B372BDF20005BAE1C14FBAE1C14FBAF1C189BB0FC1FFBAFFC1C4"
$"BBA3C1EABCC6C1A9BC35C1CDBC95C142BC32C075BC64C0DBBBBCC0B2BAE1C14F"
$"BB4BC0FCBAE1C14F0004B4E6C1D4B4E6C1D4B554C2F5B6DEC4D4B60EC3F2B770"
$"C40FB89DC28EB80BC352B75BC26DB4E6C1D4B61CC234B4E6C1D40005B491C228"
$"B491C228B495C34EB53CC587B4C3C479B569C5FAB64DC648B5E7C61BB671C5EA"
$"B6BBC52FB695C58CB5E3C443B491C228B543C32FB491C2280009BA0DC268BA0D"
$"C268B97EC268B899C314B8F6C2A7B80BC3B4B729C525B76BC455B785C5AAB884"
$"C674B806C610B90FC6F0BA83C6CDB9D8C6C9BADCC6C0BB8FC683BB54C6D7BBA4"
$"C5FBBB3EC4F8BB61C578BAF4C427BA90C27ABADEC348BA66C26BBA0DC268BA3A"
$"C264BA0DC2680203B6DAC577B763C5CCB6C5C5C5B69CC661B6B1C613B726C685"
$"B83FC6B6B7B1C6A3B7DCC637020FBA18CA37B958CA03BA23C99ABA67C866BA39"
$"C8FDBA8CC904BAD8CA41BAB6C9A2BABBCA5FBA80CA9BBA9DCA7DBBA5CBC4BEE6"
$"CBA9BD66CBAFBE9BCB4ABE02CA8EBE4FCAECBE59CA8EBF06CA8FBEB0CA8FBF1B"
$"CAC9BF43CB3FBF2FCB04BFFCCBB3C1B2CBECC0D4CC07C247CBC8C33FCB14C2BF"
$"CB62C315CB54C2C2CBD7C2EBCB96C2D9CBD9C320CBDEC308CBDCC270CC0FC109"
$"CC5345CC38C109CC53BE49CC53BE49CC53BBF7CBF1B7DBC992B9A6CB23B896C9"
$"D3020CB994B4ABB90DB5AFBA6C23BC3FB38EBB50B3D1BC6DB3A0BCC9B3C6BC9B"
$"B3B3BC84B3F9BBFDB463BC40B42DBC8CB445BD74B397BD0EB3FFBE5EB38BC01C"
$"B435BF62B394C07DB471C06DB54CC061B4ECBF7CB571BDAEB60ABE93B5BABD4A"
$"B631BC76B61BBCDEB626BC4BB66DBBA9B6BEBC04B6A8BADAB6FEB973B7EA32B7"
$"80B973B7EAB94BB7EDB94BB7EDB936B6D50203BD11B67FBD67B6E3BE0AB611C0"
$"20B5A7BF1227BFB2B67EBE2AB795BEEDB710BDC5B7400204B781B706B782B753"
$"B7DBB6B3B890B60FB835B661B8D4B6AFB876B7F0B8D6B75BB826B7EFB786B7ED"
$"B7D6B7EDB784B7A00203BAC9B7DEBBD1B7E3BB1DB705BCCBB68DBC04B6CABD34"
$"B6F5BDE2B7E2BD95B764BCDAB7E40209B4B0B99BB4A4B9B1B577B8BBB72FB722"
$"B62FB7C7B731B766B734B7EFB732B7AAB70BB7F0B693B7F7B6BBB7F4B6CBB85A"
$"B772B8F7B70EB8BBB6F7B95EB60EBA39B684B9CDB61DBA4EB64DBA8CB63DBA77"
$"B5FDBB35B544BC7BB5A6BBDBB49EBBCDB47FB9F3B46EBADDB48BB9DD0206B7B4"
$"B902B6BABA14B85BB920B9A6B969B901B946B98FB96DB94BB978B962B974B96C"
$"BA48B9F0BBDBB9ACBB13B92FBC53B7ACBD42B884BCF5B6EEBD5AB58DBCBEB63C"
$"BCF8B5F6BB590203BA86B99BBA80BA40BB5AB9D0BCEFBA74BC28BA1ABC12BAB1"
$"BA7DBB89BB46BB1DBA7EBAE50205BAA9BBCBBACBBC34BB7DBB5BBD3033BC55BA"
$"F4BDC9BAFABE9EBC29BE3ABB8FBE9EBC29BE7DBC36BE7DBC363ABC6FBB21BD02"
$"BC4CBD14BAEABCA10204B46DBC04B42CBC6AB4B7BC50B516BD17B548BC98B4C4"
$"BE26B450C04FB47CBF37B3E0BF5FB3D0BD4DB3BFBE52B3D7BCCF0203B861BD50"
$"B8EDBD5AB8E2BCD9BA14BC2BB976BC77BA12BC8EBA08BD53BA0EBCF1B97BBD5A"
$"0205BB5BBD62BB9EBE36BC72BD22BE8BBC59BD8EBCE5BE8FBC66BE9EBC8EBE99"
$"BC81BF01BD81BDE4BF55BEDEBECCBD6BBF7CBC73BFBCBCEEBF9ABBFEBEFF0203"
$"B56939B4F6BE14B608BD30B747BDA4B6A8BD69B65EBE9124C077B57ABF83B4B1"
$"BF440203BA8ABD6ABA7ABE90BB23BE41BBF3C024BB79BF3CBB98C063BADAC0D6"
$"BB3AC09FBA9DBFB70206B742BE10B62FBEF7B80BBD58BA26BDA5B930BDA8BA28"
$"BE96BA50C076BA34BF87BA50C0C1BA31C15ABA70C11EB9C3C1C8B898C23EB940"
$"C246B732C237B48CC144B5C8C1F3B537C0050202B372BDF2B33BBEDFB3C8BED0"
$"B3FFC0ABB3DABFC1B319C00E0204BCB3C042BCEAC0A4BCD4C025BD16BFEEBCF5"
$"C009BD52C06CBDE5C159BD91C0E9BDB6C15DBD58C169BD87C162BD21C1060207"
$"B362C05FB35AC0FEB3A3C0A4B41AC139B3EBC0E6B431C1B4B3D3C29FB3F6C22C"
$"B3FCC283B44CC24AB421C263B474C33CB4C9C522B493C431B492C503B422C4C7"
$"B45AC4E5B3C8C3F7B357C23EB37EC31EB352C19E0204BAE1C14FBAF1C189BB4B"
$"C0FCBC32C075BBBCC0B2BC64C0DBBCC6C1A9BC95C142BC35C1CDBB0FC1FFBBA3"
$"C1EABAFFC1C40204BE33C183BE07C1A2BE9445BF33C269BF06C1F9BF44C2E8BE"
$"64C373BEADC324BE31C2E9BDAFC1E0BDEFC264BDDBC1C10203B4E6C1D4B554C2"
$"F5B61CC234B89DC28EB75BC26DB80BC352B6DEC4D4B770C40FB60EC3F20205BB"
$"23C25CBB5CC395BBBFC23BBD05C21DBC64C1EDBD7AC28FBE1EC3AEBDC7C324BE"
$"43C3EDBE8DC46CBE68C42DBD9FC4B1BC2CC5F1BCE4C556BB9AC4D30204B491C2"
$"28B495C34EB543C32FB6BBC52FB5E3C443B695C58CB64DC648B671C5EAB5E7C6"
$"1BB53CC587B569C5FAB4C3C4790208BA0DC268B97EC268BA3AC264BA90C27ABA"
$"66C26BBADEC348BB3EC4F8BAF4C427BB61C578BB8FC683BBA4C5FBBB54C6D7BA"
$"83C6CDBADCC6C0B9D8C6C9B884C674B90FC6F0B806C610B729C525B785C5AAB7"
$"6BC455B899C314B80BC3B4B8F6C2A70209BE8DC46CBDD5C532BE9C4CBECBC4DB"
$"BEBCC4BFBE5EC522BD80C5A8BDEFC565BDC0C5ACBE40C5B4BE00C5B0BDFDC6A6"
$"BDBCC897BDD9C79EBD9EC89BBD45C8A6BD63C8A2BCFDC81BBC8BC6F8BCC1C78B"
$"BD03C6D0BDF4C67DBD7CC6A7BD5DC67DBC2EC67CBCC6C67DBCD7C5A60203B6DA"
$"C577B6C5C5C5B763C5CCB83FC6B6B7DCC637B7B1C6A3B69CC661B726C685B6B1"
$"C6130208B671C69BB67DC726B74BC6C2B8F6C73BB82FC6D3B97AC781BA7DC816"
$"B9F9C7D0BA77C82ABA67C866BA6DC852BA39C8FDBA18CA37BA23C99AB958CA03"
$"B7DBC992B896C9D3B7CEC988B7AAC96AB7B6C974B757C908B6C2C835B706C8A3"
$"B673C7BC0203BAE9C7FEBB6FC844BB2CC798BBBBC6CFBB73C733BC14C75EBC93"
$"C896BC5DC7F7BBFEC87A0204B96DC713B9CDC75DB9F8C710BB0CC70ABA82C70D"
$"BAE5C74EBA98C7D5BABEC791BA98C7D5BA87C7F6BA87C7F632C7A60207BAD8CA"
$"41BABBCA5FBC3ACAA5BF14CA77BDABCA67C0F1CA80C4ACCA89C2CFCA65C2CACA"
$"8BBF06CA8FC0E8CA89BEB0CA8FBE02CA8EBE59CA8EBE4FCAECBEE6CBA9BE9BCB"
$"4ABD66CBAFBA80CA9BBBA5CBC4BA9DCA7D0206C002B38FC0C6B3E2C0E5B36AC2"
$"AEB3BDC1D9B354C379B41DC4E8B51BC4A4B414C3E5B4FAC1DDB514C2E1B514C1"
$"49B4E1C094B3DDC0F6B44EC131B3DCC269B3C5C1CDB3D2C19DB3B30203C1D4B5"
$"4CC268B671C2E4B530C507B541C3F6B530C536B5E8C4D1B72DC512B691C3CAB6"
$"9F020542B5CFBFEFB6A1C0F5B5ECC1C3B637C168B5F7C23AB6AEC2BEB7E4C275"
$"B750C1EAB7E3C043B7E5C116B7E3BF9EB7E5BE55B7E3BEFAB7E5BF2AB74E0204"
$"C2B0B681C2DFB6F8C355B6C3C494B75DC3F6B70EC48CB78AC47CB7E3C484B7B6"
$"C412B7E3C33FB7E4C3A8B7E4C30EB76E0204C16BBBDCC1BFBC62C1EBBB0EC396"
$"BA26C2B8BA7FC3EDBB20C45FBD24C431BC20C3C0BD45C277BD65C31ABD8EC206"
$"BCF4020AC13FBE98C188BF2CC0E2BDDCC136BC3CC0FEBCFFC168BCB0C1CBBD97"
$"C199BD23C194BDC1C127BE15C15DBDEBC17CBE14C228BE14C1D2BE14C2B4BF7B"
$"C41FC21FC3B7C0A8C308C257C0F0C311C1F7C2A7C0C3C2EEC07FC291C082C2D2"
$"C0E6C1D3C252C0EDC1DEC1A2C281C093C2A8BFCCC290C02DC223BF780204C2B6"
$"BDD6C2E7BE3DC34EBDAFC482BD79C3E7BD8FC473BDD0C443BE7EC49FBE49C3F6"
$"BEB6C34BBF0AC39FBEDFC319BEA40206C149C34DC16AC368C246C2EEC45EC27B"
$"C349C26CC494C2DFC4D7C3B7C4B4C34CC3CAC444C1A3C546C2AEC4B4C17FC52A"
$"C13DC4EBC15BC50DC14EC47AC1A3C3A5C18CC415C188C3850206C1EBC568C216"
$"C57CC2FBC500C504C3F8C3FEC479C502C4C4C4D2C659C4F3C590C3D2C6A3C1D8"
$"C74CC2D0C6E8C1CBC6C6C1ADC5BBC1BDC641C1EDC5B4C26CC5A5C22CC5ACC241"
$"C5900204C1E2C79CC1F6C7EEC2C9C72BC4BCC6ABC3BFC6DAC4B2C720C4A1C809"
$"C4A9C794C3DBC867C228C891C2FFC881C20FC83F020ABF06CA8FBF1BCAC9C0E8"
$"CA89C4ACCA89C2CACA8BC4ACCA89C4D5CA8BC4D5CA8BC4E3CA9DC510CAD2C501"
$"CAC0C510CAE9C50FCB2CC50FCB16C46FCB75C320CBDEC3CA5EC308CBDCC2C2CB"
$"D7C2D9CBD9C2EBCB96C33FCB14C315CB54C2BFCB62C1B2CBECC247CBC8C0D4CC"
$"07BF43CB3FBFFCCBB3BF2FCB040208C4E7B488C533B500C5F7B4B8C7A8B5F3C6"
$"98B5BEC7B3B5FCC7D6B618C7CBB60FC84EB699C8F7B7CDC8A6B731C7EFB7E4C5"
$"DEB7E4C6E6B7E8C5A4B7B6C531B75AC56AB788C544B6B7C566B571C555B614C5"
$"ABB56FC634B56BC5F0B56DC5B1B5410204C926B7F8C928B809C998B85BCA13B9"
$"6CC9D9B8E5C9CDB94EC93FB90FC986B92EC939B8C8C92CB83AC932B881C92BB8"
$"290208C41BB9F4C46DBAFCC58AB977C887B8F5C70DB946C8A2B912C8D7B94DC8"
$"BCB92FC8C6B987C8A3B9FBC8B4B9C1C83AB9BBC768B93BC7D0B97BC7B9B9A3C8"
$"4ABA81C815BA06C7ECBB58C69BBCA9C745BC0AC628BD17C4ECBD17C57FBD0AC4"
$"B1BC080204C92EB941C90EB99BC997B979CA51BA16CA24B99ACAB9BB1FCAEABD"
$"58CAE2BC3DCA43BC4CC8CDBA51C99EBB3FC8EEB9F60207CAB9BA5DCAF0BB58CA"
$"D7BA62CB31BA71CB14BA6CCBC0BB9BCC4ABE20CC03BCE0CC39BE76CC0FBF20CC"
$"25BECBCBD4BED9CB67BE43CB93BE95CB53BDB2CBAEBC9ACB91BD26CB86BCD8CB"
$"36BD54CB5FBD17CB19BC550203C896BAB1C818BB80C973BB89CA98BDADCA1EBC"
$"91C965BD3FC6E0BCF0C823BD0DC774BC320205C52FBE63C530BF89C5A1BDA0C7"
$"72BD4DC68CBD17C899BD79CAD5BE59C9F4BD7CCA41BF93C839C169C93CC087C7"
$"77C225C563C1D5C654C1D1C565C0AE0203C392BF45C3F6C03CC3EDBF15C4A3BE"
$"B3C448BEE4C4D9BFCFC4F3C210C4FDC0EFC467C12E0203CB87BECBCB9DBFBFCC"
$"07BF5DCC4DC0D7CC3BC01ACC44C116CC2FC195CC3AC1555EC0BB0203C83DC1D5"
$"C8DAC20FC920C0F9CACCBF2AC9F6C012CACEC052CA12C284CA7CC171C976C248"
$"0205CB30BF30CB0AC062CBABC074CB45C336CBFDC1F8CB5EC330CBA9C31FCB90"
$"C325CB86C395CB30C47CCB5CC409CB2DC3C8CA62C2B0CAD1C335CAA4C1850203"
$"C55DC231C55EC28FC5F3C228C71FC22FC689C226C69DC2A8C561C34BC606C308"
$"C560C2ED0207C775C263C6CEC2C9C7F3C20BC915C272C891C24DC95AC291C9DE"
$"C2EAC9B8C2A1C9B3C3BAC8D2C524C939C46DC87DC5A8C78DC67DC828C643C72D"
$"C689C66DC65FC6CDC66DC628C575C58CC3A6C5D5C48FC633C3410207C91CC520"
$"C953C516C972C46BCA43C315C9D3C3BBCAC8C3BDCAFFC564CAFFC490CAABC611"
$"C9CBC74CCA41C6B4C952C7A2C85BC849C8D5C7F4C835C7C2C7E1C6B6C80EC73B"
$"C87D50C9C2C504C91EC590C98BC50D0203C53FC4F2C533C56CC583C560C5C0C6"
$"59C5AAC5DBC598C65BC523C661C54AC65FC52BC5E60208C512C69FC4F8C711C5"
$"64C69FC607C69FC5B6C69FC606C71FC57AC7EAC5D6C792C5B4C7DFC628C7CBC5"
$"EEC7D5C63AC874C641C9CDC66FC925C5E5CA38C4D5CA8BC553CA59C51FC9BBC5"
$"7AC80CC55AC8E6C53BC804C4BDC7F3C4FCC7FBC4DFC7830204C6C7C801C6B4C8"
$"92C6FAC7A3C7A0C71CC754C764C7DBC766C803C820C821C7B9C7D3C8C3C6E2C9"
$"B5C74FC938C6CFC9250217B693B7F7B6CBB85AB6BBB7F4B734B7EFB70BB7F0B7"
$"48B7EEB786B7EDB771B7EDB7D6B7EDB876B7F0B826B7EFB8BDB7F0B94BB7EDB9"
$"04B7F0B94BB7EDB973B7EAB973B7EAB9E5B7E4BAC9B7DEBA57B7DFBBD1B7E3BD"
$"E2B7E2BCDAB7E4BDFFB7E3BE55B7E3BE39B7E3BEFAB7E5C043B7E5BF9EB7E5C0"
$"3BB860C02DB957C034B8DBBFCAB92DBF02B8DEBF67B905BF11B911BF2CB977BF"
$"1DB944BEC9B9B0BE03BA20BE66B9E8BE7CBA00BF6FB9BEBEF6B9DFBFC7BA38C0"
$"4ABB48C010BABDBFBDBB96BE9EBC29BF32BBE8BE3ABB8FBD3033BDC9BAFABD1F"
$"BA8BBCEFBA74BCFFBA7CBC28BA1ABA86B99BBB5AB9D0BA3BB989B9A6B969B9F1"
$"B978B901B946B7B4B902B85BB920B7A4B8FFB772B8F7B7832FB70EB8BB021EBE"
$"9EBC8EBF01BD81BEF6BC48BFBFBBE1BF58BC0FBFE638BFD8BDF7BFF2BD45BFB8"
$"BEDFBFD2C0B0BFF2BFC8BFB2C1B2C021C3ADBFF8C2B0BFD5C3E1BF48C459BF86"
$"C413BF78C52BC077C683C054C5A741C66BBF85C637BFD5C651BFA2C756BF9CC9"
$"99BFBAC879BF98C9F7BF14CA77BF4ECA36BDABCA67BAD8CA41BC3ACAA5BAB6C9"
$"A2BA67C866BA8CC904BA6DC852BA7DC816BA77C82ABA7DC816BA87C7F6BA87C7"
$"F6BA87C7F6BA98C7D5BA98C7D5BAACC7E0BAE9C7FEBAD4C7F4BB6FC844BC93C8"
$"96BBFEC87ABCCEC89EBD45C8A6BD0AC8A4BD63C8A2BDBCC897BD9EC89BBDD9C7"
$"9EBE40C5B4BDFDC6A6BE00C5B0BD80C5A8BDC0C5ACBDEFC565BECBC4DBBE5EC5"
$"22BEBCC4BFBE8DC46CBE9C4CBE68C42DBE1EC3AEBE43C3EDBE2FC39FBE64C373"
$"BE52C382BEADC324BF33C269BF44C2E8BF06C1F9BE33C183BE9445BE1FC178BD"
$"E5C159BDF8C163BD91C0E9BD16BFEEBD52C06CBD59BFB8BDE4BF55BD9EBF86BE"
$"DEBECC0234C043B7E5C03BB860C116B7E3C2BEB7E4C1EAB7E3C2DEB7E4C33FB7"
$"E4C31EB7E4C3A8B7E4C47CB7E3C412B7E3C4F2B7E2C5DEB7E4C568B7E3C6E6B7"
$"E8C8F7B7CDC7EFB7E4C903B7D8C926B7F8C91AB7EEC928B809C92CB83AC92BB8"
$"29C8F7B87AC887B8F5C8BFB8B7C70DB946C41BB9F4C58AB977C3EEBA04C396BA"
$"26C3C2BA14C2B8BA7FC16BBBDCC1EBBB0EC15EBBF4C136BC3CC143BC24C0FEBC"
$"FFC13FBE98C0E2BDDCC188BF2CC2A8BFCCC223BF78C290C02DC252C0EDC281C0"
$"93C1DEC1A2C07FC291C0E6C1D3C082C2D2C0F0C311C0C3C2EEC106C320C149C3"
$"4DC133C33EC16AC368C1A3C3A5C188C385C18CC415C13DC4EBC14EC47AC15BC5"
$"0DC1A3C546C17FC52AC1B5C54EC1EBC568C1D9C55FC216C57CC26CC5A5C241C5"
$"90C22CC5ACC1ADC5BBC1EDC5B4C1BDC641C1D8C74CC1CBC6C6C1DBC760C1E2C7"
$"9CC1E0C788C1F6C7EEC228C891C20FC83FC2FFC881C4A1C809C3DBC867C4A1C8"
$"09C4BDC7F3C4BDC7F3C4FCC7FBC57AC80CC53BC804C55AC8E6C4D5CA8BC51FC9"
$"BBC4D5CA8BC4ACCA89C4ACCA89C2CFCA65BF14CA77C0F1CA80BF4ECA36BF9CC9"
$"99BF98C9F7BFBAC879BF85C637BFA2C756BFD5C651C077C68341C66BC054C5A7"
$"BF48C459BF78C52BBF86C413C021C3ADBFD5C3E1BFF8C2B0BFD2C0B0BFB2C1B2"
$"BFF2BFC8BFD8BDF7BFB8BEDFBFF2BD45BFBFBBE1BFE638BF58BC0FBE9EBC8EBE"
$"F6BC48BE99BC81BE8BBC59BE8FBC66BE8BBC59BE7DBC36BE7DBC36BE7DBC36BE"
$"9EBC29BE9EBC29BF32BBE8C04ABB48BFBDBB96C010BABDBF6FB9BEBFC7BA38BE"
$"F6B9DFBE03BA20BE7CBA00BE66B9E8BF2CB977BEC9B9B0BF1DB944BF02B8DEBF"
$"11B911BF67B905C02DB957BFCAB92DC034B8DB02044030C34530BC3A30304030"
$"BC3A30C3454050BC3A50C34550504050C34550BC3A420A06015A024200000000"
$"00000000420000CA0000C9FFFF0A000400010203023FDFAA0000000000003FDF"
$"AB40038F4003750A000104023FDFAA0000000000003FDFAB40038F4003750A00"
$"0C05060708090A0B0C0D0E0F10023FDFAA0000000000003FDFAB40038F400375"
$"0A000C1112131415161718191A1B1C023FDFAA0000000000003FDFAB40038F40"
$"03750A00011D023FDFAA0000000000003FDFAB40038F4003750A01011E023FDF"
$"AA0000000000003FDFAB40038F4003750A01011F023FDFAA0000000000003FDF"
$"AB40038F4003750A010120023FDFAA0000000000003FDFAB40038F4003750A01"
$"0121023FDFAA0000000000003FDFAB40038F4003750A010122023FDFAA000000"
$"0000003FDFAB40038F4003750A010123023FDFAA0000000000003FDFAB40038F"
$"4003750A010124023FDFAA0000000000003FDFAB40038F4003750A010125023F"
$"DFAA0000000000003FDFAB40038F4003750A010126023FDFAA0000000000003F"
$"DFAB40038F4003750A010127023FDFAA0000000000003FDFAB40038F4003750A"
$"010128023FDFAA0000000000003FDFAB40038F4003750A010129023FDFAA0000"
$"000000003FDFAB40038F4003750A01012A023FDFAA0000000000003FDFAB4003"
$"8F4003750A01012B023FDFAA0000000000003FDFAB40038F4003750A01012C02"
$"3FDFAA0000000000003FDFAB40038F4003750A01012D023FDFAA000000000000"
$"3FDFAB40038F4003750A01012E023FDFAA0000000000003FDFAB40038F400375"
$"0A01012F023FDFAA0000000000003FDFAB40038F4003750A010130023FDFAA00"
$"00000000003FDFAB40038F4003750A010131023FDFAA0000000000003FDFAB40"
$"038F4003750A010132023FDFAA0000000000003FDFAB40038F4003750A010133"
$"023FDFAA0000000000003FDFAB40038F4003750A010134023FDFAA0000000000"
$"003FDFAB40038F4003750A010135023FDFAA0000000000003FDFAB40038F4003"
$"750A010136023FDFAA0000000000003FDFAB40038F4003750A010137023FDFAA"
$"0000000000003FDFAB40038F4003750A010138023FDFAA0000000000003FDFAB"
$"40038F4003750A010139023FDFAA0000000000003FDFAB40038F4003750A0101"
$"3A023FDFAA0000000000003FDFAB40038F4003750A02013B023FDFAA00000000"
$"00003FDFAB40038F4003750A02013C023FDFAA0000000000003FDFAB40038F40"
$"03750A02013D023FDFAA0000000000003FDFAB40038F4003750A02013E023FDF"
$"AA0000000000003FDFAB40038F4003750A02013F023FDFAA0000000000003FDF"
$"AB40038F4003750A020140023FDFAA0000000000003FDFAB40038F4003750A02"
$"0141023FDFAA0000000000003FDFAB40038F4003750A020142023FDFAA000000"
$"0000003FDFAB40038F4003750A020143023FDFAA0000000000003FDFAB40038F"
$"4003750A020144023FDFAA0000000000003FDFAB40038F4003750A020145023F"
$"DFAA0000000000003FDFAB40038F4003750A030146023FDFAA0000000000003F"
$"DFAB40038F4003750A030147023FDFAA0000000000003FDFAB40038F4003750A"
$"030148023FDFAA0000000000003FDFAB40038F4003750A030149023FDFAA0000"
$"000000003FDFAB40038F4003750A03014A023FDFAA0000000000003FDFAB4003"
$"8F4003750A03014B023FDFAA0000000000003FDFAB40038F4003750A03014C02"
$"3FDFAA0000000000003FDFAB40038F4003750A03014D023FDFAA000000000000"
$"3FDFAB40038F4003750A03014E023FDFAA0000000000003FDFAB40038F400375"
$"0A03014F023FDFAA0000000000003FDFAB40038F4003750A030150023FDFAA00"
$"00000000003FDFAB40038F4003750A030151023FDFAA0000000000003FDFAB40"
$"038F4003750A030152023FDFAA0000000000003FDFAB40038F4003750A030153"
$"023FDFAA0000000000003FDFAB40038F4003750A030154023FDFAA0000000000"
$"003FDFAB40038F4003750A030155023FDFAA0000000000003FDFAB40038F4003"
$"750A030156023FDFAA0000000000003FDFAB40038F4003750A040157023FDFAA"
$"0000000000003FDFAB40038F4003750A040158023FDFAA0000000000003FDFAB"
$"40038F4003750A050159023FDFAA0000000000003FDFAB40038F400375"
$"6E6369660C03EED32A03E1612704016C0501020106033E1FF20000000000003E"
$"1FF248800048800000D9ECFFC3007FFFFF0061BF020112023D3FE50000000000"
$"003D3FE549800049800082FFFFFFFF000200120236DD36B37F87337F8736DD36"
$"4801764A00D300FFB8FFFF0002001202368220B545DF3545DF3682204AA1D64A"
$"A17300FFB8FFFF00050004CC7F020012023D902F000000000000BD902F49F80F"
$"442CE7004D5BFFCC17020012023D902F000000000000BD902F49F80F433E8300"
$"E3F5FF66B238020F2A2CB6D22CB70FB7C7B786B7EDB770B7EDB7D5B7ED2E2CB8"
$"44B7C7B8DA2C322CB9E4B7CA322CB972B7E9B972B7E9B9E4B7E33B2CBCB9B7C9"
$"BDDE2CBE55B7E2BE38B7E2BEF9B7E5402CBF1A2C412E4037402E3F39BE9DBC29"
$"4038BE39BB8FBD3033BDC9BAF9BD1EBA8ABCEEBA74BCFFBA7BBC28BA1A3331BC"
$"36B9F0BA46B9B3B9A5B969B9F0B978B900B9462B2EB772B896B6FDB857021CBE"
$"9DBC8EBF00BD81BEF5BC47BFBFBBE0BF58BC0FBFE538BFD8BDF6BFF2BD44BFB7"
$"BEDEBFD2C0AFBFF2BFC7BFB2C1B2404CBFFDC441BFF0C5594051C010C69FBFDD"
$"C7A44058BFDEC830BFBCC9AE405BBFF9CA40BE56CA71BAD7CA40BC39CAA4BAB6"
$"C9A1BA67C866BA8CC903BA6CC851BA7CC816BA77C829BA7CC816BA86C7F5BA86"
$"C7F5BA86C7F5BA97C7D4BA97C7D4BAABC7E0BAE9C7FEBAD3C7F3BB6EC843BC92"
$"C896BBFEC87ABCCEC89DBD44C8A5BD0AC8A3BD63C8A1BDBCC897BD9DC89BBDD9"
$"C79EBE40C5B4BDFDC6A5BE00C5B03A4E3D4F3C4DBECBC4DABE5DC521BEBCC4BE"
$"BE8DC46CBE9B4CBE67C42CBE1DC3ADBE42C3EDBE2FC39FBE64C372BE51C382BE"
$"ACC323BF33C269BF43C2E8BF05C1F8BE33C183BE9345BE1EC177BDE544BDF7C1"
$"62BD90C0E9BD16BFEEBD51C06CBD59BFB7BDE4BF55BD9DBF85BEDDBECC022041"
$"2CC01EB842C0F8B7C54F2CC544B7C7C6C2B7CCC8F7B7CDC7EEB7E3C903B7D8C9"
$"25B7F8C91AB7EEC927B808C92CB83AC92BB828C8F7B87AC886B8F4C8BEB8B6C7"
$"0CB946C41BB9F4C589B977C3EEBA04C396BA26C3C1BA13C2B8BA7FC16BBBDCC1"
$"EBBB0EC15DBBF4C136BC3BC142BC24C0FDBCFFC13EBE98C0E1BDDBC188BF2BC2"
$"A7BFCBC223BF77C28FC02CC252C0EDC281C092C1DDC1A2C07EC290C0E6C1D3C0"
$"82C2D2C0F0C310C0C2C2EEC106C320C148C34DC133C33DC16AC368C1A3C3A4C1"
$"88C385C18BC414C13DC4EBC14EC479C15AC50CC1A3C545C17FC529C1B5C54EC1"
$"EBC568C1D8C55EC215C57CC26CC5A4C240C58FC22BC5ABC1AC4FC1EDC5B4C1BD"
$"C640C1D7C74CC1CBC6C6C1DAC760C1E1C79CC1DFC787C1F5C7EDC227C891C20E"
$"C83EC2FFC881C4A1C808C3DAC867C4A1C808C4BCC7F2C4BCC7F2C4FCC7FBC579"
$"C80BC53AC804C559C8E6C4D4CA8AC51FC9BAC4D4CA8AC4ABCA88C4ABCA88C2CF"
$"CA65425BC268CA8AC0C5CA40412CBFC2B800C017B79502044646C7DB46BC6B46"
$"2C532CC4752CCA2D4660BC6B60C7DB60605360CA2D60C47502043C22C3DF22B8"
$"6F22223C22B86F22C3DF3C56B86F56C3DF56563C56C3DF56B86F0285CB02BFEF"
$"CB02C05CCB02BFD7CAFEBFA6CB01BFBECAF7BFEACACFC06DCAE7C02CCAD3C02B"
$"CAD6BFA6CAD6BFE9CAD6BED9CA99BD51CAC1BE12CA9BBD3ECA9CBD18CA9CBD2B"
$"CA9CBC9ECA43BBB8CA7DBC29CA55BBF5CA61BC71CA5FBC32CA0FBB58C8F8B962"
$"C995BA50C8CEB8F0C820B821C885B885C83EB84AC86CB89EC857B873C751B734"
$"C441B54EC5E4B60FC320B4B1BFB7B44BC183B44DBFDEB44BC02CB44EC005B44C"
$"C03EB44FC063B452C051B450C06CB452C07DB454C074B453C171B468C2FFB4EB"
$"C24DB49DC25BB4ACC0FEB465C1AFB47FC1C2B482C331B502C27EB4B7C3EFB55D"
$"C4AAB65AC475B5D4C36EB53DC06CB456C1FAB484C20AB487C4B7B684C381B54F"
$"C4BEB6A0C4C3B6D9C4C3B6BCC4C3B737C453B7E1C49BB790C336B5D5C00AB451"
$"C1B0B480C1B7B481C42AB80CC329B5E8C3C9B867C295B8F0C33DB8B5C1E2B622"
$"BFAAB44BC0C9B44EBFA9B44BBFA7B44ABFA8B44BBFA8B44ABFAAB44BBFA9B44B"
$"C0CDB44FC23CB90DC1B4B62FC18EB940BFF1B966C0C630BFD6B655BFA6B44BBF"
$"B1B44EBFA6B44BBFA6B44ABFA6B44ABFA6B44ABFA6B44BBFA6B44BBF9CB44EBF"
$"5CB966BF76B655BE8630BD10B90DBDBEB940BD99B62EBFA3B44BBE80B44FBFA4"
$"B44BBFA6B44ABFA5B44ABFA6B44ABFA6B44ABFA6B44ABFA6B44ABFA6B44ABFA6"
$"B44ABFA6B44ABFA6B44ABFA6B44ABFA6B44ABFA6B44ABFA6B44ABFA6B44ABFA6"
$"B44ABFA6B44ABFA6B44ABFA6B44ABFA6B44ABFA6B44ABFA6B44ABFA6B44ABFA1"
$"B44ABF96B44BBF9BB44BBF71B44BBF28B44EBF4DB44CBF4DB44CBF96B44BBF71"
$"B44BBF96B44BBF96B44BBF96B44BBF9BB44BBFA6B44ABFA1B44ABFA2B44ABF9A"
$"B44BBF9EB44BBF7CB44BBF41B44EBF5FB44CBF5FB44CBF9AB44BBF7CB44BBF9E"
$"B44BBFA6B44ABFA2B44ABFA4B44ABF9FB44BBFA1B44BBF82B44BBF48B450BF65"
$"B44DBF65B44DBF9FB44BBF82B44BBFA1B44BBFA6B44ABFA4B44ABFA6B44ABFA6"
$"B44ABFA6B44ABFA5B44ABFA3B44BBFA4B44BBE83B44EBCB7B8F0BD6AB622BC0F"
$"B8B5BB22B80CBB84B867BC24B5E8BF42B451BD95B481BD9CB47FBAF9B7E1BC16"
$"B5D5BAB2B790BA8AB6D9BA8AB737BA8AB6BCBA95B683BA8EB69FBBC9B550BED8"
$"B458BD3EB48ABD4DB487BAA2B65BBBDCB53FBAD9B5CEBC36B4F5BB6AB551BC9A"
$"B4CDBD68B491BD00B4ACBD0FB4A8BC61B4E2BCB7B4C2BD1224BED8B453BDEAB4"
$"66BEDCB453BEE5B452BEE0B452BEFDB450BF2FB44DBF16B44FBF50B44CBF93B4"
$"4BBF72B44BBDCAB44EBB0EB54DBC2EB4B0B96AB60EB6E1B89EB7FCB733B6F5B8"
$"73B72CB821B70EB84AB6C8B885B654B961B67FB8F0B5B8BA50B4EBBC71B53DBB"
$"58B4EDBC32B50ABBB8B4F7BBF5B4CFBC28B4B0BD18B4B0BC9EB4B0BD2BB4B3BD"
$"51B4B2BD3EB48BBE12B476BFA6B476BED9B476BFE9B47EC06CB479C02BB465C0"
$"2CB44EBFA6B455BFEAB44CBFBEB44BBFEFB44BBFD7B44BC05CB491C12CB463C0"
$"C6B4B3C231B55AC415B4F7C32BB53BC3EBB50AC395B520C3C0B528C3F9B5A5C4"
$"B7B55DC45BB62DC5CBB7B2C79FB6DEC6C6B781C779B72CC72BB754C753B77DC7"
$"9AB87DC85DB7F0C801B9F5C99CBDB3CAD5BBBECA7BBBD0CA7EB8ACC87BBA19C9"
$"A9B911C8B7B9FCC921B981C8EFBB6BCA2BBEE3CAFABD18CAD4BD23CAD5BA24C9"
$"30BB85CA31BA8EC959BB77C99DBAFFC97E38CA64BF19CAFCBDCCCAE0BDD3CAE1"
$"BB97C9A5BCA3CA68BC05C9C1BCF0C9EBBC79C9D9BDABCA88BF4CCAFDBE785CBE"
$"7C5CBD0BC9EFBDB9CA89BD6FC9FFBE40CA13BDD6CA0ABEB1CAACBFA6CB02BF2B"
$"CB02BF2BCB02BE59CA14BEBBCAADBEBE5ABF90CA20BF26CA20BF9ACAB1BFA6CB"
$"02BFA2CB02BFAACB02BFBDCA20BFB2CAB141CA20C0F4CA14C08E5AC091CAADBF"
$"A6CB02C021CB02C021CB02C10CCA13C09BCAACC176CA0AC241C9EFC1DDC9FFC1"
$"93CA89C000CAFDC0D05CC0D45CC25CC9EBC1A1CA88C2D3C9D9C3B4C9A6C346C9"
$"C1C2A1CA6DC018CAFEC168CAE7C16ECAE7C3D4C99DC2B3CA6AC44CC97EC528C9"
$"31C4BEC95AC3C7CA31C06ACAFAC22ACAD5C235CAD4C550C921C3E2CA2BC5CBC8"
$"EFC69FC87BC63BC8B8C533C9A9C199CAD5C37CCA7EC38ECA7BC6CFC85DC557C9"
$"9CC75CC801C821C72BC7CFC79AC7F8C753C79BC79FC7CBC77AC86EC6C6C9A7C4"
$"B8C91FC5CBC9F0C45BCA43C394CA24C3FACA2CC3C0C9F2C415CA11C3EBCA55C3"
$"2BCABCC12CCA99C231CAE9C0C60204BF6DC7AFBF66C70FBEB8C7ADBD5AC790BE"
$"06C7A3BD30C6EDBCEEC572BD0CC637BDB5C58BBF59C59CBE84C599BF5FC65D02"
$"04BCD9C4DFBDA5C4F8BCBEC415BC9BC25CBCA9C33EBD75C27BBF47C292BE5AC2"
$"8EBF4AC370BF55C50ABF4FC444BE7AC5070204BCE0BA37BCB7BB59BD9EBA66BF"
$"53BA89BE72BA83BF4BBBA9BF42BE32BF45BCE5BE50BE2DBC8FBDEEBD68BE15BC"
$"9CBC9A0206BC89BEBCBC88BF09BD64BEE2BF41BEFEBE4EBEF9BF41BF35BF40BF"
$"A6BF40BF6DBF40C06ABF44C1E3BF42C12ABE55C1DFBC92C1ABBD6EC1CCBC8BC1"
$"03BC87BFA6BC87C056BC87BF570204BD0DC787BCD7C6E2BC60C772BB1CC731BB"
$"BAC756BACBC683BA4DC4F1BA85C5C2BAFEC521BC80C564BBBBC547BCA8C62B02"
$"06BC04C194BBFBC0F3BB2FC16DB9ACC0FCBA65C13AB9A5C08BB9A1BFA6B9A1C0"
$"1AB9A1BF12B9B2BDF2B9A7BE80BA62BE39BBFABEA0BB26BE74BBF7BEF7BBF5BF"
$"A6BBF5BF4EBBF5C04E0204B9BAC1B4B9D0C2A0BA74C1F0BC11C246BB3CC221BC"
$"24C32ABC64C4CEBC40C403BB9AC4B0BA25C455BADAC487B9F4C3810204B9BDC4"
$"37B986C360B8FBC3FBB7A7C365B848C3B5B76DC282B738C098B747C192B7D1C0"
$"F4B945C18CB882C146B95DC27B0204B95FBCEEB993BB89B8B2BC9AB7ADBBCEB8"
$"1FBC39B811BA52B977B7DAB8AE2FB998B84FBA65B91AB9EBB8BCB9EDBA3E0205"
$"B967B76AB967B712B967B780B96DB7ABB969B795B893B8C5B772BB92B7E5BA19"
$"B716BB2EB6B6BA52B6D5BAC3B76FB8C6B9B9B66EB878B772B984B6BD0206B77B"
$"BCA9B74ABD9DB7F7BD12B945BDC3B891BD72B935BE60B92DBFA6B92DBF01B92D"
$"C00BB936C0D2B930C06FB874C089B731BFD4B7C6C033B731BFC4B730BFA6B730"
$"BFB5B730BE9D0205B74DC337B711C250B6BAC2E7B5CBC230B638C28FB5A1C15F"
$"B58ABFA6B58AC086B58ABF82B58DBF3AB58CBF5EB5E6BFA3B6DEC060B657C005"
$"B6EBC15C0204B77FC3E2B6EAC3952CC4C9B899C666B827C5A1B804C628B703C5"
$"94B77CC5E1B690C4C0B5F5C2E5B635C3D9B665C3410204B7D6C40DB81BC4F0B8"
$"77C45AB9EAC4D5B929C49DBA2AC5A9BAD2C720BA78C66EBA21C6F5B8E2C684B9"
$"7BC6C0B876C5C30204BAA2B947BA3BBA6CBB20B99CBC76BA1ABBC0B9E3BC3EBB"
$"3CBC03BDD1BC16BC7DBB32BDA3B9C7BD1DBA71BD66B9F0BBB80205B6C9B8D4B6"
$"ADB91BB7DEB758BAF6B55AB94DB625BA7AB5A0B9D2B64ABA17B5F1B886B745B6"
$"A8BA14B770B891B6A2B9F3B69FB9B0B69FB9D2B69FB9650204B659BB2DB5F7BC"
$"30B685BB9EB738BC6CB6D1BC09B6FBBD6EB6D9BF99B6DABE7FB657BF3BB59ABE"
$"6AB5EBBED6B5B5BD460205B640B9A2B5AABA99B632B9D6B62ABA41B62ABA0BB6"
$"2ABA7BB643BAECB633BAB4B5D7BBEDB569BE23B58CBD01B523BDB5B4EEBCC9B4"
$"F9BD41B537BBA80206B493BFA6B493C004B493BEF8B4BFBDA9B4A3BE4EB4D7BE"
$"1CB556BEF3B50ABE8AB553BF2EB550BFA6B550BF6AB550C06FB587C1F1B563C1"
$"33B524C190B4A1C0BDB4D6C12924C0610204B591C45AB5E3C4BAB52AC373B4B8"
$"C17AB4E1C27CB4F4C1E5B5B0C2AAB548C24AB5EFC3A3B6C2C568B64CC48FB649"
$"C5150204B7E9C7C8B84DC80EB718C6F7B5DDC4FBB667C605B633C55AB71CC606"
$"B69FC5B4B7B4C6FAB93FC88AB86DC7D2B8C0C84F0204B96DC89EB9DEC8CFB8A3"
$"C7EDB75EC62FB7F1C71BB7D7C679B8F3C6F7B85FC6BCB980C7CCBAD9C921BA24"
$"C887BA57C8FB0204BB01C92DBB7BC94FBA55C897B936C711B9BBC7E1B9CCC749"
$"BB18C7A2BA6DC779BB83C85EBC80C984BBFCC900BBFBC96D0204BCA3C98ABD14"
$"C99DBC29C908BB5AC7B1BBBBC869BBF2C7D2BD36C800BC91C7EDBD74C8ACBE02"
$"59BDB9C93FBD89C9AC0204BE24C9B9BE98C9C3BDE5C944BD7BC807BDACC8B2BE"
$"1EC818BF73C823BEC6C821BF7BC8C9BF8AC9C9BF83C957BF10C9C80205C90DB9"
$"A3C91AB9D7C9A3BA99CA5FBCC9CA16BBA8CA53BD41C9E4BE23CA29BDB5C9C0BD"
$"01C90ABAECC976BBECC919BAB4C922BA41C922BA7BC922BA0B0206C353BEA049"
$"BEF7C426BE74C59BBDF2C4EBBE39C5A5BE80C5ABBFA6C5ABBF12C5ABC01AC5A1"
$"C0FCC5A7C08BC4E7C13AC348C194C41EC16DC352C0F3C357BFA6C357C04EC357"
$"BF4E0206C616C0D2C6D8C089C61CC06F50BFA650C00B50BF01C607BDC3C617BE"
$"60C6BBBD72C7D2BCA9C755BD12C802BD9DC81CBFA6C81CBE9DC81CBFB5C81CBF"
$"D4C81CBFC5C786C0330204C814C098C77BC0F4C805C191C7A6C365C7E0C282C7"
$"05C3B5C58FC437C651C3FBC5C6C360C607C18DC5EFC27BC6CAC1470205C5E0B7"
$"ABC6BAB8C6C5E3B796C5E5B76AC5E5B780C5E5B712C594B66FC5C9B6BEC6D5B7"
$"72C897BA52C7DDB8C7C877BAC3C7DABB92C836BB2EC768BA190204C5D6B7DAC5"
$"B5B84FC69F2FC79FBBCEC73BBA52C72DBC39C5EEBCEEC69ABC9A4FBB89C4E7B9"
$"1AC55FBA3EC562B8BB0204C593C1B4C4D9C1F0C57DC2A0C527C455C558C381C4"
$"72C487C2E8C4CFC3B2C4B0C30CC403C33BC246C328C32AC410C2210204C563C4"
$"D6C523C5AAC623C49DC776C40DC6D5C45AC731C4F0C66AC684C6D6C5C3C5D1C6"
$"C0C47AC720C52BC6F5C4D4C66E0204C7CEC3E2C785C4C9C863C395C957C2E5C8"
$"E7C341C917C3D9C849C594C8BCC4C0C7D0C5E1C6B3C667C748C628C725C5A102"
$"05C7FFC337C892C2E7C83BC250C86EC060C862C15CC8F5C005C9BFBF3AC967BF"
$"A3C9C1BF5EC9C2BFA6C9C2BF82C9C2C086C981C230C9ABC15FC914C28F0204C9"
$"B2BE6AC997BD47C961BED6C873BF99C8F5BF3BC872BE7EC815BC6CC851BD6EC8"
$"7BBC09C8F3BB2EC8C7BB9FC955BC310205C458B55BC4D5B5A2C600B62656B8D5"
$"C76EB759C89FB91CC8AEB9B0C8AEB965C8AEB9D2C8A4BA15C8AAB9F3C7DDB893"
$"C57DB64EC6C8B749C539B5F40204C4AAB947C42CB99CC512BA6CC586BD1DC55C"
$"BBB8C4DBBD66C34ABDD1C41ABDA3C336BC7DC2D6BA1AC30EBB3CC38DB9E40204"
$"C500C4F1C44EC521C4C7C5C2C431C731C482C683C392C756C240C787C2ECC772"
$"C275C6E2C2CDC564C2A5C62AC392C5470206C2C6BFA6C2C6BF57C2C6C056C2BA"
$"C1ABC2C2C103C1DEC1CCC008C1E3C0F7C1DFC00BC12AC00CBFA6C00CC06AC00C"
$"BF6DC00CBEFEC00CBF35C0FEBEF9C2C3BEBCC1E8BEE2C2C5BF090204C26DBA37"
$"C1AEBA66C295BB59C2BEBDEEC2B1BC9AC1E5BE15C00ABE32C0FCBE2DC008BCE5"
$"BFFABA89C002BBA9C0DABA830204C006C292C002C37043C28EC2B1C25CC1D7C2"
$"7BC2A3C33EC274C4DFC28FC415C1A8C4F8BFF8C50AC0D3C507BFFEC4440204BF"
$"F3C59CBFEDC65DC0C8C599C25FC572C198C58BC241C637C1F2C790C21CC6EDC1"
$"46C7A3BFDFC7AFC095C7ADBFE6C70F0204BFC2C9C9C03CC9C8BFCAC957BFDAC8"
$"23BFD2C8C9C086C821C1D2C807C12EC818C1A0C8B2C129C9B9C167C944C0B4C9"
$"C30204C14A59C1C3C9ACC194C93FC217C800C1D9C8ACC2BBC7EDC3F2C7B1C35A"
$"C7D2C392C869C2AAC98AC323C908C238C99D0204C2CCC984C352C96CC350C900"
$"C435C7A2C3C9C85EC4E0C779C617C711C581C749C592C7E0C44DC92DC4F8C896"
$"C3D3C94F0204C474C921C4F5C8FBC529C887C659C6F7C5CCC7CCC6EDC6BCC7EE"
$"C630C775C679C75BC71CC5DFC89EC6A9C7EDC56FC8CF0204C763C7C8C834C6F7"
$"C6FFC80FC60DC88AC68CC84FC6DFC7D2C830C606C798C6FAC8ADC5B4C96FC4FB"
$"C919C55AC8E5C6050204C9BBC45ACA22C373C96AC4BAC88BC569C903C515C900"
$"C48FC99CC2AAC95DC3A3CA05C24BCA94C17ACA58C1E5CA6CC27D0206CAACC0BE"
$"CAB4C061CA76C129C9C5C1F1CA28C190C9E9C133C9FCBFA6C9FCC06FC9FCBF6A"
$"C9F6BEF3C9FABF2ECA42BE8ACA8DBDA9CA76BE1CCAAABE4ECAB9BFA6CAB9BEF8"
$"CAB9C0040A0A020103000A0301041001178300040A040104000A0B3306070809"
$"0A0B0C0D0E0F1011121315161718191A1B1C1D1E1F202122232425262728292A"
$"2B2C2D2E2F30313233343536370514023FB8270000000000003FB828C18B63C1"
$"8B770A030102123F1D530000000000003F8897429BDBBFDFE701158400040A01"
$"0102023F1D530000000000003F8897429BDBBFDFE70A030100123F1D53000000"
$"0000003F8897429BDBBFDFE701178400040A030101123F1D530000000000003F"
$"8897429BDBBFDFE701158400040A000101023F1D530000000000003F8897429B"
$"DBBFDFE70A000100023F1D530000000000003F8897429BDBBFDFE7"
};

Binary file not shown.

View File

@@ -8,10 +8,13 @@ COPYRIGHT="Dooble"
LICENSE="BSD (3-clause)"
REVISION="1"
SOURCE_URI="https://github.com/textbrowser/dooble/archive/$portVersion.tar.gz"
CHECKSUM_SHA256="f61619adbda177d9b303944a930a3aacd969d314389f994a4f8e90168e86cabb"
CHECKSUM_SHA256="e4ec2f1eec438a185840df5ca0b024b20f00d1d180a2e21fb4f78a1c96695203"
SOURCE_DIR="dooble-$portVersion/$portVersion"
PATCHES="dooble-$portVersion.patchset"
ADDITIONAL_FILES="dooble.rdef.in"
ADDITIONAL_FILES="
dooble.rdef.in
haikuicons.zip
"
ARCHITECTURES="!x86_gcc2 x86_64"
SECONDARY_ARCHITECTURES="x86"
@@ -60,11 +63,12 @@ BUILD_PREREQUIRES="
cmd:make
cmd:pkg_config$secondaryArchSuffix
cmd:qmake$secondaryArchSuffix >= 5
cmd:unzip
"
BUILD()
{
qmake dooble.qt5.pro
qmake dooble.qt5.pro
make $jobArgs
}
@@ -72,6 +76,7 @@ INSTALL()
{
mkdir -p $appsDir/Dooble/lib
cp -rf {Icons,Images,Translations} $appsDir/Dooble
unzip -o $portDir/additional-files/haikuicons.zip -d $appsDir/Dooble/Icons
cp -f libSpotOn/libspoton.so $appsDir/Dooble/lib
cp -f Dooble $appsDir/Dooble

View File

@@ -1,155 +0,0 @@
From 6e145113f752b2da06b77ec7887d2b1f1358aebc Mon Sep 17 00:00:00 2001
From: Gerasim Troeglazov <3dEyes@gmail.com>
Date: Sat, 27 May 2017 04:59:44 +1000
Subject: Fix build for haiku
diff --git a/dooble.qt5.pro b/dooble.qt5.pro
index fc800d3..fd01093 100644
--- a/dooble.qt5.pro
+++ b/dooble.qt5.pro
@@ -28,12 +28,12 @@ DEFINES += DOOBLE_LINKED_WITH_LIBSPOTON \
QMAKE_CLEAN += Dooble libSpotOn/*.o libSpotOn/*.so libSpotOn/test
QMAKE_CXXFLAGS_RELEASE -= -O2
-QMAKE_CXXFLAGS_RELEASE += -fPIE -fstack-protector-all -fwrapv \
+QMAKE_CXXFLAGS_RELEASE += -fPIE -fwrapv \
-mtune=generic -pie -Os \
-Wall -Wcast-align -Wcast-qual \
-Werror -Wextra \
-Woverloaded-virtual -Wpointer-arith \
- -Wstack-protector -Wstrict-overflow=5
+ -Wstrict-overflow=5
QMAKE_DISTCLEAN += -r temp .qmake.cache .qmake.stash
QMAKE_EXTRA_TARGETS = libspoton purge
QMAKE_LFLAGS_RELEASE += -Wl,-rpath,/usr/local/dooble/Lib
diff --git a/libSpotOn/Makefile b/libSpotOn/Makefile
index c818b90..168d18e 100644
--- a/libSpotOn/Makefile
+++ b/libSpotOn/Makefile
@@ -4,6 +4,8 @@ ifeq ($(UNAME), Darwin)
MAKEFILE=Makefile.osx
else ifeq ($(UNAME), FreeBSD)
MAKEFILE=Makefile.freebsd
+else ifeq ($(UNAME), Haiku)
+ MAKEFILE=Makefile.haiku
else ifeq ($(UNAME), Linux)
MAKEFILE=Makefile.linux
else ifeq ($(UNAME), OS/2)
diff --git a/libSpotOn/Makefile.haiku b/libSpotOn/Makefile.haiku
new file mode 100644
index 0000000..873983a
--- /dev/null
+++ b/libSpotOn/Makefile.haiku
@@ -0,0 +1,32 @@
+all: libspoton.o
+ $(CC) $(LDFLAGS) -shared -Wl,-soname,libspoton.so \
+ -o libspoton.so $? -lgcrypt -lsqlite3 -lroot
+ $(CC) $(CFLAGS) -Wall -Werror -Wextra \
+ test.c -o test -L. -lspoton -Wl,-rpath,.
+
+libspoton.o: libspoton.c libspoton.h
+ $(CC) $(CFLAGS) -ansi -fPIC \
+ -pedantic -Waggregate-return \
+ -Wall -Wconversion -Werror -Wextra -Wformat=2 -Wpointer-arith \
+ -Wshadow -Wsign-conversion \
+ -Wstack-protector -Wstrict-overflow=5 -Wstrict-prototypes \
+ -c -o libspoton.o libspoton.c
+
+clean:
+ rm -f libspoton.o libspoton.so
+ rm -f shared.db
+ rm -f test
+
+install: all
+ install -o root -g root -d /usr/local/lib
+ install -o root -g root libspoton.so /usr/local/lib
+
+library: libspoton.o
+ $(CC) $(LDFLAGS) -shared -Wl,-soname,libspoton.so \
+ -o libspoton.so $? -lgcrypt -lpthread -lsqlite3
+
+purge:
+ rm -f *~*
+
+uninstall:
+ rm -f /usr/local/lib/libspoton.so
diff --git a/libSpotOn/libspoton.c b/libSpotOn/libspoton.c
index 0be7be8..a005adf 100644
--- a/libSpotOn/libspoton.c
+++ b/libSpotOn/libspoton.c
@@ -77,6 +77,17 @@ static pthread_mutex_t sqlite_mutex = PTHREAD_MUTEX_INITIALIZER;
GCRY_THREAD_OPTION_PTHREAD_IMPL;
#endif
+extern void __stack_chk_fail (void);
+
+#ifdef __HAIKU
+void
+__attribute__((visibility ("hidden")))
+__stack_chk_fail_local (void)
+{
+ __stack_chk_fail();
+}
+#endif
+
static libspoton_error_t initialize_libgcrypt
(const int secure_memory_pool_size)
{
--
2.13.1
From 1970ea5accf6118d951f52f06f9ff0b86e3637c4 Mon Sep 17 00:00:00 2001
From: Gerasim Troeglazov <3dEyes@gmail.com>
Date: Sat, 10 Jun 2017 21:00:42 +1000
Subject: Change current directory to application path
diff --git a/Source/dooble.cc b/Source/dooble.cc
index f2ff75f..7b13e94 100644
--- a/Source/dooble.cc
+++ b/Source/dooble.cc
@@ -309,6 +309,11 @@ int main(int argc, char *argv[])
#endif
QApplication qapp(argc, argv);
+
+#if defined(Q_OS_HAIKU)
+ QString appdir = QCoreApplication::applicationDirPath();
+ QDir::setCurrent(appdir);
+#endif
QSplashScreen splash(QPixmap(":/AxB/splash.png"));
splash.show();
--
2.13.1
From 6812dc30762f68124b1520413cd0e5fe6669b9ac Mon Sep 17 00:00:00 2001
From: Gerasim Troeglazov <3dEyes@gmail.com>
Date: Thu, 3 Aug 2017 11:06:11 +1000
Subject: Fix path for settings dir
diff --git a/Source/dooble.cc b/Source/dooble.cc
index 7b13e94..44e5f35 100644
--- a/Source/dooble.cc
+++ b/Source/dooble.cc
@@ -433,6 +433,13 @@ int main(int argc, char *argv[])
else
dooble::s_homePath = homeDir.absolutePath() + QDir::separator() +
username + QDir::separator() + ".dooble";
+#elif defined(Q_OS_HAIKU)
+ QDir homeDir(QDir::home().absolutePath() + QDir::separator() +
+ "config" + QDir::separator() + "settings");
+
+ homeDir.mkdir("Dooble");
+ dooble::s_homePath = homeDir.absolutePath() +
+ QDir::separator() + "Dooble";
#else
QDir homeDir(QDir::home());
--
2.13.1

View File

@@ -0,0 +1,393 @@
From 4193db642c95f836627ad0c36426d20d84aaf29d Mon Sep 17 00:00:00 2001
From: Gerasim Troeglazov <3dEyes@gmail.com>
Date: Sat, 27 May 2017 04:59:44 +1000
Subject: Fix build for haiku
diff --git a/dooble.qt5.pro b/dooble.qt5.pro
index fc800d3..fd01093 100644
--- a/dooble.qt5.pro
+++ b/dooble.qt5.pro
@@ -28,12 +28,12 @@ DEFINES += DOOBLE_LINKED_WITH_LIBSPOTON \
QMAKE_CLEAN += Dooble libSpotOn/*.o libSpotOn/*.so libSpotOn/test
QMAKE_CXXFLAGS_RELEASE -= -O2
-QMAKE_CXXFLAGS_RELEASE += -fPIE -fstack-protector-all -fwrapv \
+QMAKE_CXXFLAGS_RELEASE += -fPIE -fwrapv \
-mtune=generic -pie -Os \
-Wall -Wcast-align -Wcast-qual \
-Werror -Wextra \
-Woverloaded-virtual -Wpointer-arith \
- -Wstack-protector -Wstrict-overflow=5
+ -Wstrict-overflow=5
QMAKE_DISTCLEAN += -r temp .qmake.cache .qmake.stash
QMAKE_EXTRA_TARGETS = libspoton purge
QMAKE_LFLAGS_RELEASE += -Wl,-rpath,/usr/local/dooble/Lib
diff --git a/libSpotOn/Makefile b/libSpotOn/Makefile
index c818b90..168d18e 100644
--- a/libSpotOn/Makefile
+++ b/libSpotOn/Makefile
@@ -4,6 +4,8 @@ ifeq ($(UNAME), Darwin)
MAKEFILE=Makefile.osx
else ifeq ($(UNAME), FreeBSD)
MAKEFILE=Makefile.freebsd
+else ifeq ($(UNAME), Haiku)
+ MAKEFILE=Makefile.haiku
else ifeq ($(UNAME), Linux)
MAKEFILE=Makefile.linux
else ifeq ($(UNAME), OS/2)
diff --git a/libSpotOn/Makefile.haiku b/libSpotOn/Makefile.haiku
new file mode 100644
index 0000000..873983a
--- /dev/null
+++ b/libSpotOn/Makefile.haiku
@@ -0,0 +1,32 @@
+all: libspoton.o
+ $(CC) $(LDFLAGS) -shared -Wl,-soname,libspoton.so \
+ -o libspoton.so $? -lgcrypt -lsqlite3 -lroot
+ $(CC) $(CFLAGS) -Wall -Werror -Wextra \
+ test.c -o test -L. -lspoton -Wl,-rpath,.
+
+libspoton.o: libspoton.c libspoton.h
+ $(CC) $(CFLAGS) -ansi -fPIC \
+ -pedantic -Waggregate-return \
+ -Wall -Wconversion -Werror -Wextra -Wformat=2 -Wpointer-arith \
+ -Wshadow -Wsign-conversion \
+ -Wstack-protector -Wstrict-overflow=5 -Wstrict-prototypes \
+ -c -o libspoton.o libspoton.c
+
+clean:
+ rm -f libspoton.o libspoton.so
+ rm -f shared.db
+ rm -f test
+
+install: all
+ install -o root -g root -d /usr/local/lib
+ install -o root -g root libspoton.so /usr/local/lib
+
+library: libspoton.o
+ $(CC) $(LDFLAGS) -shared -Wl,-soname,libspoton.so \
+ -o libspoton.so $? -lgcrypt -lpthread -lsqlite3
+
+purge:
+ rm -f *~*
+
+uninstall:
+ rm -f /usr/local/lib/libspoton.so
diff --git a/libSpotOn/libspoton.c b/libSpotOn/libspoton.c
index 0be7be8..a005adf 100644
--- a/libSpotOn/libspoton.c
+++ b/libSpotOn/libspoton.c
@@ -77,6 +77,17 @@ static pthread_mutex_t sqlite_mutex = PTHREAD_MUTEX_INITIALIZER;
GCRY_THREAD_OPTION_PTHREAD_IMPL;
#endif
+extern void __stack_chk_fail (void);
+
+#ifdef __HAIKU
+void
+__attribute__((visibility ("hidden")))
+__stack_chk_fail_local (void)
+{
+ __stack_chk_fail();
+}
+#endif
+
static libspoton_error_t initialize_libgcrypt
(const int secure_memory_pool_size)
{
--
2.16.2
From 72d136b4c5cda9ba4684e65124c586e74ae559cc Mon Sep 17 00:00:00 2001
From: Gerasim Troeglazov <3dEyes@gmail.com>
Date: Sat, 10 Jun 2017 21:00:42 +1000
Subject: Change current directory to application path
diff --git a/Source/dooble.cc b/Source/dooble.cc
index f2ff75f..7b13e94 100644
--- a/Source/dooble.cc
+++ b/Source/dooble.cc
@@ -309,6 +309,11 @@ int main(int argc, char *argv[])
#endif
QApplication qapp(argc, argv);
+
+#if defined(Q_OS_HAIKU)
+ QString appdir = QCoreApplication::applicationDirPath();
+ QDir::setCurrent(appdir);
+#endif
QSplashScreen splash(QPixmap(":/AxB/splash.png"));
splash.show();
--
2.16.2
From 2a847b87c84031e604a279c5ca579a498afed058 Mon Sep 17 00:00:00 2001
From: Gerasim Troeglazov <3dEyes@gmail.com>
Date: Thu, 3 Aug 2017 11:06:11 +1000
Subject: Fix path for settings dir
diff --git a/Source/dooble.cc b/Source/dooble.cc
index 7b13e94..44e5f35 100644
--- a/Source/dooble.cc
+++ b/Source/dooble.cc
@@ -433,6 +433,13 @@ int main(int argc, char *argv[])
else
dooble::s_homePath = homeDir.absolutePath() + QDir::separator() +
username + QDir::separator() + ".dooble";
+#elif defined(Q_OS_HAIKU)
+ QDir homeDir(QDir::home().absolutePath() + QDir::separator() +
+ "config" + QDir::separator() + "settings");
+
+ homeDir.mkdir("Dooble");
+ dooble::s_homePath = homeDir.absolutePath() +
+ QDir::separator() + "Dooble";
#else
QDir homeDir(QDir::home());
--
2.16.2
From 3f2968fd3d2e2e00d0c691fbbbc8ffe650d2b60c Mon Sep 17 00:00:00 2001
From: Gerasim Troeglazov <3dEyes@gmail.com>
Date: Sun, 27 May 2018 19:14:13 +1000
Subject: Default fonts for Haiku (Noto)
diff --git a/Source/dooble.cc b/Source/dooble.cc
index 44e5f35..8a9e82c 100644
--- a/Source/dooble.cc
+++ b/Source/dooble.cc
@@ -761,6 +761,8 @@ int main(int argc, char *argv[])
font = QFont("Times", 16);
#elif defined(Q_OS_WIN32)
font = QFont("Serif", 10);
+#elif defined(Q_OS_HAIKU)
+ font = QFont("Noto Serif", 14);
#else
font = QFont("Serif", 16);
#endif
@@ -781,8 +783,11 @@ int main(int argc, char *argv[])
if(!font.fromString(dooble::s_settings.value
("settingsWindow/cursiveWebFont", "").
toString()) || font.family().isEmpty())
+#if defined(Q_OS_HAIKU)
+ font = QFont("Noto Serif");
+#else
font = QFont("Serif");
-
+#endif
font.setWeight(QFont::Normal);
QWebSettings::globalSettings()->setFontFamily
(QWebSettings::CursiveFont,
@@ -791,8 +796,11 @@ int main(int argc, char *argv[])
if(!font.fromString(dooble::s_settings.value
("settingsWindow/fantasyWebFont", "").
toString()) || font.family().isEmpty())
+#if defined(Q_OS_HAIKU)
+ font = QFont("Noto Serif");
+#else
font = QFont("Serif");
-
+#endif
font.setWeight(QFont::Normal);
QWebSettings::globalSettings()->setFontFamily
(QWebSettings::FantasyFont,
@@ -805,6 +813,8 @@ int main(int argc, char *argv[])
font = QFont("Courier", 13);
#elif defined(Q_OS_WIN32)
font = QFont("Courier New", 10);
+#elif defined(Q_OS_HAIKU)
+ font = QFont("Noto Mono", 12);
#else
font = QFont("Courier", 10);
#endif
@@ -814,6 +824,8 @@ int main(int argc, char *argv[])
font.setPointSize(13);
#elif defined(Q_OS_WIN32)
font.setPointSize(10);
+#elif defined(Q_OS_HAIKU)
+ font.setPointSize(12);
#else
font.setPointSize(10);
#endif
@@ -833,6 +845,8 @@ int main(int argc, char *argv[])
font = QFont("Helvetica");
#elif defined(Q_OS_WIN32)
font = QFont("Arial");
+#elif defined(Q_OS_HAIKU)
+ font = QFont("Noto Sans");
#else
font = QFont("Sans Serif");
#endif
@@ -849,6 +863,8 @@ int main(int argc, char *argv[])
font = QFont("Times");
#elif defined(Q_OS_WIN32)
font = QFont("Times New Roman");
+#elif defined(Q_OS_HAIKU)
+ font = QFont("Noto Serif");
#else
font = QFont("Serif");
#endif
diff --git a/Source/dsettings.cc b/Source/dsettings.cc
index a18c5de..f3f6a7e 100644
--- a/Source/dsettings.cc
+++ b/Source/dsettings.cc
@@ -945,6 +945,9 @@ void dsettings::exec(dooble *parent)
#elif defined(Q_OS_WIN32)
text = "Serif";
fontSize = "10";
+#elif defined(Q_OS_HAIKU)
+ text = "Noto Serif";
+ fontSize = "12";
#else
text = "Serif";
fontSize = "16";
@@ -979,10 +982,18 @@ void dsettings::exec(dooble *parent)
else
{
if(ui.cursiveFontCombinationBox->
+#ifdef Q_OS_HAIKU
+ findText("Noto Serif") > -1)
+#else
findText("Serif") > -1)
+#endif
ui.cursiveFontCombinationBox->setCurrentIndex
(ui.cursiveFontCombinationBox->
+#ifdef Q_OS_HAIKU
+ findText("Noto Serif"));
+#else
findText("Serif"));
+#endif
else
ui.cursiveFontCombinationBox->setCurrentIndex(0);
}
@@ -1000,10 +1011,18 @@ void dsettings::exec(dooble *parent)
else
{
if(ui.fantasyFontCombinationBox->
+#ifdef Q_OS_HAIKU
+ findText("Noto Serif") > -1)
+#else
findText("Serif") > -1)
+#endif
ui.fantasyFontCombinationBox->setCurrentIndex
(ui.fantasyFontCombinationBox->
+#ifdef Q_OS_HAIKU
+ findText("Noto Serif"));
+#else
findText("Serif"));
+#endif
else
ui.fantasyFontCombinationBox->setCurrentIndex(0);
}
@@ -1040,6 +1059,9 @@ void dsettings::exec(dooble *parent)
#elif defined(Q_OS_WIN32)
text = "Courier New";
fontSize = "10";
+#elif defined(Q_OS_HAIKU)
+ text = "Noto Mono";
+ fontSize = "12";
#else
text = "Courier";
fontSize = "10";
@@ -1079,6 +1101,8 @@ void dsettings::exec(dooble *parent)
text = "Helvetica";
#elif defined(Q_OS_WIN32)
text = "Arial";
+#elif defined(Q_OS_HAIKU)
+ text = "Noto Sans";
#else
text = "Sans Serif";
#endif
@@ -1110,6 +1134,8 @@ void dsettings::exec(dooble *parent)
text = "Times";
#elif defined(Q_OS_WIN32)
text = "Times New Roman";
+#elif defined(Q_OS_HAIKU)
+ text = "Noto Serif";
#else
text = "Serif";
#endif
--
2.16.2
From 6ad88d86af4e2fdb6f072a91636c927d81eb1e80 Mon Sep 17 00:00:00 2001
From: Gerasim Troeglazov <3dEyes@gmail.com>
Date: Sun, 27 May 2018 19:37:48 +1000
Subject: Set Haiku theme by default
diff --git a/Source/dooble.cc b/Source/dooble.cc
index 8a9e82c..09d5b25 100644
--- a/Source/dooble.cc
+++ b/Source/dooble.cc
@@ -615,12 +615,20 @@ int main(int argc, char *argv[])
if(!settings.contains("iconSet"))
settings.setValue("iconSet",
QString("%1/%2").arg(QDir::currentPath()).
+#ifdef Q_OS_HAIKU
+ arg("Icons/haiku/configuration.cfg"));
+#else
arg("Icons/nuovext/configuration.cfg"));
+#endif
if(!QFileInfo(settings.value("iconSet").toString()).exists())
settings.setValue("iconSet",
QString("%1/%2").arg(QDir::currentPath()).
+#ifdef Q_OS_HAIKU
+ arg("Icons/haiku/configuration.cfg"));
+#else
arg("Icons/nuovext/configuration.cfg"));
+#endif
if(!settings.contains("settingsWindow/iconSet1"))
settings.setValue("settingsWindow/iconSet1", settings.value("iconSet"));
@@ -628,7 +636,11 @@ int main(int argc, char *argv[])
if(!QFileInfo(settings.value("settingsWindow/iconSet1").toString()).exists())
settings.setValue("settingsWindow/iconSet1",
QString("%1/%2").arg(QDir::currentPath()).
+#ifdef Q_OS_HAIKU
+ arg("Icons/haiku/configuration.cfg"));
+#else
arg("Icons/nuovext/configuration.cfg"));
+#endif
if(!settings.value("v156a_automatic_changes_performed", false).toBool())
{
diff --git a/Source/dsettings.cc b/Source/dsettings.cc
index f3f6a7e..11d3a45 100644
--- a/Source/dsettings.cc
+++ b/Source/dsettings.cc
@@ -120,12 +120,21 @@ dsettings::dsettings():QMainWindow()
if(dooble::s_settings.value("iconSet", "").toString().trimmed().isEmpty())
{
+#ifdef Q_OS_HAIKU
+ settings.setValue("iconSet",
+ QString("%1/%2").arg(QDir::currentPath()).
+ arg("Icons/haiku/configuration.cfg"));
+ dooble::s_settings["iconSet"] =
+ QString("%1/%2").arg(QDir::currentPath()).
+ arg("Icons/haiku/configuration.cfg");
+#else
settings.setValue("iconSet",
QString("%1/%2").arg(QDir::currentPath()).
arg("Icons/nuovext/configuration.cfg"));
dooble::s_settings["iconSet"] =
QString("%1/%2").arg(QDir::currentPath()).
arg("Icons/nuovext/configuration.cfg");
+#endif
}
if(dooble::s_settings.value("settingsWindow/iconSet1", "").toString().
--
2.16.2