├── src ├── Readme.md ├── Hex │ ├── Readme.md │ ├── Livolo-Mod-3Gang.HEX │ ├── Livolo-Mod-1Gang.HEX │ └── Livolo-Mod-2Gang.HEX └── Livolo-Mod.pbp ├── README.md └── LICENSE /src/Readme.md: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /src/Hex/Readme.md: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | # Livolo-Mod 2 | 3 | What is it? 4 | ----------- 5 | 6 | LIVOLO-Mod is a custom firmware for LIVOLO light switch 7 | 8 | Why a custom firmware? 9 | ---------------------- 10 | 11 | Livolo is a really nice switch for a modern house, it's touch, nice look and electronic made. It's great for a Smarthome project however it doesn't come with an interface for external device to be remote controlled and have its status updated. 12 | 13 | There is a RF remote version that could make it partially useful in such way you can send code to turn it on/off but, how to know the status if someone turn the light on touching the switch? You won't. 14 | 15 | The Solution 16 | ---------------- 17 | 18 | LIVOLO switch uses a PIC 16F690, this PIC has built in UART serial, We ca use this feature to communicate with other device. 19 | 20 | The Modification 21 | --------------------- 22 | 23 | One of the great things in the LIVOLO switch is the ability to use the AC current to supply the power (3VDC) for the PIC. 24 | With this mod you will lose this feature and LIVOLO must be powered from external 5VDC supply.** We might change this in the future, for now, yes it needs 5VDC supply. 25 | 26 | It sounds a big deal to bring an external DC power cable, but don't forget we are doing this mod to have a Serial line to communicate with other device so You HAVE to bring up 3 wires to the Livolo (TX,RX, GND) then it's not a big deal to bring one more wire (+5V). I use at my home a phone cable with RJ11. 27 | 28 | The Mod consist in: 29 | - Isolate the AC power from the electronic circuit; 30 | - Save the custom firmware in the PIC; 31 | - Change the internal relays, it comes with 12VDC relay, we need 5VDC to make things simple (unless you want to keep the 12V relay and drop the voltage with a regulator); 32 | - Solder a whip with 4 wires and Connector(+5V, TX, RX, GND). I'm using a RJ11 female, it works very well. 33 | 34 | What you need: 35 | - To program the PIC: Microchip’s PICkit™ 3 or any other programmer; 36 | - Soldering iron and knowledge to use it; 37 | - 5VDC relay model: 005-HS3(555), google it. 38 | - Not necessary but Recommended to extend the range for the Serial comms: A pair of MAX3232 module, google it. 39 | - If you want to work in the source code, you will need a PICBasic compiler (PICBASIC PRO™), plans to switch to C compiler. 40 | 41 | How to Do it? 42 | ------------- 43 | See file docs/howto.html (working on... coming soon) 44 | 45 | Authors 46 | ---------- 47 | Doug Schafer 48 | Rhaurison Bergamin 49 | 50 | Contributors 51 | --------------- 52 | 53 | 54 | License 55 | ---------- 56 | Mozilla Public License Version 2.0 – See License file. 57 | -------------------------------------------------------------------------------- /src/Livolo-Mod.pbp: -------------------------------------------------------------------------------- 1 | '''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''' 2 | ' LANGUAGE: PicBasic Pro 3 | ' PROJECT: Livolo-Mod 4 | ' AUTHOR: Douglas Schafer 5 | ' Rhaurison Bergamin 6 | ' REVISION: REV 2.1 7 | ' DESCRIPTION: Livolo Touch Switch Mod 8 | ' This program allows the sensor board of the Livolo switch to output serial commands to devices. 9 | ' 10 | ' DEVICE: PIC16F690 11 | ' FUSE SETTINGS: OSC = INTRC_IO, MCLRE = Disable 12 | ' 13 | ' PIC16F688: +--v--+ 14 | ' +5V VDD >[ ]< VSS 0v 15 | ' A5 <[ ]> A0 16 | ' A4 <[ ]> A1 LED2 17 | ' A3 <[ ]> A2 TCHARGE 18 | ' C5 <[ ]> C0 19 | ' C4 <[ ]< C1 TOUCH1 20 | ' C3 <[ ]< C2 TOUCH2 21 | ' C6 <[ ]> B4 LED1 22 | ' 1KR C7 <[ ]< B5 RX 23 | ' ---/\/\/\/--- TX B7 <[ ]> B6 24 | ' +-----+ 25 | ' 26 | '''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''' 27 | '==================================================== 28 | '========= CONFIG FOR 1 AND 2 Gang ============= 29 | Channels con 1 ; Define number of LIVOLO Channels (Gang): 1 or 2 30 | LED_0 var PortA.5 ; L3 A0 31 | LED_1 var PortA.1 ; L2 32 | LED_2 var PortB.4 ; L1 33 | LED_3 var PortA.0 ; A3 34 | TRISC = %00000110 35 | '========= CONFIG FOR 3 Gang =================== 36 | ;Channels con 3 ; Define number of LIVOLO Channels (Gang): 3 37 | ;LED_0 var PortA.5 ; L2 38 | ;LED_1 var PortA.1 ; L1 39 | ;LED_2 var PortA.0 ; A3 40 | ;LED_3 var PortB.4 ; L3 A0 41 | ;TRISC = %00001110 42 | '===================================================== 43 | RELAY_A var PortC.7 ; SW1 44 | RELAY_B var PortC.5 ; SW2 45 | RELAY_C var PortC.6 ; SW3 46 | 47 | DEFINE OSC 4 ' Define Oscilator as 4Mhz 48 | DEFINE HSER_BAUD 1200 ' We Use 1200 baud to increase the distance range 49 | DEFINE HSER_CLROERR 1 ' Auto clear over-run errors 50 | DEFINE HSER_RCSTA 90h ' Enable serial port & continuous receive 51 | 'define HSER_TXSTA 24H ''Enable transmit, BRGH = 1 (for baud >=9600 only) 52 | define HSER_TXSTA 20H ' for 1200 bps 53 | ;DEFINE HSER_SPBRG 25 ' routine when you get data. 54 | ;OSCCON = %01110001 ' set OSC fuse bits to 8MHz 55 | OSCCON = %01100001 ' set OSC fuse bits to 4MHz 56 | ;OSCCON = %01010001 ' set OSC fuse bits to 2MHz 57 | ANSEL = %00000000 ' Analogue select 'off' 58 | ANSELH = %00000000 ' Analogue select 'off' 59 | WPUA = %00000000 ' Set Pullups PortA 'off' 60 | WPUB = %00000000 ' Set Pullups PortB 'off' 61 | IOCA = %00000000 ' Interupt on change 'off' 62 | INTCON = %00000000 'initialize INTCON register, Enable Int 63 | OPTION_REG = %10110001 64 | CM1CON0 = %10010101 ' Comparator C1 Control Register 0 65 | CM2CON0 = %10100101 ' Comparator C2 Control Register 0 66 | CM2CON1 = %00000000 ' Comparator C2 Control Register 1 67 | SRCON = %11110000 ' SR Latch Control Register 68 | VRCON = %10000111 ' Voltage Ref Control Register 69 | PORTA = %00000000 70 | TRISA = %00000100 ' bit2 is for Timer input 71 | PORTB = %00000000 72 | TRISB = %00100000 ' port B5 is RX input 73 | PORTC = %00000000 74 | 'TXSTA = %00100100 75 | 'RCSTA = %10010000 76 | ;BAUDCTL = %00000000 77 | ;ADCON1 = %00001111 'Set up ADCON1 register no matter what you're doing! 78 | SW_ON var Bit[4] 79 | SW_ON[0] = 0 ; L3 (Left) ' SWITCH.0 select 1 if used, 0 if not: GANG TYPE, 4, 80 | SW_ON[1] = 0 ; L1 (right) ' SWITCH.1 select 1 if used, 0 if not: GANG TYPE, 4, 2, and 1 81 | SW_ON[2] = 0 ; L2 (left/Center) ' SWITCH.2 select 1 if used, 0 if not: GANG TYPE, 4, 2, 82 | SW_ON[3] = 0 ; L4 ' SWITCH.3 select 1 if used, 0 if not: GANG TYPE, 4, 83 | ''''''''''''''''''''''''''''''''''''''' DEFINE VARIABLES ''''''''''''''''''''''''''''''''''''''''''''''''''' 84 | SW_raw var Word[4] 85 | SW_average var Word[4] 86 | debounce var Byte[4] 87 | sense_time var Word[4] 88 | sense var word 89 | ch var Byte 90 | i var Byte 91 | b1 var byte 92 | docalibrate var word 93 | MLED1 var byte 94 | clear 95 | ; devine how sensitivy it is. 96 | ;increase to less sensitive, decrease makes it more sensitive 97 | ; 20 is a good number. 98 | sense = 20 99 | 100 | if channels = 1 then 101 | SW_ON[1] = 1 102 | endif 103 | if channels = 2 then 104 | SW_ON[1] = 1 105 | SW_ON[2] = 1 106 | endif 107 | if channels = 3 then 108 | SW_ON[1] = 1 109 | SW_ON[2] = 1 110 | SW_ON[3] = 1 111 | endif 112 | RELAY_A = 0 113 | RELAY_B = 0 114 | RELAY_C = 0 115 | LED_0 = 0 116 | LED_1 = 0 117 | LED_2 = 0 118 | LED_3 = 0 119 | docalibrate=0 120 | 121 | for i=0 to 9 122 | toggle LED_1 123 | pause 100 124 | next 125 | LED_1 = 0 126 | 127 | for i=0 to 9 128 | toggle LED_2 129 | pause 100 130 | next 131 | LED_2 = 0 132 | 133 | for i=0 to 9 134 | toggle LED_3 135 | pause 100 136 | next 137 | LED_3 = 0 138 | 139 | ''''''''''''''''''''''''''''''''''''''''' USER NOTES '''''''''''''''''''''''''''''''''''''''''''''''''''' 140 | ;; WARNING: THIS PROGRAM HAS BEEN TESTED ON 1 Gang, 2 GANG, AND 3 GANG SWITCH'S ;; 141 | 142 | GoSub CALIBRATE 143 | hserout[13,10] 144 | hserout[13,10] 145 | hSerout["CH1:",DEC LED_1,",CH2:",dec LED_2,",CH3:",dec LED_3,",CH4:",dec LED_0,13,10] 146 | '''''''''''''''''''''''''''''''''''''''''' MAIN PROGRAM '''''''''''''''''''''''''''''''''''''''''''''''''''' 147 | 148 | START: 149 | ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; CHECK SW0 150 | ch=0 151 | If SW_ON[ch]=0 Then SKIP0 152 | GoSub CHECK_SW 153 | If debounce[ch] = 1 Then 154 | Toggle LED_0 155 | If LED_0=1 Then 156 | hSerout ["CH0:1",13,10] 157 | hSerout ["CH0:1",13,10] 158 | hSerout ["CH0:1",13,10] 159 | Else 160 | hSerout ["CH0:0",13,10] 161 | hSerout ["CH0:0",13,10] 162 | hSerout ["CH0:0",13,10] 163 | EndIf 164 | EndIf 165 | 'Serout2 TX, 84, ["RAW", DEC1 ch, ": ", DEC5 SW_raw[ch], ", AVE", DEC1 ch, ": ", DEC5 SW_average[ch], ", TIME", DEC1 ch, ": ", DEC5 sense_time[ch], ", "] ;THIS IS USED FOR TESTING 166 | SKIP0: 167 | 168 | ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; CHECK SW1 169 | ch=1 170 | If SW_ON[ch]=0 Then SKIP1 171 | GoSub CHECK_SW 172 | If debounce[ch] = 1 Then 173 | Toggle LED_1 174 | 'docalibrate = docalibrate + 1 175 | If LED_1=1 Then 176 | hSerout ["CH1:1",13,10] ' Turn light OFF comand for external device 177 | hSerout ["CH1:1",13,10] ' send it 3 times to ensure comms 178 | hSerout ["CH1:1",13,10] 179 | RELAY_A = 1 180 | Else 181 | hSerout ["CH1:0",13,10] ' Turn light ON comand for external device 182 | hSerout ["CH1:0",13,10] 183 | hSerout ["CH1:0",13,10] 184 | RELAY_A = 0 185 | EndIf 186 | EndIf 187 | 'Serout2 TX, 84, ["RAW", DEC1 ch, ": ", DEC5 SW_raw[ch], ", AVE", DEC1 ch, ": ", DEC5 SW_average[ch], ", TIME", DEC1 ch, ": ", DEC5 sense_time[ch], ", "] ;THIS IS USED FOR TESTING 188 | SKIP1: 189 | 190 | ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; CHECK SW2 191 | ch=2 192 | If SW_ON[ch]=0 Then SKIP2 193 | GoSub CHECK_SW 194 | If debounce[ch] = 1 Then 195 | Toggle LED_2 196 | If LED_2=1 Then 197 | hSerout ["CH2:1",13,10] ' Turn light OFF comand for external device 198 | hSerout ["CH2:1",13,10] 199 | hSerout ["CH2:1",13,10] 200 | RELAY_B = 1 201 | Else 202 | hSerout ["CH2:0",13,10] ' Turn light ON comand for external device 203 | hSerout ["CH2:0",13,10] 204 | hSerout ["CH2:0",13,10] 205 | RELAY_B = 0 206 | EndIf 207 | EndIf 208 | 'Serout2 TX, 84, ["RAW", DEC1 ch, ": ", DEC5 SW_raw[ch], ", AVE", DEC1 ch, ": ", DEC5 SW_average[ch], ", TIME", DEC1 ch, ": ", DEC5 sense_time[ch], ", "] ;THIS IS USED FOR TESTING 209 | SKIP2: 210 | 211 | ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; CHECK SW3 212 | ch=3 213 | If SW_ON[ch]=0 Then SKIP3 214 | GoSub CHECK_SW 215 | If debounce[ch] = 1 Then 216 | Toggle LED_3 217 | If LED_3=1 Then 218 | hSerout ["CH3:1",13,10] ' Turn light OFF comand for external device 219 | hSerout ["CH3:1",13,10] 220 | hSerout ["CH3:1",13,10] 221 | RELAY_C = 1 222 | Else 223 | hSerout ["CH3:0",13,10] ' Turn light OFF comand for external device 224 | hSerout ["CH3:0",13,10] 225 | hSerout ["CH3:0",13,10] 226 | RELAY_C = 0 227 | EndIf 228 | EndIf 229 | SKIP3: 230 | b1=10 231 | hserin 50,Timeout,[b1] 232 | 'pause 50 233 | ' Once Received in the Serial: 234 | ' 0 -> Return the Status 235 | ' 1 -> turn CH1 on 236 | ' 2 -> turn CH2 on 237 | ' 3 -> turn CH3 on 238 | ' 4 -> Reserved 239 | ' 5 -> turn CH1 off 240 | ' 6 -> turn CH2 off 241 | ' 7 -> turn CH3 off 242 | ' 8 -> Reserved 243 | ' 9 -> Calibrate 244 | if b1 <> 10 then 245 | IF b1 = "0" THEN 246 | hSerout["CH1:",DEC LED_1,",CH2:",dec LED_2,",CH3:",dec LED_3,",CH4:",dec LED_0,13,10] 247 | 'hSerout["CH2:",DEC LED_2,13,10] 248 | 'hSerout["CH3:",DEC LED_3,13,10] 249 | 'hSerout["CH4:",DEC LED_0,13,10] 250 | endif 251 | IF b1 = "1" THEN 252 | LED_1 = 1 253 | hSerout["CH1:",DEC LED_1,13,10] 254 | hSerout["CH1:",DEC LED_1,13,10] 255 | RELAY_A = 1 256 | endif 257 | IF b1 = "5" THEN 258 | LED_1 = 0 259 | hSerout ["CH1:",dec LED_1,13,10] 260 | hSerout ["CH1:",dec LED_1,13,10] 261 | RELAY_A = 0 262 | endif 263 | IF (b1="2") and (SW_ON[2]=1) THEN 264 | LED_2 = 1 265 | hSerout["CH2:",dec LED_2,13,10] 266 | hSerout["CH2:",dec LED_2,13,10] 267 | RELAY_B = 1 268 | endif 269 | IF (b1="6") and (SW_ON[2]=1) THEN 270 | LED_2 = 0 271 | hSerout ["CH2:",dec LED_2,13,10] 272 | hSerout ["CH2:",dec LED_2,13,10] 273 | RELAY_B = 0 274 | endif 275 | IF (b1="3") and (SW_ON[3]=1) THEN 276 | LED_3 = 1 277 | hSerout["CH3:",dec LED_3,13,10] 278 | hSerout["CH3:",dec LED_3,13,10] 279 | RELAY_C = 1 280 | endif 281 | IF (b1="7") and (SW_ON[3]=1) THEN 282 | LED_3 = 0 283 | hSerout ["CH3:",dec LED_3,13,10] 284 | hSerout ["CH3:",dec LED_3,13,10] 285 | RELAY_C = 0 286 | endif 287 | IF (b1="4") and (SW_ON[0]=1) THEN 288 | LED_0 = 1 289 | hSerout["CH0:",dec LED_0,13,10] 290 | hSerout["CH0:",dec LED_0,13,10] 291 | ;RELAY_CH3 = 1 292 | endif 293 | IF (b1="8") and (SW_ON[0]=1) THEN 294 | LED_0 = 0 295 | hSerout["CH0:",dec LED_0,13,10] 296 | hSerout["CH0:",dec LED_0,13,10] 297 | ;RELAY_CH3 = 0 298 | endif 299 | IF (b1="9") THEN 300 | hSerout ["CH0:",dec LED_0,13,10] 301 | pause 20 302 | hSerout ["CH1:",dec LED_1,13,10] 303 | pause 20 304 | hSerout ["CH2:",dec LED_2,13,10] 305 | pause 20 306 | hSerout ["CH3:",dec LED_3,13,10] 307 | pause 20 308 | MLED1 = LED_1 309 | GoSub CALIBRATE 310 | for i=0 to 9 311 | toggle LED_1 312 | pause 200 313 | next 314 | LED_1 = MLED1 315 | endif 316 | endif 317 | GoTo START 318 | 319 | Timeout: 320 | goto START 321 | 322 | ''''''''''''''''''''''''''''''''''''''''' CHECK SWITCHES ''''''''''''''''''''''''''''''''''''''''''''''''''' 323 | CHECK_SW: 324 | CM1CON0.0 = ch.0 ' change to correct input ch (bit 0) 325 | CM1CON0.1 = ch.1 ' change to correct input ch (bit 1) 326 | CM2CON0.0 = ch.0 ' change to correct input ch (bit 0) 327 | CM2CON0.1 = ch.1 ' change to correct input ch (bit 1) 328 | TMR0 = 0 ' Reset the Timer 0 329 | PauseUs sense_time[ch] ' Pause for appropriate time to get default 200 cycles 330 | SW_raw[ch] = TMR0 ' Get count value from Timer0 331 | SW_raw[ch] = SW_raw[ch]*10 ' Do some averaging 332 | ;SW_average[ch] = (SW_average[ch]*9)+SW_raw[ch] 333 | ;SW_average[ch] = SW_average[ch]/10 334 | ;SW_average[ch] = SW_average[ch] + (SW_raw[ch] - SW_average[ch])/10 335 | SW_average[ch] = (9*SW_average[ch]+SW_raw[ch])/10 336 | 337 | ;If SW_raw[ch] < (SW_average[ch]-10) Then Check if switch is touched 338 | If SW_raw[ch] < (SW_average[ch]- sense) Then ; 339 | debounce[ch] = debounce[ch] + 1 ' Debounce switch 340 | Else 341 | debounce[ch] = 0 342 | EndIf 343 | Return 344 | 345 | ''''''''''''''''''''''''''''''''''''''''' CHECK SWITCHES ''''''''''''''''''''''''''''''''''''''''''''''''''' 346 | CALIBRATE: 347 | For ch=1 to 3 348 | If SW_ON[ch]=1 Then 349 | sense_time[ch] = 0 ;it need a start point??? 350 | ;SW_average[ch] = 0 inicial 351 | CAL_LOOP: 352 | sense_time[ch]=sense_time[ch]+1 353 | GoSub CHECK_SW 354 | If SW_raw[ch]<2000 Then 355 | GoTo CAL_LOOP 356 | EndIf 357 | EndIf 358 | next 359 | Return 360 | 361 | END 362 | 363 | 364 | 365 | -------------------------------------------------------------------------------- /src/Hex/Livolo-Mod-3Gang.HEX: -------------------------------------------------------------------------------- 1 | :020000040000FA 2 | :10000000F928A800F839A000A00CA00C200C840747 3 | :100010006520A8000005F4289818181218162C0856 4 | :10002000A0002D08A100A201A30116281728640032 5 | :100030008C1A2D28FF30A207031CA307031CA0075E 6 | :10004000031CA107031C0800220F1528230F1628E4 7 | :100050003230A2000030A30017281A080314F42835 8 | :10006000040864000C1E312899000314F428B3130B 9 | :1000700029080319B3170530A8002730A300103052 10 | :100080004D200330A300E8304D20A30164304D2003 11 | :10009000A3010A304D2024085428A2002508A100FD 12 | :1000A0002408A000BD202008A000A8030319B31352 13 | :1000B000290803195E282802031808002008031DD8 14 | :1000C000B313B31B0800303EEF2800308A00280825 15 | :1000D00007396D3E03188A0A820001340234043461 16 | :1000E0000834103420344034803483178001840A6B 17 | :1000F000FF3E031D7628F428A301A200FF30A207CB 18 | :10010000031CA307031CF4280330A100DF308A205E 19 | :100110007E28A101E83EA000A109FC30031C932821 20 | :10012000A00703189028A0076400A10F90282018AA 21 | :100130009928A01C9D2800009D280800A2000230DC 22 | :10014000A628A2000330A628A2000530A800230894 23 | :100150002102031DAD2822082002043003180130BB 24 | :10016000031902302805031DFF30F4280038031D51 25 | :10017000FF300405031DFF30F428A501A401103051 26 | :10018000A600210DA40DA50D2208A4022308031C1E 27 | :10019000230FA5020318D3282208A4072308031855 28 | :1001A000230FA5070310A00DA10DA60BC128200841 29 | :1001B000F4281030A800A101A001A70CA60C031C74 30 | :1001C000E7282208A00723080318230FA107A10C82 31 | :1001D000A00CA50CA40CA80BDD282408F42884008E 32 | :1001E00031088A00300882008313031383126400ED 33 | :1001F0000800831633309900203098008312903025 34 | :10020000980083160E30870061308F008312031729 35 | :100210009E019F0183160313950183120317950115 36 | :1002200083160313960183128B018316B13081006C 37 | :100230008312031795309900A5309A009B0183160D 38 | :10024000F0309E00831287309800031385018316D7 39 | :1002500004308500831286018316203086008312C5 40 | :1002600087016010E0106011E011203084006030E0 41 | :100270008A017620A030840050308A017620203018 42 | :10028000840050308A0175201430D600D7018A11BD 43 | :100290004A29E0148A114E29E0146015E014601513 44 | :1002A000E0158713871207138512851005100612B3 45 | :1002B000D401D501DE0164000A305E028A11031800 46 | :1002C0006D290230850683168510643083128A01F9 47 | :1002D0007C20DE0A8A11031D5B298510DE01640083 48 | :1002E0000A305E028A1103188129013085068316BF 49 | :1002F0000510643083128A017C20DE0A8A11031DF6 50 | :100300006F290510DE0164000A305E028A110318AD 51 | :1003100095291030860683160612643083128A01EE 52 | :100320007C20DE0A8A11031D832906128A156521A5 53 | :1003300043308A01312048308A01312031308A012E 54 | :1003400031203A308A013120A9010030851801306E 55 | :10035000A400A5013030B000B1018A0137202C3053 56 | :100360008A01312043308A01312048308A0131200E 57 | :1003700032308A0131203A308A013120A90100301F 58 | :1003800005180130A400A5013030B000B1018A0188 59 | :1003900037202C308A01312043308A013120483007 60 | :1003A0008A01312033308A0131203A308A013120EC 61 | :1003B000A9010030061A0130A400A5013030B000B8 62 | :1003C000B1018A0137202C308A01312043308A0163 63 | :1003D000312048308A01312034308A0131203A30CE 64 | :1003E0008A013120A9010030851A0130A400A5013D 65 | :1003F0003030B000B1018A0137200D308A01312040 66 | :100400000A308A013120DD01603084005D08003E41 67 | :100410008A0101200030031D0130D800D90158089D 68 | :10042000A0005908A100A30100308A019E208A1172 69 | :10043000031DB02A8A1599205D08503E84000008EB 70 | :10044000D80064005808013C8A11031DB02A2030EE 71 | :1004500085068316851264008A118312851E712A0F 72 | :1004600043308A01312048308A01312030308A01FE 73 | :1004700031203A308A01312031308A0131200D306B 74 | :100480008A0131200A308A01312043308A0131202B 75 | :1004900048308A01312030308A0131203A308A01D7 76 | :1004A000312031308A0131200D308A0131200A306B 77 | :1004B0008A01312043308A01312048308A013120BD 78 | :1004C00030308A0131203A308A01312031308A01BE 79 | :1004D00031200D308A0131200A308A0131208A1101 80 | :1004E000B02A43308A01312048308A01312030302F 81 | :1004F0008A0131203A308A01312030308A0131209E 82 | :100500000D308A0131200A308A01312043308A01BE 83 | :10051000312048308A01312030308A0131203A3090 84 | :100520008A01312030308A0131200D308A0131209A 85 | :100530000A308A01312043308A01312048308A0153 86 | :10054000312030308A0131203A308A013120303078 87 | :100550008A0131200D308A0131200A308A01312090 88 | :100560000130DD00603084005D08003E8A0101201A 89 | :100570000030031D0130D800D9015808A0005908E7 90 | :10058000A100A30100308A019E208A11031D602B67 91 | :100590008A1599205D08503E84000008D800640048 92 | :1005A0005808013C8A11031D602B02308506831612 93 | :1005B000851064008A118312851C202B43308A0128 94 | :1005C000312048308A01312031308A0131203A30DF 95 | :1005D0008A01312031308A0131200D308A013120E9 96 | :1005E0000A308A01312043308A01312048308A01A3 97 | :1005F000312031308A0131203A308A0131203130C6 98 | :100600008A0131200D308A0131200A308A013120DF 99 | :1006100043308A01312048308A01312031308A014B 100 | :1006200031203A308A01312031308A0131200D30B9 101 | :100630008A0131200A308A01312087178A11602B04 102 | :1006400043308A01312048308A01312031308A011B 103 | :1006500031203A308A01312030308A0131200D308A 104 | :100660008A0131200A308A01312043308A01312049 105 | :1006700048308A01312031308A0131203A308A01F4 106 | :10068000312030308A0131200D308A0131200A308A 107 | :100690008A01312043308A01312048308A013120DB 108 | :1006A00031308A0131203A308A01312030308A01DC 109 | :1006B00031200D308A0131200A308A013120871320 110 | :1006C0000230DD00603084005D08003E8A010120B8 111 | :1006D0000030031D0130D800D9015808A000590886 112 | :1006E000A100A30100308A019E208A11031D102C55 113 | :1006F0008A1599205D08503E84000008D8006400E7 114 | :100700005808013C8A11031D102C01308506831600 115 | :10071000051064008A118312051CD02B43308A0116 116 | :10072000312048308A01312032308A0131203A307C 117 | :100730008A01312031308A0131200D308A01312087 118 | :100740000A308A01312043308A01312048308A0141 119 | :10075000312032308A0131203A308A013120313063 120 | :100760008A0131200D308A0131200A308A0131207E 121 | :1007700043308A01312048308A01312032308A01E9 122 | :1007800031203A308A01312031308A0131200D3058 123 | :100790008A0131200A308A01312087168A11102CF3 124 | :1007A00043308A01312048308A01312032308A01B9 125 | :1007B00031203A308A01312030308A0131200D3029 126 | :1007C0008A0131200A308A01312043308A013120E8 127 | :1007D00048308A01312032308A0131203A308A0192 128 | :1007E000312030308A0131200D308A0131200A3029 129 | :1007F0008A01312043308A01312048308A0131207A 130 | :1008000032308A0131203A308A01312030308A0179 131 | :1008100031200D308A0131200A308A0131208712BF 132 | :100820000330DD00603084005D08003E8A01012055 133 | :100830000030031D0130D800D9015808A000590824 134 | :10084000A100A30100308A019E208A11031DC02C43 135 | :100850008A1599205D08503E84000008D800640085 136 | :100860005808013C8A11031DC02C103086068316DF 137 | :10087000061264008A118312061E802C43308A01FE 138 | :10088000312048308A01312033308A0131203A301A 139 | :100890008A01312031308A0131200D308A01312026 140 | :1008A0000A308A01312043308A01312048308A01E0 141 | :1008B000312033308A0131203A308A013120313001 142 | :1008C0008A0131200D308A0131200A308A0131201D 143 | :1008D00043308A01312048308A01312033308A0187 144 | :1008E00031203A308A01312031308A0131200D30F7 145 | :1008F0008A0131200A308A01312007178A11C02C61 146 | :1009000043308A01312048308A01312033308A0156 147 | :1009100031203A308A01312030308A0131200D30C7 148 | :100920008A0131200A308A01312043308A01312086 149 | :1009300048308A01312033308A0131203A308A012F 150 | :10094000312030308A0131200D308A0131200A30C7 151 | :100950008A01312043308A01312048308A01312018 152 | :1009600033308A0131203A308A01312030308A0117 153 | :1009700031200D308A0131200A308A0131200713DD 154 | :100980000A30DC003230AC00AD018A010C208A153F 155 | :10099000031C9728DC0064005C080A3C8A150319D4 156 | :1009A000952864005C08303C8A11031D422D4330B9 157 | :1009B0008A01312048308A01312031308A013120CA 158 | :1009C0003A308A013120A901003085180130A40095 159 | :1009D000A5013030B000B1018A0137202C308A01E6 160 | :1009E000312043308A01312048308A0131203230B1 161 | :1009F0008A0131203A308A013120A90100300518DE 162 | :100A00000130A400A5013030B000B1018A013720C7 163 | :100A10002C308A01312043308A01312048308A014C 164 | :100A2000312033308A0131203A308A013120A90146 165 | :100A30000030061A0130A400A5013030B000B10129 166 | :100A40008A0137202C308A01312043308A0131203D 167 | :100A500048308A01312034308A0131203A308A010D 168 | :100A60003120A9010030851A0130A400A5013030E1 169 | :100A7000B000B1018A0137200D308A0131200A30DF 170 | :100A80008A01312064005C08313C8A11031D842DE9 171 | :100A9000851443308A01312048308A0131203130B9 172 | :100AA0008A0131203A308A013120A90100308518AD 173 | :100AB0000130A400A5013030B000B1018A01372017 174 | :100AC0000D308A0131200A308A01312043308A01F9 175 | :100AD000312048308A01312031308A0131203A30CA 176 | :100AE0008A013120A901003085180130A400A50138 177 | :100AF0003030B000B1018A0137200D308A01312039 178 | :100B00000A308A013120871764005C08353C8A115D 179 | :100B1000031DC62D851043308A01312048308A01DB 180 | :100B2000312031308A0131203A308A013120A90147 181 | :100B3000003085180130A400A5013030B000B101AB 182 | :100B40008A0137200D308A0131200A308A01312094 183 | :100B500043308A01312048308A01312031308A0106 184 | :100B600031203A308A013120A90100308518013046 185 | :100B7000A400A5013030B000B1018A0137200D304A 186 | :100B80008A0131200A308A01312087135C08323C07 187 | :100B9000031DFF30FF3AD800003060190130DA0041 188 | :100BA000DB015A08A0005B08A100A30101308A0103 189 | :100BB0009E20DA00580884005A088A01B620DA001C 190 | :100BC000DB0064005A085B048A110319232E051404 191 | :100BD00043308A01312048308A01312032308A0185 192 | :100BE00031203A308A013120A90100300518013046 193 | :100BF000A400A5013030B000B1018A0137200D30CA 194 | :100C00008A0131200A308A01312043308A013120A3 195 | :100C100048308A01312032308A0131203A308A014D 196 | :100C20003120A901003005180130A400A5013030A1 197 | :100C3000B000B1018A0137200D308A0131200A301D 198 | :100C40008A01312087165C08363C031DFF30FF3ACD 199 | :100C5000D800003060190130DA00DB015A08A0002A 200 | :100C60005B08A100A30101308A019E20DA00580828 201 | :100C700084005A088A01B620DA00DB0064005A08B2 202 | :100C80005B048A110319802E051043308A0131203C 203 | :100C900048308A01312032308A0131203A308A01CD 204 | :100CA0003120A901003005180130A400A501303021 205 | :100CB000B000B1018A0137200D308A0131200A309D 206 | :100CC0008A01312043308A01312048308A013120A5 207 | :100CD00032308A0131203A308A013120A9010030B6 208 | :100CE00005180130A400A5013030B000B1018A011F 209 | :100CF00037200D308A0131200A308A0131208712D5 210 | :100D00005C08333C031DFF30FF3AD8000030E01987 211 | :100D10000130DA00DB015A08A0005B08A100A30142 212 | :100D200001308A019E20DA00580884005A088A019E 213 | :100D3000B620DA00DB0064005A085B048A1103194C 214 | :100D4000DD2E061643308A01312048308A013120D9 215 | :100D500033308A0131203A308A013120A901003034 216 | :100D6000061A0130A400A5013030B000B1018A019B 217 | :100D700037200D308A0131200A308A01312043307A 218 | :100D80008A01312048308A01312033308A013120F4 219 | :100D90003A308A013120A9010030061A0130A4003E 220 | :100DA000A5013030B000B1018A0137200D308A0131 221 | :100DB00031200A308A01312007175C08373C031DB7 222 | :100DC000FF30FF3AD8000030E0190130DA00DB01D3 223 | :100DD0005A08A0005B08A100A30101308A019E20EF 224 | :100DE000DA00580884005A088A01B620DA00DB00CD 225 | :100DF00064005A085B048A1103193A2F0612433023 226 | :100E00008A01312048308A01312033308A01312073 227 | :100E10003A308A013120A9010030061A0130A400BD 228 | :100E2000A5013030B000B1018A0137200D308A01B0 229 | :100E300031200A308A01312043308A013120483084 230 | :100E40008A01312033308A0131203A308A01312041 231 | :100E5000A9010030061A0130A400A5013030B0000D 232 | :100E6000B1018A0137200D308A0131200A308A0110 233 | :100E7000312007135C08343C031DFF30FF3AD800D3 234 | :100E8000003060180130DA00DB015A08A0005B086E 235 | :100E9000A100A30101308A019E20DA0058088400D5 236 | :100EA0005A088A01B620DA00DB0064005A085B04A5 237 | :100EB0008A110319962F851643308A013120483054 238 | :100EC0008A01312030308A0131203A308A013120C4 239 | :100ED000A9010030851A0130A400A5013030B0000E 240 | :100EE000B1018A0137200D308A0131200A308A0190 241 | :100EF000312043308A01312048308A01312030309E 242 | :100F00008A0131203A308A013120A9010030851A46 243 | :100F10000130A400A5013030B000B1018A013720B2 244 | :100F20000D308A0131200A308A0131205C08383CBA 245 | :100F3000031DFF30FF3AD800003060180130DA009E 246 | :100F4000DB015A08A0005B08A100A30101308A015F 247 | :100F50009E20DA00580884005A088A01B620DA0078 248 | :100F6000DB0064005A085B048A110319F22F851212 249 | :100F700043308A01312048308A01312030308A01E3 250 | :100F800031203A308A013120A9010030851A013020 251 | :100F9000A400A5013030B000B1018A0137200D3026 252 | :100FA0008A0131200A308A01312043308A01312000 253 | :100FB00048308A01312030308A0131203A308A01AC 254 | :100FC0003120A9010030851A0130A400A50130307C 255 | :100FD000B000B1018A0137200D308A0131200A307A 256 | :100FE0008A01312064005C08393C8A15031D95286C 257 | :100FF00043308A01312048308A01312030308A0163 258 | :1010000031203A308A013120A9010030851A01309F 259 | :10101000A400A5013030B000B1018A0137200D30A5 260 | :101020008A0131200A308A01312014308A017C2063 261 | :1010300043308A01312048308A01312031308A0121 262 | :1010400031203A308A013120A90100308518013061 263 | :10105000A400A5013030B000B1018A0137200D3065 264 | :101060008A0131200A308A01312014308A017C2023 265 | :1010700043308A01312048308A01312032308A01E0 266 | :1010800031203A308A013120A901003005180130A1 267 | :10109000A400A5013030B000B1018A0137200D3025 268 | :1010A0008A0131200A308A01312014308A017C20E3 269 | :1010B00043308A01312048308A01312033308A019F 270 | :1010C00031203A308A013120A9010030061A01305E 271 | :1010D000A400A5013030B000B1018A0137200D30E5 272 | :1010E0008A0131200A308A01312014308A017C20A3 273 | :1010F000003085180130DF008A156521DE016400AB 274 | :101100000A305E028A15031891280230850683167C 275 | :101110008510C83083128A017C20DE0A8A15031DDF 276 | :101120007F285F1885145F1C85108A01032A8A01B5 277 | :10113000032A83105D188314031783181914831C62 278 | :10114000191003138310DD188314031783189914DF 279 | :10115000831C9910031383105D18831403178318DD 280 | :101160001A14831C1A1003138310DD188314031739 281 | :1011700083189A14831C9A100313810103105D0DC8 282 | :10118000383E84000008D800840A0008D9005908B5 283 | :10119000A10058088A018A2003105D0D483E840092 284 | :1011A00001088000840A800103105D0D483E840020 285 | :1011B0000008D800840A0008D9005808A600590879 286 | :1011C000A7000A30A200A3018A01D920D80025086F 287 | :1011D000D90003105D0D483E840058088000840A41 288 | :1011E0005908800003105D0D403E84000008D800BF 289 | :1011F000840A0008D9000930A600A7015808A200F7 290 | :101200005908A3008A01D920D8002508D900031065 291 | :101210005D0D483E84000008DA00840A0008DB0007 292 | :101220005808DA0759080318013EDB075A08A000DE 293 | :101230005B08A1000A30A200A3018A01BD20DA00E8 294 | :101240002108DB0003105D0D403E84005A08800039 295 | :10125000840A5B08800003105D0D483E840000088E 296 | :10126000D800840A0008D90003105D0D403E8400B8 297 | :101270000008DA00840A0008DB005608DA02570882 298 | :10128000031C013EDB025808A0005908A1005B08BE 299 | :10129000A3005A088A01A1208A15031D60295D0850 300 | :1012A000503E84000008D80001305807D800D9010A 301 | :1012B000D90D5D08503E8400580880008A156429C5 302 | :1012C0005D08503E8400800108000130DD006400AC 303 | :1012D00004305D028A150318BC29603084005D0863 304 | :1012E000003E8A0101200030031D0130D800D901E1 305 | :1012F0000130A000A1015908A30058088A01A420C8 306 | :101300008A15031DB82903105D0D383E8400800145 307 | :10131000840A800103105D0D383E84000008D80067 308 | :10132000840A0008D900D80A0319D90A03105D0DF0 309 | :10133000383E840058088000840A590880008A15C5 310 | :10134000992003105D0D483E84000008D800840AEF 311 | :101350000008D9005808A0005908A1000730A300D0 312 | :10136000D0308A01A1208A15031DB8298A158A293F 313 | :10137000DD0A8A15031D6729080063008A15BD2947 314 | :02400E00FC3C78 315 | :00000001FF 316 | -------------------------------------------------------------------------------- /src/Hex/Livolo-Mod-1Gang.HEX: -------------------------------------------------------------------------------- 1 | :020000040000FA 2 | :10000000F928A800F839A000A00CA00C200C840747 3 | :100010006520A8000005F4289818181218162C0856 4 | :10002000A0002D08A100A201A30116281728640032 5 | :100030008C1A2D28FF30A207031CA307031CA0075E 6 | :10004000031CA107031C0800220F1528230F1628E4 7 | :100050003230A2000030A30017281A080314F42835 8 | :10006000040864000C1E312899000314F428B3130B 9 | :1000700029080319B3170530A8002730A300103052 10 | :100080004D200330A300E8304D20A30164304D2003 11 | :10009000A3010A304D2024085428A2002508A100FD 12 | :1000A0002408A000BD202008A000A8030319B31352 13 | :1000B000290803195E282802031808002008031DD8 14 | :1000C000B313B31B0800303EEF2800308A00280825 15 | :1000D00007396D3E03188A0A820001340234043461 16 | :1000E0000834103420344034803483178001840A6B 17 | :1000F000FF3E031D7628F428A301A200FF30A207CB 18 | :10010000031CA307031CF4280330A100DF308A205E 19 | :100110007E28A101E83EA000A109FC30031C932821 20 | :10012000A00703189028A0076400A10F90282018AA 21 | :100130009928A01C9D2800009D280800A2000230DC 22 | :10014000A628A2000330A628A2000530A800230894 23 | :100150002102031DAD2822082002043003180130BB 24 | :10016000031902302805031DFF30F4280038031D51 25 | :10017000FF300405031DFF30F428A501A401103051 26 | :10018000A600210DA40DA50D2208A4022308031C1E 27 | :10019000230FA5020318D3282208A4072308031855 28 | :1001A000230FA5070310A00DA10DA60BC128200841 29 | :1001B000F4281030A800A101A001A70CA60C031C74 30 | :1001C000E7282208A00723080318230FA107A10C82 31 | :1001D000A00CA50CA40CA80BDD282408F42884008E 32 | :1001E00031088A00300882008313031383126400ED 33 | :1001F0000800831633309900203098008312903025 34 | :10020000980083160630870061308F008312031731 35 | :100210009E019F0183160313950183120317950115 36 | :1002200083160313960183128B018316B13081006C 37 | :100230008312031795309900A5309A009B0183160D 38 | :10024000F0309E00831287309800031385018316D7 39 | :1002500004308500831286018316203086008312C5 40 | :1002600087016010E0106011E011203084006030E0 41 | :100270008A017620A030840050308A017620203018 42 | :10028000840050308A0175201430D600D701E01464 43 | :100290008A114C29E01460158A115129E014601567 44 | :1002A000E0158713871207138512851006120510B3 45 | :1002B000D401D501DE0164000A305E028A11031800 46 | :1002C0006D290230850683168510643083128A01F9 47 | :1002D0007C20DE0A8A11031D5B298510DE01640083 48 | :1002E0000A305E028A1103188129103086068316AF 49 | :1002F0000612643083128A017C20DE0A8A11031DF3 50 | :100300006F290612DE0164000A305E028A110318AA 51 | :1003100095290130850683160510643083128A0101 52 | :100320007C20DE0A8A11031D832905108A1571219C 53 | :100330000D308A0131200A308A0131200D308A01C6 54 | :1003400031200A308A01312043308A01312048307F 55 | :100350008A01312031308A0131203A308A0131203E 56 | :10036000A901003085180130A400A5013030B0008B 57 | :10037000B1018A0137202C308A01312043308A01B3 58 | :10038000312048308A01312032308A0131203A3020 59 | :100390008A013120A9010030061A0130A400A5010C 60 | :1003A0003030B000B1018A0137202C308A01312071 61 | :1003B00043308A01312048308A01312033308A01AC 62 | :1003C00031203A308A013120A9010030051801306E 63 | :1003D000A400A5013030B000B1018A0137202C30D3 64 | :1003E0008A01312043308A01312048308A0131208E 65 | :1003F00034308A0131203A308A013120A90100309D 66 | :10040000851A0130A400A5013030B000B1018A0185 67 | :1004100037200D308A0131200A308A013120DD0178 68 | :10042000603084005D08003E8A0101200030031D19 69 | :100430000130D800D9015808A0005908A100A30133 70 | :1004400000308A019E208A11031DBC2A8A15A5202E 71 | :100450005D08503E84000008D80064005808013C44 72 | :100460008A11031DBC2A203085068316851264007C 73 | :100470008A118312851E7D2A43308A01312048303B 74 | :100480008A01312030308A0131203A308A0131200E 75 | :1004900031308A0131200D308A0131200A308A0141 76 | :1004A000312043308A01312048308A0131203030F8 77 | :1004B0008A0131203A308A01312031308A013120DD 78 | :1004C0000D308A0131200A308A01312043308A01FF 79 | :1004D000312048308A01312030308A0131203A30D1 80 | :1004E0008A01312031308A0131200D308A013120DA 81 | :1004F0000A308A0131208A11BC2A43308A01312016 82 | :1005000048308A01312030308A0131203A308A0166 83 | :10051000312030308A0131200D308A0131200A30FB 84 | :100520008A01312043308A01312048308A0131204C 85 | :1005300030308A0131203A308A01312030308A014E 86 | :1005400031200D308A0131200A308A0131204330B8 87 | :100550008A01312048308A01312030308A0131202F 88 | :100560003A308A01312030308A0131200D308A0141 89 | :1005700031200A308A0131200130DD0060308400F2 90 | :100580005D08003E8A0101200030031D0130D800C3 91 | :10059000D9015808A0005908A100A30100308A0120 92 | :1005A0009E208A11031D6C2B8A15A5205D08503EE4 93 | :1005B00084000008D80064005808013C8A11031D1B 94 | :1005C0006C2B023085068316851064008A11831215 95 | :1005D000851C2C2B43308A01312048308A01312080 96 | :1005E00031308A0131203A308A01312031308A019C 97 | :1005F00031200D308A0131200A308A013120433008 98 | :100600008A01312048308A01312031308A0131207D 99 | :100610003A308A01312031308A0131200D308A018F 100 | :1006200031200A308A01312043308A01312048309C 101 | :100630008A01312031308A0131203A308A0131205B 102 | :1006400031308A0131200D308A0131200A308A018F 103 | :10065000312087178A116C2B43308A0131204830B2 104 | :100660008A01312031308A0131203A308A0131202B 105 | :1006700030308A0131200D308A0131200A308A0160 106 | :10068000312043308A01312048308A013120313015 107 | :100690008A0131203A308A01312030308A013120FC 108 | :1006A0000D308A0131200A308A01312043308A011D 109 | :1006B000312048308A01312031308A0131203A30EE 110 | :1006C0008A01312030308A0131200D308A013120F9 111 | :1006D0000A308A01312087130230DD006030840047 112 | :1006E0005D08003E8A0101200030031D0130D80062 113 | :1006F000D9015808A0005908A100A30100308A01BF 114 | :100700009E208A11031D1C2C8A15A5205D08503ED1 115 | :1007100084000008D80064005808013C8A11031DB9 116 | :100720001C2C103086068316061264008A11831270 117 | :10073000061EDC2B43308A01312048308A013120EB 118 | :1007400032308A0131203A308A01312031308A0139 119 | :1007500031200D308A0131200A308A0131204330A6 120 | :100760008A01312048308A01312032308A0131201B 121 | :100770003A308A01312031308A0131200D308A012E 122 | :1007800031200A308A01312043308A01312048303B 123 | :100790008A01312032308A0131203A308A013120F9 124 | :1007A00031308A0131200D308A0131200A308A012E 125 | :1007B000312087168A111C2C43308A0131204830A1 126 | :1007C0008A01312032308A0131203A308A013120C9 127 | :1007D00030308A0131200D308A0131200A308A01FF 128 | :1007E000312043308A01312048308A0131203230B3 129 | :1007F0008A0131203A308A01312030308A0131209B 130 | :100800000D308A0131200A308A01312043308A01BB 131 | :10081000312048308A01312032308A0131203A308B 132 | :100820008A01312030308A0131200D308A01312097 133 | :100830000A308A01312087120330DD0060308400E5 134 | :100840005D08003E8A0101200030031D0130D80000 135 | :10085000D9015808A0005908A100A30100308A015D 136 | :100860009E208A11031DCC2C8A15A5205D08503EC0 137 | :1008700084000008D80064005808013C8A11031D58 138 | :10088000CC2C013085068316051064008A11831272 139 | :10089000051C8C2C43308A01312048308A013120DC 140 | :1008A00033308A0131203A308A01312031308A01D7 141 | :1008B00031200D308A0131200A308A013120433045 142 | :1008C0008A01312048308A01312033308A013120B9 143 | :1008D0003A308A01312031308A0131200D308A01CD 144 | :1008E00031200A308A01312043308A0131204830DA 145 | :1008F0008A01312033308A0131203A308A01312097 146 | :1009000031308A0131200D308A0131200A308A01CC 147 | :10091000312007178A11CC2C43308A01312048300E 148 | :100920008A01312033308A0131203A308A01312066 149 | :1009300030308A0131200D308A0131200A308A019D 150 | :10094000312043308A01312048308A013120333050 151 | :100950008A0131203A308A01312030308A01312039 152 | :100960000D308A0131200A308A01312043308A015A 153 | :10097000312048308A01312033308A0131203A3029 154 | :100980008A01312030308A0131200D308A01312036 155 | :100990000A308A01312007130A30DC003230AC0003 156 | :1009A000AD018A010C208A15031CA328DC00640019 157 | :1009B0005C080A3C8A150319A12864005C08303CD5 158 | :1009C0008A11031D4E2D43308A01312048308A019F 159 | :1009D000312031308A0131203A308A013120A90199 160 | :1009E000003085180130A400A5013030B000B101FD 161 | :1009F0008A0137202C308A01312043308A0131208E 162 | :100A000048308A01312032308A0131203A308A015F 163 | :100A10003120A9010030061A0130A400A5013030B0 164 | :100A2000B000B1018A0137202C308A0131204330D7 165 | :100A30008A01312048308A01312033308A01312047 166 | :100A40003A308A013120A901003005180130A40094 167 | :100A5000A5013030B000B1018A0137202C308A0165 168 | :100A6000312043308A01312048308A01312034302E 169 | :100A70008A0131203A308A013120A9010030851ADB 170 | :100A80000130A400A5013030B000B1018A01372047 171 | :100A90000D308A0131200A308A01312064005C085F 172 | :100AA000313C8A11031D902D851443308A01312079 173 | :100AB00048308A01312031308A0131203A308A01B0 174 | :100AC0003120A901003085180130A400A501303083 175 | :100AD000B000B1018A0137200D308A0131200A307F 176 | :100AE0008A01312043308A01312048308A01312087 177 | :100AF00031308A0131203A308A013120A901003099 178 | :100B000085180130A400A5013030B000B1018A0180 179 | :100B100037200D308A0131200A308A0131208717B1 180 | :100B200064005C08353C8A11031DD22D85104330CA 181 | :100B30008A01312048308A01312031308A01312048 182 | :100B40003A308A013120A901003085180130A40013 183 | :100B5000A5013030B000B1018A0137200D308A0183 184 | :100B600031200A308A01312043308A013120483057 185 | :100B70008A01312031308A0131203A308A01312016 186 | :100B8000A901003085180130A400A5013030B00063 187 | :100B9000B1018A0137200D308A0131200A308A01E3 188 | :100BA000312087135C08323C031DFF30FF3AD80028 189 | :100BB000003060190130DA00DB015A08A0005B0840 190 | :100BC000A100A30101308A019E20DA0058088400A8 191 | :100BD0005A088A01B620DA00DB0064005A085B0478 192 | :100BE0008A1103192F2E061643308A01312048300E 193 | :100BF0008A01312032308A0131203A308A01312095 194 | :100C0000A9010030061A0130A400A5013030B0005F 195 | :100C1000B1018A0137200D308A0131200A308A0162 196 | :100C2000312043308A01312048308A01312032306E 197 | :100C30008A0131203A308A013120A9010030061A98 198 | :100C40000130A400A5013030B000B1018A01372085 199 | :100C50000D308A0131200A308A01312087165C0864 200 | :100C6000363C031DFF30FF3AD800003060190130D8 201 | :100C7000DA00DB015A08A0005B08A100A3010130E3 202 | :100C80008A019E20DA00580884005A088A01B6209A 203 | :100C9000DA00DB0064005A085B048A1103198C2E09 204 | :100CA000061243308A01312048308A013120323027 205 | :100CB0008A0131203A308A013120A9010030061A18 206 | :100CC0000130A400A5013030B000B1018A01372005 207 | :100CD0000D308A0131200A308A01312043308A01E7 208 | :100CE000312048308A01312032308A0131203A30B7 209 | :100CF0008A013120A9010030061A0130A400A501A3 210 | :100D00003030B000B1018A0137200D308A01312026 211 | :100D10000A308A01312087125C08333C031DFF3002 212 | :100D2000FF3AD8000030E0190130DA00DB015A0840 213 | :100D3000A0005B08A100A30101308A019E20DA0017 214 | :100D4000580884005A088A01B620DA00DB006400E3 215 | :100D50005A085B048A110319E92E051443308A01ED 216 | :100D6000312048308A01312033308A0131203A3035 217 | :100D70008A013120A901003005180130A400A50125 218 | :100D80003030B000B1018A0137200D308A013120A6 219 | :100D90000A308A01312043308A01312048308A01EB 220 | :100DA000312033308A0131203A308A013120A901C3 221 | :100DB000003005180130A400A5013030B000B101A9 222 | :100DC0008A0137200D308A0131200A308A01312012 223 | :100DD00007175C08373C031DFF30FF3AD80000308E 224 | :100DE000E0190130DA00DB015A08A0005B08A1001D 225 | :100DF000A30101308A019E20DA00580884005A08B5 226 | :100E00008A01B620DA00DB0064005A085B048A110C 227 | :100E10000319462F051043308A01312048308A01DA 228 | :100E2000312033308A0131203A308A013120A90142 229 | :100E3000003005180130A400A5013030B000B10128 230 | :100E40008A0137200D308A0131200A308A01312091 231 | :100E500043308A01312048308A01312033308A0101 232 | :100E600031203A308A013120A901003005180130C3 233 | :100E7000A400A5013030B000B1018A0137200D3047 234 | :100E80008A0131200A308A01312007135C08343C82 235 | :100E9000031DFF30FF3AD800003060180130DA003F 236 | :100EA000DB015A08A0005B08A100A30101308A0100 237 | :100EB0009E20DA00580884005A088A01B620DA0019 238 | :100EC000DB0064005A085B048A110319A22F8516FF 239 | :100ED00043308A01312048308A01312030308A0184 240 | :100EE00031203A308A013120A9010030851A0130C1 241 | :100EF000A400A5013030B000B1018A0137200D30C7 242 | :100F00008A0131200A308A01312043308A013120A0 243 | :100F100048308A01312030308A0131203A308A014C 244 | :100F20003120A9010030851A0130A400A50130301C 245 | :100F3000B000B1018A0137200D308A0131200A301A 246 | :100F40008A0131205C08383C031DFF30FF3AD8008D 247 | :100F5000003060180130DA00DB015A08A0005B089D 248 | :100F6000A100A30101308A019E20DA005808840004 249 | :100F70005A088A01B620DA00DB0064005A085B04D4 250 | :100F80008A110319FE2F851243308A01312048301F 251 | :100F90008A01312030308A0131203A308A013120F3 252 | :100FA000A9010030851A0130A400A5013030B0003D 253 | :100FB000B1018A0137200D308A0131200A308A01BF 254 | :100FC000312043308A01312048308A0131203030CD 255 | :100FD0008A0131203A308A013120A9010030851A76 256 | :100FE0000130A400A5013030B000B1018A013720E2 257 | :100FF0000D308A0131200A308A01312064005C08FA 258 | :10100000393C8A15031DA12843308A01312048301C 259 | :101010008A01312030308A0131203A308A01312072 260 | :10102000A9010030851A0130A400A5013030B000BC 261 | :10103000B1018A0137200D308A0131200A308A013E 262 | :10104000312014308A017C2043308A01312048301D 263 | :101050008A01312031308A0131203A308A01312031 264 | :10106000A901003085180130A400A5013030B0007E 265 | :10107000B1018A0137200D308A0131200A308A01FE 266 | :10108000312014308A017C2043308A0131204830DD 267 | :101090008A01312032308A0131203A308A013120F0 268 | :1010A000A9010030061A0130A400A5013030B000BB 269 | :1010B000B1018A0137200D308A0131200A308A01BE 270 | :1010C000312014308A017C2043308A01312048309D 271 | :1010D0008A01312033308A0131203A308A013120AF 272 | :1010E000A901003005180130A400A5013030B0007E 273 | :1010F000B1018A0137200D308A0131200A308A017E 274 | :10110000312014308A017C20003085180130DF0046 275 | :101110008A157121DE0164000A305E028A15031807 276 | :101120009D280230850683168510C83083128A01F7 277 | :101130007C20DE0A8A15031D8B285F1885145F1C2E 278 | :1011400085108A010F2A8A010F2A83105D188314E3 279 | :10115000031783181914831C191003138310DD1847 280 | :101160008314031783189914831C99100313831095 281 | :101170005D188314031783181A14831C1A100313A1 282 | :101180008310DD188314031783189A14831C9A1094 283 | :101190000313810103105D0D383E84000008D80060 284 | :1011A000840A0008D9005908A10058088A018A2039 285 | :1011B00003105D0D483E840001088000840A800110 286 | :1011C00003105D0D483E84000008D800840A000822 287 | :1011D000D9005808A6005908A7000A30A200A301A8 288 | :1011E0008A01D920D8002508D90003105D0D483E9A 289 | :1011F000840058088000840A5908800003105D0D9F 290 | :10120000403E84000008D800840A0008D900093054 291 | :10121000A600A7015808A2005908A3008A01D920F6 292 | :10122000D8002508D90003105D0D483E8400000851 293 | :10123000DA00840A0008DB005808DA0759080318A6 294 | :10124000013EDB075A08A0005B08A1000A30A2009B 295 | :10125000A3018A01BD20DA002108DB0003105D0D27 296 | :10126000403E84005A088000840A5B088000031016 297 | :101270005D0D483E84000008D800840A0008D900AB 298 | :1012800003105D0D403E84000008DA00840A000867 299 | :10129000DB005608DA025708031C013EDB0258083F 300 | :1012A000A0005908A1005B08A3005A088A01A120E8 301 | :1012B0008A15031D6C295D08503E84000008D80083 302 | :1012C00001305807D800D901D90D5D08503E84007F 303 | :1012D000580880008A1570295D08503E84008001FE 304 | :1012E00008000130DD00640004305D028A15031837 305 | :1012F000C829603084005D08003E8A01012000306A 306 | :10130000031D0130D800D9010130A000A101590806 307 | :10131000A30058088A01A4208A15031DC4290310BC 308 | :101320005D0D383E84008001840A800103105D0D4C 309 | :10133000383E84000008D800840A0008D900D80A82 310 | :101340000319D90A03105D0D383E84005808800047 311 | :10135000840A590880008A15A52003105D0D483EB7 312 | :1013600084000008D800840A0008D9005808A000AA 313 | :101370005908A1000730A300D0308A01A1208A15A6 314 | :10138000031DC4298A159629DD0A8A15031D7329B0 315 | :08139000080063008A15C92959 316 | :02400E00FC3C78 317 | :00000001FF 318 | -------------------------------------------------------------------------------- /src/Hex/Livolo-Mod-2Gang.HEX: -------------------------------------------------------------------------------- 1 | :020000040000FA 2 | :10000000F928A800F839A000A00CA00C200C840747 3 | :100010006520A8000005F4289818181218162C0856 4 | :10002000A0002D08A100A201A30116281728640032 5 | :100030008C1A2D28FF30A207031CA307031CA0075E 6 | :10004000031CA107031C0800220F1528230F1628E4 7 | :100050003230A2000030A30017281A080314F42835 8 | :10006000040864000C1E312899000314F428B3130B 9 | :1000700029080319B3170530A8002730A300103052 10 | :100080004D200330A300E8304D20A30164304D2003 11 | :10009000A3010A304D2024085428A2002508A100FD 12 | :1000A0002408A000BD202008A000A8030319B31352 13 | :1000B000290803195E282802031808002008031DD8 14 | :1000C000B313B31B0800303EEF2800308A00280825 15 | :1000D00007396D3E03188A0A820001340234043461 16 | :1000E0000834103420344034803483178001840A6B 17 | :1000F000FF3E031D7628F428A301A200FF30A207CB 18 | :10010000031CA307031CF4280330A100DF308A205E 19 | :100110007E28A101E83EA000A109FC30031C932821 20 | :10012000A00703189028A0076400A10F90282018AA 21 | :100130009928A01C9D2800009D280800A2000230DC 22 | :10014000A628A2000330A628A2000530A800230894 23 | :100150002102031DAD2822082002043003180130BB 24 | :10016000031902302805031DFF30F4280038031D51 25 | :10017000FF300405031DFF30F428A501A401103051 26 | :10018000A600210DA40DA50D2208A4022308031C1E 27 | :10019000230FA5020318D3282208A4072308031855 28 | :1001A000230FA5070310A00DA10DA60BC128200841 29 | :1001B000F4281030A800A101A001A70CA60C031C74 30 | :1001C000E7282208A00723080318230FA107A10C82 31 | :1001D000A00CA50CA40CA80BDD282408F42884008E 32 | :1001E00031088A00300882008313031383126400ED 33 | :1001F0000800831633309900203098008312903025 34 | :10020000980083160630870061308F008312031731 35 | :100210009E019F0183160313950183120317950115 36 | :1002200083160313960183128B018316B13081006C 37 | :100230008312031795309900A5309A009B0183160D 38 | :10024000F0309E00831287309800031385018316D7 39 | :1002500004308500831286018316203086008312C5 40 | :1002600087016010E0106011E011203084006030E0 41 | :100270008A017620A030840050308A017620203018 42 | :10028000840050308A0175201430D600D7018A11BD 43 | :100290004A29E014E01460158A115129E014601510 44 | :1002A000E0158713871207138512851006120510B3 45 | :1002B000D401D501DE0164000A305E028A11031800 46 | :1002C0006D290230850683168510643083128A01F9 47 | :1002D0007C20DE0A8A11031D5B298510DE01640083 48 | :1002E0000A305E028A1103188129103086068316AF 49 | :1002F0000612643083128A017C20DE0A8A11031DF3 50 | :100300006F290612DE0164000A305E028A110318AA 51 | :1003100095290130850683160510643083128A0101 52 | :100320007C20DE0A8A11031D832905108A1571219C 53 | :100330000D308A0131200A308A0131200D308A01C6 54 | :1003400031200A308A01312043308A01312048307F 55 | :100350008A01312031308A0131203A308A0131203E 56 | :10036000A901003085180130A400A5013030B0008B 57 | :10037000B1018A0137202C308A01312043308A01B3 58 | :10038000312048308A01312032308A0131203A3020 59 | :100390008A013120A9010030061A0130A400A5010C 60 | :1003A0003030B000B1018A0137202C308A01312071 61 | :1003B00043308A01312048308A01312033308A01AC 62 | :1003C00031203A308A013120A9010030051801306E 63 | :1003D000A400A5013030B000B1018A0137202C30D3 64 | :1003E0008A01312043308A01312048308A0131208E 65 | :1003F00034308A0131203A308A013120A90100309D 66 | :10040000851A0130A400A5013030B000B1018A0185 67 | :1004100037200D308A0131200A308A013120DD0178 68 | :10042000603084005D08003E8A0101200030031D19 69 | :100430000130D800D9015808A0005908A100A30133 70 | :1004400000308A019E208A11031DBC2A8A15A5202E 71 | :100450005D08503E84000008D80064005808013C44 72 | :100460008A11031DBC2A203085068316851264007C 73 | :100470008A118312851E7D2A43308A01312048303B 74 | :100480008A01312030308A0131203A308A0131200E 75 | :1004900031308A0131200D308A0131200A308A0141 76 | :1004A000312043308A01312048308A0131203030F8 77 | :1004B0008A0131203A308A01312031308A013120DD 78 | :1004C0000D308A0131200A308A01312043308A01FF 79 | :1004D000312048308A01312030308A0131203A30D1 80 | :1004E0008A01312031308A0131200D308A013120DA 81 | :1004F0000A308A0131208A11BC2A43308A01312016 82 | :1005000048308A01312030308A0131203A308A0166 83 | :10051000312030308A0131200D308A0131200A30FB 84 | :100520008A01312043308A01312048308A0131204C 85 | :1005300030308A0131203A308A01312030308A014E 86 | :1005400031200D308A0131200A308A0131204330B8 87 | :100550008A01312048308A01312030308A0131202F 88 | :100560003A308A01312030308A0131200D308A0141 89 | :1005700031200A308A0131200130DD0060308400F2 90 | :100580005D08003E8A0101200030031D0130D800C3 91 | :10059000D9015808A0005908A100A30100308A0120 92 | :1005A0009E208A11031D6C2B8A15A5205D08503EE4 93 | :1005B00084000008D80064005808013C8A11031D1B 94 | :1005C0006C2B023085068316851064008A11831215 95 | :1005D000851C2C2B43308A01312048308A01312080 96 | :1005E00031308A0131203A308A01312031308A019C 97 | :1005F00031200D308A0131200A308A013120433008 98 | :100600008A01312048308A01312031308A0131207D 99 | :100610003A308A01312031308A0131200D308A018F 100 | :1006200031200A308A01312043308A01312048309C 101 | :100630008A01312031308A0131203A308A0131205B 102 | :1006400031308A0131200D308A0131200A308A018F 103 | :10065000312087178A116C2B43308A0131204830B2 104 | :100660008A01312031308A0131203A308A0131202B 105 | :1006700030308A0131200D308A0131200A308A0160 106 | :10068000312043308A01312048308A013120313015 107 | :100690008A0131203A308A01312030308A013120FC 108 | :1006A0000D308A0131200A308A01312043308A011D 109 | :1006B000312048308A01312031308A0131203A30EE 110 | :1006C0008A01312030308A0131200D308A013120F9 111 | :1006D0000A308A01312087130230DD006030840047 112 | :1006E0005D08003E8A0101200030031D0130D80062 113 | :1006F000D9015808A0005908A100A30100308A01BF 114 | :100700009E208A11031D1C2C8A15A5205D08503ED1 115 | :1007100084000008D80064005808013C8A11031DB9 116 | :100720001C2C103086068316061264008A11831270 117 | :10073000061EDC2B43308A01312048308A013120EB 118 | :1007400032308A0131203A308A01312031308A0139 119 | :1007500031200D308A0131200A308A0131204330A6 120 | :100760008A01312048308A01312032308A0131201B 121 | :100770003A308A01312031308A0131200D308A012E 122 | :1007800031200A308A01312043308A01312048303B 123 | :100790008A01312032308A0131203A308A013120F9 124 | :1007A00031308A0131200D308A0131200A308A012E 125 | :1007B000312087168A111C2C43308A0131204830A1 126 | :1007C0008A01312032308A0131203A308A013120C9 127 | :1007D00030308A0131200D308A0131200A308A01FF 128 | :1007E000312043308A01312048308A0131203230B3 129 | :1007F0008A0131203A308A01312030308A0131209B 130 | :100800000D308A0131200A308A01312043308A01BB 131 | :10081000312048308A01312032308A0131203A308B 132 | :100820008A01312030308A0131200D308A01312097 133 | :100830000A308A01312087120330DD0060308400E5 134 | :100840005D08003E8A0101200030031D0130D80000 135 | :10085000D9015808A0005908A100A30100308A015D 136 | :100860009E208A11031DCC2C8A15A5205D08503EC0 137 | :1008700084000008D80064005808013C8A11031D58 138 | :10088000CC2C013085068316051064008A11831272 139 | :10089000051C8C2C43308A01312048308A013120DC 140 | :1008A00033308A0131203A308A01312031308A01D7 141 | :1008B00031200D308A0131200A308A013120433045 142 | :1008C0008A01312048308A01312033308A013120B9 143 | :1008D0003A308A01312031308A0131200D308A01CD 144 | :1008E00031200A308A01312043308A0131204830DA 145 | :1008F0008A01312033308A0131203A308A01312097 146 | :1009000031308A0131200D308A0131200A308A01CC 147 | :10091000312007178A11CC2C43308A01312048300E 148 | :100920008A01312033308A0131203A308A01312066 149 | :1009300030308A0131200D308A0131200A308A019D 150 | :10094000312043308A01312048308A013120333050 151 | :100950008A0131203A308A01312030308A01312039 152 | :100960000D308A0131200A308A01312043308A015A 153 | :10097000312048308A01312033308A0131203A3029 154 | :100980008A01312030308A0131200D308A01312036 155 | :100990000A308A01312007130A30DC003230AC0003 156 | :1009A000AD018A010C208A15031CA328DC00640019 157 | :1009B0005C080A3C8A150319A12864005C08303CD5 158 | :1009C0008A11031D4E2D43308A01312048308A019F 159 | :1009D000312031308A0131203A308A013120A90199 160 | :1009E000003085180130A400A5013030B000B101FD 161 | :1009F0008A0137202C308A01312043308A0131208E 162 | :100A000048308A01312032308A0131203A308A015F 163 | :100A10003120A9010030061A0130A400A5013030B0 164 | :100A2000B000B1018A0137202C308A0131204330D7 165 | :100A30008A01312048308A01312033308A01312047 166 | :100A40003A308A013120A901003005180130A40094 167 | :100A5000A5013030B000B1018A0137202C308A0165 168 | :100A6000312043308A01312048308A01312034302E 169 | :100A70008A0131203A308A013120A9010030851ADB 170 | :100A80000130A400A5013030B000B1018A01372047 171 | :100A90000D308A0131200A308A01312064005C085F 172 | :100AA000313C8A11031D902D851443308A01312079 173 | :100AB00048308A01312031308A0131203A308A01B0 174 | :100AC0003120A901003085180130A400A501303083 175 | :100AD000B000B1018A0137200D308A0131200A307F 176 | :100AE0008A01312043308A01312048308A01312087 177 | :100AF00031308A0131203A308A013120A901003099 178 | :100B000085180130A400A5013030B000B1018A0180 179 | :100B100037200D308A0131200A308A0131208717B1 180 | :100B200064005C08353C8A11031DD22D85104330CA 181 | :100B30008A01312048308A01312031308A01312048 182 | :100B40003A308A013120A901003085180130A40013 183 | :100B5000A5013030B000B1018A0137200D308A0183 184 | :100B600031200A308A01312043308A013120483057 185 | :100B70008A01312031308A0131203A308A01312016 186 | :100B8000A901003085180130A400A5013030B00063 187 | :100B9000B1018A0137200D308A0131200A308A01E3 188 | :100BA000312087135C08323C031DFF30FF3AD80028 189 | :100BB000003060190130DA00DB015A08A0005B0840 190 | :100BC000A100A30101308A019E20DA0058088400A8 191 | :100BD0005A088A01B620DA00DB0064005A085B0478 192 | :100BE0008A1103192F2E061643308A01312048300E 193 | :100BF0008A01312032308A0131203A308A01312095 194 | :100C0000A9010030061A0130A400A5013030B0005F 195 | :100C1000B1018A0137200D308A0131200A308A0162 196 | :100C2000312043308A01312048308A01312032306E 197 | :100C30008A0131203A308A013120A9010030061A98 198 | :100C40000130A400A5013030B000B1018A01372085 199 | :100C50000D308A0131200A308A01312087165C0864 200 | :100C6000363C031DFF30FF3AD800003060190130D8 201 | :100C7000DA00DB015A08A0005B08A100A3010130E3 202 | :100C80008A019E20DA00580884005A088A01B6209A 203 | :100C9000DA00DB0064005A085B048A1103198C2E09 204 | :100CA000061243308A01312048308A013120323027 205 | :100CB0008A0131203A308A013120A9010030061A18 206 | :100CC0000130A400A5013030B000B1018A01372005 207 | :100CD0000D308A0131200A308A01312043308A01E7 208 | :100CE000312048308A01312032308A0131203A30B7 209 | :100CF0008A013120A9010030061A0130A400A501A3 210 | :100D00003030B000B1018A0137200D308A01312026 211 | :100D10000A308A01312087125C08333C031DFF3002 212 | :100D2000FF3AD8000030E0190130DA00DB015A0840 213 | :100D3000A0005B08A100A30101308A019E20DA0017 214 | :100D4000580884005A088A01B620DA00DB006400E3 215 | :100D50005A085B048A110319E92E051443308A01ED 216 | :100D6000312048308A01312033308A0131203A3035 217 | :100D70008A013120A901003005180130A400A50125 218 | :100D80003030B000B1018A0137200D308A013120A6 219 | :100D90000A308A01312043308A01312048308A01EB 220 | :100DA000312033308A0131203A308A013120A901C3 221 | :100DB000003005180130A400A5013030B000B101A9 222 | :100DC0008A0137200D308A0131200A308A01312012 223 | :100DD00007175C08373C031DFF30FF3AD80000308E 224 | :100DE000E0190130DA00DB015A08A0005B08A1001D 225 | :100DF000A30101308A019E20DA00580884005A08B5 226 | :100E00008A01B620DA00DB0064005A085B048A110C 227 | :100E10000319462F051043308A01312048308A01DA 228 | :100E2000312033308A0131203A308A013120A90142 229 | :100E3000003005180130A400A5013030B000B10128 230 | :100E40008A0137200D308A0131200A308A01312091 231 | :100E500043308A01312048308A01312033308A0101 232 | :100E600031203A308A013120A901003005180130C3 233 | :100E7000A400A5013030B000B1018A0137200D3047 234 | :100E80008A0131200A308A01312007135C08343C82 235 | :100E9000031DFF30FF3AD800003060180130DA003F 236 | :100EA000DB015A08A0005B08A100A30101308A0100 237 | :100EB0009E20DA00580884005A088A01B620DA0019 238 | :100EC000DB0064005A085B048A110319A22F8516FF 239 | :100ED00043308A01312048308A01312030308A0184 240 | :100EE00031203A308A013120A9010030851A0130C1 241 | :100EF000A400A5013030B000B1018A0137200D30C7 242 | :100F00008A0131200A308A01312043308A013120A0 243 | :100F100048308A01312030308A0131203A308A014C 244 | :100F20003120A9010030851A0130A400A50130301C 245 | :100F3000B000B1018A0137200D308A0131200A301A 246 | :100F40008A0131205C08383C031DFF30FF3AD8008D 247 | :100F5000003060180130DA00DB015A08A0005B089D 248 | :100F6000A100A30101308A019E20DA005808840004 249 | :100F70005A088A01B620DA00DB0064005A085B04D4 250 | :100F80008A110319FE2F851243308A01312048301F 251 | :100F90008A01312030308A0131203A308A013120F3 252 | :100FA000A9010030851A0130A400A5013030B0003D 253 | :100FB000B1018A0137200D308A0131200A308A01BF 254 | :100FC000312043308A01312048308A0131203030CD 255 | :100FD0008A0131203A308A013120A9010030851A76 256 | :100FE0000130A400A5013030B000B1018A013720E2 257 | :100FF0000D308A0131200A308A01312064005C08FA 258 | :10100000393C8A15031DA12843308A01312048301C 259 | :101010008A01312030308A0131203A308A01312072 260 | :10102000A9010030851A0130A400A5013030B000BC 261 | :10103000B1018A0137200D308A0131200A308A013E 262 | :10104000312014308A017C2043308A01312048301D 263 | :101050008A01312031308A0131203A308A01312031 264 | :10106000A901003085180130A400A5013030B0007E 265 | :10107000B1018A0137200D308A0131200A308A01FE 266 | :10108000312014308A017C2043308A0131204830DD 267 | :101090008A01312032308A0131203A308A013120F0 268 | :1010A000A9010030061A0130A400A5013030B000BB 269 | :1010B000B1018A0137200D308A0131200A308A01BE 270 | :1010C000312014308A017C2043308A01312048309D 271 | :1010D0008A01312033308A0131203A308A013120AF 272 | :1010E000A901003005180130A400A5013030B0007E 273 | :1010F000B1018A0137200D308A0131200A308A017E 274 | :10110000312014308A017C20003085180130DF0046 275 | :101110008A157121DE0164000A305E028A15031807 276 | :101120009D280230850683168510C83083128A01F7 277 | :101130007C20DE0A8A15031D8B285F1885145F1C2E 278 | :1011400085108A010F2A8A010F2A83105D188314E3 279 | :10115000031783181914831C191003138310DD1847 280 | :101160008314031783189914831C99100313831095 281 | :101170005D188314031783181A14831C1A100313A1 282 | :101180008310DD188314031783189A14831C9A1094 283 | :101190000313810103105D0D383E84000008D80060 284 | :1011A000840A0008D9005908A10058088A018A2039 285 | :1011B00003105D0D483E840001088000840A800110 286 | :1011C00003105D0D483E84000008D800840A000822 287 | :1011D000D9005808A6005908A7000A30A200A301A8 288 | :1011E0008A01D920D8002508D90003105D0D483E9A 289 | :1011F000840058088000840A5908800003105D0D9F 290 | :10120000403E84000008D800840A0008D900093054 291 | :10121000A600A7015808A2005908A3008A01D920F6 292 | :10122000D8002508D90003105D0D483E8400000851 293 | :10123000DA00840A0008DB005808DA0759080318A6 294 | :10124000013EDB075A08A0005B08A1000A30A2009B 295 | :10125000A3018A01BD20DA002108DB0003105D0D27 296 | :10126000403E84005A088000840A5B088000031016 297 | :101270005D0D483E84000008D800840A0008D900AB 298 | :1012800003105D0D403E84000008DA00840A000867 299 | :10129000DB005608DA025708031C013EDB0258083F 300 | :1012A000A0005908A1005B08A3005A088A01A120E8 301 | :1012B0008A15031D6C295D08503E84000008D80083 302 | :1012C00001305807D800D901D90D5D08503E84007F 303 | :1012D000580880008A1570295D08503E84008001FE 304 | :1012E00008000130DD00640004305D028A15031837 305 | :1012F000C829603084005D08003E8A01012000306A 306 | :10130000031D0130D800D9010130A000A101590806 307 | :10131000A30058088A01A4208A15031DC4290310BC 308 | :101320005D0D383E84008001840A800103105D0D4C 309 | :10133000383E84000008D800840A0008D900D80A82 310 | :101340000319D90A03105D0D383E84005808800047 311 | :10135000840A590880008A15A52003105D0D483EB7 312 | :1013600084000008D800840A0008D9005808A000AA 313 | :101370005908A1000730A300D0308A01A1208A15A6 314 | :10138000031DC4298A159629DD0A8A15031D7329B0 315 | :08139000080063008A15C92959 316 | :02400E00FC3C78 317 | :00000001FF 318 | -------------------------------------------------------------------------------- /LICENSE: -------------------------------------------------------------------------------- 1 | Mozilla Public License Version 2.0 2 | ================================== 3 | 4 | 1. Definitions 5 | -------------- 6 | 7 | 1.1. "Contributor" 8 | means each individual or legal entity that creates, contributes to 9 | the creation of, or owns Covered Software. 10 | 11 | 1.2. "Contributor Version" 12 | means the combination of the Contributions of others (if any) used 13 | by a Contributor and that particular Contributor's Contribution. 14 | 15 | 1.3. "Contribution" 16 | means Covered Software of a particular Contributor. 17 | 18 | 1.4. "Covered Software" 19 | means Source Code Form to which the initial Contributor has attached 20 | the notice in Exhibit A, the Executable Form of such Source Code 21 | Form, and Modifications of such Source Code Form, in each case 22 | including portions thereof. 23 | 24 | 1.5. "Incompatible With Secondary Licenses" 25 | means 26 | 27 | (a) that the initial Contributor has attached the notice described 28 | in Exhibit B to the Covered Software; or 29 | 30 | (b) that the Covered Software was made available under the terms of 31 | version 1.1 or earlier of the License, but not also under the 32 | terms of a Secondary License. 33 | 34 | 1.6. "Executable Form" 35 | means any form of the work other than Source Code Form. 36 | 37 | 1.7. "Larger Work" 38 | means a work that combines Covered Software with other material, in 39 | a separate file or files, that is not Covered Software. 40 | 41 | 1.8. "License" 42 | means this document. 43 | 44 | 1.9. "Licensable" 45 | means having the right to grant, to the maximum extent possible, 46 | whether at the time of the initial grant or subsequently, any and 47 | all of the rights conveyed by this License. 48 | 49 | 1.10. "Modifications" 50 | means any of the following: 51 | 52 | (a) any file in Source Code Form that results from an addition to, 53 | deletion from, or modification of the contents of Covered 54 | Software; or 55 | 56 | (b) any new file in Source Code Form that contains any Covered 57 | Software. 58 | 59 | 1.11. "Patent Claims" of a Contributor 60 | means any patent claim(s), including without limitation, method, 61 | process, and apparatus claims, in any patent Licensable by such 62 | Contributor that would be infringed, but for the grant of the 63 | License, by the making, using, selling, offering for sale, having 64 | made, import, or transfer of either its Contributions or its 65 | Contributor Version. 66 | 67 | 1.12. "Secondary License" 68 | means either the GNU General Public License, Version 2.0, the GNU 69 | Lesser General Public License, Version 2.1, the GNU Affero General 70 | Public License, Version 3.0, or any later versions of those 71 | licenses. 72 | 73 | 1.13. "Source Code Form" 74 | means the form of the work preferred for making modifications. 75 | 76 | 1.14. "You" (or "Your") 77 | means an individual or a legal entity exercising rights under this 78 | License. For legal entities, "You" includes any entity that 79 | controls, is controlled by, or is under common control with You. For 80 | purposes of this definition, "control" means (a) the power, direct 81 | or indirect, to cause the direction or management of such entity, 82 | whether by contract or otherwise, or (b) ownership of more than 83 | fifty percent (50%) of the outstanding shares or beneficial 84 | ownership of such entity. 85 | 86 | 2. License Grants and Conditions 87 | -------------------------------- 88 | 89 | 2.1. Grants 90 | 91 | Each Contributor hereby grants You a world-wide, royalty-free, 92 | non-exclusive license: 93 | 94 | (a) under intellectual property rights (other than patent or trademark) 95 | Licensable by such Contributor to use, reproduce, make available, 96 | modify, display, perform, distribute, and otherwise exploit its 97 | Contributions, either on an unmodified basis, with Modifications, or 98 | as part of a Larger Work; and 99 | 100 | (b) under Patent Claims of such Contributor to make, use, sell, offer 101 | for sale, have made, import, and otherwise transfer either its 102 | Contributions or its Contributor Version. 103 | 104 | 2.2. Effective Date 105 | 106 | The licenses granted in Section 2.1 with respect to any Contribution 107 | become effective for each Contribution on the date the Contributor first 108 | distributes such Contribution. 109 | 110 | 2.3. Limitations on Grant Scope 111 | 112 | The licenses granted in this Section 2 are the only rights granted under 113 | this License. No additional rights or licenses will be implied from the 114 | distribution or licensing of Covered Software under this License. 115 | Notwithstanding Section 2.1(b) above, no patent license is granted by a 116 | Contributor: 117 | 118 | (a) for any code that a Contributor has removed from Covered Software; 119 | or 120 | 121 | (b) for infringements caused by: (i) Your and any other third party's 122 | modifications of Covered Software, or (ii) the combination of its 123 | Contributions with other software (except as part of its Contributor 124 | Version); or 125 | 126 | (c) under Patent Claims infringed by Covered Software in the absence of 127 | its Contributions. 128 | 129 | This License does not grant any rights in the trademarks, service marks, 130 | or logos of any Contributor (except as may be necessary to comply with 131 | the notice requirements in Section 3.4). 132 | 133 | 2.4. Subsequent Licenses 134 | 135 | No Contributor makes additional grants as a result of Your choice to 136 | distribute the Covered Software under a subsequent version of this 137 | License (see Section 10.2) or under the terms of a Secondary License (if 138 | permitted under the terms of Section 3.3). 139 | 140 | 2.5. Representation 141 | 142 | Each Contributor represents that the Contributor believes its 143 | Contributions are its original creation(s) or it has sufficient rights 144 | to grant the rights to its Contributions conveyed by this License. 145 | 146 | 2.6. Fair Use 147 | 148 | This License is not intended to limit any rights You have under 149 | applicable copyright doctrines of fair use, fair dealing, or other 150 | equivalents. 151 | 152 | 2.7. Conditions 153 | 154 | Sections 3.1, 3.2, 3.3, and 3.4 are conditions of the licenses granted 155 | in Section 2.1. 156 | 157 | 3. Responsibilities 158 | ------------------- 159 | 160 | 3.1. Distribution of Source Form 161 | 162 | All distribution of Covered Software in Source Code Form, including any 163 | Modifications that You create or to which You contribute, must be under 164 | the terms of this License. You must inform recipients that the Source 165 | Code Form of the Covered Software is governed by the terms of this 166 | License, and how they can obtain a copy of this License. You may not 167 | attempt to alter or restrict the recipients' rights in the Source Code 168 | Form. 169 | 170 | 3.2. Distribution of Executable Form 171 | 172 | If You distribute Covered Software in Executable Form then: 173 | 174 | (a) such Covered Software must also be made available in Source Code 175 | Form, as described in Section 3.1, and You must inform recipients of 176 | the Executable Form how they can obtain a copy of such Source Code 177 | Form by reasonable means in a timely manner, at a charge no more 178 | than the cost of distribution to the recipient; and 179 | 180 | (b) You may distribute such Executable Form under the terms of this 181 | License, or sublicense it under different terms, provided that the 182 | license for the Executable Form does not attempt to limit or alter 183 | the recipients' rights in the Source Code Form under this License. 184 | 185 | 3.3. Distribution of a Larger Work 186 | 187 | You may create and distribute a Larger Work under terms of Your choice, 188 | provided that You also comply with the requirements of this License for 189 | the Covered Software. If the Larger Work is a combination of Covered 190 | Software with a work governed by one or more Secondary Licenses, and the 191 | Covered Software is not Incompatible With Secondary Licenses, this 192 | License permits You to additionally distribute such Covered Software 193 | under the terms of such Secondary License(s), so that the recipient of 194 | the Larger Work may, at their option, further distribute the Covered 195 | Software under the terms of either this License or such Secondary 196 | License(s). 197 | 198 | 3.4. Notices 199 | 200 | You may not remove or alter the substance of any license notices 201 | (including copyright notices, patent notices, disclaimers of warranty, 202 | or limitations of liability) contained within the Source Code Form of 203 | the Covered Software, except that You may alter any license notices to 204 | the extent required to remedy known factual inaccuracies. 205 | 206 | 3.5. Application of Additional Terms 207 | 208 | You may choose to offer, and to charge a fee for, warranty, support, 209 | indemnity or liability obligations to one or more recipients of Covered 210 | Software. However, You may do so only on Your own behalf, and not on 211 | behalf of any Contributor. You must make it absolutely clear that any 212 | such warranty, support, indemnity, or liability obligation is offered by 213 | You alone, and You hereby agree to indemnify every Contributor for any 214 | liability incurred by such Contributor as a result of warranty, support, 215 | indemnity or liability terms You offer. You may include additional 216 | disclaimers of warranty and limitations of liability specific to any 217 | jurisdiction. 218 | 219 | 4. Inability to Comply Due to Statute or Regulation 220 | --------------------------------------------------- 221 | 222 | If it is impossible for You to comply with any of the terms of this 223 | License with respect to some or all of the Covered Software due to 224 | statute, judicial order, or regulation then You must: (a) comply with 225 | the terms of this License to the maximum extent possible; and (b) 226 | describe the limitations and the code they affect. Such description must 227 | be placed in a text file included with all distributions of the Covered 228 | Software under this License. Except to the extent prohibited by statute 229 | or regulation, such description must be sufficiently detailed for a 230 | recipient of ordinary skill to be able to understand it. 231 | 232 | 5. Termination 233 | -------------- 234 | 235 | 5.1. The rights granted under this License will terminate automatically 236 | if You fail to comply with any of its terms. However, if You become 237 | compliant, then the rights granted under this License from a particular 238 | Contributor are reinstated (a) provisionally, unless and until such 239 | Contributor explicitly and finally terminates Your grants, and (b) on an 240 | ongoing basis, if such Contributor fails to notify You of the 241 | non-compliance by some reasonable means prior to 60 days after You have 242 | come back into compliance. Moreover, Your grants from a particular 243 | Contributor are reinstated on an ongoing basis if such Contributor 244 | notifies You of the non-compliance by some reasonable means, this is the 245 | first time You have received notice of non-compliance with this License 246 | from such Contributor, and You become compliant prior to 30 days after 247 | Your receipt of the notice. 248 | 249 | 5.2. If You initiate litigation against any entity by asserting a patent 250 | infringement claim (excluding declaratory judgment actions, 251 | counter-claims, and cross-claims) alleging that a Contributor Version 252 | directly or indirectly infringes any patent, then the rights granted to 253 | You by any and all Contributors for the Covered Software under Section 254 | 2.1 of this License shall terminate. 255 | 256 | 5.3. In the event of termination under Sections 5.1 or 5.2 above, all 257 | end user license agreements (excluding distributors and resellers) which 258 | have been validly granted by You or Your distributors under this License 259 | prior to termination shall survive termination. 260 | 261 | ************************************************************************ 262 | * * 263 | * 6. Disclaimer of Warranty * 264 | * ------------------------- * 265 | * * 266 | * Covered Software is provided under this License on an "as is" * 267 | * basis, without warranty of any kind, either expressed, implied, or * 268 | * statutory, including, without limitation, warranties that the * 269 | * Covered Software is free of defects, merchantable, fit for a * 270 | * particular purpose or non-infringing. The entire risk as to the * 271 | * quality and performance of the Covered Software is with You. * 272 | * Should any Covered Software prove defective in any respect, You * 273 | * (not any Contributor) assume the cost of any necessary servicing, * 274 | * repair, or correction. This disclaimer of warranty constitutes an * 275 | * essential part of this License. No use of any Covered Software is * 276 | * authorized under this License except under this disclaimer. * 277 | * * 278 | ************************************************************************ 279 | 280 | ************************************************************************ 281 | * * 282 | * 7. Limitation of Liability * 283 | * -------------------------- * 284 | * * 285 | * Under no circumstances and under no legal theory, whether tort * 286 | * (including negligence), contract, or otherwise, shall any * 287 | * Contributor, or anyone who distributes Covered Software as * 288 | * permitted above, be liable to You for any direct, indirect, * 289 | * special, incidental, or consequential damages of any character * 290 | * including, without limitation, damages for lost profits, loss of * 291 | * goodwill, work stoppage, computer failure or malfunction, or any * 292 | * and all other commercial damages or losses, even if such party * 293 | * shall have been informed of the possibility of such damages. This * 294 | * limitation of liability shall not apply to liability for death or * 295 | * personal injury resulting from such party's negligence to the * 296 | * extent applicable law prohibits such limitation. Some * 297 | * jurisdictions do not allow the exclusion or limitation of * 298 | * incidental or consequential damages, so this exclusion and * 299 | * limitation may not apply to You. * 300 | * * 301 | ************************************************************************ 302 | 303 | 8. Litigation 304 | ------------- 305 | 306 | Any litigation relating to this License may be brought only in the 307 | courts of a jurisdiction where the defendant maintains its principal 308 | place of business and such litigation shall be governed by laws of that 309 | jurisdiction, without reference to its conflict-of-law provisions. 310 | Nothing in this Section shall prevent a party's ability to bring 311 | cross-claims or counter-claims. 312 | 313 | 9. Miscellaneous 314 | ---------------- 315 | 316 | This License represents the complete agreement concerning the subject 317 | matter hereof. If any provision of this License is held to be 318 | unenforceable, such provision shall be reformed only to the extent 319 | necessary to make it enforceable. Any law or regulation which provides 320 | that the language of a contract shall be construed against the drafter 321 | shall not be used to construe this License against a Contributor. 322 | 323 | 10. Versions of the License 324 | --------------------------- 325 | 326 | 10.1. New Versions 327 | 328 | Mozilla Foundation is the license steward. Except as provided in Section 329 | 10.3, no one other than the license steward has the right to modify or 330 | publish new versions of this License. Each version will be given a 331 | distinguishing version number. 332 | 333 | 10.2. Effect of New Versions 334 | 335 | You may distribute the Covered Software under the terms of the version 336 | of the License under which You originally received the Covered Software, 337 | or under the terms of any subsequent version published by the license 338 | steward. 339 | 340 | 10.3. Modified Versions 341 | 342 | If you create software not governed by this License, and you want to 343 | create a new license for such software, you may create and use a 344 | modified version of this License if you rename the license and remove 345 | any references to the name of the license steward (except to note that 346 | such modified license differs from this License). 347 | 348 | 10.4. Distributing Source Code Form that is Incompatible With Secondary 349 | Licenses 350 | 351 | If You choose to distribute Source Code Form that is Incompatible With 352 | Secondary Licenses under the terms of this version of the License, the 353 | notice described in Exhibit B of this License must be attached. 354 | 355 | Exhibit A - Source Code Form License Notice 356 | ------------------------------------------- 357 | 358 | This Source Code Form is subject to the terms of the Mozilla Public 359 | License, v. 2.0. If a copy of the MPL was not distributed with this 360 | file, You can obtain one at http://mozilla.org/MPL/2.0/. 361 | 362 | If it is not possible or desirable to put the notice in a particular 363 | file, then You may include the notice in a location (such as a LICENSE 364 | file in a relevant directory) where a recipient would be likely to look 365 | for such a notice. 366 | 367 | You may add additional accurate notices of copyright ownership. 368 | 369 | Exhibit B - "Incompatible With Secondary Licenses" Notice 370 | --------------------------------------------------------- 371 | 372 | This Source Code Form is "Incompatible With Secondary Licenses", as 373 | defined by the Mozilla Public License, v. 2.0. 374 | --------------------------------------------------------------------------------