From f9e2f9dc77466666f19cb637828cec6a32a3af7c Mon Sep 17 00:00:00 2001 From: jean-pierre charras Date: Wed, 1 Feb 2012 20:49:37 +0100 Subject: [PATCH] Pcbnew and Cvpcb: more about new netlist support: see CHANGELOG (important changes). Also commit updated icnos from Fabrizio. --- CHANGELOG.txt | 15 + bitmaps_png/cpp_26/add_dimension.cpp | 60 +- bitmaps_png/cpp_26/add_glabel.cpp | 77 +- bitmaps_png/cpp_26/add_hierarchical_label.cpp | 167 ++-- bitmaps_png/cpp_26/add_junction.cpp | 56 +- bitmaps_png/cpp_26/config.cpp | 163 ++-- bitmaps_png/cpp_26/find.cpp | 163 ++-- bitmaps_png/cpp_26/find_replace.cpp | 202 ++--- bitmaps_png/cpp_26/show_zone.cpp | 79 +- bitmaps_png/cpp_26/show_zone_disable.cpp | 81 +- bitmaps_png/cpp_26/show_zone_outline_only.cpp | 90 +- bitmaps_png/cpp_26/showtrack.cpp | 80 +- bitmaps_png/cpp_26/via_sketch.cpp | 149 ++-- bitmaps_png/sources/add_dimension.svg | 196 +++-- bitmaps_png/sources/add_glabel.svg | 23 +- .../sources/add_hierarchical_label.svg | 814 ++++++++++++------ bitmaps_png/sources/add_junction.svg | 30 +- bitmaps_png/sources/config.svg | 410 +-------- bitmaps_png/sources/find.svg | 709 ++++++++++++--- bitmaps_png/sources/find_replace.svg | 455 +++++----- bitmaps_png/sources/show_zone.svg | 103 ++- bitmaps_png/sources/show_zone_disable.svg | 77 +- .../sources/show_zone_outline_only.svg | 109 ++- bitmaps_png/sources/showtrack.svg | 115 ++- bitmaps_png/sources/via_sketch.svg | 15 +- common/netlist.keywords | 1 + cvpcb/CMakeLists.txt | 5 +- cvpcb/autosel.cpp | 4 +- cvpcb/class_cvpcb.cpp | 21 - cvpcb/class_footprints_listbox.cpp | 2 +- cvpcb/common_help_msg.h | 8 + cvpcb/cvframe.cpp | 16 +- cvpcb/cvpcb.h | 37 +- cvpcb/cvstruct.h | 2 +- cvpcb/genequiv.cpp | 6 +- cvpcb/init.cpp | 18 +- cvpcb/listboxes.cpp | 4 +- cvpcb/menubar.cpp | 22 +- cvpcb/readschematicnetlist.cpp | 401 ++------- cvpcb/savecmp.cpp | 8 +- cvpcb/tool_cvpcb.cpp | 7 +- cvpcb/writenetlistpcbnew.cpp | 10 +- pcbnew/CMakeLists.txt | 1 + pcbnew/netlist.cpp | 507 +---------- pcbnew/netlist_reader.h | 177 +++- pcbnew/netlist_reader_firstformat.cpp | 40 +- pcbnew/netlist_reader_kicad.cpp | 115 ++- 47 files changed, 2933 insertions(+), 2917 deletions(-) delete mode 100644 cvpcb/class_cvpcb.cpp create mode 100644 cvpcb/common_help_msg.h diff --git a/CHANGELOG.txt b/CHANGELOG.txt index 5b5a466e2f..bc725e70ab 100644 --- a/CHANGELOG.txt +++ b/CHANGELOG.txt @@ -4,6 +4,21 @@ KiCad ChangeLog 2012 Please add newer entries at the top, list the date and your name with email address. +2012-Feb-01, UPDATE Jean-Pierre Charras +================================================================================ +Pcbnew: +Cvpcb: + more about new netlist format: + Cvpcb can now read new netlist format. + There is a big change in Cvpcb: now Cvpcb just creates or updates a .cmp file + Before this change, Cvpcb recreated the netlist (adding footprint info) + and updated the .cmp file. + But there is no reason to modify the netlist, because Pcbnew uses always the .cmp file + (when exists) to know the footprint selection for components. + Currently the netlist is used only when the corresponding .cmp file is not fount + to select footprints. + So users should not notice this important change. + 2012-Jan-26, UPDATE Jean-Pierre Charras ================================================================================ Pcbnew: diff --git a/bitmaps_png/cpp_26/add_dimension.cpp b/bitmaps_png/cpp_26/add_dimension.cpp index 8dcbc2aab3..a31230e18c 100644 --- a/bitmaps_png/cpp_26/add_dimension.cpp +++ b/bitmaps_png/cpp_26/add_dimension.cpp @@ -8,39 +8,33 @@ static const unsigned char png[] = { 0x89, 0x50, 0x4e, 0x47, 0x0d, 0x0a, 0x1a, 0x0a, 0x00, 0x00, 0x00, 0x0d, 0x49, 0x48, 0x44, 0x52, 0x00, 0x00, 0x00, 0x1a, 0x00, 0x00, 0x00, 0x1a, 0x08, 0x06, 0x00, 0x00, 0x00, 0xa9, 0x4a, 0x4c, - 0xce, 0x00, 0x00, 0x01, 0xed, 0x49, 0x44, 0x41, 0x54, 0x48, 0xc7, 0xd5, 0xd6, 0x4f, 0x28, 0x04, - 0x51, 0x1c, 0x07, 0xf0, 0xf1, 0x2f, 0xb1, 0x14, 0xc6, 0xdf, 0x56, 0xd2, 0x66, 0xd7, 0xd6, 0xcc, - 0xae, 0x28, 0xff, 0xae, 0x4a, 0x38, 0x49, 0xa1, 0x6c, 0x39, 0x70, 0x70, 0xb2, 0x61, 0x6f, 0x4a, - 0x5c, 0x09, 0x17, 0x27, 0x42, 0x39, 0xba, 0x88, 0x1c, 0x9d, 0xb8, 0x28, 0xe4, 0x5f, 0x12, 0x49, - 0x91, 0x7f, 0x85, 0x8b, 0xe3, 0x2e, 0xad, 0xf1, 0x7d, 0xf6, 0x37, 0x3c, 0x13, 0x33, 0xb3, 0xdb, - 0x2e, 0xd9, 0xfa, 0xb4, 0xb3, 0xbf, 0xe6, 0xbd, 0xef, 0xbc, 0x79, 0xef, 0xcd, 0x8e, 0xa0, 0x28, - 0x8a, 0xf0, 0x1b, 0xcc, 0x9d, 0x24, 0x08, 0x29, 0x50, 0x0c, 0xa9, 0x5c, 0x2d, 0x17, 0xac, 0xd1, - 0x0e, 0x6a, 0x04, 0x76, 0x70, 0x08, 0xf9, 0x54, 0x5b, 0x81, 0x53, 0x88, 0x8b, 0x66, 0x50, 0x13, - 0x05, 0x3d, 0xc1, 0x05, 0x14, 0x51, 0xd0, 0x0d, 0xb8, 0xcc, 0x84, 0x85, 0x1b, 0x34, 0x0a, 0x47, - 0x70, 0x0b, 0x7b, 0xf4, 0x5d, 0x1e, 0x8b, 0xa0, 0x61, 0x28, 0x81, 0x5d, 0xfa, 0x1d, 0xd3, 0xa0, - 0x78, 0x28, 0x84, 0xf3, 0x58, 0x04, 0xb9, 0x61, 0x15, 0xbc, 0xac, 0x53, 0x32, 0x08, 0xcb, 0xd1, - 0x0e, 0x62, 0x1d, 0x97, 0x42, 0x9d, 0xda, 0x29, 0x8d, 0xac, 0x8e, 0xea, 0xe6, 0x82, 0x64, 0x59, - 0xd9, 0x80, 0x35, 0xbd, 0x06, 0xea, 0x48, 0x8c, 0x6a, 0x2a, 0x97, 0x4b, 0x69, 0x43, 0x9f, 0x7e, - 0x59, 0x7e, 0x29, 0xe3, 0x82, 0x5e, 0xb7, 0x9c, 0xce, 0xc7, 0x03, 0x34, 0xb2, 0xf1, 0x0d, 0xe9, - 0xb6, 0xb4, 0xb0, 0x03, 0x9d, 0x0b, 0xc8, 0x80, 0x5e, 0xc8, 0xe6, 0xeb, 0x92, 0x14, 0xec, 0x40, - 0x90, 0x92, 0x93, 0x33, 0xd4, 0xfd, 0x7e, 0x41, 0x9f, 0x41, 0x77, 0xc7, 0x28, 0xc8, 0x6c, 0x43, - 0x82, 0x8f, 0x36, 0x27, 0xeb, 0xa9, 0x07, 0xd2, 0x7e, 0x0a, 0xa3, 0xcf, 0x09, 0x3c, 0xd3, 0x3c, - 0xb6, 0x42, 0xb2, 0x1a, 0x94, 0x95, 0xe5, 0xed, 0xe7, 0x82, 0x82, 0xdb, 0x76, 0xfb, 0xe9, 0x35, - 0x0a, 0x57, 0x10, 0xa4, 0x00, 0xe6, 0x15, 0xd6, 0x61, 0x01, 0x66, 0x39, 0x73, 0x64, 0x9e, 0x1c, - 0x72, 0x6d, 0x98, 0x80, 0x28, 0x7a, 0xf7, 0x42, 0x41, 0xbd, 0x03, 0x5f, 0x46, 0xe4, 0x70, 0x9c, - 0x5d, 0xa2, 0x70, 0x4c, 0x57, 0xc6, 0x07, 0x2d, 0xc2, 0x38, 0x8c, 0x71, 0x46, 0x35, 0x76, 0x34, - 0x41, 0x0f, 0xa2, 0x38, 0xb0, 0xf9, 0x6d, 0x10, 0xdd, 0xba, 0x7a, 0xe8, 0x80, 0x29, 0xd8, 0xa7, - 0xd1, 0x4d, 0x43, 0x0d, 0x54, 0x6b, 0x54, 0x71, 0xee, 0xe0, 0x1e, 0x96, 0xa0, 0x0f, 0xda, 0xad, - 0xd6, 0x85, 0x09, 0x0a, 0xf2, 0xfd, 0x34, 0x47, 0x09, 0x90, 0x47, 0x1d, 0x74, 0xc1, 0x08, 0x58, - 0xb8, 0xfd, 0xa3, 0x95, 0x0e, 0x0d, 0xd0, 0x06, 0xcd, 0x50, 0xc1, 0x16, 0x86, 0x24, 0x05, 0x3c, - 0x7a, 0x23, 0x92, 0xa9, 0xb1, 0xba, 0x74, 0x93, 0xe8, 0x01, 0x2a, 0x1a, 0x2c, 0x86, 0x4c, 0x7a, - 0x5a, 0x24, 0xaa, 0xed, 0x3f, 0x17, 0x83, 0x4e, 0xd0, 0x37, 0x7b, 0xc5, 0x68, 0x43, 0x0b, 0xda, - 0x73, 0xc2, 0x0e, 0x8a, 0xd4, 0xdf, 0x06, 0x49, 0x92, 0xdf, 0x53, 0x50, 0x30, 0x33, 0xc1, 0x6e, - 0x6d, 0xb4, 0x82, 0xdc, 0xee, 0x40, 0xa9, 0xcd, 0xb6, 0x33, 0x69, 0xb1, 0xd4, 0x76, 0x7e, 0x04, - 0xd1, 0x4a, 0xab, 0x64, 0xef, 0x00, 0x46, 0xf3, 0x61, 0xfa, 0x1d, 0x21, 0x34, 0xb7, 0xc5, 0xea, - 0xd3, 0x3d, 0xac, 0x49, 0x8f, 0x30, 0x2c, 0xce, 0xf4, 0xdf, 0xc4, 0xaf, 0xbd, 0x6e, 0xfd, 0xab, - 0xa0, 0x37, 0xe0, 0xc8, 0x60, 0x7b, 0x3e, 0x58, 0xe1, 0xbd, 0x00, 0x00, 0x00, 0x00, 0x49, 0x45, - 0x4e, 0x44, 0xae, 0x42, 0x60, 0x82, + 0xce, 0x00, 0x00, 0x01, 0x95, 0x49, 0x44, 0x41, 0x54, 0x48, 0xc7, 0xcd, 0xd6, 0xbd, 0x4b, 0xc3, + 0x40, 0x18, 0x06, 0xf0, 0x03, 0x2d, 0x16, 0xe2, 0x20, 0xa2, 0x4e, 0x2a, 0xd2, 0x8a, 0x83, 0x14, + 0x6c, 0x51, 0x10, 0xd4, 0xd5, 0xd5, 0x59, 0xc4, 0x41, 0x04, 0x67, 0xb5, 0x83, 0x82, 0x78, 0x83, + 0x8a, 0x82, 0x83, 0xb8, 0x09, 0xfe, 0x03, 0x45, 0x5c, 0x84, 0x2e, 0x2e, 0x8e, 0xce, 0xba, 0x38, + 0x38, 0xd6, 0x49, 0xc1, 0x0f, 0x1c, 0x83, 0xad, 0x9e, 0xcf, 0x5b, 0xde, 0x2b, 0x67, 0x0c, 0x77, + 0xad, 0x24, 0xc1, 0xc0, 0xaf, 0x49, 0xdf, 0x24, 0xf7, 0x5c, 0x2e, 0x97, 0x10, 0xa1, 0x94, 0x12, + 0x49, 0x10, 0xff, 0x2a, 0x08, 0x4b, 0x05, 0x7c, 0xd8, 0x0c, 0xd4, 0xa9, 0xf6, 0x1e, 0x65, 0xd0, + 0x13, 0xd0, 0xc6, 0x17, 0xcc, 0x1b, 0x75, 0xfa, 0xf1, 0xe3, 0x08, 0xfa, 0x60, 0x33, 0x46, 0x50, + 0x15, 0x36, 0xa2, 0x0e, 0x2a, 0x41, 0x8d, 0x86, 0x0b, 0x46, 0x8c, 0xa0, 0xad, 0xa8, 0x83, 0xf6, + 0xe1, 0x9c, 0xb7, 0x2b, 0x71, 0x07, 0x8d, 0xc2, 0x15, 0xff, 0x8f, 0x35, 0x28, 0x0d, 0x05, 0xb8, + 0x89, 0x3d, 0x88, 0x6b, 0xb3, 0x2d, 0x07, 0xe5, 0x72, 0xca, 0x27, 0x2d, 0x06, 0x09, 0x57, 0x90, + 0xd9, 0xae, 0x2e, 0x28, 0x62, 0x09, 0xea, 0xa0, 0x29, 0x0c, 0x52, 0x07, 0x71, 0xdd, 0x83, 0x1d, + 0x4b, 0x50, 0xa3, 0xdd, 0x1f, 0x05, 0xdb, 0x10, 0x60, 0x29, 0x06, 0x83, 0xb8, 0x2e, 0x5d, 0x41, + 0xb4, 0x3f, 0x58, 0x90, 0x81, 0x46, 0xc6, 0xe0, 0x18, 0x16, 0xa1, 0x0d, 0xda, 0x43, 0x3a, 0xb0, + 0x02, 0x27, 0x30, 0x69, 0x09, 0x92, 0xbf, 0x0b, 0x42, 0xf4, 0xc0, 0x2a, 0xdc, 0x1a, 0x53, 0x38, + 0x63, 0xb9, 0xd2, 0xac, 0x71, 0xdc, 0x7d, 0xbd, 0xf7, 0x42, 0x0c, 0xb8, 0x82, 0xcc, 0xc6, 0x35, + 0xfd, 0x26, 0x78, 0x83, 0x67, 0xf6, 0xc2, 0x5e, 0xd9, 0x67, 0xc8, 0x79, 0x25, 0x5b, 0xd0, 0x2e, + 0xdf, 0x8b, 0x6b, 0xe3, 0x64, 0x5a, 0x9f, 0xc2, 0x04, 0x0c, 0xb3, 0x2c, 0xcb, 0xc0, 0x38, 0x77, + 0x46, 0x77, 0xea, 0x0e, 0x0e, 0xa0, 0xdb, 0x35, 0x74, 0x73, 0xbc, 0x3e, 0x84, 0x4b, 0x78, 0x84, + 0x0b, 0x58, 0x63, 0xeb, 0xac, 0xc8, 0xce, 0xe0, 0x01, 0xca, 0x1c, 0x20, 0x35, 0x57, 0x50, 0x0a, + 0xa6, 0x61, 0x09, 0xb6, 0xb9, 0xb6, 0x07, 0x83, 0xd0, 0x67, 0xe8, 0x65, 0x54, 0xef, 0x37, 0x8e, + 0xa5, 0x7b, 0xb4, 0x40, 0x57, 0x6a, 0x0d, 0x0a, 0xdc, 0xe8, 0x4e, 0x9a, 0x4d, 0x3c, 0xb3, 0x0a, + 0x96, 0x09, 0x41, 0xb3, 0x73, 0x99, 0x87, 0x31, 0xdd, 0xd4, 0xac, 0xb3, 0x3d, 0xb4, 0x96, 0x7d, + 0x29, 0xc7, 0x73, 0xd4, 0x7c, 0xd0, 0x5f, 0x84, 0x05, 0xe1, 0x9d, 0x54, 0xab, 0x46, 0x1d, 0x94, + 0xcf, 0xab, 0x21, 0xcf, 0x9b, 0x3a, 0x6a, 0x04, 0x19, 0xaf, 0x12, 0x19, 0xf9, 0xd7, 0x8f, 0x9e, + 0x85, 0x09, 0x04, 0x75, 0xd5, 0x25, 0xf5, 0x5d, 0xf7, 0x0d, 0x2a, 0x30, 0xaf, 0x71, 0x68, 0xa7, + 0x5d, 0xf8, 0x00, 0x00, 0x00, 0x00, 0x49, 0x45, 0x4e, 0x44, 0xae, 0x42, 0x60, 0x82, }; const BITMAP_OPAQUE add_dimension_xpm[1] = {{ png, sizeof( png ), "add_dimension_xpm" }}; diff --git a/bitmaps_png/cpp_26/add_glabel.cpp b/bitmaps_png/cpp_26/add_glabel.cpp index 7860c5a52b..a821c4e1ae 100644 --- a/bitmaps_png/cpp_26/add_glabel.cpp +++ b/bitmaps_png/cpp_26/add_glabel.cpp @@ -8,47 +8,42 @@ static const unsigned char png[] = { 0x89, 0x50, 0x4e, 0x47, 0x0d, 0x0a, 0x1a, 0x0a, 0x00, 0x00, 0x00, 0x0d, 0x49, 0x48, 0x44, 0x52, 0x00, 0x00, 0x00, 0x1a, 0x00, 0x00, 0x00, 0x1a, 0x08, 0x06, 0x00, 0x00, 0x00, 0xa9, 0x4a, 0x4c, - 0xce, 0x00, 0x00, 0x02, 0x68, 0x49, 0x44, 0x41, 0x54, 0x48, 0xc7, 0xe5, 0xd6, 0x4d, 0x88, 0x95, - 0x55, 0x1c, 0xc7, 0xf1, 0xcf, 0x73, 0xbb, 0xaf, 0x33, 0x53, 0x38, 0x79, 0xb3, 0x46, 0x27, 0xe7, - 0xbe, 0x95, 0x42, 0xe1, 0x2c, 0x24, 0x65, 0x36, 0xbd, 0x90, 0x8b, 0x88, 0x04, 0x17, 0xe1, 0x32, - 0x45, 0x21, 0xa9, 0x65, 0x0a, 0x11, 0x24, 0x88, 0x61, 0x1b, 0xa7, 0x01, 0xa1, 0x68, 0x48, 0x74, - 0x25, 0x45, 0xb6, 0x89, 0xa0, 0x88, 0x20, 0x92, 0x5e, 0x9c, 0x89, 0xa8, 0x99, 0xb9, 0xf3, 0x1c, - 0x11, 0x82, 0x5c, 0x88, 0x70, 0xa3, 0x0c, 0x32, 0xc4, 0x97, 0x59, 0x3c, 0x6d, 0x7c, 0x62, 0xd0, - 0x7b, 0x9b, 0x3b, 0x37, 0x6c, 0x51, 0x8b, 0xef, 0xe6, 0x39, 0xf0, 0xfb, 0xf2, 0x9c, 0xff, 0xff, - 0xfc, 0xcf, 0x91, 0x24, 0x89, 0x7f, 0x03, 0xff, 0x4d, 0xd1, 0x39, 0x8a, 0x53, 0x94, 0x7a, 0xe1, - 0x14, 0x59, 0x44, 0x5d, 0x89, 0x02, 0x49, 0xcc, 0xf5, 0x5e, 0x98, 0x96, 0x99, 0x1f, 0x32, 0xb2, - 0x7e, 0x29, 0xd9, 0x5f, 0xa2, 0xa2, 0xc6, 0xee, 0x9c, 0xea, 0x68, 0x5e, 0x75, 0x43, 0xb7, 0xf4, - 0xab, 0x8c, 0x4e, 0xcb, 0x9c, 0x3e, 0xa1, 0xf4, 0x51, 0x9f, 0x91, 0xa1, 0x2e, 0x45, 0xb5, 0x5d, - 0xc8, 0x20, 0x5a, 0x0e, 0xd3, 0xdc, 0xdb, 0xa4, 0xf5, 0x92, 0xc1, 0x43, 0x0c, 0x97, 0xba, 0x15, - 0x45, 0xbd, 0x14, 0x7a, 0x9e, 0x2d, 0xb3, 0xa2, 0x5f, 0x1f, 0x75, 0xdf, 0x76, 0x64, 0x7a, 0x12, - 0x9d, 0xa5, 0x1a, 0xb8, 0x18, 0xf3, 0x7b, 0xcc, 0x6f, 0x93, 0x8c, 0xb6, 0x0b, 0x9a, 0xe5, 0xd0, - 0x17, 0xb2, 0xb3, 0x03, 0xea, 0x0f, 0xb7, 0xcb, 0x59, 0x52, 0x14, 0x78, 0x3b, 0x90, 0xa4, 0xbc, - 0xcb, 0x29, 0x54, 0x6e, 0x91, 0x71, 0xc7, 0x9c, 0xe8, 0xf4, 0x3b, 0xfa, 0xde, 0x1f, 0xd0, 0xb8, - 0x67, 0x59, 0xa2, 0x33, 0x0c, 0x05, 0xae, 0x06, 0x92, 0xaf, 0x39, 0x1f, 0x48, 0x9a, 0x5c, 0xdf, - 0xc8, 0xce, 0x76, 0x7f, 0xf5, 0x1d, 0xf7, 0x37, 0xf9, 0xe5, 0x79, 0x2b, 0x5f, 0xe5, 0xa1, 0x7c, - 0xd7, 0xa2, 0xc0, 0xe1, 0x40, 0x32, 0xcf, 0xc2, 0x18, 0xaf, 0xcc, 0x70, 0x31, 0x90, 0x1c, 0xe7, - 0x53, 0xac, 0x69, 0x27, 0x9b, 0x63, 0xeb, 0x0f, 0xa2, 0xd6, 0xc6, 0xd2, 0xf0, 0xb6, 0xfc, 0xfe, - 0xb5, 0xa5, 0xc2, 0x78, 0xad, 0x58, 0x18, 0xaf, 0x15, 0x3b, 0x8a, 0x02, 0x77, 0x07, 0xfe, 0x08, - 0x24, 0x1f, 0xf0, 0x0d, 0x76, 0xcf, 0xf0, 0x46, 0x20, 0x99, 0xe5, 0xca, 0x83, 0x6c, 0xef, 0xd4, - 0x1c, 0x4d, 0xd1, 0x91, 0xc9, 0x75, 0x7d, 0x57, 0x0a, 0xe3, 0xb5, 0x24, 0xe5, 0xef, 0x44, 0x07, - 0xd2, 0xba, 0x1c, 0xe3, 0x93, 0x49, 0x5e, 0x3f, 0xc3, 0xc1, 0xf4, 0xdb, 0x5b, 0x7c, 0x88, 0x55, - 0xed, 0x44, 0x81, 0x89, 0xe3, 0x0f, 0x94, 0x2e, 0x2f, 0x29, 0x0a, 0x0c, 0x84, 0x1b, 0xdb, 0xd4, - 0x89, 0xef, 0xb9, 0xb4, 0x9a, 0xad, 0x6d, 0x5a, 0xfd, 0x99, 0x98, 0xf3, 0x1b, 0x0a, 0xc3, 0x2f, - 0x66, 0xcb, 0xe5, 0xb1, 0xa8, 0x9c, 0xdb, 0x1c, 0x95, 0x73, 0x9b, 0x3b, 0x89, 0xf6, 0xa5, 0x81, - 0x13, 0x9c, 0x7c, 0x81, 0x23, 0x29, 0x13, 0x9c, 0x4c, 0xd7, 0x0e, 0xf3, 0x1e, 0x06, 0x17, 0xd5, - 0x67, 0x38, 0xf0, 0xf3, 0x3e, 0x83, 0x7b, 0x4b, 0x1a, 0x63, 0x8b, 0x77, 0xe8, 0x16, 0x51, 0x20, - 0x1f, 0xf8, 0x29, 0xe6, 0xda, 0x14, 0xad, 0x1c, 0x7b, 0x50, 0x41, 0x1e, 0xf9, 0xc7, 0x29, 0x36, - 0xf9, 0xb1, 0xc9, 0xc2, 0x14, 0xad, 0x7e, 0xb6, 0xa4, 0xed, 0x1d, 0xf8, 0xf2, 0x63, 0xb9, 0x37, - 0xf3, 0xea, 0xdb, 0x90, 0xed, 0xaa, 0xeb, 0xf0, 0x04, 0x9e, 0x96, 0x06, 0xdd, 0x7c, 0x2e, 0xd8, - 0x74, 0x63, 0xfd, 0x29, 0xe4, 0x62, 0x5e, 0x9b, 0x11, 0x7d, 0x75, 0xa7, 0xfa, 0x73, 0x54, 0x56, - 0xdc, 0x96, 0x11, 0x14, 0x78, 0x32, 0xa6, 0xb5, 0xc9, 0x9a, 0x3d, 0x05, 0xf5, 0xc6, 0x6d, 0x99, - 0x75, 0x73, 0xac, 0x8a, 0xb9, 0x70, 0xd0, 0x5d, 0x2f, 0x17, 0x55, 0x1e, 0xeb, 0x94, 0xf1, 0x8f, - 0xa6, 0xf7, 0x01, 0x32, 0x81, 0xcf, 0x3e, 0x97, 0x3d, 0x9a, 0xd7, 0x78, 0xf6, 0xe6, 0x69, 0xd0, - 0x56, 0x34, 0xcf, 0x42, 0xcc, 0xb5, 0xe5, 0xf2, 0xad, 0x4c, 0x73, 0x85, 0xda, 0x0e, 0x56, 0x97, - 0x97, 0xbc, 0x8f, 0x4e, 0xd0, 0x5f, 0xb7, 0x76, 0xac, 0x17, 0x56, 0xaa, 0x3e, 0x52, 0x54, 0x1d, - 0xe9, 0xfa, 0x71, 0xb2, 0xdc, 0x0b, 0x6f, 0x31, 0xff, 0xcf, 0xe7, 0xd6, 0x9f, 0x54, 0x68, 0x3c, - 0xdd, 0x99, 0xca, 0x2f, 0xa9, 0x00, 0x00, 0x00, 0x00, 0x49, 0x45, 0x4e, 0x44, 0xae, 0x42, 0x60, - 0x82, + 0xce, 0x00, 0x00, 0x02, 0x1b, 0x49, 0x44, 0x41, 0x54, 0x48, 0xc7, 0xed, 0xd6, 0xcd, 0x4b, 0x54, + 0x51, 0x18, 0xc7, 0xf1, 0xcf, 0x8c, 0x8d, 0xe3, 0x50, 0xd2, 0x1b, 0x59, 0xa6, 0xc5, 0x38, 0x09, + 0x6d, 0xa2, 0x90, 0xc0, 0x5d, 0x8b, 0x40, 0x28, 0xa2, 0xa0, 0x20, 0x24, 0x82, 0xc0, 0xca, 0x8a, + 0x96, 0x45, 0x10, 0xed, 0x42, 0xc8, 0x45, 0xd9, 0xa2, 0x36, 0xfd, 0x09, 0x81, 0xb5, 0x08, 0x82, + 0x72, 0x59, 0xa0, 0x48, 0xef, 0x82, 0x9e, 0x08, 0x82, 0x16, 0x89, 0xe0, 0x26, 0xe9, 0x95, 0xd2, + 0xc8, 0xd3, 0xe6, 0x06, 0x17, 0xf3, 0x65, 0xc6, 0xa8, 0x55, 0x8b, 0x2f, 0x97, 0x7b, 0x0f, 0xf7, + 0xf7, 0xe5, 0x9c, 0xf3, 0x3c, 0xe7, 0x5e, 0x31, 0x46, 0xff, 0x02, 0xff, 0x45, 0x7f, 0x24, 0x0a, + 0x3c, 0x0e, 0xbc, 0x5a, 0x2c, 0x23, 0x9c, 0x29, 0x57, 0xf4, 0x3e, 0x10, 0xff, 0x80, 0x1f, 0x2f, + 0xd9, 0x5f, 0x96, 0x68, 0x98, 0x8f, 0xf5, 0x8a, 0x9d, 0xeb, 0x15, 0xdb, 0x2b, 0xa1, 0x5b, 0x6d, + 0x4f, 0x60, 0x7a, 0x84, 0x2f, 0x81, 0x96, 0xb2, 0x44, 0x79, 0xcd, 0xbb, 0x90, 0xa9, 0x74, 0xfd, + 0x07, 0x64, 0xbb, 0x02, 0x71, 0x84, 0xb1, 0x97, 0xd4, 0x2f, 0x4a, 0x84, 0x26, 0xbc, 0xc3, 0x07, + 0x4c, 0x60, 0xdb, 0x6c, 0x41, 0x83, 0xb2, 0xb7, 0x13, 0xd9, 0x93, 0x51, 0x0a, 0x8b, 0x11, 0xdd, + 0x40, 0x4c, 0xf1, 0x00, 0xc5, 0x99, 0x41, 0xf7, 0xc9, 0x0f, 0xca, 0x3e, 0x4f, 0xf6, 0xac, 0x37, + 0xce, 0xcc, 0x99, 0x4f, 0x84, 0x7a, 0x7c, 0x4b, 0x04, 0xa3, 0xc9, 0x75, 0x0a, 0x1d, 0xb3, 0xcd, + 0xaa, 0x9f, 0x35, 0x4f, 0x65, 0xc7, 0x02, 0xf1, 0x71, 0x75, 0xf6, 0x72, 0xbe, 0xa7, 0xb4, 0xe2, + 0x17, 0x0b, 0x89, 0xae, 0x24, 0xe1, 0xdf, 0x71, 0x21, 0x59, 0xc2, 0x88, 0x3e, 0x34, 0xcc, 0x26, + 0xeb, 0x93, 0xdb, 0x3a, 0x24, 0xf3, 0x39, 0x10, 0x0f, 0x1c, 0xae, 0x8b, 0xf9, 0x9e, 0x52, 0xcc, + 0xf7, 0x94, 0xe2, 0x9c, 0x22, 0xac, 0xc2, 0xa7, 0x24, 0x78, 0x00, 0xc7, 0x71, 0x35, 0xb9, 0xff, + 0x8a, 0xf6, 0xb9, 0x8a, 0xe3, 0xa1, 0xaa, 0xb3, 0x81, 0xf8, 0x2c, 0x97, 0x89, 0x75, 0x5d, 0xc5, + 0x05, 0x45, 0x17, 0x53, 0xfb, 0x72, 0x0f, 0xdd, 0xe8, 0x4a, 0x3d, 0xbb, 0x83, 0xba, 0x99, 0x92, + 0xc0, 0xba, 0xc0, 0xdb, 0x40, 0x3c, 0xb9, 0x77, 0xd5, 0xfc, 0x33, 0xc2, 0xb2, 0xd4, 0x32, 0xcd, + 0xc5, 0x47, 0xec, 0x4b, 0x4b, 0x46, 0x29, 0x24, 0xa7, 0x4c, 0x1c, 0x50, 0xd5, 0x9b, 0xd3, 0x78, + 0x82, 0x25, 0xad, 0x68, 0x99, 0x4b, 0x74, 0x2e, 0x15, 0xd8, 0x8b, 0x6b, 0x29, 0x7a, 0x53, 0x63, + 0x37, 0xb1, 0x32, 0xc6, 0x28, 0x92, 0x09, 0xdc, 0x0a, 0xc4, 0x21, 0x99, 0xfe, 0xd5, 0x8a, 0x47, + 0x28, 0xae, 0x98, 0xaf, 0xea, 0xf2, 0x78, 0x83, 0x49, 0x8c, 0xe3, 0x14, 0x8a, 0xa8, 0x4e, 0xa8, + 0xc1, 0xeb, 0xa4, 0x40, 0xc6, 0xd1, 0x96, 0x64, 0x5c, 0x4a, 0xfa, 0xe8, 0xf5, 0x16, 0x1b, 0x8e, + 0x15, 0x94, 0x36, 0x96, 0x55, 0xde, 0xd8, 0x89, 0x3d, 0xbf, 0x82, 0x7e, 0x6b, 0x40, 0x5a, 0x93, + 0xf1, 0xdd, 0x2f, 0x38, 0x9a, 0xf4, 0xcf, 0x44, 0xbb, 0xba, 0xce, 0x9c, 0xe6, 0x16, 0x95, 0xf4, + 0x51, 0x39, 0x04, 0x76, 0x04, 0x26, 0x03, 0x53, 0x97, 0xd4, 0x9e, 0xae, 0x51, 0x6a, 0x9b, 0x2d, + 0x23, 0x7d, 0x7a, 0x4f, 0x0f, 0xc9, 0x4c, 0x04, 0xc6, 0x2b, 0xe4, 0x5b, 0x20, 0xde, 0x95, 0x3b, + 0x5f, 0xad, 0xe9, 0x20, 0xdb, 0x73, 0xf3, 0x9d, 0x75, 0xe3, 0x23, 0x4c, 0x0e, 0x33, 0x95, 0xbc, + 0x58, 0x11, 0x8f, 0x64, 0xaf, 0x17, 0x6c, 0x3a, 0x44, 0x69, 0xf9, 0x82, 0x5f, 0xd8, 0x82, 0xc6, + 0x86, 0x1a, 0x9b, 0x3a, 0xaa, 0x35, 0x1d, 0xac, 0x94, 0x1a, 0xcd, 0x47, 0x0a, 0x9a, 0x1b, 0xcb, + 0xfa, 0x94, 0xa3, 0x8a, 0xcd, 0xb5, 0x8b, 0x63, 0xed, 0xd2, 0xff, 0x7f, 0x41, 0x7f, 0x8d, 0x9f, + 0x8e, 0x31, 0x67, 0x6a, 0x5f, 0x12, 0x40, 0xd2, 0x00, 0x00, 0x00, 0x00, 0x49, 0x45, 0x4e, 0x44, + 0xae, 0x42, 0x60, 0x82, }; const BITMAP_OPAQUE add_glabel_xpm[1] = {{ png, sizeof( png ), "add_glabel_xpm" }}; diff --git a/bitmaps_png/cpp_26/add_hierarchical_label.cpp b/bitmaps_png/cpp_26/add_hierarchical_label.cpp index 25124cd0ec..d5c0a6ab72 100644 --- a/bitmaps_png/cpp_26/add_hierarchical_label.cpp +++ b/bitmaps_png/cpp_26/add_hierarchical_label.cpp @@ -8,96 +8,83 @@ static const unsigned char png[] = { 0x89, 0x50, 0x4e, 0x47, 0x0d, 0x0a, 0x1a, 0x0a, 0x00, 0x00, 0x00, 0x0d, 0x49, 0x48, 0x44, 0x52, 0x00, 0x00, 0x00, 0x1a, 0x00, 0x00, 0x00, 0x1a, 0x08, 0x06, 0x00, 0x00, 0x00, 0xa9, 0x4a, 0x4c, - 0xce, 0x00, 0x00, 0x05, 0x83, 0x49, 0x44, 0x41, 0x54, 0x48, 0xc7, 0xad, 0x96, 0x5f, 0x6c, 0x53, - 0x55, 0x1c, 0xc7, 0xbf, 0xbf, 0xd3, 0x6e, 0x2d, 0x5b, 0x3b, 0x2a, 0x2b, 0xdb, 0x32, 0xca, 0x2c, - 0xe8, 0xdc, 0x1f, 0xba, 0xf1, 0x67, 0xc8, 0x9f, 0x40, 0x50, 0xd8, 0x04, 0x43, 0x7c, 0x50, 0xc7, - 0x12, 0x13, 0x34, 0x10, 0xf5, 0xcd, 0x07, 0x35, 0xea, 0x23, 0x04, 0x12, 0x1e, 0x78, 0xc0, 0x40, - 0x23, 0x86, 0x98, 0x60, 0x22, 0x8b, 0x90, 0x68, 0x87, 0x15, 0x44, 0x70, 0x0c, 0xb6, 0x50, 0x26, - 0x96, 0x4d, 0x97, 0xb2, 0x0c, 0xdc, 0x98, 0xc2, 0x9d, 0x54, 0xe8, 0x06, 0xed, 0xe8, 0xe5, 0xf6, - 0xae, 0xed, 0xbd, 0xbd, 0xc7, 0x87, 0xad, 0xdd, 0x6d, 0x57, 0xde, 0xfc, 0x25, 0x37, 0xb9, 0xe7, - 0xdc, 0x7b, 0xce, 0xe7, 0xf7, 0xfd, 0x9e, 0x73, 0x7e, 0xf7, 0x12, 0x80, 0x22, 0x00, 0x25, 0xf8, - 0xff, 0x62, 0x9c, 0x73, 0xce, 0x73, 0x3b, 0x8d, 0x00, 0x16, 0x84, 0xc3, 0xe1, 0x36, 0x80, 0x18, - 0x11, 0x00, 0x22, 0x10, 0x11, 0x08, 0x33, 0xf7, 0xe9, 0x37, 0x67, 0xfa, 0x01, 0xcc, 0xf6, 0xe5, - 0x84, 0xff, 0xfa, 0xf5, 0xc7, 0xaf, 0xb4, 0xb4, 0xb4, 0x03, 0x50, 0xf2, 0x81, 0x60, 0x30, 0x1a, - 0x0d, 0xc9, 0x64, 0x72, 0x1a, 0xa0, 0xbf, 0x72, 0x61, 0x9c, 0x03, 0xa4, 0xc3, 0x50, 0x36, 0x72, - 0x7e, 0x49, 0x89, 0xe1, 0x69, 0x32, 0x09, 0x80, 0x23, 0x2a, 0x8a, 0x6f, 0x29, 0xc9, 0x24, 0xce, - 0x9c, 0x3d, 0x8b, 0x9a, 0x9a, 0x1a, 0x30, 0x62, 0x00, 0xe5, 0x64, 0x9e, 0x56, 0xa3, 0x07, 0xe7, - 0x44, 0x22, 0x91, 0xd0, 0x34, 0x4d, 0x13, 0x39, 0xe7, 0x9a, 0xdb, 0xed, 0x1e, 0xf6, 0x7a, 0xbd, - 0xd7, 0xb2, 0x14, 0x11, 0x11, 0x88, 0x31, 0x58, 0x2d, 0x16, 0x54, 0x57, 0x57, 0x03, 0x00, 0x18, - 0x63, 0xf9, 0xd5, 0xe5, 0x2a, 0xcd, 0x56, 0xc5, 0x00, 0xd8, 0x18, 0x11, 0xea, 0xeb, 0xeb, 0x8b, - 0xe7, 0x58, 0x47, 0x00, 0xd8, 0xcc, 0x00, 0xc6, 0x18, 0x12, 0x89, 0x04, 0x7c, 0x3e, 0x1f, 0x4c, - 0x85, 0x85, 0x19, 0x15, 0x7a, 0x0b, 0x73, 0xdb, 0xf9, 0x22, 0x12, 0x89, 0x2c, 0xdc, 0xb9, 0x73, - 0x67, 0x93, 0xa2, 0x28, 0xdc, 0xe3, 0xf1, 0xfc, 0x9d, 0xa5, 0x88, 0x88, 0xc0, 0x18, 0x83, 0xaa, - 0xaa, 0xa8, 0xab, 0xad, 0x85, 0x63, 0x71, 0x15, 0x18, 0x9b, 0x56, 0xc1, 0x88, 0xa0, 0x04, 0x02, - 0x25, 0xca, 0xcd, 0x9b, 0xcf, 0xe8, 0x7d, 0xcf, 0x5d, 0x27, 0xf3, 0xd6, 0xad, 0xa1, 0x82, 0x8a, - 0x8a, 0x44, 0x73, 0x73, 0x73, 0x25, 0x80, 0x4a, 0x10, 0x69, 0x1e, 0x8f, 0x27, 0x34, 0x0b, 0xd2, - 0xaf, 0x01, 0x11, 0x0c, 0x06, 0x03, 0x38, 0xd7, 0xa0, 0x69, 0xd3, 0x6d, 0x4e, 0x04, 0xd1, 0xed, - 0x6e, 0x92, 0x3b, 0x2f, 0x6e, 0x52, 0x8a, 0x2d, 0x52, 0x3e, 0x15, 0xc6, 0x98, 0x64, 0x79, 0xb2, - 0xf1, 0x5c, 0xff, 0xf2, 0x1f, 0xbe, 0x3f, 0xaf, 0x4b, 0x86, 0x32, 0xd6, 0x61, 0x26, 0xe3, 0x74, - 0xe6, 0x8c, 0xb1, 0x0c, 0x34, 0x77, 0xad, 0x26, 0xaa, 0xeb, 0x46, 0x7f, 0x7b, 0xf3, 0x9d, 0x81, - 0x8a, 0x0a, 0x7b, 0x0c, 0x98, 0xb6, 0x2f, 0x2d, 0x6a, 0xa1, 0xbf, 0x77, 0x51, 0x99, 0xe7, 0x64, - 0x4b, 0x30, 0x18, 0xea, 0xae, 0xaa, 0xaa, 0x8c, 0xe7, 0x5d, 0xa3, 0x8c, 0xef, 0xba, 0x89, 0xf5, - 0x10, 0x96, 0xb1, 0x88, 0xd0, 0xd0, 0x58, 0x13, 0xde, 0xdc, 0xb2, 0xe1, 0x51, 0x7a, 0x63, 0xa4, - 0xdd, 0xc0, 0xdb, 0xaf, 0x07, 0x47, 0x3b, 0x4e, 0x36, 0x0f, 0x1f, 0x39, 0xda, 0xe8, 0x3c, 0x72, - 0xb0, 0x6f, 0xfa, 0x44, 0x70, 0x64, 0x29, 0x22, 0x22, 0x98, 0x1e, 0x3c, 0x28, 0x9a, 0xf2, 0x7a, - 0x6d, 0xea, 0xd4, 0x14, 0x60, 0xb7, 0x3f, 0x21, 0x87, 0xe3, 0x09, 0xcb, 0x81, 0xa7, 0x0f, 0xb5, - 0xd1, 0x60, 0xe0, 0x19, 0xcb, 0x75, 0x1b, 0xc3, 0xbc, 0xa5, 0xf9, 0xba, 0xb9, 0xf3, 0xfc, 0x2a, - 0xe0, 0x60, 0x3f, 0x63, 0x8c, 0x6b, 0x9a, 0x96, 0xad, 0x08, 0x44, 0x58, 0x74, 0xe8, 0x50, 0x6b, - 0x58, 0x10, 0x1a, 0x01, 0x20, 0xb9, 0x60, 0x41, 0x28, 0x70, 0xfa, 0xf4, 0xf1, 0xa6, 0xa6, 0xa6, - 0x68, 0x5a, 0x51, 0x7a, 0x32, 0x96, 0xa3, 0x16, 0xba, 0xdd, 0xe8, 0xd8, 0xb7, 0xd7, 0x9f, 0x58, - 0xb3, 0xf6, 0xe5, 0xdf, 0x2f, 0xf4, 0x94, 0xad, 0x7d, 0xad, 0x65, 0x3c, 0xfd, 0x9c, 0xa5, 0x5f, - 0x8a, 0x77, 0x77, 0xdb, 0x4d, 0x63, 0x63, 0x0d, 0x99, 0xdd, 0x13, 0x89, 0x54, 0x04, 0x0e, 0x1c, - 0xd8, 0x18, 0x8b, 0xc5, 0x0c, 0x4c, 0x97, 0x39, 0x40, 0x20, 0x62, 0x73, 0xcf, 0xd9, 0xcc, 0x84, - 0x66, 0x97, 0x4b, 0x4a, 0x39, 0x9d, 0x42, 0xe4, 0xe8, 0x17, 0x6b, 0xf5, 0x49, 0xb0, 0x74, 0x26, - 0x93, 0x07, 0x0e, 0xbc, 0x0c, 0xce, 0x49, 0x35, 0x1a, 0x95, 0xfb, 0x76, 0x7b, 0x08, 0x00, 0x56, - 0x04, 0x02, 0xf5, 0x97, 0xba, 0xba, 0xca, 0x89, 0xcd, 0x4c, 0xac, 0x2b, 0x12, 0xf9, 0x76, 0x6a, - 0xba, 0x5d, 0xbe, 0x7b, 0x77, 0x6f, 0xe9, 0x40, 0x5f, 0x7d, 0x38, 0x3c, 0x59, 0x90, 0x05, 0x4a, - 0x0c, 0x0c, 0x94, 0xc4, 0xfb, 0xfb, 0x57, 0x03, 0xc0, 0xed, 0x25, 0x4b, 0xee, 0xde, 0x70, 0xb9, - 0x86, 0x01, 0xa0, 0x3c, 0x1c, 0x2e, 0x0b, 0x75, 0x74, 0x2c, 0x53, 0x15, 0x85, 0xcd, 0x4e, 0x8a, - 0x39, 0x80, 0x5c, 0x58, 0xc5, 0x67, 0x9f, 0x8e, 0xcc, 0x53, 0xe2, 0xa6, 0x63, 0xee, 0x8f, 0xb7, - 0x1c, 0x19, 0x38, 0x5e, 0x5b, 0xf8, 0xe1, 0xa2, 0xcd, 0x0c, 0x00, 0x22, 0x7b, 0xf6, 0x6c, 0x42, - 0x2a, 0x65, 0xd0, 0x88, 0xb4, 0xeb, 0x2b, 0x57, 0x8e, 0x9a, 0x5b, 0x5b, 0x07, 0xb9, 0xc5, 0x32, - 0x09, 0x00, 0xcb, 0xfb, 0xfb, 0x97, 0x75, 0x75, 0x75, 0x2d, 0x9c, 0xb5, 0x4e, 0x57, 0x1d, 0x9e, - 0x06, 0x33, 0x18, 0x78, 0x70, 0x7d, 0xad, 0x20, 0x5f, 0x3b, 0xd7, 0xb2, 0xf7, 0xd7, 0xcf, 0xdf, - 0xa7, 0xc5, 0xa6, 0x6f, 0xd9, 0x0e, 0x60, 0xfe, 0x94, 0xcf, 0xb7, 0x0e, 0x00, 0xe2, 0x46, 0x63, - 0xf2, 0xa5, 0xbe, 0xbe, 0xba, 0x2d, 0xed, 0xed, 0xeb, 0xa8, 0xa0, 0x40, 0x01, 0x80, 0x45, 0xa1, - 0x50, 0xe5, 0x68, 0x47, 0x47, 0x6d, 0x2a, 0x95, 0xd2, 0x63, 0xf2, 0xc2, 0xf4, 0x57, 0xd9, 0xc3, - 0x27, 0xa6, 0x88, 0xcd, 0x1a, 0x2b, 0x25, 0xdb, 0x38, 0x97, 0xb5, 0x11, 0xe3, 0x07, 0xc0, 0x6e, - 0xae, 0x28, 0x26, 0x00, 0x28, 0x52, 0x14, 0xf3, 0x52, 0x41, 0x58, 0xca, 0x05, 0x61, 0x69, 0x66, - 0x4a, 0xce, 0xa9, 0xe1, 0xda, 0x35, 0x57, 0x4f, 0x4f, 0xcf, 0xad, 0x86, 0xac, 0x62, 0x9e, 0xad, - 0x04, 0x00, 0x34, 0x4d, 0x83, 0xa6, 0x69, 0x50, 0x86, 0x87, 0x8b, 0xad, 0xc3, 0x63, 0x0e, 0xfb, - 0x9a, 0x8f, 0x7e, 0x3e, 0x5e, 0xb7, 0xe9, 0xaf, 0xed, 0xdb, 0xb7, 0xff, 0x64, 0xb4, 0x03, 0xef, - 0x02, 0x40, 0xc4, 0x66, 0x0b, 0x1f, 0x6b, 0x6c, 0xf4, 0x2f, 0xab, 0xab, 0x93, 0x55, 0x55, 0x85, - 0x2c, 0xcb, 0xd8, 0xd6, 0xdb, 0xfb, 0x62, 0xf9, 0xbd, 0x7b, 0xce, 0x67, 0x83, 0xc1, 0xaa, 0xb3, - 0x5e, 0xef, 0xf3, 0x0d, 0x79, 0x3e, 0x43, 0x44, 0x04, 0xce, 0x39, 0x52, 0xa9, 0x14, 0xe2, 0xf1, - 0x38, 0xe2, 0xf1, 0x38, 0x1e, 0xef, 0xdb, 0xd7, 0x34, 0xe1, 0x70, 0x0a, 0xcf, 0xad, 0x76, 0xdd, - 0x5b, 0xb3, 0x6e, 0xfd, 0x23, 0x00, 0x82, 0x51, 0x01, 0xfe, 0x99, 0xb2, 0xd9, 0x78, 0xc0, 0xe5, - 0xba, 0x0d, 0x87, 0x63, 0xfc, 0x13, 0xb7, 0xfb, 0x4f, 0x49, 0x92, 0x30, 0x31, 0x31, 0x81, 0x85, - 0x57, 0xaf, 0x8e, 0x07, 0xf7, 0xec, 0x69, 0x95, 0x92, 0x49, 0x53, 0x79, 0x20, 0xe0, 0x9c, 0x28, - 0x2d, 0x15, 0xf5, 0xb6, 0xa5, 0x21, 0xaa, 0xaa, 0x42, 0x14, 0x45, 0x48, 0x92, 0x04, 0x59, 0x96, - 0xa1, 0x5d, 0xbe, 0xbc, 0xee, 0xca, 0xf2, 0x8d, 0x37, 0x36, 0xd7, 0x2e, 0x79, 0xf8, 0x4d, 0xfb, - 0xc9, 0x7b, 0x00, 0x22, 0xc6, 0x55, 0xc0, 0x1b, 0x2b, 0x9c, 0xce, 0x0d, 0x4c, 0x96, 0x69, 0x85, - 0xd9, 0x6c, 0x05, 0x50, 0x9c, 0x4e, 0xdb, 0xba, 0x6b, 0xd7, 0x58, 0xd5, 0x8e, 0x1d, 0xee, 0xce, - 0xce, 0xce, 0xf2, 0x22, 0x00, 0x74, 0xe2, 0xc4, 0x0a, 0xbd, 0x55, 0x00, 0x90, 0x4a, 0xa5, 0x20, - 0x49, 0x12, 0xa2, 0xd1, 0x28, 0xa2, 0xd1, 0x28, 0x94, 0x53, 0xa7, 0x96, 0x18, 0x53, 0x1a, 0x05, - 0xab, 0xeb, 0x85, 0xaf, 0xbf, 0xeb, 0x18, 0x6c, 0xff, 0xf2, 0xf0, 0x45, 0xce, 0xb9, 0x62, 0xe4, - 0x9c, 0x0b, 0x00, 0x04, 0x00, 0xd8, 0xbf, 0x7f, 0xff, 0xab, 0x00, 0x5c, 0xfa, 0x6a, 0x61, 0xb5, - 0x5a, 0x53, 0x6d, 0x6d, 0x6d, 0xf7, 0x89, 0x08, 0xf7, 0xbd, 0xde, 0x1a, 0x71, 0xe2, 0xb1, 0x6d, - 0xf6, 0xcb, 0x3e, 0xad, 0x46, 0x96, 0x65, 0xc4, 0x62, 0x31, 0x88, 0xa2, 0x08, 0xcb, 0x99, 0x33, - 0x6b, 0x07, 0xca, 0x9d, 0x77, 0xae, 0xf6, 0xf9, 0x2f, 0x8d, 0x0c, 0xfa, 0x2e, 0x70, 0xce, 0xb5, - 0xd9, 0x5a, 0x37, 0x13, 0x43, 0x43, 0x43, 0xb2, 0xdf, 0xef, 0x9f, 0x94, 0x65, 0x99, 0x39, 0x1c, - 0x0e, 0x2b, 0xe9, 0x2a, 0xc7, 0x9c, 0x7f, 0x00, 0x22, 0x68, 0x9a, 0x06, 0x55, 0x55, 0xa1, 0x28, - 0x0a, 0x92, 0xc9, 0x24, 0x92, 0x82, 0x30, 0xcf, 0x74, 0x57, 0x58, 0x76, 0xc4, 0x54, 0x75, 0x78, - 0x24, 0x36, 0xe8, 0x49, 0x43, 0xe6, 0x80, 0x3c, 0x1e, 0x8f, 0x0f, 0x80, 0x8f, 0x88, 0x0a, 0x87, - 0x86, 0x86, 0xde, 0xcb, 0xd8, 0xa8, 0x8b, 0x02, 0x49, 0x2c, 0x36, 0x5c, 0xe9, 0xae, 0x9c, 0x7c, - 0x70, 0xa7, 0x88, 0x73, 0x8e, 0x64, 0x22, 0x01, 0x45, 0x92, 0x60, 0x90, 0x24, 0x58, 0xce, 0xff, - 0xf2, 0xc2, 0xbf, 0x1a, 0xfe, 0xb8, 0x13, 0xa3, 0xb3, 0x7a, 0xc8, 0x1c, 0x90, 0x3e, 0x24, 0x49, - 0x4a, 0xe9, 0x2d, 0x02, 0x00, 0x63, 0x65, 0xa5, 0x68, 0xee, 0xb9, 0x62, 0xd3, 0x8e, 0x7f, 0xb5, - 0x4d, 0x60, 0x94, 0x79, 0xae, 0x71, 0x0d, 0xaa, 0xa2, 0x72, 0x88, 0xa2, 0xf8, 0x23, 0xb7, 0x9d, - 0x9e, 0x82, 0x3a, 0x3c, 0xc7, 0x81, 0x3c, 0xff, 0x7a, 0x20, 0x22, 0x06, 0xa0, 0x2c, 0x5f, 0x02, - 0x05, 0xb0, 0x3b, 0x38, 0x0a, 0x6d, 0x00, 0x72, 0x06, 0x16, 0x4c, 0x11, 0x0a, 0x65, 0x02, 0x4f, - 0x26, 0xf8, 0xe8, 0xad, 0xdc, 0x71, 0xff, 0x01, 0xe7, 0xad, 0x52, 0x19, 0x12, 0x68, 0x7f, 0x3e, - 0x00, 0x00, 0x00, 0x00, 0x49, 0x45, 0x4e, 0x44, 0xae, 0x42, 0x60, 0x82, + 0xce, 0x00, 0x00, 0x04, 0xae, 0x49, 0x44, 0x41, 0x54, 0x48, 0xc7, 0xad, 0x96, 0x6d, 0x48, 0x5b, + 0x67, 0x14, 0x80, 0xfd, 0x98, 0x06, 0x53, 0xb5, 0x3a, 0xa4, 0x6e, 0xb2, 0xfe, 0x09, 0xac, 0x1b, + 0x53, 0x61, 0x7f, 0xfc, 0x53, 0x98, 0x13, 0xe9, 0x3f, 0x75, 0x03, 0x15, 0xb6, 0xc1, 0x9c, 0x53, + 0x18, 0xdd, 0x90, 0x89, 0x15, 0x65, 0x9b, 0xe0, 0x8f, 0x52, 0x37, 0xe9, 0x1a, 0x5c, 0x0b, 0xda, + 0xd2, 0xb4, 0xb8, 0xda, 0x98, 0xb5, 0xd1, 0xaa, 0xf1, 0x03, 0xfc, 0xda, 0xd0, 0xa9, 0x71, 0xcc, + 0xd9, 0x8d, 0x8a, 0xd1, 0xc5, 0x4e, 0x6d, 0x68, 0xab, 0x8d, 0x31, 0xc6, 0x8f, 0x98, 0x44, 0x73, + 0x93, 0xb3, 0x73, 0x8e, 0xde, 0x78, 0xa3, 0x4d, 0xe8, 0x60, 0x81, 0x87, 0xe4, 0x26, 0xef, 0x3d, + 0xcf, 0x7b, 0xde, 0x73, 0xde, 0xf7, 0x26, 0x24, 0x24, 0x24, 0xe4, 0x65, 0xe4, 0xed, 0xff, 0x11, + 0x19, 0x00, 0x84, 0x1c, 0x86, 0x5e, 0xa7, 0x2d, 0x16, 0x8b, 0xd3, 0x6a, 0x5d, 0xf3, 0xac, 0xad, + 0x21, 0x36, 0x9b, 0xc7, 0xb6, 0xbe, 0xee, 0x59, 0x27, 0x36, 0x36, 0x3c, 0x1b, 0x22, 0x9b, 0x9b, + 0x9e, 0x4d, 0x62, 0x6b, 0xcb, 0xb3, 0x15, 0x80, 0x89, 0x89, 0x09, 0x13, 0xc6, 0x7b, 0x25, 0xa0, + 0xc8, 0x66, 0xb3, 0x09, 0x2b, 0x16, 0x0b, 0x58, 0x56, 0x57, 0x61, 0xd5, 0x6a, 0x05, 0xeb, 0xda, + 0x1a, 0xa0, 0x10, 0x50, 0x08, 0xeb, 0xc4, 0xc6, 0x06, 0xa0, 0x08, 0x36, 0x89, 0xad, 0x2d, 0xd8, + 0x12, 0xb1, 0xdb, 0xfd, 0x98, 0x9d, 0x9d, 0x35, 0x07, 0x15, 0x61, 0x30, 0x81, 0x24, 0x8d, 0x8d, + 0x8d, 0x30, 0x34, 0x34, 0x04, 0xbf, 0x8e, 0x8c, 0xc0, 0x08, 0x31, 0x3a, 0x0a, 0xa3, 0x81, 0x18, + 0x1b, 0x83, 0x31, 0x42, 0xaf, 0xdf, 0x03, 0x3f, 0xe3, 0xbd, 0xee, 0xde, 0xde, 0x5e, 0x63, 0x5f, + 0x5f, 0xdf, 0x74, 0x5e, 0x5e, 0x5e, 0xdd, 0x11, 0x11, 0x2e, 0x8d, 0x40, 0x59, 0x68, 0xb5, 0x5a, + 0xce, 0xca, 0xbc, 0xb2, 0xe2, 0x9f, 0x9d, 0x34, 0x43, 0xca, 0x4e, 0x9a, 0xe1, 0x7e, 0x96, 0x87, + 0xa9, 0xa9, 0xa9, 0x69, 0x39, 0x2a, 0xda, 0xdc, 0x14, 0x28, 0x50, 0x4b, 0x4b, 0x0b, 0x58, 0x31, + 0xf8, 0xd2, 0xf2, 0x32, 0x4b, 0x75, 0x3a, 0x1d, 0xe8, 0x3a, 0x3b, 0xa1, 0x93, 0xe8, 0xea, 0x82, + 0xae, 0x7d, 0xba, 0xbb, 0xbb, 0xa1, 0xbb, 0xa7, 0x07, 0x7a, 0x82, 0x50, 0x56, 0x56, 0xf6, 0x67, + 0x41, 0x41, 0xc1, 0x97, 0x84, 0x4c, 0x26, 0x7b, 0x83, 0x45, 0x38, 0x2b, 0x81, 0x66, 0xda, 0xd2, + 0xda, 0xca, 0x33, 0x7f, 0xf2, 0xf4, 0x29, 0x2f, 0x87, 0x65, 0x35, 0x48, 0xbd, 0xf6, 0x67, 0x4e, + 0xb5, 0xb1, 0x07, 0xc1, 0xb5, 0xb3, 0x03, 0x49, 0x49, 0x49, 0xef, 0xb1, 0x08, 0x0b, 0x2b, 0xd0, + 0xcd, 0xad, 0x28, 0x7a, 0x66, 0x36, 0xc3, 0xc2, 0xe2, 0x22, 0xd7, 0xc1, 0xbc, 0x12, 0xa0, 0x41, + 0xa4, 0xcb, 0x27, 0x0a, 0x03, 0x48, 0x9d, 0x2e, 0xd7, 0x81, 0x08, 0xbf, 0x10, 0x68, 0xb0, 0x5a, + 0xad, 0x86, 0x88, 0x88, 0x08, 0x5a, 0x50, 0x08, 0x0b, 0x0b, 0x83, 0xb9, 0x87, 0x0f, 0x79, 0x29, + 0x45, 0xc1, 0x8c, 0x4c, 0x06, 0x06, 0xfc, 0x2d, 0x18, 0x73, 0xa7, 0x4e, 0xc1, 0x36, 0x4e, 0xc0, + 0xe1, 0x70, 0x30, 0x3b, 0xd2, 0x8c, 0xec, 0xdb, 0xdb, 0x02, 0xd9, 0x2b, 0x2b, 0x2b, 0x59, 0x22, + 0x72, 0x5d, 0xa5, 0xf2, 0xcb, 0xe2, 0x45, 0x44, 0x84, 0xb9, 0xae, 0x0e, 0x5c, 0x98, 0x09, 0xb1, + 0xeb, 0x76, 0x1f, 0x88, 0xb6, 0x51, 0x84, 0x40, 0x66, 0x66, 0xa6, 0x9f, 0x28, 0x3f, 0x3f, 0x9f, + 0xeb, 0x42, 0xcb, 0x44, 0x19, 0x8b, 0xa2, 0xa6, 0x6b, 0x6a, 0x50, 0x37, 0xb5, 0x41, 0xf3, 0xed, + 0x76, 0x1f, 0x1a, 0x75, 0x07, 0xf4, 0x9c, 0xfb, 0x86, 0x7f, 0x9f, 0x8e, 0x3d, 0x0e, 0x4e, 0x2c, + 0xc1, 0xee, 0xee, 0x2e, 0x08, 0x82, 0x20, 0x11, 0x39, 0x1c, 0x2c, 0x8a, 0x8b, 0x8b, 0x63, 0x41, + 0x7a, 0x7a, 0x3a, 0xbf, 0xc7, 0xc7, 0xc7, 0x73, 0x46, 0x24, 0xa1, 0x8c, 0x45, 0xd1, 0x3d, 0x75, + 0x1b, 0xcf, 0x96, 0x96, 0x85, 0x82, 0x89, 0xb8, 0x71, 0xf6, 0x0b, 0x19, 0x19, 0x3c, 0xc6, 0xf4, + 0xf9, 0x17, 0x7c, 0xed, 0x27, 0xc2, 0xb5, 0x14, 0xc6, 0xc7, 0xc7, 0x7d, 0x99, 0xe0, 0xa6, 0x83, + 0xf0, 0xf0, 0x70, 0xfe, 0x3c, 0x30, 0x38, 0xc8, 0x12, 0x9a, 0x88, 0x28, 0x6a, 0x6b, 0x6e, 0xf7, + 0x0b, 0x2e, 0xc5, 0x7e, 0xff, 0x3e, 0x18, 0xb0, 0xbe, 0x06, 0xbc, 0xdf, 0x61, 0x30, 0x1c, 0x15, + 0x55, 0x57, 0x57, 0x73, 0x60, 0xfc, 0x12, 0x56, 0xb1, 0xd3, 0x52, 0x53, 0x53, 0xf9, 0xba, 0xa2, + 0xa2, 0x82, 0x25, 0x0e, 0xa7, 0xd3, 0x27, 0x6a, 0xd7, 0x74, 0xf8, 0x05, 0xa7, 0x60, 0x52, 0x1e, + 0x17, 0x17, 0xf3, 0x38, 0xd5, 0x5b, 0xd1, 0x10, 0xfb, 0xc3, 0x9b, 0x20, 0xbb, 0xa4, 0xd8, 0xdd, + 0x13, 0x39, 0x9d, 0x42, 0x5a, 0x5a, 0x1a, 0x07, 0x2e, 0x2c, 0x2c, 0xe4, 0x4e, 0x2b, 0x2a, 0x2a, + 0xe2, 0xeb, 0x94, 0x94, 0x14, 0x96, 0xd0, 0x52, 0x1d, 0x16, 0x49, 0x83, 0x7b, 0x3c, 0x1e, 0x1f, + 0x3b, 0x4b, 0x4b, 0xf0, 0x40, 0xbe, 0x37, 0x36, 0xe3, 0xb3, 0x57, 0x41, 0xa6, 0x54, 0xf0, 0xd1, + 0x70, 0xda, 0x64, 0x32, 0x09, 0xa1, 0xa1, 0xa1, 0x1c, 0x58, 0xa3, 0xd1, 0xf0, 0x91, 0xd3, 0xd0, + 0xd0, 0xe0, 0x5b, 0xca, 0xf9, 0xf9, 0x79, 0xae, 0x87, 0x54, 0xf4, 0x3c, 0x81, 0xd7, 0xeb, 0x65, + 0x04, 0x6c, 0xa0, 0xbf, 0xe2, 0x63, 0x78, 0x6c, 0xd6, 0x27, 0x89, 0x07, 0x22, 0x95, 0x4a, 0xe5, + 0x11, 0x83, 0xf6, 0xf7, 0xf7, 0xf3, 0xa1, 0x4a, 0x07, 0xac, 0x28, 0xaf, 0xaf, 0xaf, 0xe7, 0x7a, + 0x88, 0xa2, 0x8e, 0x9f, 0x74, 0x7e, 0x12, 0x51, 0x40, 0xd0, 0xeb, 0x19, 0x6e, 0x13, 0x1a, 0xa7, + 0x51, 0x44, 0xc1, 0x31, 0xe5, 0xeb, 0x20, 0xfb, 0x5e, 0xe1, 0x66, 0x51, 0x6e, 0x6e, 0xae, 0x57, + 0xda, 0xd6, 0x87, 0xc9, 0xca, 0xca, 0x3a, 0x22, 0x3a, 0x2c, 0xa1, 0x17, 0x5d, 0x3b, 0x8c, 0x46, + 0x98, 0x89, 0x8c, 0xe4, 0x86, 0xe8, 0xb9, 0x78, 0x05, 0x7e, 0x1b, 0xff, 0x9d, 0xba, 0xf7, 0x2c, + 0x89, 0xde, 0x89, 0x8d, 0x8d, 0x85, 0x60, 0x22, 0xb9, 0x5c, 0xee, 0xd7, 0xde, 0xba, 0x3b, 0x9d, + 0x3e, 0x09, 0xbd, 0xe8, 0x9d, 0x3b, 0x0e, 0xc7, 0xfc, 0x83, 0x93, 0xa2, 0x31, 0x53, 0x39, 0xef, + 0x43, 0xab, 0xb6, 0x0b, 0x6c, 0xb8, 0x07, 0xc5, 0xae, 0x2b, 0x11, 0x03, 0xe6, 0xe4, 0xe4, 0x80, + 0x52, 0xa9, 0x84, 0xda, 0xda, 0x5a, 0x28, 0x2f, 0x2f, 0xa7, 0x13, 0xd8, 0x27, 0xa3, 0x13, 0x59, + 0x2a, 0x92, 0x2e, 0x17, 0x49, 0xa8, 0xae, 0x0b, 0x77, 0xef, 0xee, 0x6d, 0xd8, 0xa8, 0x28, 0xa8, + 0xfb, 0xea, 0x3c, 0x0c, 0x0c, 0xfc, 0x0c, 0xcd, 0x5a, 0xed, 0x63, 0xbc, 0xff, 0x35, 0x12, 0xa9, + 0x28, 0x10, 0xd6, 0x43, 0x28, 0x2d, 0x2d, 0xfd, 0x83, 0x8a, 0x4e, 0xa7, 0xc1, 0xe4, 0xe4, 0x24, + 0x3f, 0x6b, 0xa2, 0xa3, 0xa3, 0x59, 0x54, 0x52, 0x52, 0xe2, 0x13, 0x4d, 0xc5, 0xc5, 0x83, 0x31, + 0x31, 0xd1, 0xc7, 0xdf, 0x27, 0x4e, 0xc0, 0x4c, 0x42, 0x02, 0x4c, 0xef, 0xff, 0x3e, 0x53, 0x7a, + 0x0e, 0x86, 0x7e, 0xd1, 0xc3, 0xcd, 0x5b, 0xb7, 0xcc, 0x31, 0x31, 0x31, 0x09, 0xe2, 0xf3, 0xc8, + 0xb0, 0x3f, 0xeb, 0xb1, 0xaa, 0xaa, 0xaa, 0x6b, 0x52, 0x11, 0xb5, 0x74, 0x76, 0x76, 0x36, 0x8b, + 0x14, 0x0a, 0xc5, 0x0b, 0x9d, 0x75, 0xc6, 0x93, 0x27, 0xe1, 0xf6, 0xf5, 0x66, 0xf8, 0xee, 0xe2, + 0xa5, 0x27, 0x89, 0x89, 0x89, 0xc7, 0xa4, 0x0f, 0xbe, 0xe3, 0x48, 0x1c, 0x22, 0xc7, 0xa6, 0xb8, + 0xa0, 0xd7, 0xeb, 0xe7, 0x87, 0x87, 0x87, 0x1f, 0xe1, 0x49, 0xe1, 0x26, 0x29, 0x65, 0x85, 0x7f, + 0x5e, 0x78, 0x13, 0xbb, 0xf0, 0x39, 0x65, 0x7f, 0x64, 0x02, 0x6d, 0xfd, 0x8f, 0x70, 0xef, 0x6a, + 0x13, 0x73, 0xe7, 0xca, 0x4d, 0xb8, 0xf1, 0xed, 0x65, 0xa8, 0xfb, 0xfa, 0x02, 0x5c, 0x3d, 0xaf, + 0x84, 0xc6, 0xcb, 0x2a, 0xf8, 0xe8, 0xe3, 0xe2, 0xb9, 0xe4, 0xe4, 0xe4, 0x48, 0xbf, 0x27, 0x6c, + 0x80, 0x3f, 0x12, 0x72, 0x14, 0x2e, 0x8a, 0x67, 0x99, 0x74, 0x73, 0x4a, 0x3b, 0x8d, 0x3e, 0xd3, + 0xa9, 0x81, 0xfb, 0x10, 0xeb, 0x31, 0x00, 0x0f, 0xa6, 0xa6, 0xbc, 0x79, 0x1f, 0x7c, 0x78, 0x03, + 0xef, 0x0f, 0x3d, 0x12, 0x33, 0x90, 0x68, 0x70, 0x70, 0xd0, 0x88, 0x12, 0x2f, 0x4a, 0x18, 0x94, + 0x30, 0x18, 0xdc, 0x0f, 0x97, 0x6b, 0xc7, 0xbb, 0x6c, 0x5e, 0xf1, 0xb6, 0xea, 0xba, 0xec, 0xef, + 0x9e, 0x39, 0xf3, 0xe9, 0xf3, 0xe2, 0x05, 0x13, 0xbd, 0x44, 0xfb, 0xeb, 0x3f, 0xa2, 0x08, 0x24, + 0x21, 0xfe, 0x05, 0x91, 0xa7, 0xfc, 0x24, 0x73, 0x8d, 0x40, 0x41, 0x00, 0x00, 0x00, 0x00, 0x49, + 0x45, 0x4e, 0x44, 0xae, 0x42, 0x60, 0x82, }; const BITMAP_OPAQUE add_hierarchical_label_xpm[1] = {{ png, sizeof( png ), "add_hierarchical_label_xpm" }}; diff --git a/bitmaps_png/cpp_26/add_junction.cpp b/bitmaps_png/cpp_26/add_junction.cpp index 0c5470d310..d27dafd732 100644 --- a/bitmaps_png/cpp_26/add_junction.cpp +++ b/bitmaps_png/cpp_26/add_junction.cpp @@ -8,34 +8,34 @@ static const unsigned char png[] = { 0x89, 0x50, 0x4e, 0x47, 0x0d, 0x0a, 0x1a, 0x0a, 0x00, 0x00, 0x00, 0x0d, 0x49, 0x48, 0x44, 0x52, 0x00, 0x00, 0x00, 0x1a, 0x00, 0x00, 0x00, 0x1a, 0x08, 0x06, 0x00, 0x00, 0x00, 0xa9, 0x4a, 0x4c, - 0xce, 0x00, 0x00, 0x01, 0x99, 0x49, 0x44, 0x41, 0x54, 0x48, 0xc7, 0xed, 0xd6, 0x3d, 0x6b, 0x93, - 0x61, 0x14, 0xc6, 0xf1, 0x5f, 0x92, 0x2a, 0xf8, 0x82, 0x66, 0x69, 0x87, 0x80, 0x9b, 0x22, 0x3a, - 0xd8, 0xa5, 0x31, 0x50, 0x5c, 0xda, 0xe6, 0x29, 0xa2, 0x81, 0xb4, 0x82, 0xe0, 0x60, 0xd3, 0x0a, - 0x22, 0x18, 0x83, 0x08, 0x26, 0xa9, 0x4b, 0xc0, 0xc5, 0x59, 0x14, 0x37, 0x47, 0x3f, 0x80, 0xdf, - 0x40, 0x27, 0x5d, 0xba, 0xf8, 0x45, 0x74, 0xd3, 0x1a, 0x4b, 0x73, 0x3b, 0xf8, 0x44, 0xa2, 0x0f, - 0xb1, 0x4f, 0x52, 0x23, 0x08, 0x1d, 0xae, 0xe9, 0x7e, 0xf9, 0x73, 0x9f, 0x73, 0x9d, 0x73, 0x6e, - 0x21, 0x04, 0xff, 0x42, 0xfb, 0x3b, 0xdc, 0x11, 0x7e, 0x8a, 0x3c, 0x8e, 0x21, 0x33, 0x69, 0xd0, - 0x1d, 0x94, 0x71, 0x74, 0xd2, 0xa0, 0x36, 0xaa, 0x38, 0x7e, 0x00, 0x1a, 0x0e, 0x88, 0x9c, 0x11, - 0x79, 0xe6, 0x9a, 0xe0, 0xb2, 0x60, 0x55, 0x30, 0xe7, 0x9d, 0x82, 0x06, 0x4e, 0xee, 0x1b, 0xe4, - 0xb1, 0xac, 0x25, 0x6d, 0x91, 0x6d, 0x6b, 0x76, 0xd5, 0x05, 0x0f, 0x05, 0x75, 0xc1, 0x4d, 0x3d, - 0x65, 0xdf, 0xcc, 0x7b, 0x2e, 0x2f, 0x8f, 0xec, 0xf8, 0xa0, 0x65, 0x2d, 0x15, 0x9f, 0x35, 0x07, - 0x42, 0x36, 0xa8, 0xa6, 0xe0, 0xaa, 0xae, 0xa2, 0x57, 0x28, 0x20, 0x37, 0x32, 0x48, 0xd9, 0x39, - 0x91, 0x6d, 0xad, 0x21, 0x90, 0xbe, 0xda, 0x82, 0xb2, 0x1d, 0x05, 0x9b, 0x98, 0xe9, 0xd7, 0xd5, - 0x28, 0x79, 0x79, 0x69, 0x4d, 0xef, 0x8f, 0x90, 0xbe, 0xd6, 0xf5, 0x94, 0x6c, 0x61, 0xb1, 0x5f, - 0x57, 0x49, 0xf7, 0x0c, 0xd3, 0x8a, 0xa0, 0x91, 0x62, 0x5f, 0x47, 0x70, 0x5f, 0xb0, 0xe8, 0x23, - 0x6e, 0x63, 0x1a, 0x99, 0xf4, 0xa0, 0x65, 0x61, 0xcf, 0xb0, 0xfd, 0x1a, 0xbe, 0x5d, 0xd4, 0x71, - 0x1a, 0x53, 0xe9, 0x41, 0xd5, 0x11, 0x5f, 0xb4, 0xe0, 0x13, 0xee, 0xe1, 0x02, 0x0e, 0xff, 0x00, - 0x91, 0xc3, 0x29, 0xac, 0xc7, 0x8b, 0x49, 0x95, 0xbc, 0x57, 0x4b, 0x99, 0xa3, 0x0d, 0x3d, 0x25, - 0x1f, 0x12, 0x2f, 0x8a, 0x61, 0x53, 0x38, 0x11, 0x77, 0xe1, 0xa4, 0x8a, 0xe6, 0x45, 0xbe, 0xa6, - 0x76, 0xdd, 0x8c, 0x17, 0x89, 0x1c, 0xa5, 0x76, 0xde, 0x92, 0x8e, 0x8a, 0x2f, 0x43, 0x61, 0x2d, - 0x41, 0x45, 0xd7, 0xac, 0x37, 0x78, 0x90, 0x70, 0x5d, 0x6a, 0xd0, 0x75, 0x39, 0x0b, 0x9e, 0x88, - 0x74, 0xd5, 0xf4, 0x34, 0xe2, 0xcb, 0x1b, 0x82, 0x9a, 0x9e, 0xb2, 0x1d, 0xb3, 0xde, 0xca, 0x6a, - 0xe2, 0xc6, 0x58, 0x75, 0x34, 0x10, 0xe2, 0x8c, 0x39, 0x17, 0x5d, 0xf2, 0xda, 0x4a, 0xec, 0xc6, - 0xaa, 0xa0, 0x68, 0xcb, 0xb4, 0xa7, 0xb8, 0x8b, 0x2b, 0x63, 0x77, 0x86, 0x04, 0x8c, 0x23, 0xbf, - 0x75, 0xef, 0x47, 0xb8, 0x85, 0xf3, 0x71, 0xae, 0xb3, 0x93, 0x1c, 0x13, 0xab, 0x7f, 0xa5, 0x7b, - 0x1f, 0x4c, 0xd8, 0xff, 0x10, 0xc4, 0x21, 0x9c, 0xc5, 0xc6, 0x5e, 0xdf, 0xad, 0xef, 0xd9, 0x83, - 0x86, 0x62, 0x6a, 0x21, 0xa9, 0xef, 0x00, 0x00, 0x00, 0x00, 0x49, 0x45, 0x4e, 0x44, 0xae, 0x42, - 0x60, 0x82, + 0xce, 0x00, 0x00, 0x01, 0xa3, 0x49, 0x44, 0x41, 0x54, 0x48, 0xc7, 0xed, 0xd6, 0x3f, 0x6b, 0x93, + 0x51, 0x14, 0xc7, 0xf1, 0x4f, 0x93, 0x68, 0xb1, 0xad, 0x0a, 0x2a, 0x82, 0x50, 0x8b, 0x08, 0x0e, + 0x82, 0x83, 0x55, 0x42, 0x03, 0x15, 0xa9, 0xed, 0x93, 0x22, 0xb4, 0xda, 0x5a, 0x70, 0x11, 0x1b, + 0x33, 0x39, 0xb4, 0xd1, 0xc5, 0x46, 0xa7, 0x8a, 0xa0, 0x2f, 0x40, 0x7c, 0x01, 0xba, 0xf8, 0x0a, + 0x1c, 0x74, 0x76, 0x12, 0xc1, 0x97, 0xa2, 0xa3, 0xf4, 0x1f, 0x7d, 0xae, 0x83, 0x4f, 0x4a, 0x12, + 0x7d, 0xe2, 0x93, 0xc6, 0x8a, 0x43, 0x87, 0xdf, 0x76, 0xee, 0xfd, 0x72, 0xce, 0xf9, 0x9d, 0x7b, + 0xae, 0x10, 0x82, 0x5e, 0x84, 0xbe, 0x86, 0x3a, 0xc6, 0xf5, 0x04, 0x59, 0x15, 0x76, 0xc4, 0x31, + 0x14, 0xfe, 0x05, 0xa8, 0x8a, 0xe3, 0x69, 0x99, 0xfd, 0x4d, 0x50, 0x0d, 0x27, 0xf7, 0x41, 0x9d, + 0x01, 0x65, 0xe7, 0x44, 0x5e, 0x59, 0x10, 0x5c, 0x17, 0xdc, 0x12, 0x14, 0x7d, 0x74, 0xc1, 0x04, + 0x0e, 0xf4, 0x0c, 0xf2, 0x4c, 0xce, 0x94, 0x27, 0xca, 0xd6, 0x2c, 0xda, 0xb6, 0x24, 0x78, 0x24, + 0x58, 0x12, 0xdc, 0x15, 0x8b, 0x6c, 0x1a, 0xf7, 0xd2, 0x09, 0x87, 0xdb, 0x33, 0xeb, 0x0e, 0x34, + 0xad, 0x6e, 0xd6, 0x77, 0x2b, 0x4d, 0x25, 0x6b, 0xd6, 0x8a, 0x60, 0xc6, 0xba, 0x31, 0x6f, 0x70, + 0xb4, 0x19, 0x96, 0x1d, 0x12, 0x39, 0xaf, 0x6c, 0x4d, 0x3d, 0x05, 0xd2, 0xd0, 0x63, 0x41, 0x64, + 0xd3, 0x19, 0x55, 0x0c, 0xfc, 0x02, 0x42, 0x01, 0xfd, 0xa9, 0x8a, 0xbc, 0xb6, 0x28, 0xee, 0x08, + 0x69, 0xe8, 0x9e, 0x58, 0xc9, 0x27, 0x8c, 0x20, 0xbf, 0x03, 0xca, 0x74, 0x78, 0x5e, 0x50, 0xcb, + 0x10, 0xb7, 0x2a, 0x78, 0x28, 0x98, 0xf4, 0x15, 0x25, 0xf4, 0x77, 0x07, 0x9a, 0x16, 0xfe, 0x58, + 0xb6, 0xd6, 0xf2, 0x6d, 0xe3, 0x26, 0x06, 0xbb, 0x03, 0xcd, 0x75, 0x9d, 0xd1, 0x37, 0xdc, 0x68, + 0x05, 0xfd, 0xec, 0xcf, 0x08, 0x2e, 0xa1, 0xf8, 0x5b, 0x5d, 0xf5, 0x4e, 0x25, 0x63, 0x8f, 0xaa, + 0x62, 0x25, 0x5f, 0x30, 0xd6, 0x52, 0xba, 0x04, 0x96, 0xc7, 0xc1, 0x54, 0x5d, 0x71, 0x59, 0xd9, + 0x7a, 0x46, 0xd7, 0x6d, 0x39, 0xe5, 0x39, 0x4e, 0xb7, 0x98, 0x21, 0xb3, 0xc5, 0xa7, 0x3c, 0x35, + 0xd3, 0xc1, 0xe2, 0x75, 0xc1, 0xac, 0x0d, 0xa3, 0x3e, 0x24, 0x46, 0x38, 0xb4, 0xbb, 0x81, 0xbd, + 0x2d, 0x6f, 0xd2, 0x0b, 0x65, 0x1b, 0x2a, 0x62, 0xb5, 0xe4, 0xf2, 0x9a, 0xa0, 0x22, 0x16, 0xd9, + 0x32, 0xea, 0xbd, 0x82, 0x6b, 0x38, 0xb2, 0xab, 0x81, 0x6d, 0xd9, 0xa8, 0xe3, 0x2e, 0x9a, 0xf0, + 0xd6, 0x7c, 0xe2, 0xc6, 0x39, 0x41, 0xd1, 0x67, 0xc3, 0x6a, 0x38, 0x8b, 0x81, 0x9e, 0x9e, 0xa0, + 0x36, 0x60, 0xae, 0xed, 0xf5, 0x7e, 0x80, 0xe1, 0xb4, 0x2d, 0xbb, 0xbf, 0x8f, 0xfe, 0x0b, 0xd0, + 0xf2, 0xde, 0x81, 0x18, 0xc2, 0x02, 0xee, 0xe3, 0x4e, 0xf2, 0xe5, 0xda, 0x13, 0x50, 0x1f, 0x06, + 0x93, 0x99, 0x19, 0x42, 0x2e, 0x2d, 0xf6, 0x07, 0x38, 0xc8, 0x81, 0xcd, 0xab, 0xde, 0xd2, 0xd3, + 0x00, 0x00, 0x00, 0x00, 0x49, 0x45, 0x4e, 0x44, 0xae, 0x42, 0x60, 0x82, }; const BITMAP_OPAQUE add_junction_xpm[1] = {{ png, sizeof( png ), "add_junction_xpm" }}; diff --git a/bitmaps_png/cpp_26/config.cpp b/bitmaps_png/cpp_26/config.cpp index b8a39b267e..95d6d4cba5 100644 --- a/bitmaps_png/cpp_26/config.cpp +++ b/bitmaps_png/cpp_26/config.cpp @@ -8,82 +8,93 @@ static const unsigned char png[] = { 0x89, 0x50, 0x4e, 0x47, 0x0d, 0x0a, 0x1a, 0x0a, 0x00, 0x00, 0x00, 0x0d, 0x49, 0x48, 0x44, 0x52, 0x00, 0x00, 0x00, 0x1a, 0x00, 0x00, 0x00, 0x1a, 0x08, 0x06, 0x00, 0x00, 0x00, 0xa9, 0x4a, 0x4c, - 0xce, 0x00, 0x00, 0x04, 0x99, 0x49, 0x44, 0x41, 0x54, 0x48, 0xc7, 0xd5, 0x96, 0x7b, 0x48, 0x9b, - 0x67, 0x14, 0xc6, 0xed, 0xda, 0x8e, 0xd1, 0x8d, 0x6d, 0x4c, 0x18, 0xab, 0x65, 0xad, 0x63, 0x17, - 0xd9, 0x85, 0x31, 0xa9, 0x14, 0xcb, 0xd8, 0x28, 0x83, 0xee, 0x9f, 0xb1, 0x8e, 0x8d, 0x86, 0xb1, - 0x95, 0xd2, 0x82, 0xa8, 0x69, 0x0d, 0x54, 0x97, 0xd4, 0x1a, 0xa3, 0x31, 0x31, 0xa6, 0x99, 0xce, - 0xd8, 0x7a, 0x2b, 0x73, 0x46, 0x44, 0x46, 0x9c, 0xad, 0x9a, 0x26, 0x6a, 0x34, 0x6a, 0x6c, 0x92, - 0x5a, 0x2f, 0xc1, 0x4b, 0x5c, 0x30, 0xd1, 0x46, 0x8d, 0xd7, 0x4c, 0xe3, 0x35, 0xc6, 0x4b, 0x14, - 0x27, 0x67, 0xe7, 0x7c, 0x98, 0x51, 0x2a, 0x5b, 0xb3, 0x2b, 0x5b, 0xe0, 0xe1, 0xfb, 0xf8, 0xbe, - 0xf0, 0xfe, 0xde, 0xe7, 0x79, 0xcf, 0x39, 0x49, 0x10, 0x00, 0x04, 0xfd, 0x1b, 0x0a, 0xfa, 0x4f, - 0x82, 0x04, 0x5c, 0xee, 0xfb, 0xf2, 0x8c, 0x8c, 0xee, 0x6b, 0x32, 0x59, 0xd7, 0xd5, 0xd4, 0xd4, - 0x6b, 0xff, 0x18, 0x08, 0x17, 0x2f, 0xfe, 0xd1, 0x62, 0x81, 0xa1, 0xa1, 0x21, 0x28, 0x29, 0x2c, - 0xb4, 0xff, 0x2d, 0xa0, 0xf4, 0x2b, 0x57, 0xb2, 0x84, 0x3c, 0xde, 0xa7, 0x0f, 0x3e, 0xcb, 0x95, - 0xc9, 0xcc, 0xc3, 0xc3, 0xc3, 0xe0, 0x74, 0x3a, 0xa1, 0x52, 0xa9, 0x74, 0x89, 0x58, 0xac, 0xc7, - 0xfd, 0xef, 0x44, 0x89, 0x89, 0x11, 0x59, 0x42, 0xa1, 0x36, 0x3e, 0x3e, 0xfe, 0xd9, 0x80, 0x40, - 0xf8, 0xd9, 0x23, 0x4b, 0x4b, 0xfb, 0xa1, 0xa9, 0xa1, 0x61, 0x4d, 0x53, 0x55, 0xe5, 0x91, 0x0a, - 0x04, 0xaa, 0x94, 0xf8, 0xf8, 0xcf, 0xbe, 0x49, 0x4f, 0x37, 0xe9, 0x6a, 0x6b, 0xe7, 0xc7, 0xc7, - 0xc7, 0xc1, 0xe5, 0x72, 0x41, 0xbf, 0xd5, 0xea, 0xbb, 0x21, 0x97, 0xdb, 0xa5, 0xc9, 0xc9, 0x82, - 0x6c, 0xb1, 0x58, 0xd1, 0x54, 0x57, 0x37, 0xe7, 0x9a, 0x9c, 0x84, 0xef, 0x72, 0x73, 0x6d, 0x89, - 0x1c, 0x4e, 0xc8, 0x23, 0x41, 0x3c, 0x36, 0xfb, 0xf9, 0x1b, 0x39, 0x39, 0xae, 0x9e, 0x9e, 0x1e, - 0x20, 0xf5, 0x76, 0x77, 0x6f, 0x1b, 0xf4, 0x7a, 0x1f, 0xb9, 0x98, 0xc4, 0x85, 0x66, 0x66, 0x66, - 0x60, 0x71, 0x71, 0x11, 0x56, 0x56, 0x56, 0x60, 0x73, 0x73, 0x13, 0x46, 0x1c, 0x8e, 0xed, 0xb1, - 0x91, 0x91, 0x6d, 0x8f, 0xc7, 0x03, 0x0b, 0x0b, 0x0b, 0x60, 0x6a, 0x69, 0x59, 0x4e, 0xe5, 0xf1, - 0xbe, 0x0c, 0x28, 0x3a, 0xf1, 0xe5, 0xcb, 0x5f, 0x68, 0x6f, 0xdf, 0xf6, 0xd8, 0x6c, 0x36, 0x70, - 0x38, 0x1c, 0x30, 0x3a, 0x3a, 0xca, 0xb8, 0x98, 0x9d, 0x9d, 0x05, 0x5a, 0x70, 0x7d, 0x7d, 0x9d, - 0xd1, 0xea, 0xea, 0x2a, 0x2c, 0x2f, 0x2f, 0xc3, 0xd2, 0xd2, 0x12, 0xcc, 0xcf, 0xcf, 0xc3, 0xa0, - 0xdd, 0xbe, 0xf5, 0xb5, 0x50, 0xa8, 0xfc, 0x43, 0x67, 0x94, 0x25, 0x16, 0xf7, 0x8f, 0x8d, 0x8d, - 0xc1, 0xc4, 0xc4, 0x04, 0x4c, 0x4f, 0x4f, 0x33, 0xbb, 0xf5, 0xbb, 0xf0, 0xf9, 0x7c, 0x0c, 0xc4, - 0xef, 0x62, 0x6e, 0x6e, 0x8e, 0xd9, 0x44, 0x59, 0x51, 0xd1, 0x74, 0x42, 0x54, 0xd4, 0x73, 0x01, - 0x83, 0xb8, 0x71, 0x71, 0x47, 0x54, 0x15, 0x15, 0x6e, 0xbf, 0x0b, 0xda, 0xf1, 0xda, 0xda, 0x1a, - 0x38, 0x06, 0x07, 0x37, 0xbe, 0x57, 0x28, 0x9c, 0xc5, 0xf9, 0xf9, 0xb6, 0x8e, 0xbb, 0x77, 0x3d, - 0x6e, 0x8c, 0x91, 0xde, 0xd3, 0x46, 0xa6, 0xa6, 0xa6, 0xc0, 0x6a, 0xb1, 0xfc, 0x9c, 0xce, 0xe7, - 0xcb, 0x7e, 0x17, 0xc4, 0xe3, 0xf1, 0x9e, 0x4c, 0xbc, 0x70, 0x21, 0x12, 0x2b, 0x2d, 0xfa, 0x6a, - 0x4a, 0x4a, 0xf7, 0x18, 0xc6, 0x45, 0x71, 0x78, 0xbd, 0x5e, 0xd8, 0xd8, 0xd8, 0x80, 0x7b, 0x06, - 0xc3, 0x92, 0x98, 0xcb, 0x3d, 0xc7, 0x62, 0xb1, 0xf6, 0xd2, 0xf7, 0x93, 0xd8, 0xec, 0xf0, 0x92, - 0xfc, 0x7c, 0x27, 0xb9, 0xa1, 0xb3, 0xa3, 0x78, 0xa9, 0x22, 0x95, 0xa5, 0xa5, 0x33, 0xd9, 0x12, - 0xc9, 0x3d, 0x09, 0x9f, 0xff, 0x6d, 0xf2, 0xa5, 0x4b, 0x27, 0x77, 0x81, 0x70, 0x27, 0x12, 0xac, - 0xaa, 0xb5, 0x3e, 0x2c, 0x80, 0x49, 0x8c, 0x8b, 0x62, 0xa1, 0x78, 0xfc, 0x31, 0xc9, 0x25, 0x12, - 0xf3, 0xae, 0x16, 0x48, 0x4a, 0xe2, 0xa0, 0x8b, 0x2d, 0x02, 0xd8, 0xed, 0x76, 0xe8, 0xeb, 0xeb, - 0x83, 0xde, 0xde, 0x5e, 0xe8, 0xea, 0xea, 0x82, 0x56, 0x93, 0x09, 0x72, 0xa4, 0x52, 0xeb, 0x2e, - 0x10, 0xba, 0x28, 0x70, 0x8e, 0x8c, 0x30, 0x2e, 0xe8, 0x80, 0x09, 0x40, 0x07, 0x4e, 0xe7, 0xf2, - 0x13, 0x46, 0x88, 0xef, 0xf3, 0x1e, 0x06, 0xf1, 0xe3, 0xe2, 0x5e, 0xd3, 0xeb, 0x74, 0x9e, 0xfe, - 0xfe, 0x7e, 0x06, 0xd0, 0xd9, 0xd9, 0x09, 0xad, 0xad, 0xad, 0x60, 0x34, 0x1a, 0xc1, 0x84, 0xa0, - 0xdc, 0xcc, 0xcc, 0x81, 0x5d, 0xa0, 0x0c, 0x3e, 0xff, 0x6c, 0x49, 0x41, 0xc1, 0x40, 0x15, 0x36, - 0x62, 0x9b, 0xd1, 0xe8, 0x25, 0x08, 0xc5, 0x46, 0xce, 0x08, 0x5c, 0x9c, 0x97, 0xe7, 0xa0, 0x1e, - 0x7b, 0x10, 0x24, 0x4d, 0x49, 0x51, 0xd8, 0xb1, 0x32, 0xc9, 0x41, 0x5b, 0x5b, 0x1b, 0x03, 0xd0, - 0x54, 0x57, 0x7b, 0x10, 0x60, 0xc7, 0x29, 0xd2, 0x9e, 0xc6, 0xe5, 0x4a, 0x7f, 0xb3, 0x18, 0x44, - 0x22, 0xd1, 0x3e, 0x84, 0x66, 0x62, 0xa9, 0x6e, 0x53, 0xbf, 0x90, 0x43, 0xb7, 0xdb, 0x0d, 0xf7, - 0x07, 0x06, 0x7c, 0xd7, 0x65, 0xb2, 0x36, 0x41, 0x42, 0xc2, 0x27, 0xdc, 0xd8, 0xd8, 0x37, 0x32, - 0x04, 0x82, 0xb2, 0x66, 0xad, 0x76, 0x8e, 0x9c, 0x90, 0x8b, 0x96, 0x96, 0x16, 0x06, 0x24, 0x4b, - 0x4d, 0xed, 0x0e, 0xb8, 0xea, 0x44, 0x17, 0x2f, 0x3e, 0xa5, 0x54, 0x28, 0x26, 0x08, 0x42, 0x0d, - 0x4a, 0xd5, 0x47, 0x55, 0x45, 0x57, 0x73, 0x7b, 0xfb, 0xfa, 0x9d, 0xc6, 0xc6, 0x25, 0x1b, 0xc6, - 0x45, 0x4e, 0x68, 0xf1, 0xa6, 0xa6, 0x26, 0xa8, 0xab, 0xab, 0x03, 0x55, 0x65, 0xe5, 0x26, 0x6e, - 0x84, 0x1d, 0x30, 0x88, 0x22, 0xca, 0x4e, 0x4f, 0xb7, 0x93, 0x13, 0x02, 0xd0, 0xd8, 0xa1, 0x41, - 0x4a, 0x0d, 0x6c, 0xc1, 0xa1, 0x6a, 0x36, 0x9b, 0x7f, 0x75, 0xd1, 0xd0, 0xd0, 0x00, 0x1a, 0x8d, - 0x06, 0x6a, 0x6a, 0x6a, 0x40, 0x5b, 0x5b, 0xbb, 0x85, 0x33, 0xb2, 0x34, 0x60, 0x50, 0xa6, 0x50, - 0x28, 0xb7, 0xf4, 0xf4, 0xf8, 0xfc, 0x65, 0x4b, 0xd3, 0xc1, 0x6a, 0xb5, 0x32, 0x23, 0xa9, 0xa3, - 0xa3, 0x83, 0x39, 0xe8, 0xe6, 0xe6, 0x66, 0xd0, 0x6a, 0xb5, 0x0c, 0x40, 0xaf, 0xd7, 0x83, 0x4e, - 0xa7, 0x63, 0xae, 0xb7, 0x94, 0xca, 0x45, 0x6c, 0x91, 0x8f, 0x1f, 0x09, 0xa2, 0x66, 0xc5, 0x0e, - 0x77, 0x93, 0x93, 0x11, 0xac, 0x42, 0xad, 0x46, 0xe3, 0xc1, 0x26, 0x9d, 0x36, 0x19, 0x8d, 0xdb, - 0x14, 0x95, 0xc1, 0x60, 0x60, 0x16, 0xad, 0xaf, 0xaf, 0x87, 0xa6, 0xc6, 0x46, 0xea, 0x9b, 0x05, - 0x74, 0x7f, 0x5f, 0x75, 0xf3, 0xa6, 0x97, 0x5c, 0xe2, 0x5c, 0xdc, 0xc2, 0x1e, 0x52, 0x07, 0xe4, - 0x08, 0x8b, 0xe1, 0xab, 0xaa, 0xf2, 0x72, 0x4f, 0x61, 0x76, 0xf6, 0x64, 0xf4, 0x99, 0x33, 0xd1, - 0x6f, 0x85, 0x85, 0x45, 0x70, 0xa2, 0xa2, 0xae, 0x63, 0x25, 0x4d, 0xde, 0xc1, 0xb8, 0xd4, 0x6a, - 0x35, 0xd4, 0xaa, 0xd5, 0xdb, 0xd8, 0x90, 0x1d, 0x27, 0x8e, 0x1f, 0xff, 0x08, 0xa3, 0x7e, 0x09, - 0xdf, 0x73, 0x0a, 0xe5, 0x72, 0x57, 0xa6, 0x48, 0x64, 0x8a, 0x89, 0x89, 0xd9, 0x1f, 0xc8, 0xcf, - 0xc4, 0x5e, 0xd4, 0x33, 0x67, 0x4f, 0x9f, 0x66, 0x85, 0x86, 0x84, 0xbc, 0x83, 0xf7, 0xa4, 0x77, - 0x51, 0x27, 0x3f, 0x3f, 0x75, 0xaa, 0x48, 0xa3, 0x52, 0x31, 0x91, 0x95, 0x29, 0x14, 0xde, 0x57, - 0x43, 0x43, 0xcf, 0xe1, 0xf3, 0x13, 0xa8, 0x63, 0xa8, 0x37, 0x8f, 0x85, 0x87, 0x47, 0xbc, 0x18, - 0x1c, 0x7c, 0x08, 0xef, 0x0f, 0x04, 0x02, 0x7a, 0x0c, 0xf5, 0x34, 0xea, 0x05, 0xd4, 0xcb, 0xa8, - 0xb7, 0x51, 0x91, 0xa8, 0x0f, 0x22, 0x23, 0x22, 0x12, 0xca, 0xcb, 0xca, 0x36, 0xc8, 0x55, 0x81, - 0x5c, 0x3e, 0x8b, 0xcf, 0x3e, 0x44, 0xbd, 0x87, 0x3a, 0x8a, 0x7a, 0x1d, 0x75, 0x18, 0x15, 0x8c, - 0x7a, 0x22, 0xe0, 0xe9, 0x8d, 0x9f, 0xfd, 0xe4, 0x6c, 0x07, 0x78, 0x04, 0xf5, 0xca, 0xe1, 0x83, - 0x07, 0x8f, 0x26, 0xc4, 0xc6, 0x56, 0xf0, 0x38, 0x9c, 0x6a, 0xf6, 0xf9, 0xf3, 0x19, 0xf8, 0x2c, - 0x8c, 0x62, 0x43, 0x1d, 0xda, 0x01, 0x1c, 0x78, 0xb8, 0xa9, 0xff, 0xd4, 0x7f, 0x86, 0x1d, 0xb7, - 0x14, 0xed, 0xbe, 0x9d, 0xeb, 0x9e, 0xff, 0xf7, 0xdf, 0xad, 0xbf, 0xa2, 0x5f, 0x00, 0xac, 0xf3, - 0x53, 0x02, 0xc3, 0xa6, 0x73, 0x2a, 0x00, 0x00, 0x00, 0x00, 0x49, 0x45, 0x4e, 0x44, 0xae, 0x42, - 0x60, 0x82, + 0xce, 0x00, 0x00, 0x05, 0x48, 0x49, 0x44, 0x41, 0x54, 0x48, 0xc7, 0xbd, 0x55, 0x6b, 0x4c, 0x53, + 0x67, 0x18, 0x76, 0xa8, 0x13, 0x37, 0x8d, 0x71, 0x63, 0x8e, 0x6d, 0x2e, 0x9a, 0xb0, 0x60, 0xe2, + 0xa6, 0x5b, 0x96, 0xdd, 0x4d, 0xd8, 0x62, 0x5c, 0xf6, 0xc3, 0x3f, 0x66, 0x8e, 0x99, 0x25, 0xfe, + 0x70, 0x89, 0x3b, 0x52, 0xa0, 0xdc, 0xa4, 0xb4, 0x5c, 0x6d, 0xa1, 0xc8, 0xd0, 0x8d, 0x3b, 0xe1, + 0xe2, 0xa6, 0x92, 0x08, 0x01, 0xa7, 0xd8, 0x96, 0x72, 0xa7, 0xa5, 0x72, 0x2b, 0x2d, 0x20, 0x72, + 0x1f, 0x88, 0xdc, 0x4a, 0x29, 0x20, 0x14, 0xca, 0x1d, 0x05, 0xde, 0xbd, 0xef, 0xc9, 0x29, 0x21, + 0x68, 0x2a, 0x66, 0xd9, 0x4e, 0xf2, 0x24, 0xcd, 0xd7, 0xef, 0xbc, 0xcf, 0xfb, 0x3e, 0xcf, 0xf3, + 0x7d, 0x67, 0x13, 0x00, 0x6c, 0xfa, 0x3f, 0xf0, 0x42, 0x9b, 0x25, 0x22, 0x51, 0x64, 0x5a, 0x7c, + 0xbc, 0xf1, 0x8f, 0xa4, 0x24, 0xc3, 0xc5, 0x90, 0x90, 0xea, 0xff, 0x8c, 0xe8, 0x72, 0x78, 0x78, + 0x6d, 0x47, 0x47, 0x07, 0x3c, 0x78, 0xf0, 0x00, 0xae, 0x24, 0x26, 0x1a, 0xfe, 0x35, 0x91, 0xd0, + 0xd3, 0xf3, 0x90, 0x44, 0x20, 0xa8, 0x0d, 0xe0, 0xf1, 0x0e, 0xac, 0x5d, 0x4f, 0x89, 0x8d, 0xed, + 0xc6, 0x07, 0x7a, 0x7a, 0x7a, 0xe0, 0x4e, 0x76, 0xf6, 0x48, 0x00, 0x9f, 0xbf, 0xd7, 0xfa, 0x9f, + 0xc8, 0xcd, 0x6d, 0xff, 0xa5, 0x0b, 0x17, 0xea, 0xc3, 0x05, 0x82, 0xb3, 0x1b, 0x22, 0x0a, 0xf4, + 0xf6, 0xfe, 0x3c, 0x3d, 0x21, 0xc1, 0xa4, 0xab, 0xad, 0xa5, 0xae, 0x47, 0xc4, 0x42, 0xa1, 0x44, + 0x2c, 0x10, 0x88, 0x62, 0xa4, 0xd2, 0xd6, 0x2a, 0x8d, 0x66, 0xaa, 0xbf, 0xbf, 0x1f, 0x86, 0x86, + 0x86, 0xe0, 0xef, 0xf6, 0xf6, 0xc7, 0xa9, 0x31, 0x31, 0x7d, 0x51, 0xa1, 0xa1, 0x69, 0xd2, 0xc0, + 0xc0, 0x88, 0xcc, 0xab, 0x57, 0x87, 0x4d, 0xb8, 0xae, 0xcc, 0xcd, 0x9d, 0x88, 0x0c, 0x0a, 0x12, + 0x3d, 0x97, 0x48, 0x12, 0x10, 0x90, 0x51, 0xa1, 0xd1, 0x2c, 0xe9, 0x74, 0x3a, 0x68, 0x6e, 0x6e, + 0x86, 0xbb, 0x6a, 0xf5, 0x82, 0xb6, 0xba, 0x7a, 0x89, 0x08, 0x0c, 0x06, 0x03, 0x0c, 0x0f, 0x0f, + 0x83, 0xd9, 0x6c, 0x86, 0xe9, 0xe9, 0x69, 0x58, 0x5c, 0x5c, 0x84, 0x01, 0x5c, 0x6f, 0x6d, 0x6a, + 0x7a, 0x62, 0xb1, 0x58, 0xd8, 0x75, 0xe3, 0xe0, 0x20, 0x5c, 0x96, 0x48, 0x3a, 0xc5, 0x62, 0xb1, + 0x9d, 0x4d, 0x22, 0xf1, 0x99, 0x33, 0xf6, 0xbf, 0x49, 0xa5, 0x5d, 0xcd, 0x4d, 0x4d, 0xd0, 0xd6, + 0xd6, 0xc6, 0xfa, 0xd1, 0xd7, 0xd7, 0x07, 0x46, 0xa3, 0x11, 0x1e, 0x3d, 0x7a, 0x04, 0x93, 0x93, + 0x93, 0x30, 0x3b, 0x3b, 0x0b, 0xf3, 0xf3, 0xf3, 0x30, 0x33, 0x33, 0x03, 0x53, 0x53, 0x53, 0x30, + 0x31, 0x31, 0x01, 0xe3, 0xe3, 0xe3, 0xec, 0xff, 0xa8, 0xc2, 0x10, 0xc9, 0xb8, 0x21, 0x8f, 0x44, + 0x9e, 0x9e, 0x47, 0xf3, 0x6e, 0xdf, 0xb6, 0x90, 0x17, 0x03, 0x03, 0x03, 0xec, 0x14, 0x54, 0x88, + 0x8a, 0x12, 0x01, 0x81, 0x26, 0xb2, 0x4e, 0x31, 0x36, 0x36, 0x06, 0x23, 0x23, 0x23, 0xd0, 0xa0, + 0xd3, 0x2d, 0x85, 0x9e, 0x3f, 0x2f, 0xda, 0x70, 0x18, 0x50, 0xe3, 0xa4, 0xa6, 0xc6, 0xc6, 0x15, + 0x9a, 0x62, 0x74, 0x74, 0x94, 0xed, 0x78, 0x6e, 0x6e, 0x0e, 0x46, 0x91, 0xb0, 0x44, 0xa9, 0x1c, + 0x93, 0x65, 0x67, 0x1b, 0xf5, 0x35, 0x35, 0x53, 0x44, 0x40, 0x53, 0x50, 0x23, 0xe4, 0x1b, 0x35, + 0x75, 0x49, 0x2c, 0xbe, 0xf7, 0x5c, 0x22, 0x92, 0x4d, 0xc8, 0xe7, 0x7f, 0x98, 0x12, 0x13, 0x33, + 0x40, 0x1d, 0x52, 0x21, 0x9a, 0x62, 0x61, 0x61, 0x01, 0xaa, 0xca, 0xcb, 0xcd, 0x68, 0x7c, 0x4a, + 0x10, 0xc3, 0xbc, 0x45, 0x7b, 0x43, 0x7d, 0x7c, 0x8e, 0x5c, 0x4f, 0x4d, 0x1d, 0x24, 0x12, 0x6a, + 0x88, 0x48, 0x48, 0x01, 0xc5, 0xad, 0x5b, 0x16, 0x89, 0x50, 0x98, 0x8e, 0xaa, 0x9c, 0x0c, 0xf4, + 0xf0, 0x70, 0xb6, 0x7a, 0xc5, 0x12, 0xd0, 0xcb, 0xbf, 0x4b, 0xa5, 0x3d, 0xd9, 0x19, 0x19, 0x26, + 0xec, 0xd8, 0xdc, 0xdd, 0xd5, 0xb5, 0x4c, 0x92, 0x90, 0x07, 0x24, 0x93, 0x05, 0x7d, 0xb9, 0x2c, + 0x16, 0x17, 0xaf, 0xef, 0x32, 0x98, 0xcf, 0xff, 0x0c, 0x1b, 0xb0, 0x90, 0x87, 0x5d, 0x5d, 0x5d, + 0xac, 0xa7, 0x2d, 0x2d, 0x2d, 0x80, 0xe1, 0x81, 0x42, 0xa5, 0xf2, 0xc9, 0xb5, 0x94, 0x94, 0x49, + 0xa1, 0x87, 0xc7, 0x8f, 0xab, 0x44, 0xfe, 0x6e, 0x6e, 0x1f, 0x14, 0x2a, 0x14, 0x13, 0x34, 0x3e, + 0x4d, 0x41, 0xda, 0x93, 0x54, 0x04, 0x22, 0x6b, 0xac, 0xab, 0x9b, 0xc1, 0x17, 0x5c, 0x9e, 0x25, + 0x49, 0xd6, 0xb5, 0x6b, 0x46, 0x3a, 0x5b, 0x94, 0xd0, 0x86, 0x86, 0x06, 0xd0, 0x6a, 0xb5, 0x50, + 0x51, 0x51, 0x01, 0x65, 0x65, 0x65, 0x90, 0x9f, 0x97, 0x07, 0x21, 0x7e, 0x7e, 0xc2, 0x55, 0xa2, + 0xf3, 0xe7, 0xce, 0x1d, 0xcc, 0x48, 0x4b, 0x9b, 0x68, 0xbd, 0x7f, 0x9f, 0xd5, 0x9b, 0x62, 0x4b, + 0xc9, 0x22, 0xc3, 0x29, 0x65, 0x6d, 0xcd, 0xcd, 0x8f, 0x03, 0xf9, 0xfc, 0xef, 0x9f, 0x4a, 0xa8, + 0xbb, 0xfb, 0x0e, 0x0c, 0xcd, 0x28, 0x91, 0xe8, 0xf5, 0x7a, 0xa8, 0xc6, 0x49, 0xaa, 0xaa, 0xaa, + 0x58, 0x82, 0x9b, 0x59, 0x59, 0xd3, 0xa9, 0xf1, 0xf1, 0xe3, 0xc1, 0x3e, 0x3e, 0x7e, 0xab, 0x44, + 0xa8, 0xe3, 0x16, 0xbc, 0x05, 0xbe, 0x88, 0x10, 0x0a, 0xf9, 0x78, 0x06, 0x6e, 0x16, 0xca, 0xe5, + 0xe6, 0xb5, 0xb1, 0x1d, 0x45, 0xbf, 0xfe, 0x4c, 0x4e, 0xee, 0x46, 0xcd, 0x5f, 0xb7, 0x92, 0xb8, + 0xba, 0xba, 0x6e, 0x8e, 0x0a, 0x0b, 0x93, 0x63, 0x68, 0x96, 0x6a, 0xf1, 0x70, 0xd3, 0x14, 0x2a, + 0x95, 0x0a, 0xe4, 0xb9, 0xb9, 0x8b, 0x41, 0x5e, 0x5e, 0xc9, 0xa4, 0x80, 0xc0, 0xdd, 0xdd, 0xd1, + 0x66, 0xea, 0xd0, 0x2f, 0x1d, 0xa5, 0xc9, 0x1a, 0x5b, 0x93, 0xc9, 0x04, 0xbd, 0xbd, 0xbd, 0x2b, + 0x7f, 0x65, 0x66, 0x9a, 0xa2, 0xc3, 0xc2, 0xf2, 0x22, 0x43, 0x42, 0x6e, 0x5c, 0x49, 0x48, 0xe8, + 0x6e, 0xd0, 0xeb, 0x17, 0x49, 0x2a, 0x8d, 0x46, 0x03, 0x25, 0x25, 0x25, 0x50, 0x5a, 0x5a, 0x0a, + 0xf1, 0xd1, 0xd1, 0x06, 0x31, 0xc3, 0xbc, 0xb2, 0xa1, 0x78, 0x07, 0xf9, 0xf8, 0x1c, 0xbf, 0xab, + 0x52, 0x4d, 0x5b, 0x63, 0x4b, 0x37, 0x02, 0x12, 0xc1, 0xc3, 0x87, 0x0f, 0xa1, 0x1b, 0x0f, 0x70, + 0x3b, 0x67, 0x7a, 0x65, 0x65, 0x25, 0x3b, 0x45, 0x51, 0x51, 0x11, 0x28, 0x14, 0x0a, 0x50, 0xa1, + 0x2f, 0x17, 0xfc, 0xfd, 0xb5, 0x1b, 0x3e, 0x47, 0x17, 0x83, 0x83, 0x23, 0xf4, 0x5a, 0xed, 0xac, + 0xf5, 0x6c, 0x10, 0x01, 0xdd, 0xda, 0x4d, 0x78, 0x5b, 0xd4, 0xd7, 0xd7, 0x43, 0x4d, 0x4d, 0x0d, + 0x3b, 0x05, 0x4d, 0x90, 0x9f, 0x9f, 0x0f, 0x32, 0x99, 0x0c, 0xf2, 0xd0, 0x97, 0xe2, 0xe2, 0x62, + 0xb8, 0x9e, 0x9e, 0x3e, 0x16, 0xe8, 0xeb, 0xfb, 0xf5, 0x73, 0x89, 0x42, 0x7c, 0x7d, 0x8f, 0xdd, + 0xc9, 0xc9, 0x19, 0x23, 0x12, 0x8a, 0x2d, 0x9d, 0x8d, 0xce, 0xce, 0x4e, 0x68, 0x6c, 0x6c, 0x04, + 0xba, 0xff, 0xc8, 0x6c, 0xb5, 0x5a, 0xcd, 0x4e, 0x41, 0xc5, 0x0b, 0x0a, 0x0a, 0xa0, 0x14, 0x65, + 0xa3, 0x35, 0x92, 0x8f, 0xbc, 0x8a, 0x8f, 0x8a, 0xea, 0x13, 0x32, 0xcc, 0x2e, 0x9b, 0x44, 0xe1, + 0x22, 0x51, 0xfe, 0xbd, 0xba, 0xba, 0xc7, 0x24, 0x15, 0x4e, 0xf5, 0x04, 0xbf, 0x41, 0x7d, 0x09, + 0xd1, 0xd1, 0xfd, 0xf9, 0x72, 0xf9, 0x5c, 0x2d, 0xfa, 0x51, 0x5e, 0x5e, 0xce, 0x16, 0x27, 0x22, + 0xa5, 0x42, 0xb1, 0x9c, 0x12, 0x17, 0x37, 0x84, 0xef, 0x28, 0x62, 0xa3, 0xa2, 0x7a, 0x35, 0x6a, + 0xf5, 0x72, 0x25, 0x12, 0xc5, 0x44, 0x46, 0x76, 0xe3, 0x91, 0xd9, 0x63, 0x93, 0x88, 0x61, 0x98, + 0xad, 0xbf, 0x86, 0x86, 0x96, 0x66, 0xa0, 0x04, 0x58, 0x20, 0x95, 0xcf, 0xe7, 0x6f, 0x13, 0xbb, + 0xba, 0xbe, 0x8c, 0xf1, 0xfe, 0x01, 0x3f, 0x17, 0x06, 0x22, 0x92, 0xcb, 0xe5, 0xa0, 0x90, 0xc9, + 0x56, 0x30, 0xba, 0x59, 0x22, 0x1e, 0x6f, 0xb7, 0x35, 0xea, 0xb8, 0x5f, 0x86, 0x8d, 0xf5, 0xac, + 0x4d, 0x9b, 0x4d, 0x8f, 0xe8, 0xda, 0xa0, 0xeb, 0x63, 0xfd, 0x3a, 0x5e, 0x98, 0xc9, 0x85, 0xe8, + 0x09, 0xf9, 0x92, 0x73, 0xe3, 0x86, 0xd9, 0x9f, 0xc7, 0x3b, 0xbc, 0x7e, 0x0f, 0x35, 0xf6, 0x42, + 0x9f, 0x72, 0x7c, 0x36, 0x23, 0xb6, 0x21, 0x5e, 0x45, 0xec, 0x42, 0x38, 0xfc, 0x72, 0xfa, 0xb4, + 0xfb, 0xed, 0x9c, 0x9c, 0xe5, 0x32, 0x0c, 0x41, 0x6a, 0x5c, 0xdc, 0xb0, 0x83, 0x83, 0xc3, 0xdb, + 0xb8, 0xbe, 0x1b, 0xb1, 0x03, 0x61, 0x8f, 0xd8, 0x82, 0x78, 0xc9, 0x26, 0x11, 0xf7, 0xd8, 0x73, + 0x2f, 0x3a, 0x22, 0xf6, 0x23, 0x0e, 0x20, 0x0e, 0x23, 0x3e, 0x41, 0x7c, 0xe9, 0xec, 0xe4, 0x74, + 0xc2, 0x8b, 0x61, 0x14, 0xde, 0x0c, 0xa3, 0x3c, 0x73, 0xea, 0x54, 0x22, 0xae, 0x7d, 0x85, 0xf8, + 0x14, 0xf1, 0x11, 0xe2, 0x20, 0xc2, 0x09, 0xf1, 0x0e, 0x35, 0xc5, 0x35, 0xb8, 0xf9, 0x59, 0x44, + 0xdb, 0x11, 0xaf, 0x71, 0x1b, 0xdf, 0x43, 0x1c, 0xe2, 0x8a, 0xb8, 0x20, 0xbe, 0x43, 0x9c, 0x40, + 0xfc, 0x84, 0xf8, 0x19, 0x71, 0x16, 0x71, 0x1a, 0x71, 0x12, 0x71, 0x1c, 0x71, 0x94, 0x1a, 0xe1, + 0x08, 0xa9, 0xb9, 0x7d, 0x88, 0x3d, 0x88, 0x9d, 0x08, 0xbb, 0xf5, 0x44, 0x76, 0x5c, 0x17, 0xd4, + 0xcd, 0x5e, 0xae, 0xbb, 0xf7, 0x11, 0x1f, 0x73, 0x45, 0x5c, 0xb8, 0x82, 0xdf, 0x72, 0x38, 0x86, + 0xf8, 0x06, 0x71, 0x84, 0x6b, 0x88, 0x26, 0x77, 0xe6, 0x48, 0xde, 0xe4, 0xe4, 0xde, 0x6a, 0xd3, + 0xa3, 0x35, 0xfe, 0xec, 0xe4, 0xa6, 0x74, 0xe4, 0xc8, 0xf7, 0x71, 0x92, 0xee, 0xe7, 0x7e, 0xbf, + 0x8b, 0x20, 0x9f, 0xde, 0xe0, 0x0a, 0x6f, 0xe7, 0x7c, 0x7a, 0xaa, 0xe6, 0x3f, 0xed, 0x36, 0xc6, + 0xbf, 0x74, 0x35, 0x85, 0x76, 0x00, 0x00, 0x00, 0x00, 0x49, 0x45, 0x4e, 0x44, 0xae, 0x42, 0x60, + 0x82, }; const BITMAP_OPAQUE config_xpm[1] = {{ png, sizeof( png ), "config_xpm" }}; diff --git a/bitmaps_png/cpp_26/find.cpp b/bitmaps_png/cpp_26/find.cpp index 53bdfab5df..623013654f 100644 --- a/bitmaps_png/cpp_26/find.cpp +++ b/bitmaps_png/cpp_26/find.cpp @@ -8,86 +8,89 @@ static const unsigned char png[] = { 0x89, 0x50, 0x4e, 0x47, 0x0d, 0x0a, 0x1a, 0x0a, 0x00, 0x00, 0x00, 0x0d, 0x49, 0x48, 0x44, 0x52, 0x00, 0x00, 0x00, 0x1a, 0x00, 0x00, 0x00, 0x1a, 0x08, 0x06, 0x00, 0x00, 0x00, 0xa9, 0x4a, 0x4c, - 0xce, 0x00, 0x00, 0x00, 0x15, 0x74, 0x45, 0x58, 0x74, 0x41, 0x75, 0x74, 0x68, 0x6f, 0x72, 0x00, - 0x53, 0x74, 0x65, 0x76, 0x65, 0x6e, 0x20, 0x47, 0x61, 0x72, 0x72, 0x69, 0x74, 0x79, 0xc7, 0x05, - 0x3b, 0x51, 0x00, 0x00, 0x04, 0xbb, 0x49, 0x44, 0x41, 0x54, 0x48, 0xc7, 0xbd, 0x96, 0x4b, 0x6c, - 0x1b, 0x55, 0x14, 0x86, 0xbf, 0x7b, 0x67, 0xfc, 0x4a, 0x1c, 0xdb, 0x72, 0xd3, 0x34, 0x4a, 0xe3, - 0x28, 0xa5, 0xb1, 0xe2, 0x3a, 0x21, 0x88, 0x22, 0x0a, 0x34, 0x52, 0xda, 0xaa, 0xa2, 0x5d, 0x20, - 0xd2, 0xec, 0x40, 0xa2, 0x11, 0x0b, 0x58, 0x50, 0x56, 0xac, 0x91, 0x8a, 0x58, 0x21, 0x58, 0x74, - 0xd3, 0x15, 0xad, 0x94, 0x45, 0x57, 0x45, 0x42, 0x42, 0x65, 0x55, 0xb1, 0xa0, 0x40, 0xc5, 0x06, - 0xa5, 0x4f, 0x35, 0xcd, 0x4b, 0x4e, 0x1f, 0x4e, 0x5b, 0x8b, 0x46, 0x69, 0x1c, 0xb7, 0x71, 0x33, - 0x9e, 0xc7, 0x61, 0x41, 0xc6, 0xb2, 0x63, 0x07, 0xe8, 0x86, 0x2b, 0xfd, 0x9a, 0x3b, 0x9a, 0x3b, - 0xf7, 0x3f, 0xff, 0x39, 0x67, 0xfe, 0x3b, 0x4a, 0x44, 0xf8, 0x3f, 0x86, 0x09, 0x70, 0xf6, 0xec, - 0xd9, 0xf3, 0x4a, 0xa9, 0xf7, 0x4d, 0xd3, 0xc4, 0x30, 0x0c, 0x44, 0x04, 0xc7, 0x71, 0x70, 0x5d, - 0x17, 0xc7, 0x71, 0xaa, 0x78, 0xd1, 0x7b, 0xad, 0xf5, 0xb7, 0x13, 0x13, 0x13, 0x27, 0x00, 0x38, - 0x7d, 0xfa, 0x74, 0xec, 0xcc, 0x99, 0x33, 0x15, 0xdb, 0xb6, 0xc5, 0x75, 0xdd, 0xa6, 0x70, 0x1c, - 0xa7, 0x0a, 0xdb, 0xb6, 0xeb, 0x50, 0xa9, 0x54, 0xaa, 0xb0, 0x2c, 0xab, 0x8a, 0x52, 0xa9, 0x24, - 0xe3, 0xe3, 0xe3, 0x9e, 0x88, 0x20, 0x22, 0x98, 0xae, 0xeb, 0x6a, 0xad, 0xb5, 0xa7, 0x94, 0x22, - 0x9f, 0xcf, 0xa3, 0x94, 0x02, 0x40, 0x29, 0x55, 0x37, 0x6f, 0x76, 0xdd, 0x6a, 0x68, 0xad, 0x49, - 0x24, 0x12, 0x88, 0x88, 0xaa, 0x4b, 0x9d, 0xe7, 0x79, 0x4d, 0x37, 0x6f, 0x36, 0xff, 0x2f, 0x44, - 0xcd, 0x9e, 0x9b, 0x00, 0xae, 0xeb, 0x02, 0x50, 0x2a, 0x95, 0x58, 0x59, 0x59, 0xa1, 0xa7, 0xa7, - 0x07, 0xad, 0x35, 0x0b, 0x0b, 0x0b, 0x6c, 0x6e, 0x96, 0x7f, 0x22, 0x11, 0x11, 0xfa, 0xfb, 0xfb, - 0xab, 0x6b, 0x6a, 0xdf, 0x6d, 0x50, 0xd4, 0xd7, 0xd7, 0x47, 0x28, 0x14, 0xa2, 0x5c, 0x2e, 0x93, - 0x4e, 0xa7, 0x5f, 0x28, 0x7d, 0x22, 0x82, 0xd6, 0x1a, 0xad, 0x75, 0x23, 0xd1, 0xea, 0xea, 0x2a, - 0x89, 0x44, 0x02, 0x80, 0x44, 0x22, 0x81, 0x52, 0x0a, 0xcb, 0xb2, 0x50, 0x4a, 0x91, 0xcb, 0xe5, - 0xea, 0x16, 0x6f, 0xde, 0x5c, 0x44, 0x18, 0x18, 0x18, 0xd8, 0x32, 0x75, 0x0d, 0x8a, 0x5c, 0xd7, - 0x45, 0x44, 0x50, 0x4a, 0x55, 0x1f, 0x2a, 0xa5, 0x48, 0xa7, 0xd3, 0xd5, 0xe8, 0x9a, 0x35, 0x87, - 0xaf, 0x60, 0x33, 0xb9, 0xbf, 0xb6, 0x81, 0xc8, 0x71, 0x9c, 0xa6, 0x11, 0xfd, 0x9b, 0xa2, 0x66, - 0x0a, 0xb3, 0xd9, 0x6c, 0xf5, 0xde, 0x2f, 0x49, 0x43, 0x33, 0xf8, 0x91, 0xf8, 0x1b, 0xf8, 0x85, - 0xad, 0x55, 0x92, 0xcb, 0xe5, 0xb0, 0x6d, 0x9b, 0xb6, 0xb6, 0x36, 0x4c, 0xd3, 0xa4, 0x58, 0x2c, - 0xb2, 0xbe, 0xbe, 0x4e, 0x36, 0x9b, 0x25, 0x14, 0x0a, 0xd5, 0x29, 0x6c, 0x20, 0xb2, 0x6d, 0xbb, - 0x4e, 0xb2, 0xbf, 0xf1, 0xfc, 0xfc, 0x7c, 0x55, 0x91, 0x65, 0x59, 0x88, 0x08, 0x83, 0x43, 0xaf, - 0xf0, 0xd3, 0xd5, 0x87, 0x4c, 0xdd, 0x5c, 0xc2, 0x71, 0x3c, 0xd2, 0xdd, 0x09, 0xde, 0x79, 0xa3, - 0x8f, 0xc5, 0xc5, 0xfb, 0x14, 0x0a, 0x05, 0x46, 0x46, 0x46, 0x30, 0x0c, 0xa3, 0x91, 0xa8, 0x58, - 0x2c, 0x12, 0x8b, 0xc5, 0xea, 0xd2, 0xb1, 0x59, 0x91, 0xe7, 0x79, 0xcc, 0xcc, 0xcc, 0xd0, 0xb2, - 0xbd, 0x97, 0x93, 0xe7, 0xae, 0x71, 0x6c, 0x64, 0x0f, 0x1f, 0x0e, 0xec, 0xc2, 0xb2, 0x3d, 0xee, - 0x14, 0x56, 0xf9, 0xea, 0xbb, 0x9b, 0x1c, 0x7d, 0xb5, 0x93, 0x3d, 0xe9, 0x34, 0x4b, 0x4b, 0x4b, - 0x74, 0x76, 0x76, 0x36, 0x57, 0xe4, 0x38, 0x4e, 0xc3, 0x47, 0x09, 0x30, 0x37, 0x37, 0x87, 0x88, - 0xf0, 0xf8, 0xf1, 0x63, 0x5e, 0x7f, 0x73, 0x98, 0x2f, 0xce, 0x5d, 0xe5, 0xb3, 0xf7, 0xf6, 0xd1, - 0xb5, 0x2d, 0x8a, 0xe3, 0x7a, 0x94, 0x2d, 0x9b, 0x4c, 0x77, 0x8c, 0x64, 0x6c, 0x88, 0xef, 0x7f, - 0xbe, 0x4d, 0x3a, 0xd5, 0xcf, 0xfd, 0x85, 0x5b, 0x74, 0x74, 0x74, 0x6c, 0x5d, 0xa3, 0x66, 0xa9, - 0xcb, 0x64, 0x32, 0x68, 0xad, 0xb1, 0x2c, 0x8b, 0x1f, 0x7e, 0xbf, 0xcb, 0xdb, 0x6f, 0xf5, 0x13, - 0x8f, 0x46, 0x70, 0x3c, 0x01, 0xa5, 0x09, 0x06, 0x02, 0x78, 0x68, 0x44, 0x2a, 0xbc, 0x36, 0xd8, - 0xc3, 0xc4, 0xc5, 0x69, 0x4e, 0x1c, 0xdd, 0xc5, 0xf2, 0xf2, 0x32, 0x91, 0x48, 0xa4, 0xb9, 0xa2, - 0x66, 0x63, 0x7e, 0x7e, 0x1e, 0xdb, 0xb6, 0x31, 0x4d, 0x93, 0x85, 0x47, 0x25, 0x76, 0xf7, 0xec, - 0xe0, 0xe9, 0xb3, 0x32, 0xeb, 0xa6, 0x42, 0x21, 0xb8, 0xae, 0xc7, 0xda, 0xba, 0xcd, 0x83, 0x47, - 0x4b, 0xd8, 0x15, 0xe1, 0xb9, 0xe5, 0x10, 0x0e, 0x87, 0x29, 0x14, 0x0a, 0x74, 0x77, 0x77, 0xd7, - 0xfb, 0x5f, 0xb1, 0x58, 0xac, 0x76, 0xdd, 0xe6, 0x3a, 0x65, 0x32, 0x19, 0x32, 0x99, 0x0c, 0x86, - 0x61, 0x60, 0x1a, 0x0a, 0xcc, 0x20, 0xda, 0x0c, 0x12, 0x0c, 0x86, 0x88, 0x44, 0x22, 0x44, 0x5a, - 0x5a, 0xc0, 0x0c, 0x93, 0xda, 0xd9, 0x49, 0x57, 0xe7, 0x76, 0x42, 0xc1, 0x00, 0x96, 0x65, 0xe1, - 0x79, 0x5e, 0x43, 0x19, 0xaa, 0x8a, 0x6a, 0x53, 0xe7, 0x8f, 0xd9, 0xd9, 0x59, 0x3c, 0xcf, 0x63, - 0x6d, 0x6d, 0x8d, 0xc1, 0xde, 0x76, 0xae, 0xdc, 0xbe, 0xc7, 0xb3, 0xd5, 0x36, 0xa2, 0x21, 0x8d, - 0x16, 0x07, 0x25, 0x36, 0xcf, 0x6d, 0xc5, 0xba, 0xa3, 0x58, 0x29, 0x7b, 0x84, 0x03, 0x42, 0xb9, - 0x5c, 0x26, 0x99, 0x4c, 0x36, 0x3a, 0xba, 0xdf, 0xde, 0x00, 0x4f, 0x9e, 0x3c, 0x61, 0x7a, 0x7a, - 0x1a, 0xcb, 0xb2, 0xaa, 0x35, 0x1a, 0x1c, 0x1c, 0x44, 0x6b, 0xcd, 0xb1, 0xfd, 0xbb, 0x78, 0xf8, - 0xe7, 0x53, 0x08, 0x44, 0x69, 0x8d, 0x6f, 0x63, 0xfb, 0x8e, 0x9d, 0x74, 0xa5, 0x76, 0xd3, 0xd3, - 0xd3, 0x4b, 0x47, 0x67, 0x17, 0x33, 0xf9, 0xa7, 0x7c, 0x3a, 0x3a, 0xc4, 0xf5, 0xeb, 0xd7, 0x49, - 0xa5, 0x52, 0xcd, 0xdd, 0xdb, 0xaf, 0x91, 0x61, 0x18, 0xa4, 0xd3, 0x69, 0x5a, 0x5b, 0x5b, 0xa9, - 0x54, 0x2a, 0xcc, 0xce, 0xce, 0x22, 0x22, 0x84, 0xc3, 0x61, 0x2e, 0x5f, 0xfe, 0x8d, 0x93, 0xe3, - 0x07, 0xf8, 0xe6, 0xfc, 0x24, 0xd1, 0x48, 0x80, 0x9d, 0xed, 0x61, 0xa2, 0xad, 0x11, 0xd6, 0x2a, - 0x26, 0x53, 0xb9, 0x02, 0x9f, 0xbc, 0x3b, 0x40, 0x40, 0x39, 0x58, 0x96, 0xc5, 0xe4, 0xe4, 0x24, - 0xc3, 0xc3, 0xc3, 0xf5, 0x44, 0xc5, 0x62, 0x91, 0x78, 0x3c, 0x8e, 0x88, 0x10, 0x8f, 0xc7, 0xd1, - 0x5a, 0x57, 0x15, 0xf6, 0xf7, 0xf7, 0x63, 0x18, 0x06, 0x4a, 0x29, 0x8a, 0xc5, 0x22, 0xd7, 0xfe, - 0xb8, 0xcc, 0x97, 0xe3, 0xc3, 0xdc, 0x5b, 0x5a, 0xe7, 0xd6, 0x9d, 0x65, 0xca, 0x65, 0x9b, 0x97, - 0x5f, 0x4a, 0xf0, 0xc1, 0x81, 0x7d, 0x5c, 0xbd, 0x32, 0x89, 0x93, 0x48, 0x10, 0x0a, 0x85, 0xc8, - 0xe7, 0xf3, 0x2c, 0x2e, 0x2e, 0x36, 0xa6, 0xae, 0xb6, 0xeb, 0x6a, 0xbd, 0xad, 0xd6, 0x50, 0x93, - 0xc9, 0x24, 0x87, 0x0f, 0x1f, 0x26, 0x97, 0xcb, 0xf1, 0x60, 0xee, 0x0a, 0xa9, 0xd0, 0x12, 0x43, - 0x1d, 0xcf, 0x59, 0xbe, 0x7b, 0x8d, 0x5f, 0x7f, 0xb9, 0x44, 0xa9, 0x54, 0x22, 0x9f, 0xcf, 0xfb, - 0x27, 0x2b, 0x22, 0x42, 0x7b, 0x7b, 0x3b, 0xa3, 0xa3, 0xa3, 0x2d, 0x00, 0x66, 0x20, 0x10, 0x10, - 0xcb, 0xb2, 0xb4, 0xaf, 0xa8, 0xd6, 0xa7, 0x6a, 0x7d, 0xcb, 0x0f, 0x60, 0xef, 0xde, 0xbd, 0x78, - 0x9e, 0x87, 0xeb, 0xba, 0xd8, 0xb6, 0x5d, 0xb5, 0x1b, 0xa5, 0x14, 0x97, 0x2e, 0xfd, 0x4d, 0xd8, - 0xd6, 0xd6, 0x46, 0xa5, 0x52, 0xe1, 0xe0, 0xc1, 0x83, 0x4c, 0x4d, 0x4d, 0xcd, 0x1f, 0x39, 0x72, - 0x64, 0x9f, 0x02, 0x92, 0x63, 0x63, 0x63, 0x3f, 0x2a, 0xa5, 0xf6, 0xfb, 0x2f, 0xd5, 0xda, 0xbd, - 0x3f, 0xf7, 0x3c, 0xaf, 0xee, 0xea, 0xc3, 0x3f, 0x0e, 0x6a, 0x8f, 0x86, 0x43, 0x87, 0x0e, 0xe9, - 0xde, 0xde, 0x5e, 0x5a, 0x5a, 0x5a, 0x48, 0xa5, 0x52, 0x9c, 0x3a, 0x75, 0xea, 0xa2, 0x09, 0x78, - 0x17, 0x2e, 0x5c, 0xf8, 0x38, 0x16, 0x8b, 0xf5, 0x2a, 0xa5, 0xa2, 0x7e, 0x83, 0x00, 0x0a, 0x10, - 0x40, 0x89, 0x88, 0x29, 0x22, 0x06, 0x60, 0x88, 0x88, 0x21, 0x22, 0xda, 0x9f, 0x6f, 0xa4, 0x5f, - 0x01, 0x9e, 0x52, 0xca, 0x03, 0xec, 0x1b, 0x37, 0x6e, 0xc4, 0x8e, 0x1f, 0x3f, 0xfe, 0xf9, 0xd8, - 0xd8, 0x58, 0x3c, 0x1a, 0x8d, 0x12, 0x0c, 0x06, 0x5d, 0xb5, 0x11, 0x8d, 0x06, 0xc2, 0x1b, 0x08, - 0x6e, 0xf5, 0x73, 0xb3, 0x11, 0x84, 0xb1, 0x01, 0x5d, 0x43, 0xc2, 0x46, 0x50, 0x02, 0xb8, 0xc0, - 0x7a, 0x2a, 0x95, 0xf2, 0xb2, 0xd9, 0xec, 0x47, 0xf1, 0x78, 0x3c, 0xb9, 0xbc, 0xbc, 0xfc, 0xf5, - 0x5f, 0x8c, 0x86, 0xc8, 0x61, 0x09, 0x89, 0x45, 0xfd, 0x00, 0x00, 0x00, 0x00, 0x49, 0x45, 0x4e, - 0x44, 0xae, 0x42, 0x60, 0x82, + 0xce, 0x00, 0x00, 0x05, 0x17, 0x49, 0x44, 0x41, 0x54, 0x48, 0xc7, 0xbd, 0x96, 0xdf, 0x6f, 0x14, + 0x55, 0x14, 0xc7, 0x3f, 0xf7, 0xce, 0xce, 0xee, 0x4e, 0x77, 0xbb, 0x3b, 0x4a, 0x2b, 0x5d, 0x37, + 0x82, 0xd0, 0x2e, 0x5b, 0xf9, 0xb5, 0x12, 0xe8, 0x83, 0x18, 0xa8, 0xc6, 0x44, 0x94, 0x84, 0xa4, + 0x2f, 0x18, 0x63, 0x24, 0x06, 0x49, 0x34, 0xf2, 0xa2, 0x89, 0xf2, 0xe0, 0x9b, 0x89, 0x7f, 0x00, + 0x09, 0xd1, 0xc4, 0x12, 0xab, 0x31, 0x3c, 0x18, 0x5e, 0x04, 0x2d, 0x18, 0x1e, 0x0c, 0x62, 0xd1, + 0x18, 0x52, 0x13, 0x28, 0x3f, 0x0a, 0xa5, 0x34, 0x50, 0x6a, 0x61, 0xe9, 0x8f, 0xfd, 0x31, 0x65, + 0xa7, 0xdd, 0xdd, 0x99, 0xb9, 0x3e, 0x40, 0x27, 0x5d, 0xba, 0x18, 0x88, 0x89, 0x27, 0x39, 0x99, + 0x3b, 0xb9, 0x77, 0xce, 0xf7, 0x7c, 0xcf, 0xaf, 0xb9, 0x42, 0x29, 0xc5, 0xff, 0x21, 0x01, 0x80, + 0x83, 0x07, 0x0f, 0x7e, 0x2f, 0x84, 0x78, 0x33, 0x10, 0x08, 0xa0, 0x69, 0x1a, 0x4a, 0x29, 0x1c, + 0xc7, 0xc1, 0x75, 0x5d, 0x1c, 0xc7, 0xf1, 0xf5, 0x71, 0xdf, 0xa5, 0x94, 0x5f, 0xf5, 0xf4, 0xf4, + 0x7c, 0x00, 0xc0, 0x81, 0x03, 0x07, 0x62, 0xdd, 0xdd, 0xdd, 0x95, 0x6a, 0xb5, 0xaa, 0x5c, 0xd7, + 0xad, 0xab, 0x8e, 0xe3, 0xf8, 0x5a, 0xad, 0x56, 0x6b, 0xb4, 0x52, 0xa9, 0xf8, 0x5a, 0x2e, 0x97, + 0x7d, 0xb5, 0x2c, 0x4b, 0xed, 0xda, 0xb5, 0xcb, 0x53, 0x4a, 0xa1, 0x94, 0x22, 0xe0, 0xba, 0xae, + 0x94, 0x52, 0x7a, 0x42, 0x08, 0x6e, 0xde, 0xbc, 0x89, 0x10, 0x02, 0x00, 0x21, 0x44, 0xcd, 0xba, + 0xde, 0xf3, 0x61, 0x22, 0xa5, 0xc4, 0x34, 0x4d, 0x94, 0x52, 0xa2, 0x26, 0x74, 0x9e, 0xe7, 0xd5, + 0x35, 0x5e, 0x6f, 0xfd, 0x28, 0x40, 0xf5, 0xf6, 0x03, 0x00, 0xae, 0xeb, 0x02, 0x60, 0x59, 0x16, + 0xf9, 0x7c, 0x9e, 0x65, 0xcb, 0x96, 0x21, 0xa5, 0x64, 0x64, 0x64, 0x84, 0x07, 0x8b, 0xe5, 0xdf, + 0x40, 0x94, 0x52, 0xa4, 0xd3, 0x69, 0xff, 0xcc, 0xc2, 0x6f, 0x17, 0x31, 0x6a, 0x6b, 0x6b, 0x23, + 0x14, 0x0a, 0x61, 0xdb, 0x36, 0xa9, 0x54, 0xea, 0xb1, 0xc2, 0xa7, 0x94, 0x42, 0x4a, 0x89, 0x94, + 0x72, 0x31, 0x50, 0xb1, 0x58, 0xc4, 0x34, 0x4d, 0x00, 0x4c, 0xd3, 0x44, 0x08, 0x41, 0xb9, 0x5c, + 0x46, 0x08, 0xc1, 0xb5, 0x6b, 0xd7, 0xfc, 0xc3, 0x96, 0x65, 0x31, 0x33, 0x33, 0x83, 0x61, 0x18, + 0x98, 0xa6, 0xc9, 0xe4, 0xe4, 0x24, 0xd5, 0x6a, 0x95, 0x4c, 0x26, 0x43, 0x4b, 0x4b, 0x4b, 0x5d, + 0xd6, 0x8b, 0x18, 0xb9, 0xae, 0x8b, 0x52, 0x0a, 0x21, 0x84, 0xbf, 0x29, 0x84, 0x20, 0x95, 0x4a, + 0xe1, 0xba, 0x2e, 0x03, 0x03, 0x03, 0x6c, 0xd8, 0xb0, 0x81, 0x58, 0x2c, 0xce, 0xe8, 0x1d, 0x8b, + 0xdb, 0xd3, 0x77, 0xe9, 0xd8, 0xbc, 0x96, 0x66, 0xd3, 0x60, 0x6c, 0x6c, 0x8c, 0x33, 0x67, 0xce, + 0xb0, 0x69, 0xd3, 0x26, 0x74, 0x5d, 0xf7, 0xed, 0x2c, 0xb4, 0xe5, 0x03, 0x39, 0x8e, 0x53, 0xd7, + 0xa3, 0xa1, 0xa1, 0x21, 0x6c, 0xdb, 0x66, 0xeb, 0xd6, 0x4e, 0xbe, 0x3b, 0x71, 0x91, 0x5f, 0xce, + 0xf6, 0x93, 0x68, 0x8a, 0xf2, 0x74, 0x53, 0x94, 0x1f, 0x7e, 0xbf, 0xc1, 0x64, 0x71, 0x96, 0xf7, + 0xb6, 0xb7, 0xb3, 0x65, 0xcb, 0x16, 0x8e, 0x1f, 0x3f, 0x4e, 0x22, 0x91, 0x60, 0xdd, 0xba, 0x75, + 0xbe, 0x9d, 0xf9, 0x94, 0x2c, 0x2a, 0x86, 0x79, 0x4f, 0xe6, 0x81, 0x4a, 0xa5, 0x12, 0x9d, 0x9d, + 0x2f, 0xf1, 0xe1, 0x17, 0xa7, 0x58, 0xb2, 0xc4, 0xe4, 0x93, 0xb7, 0x5f, 0xa4, 0xe5, 0x09, 0x83, + 0x90, 0xae, 0x11, 0xd2, 0x25, 0xd9, 0xfc, 0x2c, 0x5f, 0xf7, 0x0e, 0x70, 0xf1, 0x7a, 0x8e, 0x77, + 0x5f, 0x7f, 0x8d, 0xd3, 0xa7, 0x4f, 0xa3, 0x69, 0x5a, 0x5d, 0x20, 0x09, 0x50, 0xad, 0x56, 0x6b, + 0x28, 0x0b, 0x21, 0x18, 0x1d, 0x1d, 0x25, 0x93, 0xc9, 0xf0, 0xcd, 0xcf, 0xe7, 0x09, 0x87, 0xc3, + 0x6c, 0x59, 0x9b, 0xa0, 0x41, 0xbf, 0x77, 0xd6, 0x75, 0x1d, 0x3c, 0xcf, 0xe3, 0xa9, 0x58, 0x88, + 0xf7, 0x76, 0xac, 0x65, 0xe0, 0x7a, 0x81, 0xc1, 0xd1, 0x3c, 0x89, 0x44, 0x82, 0xf1, 0xf1, 0x71, + 0xbf, 0x18, 0x6a, 0x80, 0x0a, 0x85, 0x82, 0xcf, 0x68, 0x21, 0xab, 0xc1, 0xc1, 0x41, 0x22, 0x91, + 0x28, 0x27, 0xcf, 0xdd, 0xe1, 0xf9, 0xe7, 0x9e, 0xc1, 0x93, 0x3a, 0x9a, 0xae, 0x23, 0xb5, 0x00, + 0x0a, 0x49, 0xd5, 0x05, 0x57, 0x41, 0x3c, 0x6a, 0xb0, 0x6b, 0x7b, 0x86, 0x6f, 0x4f, 0x5c, 0x26, + 0x99, 0x4c, 0x72, 0xeb, 0xd6, 0xad, 0x87, 0x87, 0xce, 0x71, 0x9c, 0x45, 0x4d, 0x39, 0x31, 0x31, + 0xc1, 0xdf, 0x93, 0x16, 0x8d, 0x0d, 0x01, 0x66, 0x66, 0x66, 0x98, 0xb3, 0x4b, 0x98, 0x86, 0x20, + 0x12, 0xd6, 0xd1, 0x03, 0x92, 0x80, 0x14, 0x68, 0x12, 0x04, 0xd0, 0xf2, 0x84, 0xc1, 0xdd, 0x59, + 0x07, 0x4d, 0xd3, 0xc8, 0xe5, 0x72, 0xbe, 0x9d, 0xba, 0x39, 0x7a, 0x30, 0x74, 0x73, 0x73, 0x73, + 0xdc, 0xc9, 0x95, 0x68, 0x8c, 0x1a, 0xc4, 0x62, 0x31, 0x00, 0xb2, 0x45, 0x87, 0x15, 0x86, 0x81, + 0x12, 0x12, 0x39, 0x0f, 0xa6, 0x09, 0xdc, 0xb2, 0x83, 0xd4, 0x24, 0xe5, 0x4a, 0xc5, 0x6f, 0x0d, + 0xa5, 0x54, 0x7d, 0x46, 0x0f, 0x4a, 0xa5, 0x52, 0x61, 0x79, 0x73, 0x03, 0x77, 0xa6, 0x2c, 0x2c, + 0xcb, 0xba, 0xdf, 0x4b, 0x30, 0x9d, 0x2f, 0xb2, 0xac, 0x39, 0x82, 0x19, 0x09, 0x12, 0xd4, 0x40, + 0xe0, 0x31, 0x95, 0x2f, 0x80, 0xe7, 0x12, 0xd4, 0x75, 0xc2, 0xe1, 0x70, 0xfd, 0x11, 0x54, 0x28, + 0x14, 0xfc, 0x86, 0x5d, 0x98, 0xa7, 0x44, 0x22, 0x81, 0xc4, 0x21, 0xa4, 0x6b, 0x04, 0x82, 0x06, + 0x11, 0x23, 0xe8, 0xef, 0x17, 0x2b, 0x12, 0x47, 0x28, 0xe2, 0x0d, 0x41, 0x1a, 0x42, 0x1a, 0xb9, + 0xf2, 0x2c, 0x6b, 0x57, 0x3c, 0x89, 0x6d, 0xdb, 0x34, 0x37, 0x37, 0x2f, 0x4a, 0x83, 0x5f, 0x75, + 0x8e, 0xe3, 0xd4, 0x84, 0x0e, 0xa0, 0xa3, 0xa3, 0x83, 0xbe, 0xbe, 0x3e, 0xf6, 0xbd, 0x91, 0xa1, + 0xaf, 0x7f, 0x98, 0x7c, 0xa1, 0x88, 0x65, 0xdd, 0x63, 0x97, 0xcb, 0x15, 0x98, 0x98, 0x98, 0xe2, + 0xe6, 0xdf, 0xe3, 0x9c, 0xbf, 0x3c, 0xc2, 0x4f, 0xbf, 0x0d, 0xf1, 0xfe, 0x8e, 0x0c, 0xfd, 0xfd, + 0xfd, 0xac, 0x5e, 0xbd, 0xba, 0x2e, 0x23, 0xbf, 0xbc, 0x01, 0x72, 0xb9, 0x1c, 0x83, 0x83, 0x83, + 0x94, 0xcb, 0x65, 0x5a, 0x5b, 0x5b, 0xb1, 0x6d, 0x9b, 0x78, 0xc8, 0xe5, 0x9d, 0x57, 0x57, 0xf1, + 0xe7, 0xc0, 0x18, 0xd6, 0xac, 0x22, 0x12, 0x6d, 0xa4, 0x31, 0x16, 0x27, 0x1c, 0x89, 0x33, 0x5e, + 0x14, 0x9c, 0xba, 0x30, 0xcd, 0x67, 0xbb, 0x5f, 0xa0, 0x3c, 0x57, 0x42, 0x08, 0xc1, 0xf0, 0xf0, + 0xf0, 0xc3, 0x81, 0xe6, 0x73, 0xa4, 0x69, 0x1a, 0xa9, 0x54, 0x8a, 0x68, 0x34, 0x0a, 0xc0, 0xfa, + 0xf5, 0xeb, 0xd9, 0xbf, 0x7f, 0x3f, 0xc9, 0xc8, 0x2c, 0x5f, 0x7e, 0xf4, 0x32, 0x21, 0x65, 0xd3, + 0x77, 0x66, 0x90, 0xde, 0x5f, 0xcf, 0x73, 0xfa, 0xaf, 0xab, 0x2c, 0x8d, 0x0a, 0x0e, 0x7e, 0xfc, + 0x0a, 0x21, 0x55, 0xe2, 0xea, 0xd5, 0xab, 0xd8, 0xb6, 0x4d, 0x3e, 0x9f, 0xe7, 0xe4, 0xc9, 0x93, + 0x35, 0x85, 0x00, 0x20, 0xba, 0xba, 0xba, 0xcc, 0x78, 0x3c, 0x9e, 0xed, 0xee, 0xee, 0x0e, 0x15, + 0x8b, 0xc5, 0x9a, 0xc9, 0x3b, 0xef, 0xd9, 0xd1, 0xa3, 0x47, 0xc9, 0xe5, 0x72, 0x6c, 0xdb, 0xb6, + 0x8d, 0x64, 0x32, 0x89, 0x61, 0x18, 0x94, 0x4a, 0x25, 0x26, 0x26, 0x26, 0x38, 0x77, 0xee, 0x1c, + 0xae, 0xeb, 0x12, 0x8d, 0x46, 0xb9, 0x70, 0xe1, 0x02, 0xa6, 0x69, 0xd2, 0xda, 0xda, 0x4a, 0xa9, + 0x54, 0xe2, 0xf0, 0xe1, 0xc3, 0x1c, 0x39, 0x72, 0x44, 0xf8, 0x40, 0x91, 0x48, 0x24, 0xdb, 0xd3, + 0xd3, 0x13, 0x2a, 0x16, 0x8b, 0x35, 0x03, 0x51, 0xd3, 0x34, 0x84, 0x10, 0x48, 0x29, 0xc9, 0x66, + 0xb3, 0x5c, 0xba, 0x74, 0x89, 0x91, 0x91, 0x11, 0xa6, 0xa6, 0xa6, 0x48, 0x26, 0x93, 0xb4, 0xb7, + 0xb7, 0xd3, 0xd1, 0xd1, 0xc1, 0xed, 0xdb, 0xb7, 0x39, 0x7b, 0xf6, 0x2c, 0xba, 0xae, 0x33, 0x34, + 0x34, 0x44, 0x28, 0x14, 0x22, 0x9d, 0x4e, 0x73, 0xe3, 0xc6, 0x0d, 0x2a, 0x95, 0x4a, 0xdb, 0xbe, + 0x7d, 0xfb, 0x46, 0xc4, 0xce, 0x9d, 0x3b, 0xe3, 0x4a, 0xa9, 0xc9, 0x43, 0x87, 0x0e, 0xe9, 0x0b, + 0x63, 0xeb, 0x79, 0x9e, 0xcf, 0xee, 0xc1, 0x91, 0x5f, 0x4f, 0xb2, 0xd9, 0x2c, 0x7d, 0x7d, 0x7d, + 0x34, 0x36, 0x36, 0x72, 0xe5, 0xca, 0x15, 0x3c, 0xcf, 0x23, 0x9d, 0x4e, 0x63, 0x59, 0xd6, 0xec, + 0xf4, 0xf4, 0xf4, 0x66, 0x01, 0x3c, 0xd9, 0xd5, 0xd5, 0xf5, 0xa3, 0x10, 0x62, 0xf3, 0xc2, 0x81, + 0xb8, 0x30, 0x74, 0x8f, 0xfa, 0xdb, 0x0e, 0x06, 0x83, 0x6c, 0xdc, 0xb8, 0x51, 0xae, 0x5c, 0xb9, + 0x92, 0xe1, 0xe1, 0x61, 0x9a, 0x9a, 0x9a, 0xe8, 0xec, 0xec, 0xe4, 0xd8, 0xb1, 0x63, 0x7f, 0x08, + 0xc0, 0x04, 0x96, 0xc6, 0x62, 0xb1, 0x67, 0x85, 0x10, 0xd1, 0xf9, 0x26, 0xe6, 0xde, 0x74, 0x79, + 0xec, 0x4b, 0x5f, 0x53, 0x53, 0x93, 0xb1, 0x67, 0xcf, 0x9e, 0x4f, 0xd7, 0xac, 0x59, 0xb3, 0xaa, + 0xbd, 0xbd, 0x9d, 0x58, 0x2c, 0x46, 0x6f, 0x6f, 0xef, 0x80, 0xb8, 0xef, 0xb9, 0x04, 0xc2, 0xf7, + 0x35, 0xf8, 0x1f, 0xef, 0x8a, 0x6a, 0xf9, 0xf2, 0xe5, 0x6a, 0xef, 0xde, 0xbd, 0x9f, 0xb7, 0xb5, + 0xb5, 0xed, 0xae, 0x54, 0x2a, 0x77, 0xc7, 0xc6, 0xc6, 0xde, 0xfa, 0x07, 0x60, 0xff, 0xc9, 0x15, + 0x2a, 0xd2, 0x37, 0x0f, 0x00, 0x00, 0x00, 0x00, 0x49, 0x45, 0x4e, 0x44, 0xae, 0x42, 0x60, 0x82, }; const BITMAP_OPAQUE find_xpm[1] = {{ png, sizeof( png ), "find_xpm" }}; diff --git a/bitmaps_png/cpp_26/find_replace.cpp b/bitmaps_png/cpp_26/find_replace.cpp index 4425763d1a..1c769e8158 100644 --- a/bitmaps_png/cpp_26/find_replace.cpp +++ b/bitmaps_png/cpp_26/find_replace.cpp @@ -8,104 +8,110 @@ static const unsigned char png[] = { 0x89, 0x50, 0x4e, 0x47, 0x0d, 0x0a, 0x1a, 0x0a, 0x00, 0x00, 0x00, 0x0d, 0x49, 0x48, 0x44, 0x52, 0x00, 0x00, 0x00, 0x1a, 0x00, 0x00, 0x00, 0x1a, 0x08, 0x06, 0x00, 0x00, 0x00, 0xa9, 0x4a, 0x4c, - 0xce, 0x00, 0x00, 0x00, 0x15, 0x74, 0x45, 0x58, 0x74, 0x41, 0x75, 0x74, 0x68, 0x6f, 0x72, 0x00, - 0x53, 0x74, 0x65, 0x76, 0x65, 0x6e, 0x20, 0x47, 0x61, 0x72, 0x72, 0x69, 0x74, 0x79, 0xc7, 0x05, - 0x3b, 0x51, 0x00, 0x00, 0x05, 0xdc, 0x49, 0x44, 0x41, 0x54, 0x48, 0xc7, 0xbd, 0x96, 0x6d, 0x6c, - 0x5b, 0x57, 0x1d, 0xc6, 0x7f, 0xe7, 0xbe, 0xc4, 0x76, 0xec, 0xc6, 0x89, 0xed, 0x38, 0xc9, 0x9c, - 0xa6, 0x2f, 0x32, 0x49, 0xdd, 0x84, 0x08, 0x81, 0x02, 0xac, 0x59, 0x06, 0x8c, 0x8a, 0x8e, 0xb5, - 0x19, 0xe1, 0x65, 0xda, 0x5a, 0x21, 0xd6, 0x49, 0x0c, 0xd8, 0xa7, 0x82, 0x34, 0xc4, 0xcb, 0x84, - 0x78, 0x6b, 0x05, 0xa2, 0xfb, 0x32, 0x09, 0x2a, 0xd1, 0xc2, 0x8a, 0x46, 0x2b, 0x90, 0x18, 0xea, - 0x5a, 0x4d, 0x94, 0xa9, 0xa3, 0x6c, 0x2a, 0xd3, 0x56, 0xe8, 0x42, 0x69, 0x68, 0x9c, 0x5a, 0x49, - 0xfc, 0x92, 0x25, 0x5d, 0x13, 0x27, 0x76, 0x13, 0x3b, 0xf6, 0xbd, 0xbe, 0xd7, 0x87, 0x0f, 0x5d, - 0xae, 0xe2, 0x34, 0x2d, 0x1f, 0x90, 0xb8, 0xd2, 0xa3, 0xfb, 0x3f, 0xf7, 0x1e, 0x9d, 0xe7, 0x3c, - 0xcf, 0xf9, 0x9f, 0x73, 0xfe, 0x42, 0x4a, 0xc9, 0xff, 0xe3, 0xd1, 0x00, 0x8e, 0x1e, 0x3d, 0xfa, - 0xbc, 0xa2, 0x28, 0x4f, 0xd4, 0xd5, 0xd5, 0xa1, 0xaa, 0x2a, 0x52, 0x4a, 0x2c, 0xcb, 0xc2, 0xb6, - 0x6d, 0x2c, 0xcb, 0x72, 0xe2, 0xb5, 0xed, 0x95, 0x78, 0x75, 0x7b, 0xe5, 0x6d, 0x9a, 0x26, 0x42, - 0x88, 0x53, 0xc7, 0x8e, 0x1d, 0xfb, 0x1c, 0x00, 0x52, 0x4a, 0x8e, 0x1c, 0x39, 0x22, 0x4d, 0xd3, - 0x94, 0xb6, 0x6d, 0xaf, 0x0b, 0xcb, 0xb2, 0x1c, 0x54, 0x2a, 0x95, 0x1a, 0x98, 0xa6, 0xe9, 0xc0, - 0x30, 0x0c, 0x07, 0xc5, 0x62, 0x51, 0xee, 0xdf, 0xbf, 0xdf, 0xdc, 0xbb, 0x77, 0x6f, 0x8b, 0x94, - 0xf2, 0x96, 0x22, 0x29, 0x25, 0xaa, 0xaa, 0x92, 0xc9, 0x64, 0x10, 0x42, 0x00, 0x20, 0x84, 0x40, - 0x4a, 0x49, 0x36, 0x9b, 0x25, 0x9f, 0xcf, 0x63, 0xdb, 0x36, 0x3e, 0x9f, 0x8f, 0x50, 0x28, 0x84, - 0xcf, 0xe7, 0xbb, 0xab, 0x4d, 0x42, 0x08, 0x02, 0x81, 0x00, 0x8a, 0xa2, 0x54, 0x2d, 0xcb, 0x12, - 0x00, 0x0a, 0x40, 0xb5, 0x5a, 0x75, 0x3a, 0xac, 0x20, 0x9f, 0xcf, 0x93, 0x48, 0x24, 0x88, 0x44, - 0x22, 0xb4, 0x6d, 0xea, 0xc2, 0x15, 0xdc, 0x4a, 0x6b, 0x64, 0x13, 0xba, 0xae, 0x93, 0x48, 0x24, - 0x90, 0x52, 0xd6, 0xf4, 0x5f, 0x8b, 0x15, 0x01, 0x35, 0x6b, 0x64, 0xdb, 0x36, 0x00, 0xc5, 0x62, - 0x91, 0xd9, 0xd9, 0x59, 0xea, 0xeb, 0xeb, 0xf1, 0x78, 0x3c, 0x68, 0x4d, 0x5b, 0x78, 0xe6, 0x37, - 0x6f, 0xf3, 0xbe, 0x8d, 0x41, 0xbc, 0x1e, 0x9d, 0x53, 0x6f, 0x24, 0xb1, 0xed, 0x2a, 0xdf, 0xf8, - 0x7c, 0x2f, 0x97, 0x2f, 0x0f, 0x53, 0x5f, 0x5f, 0x7f, 0x9b, 0x9a, 0xed, 0xdb, 0xb7, 0x3b, 0xf1, - 0x6d, 0x44, 0x96, 0x65, 0x01, 0xa0, 0xaa, 0x2a, 0x1d, 0x1d, 0x1d, 0x8c, 0x8f, 0x8f, 0x63, 0xd6, - 0x85, 0x38, 0x77, 0xf9, 0x3a, 0xcf, 0x3c, 0x3e, 0x80, 0xcf, 0xa3, 0x53, 0x32, 0x6d, 0x8a, 0x65, - 0x8b, 0xd1, 0x4c, 0x8e, 0x1f, 0x9f, 0x1c, 0xe6, 0xd0, 0x13, 0x7d, 0x4c, 0x8e, 0x27, 0xe8, 0xec, - 0xec, 0x5c, 0xd7, 0xba, 0xbb, 0x2a, 0xf2, 0x7a, 0xbd, 0x24, 0x93, 0x49, 0x62, 0xb1, 0x18, 0x3f, - 0x38, 0x39, 0xc2, 0xd7, 0x1f, 0xfb, 0x08, 0xaa, 0x02, 0xcb, 0x65, 0x13, 0xa3, 0x62, 0x63, 0x18, - 0x15, 0x5c, 0x6a, 0x95, 0x8e, 0xb6, 0x46, 0x8e, 0xbf, 0x72, 0x8d, 0x8f, 0xb6, 0x9b, 0x8c, 0x8e, - 0x8e, 0x3a, 0x83, 0xa9, 0xaa, 0xca, 0xb6, 0x6d, 0xdb, 0x1c, 0xa2, 0xdb, 0xd2, 0xdb, 0xb2, 0x2c, - 0xc7, 0xf3, 0x5c, 0x2e, 0x47, 0x73, 0x5b, 0x07, 0xad, 0x41, 0x1f, 0x5e, 0x97, 0x86, 0x55, 0x95, - 0xd8, 0x55, 0xb0, 0xa4, 0x02, 0x8a, 0x46, 0xb1, 0xa2, 0x10, 0x69, 0x0d, 0x31, 0x3c, 0x32, 0xc1, - 0x7d, 0x9b, 0xbd, 0x6c, 0xd9, 0xb2, 0x05, 0xaf, 0xd7, 0xbb, 0xae, 0x5d, 0x77, 0xb4, 0x6e, 0x45, - 0xdd, 0xc2, 0x62, 0x89, 0x06, 0xaf, 0x4e, 0xb5, 0x5a, 0x65, 0x71, 0xa9, 0x88, 0x25, 0x05, 0x86, - 0x25, 0x99, 0x9e, 0x5b, 0xe2, 0x9d, 0x6c, 0x01, 0x00, 0xc3, 0xac, 0x50, 0x2e, 0x97, 0xb9, 0x78, - 0xf1, 0x22, 0xe1, 0x70, 0xd8, 0xb1, 0xac, 0xa7, 0xa7, 0xc7, 0x21, 0x58, 0x49, 0xb2, 0xdb, 0x88, - 0x84, 0x10, 0xb8, 0xdd, 0x6e, 0x3a, 0xc2, 0x3e, 0xae, 0x5f, 0x48, 0xb3, 0x58, 0x28, 0x61, 0x0b, - 0x8d, 0x82, 0x61, 0x73, 0xe3, 0xa6, 0x49, 0xa1, 0xa2, 0xe2, 0xf7, 0xfb, 0xb1, 0xab, 0x55, 0xbc, - 0xee, 0x3a, 0xa6, 0xa7, 0xa7, 0x19, 0x1c, 0x1c, 0x44, 0xd3, 0xb4, 0x75, 0xd3, 0x7c, 0x65, 0x49, - 0xd6, 0xb5, 0x2e, 0x12, 0x89, 0xb0, 0xb0, 0xb0, 0x40, 0xb8, 0xd1, 0xc3, 0x68, 0x26, 0x87, 0x59, - 0x5a, 0xa4, 0x6c, 0x2b, 0x94, 0x2d, 0x85, 0xea, 0x7b, 0x4e, 0xc4, 0x93, 0x73, 0x3c, 0xbe, 0x33, - 0xca, 0xeb, 0x7f, 0xba, 0x44, 0x3c, 0x1e, 0xaf, 0x59, 0xa3, 0xee, 0xee, 0x6e, 0x84, 0x10, 0x98, - 0x46, 0x09, 0x61, 0xbc, 0xab, 0x6c, 0x30, 0xc6, 0x1e, 0x02, 0x9e, 0xd7, 0xd6, 0x32, 0x1b, 0x86, - 0x41, 0x26, 0x93, 0xe1, 0xa9, 0xcf, 0xec, 0xe4, 0xe0, 0x6f, 0xff, 0x4e, 0x28, 0xe8, 0x67, 0x63, - 0x6b, 0x13, 0x7a, 0x45, 0x62, 0x98, 0x36, 0x23, 0x89, 0x29, 0x3e, 0xdc, 0x19, 0xc2, 0xcc, 0x65, - 0xd8, 0xbd, 0x7b, 0x37, 0xd1, 0x68, 0xb4, 0x46, 0x85, 0x94, 0x92, 0xb9, 0x99, 0x49, 0xde, 0x7c, - 0xf1, 0x27, 0x3c, 0xf7, 0xc0, 0xfd, 0xfa, 0xcd, 0xcb, 0xca, 0x2f, 0xbf, 0x39, 0xd4, 0x74, 0x9f, - 0xb2, 0xda, 0xba, 0x78, 0x3c, 0xce, 0xcc, 0xcc, 0x0c, 0xd9, 0x6c, 0x96, 0x74, 0x2a, 0xc9, 0xd3, - 0x5f, 0xe8, 0xe1, 0x03, 0x9b, 0xfd, 0xfc, 0xfb, 0x5a, 0x86, 0x7f, 0x8e, 0x8c, 0x93, 0xcb, 0xce, - 0x71, 0x60, 0xe8, 0xfd, 0x6c, 0xae, 0xcf, 0x31, 0x3a, 0x3a, 0x4a, 0xb1, 0x58, 0xe4, 0xca, 0x95, - 0x2b, 0x35, 0x1b, 0x75, 0xe4, 0xad, 0x33, 0x4c, 0xbe, 0xf1, 0x12, 0x9f, 0x0e, 0x0e, 0x10, 0x7a, - 0xf1, 0x75, 0xea, 0x5f, 0xbe, 0xaa, 0x35, 0x15, 0xc4, 0xfd, 0x8e, 0xa2, 0xf3, 0xe7, 0xcf, 0x53, - 0x2e, 0x97, 0x19, 0x1b, 0x1b, 0xc3, 0xe5, 0x72, 0x91, 0x4e, 0xa7, 0xc9, 0x64, 0x32, 0x14, 0x0a, - 0x05, 0x1e, 0x8c, 0xdd, 0x83, 0xcf, 0x17, 0x66, 0x7c, 0x7c, 0x9c, 0x53, 0xbf, 0xbf, 0xc0, 0x9e, - 0x3d, 0x7b, 0xd8, 0xb1, 0x63, 0x47, 0x4d, 0x1a, 0x4b, 0x59, 0xe5, 0xcc, 0xf1, 0xef, 0x12, 0xd2, - 0x0a, 0x44, 0xda, 0x76, 0x72, 0xc9, 0x13, 0xc2, 0x5f, 0x57, 0xc7, 0xb5, 0xe6, 0x65, 0xeb, 0x86, - 0x47, 0xfc, 0x41, 0x1c, 0x3e, 0x7c, 0xd8, 0xab, 0xeb, 0x7a, 0xa1, 0xbd, 0xbd, 0x9d, 0x78, 0x3c, - 0x4e, 0x30, 0x18, 0xa4, 0xa5, 0xa5, 0x85, 0x48, 0x24, 0x42, 0x34, 0x1a, 0xe5, 0xea, 0xd5, 0xab, - 0xe4, 0xf3, 0x79, 0x4a, 0xa5, 0x12, 0xcd, 0xcd, 0xcd, 0xe8, 0xba, 0x5e, 0xb3, 0x29, 0x01, 0xca, - 0xcb, 0x8b, 0x0c, 0x9f, 0x7d, 0x96, 0x8f, 0x7d, 0x68, 0x23, 0x81, 0x86, 0x3a, 0x0a, 0xd3, 0x17, - 0x79, 0xa7, 0xf2, 0x25, 0x52, 0xff, 0x38, 0x4b, 0x3c, 0x37, 0x72, 0xf0, 0xc8, 0xcb, 0xb3, 0xdf, - 0xd3, 0xdc, 0x6e, 0xf7, 0x4f, 0xfb, 0xfb, 0xfb, 0x39, 0x77, 0xee, 0x1c, 0x91, 0x48, 0x04, 0x8f, - 0xc7, 0x43, 0x57, 0x57, 0x17, 0x81, 0x40, 0x00, 0xcb, 0xb2, 0xe8, 0xec, 0xec, 0x44, 0x51, 0x14, - 0x07, 0xaa, 0xaa, 0x3a, 0xb1, 0x10, 0x82, 0x74, 0x62, 0x98, 0xd7, 0xfe, 0xfc, 0x1c, 0x7b, 0x3e, - 0x1e, 0x43, 0x31, 0xe6, 0x58, 0x4c, 0xbd, 0x49, 0x62, 0xba, 0x44, 0x66, 0xe9, 0x34, 0xc3, 0x05, - 0xb7, 0x59, 0x90, 0x7d, 0xbf, 0x00, 0xd0, 0x3c, 0x1e, 0x4f, 0x7b, 0x38, 0x1c, 0x66, 0x60, 0x60, - 0x80, 0x54, 0x2a, 0x45, 0x2c, 0x16, 0x43, 0x55, 0x55, 0xe6, 0xe7, 0xe7, 0x6f, 0x0d, 0x94, 0x4e, - 0x3b, 0x0a, 0x56, 0x13, 0xa8, 0xaa, 0xca, 0xf8, 0xf0, 0x19, 0x3c, 0x46, 0x82, 0x4f, 0xf5, 0xc7, - 0x28, 0xcd, 0x8e, 0x90, 0xcf, 0x26, 0xf9, 0x57, 0x5a, 0x62, 0x6d, 0xf8, 0x20, 0x5f, 0x39, 0xf8, - 0x2b, 0xbe, 0xfc, 0xe4, 0xd7, 0x24, 0x94, 0x6f, 0xa5, 0xf7, 0xe4, 0xe4, 0xe4, 0xd3, 0x27, 0x4e, - 0x9c, 0x18, 0xea, 0xed, 0xed, 0x65, 0xeb, 0xd6, 0xad, 0xa4, 0x52, 0x29, 0x22, 0x91, 0x88, 0x73, - 0x01, 0xb6, 0xb4, 0xb4, 0x20, 0x84, 0x40, 0xd3, 0x34, 0x74, 0x5d, 0x47, 0xd3, 0x34, 0x54, 0x05, - 0x5e, 0xfd, 0xdd, 0x0f, 0x89, 0xb6, 0x4a, 0x36, 0xb5, 0x6d, 0x62, 0x29, 0x73, 0x81, 0xf9, 0xf9, - 0x79, 0x2e, 0xa5, 0xdd, 0x74, 0xdd, 0xfb, 0x18, 0xbb, 0x1e, 0xfd, 0x16, 0x8a, 0xa2, 0xd4, 0x1e, - 0x41, 0x87, 0x0e, 0x1d, 0x9a, 0xd8, 0xb7, 0x6f, 0x1f, 0x07, 0x0e, 0x1c, 0x60, 0x6a, 0x6a, 0x8a, - 0x60, 0x30, 0x88, 0xdb, 0xed, 0xc6, 0x30, 0x0c, 0x84, 0x10, 0x4c, 0x4c, 0x4c, 0xd4, 0x5c, 0x21, - 0xcb, 0x4b, 0xf3, 0x8c, 0xbe, 0xf6, 0x73, 0x76, 0xf5, 0x6f, 0xa3, 0x5e, 0x2d, 0x91, 0x4f, 0xfe, - 0x95, 0xe4, 0xf5, 0x22, 0x63, 0xf3, 0xcd, 0x0c, 0x3d, 0xf9, 0x33, 0xa2, 0x3d, 0xfd, 0xac, 0x57, - 0x1e, 0x38, 0x1b, 0x56, 0x51, 0x14, 0xfc, 0x7e, 0xbf, 0x33, 0x13, 0x97, 0xcb, 0x85, 0xaa, 0xaa, - 0xf4, 0xf5, 0xf5, 0x39, 0x24, 0xb9, 0xec, 0x0c, 0xaf, 0xbc, 0xf0, 0x2c, 0x43, 0x9f, 0xec, 0xc5, - 0x5a, 0x4c, 0xb2, 0x70, 0x23, 0xce, 0x95, 0x8c, 0xcd, 0xb2, 0xbb, 0x9b, 0xa7, 0x7e, 0xf4, 0x6b, - 0x7c, 0xfe, 0x20, 0x77, 0xaa, 0x41, 0x94, 0xb5, 0x67, 0xdd, 0xda, 0x8e, 0xab, 0xdb, 0x67, 0x5f, - 0xf8, 0x0e, 0x0f, 0x3e, 0xf2, 0x28, 0x7a, 0xa8, 0x8d, 0xb9, 0xa9, 0x38, 0x17, 0x12, 0x1a, 0x8d, - 0x5d, 0x8f, 0xf0, 0xd5, 0xef, 0xff, 0x11, 0x6f, 0x43, 0x00, 0x29, 0xa5, 0x83, 0x3b, 0x2a, 0xb2, - 0x6d, 0x9b, 0xc6, 0xc6, 0x46, 0xe7, 0x47, 0xb5, 0x5a, 0xad, 0xf1, 0xf9, 0xad, 0xbf, 0x9c, 0xa4, - 0xbb, 0x33, 0x80, 0x75, 0x73, 0x9a, 0xf9, 0x99, 0x14, 0x6f, 0xdf, 0x68, 0xe5, 0x81, 0x2f, 0x7e, - 0x9b, 0x9e, 0xbe, 0x5d, 0x77, 0xbc, 0x8b, 0xa4, 0x94, 0x8a, 0xa6, 0x69, 0x12, 0x40, 0x00, 0x8d, - 0x83, 0x83, 0x83, 0xc7, 0xa5, 0x94, 0x43, 0x6b, 0x95, 0x38, 0xf5, 0x83, 0xb4, 0xb8, 0x37, 0x5a, - 0x21, 0x99, 0xce, 0xe0, 0x73, 0xc1, 0x4c, 0xa1, 0x81, 0x65, 0x11, 0x46, 0xa2, 0xde, 0xb5, 0x76, - 0x50, 0x55, 0xf5, 0xfc, 0xe9, 0xd3, 0xa7, 0x3f, 0x2b, 0xa5, 0x5c, 0x14, 0x40, 0x03, 0xd0, 0xe2, - 0x76, 0xbb, 0xef, 0x91, 0x52, 0x6e, 0x90, 0x52, 0xae, 0x1c, 0xc5, 0x02, 0x90, 0x00, 0x9f, 0xe8, - 0xd1, 0x1f, 0x6e, 0x6a, 0x50, 0x03, 0x7f, 0x8b, 0x1b, 0x67, 0x66, 0x73, 0x72, 0xe1, 0xbf, 0xd5, - 0x70, 0x42, 0x08, 0x5b, 0x08, 0x91, 0x2f, 0x97, 0xcb, 0xd7, 0x81, 0x77, 0xa5, 0x94, 0x05, 0xb1, - 0x6a, 0xe6, 0x6e, 0xc0, 0xf5, 0x1e, 0xfe, 0xd7, 0xc7, 0x04, 0xca, 0x52, 0xca, 0xf2, 0xca, 0x87, - 0xff, 0x00, 0x1e, 0x79, 0x2a, 0x13, 0xef, 0x45, 0x5a, 0xda, 0x00, 0x00, 0x00, 0x00, 0x49, 0x45, - 0x4e, 0x44, 0xae, 0x42, 0x60, 0x82, + 0xce, 0x00, 0x00, 0x06, 0x5f, 0x49, 0x44, 0x41, 0x54, 0x48, 0xc7, 0xbd, 0x96, 0x6b, 0x4c, 0x53, + 0x67, 0x18, 0xc7, 0xdd, 0x3e, 0x20, 0x71, 0xce, 0x4b, 0x96, 0xe8, 0xcc, 0xe6, 0xb6, 0x18, 0x8d, + 0xcb, 0xb2, 0x65, 0xc9, 0x96, 0x2d, 0x31, 0xd1, 0x2d, 0xee, 0x8b, 0x13, 0x50, 0x2e, 0xd3, 0x30, + 0x18, 0x93, 0x9b, 0xa2, 0x10, 0xc1, 0x6b, 0x30, 0x80, 0x88, 0x08, 0xca, 0x65, 0x04, 0xb9, 0x2a, + 0x50, 0x2c, 0x57, 0x07, 0x8c, 0x4b, 0xb9, 0x54, 0xb4, 0x38, 0x05, 0xe4, 0x1a, 0xa0, 0x48, 0x55, + 0x0a, 0x94, 0x96, 0x52, 0x5a, 0xa1, 0x94, 0x72, 0xbf, 0x08, 0x28, 0xfb, 0xef, 0x3c, 0xef, 0x3c, + 0x95, 0xaa, 0x9f, 0x77, 0x92, 0x7f, 0x7b, 0x4e, 0x7b, 0xce, 0xf3, 0x7b, 0x9f, 0xe7, 0x7d, 0x2e, + 0x67, 0x05, 0x80, 0x15, 0xff, 0x87, 0xd8, 0x47, 0x6a, 0x6a, 0xaa, 0x50, 0x20, 0x10, 0x20, 0x2b, + 0x2b, 0x0b, 0xb9, 0xb9, 0xb9, 0xc8, 0xc9, 0xc9, 0x41, 0x46, 0x46, 0x06, 0xd2, 0xd3, 0xd3, 0x91, + 0x92, 0x92, 0x82, 0xa4, 0xa4, 0x24, 0x24, 0x24, 0x24, 0x20, 0x36, 0x36, 0x16, 0xd1, 0xd1, 0xd1, + 0xb8, 0x72, 0xe5, 0x0a, 0xc2, 0xc2, 0xc2, 0x10, 0x12, 0x12, 0x82, 0xa0, 0xa0, 0x20, 0x9c, 0x3b, + 0x77, 0x0e, 0x67, 0xcf, 0x9e, 0xc5, 0xa9, 0x53, 0xa7, 0xe0, 0xeb, 0xeb, 0x0b, 0x6f, 0x6f, 0x6f, + 0x78, 0x7a, 0x7a, 0xe2, 0xf0, 0xe1, 0xc3, 0x25, 0x66, 0xa0, 0x6b, 0xd7, 0xae, 0x61, 0x71, 0x71, + 0x11, 0x4b, 0x4b, 0x4b, 0x6f, 0xd5, 0x8b, 0x17, 0x2f, 0x4c, 0x7a, 0xfe, 0xfc, 0xb9, 0x99, 0xe8, + 0x39, 0x5e, 0x0b, 0x0b, 0x0b, 0x26, 0xcd, 0xce, 0xce, 0xc2, 0xcd, 0xcd, 0x6d, 0xd1, 0xc9, 0xc9, + 0x69, 0xa3, 0x09, 0x94, 0x9c, 0x9c, 0xcc, 0x0c, 0xaa, 0xd5, 0x6a, 0xf4, 0xf7, 0xf7, 0x33, 0x69, + 0x34, 0x1a, 0x0c, 0x0c, 0x0c, 0x30, 0xd5, 0xd7, 0xd7, 0x43, 0x24, 0x12, 0xa1, 0xb2, 0xb2, 0x12, + 0x0d, 0x0d, 0x0d, 0x90, 0x48, 0x24, 0x28, 0x2f, 0x2f, 0x47, 0x6b, 0x6b, 0x2b, 0x9e, 0x3e, 0x7d, + 0xfa, 0x86, 0x06, 0x07, 0x07, 0xf1, 0xec, 0xd9, 0x33, 0x78, 0x78, 0x78, 0xcc, 0x1f, 0x3c, 0x78, + 0xf0, 0x43, 0x13, 0x28, 0x31, 0x31, 0x91, 0x81, 0x78, 0x00, 0x0f, 0xe9, 0xee, 0xee, 0x46, 0x41, + 0x41, 0x01, 0xb4, 0x5a, 0x2d, 0xc6, 0x27, 0x26, 0xd1, 0xf2, 0x58, 0x8d, 0xfc, 0xaa, 0x0e, 0x34, + 0xc9, 0xfa, 0x60, 0x30, 0x8e, 0x42, 0xa7, 0xd3, 0x31, 0x20, 0x2d, 0x90, 0x8c, 0xf3, 0x1a, 0x1a, + 0x1a, 0xc2, 0xfc, 0xfc, 0x3c, 0xdc, 0xdd, 0xdd, 0xcd, 0x41, 0x71, 0x71, 0x71, 0x0c, 0xd4, 0xd9, + 0xd9, 0x89, 0xea, 0xea, 0x6a, 0xa8, 0x54, 0x2a, 0xc8, 0xe5, 0x72, 0xe6, 0xc5, 0xf4, 0xf4, 0x0c, + 0x52, 0x45, 0x2d, 0x70, 0x38, 0x5f, 0x8a, 0x73, 0x69, 0x75, 0xb8, 0x5a, 0xfc, 0x10, 0x27, 0x93, + 0xaa, 0x61, 0x1f, 0x24, 0xc2, 0x1f, 0xb9, 0x75, 0x98, 0xe0, 0x16, 0x40, 0x9e, 0xd2, 0xc2, 0xf4, + 0x7a, 0xbd, 0x49, 0x04, 0xe2, 0x42, 0x67, 0x0e, 0x8a, 0x89, 0x89, 0x61, 0x20, 0xf2, 0x80, 0xbc, + 0x31, 0x1a, 0x8d, 0x2c, 0x29, 0xa6, 0xa7, 0xa7, 0x71, 0x22, 0x4e, 0x82, 0xd0, 0xac, 0x66, 0xf4, + 0xe8, 0x26, 0x30, 0x34, 0x36, 0x07, 0x8d, 0x61, 0x86, 0x9d, 0xd7, 0x3d, 0xd1, 0x23, 0x20, 0xbd, + 0x11, 0xee, 0x57, 0xc4, 0xec, 0xbe, 0xb2, 0xb2, 0x32, 0x0c, 0x0f, 0x0f, 0x33, 0x19, 0x0c, 0x06, + 0x06, 0x72, 0x75, 0x75, 0x35, 0x07, 0x45, 0x45, 0x45, 0x31, 0x10, 0x85, 0x88, 0x62, 0x4c, 0x7b, + 0x42, 0xde, 0x15, 0xdf, 0x93, 0xe1, 0x78, 0xfc, 0x7d, 0xa8, 0x06, 0x27, 0xa1, 0x1f, 0x9f, 0x63, + 0xe2, 0x41, 0x32, 0xf5, 0x28, 0x6e, 0xb5, 0x6a, 0x71, 0x3c, 0xa1, 0x06, 0xa9, 0x25, 0x2d, 0x50, + 0x2a, 0x95, 0x68, 0x6f, 0x6f, 0x67, 0x90, 0x91, 0x91, 0x91, 0xb7, 0x83, 0x2e, 0x5f, 0xbe, 0xcc, + 0x32, 0x8a, 0x62, 0x4e, 0x2a, 0x2e, 0x2e, 0x66, 0xee, 0x3b, 0x5f, 0x2c, 0x43, 0xed, 0xa3, 0xa7, + 0x50, 0xeb, 0xa7, 0x30, 0x60, 0x98, 0x86, 0x7a, 0x78, 0x1a, 0xbd, 0x1c, 0xb4, 0x73, 0x60, 0x1c, + 0xed, 0x2a, 0x23, 0x0a, 0x1e, 0xf4, 0x21, 0xed, 0x4e, 0x0f, 0x0e, 0x04, 0x97, 0x32, 0x4f, 0xf2, + 0xf3, 0xf3, 0x19, 0x84, 0x22, 0x42, 0xa0, 0x43, 0x87, 0x0e, 0x99, 0x83, 0x42, 0x43, 0x43, 0x4d, + 0x20, 0xf2, 0x88, 0xea, 0x48, 0xab, 0xd5, 0xc1, 0x39, 0xb4, 0x1c, 0x32, 0xd5, 0x08, 0x94, 0x83, + 0x13, 0x9c, 0x26, 0x99, 0x27, 0x4f, 0x34, 0x63, 0x78, 0xd8, 0x37, 0x8a, 0xba, 0x4e, 0x3d, 0xd2, + 0x25, 0x0a, 0x06, 0x72, 0x0e, 0x13, 0x43, 0xd5, 0xaf, 0x43, 0x44, 0x44, 0x04, 0x46, 0x47, 0x47, + 0x99, 0x08, 0xe4, 0xe2, 0xe2, 0x62, 0x0e, 0x0a, 0x0e, 0x0e, 0x66, 0x20, 0x3e, 0x35, 0x09, 0x24, + 0xef, 0x51, 0xb2, 0xf8, 0xcb, 0x54, 0x06, 0x28, 0x74, 0x63, 0xe8, 0xd6, 0x8e, 0xe1, 0x71, 0xff, + 0x28, 0xa4, 0x4a, 0x23, 0x1a, 0xe4, 0xc3, 0xc8, 0xbe, 0xaf, 0x64, 0x10, 0x92, 0x5b, 0x44, 0x25, + 0xda, 0x1e, 0xf7, 0xb2, 0xe2, 0x1d, 0x1b, 0x1b, 0x63, 0x22, 0x10, 0x57, 0x43, 0xe6, 0xa0, 0x80, + 0x80, 0x00, 0x56, 0x7c, 0x7c, 0x6a, 0x12, 0x88, 0xce, 0x5d, 0x2e, 0x95, 0xa1, 0x5d, 0x31, 0x08, + 0xb9, 0xc6, 0xc8, 0x41, 0x8c, 0x68, 0xe9, 0x31, 0xe0, 0xb6, 0x54, 0x07, 0xe1, 0x5d, 0x05, 0x04, + 0x92, 0x57, 0xb2, 0x0f, 0x2a, 0x41, 0x6f, 0xaf, 0x12, 0xe1, 0xe1, 0xe1, 0x18, 0x1f, 0x1f, 0xe7, + 0x32, 0x71, 0x82, 0x81, 0x1c, 0x1d, 0x1d, 0xe7, 0xad, 0xac, 0xac, 0x5e, 0x81, 0xfc, 0xfd, 0xfd, + 0xcd, 0x40, 0x94, 0x41, 0x54, 0x53, 0x41, 0x29, 0x7f, 0x23, 0xa3, 0xf2, 0x11, 0x6a, 0x3a, 0x34, + 0xa8, 0x6c, 0x55, 0xa3, 0xb0, 0x4e, 0x85, 0xac, 0x7b, 0xbd, 0x66, 0x90, 0xc8, 0xbf, 0x3a, 0xe0, + 0x15, 0x25, 0x66, 0x89, 0x90, 0x97, 0x97, 0xc7, 0x20, 0xa4, 0xb9, 0xd9, 0x19, 0xfc, 0x6a, 0xf7, + 0xd3, 0xe2, 0x61, 0xab, 0x8d, 0xbe, 0x2e, 0xbb, 0x57, 0xbf, 0xcb, 0x40, 0xa7, 0x4f, 0x9f, 0x66, + 0x20, 0x82, 0x50, 0x12, 0xf4, 0xf6, 0xf6, 0xa2, 0xb0, 0xb0, 0x10, 0x23, 0xa3, 0x13, 0x70, 0x0c, + 0x29, 0x43, 0xd1, 0x03, 0x05, 0x2a, 0x9a, 0xd5, 0x28, 0xe0, 0x40, 0x99, 0xcb, 0x40, 0x49, 0x15, + 0x5d, 0xb0, 0x0d, 0x2c, 0x81, 0x5a, 0xab, 0x67, 0xde, 0xd0, 0x73, 0x53, 0x53, 0x53, 0xd0, 0x69, + 0x94, 0xb8, 0x71, 0xf1, 0x00, 0x06, 0x53, 0x42, 0xa1, 0xf5, 0xb1, 0x5e, 0x0a, 0xb1, 0x59, 0x7f, + 0x97, 0x81, 0xfc, 0xfc, 0xfc, 0x58, 0xaf, 0x22, 0x08, 0x79, 0x45, 0x59, 0x47, 0xc5, 0x4a, 0xd7, + 0xdd, 0xea, 0x61, 0xfc, 0x1e, 0x56, 0x81, 0xf3, 0xc2, 0x46, 0x5c, 0xbf, 0x25, 0x87, 0xa0, 0x4a, + 0x81, 0xf8, 0xb2, 0x4e, 0xf8, 0x0b, 0x1a, 0xe1, 0xc0, 0x85, 0xac, 0x4d, 0x3e, 0x80, 0xa6, 0xa6, + 0x26, 0xd6, 0x41, 0xa8, 0x9e, 0x3a, 0x9a, 0x25, 0x28, 0x4d, 0x3a, 0x83, 0x21, 0x61, 0x0a, 0xfe, + 0xb1, 0xb6, 0x86, 0x71, 0xd3, 0x26, 0x24, 0xfe, 0xb0, 0x5e, 0xcf, 0x40, 0x3e, 0x3e, 0x3e, 0x0c, + 0x44, 0xc5, 0x4a, 0xfb, 0x43, 0x6d, 0x85, 0x1a, 0x6d, 0x6d, 0x6d, 0x2d, 0xeb, 0x10, 0x33, 0x33, + 0xb3, 0xb8, 0x29, 0x91, 0xe1, 0x64, 0x7c, 0x15, 0x1c, 0x2f, 0x88, 0x70, 0x3c, 0xf6, 0x0e, 0x84, + 0x15, 0x52, 0x4c, 0x4e, 0xcd, 0x40, 0x2c, 0x16, 0xe3, 0xd2, 0xa5, 0x4b, 0xdc, 0x3d, 0x33, 0x28, + 0xcf, 0x09, 0x47, 0x49, 0xac, 0x23, 0xe4, 0x25, 0x42, 0x48, 0x6e, 0xdf, 0x46, 0xa3, 0xb3, 0x33, + 0x6e, 0x6e, 0x5f, 0xbb, 0x74, 0x62, 0xcf, 0x9a, 0x3c, 0x06, 0x3a, 0x72, 0xe4, 0x08, 0x2b, 0x34, + 0x1a, 0x0d, 0xa5, 0xa5, 0xa5, 0x2c, 0x4d, 0x69, 0x04, 0x90, 0x67, 0xd7, 0xaf, 0x5f, 0x47, 0x5a, + 0x5a, 0x1a, 0x5b, 0x35, 0xf5, 0x34, 0x8a, 0x3f, 0x7d, 0x53, 0xab, 0xa2, 0x24, 0xa2, 0xf6, 0x33, + 0x39, 0x31, 0x06, 0x41, 0xb8, 0x13, 0x6a, 0x6f, 0xfc, 0x06, 0xa5, 0xd8, 0x1b, 0x0f, 0x53, 0xbe, + 0xc1, 0xed, 0xc8, 0x60, 0x08, 0xbc, 0x1c, 0xe0, 0x6b, 0xf3, 0x41, 0x3a, 0xdb, 0x23, 0xee, 0x78, + 0x87, 0xe6, 0x07, 0xcd, 0x23, 0x6a, 0x3b, 0x94, 0xa2, 0x81, 0x81, 0x81, 0xec, 0x9a, 0xe6, 0x4f, + 0x4d, 0x4d, 0x0d, 0xdb, 0x68, 0x0a, 0x0d, 0xcd, 0x22, 0x4a, 0x9c, 0xf8, 0xf8, 0x78, 0xe6, 0x09, + 0x01, 0xfb, 0x14, 0x8f, 0x90, 0x14, 0xb0, 0x07, 0xb2, 0xc2, 0x23, 0xe8, 0x29, 0x76, 0x41, 0x5b, + 0xe2, 0xe7, 0x28, 0x09, 0xda, 0x8c, 0x08, 0xaf, 0xef, 0xe0, 0x64, 0xb7, 0x6b, 0xd1, 0x94, 0x75, + 0xdc, 0x00, 0xb3, 0x22, 0x4f, 0x48, 0x34, 0xc0, 0xc8, 0x13, 0xa1, 0x50, 0xc8, 0x20, 0x75, 0x75, + 0x75, 0x68, 0x6b, 0x6b, 0x83, 0x54, 0x2a, 0x85, 0x4c, 0x26, 0x63, 0x61, 0x54, 0x28, 0x14, 0x2c, + 0x23, 0x69, 0x2f, 0x6b, 0x6e, 0x65, 0x42, 0x78, 0x71, 0x2f, 0x14, 0x62, 0x3f, 0x3c, 0xc9, 0xb5, + 0x42, 0x73, 0xec, 0x16, 0xa4, 0x9f, 0xd8, 0x8c, 0xe8, 0x53, 0xbb, 0x31, 0xa4, 0xeb, 0x83, 0x83, + 0x83, 0xc3, 0xab, 0xf4, 0xe6, 0x56, 0xae, 0xa1, 0xbd, 0xe1, 0x8d, 0x17, 0x15, 0x15, 0x31, 0x68, + 0x57, 0x57, 0x17, 0xfa, 0xfa, 0xfa, 0x4c, 0x33, 0x8a, 0xba, 0x33, 0x75, 0x0e, 0xca, 0xcc, 0x91, + 0x11, 0x03, 0xfe, 0x4c, 0x3c, 0x09, 0x71, 0xc2, 0x41, 0xa8, 0x6e, 0xf9, 0xa2, 0x43, 0xb0, 0x03, + 0x35, 0x91, 0x9f, 0x21, 0xe6, 0xd8, 0x56, 0x64, 0x5f, 0xf5, 0xc6, 0xcc, 0xf4, 0x14, 0x9b, 0x47, + 0x66, 0xa0, 0xcc, 0xcc, 0x4c, 0x15, 0xad, 0x8e, 0x0c, 0x53, 0xfd, 0xd0, 0x1e, 0xf1, 0x1d, 0x98, + 0x5a, 0x09, 0x5f, 0x80, 0x93, 0x93, 0x93, 0x2c, 0x75, 0x87, 0x87, 0x74, 0xb8, 0x76, 0xc1, 0x16, + 0xcd, 0xb9, 0x6e, 0x50, 0x94, 0x7a, 0x40, 0x9a, 0xfc, 0x25, 0x2a, 0x42, 0x3e, 0x41, 0xb8, 0xd7, + 0x57, 0x68, 0xac, 0xba, 0xc9, 0x00, 0x73, 0x73, 0x73, 0x6f, 0x82, 0xb8, 0xb8, 0xef, 0xa5, 0xfd, + 0xa0, 0x86, 0x48, 0xfb, 0xc1, 0x77, 0x5f, 0x1e, 0x44, 0xed, 0x84, 0x07, 0x19, 0x86, 0x07, 0x91, + 0x1c, 0xb4, 0x07, 0x9d, 0xa2, 0xa3, 0x90, 0xe7, 0x3b, 0xa0, 0x25, 0x6e, 0x1b, 0xb2, 0xce, 0x7c, + 0x8c, 0x08, 0xdf, 0x9d, 0x18, 0x50, 0x77, 0x99, 0x20, 0x34, 0xc6, 0xdf, 0x00, 0xd1, 0xc7, 0xfe, + 0xfd, 0xfb, 0xd9, 0x0d, 0xd4, 0x36, 0x78, 0xd1, 0xf5, 0xf2, 0x77, 0x00, 0xfa, 0x2d, 0x33, 0xc6, + 0x13, 0xaa, 0xb6, 0x44, 0xf4, 0x4b, 0xe3, 0x51, 0x1f, 0xb3, 0x0d, 0x71, 0x3e, 0x5b, 0x70, 0x23, + 0xd2, 0x95, 0x85, 0x6a, 0xf9, 0xb3, 0xfc, 0xf3, 0xf6, 0xf6, 0xf6, 0x8b, 0x9c, 0xed, 0xff, 0xde, + 0x19, 0xb8, 0x63, 0xdd, 0xbe, 0x7d, 0xfb, 0x44, 0x36, 0x36, 0x36, 0x58, 0x2e, 0x6b, 0xae, 0xd8, + 0x96, 0x5f, 0x3b, 0x58, 0xef, 0x42, 0x61, 0xac, 0x2d, 0x54, 0x8d, 0x97, 0x21, 0x15, 0x1d, 0x43, + 0xb0, 0xdb, 0x76, 0x38, 0xd9, 0x7c, 0x8b, 0xd7, 0x9f, 0x5b, 0x2e, 0x5b, 0x5b, 0xdb, 0x7b, 0x9c, + 0xfd, 0x35, 0x3c, 0x68, 0x0d, 0xa7, 0x6d, 0x96, 0x96, 0x96, 0x3f, 0xae, 0x5c, 0xb9, 0x72, 0x9f, + 0x85, 0x85, 0x85, 0xdd, 0x4b, 0xd9, 0xf3, 0xe7, 0xef, 0xad, 0xb2, 0xf8, 0x25, 0xd0, 0xe3, 0x6b, + 0x83, 0xcb, 0xcf, 0x9f, 0x2e, 0xf8, 0x3b, 0x7e, 0xa4, 0xb4, 0xdb, 0xf1, 0x7e, 0xf6, 0x86, 0xf5, + 0x2b, 0x5d, 0x96, 0xdd, 0x6b, 0x26, 0xb2, 0xc3, 0xd9, 0xdb, 0xc5, 0xd9, 0xdd, 0xca, 0x69, 0xb5, + 0x29, 0x74, 0x2f, 0x0f, 0x4b, 0x4e, 0x6b, 0x39, 0x6d, 0x78, 0x5d, 0x76, 0x3b, 0x56, 0x1d, 0x3b, + 0xba, 0x77, 0x6d, 0xf6, 0xce, 0x2f, 0x2c, 0xbf, 0x7f, 0xdb, 0xff, 0x6f, 0xd1, 0x3a, 0xb2, 0xb7, + 0xfc, 0x05, 0xf2, 0x5f, 0xc0, 0xc4, 0x93, 0xb7, 0x9b, 0x0e, 0xd6, 0xd2, 0x00, 0x00, 0x00, 0x00, + 0x49, 0x45, 0x4e, 0x44, 0xae, 0x42, 0x60, 0x82, }; const BITMAP_OPAQUE find_replace_xpm[1] = {{ png, sizeof( png ), "find_replace_xpm" }}; diff --git a/bitmaps_png/cpp_26/show_zone.cpp b/bitmaps_png/cpp_26/show_zone.cpp index 1f170f2368..235f575a79 100644 --- a/bitmaps_png/cpp_26/show_zone.cpp +++ b/bitmaps_png/cpp_26/show_zone.cpp @@ -8,53 +8,38 @@ static const unsigned char png[] = { 0x89, 0x50, 0x4e, 0x47, 0x0d, 0x0a, 0x1a, 0x0a, 0x00, 0x00, 0x00, 0x0d, 0x49, 0x48, 0x44, 0x52, 0x00, 0x00, 0x00, 0x1a, 0x00, 0x00, 0x00, 0x1a, 0x08, 0x06, 0x00, 0x00, 0x00, 0xa9, 0x4a, 0x4c, - 0xce, 0x00, 0x00, 0x02, 0xe1, 0x49, 0x44, 0x41, 0x54, 0x48, 0xc7, 0xcd, 0x96, 0x4b, 0x6c, 0x8c, - 0x51, 0x14, 0xc7, 0x7f, 0xd3, 0x32, 0x2d, 0xea, 0x35, 0x09, 0x12, 0x11, 0x89, 0x08, 0x42, 0x2c, - 0x48, 0x74, 0x12, 0x09, 0x25, 0x69, 0x22, 0x54, 0xd2, 0xda, 0xa8, 0xe7, 0x42, 0x23, 0xa9, 0xa4, - 0xaa, 0x94, 0x52, 0xcc, 0xbd, 0x9f, 0x6f, 0x61, 0xe9, 0x19, 0x21, 0xf5, 0x8a, 0xb4, 0x24, 0x9a, - 0x21, 0x48, 0xba, 0x50, 0x22, 0x54, 0x17, 0xde, 0xf5, 0xd8, 0xa1, 0xda, 0x88, 0x48, 0xd4, 0x6b, - 0x45, 0xca, 0x18, 0xfc, 0x2d, 0x7c, 0x99, 0x0c, 0xf3, 0x14, 0x8f, 0x58, 0x9c, 0xc5, 0x39, 0xf7, - 0xfc, 0xef, 0xef, 0xde, 0x73, 0xcf, 0xbd, 0xb9, 0x48, 0xe2, 0x5f, 0x18, 0xff, 0x1c, 0x84, 0xe5, - 0x1c, 0x16, 0xfd, 0x61, 0x7b, 0x98, 0x2d, 0xe8, 0x05, 0x96, 0x30, 0x96, 0xcd, 0x18, 0x36, 0x60, - 0xb9, 0x84, 0x25, 0xf2, 0xa7, 0x41, 0x87, 0x71, 0x29, 0x48, 0x28, 0xc1, 0x26, 0x06, 0x62, 0xd9, - 0x94, 0x25, 0xe8, 0x51, 0x26, 0x50, 0x55, 0xc6, 0x9a, 0x5b, 0xea, 0xb2, 0x00, 0x3d, 0x4e, 0x07, - 0x6a, 0xfd, 0x69, 0xf5, 0x7b, 0xb1, 0x74, 0x61, 0x79, 0x83, 0xa5, 0x05, 0xc3, 0xc4, 0x38, 0x4d, - 0x0d, 0x86, 0x66, 0x0c, 0xcd, 0x58, 0x7a, 0x7f, 0x0d, 0x64, 0x18, 0x27, 0x09, 0x5c, 0xfc, 0x18, - 0x1e, 0x24, 0x11, 0xf7, 0xc6, 0xc3, 0xe2, 0xf4, 0x2b, 0x92, 0xe4, 0x76, 0xa6, 0x02, 0xbd, 0x8c, - 0xf9, 0x86, 0xb5, 0x5e, 0x72, 0x14, 0x87, 0x5d, 0x9e, 0xff, 0xdc, 0x8b, 0xdd, 0xc7, 0xb2, 0x38, - 0x66, 0x2e, 0x93, 0x24, 0x81, 0x43, 0xc3, 0x4f, 0xa0, 0x27, 0xa9, 0x40, 0xad, 0x71, 0xfe, 0x19, - 0x2f, 0xf9, 0x74, 0x2c, 0xe6, 0x50, 0x91, 0xe2, 0x2c, 0x7a, 0x70, 0x19, 0xc9, 0x1a, 0xf2, 0xb0, - 0xdc, 0xfa, 0x9b, 0x20, 0xe1, 0x70, 0x1d, 0x17, 0x3f, 0x2e, 0xa3, 0xbd, 0xf3, 0x14, 0x96, 0xae, - 0xdf, 0x2d, 0xdd, 0x5d, 0x0c, 0x0b, 0x30, 0x2c, 0xf8, 0x61, 0x07, 0x0e, 0x0d, 0x9e, 0x76, 0x0e, - 0x96, 0x2f, 0x58, 0xba, 0x33, 0x37, 0x43, 0x25, 0x7d, 0xb1, 0xdc, 0x49, 0xb2, 0xfa, 0x77, 0x18, - 0x26, 0xc4, 0x74, 0x2e, 0xa3, 0xb0, 0xf4, 0xc4, 0xc1, 0x56, 0x7a, 0xf3, 0x99, 0xf4, 0x20, 0xcb, - 0xc5, 0x58, 0xac, 0x8e, 0x01, 0x38, 0xec, 0xf9, 0xa1, 0xbd, 0x5d, 0xc6, 0xc7, 0xc6, 0x43, 0x4c, - 0xf3, 0xb4, 0x33, 0xb1, 0x7c, 0xf2, 0xf4, 0x1f, 0xb1, 0x14, 0x02, 0x3e, 0x2c, 0xfb, 0xd2, 0x5f, - 0x58, 0x43, 0x6d, 0x16, 0x17, 0x76, 0x1d, 0x96, 0xaf, 0x58, 0x96, 0x7b, 0xe5, 0x5a, 0x1d, 0xb7, - 0xeb, 0x67, 0x6c, 0x61, 0x18, 0x2e, 0xfe, 0x6c, 0x9e, 0xa0, 0xe3, 0xd4, 0x33, 0x38, 0x01, 0xe0, - 0x92, 0x8f, 0xa1, 0x3e, 0x2e, 0x2f, 0x42, 0x88, 0x22, 0x6f, 0x8e, 0x63, 0x71, 0xf1, 0xcb, 0xb8, - 0xf4, 0xc9, 0xf6, 0x51, 0x7d, 0x8d, 0xe5, 0x2c, 0x96, 0xad, 0x58, 0xd6, 0x63, 0x69, 0xc5, 0xf2, - 0x21, 0x49, 0xde, 0x5b, 0x0c, 0xe3, 0x12, 0xda, 0xdb, 0x61, 0x47, 0x66, 0x50, 0x3d, 0x62, 0x21, - 0x62, 0x1a, 0x62, 0x2a, 0x62, 0x3a, 0x62, 0x51, 0xfa, 0x77, 0x0d, 0x97, 0x80, 0xd7, 0x1c, 0x2f, - 0xbd, 0xd8, 0xd3, 0xf4, 0xa0, 0x85, 0x88, 0x01, 0xa8, 0xa0, 0xa0, 0x40, 0x4b, 0x16, 0x55, 0xaa, - 0xb6, 0x66, 0xa7, 0x66, 0x15, 0xcd, 0x96, 0xcf, 0xe7, 0x13, 0x23, 0x10, 0xe5, 0x29, 0xef, 0xd2, - 0x55, 0x5c, 0xfc, 0x84, 0x28, 0xc2, 0x12, 0x4d, 0x0d, 0xaa, 0x43, 0x4c, 0x46, 0x3e, 0x9f, 0x4f, - 0x55, 0x55, 0x55, 0xba, 0x72, 0xe1, 0x93, 0x8e, 0x1f, 0x92, 0x8e, 0xee, 0xef, 0xd5, 0xe9, 0x13, - 0xd2, 0xcd, 0xeb, 0x4f, 0x54, 0x5c, 0x5c, 0x2c, 0x40, 0x94, 0xa4, 0x80, 0x19, 0x9a, 0xbc, 0xf9, - 0xaa, 0x93, 0x83, 0xaa, 0x69, 0x25, 0x80, 0x02, 0x81, 0x80, 0xda, 0xdb, 0xdb, 0xf5, 0xaa, 0x47, - 0x6a, 0x3a, 0xf8, 0x45, 0x63, 0xc7, 0x04, 0xe5, 0xf7, 0xf7, 0xd7, 0xc6, 0xb5, 0xe7, 0x75, 0xe5, - 0x82, 0x14, 0x89, 0x44, 0x54, 0x56, 0x56, 0x96, 0x1e, 0x66, 0x71, 0xbc, 0x4e, 0xdc, 0x96, 0x08, - 0x2a, 0xa6, 0x03, 0x50, 0x69, 0x69, 0xa9, 0xa2, 0xd1, 0xa8, 0xba, 0x3b, 0xa5, 0x23, 0xfb, 0xde, - 0xab, 0x7f, 0xbf, 0xc1, 0x02, 0xb4, 0xac, 0x7c, 0xb7, 0x5a, 0x4e, 0x49, 0x92, 0xd4, 0xd6, 0xd6, - 0xa6, 0x9c, 0x9c, 0x1c, 0x31, 0x14, 0xb1, 0x39, 0x25, 0x6c, 0x29, 0xe0, 0x4b, 0x5e, 0xba, 0x52, - 0x44, 0x1e, 0x0a, 0x06, 0x83, 0xea, 0xe8, 0xb8, 0xa7, 0xb3, 0x27, 0xa5, 0x1d, 0xdb, 0x3b, 0xb5, - 0xbe, 0xba, 0x45, 0x8d, 0x0d, 0x9f, 0xd5, 0xdd, 0x29, 0x85, 0xc3, 0x61, 0xe5, 0xe7, 0xe7, 0x8b, - 0xe1, 0x88, 0xda, 0xb4, 0xcd, 0xf1, 0x91, 0x10, 0x33, 0x12, 0x41, 0x21, 0x82, 0x38, 0x94, 0xb1, - 0x9c, 0x0a, 0x86, 0x70, 0x2d, 0x37, 0x37, 0x57, 0x15, 0x15, 0xab, 0xd4, 0x78, 0xf4, 0x86, 0x9a, - 0x9b, 0xba, 0xd4, 0x70, 0x20, 0xac, 0xc2, 0xc2, 0xc2, 0xef, 0x25, 0x1b, 0xc4, 0x6d, 0x56, 0x51, - 0x8e, 0xc3, 0x7c, 0x0c, 0x25, 0x18, 0x4a, 0x70, 0x98, 0x17, 0x33, 0xc3, 0x5c, 0x0c, 0x73, 0x09, - 0x11, 0xcc, 0xf8, 0xdd, 0x02, 0xe6, 0x01, 0x4d, 0xc0, 0x73, 0xe0, 0x35, 0xf0, 0x18, 0x68, 0x04, - 0xa6, 0xfc, 0xd7, 0xff, 0xba, 0x6f, 0xc5, 0xac, 0x2c, 0x79, 0x4c, 0x51, 0x2a, 0x29, 0x00, 0x00, + 0xce, 0x00, 0x00, 0x01, 0xf1, 0x49, 0x44, 0x41, 0x54, 0x48, 0xc7, 0xc5, 0x96, 0xcd, 0x4b, 0x56, + 0x41, 0x14, 0x87, 0x1f, 0x21, 0xdf, 0x82, 0x92, 0x40, 0x68, 0x13, 0xe2, 0x4e, 0x43, 0xd7, 0xe5, + 0x4a, 0x5d, 0x8a, 0x9a, 0xa6, 0x4b, 0x89, 0x16, 0x86, 0xd0, 0xa2, 0x4f, 0x35, 0xd1, 0xea, 0x9e, + 0x33, 0xce, 0x1f, 0x10, 0xa2, 0xb4, 0x11, 0x5a, 0x04, 0xb9, 0x11, 0x09, 0x0b, 0xda, 0xbc, 0x44, + 0x04, 0xae, 0x82, 0x88, 0xa8, 0x5d, 0x59, 0x46, 0x48, 0x90, 0x62, 0xad, 0x02, 0x3f, 0x92, 0x9a, + 0x16, 0x0e, 0xc3, 0xd5, 0xf7, 0xeb, 0x46, 0xde, 0xd7, 0xc5, 0x6f, 0x71, 0xce, 0x3d, 0x67, 0x9e, + 0x99, 0x33, 0x67, 0x66, 0x2e, 0xce, 0x39, 0xca, 0x21, 0xca, 0x0e, 0x42, 0x79, 0x82, 0xe2, 0xf6, + 0x59, 0xef, 0x93, 0x82, 0xbe, 0xa1, 0xcc, 0xa1, 0xdc, 0x42, 0xb8, 0x89, 0xf2, 0x1c, 0x65, 0x6b, + 0xbf, 0x41, 0xf7, 0xb1, 0x1c, 0xcb, 0x29, 0xc1, 0x28, 0x55, 0x28, 0xa3, 0x09, 0x41, 0x1f, 0x4a, + 0x81, 0x2e, 0x97, 0xac, 0xb9, 0x32, 0x92, 0x00, 0xb4, 0x58, 0x0c, 0x94, 0xdd, 0x33, 0xfb, 0x29, + 0x94, 0x25, 0x94, 0xef, 0x28, 0x4f, 0x11, 0x1a, 0x62, 0x39, 0xd7, 0x11, 0x66, 0x11, 0x66, 0x51, + 0xd6, 0xff, 0x0d, 0x24, 0xd4, 0x39, 0xe7, 0xc0, 0x92, 0x41, 0x78, 0x97, 0x27, 0x79, 0x3d, 0x0e, + 0x8b, 0xe5, 0xf7, 0xe7, 0x89, 0xfd, 0x58, 0x08, 0xb4, 0x1a, 0x6c, 0xe1, 0x86, 0x0f, 0xde, 0xc6, + 0x30, 0xe1, 0xed, 0xaf, 0xde, 0xf7, 0x16, 0xa5, 0x2f, 0xc8, 0xd2, 0xe8, 0x9c, 0x03, 0xc3, 0xf4, + 0x1e, 0xd0, 0xa7, 0x42, 0xa0, 0x6c, 0xcc, 0x9e, 0xf7, 0xc1, 0x8f, 0x82, 0xcf, 0x70, 0xb1, 0xc0, + 0x5e, 0xac, 0x60, 0x39, 0xc9, 0x35, 0x0e, 0xa3, 0xbc, 0x4a, 0x13, 0xe4, 0x30, 0xbc, 0xc4, 0x92, + 0xc1, 0x52, 0xeb, 0xf7, 0xd3, 0xa1, 0x2c, 0xfd, 0x6f, 0xe9, 0xde, 0x20, 0xf4, 0x22, 0xf4, 0xee, + 0x5a, 0x81, 0x61, 0xda, 0xe7, 0xb6, 0xa1, 0xfc, 0x46, 0xf9, 0x5c, 0xba, 0x19, 0x2e, 0x51, 0x89, + 0xf2, 0x3a, 0xcf, 0xec, 0x7f, 0x22, 0x9c, 0x0a, 0x79, 0x96, 0x1a, 0x94, 0x95, 0x18, 0x6c, 0xc0, + 0x8f, 0x27, 0xc5, 0x41, 0xca, 0xb3, 0xe0, 0x1b, 0xe1, 0x28, 0x86, 0xc9, 0x5d, 0xed, 0x6d, 0xa9, + 0x0f, 0xdf, 0x23, 0x4e, 0xfb, 0xdc, 0x16, 0x94, 0x5f, 0x3e, 0x7f, 0x13, 0xe5, 0x0c, 0x50, 0x81, + 0x72, 0xaf, 0xf8, 0x81, 0x15, 0x86, 0x12, 0x1c, 0xd8, 0x41, 0x94, 0x3f, 0x28, 0x17, 0x7c, 0xb9, + 0xae, 0xc4, 0x56, 0xbd, 0xcc, 0x6d, 0x4e, 0x60, 0xc9, 0x24, 0xb9, 0x82, 0x66, 0x18, 0xe3, 0x78, + 0x0e, 0xc0, 0x72, 0x04, 0x61, 0x2c, 0x16, 0xb7, 0x45, 0x44, 0xab, 0x1f, 0xe3, 0x41, 0xcc, 0xff, + 0x02, 0xcb, 0xa1, 0xa4, 0x97, 0xea, 0x1a, 0xca, 0x63, 0x94, 0x3b, 0x28, 0xc3, 0x28, 0x59, 0x94, + 0x8d, 0x3c, 0x71, 0x3f, 0x10, 0xea, 0x72, 0xda, 0xdb, 0x70, 0x37, 0x8d, 0x67, 0x62, 0x11, 0x4b, + 0xb5, 0x6f, 0x8e, 0x55, 0xef, 0xfb, 0x92, 0xce, 0x7b, 0x64, 0x58, 0xc0, 0x92, 0x21, 0xa2, 0x15, + 0x65, 0x3b, 0x3d, 0xd0, 0x4e, 0x23, 0x3d, 0xf4, 0xe3, 0x5d, 0x4d, 0x17, 0xb4, 0x23, 0xe3, 0x3b, + 0x71, 0xbc, 0x1c, 0x4f, 0xf9, 0x79, 0xa0, 0xa2, 0x1c, 0xa0, 0x4d, 0x22, 0x9a, 0x73, 0x41, 0x11, + 0x4d, 0x18, 0x7a, 0x30, 0xf4, 0x20, 0x9c, 0x0b, 0x32, 0x74, 0x63, 0xe8, 0x46, 0xe8, 0x0a, 0x32, + 0x9c, 0x0d, 0x12, 0x3a, 0x11, 0x3a, 0x31, 0x74, 0x04, 0x09, 0xed, 0x08, 0xed, 0x44, 0x34, 0x1d, + 0xdc, 0xef, 0x56, 0xda, 0xfa, 0x0b, 0xde, 0xf2, 0x0c, 0xbf, 0x52, 0xcf, 0x4f, 0xff, 0x00, 0x00, 0x00, 0x00, 0x49, 0x45, 0x4e, 0x44, 0xae, 0x42, 0x60, 0x82, }; diff --git a/bitmaps_png/cpp_26/show_zone_disable.cpp b/bitmaps_png/cpp_26/show_zone_disable.cpp index 954fb2f678..47bd9a5d04 100644 --- a/bitmaps_png/cpp_26/show_zone_disable.cpp +++ b/bitmaps_png/cpp_26/show_zone_disable.cpp @@ -8,56 +8,37 @@ static const unsigned char png[] = { 0x89, 0x50, 0x4e, 0x47, 0x0d, 0x0a, 0x1a, 0x0a, 0x00, 0x00, 0x00, 0x0d, 0x49, 0x48, 0x44, 0x52, 0x00, 0x00, 0x00, 0x1a, 0x00, 0x00, 0x00, 0x1a, 0x08, 0x06, 0x00, 0x00, 0x00, 0xa9, 0x4a, 0x4c, - 0xce, 0x00, 0x00, 0x02, 0xfc, 0x49, 0x44, 0x41, 0x54, 0x48, 0xc7, 0xcd, 0x96, 0x6d, 0x48, 0x53, - 0x51, 0x18, 0xc7, 0x9f, 0x6d, 0x65, 0x53, 0x17, 0xd5, 0xa2, 0x17, 0xc2, 0x02, 0xb3, 0x92, 0xfc, - 0x50, 0xf6, 0xb2, 0x45, 0x52, 0x1a, 0xac, 0xa0, 0x51, 0x6e, 0xd2, 0x87, 0x2c, 0x24, 0x48, 0x22, - 0x83, 0x69, 0x49, 0x51, 0x61, 0xba, 0xd9, 0x08, 0xa9, 0x20, 0xb3, 0x22, 0xaa, 0x15, 0x49, 0x68, - 0x41, 0xb1, 0xc4, 0x3e, 0x88, 0x44, 0x11, 0x35, 0xf6, 0xc5, 0x8a, 0xec, 0xe5, 0x6b, 0x66, 0x49, - 0x18, 0xd8, 0xcb, 0x87, 0xa0, 0x92, 0x74, 0xd5, 0xd3, 0xff, 0x9e, 0x0e, 0xeb, 0x3a, 0xef, 0x76, - 0x17, 0x99, 0x74, 0xe1, 0xcf, 0xbd, 0xe7, 0xb9, 0xe7, 0x3c, 0xbf, 0x73, 0x9e, 0xf3, 0x9c, 0xe7, - 0x5e, 0x62, 0x66, 0x1a, 0x0d, 0xd1, 0xa8, 0x83, 0xc8, 0x47, 0xcb, 0xa8, 0x96, 0xdc, 0x23, 0x2c, - 0x47, 0x72, 0x20, 0x2f, 0xad, 0x85, 0xdd, 0x86, 0xfb, 0x5c, 0xaa, 0xa2, 0x39, 0xe4, 0xa7, 0x3c, - 0xd8, 0x0b, 0x47, 0x16, 0xe4, 0xa7, 0x5c, 0x68, 0xcc, 0xb0, 0x10, 0xc0, 0x26, 0xc0, 0x23, 0x02, - 0xf2, 0x52, 0xa6, 0x6e, 0xcc, 0xfd, 0x58, 0xa1, 0x1e, 0xc8, 0x4b, 0xab, 0xe3, 0x83, 0x7c, 0xb4, - 0x3c, 0x6a, 0xdb, 0x4f, 0xe3, 0xd1, 0x3e, 0x05, 0x75, 0x43, 0x1f, 0xa0, 0x36, 0x0c, 0x9e, 0xaf, - 0x82, 0xcd, 0x86, 0x96, 0x0a, 0x79, 0x69, 0xfd, 0x9f, 0x81, 0x8e, 0x51, 0xba, 0x74, 0x92, 0x82, - 0x8e, 0xcf, 0x60, 0xe7, 0x18, 0xf5, 0xab, 0x61, 0x2a, 0xe8, 0xac, 0xe4, 0x41, 0xd8, 0xfc, 0x68, - 0xdb, 0x4b, 0x95, 0xd2, 0x71, 0x04, 0x83, 0x1a, 0x64, 0xbb, 0x57, 0xda, 0x9e, 0x42, 0x9b, 0xa2, - 0xf2, 0x53, 0x8e, 0xf4, 0xb1, 0x30, 0x39, 0x90, 0x3a, 0x6c, 0x3e, 0x6a, 0x95, 0x4e, 0x5b, 0xa2, - 0xb6, 0x5a, 0x2a, 0xd5, 0x58, 0xa1, 0xa2, 0x3e, 0xc0, 0x66, 0x40, 0x46, 0x3c, 0x17, 0xfc, 0x4b, - 0x10, 0xe3, 0x5d, 0x87, 0x08, 0x77, 0x03, 0xa5, 0xe2, 0xd9, 0x29, 0x33, 0xf7, 0xaf, 0x43, 0xf7, - 0x18, 0xed, 0x22, 0x21, 0x1f, 0x3d, 0x54, 0xc1, 0x02, 0x72, 0xbf, 0xa6, 0xe2, 0x9d, 0x0b, 0xed, - 0x35, 0xfa, 0xc9, 0x50, 0x46, 0x63, 0x61, 0x7b, 0xa4, 0x31, 0xfb, 0x4f, 0x70, 0x92, 0xad, 0x4a, - 0x82, 0x0c, 0x11, 0xba, 0xdf, 0xb0, 0x6d, 0xd2, 0x3e, 0x2f, 0x31, 0xa8, 0x86, 0xf2, 0xa2, 0xb6, - 0xbd, 0x94, 0x0e, 0xdb, 0xc9, 0x21, 0xe9, 0x0d, 0x07, 0x2a, 0xc8, 0x44, 0x39, 0x76, 0x25, 0x34, - 0x28, 0x61, 0x5f, 0x95, 0x6a, 0x22, 0xec, 0xd5, 0xb4, 0x40, 0xef, 0xc0, 0x66, 0xe9, 0x1e, 0x58, - 0xf4, 0x91, 0x13, 0x9b, 0x29, 0xdb, 0xe5, 0xaa, 0x55, 0xbf, 0xa6, 0x03, 0x34, 0x45, 0x49, 0x8e, - 0x64, 0x4a, 0xd0, 0x62, 0x25, 0x7c, 0x1a, 0xe7, 0xc5, 0x18, 0x53, 0x82, 0x0a, 0xe1, 0x74, 0xb2, - 0xf4, 0x71, 0x49, 0x05, 0xbb, 0xab, 0x2e, 0x61, 0x7a, 0xd5, 0xdb, 0x89, 0xce, 0x76, 0x11, 0x6f, - 0x65, 0x05, 0xc8, 0xca, 0x38, 0x45, 0xd5, 0xa9, 0xec, 0x2d, 0xed, 0xa4, 0x71, 0x31, 0xc9, 0x51, - 0xaf, 0x0f, 0x2a, 0xc7, 0x41, 0x5c, 0x44, 0x47, 0x69, 0x1a, 0xb5, 0x23, 0x08, 0xb7, 0x71, 0x4a, - 0x5a, 0x51, 0x68, 0xea, 0x44, 0xa6, 0xc5, 0xa9, 0x6b, 0x22, 0xbd, 0x7f, 0x25, 0xc7, 0x5b, 0x09, - 0xeb, 0x49, 0x0c, 0x5a, 0x42, 0x47, 0xc8, 0x44, 0x1f, 0x2d, 0x16, 0x0b, 0x6f, 0x2e, 0x2e, 0xe3, - 0xdd, 0xbb, 0x8e, 0x73, 0x41, 0xfe, 0x2a, 0x36, 0x18, 0x0c, 0x4c, 0x66, 0x7a, 0x85, 0xf7, 0x87, - 0x35, 0x61, 0x35, 0xb4, 0x42, 0x84, 0xb6, 0x86, 0xf2, 0xc5, 0xb1, 0x88, 0x0b, 0xda, 0x4e, 0x25, - 0x64, 0xa5, 0xb0, 0xe2, 0xd0, 0xe3, 0xf1, 0xf0, 0xbd, 0x5b, 0x83, 0x7c, 0xf9, 0x02, 0x73, 0xe3, - 0x99, 0x7e, 0x6e, 0xb9, 0xc2, 0xfc, 0xa0, 0xe3, 0x05, 0x3b, 0x1c, 0x0e, 0x74, 0xa6, 0x1f, 0x94, - 0x4d, 0xe7, 0x34, 0x61, 0xd8, 0x5b, 0xe9, 0xaf, 0x42, 0x1b, 0xb4, 0x81, 0xd6, 0x21, 0xc2, 0x6f, - 0xac, 0x56, 0x2b, 0x87, 0xc3, 0x61, 0x7e, 0xd7, 0xc7, 0xdc, 0x7c, 0xfe, 0x3b, 0x67, 0x65, 0xda, - 0x39, 0x25, 0x25, 0x8d, 0xf7, 0x55, 0xde, 0x04, 0x98, 0x79, 0x60, 0x60, 0x80, 0xdd, 0x6e, 0x77, - 0x62, 0x98, 0x3c, 0x67, 0xb8, 0x1f, 0x1c, 0x0e, 0xca, 0xa4, 0x43, 0x18, 0xcc, 0x2e, 0x97, 0x8b, - 0x23, 0x91, 0x08, 0xbf, 0xec, 0x62, 0xbe, 0x78, 0xfa, 0x33, 0xa7, 0xa5, 0x4e, 0x50, 0x9c, 0x72, - 0xc9, 0xc6, 0x13, 0xdc, 0x76, 0x9d, 0xc5, 0x15, 0x0a, 0x85, 0xd8, 0x68, 0x34, 0x32, 0x8e, 0x74, - 0x1f, 0xe6, 0x5d, 0x1c, 0x67, 0x65, 0x19, 0x18, 0x67, 0xd0, 0x0e, 0x5d, 0x0e, 0xbe, 0x3d, 0x46, - 0xfa, 0x62, 0xb7, 0xdb, 0xb9, 0xb3, 0xf3, 0x09, 0xdf, 0xb8, 0xca, 0x5c, 0x5f, 0xd7, 0xc5, 0x7b, - 0x2a, 0xda, 0xb8, 0x29, 0xf0, 0x4d, 0xc0, 0x83, 0xc1, 0x20, 0x9b, 0xcd, 0x66, 0x65, 0xaf, 0x7a, - 0x68, 0x0b, 0x6d, 0x4d, 0xf0, 0xe1, 0x8b, 0xa6, 0xfd, 0x50, 0x50, 0x15, 0x4d, 0xc2, 0x2c, 0xa6, - 0xe3, 0xaf, 0x20, 0x17, 0xb9, 0xd3, 0x6e, 0x32, 0x99, 0xb8, 0xb4, 0x74, 0x07, 0x37, 0x35, 0xde, - 0xe7, 0x6b, 0xcd, 0xdd, 0x1c, 0x38, 0x1b, 0x64, 0x9b, 0xcd, 0x26, 0x56, 0x87, 0x8f, 0xf9, 0x1d, - 0x72, 0x20, 0xe5, 0xab, 0x91, 0x93, 0x5a, 0x52, 0x6a, 0x9d, 0x22, 0xf8, 0xd4, 0xfd, 0xdd, 0xc2, - 0xe5, 0x84, 0x9a, 0xa1, 0x5e, 0xe8, 0x3d, 0xf4, 0x1c, 0x6a, 0x82, 0x72, 0xff, 0xeb, 0xff, 0xba, - 0x9f, 0xf9, 0x86, 0xa5, 0xd1, 0xbe, 0x37, 0x48, 0xba, 0x00, 0x00, 0x00, 0x00, 0x49, 0x45, 0x4e, - 0x44, 0xae, 0x42, 0x60, 0x82, + 0xce, 0x00, 0x00, 0x01, 0xd4, 0x49, 0x44, 0x41, 0x54, 0x48, 0xc7, 0xc5, 0x96, 0xcd, 0x2b, 0x44, + 0x51, 0x18, 0xc6, 0x1f, 0xf2, 0x91, 0x26, 0x45, 0xf2, 0x91, 0x50, 0x3e, 0x27, 0x16, 0x48, 0x3e, + 0x32, 0xf9, 0x58, 0xa0, 0x4c, 0xf9, 0x5a, 0xda, 0x4a, 0xd9, 0x20, 0x1b, 0x09, 0x73, 0x67, 0xcc, + 0x9e, 0x26, 0x76, 0x76, 0xfe, 0x01, 0xd9, 0xd8, 0xdb, 0x2a, 0x49, 0xfc, 0x01, 0x4a, 0xb2, 0xa0, + 0xec, 0x94, 0xc4, 0xe2, 0x7a, 0xce, 0xf1, 0x76, 0x9d, 0x19, 0xc3, 0xbd, 0x32, 0x77, 0x2c, 0x9e, + 0xee, 0x3d, 0xef, 0x3d, 0xe7, 0xfd, 0x9d, 0xf3, 0x9e, 0xf7, 0xbc, 0xe7, 0xc2, 0xb6, 0x6d, 0x64, + 0x43, 0xc8, 0x3a, 0x08, 0x51, 0xf4, 0x21, 0x86, 0xe9, 0x0c, 0x6b, 0xc4, 0x1b, 0xc8, 0xc2, 0x38, + 0xed, 0x3d, 0x7c, 0x36, 0x63, 0x1d, 0x4d, 0x88, 0x23, 0x44, 0xfb, 0x64, 0x66, 0x41, 0x71, 0x74, + 0x52, 0x79, 0x5f, 0x42, 0x40, 0x9b, 0x06, 0x67, 0x04, 0x64, 0xa1, 0xde, 0x35, 0xe6, 0x71, 0xae, + 0xd0, 0x0d, 0x64, 0x61, 0xf4, 0x7b, 0x50, 0x14, 0xfd, 0x8e, 0x6d, 0x0d, 0xc5, 0x6c, 0xef, 0x51, + 0xd7, 0xd4, 0x23, 0x75, 0xcc, 0xc1, 0xad, 0x06, 0xac, 0x81, 0xea, 0xd6, 0xb2, 0x30, 0xf1, 0x3b, + 0xd0, 0x36, 0x02, 0xe2, 0xa4, 0x80, 0x1d, 0xaf, 0x68, 0xb7, 0x53, 0xf4, 0x6c, 0xc2, 0x0c, 0x68, + 0x9d, 0x77, 0x10, 0x37, 0xdf, 0x69, 0x5b, 0x58, 0x11, 0xc7, 0x6f, 0x1c, 0x94, 0x90, 0xf6, 0x9d, + 0xd8, 0x2e, 0xa9, 0x59, 0x47, 0x71, 0xb4, 0x89, 0x8f, 0x0e, 0x6f, 0x20, 0x33, 0x6c, 0x51, 0x1c, + 0x89, 0xd3, 0x43, 0xc7, 0x16, 0xc3, 0x5c, 0x9a, 0x15, 0x2a, 0xdd, 0x13, 0x56, 0x4d, 0xe5, 0xf2, + 0x7d, 0xd8, 0x4f, 0x90, 0xcd, 0x6f, 0xa7, 0x3a, 0xdc, 0x09, 0x14, 0xf1, 0x3d, 0x2c, 0x99, 0xfb, + 0xe7, 0xd0, 0x5d, 0xb0, 0x3d, 0xa3, 0x15, 0xc5, 0x99, 0x01, 0xdb, 0x97, 0xfd, 0xaa, 0xe0, 0xb7, + 0x29, 0xb6, 0xc7, 0xdc, 0x93, 0x61, 0x01, 0xf9, 0xb4, 0x9d, 0xa7, 0x99, 0xfd, 0x13, 0x9d, 0x04, + 0x8d, 0x24, 0xa8, 0xd1, 0xa1, 0xfb, 0x84, 0xcd, 0x8b, 0xbd, 0xe5, 0x67, 0x50, 0x04, 0x21, 0xc7, + 0xb6, 0x8a, 0x00, 0x6d, 0xbb, 0x49, 0xe9, 0x4d, 0x07, 0x06, 0xa4, 0x44, 0xc6, 0x0e, 0x52, 0xaf, + 0x02, 0x7b, 0x51, 0xd5, 0x44, 0xdb, 0x37, 0xd1, 0xee, 0x76, 0x60, 0x1b, 0x5d, 0x0f, 0x2c, 0xfb, + 0xc8, 0xc4, 0x6a, 0xa5, 0xbd, 0x68, 0xac, 0xfa, 0x16, 0x1b, 0x28, 0x57, 0xc9, 0xe1, 0xa5, 0x04, + 0x75, 0xa9, 0xf0, 0xa5, 0x39, 0x2f, 0xb9, 0x29, 0x25, 0x68, 0x92, 0x4e, 0xcb, 0xc4, 0xc7, 0x81, + 0x01, 0x3b, 0x31, 0x4b, 0x98, 0x5b, 0xf5, 0x0e, 0xb3, 0x73, 0xaf, 0x8e, 0xb7, 0x5a, 0x01, 0xb3, + 0xf2, 0x9b, 0xa2, 0x1a, 0x56, 0x7b, 0x8b, 0x65, 0x14, 0xa6, 0x24, 0xc7, 0x4e, 0xe6, 0xaf, 0x09, + 0x9e, 0x19, 0x9d, 0xde, 0x1f, 0xc9, 0xf1, 0x20, 0xb0, 0x1b, 0x7f, 0xee, 0xa3, 0x08, 0x06, 0x74, + 0x68, 0x23, 0x18, 0xd2, 0xc7, 0xc2, 0x37, 0x90, 0xec, 0xad, 0xf8, 0x5b, 0xf2, 0x17, 0xf4, 0x11, + 0xc6, 0xa0, 0x64, 0xe2, 0x96, 0xff, 0x57, 0xb9, 0xda, 0x2b, 0x20, 0x27, 0x1b, 0xff, 0x0c, 0x4e, + 0xda, 0x27, 0x83, 0xd6, 0x51, 0xca, 0x59, 0x54, 0x79, 0xd2, 0x26, 0x2a, 0x7f, 0x94, 0xaa, 0x75, + 0x4a, 0xf4, 0xf9, 0x7f, 0xbf, 0x5b, 0x7e, 0xeb, 0x1d, 0x44, 0x01, 0x60, 0x36, 0xe3, 0x58, 0xd9, + 0x88, 0x00, 0x00, 0x00, 0x00, 0x49, 0x45, 0x4e, 0x44, 0xae, 0x42, 0x60, 0x82, }; const BITMAP_OPAQUE show_zone_disable_xpm[1] = {{ png, sizeof( png ), "show_zone_disable_xpm" }}; diff --git a/bitmaps_png/cpp_26/show_zone_outline_only.cpp b/bitmaps_png/cpp_26/show_zone_outline_only.cpp index 31af00e966..e70a76bcd6 100644 --- a/bitmaps_png/cpp_26/show_zone_outline_only.cpp +++ b/bitmaps_png/cpp_26/show_zone_outline_only.cpp @@ -8,60 +8,42 @@ static const unsigned char png[] = { 0x89, 0x50, 0x4e, 0x47, 0x0d, 0x0a, 0x1a, 0x0a, 0x00, 0x00, 0x00, 0x0d, 0x49, 0x48, 0x44, 0x52, 0x00, 0x00, 0x00, 0x1a, 0x00, 0x00, 0x00, 0x1a, 0x08, 0x06, 0x00, 0x00, 0x00, 0xa9, 0x4a, 0x4c, - 0xce, 0x00, 0x00, 0x03, 0x42, 0x49, 0x44, 0x41, 0x54, 0x48, 0xc7, 0xbd, 0x96, 0x5d, 0x48, 0x93, - 0x61, 0x14, 0xc7, 0xff, 0x6e, 0x69, 0x7e, 0x2c, 0xab, 0x75, 0x51, 0x81, 0x90, 0x25, 0x41, 0x5f, - 0x96, 0x1f, 0xdb, 0xd4, 0x08, 0xb3, 0x06, 0x7d, 0x49, 0xae, 0x24, 0x35, 0x91, 0x24, 0xa3, 0xac, - 0x96, 0x26, 0x5a, 0x4a, 0xb9, 0x69, 0xbb, 0x28, 0xba, 0x29, 0x2a, 0xa4, 0xb0, 0x0f, 0x2b, 0x2d, - 0x28, 0x56, 0x14, 0x21, 0x14, 0xd1, 0x85, 0x4b, 0x88, 0xf2, 0xc2, 0x2c, 0xe8, 0xa2, 0xb2, 0x24, - 0x4a, 0xac, 0xb4, 0xbc, 0xd1, 0xac, 0x39, 0xf5, 0x74, 0xf6, 0xee, 0x6d, 0x1f, 0xec, 0x75, 0x9b, - 0xa8, 0x0d, 0xfe, 0x7b, 0xf6, 0x3e, 0x1f, 0xe7, 0x77, 0x9e, 0x73, 0xce, 0xf3, 0xec, 0x05, 0x11, - 0xe1, 0x7f, 0xc8, 0xf5, 0x43, 0x45, 0xf9, 0x48, 0xa4, 0xb3, 0x13, 0xaa, 0x04, 0xaa, 0x64, 0x82, - 0xcc, 0x09, 0x82, 0x9a, 0x16, 0x40, 0x35, 0x6c, 0xc3, 0x86, 0x87, 0x4d, 0x13, 0xaa, 0xa4, 0xbe, - 0x5e, 0x86, 0x6d, 0x75, 0x81, 0x12, 0x69, 0x11, 0x54, 0x83, 0xbf, 0x60, 0x44, 0xb9, 0x87, 0xaa, - 0xa0, 0xe7, 0x36, 0x83, 0xdb, 0x24, 0x96, 0x9a, 0x95, 0xcd, 0x2a, 0xf3, 0x9a, 0x37, 0x9a, 0x56, - 0x7d, 0x79, 0xcb, 0x91, 0xda, 0xee, 0x1b, 0x54, 0x8d, 0xf5, 0x30, 0x21, 0xc4, 0x2b, 0xd6, 0xdc, - 0xc7, 0xd2, 0x04, 0x06, 0xfa, 0xfc, 0xce, 0x37, 0xa8, 0x0a, 0xf1, 0x7e, 0x93, 0x6b, 0xdf, 0xe1, - 0x38, 0x41, 0xdb, 0x3c, 0xbc, 0xaf, 0x86, 0x96, 0xb5, 0x87, 0x0d, 0x17, 0xf1, 0x58, 0x26, 0x8e, - 0x62, 0x96, 0xdb, 0x78, 0x02, 0x8f, 0x6d, 0x16, 0x64, 0x44, 0xe9, 0xd8, 0x40, 0x47, 0x30, 0x53, - 0xe8, 0xcb, 0x82, 0x9c, 0x8d, 0xef, 0x94, 0xf0, 0xb4, 0xd4, 0x1d, 0xe6, 0x06, 0x5d, 0x36, 0x16, - 0xd0, 0x01, 0xb7, 0xd0, 0x24, 0x8a, 0x0b, 0x0e, 0xb1, 0xc7, 0x6b, 0xc4, 0xe7, 0xfd, 0xdc, 0x56, - 0xf2, 0x73, 0x09, 0x1b, 0x5e, 0xe4, 0x94, 0x08, 0xe6, 0xf1, 0x75, 0x81, 0x82, 0x5c, 0x61, 0x33, - 0x62, 0x8b, 0x58, 0x14, 0x3a, 0x37, 0x78, 0x2c, 0xeb, 0x04, 0xeb, 0x81, 0x57, 0x75, 0x9a, 0xa0, - 0x80, 0x99, 0xa3, 0x60, 0xc0, 0x8e, 0xc9, 0x03, 0x39, 0xe6, 0xe5, 0x09, 0xe1, 0x36, 0x21, 0x52, - 0xcc, 0xe7, 0x04, 0x84, 0xce, 0x88, 0x62, 0xd6, 0x42, 0x41, 0xee, 0x3b, 0xe0, 0xd0, 0x89, 0xf9, - 0x8a, 0xe6, 0x79, 0x87, 0x03, 0x2b, 0x06, 0x13, 0x64, 0x3c, 0x39, 0x5f, 0xc2, 0x73, 0x7b, 0x7e, - 0x94, 0x4e, 0x87, 0x2a, 0x30, 0x4d, 0x3c, 0xd8, 0xff, 0xc2, 0x18, 0x2b, 0x3a, 0x9a, 0xe2, 0x1b, - 0x54, 0x8d, 0x2c, 0xa7, 0x91, 0x42, 0x04, 0x73, 0xdf, 0x5a, 0x8f, 0xf2, 0x3e, 0xe9, 0x70, 0x44, - 0x74, 0x66, 0x8e, 0xd8, 0x46, 0x09, 0x3b, 0x77, 0x80, 0xca, 0x9c, 0xfd, 0x29, 0xdd, 0xaf, 0x7d, - 0x1f, 0x58, 0x03, 0x0f, 0xfb, 0x3f, 0xb0, 0x8e, 0xd0, 0x9a, 0xb0, 0x44, 0x7c, 0x8e, 0x77, 0xdb, - 0xd5, 0x3e, 0xee, 0x0f, 0x87, 0x6a, 0xe4, 0x69, 0x20, 0x57, 0x50, 0x3a, 0x67, 0x62, 0xaa, 0xc4, - 0x79, 0x99, 0x22, 0xdc, 0x7d, 0x2e, 0xa3, 0xf6, 0x1d, 0x44, 0x09, 0x63, 0xd5, 0xd8, 0xe8, 0xb6, - 0x3e, 0x87, 0x21, 0x16, 0xff, 0x20, 0x87, 0x91, 0x22, 0xa1, 0xfa, 0x0c, 0x48, 0x66, 0x63, 0x2a, - 0x7b, 0x55, 0xb2, 0x81, 0x52, 0x89, 0x43, 0x5c, 0x6c, 0xcf, 0xad, 0x57, 0x79, 0x27, 0xf7, 0xbc, - 0xf2, 0x0f, 0x2a, 0xe1, 0xef, 0x54, 0xd4, 0x63, 0x1e, 0x9e, 0x71, 0x06, 0x5a, 0x10, 0x03, 0x0b, - 0xd2, 0x70, 0x8d, 0x0d, 0x55, 0x48, 0xde, 0x6b, 0x55, 0xd8, 0xcd, 0xce, 0x84, 0x0a, 0xc5, 0xc1, - 0xd5, 0x1b, 0xd8, 0xa5, 0x6a, 0x07, 0x04, 0xa3, 0x4f, 0xa1, 0x50, 0x50, 0x6e, 0x4e, 0x21, 0x95, - 0x1e, 0x3c, 0x4d, 0xab, 0x53, 0xd3, 0x28, 0x28, 0x28, 0x88, 0x10, 0x81, 0x2e, 0x1e, 0xbf, 0x2e, - 0x09, 0x33, 0x20, 0x57, 0x3c, 0x4b, 0x8e, 0xe2, 0x18, 0x15, 0xa4, 0xc7, 0x31, 0xcc, 0x45, 0x9b, - 0xdd, 0xa0, 0x5e, 0xaf, 0xa7, 0xa6, 0xc7, 0x83, 0x74, 0xe3, 0x12, 0x51, 0xdd, 0xf9, 0x01, 0xba, - 0x7b, 0x93, 0xa8, 0xe5, 0xf9, 0x07, 0xd2, 0x6a, 0xb5, 0xbc, 0x00, 0x23, 0x7c, 0x9d, 0xde, 0x1b, - 0xe5, 0xd6, 0xde, 0x24, 0xd8, 0xac, 0xe4, 0x19, 0x92, 0xa0, 0x15, 0x9f, 0x06, 0x10, 0x86, 0x1e, - 0xa5, 0x52, 0x49, 0xcd, 0xcd, 0xcd, 0xd4, 0xfd, 0x8d, 0xa8, 0xe1, 0xe2, 0x30, 0xc5, 0xcc, 0xd7, - 0x50, 0x48, 0x48, 0x38, 0x95, 0x97, 0x3c, 0x62, 0x30, 0x91, 0xd5, 0x6a, 0x25, 0x9d, 0x4e, 0xe7, - 0x1b, 0x66, 0xc0, 0x4a, 0x47, 0x79, 0xf7, 0xbe, 0xf4, 0x06, 0x45, 0x5f, 0xb6, 0xf2, 0x62, 0xca, - 0xc8, 0xc8, 0x20, 0x9b, 0xcd, 0x46, 0x1d, 0xed, 0x44, 0x57, 0x6a, 0xfa, 0x29, 0x3c, 0x6c, 0xba, - 0xdd, 0x28, 0xe5, 0x65, 0x9f, 0xa1, 0xc6, 0x3b, 0x24, 0x7c, 0x2c, 0x16, 0x0b, 0xc9, 0x64, 0x32, - 0x62, 0xc7, 0x7e, 0x72, 0xcd, 0x19, 0x46, 0xd9, 0xd9, 0x62, 0xfe, 0x1b, 0x97, 0xaa, 0xba, 0xa1, - 0x3f, 0x88, 0x8b, 0x7b, 0x02, 0xb9, 0xdc, 0xaa, 0xd1, 0x68, 0xa8, 0xb5, 0xb5, 0x8d, 0xee, 0xdf, - 0x22, 0x3a, 0x75, 0xbc, 0x9d, 0xca, 0x8a, 0x1a, 0xa9, 0xbe, 0x76, 0x48, 0x80, 0x9b, 0xcd, 0x66, - 0x0a, 0x0d, 0x0d, 0xe5, 0x5c, 0x45, 0xfc, 0x40, 0x66, 0xe6, 0x55, 0x14, 0x14, 0xd4, 0x48, 0x6b, - 0xd7, 0x39, 0xa8, 0xad, 0x6f, 0x3c, 0x41, 0x4b, 0x29, 0x04, 0x9a, 0xfe, 0x46, 0xa8, 0x6d, 0x9d, - 0x58, 0xde, 0xf1, 0x15, 0x33, 0xd2, 0x07, 0xe4, 0x72, 0x39, 0x15, 0x14, 0xec, 0xa5, 0xfa, 0xba, - 0x17, 0x74, 0xbb, 0xe1, 0x23, 0xd5, 0x5e, 0x30, 0x93, 0x5a, 0xad, 0x16, 0x76, 0x87, 0x48, 0xed, - 0x6f, 0xc4, 0x7f, 0xef, 0x12, 0xe6, 0xfb, 0x94, 0xb5, 0x15, 0x49, 0x34, 0xdb, 0xe3, 0x75, 0xcb, - 0xeb, 0x60, 0x82, 0x0f, 0x1f, 0xd0, 0xc0, 0xea, 0x64, 0xf5, 0xb0, 0xde, 0xb3, 0xea, 0x59, 0x71, - 0xe3, 0x7a, 0xaf, 0x9b, 0x6c, 0xfd, 0x05, 0x75, 0x01, 0x93, 0x9f, 0x54, 0x68, 0xdb, 0xaa, 0x00, - 0x00, 0x00, 0x00, 0x49, 0x45, 0x4e, 0x44, 0xae, 0x42, 0x60, 0x82, + 0xce, 0x00, 0x00, 0x02, 0x27, 0x49, 0x44, 0x41, 0x54, 0x48, 0xc7, 0xbd, 0x96, 0xcb, 0x6b, 0x13, + 0x51, 0x14, 0x87, 0x3f, 0x1a, 0x8d, 0x22, 0x56, 0xa8, 0x2e, 0x74, 0xd1, 0x85, 0x08, 0x85, 0xfa, + 0xe8, 0xa2, 0x93, 0xc9, 0x43, 0xbb, 0x52, 0xa1, 0xbe, 0xa8, 0x56, 0x69, 0x7c, 0x20, 0x96, 0x8a, + 0x0f, 0x5a, 0xdb, 0x50, 0x9a, 0xda, 0x50, 0x93, 0x7b, 0x87, 0xbb, 0x11, 0xb7, 0x8a, 0xff, 0x85, + 0x3b, 0x11, 0xdc, 0xaa, 0x7f, 0x80, 0xa2, 0xe0, 0xc2, 0x2e, 0x2b, 0xee, 0x7c, 0x6c, 0x8a, 0x50, + 0x5b, 0xed, 0x71, 0x31, 0xd7, 0x64, 0x86, 0xc4, 0x74, 0xa2, 0x93, 0x2e, 0x7e, 0xcc, 0xdc, 0x99, + 0x3b, 0xf7, 0x3b, 0xf7, 0x9c, 0xdf, 0xb9, 0x0c, 0x22, 0xc2, 0x46, 0xa8, 0x76, 0xe3, 0xca, 0x28, + 0x29, 0x79, 0x18, 0xab, 0x1c, 0x29, 0x83, 0x74, 0x54, 0x41, 0xa4, 0x65, 0x1f, 0xee, 0xaf, 0x55, + 0x4e, 0x3e, 0x7f, 0x11, 0xab, 0x32, 0x4b, 0xdf, 0x70, 0xe4, 0x7c, 0x0d, 0x94, 0x92, 0x5e, 0xdc, + 0x95, 0xef, 0x28, 0xe6, 0x42, 0xd2, 0xdc, 0x41, 0x71, 0x16, 0x4d, 0x16, 0x4d, 0x1a, 0xcd, 0x45, + 0x34, 0xc5, 0xba, 0x79, 0x7f, 0xd3, 0xc0, 0xc7, 0x0f, 0xb8, 0x72, 0xb9, 0x39, 0xc8, 0xe3, 0x04, + 0x86, 0x64, 0x5d, 0xae, 0x0d, 0x49, 0x0c, 0x99, 0x88, 0xa0, 0x85, 0xe6, 0x20, 0x4d, 0xff, 0xba, + 0xc5, 0xd5, 0xa4, 0xff, 0x17, 0x34, 0x12, 0x8a, 0xde, 0xe3, 0x38, 0x1e, 0xb7, 0xd0, 0x4c, 0xa1, + 0xb8, 0xc0, 0x3d, 0x76, 0x05, 0xde, 0x3b, 0x78, 0x0c, 0xe1, 0x31, 0x84, 0x62, 0xa6, 0x35, 0xd0, + 0x3c, 0x5d, 0x22, 0x02, 0x79, 0x12, 0x68, 0xc6, 0x1a, 0x44, 0x3a, 0x13, 0x84, 0x05, 0xa0, 0x87, + 0x5a, 0x01, 0x4d, 0x06, 0x52, 0x93, 0xb2, 0x1f, 0xcc, 0xe2, 0x71, 0xd4, 0x8e, 0x27, 0x50, 0x94, + 0xd1, 0x4c, 0x63, 0xe8, 0xad, 0xca, 0x82, 0x51, 0x0c, 0x46, 0x05, 0xd5, 0xd2, 0xa6, 0x18, 0xb6, + 0xa6, 0x38, 0x17, 0x80, 0xf7, 0xa1, 0xb8, 0x8f, 0xe6, 0x29, 0x15, 0x4a, 0x21, 0x77, 0x1a, 0xb6, + 0xf3, 0x84, 0x04, 0x15, 0xae, 0xb5, 0x0f, 0xe4, 0xcf, 0xbb, 0x4a, 0x9e, 0x04, 0x86, 0x1d, 0xb6, + 0x9e, 0x31, 0xa4, 0x4e, 0x51, 0x40, 0xd1, 0x83, 0xa2, 0x27, 0xb4, 0x03, 0xc5, 0xa0, 0xad, 0xd7, + 0x5e, 0x34, 0x77, 0x19, 0x58, 0x8c, 0x60, 0x06, 0x43, 0x07, 0x9a, 0xd1, 0xba, 0x02, 0x7b, 0x4c, + 0x63, 0xd8, 0x59, 0x0d, 0xa8, 0x44, 0xa7, 0x6d, 0xec, 0x3f, 0x69, 0xec, 0xb3, 0x81, 0x1e, 0x6e, + 0x0e, 0xf2, 0xc8, 0x57, 0x17, 0xb9, 0xcd, 0x66, 0x14, 0xc7, 0x42, 0xf6, 0x7e, 0xe0, 0x07, 0x62, + 0x83, 0xd9, 0x63, 0xaf, 0xdd, 0x28, 0x66, 0x2d, 0xa8, 0x58, 0x7d, 0x9e, 0xfb, 0xfc, 0xae, 0x79, + 0xc3, 0x56, 0x70, 0x23, 0x34, 0xac, 0x9f, 0x5a, 0xc3, 0x01, 0x3b, 0xee, 0x0f, 0xec, 0x6a, 0x1c, + 0xc3, 0x36, 0x52, 0x6b, 0xaf, 0xa2, 0x1c, 0x41, 0x67, 0x28, 0xb0, 0xa5, 0x41, 0xbf, 0x6c, 0x42, + 0x93, 0x0d, 0x2c, 0x5a, 0xc4, 0xd0, 0x2d, 0x22, 0xe0, 0x71, 0x2a, 0xf0, 0xfd, 0x25, 0x52, 0x6b, + 0x2f, 0xd7, 0x07, 0xf9, 0x8b, 0x4c, 0xa1, 0x18, 0xa6, 0x42, 0x0e, 0x83, 0x8b, 0x62, 0x04, 0xaf, + 0xc1, 0x09, 0xa0, 0x28, 0x30, 0x4f, 0x57, 0x9d, 0xbd, 0x73, 0x5f, 0xde, 0x46, 0x03, 0xb5, 0x22, + 0xcd, 0x4d, 0x0c, 0x5b, 0x29, 0xd1, 0x89, 0x62, 0xd2, 0xb7, 0xf7, 0xe2, 0x42, 0xfc, 0x20, 0xbf, + 0xb6, 0x57, 0x6c, 0x2f, 0xf9, 0xe6, 0x68, 0x1b, 0xc8, 0xd7, 0x69, 0x11, 0x81, 0x32, 0x4e, 0xbb, + 0x41, 0x73, 0x54, 0x38, 0xe2, 0xdb, 0xfb, 0xeb, 0x9b, 0xf6, 0x82, 0x7c, 0xed, 0xc7, 0x91, 0x46, + 0xae, 0xfb, 0xb9, 0xcc, 0xd8, 0xf5, 0xc7, 0xf1, 0xe9, 0xc6, 0x23, 0xdc, 0x1f, 0xef, 0xc3, 0xa0, + 0x83, 0x92, 0x24, 0xb3, 0xf4, 0x8c, 0xf4, 0xca, 0xa7, 0x7f, 0xd7, 0x6a, 0x03, 0x2d, 0xbf, 0x26, + 0x2b, 0xbb, 0x43, 0xbf, 0x5b, 0x1b, 0xf6, 0x5f, 0xd7, 0x6e, 0xfd, 0x06, 0x82, 0x7e, 0x65, 0xf0, + 0xeb, 0x19, 0x47, 0xc6, 0x00, 0x00, 0x00, 0x00, 0x49, 0x45, 0x4e, 0x44, 0xae, 0x42, 0x60, 0x82, }; const BITMAP_OPAQUE show_zone_outline_only_xpm[1] = {{ png, sizeof( png ), "show_zone_outline_only_xpm" }}; diff --git a/bitmaps_png/cpp_26/showtrack.cpp b/bitmaps_png/cpp_26/showtrack.cpp index eeaabc5bde..43d2dbdbbe 100644 --- a/bitmaps_png/cpp_26/showtrack.cpp +++ b/bitmaps_png/cpp_26/showtrack.cpp @@ -8,54 +8,38 @@ static const unsigned char png[] = { 0x89, 0x50, 0x4e, 0x47, 0x0d, 0x0a, 0x1a, 0x0a, 0x00, 0x00, 0x00, 0x0d, 0x49, 0x48, 0x44, 0x52, 0x00, 0x00, 0x00, 0x1a, 0x00, 0x00, 0x00, 0x1a, 0x08, 0x06, 0x00, 0x00, 0x00, 0xa9, 0x4a, 0x4c, - 0xce, 0x00, 0x00, 0x02, 0xda, 0x49, 0x44, 0x41, 0x54, 0x48, 0xc7, 0xd5, 0x96, 0x5f, 0x48, 0x14, - 0x51, 0x14, 0xc6, 0xef, 0xba, 0x26, 0xeb, 0xff, 0x5a, 0x30, 0xd2, 0x08, 0x57, 0x44, 0x14, 0x97, - 0x99, 0xd9, 0x58, 0x77, 0xed, 0x29, 0x37, 0x8c, 0xa0, 0x08, 0x97, 0x8c, 0x92, 0x8a, 0x10, 0x0b, - 0x2a, 0x34, 0x14, 0x0b, 0x29, 0xc8, 0x22, 0xa8, 0x87, 0x08, 0x2b, 0xa1, 0x12, 0xcb, 0x7c, 0x50, - 0xcb, 0x64, 0x33, 0x7a, 0x10, 0xa9, 0xe8, 0xc1, 0xc5, 0x0a, 0x5d, 0x48, 0x34, 0xf3, 0xcf, 0xda, - 0x6a, 0x05, 0x49, 0x68, 0x26, 0x59, 0x48, 0xa1, 0xab, 0x7e, 0x9d, 0x3b, 0xdc, 0xa2, 0x87, 0xd4, - 0xd4, 0x29, 0xea, 0xc0, 0x07, 0xf3, 0xdd, 0x99, 0x73, 0x7f, 0x73, 0xcf, 0xb9, 0x73, 0x19, 0x06, - 0x80, 0xfd, 0x0d, 0xb1, 0xff, 0x02, 0xc4, 0x4e, 0xb3, 0x10, 0x92, 0x85, 0x15, 0xb3, 0x04, 0xd5, - 0x17, 0xb2, 0x60, 0xe1, 0x13, 0xb5, 0x05, 0x9d, 0x60, 0xeb, 0xd8, 0x49, 0x06, 0x52, 0xab, 0x00, - 0x5b, 0x84, 0xef, 0x98, 0x15, 0xd4, 0x2b, 0x49, 0xe5, 0xbd, 0xb2, 0x3c, 0x34, 0xab, 0x14, 0xe5, - 0xa2, 0x26, 0x20, 0xaf, 0x2c, 0xd7, 0xd1, 0x84, 0x98, 0x43, 0x5f, 0xfb, 0x65, 0x79, 0xe5, 0x92, - 0x41, 0x73, 0x89, 0x5e, 0xa2, 0x91, 0xc3, 0x7a, 0x14, 0xe5, 0xcc, 0x92, 0x41, 0x03, 0x56, 0x6b, - 0x64, 0xb7, 0xd9, 0xbc, 0xea, 0x67, 0x75, 0x4a, 0xd2, 0x0a, 0x51, 0xd6, 0x34, 0xb1, 0xaa, 0xd1, - 0xe7, 0xb2, 0x1c, 0xfa, 0x27, 0x4a, 0x37, 0xe6, 0x4d, 0x4c, 0x0c, 0xe7, 0xf7, 0x7b, 0x64, 0xd9, - 0xc3, 0xc7, 0xe8, 0xb9, 0x82, 0xa5, 0x81, 0x14, 0xe5, 0x1c, 0x35, 0xbc, 0xe3, 0x87, 0x64, 0x79, - 0x44, 0x85, 0x29, 0xca, 0x51, 0x75, 0x55, 0xb2, 0xbc, 0x5d, 0xc0, 0xdf, 0x34, 0x39, 0x1c, 0x81, - 0x9a, 0xf5, 0xc8, 0x2b, 0x49, 0x4e, 0x31, 0xf1, 0xdb, 0x67, 0x56, 0xeb, 0x32, 0x7a, 0x34, 0x80, - 0xa0, 0x3e, 0x75, 0x4c, 0x92, 0x76, 0x6b, 0xb7, 0x19, 0x18, 0xd3, 0xd1, 0xa4, 0xbd, 0x02, 0x96, - 0x2d, 0x56, 0x7d, 0x48, 0x94, 0xaf, 0x5d, 0xd3, 0x5d, 0x47, 0x7d, 0xd9, 0x2f, 0x40, 0x5d, 0x1c, - 0xfc, 0xda, 0x64, 0x32, 0xd0, 0xf5, 0xb0, 0x28, 0xe9, 0x26, 0xcd, 0x40, 0xb4, 0xf3, 0x82, 0xa8, - 0x4c, 0xef, 0xd4, 0xad, 0x2d, 0x49, 0x5b, 0x44, 0x49, 0x8b, 0x05, 0xfc, 0x91, 0xa6, 0xdf, 0x11, - 0x01, 0x8e, 0x89, 0x89, 0xdd, 0x02, 0x6e, 0xa4, 0xeb, 0x71, 0x3e, 0xd6, 0x92, 0x62, 0xf6, 0x54, - 0x6c, 0x8c, 0xc3, 0x2d, 0x47, 0xfc, 0x18, 0xf9, 0x07, 0x9e, 0x14, 0xf3, 0x53, 0xee, 0x6b, 0x36, - 0xc4, 0x7f, 0xe6, 0x9e, 0x4a, 0x5c, 0xf1, 0xdb, 0x20, 0xfe, 0x7d, 0x51, 0x12, 0x4f, 0x44, 0x9f, - 0xa2, 0xd8, 0x45, 0x49, 0x4b, 0xe7, 0x39, 0x45, 0xbe, 0xcb, 0xbb, 0xa0, 0x93, 0x81, 0x12, 0x4a, - 0x44, 0x62, 0x3d, 0xf7, 0xbe, 0xd4, 0xd4, 0x88, 0x6e, 0x8b, 0xc5, 0x92, 0xbf, 0x23, 0x7a, 0x6f, - 0x52, 0x7e, 0x30, 0xd6, 0xe6, 0x85, 0x76, 0x72, 0x5f, 0x94, 0x19, 0x93, 0xc5, 0xbd, 0x92, 0x17, - 0xda, 0xc7, 0x7d, 0x9f, 0x24, 0x25, 0xcd, 0x0b, 0xa2, 0x08, 0x27, 0x65, 0x92, 0xae, 0x44, 0xe8, - 0xf5, 0xb5, 0xfb, 0xa2, 0xa2, 0xa6, 0xcb, 0x4c, 0xa6, 0x99, 0xf6, 0xe4, 0xe4, 0x04, 0xcd, 0xce, - 0x3a, 0x8a, 0x6d, 0xa4, 0xe1, 0xb0, 0xb0, 0x30, 0xec, 0xca, 0x3a, 0x80, 0xc2, 0xfc, 0x0b, 0x48, - 0x5b, 0xef, 0x80, 0x4e, 0xa7, 0x43, 0x82, 0xc1, 0x30, 0x55, 0x1a, 0x1b, 0xfb, 0x91, 0x9f, 0xe8, - 0x2f, 0x14, 0x69, 0xf4, 0x89, 0x2d, 0x19, 0xad, 0x29, 0xe6, 0x49, 0xee, 0xbb, 0x2c, 0xd2, 0x07, - 0xee, 0xa9, 0x77, 0x7e, 0xee, 0xa9, 0xc4, 0x8f, 0x7f, 0x09, 0xa2, 0x30, 0x92, 0x6a, 0xf9, 0x84, - 0xb9, 0xb9, 0xb9, 0x68, 0x7a, 0x38, 0x89, 0x9a, 0xeb, 0x40, 0xe5, 0xd5, 0x2f, 0xa8, 0xbf, 0x09, - 0x78, 0x5a, 0xfa, 0x91, 0x9e, 0x9e, 0x0e, 0x1d, 0xa5, 0x9d, 0x5a, 0xbd, 0x7a, 0x71, 0x3d, 0xa2, - 0x88, 0x26, 0xbd, 0x34, 0x1a, 0x8d, 0x68, 0x6e, 0x6e, 0xc6, 0xfb, 0x21, 0xa0, 0xfa, 0xda, 0x34, - 0xe2, 0xe3, 0xec, 0x08, 0x0a, 0x0a, 0x41, 0x51, 0xc1, 0x7d, 0x02, 0x03, 0x13, 0x13, 0x13, 0x70, - 0x3a, 0x9d, 0x3c, 0x61, 0x86, 0xad, 0x61, 0xe7, 0x17, 0x5c, 0x3a, 0x8a, 0x6c, 0x12, 0x32, 0x32, - 0x32, 0xe0, 0xf7, 0xfb, 0xf1, 0xca, 0x07, 0xdc, 0xb8, 0x3c, 0x8e, 0x90, 0xe0, 0x48, 0x7e, 0x13, - 0x7b, 0x76, 0x5e, 0x42, 0xc3, 0x1d, 0xa8, 0xe1, 0x76, 0xbb, 0x11, 0x10, 0x10, 0x00, 0x16, 0xc8, - 0x06, 0xd9, 0xf1, 0x45, 0xf4, 0x48, 0xc0, 0x3e, 0xd9, 0xed, 0x76, 0xb4, 0xb5, 0xb5, 0xe3, 0xde, - 0x6d, 0xa0, 0xe4, 0xac, 0x0f, 0x47, 0x0e, 0x37, 0xa0, 0xaa, 0x7c, 0x4a, 0x85, 0xbb, 0x5c, 0x2e, - 0x18, 0x0c, 0x06, 0xfe, 0x70, 0x27, 0x6d, 0x95, 0xad, 0x8b, 0xde, 0x0c, 0x14, 0x31, 0xa4, 0xbb, - 0x7a, 0xbd, 0x1e, 0x39, 0x39, 0x07, 0x51, 0x55, 0xd9, 0x8a, 0xba, 0xea, 0x01, 0x94, 0x97, 0xb9, - 0x60, 0xb3, 0xd9, 0xd4, 0xd5, 0x91, 0x1a, 0x49, 0xcb, 0x35, 0xf9, 0x39, 0xa1, 0xd8, 0x4c, 0xaa, - 0x26, 0x0d, 0x92, 0x46, 0x78, 0xff, 0x48, 0x55, 0x24, 0xcb, 0x3f, 0xfd, 0x5f, 0xf7, 0x0d, 0x6d, - 0xa7, 0x1b, 0x71, 0x83, 0x5a, 0x52, 0x3a, 0x00, 0x00, 0x00, 0x00, 0x49, 0x45, 0x4e, 0x44, 0xae, - 0x42, 0x60, 0x82, + 0xce, 0x00, 0x00, 0x01, 0xdb, 0x49, 0x44, 0x41, 0x54, 0x48, 0xc7, 0x63, 0xf8, 0xff, 0xff, 0x3f, + 0x03, 0x3d, 0x30, 0xc3, 0x90, 0xb0, 0x88, 0xa1, 0x81, 0x81, 0x0b, 0x88, 0x0d, 0x18, 0x6a, 0x18, + 0x54, 0xc1, 0xfc, 0x42, 0x06, 0x4e, 0x28, 0x5f, 0x9d, 0xba, 0x16, 0x55, 0x33, 0x58, 0x30, 0xd4, + 0x32, 0xfc, 0x07, 0xe2, 0x13, 0x50, 0x8b, 0x0d, 0xa0, 0xfc, 0x0b, 0x38, 0x2d, 0xba, 0xae, 0xab, + 0x3b, 0xe3, 0xba, 0x9e, 0xde, 0x0b, 0x9c, 0x58, 0x5f, 0xbf, 0x8f, 0x2a, 0x16, 0xdd, 0xd0, 0xd3, + 0x5b, 0x01, 0x34, 0xf0, 0x3f, 0x1e, 0xfc, 0xfd, 0x8e, 0x9e, 0x9e, 0x18, 0xc5, 0x16, 0xe1, 0xc3, + 0x40, 0x47, 0x6c, 0x05, 0x59, 0x76, 0x4d, 0x5f, 0xbf, 0x99, 0x62, 0x8b, 0xee, 0x1a, 0x1b, 0xf3, + 0x5f, 0xd5, 0xd6, 0x96, 0x40, 0xc6, 0x97, 0x74, 0x75, 0x05, 0xa1, 0xc1, 0x6a, 0x0f, 0xf5, 0xd5, + 0xdb, 0x8b, 0x7a, 0x7a, 0xdc, 0xb4, 0x08, 0xba, 0x0f, 0x37, 0xd4, 0xd5, 0x79, 0x41, 0xf2, 0xd7, + 0xf4, 0xf4, 0x4e, 0x82, 0xc4, 0x80, 0xea, 0xf2, 0x29, 0xb3, 0x48, 0x5f, 0xbf, 0x03, 0x18, 0xe1, + 0x17, 0xe0, 0x58, 0x4f, 0xef, 0x35, 0xd8, 0x32, 0x7d, 0xfd, 0x62, 0xb0, 0xaf, 0xf4, 0xf4, 0x82, + 0xa1, 0x96, 0x3f, 0xd8, 0xef, 0xe0, 0xc0, 0x42, 0xb5, 0x38, 0xba, 0xa1, 0xab, 0xeb, 0x0f, 0x35, + 0xf8, 0xf1, 0x19, 0x63, 0x63, 0x56, 0xa0, 0x52, 0x26, 0xa0, 0xa5, 0xb7, 0xc1, 0x62, 0xba, 0xba, + 0x51, 0xd4, 0x4b, 0x0c, 0x0c, 0x0c, 0x8c, 0x40, 0x43, 0xaf, 0x43, 0x2d, 0x8b, 0x87, 0xfa, 0x3a, + 0x03, 0x1a, 0x7c, 0xe7, 0xa9, 0x9a, 0xea, 0x80, 0xf1, 0x92, 0x0c, 0xb5, 0xe8, 0x0a, 0xc8, 0xe2, + 0xfb, 0x0a, 0x0a, 0x1c, 0x40, 0xf6, 0x4b, 0x68, 0x90, 0xba, 0x51, 0xcd, 0x22, 0x60, 0xca, 0x63, + 0x03, 0x06, 0xd3, 0x33, 0x70, 0xd2, 0xd6, 0xd5, 0xf5, 0x82, 0x06, 0x69, 0x0d, 0xd4, 0xf2, 0xdd, + 0x54, 0xcd, 0x47, 0x40, 0x0b, 0xca, 0xa1, 0x06, 0x1f, 0x80, 0x5a, 0x2e, 0x04, 0x64, 0x7f, 0x01, + 0x89, 0x1d, 0x37, 0xd1, 0x3e, 0x39, 0xdb, 0x45, 0xf1, 0xff, 0x52, 0x07, 0xe5, 0x0f, 0x40, 0xfe, + 0x8e, 0x93, 0x26, 0xda, 0x47, 0x41, 0xfc, 0xc5, 0x8e, 0xca, 0x9f, 0x40, 0x7c, 0x60, 0x10, 0xcf, + 0x26, 0xda, 0x22, 0x50, 0xfe, 0x02, 0x6a, 0x02, 0x69, 0xfc, 0x7f, 0x53, 0x5f, 0xdf, 0x0c, 0x1a, + 0xa4, 0x13, 0x08, 0x94, 0x22, 0x30, 0x7c, 0x83, 0xa4, 0x92, 0x01, 0xa8, 0xa1, 0x07, 0xaa, 0x71, + 0x0d, 0x88, 0x7f, 0xdb, 0xdc, 0x9c, 0xef, 0xaa, 0x81, 0x81, 0x41, 0x5e, 0xa8, 0x64, 0xac, 0x46, + 0x1e, 0xe7, 0x7f, 0xc3, 0x6c, 0xee, 0x4b, 0x20, 0x7e, 0x69, 0x90, 0x54, 0x38, 0x88, 0xaf, 0x9f, + 0xcd, 0x7d, 0x13, 0xc4, 0xbf, 0xa9, 0xab, 0xab, 0x41, 0x92, 0x45, 0xb7, 0xf5, 0xf4, 0x64, 0x80, + 0x96, 0xfc, 0x02, 0xe2, 0xbf, 0xc0, 0xa0, 0x53, 0xa1, 0x59, 0x59, 0x07, 0xf5, 0xd5, 0x02, 0x68, + 0x1e, 0xfa, 0x08, 0x2b, 0xd1, 0x2f, 0xeb, 0xeb, 0xbe, 0x3d, 0x62, 0xaa, 0xf5, 0xff, 0x84, 0x89, + 0x36, 0xc8, 0x11, 0x2f, 0xae, 0x18, 0xe8, 0xbe, 0x01, 0xf1, 0x81, 0x71, 0xf7, 0x1b, 0xc4, 0x07, + 0x06, 0xf1, 0x61, 0x92, 0x2d, 0xba, 0xaa, 0xaf, 0xaf, 0x0d, 0xd4, 0xfc, 0x8f, 0xc8, 0xb8, 0x21, + 0x2f, 0x8e, 0xa8, 0x5a, 0xf1, 0x8d, 0x5a, 0x44, 0xd7, 0xc6, 0xc9, 0xa0, 0x6c, 0xd7, 0x01, 0x00, + 0x4a, 0x98, 0x73, 0x71, 0x38, 0xc9, 0x99, 0xbf, 0x00, 0x00, 0x00, 0x00, 0x49, 0x45, 0x4e, 0x44, + 0xae, 0x42, 0x60, 0x82, }; const BITMAP_OPAQUE showtrack_xpm[1] = {{ png, sizeof( png ), "showtrack_xpm" }}; diff --git a/bitmaps_png/cpp_26/via_sketch.cpp b/bitmaps_png/cpp_26/via_sketch.cpp index 4aa76d5324..429945b0bd 100644 --- a/bitmaps_png/cpp_26/via_sketch.cpp +++ b/bitmaps_png/cpp_26/via_sketch.cpp @@ -8,88 +8,73 @@ static const unsigned char png[] = { 0x89, 0x50, 0x4e, 0x47, 0x0d, 0x0a, 0x1a, 0x0a, 0x00, 0x00, 0x00, 0x0d, 0x49, 0x48, 0x44, 0x52, 0x00, 0x00, 0x00, 0x1a, 0x00, 0x00, 0x00, 0x1a, 0x08, 0x06, 0x00, 0x00, 0x00, 0xa9, 0x4a, 0x4c, - 0xce, 0x00, 0x00, 0x05, 0x05, 0x49, 0x44, 0x41, 0x54, 0x48, 0xc7, 0x9d, 0x56, 0x6b, 0x4c, 0x14, - 0x57, 0x14, 0xbe, 0x02, 0xfb, 0xca, 0xb2, 0xbb, 0x33, 0xbb, 0x0b, 0xcb, 0xee, 0xcc, 0x6c, 0xa0, - 0x40, 0x44, 0x81, 0xa5, 0x80, 0xb2, 0x46, 0x45, 0x68, 0x0a, 0x42, 0x43, 0x4c, 0xd3, 0xa4, 0x3f, - 0x08, 0x92, 0x08, 0x6d, 0x63, 0x83, 0x10, 0xb1, 0x50, 0x82, 0xb2, 0x26, 0x52, 0x43, 0x15, 0x1a, - 0x5b, 0x9e, 0xcb, 0x63, 0x51, 0x6a, 0x1b, 0x6a, 0x13, 0xc4, 0x06, 0x02, 0xad, 0x14, 0x53, 0x82, - 0xa9, 0x34, 0x4d, 0x34, 0x58, 0x22, 0x25, 0x55, 0x4b, 0xfd, 0x61, 0xd3, 0x44, 0xdb, 0xa2, 0x42, - 0x1f, 0x3c, 0x0c, 0xa7, 0xe7, 0x5e, 0x19, 0x5c, 0x2d, 0xa0, 0x30, 0xc9, 0x97, 0x99, 0x7b, 0xee, - 0xcc, 0xf9, 0xee, 0xfd, 0xce, 0xb9, 0xe7, 0x0c, 0x01, 0x00, 0xb2, 0x1a, 0xe8, 0x1a, 0x04, 0x93, - 0xb1, 0x51, 0x4a, 0xe3, 0x9b, 0xa5, 0x43, 0x7c, 0x8b, 0xf4, 0x39, 0xef, 0x16, 0xdc, 0x5c, 0x83, - 0x2d, 0x87, 0xaf, 0x13, 0xa3, 0x49, 0x32, 0xf1, 0x23, 0x84, 0xac, 0x5b, 0xea, 0xbb, 0xe7, 0x26, - 0x20, 0x1d, 0x91, 0x4a, 0xa3, 0xc7, 0xfe, 0x1e, 0xdf, 0x2a, 0xcd, 0xf2, 0x1e, 0x69, 0x86, 0xab, - 0x15, 0x6e, 0x18, 0x8e, 0x06, 0x0d, 0x18, 0x8e, 0x5b, 0x87, 0x39, 0xb7, 0x38, 0x81, 0x76, 0xe0, - 0xea, 0xc4, 0x6b, 0xba, 0xc2, 0x80, 0xed, 0x48, 0xe6, 0xbb, 0x26, 0x22, 0xc3, 0x29, 0x69, 0x13, - 0x3a, 0x1f, 0xe5, 0x9a, 0xc5, 0x3b, 0x9a, 0x6c, 0xbe, 0x92, 0xa8, 0xc8, 0x2b, 0xe8, 0x2c, 0x0e, - 0xf1, 0x02, 0x22, 0x10, 0x11, 0xac, 0x4a, 0xd4, 0xa6, 0x19, 0xaa, 0xac, 0x83, 0x7c, 0x8b, 0x38, - 0x67, 0xa8, 0xb0, 0x36, 0x91, 0x18, 0xa2, 0x5d, 0x15, 0x91, 0xf9, 0x94, 0x64, 0xc3, 0xd5, 0xde, - 0xc3, 0x95, 0x7f, 0xed, 0x6b, 0x55, 0x66, 0xa3, 0xd3, 0x8d, 0x08, 0x15, 0x5d, 0x35, 0xc2, 0x87, - 0x4a, 0xb5, 0x70, 0xa7, 0x63, 0xa5, 0xbe, 0x34, 0x20, 0x9f, 0x6f, 0x16, 0xa7, 0x74, 0xa5, 0x96, - 0x36, 0x1c, 0xfb, 0x3f, 0x37, 0x11, 0x92, 0x9c, 0xe7, 0xea, 0x85, 0x61, 0x74, 0xf3, 0x2a, 0x7e, - 0x68, 0xf6, 0x96, 0x85, 0x6f, 0x12, 0x1d, 0x24, 0x9e, 0x28, 0x28, 0xd1, 0xa2, 0x43, 0x7c, 0xd6, - 0x7f, 0x60, 0xcd, 0xe6, 0x3d, 0xe2, 0x9c, 0x3a, 0x43, 0x4f, 0x17, 0xa6, 0x78, 0x82, 0xc8, 0x6b, - 0x65, 0x8b, 0xe0, 0x9a, 0xa5, 0x1c, 0x94, 0xec, 0x1f, 0xc5, 0x26, 0x4d, 0x01, 0x8e, 0x43, 0x11, - 0x7e, 0x64, 0x7f, 0xb8, 0x8a, 0x6b, 0xb1, 0xef, 0xc1, 0x44, 0x18, 0xa1, 0x71, 0xe1, 0x1b, 0xc5, - 0x5f, 0x51, 0x32, 0x97, 0x21, 0xdf, 0xc0, 0xcb, 0x89, 0xc0, 0xbe, 0xad, 0x13, 0xce, 0x72, 0x35, - 0xc2, 0x2d, 0x2a, 0x2b, 0xf3, 0x47, 0x27, 0x66, 0x08, 0x59, 0x7f, 0x8f, 0x90, 0xda, 0x3b, 0x84, - 0xb8, 0xbd, 0x91, 0x7c, 0xc8, 0x32, 0xbe, 0x2b, 0xcf, 0xfc, 0xf3, 0x15, 0x4c, 0x85, 0xdf, 0x08, - 0x69, 0xa2, 0xb6, 0xac, 0xb7, 0x4d, 0xc3, 0x8c, 0x00, 0x21, 0x35, 0xda, 0x67, 0xe4, 0x67, 0x94, - 0xf6, 0xdb, 0x85, 0x78, 0x31, 0x32, 0xc3, 0x09, 0x7b, 0x28, 0xb5, 0x2b, 0xe2, 0xb5, 0x7b, 0xe8, - 0xae, 0x18, 0xd1, 0xdf, 0x84, 0x64, 0xb0, 0xcd, 0x3d, 0x85, 0xe8, 0x2a, 0x1b, 0x9c, 0xd9, 0xaa, - 0x5d, 0x1c, 0x4f, 0x2b, 0xd6, 0x41, 0x68, 0xb5, 0x00, 0x66, 0x8f, 0x04, 0x31, 0x97, 0x77, 0xc0, - 0x96, 0xeb, 0xe9, 0x10, 0x7b, 0xf5, 0x25, 0x30, 0x7f, 0x12, 0x0c, 0x28, 0xd5, 0x43, 0xe5, 0x8b, - 0x9a, 0xd7, 0xe9, 0xae, 0x65, 0x85, 0x70, 0xd7, 0x7f, 0x68, 0xb3, 0x8d, 0x35, 0xf8, 0xac, 0x5d, - 0x96, 0xe8, 0xae, 0xce, 0x97, 0xad, 0xf4, 0xba, 0x55, 0xb1, 0x68, 0x6b, 0xdf, 0xa6, 0x65, 0xb6, - 0xc4, 0x9a, 0x10, 0x46, 0x22, 0x23, 0xac, 0x2f, 0x96, 0xd9, 0x75, 0xc5, 0x81, 0xe7, 0xd0, 0xa9, - 0x41, 0x0e, 0x07, 0xd7, 0x22, 0xf5, 0xeb, 0x5c, 0x96, 0x1e, 0xb4, 0x09, 0xcb, 0x12, 0xfd, 0xe9, - 0xef, 0xc3, 0x3e, 0x1e, 0x13, 0x1e, 0x13, 0xf5, 0xc6, 0x6a, 0x98, 0x2d, 0xa1, 0x36, 0xf8, 0x09, - 0xa2, 0x90, 0x2f, 0x63, 0x98, 0x5d, 0x9b, 0x67, 0xfe, 0x0c, 0x9d, 0x86, 0xcb, 0xc9, 0xc1, 0x79, - 0xa4, 0x0b, 0x3a, 0x57, 0x50, 0x27, 0x8e, 0xd7, 0xaf, 0x28, 0x5d, 0x4c, 0xa5, 0x95, 0xed, 0x42, - 0x1e, 0x3f, 0xc4, 0x90, 0x3a, 0xd0, 0x66, 0x44, 0xa7, 0x1b, 0x2e, 0x3a, 0xc1, 0x39, 0xb6, 0x13, - 0xa2, 0x2e, 0x6d, 0x05, 0x53, 0x1b, 0x4a, 0xd7, 0x2c, 0x4d, 0xfb, 0x5a, 0x14, 0x6f, 0x79, 0xef, - 0x08, 0xc9, 0x27, 0xb4, 0xbb, 0xb9, 0x13, 0x68, 0x13, 0x99, 0x61, 0x88, 0x10, 0xfe, 0x20, 0x21, - 0x7b, 0x31, 0xb5, 0x8a, 0xf2, 0x09, 0x29, 0x96, 0x11, 0x72, 0xc4, 0x32, 0x12, 0x5e, 0x12, 0x70, - 0x79, 0x2f, 0x21, 0xa5, 0xfb, 0x16, 0x6c, 0x71, 0x6f, 0x9a, 0xba, 0xe5, 0x04, 0x30, 0x9e, 0x7c, - 0x74, 0x67, 0xc9, 0xe0, 0xb2, 0x7c, 0x83, 0x0e, 0x93, 0xe5, 0x18, 0x19, 0x3c, 0xd2, 0xa3, 0x64, - 0x88, 0x54, 0xed, 0xa3, 0xe7, 0xc9, 0x3b, 0xbd, 0x95, 0x08, 0xb5, 0x37, 0xb8, 0x6a, 0xdb, 0x1b, - 0xb8, 0xfd, 0x19, 0x75, 0x3a, 0x3b, 0x0f, 0xfe, 0x0b, 0x76, 0xcd, 0xc6, 0xbe, 0x84, 0x5e, 0x7b, - 0x57, 0x14, 0x12, 0xd9, 0x41, 0xec, 0xdc, 0x00, 0x8e, 0xef, 0x13, 0x41, 0x61, 0x54, 0xe4, 0xe2, - 0x9c, 0xfd, 0xb1, 0x6c, 0x62, 0x07, 0xd7, 0x20, 0x8e, 0xe2, 0x38, 0x63, 0x31, 0xeb, 0x96, 0xad, - 0x6f, 0xf4, 0x3c, 0x34, 0x08, 0xfd, 0x5c, 0x8d, 0x6d, 0x9c, 0x58, 0xd4, 0x21, 0xb2, 0x13, 0xe7, - 0x68, 0x5a, 0x03, 0x8d, 0x0d, 0x95, 0x4e, 0x8e, 0x93, 0xd2, 0xac, 0xdc, 0x8d, 0xf3, 0xec, 0x2c, - 0x61, 0x65, 0xc8, 0xc2, 0x05, 0x4e, 0xab, 0xb6, 0x69, 0x0f, 0xc8, 0x31, 0x7b, 0x66, 0x65, 0x30, - 0x1d, 0x93, 0x04, 0xd4, 0xff, 0xbe, 0xbe, 0xd2, 0x36, 0xa4, 0xce, 0x32, 0xd0, 0xda, 0xe6, 0xeb, - 0xfc, 0x31, 0xad, 0xde, 0x3b, 0x19, 0x16, 0x88, 0xb2, 0x70, 0x8e, 0xa3, 0x24, 0x28, 0xd9, 0x03, - 0x5d, 0x49, 0x40, 0x2b, 0x8e, 0x77, 0xfc, 0xaf, 0x32, 0xac, 0x04, 0x7d, 0x45, 0x50, 0x02, 0x9e, - 0xf4, 0x9b, 0x7c, 0x93, 0xf4, 0x40, 0x5f, 0x66, 0x79, 0x27, 0xe1, 0x6a, 0x4a, 0xcb, 0xd3, 0x44, - 0x9a, 0x24, 0x5d, 0x11, 0x56, 0x89, 0xf3, 0x74, 0x27, 0xba, 0x77, 0x03, 0x4f, 0x63, 0xc9, 0xda, - 0x85, 0x24, 0xfa, 0xd5, 0xb7, 0x89, 0x48, 0xe2, 0xaf, 0x2f, 0xb7, 0xd6, 0xe2, 0xd9, 0x98, 0xe5, - 0x5b, 0xed, 0xf3, 0x96, 0x33, 0x61, 0x60, 0xef, 0x8e, 0x02, 0xf1, 0x6c, 0x04, 0x98, 0x3f, 0x0e, - 0x66, 0x09, 0xc1, 0x55, 0x0b, 0x23, 0x8a, 0x78, 0x4d, 0x21, 0x12, 0x6c, 0x66, 0x87, 0xd4, 0xab, - 0x37, 0xad, 0xaa, 0xe9, 0xb1, 0x0a, 0x1d, 0xae, 0x11, 0x22, 0xba, 0x36, 0x5f, 0x88, 0x18, 0x74, - 0x42, 0x48, 0x6f, 0x0c, 0x84, 0xf5, 0xc7, 0x41, 0xd4, 0x77, 0xdb, 0x41, 0x1d, 0xab, 0x2d, 0xc6, - 0xf9, 0x24, 0x84, 0x4d, 0xce, 0xbc, 0x15, 0xdb, 0x04, 0x5e, 0xb4, 0x71, 0xd1, 0xb2, 0xf1, 0x03, - 0x62, 0x04, 0x31, 0x88, 0x28, 0x93, 0x65, 0xa0, 0xab, 0x74, 0x5e, 0xdb, 0xe9, 0x5e, 0x22, 0x46, - 0x34, 0x19, 0x4c, 0xde, 0x95, 0x7c, 0x49, 0x22, 0xea, 0x08, 0x41, 0x03, 0x08, 0x29, 0x29, 0xe9, - 0x50, 0x5f, 0xf3, 0x15, 0x78, 0xdc, 0x43, 0x50, 0x5c, 0x74, 0x18, 0xf4, 0x7a, 0x3d, 0x7d, 0xe1, - 0x3e, 0xa2, 0x84, 0x65, 0xdd, 0x0a, 0xc9, 0xb0, 0x62, 0x2b, 0xc7, 0x2b, 0x05, 0x71, 0xdb, 0x6e, - 0xb7, 0x43, 0x4f, 0x4f, 0x1f, 0x74, 0x7c, 0x0a, 0x50, 0x5b, 0x75, 0x1b, 0x2a, 0x0e, 0x0f, 0x43, - 0x7b, 0x2b, 0xc0, 0xad, 0xf1, 0xbf, 0x20, 0x37, 0x37, 0x97, 0xbe, 0x48, 0x71, 0x7c, 0x4d, 0x44, - 0x78, 0xa5, 0x23, 0x66, 0x93, 0x92, 0x92, 0x60, 0x6a, 0x6a, 0x0a, 0xc6, 0x46, 0x00, 0x1a, 0x3f, - 0xbc, 0x0b, 0x0a, 0x85, 0x9a, 0x39, 0x2e, 0xcc, 0xfb, 0x02, 0x06, 0xfa, 0x00, 0xe6, 0xe7, 0xe7, - 0xa1, 0xa0, 0xa0, 0x80, 0xd9, 0x4c, 0xe9, 0x41, 0x57, 0xd6, 0x42, 0x94, 0x89, 0x98, 0x4b, 0x4d, - 0x4d, 0x85, 0xc9, 0xc9, 0x49, 0xb8, 0xf9, 0x13, 0x40, 0x6b, 0xdd, 0x24, 0x18, 0xf4, 0x41, 0xe0, - 0xe7, 0xa7, 0x04, 0x57, 0xc9, 0x45, 0xb8, 0x34, 0x00, 0xec, 0x2a, 0x2f, 0x2f, 0x67, 0x44, 0xba, - 0x58, 0xee, 0x86, 0x73, 0x2c, 0x6d, 0x4d, 0xd2, 0xbd, 0x8c, 0x18, 0x17, 0x04, 0x01, 0x3a, 0x3a, - 0x3a, 0xa1, 0xf7, 0x1c, 0x40, 0x9b, 0xfb, 0x5f, 0x68, 0xfc, 0xe8, 0x77, 0x26, 0xe3, 0x2f, 0xe3, - 0x13, 0x90, 0x93, 0x93, 0x23, 0x4b, 0xd7, 0xe0, 0xe8, 0xda, 0x12, 0x2d, 0x1d, 0x08, 0x77, 0x89, - 0x05, 0x61, 0x47, 0x64, 0x10, 0xa5, 0xef, 0x6b, 0xb4, 0xa0, 0x3e, 0xf3, 0x77, 0x8b, 0xd6, 0x30, - 0xc4, 0x31, 0x2a, 0xa3, 0xc3, 0xe1, 0x80, 0xb2, 0x83, 0xb5, 0xf0, 0xfe, 0xd1, 0x76, 0xc8, 0xcc, - 0xcc, 0x02, 0x95, 0x4a, 0x45, 0x5f, 0xc0, 0x26, 0x4b, 0xf6, 0x7b, 0xb5, 0x7d, 0xdd, 0x12, 0xf0, - 0x59, 0xf6, 0x68, 0x2c, 0xa1, 0x25, 0x2d, 0x33, 0xb4, 0x46, 0x75, 0x21, 0xba, 0x11, 0xa7, 0x11, - 0xb4, 0x1d, 0x2b, 0x57, 0xfb, 0xb3, 0xe9, 0x8d, 0xff, 0x00, 0xa8, 0x18, 0xc4, 0xe6, 0x5e, 0x14, - 0x0e, 0x90, 0x00, 0x00, 0x00, 0x00, 0x49, 0x45, 0x4e, 0x44, 0xae, 0x42, 0x60, 0x82, + 0xce, 0x00, 0x00, 0x04, 0x0f, 0x49, 0x44, 0x41, 0x54, 0x48, 0xc7, 0xed, 0x55, 0x5d, 0x68, 0x14, + 0x57, 0x14, 0x3e, 0x66, 0x9d, 0xfd, 0x61, 0x32, 0x3b, 0x77, 0x76, 0x37, 0x99, 0xec, 0xce, 0x0f, + 0xd9, 0x26, 0x8b, 0xd1, 0xc4, 0xac, 0x49, 0x34, 0x5b, 0x8c, 0xd1, 0x14, 0x8a, 0xb1, 0x04, 0x29, + 0x85, 0x3e, 0xc5, 0x80, 0x7f, 0xc5, 0xa2, 0x11, 0xb5, 0xa6, 0x92, 0xda, 0x7d, 0xb0, 0x2d, 0xd2, + 0xc6, 0x22, 0xe4, 0xc7, 0xdd, 0x64, 0x77, 0x53, 0x6d, 0x0b, 0xad, 0x05, 0xb5, 0xa0, 0x34, 0xc5, + 0x34, 0x52, 0x51, 0x5a, 0x4b, 0x41, 0x89, 0x04, 0x53, 0xc1, 0xaa, 0xf8, 0x22, 0x05, 0x8b, 0xd5, + 0x4a, 0x69, 0x49, 0x54, 0x7a, 0x7b, 0xee, 0x75, 0x67, 0x1d, 0x6d, 0x92, 0x9a, 0xe8, 0x63, 0x1f, + 0x3e, 0x66, 0xce, 0xb9, 0xdc, 0xf3, 0xdd, 0x73, 0xce, 0x77, 0xcf, 0x05, 0x4a, 0x29, 0x4c, 0x07, + 0x52, 0x42, 0xf3, 0xfb, 0x7a, 0x8d, 0x46, 0x25, 0x65, 0xec, 0x54, 0xd2, 0xc6, 0x17, 0x4a, 0x52, + 0x4b, 0x92, 0x44, 0x68, 0x8d, 0xd2, 0xa3, 0xcf, 0x87, 0x06, 0x98, 0x0d, 0x00, 0xb3, 0x26, 0xda, + 0xf7, 0xc4, 0x04, 0x70, 0xa8, 0xdc, 0xe9, 0xcb, 0x98, 0xef, 0x2a, 0xfd, 0xc6, 0x5d, 0x25, 0x63, + 0x8c, 0x93, 0x6e, 0xed, 0x67, 0xf9, 0xbd, 0xa2, 0x93, 0xf2, 0x07, 0xc1, 0x61, 0x92, 0xd4, 0x6f, + 0xa1, 0x9f, 0x92, 0x1e, 0xfd, 0x82, 0xb4, 0xb5, 0x60, 0x09, 0x92, 0x39, 0x66, 0x44, 0x24, 0xef, + 0x37, 0x16, 0x62, 0xf0, 0x51, 0x92, 0xd2, 0x6f, 0x78, 0x5a, 0x94, 0x0e, 0x70, 0xc1, 0x4b, 0x18, + 0xac, 0x1a, 0xf1, 0x1c, 0xa2, 0x10, 0x51, 0xec, 0xaa, 0x17, 0x1b, 0xe5, 0x3d, 0xc1, 0x53, 0x4a, + 0x5a, 0xbf, 0x27, 0xef, 0x0e, 0xf6, 0x41, 0x14, 0xc4, 0x69, 0x11, 0x05, 0xf6, 0x1b, 0x21, 0x3c, + 0xed, 0x6d, 0x3c, 0xf9, 0x37, 0x8e, 0xa0, 0xb3, 0x05, 0x83, 0xce, 0x43, 0xb8, 0xd8, 0xa9, 0x11, + 0x79, 0xac, 0x54, 0xd9, 0x2f, 0xb3, 0x9d, 0xde, 0xf6, 0x82, 0x56, 0x25, 0xa5, 0xff, 0x21, 0xb5, + 0xab, 0x07, 0xd0, 0xce, 0x7f, 0x62, 0x22, 0x24, 0x39, 0x4e, 0xf6, 0x69, 0xc3, 0x18, 0xe6, 0x65, + 0xdc, 0x18, 0xb0, 0x97, 0x45, 0xe9, 0xd3, 0x2b, 0xa1, 0x06, 0x04, 0x46, 0x94, 0x0b, 0x88, 0xff, + 0xde, 0x0f, 0x83, 0x2d, 0x4a, 0x46, 0xbf, 0xe7, 0x6e, 0xf2, 0xb2, 0x83, 0x09, 0x8f, 0x10, 0xd9, + 0x4e, 0x96, 0x03, 0x49, 0x19, 0x6b, 0xb0, 0x64, 0x7f, 0x09, 0x0b, 0x3d, 0x9b, 0xd1, 0x2e, 0x41, + 0xcc, 0x86, 0x2d, 0x11, 0x17, 0x49, 0x9b, 0xab, 0x51, 0x08, 0x23, 0xac, 0x2f, 0x4a, 0xaf, 0x7e, + 0x1d, 0x4b, 0x16, 0x97, 0x5b, 0x65, 0xc5, 0x12, 0x02, 0xdf, 0xdb, 0xa3, 0x1d, 0x26, 0x5d, 0xda, + 0x35, 0x56, 0x56, 0x1e, 0x8f, 0x2d, 0x8c, 0x03, 0xcc, 0xb9, 0x0d, 0xd0, 0x7d, 0x03, 0x20, 0x69, + 0x47, 0xc3, 0x4e, 0xf5, 0xea, 0xca, 0x8d, 0x81, 0x2b, 0xe7, 0x50, 0x0a, 0xbf, 0x00, 0xf4, 0x31, + 0x5f, 0xf3, 0xeb, 0xfe, 0x61, 0x4e, 0x80, 0x30, 0x7a, 0xcd, 0x71, 0xeb, 0x1f, 0x4b, 0xfb, 0x5d, + 0xb6, 0x5f, 0x9c, 0x4c, 0xde, 0x6b, 0x96, 0x30, 0xbf, 0x50, 0x23, 0xae, 0x66, 0x59, 0x71, 0xa2, + 0x3f, 0x01, 0x9a, 0x78, 0x72, 0x8f, 0x61, 0xfe, 0x9e, 0x10, 0x3d, 0xb8, 0x58, 0xcc, 0xd9, 0x63, + 0xc2, 0x2c, 0x5a, 0xd2, 0xa9, 0xd1, 0x40, 0xc6, 0xa0, 0xd1, 0xb3, 0x4b, 0xe9, 0xf3, 0x97, 0x56, + 0xd0, 0xaa, 0xf3, 0x2f, 0xd0, 0xc0, 0xa7, 0xc5, 0x14, 0x4b, 0x75, 0xdf, 0xb9, 0xc0, 0xf3, 0x2a, + 0xcb, 0xda, 0xaa, 0x10, 0x66, 0x7d, 0x53, 0x6c, 0xf1, 0x75, 0xe1, 0xbf, 0x38, 0x29, 0xd1, 0xaf, + 0x92, 0x83, 0x9f, 0xf4, 0x52, 0x50, 0xc8, 0xf9, 0x3e, 0xab, 0x13, 0xb9, 0xaf, 0xbe, 0x2b, 0xcc, + 0x49, 0x2c, 0x94, 0x0e, 0x56, 0x71, 0xbf, 0xd4, 0x56, 0xf8, 0x25, 0x06, 0x95, 0xad, 0x76, 0x90, + 0xb4, 0x31, 0x24, 0xc5, 0xd5, 0xaf, 0xd0, 0xa7, 0x4d, 0x4a, 0xf4, 0x5b, 0x7e, 0x1e, 0xdf, 0x7c, + 0x51, 0x7b, 0x48, 0x34, 0x50, 0xe5, 0xe1, 0xbe, 0xda, 0xee, 0xe2, 0x47, 0x88, 0xc2, 0x5f, 0x47, + 0xb9, 0x5f, 0xdc, 0x18, 0xf8, 0x1c, 0x83, 0x46, 0x2c, 0x71, 0x90, 0x8c, 0x71, 0x42, 0x8a, 0x17, + 0x1d, 0x41, 0x7b, 0xce, 0x94, 0xa5, 0x8b, 0x76, 0x04, 0x79, 0x16, 0x96, 0x7d, 0x1f, 0x5b, 0x5a, + 0x89, 0x3e, 0x1f, 0x06, 0x9d, 0x7b, 0x3a, 0x46, 0x63, 0x17, 0x97, 0xd3, 0x8a, 0xef, 0x17, 0x53, + 0xff, 0x01, 0x2c, 0x5d, 0xca, 0x18, 0x73, 0xa8, 0xc2, 0x6b, 0xf6, 0x8c, 0x90, 0xfc, 0x96, 0xb8, + 0x8a, 0xec, 0x45, 0x9f, 0xce, 0x1d, 0x67, 0x00, 0x94, 0xb7, 0x00, 0x36, 0xa0, 0xb4, 0xb6, 0xb7, + 0x02, 0xb4, 0x59, 0x08, 0xef, 0x52, 0x47, 0x22, 0x3b, 0x0a, 0xce, 0x6e, 0x00, 0x68, 0xdf, 0x94, + 0xf5, 0x55, 0xaf, 0xf7, 0x1f, 0xb3, 0x04, 0xe0, 0xfb, 0xe8, 0xc1, 0x97, 0x8b, 0x21, 0xae, 0x7e, + 0x8b, 0x01, 0x1b, 0xac, 0x1e, 0xc9, 0x19, 0xe3, 0x81, 0x18, 0xca, 0x5d, 0x9b, 0xd8, 0x7d, 0xb2, + 0xcb, 0xdb, 0x89, 0x70, 0xdb, 0x41, 0x3a, 0x43, 0xeb, 0x30, 0xfd, 0x71, 0xf7, 0x0a, 0x7e, 0x1f, + 0xf2, 0xb3, 0x7e, 0xcf, 0xbc, 0xc1, 0xda, 0x01, 0xf3, 0x68, 0x05, 0x12, 0x99, 0x54, 0x3f, 0x32, + 0x97, 0x56, 0xfe, 0x58, 0x4f, 0x05, 0x9f, 0xb0, 0x16, 0xd7, 0xcc, 0x87, 0x65, 0xd3, 0x0f, 0x91, + 0x84, 0x3e, 0x8a, 0x76, 0x53, 0x4e, 0x75, 0x93, 0xce, 0x37, 0x76, 0x1f, 0x12, 0xda, 0x10, 0xe9, + 0x0a, 0x5d, 0x05, 0xd5, 0x1d, 0xb6, 0x82, 0xc4, 0x46, 0x1b, 0x13, 0xac, 0x37, 0xac, 0x74, 0x56, + 0x9f, 0x9c, 0x01, 0xe7, 0x2a, 0x5c, 0xe7, 0x77, 0x09, 0x27, 0x43, 0x33, 0x1e, 0x70, 0xcc, 0x55, + 0x27, 0x6e, 0xb3, 0x7a, 0xf6, 0x9f, 0x93, 0xc1, 0xff, 0xbe, 0xa1, 0x61, 0xfd, 0x7f, 0xf7, 0x76, + 0x84, 0xce, 0xb8, 0x9b, 0x65, 0x36, 0xdb, 0x1c, 0xb1, 0x9f, 0x1a, 0xf7, 0xd9, 0xc5, 0x90, 0x25, + 0x6a, 0xc6, 0x35, 0xc2, 0x48, 0xb0, 0x64, 0x77, 0xa4, 0x1d, 0x05, 0xfd, 0x68, 0x2f, 0xfd, 0xd7, + 0x64, 0x98, 0x0a, 0xde, 0xdd, 0x45, 0xb5, 0x78, 0xd3, 0x2f, 0x2b, 0x7d, 0xc6, 0x1d, 0xef, 0xdb, + 0xea, 0x1b, 0xb5, 0xe7, 0x5f, 0x4c, 0x3f, 0x4e, 0xe4, 0x59, 0x26, 0x6d, 0xc7, 0x29, 0x71, 0x9c, + 0x65, 0x22, 0xbd, 0x59, 0xf8, 0x09, 0x8e, 0xac, 0x95, 0x48, 0xe2, 0x9d, 0xfe, 0x33, 0x51, 0x0e, + 0xf9, 0xde, 0x77, 0x82, 0xdd, 0x78, 0x37, 0xee, 0x2a, 0xfd, 0xe6, 0xdf, 0xea, 0xc1, 0x52, 0x6a, + 0x1e, 0xab, 0xa0, 0xfa, 0xe1, 0x32, 0x1a, 0xf8, 0xb8, 0x98, 0x0b, 0x82, 0x74, 0x6a, 0x23, 0x42, + 0x8d, 0x67, 0x2b, 0x12, 0x2c, 0xe2, 0x97, 0xd4, 0xf6, 0x36, 0x4d, 0xeb, 0xd1, 0xe3, 0x13, 0x3a, + 0xe2, 0xd1, 0xca, 0x8e, 0x2e, 0x3a, 0x51, 0x76, 0x2a, 0x46, 0xc3, 0x03, 0x51, 0x5a, 0x3a, 0x54, + 0x4d, 0x2b, 0x7e, 0x58, 0x42, 0xdd, 0x55, 0x62, 0x1b, 0xae, 0x2f, 0x43, 0x84, 0x2c, 0xe5, 0xcd, + 0xe8, 0xe1, 0xb3, 0x0f, 0xdf, 0xd8, 0x85, 0xe5, 0xc9, 0x09, 0x7a, 0xc4, 0xc4, 0xe0, 0xb7, 0x4f, + 0xf2, 0xa7, 0x22, 0xe2, 0xaa, 0x9b, 0x42, 0x0c, 0x4f, 0xfd, 0x94, 0xff, 0x4f, 0xf4, 0x4c, 0x88, + 0x16, 0x0c, 0xd6, 0x95, 0x1b, 0xdb, 0x22, 0x71, 0x7d, 0x73, 0xe9, 0x2e, 0x0b, 0xe0, 0x74, 0xbc, + 0xc2, 0x06, 0xea, 0x33, 0x25, 0xca, 0x3e, 0xfb, 0xd2, 0x04, 0xc8, 0x9b, 0x74, 0xcf, 0x4c, 0x88, + 0x66, 0x82, 0x7f, 0x00, 0xb0, 0x8e, 0x32, 0x7a, 0x11, 0x1e, 0x57, 0x91, 0x00, 0x00, 0x00, 0x00, + 0x49, 0x45, 0x4e, 0x44, 0xae, 0x42, 0x60, 0x82, }; const BITMAP_OPAQUE via_sketch_xpm[1] = {{ png, sizeof( png ), "via_sketch_xpm" }}; diff --git a/bitmaps_png/sources/add_dimension.svg b/bitmaps_png/sources/add_dimension.svg index ba307cf29a..48a74d3aa9 100644 --- a/bitmaps_png/sources/add_dimension.svg +++ b/bitmaps_png/sources/add_dimension.svg @@ -7,11 +7,11 @@ xmlns="http://www.w3.org/2000/svg" xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd" xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape" - height="48" - width="48" + height="26" + width="26" version="1.1" id="svg2" - inkscape:version="0.47 r22583" + inkscape:version="0.48.2 r9819" sodipodi:docname="add_dimension.svg"> @@ -35,16 +35,24 @@ inkscape:pageopacity="0" inkscape:pageshadow="2" inkscape:window-width="1280" - inkscape:window-height="949" + inkscape:window-height="969" id="namedview56" - showgrid="false" - inkscape:zoom="4.9166667" - inkscape:cx="-12.610169" - inkscape:cy="23.59322" + showgrid="true" + inkscape:zoom="6.9532167" + inkscape:cx="25.661216" + inkscape:cy="16.497638" inkscape:window-x="0" - inkscape:window-y="25" + inkscape:window-y="26" inkscape:window-maximized="1" - inkscape:current-layer="svg2" /> + inkscape:current-layer="svg2"> + + + orient="auto" + style="overflow:visible"> + d="M 8.7186,4.0337 -2.2074,0.016 8.7186,-4.0017 c -1.7455,2.3721 -1.7354,5.6175 -6e-7,8.0354 z" + transform="scale(0.6,0.6)" + id="path10" + inkscape:connector-curvature="0" + style="fill-rule:evenodd;stroke-width:0.625;stroke-linejoin:round" /> + orient="auto" + style="overflow:visible"> + d="M 8.7186,4.0337 -2.2074,0.016 8.7186,-4.0017 c -1.7455,2.3721 -1.7354,5.6175 -6e-7,8.0354 z" + transform="scale(-0.6,-0.6)" + id="path13" + inkscape:connector-curvature="0" + style="fill-rule:evenodd;stroke-width:0.625;stroke-linejoin:round" /> + id="filter3750" + color-interpolation-filters="sRGB"> + id="filter3802" + color-interpolation-filters="sRGB"> + + + + id="g3075" + style="opacity:0.48971193;fill:#000000;filter:url(#filter3879)" + transform="translate(-37.945844,16.034598)"> + d="m 42.945842,1.612044 18,-0.03577" + id="path44-3" + style="fill:#000000;stroke:#000000;stroke-width:1.07280254px;marker-start:url(#h);marker-end:url(#g)" + inkscape:connector-curvature="0" /> - - - - - - - - - + height="12.104957" + width="2" + y="-4.0000091" + x="-63.945843" + id="rect48-7" + style="fill:#000000;fill-opacity:1" /> + transform="matrix(1.6262979,0,0,1.2104957,39.948771,-9.234896)" + id="g50-5" + style="fill:#000000"> + id="rect52-9" + style="fill:#000000;fill-opacity:0" /> + d="M 48.027058,-2.995341 48.027078,-12 50,-12 l 3.945842,4.534122 2e-5,-4.534122 1.97292,0 -2e-5,9.004659 -1.972921,0 0,-1.788241 -3.945842,-4.534122 -1.9e-5,6.322281 -1.972989,0 z" + id="path54-6" + style="fill:#000000;fill-rule:evenodd" + inkscape:connector-curvature="0" /> + + + + + + + diff --git a/bitmaps_png/sources/add_glabel.svg b/bitmaps_png/sources/add_glabel.svg index 2fdb2e248e..2d4d84b8cc 100644 --- a/bitmaps_png/sources/add_glabel.svg +++ b/bitmaps_png/sources/add_glabel.svg @@ -12,7 +12,7 @@ version="1.1" id="svg2" inkscape:version="0.48.2 r9819" - sodipodi:docname="cursor_shape.svg"> + sodipodi:docname="add_glabel.svg"> @@ -69,9 +69,9 @@ inkscape:window-height="941" id="namedview18" showgrid="true" - inkscape:zoom="19.666667" - inkscape:cx="10.431707" - inkscape:cy="15.520137" + inkscape:zoom="13.906434" + inkscape:cx="10.262268" + inkscape:cy="9.3355265" inkscape:window-x="0" inkscape:window-y="30" inkscape:window-maximized="1" @@ -88,9 +88,10 @@ + style="opacity:0.40740739;fill:none;stroke:#070022;stroke-width:1;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;filter:url(#filter3896)" + transform="matrix(0.9773047,0,0,0.89946299,0.58637423,1.1799882)" /> + style="fill:none;stroke:#d50000;stroke-width:1.87489915;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none" /> + style="fill:#000000;fill-opacity:1" /> diff --git a/bitmaps_png/sources/add_hierarchical_label.svg b/bitmaps_png/sources/add_hierarchical_label.svg index 39c18e16b0..e34ed90934 100644 --- a/bitmaps_png/sources/add_hierarchical_label.svg +++ b/bitmaps_png/sources/add_hierarchical_label.svg @@ -28,14 +28,6 @@ - - - @@ -56,52 +48,6 @@ stdDeviation="0.093050845" id="feGaussianBlur3916" /> - - - - - - - - - - - - - @@ -241,34 +187,6 @@ offset="1" id="stop72" /> - - - - - - - - + id="stop22-6" /> + id="stop24-3" /> + id="stop26-1" /> + id="stop28-7" /> + id="stop30-5" /> + id="stop32-9" /> + id="stop34-6" /> + id="stop36-2" /> + id="stop38-1" /> - + id="stop41-8" /> + id="stop43-5" /> + id="stop45-7" /> + id="stop47-4" /> + id="stop49-1" /> + id="stop51-8" /> + id="stop53-5" /> + id="feGaussianBlur19-7" /> + id="stop58-8" /> + id="stop62-3" /> + id="stop64-1" /> + id="stop66-8" /> + id="stop68-9" /> + id="stop70-6" /> + id="stop72-4" /> + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + inkscape:snap-to-guides="false" + showguides="true" + inkscape:guide-bbox="true"> + + + + + + + + + + + + + + + + + - - - - - - - - - - - - - - - - - - - - - + + + + + diff --git a/bitmaps_png/sources/add_junction.svg b/bitmaps_png/sources/add_junction.svg index 89593993a8..44edd4752c 100644 --- a/bitmaps_png/sources/add_junction.svg +++ b/bitmaps_png/sources/add_junction.svg @@ -11,7 +11,7 @@ width="26" version="1.1" id="svg2" - inkscape:version="0.47 r22583" + inkscape:version="0.48.2 r9819" sodipodi:docname="add_junction.svg"> @@ -34,16 +34,18 @@ inkscape:pageopacity="0" inkscape:pageshadow="2" inkscape:window-width="1280" - inkscape:window-height="949" + inkscape:window-height="941" id="namedview52" showgrid="true" - inkscape:zoom="1.2291667" - inkscape:cx="-242.32399" - inkscape:cy="-0.69109567" + inkscape:zoom="19.666667" + inkscape:cx="-2.1923002" + inkscape:cy="10.361289" inkscape:window-x="0" - inkscape:window-y="25" + inkscape:window-y="30" inkscape:window-maximized="1" - inkscape:current-layer="svg2"> + inkscape:current-layer="svg2" + inkscape:snap-grids="false" + inkscape:snap-to-guides="false"> + transform="matrix(0.98929803,0,0,0.9588585,-18.379466,-27.788064)" + style="opacity:0.48373988;filter:url(#filter3660)"> + style="opacity:0.71094001;fill:#000000;fill-opacity:1;filter:url(#c-1)" + inkscape:connector-curvature="0" /> + style="fill:#000000;fill-opacity:1;stroke:#000000;stroke-width:1;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none" + inkscape:connector-curvature="0" /> @@ -22,6 +22,7 @@ image/svg+xml + @@ -34,15 +35,15 @@ guidetolerance="10" inkscape:pageopacity="0" inkscape:pageshadow="2" - inkscape:window-width="1600" - inkscape:window-height="876" + inkscape:window-width="1280" + inkscape:window-height="969" id="namedview221" showgrid="false" inkscape:zoom="6.6666667" - inkscape:cx="20.268593" - inkscape:cy="24" + inkscape:cx="-4.3362124" + inkscape:cy="40.604773" inkscape:window-x="0" - inkscape:window-y="24" + inkscape:window-y="26" inkscape:window-maximized="1" inkscape:current-layer="svg2" /> - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + d="m 23.175132,2.4732404 c -0.42822,0.027802 -0.844433,0.090733 -1.265043,0.1364098 h -0.02875 l -1.00633,5.2108977 c -1.64014,0.3544384 -3.183215,0.9559595 -4.57145,1.773284 L 11.789885,6.5115377 C 10.569004,7.4104019 9.459447,8.4589024 8.4832941,9.594705 l 3.1338089,4.337788 c -0.951496,1.379812 -1.667095,2.955355 -2.070069,4.610607 -6.9e-5,0.0079 -5.7e-5,0.02592 0,0.02729 l -5.4626842,0.818459 c -0.09987,0.774048 -0.1437548,1.573972 -0.1437548,2.373574 0,0.654156 0.019036,1.299581 0.086253,1.937062 l 5.462684,0.927587 c 0.388511,1.800085 1.126578,3.481178 2.156368,4.965317 l -3.2488125,4.228747 c 0.9304275,1.09608 2.0046555,2.094032 3.1626065,2.973689 l 4.600155,-3.001015 c 1.607662,0.973159 3.402367,1.655601 5.34768,1.991539 l 0.86253,5.156247 c 0.612905,0.05294 1.241397,0.05456 1.868766,0.05456 0.885695,0 1.731683,-0.03185 2.587587,-0.13641 l 1.035036,-5.265374 c 1.847054,-0.436162 3.58214,-1.192811 5.088875,-2.209795 l 4.427649,3.055579 c 1.148199,-0.926976 2.19823,-1.992499 3.105105,-3.137469 L 37.262969,28.88301 c 0.872051,-1.429138 1.476281,-3.005904 1.78256,-4.692497 l 5.433703,-0.818023 c 0.04764,-0.538087 0.0575,-1.059936 0.0575,-1.609678 0,-0.955262 -0.11701,-1.891928 -0.258759,-2.810086 L 38.757788,17.997812 C 38.325198,16.48207 37.615385,15.067861 36.716423,13.79639 L 39.965236,9.5677307 C 38.958723,8.4004969 37.810525,7.3205678 36.544562,6.4042432 L 31.858108,9.4598226 C 30.511183,8.7039251 29.061674,8.1239232 27.487961,7.7956668 L 26.625892,2.6122692 c -0.785706,-0.087651 -1.576933,-0.1364534 -2.386561,-0.1364534 -0.218848,0 -0.444081,-0.00654 -0.661272,0 -0.105877,0.00318 -0.21066,-0.00585 -0.31626,0 -0.0286,0.00158 -0.0577,-0.00185 -0.08625,0 z m 0.747525,13.2585956 c 0.105039,-0.0051 0.209905,0 0.316261,0 3.403286,0 6.181504,2.636179 6.181504,5.865665 0,3.229397 -2.778126,5.838339 -6.181504,5.838339 -3.403288,0 -6.152708,-2.608942 -6.152708,-5.838339 10e-7,-3.128477 2.580319,-5.70887 5.836492,-5.865665 z" + style="color:#000000;fill:url(#linearGradient3207);stroke:#766a6a;stroke-width:1.21472692;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none" /> + d="m 31.344711,21.586203 a 7.102443,6.7395487 0 0 1 -14.204886,0 7.102443,6.7395487 0 1 1 14.204886,0 z" + style="opacity:0.64772997;color:#000000;fill:none;stroke:#ffffff;stroke-width:0.89624578" /> + d="m 22.53847,3.5046294 -0.807961,5.0451983 c -1.537373,0.3322198 -4.365272,1.348296 -5.666472,2.1144613 L 11.765652,7.6198836 C 10.62187,8.4624904 10.543483,8.5196208 9.62888,9.5840101 l 3.107957,4.3738439 c -0.891896,1.293383 -1.963163,3.598163 -2.347828,5.245208 0,0 -5.4460311,0.871136 -5.4460311,0.871136 -0.093614,0.725543 -0.048623,2.278415 0.01438,2.875911 l 5.2020391,0.889261 c 0.364158,1.687292 1.726898,4.403177 2.692195,5.794252 L 9.56193,33.757781 c 0.872133,1.027373 1.046719,1.121398 2.132079,1.945967 l 4.398852,-3.058023 c 1.506918,0.912221 4.498031,2.021833 6.32144,2.336732 l 0.721939,4.981729 c 0.574495,0.04962 2.161614,0.188818 2.963789,0.09081 l 0.809627,-5.186627 c 1.731222,-0.408828 4.722703,-1.574061 6.135043,-2.527314 l 4.39416,3.012627 c 1.076252,-0.868875 1.085913,-0.999786 1.935929,-2.072992 l -3.256174,-4.391916 c 0.817402,-1.339566 1.874288,-3.959333 2.161338,-5.540202 l 5.331212,-0.839377 c 0.04692,-0.50548 0.04876,-1.911919 -0.08373,-2.772719 L 38.095762,18.847218 C 37.690277,17.42646 36.298758,14.866234 35.456193,13.67447 L 38.908517,9.5503118 C 37.964565,8.4549294 37.613666,8.304595 36.427378,7.445541 l -4.547069,3.089802 C 30.618946,9.8264484 28.100821,8.746519 26.626011,8.4383423 L 25.822824,3.5020976 c -0.735858,-0.082138 -2.858904,-0.045664 -3.27945,0 z" + style="opacity:0.34659005;color:#000000;fill:none;stroke:#ffffff;stroke-width:0.89621872" /> diff --git a/bitmaps_png/sources/find.svg b/bitmaps_png/sources/find.svg index e03f1878ec..09442557d0 100644 --- a/bitmaps_png/sources/find.svg +++ b/bitmaps_png/sources/find.svg @@ -14,7 +14,7 @@ inkscape:export-xdpi="90.000000" inkscape:export-filename="/home/steven/edit-find-48.png" sodipodi:docname="find.svg" - inkscape:version="0.47 r22583" + inkscape:version="0.48.2 r9819" sodipodi:version="0.32" id="svg249" height="26" @@ -59,18 +59,6 @@ offset="1.0000000" style="stop-color:#ffffff;stop-opacity:0.24761905;" /> - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + image/svg+xml - + edit @@ -644,66 +1118,81 @@ id="rect15686-03" style="color:#000000;fill:#9b9b9b;fill-opacity:0.54970757;fill-rule:nonzero;stroke:none;stroke-width:1;marker:none;visibility:visible;display:block;overflow:visible" /> - + style="display:inline" + id="g2711" + transform="matrix(-0.70929483,0,0,0.70095374,27.327841,24.978833)" + inkscape:r_cx="true" + inkscape:r_cy="true"> + style="color:#000000;fill:#dcdcdc;fill-opacity:1;fill-rule:evenodd;stroke:url(#linearGradient2730);stroke-width:3.10908341;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:10;stroke-opacity:1;stroke-dasharray:none;stroke-dashoffset:0;marker:none;visibility:visible;display:inline;overflow:visible" + inkscape:r_cx="true" + inkscape:r_cy="true" /> + id="path4430-3" + inkscape:r_cx="true" + inkscape:r_cy="true" /> + id="path4438-0" + sodipodi:nodetypes="ccccc" + inkscape:r_cx="true" + inkscape:r_cy="true" /> + transform="matrix(-0.801358,0,0,0.801358,33.70147,0.855159)" + inkscape:r_cx="true" + inkscape:r_cy="true" /> + rx="3.3215265" + ry="2.9348745" + transform="matrix(-0.484379,0.4233,0.417423,0.489452,31.49802,4.828704)" + inkscape:r_cx="true" + inkscape:r_cy="true" /> + transform="matrix(-0.899697,0,0,0.899697,35.502,-0.509826)" + inkscape:r_cx="true" + inkscape:r_cy="true" /> + id="path4462-9" + inkscape:r_cx="true" + inkscape:r_cy="true" /> diff --git a/bitmaps_png/sources/find_replace.svg b/bitmaps_png/sources/find_replace.svg index 89b76723e9..e1ec4e7bf0 100644 --- a/bitmaps_png/sources/find_replace.svg +++ b/bitmaps_png/sources/find_replace.svg @@ -13,8 +13,8 @@ inkscape:export-ydpi="90.000000" inkscape:export-xdpi="90.000000" inkscape:export-filename="/home/steven/edit-find-48.png" - sodipodi:docname="find-replace.svg" - inkscape:version="0.47 r22583" + sodipodi:docname="find_replace.svg" + inkscape:version="0.48.2 r9819" sodipodi:version="0.32" id="svg249" height="26" @@ -293,121 +293,6 @@ offset="1" style="stop-color:#c9c9c9;stop-opacity:1;" /> - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + image/svg+xml - + edit @@ -620,6 +620,83 @@ d="m 9.9950109,18.467176 c 0,0.453204 -0.3675248,0.820729 -0.8207288,0.820729 -0.4534338,0 -0.8207289,-0.367525 -0.8207289,-0.820729 0,-0.453434 0.3675248,-0.820729 0.8207289,-0.820729 0.453204,0 0.8207288,0.367525 0.8207288,0.820729 z" id="path15577" /> + + + + + + + + + - - + transform="translate(-3.5870629,-0.56250016)"> - + - - - - - - - - + transform="matrix(0.5663003,0,0,0.53952421,-4.7173942,19.737774)" + d="m 40.65864,37.967922 c 0,2.172292 -7.400116,3.933282 -16.528622,3.933282 -9.128505,0 -16.5286214,-1.76099 -16.5286214,-3.933282 0,-2.172291 7.4001164,-3.933281 16.5286214,-3.933281 9.128506,0 16.528622,1.76099 16.528622,3.933281 z" + sodipodi:ry="3.9332814" + sodipodi:rx="16.528622" + sodipodi:cy="37.967922" + sodipodi:cx="24.130018" + id="path4475-9" + style="opacity:0.17112301;color:#000000;fill:url(#radialGradient2504);fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:1;marker:none;visibility:visible;display:inline;overflow:visible" + sodipodi:type="arc" /> + inkscape:r_cy="true" + inkscape:connector-curvature="0" /> + inkscape:r_cy="true" + inkscape:connector-curvature="0" /> + inkscape:r_cy="true" + inkscape:connector-curvature="0" /> + inkscape:r_cy="true" + inkscape:connector-curvature="0" /> + inkscape:r_cy="true" + inkscape:connector-curvature="0" /> + inkscape:r_cy="true" + inkscape:connector-curvature="0" /> + inkscape:r_cy="true" + inkscape:connector-curvature="0" /> diff --git a/bitmaps_png/sources/show_zone.svg b/bitmaps_png/sources/show_zone.svg index 2b3fc5ad0c..637f68ac70 100644 --- a/bitmaps_png/sources/show_zone.svg +++ b/bitmaps_png/sources/show_zone.svg @@ -1,12 +1,93 @@ - - - - - - - - - - - + + + + + + image/svg+xml + + + + + + + + + + + + + + + + diff --git a/bitmaps_png/sources/show_zone_disable.svg b/bitmaps_png/sources/show_zone_disable.svg index 6645d77796..485721f996 100644 --- a/bitmaps_png/sources/show_zone_disable.svg +++ b/bitmaps_png/sources/show_zone_disable.svg @@ -11,7 +11,7 @@ width="48" version="1.0" id="svg2" - inkscape:version="0.48.1 " + inkscape:version="0.48.2 r9819" sodipodi:docname="show_zone_disable.svg"> @@ -35,58 +35,55 @@ guidetolerance="10" inkscape:pageopacity="0" inkscape:pageshadow="2" - inkscape:window-width="920" - inkscape:window-height="583" + inkscape:window-width="1280" + inkscape:window-height="969" id="namedview22" showgrid="false" inkscape:zoom="5.4791667" inkscape:cx="24" inkscape:cy="24" inkscape:window-x="0" - inkscape:window-y="0" - inkscape:window-maximized="0" + inkscape:window-y="26" + inkscape:window-maximized="1" inkscape:current-layer="svg2" /> + + + + id="g12" + transform="matrix(0.82404,0,0,0.79493,-35.036486,13.52451)"> + id="path14" + d="m 5.8694,32.598 c 0,0 15.515,-20.825 31.114,0.08214 -15.599,19.414 -31.114,-0.082 -31.114,-0.082 z" /> + id="path16" + d="m 10.452,32.553 c 0,0 10.86,-13.986 21.78,0.05516 -10.92,13.038 -21.78,-0.05516 -21.78,-0.05516 z" /> - - - - - - + id="path18" + transform="matrix(3.5559,0,0,3.9824,50.678,18.388)" + d="m -6.5,3.5 a 1.75,1.5 0 1 1 -3.5,0 1.75,1.5 0 1 1 3.5,0 z" /> + diff --git a/bitmaps_png/sources/show_zone_outline_only.svg b/bitmaps_png/sources/show_zone_outline_only.svg index 200f975f46..06e6b658ab 100644 --- a/bitmaps_png/sources/show_zone_outline_only.svg +++ b/bitmaps_png/sources/show_zone_outline_only.svg @@ -1,12 +1,99 @@ - - - - - - - - - - - + + + + + + image/svg+xml + + + + + + + + + + + + + + + + diff --git a/bitmaps_png/sources/showtrack.svg b/bitmaps_png/sources/showtrack.svg index 56f2c61738..a23ec28f77 100644 --- a/bitmaps_png/sources/showtrack.svg +++ b/bitmaps_png/sources/showtrack.svg @@ -1,15 +1,102 @@ - - - - - - - - - - - - - - + + + + + + image/svg+xml + + + + + + + + + + + + + + + + + + + + diff --git a/bitmaps_png/sources/via_sketch.svg b/bitmaps_png/sources/via_sketch.svg index adeceda59d..f6d9e8727b 100644 --- a/bitmaps_png/sources/via_sketch.svg +++ b/bitmaps_png/sources/via_sketch.svg @@ -11,7 +11,7 @@ width="48" version="1.1" id="svg2" - inkscape:version="0.48.1 " + inkscape:version="0.48.2 r9819" sodipodi:docname="via_sketch.svg"> @@ -21,6 +21,7 @@ image/svg+xml + @@ -44,8 +45,8 @@ guidetolerance="10" inkscape:pageopacity="0" inkscape:pageshadow="2" - inkscape:window-width="552" - inkscape:window-height="544" + inkscape:window-width="1280" + inkscape:window-height="969" id="namedview12" showgrid="false" inkscape:snap-grids="false" @@ -53,9 +54,9 @@ inkscape:zoom="5.0595999" inkscape:cx="25.399999" inkscape:cy="22.398101" - inkscape:window-x="718" - inkscape:window-y="192" - inkscape:window-maximized="0" + inkscape:window-x="0" + inkscape:window-y="26" + inkscape:window-maximized="1" inkscape:current-layer="svg2" /> SetSelection( ii++, true ); - if( !component.m_Module.IsEmpty() ) + if( !component.m_Footprint.IsEmpty() ) continue; BOOST_FOREACH( FOOTPRINT_ALIAS& alias, aliases ) diff --git a/cvpcb/class_cvpcb.cpp b/cvpcb/class_cvpcb.cpp deleted file mode 100644 index 2583e3b046..0000000000 --- a/cvpcb/class_cvpcb.cpp +++ /dev/null @@ -1,21 +0,0 @@ -/** - * @file class_cvpcb.cpp - */ - -#include -#include - -#include -#include - - -bool operator<( const PIN& item1, const PIN& item2 ) -{ - return StrNumCmp( item1.m_Number, item2.m_Number, 4, true ) < 0; -} - - -bool operator<( const COMPONENT& item1, const COMPONENT& item2 ) -{ - return StrNumCmp( item1.m_Reference, item2.m_Reference, INT_MAX, true ) < 0; -} diff --git a/cvpcb/class_footprints_listbox.cpp b/cvpcb/class_footprints_listbox.cpp index d00fb1afe5..e0dcab09bb 100644 --- a/cvpcb/class_footprints_listbox.cpp +++ b/cvpcb/class_footprints_listbox.cpp @@ -133,7 +133,7 @@ void FOOTPRINTS_LISTBOX::SetFootprintFullList( FOOTPRINT_LIST& list ) } -void FOOTPRINTS_LISTBOX::SetFootprintFilteredList( COMPONENT* Component, +void FOOTPRINTS_LISTBOX::SetFootprintFilteredList( COMPONENT_INFO* Component, FOOTPRINT_LIST& list ) { wxString msg; diff --git a/cvpcb/common_help_msg.h b/cvpcb/common_help_msg.h new file mode 100644 index 0000000000..400c5eb1fd --- /dev/null +++ b/cvpcb/common_help_msg.h @@ -0,0 +1,8 @@ +#ifndef HELP_MESSAGE_FILE_H +#define HELP_MESSAGE_FILE_H + +#define LOAD_FILE_HELP _( "Open a net list file" ) +#define SAVE_HLP_MSG _( "Save the component/footprint link file (.cmp file)" ) +#define SAVE_AS_HLP_MSG _( "Save the component/footprint link file (.cmp file) with a new name" ) + +#endif // HELP_MESSAGE_FILE_H diff --git a/cvpcb/cvframe.cpp b/cvpcb/cvframe.cpp index dc7a474429..5a58933306 100644 --- a/cvpcb/cvframe.cpp +++ b/cvpcb/cvframe.cpp @@ -334,9 +334,9 @@ void CVPCB_MAINFRAME::ToFirstNA( wxCommandEvent& event ) if( selection < 0 ) selection = 0; - BOOST_FOREACH( COMPONENT & component, m_components ) + BOOST_FOREACH( COMPONENT_INFO & component, m_components ) { - if( component.m_Module.IsEmpty() && ii > selection ) + if( component.m_Footprint.IsEmpty() && ii > selection ) { m_ListCmp->SetSelection( ii ); SendMessageToEESCHEMA(); @@ -364,9 +364,9 @@ void CVPCB_MAINFRAME::ToPreviousNA( wxCommandEvent& event ) if( selection < 0 ) selection = m_ListCmp->GetCount() - 1; - BOOST_REVERSE_FOREACH( COMPONENT & component, m_components ) + BOOST_REVERSE_FOREACH( COMPONENT_INFO & component, m_components ) { - if( component.m_Module.IsEmpty() && ii < selection ) + if( component.m_Footprint.IsEmpty() && ii < selection ) { m_ListCmp->SetSelection( ii ); SendMessageToEESCHEMA(); @@ -403,9 +403,9 @@ void CVPCB_MAINFRAME::DelAssociations( wxCommandEvent& event ) { m_ListCmp->SetSelection( 0 ); - BOOST_FOREACH( COMPONENT & component, m_components ) + BOOST_FOREACH( COMPONENT_INFO & component, m_components ) { - component.m_Module.Empty(); + component.m_Footprint.Empty(); SetNewPkg( wxEmptyString ); } @@ -538,7 +538,7 @@ void CVPCB_MAINFRAME::OnSelectComponent( wxListEvent& event ) // Preview of the already assigned footprint. // Find the footprint that was already choosen for this component and select it. - wxString module = *(&m_components[ selection ].m_Module); + wxString module = *(&m_components[ selection ].m_Footprint); bool found = false; for( int ii = 0; ii < m_FootprintList->GetCount(); ii++ ) @@ -696,7 +696,7 @@ void CVPCB_MAINFRAME::SendMessageToEESCHEMA() { char cmd[1024]; int selection; - COMPONENT* Component; + COMPONENT_INFO* Component; if( m_components.empty() ) return; diff --git a/cvpcb/cvpcb.h b/cvpcb/cvpcb.h index 48bdb41934..325b6e7928 100644 --- a/cvpcb/cvpcb.h +++ b/cvpcb/cvpcb.h @@ -19,42 +19,9 @@ #define FILTERFOOTPRINTKEY "FilterFootprint" -class PIN -{ -public: - wxString m_Net; /* Name of net. */ - wxString m_Number; - wxString m_Name; - - PIN() {}; - ~PIN() {}; -}; - -typedef boost::ptr_vector< PIN > PIN_LIST; - -/* PIN object list sort function. */ -extern bool operator<( const PIN& item1, const PIN& item2 ); - -class COMPONENT -{ -public: - wxString m_Reference; // Reference designator: U3, R5 - wxString m_Value; // Value: 7400, 47K - wxString m_TimeStamp; // Time stamp ( default value = "00000000") - wxString m_Module; // Footprint (module) name. - wxArrayString m_FootprintFilter;// List of allowed footprints (wildcards - // allowed ). If empty: no filtering - PIN_LIST m_Pins; // List of component pins. - - COMPONENT() {}; - ~COMPONENT() {}; -}; - -typedef boost::ptr_vector< COMPONENT > COMPONENT_LIST; - -/* COMPONENT object list sort function. */ -extern bool operator<( const COMPONENT& item1, const COMPONENT& item2 ); +#include +typedef boost::ptr_vector< COMPONENT_INFO > COMPONENT_LIST; extern const wxString FootprintAliasFileExtension; extern const wxString RetroFileExtension; diff --git a/cvpcb/cvstruct.h b/cvpcb/cvstruct.h index 4f3288fc84..4aec946433 100644 --- a/cvpcb/cvstruct.h +++ b/cvpcb/cvstruct.h @@ -52,7 +52,7 @@ public: void SetString( unsigned linecount, const wxString& text ); void AppendLine( const wxString& text ); void SetFootprintFullList( FOOTPRINT_LIST& list ); - void SetFootprintFilteredList( COMPONENT* Component, + void SetFootprintFilteredList( COMPONENT_INFO* Component, FOOTPRINT_LIST& list ); void SetActiveFootprintList( bool FullList, bool Redraw = false ); diff --git a/cvpcb/genequiv.cpp b/cvpcb/genequiv.cpp index ef0b2e461a..81c17bf7d5 100644 --- a/cvpcb/genequiv.cpp +++ b/cvpcb/genequiv.cpp @@ -38,14 +38,14 @@ void CVPCB_MAINFRAME::WriteStuffList( wxCommandEvent& event ) return; } - BOOST_FOREACH( COMPONENT& component, m_components ) + BOOST_FOREACH( COMPONENT_INFO& component, m_components ) { - if( component.m_Module.empty() ) + if( component.m_Footprint.empty() ) continue; fprintf( FileEquiv, "comp = %s module = %s\n", EscapedUTF8( component.m_Reference ).c_str(), - EscapedUTF8( component.m_Module ).c_str() ); + EscapedUTF8( component.m_Footprint ).c_str() ); } fclose( FileEquiv ); diff --git a/cvpcb/init.cpp b/cvpcb/init.cpp index 1dc25c37e0..b4c413f7b8 100644 --- a/cvpcb/init.cpp +++ b/cvpcb/init.cpp @@ -18,7 +18,7 @@ void CVPCB_MAINFRAME::SetNewPkg( const wxString& package ) { - COMPONENT* Component; + COMPONENT_INFO* Component; bool isUndefined = false; int NumCmp; wxString msg; @@ -39,14 +39,14 @@ void CVPCB_MAINFRAME::SetNewPkg( const wxString& package ) if( Component == NULL ) return; - isUndefined = Component->m_Module.IsEmpty(); + isUndefined = Component->m_Footprint.IsEmpty(); - Component->m_Module = package; + Component->m_Footprint = package; msg.Printf( CMP_FORMAT, NumCmp + 1, GetChars( Component->m_Reference ), GetChars( Component->m_Value ), - GetChars( Component->m_Module ) ); + GetChars( Component->m_Footprint ) ); m_modified = true; if( isUndefined ) @@ -94,15 +94,15 @@ bool CVPCB_MAINFRAME::ReadNetList() m_ListCmp->Clear(); m_undefinedComponentCnt = 0; - BOOST_FOREACH( COMPONENT& component, m_components ) + BOOST_FOREACH( COMPONENT_INFO& component, m_components ) { msg.Printf( CMP_FORMAT, m_ListCmp->GetCount() + 1, GetChars( component.m_Reference ), GetChars( component.m_Value ), - GetChars( component.m_Module ) ); + GetChars( component.m_Footprint ) ); m_ListCmp->AppendLine( msg ); - if( component.m_Module.IsEmpty() ) + if( component.m_Footprint.IsEmpty() ) m_undefinedComponentCnt += 1; } @@ -151,7 +151,7 @@ int CVPCB_MAINFRAME::SaveNetList( const wxString& aFullFileName ) DisplayError( this, _( "Unable to create component file (.cmp)" ) ); return 0; } - +#if 0 FILE* netlist = wxFopen( fn.GetFullPath(), wxT( "wt" ) ); if( netlist == 0 ) @@ -161,6 +161,6 @@ int CVPCB_MAINFRAME::SaveNetList( const wxString& aFullFileName ) } GenNetlistPcbnew( netlist, m_isEESchemaNetlist ); - +#endif return 1; } diff --git a/cvpcb/listboxes.cpp b/cvpcb/listboxes.cpp index 8ee94db5b4..017c4ec1e9 100644 --- a/cvpcb/listboxes.cpp +++ b/cvpcb/listboxes.cpp @@ -88,11 +88,11 @@ void CVPCB_MAINFRAME::BuildCmpListBox() m_ListCmp->m_ComponentList.Clear(); - BOOST_FOREACH( COMPONENT & component, m_components ) { + BOOST_FOREACH( COMPONENT_INFO & component, m_components ) { msg.Printf( CMP_FORMAT, m_ListCmp->GetCount() + 1, GetChars(component.m_Reference), GetChars(component.m_Value), - GetChars(component.m_Module) ); + GetChars(component.m_Footprint) ); m_ListCmp->m_ComponentList.Add( msg ); } diff --git a/cvpcb/menubar.cpp b/cvpcb/menubar.cpp index d21163276b..caf9c90150 100644 --- a/cvpcb/menubar.cpp +++ b/cvpcb/menubar.cpp @@ -35,6 +35,8 @@ #include #include +#include + /** * @brief (Re)Create the menubar for the CvPcb mainframe @@ -63,9 +65,7 @@ void CVPCB_MAINFRAME::ReCreateMenuBar() // Open AddMenuItem( filesMenu, ID_LOAD_PROJECT, - _( "&Open" ), - _( "Open a net list file" ), - KiBitmap( open_document_xpm ) ); + _( "&Open" ), LOAD_FILE_HELP, KiBitmap( open_document_xpm ) ); // Open Recent submenu static wxMenu* openRecentMenu; @@ -86,19 +86,15 @@ void CVPCB_MAINFRAME::ReCreateMenuBar() // Separator filesMenu->AppendSeparator(); - // Save + // Save the .cmp file AddMenuItem( filesMenu, wxID_SAVE, - _( "&Save\tCtrl+S" ), - _( "Save net list and footprint files" ), - KiBitmap( save_xpm ) ); + _( "&Save\tCtrl+S" ), SAVE_HLP_MSG, KiBitmap( save_xpm ) ); - // Save as + // Save as the .cmp file AddMenuItem( filesMenu, wxID_SAVEAS, - _( "Save &As..." ), - _( "Save new net list and footprint list files" ), - KiBitmap( save_xpm ) ); + _( "Save &As..." ), SAVE_AS_HLP_MSG, KiBitmap( save_xpm ) ); // Separator filesMenu->AppendSeparator(); @@ -116,7 +112,7 @@ void CVPCB_MAINFRAME::ReCreateMenuBar() // Libraries to load AddMenuItem( preferencesMenu, wxID_PREFERENCES, _( "&Libraries" ), - _( "Set footprint libraries lo load and library search paths" ), + _( "Set footprint libraries to load and library search paths" ), KiBitmap( config_xpm ) ); // Language submenu @@ -156,7 +152,7 @@ void CVPCB_MAINFRAME::ReCreateMenuBar() // About AddMenuItem( helpMenu, wxID_ABOUT, _( "&About CvPcb" ), - _( "About CvPcb schematic to pcb converter" ), + _( "About CvPcb footprint selector" ), KiBitmap( info_xpm ) ); // Create the menubar and append all submenus diff --git a/cvpcb/readschematicnetlist.cpp b/cvpcb/readschematicnetlist.cpp index 977bf358a6..1e30fcf607 100644 --- a/cvpcb/readschematicnetlist.cpp +++ b/cvpcb/readschematicnetlist.cpp @@ -1,8 +1,33 @@ -/****************************/ -/* readschematicnetlist.cpp */ -/****************************/ +/** + * @file cvpcb/readschematicnetlist.cpp + */ -/* Read a nelist type Eeschema or OrcadPCB2 and build the component list +/* + * This program source code file is part of KiCad, a free EDA CAD application. + * + * Copyright (C) 2012 Jean-Pierre Charras. + * Copyright (C) 2012 KiCad Developers, see CHANGELOG.TXT for contributors. + * + * 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 the License, or (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program; if not, you may find one here: + * http://www.gnu.org/licenses/old-licenses/gpl-2.0.html + * or you may search the http://www.gnu.org website for the version 2 license, + * or you may write to the Free Software Foundation, Inc., + * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA + */ + +/* Read a nelist type Eeschema (New and Old format) + * or OrcadPCB2 and build the component list */ #include @@ -11,348 +36,72 @@ #include #include -#include #include #include -static int ReadPinConnection( FILE_LINE_READER& aNetlistReader, COMPONENT* CurrentCmp ); -static int ReadFootprintFilterList( FILE_LINE_READER& aNetlistReader, COMPONENT_LIST& aComponentsList ); +#include + +// COMPONENT_INFO object list sort function: +bool operator < ( const COMPONENT_INFO& item1, const COMPONENT_INFO& item2 ) +{ + return StrNumCmp( item1.m_Reference, item2.m_Reference, INT_MAX, true ) < 0; +} -/* Sort the list alphabetically by component and and returns - * a pointer to the 1st element of list */ - -#define BUFFER_CHAR_SIZE 1024 // Size of buffers used to store netlist data - - -/** - * Function ReadSchematicNetlist - * Read a Eeschema (or OrcadPCB) netlist - * like: - * # EESchema Netlist Version 1.1 created 15/5/2008-12:09:21 - * ( - * ( /32568D1E $noname JP1 CONN_8X2 {Lib=CONN_8X2} - * ( 1 GND ) - * ( 2 /REF10 ) - * ( 3 GND ) - * ( 4 /REF11 ) - * ( 5 GND ) - * ( 6 /REF7 ) - * ( 7 GND ) - * ( 8 /REF9 ) - * ( 9 GND ) - * ( 10 /REF6 ) - * ( 11 GND ) - * ( 12 /REF8 ) - * ( 13 GND ) - * ( 14 /REF4 ) - * ( 15 GND ) - * ( 16 /REF5 ) - * ) - * ( /325679C1 $noname RR1 9x1K {Lib=RR9} - * ( 1 VCC ) - * ( 2 /REF5 ) - * ( 3 /REF4 ) - * ( 4 /REF8 ) - * ( 5 /REF6 ) - * ( 6 /REF9 ) - * ( 7 /REF7 ) - * ( 8 /REF11 ) - * ( 9 /REF10 ) - * ( 10 ? ) - * ) - * ) - * * - * { Allowed footprints by component: - * $component R5 - * R? - * SM0603 - * SM0805 - * $endlist - * $component C2 - * SM* - * C? - * C1-1 - * $endlist - * $endfootprintlist - * } - */ int CVPCB_MAINFRAME::ReadSchematicNetlist() { - int idx, jj, k; - char cbuffer[BUFFER_CHAR_SIZE]; /* temporary storage */ - char* ptchar; - COMPONENT* Cmp; - FILE* source; + FILE* netfile = wxFopen( m_NetlistFileName.GetFullPath(), wxT( "rt" ) ); - m_modified = false; - m_isEESchemaNetlist = false; - - /* Clear components buffer */ - if( !m_components.empty() ) + if( netfile == NULL ) { - m_components.clear(); - } - - source = wxFopen( m_NetlistFileName.GetFullPath(), wxT( "rt" ) ); - - if( source == 0 ) - { - DisplayError( this, _( "File <" ) + m_NetlistFileName.GetFullPath() + - _( "> not found" ) ); + wxString msg; + msg.Printf( _( "Could not open file <%>" ), + GetChars( m_NetlistFileName.GetFullPath() ) ); + wxMessageBox( msg ); return -1; } - // FILE_LINE_READER will close the file. - FILE_LINE_READER netlistReader( source, m_NetlistFileName.GetFullPath() ); + NETLIST_READER netList_Reader( NULL, NULL ); + netList_Reader.m_UseTimeStamp = false; + netList_Reader.m_ChangeFootprints = false; + netList_Reader.m_UseCmpFile = false; + netList_Reader.SetFilesnames( m_NetlistFileName.GetFullPath(), wxEmptyString ); - /* Read the file header (must be "( { OrCAD PCB" or "({ OrCAD PCB" ) - * or "# EESchema Netlist" - */ - netlistReader.ReadLine(); - const char* Line = netlistReader.Line(); + // True to read footprint filters section: true for CvPcb, false pro Pcbnew + netList_Reader.ReadLibpartSectionSetOpt( true ); - /* test for netlist type PCB2 */ - idx = strnicmp( Line, "( {", 3 ); - if( idx != 0 ) - idx = strnicmp( Line, "({", 2 ); - if( idx != 0 ) + bool success = netList_Reader.ReadNetList( netfile ); + if( !success ) { - idx = strnicmp( Line, "# EESchema", 7 ); /* net type EESchema */ - if( idx == 0 ) - m_isEESchemaNetlist = true; + wxMessageBox( _("Netlist read error") ); + return false; } - if( idx != 0 ) + // Now copy footprints info into Cvpcb list: + COMPONENT_INFO_LIST& cmpInfo = netList_Reader.GetComponentInfoList(); + for( unsigned ii = 0; ii < cmpInfo.size(); ii++ ) + m_components.push_back( cmpInfo[ii] ); + cmpInfo.clear(); // cmpInfo is no more owner of the list. + + // Sort components by reference: + sort( m_components.begin(), m_components.end() ); + + // Now copy filters in m_components, if netlist type is KICAD + // ( when the format is the "old" PCBNEW format, filters are already in + // m_component list + if( NETLIST_TYPE_KICAD == netList_Reader.GetNetlistType() ) { - wxString msg, Lineconv = FROM_UTF8( Line ); - msg.Printf( _( "Unknown file format <%s>" ), Lineconv.GetData() ); - DisplayError( this, msg ); - return -3; + for( unsigned ii = 0; ii < m_components.size(); ii++ ) + { + LIPBART_INFO* libpart = netList_Reader.GetLibpart(m_components[ii].m_Libpart); + if( libpart == NULL ) + continue; + + // now copy filter list + m_components[ii].m_FootprintFilter = libpart->m_FootprintFilter; + } } - SetStatusText( _( "Netlist Format: Eeschema" ), 0 ); - - - /* Read the netlist */ - for( ; ; ) - { - /* Search the beginning of a component description */ - - if( netlistReader.ReadLine( ) == 0 ) - break; - Line = netlistReader.Line(); - - /* Remove blanks */ - idx = 0; - while( Line[idx] == ' ' ) - idx++; - - /* remove empty lines : */ - if( Line[idx] < ' ' ) - continue; - - if( strnicmp( &Line[idx], "{ Allowed footprints", 20 ) == 0 ) - { - ReadFootprintFilterList( netlistReader, m_components ); - continue; - } - - if( strnicmp( &Line[idx], "( ", 2 ) != 0 ) - continue; - - /*******************************/ - /* Component description found */ - /*******************************/ - Cmp = new COMPONENT(); // Creates the new component storage - - while( Line[idx] != ' ' ) - idx++; - - while( Line[idx] == ' ' ) - idx++; - - /* idx points the beginning of the schematic time stamp */ - jj = 0; - while( Line[idx] != ' ' && Line[idx] ) - cbuffer[jj++] = Line[idx++]; - cbuffer[jj] = 0; - Cmp->m_TimeStamp = FROM_UTF8( cbuffer ); - - /* search val/ref.lib */ - while( Line[idx] == ' ' ) - idx++; - - /* idx points the component value. - * Read value */ - ptchar = strstr( (char*) &Line[idx], " " ); // Search end of value field (space) - if( ptchar == 0 ) - { - wxString msg = _( "Netlist error: " ); - msg << FROM_UTF8( Line ); - DisplayError( this, msg ); - k = 0; - } - else - k = ptchar - Line; - - for( jj = 0; idx < k; idx++ ) - { - cbuffer[jj++] = Line[idx]; - } - cbuffer[jj] = 0; - // Copy footprint name: - if( m_isEESchemaNetlist && strnicmp( cbuffer, "$noname", 7 ) != 0 ) - Cmp->m_Module = FROM_UTF8(cbuffer); - - /* Search component reference */ - while( Line[idx] != ' ' && Line[idx] ) - idx++; - - /* goto end of value field */ - while( Line[idx] == ' ' && Line[idx] ) - idx++; - - /* goto beginning of reference */ - for( jj = 0; ; idx++ ) - { - if( Line[idx] == ' ' || Line[idx] == 0) - break; - cbuffer[jj++] = Line[idx]; - } - cbuffer[jj] = 0; - Cmp->m_Reference = FROM_UTF8(cbuffer); - - /* Search component value */ - while( Line[idx] == ' ' && Line[idx] ) - idx++; - - // goto beginning of value - for( jj = 0 ; ; idx++ ) - { - if( (Line[idx] == ' ') || (Line[idx] == '\n') || (Line[idx] == '\r') || Line[idx] == 0) - break; - cbuffer[jj++] = Line[idx]; - } - cbuffer[jj] = 0; - Cmp->m_Value = FROM_UTF8(cbuffer); - - m_components.push_back( Cmp ); - - ReadPinConnection( netlistReader, Cmp ); - } - - m_components.sort(); - return 0; } - - -int ReadFootprintFilterList( FILE_LINE_READER& aNetlistReader, COMPONENT_LIST& aComponentsList ) -{ - const char* Line = aNetlistReader; - wxString CmpRef; - COMPONENT* Cmp = NULL; - - for( ; ; ) - { - if( aNetlistReader.ReadLine( ) == 0 ) - break; - if( strnicmp( Line, "$endlist", 8 ) == 0 ) - { - Cmp = NULL; - continue; - } - if( strnicmp( Line, "$endfootprintlist", 4 ) == 0 ) - return 0; - - if( strnicmp( Line, "$component", 10 ) == 0 ) // New component ref found - { - CmpRef = FROM_UTF8( Line + 11 ); - CmpRef.Trim( true ); - CmpRef.Trim( false ); - - /* Search the new component in list */ - BOOST_FOREACH( COMPONENT & component, aComponentsList ) - { - Cmp = &component; - if( Cmp->m_Reference == CmpRef ) - break; - } - } - else if( Cmp ) - { - wxString fp = FROM_UTF8( Line + 1 ); - fp.Trim( false ); - fp.Trim( true ); - Cmp->m_FootprintFilter.Add( fp ); - } - } - - return 1; -} - - -int ReadPinConnection( FILE_LINE_READER& aNetlistReader, COMPONENT* Cmp ) -{ - int i, jj; - char cbuffer[BUFFER_CHAR_SIZE]; - - for( ; ; ) - { - /* Find beginning of description. */ - for( ; ; ) - { - if( aNetlistReader.ReadLine() == 0 ) - return -1; - - char* Line = aNetlistReader.Line(); - - /* Remove blanks from the beginning of the line. */ - i = 0; while( Line[i] == ' ' ) - i++; - - while( Line[i] == '(' ) - i++; - - while( Line[i] == ' ' ) - i++; - - /* remove empty lines : */ - if( Line[i] < ' ' ) - continue; - - /* End of description? */ - if( Line[i] == ')' ) - return 0; - - PIN * Pin = new PIN(); - - /* Read pin name, usually 4 letters */ - for( jj = 0; ; i++ ) - { - if( Line[i] == ' ' || Line[i] == 0 ) - break; - cbuffer[jj++] = Line[i]; - } - cbuffer[jj] = 0; - Pin->m_Number = FROM_UTF8(cbuffer); - - /* Read netname */ - while( Line[i] == ' ' ) - i++; - - for( jj = 0; ; i++ ) - { - if( Line[i] == ' ' || Line[i] == '\n' || Line[i] == '\r' || Line[i] == 0 ) - break; - cbuffer[jj++] = Line[i]; - } - cbuffer[jj] = 0; - Pin->m_Net = FROM_UTF8(cbuffer); - - Cmp->m_Pins.push_back( Pin ); - } - } -} diff --git a/cvpcb/savecmp.cpp b/cvpcb/savecmp.cpp index 9d1f3dbb4d..c22ef3e158 100644 --- a/cvpcb/savecmp.cpp +++ b/cvpcb/savecmp.cpp @@ -39,13 +39,13 @@ int CVPCB_MAINFRAME::SaveComponentList( const wxString& aFullFileName ) fprintf( dest, " Created by %s", TO_UTF8( Title ) ); fprintf( dest, " date = %s\n", TO_UTF8( DateAndTime() ) ); - BOOST_FOREACH( COMPONENT& component, m_components ) + BOOST_FOREACH( COMPONENT_INFO& component, m_components ) { fprintf( dest, "\nBeginCmp\n" ); fprintf( dest, "TimeStamp = %s;\n", TO_UTF8( component.m_TimeStamp ) ); fprintf( dest, "Reference = %s;\n", TO_UTF8( component.m_Reference ) ); fprintf( dest, "ValeurCmp = %s;\n", TO_UTF8( component.m_Value ) ); - fprintf( dest, "IdModule = %s;\n", TO_UTF8( component.m_Module ) ); + fprintf( dest, "IdModule = %s;\n", TO_UTF8( component.m_Footprint ) ); fprintf( dest, "EndCmp\n" ); } @@ -159,13 +159,13 @@ bool CVPCB_MAINFRAME::LoadComponentFile( const wxString& aFileName ) } /* End reading component description. */ /* Search corresponding component and NetList Update its parameters. */ - BOOST_FOREACH( COMPONENT& component, m_components ) + BOOST_FOREACH( COMPONENT_INFO& component, m_components ) { if( namecmp != component.m_Reference ) continue; /* Copy the name of the corresponding module. */ - component.m_Module = ilib; + component.m_Footprint = ilib; } } diff --git a/cvpcb/tool_cvpcb.cpp b/cvpcb/tool_cvpcb.cpp index 5e22c7cd83..3cf0a857b7 100644 --- a/cvpcb/tool_cvpcb.cpp +++ b/cvpcb/tool_cvpcb.cpp @@ -36,6 +36,8 @@ #include #include +#include + void CVPCB_MAINFRAME::ReCreateHToolbar() { @@ -48,11 +50,10 @@ void CVPCB_MAINFRAME::ReCreateHToolbar() wxAUI_TB_DEFAULT_STYLE | wxAUI_TB_HORZ_LAYOUT ); m_mainToolBar->AddTool( ID_CVPCB_READ_INPUT_NETLIST, wxEmptyString, - KiBitmap( open_document_xpm ), - _( "Open a net list file" ) ); + KiBitmap( open_document_xpm ), LOAD_FILE_HELP ); m_mainToolBar->AddTool( wxID_SAVE, wxEmptyString, KiBitmap( save_xpm ), - _( "Save net list and footprint files" ) ); + SAVE_HLP_MSG ); m_mainToolBar->AddSeparator(); m_mainToolBar->AddTool( ID_CVPCB_CREATE_CONFIGWINDOW, wxEmptyString, diff --git a/cvpcb/writenetlistpcbnew.cpp b/cvpcb/writenetlistpcbnew.cpp index 74bbd43f20..0155794989 100644 --- a/cvpcb/writenetlistpcbnew.cpp +++ b/cvpcb/writenetlistpcbnew.cpp @@ -32,12 +32,12 @@ int CVPCB_MAINFRAME::GenNetlistPcbnew( FILE* file,bool isEESchemaNetlist ) fprintf( file, "( { netlist created %s }\n", TO_UTF8( DateAndTime() ) ); - BOOST_FOREACH( COMPONENT& component, m_components ) + BOOST_FOREACH( COMPONENT_INFO& component, m_components ) { fprintf( file, " ( %s ", TO_UTF8( component.m_TimeStamp ) ); - if( !component.m_Module.IsEmpty() ) - fprintf( file, "%s", TO_UTF8( component.m_Module ) ); + if( !component.m_Footprint.IsEmpty() ) + fprintf( file, "%s", TO_UTF8( component.m_Footprint ) ); else fprintf( file, "$noname$" ); @@ -67,7 +67,6 @@ int CVPCB_MAINFRAME::GenNetlistPcbnew( FILE* file,bool isEESchemaNetlist ) return 0; } - /* * Write the allowed footprint list for each component */ @@ -75,7 +74,7 @@ void WriteFootprintFilterInfos( FILE* file, COMPONENT_LIST& list ) { bool WriteHeader = false; - BOOST_FOREACH( COMPONENT& component, list ) + BOOST_FOREACH( COMPONENT_INFO& component, list ) { unsigned int FilterCount; FilterCount = component.m_FootprintFilter.GetCount(); @@ -101,4 +100,3 @@ void WriteFootprintFilterInfos( FILE* file, COMPONENT_LIST& list ) if( WriteHeader ) fprintf( file, "$endfootprintlist\n}\n" ); } - diff --git a/pcbnew/CMakeLists.txt b/pcbnew/CMakeLists.txt index 8e4eb0693e..95adeead70 100644 --- a/pcbnew/CMakeLists.txt +++ b/pcbnew/CMakeLists.txt @@ -151,6 +151,7 @@ set(PCBNEW_SRCS muonde.cpp muwave_command.cpp netlist.cpp + netlist_reader_common.cpp netlist_reader_firstformat.cpp netlist_reader_kicad.cpp onleftclick.cpp diff --git a/pcbnew/netlist.cpp b/pcbnew/netlist.cpp index da5fd8af11..8b96bb998d 100644 --- a/pcbnew/netlist.cpp +++ b/pcbnew/netlist.cpp @@ -167,13 +167,15 @@ bool PCB_EDIT_FRAME::ReadPcbNetlist( const wxString& aNetlistFullFilename, netList_Reader.m_UseTimeStamp = aSelect_By_Timestamp; netList_Reader.m_ChangeFootprints = aChangeFootprint; netList_Reader.m_UseCmpFile = useCmpfile; - netList_Reader.ReadFootprintFilterSetOpt( true ); netList_Reader.SetFilesnames( aNetlistFullFilename, aCmpFullFileName ); + // True to read footprint filters section: true for CvPcb, false pro Pcbnew + netList_Reader.ReadLibpartSectionSetOpt( false ); + bool success = netList_Reader.ReadNetList( netfile ); if( !success ) { - wxMessageBox( _("Netlist read error (unrecognized format)") ); + wxMessageBox( _("Netlist read error") ); return false; } @@ -201,281 +203,6 @@ bool PCB_EDIT_FRAME::ReadPcbNetlist( const wxString& aNetlistFullFilename, return true; } -/* - * Function ReadNetList - * The main function to detect the netlist format,and run the right netlist reader - * aFile = the already opened file (will be closed by the netlist reader) - */ -bool NETLIST_READER::ReadNetList( FILE* aFile ) -{ - // Try to determine the netlist type: - // Beginning of the first line of known formats, without spaces - #define HEADERS_COUNT 3 - #define HEADER_ORCADPCB "({EESchemaNetlist" - #define HEADER_PCB1 "#EESchemaNetlist" - #define HEADER_KICAD_NETFMT "(export" - const std::string headers[HEADERS_COUNT] = - { - HEADER_ORCADPCB, HEADER_PCB1, HEADER_KICAD_NETFMT - }; - - int format = -1; - for ( int jj = 0; jj < HEADERS_COUNT; jj++ ) - { - int imax = headers[jj].size(); - int ii = 0; - for( ; ii < imax; ii++ ) - { - int data; - // Read header, and skip blanks to avoid errors if an header changes - do - { - data = fgetc( aFile ); - } while ( ( data == ' ' ) &&( EOF != data ) ) ; - - if( (int)headers[jj][ii] == data ) - continue; - break; - } - if( ii == imax ) // header found - { - format = jj; - break; - } - rewind( aFile ); - } - - rewind( aFile ); - bool success = false; - switch( format ) - { - case 0: - m_typeNetlist = NETLIST_TYPE_ORCADPCB2; - success = ReadOldFmtdNetList( aFile ); - break; - - case 1: - m_typeNetlist = NETLIST_TYPE_PCB1; - success = ReadOldFmtdNetList( aFile ); - break; - - case 2: - m_typeNetlist = NETLIST_TYPE_KICAD; - success = ReadKicadNetList( aFile ); - break; - - default: // Unrecognized format: - break; - - } - - return success; -} - -bool NETLIST_READER::InitializeModules() -{ - if( m_UseCmpFile ) // Try to get footprint name from .cmp file - { - readModuleComponentLinkfile(); - } - - if( m_pcbframe == NULL ) - return true; - - for( unsigned ii = 0; ii < m_modulesInNetlist.size(); ii++ ) - { - MODULE_INFO* currmod_info = m_modulesInNetlist[ii]; - // Test if module is already loaded. - wxString * idMod = m_UseTimeStamp? - &currmod_info->m_TimeStamp : &currmod_info->m_Reference; - - MODULE* module = FindModule( *idMod ); - if( module == NULL ) // not existing, load it - { - m_newModulesList.push_back( currmod_info ); - } - } - - bool success = loadNewModules(); - - // Update modules fields - for( unsigned ii = 0; ii < m_modulesInNetlist.size(); ii++ ) - { - MODULE_INFO* currmod_info = m_modulesInNetlist[ii]; - // Test if module is already loaded. - wxString * idMod = m_UseTimeStamp? - &currmod_info->m_TimeStamp : &currmod_info->m_Reference; - - MODULE* module = FindModule( *idMod ); - if( module ) - { - // Update current module ( reference, value and "Time Stamp") - module->m_Reference->m_Text = currmod_info->m_Reference; - module->m_Value->m_Text = currmod_info->m_Value; - module->SetPath( currmod_info->m_TimeStamp ); - } - else // not existing - { - } - } - - // clear pads netnames - for( MODULE* module = m_pcbframe->GetBoard()->m_Modules; module; module = module->Next() ) - { - for( D_PAD* pad = module->m_Pads; pad; pad = pad->Next() ) - pad->SetNetname( wxEmptyString ); - } - - return success; -} - -void NETLIST_READER::TestFootprintsMatchingAndExchange() -{ - if( m_pcbframe == NULL ) - return; - - for( MODULE* module = m_pcbframe->GetBoard()->m_Modules; module; module = module->Next() ) - { - // Search for the corresponding module info - MODULE_INFO * mod_info = NULL; - for( unsigned ii = 0; ii < m_modulesInNetlist.size(); ii++ ) - { - MODULE_INFO * candidate = m_modulesInNetlist[ii]; - // Test if mod_info matches the current module: - if( candidate->m_Reference.CmpNoCase( module->GetReference() ) == 0 ) - { - mod_info = candidate; - break; - } - } - if( mod_info == NULL ) // not found in netlist - continue; - - if( module->GetLibRef().CmpNoCase( mod_info->m_Footprint ) != 0 ) - { - if( m_ChangeFootprints ) // footprint exchange allowed. - { - MODULE* newModule = m_pcbframe->GetModuleLibrary( wxEmptyString, - mod_info->m_Footprint, - false ); - - if( newModule ) - { - // Change old module to the new module (and delete the old one) - m_pcbframe->Exchange_Module( module, newModule, NULL ); - module = newModule; - } - else if( m_messageWindow ) - { - wxString msg; - msg.Printf( _( "Component \"%s\": module [%s] not found\n" ), - GetChars( mod_info->m_Reference ), - GetChars( mod_info->m_Footprint ) ); - - m_messageWindow->AppendText( msg ); - } - } - else if( m_messageWindow ) - { - wxString msg; - msg.Printf( _( "Component \"%s\": Mismatch! module is [%s] and netlist said [%s]\n" ), - GetChars( mod_info->m_Reference ), - GetChars( module->GetLibRef() ), - GetChars( mod_info->m_Footprint ) ); - - m_messageWindow->AppendText( msg ); - } - } - } -} - -/** - * Function SetPadNetName - * Update a pad netname - * @param aModule = module reference - * @param aPadname = pad name (pad num) - * @param aNetname = new net name of the pad - * @return a pointer to the pad or NULL if the pad is not found - */ -D_PAD* NETLIST_READER::SetPadNetName( const wxString & aModule, const wxString & aPadname, - const wxString & aNetname ) -{ - MODULE* module = m_pcbframe->GetBoard()->FindModuleByReference( aModule ); - if( module ) - { - D_PAD * pad = module->FindPadByName( aPadname ); - if( pad ) - { - pad->SetNetname( aNetname ); - return pad; - } - if( m_messageWindow ) - { - wxString msg; - msg.Printf( _( "Module [%s]: Pad [%s] not found" ), - GetChars( aModule ), GetChars( aPadname ) ); - m_messageWindow->AppendText( msg + wxT( "\n" ) ); - } - } - - return NULL; -} - - -/* function RemoveExtraFootprints - * Remove (delete) not locked footprints found on board, but not in netlist - */ -void NETLIST_READER::RemoveExtraFootprints() -{ - MODULE* nextModule; - - MODULE* module = m_pcbframe->GetBoard()->m_Modules; - for( ; module != NULL; module = nextModule ) - { - unsigned ii; - nextModule = module->Next(); - - if( module->m_ModuleStatus & MODULE_is_LOCKED ) - continue; - - for( ii = 0; ii < m_modulesInNetlist.size(); ii++ ) - { - MODULE_INFO* mod_info = m_modulesInNetlist[ii]; - if( module->m_Reference->m_Text.CmpNoCase( mod_info->m_Reference ) == 0 ) - break; // Module is found in net list. - } - - if( ii == m_modulesInNetlist.size() ) // Module not found in netlist. - module->DeleteStructure(); - } -} - - -/* Search for a module id the modules existing in the current BOARD. - * aId is a key to identify the module to find: - * The reference or the full time stamp, according to m_UseTimeStamp - * Returns the module is found, NULL otherwise. - */ -MODULE* NETLIST_READER::FindModule( const wxString& aId ) -{ - MODULE* module = m_pcbframe->GetBoard()->m_Modules; - for( ; module != NULL; module = module->Next() ) - { - if( m_UseTimeStamp ) // identification by time stamp - { - if( aId.CmpNoCase( module->m_Path ) == 0 ) - return module; - } - else // identification by Reference - { - if( aId.CmpNoCase( module->m_Reference->m_Text ) == 0 ) - return module; - } - } - - return NULL; -} - /** * build and shows a list of existing modules on board @@ -552,7 +279,7 @@ void PCB_EDIT_FRAME::Test_Duplicate_Missing_And_Extra_Footprints( if( ! netList_Reader.ReadNetList( netfile ) ) return; // error - std::vector & moduleInfoList = netList_Reader.GetModuleInfoList(); + COMPONENT_INFO_LIST& moduleInfoList = netList_Reader.GetComponentInfoList(); if( moduleInfoList.size() == 0 ) { @@ -592,12 +319,12 @@ void PCB_EDIT_FRAME::Test_Duplicate_Missing_And_Extra_Footprints( for( unsigned ii = 0; ii < moduleInfoList.size(); ii++ ) { - MODULE_INFO* mod_info = moduleInfoList[ii]; - module = GetBoard()->FindModuleByReference( mod_info->m_Reference ); + COMPONENT_INFO* cmp_info = moduleInfoList[ii]; + module = GetBoard()->FindModuleByReference( cmp_info->m_Reference ); if( module == NULL ) // Module missing, not found in board { - list << wxT("
") << mod_info->m_Reference; - list << wxT(" (") << mod_info->m_Value << wxT(")"); + list << wxT("
") << cmp_info->m_Reference; + list << wxT(" (") << cmp_info->m_Value << wxT(")"); err_cnt++; } if( ERR_CNT_MAX < err_cnt ) @@ -613,8 +340,8 @@ void PCB_EDIT_FRAME::Test_Duplicate_Missing_And_Extra_Footprints( unsigned ii; for( ii = 0; ii < moduleInfoList.size(); ii++ ) { - MODULE_INFO* mod_info = moduleInfoList[ii]; - if( module->m_Reference->m_Text.CmpNoCase( mod_info->m_Reference ) == 0 ) + COMPONENT_INFO* cmp_info = moduleInfoList[ii]; + if( module->m_Reference->m_Text.CmpNoCase( cmp_info->m_Reference ) == 0 ) break; // Module is in net list. } @@ -641,215 +368,3 @@ void PCB_EDIT_FRAME::Test_Duplicate_Missing_And_Extra_Footprints( dlg.AddHTML_Text(list); dlg.ShowModal(); } - - -/* - * function readModuleComponentLinkfile - * read the *.cmp file ( filename in m_cmplistFullName ) - * giving the equivalence Footprint_names / components - * to find the footprint name corresponding to aCmpIdent - * return true if the file can be read - * - * Sample file: - * - * Cmp-Mod V01 Genere by Pcbnew 29/10/2003-13: 11:6 * - * BeginCmp - * TimeStamp = /32307DE2/AA450F67; - * Reference = C1; - * ValeurCmp = 47uF; - * IdModule = CP6; - * EndCmp - * - */ - -bool NETLIST_READER::readModuleComponentLinkfile() -{ - wxString refcurrcmp; // Stores value read from line like Reference = BUS1; - wxString timestamp; // Stores value read from line like TimeStamp = /32307DE2/AA450F67; - wxString footprint; // Stores value read from line like IdModule = CP6; - - FILE* cmpFile = wxFopen( m_cmplistFullName, wxT( "rt" ) ); - - if( cmpFile == NULL ) - { - wxString msg; - msg.Printf( _( "File <%s> not found, use Netlist for footprints selection" ), - GetChars( m_cmplistFullName ) ); - - if( m_messageWindow ) - m_messageWindow->AppendText( msg ); - return false; - } - - // netlineReader dtor will close cmpFile - FILE_LINE_READER netlineReader( cmpFile, m_cmplistFullName ); - wxString buffer; - wxString value; - - while( netlineReader.ReadLine() ) - { - buffer = FROM_UTF8( netlineReader.Line() ); - - if( ! buffer.StartsWith( wxT("BeginCmp") ) ) - continue; - - // Begin component description. - refcurrcmp.Empty(); - footprint.Empty(); - timestamp.Empty(); - - while( netlineReader.ReadLine() ) - { - buffer = FROM_UTF8( netlineReader.Line() ); - - if( buffer.StartsWith( wxT("EndCmp") ) ) - break; - - // store string value, stored between '=' and ';' delimiters. - value = buffer.AfterFirst( '=' ); - value = value.BeforeLast( ';'); - value.Trim(true); - value.Trim(false); - - if( buffer.StartsWith( wxT("Reference") ) ) - { - refcurrcmp = value; - continue; - } - - if( buffer.StartsWith( wxT("IdModule =" ) ) ) - { - footprint = value; - continue; - } - - if( buffer.StartsWith( wxT("TimeStamp =" ) ) ) - { - timestamp = value; - continue; - } - } - - // Find the corresponding item in module info list: - for( unsigned ii = 0; ii < m_modulesInNetlist.size(); ii++ ) - { - MODULE_INFO * mod_info = m_modulesInNetlist[ii]; - if( m_UseTimeStamp ) // Use schematic timestamp to locate the footprint - { - if( mod_info->m_TimeStamp.CmpNoCase( timestamp ) == 0 && - !timestamp.IsEmpty() ) - { // Found - if( !footprint.IsEmpty() ) - mod_info->m_Footprint = footprint; - break; - } - } - else // Use schematic reference to locate the footprint - { - if( mod_info->m_Reference.CmpNoCase( refcurrcmp ) == 0 ) // Found! - { - if( !footprint.IsEmpty() ) - mod_info->m_Footprint = footprint; - break; - } - } - } - } - - return true; -} - - -/* Function to sort the footprint list, used by loadNewModules. - * the given list is sorted by name - */ -static bool SortByLibName( MODULE_INFO* ref, MODULE_INFO* cmp ) -{ - int ii = ref->m_Footprint.CmpNoCase( cmp->m_Footprint ); - return ii > 0; -} - - -/* Load new modules from library. - * If a new module is already loaded it is duplicated, which avoids multiple - * unnecessary disk or net access to read libraries. - * return false if a footprint is not found, true if OK - */ -bool NETLIST_READER::loadNewModules() -{ - MODULE_INFO* ref, * cmp; - MODULE* Module = NULL; - wxPoint ModuleBestPosition; - BOARD* pcb = m_pcbframe->GetBoard(); - bool success = true; - - if( m_newModulesList.size() == 0 ) - return true; - - sort( m_newModulesList.begin(), m_newModulesList.end(), SortByLibName ); - - // Calculate the footprint "best" position: - EDA_RECT bbbox = pcb->ComputeBoundingBox( true ); - - if( bbbox.GetWidth() || bbbox.GetHeight() ) - { - ModuleBestPosition = bbbox.GetEnd(); - ModuleBestPosition.y += 5000; - } - - ref = cmp = m_newModulesList[0]; - - for( unsigned ii = 0; ii < m_newModulesList.size(); ii++ ) - { - cmp = m_newModulesList[ii]; - - if( (ii == 0) || ( ref->m_Footprint != cmp->m_Footprint) ) - { - // New footprint : must be loaded from a library - Module = m_pcbframe->GetModuleLibrary( wxEmptyString, cmp->m_Footprint, false ); - ref = cmp; - - if( Module == NULL ) - { - success = false; - if( m_messageWindow ) - { - wxString msg; - msg.Printf( _( "Component [%s]: footprint <%s> not found" ), - GetChars( cmp->m_Reference ), - GetChars( cmp->m_Footprint ) ); - - msg += wxT("\n"); - m_messageWindow->AppendText( msg ); - } - continue; - } - - Module->SetPosition( ModuleBestPosition ); - - /* Update schematic links : reference "Time Stamp" and schematic - * hierarchical path */ - Module->m_Reference->m_Text = cmp->m_Reference; - Module->SetTimeStamp( GetNewTimeStamp() ); - Module->SetPath( cmp->m_TimeStamp ); - } - else - { - // Footprint already loaded from a library, duplicate it (faster) - if( Module == NULL ) - continue; // Module does not exist in library. - - MODULE* newmodule = new MODULE( *Module ); - newmodule->SetParent( pcb ); - - pcb->Add( newmodule, ADD_APPEND ); - - Module = newmodule; - Module->m_Reference->m_Text = cmp->m_Reference; - Module->SetTimeStamp( GetNewTimeStamp() ); - Module->SetPath( cmp->m_TimeStamp ); - } - } - - return success; -} diff --git a/pcbnew/netlist_reader.h b/pcbnew/netlist_reader.h index 8c351dcb07..e6ed974f38 100644 --- a/pcbnew/netlist_reader.h +++ b/pcbnew/netlist_reader.h @@ -30,6 +30,7 @@ */ #include +#include #include #include @@ -41,21 +42,47 @@ #include #include - /* - * Helper class, to store new footprints info found in netlist. - * New footprints are footprints relative to new components found in netlist + * Helper class, to store for a footprint the footprint filter info, + * found in new format KiCad netlist. + * For CvPcb only + * Note: features for CvPcb are for a temporary use. + * They could be removed when CvPcb is modified + * (perhaps when it does not use anumore a netlist to build the component to footprint link) */ -class MODULE_INFO +class LIPBART_INFO { public: - wxString m_Footprint; - wxString m_Reference; - wxString m_Value; - wxString m_TimeStamp; - wxArrayString m_FootprintFilter; + wxString m_Libpart; // the libpart name. + wxArrayString m_FootprintFilter; // an array of footprint filters found in netlist, + // for this footprint -public: MODULE_INFO( const wxString& libname, +public: + + LIPBART_INFO( const wxString& aLibpart ) + { + m_Libpart = aLibpart; + } +}; + +typedef std::vector LIPBART_INFO_LIST; + + +/* + * Helper class, to store components and footprints info found in netlist. + * (component reference and time stamp, footprint name ... + */ +class COMPONENT_INFO +{ +public: + wxString m_Footprint; // the footprint name found in netlist, the in .cmp file + wxString m_Reference; // the schematic reference found in netlist + wxString m_Value; // the schematic value found in netlist + wxString m_TimeStamp; // the schematic full time stamp found in netlist + wxString m_Libpart; // the schematic libpart found in netlist + wxArrayString m_FootprintFilter; // a footprint filters list found in old format netlist + +public: COMPONENT_INFO( const wxString& libname, const wxString& cmpname, const wxString& value, const wxString& timestamp ) @@ -66,38 +93,43 @@ public: MODULE_INFO( const wxString& libname, m_TimeStamp = timestamp; } - ~MODULE_INFO() { }; + ~COMPONENT_INFO() { }; }; enum typenetlist { NETLIST_TYPE_UNSPECIFIED = 0, NETLIST_TYPE_ORCADPCB2, // the basic format used by pcbnew - NETLIST_TYPE_PCB1, // the format used by pcbnew, basic format + more info - NETLIST_TYPE_KICAD + NETLIST_TYPE_PCBNEW, // the format used by pcbnew, basic format + more info + NETLIST_TYPE_KICAD // new format using common S expression }; +typedef std::vector COMPONENT_INFO_LIST; /* * Helper class, to read a netlist. */ class NETLIST_READER { private: - PCB_EDIT_FRAME* m_pcbframe; // the main Pcbnew frame - wxTextCtrl* m_messageWindow; // a textctrl to show messages (can be NULL) - wxString m_netlistFullName; // The full netlist filename - wxString m_cmplistFullName; // The full component/footprint association filename - MODULE* m_currModule; // The footprint currently being read in netlist - std::vector m_modulesInNetlist; // The list of footprints, found in netlist - // (must be loaded from libraries) - std::vector m_newModulesList; // The list of new footprints, - // found in netlist, but not on board - // (must be loaded from libraries) - bool m_buildModuleListOnly; // if true read netlist, populates m_modulesInNetlist - // but do not read and change nets and modules on board - bool m_readFootprintFilter; // if true read footprint filter section - enum typenetlist m_typeNetlist; // type opt the netlist currently read + PCB_EDIT_FRAME* m_pcbframe; // the main Pcbnew frame (or NULL for CvPcb) + wxTextCtrl* m_messageWindow; // a textctrl to show messages (can be NULL) + wxString m_netlistFullName; // The full netlist filename + wxString m_cmplistFullName; // The full component/footprint association filename + MODULE* m_currModule; // The footprint currently being read in netlist + COMPONENT_INFO_LIST m_componentsInNetlist; // The list of footprints, found in netlist + // (must be loaded from libraries) + COMPONENT_INFO_LIST m_newModulesList; // The list of new footprints, + // found in netlist, but not on board + // (must be loaded from libraries) + LIPBART_INFO_LIST m_libpartList; // For Kicad new netlist format: + // list of libpart found in netlist + // A libpart contains the footprint filters for CvPcb + bool m_buildModuleListOnly; // if true read netlist, populates m_componentsInNetlist + // but do not read and change nets and modules on board + bool m_readLibpartSection; // if true read Libparts section, + // and therefore the footprints filters + enum typenetlist m_typeNetlist; // type opt the netlist currently read public: bool m_UseCmpFile; // true to use .cmp files as component/footprint file link @@ -107,7 +139,9 @@ public: bool m_ChangeFootprints; // Set to true to change existing footprints to new ones // when netlist gives a different footprint name -public: NETLIST_READER( PCB_EDIT_FRAME* aFrame, wxTextCtrl* aMessageWindow = NULL ) +public: + + NETLIST_READER( PCB_EDIT_FRAME* aFrame, wxTextCtrl* aMessageWindow = NULL ) { m_pcbframe = aFrame; m_messageWindow = aMessageWindow; @@ -115,7 +149,7 @@ public: NETLIST_READER( PCB_EDIT_FRAME* aFrame, wxTextCtrl* aMessageWindow = NUL m_ChangeFootprints = false; m_UseCmpFile = true; m_buildModuleListOnly = false; - m_readFootprintFilter = false; + m_readLibpartSection = false; m_typeNetlist = NETLIST_TYPE_UNSPECIFIED; } @@ -123,40 +157,97 @@ public: NETLIST_READER( PCB_EDIT_FRAME* aFrame, wxTextCtrl* aMessageWindow = NUL { // Free modules info list: for( unsigned ii = 0; ii < m_newModulesList.size(); ii++ ) - delete m_modulesInNetlist[ii]; + delete m_componentsInNetlist[ii]; - m_modulesInNetlist.clear(); + m_componentsInNetlist.clear(); m_newModulesList.clear(); + + // Free libpart info list: + for( unsigned ii = 0; ii < m_libpartList.size(); ii++ ) + delete m_libpartList[ii]; + m_libpartList.clear(); } - std::vector & GetModuleInfoList() + /** + * Function GetNetlistType + * @return the type of netlist read: + * NETLIST_TYPE_UNSPECIFIED: Unknown format + * NETLIST_TYPE_ORCADPCB2: the basic format used by pcbnew + * NETLIST_TYPE_PCBNEW: the format used by pcbnew, basic format + more info + * NETLIST_TYPE_KICAD: the new format + */ + int GetNetlistType() { - return m_modulesInNetlist; + return m_typeNetlist; } + /** + * Function GetComponentInfoList + * @return the component info list built from the netlist + */ + COMPONENT_INFO_LIST& GetComponentInfoList() + { + return m_componentsInNetlist; + } + + /** + * Function GetComponentInfoList + * @return a reference to the libpart info corresponding to a given part + * @param aPartname = the name of the libpart + */ + LIPBART_INFO* GetLibpart(const wxString & aPartname); + + /** + * Function IsCvPcbMode + * @return true if the netlist is read by CvPcb + * In cvpcb mode, nets are stored in module info, + * and the footprint filters list is read. + * There is also no board in CvPcb + */ + bool IsCvPcbMode() { return m_pcbframe == 0; } + /** * Function AddModuleInfo * Add a new module info to the main list of modules ifo * @param aModInfo = a reference to the item to add */ - void AddModuleInfo( MODULE_INFO* aModInfo ) + void AddModuleInfo( COMPONENT_INFO* aModInfo ) { - m_modulesInNetlist.push_back( aModInfo ); + m_componentsInNetlist.push_back( aModInfo ); } /** - * Function ReadFootprintFilterSetOpt - * Set to true or false the read footprint filter option - * When this option is false, the footprint filter section is ignored - * When this option is true, the footprint filter section is read, - * an filter strings are stored in module info + * Function AddLibpartInfo + * LIPBART_INFO items (and therefore footprint filter strings) are stored in + * m_libpartList + * @param aPartInfo = a refernce to the LIPBART_INFO to add in list + */ + void AddLibpartInfo( LIPBART_INFO * aPartInfo ) + { + m_libpartList.push_back( aPartInfo ); + } + + /** + * Function ReadLibpartSectionSetOpt + * Set to true or false the read Partlists section. + * footprint filters are found in this section + * When this option is false, the Partlists section is ignored + * When this option is true, the Partlists section is read, + * Libpart items (and therefore footprint filter strings) are stored in + * m_libpartList * @param aOpt = the value of option */ - void ReadFootprintFilterSetOpt( bool aOpt ) + void ReadLibpartSectionSetOpt( bool aOpt ) { - m_readFootprintFilter = aOpt; + m_readLibpartSection = aOpt; } + /** + * Function ReadLibpartSectionOpt + * @return the readPartlist option + */ + bool ReadLibpartSectionOpt() { return m_readLibpartSection; } + /** * Function BuildModuleListOnlySetOpt * Set to true or false the Build Module List Only option @@ -330,7 +421,7 @@ private: /** * function readModuleComponentLinkfile * read the *.cmp file ( filename in m_cmplistFullName ) - * and initialize the m_Footprint member of each item in m_modulesInNetlist, + * and initialize the m_Footprint member of each item in m_componentsInNetlist, * when it is found in file, and with a non empty footprint value * giving the equivalence between footprint names and components * to find the footprint name corresponding to aCmpIdent diff --git a/pcbnew/netlist_reader_firstformat.cpp b/pcbnew/netlist_reader_firstformat.cpp index ab71d0a619..40a8fb0624 100644 --- a/pcbnew/netlist_reader_firstformat.cpp +++ b/pcbnew/netlist_reader_firstformat.cpp @@ -30,7 +30,7 @@ /* * Netlist reader using the first format of pcbnew netlist. * This netlist reader build the list of modules found in netlist - * (list in m_modulesInNetlist) + * (list in m_componentsInNetlist) * and update pads netnames */ @@ -98,7 +98,7 @@ bool NETLIST_READER::ReadOldFmtdNetList( FILE* aFile ) if( *line == '{' ) // Start Comment or Pcbnew info section { is_comment = true; - if( m_readFootprintFilter && state == 0 && + if( ReadLibpartSectionOpt() && state == 0 && (strnicmp( line, "{ Allowed footprints", 20 ) == 0) ) { ReadOldFmtFootprintFilterList( netlineReader ); @@ -126,6 +126,24 @@ bool NETLIST_READER::ReadOldFmtdNetList( FILE* aFile ) } } + if( IsCvPcbMode() ) + { + for( ; ; ) + { + /* Search the beginning of Allowed footprints section */ + + if( netlineReader.ReadLine( ) == 0 ) + break; + char* line = StrPurge( netlineReader.Line() ); + if( strnicmp( line, "{ Allowed footprints", 20 ) == 0 ) + { + ReadOldFmtFootprintFilterList( netlineReader ); + return true; + } + } + return true; + } + if( BuildModuleListOnlyOpt() ) return true; // at this point, the module list is read and built. @@ -191,7 +209,7 @@ bool NETLIST_READER::ReadOldFmtdNetList( FILE* aFile ) /* Function ReadOldFmtNetlistModuleDescr * Read the beginning of a footprint description, from the netlist - * and add a module info to m_modulesInNetlist + * and add a module info to m_componentsInNetlist * Analyze the first line of a component description in netlist like: * ( /40C08647 $noname R20 4.7K {Lib=R} * (1 VCC) @@ -243,9 +261,9 @@ MODULE* NETLIST_READER::ReadOldFmtNetlistModuleDescr( char* aText, bool aBuildLi if( aBuildList ) { - MODULE_INFO* mod_info = new MODULE_INFO( footprintName, cmpReference, + COMPONENT_INFO* cmp_info = new COMPONENT_INFO( footprintName, cmpReference, cmpValue, timeStampPath ); - AddModuleInfo( mod_info ); + AddModuleInfo( cmp_info ); return NULL; } @@ -344,7 +362,7 @@ bool NETLIST_READER::SetPadNetName( char* aText ) bool NETLIST_READER::ReadOldFmtFootprintFilterList( FILE_LINE_READER& aNetlistReader ) { wxString cmpRef; - MODULE_INFO* mod_info = NULL; + COMPONENT_INFO* cmp_info = NULL; while( aNetlistReader.ReadLine() ) { @@ -352,7 +370,7 @@ bool NETLIST_READER::ReadOldFmtFootprintFilterList( FILE_LINE_READER& aNetlistR if( strnicmp( Line, "$endlist", 8 ) == 0 ) // end of list for the current component { - mod_info = NULL; + cmp_info = NULL; continue; } if( strnicmp( Line, "$endfootprintlist", 4 ) == 0 ) @@ -366,22 +384,22 @@ bool NETLIST_READER::ReadOldFmtFootprintFilterList( FILE_LINE_READER& aNetlistR cmpRef.Trim( false ); // Search the current component in module info list: - BOOST_FOREACH( MODULE_INFO * &component, m_modulesInNetlist ) + BOOST_FOREACH( COMPONENT_INFO * &component, m_componentsInNetlist ) { if( component->m_Reference == cmpRef ) { - mod_info = component; + cmp_info = component; break; } } } - else if( mod_info ) + else if( cmp_info ) { // Add new filter to list wxString fp = FROM_UTF8( Line + 1 ); fp.Trim( false ); fp.Trim( true ); - mod_info->m_FootprintFilter.Add( fp ); + cmp_info->m_FootprintFilter.Add( fp ); } } diff --git a/pcbnew/netlist_reader_kicad.cpp b/pcbnew/netlist_reader_kicad.cpp index 4431cd5a18..f9462e6767 100644 --- a/pcbnew/netlist_reader_kicad.cpp +++ b/pcbnew/netlist_reader_kicad.cpp @@ -60,11 +60,11 @@ public: * (sheetpath (names /) (tstamps /)) * (tstamp 3256759C)) */ - MODULE_INFO* ParseComp() throw( IO_ERROR, PARSE_ERROR ); + COMPONENT_INFO* ParseComp() throw( IO_ERROR, PARSE_ERROR ); /** - * Function ParseKicadFootprintFilterList + * Function ParseKicadLibpartList * Read the section "libparts" like: * (libparts * (libpart (lib device) (part C) @@ -85,7 +85,7 @@ public: *

This section is used by CvPcb, and is not useful in Pcbnew, * therefore it it not always read

*/ - bool ParseKicadFootprintFilterList() throw( IO_ERROR, PARSE_ERROR ); + void ParseKicadLibpartList() throw( IO_ERROR, PARSE_ERROR ); /** * Function ParseNet @@ -116,7 +116,7 @@ public: bool NETLIST_READER::ReadKicadNetList( FILE* aFile ) { - BOARD * brd = m_pcbframe->GetBoard(); + BOARD * brd = m_pcbframe ? m_pcbframe->GetBoard() : NULL; // netlineReader dtor will close aFile FILE_LINE_READER netlineReader( aFile, m_netlistFullName ); @@ -188,8 +188,8 @@ void NETLIST_READER_KICAD_PARSER::Parse( BOARD * aBrd ) if( token == T_comp ) { // A comp section if found. Read it - MODULE_INFO* mod_info = ParseComp(); - netlist_reader->AddModuleInfo( mod_info ); + COMPONENT_INFO* cmp_info = ParseComp(); + netlist_reader->AddModuleInfo( cmp_info ); } } if( netlist_reader->BuildModuleListOnlyOpt() ) @@ -213,6 +213,21 @@ void NETLIST_READER_KICAD_PARSER::Parse( BOARD * aBrd ) } } } + + if( token == T_libparts && netlist_reader->ReadLibpartSectionOpt() ) + { + // The section libparts starts here. + while( ( token = NextTok() ) != T_RIGHT ) + { + if( token == T_LEFT ) + token = NextTok(); + if( token == T_libpart ) + { + // A libpart section if found. Read it + ParseKicadLibpartList(); + } + } + } } } @@ -293,7 +308,7 @@ void NETLIST_READER_KICAD_PARSER::ParseNet( BOARD * aBrd ) } -MODULE_INFO* NETLIST_READER_KICAD_PARSER::ParseComp() +COMPONENT_INFO* NETLIST_READER_KICAD_PARSER::ParseComp() throw( IO_ERROR, PARSE_ERROR ) { /* Parses a section like @@ -311,6 +326,7 @@ MODULE_INFO* NETLIST_READER_KICAD_PARSER::ParseComp() wxString ref; wxString value; wxString footprint; + wxString libpart; wxString pathtimestamp, timestamp; // The token comp was read, so the next data is (ref P1) @@ -339,8 +355,20 @@ MODULE_INFO* NETLIST_READER_KICAD_PARSER::ParseComp() break; case T_libsource: - // Currently not used data, skip it - SkipCurrent(); + // Read libsource + while( (token = NextTok()) != T_RIGHT ) + { + if( token == T_LEFT ) + token = NextTok(); + if( token == T_part ) + { + NeedSYMBOLorNUMBER(); + libpart = FROM_UTF8( CurText() ); + NeedRIGHT(); + } + else + SkipCurrent(); + } break; case T_sheetpath: @@ -364,9 +392,10 @@ MODULE_INFO* NETLIST_READER_KICAD_PARSER::ParseComp() } } pathtimestamp += timestamp; - MODULE_INFO* mod_info = new MODULE_INFO( footprint, ref, value, pathtimestamp ); + COMPONENT_INFO* cmp_info = new COMPONENT_INFO( footprint, ref, value, pathtimestamp ); + cmp_info->m_Libpart = libpart; - return mod_info; + return cmp_info; } /* Read the section "libparts" like: @@ -387,8 +416,66 @@ MODULE_INFO* NETLIST_READER_KICAD_PARSER::ParseComp() * And add the strings giving the footprint filter (subsection footprints) * of the corresponding module info */ -bool NETLIST_READER_KICAD_PARSER::ParseKicadFootprintFilterList() throw( IO_ERROR, PARSE_ERROR ) +void NETLIST_READER_KICAD_PARSER::ParseKicadLibpartList() throw( IO_ERROR, PARSE_ERROR ) { - // TODO - return true; + /* Parses a section like + * (libpart (lib device) (part C) + * (description "Condensateur non polarise") + * (footprints + * (fp SM*) + * (fp C?) + * (fp C1-1)) + * (fields + * (field (name Reference) C) + * (field (name Value) C)) + * (pins + * (pin (num 1) (name ~) (type passive)) + * (pin (num 2) (name ~) (type passive)))) + * + * Currently footprints section/fp are read and data stored + * other fields (unused) are skipped + */ + wxString device; + wxString filter; + LIPBART_INFO* libpart_info = NULL; + + // The last token read was libpart, so read the next token + while( (token = NextTok()) != T_RIGHT ) + { + if( token == T_LEFT ) + token = NextTok(); + switch( token ) + { + case T_part: + NeedSYMBOLorNUMBER(); + device = FROM_UTF8( CurText() ); + NeedRIGHT(); + libpart_info = new LIPBART_INFO( device ); + netlist_reader->AddLibpartInfo( libpart_info ); + break; + + case T_footprints: + // Ensure "(part C)" was already read + if( libpart_info == NULL ) + Expecting( T_part ); + // Read all fp elements (footprint filter item) + while( (token = NextTok()) != T_RIGHT ) + { + if( token == T_LEFT ) + token = NextTok(); + if( token != T_fp ) + Expecting( T_fp ); + NeedSYMBOLorNUMBER(); + filter = FROM_UTF8( CurText() ); + NeedRIGHT(); + libpart_info->m_FootprintFilter.Add( filter ); + } + break; + + default: + // Skip not used data (i.e all other tokens) + SkipCurrent(); + break; + } + } }