keep pressing state for rapid fire button

This commit is contained in:
sirrow committed 2020-11-04 00:47:02 +09:00
1 parent 3645548cdf
commit 5e431ffdea
7 files changed
+478 -1

No files matched your search

+7
View File
@@ -0,0 +1,7 @@
{
"board": "SparkFun:avr:promicro",
"programmer": "AVR ISP",
"port": "COM11",
"sketch": "connect_switch.ino",
"configuration": "cpu=16MHzatmega32U4"
}
+18
View File
@@ -0,0 +1,18 @@
{
"configurations": [
{
"name": "Win32",
"includePath": [
"C:\\Users\\sirrow\\AppData\\Local\\Arduino15\\packages\\SparkFun\\hardware\\avr\\1.1.13\\**",
"C:\\Users\\sirrow\\AppData\\Local\\Arduino15\\packages\\arduino\\tools\\**",
"C:\\Users\\sirrow\\AppData\\Local\\Arduino15\\packages\\arduino\\hardware\\avr\\1.8.2\\**"
],
"forcedInclude": [],
"intelliSenseMode": "msvc-x64",
"compilerPath": "C:/Program Files (x86)/Microsoft Visual Studio/2019/Community/VC/Tools/MSVC/14.24.28314/bin/Hostx64/x64/cl.exe",
"cStandard": "c11",
"cppStandard": "c++17"
}
],
"version": 4
}
+7 -1
View File
@@ -6,6 +6,7 @@
int loopCount = 0;
int state = 0;
int rapidFireTable[RapidFireTableSize];
bool rapidPressState = 0;
int index = 0;
int val = 1;
@@ -40,9 +41,11 @@ void perms() {
if(val == 0){
if (rapidFireTable[index] == 1){
SwitchControlLibrary().PressButtonA();
rapidPressState = true;
}
if (rapidFireTable[index] == 2){
SwitchControlLibrary().ReleaseButtonA();
rapidPressState = false;
}
}
index = (index + 1) % RapidFireTableSize;
@@ -121,10 +124,13 @@ void loop()
val = digitalRead(2);
if(prevVal == 1 && val == 0){
SwitchControlLibrary().PressButtonA();
rapidPressState = true;
index = 1;
}
else if(prevVal == 0 && val == 1){
SwitchControlLibrary().ReleaseButtonA();
if(rapidPressState){
SwitchControlLibrary().ReleaseButtonA();
}
}
prevVal = val;
Binary file not shown.
+211
View File
@@ -0,0 +1,211 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<svg
xmlns:osb="http://www.openswatchbook.org/uri/2009/osb"
xmlns:dc="http://purl.org/dc/elements/1.1/"
xmlns:cc="http://creativecommons.org/ns#"
xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
xmlns:svg="http://www.w3.org/2000/svg"
xmlns="http://www.w3.org/2000/svg"
xmlns:xlink="http://www.w3.org/1999/xlink"
xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
width="297mm"
height="210mm"
viewBox="0 0 297 210"
version="1.1"
id="svg8"
inkscape:version="1.0.1 (3bc2e813f5, 2020-09-07)"
sodipodi:docname="20200912.svg"
inkscape:export-filename="C:\Users\sirrow\20200912.png"
inkscape:export-xdpi="96"
inkscape:export-ydpi="96">
<defs
id="defs2">
<linearGradient
id="linearGradient867"
osb:paint="solid">
<stop
style="stop-color:#000000;stop-opacity:1;"
offset="0"
id="stop865" />
</linearGradient>
<linearGradient
id="linearGradient861"
osb:paint="solid">
<stop
style="stop-color:#000000;stop-opacity:1;"
offset="0"
id="stop859" />
</linearGradient>
<linearGradient
id="linearGradient851"
osb:paint="solid">
<stop
style="stop-color:#000000;stop-opacity:1;"
offset="0"
id="stop849" />
</linearGradient>
</defs>
<sodipodi:namedview
id="base"
pagecolor="#ffffff"
bordercolor="#666666"
borderopacity="1.0"
inkscape:pageopacity="0.0"
inkscape:pageshadow="2"
inkscape:zoom="1"
inkscape:cx="502.6419"
inkscape:cy="326.63534"
inkscape:document-units="mm"
inkscape:current-layer="svg8"
inkscape:document-rotation="0"
showgrid="false"
inkscape:window-width="1662"
inkscape:window-height="967"
inkscape:window-x="121"
inkscape:window-y="3"
inkscape:window-maximized="0" />
<metadata
id="metadata5">
<rdf:RDF>
<cc:Work
rdf:about="">
<dc:format>image/svg+xml</dc:format>
<dc:type
rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
<dc:title></dc:title>
</cc:Work>
</rdf:RDF>
</metadata>
<g
inkscape:label="レイヤー 1"
inkscape:groupmode="layer"
id="layer1"
style="display:inline">
<image
width="209.97333"
height="296.92599"
preserveAspectRatio="none"
xlink:href="data:image/jpeg;base64,/9j/4AAQSkZJRgABAQEBLAEsAAD/4QafRXhpZgAASUkqAAgAAAAKAA8BAgAGAAAAhgAAABABAgAc AAAAjAAAABIBAwABAAAABgAAABoBBQABAAAAqAAAABsBBQABAAAAsAAAACgBAwABAAAAAgAAADEB AgAQAAAAuAAAADIBAgAUAAAAyAAAABMCAwABAAAAAQAAAGmHBAABAAAA3AAAAEoBAABDYW5vbgBD YW5vbiBUUzgyMzAgc2VyaWVzIE5ldHdvcmsALAEAAAEAAAAsAQAAAQAAAElKIFNjYW4gVXRpbGl0 eQAyMDIwLzA5LzEyIDEzOjIzOjU3AAcAAJAHAAQAAAAwMjIxBJACABQAAAA2AQAAAZEHAAQAAAAB AgMAAKAHAAQAAAAwMTAwAaADAAEAAAABAAAAAqADAAEAAACwCQAAA6ADAAEAAACzDQAAAAAAADIw MjAvMDkvMTIgMTM6MjM6NTcABwADAQMAAQAAAAYAAAASAQMAAQAAAAEAAAAaAQUAAQAAAKQBAAAb AQUAAQAAAKwBAAAoAQMAAQAAAAIAAAABAgQAAQAAALQBAAACAgQAAQAAAOMEAAAAAAAALAEAAAEA AAAsAQAAAQAAAP/Y/+AAEEpGSUYAAQEBASwBLAAA/9sAhAADAgIDAgIDAwMDBAMDBAUIBQUEBAUK BwcGCAwKDAwLCgsLDQ4SEA0OEQ4LCxAWEBETFBUVFQwPFxgWFBgSFBUUAQMEBAUEBQkFBQkUDQsN FBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBT/wAARCAB4 AFQDASIAAhEBAxEB/8QBogAAAQUBAQEBAQEAAAAAAAAAAAECAwQFBgcICQoLEAACAQMDAgQDBQUE BAAAAX0BAgMABBEFEiExQQYTUWEHInEUMoGRoQgjQrHBFVLR8CQzYnKCCQoWFxgZGiUmJygpKjQ1 Njc4OTpDREVGR0hJSlNUVVZXWFlaY2RlZmdoaWpzdHV2d3h5eoOEhYaHiImKkpOUlZaXmJmaoqOk paanqKmqsrO0tba3uLm6wsPExcbHyMnK0tPU1dbX2Nna4eLj5OXm5+jp6vHy8/T19vf4+foBAAMB AQEBAQEBAQEAAAAAAAABAgMEBQYHCAkKCxEAAgECBAQDBAcFBAQAAQJ3AAECAxEEBSExBhJBUQdh cRMiMoEIFEKRobHBCSMzUvAVYnLRChYkNOEl8RcYGRomJygpKjU2Nzg5OkNERUZHSElKU1RVVldY WVpjZGVmZ2hpanN0dXZ3eHl6goOEhYaHiImKkpOUlZaXmJmaoqOkpaanqKmqsrO0tba3uLm6wsPE xcbHyMnK0tPU1dbX2Nna4uPk5ebn6Onq8vP09fb3+Pn6/9oADAMBAAIRAxEAPwD9S6buANLSVYDu DS4Apm3jiigB4xSEjFIvWlNABuFGQ2Kaf9WfWowzeSpcAPwWCnIHsDQAsysUcDup/lUgYMxDLhh+ tMyrycDnaeaeo/dr6igA2j0op34UUANb71FFFABRR6UtACUtApKADbkUmOMUbqWgBoH7wn/ZNOXt 6GkX734UqdCKAFopN23iigQNQDxg0maKBi9RigZqjq2s22h2cl1dNsiQZLEgAY6kk8AfWrUMwniW QAru7GnZ7js7XJelBpDSt93ikIRqBxRxxRQAfxUDhjSZ5zStwymgAbrRQQKKBCdqKMHvRQMhuLSK 6ULKgdVO4exHepUQRqqqMKBgClooHd7C9e9HagUUCEpaKSgAobHy/Wlo7UAI33uuKKUiigBO1JS0 lAC0VDdPMttK1uiSThSY0kcorNjgFgDgZ74OPQ1N/CD3oAXpzSsKRvmWo0jWMs4LbpGDNuYkA4A4 BPAwBwOM5PUmgCT8KKG+8KDQADFKPu0lIowOuBQA6ik5HbNFACd6KO9FAENndpfWcVxGJBHKiyIJ Y2jbBGRlWAZT7EAjvUo+7iilHFACr0pGHpSigmgA64NFNdiseQpYgfdGMmnbhQAL3FIucEH1pV6m haADLetFLRQITvUNxAt1BJC5cJIpRjHIyMARjhlIKn3BBFS559qOO1AxPajnvRyGFP8AvD3oAatK e9J3paAGr82RShKilyuGHBzipHztB6c54NMBF+WTHsaev3QfambTvDlh0P8AKnpjaoPpSEFFKce9 FADcUm2iigYFc0BTRRQAvNB/3sUUUAMddy43Z/Gkkz5a84INFFMBkrDa4U/NtOM/SrP3lBoooYhP wooopAf/2f/bAIQAAwICAwICAwMDAwQDAwQFCAUFBAQFCgcHBggMCgwMCwoLCw0OEhANDhEOCwsQ FhARExQVFRUMDxcYFhQYEhQVFAEDBAQFBAUJBQUJFA0LDRQUFBQUFBQUFBQUFBQUFBQUFBQUFBQU FBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQU/8AAEQgNswmwAwEiAAIRAQMRAf/EAaIAAAEFAQEB AQEBAAAAAAAAAAABAgMEBQYHCAkKCxAAAgEDAwIEAwUFBAQAAAF9AQIDAAQRBRIhMUEGE1FhByJx FDKBkaEII0KxwRVS0fAkM2JyggkKFhcYGRolJicoKSo0NTY3ODk6Q0RFRkdISUpTVFVWV1hZWmNk ZWZnaGlqc3R1dnd4eXqDhIWGh4iJipKTlJWWl5iZmqKjpKWmp6ipqrKztLW2t7i5usLDxMXGx8jJ ytLT1NXW19jZ2uHi4+Tl5ufo6erx8vP09fb3+Pn6AQADAQEBAQEBAQEBAAAAAAAAAQIDBAUGBwgJ CgsRAAIBAgQEAwQHBQQEAAECdwABAgMRBAUhMQYSQVEHYXETIjKBCBRCkaGxwQkjM1LwFWJy0QoW JDThJfEXGBkaJicoKSo1Njc4OTpDREVGR0hJSlNUVVZXWFlaY2RlZmdoaWpzdHV2d3h5eoKDhIWG h4iJipKTlJWWl5iZmqKjpKWmp6ipqrKztLW2t7i5usLDxMXGx8jJytLT1NXW19jZ2uLj5OXm5+jp 6vLz9PX29/j5+v/aAAwDAQACEQMRAD8A/TqGPzmZXAJXndnqDV6KMr1O4jjr+nSorWNW2vjkeuKt e1aMVgGefTtSbOP05pe9LUgM8sKxOO3J9aYYf3ispwOjD/Pvipqb93AHQcccYoGGPb/OaXaAenNI 2ecUqtuVc8Hp60AN4EhbJ5wO/wDKk2Bcnt/nin7R/wDrpMnp369KYhMHuR7cf57UhjwDgAcY4FPG T14pMbQeeD0oGNMasCDyD+HB96ORHkhieTjp+HpTmUemcDA/wpN3ygryPbFIBjYjYsAcZy35Dn36 U+TbwzYx2JNKfpzikUHoTkdMUCGrGozkLnvil8vqCc/X604A9+aXbkY7UxjFGWGeD1/SmGMNEV4P fLd+eaXdiQDcMkcE456f40/JDkHoeh/z/nigQ0528H0+tLtGcgYYDGQMmhlznjqfw4/z/OlbGB6i gNSFowIRgbT1HA/wqTy9zBmGDjBHqKcyqy4PT9KRGLKpDbu+RyCKAsM2+WM52j0POPYU9fvOfl/D n+lDHKnuOmKU/KCyjPt6igY3aBjAGQOAKbJGMgEcHjJ/SnSLuUEdQcggc0BV246c9OnU0C1G+WFw MAkdPbnj8KkVQGOMYpNrGMAnDeopSPmz0P060ARuQnVcZGAVpxYEHPAx6fnxSBkXO5x94D8+gNO2 87Oemc5+o9c0ARlV2A43YHXp06fjS+Wrcjrjp6/hUik8hxjnjFH3W+br6/U0AMXDtg8Ec7SO3Sme WGAJ9+ccnmptq7txHIGM+1GOg565B/pQFiJYxtAXLDqOSB+NKIgVwBjOc5qTYASwHOO3ejHvgEdD 60BqQxxruxjHc/5/CpG+VsY4PJ57+360u1cgd+1Nb5skEhgOuP8AP+TQAxl3NuBII9OB9adu8sq2 cITzk+v/AOun7T64b86TaMemT35z/npTCwhjXcDwcfyNNWNYv4c/r1PYenNObK4Kkn/Z9e1OjBGM 4K449aQakexRygBx7cj+vX+tLtVycdTz6j8fxqT7uTnK+lLzkAenNAEK55YrtbGCFOR7HPHrT9o2 j075H5Uhzuz1UjHr6+lScsoJyDjmgLEW0q4woYc9BT2jAGMcduOKPL+UD9e/TGacVI9T7cUAR7eS SMkgA5HBp+329s/5+gpPLC59CMc0qNj5T1z/APXoGMkXbgkAqeG96AoVhg5I/HP/ANepDwOT7Gmk jblmBX1OKAG7eQcDpyP65/CmxqNzkHGTnjv0/wD1VKVHYke9IyncGBOO4oEN6MWLYOO4xxTtgChS MgUrHscY96Pu4IHt/hQHkRtD6EDn/PelePcp4GcjOB1/zmpCx9Me9JzwGXPv/X2oGMKD7oII4IGM kHPWnbfmGR9CD+lP+tJ/F/OgRCd/mcDjaOQfr2pwi+TuCe2eKf1wM84+uaTlQeAB2I4xQFhPLDAE cHbj0/8Ar0FDxn5uoJ780q7txDEH8Mf5701n2FTyB04+n+f0oCwgjXqp+nrkGnBeDgDHpj9Kc3TP UUm0Y4HOev8AWgYwIvOOB3H8/wD9ftTmUSMVPLDn3Gc07AX2py5288mgCIp8pz34OOvv0pFjHl4V sipt3U46UdeaAIfJx3Oen1A+tIqj7oDY7BscfSp6TkdMUAIyjHIOP88UvsRkHvS/h9aa3bgmgBFX ao7jjGBS7RIueo7UgwyjIx04xSKx8tgSN30x/n9KAB9rKwYDHTJpAD0Cj35607vgrjPU554PFL0I IGeMcUCsRqvy4I28AkqKcoV1P8X+8D/WnZIcAjA9f6UdCQfz/pQMiVQ0gBHbCkDkc+v4U/yypPAx 70D5Qo3cdO34U5eRhsE0C1E28g9OxLine truncated
id="image20"
x="-1.3877788e-17"
y="-296.92599"
transform="rotate(90)" />
<circle
style="opacity:0.2;fill:#999999;stroke-width:0.264999;stroke-miterlimit:4;stroke-dasharray:none"
id="path873"
cx="56.091667"
cy="38.364582"
r="13.6" />
<circle
style="opacity:0.2;fill:#999999;stroke-width:0.264999;stroke-miterlimit:4;stroke-dasharray:none"
id="path873-5"
cx="107.68542"
cy="58.472916"
r="13.6" />
<circle
style="opacity:0.2;fill:#999999;stroke-width:0.264999;stroke-miterlimit:4;stroke-dasharray:none"
id="path873-5-1"
cx="83.343758"
cy="44.979168"
r="13.6" />
<circle
style="opacity:0.2;fill:#999999;stroke-width:0.264999;stroke-miterlimit:4;stroke-dasharray:none"
id="path907"
cx="115.62292"
cy="107.15625"
r="16.6" />
<path
id="path907-6"
style="font-variation-settings:normal;opacity:0.2;vector-effect:none;fill:#999999;fill-opacity:1;stroke-width:0.264999;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;stop-color:#000000;stop-opacity:1"
d="m 196.51666,57.679165 a 16.6,16.6 0 0 1 -16.6,16.6 16.6,16.6 0 0 1 -16.6,-16.6 16.6,16.6 0 0 1 16.6,-16.6 16.6,16.6 0 0 1 16.6,16.6 z" />
<circle
style="opacity:0.2;fill:#999999;stroke-width:0.264999;stroke-miterlimit:4;stroke-dasharray:none"
id="path907-6-5"
cx="216.91701"
cy="50.679001"
r="16.6" />
<circle
style="opacity:0.2;fill:#999999;stroke-width:0.264999;stroke-miterlimit:4;stroke-dasharray:none"
id="path907-6-5-5"
cx="253.91701"
cy="50.679165"
r="16.6" />
<path
id="path907-6-7"
style="font-variation-settings:normal;opacity:0.2;vector-effect:none;fill:#999999;fill-opacity:1;stroke-width:0.264999;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;stop-color:#000000;stop-opacity:1"
d="m 188.517,92.679169 a 16.6,16.6 0 0 1 -16.6,16.600001 16.6,16.6 0 0 1 -16.6,-16.600001 16.6,16.6 0 0 1 16.6,-16.6 16.6,16.6 0 0 1 16.6,16.6 z" />
<circle
style="opacity:0.2;fill:#999999;stroke-width:0.264999;stroke-miterlimit:4;stroke-dasharray:none"
id="path907-6-5-4"
cx="208.91734"
cy="85.679001"
r="16.6" />
<circle
style="opacity:0.2;fill:#999999;stroke-width:0.264999;stroke-miterlimit:4;stroke-dasharray:none"
id="path907-6-5-5-3"
cx="245.91734"
cy="85.679169"
r="16.6" />
<circle
style="opacity:1;fill:#ff0000;stroke-width:0.0159638;stroke-miterlimit:4;stroke-dasharray:none"
id="path907-63"
cx="115.623"
cy="107.156"
r="1" />
<circle
style="opacity:1;fill:#ff0000;stroke-width:0.0159638;stroke-miterlimit:4;stroke-dasharray:none"
id="path907-63-3"
cx="179.91701"
cy="58.679001"
r="1" />
<circle
style="opacity:1;fill:#ff0000;stroke-width:0.0159638;stroke-miterlimit:4;stroke-dasharray:none"
id="path907-63-3-6"
cx="216.91701"
cy="51.679001"
r="1" />
<circle
style="opacity:1;fill:#ff0000;stroke-width:0.0159638;stroke-miterlimit:4;stroke-dasharray:none"
id="path907-63-3-6-1"
cx="253.91701"
cy="51.679001"
r="1" />
<circle
style="opacity:1;fill:#ff0000;stroke-width:0.0159638;stroke-miterlimit:4;stroke-dasharray:none"
id="path907-63-3-7"
cx="171.91701"
cy="92.679001"
r="1" />
<circle
style="opacity:1;fill:#ff0000;stroke-width:0.0159638;stroke-miterlimit:4;stroke-dasharray:none"
id="path907-63-3-6-3"
cx="208.91701"
cy="85.679001"
r="1" />
<circle
style="opacity:1;fill:#ff0000;stroke-width:0.0159638;stroke-miterlimit:4;stroke-dasharray:none"
id="path907-63-3-6-1-0"
cx="245.91701"
cy="85.679001"
r="1" />
<circle
style="opacity:1;fill:#ff0000;stroke-width:0.0194852;stroke-miterlimit:4;stroke-dasharray:none"
id="path873-6"
cx="56.091999"
cy="38.365002"
r="1" />
<circle
style="opacity:1;fill:#ff0000;stroke-width:0.0194852;stroke-miterlimit:4;stroke-dasharray:none"
id="path873-5-1-2"
cx="83.344002"
cy="44.979"
r="1" />
<circle
style="opacity:1;fill:#ff0000;stroke-width:0.0194852;stroke-miterlimit:4;stroke-dasharray:none"
id="path873-5-0"
cx="107.685"
cy="58.473"
r="1" />
</g>
</svg>

After

Width:  |  Height:  |  Size: 1.2 MiB

Binary file not shown.
+235
View File
@@ -0,0 +1,235 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<svg
xmlns:osb="http://www.openswatchbook.org/uri/2009/osb"
xmlns:dc="http://purl.org/dc/elements/1.1/"
xmlns:cc="http://creativecommons.org/ns#"
xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
xmlns:svg="http://www.w3.org/2000/svg"
xmlns="http://www.w3.org/2000/svg"
xmlns:xlink="http://www.w3.org/1999/xlink"
xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
width="297mm"
height="210mm"
viewBox="0 0 297 210"
version="1.1"
id="svg8"
inkscape:version="1.0.1 (3bc2e813f5, 2020-09-07)"
sodipodi:docname="20201101.svg"
inkscape:export-filename="C:\Users\sirrow\20200912.png"
inkscape:export-xdpi="96"
inkscape:export-ydpi="96">
<defs
id="defs2">
<linearGradient
id="linearGradient867"
osb:paint="solid">
<stop
style="stop-color:#000000;stop-opacity:1;"
offset="0"
id="stop865" />
</linearGradient>
<linearGradient
id="linearGradient861"
osb:paint="solid">
<stop
style="stop-color:#000000;stop-opacity:1;"
offset="0"
id="stop859" />
</linearGradient>
<linearGradient
id="linearGradient851"
osb:paint="solid">
<stop
style="stop-color:#000000;stop-opacity:1;"
offset="0"
id="stop849" />
</linearGradient>
</defs>
<sodipodi:namedview
id="base"
pagecolor="#ffffff"
bordercolor="#666666"
borderopacity="1.0"
inkscape:pageopacity="0.0"
inkscape:pageshadow="2"
inkscape:zoom="1"
inkscape:cx="469.06502"
inkscape:cy="289.78372"
inkscape:document-units="mm"
inkscape:current-layer="layer1"
inkscape:document-rotation="0"
showgrid="false"
inkscape:window-width="1662"
inkscape:window-height="967"
inkscape:window-x="121"
inkscape:window-y="3"
inkscape:window-maximized="0" />
<metadata
id="metadata5">
<rdf:RDF>
<cc:Work
rdf:about="">
<dc:format>image/svg+xml</dc:format>
<dc:type
rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
<dc:title></dc:title>
</cc:Work>
</rdf:RDF>
</metadata>
<g
inkscape:label="レイヤー 1"
inkscape:groupmode="layer"
id="layer1"
style="display:inline">
<image
width="209.97333"
height="296.92599"
preserveAspectRatio="none"
xlink:href="data:image/jpeg;base64,/9j/4AAQSkZJRgABAQEBLAEsAAD/4QafRXhpZgAASUkqAAgAAAAKAA8BAgAGAAAAhgAAABABAgAc AAAAjAAAABIBAwABAAAABgAAABoBBQABAAAAqAAAABsBBQABAAAAsAAAACgBAwABAAAAAgAAADEB AgAQAAAAuAAAADIBAgAUAAAAyAAAABMCAwABAAAAAQAAAGmHBAABAAAA3AAAAEoBAABDYW5vbgBD YW5vbiBUUzgyMzAgc2VyaWVzIE5ldHdvcmsALAEAAAEAAAAsAQAAAQAAAElKIFNjYW4gVXRpbGl0 eQAyMDIwLzA5LzEyIDEzOjIzOjU3AAcAAJAHAAQAAAAwMjIxBJACABQAAAA2AQAAAZEHAAQAAAAB AgMAAKAHAAQAAAAwMTAwAaADAAEAAAABAAAAAqADAAEAAACwCQAAA6ADAAEAAACzDQAAAAAAADIw MjAvMDkvMTIgMTM6MjM6NTcABwADAQMAAQAAAAYAAAASAQMAAQAAAAEAAAAaAQUAAQAAAKQBAAAb AQUAAQAAAKwBAAAoAQMAAQAAAAIAAAABAgQAAQAAALQBAAACAgQAAQAAAOMEAAAAAAAALAEAAAEA AAAsAQAAAQAAAP/Y/+AAEEpGSUYAAQEBASwBLAAA/9sAhAADAgIDAgIDAwMDBAMDBAUIBQUEBAUK BwcGCAwKDAwLCgsLDQ4SEA0OEQ4LCxAWEBETFBUVFQwPFxgWFBgSFBUUAQMEBAUEBQkFBQkUDQsN FBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBT/wAARCAB4 AFQDASIAAhEBAxEB/8QBogAAAQUBAQEBAQEAAAAAAAAAAAECAwQFBgcICQoLEAACAQMDAgQDBQUE BAAAAX0BAgMABBEFEiExQQYTUWEHInEUMoGRoQgjQrHBFVLR8CQzYnKCCQoWFxgZGiUmJygpKjQ1 Njc4OTpDREVGR0hJSlNUVVZXWFlaY2RlZmdoaWpzdHV2d3h5eoOEhYaHiImKkpOUlZaXmJmaoqOk paanqKmqsrO0tba3uLm6wsPExcbHyMnK0tPU1dbX2Nna4eLj5OXm5+jp6vHy8/T19vf4+foBAAMB AQEBAQEBAQEAAAAAAAABAgMEBQYHCAkKCxEAAgECBAQDBAcFBAQAAQJ3AAECAxEEBSExBhJBUQdh cRMiMoEIFEKRobHBCSMzUvAVYnLRChYkNOEl8RcYGRomJygpKjU2Nzg5OkNERUZHSElKU1RVVldY WVpjZGVmZ2hpanN0dXZ3eHl6goOEhYaHiImKkpOUlZaXmJmaoqOkpaanqKmqsrO0tba3uLm6wsPE xcbHyMnK0tPU1dbX2Nna4uPk5ebn6Onq8vP09fb3+Pn6/9oADAMBAAIRAxEAPwD9S6buANLSVYDu DS4Apm3jiigB4xSEjFIvWlNABuFGQ2Kaf9WfWowzeSpcAPwWCnIHsDQAsysUcDup/lUgYMxDLhh+ tMyrycDnaeaeo/dr6igA2j0op34UUANb71FFFABRR6UtACUtApKADbkUmOMUbqWgBoH7wn/ZNOXt 6GkX734UqdCKAFopN23iigQNQDxg0maKBi9RigZqjq2s22h2cl1dNsiQZLEgAY6kk8AfWrUMwniW QAru7GnZ7js7XJelBpDSt93ikIRqBxRxxRQAfxUDhjSZ5zStwymgAbrRQQKKBCdqKMHvRQMhuLSK 6ULKgdVO4exHepUQRqqqMKBgClooHd7C9e9HagUUCEpaKSgAobHy/Wlo7UAI33uuKKUiigBO1JS0 lAC0VDdPMttK1uiSThSY0kcorNjgFgDgZ74OPQ1N/CD3oAXpzSsKRvmWo0jWMs4LbpGDNuYkA4A4 BPAwBwOM5PUmgCT8KKG+8KDQADFKPu0lIowOuBQA6ik5HbNFACd6KO9FAENndpfWcVxGJBHKiyIJ Y2jbBGRlWAZT7EAjvUo+7iilHFACr0pGHpSigmgA64NFNdiseQpYgfdGMmnbhQAL3FIucEH1pV6m haADLetFLRQITvUNxAt1BJC5cJIpRjHIyMARjhlIKn3BBFS559qOO1AxPajnvRyGFP8AvD3oAatK e9J3paAGr82RShKilyuGHBzipHztB6c54NMBF+WTHsaev3QfambTvDlh0P8AKnpjaoPpSEFFKce9 FADcUm2iigYFc0BTRRQAvNB/3sUUUAMddy43Z/Gkkz5a84INFFMBkrDa4U/NtOM/SrP3lBoooYhP wooopAf/2f/bAIQAAwICAwICAwMDAwQDAwQFCAUFBAQFCgcHBggMCgwMCwoLCw0OEhANDhEOCwsQ FhARExQVFRUMDxcYFhQYEhQVFAEDBAQFBAUJBQUJFA0LDRQUFBQUFBQUFBQUFBQUFBQUFBQUFBQU FBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQU/8AAEQgNswmwAwEiAAIRAQMRAf/EAaIAAAEFAQEB AQEBAAAAAAAAAAABAgMEBQYHCAkKCxAAAgEDAwIEAwUFBAQAAAF9AQIDAAQRBRIhMUEGE1FhByJx FDKBkaEII0KxwRVS0fAkM2JyggkKFhcYGRolJicoKSo0NTY3ODk6Q0RFRkdISUpTVFVWV1hZWmNk ZWZnaGlqc3R1dnd4eXqDhIWGh4iJipKTlJWWl5iZmqKjpKWmp6ipqrKztLW2t7i5usLDxMXGx8jJ ytLT1NXW19jZ2uHi4+Tl5ufo6erx8vP09fb3+Pn6AQADAQEBAQEBAQEBAAAAAAAAAQIDBAUGBwgJ CgsRAAIBAgQEAwQHBQQEAAECdwABAgMRBAUhMQYSQVEHYXETIjKBCBRCkaGxwQkjM1LwFWJy0QoW JDThJfEXGBkaJicoKSo1Njc4OTpDREVGR0hJSlNUVVZXWFlaY2RlZmdoaWpzdHV2d3h5eoKDhIWG h4iJipKTlJWWl5iZmqKjpKWmp6ipqrKztLW2t7i5usLDxMXGx8jJytLT1NXW19jZ2uLj5OXm5+jp 6vLz9PX29/j5+v/aAAwDAQACEQMRAD8A/TqGPzmZXAJXndnqDV6KMr1O4jjr+nSorWNW2vjkeuKt e1aMVgGefTtSbOP05pe9LUgM8sKxOO3J9aYYf3ispwOjD/Pvipqb93AHQcccYoGGPb/OaXaAenNI 2ecUqtuVc8Hp60AN4EhbJ5wO/wDKk2Bcnt/nin7R/wDrpMnp369KYhMHuR7cf57UhjwDgAcY4FPG T14pMbQeeD0oGNMasCDyD+HB96ORHkhieTjp+HpTmUemcDA/wpN3ygryPbFIBjYjYsAcZy35Dn36 U+TbwzYx2JNKfpzikUHoTkdMUCGrGozkLnvil8vqCc/X604A9+aXbkY7UxjFGWGeD1/SmGMNEV4P fLd+eaXdiQDcMkcE456f40/JDkHoeh/z/nigQ0528H0+tLtGcgYYDGQMmhlznjqfw4/z/OlbGB6i gNSFowIRgbT1HA/wqTy9zBmGDjBHqKcyqy4PT9KRGLKpDbu+RyCKAsM2+WM52j0POPYU9fvOfl/D n+lDHKnuOmKU/KCyjPt6igY3aBjAGQOAKbJGMgEcHjJ/SnSLuUEdQcggc0BV246c9OnU0C1G+WFw MAkdPbnj8KkVQGOMYpNrGMAnDeopSPmz0P060ARuQnVcZGAVpxYEHPAx6fnxSBkXO5x94D8+gNO2 87Oemc5+o9c0ARlV2A43YHXp06fjS+Wrcjrjp6/hUik8hxjnjFH3W+br6/U0AMXDtg8Ec7SO3Sme WGAJ9+ccnmptq7txHIGM+1GOg565B/pQFiJYxtAXLDqOSB+NKIgVwBjOc5qTYASwHOO3ejHvgEdD 60BqQxxruxjHc/5/CpG+VsY4PJ57+360u1cgd+1Nb5skEhgOuP8AP+TQAxl3NuBII9OB9adu8sq2 cITzk+v/AOun7T64b86TaMemT35z/npTCwhjXcDwcfyNNWNYv4c/r1PYenNObK4Kkn/Z9e1OjBGM 4K449aQakexRygBx7cj+vX+tLtVycdTz6j8fxqT7uTnK+lLzkAenNAEK55YrtbGCFOR7HPHrT9o2 j075H5Uhzuz1UjHr6+lScsoJyDjmgLEW0q4woYc9BT2jAGMcduOKPL+UD9e/TGacVI9T7cUAR7eS SMkgA5HBp+329s/5+gpPLC59CMc0qNj5T1z/APXoGMkXbgkAqeG96AoVhg5I/HP/ANepDwOT7Gmk jblmBX1OKAG7eQcDpyP65/CmxqNzkHGTnjv0/wD1VKVHYke9IyncGBOO4oEN6MWLYOO4xxTtgChS MgUrHscY96Pu4IHt/hQHkRtD6EDn/PelePcp4GcjOB1/zmpCx9Me9JzwGXPv/X2oGMKD7oII4IGM kHPWnbfmGR9CD+lP+tJ/F/OgRCd/mcDjaOQfr2pwi+TuCe2eKf1wM84+uaTlQeAB2I4xQFhPLDAE cHbj0/8Ar0FDxn5uoJ780q7txDEH8Mf5701n2FTyB04+n+f0oCwgjXqp+nrkGnBeDgDHpj9Kc3TP UUm0Y4HOev8AWgYwIvOOB3H8/wD9ftTmUSMVPLDn3Gc07AX2py5288mgCIp8pz34OOvv0pFjHl4V sipt3U46UdeaAIfJx3Oen1A+tIqj7oDY7BscfSp6TkdMUAIyjHIOP88UvsRkHvS/h9aa3bgmgBFX ao7jjGBS7RIueo7UgwyjIx04xSKx8tgSN30x/n9KAB9rKwYDHTJpAD0Cj35607vgrjPU554PFL0I IGeMcUCsRqvy4I28AkqKcoV1P8X+8D/WnZIcAjA9f6UdCQfz/pQMiVQ0gBHbCkDkc+v4U/yypPAx 70D5Qo3cdO34U5eRhsE0C1E28g9OxLine truncated
id="image20"
x="30"
y="-296.92599"
transform="rotate(90)" />
<circle
style="opacity:0.2;fill:#999999;stroke-width:0.264999;stroke-miterlimit:4;stroke-dasharray:none"
id="path873"
cx="56.091667"
cy="68.364578"
r="13.6" />
<circle
style="opacity:0.2;fill:#999999;stroke-width:0.264999;stroke-miterlimit:4;stroke-dasharray:none"
id="path873-5"
cx="107.68542"
cy="88.472916"
r="13.6" />
<circle
style="opacity:0.2;fill:#999999;stroke-width:0.264999;stroke-miterlimit:4;stroke-dasharray:none"
id="path873-5-1"
cx="83.343758"
cy="74.979172"
r="13.6" />
<circle
style="opacity:0.2;fill:#999999;stroke-width:0.264999;stroke-miterlimit:4;stroke-dasharray:none"
id="path907"
cx="115.62292"
cy="137.15625"
r="16.6" />
<path
id="path907-6"
style="font-variation-settings:normal;opacity:0.2;vector-effect:none;fill:#999999;fill-opacity:1;stroke-width:0.264999;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;stop-color:#000000;stop-opacity:1"
d="m 196.51666,87.679165 a 16.6,16.6 0 0 1 -16.6,16.600005 16.6,16.6 0 0 1 -16.6,-16.600005 16.6,16.6 0 0 1 16.6,-16.6 16.6,16.6 0 0 1 16.6,16.6 z" />
<circle
style="opacity:0.2;fill:#999999;stroke-width:0.264999;stroke-miterlimit:4;stroke-dasharray:none"
id="path907-6-5"
cx="216.91701"
cy="80.679001"
r="16.6" />
<circle
style="opacity:0.2;fill:#999999;stroke-width:0.264999;stroke-miterlimit:4;stroke-dasharray:none"
id="path907-6-5-5"
cx="253.91701"
cy="80.679169"
r="16.6" />
<path
id="path907-6-7"
style="font-variation-settings:normal;opacity:0.2;vector-effect:none;fill:#999999;fill-opacity:1;stroke-width:0.264999;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;stop-color:#000000;stop-opacity:1"
d="m 188.517,122.67917 a 16.6,16.6 0 0 1 -16.6,16.6 16.6,16.6 0 0 1 -16.6,-16.6 16.6,16.6 0 0 1 16.6,-16.6 16.6,16.6 0 0 1 16.6,16.6 z" />
<circle
style="opacity:0.2;fill:#999999;stroke-width:0.264999;stroke-miterlimit:4;stroke-dasharray:none"
id="path907-6-5-4"
cx="208.91734"
cy="115.679"
r="16.6" />
<circle
style="opacity:0.2;fill:#999999;stroke-width:0.264999;stroke-miterlimit:4;stroke-dasharray:none"
id="path907-6-5-5-3"
cx="245.91734"
cy="115.67917"
r="16.6" />
<circle
style="opacity:1;fill:#ff0000;stroke-width:0.0159638;stroke-miterlimit:4;stroke-dasharray:none"
id="path907-63"
cx="115.623"
cy="137.15601"
r="1" />
<circle
style="opacity:1;fill:#ff0000;stroke-width:0.0159638;stroke-miterlimit:4;stroke-dasharray:none"
id="path907-63-3"
cx="179.91701"
cy="88.679001"
r="1" />
<circle
style="opacity:1;fill:#ff0000;stroke-width:0.0159638;stroke-miterlimit:4;stroke-dasharray:none"
id="path907-63-3-6"
cx="216.91701"
cy="81.679001"
r="1" />
<circle
style="opacity:1;fill:#ff0000;stroke-width:0.0159638;stroke-miterlimit:4;stroke-dasharray:none"
id="path907-63-3-6-1"
cx="253.91701"
cy="81.679001"
r="1" />
<circle
style="opacity:1;fill:#ff0000;stroke-width:0.0159638;stroke-miterlimit:4;stroke-dasharray:none"
id="path907-63-3-7"
cx="171.91701"
cy="122.679"
r="1" />
<circle
style="opacity:1;fill:#ff0000;stroke-width:0.0159638;stroke-miterlimit:4;stroke-dasharray:none"
id="path907-63-3-6-3"
cx="208.91701"
cy="115.679"
r="1" />
<circle
style="opacity:1;fill:#ff0000;stroke-width:0.0159638;stroke-miterlimit:4;stroke-dasharray:none"
id="path907-63-3-6-1-0"
cx="245.91701"
cy="115.679"
r="1" />
<circle
style="opacity:1;fill:#ff0000;stroke-width:0.0194852;stroke-miterlimit:4;stroke-dasharray:none"
id="path873-6"
cx="56.091999"
cy="68.365005"
r="1" />
<circle
style="opacity:1;fill:#ff0000;stroke-width:0.0194852;stroke-miterlimit:4;stroke-dasharray:none"
id="path873-5-1-2"
cx="83.344002"
cy="74.979004"
r="1" />
<circle
style="opacity:1;fill:#ff0000;stroke-width:0.0194852;stroke-miterlimit:4;stroke-dasharray:none"
id="path873-5-0"
cx="107.685"
cy="88.473"
r="1" />
<circle
style="display:inline;opacity:0.2;fill:#999999;stroke-width:0.264999;stroke-miterlimit:4;stroke-dasharray:none"
id="path873-1"
cx="123.6"
cy="8.6000004"
r="13.6" />
<circle
style="display:inline;opacity:1;fill:#ff0000;stroke-width:0.0194852;stroke-miterlimit:4;stroke-dasharray:none"
id="path873-6-4"
cx="123.60031"
cy="8.6004276"
r="1" />
<circle
style="display:inline;opacity:0.2;fill:#999999;stroke-width:0.264999;stroke-miterlimit:4;stroke-dasharray:none"
id="path873-1-2"
cx="173.326"
cy="8.6000004"
r="13.6" />
<circle
style="display:inline;opacity:1;fill:#ff0000;stroke-width:0.0194852;stroke-miterlimit:4;stroke-dasharray:none"
id="path873-6-4-5"
cx="173.32632"
cy="8.6004276"
r="1" />
</g>
</svg>

After

Width:  |  Height:  |  Size: 1.2 MiB