Permalink
Checking mergeability…
Don’t worry, you can still create the pull request.
Comparing changes
Open a pull request
- 8 commits
- 126 files changed
- 0 commit comments
- 1 contributor
Unified
Split
Showing
with
7,249 additions
and 176 deletions.
- +2 −2 IodineGBA/core/Emulator.js
- BIN IodineGBA/gba_bios.bin
- BIN apple-touch-icon.png
- BIN favicon-16x16.png
- BIN favicon-32x32.png
- BIN favicon.ico
- +33 −0 i53.manifest
- +120 −45 index.html
- +53 −0 safari-pinned-tab.svg
- +148 −0 user_css/landscape.css
- +118 −0 user_css/loading.css
- +487 −58 user_css/main.css
- +163 −0 user_css/portrait.css
- +44 −0 user_css/spinner.css
- BIN user_img/Zip-File.png
- BIN user_img/download.png
- BIN user_img/emulator/a-bnt-2x.png
- BIN user_img/emulator/a-bnt-pressed-2x.png
- BIN user_img/emulator/a-bnt-pressed.png
- +67 −0 user_img/emulator/a-bnt-pressed.svg
- BIN user_img/emulator/a-bnt.png
- +59 −0 user_img/emulator/a-bnt.svg
- BIN user_img/emulator/b-bnt-2x.png
- BIN user_img/emulator/b-bnt-pressed-2x.png
- BIN user_img/emulator/b-bnt-pressed.png
- +67 −0 user_img/emulator/b-bnt-pressed.svg
- BIN user_img/emulator/b-bnt.png
- +59 −0 user_img/emulator/b-bnt.svg
- BIN user_img/emulator/cart.png
- BIN user_img/emulator/eject-2x.png
- BIN user_img/emulator/eject.png
- BIN user_img/emulator/turbo-2x.png
- BIN user_img/emulator/turbo-enabled-2x.png
- BIN user_img/emulator/turbo-enabled.png
- +89 −0 user_img/emulator/turbo-enabled.svg
- BIN user_img/emulator/turbo.png
- +90 −0 user_img/emulator/turbo.svg
- BIN user_img/gdrive-folders.png
- BIN user_img/gdrive.png
- BIN user_img/landscape/Controller-2x.png
- BIN user_img/landscape/Controller.png
- +97 −0 user_img/landscape/Controller.svg
- BIN user_img/landscape/body-left-2x.png
- BIN user_img/landscape/body-left.png
- +44 −0 user_img/landscape/body-left.svg
- BIN user_img/landscape/body-repeat-2x.png
- BIN user_img/landscape/body-repeat.png
- +14 −0 user_img/landscape/body-repeat.svg
- BIN user_img/landscape/body-right-2x.png
- BIN user_img/landscape/body-right.png
- +171 −0 user_img/landscape/body-right.svg
- +35 −0 user_img/landscape/eject.svg
- BIN user_img/landscape/frame-2x.png
- BIN user_img/landscape/frame.png
- +28 −0 user_img/landscape/frame.svg
- BIN user_img/landscape/select-bnt-2x.png
- BIN user_img/landscape/select-bnt.png
- +74 −0 user_img/landscape/select-bnt.svg
- BIN user_img/landscape/start-bnt-2x.png
- BIN user_img/landscape/start-bnt.png
- +74 −0 user_img/landscape/start-bnt.svg
- BIN user_img/landscape/top-left-bnt-2x.png
- BIN user_img/landscape/top-left-bnt.png
- +52 −0 user_img/landscape/top-left-bnt.svg
- BIN user_img/landscape/top-right-bnt-2x.png
- BIN user_img/landscape/top-right-bnt.png
- +52 −0 user_img/landscape/top-right-bnt.svg
- BIN user_img/portrait/Controller-2x.png
- BIN user_img/portrait/Controller.png
- +97 −0 user_img/portrait/Controller.svg
- BIN user_img/portrait/Portrait-2x.png
- BIN user_img/portrait/Portrait.png
- BIN user_img/portrait/a-bnt-2x.png
- BIN user_img/portrait/a-bnt-pressed-2x.png
- BIN user_img/portrait/a-bnt-pressed.png
- +67 −0 user_img/portrait/a-bnt-pressed.svg
- BIN user_img/portrait/a-bnt.png
- +59 −0 user_img/portrait/a-bnt.svg
- BIN user_img/portrait/b-bnt-2x.png
- BIN user_img/portrait/b-bnt-pressed-2x.png
- BIN user_img/portrait/b-bnt-pressed.png
- +67 −0 user_img/portrait/b-bnt-pressed.svg
- BIN user_img/portrait/b-bnt.png
- +59 −0 user_img/portrait/b-bnt.svg
- BIN user_img/portrait/bnt-background copy-2x.png
- BIN user_img/portrait/bnt-background copy.png
- +34 −0 user_img/portrait/bnt-background copy.svg
- BIN user_img/portrait/bnt-select copy-2x.png
- BIN user_img/portrait/bnt-select copy.png
- +83 −0 user_img/portrait/bnt-select copy.svg
- BIN user_img/portrait/bnt-select-pressed-2x.png
- BIN user_img/portrait/bnt-select-pressed.png
- +76 −0 user_img/portrait/bnt-select-pressed.svg
- BIN user_img/portrait/bnt-start copy-2x.png
- BIN user_img/portrait/bnt-start copy.png
- +83 −0 user_img/portrait/bnt-start copy.svg
- BIN user_img/portrait/bnt-start-pressed-2x.png
- BIN user_img/portrait/bnt-start-pressed.png
- +76 −0 user_img/portrait/bnt-start-pressed.svg
- BIN user_img/portrait/control-background copy-2x.png
- BIN user_img/portrait/control-background copy.png
- +34 −0 user_img/portrait/control-background copy.svg
- BIN user_img/portrait/portrait-background-2x.png
- BIN user_img/portrait/portrait-background-without-fold-2x.png
- BIN user_img/portrait/portrait-background-without-fold.png
- +292 −0 user_img/portrait/portrait-background-without-fold.svg
- BIN user_img/portrait/portrait-background.png
- +334 −0 user_img/portrait/portrait-background.svg
- BIN user_img/portrait/top-left-bnt-2x.png
- BIN user_img/portrait/top-left-bnt.png
- +72 −0 user_img/portrait/top-left-bnt.svg
- BIN user_img/portrait/turbo-2x.png
- BIN user_img/portrait/turbo-enabled-2x.png
- BIN user_img/portrait/turbo-enabled.png
- +89 −0 user_img/portrait/turbo-enabled.svg
- BIN user_img/portrait/turbo.png
- +90 −0 user_img/portrait/turbo.svg
- +3 −0 user_scripts/CoreGlueCode.js
- +24 −71 user_scripts/GUIGlueCode.js
- +357 −0 user_scripts/mvi/GoogleDriveIntegration.js
- +516 −0 user_scripts/mvi/Setup.js
- +71 −0 user_scripts/mvi/classListShim.js
- +10 −0 user_scripts/mvi/hash.js
- +15 −0 user_scripts/mvi/jszip.min.js
- +2,301 −0 user_scripts/mvi/localforage.js
- +100 −0 user_scripts/mvi/news.js
View
4
IodineGBA/core/Emulator.js
| @@ -10,7 +10,7 @@ | ||
| */ | ||
| function GameBoyAdvanceEmulator() { | ||
| this.settings = { | ||
| - SKIPBoot:false, //Skip the BIOS boot screen. | ||
| + SKIPBoot: false, //Skip the BIOS boot screen. | ||
| audioBufferUnderrunLimit:100, //Audio buffer minimum span amount over x milliseconds. | ||
| audioBufferDynamicLimit:32, //Audio buffer dynamic minimum span amount over x milliseconds. | ||
| audioBufferSize:300, //Audio buffer maximum span amount over x milliseconds. | ||
| @@ -321,7 +321,7 @@ GameBoyAdvanceEmulator.prototype.initializeCore = function () { | ||
| //Wrap up any old internal instance callbacks: | ||
| this.runTerminationJobs(); | ||
| //Setup a new instance of the i/o core: | ||
| - this.IOCore = new GameBoyAdvanceIO(this.settings.SKIPBoot, this.coreExposed, this.BIOS, this.ROM); | ||
| + this.IOCore = new GameBoyAdvanceIO(this.settings.SKIPBoot || true, this.coreExposed, this.BIOS, this.ROM); | ||
| //Call the initalization procedure and get status code: | ||
| var allowInit = this.IOCore.initialize() | 0; | ||
| //Append status code as play status flag for emulator runtime: | ||
View
BIN
IodineGBA/gba_bios.bin
Binary file not shown.
View
BIN
apple-touch-icon.png
Binary file not shown.
View
BIN
favicon-16x16.png
Binary file not shown.
View
BIN
favicon-32x32.png
Binary file not shown.
View
BIN
favicon.ico
Binary file not shown.
View
33
i53.manifest
| @@ -0,0 +1,33 @@ | ||
| +CACHE MANIFEST | ||
| + | ||
| +# I53 cache manifest | ||
| +# version 0.1.1 | ||
| + | ||
| +user_img/emulator/a-bnt-2x.png | ||
| +user_img/emulator/a-bnt-pressed-2x.png | ||
| +user_img/emulator/b-bnt-2x.png | ||
| +user_img/emulator/b-bnt-pressed-2x.png | ||
| +user_img/emulator/turbo-2x.png | ||
| +user_img/emulator/turbo-enabled-2x.png | ||
| +user_img/emulator/eject-2x.png | ||
| +user_img/emulator/cart.png | ||
| + | ||
| +user_img/landscape/body-left-2x.png | ||
| +user_img/landscape/body-right-2x.png | ||
| +user_img/landscape/body-repeat-2x.png | ||
| +user_img/landscape/Controller-2x.png | ||
| +user_img/landscape/frame-2x.png | ||
| +user_img/landscape/select-bnt-2x.png | ||
| +user_img/landscape/start-bnt-2x.png | ||
| +user_img/landscape/top-left-bnt-2x.png | ||
| +user_img/landscape/top-right-bnt-2x.png | ||
| + | ||
| +user_img/download.png | ||
| +user_img/gdrive-folders.png | ||
| +user_img/gdrive.png | ||
| +user_img/Zip-File.png | ||
| + | ||
| +favicon.ico | ||
| +favicon-16x16.png | ||
| +favicon-32x32.png | ||
| +apple-touch-icon.png |
View
165
index.html
| @@ -1,10 +1,21 @@ | ||
| <!DOCTYPE html> | ||
| <html> | ||
| <head> | ||
| - <title>IodineGBA</title> | ||
| + <title>I53 GBA Emulator</title> | ||
| <meta charset="UTF-8"> | ||
| <meta name="viewport" content="width=160"> | ||
| - <meta name="viewport" content="initial-scale=1, maximum-scale=1"> | ||
| + <meta name="viewport" content="initial-scale=1, maximum-scale=1, user-scalable=no"> | ||
| + <meta name="apple-mobile-web-app-title" content="I53 Emulator"> | ||
| + <meta name="apple-mobile-web-app-capable" content="yes"> | ||
| + <meta name="apple-mobile-web-app-status-bar-style" content="black"> | ||
| + | ||
| + <link rel="apple-touch-icon" sizes="180x180" href="/apple-touch-icon.png"/> | ||
| + <link rel="icon" type="image/png" href="/favicon-32x32.png" sizes="32x32"/> | ||
| + <link rel="icon" type="image/png" href="/favicon-16x16.png" sizes="16x16"/> | ||
| + <link rel="mask-icon" href="/safari-pinned-tab.svg" color="#5bbad5"/> | ||
| + | ||
| + <link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/font-awesome/4.7.0/css/font-awesome.min.css"> | ||
| + <script src="https://cdnjs.cloudflare.com/ajax/libs/fetch/2.0.0/fetch.min.js"></script> | ||
| <!--Required Scripts--> | ||
| <script src="IodineGBA/includes/TypedArrayShim.js"></script> | ||
| <script src="IodineGBA/core/Cartridge.js"></script> | ||
| @@ -65,24 +76,81 @@ | ||
| <script src="user_scripts/XAudioJS/swfobject.js"></script> | ||
| <script src="user_scripts/XAudioJS/resampler.js"></script> | ||
| <script src="user_scripts/XAudioJS/XAudioServer.js"></script> | ||
| - <script src="user_scripts/VoiceController.js"></script> | ||
| - <link rel="stylesheet" href="user_css/main.css"> | ||
| + <!--<script src="user_scripts/VoiceController.js"></script>--> | ||
| + | ||
| + <!--Mvi scripts--> | ||
| + <script src="user_scripts/mvi/hash.js"></script> | ||
| + <script src="user_scripts/mvi/jszip.min.js"></script> | ||
| + <script src="user_scripts/mvi/GoogleDriveIntegration.js"></script> | ||
| + <script src="user_scripts/mvi/classListShim.js"></script> | ||
| + <script src="user_scripts/mvi/localforage.js"></script> | ||
| + <script src="user_scripts/mvi/news.js"></script> | ||
| + <script src="user_scripts/mvi/Setup.js"></script> | ||
| + | ||
| + <link rel="stylesheet" href="user_css/main.css" /> | ||
| + <link rel="stylesheet" href="user_css/landscape.css" /> | ||
| + <link rel="stylesheet" href="user_css/portrait.css" /> | ||
| + <link rel="stylesheet" href="user_css/spinner.css" /> | ||
| + <link rel="stylesheet" href="user_css/loading.css" /> | ||
| </head> | ||
| - <body> | ||
| + <body id="body"> | ||
| + <div class="background left"></div> | ||
| + <div class="background middle"></div> | ||
| + <div class="background right"></div> | ||
| <div id="container"> | ||
| - <div id="menu" class="paused"> | ||
| - <ul class="menu" id="menu_top"> | ||
| - <li> | ||
| + <div id="main"> | ||
| + <div> | ||
| + <canvas class="canvas" id="emulator_target" width="240" height="160"></canvas> | ||
| + <div></div> | ||
| + </div> | ||
| + </div> | ||
| + <div class="touch-controls"> | ||
| + <div class="touch-dpad"> | ||
| + <div id="touch-up" class="button dpad-button" data-input="6" data-input="4"></div> | ||
| + <div id="touch-left" class="button dpad-button" data-input="5"></div> | ||
| + <div id="touch-right" class="button dpad-button" data-input="4"></div> | ||
| + <div id="touch-down" class="button dpad-button" data-input="7"></div> | ||
| + </div> | ||
| + <div class="touch-buttons bottom"> | ||
| + <div id="touch-start" class="button" data-input="3"></div> | ||
| + <div id="touch-select" class="button" data-input="2"></div> | ||
| + </div> | ||
| + <div class="touch-buttons ab"> | ||
| + <div id="touch-a" class="button" data-input="0"></div> | ||
| + <div id="touch-b" class="button" data-input="1"></div> | ||
| + </div> | ||
| + <div id="touch-l" class="button top" data-input="9"></div> | ||
| + <div id="touch-r" class="button top" data-input="8"></div> | ||
| + <div id="touch-speed" class="button"></div> | ||
| + </div> | ||
| + <span class="message" id="tempMessage"></span> | ||
| + </div> | ||
| + <div id="drawer"> | ||
| + <div id="gdrive-connect">Connect to Google Drive</div> | ||
| + <ul id="game-list"> | ||
| + </ul> | ||
| + <div class="meter" id="loading"><span style="width: 100%"></span></div> | ||
| + <div id="expander"> | ||
| + <i class="fa fa-chevron-down" aria-hidden="true"></i> | ||
| + <i class="fa fa-chevron-up" aria-hidden="true"></i> | ||
| + </div> | ||
| + | ||
| + <div id="menu-container" style="white-space: nowrap"> | ||
| + <ul class="menu" id="menu_top" > | ||
| + <li id="options"> | ||
| + <i class="fa fa-cogs" aria-hidden="true"></i> | ||
| + </li><!-- | ||
| + --><li style="display: none"> | ||
| File | ||
| <ul> | ||
| <li><span>BIOS: </span> <input type="file" id="bios_load" class="files"></li> | ||
| <li><span>Game: </span> <input type="file" id="rom_load" class="files"></li> | ||
| </ul> | ||
| - </li> | ||
| - <li id="play" class="show">Play</li> | ||
| - <li id="pause" class="hide">Pause</li> | ||
| - <li id="restart">Restart</li> | ||
| - <li> | ||
| + </li><!-- | ||
| + --><li id="play" class="show" style="display: none">Play</li><!-- | ||
| + --><li id="pause" class="hide" style="display: none">Pause</li><!-- | ||
| + --><li id="restart">Restart</li><!-- | ||
| + --><li style="display: none"> | ||
| Settings | ||
| <ul> | ||
| <li> | ||
| @@ -168,16 +236,16 @@ | ||
| </ul> | ||
| </li> | ||
| </ul> | ||
| - </li> | ||
| - <li> | ||
| + </li><!-- | ||
| + --><li style="display: none"> | ||
| Volume | ||
| <ul> | ||
| <li> | ||
| <input type="range" id="volume"> | ||
| </li> | ||
| </ul> | ||
| - </li> | ||
| - <li id="saves_menu"> | ||
| + </li><!-- | ||
| + --><li id="saves_menu" style="display: none"> | ||
| Saves | ||
| <ul id="saves_menu_container"> | ||
| <li> | ||
| @@ -193,11 +261,11 @@ | ||
| <a href="./" id="export" target="_new">Export All Saves</a> | ||
| </li> | ||
| </ul> | ||
| - </li> | ||
| - <li id="fullscreen">Fullscreen</li> | ||
| - <li> | ||
| - <span id="speed">Speed</span> | ||
| - <ul> | ||
| + </li><!-- | ||
| + --><li id="fullscreen" style="display: none">Fullscreen</li><!-- | ||
| + --><li style="display: none"> | ||
| + <span id="speed" style="width: 120px">Speed</span> | ||
| + <ul style="display: none"> | ||
| <li id="speedup"> | ||
| <span>+5%</span> | ||
| </li> | ||
| @@ -208,31 +276,38 @@ | ||
| <span>-5%</span> | ||
| </li> | ||
| </ul> | ||
| - </li> | ||
| + </li><!-- | ||
| + --><li> | ||
| + Savegames | ||
| + <ul> | ||
| + <li id="gdrive-upload-saves">Upload</li> | ||
| + <li id="gdrive-download-saves">Download</li> | ||
| + </ul> | ||
| + </li><!-- | ||
| + --><li> | ||
| + Emulator Settings | ||
| + <ul> | ||
| + <li id="settings-fullscreen" class="toggle">Fullscreen</li> | ||
| + <li id="settings-smoothing" class="toggle">Smoothing</li> | ||
| + </ul> | ||
| + </li><!-- | ||
| + --><li id="gdrive-files-update-games">Clear Game Cache</li><!-- | ||
| + --><li id="gdrive-logout">Log Out</li> | ||
| </ul> | ||
| </div> | ||
| - <div id="main"> | ||
| - <canvas class="canvas" id="emulator_target" width="240" height="160"></canvas> | ||
| - </div> | ||
| - <div class="touch-controls"> | ||
| - <div class="touch-dpad"> | ||
| - <button id="touch-up">↑</button><br> | ||
| - <button id="touch-left">←</button> | ||
| - <button id="touch-right">→</button><br> | ||
| - <button id="touch-down">↓</button> | ||
| - </div> | ||
| - <div class="touch-buttons"> | ||
| - <button id="touch-select">SELECT</button> | ||
| - <button id="touch-start">START</button> | ||
| - </div> | ||
| - <div class="touch-buttons"> | ||
| - <button id="touch-a">A</button> | ||
| - <button id="touch-b">B</button><br> | ||
| - <button id="touch-l">L</button> | ||
| - <button id="touch-r">R</button> | ||
| - </div> | ||
| - </div> | ||
| - <span class="message" id="tempMessage"></span> | ||
| </div> | ||
| + | ||
| + <div id="info"></div> | ||
| + <div id="splash"></div> | ||
| + <script src="https://apis.google.com/js/client.js?onload=gauth"></script> | ||
| + <script> | ||
| + (function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){ | ||
| + (i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new Date();a=s.createElement(o), | ||
| + m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m) | ||
| + })(window,document,'script','https://www.google-analytics.com/analytics.js','ga'); | ||
| + | ||
| + ga('create', 'UA-53217641-3', 'auto'); | ||
| + ga('send', 'pageview'); | ||
| + </script> | ||
| </body> | ||
| </html> | ||
View
53
safari-pinned-tab.svg
| @@ -0,0 +1,53 @@ | ||
| +<?xml version="1.0" standalone="no"?> | ||
| +<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 20010904//EN" | ||
| + "http://www.w3.org/TR/2001/REC-SVG-20010904/DTD/svg10.dtd"> | ||
| +<svg version="1.0" xmlns="http://www.w3.org/2000/svg" | ||
| + width="416.000000pt" height="416.000000pt" viewBox="0 0 416.000000 416.000000" | ||
| + preserveAspectRatio="xMidYMid meet"> | ||
| +<metadata> | ||
| +Created by potrace 1.11, written by Peter Selinger 2001-2013 | ||
| +</metadata> | ||
| +<g transform="translate(0.000000,416.000000) scale(0.100000,-0.100000)" | ||
| +fill="#000000" stroke="none"> | ||
| +<path d="M0 2080 l0 -1800 2080 0 2080 0 0 1800 0 1800 -2080 0 -2080 0 0 | ||
| +-1800z m1230 720 l0 -100 -99 0 c-81 0 -100 3 -105 16 -8 21 -8 169 1 177 3 4 | ||
| +51 7 105 7 l98 0 0 -100z m930 0 l0 -100 -265 0 -265 0 0 -75 0 -75 242 0 | ||
| +c234 0 242 -1 265 -22 l23 -21 0 -332 c0 -325 0 -332 -21 -351 -20 -18 -43 | ||
| +-19 -339 -22 l-318 -3 -28 25 c-28 23 -29 29 -32 125 l-4 101 106 0 106 0 0 | ||
| +-25 0 -25 163 2 162 3 3 173 2 172 -239 0 c-239 0 -240 0 -268 24 l-28 24 0 | ||
| +232 c0 232 0 232 24 251 22 18 43 19 367 19 l344 0 0 -100z m900 90 c11 -6 24 | ||
| +-27 30 -48 13 -50 12 -171 -3 -203 -7 -14 -52 -61 -102 -105 l-89 -79 83 -5 | ||
| +c126 -8 123 -1 119 -352 -3 -242 -3 -248 -26 -270 -22 -23 -25 -23 -341 -26 | ||
| +l-319 -3 -28 24 c-27 23 -28 30 -32 126 l-4 101 105 0 c102 0 106 -1 109 -22 | ||
| +3 -23 5 -23 163 -23 l160 0 3 123 3 122 -116 0 c-110 0 -117 1 -140 25 -23 22 | ||
| +-25 32 -25 108 0 52 5 89 13 99 6 8 64 57 127 108 63 52 119 97 124 102 6 4 | ||
| +-63 8 -152 8 l-162 0 0 -25 0 -26 -102 3 -103 3 0 98 c0 96 1 100 28 123 l28 | ||
| +24 315 0 c194 0 323 -4 334 -10z m-1830 -690 l0 -401 -102 3 -103 3 -3 398 -2 | ||
| +397 105 0 105 0 0 -400z m10 -620 c0 -17 -7 -20 -45 -20 -41 0 -45 -2 -45 -25 | ||
| +0 -22 4 -25 35 -25 28 0 35 -4 35 -20 0 -16 -7 -20 -35 -20 -31 0 -35 -3 -35 | ||
| +-25 0 -23 4 -25 45 -25 39 0 45 -3 45 -20 0 -19 -5 -21 -62 -18 l-63 3 -3 108 | ||
| +-3 107 66 0 c58 0 65 -2 65 -20z m174 -60 l20 -75 20 78 c18 67 23 77 43 77 | ||
| +21 0 23 -5 23 -49 0 -26 3 -76 6 -110 7 -58 6 -61 -15 -61 -19 0 -21 6 -22 53 | ||
| +l-1 52 -16 -53 c-12 -43 -19 -52 -35 -50 -14 2 -25 17 -36 48 l-16 45 -3 -47 | ||
| +c-3 -41 -6 -48 -24 -48 -20 0 -20 4 -14 61 3 34 6 84 6 111 0 45 2 49 22 46 | ||
| +18 -2 25 -16 42 -78z m266 -10 l0 -90 30 0 30 0 0 90 c0 83 1 90 20 90 19 0 | ||
| +20 -7 20 -99 0 -117 -5 -123 -82 -119 l-53 3 -3 108 c-3 102 -2 107 18 107 19 | ||
| +0 20 -6 20 -90z m260 1 l0 -90 47 -3 c36 -2 49 -7 51 -20 3 -16 -5 -18 -67 | ||
| +-18 l-71 0 0 110 c0 103 1 110 20 110 19 0 20 -7 20 -89z m325 -8 c15 -54 30 | ||
| +-104 32 -110 3 -8 -3 -13 -15 -13 -13 0 -22 9 -26 25 -5 21 -12 25 -41 25 -29 | ||
| +0 -36 -4 -41 -25 -6 -25 -44 -37 -44 -14 0 12 50 190 57 202 2 4 15 7 27 7 21 | ||
| +0 26 -10 51 -97z m265 77 c0 -15 -7 -20 -25 -20 -25 0 -25 -1 -25 -90 0 -83 | ||
| +-1 -90 -20 -90 -19 0 -20 7 -20 90 0 89 0 90 -25 90 -18 0 -25 5 -25 20 0 18 | ||
| +7 20 70 20 63 0 70 -2 70 -20z m238 8 c16 -16 16 -180 0 -196 -7 -7 -36 -12 | ||
| +-65 -12 -41 0 -54 4 -63 19 -14 28 -13 174 2 189 7 7 35 12 63 12 28 0 56 -5 | ||
| +63 -12z m250 0 c15 -15 16 -100 1 -115 -9 -9 -8 -22 5 -52 15 -40 15 -41 -4 | ||
| +-41 -14 0 -25 12 -36 40 -11 27 -22 40 -35 40 -15 0 -19 -7 -19 -40 0 -33 -3 | ||
| +-40 -20 -40 -19 0 -20 7 -20 110 l0 110 58 0 c32 0 63 -5 70 -12z"/> | ||
| +<path d="M2203 1506 c-10 -33 -9 -36 8 -36 20 0 24 20 10 54 -6 15 -9 12 -18 | ||
| +-18z"/> | ||
| +<path d="M2677 1553 c-4 -3 -7 -35 -7 -70 l0 -63 35 0 35 0 0 70 0 70 -28 0 | ||
| +c-16 0 -32 -3 -35 -7z"/> | ||
| +<path d="M2930 1530 c0 -27 3 -30 30 -30 27 0 30 3 30 30 0 27 -3 30 -30 30 | ||
| +-27 0 -30 -3 -30 -30z"/> | ||
| +</g> | ||
| +</svg> |
Oops, something went wrong.