From bff764d5d431f93134bdb38137b22e8a81768216 Mon Sep 17 00:00:00 2001 From: asb2m10 Date: Sat, 15 Mar 2014 02:29:00 -0400 Subject: [PATCH] Image about box --- Builds/MacOSX/Dexed.xcodeproj/project.pbxproj | 2 + .../UserInterfaceState.xcuserstate | Bin 100185 -> 100201 bytes Builds/VisualStudio2012/Dexed.vcxproj | 1 + Builds/VisualStudio2012/Dexed.vcxproj.filters | 3 + Builds/VisualStudio2013/Dexed.vcxproj | 1 + Builds/VisualStudio2013/Dexed.vcxproj.filters | 3 + Dexed.jucer | 1 + JuceLibraryCode/BinaryData.cpp | 340 +++++++++++++++++- JuceLibraryCode/BinaryData.h | 5 +- README.md | 6 +- Resources/about.png | Bin 0 -> 23143 bytes Source/DXComponents.cpp | 85 +---- Source/PluginEditor.cpp | 31 +- 13 files changed, 395 insertions(+), 83 deletions(-) create mode 100644 Resources/about.png diff --git a/Builds/MacOSX/Dexed.xcodeproj/project.pbxproj b/Builds/MacOSX/Dexed.xcodeproj/project.pbxproj index bf6fed7..9f4141f 100644 --- a/Builds/MacOSX/Dexed.xcodeproj/project.pbxproj +++ b/Builds/MacOSX/Dexed.xcodeproj/project.pbxproj @@ -103,6 +103,7 @@ 0CB234755B75E0DBC2FFB58E = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_ResizableCornerComponent.cpp"; path = "../../JuceLibraryCode/modules/juce_gui_basics/layout/juce_ResizableCornerComponent.cpp"; sourceTree = "SOURCE_ROOT"; }; 0DCC7A5AD5AC5D3637FFAAFB = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_ToolbarButton.h"; path = "../../JuceLibraryCode/modules/juce_gui_basics/buttons/juce_ToolbarButton.h"; sourceTree = "SOURCE_ROOT"; }; 0DE1759C594D2719742E928A = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_ElementComparator.h"; path = "../../JuceLibraryCode/modules/juce_core/containers/juce_ElementComparator.h"; sourceTree = "SOURCE_ROOT"; }; + 0E3FA3D7B11FC7D19CC634BE = {isa = PBXFileReference; lastKnownFileType = image.png; name = about.png; path = ../../Resources/about.png; sourceTree = "SOURCE_ROOT"; }; 0E989C4BC7933A41E9B0019E = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_KeyboardFocusTraverser.cpp"; path = "../../JuceLibraryCode/modules/juce_gui_basics/keyboard/juce_KeyboardFocusTraverser.cpp"; sourceTree = "SOURCE_ROOT"; }; 0EA1F582E4E45EB90F02223A = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.objcpp; name = "juce_mac_CoreGraphicsContext.mm"; path = "../../JuceLibraryCode/modules/juce_graphics/native/juce_mac_CoreGraphicsContext.mm"; sourceTree = "SOURCE_ROOT"; }; 0EF8098DE092ED5C25105241 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_MouseInactivityDetector.cpp"; path = "../../JuceLibraryCode/modules/juce_gui_basics/mouse/juce_MouseInactivityDetector.cpp"; sourceTree = "SOURCE_ROOT"; }; @@ -876,6 +877,7 @@ FF6607118B29435E76806DFA = {isa = PBXFileReference; explicitFileType = wrapper.cfbundle; includeInIndex = 0; path = Dexed.component; sourceTree = "BUILT_PRODUCTS_DIR"; }; FF973BD60572C077A148D3AB = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_WildcardFileFilter.h"; path = "../../JuceLibraryCode/modules/juce_core/files/juce_WildcardFileFilter.h"; sourceTree = "SOURCE_ROOT"; }; F472964B0FFEE5615B72CE3D = {isa = PBXGroup; children = ( + 0E3FA3D7B11FC7D19CC634BE, 15B75D829C40872D542A38B8, ); name = Resources; sourceTree = ""; }; BDC5059F1563FD8DD69AD324 = {isa = PBXGroup; children = ( 3715DFDD7A1B12083F051F5A, diff --git a/Builds/MacOSX/Dexed.xcodeproj/project.xcworkspace/xcuserdata/asb2m10.xcuserdatad/UserInterfaceState.xcuserstate b/Builds/MacOSX/Dexed.xcodeproj/project.xcworkspace/xcuserdata/asb2m10.xcuserdatad/UserInterfaceState.xcuserstate index 5ba0612c075a9553af81dadfa8db790dae8871cf..3e1947e8bb594398ca64b5ddca34df26f8a0dd0c 100644 GIT binary patch literal 100201 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 VkN>UpzkmAs|6%^$KcRus{{ys91V;b> diff --git a/Builds/VisualStudio2012/Dexed.vcxproj b/Builds/VisualStudio2012/Dexed.vcxproj index be83383..aae6451 100644 --- a/Builds/VisualStudio2012/Dexed.vcxproj +++ b/Builds/VisualStudio2012/Dexed.vcxproj @@ -1552,6 +1552,7 @@ + diff --git a/Builds/VisualStudio2012/Dexed.vcxproj.filters b/Builds/VisualStudio2012/Dexed.vcxproj.filters index 2898036..590f1fd 100644 --- a/Builds/VisualStudio2012/Dexed.vcxproj.filters +++ b/Builds/VisualStudio2012/Dexed.vcxproj.filters @@ -2660,6 +2660,9 @@ + + Dexed\Resources + Dexed\Resources diff --git a/Builds/VisualStudio2013/Dexed.vcxproj b/Builds/VisualStudio2013/Dexed.vcxproj index 12f8cf9..8378a45 100644 --- a/Builds/VisualStudio2013/Dexed.vcxproj +++ b/Builds/VisualStudio2013/Dexed.vcxproj @@ -1551,6 +1551,7 @@ + diff --git a/Builds/VisualStudio2013/Dexed.vcxproj.filters b/Builds/VisualStudio2013/Dexed.vcxproj.filters index 67d84c2..8b74dfe 100644 --- a/Builds/VisualStudio2013/Dexed.vcxproj.filters +++ b/Builds/VisualStudio2013/Dexed.vcxproj.filters @@ -2660,6 +2660,9 @@ + + Dexed\Resources + Dexed\Resources diff --git a/Dexed.jucer b/Dexed.jucer index f431882..ac1768d 100644 --- a/Dexed.jucer +++ b/Dexed.jucer @@ -12,6 +12,7 @@ buildRTAS="0" buildAAX="0" pluginManufacturerEmail="support@yourcompany.com"> + diff --git a/JuceLibraryCode/BinaryData.cpp b/JuceLibraryCode/BinaryData.cpp index 31c36cb..0931f78 100644 --- a/JuceLibraryCode/BinaryData.cpp +++ b/JuceLibraryCode/BinaryData.cpp @@ -7,8 +7,342 @@ namespace BinaryData { -//================== builtin_pgm.zip ================== +//================== about.png ================== static const unsigned char temp_binary_data_0[] = +{ 137,80,78,71,13,10,26,10,0,0,0,13,73,72,68,82,0,0,1,44,0,0,1,64,8,6,0,0,0,6,75,65,84,0,0,0,6,98,75,71,68,0,255,0,255,0,255,160,189,167,147,0,0,0,9,112,72,89,115,0,0,46,35,0,0,46,35,1,120,165,63,118,0,0,0,7,116,73,77,69,7,222,3,15,6,21,44,250,195,75,60, +0,0,32,0,73,68,65,84,120,218,236,157,119,88,84,71,247,199,191,72,47,138,32,29,68,68,20,68,65,44,88,98,69,212,68,141,198,88,98,55,134,215,142,177,1,118,20,197,216,53,246,222,19,53,121,45,177,107,68,32,26,192,130,138,29,20,65,20,165,8,34,189,179,243,251, +195,31,251,238,46,187,119,11,187,8,120,62,207,227,243,200,221,123,103,206,204,153,61,59,119,238,61,243,85,27,209,163,29,67,45,195,161,121,75,252,248,179,47,28,154,183,0,65,16,159,151,145,30,238,74,43,171,78,109,236,160,151,209,79,224,63,237,39,236,93, +255,11,114,178,50,105,196,16,68,45,161,78,237,109,26,67,200,197,51,152,61,118,8,110,252,125,145,60,77,16,20,176,170,63,121,57,217,216,185,58,0,187,214,44,71,113,81,17,121,156,32,40,96,85,127,174,95,57,15,255,105,227,145,156,248,134,188,78,16,20,176,170, +63,111,226,95,98,225,228,177,120,114,63,146,60,79,16,20,176,170,63,133,5,249,88,51,127,38,238,69,220,32,239,19,4,5,172,234,79,105,73,9,54,46,153,139,136,144,171,52,2,8,130,2,86,245,135,87,86,134,173,129,139,17,118,237,50,141,2,130,160,128,85,19,96,216, +181,122,57,162,31,222,167,145,64,16,20,176,170,63,101,101,165,216,176,216,151,158,30,18,4,5,172,154,65,94,110,14,214,204,159,73,111,197,19,4,5,172,154,65,106,210,91,236,94,183,130,58,130,32,40,96,213,12,238,133,95,199,63,151,207,83,71,16,4,5,172,154, +193,225,173,235,145,150,146,68,29,65,16,213,16,13,101,22,118,60,84,242,27,228,60,30,15,133,5,249,40,44,200,71,65,126,62,210,83,147,145,250,238,45,82,147,222,33,241,85,28,94,62,123,140,130,252,188,207,222,33,133,5,249,216,185,122,25,150,108,218,77,163, +131,32,106,115,192,226,156,202,213,169,3,61,125,3,232,233,27,0,0,172,109,237,0,129,109,114,24,99,120,155,16,143,231,79,30,226,254,205,127,241,228,222,29,148,20,23,127,150,78,137,126,120,31,183,111,132,160,67,183,158,52,66,8,226,75,12,88,210,80,83,83, +67,195,198,77,208,176,113,19,244,26,48,24,69,133,133,120,124,239,54,110,134,4,225,206,141,16,148,150,150,84,169,61,127,236,217,134,182,95,117,131,134,134,6,141,18,130,168,38,84,219,53,44,109,29,29,180,235,220,29,63,251,175,192,142,83,151,49,120,220,4, +232,234,233,87,89,253,41,239,18,17,114,225,47,26,33,4,65,1,75,62,234,214,51,196,176,159,38,99,211,209,191,208,185,215,55,85,86,239,201,67,123,81,88,88,64,163,132,32,40,96,201,79,189,250,70,152,190,40,16,51,151,174,130,142,174,174,202,235,203,201,250, +136,240,160,43,52,74,8,130,2,150,226,116,236,209,11,203,182,29,128,161,145,177,202,235,186,122,230,191,52,74,8,130,2,86,229,176,181,119,192,210,205,123,81,215,208,72,165,245,188,137,127,137,152,71,81,52,82,8,130,2,86,229,176,108,104,139,185,171,54,66, +83,75,75,197,179,172,19,52,82,8,130,2,86,229,113,104,222,18,99,167,205,86,105,29,119,195,175,211,226,59,65,80,192,82,14,189,191,27,138,86,237,191,82,89,249,37,197,197,120,124,247,54,141,22,130,160,128,165,28,198,207,240,133,134,166,166,202,202,191,23, +126,157,70,11,65,124,102,106,205,107,220,22,214,13,225,209,239,59,4,157,61,169,146,242,239,223,12,3,143,199,67,157,58,149,143,241,41,239,18,241,252,201,67,36,189,78,64,106,210,91,164,190,123,139,156,172,76,20,22,22,160,168,160,0,60,198,131,182,142,46, +116,116,117,161,111,80,23,230,86,54,176,108,104,11,203,134,141,224,232,226,246,41,173,137,248,108,212,6,255,21,23,23,33,250,193,61,196,62,123,130,196,87,113,120,247,250,21,114,115,178,81,144,151,135,146,226,34,104,235,232,66,91,87,23,6,6,117,97,102,101, +3,11,155,134,104,212,164,41,90,180,118,135,137,185,5,5,44,101,208,255,135,49,184,118,238,20,24,99,74,47,59,39,43,19,113,49,79,209,212,217,69,238,107,75,75,75,241,248,238,45,68,132,92,197,211,251,145,248,248,33,93,234,53,5,121,185,40,200,203,197,199,244, +52,188,77,136,23,250,172,190,177,9,90,180,105,135,175,122,246,65,171,246,95,65,93,93,157,162,136,10,169,77,254,123,124,239,14,174,157,59,133,135,119,110,162,136,99,93,182,124,163,130,172,140,15,120,247,38,161,194,228,160,235,215,253,225,209,119,32,140, +76,76,171,212,23,106,35,122,180,83,218,183,155,107,183,134,170,98,243,178,5,184,245,207,53,149,148,61,110,250,28,244,29,50,82,230,243,63,188,79,197,197,19,71,17,22,116,89,101,187,153,26,26,25,163,107,159,254,232,55,108,20,140,26,152,84,248,124,239,250, +95,16,114,241,140,74,234,238,51,104,24,126,154,57,87,101,190,228,241,120,88,187,96,54,30,222,137,80,73,249,61,251,15,194,68,223,69,213,218,127,202,226,102,104,16,78,255,182,31,111,95,197,41,111,61,169,78,29,116,239,59,0,195,126,154,194,105,251,72,15, +119,165,213,169,222,210,206,42,64,89,133,13,29,63,233,179,7,44,19,115,75,132,170,232,11,106,80,207,16,237,101,216,193,33,45,53,25,71,119,109,198,238,53,129,120,241,244,17,138,139,10,85,214,222,162,194,2,188,120,250,8,87,207,156,64,110,78,14,236,28,154, +9,101,1,184,186,119,196,147,123,145,200,72,123,175,244,186,227,98,158,193,196,220,18,118,77,29,85,210,182,63,246,109,199,141,43,23,84,82,118,83,103,23,204,12,88,37,118,118,83,157,252,87,89,18,19,226,177,101,217,2,92,248,243,119,100,103,126,84,170,237, +140,49,36,196,62,199,181,115,167,161,161,169,1,7,103,23,168,169,169,85,56,239,212,225,189,52,195,226,226,231,17,3,144,158,154,162,244,114,45,109,108,177,241,183,83,146,111,29,74,74,112,233,228,49,156,58,180,23,197,197,69,159,165,237,122,6,117,49,118, +218,108,244,232,59,128,127,236,227,135,116,44,154,60,86,166,91,25,185,215,20,52,52,177,116,203,30,56,52,111,169,212,114,111,253,115,13,155,151,45,80,73,31,25,53,48,193,47,187,127,171,48,43,168,174,254,83,148,160,179,39,113,100,251,70,148,150,84,205,78, +39,78,174,173,49,109,225,50,152,154,91,170,108,134,85,43,119,28,109,251,85,119,149,148,155,252,246,13,242,114,115,196,255,146,189,138,195,130,73,99,112,124,207,182,207,54,216,1,32,63,55,7,187,215,46,199,74,223,233,248,152,158,198,255,130,206,9,92,7,13, +13,229,63,69,45,45,45,193,134,197,126,74,13,134,111,226,98,177,115,245,50,149,244,143,134,134,38,230,4,174,171,16,172,170,179,255,228,165,184,184,8,91,2,23,225,192,166,53,85,22,172,0,32,230,81,20,22,76,28,131,103,42,148,205,171,149,1,171,93,151,110,42, +43,59,81,204,26,192,191,87,47,97,241,148,31,43,44,174,126,78,30,223,187,141,133,147,199,225,101,244,19,0,159,94,176,253,207,28,213,204,88,50,51,210,241,235,146,185,40,41,169,252,134,139,57,217,89,88,191,216,87,101,183,97,94,179,231,87,152,13,214,4,255, +201,28,240,242,242,176,102,222,76,220,252,76,170,230,121,57,217,248,197,103,26,66,47,157,163,128,37,251,212,180,13,180,117,84,179,155,67,122,106,178,208,61,252,145,237,27,177,99,213,210,207,250,171,204,21,72,150,205,156,196,87,183,238,209,119,0,190,254, +126,184,74,234,138,125,246,24,7,55,175,173,84,25,101,101,101,216,178,108,129,202,246,212,239,51,104,24,60,250,13,172,177,254,147,30,172,114,241,139,207,84,60,123,112,239,179,218,205,43,43,195,158,117,129,184,248,223,163,74,47,187,214,45,186,3,159,158, +94,220,13,191,174,240,148,154,11,123,199,230,112,114,109,141,178,178,50,236,90,189,12,193,213,124,147,63,30,143,135,200,127,255,65,3,51,115,52,110,234,136,150,109,219,227,249,227,7,72,75,73,86,122,93,9,177,207,81,175,190,17,154,56,181,80,232,250,163, +59,55,35,60,248,111,149,173,175,76,95,188,130,255,30,93,77,245,159,36,74,74,138,177,110,193,28,188,120,250,168,218,216,254,232,238,45,212,81,87,199,179,168,187,52,195,146,70,195,198,77,84,52,195,74,65,105,105,41,54,5,204,195,191,65,151,106,72,111,48, +236,89,23,136,144,11,127,65,67,67,3,51,151,174,66,3,51,213,188,252,119,120,219,6,68,43,176,134,241,111,208,101,92,58,121,76,37,54,53,48,53,199,172,128,213,252,237,174,107,178,255,196,126,202,24,118,173,94,142,103,15,238,86,59,203,79,28,216,69,183,132, +159,59,96,237,223,184,10,119,195,106,94,170,206,222,13,171,112,55,252,58,234,213,55,130,239,138,245,208,210,210,86,201,237,192,175,75,231,203,245,148,54,254,69,52,246,174,87,141,136,173,166,150,22,230,172,88,39,180,119,90,77,247,159,40,23,255,251,59, +34,66,254,198,151,64,173,13,88,54,118,246,42,41,247,225,157,8,252,115,249,92,13,237,21,134,109,43,252,241,38,46,22,118,77,29,49,121,222,18,149,212,146,147,245,17,27,252,253,80,92,36,125,93,40,235,99,6,54,46,246,83,153,66,210,68,223,197,176,111,214,252, +127,191,248,7,119,215,10,255,149,19,251,236,49,142,239,221,142,47,133,90,27,176,12,12,13,65,84,164,168,176,0,235,22,205,65,110,118,22,190,234,217,7,3,70,140,83,73,61,9,177,49,216,187,225,23,206,115,62,221,154,205,199,135,180,84,149,216,208,111,232,40, +116,237,221,151,255,247,221,240,235,56,125,100,95,173,241,95,97,65,62,182,6,46,2,175,172,236,139,25,191,181,86,195,170,42,21,118,20,254,181,168,83,7,46,237,58,192,217,173,29,156,92,220,80,191,129,9,234,26,26,162,78,29,117,100,103,102,224,125,114,18,30, +221,189,133,200,27,161,72,126,251,70,169,183,181,7,54,175,197,12,255,95,48,98,162,55,94,199,189,192,163,200,91,74,111,95,88,208,101,52,114,104,134,111,127,24,35,246,243,35,219,54,168,108,55,215,150,109,220,49,106,202,12,254,223,31,210,222,99,215,154, +229,181,202,127,13,76,205,85,242,240,164,58,83,43,223,116,255,116,171,241,1,83,6,127,83,109,3,149,231,128,193,248,118,248,88,152,89,90,73,61,159,199,227,33,44,232,50,142,239,217,134,204,12,229,189,160,57,43,96,53,58,116,247,68,94,78,54,22,77,253,17,169, +239,222,42,127,128,169,169,97,193,186,109,112,105,219,94,232,120,232,165,115,216,179,46,80,37,253,107,106,97,137,95,118,255,134,186,245,254,55,203,14,156,61,85,105,139,210,213,197,127,95,34,181,246,150,80,87,207,160,90,218,101,98,110,129,165,91,246,194, +107,214,60,153,6,123,249,23,164,219,215,253,241,203,238,195,176,119,116,86,154,45,251,127,93,141,252,188,92,232,215,173,7,159,21,27,84,162,68,196,24,195,230,128,249,72,77,122,39,180,238,114,224,215,213,42,233,95,45,109,29,248,172,88,47,20,172,194,175, +93,81,90,176,170,78,254,163,128,85,155,26,86,13,183,92,177,105,220,4,171,246,252,142,102,45,92,21,186,222,216,196,12,139,55,238,128,141,146,158,128,230,100,101,226,220,177,195,0,128,134,118,246,152,182,64,53,233,48,121,185,57,216,176,216,23,133,5,249, +248,152,158,134,141,254,115,85,166,228,61,101,222,18,52,106,210,140,255,119,97,65,62,142,238,222,82,43,253,71,1,171,22,33,203,19,170,170,164,129,153,5,22,174,221,10,131,122,149,123,24,160,171,167,15,223,21,27,160,103,80,87,41,118,93,62,121,28,25,233, +159,118,114,112,239,234,129,193,227,38,168,164,253,137,175,94,98,199,170,0,252,186,116,158,202,110,139,6,142,252,17,157,60,122,11,29,187,116,242,184,82,94,32,174,174,254,251,210,168,181,139,238,37,213,44,213,98,242,92,127,165,109,118,102,110,101,141, +33,63,78,196,111,219,55,86,62,176,23,23,225,220,177,35,24,63,195,23,192,167,108,133,215,47,95,224,94,196,13,165,247,65,228,191,161,42,235,223,86,237,59,97,248,132,105,21,218,246,247,233,63,107,181,255,84,121,135,226,222,165,7,220,187,122,160,137,147, +51,140,77,204,80,167,78,29,228,229,230,32,245,221,91,188,120,250,16,247,34,254,173,114,9,188,218,59,195,170,70,1,171,67,119,207,10,139,206,149,165,207,160,97,176,176,110,168,148,178,174,95,57,143,130,252,60,0,159,22,201,167,45,92,94,163,182,97,54,183, +182,193,207,2,105,55,229,252,251,247,37,165,236,1,85,221,253,167,108,58,121,244,198,166,163,127,97,86,192,106,116,246,252,26,22,214,13,161,165,173,13,13,77,77,24,26,25,163,89,75,87,124,59,124,44,150,110,222,131,245,135,79,160,67,119,79,10,88,149,94,159, +81,242,102,101,149,186,85,25,245,163,242,167,198,26,26,248,122,176,114,18,153,11,11,242,241,239,213,255,165,169,232,233,235,195,103,197,6,232,234,27,84,123,63,235,232,234,194,103,197,6,232,215,173,87,225,179,160,115,39,191,8,255,41,11,109,29,93,204,92, +186,10,51,150,172,172,176,167,149,36,172,109,237,48,43,96,53,124,127,217,0,253,42,184,205,173,181,1,43,67,5,137,207,138,96,99,103,47,244,166,181,50,233,218,187,175,210,68,100,67,47,158,21,250,219,178,161,45,102,248,255,2,64,173,90,251,121,218,130,101, +104,40,38,171,33,57,241,13,94,191,124,241,197,248,175,178,212,53,52,66,192,214,125,232,216,163,151,66,215,183,253,170,27,86,236,58,172,114,129,138,218,27,176,84,176,37,176,162,183,19,170,66,191,110,61,184,117,232,172,148,178,18,94,62,71,90,170,240,75, +136,110,29,190,194,136,137,211,170,173,143,7,143,253,15,220,187,122,136,253,236,230,63,65,95,148,255,42,131,174,190,1,252,127,221,9,59,135,102,149,42,199,194,186,33,252,127,221,141,186,134,70,20,176,228,69,85,123,42,201,139,189,99,115,149,150,239,218, +174,131,210,202,186,39,38,33,248,187,81,227,21,254,213,85,37,109,58,117,197,208,159,38,75,252,60,234,102,216,23,231,63,197,80,195,172,128,213,74,219,44,192,204,210,10,63,251,175,80,217,204,188,214,6,172,132,216,231,213,194,142,198,77,157,84,90,190,139, +18,7,252,125,9,95,242,201,243,150,192,214,222,161,218,248,214,178,97,35,120,47,90,46,86,240,0,248,244,74,75,252,139,232,47,206,127,138,240,205,144,225,74,15,154,46,109,219,99,240,184,255,168,196,222,90,251,90,195,171,106,18,176,166,13,235,87,99,250,236, +101,204,83,48,198,42,4,2,29,157,79,11,219,139,166,140,67,110,118,214,231,189,125,209,211,135,239,47,27,160,199,241,64,32,46,230,169,210,18,130,107,146,255,20,185,37,29,198,49,75,173,12,223,141,30,143,208,75,103,149,190,137,102,173,156,97,189,79,78,66, +94,78,54,8,249,40,200,203,69,146,136,104,166,224,84,127,230,210,149,74,81,190,174,204,237,203,244,197,129,176,106,216,136,243,172,248,231,209,228,76,153,102,87,35,56,3,127,101,208,210,210,198,160,209,63,209,45,161,44,60,184,29,78,163,177,18,179,44,73, +180,108,211,30,163,167,206,250,108,182,13,243,154,140,54,157,186,74,61,47,229,93,34,57,82,134,224,239,209,239,59,149,214,224,209,255,59,165,239,154,82,43,3,214,125,37,45,184,126,137,164,36,114,111,131,210,111,232,72,116,237,211,191,202,237,114,239,234, +129,193,99,101,91,23,121,159,252,142,28,41,133,38,78,206,104,96,106,166,210,58,52,53,181,208,178,141,187,82,203,172,117,1,43,47,55,167,90,238,109,93,83,16,125,181,65,28,19,124,22,168,252,233,153,32,54,118,246,152,58,127,169,204,231,171,66,68,183,182, +161,236,55,247,37,225,218,190,19,5,44,46,174,95,185,160,178,237,118,191,4,100,249,178,107,105,105,99,78,224,122,161,125,210,85,133,158,65,93,248,172,88,47,215,173,69,126,110,46,57,82,10,118,205,156,170,166,158,74,190,219,85,171,3,22,99,12,65,103,78,208, +104,172,4,178,62,213,105,96,106,134,89,203,214,64,93,93,149,15,154,213,48,195,127,133,220,57,119,69,133,5,228,72,41,88,88,219,84,73,61,245,234,43,247,71,173,86,5,172,155,161,65,180,224,90,73,228,249,178,219,53,117,132,169,133,165,202,108,177,178,109, +132,22,173,221,85,218,134,47,21,99,19,179,42,169,71,217,179,240,58,181,231,139,86,136,99,187,182,208,72,84,66,63,202,202,158,181,129,42,253,129,72,122,147,128,131,91,214,145,83,84,128,182,174,110,149,212,163,86,71,185,111,188,215,154,128,245,215,111, +251,85,166,190,242,37,81,92,36,91,192,58,119,252,48,110,134,6,169,220,158,144,11,127,225,218,249,211,114,93,163,165,173,77,142,148,130,106,111,229,21,251,1,252,98,2,214,195,59,17,56,251,255,91,253,18,149,131,199,227,73,239,239,200,155,248,163,10,181, +240,14,109,94,135,231,79,30,202,124,190,166,150,14,57,82,10,85,149,177,144,161,228,73,68,141,15,88,201,137,111,176,117,133,63,0,70,163,176,10,72,121,151,136,45,203,23,129,177,170,235,239,178,178,82,252,186,100,46,62,200,184,3,135,182,14,205,176,164,145, +147,149,89,101,223,79,10,88,255,207,219,132,120,44,155,53,137,210,112,170,136,130,252,60,108,88,236,139,252,220,156,42,175,59,235,99,6,54,250,251,201,180,147,172,178,159,76,213,70,62,188,175,154,119,213,226,56,50,39,20,161,198,38,63,199,60,138,194,198, +37,243,144,147,245,177,90,219,185,239,92,176,216,221,48,107,26,140,49,236,92,189,12,111,19,226,63,155,13,241,207,159,97,255,198,85,152,58,63,128,243,188,6,102,230,136,127,254,172,86,249,239,23,159,105,120,114,95,121,186,159,207,30,222,71,171,246,95,169, +220,238,7,183,35,190,236,25,22,99,12,23,254,252,13,129,179,167,84,251,96,5,160,214,40,243,254,245,219,126,149,138,72,200,202,141,191,47,226,242,169,227,156,231,40,115,215,203,234,226,63,99,37,167,209,60,139,186,167,114,155,19,19,226,149,254,3,87,163, +2,86,98,66,60,150,205,156,132,163,187,182,200,180,56,92,29,120,159,156,132,154,206,253,155,255,226,196,193,61,213,198,158,223,119,108,226,156,109,152,89,88,213,58,255,153,90,90,43,181,188,151,209,79,149,190,190,36,138,178,20,139,106,92,192,202,72,127, +143,67,91,214,99,254,132,81,120,254,248,65,141,250,178,191,140,126,82,163,131,85,82,226,107,108,171,102,15,53,120,60,30,54,47,91,32,113,87,89,187,166,142,181,206,127,141,148,190,129,226,167,59,21,85,145,154,244,14,255,92,58,247,101,5,172,248,231,207, +176,119,195,74,204,28,57,8,127,255,245,167,210,54,101,171,234,217,73,77,37,63,47,23,235,23,249,240,37,192,170,19,185,217,89,88,191,216,23,133,98,222,106,255,20,176,212,106,149,255,148,25,132,249,183,215,87,47,170,108,43,241,131,155,215,160,172,172,180, +118,7,44,30,143,135,216,103,143,113,242,208,30,248,121,141,192,162,41,63,34,228,194,95,42,147,53,175,10,222,189,126,85,35,211,133,24,99,216,246,139,63,146,19,95,87,91,27,223,196,197,98,207,218,192,10,199,117,116,245,96,221,200,174,86,249,207,212,194, +74,233,139,255,165,37,37,216,246,203,18,148,41,121,34,112,249,212,113,60,188,115,83,37,253,160,222,210,206,42,64,89,133,13,29,63,137,187,131,74,75,81,88,80,128,252,188,28,164,165,166,32,33,54,6,209,15,239,35,236,234,101,156,59,126,4,71,182,111,68,208, +153,19,136,126,120,95,41,2,152,138,210,161,187,39,92,218,117,80,218,237,64,105,73,137,76,27,207,41,202,214,192,197,8,190,240,23,74,75,75,97,106,110,1,45,237,202,191,56,121,226,224,238,10,210,95,213,145,183,9,241,208,212,210,130,147,139,155,208,241,228, +183,111,106,157,255,226,159,71,227,221,235,87,74,173,251,195,251,84,168,169,169,193,217,173,173,210,102,164,187,215,44,87,217,123,122,106,35,122,180,163,55,46,5,168,111,108,130,181,7,142,35,225,229,11,172,244,245,86,206,175,130,186,6,54,29,253,75,37, +154,109,225,193,127,99,219,138,197,255,155,50,171,171,195,165,109,7,116,234,217,27,237,58,119,87,72,220,242,206,141,80,252,186,116,110,13,242,154,26,230,175,217,36,244,152,254,241,189,59,181,206,127,161,151,206,97,207,186,64,149,244,224,36,63,127,120, +244,27,88,169,50,34,255,13,197,150,229,139,84,122,71,164,212,25,86,109,96,78,224,58,52,108,220,4,13,76,205,112,229,212,31,40,45,169,124,231,51,198,67,114,226,27,116,246,252,90,162,210,139,34,188,142,123,129,141,254,126,40,45,45,21,186,149,75,125,151, +136,187,97,215,113,241,191,71,241,50,230,41,120,60,6,83,11,43,153,68,59,19,19,226,177,118,254,44,148,149,42,127,253,65,67,67,19,218,186,122,40,45,81,254,126,101,247,110,134,161,125,183,158,168,91,207,16,0,106,165,255,76,205,45,112,241,196,49,149,140, +251,123,17,55,160,174,161,1,39,23,55,185,219,88,90,82,130,83,71,246,225,192,166,181,224,241,84,187,206,76,1,75,128,111,135,143,65,175,129,67,248,191,116,41,73,111,149,38,23,150,242,46,17,26,154,154,112,114,109,173,148,242,222,39,39,97,165,175,55,114, +178,178,56,191,104,41,111,223,32,242,223,80,92,58,113,20,241,207,163,193,24,131,153,165,21,52,52,53,43,156,159,151,147,141,21,115,166,34,235,99,134,74,250,119,130,207,66,120,244,27,136,240,107,87,148,94,118,105,73,49,158,220,187,131,46,125,250,67,83, +75,171,86,250,47,41,241,13,146,19,19,84,54,254,159,70,221,197,179,7,247,208,200,193,17,245,141,27,72,61,159,199,227,225,110,216,63,216,178,124,33,110,95,15,174,146,239,40,5,172,255,199,209,197,13,211,230,7,160,142,186,58,255,152,177,169,41,66,46,252, +165,180,58,158,69,221,69,3,51,139,74,63,241,121,19,23,139,192,217,83,241,241,131,236,18,74,60,30,15,201,137,175,113,231,70,8,46,157,56,198,151,65,51,181,180,130,134,134,38,120,60,30,54,46,241,83,218,27,226,162,244,254,110,40,6,143,253,15,44,172,27,66, +83,75,27,79,238,221,81,122,29,57,89,153,120,247,250,21,58,121,244,134,154,154,90,173,244,159,170,73,79,77,70,240,249,211,120,254,248,1,138,10,11,160,174,161,1,45,109,29,168,107,104,160,168,176,0,233,239,83,240,252,241,67,4,95,248,11,251,214,255,130,144, +139,103,170,116,189,153,214,176,0,88,55,106,140,128,45,123,97,240,255,183,19,130,44,154,242,163,210,191,196,35,38,122,227,187,81,227,21,186,246,234,153,19,56,186,115,179,76,57,117,178,160,165,173,131,214,29,59,227,245,203,23,42,123,26,230,228,226,134, +69,27,119,66,67,227,127,153,96,91,2,23,225,102,200,85,149,212,55,228,199,137,252,7,64,181,221,127,95,26,95,252,12,203,200,196,20,75,54,237,150,56,5,174,87,223,72,233,251,62,61,185,31,137,39,247,35,97,223,172,57,12,101,152,122,51,198,240,224,118,56,182, +173,88,140,208,139,103,149,250,24,186,172,172,20,239,94,191,66,174,138,18,200,141,77,205,176,104,195,246,10,250,119,110,29,58,35,234,118,56,178,50,62,40,189,206,232,135,247,209,200,161,25,172,109,237,106,189,255,190,52,190,232,25,150,158,65,93,44,221, +188,71,170,12,187,191,247,79,120,249,76,21,111,60,127,122,156,220,201,163,23,28,156,93,96,108,98,10,61,131,186,40,200,207,67,246,199,12,188,137,127,137,23,79,30,226,246,141,16,165,43,232,86,5,26,154,154,88,182,117,31,236,29,157,197,126,158,150,146,132, +133,147,85,163,38,173,163,171,139,192,29,135,96,99,103,79,254,163,128,85,11,102,86,13,76,48,127,237,86,169,193,10,248,180,51,196,178,153,147,104,180,200,201,212,249,1,232,246,53,183,134,225,211,168,187,88,233,235,173,146,220,80,115,107,27,252,178,243, +48,18,95,197,145,255,232,150,176,230,98,217,176,17,252,55,237,150,42,121,94,142,137,185,37,62,126,72,199,171,23,49,52,98,100,228,155,33,35,240,221,168,31,165,158,103,102,105,5,61,3,3,149,188,25,157,151,147,141,215,113,177,24,56,106,60,50,51,62,144,255, +40,96,213,60,28,154,183,196,226,13,59,96,212,192,84,174,235,156,221,218,32,34,228,234,103,217,188,174,166,225,236,214,14,222,139,150,163,78,29,217,50,191,154,58,187,32,45,37,9,175,227,98,149,110,75,234,187,183,40,45,41,193,15,255,153,66,254,171,5,212, +249,146,26,251,205,224,225,88,178,121,55,234,26,214,151,251,90,93,61,125,76,95,20,88,101,155,247,215,84,76,204,45,48,43,96,21,212,5,94,15,145,133,255,204,81,157,154,244,185,227,135,241,224,118,68,173,242,159,134,166,38,86,236,60,140,206,158,95,87,107, +59,103,5,172,166,128,37,47,117,13,235,99,238,170,95,241,227,207,190,208,212,212,82,184,156,102,45,93,49,201,111,49,69,37,9,104,105,105,195,103,197,6,133,126,16,202,213,164,235,213,55,82,137,109,187,86,47,131,150,142,78,45,241,159,26,126,94,252,11,154, +56,57,195,107,246,2,152,41,121,175,44,101,241,245,247,195,209,161,187,39,5,44,121,104,221,177,11,214,236,59,134,214,29,187,40,165,188,110,95,247,199,224,113,19,40,58,137,97,242,188,37,149,146,38,111,96,106,134,217,203,214,8,189,188,171,44,138,139,139, +176,97,177,15,90,119,236,92,227,253,247,159,217,243,208,190,155,7,0,64,79,95,31,51,3,86,65,75,171,122,9,111,216,59,58,99,244,212,25,74,47,183,214,174,97,89,219,218,193,123,225,50,12,249,113,34,116,245,244,149,90,118,139,214,237,80,86,86,134,152,71,81, +20,165,254,159,111,135,143,69,255,97,163,148,112,75,105,137,122,134,245,17,117,43,92,233,54,230,231,229,34,46,38,26,19,125,63,169,254,212,60,255,169,97,194,156,133,232,53,112,176,208,81,163,6,166,104,104,223,4,55,67,130,170,133,149,230,86,54,88,188,113, +59,244,244,63,37,110,159,58,188,151,2,150,36,12,234,25,98,228,196,233,152,52,119,137,204,79,1,21,161,101,27,119,104,235,232,226,241,189,219,95,124,176,114,105,219,1,83,230,45,145,121,145,93,26,77,156,156,145,145,254,94,105,121,128,130,164,165,36,161, +32,47,23,163,167,204,172,81,254,211,210,210,198,140,37,43,209,181,79,95,177,159,91,217,218,161,94,253,250,120,112,59,252,179,218,89,223,216,4,75,54,237,70,3,83,115,254,49,10,88,18,102,84,63,120,77,193,212,249,1,112,114,117,83,218,151,135,11,199,150,173, +208,168,73,83,60,184,115,83,37,59,16,212,4,204,44,173,177,112,221,86,232,40,89,250,220,213,189,35,158,220,139,68,134,140,90,132,242,240,50,250,41,76,45,173,208,103,208,176,26,225,63,51,75,107,204,91,187,25,45,219,184,75,9,244,45,80,223,184,129,74,102, +167,178,221,210,155,99,225,250,109,176,108,104,43,116,92,153,1,171,70,191,56,170,174,174,1,215,246,29,241,245,160,97,85,34,89,36,137,212,164,119,216,178,124,1,226,159,71,87,187,62,178,176,110,168,178,28,65,109,29,93,44,223,126,64,166,151,111,21,225,227, +135,116,44,156,52,22,153,25,233,74,47,91,67,83,19,1,91,246,161,137,147,115,181,246,95,151,222,125,241,211,204,185,21,82,155,184,8,191,118,5,187,214,46,87,202,214,58,178,98,231,224,136,185,171,126,133,145,73,197,215,133,70,122,184,127,185,1,75,75,75,27, +173,218,119,66,251,238,61,209,166,83,87,185,28,169,74,202,202,202,112,237,220,41,252,247,192,174,106,241,174,143,133,117,67,124,63,246,63,56,190,103,155,74,190,240,192,167,71,214,202,126,10,36,74,236,179,199,88,62,115,178,74,54,133,51,50,49,197,202,221, +191,161,190,113,131,106,233,191,159,102,206,133,171,123,71,133,174,79,136,125,142,95,151,206,195,251,228,119,42,183,181,107,239,126,240,154,61,15,58,186,122,98,63,255,162,2,86,189,250,70,112,104,222,18,14,206,45,209,212,185,37,154,58,187,66,91,71,167, +218,218,155,157,249,17,103,142,30,68,200,133,51,40,18,35,144,160,242,105,185,153,5,6,141,30,143,46,125,250,97,165,143,55,98,159,61,86,73,61,131,70,255,132,225,19,166,85,73,155,66,47,157,197,158,117,43,84,82,118,179,150,173,224,191,113,39,127,127,176, +234,226,191,30,253,190,19,218,221,66,17,242,114,115,240,199,222,237,184,118,238,52,84,161,122,84,175,190,17,38,248,44,132,123,151,30,156,231,213,248,128,85,71,93,29,90,90,218,208,214,209,129,150,182,14,180,117,116,160,95,183,30,76,204,45,96,106,110,9, +83,11,75,152,152,91,194,210,182,17,76,205,45,107,228,237,106,94,78,54,130,206,157,66,232,197,179,85,240,43,247,41,9,183,215,192,193,104,223,173,39,212,213,213,177,247,255,247,42,82,5,110,29,58,195,111,229,198,42,89,39,44,231,224,230,181,184,122,230,132, +74,202,238,249,237,247,152,232,179,176,90,249,79,153,188,122,17,131,227,123,182,41,237,1,131,158,65,93,244,29,58,18,253,134,142,148,233,14,71,169,1,139,169,106,183,120,130,79,252,139,104,220,254,39,24,15,238,68,32,49,254,165,82,54,232,215,210,210,70, +115,183,54,112,107,255,21,220,187,245,68,3,37,43,3,19,181,207,127,175,227,94,224,202,169,63,17,25,246,15,242,20,216,78,200,161,121,75,116,234,217,7,61,250,14,248,108,75,49,20,176,170,152,194,130,124,188,140,126,138,132,216,24,164,38,189,67,90,74,50,210, +83,147,145,159,155,131,162,162,34,20,23,22,162,180,180,4,26,26,154,208,212,210,130,158,65,93,212,171,95,31,198,166,230,176,176,182,129,85,195,70,176,119,116,134,77,227,38,149,190,101,32,190,76,255,149,149,149,225,249,147,135,136,121,120,31,111,226,95, +226,221,235,87,200,201,202,68,126,94,46,202,74,75,161,171,167,15,61,131,186,48,54,53,67,35,135,102,176,111,230,4,103,183,182,48,85,162,162,54,5,44,130,32,106,61,117,168,11,8,130,160,128,69,16,4,65,1,139,32,8,10,88,4,65,16,20,176,8,130,32,40,96,17,4,65, +1,139,32,8,130,2,22,65,16,4,5,44,130,32,40,96,17,4,65,80,192,34,8,130,160,128,69,16,4,5,44,130,32,8,10,88,4,65,16,20,176,8,130,160,128,69,16,4,65,1,139,32,8,130,2,22,65,16,20,176,8,130,32,40,96,17,4,65,80,192,34,8,130,2,22,65,16,4,5,44,130,32,8,10,88, +4,65,80,192,34,8,130,160,128,69,16,4,65,1,139,32,8,10,88,4,65,16,20,176,8,130,160,128,69,16,4,65,1,139,32,8,130,2,22,65,16,20,176,8,130,32,40,96,17,4,65,80,192,34,8,130,2,22,65,16,68,181,68,61,32,32,32,128,235,132,51,103,206,224,204,153,51,8,11,11,67, +88,88,24,30,61,122,132,132,132,4,36,36,36,160,89,179,102,252,243,120,60,30,210,210,210,160,175,175,175,52,227,162,163,163,49,126,252,120,20,22,22,162,77,155,54,159,173,147,148,221,182,164,164,36,172,93,187,22,61,123,246,172,210,118,68,71,71,227,183,223, +126,67,167,78,157,170,93,121,39,78,156,168,48,166,228,225,193,131,7,88,189,122,53,246,236,217,131,208,208,80,212,169,83,7,77,155,54,229,127,190,118,237,90,220,186,117,11,169,169,169,112,112,112,128,186,186,58,10,10,10,176,125,251,118,116,236,216,81,106, +249,217,217,217,88,177,98,5,118,237,218,133,252,252,124,184,185,185,81,244,168,142,51,172,236,236,108,164,167,167,35,48,48,16,9,9,9,200,200,200,192,237,219,183,17,21,21,37,116,222,193,131,7,209,180,105,83,240,120,60,165,25,231,239,239,15,55,55,55,184, +186,186,2,0,194,195,195,193,24,171,242,78,82,118,219,50,50,50,112,226,196,137,42,111,199,187,119,239,112,233,210,165,106,85,94,185,79,197,141,41,89,217,191,127,63,58,119,238,12,30,143,135,111,191,253,22,13,27,54,132,183,183,55,198,142,29,203,63,103,225, +194,133,40,45,45,197,137,19,39,208,161,67,7,228,231,231,35,47,47,15,82,126,175,249,12,29,58,20,111,223,190,197,160,65,131,176,126,253,122,236,218,181,139,162,199,231,128,201,136,185,185,57,75,76,76,100,140,49,230,227,227,195,2,3,3,133,62,207,202,202, +98,17,17,17,76,153,116,238,220,153,133,134,134,242,255,86,87,87,103,5,5,5,172,170,81,118,219,30,63,126,204,28,29,29,171,188,29,65,65,65,204,211,211,179,90,149,87,238,83,113,99,74,22,94,190,124,201,116,117,117,43,248,39,55,55,151,221,187,119,79,236,216, +105,219,182,45,187,114,229,10,75,75,75,99,134,134,134,82,235,200,203,203,99,51,102,204,96,60,30,143,49,198,88,68,68,4,235,208,161,3,35,170,30,133,215,176,98,98,98,208,163,71,15,216,219,219,35,50,50,18,9,9,9,216,182,109,27,255,86,161,101,203,150,112,116, +116,68,120,120,120,133,219,8,209,207,246,238,221,11,123,123,123,216,219,219,99,207,158,61,0,0,63,63,63,68,69,69,225,167,159,126,66,96,96,32,134,14,29,138,178,178,50,180,109,219,22,59,118,236,192,31,127,252,1,0,248,231,159,127,112,251,246,109,0,192,209, +163,71,113,232,208,33,254,255,27,53,106,132,150,45,91,98,255,254,253,24,55,110,28,0,224,249,243,231,24,50,100,8,70,141,26,133,233,211,167,3,0,182,111,223,142,198,141,27,163,73,147,38,56,124,248,112,133,182,202,218,54,69,202,230,58,71,82,27,196,217,32, +169,140,253,251,247,195,214,214,22,174,174,174,120,246,236,153,216,250,119,236,216,129,77,155,54,1,0,110,220,184,1,111,111,111,236,216,177,3,190,190,190,232,221,187,55,28,28,28,112,243,230,77,169,229,137,179,65,92,159,8,206,90,202,125,90,92,92,92,97, +76,201,210,127,167,79,159,198,215,95,127,93,225,182,84,95,95,191,194,50,66,89,89,25,194,195,195,241,238,221,59,56,58,58,138,237,139,37,75,150,240,199,80,84,84,20,6,14,28,8,61,61,61,108,222,188,25,106,106,106,0,128,247,239,223,195,208,208,144,102,59,53, +105,134,213,185,115,103,150,159,159,207,2,2,2,216,216,177,99,217,205,155,55,249,191,58,43,86,172,96,211,166,77,99,241,241,241,44,47,47,79,168,28,209,207,174,94,189,202,156,156,156,216,147,39,79,88,116,116,52,115,118,118,102,87,174,92,97,153,153,153,172, +125,251,246,236,212,169,83,44,43,43,139,165,167,167,51,117,117,117,150,144,144,192,210,210,210,88,155,54,109,88,89,89,25,27,50,100,8,27,51,102,12,43,43,43,99,109,218,180,97,25,25,25,236,197,139,23,183,15,48,19,0,0,32,0,73,68,65,84,172,94,189,122,236, +159,127,254,97,57,57,57,204,203,203,139,117,238,220,153,49,198,88,84,84,20,211,214,214,102,193,193,193,44,47,47,143,5,7,7,51,103,103,103,22,27,27,203,158,62,125,202,236,236,236,132,126,153,25,99,50,183,77,214,178,5,103,88,146,206,225,106,131,168,13,146, +202,120,244,232,17,51,50,50,98,145,145,145,44,55,55,151,141,25,51,70,236,140,104,233,210,165,108,222,188,121,140,49,198,206,159,63,207,250,247,239,207,150,46,93,202,58,118,236,200,10,11,11,217,154,53,107,216,168,81,163,56,203,147,100,131,104,159,8,34, +232,83,113,99,74,22,223,44,92,184,144,77,157,58,85,232,216,193,131,7,89,135,14,29,88,135,14,29,216,130,5,11,248,51,44,59,59,59,214,171,87,47,254,172,93,220,12,235,209,163,71,172,81,163,70,172,184,184,152,13,30,60,152,237,222,189,91,232,243,232,232,104, +102,99,99,195,194,195,195,105,186,83,147,102,88,125,250,244,129,174,174,46,28,29,29,145,159,159,47,244,217,132,9,19,144,152,152,136,145,35,71,34,57,57,153,243,179,160,160,32,120,121,121,161,69,139,22,112,114,114,194,132,9,19,16,28,28,12,67,67,67,104, +106,106,194,216,216,24,245,234,213,67,131,6,13,0,0,230,230,230,48,49,49,65,247,238,221,241,235,175,191,226,221,187,119,120,246,236,25,118,236,216,1,79,79,79,24,25,25,225,246,237,219,232,212,169,19,186,119,239,14,3,3,3,248,250,250,10,217,96,111,111,143, +158,61,123,66,79,79,15,55,110,220,64,126,126,62,198,140,25,3,47,47,47,152,155,155,227,249,243,231,18,219,205,213,54,69,202,150,116,14,87,27,68,109,224,42,163,103,207,158,104,215,174,29,244,245,245,49,99,198,12,185,124,220,187,119,111,104,107,107,195, +214,214,22,69,69,69,156,229,113,181,85,176,79,4,17,244,169,184,49,37,75,255,181,107,215,14,33,33,33,40,41,41,225,31,243,244,244,196,250,245,235,81,175,94,61,161,53,207,232,232,104,4,5,5,161,71,143,30,18,219,236,226,226,130,86,173,90,193,207,207,15,119, +239,222,197,248,241,227,249,159,189,126,253,26,125,251,246,197,214,173,91,241,213,87,95,209,108,167,58,46,186,75,188,176,142,228,75,141,140,140,112,236,216,49,140,25,51,6,107,215,174,229,252,172,117,235,214,56,123,246,44,114,115,115,145,155,155,139,211, +167,79,163,117,235,214,82,235,247,245,245,197,226,197,139,49,117,234,84,76,152,48,1,243,231,207,199,156,57,115,0,0,142,142,142,184,119,239,30,146,146,146,0,0,103,207,158,149,104,187,179,179,51,154,55,111,142,176,176,48,68,68,68,96,222,188,121,24,62,124, +184,66,109,83,164,108,73,231,112,181,65,212,6,73,101,56,57,57,33,34,34,2,41,41,41,252,219,39,113,152,153,153,33,54,54,22,0,240,244,233,83,152,153,153,137,245,49,87,121,92,109,229,26,43,92,99,74,150,254,27,56,112,32,12,13,13,49,110,220,56,124,252,248, +17,0,208,176,97,67,188,123,247,14,15,30,60,192,228,201,147,165,214,91,90,90,138,210,210,82,126,112,91,188,120,49,54,111,222,12,95,95,95,104,105,105,1,0,82,82,82,208,187,119,111,44,95,190,28,131,6,13,226,95,155,146,146,194,95,158,32,170,113,192,226,226, +220,185,115,112,116,116,196,202,149,43,241,253,247,223,115,126,54,98,196,8,180,109,219,22,150,150,150,176,180,180,68,171,86,173,48,114,228,72,169,117,88,89,89,193,215,215,23,195,135,15,199,216,177,99,241,243,207,63,195,194,194,2,0,224,238,238,14,47,47, +47,56,57,57,193,213,213,21,9,9,9,18,203,25,54,108,24,44,45,45,97,107,107,11,27,27,27,28,57,114,4,69,69,69,10,181,77,145,178,37,157,195,213,6,81,27,36,149,209,165,75,23,12,27,54,12,77,155,54,133,179,179,51,114,115,115,197,218,57,122,244,104,196,199,199, +195,198,198,6,219,182,109,131,143,143,143,216,243,184,202,147,183,31,101,65,150,50,213,213,213,113,241,226,69,228,229,229,193,204,204,12,77,155,54,133,185,185,57,124,125,125,113,242,228,73,216,217,217,113,214,145,149,149,5,77,77,77,104,106,106,226,232, +209,163,252,241,51,110,220,56,76,156,56,17,0,240,241,227,71,244,233,211,7,177,177,177,24,55,110,28,212,212,212,208,171,87,47,0,64,80,80,16,166,76,153,34,52,195,35,84,135,26,83,209,123,2,249,249,249,40,43,43,67,221,186,117,101,250,44,47,47,15,101,101, +101,168,87,175,158,60,235,111,252,133,80,30,143,87,225,23,58,43,43,11,234,234,234,48,48,48,144,90,86,118,118,54,74,74,74,248,183,41,138,182,77,209,178,37,157,35,169,13,226,108,144,84,70,102,102,38,52,53,53,57,223,35,99,140,33,53,53,21,166,166,166,80, +87,87,231,108,15,87,121,242,244,163,172,200,90,102,74,74,10,226,227,227,97,96,96,0,103,103,103,104,104,104,40,92,103,105,105,169,204,215,23,21,21,65,91,91,155,162,73,77,14,88,4,65,16,53,226,150,144,32,8,130,2,22,65,16,20,176,8,130,32,40,96,17,4,65,80, +192,34,8,130,2,22,65,16,4,5,44,130,32,8,10,88,4,65,80,192,34,8,130,160,128,69,16,4,65,1,139,32,8,10,88,4,65,16,20,176,8,130,32,40,96,17,4,65,1,139,32,8,226,115,35,243,14,103,65,65,65,248,227,143,63,144,146,146,2,59,59,59,252,244,211,79,104,215,174,29, +245,32,65,16,85,134,84,229,103,0,240,246,246,198,203,151,47,225,235,235,139,73,147,38,161,113,227,198,88,185,114,37,146,146,146,196,170,230,114,169,228,102,101,101,193,223,223,31,59,119,238,68,81,81,145,208,103,31,62,124,192,158,61,123,240,226,197,11, +180,106,213,74,168,204,55,111,222,96,225,194,133,56,124,248,48,10,11,11,43,124,174,234,250,5,201,202,202,66,82,82,18,140,140,140,42,124,38,78,97,88,149,72,83,145,150,166,136,172,40,226,148,154,85,161,254,77,16,114,221,18,238,217,179,7,86,86,86,8,12,12, +196,246,237,219,49,98,196,8,28,61,122,20,199,142,29,195,221,187,119,113,253,250,245,10,215,112,169,228,14,25,50,4,47,94,188,128,135,135,7,252,252,252,240,219,111,191,241,63,75,76,76,196,195,135,15,177,114,229,202,10,101,14,24,48,0,117,235,214,197,212, +169,83,241,203,47,191,112,110,252,175,138,250,5,191,148,35,71,142,196,155,55,111,196,126,46,78,97,88,149,112,169,72,203,162,136,44,47,92,74,205,170,80,255,38,8,33,164,233,128,245,232,209,131,21,23,23,51,47,47,47,118,238,220,57,198,24,99,123,246,236,97, +55,111,222,100,137,137,137,236,135,31,126,144,89,37,247,214,173,91,204,206,206,142,149,150,150,50,198,24,59,113,226,4,107,222,188,185,84,85,100,30,143,199,110,222,188,201,74,74,74,24,99,140,45,88,176,128,205,156,57,83,110,149,94,69,235,23,196,199,199, +135,233,235,235,11,41,82,139,83,50,22,84,24,86,37,146,236,149,85,17,89,153,74,205,170,80,255,38,8,185,116,9,213,213,213,161,169,169,137,135,15,31,98,192,128,1,0,128,137,19,39,162,99,199,142,176,177,177,193,135,15,31,132,206,231,82,201,125,240,224,1,60, +61,61,249,183,73,253,251,247,71,76,76,12,10,10,10,56,109,80,83,83,67,199,142,29,161,161,161,129,141,27,55,226,207,63,255,228,171,32,139,162,138,250,203,57,114,228,8,222,190,125,139,111,190,249,134,243,60,113,10,195,178,170,56,243,120,60,44,92,184,16, +54,54,54,176,179,179,195,157,59,119,56,175,151,132,172,138,200,146,202,21,167,6,45,77,169,89,80,33,27,144,95,9,154,32,42,125,75,88,90,90,10,224,147,22,94,70,70,6,128,79,218,117,225,225,225,40,42,42,226,84,22,137,137,137,193,244,233,211,177,116,233,82, +0,159,212,86,4,85,94,116,116,116,160,174,174,46,81,126,74,28,175,95,191,134,186,186,58,63,32,113,161,204,250,111,221,186,133,109,219,182,225,192,129,3,82,207,109,217,178,37,2,2,2,112,252,248,113,216,217,217,33,54,54,22,211,166,77,195,145,35,71,112,235, +214,45,68,68,68,32,62,62,158,31,88,186,119,239,142,43,87,174,160,117,235,214,216,185,115,39,255,156,11,23,46,160,65,131,6,156,215,75,34,51,51,19,150,150,150,66,199,14,29,58,132,142,29,59,162,99,199,142,88,184,112,33,103,185,239,223,191,231,235,15,102, +103,103,227,245,235,215,216,189,123,55,212,213,213,113,233,210,37,104,105,105,33,33,33,1,151,47,95,198,143,63,254,136,173,91,183,34,63,63,31,113,113,113,0,128,144,144,16,236,216,177,3,65,65,65,56,127,254,60,2,2,2,112,255,254,125,20,20,20,224,226,197, +139,152,48,97,130,88,93,71,130,168,84,192,114,114,114,66,120,120,56,252,253,253,49,108,216,48,248,251,251,99,210,164,73,176,176,176,192,145,35,71,208,183,111,95,137,129,69,84,37,183,81,163,70,124,193,78,0,72,72,72,128,150,150,22,76,77,77,101,54,120,243, +230,205,240,243,243,195,252,249,243,1,0,39,79,158,132,137,137,9,76,76,76,112,242,228,73,149,212,255,246,237,91,12,30,60,24,131,6,13,194,185,115,231,240,246,237,91,177,107,119,229,136,42,12,203,163,226,252,207,63,255,96,198,140,25,176,181,181,69,203,150, +45,209,164,73,19,169,74,214,226,144,69,17,89,222,114,165,41,53,11,162,136,18,52,65,84,58,96,45,95,190,28,243,231,207,135,190,190,62,206,156,57,131,97,195,134,33,56,56,24,207,158,61,195,137,19,39,48,117,234,212,10,215,72,82,201,253,230,155,111,112,243, +230,77,68,70,70,2,0,86,175,94,45,147,104,106,82,82,18,220,221,221,249,202,190,197,197,197,252,39,81,3,6,12,64,76,76,12,98,98,98,248,183,172,202,174,63,60,60,28,227,198,141,67,118,118,54,30,60,120,128,204,204,76,169,51,28,65,228,81,113,110,209,162,5,78, +158,60,137,178,178,50,188,127,255,30,175,95,191,150,170,100,45,14,89,20,145,185,202,149,164,6,45,52,120,56,20,157,149,161,4,77,16,114,47,186,51,198,88,114,114,50,27,61,122,52,235,221,187,55,27,53,106,20,235,209,163,7,155,62,125,58,203,205,205,173,112, +110,70,70,6,115,113,113,97,0,248,255,60,61,61,249,159,31,58,116,136,233,232,232,48,115,115,115,230,228,228,196,146,146,146,100,90,68,158,63,127,62,179,183,183,103,253,250,245,99,246,246,246,236,217,179,103,98,109,85,85,253,130,12,25,50,68,166,69,119, +65,230,206,157,203,234,214,173,203,92,92,92,216,228,201,147,89,231,206,157,249,11,255,86,86,86,204,210,210,146,93,190,124,153,229,229,229,177,254,253,251,51,3,3,3,166,175,175,207,254,253,247,95,206,235,185,236,77,75,75,99,3,6,12,96,26,26,26,204,193,193, +129,153,153,153,49,27,27,27,118,253,250,117,169,118,101,102,102,50,55,55,55,102,109,109,205,108,108,108,216,147,39,79,36,46,186,31,63,126,156,13,25,50,132,221,188,121,147,255,128,131,199,227,49,47,47,47,102,105,105,201,44,45,45,217,160,65,131,88,126, +126,62,139,138,138,98,45,90,180,160,213,99,66,33,228,18,82,45,46,46,70,102,102,38,140,141,141,43,165,170,155,156,156,140,196,196,68,180,110,221,26,154,154,154,50,95,151,146,146,130,148,148,20,56,57,57,65,71,71,167,202,235,175,44,242,168,56,127,248,240, +1,122,122,122,208,213,213,149,122,189,44,253,198,165,136,44,169,92,121,212,160,37,161,10,37,104,226,203,133,148,159,9,130,168,61,107,88,4,65,16,20,176,8,130,32,106,67,192,42,43,43,195,134,13,27,100,62,94,219,168,141,237,252,82,124,71,124,230,128,117, +226,196,9,92,188,120,177,74,141,58,119,238,28,172,173,173,101,62,46,8,143,199,195,251,247,239,21,110,71,74,74,10,252,253,253,63,171,83,100,105,167,188,118,103,103,103,195,223,223,31,63,252,240,3,255,173,115,89,249,240,225,3,54,109,218,132,35,71,142,84, +248,44,43,43,11,126,126,126,248,254,251,239,57,203,149,212,166,232,232,104,108,220,184,81,165,253,89,21,117,16,213,36,96,137,75,114,5,254,151,4,43,250,127,101,112,242,228,73,12,25,50,68,230,227,130,136,38,224,114,37,235,138,35,51,51,83,98,50,113,85,33, +75,59,229,181,155,43,33,92,26,92,73,225,92,201,228,178,180,233,221,187,119,184,116,233,146,74,251,179,42,234,32,170,6,133,223,77,232,222,189,59,114,115,115,161,163,163,35,244,255,202,242,232,209,35,56,57,57,85,120,221,64,210,113,81,134,13,27,6,103,103, +103,254,203,137,229,182,213,20,100,109,167,60,228,231,231,163,121,243,230,216,180,105,19,212,212,212,208,184,113,99,204,158,61,27,83,166,76,145,233,122,55,55,55,248,248,248,96,232,208,161,21,126,204,226,226,226,240,242,229,75,168,171,171,195,202,202, +10,75,150,44,169,176,27,132,42,218,68,208,12,75,34,162,73,174,130,73,176,3,7,14,228,255,255,241,227,199,24,52,104,16,230,207,159,15,83,83,83,120,120,120,240,183,97,17,77,242,45,191,125,19,101,247,238,221,152,52,105,146,212,227,91,182,108,129,181,181, +53,220,220,220,176,117,235,86,120,123,123,3,128,80,2,174,180,100,93,113,9,190,229,248,250,250,194,204,204,12,30,30,30,72,72,72,16,123,235,41,46,73,121,239,222,189,176,183,183,135,189,189,61,246,236,217,3,0,248,239,127,255,11,47,47,47,116,234,212,9,14, +14,14,56,115,230,12,90,182,108,137,118,237,218,33,61,61,157,179,157,178,38,77,115,217,205,149,16,46,143,109,162,200,154,76,46,218,166,253,251,247,195,214,214,22,174,174,174,120,246,236,153,208,185,226,18,166,51,51,51,209,163,71,15,68,70,70,226,246,237, +219,240,244,244,68,78,78,142,196,243,165,213,65,212,96,164,189,89,234,227,227,195,58,119,238,204,242,243,243,89,64,64,0,27,59,118,44,75,79,79,103,234,234,234,44,33,33,65,232,255,81,81,81,76,79,79,143,5,7,7,179,130,130,2,54,117,234,84,246,205,55,223,48, +198,24,91,177,98,5,155,54,109,26,139,143,143,103,121,121,121,236,216,177,99,204,204,204,140,21,23,23,243,235,74,79,79,103,147,38,77,170,96,131,232,241,187,119,239,50,99,99,99,118,231,206,29,150,157,157,205,198,143,31,207,250,247,239,207,24,99,66,111, +91,11,218,38,174,29,75,151,46,101,243,230,205,99,140,49,118,254,252,121,214,191,127,127,22,29,29,205,116,116,116,88,72,72,8,43,46,46,102,62,62,62,172,123,247,238,21,108,218,182,109,27,243,240,240,96,175,95,191,102,143,31,63,102,47,95,190,100,87,175,94, +101,78,78,78,236,201,147,39,44,58,58,154,57,59,59,179,43,87,174,176,157,59,119,50,23,23,23,150,155,155,203,70,142,28,201,186,116,233,194,10,10,10,88,175,94,189,216,225,195,135,37,182,243,197,139,23,172,94,189,122,236,159,127,254,97,57,57,57,204,203,203, +139,255,38,186,104,127,202,106,119,116,116,52,179,177,177,97,225,225,225,140,49,38,179,109,226,222,168,95,189,122,53,155,53,107,150,208,54,64,26,26,26,236,253,251,247,18,219,244,232,209,35,102,100,100,196,34,35,35,89,110,110,46,27,51,102,12,63,19,33, +56,56,152,57,59,59,179,216,216,88,246,244,233,83,102,103,103,199,223,10,231,242,229,203,204,206,206,142,217,217,217,177,224,224,96,206,243,185,234,32,106,249,246,50,64,197,36,87,193,36,88,209,132,216,78,157,58,161,103,207,158,208,209,209,129,159,159, +31,110,222,188,9,160,98,146,111,183,110,221,176,102,205,26,161,219,132,189,123,247,98,194,132,9,21,234,23,61,126,231,206,29,244,237,219,23,238,238,238,168,91,183,174,208,204,72,16,121,146,117,5,105,219,182,45,60,60,60,160,169,169,9,95,95,95,68,68,68, +84,88,163,19,151,164,28,20,20,4,47,47,47,180,104,209,2,78,78,78,152,48,97,2,130,131,131,249,253,162,175,175,15,123,123,123,120,120,120,64,71,71,7,214,214,214,40,46,46,150,216,78,121,146,166,101,177,91,92,66,184,172,182,137,67,150,100,114,113,109,234, +217,179,39,218,181,107,7,125,125,125,204,152,49,131,255,25,87,194,116,159,62,125,96,104,104,136,6,13,26,192,195,195,131,243,124,174,58,136,47,224,150,80,158,100,213,251,247,239,243,111,3,79,159,62,141,22,45,90,0,168,152,228,91,167,78,29,161,20,145,210, +210,82,220,187,119,15,238,238,238,66,229,137,59,222,162,69,11,220,184,113,3,105,105,105,0,128,51,103,206,64,145,118,72,74,240,125,244,232,17,94,188,120,193,95,44,110,222,188,57,212,212,212,144,146,146,194,223,233,84,92,146,114,235,214,173,113,246,236, +89,228,230,230,34,55,55,23,167,79,159,70,235,214,173,1,64,104,59,28,113,253,41,174,157,242,36,77,115,217,13,72,78,8,151,197,54,73,72,75,38,23,215,38,39,39,39,68,68,68,240,183,174,57,125,250,52,255,51,174,132,233,229,203,151,195,218,218,26,245,235,215, +199,170,85,171,56,207,231,170,131,248,66,23,221,37,97,98,98,130,57,115,230,224,225,195,135,200,207,207,231,191,74,112,238,220,57,204,156,57,19,140,49,28,56,112,0,193,193,193,152,49,99,6,134,15,31,14,77,77,77,156,62,125,26,223,127,255,125,133,242,196, +29,239,214,173,27,134,14,29,10,7,7,7,52,106,212,8,238,238,238,50,237,143,37,202,232,209,163,177,119,239,94,216,216,216,64,77,77,13,87,174,92,1,0,88,88,88,96,221,186,117,8,10,10,66,126,126,62,206,159,63,15,224,147,16,199,207,63,255,140,33,67,134,96,238, +220,185,248,225,135,31,80,191,126,125,48,198,112,229,202,21,140,24,49,2,183,110,221,226,239,67,245,227,143,63,98,228,200,145,50,61,145,19,215,78,119,119,119,120,121,121,193,201,201,9,118,118,118,66,179,34,209,254,228,178,251,227,199,143,232,211,167,15, +98,99,99,49,110,220,56,140,27,55,14,158,158,158,184,118,237,90,165,124,93,191,126,125,108,220,184,17,221,186,117,131,161,161,33,140,140,140,16,18,18,194,217,166,46,93,186,96,216,176,97,104,218,180,41,26,54,108,8,79,79,79,161,7,38,127,255,253,55,108,109, +109,1,0,29,58,116,192,55,223,124,131,27,55,110,224,247,223,127,71,100,100,36,74,75,75,209,190,125,123,116,234,212,73,226,249,92,117,16,181,124,13,75,30,4,51,241,147,147,147,249,91,17,11,110,95,156,157,157,205,255,91,112,253,106,232,208,161,66,127,75, +59,126,224,192,1,22,27,27,203,114,115,115,217,250,245,235,133,214,82,228,129,199,227,137,181,149,49,198,82,83,83,249,219,50,151,83,88,88,88,97,125,45,63,63,191,194,54,196,89,89,89,114,217,33,169,157,229,59,39,228,228,228,136,221,14,90,176,63,185,236, +86,37,73,73,73,236,246,237,219,21,236,231,106,211,199,143,31,197,238,246,81,190,213,114,122,122,186,204,245,75,58,159,171,14,162,102,162,161,170,64,104,97,97,81,225,152,232,134,109,229,235,87,247,239,223,71,139,22,45,42,60,246,150,116,28,248,244,50,99, +159,62,125,208,166,77,27,60,127,254,28,87,175,94,85,200,78,53,53,53,177,182,150,223,50,138,162,173,173,45,118,157,76,16,121,85,99,184,218,9,128,255,68,79,90,127,114,217,173,74,44,45,45,43,236,110,42,173,77,245,235,215,151,88,94,189,122,245,228,170,95, +210,249,92,117,16,53,19,165,238,214,144,155,155,139,39,79,158,136,149,254,226,226,216,177,99,232,217,179,103,133,192,33,233,120,57,137,137,137,72,78,78,70,171,86,173,42,4,146,154,132,180,118,82,155,8,66,5,1,139,32,8,66,149,208,110,13,4,65,80,192,34,8, +130,160,128,69,16,4,5,44,130,32,8,10,88,4,65,16,20,176,8,130,160,128,69,16,4,65,1,139,32,8,130,2,22,65,16,20,176,8,130,32,40,96,17,4,65,80,192,34,8,130,2,22,65,16,4,5,44,130,32,8,165,6,172,148,148,20,172,94,189,26,107,215,174,197,254,253,251,249,123, +134,3,159,246,65,63,122,244,168,208,185,91,182,108,129,170,118,172,145,164,234,44,15,85,173,236,92,29,85,135,149,209,143,138,80,25,21,113,85,218,28,29,29,141,254,253,251,99,255,254,253,159,205,39,138,140,19,174,62,81,229,184,99,140,33,53,53,181,122,6, +172,183,111,223,226,215,95,127,69,90,90,26,66,67,67,209,165,75,23,204,158,61,27,0,208,184,113,99,248,251,251,227,246,237,219,0,128,57,115,230,32,59,59,91,161,253,213,101,65,84,213,89,17,170,90,217,185,58,170,14,43,163,31,229,65,94,245,237,170,182,217, +223,223,31,110,110,110,112,117,117,253,108,62,81,100,156,112,245,137,42,199,221,254,253,251,209,184,113,99,148,148,148,40,60,22,20,69,166,45,146,45,45,45,177,110,221,58,0,64,70,70,6,186,116,233,130,35,71,142,96,220,184,113,216,180,105,19,166,77,155,134, +53,107,214,224,254,253,251,56,116,232,144,202,156,42,170,234,76,212,140,126,84,134,250,182,42,109,78,73,73,193,244,233,211,43,40,54,145,31,37,215,219,164,73,19,133,148,188,43,171,18,47,119,75,141,141,141,177,120,241,98,190,202,238,192,129,3,97,101,101, +133,65,131,6,97,251,246,237,208,210,210,18,123,157,56,133,222,29,59,118,192,215,215,23,189,123,247,134,131,131,3,95,195,80,22,85,103,73,215,74,82,2,22,69,146,178,179,60,74,203,149,85,29,22,167,18,45,169,93,229,72,83,106,22,167,102,45,106,187,96,63,74, +82,176,22,189,189,16,188,254,210,165,75,24,62,124,56,255,151,210,219,219,27,23,47,94,20,107,187,52,245,109,73,253,200,101,179,183,183,55,90,182,108,201,255,183,122,245,106,137,229,60,127,254,28,67,134,12,193,168,81,163,48,125,250,244,10,109,243,243,243, +67,84,84,20,126,250,233,39,4,6,6,74,244,139,180,114,184,198,142,36,159,74,26,39,226,234,18,103,147,96,159,200,58,238,158,63,127,46,81,157,93,214,122,223,190,125,139,237,219,183,115,126,183,197,141,43,209,177,160,232,253,40,39,145,145,145,172,85,171,86, +66,199,110,220,184,33,116,108,217,178,101,76,79,79,143,165,164,164,136,45,67,146,66,239,210,165,75,89,199,142,29,89,97,97,33,91,179,102,13,27,53,106,148,204,170,206,226,174,229,82,14,22,84,62,150,164,144,44,143,210,114,101,85,135,37,169,68,139,107,151, +32,210,148,154,197,169,89,139,218,46,216,143,226,20,172,69,17,189,158,199,227,49,79,79,79,182,125,251,118,246,242,229,75,102,109,109,205,10,11,11,197,218,46,77,125,91,82,63,114,217,92,80,80,192,114,114,114,88,88,88,24,115,117,117,101,185,185,185,18,203, +137,138,138,98,218,218,218,44,56,56,152,229,229,229,137,85,36,106,223,190,61,59,117,234,20,203,202,202,146,232,23,105,229,112,141,29,113,253,194,53,78,68,235,146,100,147,96,159,200,58,238,184,212,217,101,173,87,48,38,72,234,119,113,227,74,112,44,168, +84,249,89,148,211,167,79,163,125,251,246,0,128,55,111,222,96,251,246,237,24,61,122,52,252,252,252,196,158,207,165,232,219,187,119,111,104,107,107,195,214,214,22,69,69,69,50,171,58,139,187,150,171,30,65,36,41,36,203,163,180,92,89,213,97,46,149,104,209, +118,137,34,175,82,179,56,149,232,114,196,41,88,159,60,121,18,38,38,38,48,49,49,193,201,147,39,43,92,175,166,166,134,253,251,247,99,197,138,21,240,241,241,129,183,183,55,95,4,68,212,118,105,234,219,146,250,145,203,230,242,219,9,111,111,111,252,254,251, +239,208,215,215,231,244,189,189,189,61,122,246,236,9,61,61,189,10,109,51,52,52,132,166,166,38,140,141,141,81,175,94,61,78,191,112,149,195,53,118,196,245,139,180,113,34,88,23,151,77,229,200,163,118,45,73,157,93,145,122,37,245,187,184,113,37,58,22,84,122, +75,88,84,84,132,132,132,4,44,88,176,0,191,253,246,27,22,45,90,4,0,152,57,115,38,252,252,252,176,101,203,22,132,135,135,35,44,44,172,194,181,92,138,190,162,247,223,242,168,58,139,94,203,85,143,32,146,20,146,229,81,90,174,172,234,48,151,74,180,180,53,9, +46,165,102,113,106,214,226,84,162,5,251,91,84,193,122,192,128,1,136,137,137,65,76,76,12,6,12,24,32,246,250,70,141,26,97,209,162,69,8,9,9,193,212,169,83,37,218,163,168,207,184,108,6,128,201,147,39,99,234,212,169,112,113,113,145,107,140,137,182,77,81,191, +136,150,195,53,118,196,181,91,218,56,17,60,159,203,38,89,203,19,68,146,58,187,34,245,74,234,119,113,227,170,74,158,18,2,192,195,135,15,161,171,171,11,119,119,119,196,197,197,33,34,34,2,141,26,53,194,165,75,151,16,27,27,139,89,179,102,65,71,71,135,191, +0,95,90,90,90,97,145,206,210,210,18,182,182,182,176,177,177,193,145,35,71,196,206,28,0,97,85,103,87,87,87,254,47,186,172,139,129,178,212,83,174,144,108,103,103,135,229,203,151,243,239,205,5,149,150,93,93,93,133,214,182,206,157,59,7,71,71,71,172,92,185, +18,223,127,255,189,196,186,4,85,135,157,157,157,37,46,54,143,24,49,2,109,219,182,229,107,250,181,106,213,74,72,230,93,81,70,143,30,141,248,248,120,216,216,216,96,219,182,109,240,241,241,169,96,187,32,115,231,206,69,102,102,38,234,215,175,15,123,123,123, +36,38,38,66,91,91,155,63,123,208,214,214,150,120,125,106,106,42,38,78,156,88,41,253,63,73,253,200,101,243,190,125,251,112,236,216,49,4,6,6,194,198,198,6,61,122,244,144,217,247,162,109,83,212,47,162,229,112,141,29,113,200,58,78,100,181,73,158,242,202, +213,217,155,54,109,138,141,27,55,10,173,71,201,91,175,164,126,23,55,174,148,245,78,69,149,33,171,162,111,101,85,157,101,173,71,146,66,178,60,74,203,149,85,29,86,68,37,90,17,53,107,73,42,209,92,10,214,92,109,207,203,203,99,22,22,22,236,205,155,55,42,27, +27,210,108,86,134,106,180,178,253,34,105,236,72,66,30,117,106,89,108,146,86,158,52,117,118,89,234,21,183,174,45,169,223,165,141,171,106,163,252,44,14,89,21,125,43,171,234,44,107,61,146,20,146,229,81,90,174,172,234,176,188,42,209,178,32,78,205,90,146, +74,116,57,226,20,172,185,174,223,183,111,31,122,247,238,141,134,13,27,170,108,108,72,179,185,50,190,87,149,95,36,141,29,73,200,51,59,149,197,38,121,202,147,85,228,86,150,122,37,245,187,180,113,37,247,216,174,174,66,170,181,69,213,185,182,18,21,21,5,43, +43,171,74,45,160,18,85,143,162,234,236,130,228,228,228,224,217,179,103,232,208,161,67,149,219,79,202,207,4,65,212,24,232,149,113,130,32,106,79,192,138,139,139,195,234,213,171,249,255,246,239,223,47,148,116,153,148,148,164,180,100,226,218,146,152,252, +226,197,11,204,157,59,23,67,134,12,193,180,105,211,16,17,17,161,212,54,214,214,196,86,130,168,116,192,138,142,142,198,222,189,123,145,158,158,142,244,244,116,100,102,102,10,37,93,102,100,100,8,37,19,87,38,185,177,54,36,38,255,249,231,159,104,215,174, +29,10,11,11,209,175,95,63,24,26,26,162,127,255,254,88,181,106,149,210,218,88,91,19,91,9,66,26,50,61,37,108,222,188,57,214,175,95,207,255,59,59,59,91,98,210,101,101,147,27,107,50,111,222,188,193,132,9,19,112,229,202,21,116,238,220,153,127,124,242,228, +201,104,211,166,13,58,117,234,36,243,147,153,207,197,231,76,108,37,136,74,207,176,128,79,111,76,79,159,62,29,211,167,79,199,202,149,43,43,36,93,150,35,154,220,168,72,50,42,80,115,19,147,79,159,62,141,94,189,122,9,5,43,0,176,179,179,195,228,201,147,133, +246,14,19,215,198,204,204,76,244,232,209,3,145,145,145,184,125,251,54,60,61,61,145,147,147,35,179,221,53,62,177,149,32,100,88,179,224,228,252,249,243,172,121,243,230,108,235,214,173,108,235,214,173,236,216,177,99,66,73,151,143,31,63,102,142,142,142,252, +151,196,202,147,27,21,73,70,173,233,137,201,75,151,46,101,83,166,76,17,219,143,155,54,109,98,67,135,14,229,108,35,99,140,93,190,124,153,217,217,217,49,59,59,59,22,28,28,252,69,37,182,18,132,82,94,28,181,181,181,21,154,13,221,186,117,75,236,121,130,201, +141,7,15,30,228,39,69,150,31,123,254,252,57,154,55,111,206,79,176,20,71,121,98,114,249,44,196,214,214,182,66,98,114,249,103,19,39,78,4,240,41,185,119,226,196,137,24,57,114,36,142,30,61,42,148,144,41,88,119,94,94,30,63,65,20,0,102,204,152,129,5,11,22, +84,176,65,48,233,179,188,252,224,224,96,232,233,233,9,37,177,138,110,197,210,166,77,27,204,157,59,23,197,197,197,21,182,217,185,124,249,50,186,117,235,198,217,70,53,53,53,244,233,211,7,134,134,134,208,208,208,224,159,35,152,216,202,101,55,240,191,196, +86,224,211,214,41,130,185,95,130,253,46,169,141,63,252,240,3,255,124,73,253,40,152,216,42,10,189,151,69,124,246,91,66,69,144,39,225,89,144,154,156,152,252,237,183,223,194,200,200,8,99,199,142,69,70,70,6,0,160,184,184,24,115,231,206,197,211,167,79,249, +73,194,146,218,8,0,203,151,47,135,181,181,53,234,215,175,207,95,168,255,82,18,91,9,226,179,5,44,121,18,158,5,169,201,137,201,117,234,212,193,197,139,23,81,82,82,2,115,115,115,56,56,56,192,200,200,8,55,110,220,64,104,104,40,140,140,140,56,219,248,247, +223,127,227,247,223,127,199,239,191,255,142,227,199,143,99,239,222,189,252,109,169,191,136,196,86,130,144,130,202,223,116,207,206,206,70,73,73,137,220,57,69,239,223,191,135,177,177,49,52,52,132,239,90,179,178,178,160,174,174,14,3,3,3,161,227,249,249, +249,40,43,43,67,221,186,117,165,214,157,153,153,9,77,77,77,169,57,82,121,121,121,40,43,43,83,40,63,45,57,57,25,175,94,189,130,185,185,57,154,52,105,34,87,27,37,33,205,238,7,15,30,96,204,152,49,120,242,228,9,82,82,82,96,106,106,10,117,117,117,185,218, +120,247,238,93,76,152,48,1,15,30,60,144,218,143,31,62,124,128,158,158,30,116,117,117,233,155,68,84,9,42,79,126,86,52,25,181,166,39,38,151,207,92,20,105,163,36,106,123,98,43,65,124,246,25,22,81,117,212,244,196,86,130,160,128,69,16,68,173,129,146,159,9, +130,160,128,69,16,4,65,1,139,32,8,10,88,4,65,16,20,176,8,130,32,40,96,17,4,65,1,139,32,8,130,2,22,65,16,4,5,44,130,32,40,96,17,4,65,80,192,34,8,130,160,128,69,16,4,5,44,130,32,8,10,88,4,65,16,74,15,88,49,49,49,152,60,121,50,198,140,25,131,115,231,206, +85,27,227,197,169,82,151,19,25,25,41,116,238,179,103,207,80,80,80,64,30,151,147,202,170,124,11,94,175,40,202,82,4,191,117,235,22,174,95,191,94,37,253,86,85,227,47,37,37,5,171,87,175,198,218,181,107,177,127,255,126,190,86,192,23,27,176,138,139,139,225, +225,225,1,83,83,83,116,237,218,21,75,151,46,229,11,65,124,110,196,169,82,3,192,199,143,31,49,121,242,100,161,115,183,108,217,130,176,176,48,138,64,114,194,165,242,205,69,185,10,180,224,245,138,162,44,69,240,107,215,174,225,252,249,243,42,239,179,170, +28,127,111,223,190,197,175,191,254,138,180,180,52,254,254,255,179,103,207,174,189,3,82,154,14,88,114,114,50,211,213,213,101,233,233,233,213,78,163,236,252,249,243,172,127,255,254,21,142,159,58,117,138,1,96,55,110,220,96,140,49,150,149,149,197,244,245, +245,217,220,185,115,73,216,77,78,178,178,178,88,68,68,68,5,13,74,105,168,171,171,179,130,130,2,161,235,21,37,58,58,90,230,122,185,8,12,12,100,62,62,62,42,239,179,170,28,127,130,58,146,140,49,246,225,195,7,214,188,121,115,118,248,240,225,90,57,30,165, +206,176,44,44,44,48,101,202,20,56,59,59,99,205,154,53,200,207,207,7,0,92,186,116,9,195,135,15,71,249,134,165,222,222,222,184,120,241,162,88,117,100,121,21,137,197,169,13,123,123,123,163,101,203,150,252,127,171,87,175,6,80,81,149,26,0,130,131,131,225, +238,238,206,87,140,57,124,248,48,154,53,107,134,224,224,224,10,237,83,134,90,114,249,47,168,181,181,53,220,220,220,176,117,235,86,120,123,123,75,44,67,146,130,245,127,255,251,95,120,121,121,161,83,167,78,112,112,112,192,153,51,103,208,178,101,75,180, +107,215,14,233,233,233,21,110,181,68,213,151,37,217,39,173,92,174,62,144,164,242,205,213,14,65,21,232,23,47,94,8,93,175,136,162,118,57,226,212,178,37,141,67,89,144,164,14,46,169,93,178,218,41,203,248,147,84,135,232,120,145,228,103,73,24,27,27,99,241, +226,197,252,246,136,107,163,168,82,186,42,191,159,85,62,195,42,39,52,52,148,245,238,221,155,181,106,213,138,101,103,103,51,30,143,199,60,61,61,217,246,237,219,217,203,151,47,153,181,181,53,43,44,44,20,171,142,44,143,34,177,36,181,225,130,130,2,150,147, +147,195,194,194,194,152,171,171,43,203,205,205,21,171,74,205,24,99,142,142,142,44,42,42,138,153,153,153,177,164,164,36,214,188,121,115,22,17,17,193,204,204,204,88,70,70,134,210,213,146,239,222,189,203,140,141,141,217,157,59,119,88,118,118,54,27,63,126, +60,127,230,39,90,6,151,130,245,206,157,59,153,139,139,11,203,205,205,101,35,71,142,100,93,186,116,97,5,5,5,172,87,175,94,21,126,49,197,169,47,75,178,79,90,185,92,125,32,73,229,155,171,29,130,42,208,130,215,43,170,168,205,165,150,45,105,28,74,155,97,73, +26,103,92,237,146,102,103,57,210,198,31,87,29,162,227,69,156,159,185,102,88,140,49,118,227,198,13,214,170,85,43,137,109,20,85,74,87,213,247,243,179,41,63,151,150,150,162,71,143,30,232,222,189,59,122,245,234,133,35,71,142,192,219,219,27,251,247,239,71, +167,78,157,112,245,234,85,120,123,123,67,91,91,27,0,196,170,35,203,170,72,44,73,109,184,77,155,54,200,205,205,133,183,183,55,126,255,253,119,190,218,139,168,42,245,219,183,111,145,159,159,15,55,55,55,140,25,51,6,99,199,142,133,158,158,30,58,117,234,132, +110,221,186,33,36,36,4,67,134,12,17,106,95,101,213,146,27,55,110,140,190,125,251,194,221,221,157,255,107,19,16,16,32,182,12,46,5,235,114,91,244,245,245,97,111,111,15,7,7,7,232,232,232,192,218,218,26,197,197,197,66,54,139,83,95,222,189,123,183,88,251, +236,237,237,165,150,203,213,7,226,90,36,126,204,0,0,25,220,73,68,65,84,224,106,135,160,2,120,114,114,50,255,26,69,21,181,1,110,181,108,73,227,144,11,73,227,172,172,172,140,211,63,162,118,158,60,121,18,83,166,76,1,0,236,218,181,11,29,59,118,148,58,254, +10,10,10,56,235,16,28,47,92,42,219,146,56,125,250,52,218,183,111,47,177,141,162,74,233,170,252,126,86,249,162,251,153,51,103,224,238,238,142,236,236,108,48,198,160,173,173,205,87,41,110,212,168,17,22,45,90,132,144,144,16,190,170,49,32,94,29,89,86,69, +98,46,197,232,201,147,39,99,234,212,169,112,113,113,145,104,111,112,112,48,60,61,61,1,0,211,166,77,67,104,104,40,63,160,121,122,122,138,189,45,172,172,90,114,139,22,45,112,227,198,13,164,165,165,241,251,76,168,147,5,202,224,82,176,6,192,239,91,73,253, +88,142,56,245,101,46,53,103,105,229,114,245,129,56,164,181,67,28,138,42,106,3,220,106,217,146,198,161,40,217,217,217,124,153,56,73,227,76,90,187,68,237,28,48,96,0,98,98,98,16,19,19,131,1,3,6,200,52,254,228,169,67,86,149,237,162,162,34,36,36,36,96,193, +130,5,248,237,183,223,176,104,209,34,137,109,20,85,74,175,202,239,167,202,3,214,128,1,3,224,226,226,130,134,13,27,194,198,198,6,105,105,105,252,251,109,0,72,77,77,197,196,137,19,165,106,230,201,170,72,44,73,109,120,223,190,125,56,118,236,24,2,3,3,97, +99,99,131,30,61,122,72,12,88,229,191,6,77,154,52,193,216,177,99,49,98,196,8,254,128,185,118,237,154,194,182,73,82,75,238,214,173,27,134,14,29,10,7,7,7,184,186,186,34,57,57,89,40,64,8,194,165,96,45,15,226,212,151,21,85,172,150,167,15,42,211,142,202,216, +39,73,45,91,150,113,88,30,24,15,28,56,128,65,131,6,113,142,51,121,219,165,173,173,13,19,19,19,152,152,152,64,91,91,91,166,241,39,79,29,178,168,108,63,124,248,16,186,186,186,112,119,119,71,92,92,28,34,34,34,208,168,81,35,137,109,20,85,74,175,202,239,103, +149,173,97,197,199,199,179,168,168,40,86,90,90,202,63,150,151,151,199,44,44,44,216,155,55,111,56,175,141,138,138,98,45,90,180,224,63,117,20,44,131,235,233,148,50,158,76,22,20,20,40,221,182,220,220,92,150,149,149,37,116,236,192,129,3,44,54,54,150,229, +230,230,178,245,235,215,179,89,179,102,113,150,145,153,153,201,114,114,114,42,221,190,244,244,116,150,159,159,47,213,62,101,247,65,101,218,33,175,125,130,164,166,166,178,146,146,18,161,99,210,198,97,97,97,33,187,125,251,54,75,77,77,149,121,156,41,203, +63,92,227,79,158,58,196,249,89,158,39,189,162,109,204,203,203,99,217,217,217,159,253,251,169,146,53,44,0,104,220,184,113,133,99,251,246,237,67,239,222,189,209,176,97,67,153,3,164,172,138,196,138,42,70,139,162,163,163,163,116,219,196,221,159,127,248,240, +1,125,250,244,65,155,54,109,240,252,249,115,92,189,122,149,179,12,73,10,214,242,34,78,125,185,50,235,7,178,246,65,101,218,81,25,251,196,169,101,75,27,135,218,218,218,104,223,190,189,92,227,76,89,254,225,26,127,242,212,81,25,149,109,113,109,20,167,148, +254,57,190,159,242,82,41,33,213,168,168,40,88,89,89,193,220,220,156,243,60,101,40,18,171,10,101,218,150,152,152,136,228,228,100,180,106,213,74,166,133,223,218,216,7,159,3,89,199,33,81,243,253,79,202,207,4,65,212,24,40,249,153,32,8,10,88,4,65,16,20,176, +8,130,160,128,69,16,4,65,1,139,32,8,130,2,22,65,16,20,176,8,130,32,40,96,17,4,65,80,192,34,8,130,2,22,65,16,4,5,44,130,32,8,10,88,4,65,80,192,34,8,130,160,128,69,16,4,33,15,234,1,130,106,9,28,188,120,241,2,107,214,172,193,174,93,187,112,253,250,117,24, +25,25,73,220,48,141,199,227,33,45,45,77,234,70,109,178,158,39,142,164,164,36,172,93,187,150,191,29,173,50,56,113,226,4,18,18,18,208,172,89,179,42,115,64,116,116,52,198,143,31,143,194,194,66,180,105,211,70,169,118,165,164,164,96,219,182,109,136,136,136, +64,76,76,12,12,12,12,248,27,193,61,125,250,20,65,65,65,112,117,117,229,159,123,224,192,1,180,111,223,94,226,246,206,181,17,174,62,82,5,5,5,5,216,176,97,3,30,62,124,8,109,109,109,185,55,76,84,21,113,113,113,216,179,103,15,194,194,194,16,22,22,198,23,150, +168,12,17,17,17,184,122,245,106,165,203,145,123,134,245,231,159,127,162,93,187,118,40,44,44,68,191,126,253,96,104,104,136,254,253,251,99,213,170,85,98,207,151,85,237,183,50,170,192,242,168,16,75,163,92,165,248,246,237,219,136,138,138,170,210,129,226, +239,239,15,55,55,55,126,224,80,166,93,92,170,192,141,27,55,134,191,191,63,110,223,190,13,0,152,51,103,14,178,179,179,191,168,96,37,173,143,84,65,94,94,30,150,47,95,142,156,156,28,124,255,253,247,21,246,166,255,92,72,82,81,175,12,47,94,188,64,104,104, +168,114,13,149,182,135,242,235,215,175,153,129,129,1,11,11,11,19,58,254,234,213,43,102,100,100,196,66,67,67,57,213,130,101,85,21,150,23,121,84,136,101,85,41,246,241,241,97,129,129,129,85,186,71,117,231,206,157,197,246,161,50,236,146,166,10,124,246,236, +89,214,166,77,27,22,20,20,196,28,29,29,89,81,81,209,23,167,108,93,213,202,201,105,105,105,204,208,208,144,49,198,216,190,125,251,216,192,129,3,171,181,138,122,101,56,120,240,32,27,61,122,116,213,42,63,159,62,125,26,189,122,245,66,231,206,157,133,142, +219,217,217,97,242,228,201,56,122,244,104,5,117,88,81,181,96,73,170,200,130,231,73,82,213,149,164,144,203,5,151,114,239,166,77,155,0,124,210,87,243,246,246,22,82,41,46,46,46,70,76,76,12,122,244,232,1,123,123,123,68,70,70,2,16,175,86,44,218,102,81,53, +93,81,196,149,225,231,231,135,168,168,40,252,244,211,79,8,12,12,20,58,95,22,187,36,41,23,75,66,84,21,120,224,192,129,176,178,178,194,160,65,131,176,125,251,118,104,105,105,85,184,166,38,41,99,75,243,129,44,51,121,209,62,146,100,203,146,37,75,112,232, +208,33,0,159,182,104,30,56,112,160,204,62,41,41,41,193,230,205,155,177,99,199,14,44,92,184,144,127,92,220,181,226,190,23,226,218,89,25,69,237,114,68,85,212,229,241,13,87,93,60,30,15,19,38,76,224,75,138,169,116,134,181,116,233,82,54,101,202,20,177,159, +109,218,180,137,13,29,58,180,130,58,172,160,218,47,151,42,178,224,121,226,84,117,185,20,114,37,205,176,164,41,247,206,155,55,79,232,23,69,80,165,216,199,199,135,117,238,220,153,229,231,231,179,128,128,0,54,118,236,88,137,106,197,162,109,22,85,211,21, +68,82,25,153,153,153,172,125,251,246,236,212,169,83,21,84,100,164,217,37,73,129,87,86,85,224,114,150,45,91,198,244,244,244,88,74,74,138,68,69,157,154,162,140,205,229,131,99,199,142,49,51,51,51,86,92,92,44,115,31,113,217,242,232,209,35,214,168,81,35,86, +92,92,204,6,15,30,204,118,239,222,45,147,79,210,210,210,152,182,182,54,155,61,123,54,235,208,161,3,27,49,98,4,43,45,45,149,120,173,184,239,133,104,59,21,85,212,22,157,97,137,170,168,203,227,27,113,117,29,60,120,144,141,26,53,138,121,121,121,177,239,191, +255,94,46,53,38,133,103,88,109,218,180,65,104,104,104,5,229,97,0,184,124,249,50,95,8,179,92,29,86,84,141,227,206,157,59,124,85,228,186,117,235,242,127,89,197,33,168,170,91,84,84,36,164,46,108,96,96,0,95,95,95,169,1,88,222,107,4,85,138,1,160,79,159,62, +208,213,213,133,163,163,35,242,243,243,133,212,138,157,156,156,248,106,197,162,109,158,48,97,2,18,19,19,49,114,228,72,33,181,99,0,18,203,48,52,52,132,166,166,38,140,141,141,43,168,144,72,179,75,80,129,215,203,203,139,175,192,43,203,140,185,92,65,230, +205,155,55,216,190,125,59,70,143,30,13,63,63,63,137,215,148,171,2,235,232,232,192,207,207,79,232,215,83,176,15,36,181,83,218,24,16,44,67,154,255,4,21,172,61,60,60,132,20,172,185,124,208,173,91,55,172,89,179,6,154,154,154,50,247,17,151,45,46,46,46,104, +213,170,21,252,252,252,112,247,238,93,140,31,63,94,102,159,232,232,232,96,227,198,141,136,136,136,64,116,116,52,66,66,66,56,175,21,253,94,136,182,147,107,140,138,94,203,69,185,138,250,244,233,211,249,122,145,242,248,70,92,93,247,239,223,199,209,163,71, +177,109,219,54,168,171,171,171,126,209,253,219,111,191,133,145,145,17,198,142,29,139,140,140,12,0,64,113,113,49,230,206,157,139,167,79,159,242,149,118,37,41,247,74,83,69,22,50,70,164,12,69,212,133,185,174,49,51,51,67,108,108,44,127,250,43,78,50,74,212, +6,89,213,138,197,169,233,202,82,134,204,142,18,177,139,75,129,87,20,113,170,192,0,48,115,230,76,248,249,249,97,203,150,45,8,15,15,71,88,88,152,216,235,107,138,50,54,151,15,234,212,169,3,13,13,201,170,118,226,250,72,154,45,139,23,47,198,230,205,155,225, +235,235,11,45,45,45,185,124,2,0,145,145,145,120,251,246,45,108,108,108,56,175,149,214,78,121,21,181,47,92,184,128,194,194,66,185,199,157,188,170,216,0,208,182,109,91,204,159,63,31,99,198,140,65,105,105,169,234,3,86,157,58,117,112,241,226,69,148,148,148, +192,220,220,28,14,14,14,48,50,50,194,141,27,55,16,26,26,10,35,35,35,206,235,229,81,69,22,69,17,117,97,174,107,70,143,30,141,248,248,120,216,216,216,96,219,182,109,240,241,241,145,90,158,172,106,197,226,212,116,229,45,67,30,36,41,240,138,34,73,21,248, +210,165,75,136,141,141,197,172,89,179,160,163,163,131,77,155,54,97,218,180,105,98,7,85,77,81,198,230,242,65,112,112,48,102,204,152,129,146,146,18,153,251,72,154,45,238,238,238,24,55,110,28,38,78,156,40,151,79,178,179,179,209,160,65,3,76,155,54,13,123, +247,238,69,243,230,205,101,190,86,92,59,229,25,95,113,113,113,24,48,96,0,238,223,191,47,247,152,83,212,55,75,151,46,69,253,250,245,149,242,244,85,46,153,175,228,228,100,188,122,245,10,230,230,230,104,210,164,137,204,149,28,60,120,16,93,187,118,133,165, +165,37,118,237,218,197,127,148,44,43,89,89,89,80,87,87,135,129,129,65,165,175,97,140,33,53,53,21,166,166,166,114,77,81,243,242,242,80,86,86,198,41,32,153,159,159,143,178,178,50,212,173,91,87,225,50,228,37,59,59,27,37,37,37,42,123,119,232,193,131,7,24, +51,102,12,158,60,121,130,148,148,20,153,250,77,92,59,229,29,3,138,248,92,154,15,74,74,74,100,186,37,148,199,150,210,210,210,10,51,183,202,248,68,214,107,197,181,83,150,241,181,102,205,26,92,184,112,1,255,254,251,175,194,99,66,81,223,40,3,13,121,78,46, +143,224,242,34,175,42,178,40,138,168,240,74,186,70,77,77,77,161,151,245,100,121,185,85,146,154,174,60,101,200,75,85,42,240,214,4,101,108,46,31,40,18,172,164,217,34,238,54,179,50,62,145,245,90,113,237,148,101,124,69,71,71,99,222,188,121,149,26,7,202,82, +197,86,249,12,171,50,212,84,85,228,47,29,82,198,38,170,19,164,252,76,16,68,141,129,146,159,9,130,168,49,200,188,134,245,232,209,35,28,58,116,8,175,95,191,134,185,185,57,190,251,238,59,124,253,245,215,42,51,44,41,41,9,59,119,238,68,96,96,32,78,156,56, +1,61,61,61,244,239,223,95,225,242,206,156,57,131,152,152,24,161,181,130,41,83,166,32,61,61,93,236,235,13,213,177,79,164,173,77,92,190,124,25,115,230,204,81,184,140,91,183,110,161,168,168,8,221,187,119,151,251,218,242,119,138,254,243,159,255,136,253,60, +37,37,5,135,14,29,66,157,58,117,208,160,65,3,116,237,218,85,161,36,115,105,245,168,178,223,196,249,59,59,59,91,234,216,228,241,120,50,141,51,101,244,145,50,198,129,184,62,150,165,13,170,248,142,41,52,195,218,183,111,31,190,250,234,43,148,150,150,162, +95,191,126,176,178,178,194,209,163,71,85,250,5,20,76,110,86,70,82,114,118,118,54,210,211,211,17,24,24,136,132,132,4,100,100,100,84,42,249,250,115,244,9,23,239,222,189,195,165,75,151,42,85,198,181,107,215,112,254,252,121,133,174,149,150,232,170,172,36, +99,101,39,212,202,218,111,146,252,45,203,216,148,117,156,41,163,143,148,49,14,196,245,177,44,109,80,246,119,76,161,25,214,243,231,207,49,99,198,12,132,132,132,40,101,225,245,115,81,158,243,244,251,239,191,99,241,226,197,176,177,177,65,118,118,54,156, +157,157,37,190,244,90,219,251,164,170,177,180,180,196,186,117,235,248,63,72,93,186,116,193,145,35,71,100,202,15,253,156,112,249,91,150,236,139,97,195,134,201,60,206,170,107,31,201,210,6,101,126,199,20,158,97,157,56,113,2,223,126,251,173,196,47,166,164, +100,72,209,196,73,73,201,162,178,38,55,203,154,148,44,15,130,201,215,210,18,107,229,233,19,89,19,81,229,73,46,21,119,238,254,253,251,97,107,107,11,87,87,87,60,123,246,140,95,255,165,75,151,48,124,248,112,148,63,79,241,246,246,198,197,139,23,229,238,31, +73,182,240,120,60,44,92,184,16,54,54,54,176,179,179,195,157,59,119,132,110,29,100,73,116,21,77,50,22,151,248,43,79,61,202,232,55,69,191,3,162,99,147,107,51,0,105,9,218,92,125,36,105,188,75,106,143,184,100,127,89,147,169,69,251,88,116,67,3,85,127,199, +20,14,88,153,153,153,252,124,54,81,98,99,99,49,109,218,52,28,57,114,4,183,110,221,66,68,68,4,226,227,227,1,124,218,168,236,226,197,139,252,6,15,27,54,12,1,1,1,40,41,41,193,138,21,43,240,237,183,223,114,94,47,174,225,151,47,95,198,143,63,254,136,173,91, +183,34,40,40,8,27,55,110,196,249,243,231,113,233,210,37,108,222,188,25,127,255,253,183,92,157,153,159,159,143,184,184,56,254,175,217,221,187,119,113,237,218,53,180,111,223,30,27,54,108,192,221,187,119,97,100,100,84,97,138,205,213,39,146,236,122,255,254, +61,194,195,195,113,225,194,5,76,154,52,9,219,182,109,171,208,71,242,244,231,227,199,143,225,231,231,135,211,167,79,227,230,205,155,252,32,14,0,125,251,246,197,135,15,31,176,115,231,78,196,197,197,225,236,217,179,232,213,171,151,92,125,195,101,203,206, +157,59,249,199,46,92,248,191,246,206,63,166,170,242,143,227,111,134,36,210,47,210,105,132,144,226,212,5,66,109,4,169,83,66,32,71,206,31,181,208,165,78,91,179,17,40,191,204,139,109,228,162,82,87,54,91,91,86,210,31,96,169,232,63,50,106,245,205,0,39,234, +52,178,233,4,25,27,141,41,166,98,2,97,92,47,151,162,139,222,231,251,7,187,103,231,158,123,206,115,159,231,220,3,34,125,94,27,27,28,46,207,121,206,231,60,207,195,61,112,94,231,253,63,229,38,71,198,24,178,179,179,241,215,95,127,9,89,4,209,209,209,184,117, +235,22,234,235,235,177,119,239,94,28,59,118,12,63,252,240,3,222,127,255,125,92,184,112,65,120,63,86,213,205,204,28,208,27,155,218,125,170,199,89,117,117,53,82,83,83,81,83,83,35,164,103,121,106,100,52,174,120,199,211,221,221,141,206,206,78,229,114,237, +234,213,171,186,227,80,175,79,218,26,171,143,97,36,230,152,233,5,43,49,49,17,245,245,245,186,74,131,63,25,82,45,78,234,201,162,50,162,178,140,148,108,22,158,88,43,90,19,89,17,85,70,46,213,190,54,61,61,29,73,73,73,120,240,193,7,81,88,88,168,188,46,40, +40,8,21,21,21,216,185,115,39,108,54,27,242,242,242,164,239,123,226,245,229,228,201,147,40,44,44,196,147,79,62,137,248,248,120,197,122,144,21,93,61,146,177,145,248,43,186,31,171,234,102,102,14,232,141,77,237,62,213,240,4,109,94,141,140,198,149,153,227, +241,39,83,155,57,151,86,207,49,211,11,214,170,85,171,16,26,26,138,245,235,215,43,111,219,220,110,55,126,249,229,23,105,25,82,43,139,202,200,205,50,82,178,140,220,169,134,39,214,138,214,68,86,68,53,43,151,62,245,212,83,104,104,104,80,126,131,86,87,87, +123,189,118,218,180,105,216,182,109,27,234,235,235,21,65,221,95,109,28,14,135,114,23,51,175,47,115,230,204,65,85,85,21,238,222,189,139,238,238,110,92,189,122,21,128,152,232,170,39,25,27,137,191,162,251,177,178,110,122,245,225,157,111,145,243,170,134, +39,104,243,106,100,52,174,120,199,99,36,251,139,72,227,254,206,229,112,207,49,211,11,86,72,72,8,234,234,234,224,114,185,16,17,17,129,152,152,24,132,135,135,99,231,206,157,210,50,164,86,22,13,68,116,53,18,62,3,145,59,69,225,213,36,16,209,89,166,30,11, +23,46,196,170,85,171,48,107,214,44,196,197,197,193,233,116,250,188,166,171,171,11,217,217,217,8,15,15,7,96,44,190,122,6,255,190,125,251,240,242,203,47,251,237,203,219,111,191,13,187,221,142,240,240,112,204,152,49,3,215,175,95,87,190,199,19,93,141,36, +99,35,241,87,116,63,86,213,205,168,62,188,243,45,11,79,208,230,213,200,104,92,241,142,71,84,246,55,234,147,209,185,28,137,57,102,136,204,195,179,110,222,188,201,26,26,26,216,165,75,151,188,182,219,237,118,214,215,215,39,212,198,224,224,160,207,54,153, +159,215,226,116,58,189,30,126,183,107,215,46,182,112,225,194,17,123,180,172,81,77,180,253,146,65,166,30,189,189,189,204,233,116,250,108,239,239,239,103,17,17,17,236,218,181,107,126,107,51,48,48,192,126,253,245,87,214,213,213,37,213,151,158,158,30,246, +247,223,127,91,86,203,219,183,111,179,158,158,30,211,251,9,180,110,34,99,199,232,124,203,208,223,223,207,28,14,135,37,227,221,223,56,112,187,221,236,230,205,155,126,31,158,39,211,167,145,158,99,106,198,156,154,243,250,235,175,99,229,202,149,88,182,108, +217,127,250,22,130,61,123,246,224,252,249,243,56,112,224,0,213,134,198,206,152,169,19,185,132,99,148,198,198,70,68,70,70,114,255,187,69,16,247,27,180,96,17,4,113,223,64,242,51,65,16,99,111,193,106,106,106,194,230,205,155,241,202,43,175,32,55,55,55,96, +95,201,106,186,187,187,81,81,81,225,181,173,182,182,22,77,77,77,112,187,221,232,238,238,190,103,125,251,237,183,223,144,147,147,131,117,235,214,225,251,239,191,183,164,205,35,71,142,152,186,123,221,136,142,142,14,28,60,120,16,192,144,132,251,238,187, +239,142,120,157,154,155,155,177,101,203,22,100,101,101,97,211,166,77,168,173,173,21,58,78,209,243,107,245,56,56,123,246,44,78,157,58,53,226,117,250,227,143,63,252,158,159,150,150,22,220,184,113,195,103,251,161,67,135,148,219,67,100,104,109,109,197,210, +165,75,125,230,216,168,92,176,42,42,42,176,96,193,2,184,221,110,44,91,182,12,209,209,209,200,203,203,195,250,245,235,135,181,115,158,228,99,237,231,70,39,81,251,200,221,111,191,253,22,103,207,158,245,17,48,253,181,101,37,46,151,11,105,105,105,152,60, +121,50,82,82,82,240,222,123,239,41,247,11,5,210,15,171,83,170,127,255,253,119,229,89,237,118,187,221,178,84,109,81,134,83,46,246,212,217,106,17,55,16,89,60,16,68,82,207,59,58,58,144,158,158,174,220,159,229,161,172,172,76,185,55,75,6,94,66,249,72,226, +87,126,190,124,249,50,10,10,10,112,252,248,113,204,159,63,95,217,190,121,243,102,161,88,169,64,72,77,77,133,211,233,68,104,104,168,215,231,178,104,197,205,64,218,50,51,184,110,223,190,141,183,222,122,11,147,38,77,66,78,78,142,238,241,253,151,25,110,185, +216,83,103,25,9,121,44,208,209,209,129,140,140,12,156,60,121,18,147,39,79,14,168,173,206,206,78,228,231,231,35,57,57,121,116,191,195,170,174,174,70,102,102,166,215,98,5,12,61,63,58,49,49,209,235,173,166,136,124,170,39,163,234,137,175,234,228,227,21,43, +86,120,165,32,243,222,101,229,230,230,42,31,158,7,237,171,5,76,109,162,178,81,191,121,2,177,76,226,114,68,68,4,114,115,115,17,23,23,135,143,63,254,88,81,55,180,253,208,107,147,151,186,236,185,212,212,10,225,102,146,121,141,40,46,46,198,148,41,83,144, +150,150,166,220,140,169,39,202,138,38,22,243,46,111,135,75,46,86,215,185,173,173,205,75,224,181,178,86,70,117,200,203,203,67,124,124,188,242,177,107,215,46,225,57,32,59,214,180,204,159,63,31,107,214,172,193,11,47,188,160,68,244,105,47,15,69,230,172,54, +161,92,68,98,182,186,182,10,254,110,212,122,231,157,119,216,198,141,27,189,182,125,253,245,215,108,238,220,185,108,238,220,185,172,164,164,132,155,8,171,77,143,213,126,109,148,120,171,78,62,86,127,110,68,99,99,35,139,140,140,100,101,101,101,202,71,74, +74,10,43,43,43,243,74,152,86,183,197,235,183,219,237,102,25,25,25,236,203,47,191,100,151,46,93,98,83,167,78,101,3,3,3,66,233,190,122,156,56,113,130,45,94,188,152,61,243,204,51,204,225,112,120,245,195,168,77,94,234,178,94,26,180,108,50,175,154,211,167, +79,43,53,106,109,109,101,161,161,161,172,190,190,158,185,92,46,102,179,217,88,106,106,42,99,140,249,164,14,203,36,22,27,97,179,217,88,126,126,190,225,247,180,199,201,75,26,215,246,79,93,103,245,235,2,169,149,135,29,59,118,48,155,205,198,24,99,134,117, +248,231,159,127,88,95,95,31,59,115,230,12,123,250,233,167,153,211,233,20,158,3,70,219,141,82,207,213,252,244,211,79,44,35,35,131,49,198,88,105,105,41,75,76,76,100,189,189,189,108,193,130,5,236,216,177,99,82,115,86,155,80,238,47,129,219,138,218,154,78, +126,78,74,74,242,17,63,51,50,50,240,201,39,159,224,145,71,30,1,99,76,74,62,213,126,109,36,190,170,147,143,181,41,200,70,60,246,216,99,94,239,176,226,226,226,124,94,163,110,139,215,111,35,129,216,76,226,242,157,59,119,176,104,209,34,212,214,214,98,210, +164,73,56,112,224,128,87,63,120,109,242,82,151,181,210,173,153,100,94,35,158,125,246,89,164,165,165,33,36,36,4,197,197,197,104,104,104,0,99,204,71,148,149,73,44,54,98,56,229,98,163,177,99,101,173,0,24,214,193,115,185,159,151,151,135,202,202,74,37,217, +70,100,14,152,77,247,214,242,193,7,31,32,51,51,19,47,190,248,162,162,238,200,204,89,189,132,114,158,196,108,117,109,165,46,9,87,172,88,129,71,31,125,20,175,189,246,26,122,123,123,1,12,61,242,226,198,141,27,104,106,106,66,78,78,142,180,4,173,254,90,54, +45,23,48,47,94,106,241,215,111,61,129,152,215,95,189,126,125,247,221,119,72,78,78,134,195,225,0,99,12,227,199,143,247,9,17,229,181,41,154,186,44,114,60,50,127,187,105,110,110,70,91,91,27,0,160,170,170,10,177,177,177,8,10,10,242,17,101,101,18,139,141, +106,52,210,114,177,85,181,82,203,226,188,58,228,228,228,96,227,198,141,72,72,72,144,154,3,162,115,67,100,62,124,248,225,135,72,73,73,193,197,139,23,45,57,126,158,196,108,166,109,209,57,237,247,172,4,7,7,227,199,31,127,68,127,127,63,166,76,153,130,89, +179,102,225,241,199,31,71,113,113,49,170,170,170,48,125,250,244,128,36,102,153,196,91,207,63,1,172,18,47,69,250,173,21,136,141,250,107,212,175,229,203,151,35,33,33,1,209,209,209,136,138,138,194,159,127,254,233,243,144,66,94,13,68,83,151,69,143,71,148, +136,136,8,236,222,189,27,211,167,79,199,246,237,219,149,7,198,105,69,89,153,243,55,26,228,98,43,106,165,39,139,27,213,161,188,188,28,135,15,31,198,142,29,59,16,21,21,133,69,139,22,9,207,1,145,218,202,204,135,221,187,119,163,168,168,200,242,177,18,104, +109,165,230,180,172,232,251,243,207,63,179,139,23,47,90,46,49,27,137,175,35,33,94,26,245,91,79,32,54,234,175,191,126,181,183,183,179,198,198,70,174,132,170,109,179,177,177,145,205,153,51,71,169,189,63,129,213,138,243,160,165,171,171,203,231,92,235,137, +178,34,231,111,52,202,197,102,106,197,147,197,69,199,177,204,28,224,181,105,102,62,168,229,105,43,199,138,217,218,202,28,195,56,217,223,186,188,244,223,64,18,97,69,19,111,173,72,174,21,237,119,121,121,57,22,47,94,140,232,232,104,191,253,245,215,175,152, +152,152,128,106,32,147,86,109,101,50,175,94,218,137,94,234,176,200,249,19,57,119,254,198,152,8,254,18,184,3,173,213,248,241,227,241,220,115,207,5,52,142,101,126,150,215,166,153,249,160,110,111,56,83,156,69,219,150,57,6,114,9,57,220,107,129,216,202,212, +101,130,24,11,208,130,69,16,196,125,3,201,207,4,65,140,189,5,203,10,249,185,181,181,21,159,126,250,169,238,247,100,196,212,154,154,26,31,191,172,189,189,29,29,29,29,94,219,206,157,59,135,186,186,58,175,182,213,226,104,67,67,131,143,204,121,175,69,105, +130,32,2,92,176,172,146,159,121,169,180,50,98,234,191,255,254,235,115,51,218,23,95,124,225,147,155,86,84,84,132,59,119,238,120,181,173,22,71,205,38,220,18,4,113,111,24,53,242,179,140,152,186,124,249,114,108,217,178,5,45,45,45,136,143,143,135,211,233, +68,101,101,37,130,130,130,80,90,90,138,176,176,48,156,63,127,30,61,61,61,88,178,100,9,250,250,250,132,219,254,175,9,178,4,49,166,222,97,137,202,207,178,169,180,60,129,149,151,248,11,12,221,41,187,105,211,38,236,217,179,7,0,176,127,255,126,100,102,102, +226,249,231,159,87,158,97,254,217,103,159,33,63,63,31,65,65,65,126,83,107,121,9,183,129,200,167,4,65,140,240,59,44,187,221,142,39,158,120,194,107,219,55,223,124,131,175,190,250,10,0,144,158,158,142,180,180,52,37,149,54,56,56,24,89,89,89,152,54,109,26, +34,35,35,177,117,235,86,212,213,213,33,54,54,22,185,185,185,74,27,158,116,220,163,71,143,98,222,188,121,104,110,110,86,18,98,213,137,191,14,135,3,19,38,76,240,233,215,27,111,188,129,217,179,103,227,163,143,62,194,231,159,127,142,202,202,74,12,12,12,224, +205,55,223,196,75,47,189,132,154,154,26,236,221,187,23,0,184,169,181,158,132,219,222,222,94,216,108,54,156,59,119,78,121,173,58,145,216,229,114,97,233,210,165,72,72,72,240,90,168,9,130,24,69,11,86,82,82,18,74,74,74,48,56,56,136,144,144,16,0,67,242,243, +204,153,51,177,125,251,118,48,198,188,82,105,1,40,169,180,179,103,207,86,82,105,1,160,176,176,16,37,37,37,74,219,30,193,82,139,58,241,215,136,240,240,112,172,92,185,18,107,215,174,197,196,137,19,149,125,76,152,48,1,171,87,175,198,218,181,107,241,240, +195,15,251,45,192,133,11,23,112,229,202,21,180,183,183,251,36,220,170,229,83,0,138,124,74,11,22,65,140,210,75,66,17,249,217,76,42,173,231,210,78,15,163,196,95,45,5,5,5,168,171,171,83,252,40,96,232,111,107,167,79,159,70,65,65,129,80,1,120,9,183,102,196, +108,130,32,238,225,130,37,34,63,155,73,165,229,193,75,252,85,19,27,27,139,13,27,54,32,43,43,75,217,246,234,171,175,98,195,134,13,152,57,115,166,112,17,140,18,110,101,197,108,130,32,134,23,169,59,221,59,59,59,209,222,222,142,135,30,122,8,113,113,113,24, +55,206,251,138,178,191,191,31,119,239,222,245,113,159,236,118,59,66,66,66,148,103,1,137,114,235,214,45,132,133,133,233,254,13,203,131,250,82,213,131,203,229,194,3,15,60,96,89,145,28,14,7,6,7,7,149,103,43,17,4,113,31,44,88,4,65,16,163,250,146,144,32,8, +130,22,44,130,32,8,90,176,8,130,160,5,139,32,8,130,22,44,130,32,8,90,176,8,130,160,5,139,32,8,130,22,44,130,32,8,90,176,8,130,160,5,139,32,8,98,68,249,63,213,171,5,229,205,200,49,236,0,0,0,0,73,69,78,68,174,66,96,130,0,0 }; + +const char* about_png = (const char*) temp_binary_data_0; + +//================== builtin_pgm.zip ================== +static const unsigned char temp_binary_data_1[] = { 80,75,3,4,20,0,0,0,8,0,235,124,51,68,91,179,46,131,152,9,0,0,8,16,0,0,12,0,28,0,68,101,120,101,100,95,48,49,46,115,121,120,85,84,9,0,3,249,55,220,82,77,94,228,82,117,120,11,0,1,4,245,1,0,0,4,20,0,0,0,93,151,219,87,26,217,18,135,139,238,6,26,108,185,5, 161,81,130,45,87,229,38,23,81,80,146,128,8,104,64,32,92,4,21,21,168,100,77,178,214,76,226,36,153,153,117,230,101,254,229,243,118,94,79,237,110,64,152,78,92,43,249,252,85,213,174,221,181,107,87,255,183,2,38,5,140,165,4,38,16,212,39,15,244,15,115,41,141, 201,23,32,192,230,58,0,176,18,136,175,42,60,4,50,171,138,218,126,26,113,188,4,28,32,61,25,122,118,173,1,66,105,185,55,253,143,82,254,101,250,229,107,242,178,105,86,112,208,129,52,147,138,125,39,52,175,204,94,28,223,65,134,128,44,220,9,144,126,111,86, @@ -1255,7 +1589,7 @@ static const unsigned char temp_binary_data_0[] = 227,193,80,81,117,120,11,0,1,4,245,1,0,0,4,20,0,0,0,80,75,1,2,30,3,20,0,0,0,8,0,198,139,121,66,196,112,97,144,143,10,0,0,8,16,0,0,16,0,24,0,0,0,0,0,0,0,0,0,192,129,57,69,1,0,83,121,110,112,114,101,122,70,77,95,51,50,46,115,121,120,85,84,5,0,3,227,193, 80,81,117,120,11,0,1,4,245,1,0,0,4,20,0,0,0,80,75,5,6,0,0,0,0,33,0,33,0,18,11,0,0,18,80,1,0,0,0,0,0 }; -const char* builtin_pgm_zip = (const char*) temp_binary_data_0; +const char* builtin_pgm_zip = (const char*) temp_binary_data_1; const char* getNamedResource (const char*, int&) throw(); @@ -1268,6 +1602,7 @@ const char* getNamedResource (const char* resourceNameUTF8, int& numBytes) throw switch (hash) { + case 0xb02b7677: numBytes = 23143; return about_png; case 0x796d1c9c: numBytes = 88890; return builtin_pgm_zip; default: break; } @@ -1278,6 +1613,7 @@ const char* getNamedResource (const char* resourceNameUTF8, int& numBytes) throw const char* namedResourceList[] = { + "about_png", "builtin_pgm_zip" }; diff --git a/JuceLibraryCode/BinaryData.h b/JuceLibraryCode/BinaryData.h index 5fdbaec..0cd8bd2 100644 --- a/JuceLibraryCode/BinaryData.h +++ b/JuceLibraryCode/BinaryData.h @@ -9,6 +9,9 @@ namespace BinaryData { + extern const char* about_png; + const int about_pngSize = 23143; + extern const char* builtin_pgm_zip; const int builtin_pgm_zipSize = 88890; @@ -16,7 +19,7 @@ namespace BinaryData extern const char* namedResourceList[]; // Number of elements in the namedResourceList array. - const int namedResourceListSize = 1; + const int namedResourceListSize = 2; // If you provide the name of one of the binary resource variables above, this function will // return the corresponding data and its size (or a null pointer if the name isn't found). diff --git a/README.md b/README.md index 35b84ac..8fd81d3 100644 --- a/README.md +++ b/README.md @@ -1,4 +1,4 @@ -Dexed - FM Synth Plugin +Dexed - FM Plugin Synth ======================= Dexed is a multi platform, multi format plugin synth that is closely modeled on the Yamaha DX7. @@ -27,6 +27,7 @@ Changelog #### Version 0.4.0 (current sprint) * Modulation wheel support * Now using the [Obxd](https://obxd.wordpress.com) 4-pole lowpass filter implementation +* Pitchbend range / step Binary downloads ---------------- @@ -59,7 +60,8 @@ Credits & thanks ---------------- * DX Synth engine : Raph Levien and the [msfa](https://code.google.com/p/music-synthesizer-for-android) team * LP Filter : Filatov Vadim (2DaT); taken from the excellent [Obxd](https://obxd.wordpress.com) project -* Original DX7 compilation : Jean-Marc Desprez (author of [SynprezFM](http://www.synprez.com/SynprezFM)) and to all the all crew who made these historic DX programs: Dave Benson, Frank Carvalho, Tim Conrardy, Jack Deckard, Chris Dodunski, Tim Garrett, Hitaye, Stephan Ibsen, Christian Jezreel, Narfman, Godric Wilkie +* DX7 program compilation : Jean-Marc Desprez (author of [SynprezFM](http://www.synprez.com/SynprezFM)) +* DX7 programs : Dave Benson, Frank Carvalho, Tim Conrardy, Jack Deckard, Chris Dodunski, Tim Garrett, Hitaye, Stephan Ibsen, Christian Jezreel, Narfman, Godric Wilkie * markusthegeek direct implication for this project TODO - Dexed diff --git a/Resources/about.png b/Resources/about.png new file mode 100644 index 0000000000000000000000000000000000000000..dbf9e438e0dea16f40927a2e8e5452c127fbe58b GIT binary patch literal 23143 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 e`beoTmZ>=W(1o6taPIVKkW}E^M&*#K8+R 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 literal 0 HcmV?d00001 diff --git a/Source/DXComponents.cpp b/Source/DXComponents.cpp index 7215515..7602b35 100644 --- a/Source/DXComponents.cpp +++ b/Source/DXComponents.cpp @@ -2,6 +2,10 @@ * * Copyright (c) 2014 Pascal Gauthier. * + * DX7 Envelope Tables from legasynth-0.4.1 / DX7 Patch Editor + * Copyright (C) 2002 Juan Linietsky + * Copyright (C) 2006 Mark-André Hopf + * * This program is free software; you can redistribute it and/or * modify it under the terms of the GNU General Public License as * published by the Free Software Foundation; either version 2 of @@ -130,77 +134,6 @@ void AlgoDisplay::drawOp(Graphics &g, int x, int y, int num) { } } -EnvDisplay::EnvDisplay() { - pvalues = (char *) &TMP_LEVEL_PTR; -} -/* -void EnvDisplay::paint(Graphics &g) { - g.setColour(Colours::black.withAlpha(0.5f)); - g.fillRoundedRectangle (0.0f, 0.0f, (float) getWidth(), (float) getHeight(), 1.0f); - - - char *levels = pvalues + 4; - char *rates = pvalues; - - float dist[4]; - float total = 0; - - int old = levels[3]; - - for(int i=0;i<4;i++) { - int nw = levels[i]; - dist[i] = ((float)abs(nw - old)) / rates[i] == 0 ? 1 : rates[i]; - total += dist[i]; - old = nw; - } - - if ( total < 1 ) { - dist[0] = dist[1] = dist[2] = dist[3] = 1; - total = 4; - } - - // TODO : this is WIP - float ratio = 96 / total; - - int oldx = 0; - int oldy = 32 - ((float)levels[3] / 3.125); - Path p; - - p.startNewSubPath(0, 32); - g.setColour(Colours::white); - - int i; - for(i=0;i<4;i++) { - int newx = dist[i] * ratio + oldx; - int newy = 32 - ((float)levels[i] / 3.125); - - p.lineTo(newx, newy); - if ( vPos == i ) { - g.fillEllipse(oldx-2, oldy-2, 4, 4); - } - - oldx = newx; - oldy = newy; - } - p.lineTo(96,32); - p.lineTo(0, 32); - - if ( vPos == i ) { - g.fillEllipse(oldx-2, oldy-2, 4, 4); - } - - g.setColour(Colour(0xFF0FC00F).withAlpha(0.3f)); - g.fillPath(p); - - g.setColour(Colour(0xFFFFFFFF)); - String len; - len << ((int) total) << " / "; - len << ((int) vPos); - g.drawText(len, 5, 1, 72, 14, Justification::left, true); -} -*/ - - static float EG_rate_rise_duration[128] = { 38.00000 ,34.96000 ,31.92000 ,28.88000 ,25.84000 , 22.80000 ,20.64000 ,18.48000 ,16.32000 ,14.16000 , @@ -318,7 +251,7 @@ static float EG_rate_rise_percent[128] = { 1.00000 ,1.00000 ,1.00000 }; -double getDuration(int p_rate, int p_level_l, int p_level_r) { +static double getDuration(int p_rate, int p_level_l, int p_level_r) { float *duration_table=(p_level_r>p_level_l) ? EG_rate_rise_duration : EG_rate_decay_duration; double duration=duration_table[p_rate]; @@ -327,6 +260,10 @@ double getDuration(int p_rate, int p_level_l, int p_level_r) { return duration; } +EnvDisplay::EnvDisplay() { + pvalues = (char *) &TMP_LEVEL_PTR; +} + void EnvDisplay::paint(Graphics &g) { g.setColour(Colours::black.withAlpha(0.5f)); g.fillRoundedRectangle (0.0f, 0.0f, (float) getWidth(), (float) getHeight(), 1.0f); @@ -419,8 +356,6 @@ void EnvDisplay::paint(Graphics &g) { g.drawText(len, 5, 1, 72, 14, Justification::left, true); } - - PitchEnvDisplay::PitchEnvDisplay() { pvalues = (char *) &TMP_LEVEL_PTR; vPos = 0; @@ -478,9 +413,7 @@ void PitchEnvDisplay::paint(Graphics &g) { } } - void VuMeter::paint(Graphics &g) { - // taken from the drawLevelMeter ; float width = getWidth(); float height = getHeight(); diff --git a/Source/PluginEditor.cpp b/Source/PluginEditor.cpp index c828757..84fa972 100644 --- a/Source/PluginEditor.cpp +++ b/Source/PluginEditor.cpp @@ -27,6 +27,31 @@ using namespace ::std; +class AboutBox : public DialogWindow { +public: + Image about_png; + + AboutBox(Component *parent) : DialogWindow("About", Colour(0xFF000000), true) { + setUsingNativeTitleBar(false); + setAlwaysOnTop(true); + about_png = ImageCache::getFromMemory(BinaryData::about_png, BinaryData::about_pngSize); + setSize( about_png.getWidth(), about_png.getHeight()); + centreAroundComponent (parent, getWidth(), getHeight()); + } + + void closeButtonPressed() { + setVisible (false); + } + + void paint(Graphics &g) { + g.drawImage (about_png, 0, 0, about_png.getWidth(), about_png.getHeight(), + 0, 0, about_png.getWidth(), about_png.getHeight()); + g.setColour(Colour(0xFF000000)); + String ver("Version 0.4 ; built date " __DATE__ ); + g.drawSingleLineText(ver, 9, 118); + } +}; + //============================================================================== DexedAudioProcessorEditor::DexedAudioProcessorEditor (DexedAudioProcessor* ownerFilter) : AudioProcessorEditor (ownerFilter), @@ -223,9 +248,11 @@ void DexedAudioProcessorEditor::buttonClicked(Button *buttonThatWasClicked) { } if (buttonThatWasClicked == aboutButton) { - AlertWindow::showMessageBoxAsync(AlertWindow::NoIcon, "DEXED - DX Emulator 0.4", "https://github.com/asb2m10/dexed\n" + /*AlertWindow::showMessageBoxAsync(AlertWindow::NoIcon, "DEXED - DX Emulator 0.4", "https://github.com/asb2m10/dexed\n" "(c) 2013-2014 Pascal Gauthier\nUnder the GPL v2\n\n" - "Based on Music Synthesizer for Android\nhttps://code.google.com/p/music-synthesizer-for-android"); + "Based on Music Synthesizer for Android\nhttps://code.google.com/p/music-synthesizer-for-android");*/ + AboutBox about(this); + about.runModalLoop(); return; }