Index: main.lss
===================================================================
--- main.lss	(revision 1604)
+++ main.lss	(revision 1605)
@@ -3,15 +3,15 @@
 
 Sections:
 Idx Name          Size      VMA       LMA       File off  Algn
-  0 .data         0000046c  00800100  0000659e  00006612  2**0
+  0 .data         0000045c  00800100  000060cc  00006140  2**0
                   CONTENTS, ALLOC, LOAD, DATA
-  1 .text         0000659e  00000000  00000000  00000074  2**1
+  1 .text         000060cc  00000000  00000000  00000074  2**1
                   CONTENTS, ALLOC, LOAD, READONLY, CODE
-  2 .bss          00000518  0080056c  00006a0a  00006a7e  2**0
+  2 .bss          0000050e  0080055c  00006528  0000659c  2**0
                   ALLOC
-  3 .stab         00008eb0  00000000  00000000  00006a80  2**2
+  3 .stab         000074c4  00000000  00000000  0000659c  2**2
                   CONTENTS, READONLY, DEBUGGING
-  4 .stabstr      0000335e  00000000  00000000  0000f930  2**0
+  4 .stabstr      0000244c  00000000  00000000  0000da60  2**0
                   CONTENTS, READONLY, DEBUGGING
 Disassembly of section .text:
 
@@ -31,22 +31,22 @@
       30:	0c 94 65 00 	jmp	0xca	; 0xca <__bad_interrupt>
       34:	0c 94 65 00 	jmp	0xca	; 0xca <__bad_interrupt>
       38:	0c 94 65 00 	jmp	0xca	; 0xca <__bad_interrupt>
-      3c:	0c 94 3b 16 	jmp	0x2c76	; 0x2c76 <__vector_15>
-      40:	0c 94 ce 15 	jmp	0x2b9c	; 0x2b9c <__vector_16>
-      44:	0c 94 9f 1b 	jmp	0x373e	; 0x373e <__vector_17>
+      3c:	0c 94 64 16 	jmp	0x2cc8	; 0x2cc8 <__vector_15>
+      40:	0c 94 f7 15 	jmp	0x2bee	; 0x2bee <__vector_16>
+      44:	0c 94 c8 1b 	jmp	0x3790	; 0x3790 <__vector_17>
       48:	0c 94 65 00 	jmp	0xca	; 0xca <__bad_interrupt>
       4c:	0c 94 65 00 	jmp	0xca	; 0xca <__bad_interrupt>
       50:	0c 94 65 00 	jmp	0xca	; 0xca <__bad_interrupt>
-      54:	0c 94 4a 1d 	jmp	0x3a94	; 0x3a94 <__vector_21>
+      54:	0c 94 73 1d 	jmp	0x3ae6	; 0x3ae6 <__vector_21>
       58:	0c 94 65 00 	jmp	0xca	; 0xca <__bad_interrupt>
       5c:	0c 94 65 00 	jmp	0xca	; 0xca <__bad_interrupt>
       60:	0c 94 65 00 	jmp	0xca	; 0xca <__bad_interrupt>
       64:	0c 94 65 00 	jmp	0xca	; 0xca <__bad_interrupt>
-      68:	0c 94 19 1c 	jmp	0x3832	; 0x3832 <__vector_26>
+      68:	0c 94 42 1c 	jmp	0x3884	; 0x3884 <__vector_26>
       6c:	0c 94 65 00 	jmp	0xca	; 0xca <__bad_interrupt>
       70:	0c 94 65 00 	jmp	0xca	; 0xca <__bad_interrupt>
       74:	0c 94 65 00 	jmp	0xca	; 0xca <__bad_interrupt>
-      78:	0c 94 59 06 	jmp	0xcb2	; 0xcb2 <__vector_30>
+      78:	0c 94 82 06 	jmp	0xd04	; 0xd04 <__vector_30>
       7c:	0c 94 65 00 	jmp	0xca	; 0xca <__bad_interrupt>
       80:	0c 94 65 00 	jmp	0xca	; 0xca <__bad_interrupt>
       84:	0c 94 65 00 	jmp	0xca	; 0xca <__bad_interrupt>
@@ -64,20 +64,20 @@
       98:	15 e0       	ldi	r17, 0x05	; 5
       9a:	a0 e0       	ldi	r26, 0x00	; 0
       9c:	b1 e0       	ldi	r27, 0x01	; 1
-      9e:	ee e9       	ldi	r30, 0x9E	; 158
-      a0:	f5 e6       	ldi	r31, 0x65	; 101
+      9e:	ec ec       	ldi	r30, 0xCC	; 204
+      a0:	f0 e6       	ldi	r31, 0x60	; 96
       a2:	00 e0       	ldi	r16, 0x00	; 0
       a4:	0b bf       	out	0x3b, r16	; 59
       a6:	02 c0       	rjmp	.+4      	; 0xac <__do_copy_data+0x14>
       a8:	07 90       	elpm	r0, Z+
       aa:	0d 92       	st	X+, r0
-      ac:	ac 36       	cpi	r26, 0x6C	; 108
+      ac:	ac 35       	cpi	r26, 0x5C	; 92
       ae:	b1 07       	cpc	r27, r17
       b0:	d9 f7       	brne	.-10     	; 0xa8 <__do_copy_data+0x10>
 
 000000b2 <__do_clear_bss>:
       b2:	1a e0       	ldi	r17, 0x0A	; 10
-      b4:	ac e6       	ldi	r26, 0x6C	; 108
+      b4:	ac e5       	ldi	r26, 0x5C	; 92
       b6:	b5 e0       	ldi	r27, 0x05	; 5
       b8:	01 c0       	rjmp	.+2      	; 0xbc <.do_clear_bss_start>
 
@@ -85,18 +85,18 @@
       ba:	1d 92       	st	X+, r1
 
 000000bc <.do_clear_bss_start>:
-      bc:	a4 38       	cpi	r26, 0x84	; 132
+      bc:	aa 36       	cpi	r26, 0x6A	; 106
       be:	b1 07       	cpc	r27, r17
       c0:	e1 f7       	brne	.-8      	; 0xba <.do_clear_bss_loop>
       c2:	0e 94 67 00 	call	0xce	; 0xce <main>
-      c6:	0c 94 cd 32 	jmp	0x659a	; 0x659a <_exit>
+      c6:	0c 94 64 30 	jmp	0x60c8	; 0x60c8 <_exit>
 
 000000ca <__bad_interrupt>:
       ca:	0c 94 00 00 	jmp	0	; 0x0 <__heap_end>
 
 000000ce <main>:
-//static PacketGroupHandler swarm_pgh;
-//static void swarm_handle_receive(char type, int wl_source, unsigned char* packet, int length);
+#include <wireless.h>
+#include <wl_token_ring.h>
 
 int main(void)
 {
@@ -103,31 +103,25 @@
     dragonfly_init(ALL_ON);
       ce:	8f ef       	ldi	r24, 0xFF	; 255
       d0:	97 e0       	ldi	r25, 0x07	; 7
-      d2:	0e 94 6c 11 	call	0x22d8	; 0x22d8 <dragonfly_init>
+      d2:	0e 94 95 11 	call	0x232a	; 0x232a <dragonfly_init>
 
     wl_init();
-      d6:	0e 94 0b 02 	call	0x416	; 0x416 <wl_init>
+      d6:	0e 94 d2 01 	call	0x3a4	; 0x3a4 <wl_init>
     wl_set_channel(0xF);
       da:	8f e0       	ldi	r24, 0x0F	; 15
       dc:	90 e0       	ldi	r25, 0x00	; 0
-      de:	0e 94 ea 01 	call	0x3d4	; 0x3d4 <wl_set_channel>
-    swarm_pgh.handle_response = NULL;
-    swarm_pgh.handle_receive = swarm_handle_receive;
-    swarm_pgh.unregister = NULL;
-    wl_register_packet_group(&swarm_pgh);*/
+      de:	0e 94 b1 01 	call	0x362	; 0x362 <wl_set_channel>
 
     wl_token_ring_register();
-      e2:	0e 94 40 06 	call	0xc80	; 0xc80 <wl_token_ring_register>
+      e2:	0e 94 69 06 	call	0xcd2	; 0xcd2 <wl_token_ring_register>
     wl_token_ring_join();
-      e6:	0e 94 f8 02 	call	0x5f0	; 0x5f0 <wl_token_ring_join>
+      e6:	0e 94 bf 02 	call	0x57e	; 0x57e <wl_token_ring_join>
 
     usb_puts("initialized\r\n");
       ea:	80 e0       	ldi	r24, 0x00	; 0
       ec:	91 e0       	ldi	r25, 0x01	; 1
-      ee:	0e 94 8f 1a 	call	0x351e	; 0x351e <usb_puts>
+      ee:	0e 94 b8 1a 	call	0x3570	; 0x3570 <usb_puts>
 
-    int num = 0;*/
-
     while (1)
     {
 	    wl_do();
@@ -137,8 +131,8 @@
 000000f8 <timer_handler>:
       f8:	81 e0       	ldi	r24, 0x01	; 1
       fa:	90 e0       	ldi	r25, 0x00	; 0
-      fc:	90 93 6d 05 	sts	0x056D, r25
-     100:	80 93 6c 05 	sts	0x056C, r24
+      fc:	90 93 5d 05 	sts	0x055D, r25
+     100:	80 93 5c 05 	sts	0x055C, r24
      104:	08 95       	ret
 
 00000106 <wl_register_packet_group>:
@@ -152,7 +146,7 @@
      114:	fc 01       	movw	r30, r24
      116:	ee 0f       	add	r30, r30
      118:	ff 1f       	adc	r31, r31
-     11a:	e2 51       	subi	r30, 0x12	; 18
+     11a:	e2 52       	subi	r30, 0x22	; 34
      11c:	fa 4f       	sbci	r31, 0xFA	; 250
      11e:	80 81       	ld	r24, Z
      120:	91 81       	ldd	r25, Z+1	; 0x01
@@ -171,7 +165,7 @@
      136:	fe 01       	movw	r30, r28
      138:	ee 0f       	add	r30, r30
      13a:	ff 1f       	adc	r31, r31
-     13c:	e2 51       	subi	r30, 0x12	; 18
+     13c:	e2 52       	subi	r30, 0x22	; 34
      13e:	fa 4f       	sbci	r31, 0xFA	; 250
      140:	01 90       	ld	r0, Z+
      142:	f0 81       	ld	r31, Z
@@ -186,7 +180,7 @@
      154:	09 95       	icall
      156:	cc 0f       	add	r28, r28
      158:	dd 1f       	adc	r29, r29
-     15a:	c2 51       	subi	r28, 0x12	; 18
+     15a:	c2 52       	subi	r28, 0x22	; 34
      15c:	da 4f       	sbci	r29, 0xFA	; 250
      15e:	19 82       	std	Y+1, r1	; 0x01
      160:	18 82       	st	Y, r1
@@ -197,11 +191,11 @@
 00000168 <wl_do>:
      168:	cf 93       	push	r28
      16a:	df 93       	push	r29
-     16c:	80 91 6c 05 	lds	r24, 0x056C
-     170:	90 91 6d 05 	lds	r25, 0x056D
+     16c:	80 91 5c 05 	lds	r24, 0x055C
+     170:	90 91 5d 05 	lds	r25, 0x055D
      174:	89 2b       	or	r24, r25
      176:	a9 f0       	breq	.+42     	; 0x1a2 <wl_do+0x3a>
-     178:	ce ee       	ldi	r28, 0xEE	; 238
+     178:	ce ed       	ldi	r28, 0xDE	; 222
      17a:	d5 e0       	ldi	r29, 0x05	; 5
      17c:	e8 81       	ld	r30, Y
      17e:	f9 81       	ldd	r31, Y+1	; 0x01
@@ -214,27 +208,27 @@
      18c:	09 f0       	breq	.+2      	; 0x190 <wl_do+0x28>
      18e:	09 95       	icall
      190:	22 96       	adiw	r28, 0x02	; 2
-     192:	86 e0       	ldi	r24, 0x06	; 6
-     194:	ce 30       	cpi	r28, 0x0E	; 14
+     192:	85 e0       	ldi	r24, 0x05	; 5
+     194:	ce 3f       	cpi	r28, 0xFE	; 254
      196:	d8 07       	cpc	r29, r24
      198:	89 f7       	brne	.-30     	; 0x17c <wl_do+0x14>
-     19a:	10 92 6d 05 	sts	0x056D, r1
-     19e:	10 92 6c 05 	sts	0x056C, r1
-     1a2:	8e e6       	ldi	r24, 0x6E	; 110
+     19a:	10 92 5d 05 	sts	0x055D, r1
+     19e:	10 92 5c 05 	sts	0x055C, r1
+     1a2:	8e e5       	ldi	r24, 0x5E	; 94
      1a4:	95 e0       	ldi	r25, 0x05	; 5
-     1a6:	0e 94 8e 06 	call	0xd1c	; 0xd1c <xbee_get_packet>
+     1a6:	0e 94 b7 06 	call	0xd6e	; 0xd6e <xbee_get_packet>
      1aa:	9c 01       	movw	r18, r24
      1ac:	97 fd       	sbrc	r25, 7
-     1ae:	87 c0       	rjmp	.+270    	; 0x2be <wl_do+0x156>
-     1b0:	40 91 6e 05 	lds	r20, 0x056E
-     1b4:	49 38       	cpi	r20, 0x89	; 137
-     1b6:	39 f5       	brne	.+78     	; 0x206 <wl_do+0x9e>
-     1b8:	83 30       	cpi	r24, 0x03	; 3
-     1ba:	91 05       	cpc	r25, r1
+     1ae:	4e c0       	rjmp	.+156    	; 0x24c <wl_do+0xe4>
+     1b0:	80 91 5e 05 	lds	r24, 0x055E
+     1b4:	89 38       	cpi	r24, 0x89	; 137
+     1b6:	29 f5       	brne	.+74     	; 0x202 <wl_do+0x9a>
+     1b8:	23 30       	cpi	r18, 0x03	; 3
+     1ba:	31 05       	cpc	r19, r1
      1bc:	09 f0       	breq	.+2      	; 0x1c0 <wl_do+0x58>
-     1be:	7f c0       	rjmp	.+254    	; 0x2be <wl_do+0x156>
-     1c0:	80 91 6f 05 	lds	r24, 0x056F
-     1c4:	20 91 70 05 	lds	r18, 0x0570
+     1be:	46 c0       	rjmp	.+140    	; 0x24c <wl_do+0xe4>
+     1c0:	80 91 5f 05 	lds	r24, 0x055F
+     1c4:	20 91 60 05 	lds	r18, 0x0560
      1c8:	e8 2f       	mov	r30, r24
      1ca:	e2 95       	swap	r30
      1cc:	ef 70       	andi	r30, 0x0F	; 15
@@ -241,3884 +235,3924 @@
      1ce:	f0 e0       	ldi	r31, 0x00	; 0
      1d0:	ee 0f       	add	r30, r30
      1d2:	ff 1f       	adc	r31, r31
-     1d4:	e2 51       	subi	r30, 0x12	; 18
+     1d4:	e2 52       	subi	r30, 0x22	; 34
      1d6:	fa 4f       	sbci	r31, 0xFA	; 250
      1d8:	01 90       	ld	r0, Z+
      1da:	f0 81       	ld	r31, Z
      1dc:	e0 2d       	mov	r30, r0
      1de:	30 97       	sbiw	r30, 0x00	; 0
-     1e0:	09 f4       	brne	.+2      	; 0x1e4 <wl_do+0x7c>
-     1e2:	6d c0       	rjmp	.+218    	; 0x2be <wl_do+0x156>
-     1e4:	04 80       	ldd	r0, Z+4	; 0x04
-     1e6:	f5 81       	ldd	r31, Z+5	; 0x05
-     1e8:	e0 2d       	mov	r30, r0
-     1ea:	30 97       	sbiw	r30, 0x00	; 0
-     1ec:	09 f4       	brne	.+2      	; 0x1f0 <wl_do+0x88>
-     1ee:	67 c0       	rjmp	.+206    	; 0x2be <wl_do+0x156>
-     1f0:	90 e0       	ldi	r25, 0x00	; 0
-     1f2:	8f 70       	andi	r24, 0x0F	; 15
-     1f4:	90 70       	andi	r25, 0x00	; 0
-     1f6:	60 e0       	ldi	r22, 0x00	; 0
-     1f8:	70 e0       	ldi	r23, 0x00	; 0
-     1fa:	22 23       	and	r18, r18
-     1fc:	11 f4       	brne	.+4      	; 0x202 <wl_do+0x9a>
-     1fe:	61 e0       	ldi	r22, 0x01	; 1
-     200:	70 e0       	ldi	r23, 0x00	; 0
-     202:	09 95       	icall
-     204:	5c c0       	rjmp	.+184    	; 0x2be <wl_do+0x156>
-     206:	41 38       	cpi	r20, 0x81	; 129
-     208:	31 f5       	brne	.+76     	; 0x256 <wl_do+0xee>
-     20a:	87 30       	cpi	r24, 0x07	; 7
-     20c:	91 05       	cpc	r25, r1
-     20e:	0c f4       	brge	.+2      	; 0x212 <wl_do+0xaa>
-     210:	56 c0       	rjmp	.+172    	; 0x2be <wl_do+0x156>
-     212:	90 91 6f 05 	lds	r25, 0x056F
-     216:	40 91 70 05 	lds	r20, 0x0570
-     21a:	80 91 74 05 	lds	r24, 0x0574
-     21e:	e0 91 73 05 	lds	r30, 0x0573
-     222:	f0 e0       	ldi	r31, 0x00	; 0
-     224:	ee 0f       	add	r30, r30
-     226:	ff 1f       	adc	r31, r31
-     228:	e2 51       	subi	r30, 0x12	; 18
-     22a:	fa 4f       	sbci	r31, 0xFA	; 250
-     22c:	01 90       	ld	r0, Z+
-     22e:	f0 81       	ld	r31, Z
-     230:	e0 2d       	mov	r30, r0
-     232:	30 97       	sbiw	r30, 0x00	; 0
-     234:	09 f4       	brne	.+2      	; 0x238 <wl_do+0xd0>
-     236:	43 c0       	rjmp	.+134    	; 0x2be <wl_do+0x156>
-     238:	06 80       	ldd	r0, Z+6	; 0x06
-     23a:	f7 81       	ldd	r31, Z+7	; 0x07
-     23c:	e0 2d       	mov	r30, r0
-     23e:	30 97       	sbiw	r30, 0x00	; 0
-     240:	f1 f1       	breq	.+124    	; 0x2be <wl_do+0x156>
-     242:	79 2f       	mov	r23, r25
-     244:	60 e0       	ldi	r22, 0x00	; 0
-     246:	64 0f       	add	r22, r20
-     248:	71 1d       	adc	r23, r1
-     24a:	27 50       	subi	r18, 0x07	; 7
-     24c:	30 40       	sbci	r19, 0x00	; 0
-     24e:	45 e7       	ldi	r20, 0x75	; 117
-     250:	55 e0       	ldi	r21, 0x05	; 5
-     252:	09 95       	icall
-     254:	34 c0       	rjmp	.+104    	; 0x2be <wl_do+0x156>
-     256:	00 d0       	rcall	.+0      	; 0x258 <wl_do+0xf0>
-     258:	00 d0       	rcall	.+0      	; 0x25a <wl_do+0xf2>
-     25a:	ed b7       	in	r30, 0x3d	; 61
-     25c:	fe b7       	in	r31, 0x3e	; 62
-     25e:	31 96       	adiw	r30, 0x01	; 1
-     260:	8e e0       	ldi	r24, 0x0E	; 14
-     262:	91 e0       	ldi	r25, 0x01	; 1
-     264:	ad b7       	in	r26, 0x3d	; 61
-     266:	be b7       	in	r27, 0x3e	; 62
-     268:	12 96       	adiw	r26, 0x02	; 2
-     26a:	9c 93       	st	X, r25
-     26c:	8e 93       	st	-X, r24
-     26e:	11 97       	sbiw	r26, 0x01	; 1
-     270:	42 83       	std	Z+2, r20	; 0x02
-     272:	13 82       	std	Z+3, r1	; 0x03
-     274:	0e 94 81 2f 	call	0x5f02	; 0x5f02 <printf>
-     278:	00 d0       	rcall	.+0      	; 0x27a <wl_do+0x112>
-     27a:	00 d0       	rcall	.+0      	; 0x27c <wl_do+0x114>
-     27c:	ed b7       	in	r30, 0x3d	; 61
-     27e:	fe b7       	in	r31, 0x3e	; 62
-     280:	31 96       	adiw	r30, 0x01	; 1
-     282:	85 e1       	ldi	r24, 0x15	; 21
-     284:	91 e0       	ldi	r25, 0x01	; 1
-     286:	ad b7       	in	r26, 0x3d	; 61
-     288:	be b7       	in	r27, 0x3e	; 62
-     28a:	12 96       	adiw	r26, 0x02	; 2
-     28c:	9c 93       	st	X, r25
-     28e:	8e 93       	st	-X, r24
-     290:	11 97       	sbiw	r26, 0x01	; 1
-     292:	80 91 70 05 	lds	r24, 0x0570
-     296:	82 83       	std	Z+2, r24	; 0x02
-     298:	13 82       	std	Z+3, r1	; 0x03
-     29a:	80 91 71 05 	lds	r24, 0x0571
-     29e:	84 83       	std	Z+4, r24	; 0x04
-     2a0:	15 82       	std	Z+5, r1	; 0x05
-     2a2:	80 91 72 05 	lds	r24, 0x0572
-     2a6:	86 83       	std	Z+6, r24	; 0x06
-     2a8:	17 82       	std	Z+7, r1	; 0x07
-     2aa:	0e 94 81 2f 	call	0x5f02	; 0x5f02 <printf>
-     2ae:	8d b7       	in	r24, 0x3d	; 61
-     2b0:	9e b7       	in	r25, 0x3e	; 62
-     2b2:	08 96       	adiw	r24, 0x08	; 8
-     2b4:	0f b6       	in	r0, 0x3f	; 63
-     2b6:	f8 94       	cli
-     2b8:	9e bf       	out	0x3e, r25	; 62
-     2ba:	0f be       	out	0x3f, r0	; 63
-     2bc:	8d bf       	out	0x3d, r24	; 61
-     2be:	df 91       	pop	r29
-     2c0:	cf 91       	pop	r28
-     2c2:	08 95       	ret
+     1e0:	a9 f1       	breq	.+106    	; 0x24c <wl_do+0xe4>
+     1e2:	04 80       	ldd	r0, Z+4	; 0x04
+     1e4:	f5 81       	ldd	r31, Z+5	; 0x05
+     1e6:	e0 2d       	mov	r30, r0
+     1e8:	30 97       	sbiw	r30, 0x00	; 0
+     1ea:	81 f1       	breq	.+96     	; 0x24c <wl_do+0xe4>
+     1ec:	90 e0       	ldi	r25, 0x00	; 0
+     1ee:	8f 70       	andi	r24, 0x0F	; 15
+     1f0:	90 70       	andi	r25, 0x00	; 0
+     1f2:	60 e0       	ldi	r22, 0x00	; 0
+     1f4:	70 e0       	ldi	r23, 0x00	; 0
+     1f6:	22 23       	and	r18, r18
+     1f8:	11 f4       	brne	.+4      	; 0x1fe <wl_do+0x96>
+     1fa:	61 e0       	ldi	r22, 0x01	; 1
+     1fc:	70 e0       	ldi	r23, 0x00	; 0
+     1fe:	09 95       	icall
+     200:	25 c0       	rjmp	.+74     	; 0x24c <wl_do+0xe4>
+     202:	81 38       	cpi	r24, 0x81	; 129
+     204:	19 f5       	brne	.+70     	; 0x24c <wl_do+0xe4>
+     206:	27 30       	cpi	r18, 0x07	; 7
+     208:	31 05       	cpc	r19, r1
+     20a:	04 f1       	brlt	.+64     	; 0x24c <wl_do+0xe4>
+     20c:	90 91 5f 05 	lds	r25, 0x055F
+     210:	40 91 60 05 	lds	r20, 0x0560
+     214:	80 91 64 05 	lds	r24, 0x0564
+     218:	e0 91 63 05 	lds	r30, 0x0563
+     21c:	f0 e0       	ldi	r31, 0x00	; 0
+     21e:	ee 0f       	add	r30, r30
+     220:	ff 1f       	adc	r31, r31
+     222:	e2 52       	subi	r30, 0x22	; 34
+     224:	fa 4f       	sbci	r31, 0xFA	; 250
+     226:	01 90       	ld	r0, Z+
+     228:	f0 81       	ld	r31, Z
+     22a:	e0 2d       	mov	r30, r0
+     22c:	30 97       	sbiw	r30, 0x00	; 0
+     22e:	71 f0       	breq	.+28     	; 0x24c <wl_do+0xe4>
+     230:	06 80       	ldd	r0, Z+6	; 0x06
+     232:	f7 81       	ldd	r31, Z+7	; 0x07
+     234:	e0 2d       	mov	r30, r0
+     236:	30 97       	sbiw	r30, 0x00	; 0
+     238:	49 f0       	breq	.+18     	; 0x24c <wl_do+0xe4>
+     23a:	79 2f       	mov	r23, r25
+     23c:	60 e0       	ldi	r22, 0x00	; 0
+     23e:	64 0f       	add	r22, r20
+     240:	71 1d       	adc	r23, r1
+     242:	27 50       	subi	r18, 0x07	; 7
+     244:	30 40       	sbci	r19, 0x00	; 0
+     246:	45 e6       	ldi	r20, 0x65	; 101
+     248:	55 e0       	ldi	r21, 0x05	; 5
+     24a:	09 95       	icall
+     24c:	df 91       	pop	r29
+     24e:	cf 91       	pop	r28
+     250:	08 95       	ret
 
-000002c4 <wl_send_packet>:
-     2c4:	af 92       	push	r10
-     2c6:	bf 92       	push	r11
-     2c8:	cf 92       	push	r12
-     2ca:	ef 92       	push	r14
-     2cc:	0f 93       	push	r16
-     2ce:	1f 93       	push	r17
-     2d0:	df 93       	push	r29
-     2d2:	cf 93       	push	r28
-     2d4:	cd b7       	in	r28, 0x3d	; 61
-     2d6:	de b7       	in	r29, 0x3e	; 62
-     2d8:	c0 58       	subi	r28, 0x80	; 128
-     2da:	d0 40       	sbci	r29, 0x00	; 0
-     2dc:	0f b6       	in	r0, 0x3f	; 63
-     2de:	f8 94       	cli
-     2e0:	de bf       	out	0x3e, r29	; 62
-     2e2:	0f be       	out	0x3f, r0	; 63
-     2e4:	cd bf       	out	0x3d, r28	; 61
-     2e6:	98 2f       	mov	r25, r24
-     2e8:	58 01       	movw	r10, r16
-     2ea:	0c 2d       	mov	r16, r12
-     2ec:	cc 20       	and	r12, r12
-     2ee:	31 f0       	breq	.+12     	; 0x2fc <wl_send_packet+0x38>
-     2f0:	8c 2d       	mov	r24, r12
-     2f2:	8f 70       	andi	r24, 0x0F	; 15
-     2f4:	09 2f       	mov	r16, r25
-     2f6:	02 95       	swap	r16
-     2f8:	00 7f       	andi	r16, 0xF0	; 240
-     2fa:	08 2b       	or	r16, r24
-     2fc:	99 83       	std	Y+1, r25	; 0x01
-     2fe:	6a 83       	std	Y+2, r22	; 0x02
-     300:	be 01       	movw	r22, r28
-     302:	6d 5f       	subi	r22, 0xFD	; 253
-     304:	7f 4f       	sbci	r23, 0xFF	; 255
-     306:	a0 e0       	ldi	r26, 0x00	; 0
-     308:	b0 e0       	ldi	r27, 0x00	; 0
-     30a:	08 c0       	rjmp	.+16     	; 0x31c <wl_send_packet+0x58>
-     30c:	fa 01       	movw	r30, r20
-     30e:	ea 0f       	add	r30, r26
-     310:	fb 1f       	adc	r31, r27
-     312:	80 81       	ld	r24, Z
-     314:	fb 01       	movw	r30, r22
-     316:	81 93       	st	Z+, r24
-     318:	bf 01       	movw	r22, r30
-     31a:	11 96       	adiw	r26, 0x01	; 1
-     31c:	a2 17       	cp	r26, r18
-     31e:	b3 07       	cpc	r27, r19
-     320:	ac f3       	brlt	.-22     	; 0x30c <wl_send_packet+0x48>
-     322:	2e 5f       	subi	r18, 0xFE	; 254
-     324:	3f 4f       	sbci	r19, 0xFF	; 255
-     326:	ce 01       	movw	r24, r28
-     328:	01 96       	adiw	r24, 0x01	; 1
-     32a:	b9 01       	movw	r22, r18
-     32c:	a5 01       	movw	r20, r10
-     32e:	2e 2d       	mov	r18, r14
-     330:	0e 94 b5 08 	call	0x116a	; 0x116a <xbee_send_packet>
-     334:	c0 58       	subi	r28, 0x80	; 128
-     336:	df 4f       	sbci	r29, 0xFF	; 255
-     338:	0f b6       	in	r0, 0x3f	; 63
-     33a:	f8 94       	cli
-     33c:	de bf       	out	0x3e, r29	; 62
-     33e:	0f be       	out	0x3f, r0	; 63
-     340:	cd bf       	out	0x3d, r28	; 61
-     342:	cf 91       	pop	r28
-     344:	df 91       	pop	r29
-     346:	1f 91       	pop	r17
-     348:	0f 91       	pop	r16
-     34a:	ef 90       	pop	r14
-     34c:	cf 90       	pop	r12
-     34e:	bf 90       	pop	r11
-     350:	af 90       	pop	r10
-     352:	08 95       	ret
+00000252 <wl_send_packet>:
+     252:	af 92       	push	r10
+     254:	bf 92       	push	r11
+     256:	cf 92       	push	r12
+     258:	ef 92       	push	r14
+     25a:	0f 93       	push	r16
+     25c:	1f 93       	push	r17
+     25e:	df 93       	push	r29
+     260:	cf 93       	push	r28
+     262:	cd b7       	in	r28, 0x3d	; 61
+     264:	de b7       	in	r29, 0x3e	; 62
+     266:	c0 58       	subi	r28, 0x80	; 128
+     268:	d0 40       	sbci	r29, 0x00	; 0
+     26a:	0f b6       	in	r0, 0x3f	; 63
+     26c:	f8 94       	cli
+     26e:	de bf       	out	0x3e, r29	; 62
+     270:	0f be       	out	0x3f, r0	; 63
+     272:	cd bf       	out	0x3d, r28	; 61
+     274:	98 2f       	mov	r25, r24
+     276:	58 01       	movw	r10, r16
+     278:	0c 2d       	mov	r16, r12
+     27a:	cc 20       	and	r12, r12
+     27c:	31 f0       	breq	.+12     	; 0x28a <wl_send_packet+0x38>
+     27e:	8c 2d       	mov	r24, r12
+     280:	8f 70       	andi	r24, 0x0F	; 15
+     282:	09 2f       	mov	r16, r25
+     284:	02 95       	swap	r16
+     286:	00 7f       	andi	r16, 0xF0	; 240
+     288:	08 2b       	or	r16, r24
+     28a:	99 83       	std	Y+1, r25	; 0x01
+     28c:	6a 83       	std	Y+2, r22	; 0x02
+     28e:	be 01       	movw	r22, r28
+     290:	6d 5f       	subi	r22, 0xFD	; 253
+     292:	7f 4f       	sbci	r23, 0xFF	; 255
+     294:	a0 e0       	ldi	r26, 0x00	; 0
+     296:	b0 e0       	ldi	r27, 0x00	; 0
+     298:	08 c0       	rjmp	.+16     	; 0x2aa <wl_send_packet+0x58>
+     29a:	fa 01       	movw	r30, r20
+     29c:	ea 0f       	add	r30, r26
+     29e:	fb 1f       	adc	r31, r27
+     2a0:	80 81       	ld	r24, Z
+     2a2:	fb 01       	movw	r30, r22
+     2a4:	81 93       	st	Z+, r24
+     2a6:	bf 01       	movw	r22, r30
+     2a8:	11 96       	adiw	r26, 0x01	; 1
+     2aa:	a2 17       	cp	r26, r18
+     2ac:	b3 07       	cpc	r27, r19
+     2ae:	ac f3       	brlt	.-22     	; 0x29a <wl_send_packet+0x48>
+     2b0:	2e 5f       	subi	r18, 0xFE	; 254
+     2b2:	3f 4f       	sbci	r19, 0xFF	; 255
+     2b4:	ce 01       	movw	r24, r28
+     2b6:	01 96       	adiw	r24, 0x01	; 1
+     2b8:	b9 01       	movw	r22, r18
+     2ba:	a5 01       	movw	r20, r10
+     2bc:	2e 2d       	mov	r18, r14
+     2be:	0e 94 de 08 	call	0x11bc	; 0x11bc <xbee_send_packet>
+     2c2:	c0 58       	subi	r28, 0x80	; 128
+     2c4:	df 4f       	sbci	r29, 0xFF	; 255
+     2c6:	0f b6       	in	r0, 0x3f	; 63
+     2c8:	f8 94       	cli
+     2ca:	de bf       	out	0x3e, r29	; 62
+     2cc:	0f be       	out	0x3f, r0	; 63
+     2ce:	cd bf       	out	0x3d, r28	; 61
+     2d0:	cf 91       	pop	r28
+     2d2:	df 91       	pop	r29
+     2d4:	1f 91       	pop	r17
+     2d6:	0f 91       	pop	r16
+     2d8:	ef 90       	pop	r14
+     2da:	cf 90       	pop	r12
+     2dc:	bf 90       	pop	r11
+     2de:	af 90       	pop	r10
+     2e0:	08 95       	ret
 
-00000354 <wl_send_pan_packet>:
-     354:	cf 92       	push	r12
-     356:	ef 92       	push	r14
-     358:	0f 93       	push	r16
-     35a:	1f 93       	push	r17
-     35c:	c0 2e       	mov	r12, r16
-     35e:	0f ef       	ldi	r16, 0xFF	; 255
-     360:	1f ef       	ldi	r17, 0xFF	; 255
-     362:	ee 24       	eor	r14, r14
-     364:	0e 94 62 01 	call	0x2c4	; 0x2c4 <wl_send_packet>
-     368:	1f 91       	pop	r17
-     36a:	0f 91       	pop	r16
-     36c:	ef 90       	pop	r14
-     36e:	cf 90       	pop	r12
-     370:	08 95       	ret
+000002e2 <wl_send_pan_packet>:
+     2e2:	cf 92       	push	r12
+     2e4:	ef 92       	push	r14
+     2e6:	0f 93       	push	r16
+     2e8:	1f 93       	push	r17
+     2ea:	c0 2e       	mov	r12, r16
+     2ec:	0f ef       	ldi	r16, 0xFF	; 255
+     2ee:	1f ef       	ldi	r17, 0xFF	; 255
+     2f0:	ee 24       	eor	r14, r14
+     2f2:	0e 94 29 01 	call	0x252	; 0x252 <wl_send_packet>
+     2f6:	1f 91       	pop	r17
+     2f8:	0f 91       	pop	r16
+     2fa:	ef 90       	pop	r14
+     2fc:	cf 90       	pop	r12
+     2fe:	08 95       	ret
 
-00000372 <wl_send_global_packet>:
-     372:	cf 92       	push	r12
-     374:	ef 92       	push	r14
-     376:	0f 93       	push	r16
-     378:	1f 93       	push	r17
-     37a:	c0 2e       	mov	r12, r16
-     37c:	0f ef       	ldi	r16, 0xFF	; 255
-     37e:	1f ef       	ldi	r17, 0xFF	; 255
-     380:	74 e0       	ldi	r23, 0x04	; 4
-     382:	e7 2e       	mov	r14, r23
-     384:	0e 94 62 01 	call	0x2c4	; 0x2c4 <wl_send_packet>
-     388:	1f 91       	pop	r17
-     38a:	0f 91       	pop	r16
-     38c:	ef 90       	pop	r14
-     38e:	cf 90       	pop	r12
-     390:	08 95       	ret
+00000300 <wl_send_global_packet>:
+     300:	cf 92       	push	r12
+     302:	ef 92       	push	r14
+     304:	0f 93       	push	r16
+     306:	1f 93       	push	r17
+     308:	c0 2e       	mov	r12, r16
+     30a:	0f ef       	ldi	r16, 0xFF	; 255
+     30c:	1f ef       	ldi	r17, 0xFF	; 255
+     30e:	74 e0       	ldi	r23, 0x04	; 4
+     310:	e7 2e       	mov	r14, r23
+     312:	0e 94 29 01 	call	0x252	; 0x252 <wl_send_packet>
+     316:	1f 91       	pop	r17
+     318:	0f 91       	pop	r16
+     31a:	ef 90       	pop	r14
+     31c:	cf 90       	pop	r12
+     31e:	08 95       	ret
 
-00000392 <wl_send_robot_to_robot_packet>:
-     392:	cf 92       	push	r12
-     394:	ef 92       	push	r14
-     396:	0f 93       	push	r16
-     398:	1f 93       	push	r17
-     39a:	ce 2c       	mov	r12, r14
-     39c:	ee 24       	eor	r14, r14
-     39e:	0e 94 62 01 	call	0x2c4	; 0x2c4 <wl_send_packet>
-     3a2:	1f 91       	pop	r17
-     3a4:	0f 91       	pop	r16
-     3a6:	ef 90       	pop	r14
-     3a8:	cf 90       	pop	r12
-     3aa:	08 95       	ret
+00000320 <wl_send_robot_to_robot_packet>:
+     320:	cf 92       	push	r12
+     322:	ef 92       	push	r14
+     324:	0f 93       	push	r16
+     326:	1f 93       	push	r17
+     328:	ce 2c       	mov	r12, r14
+     32a:	ee 24       	eor	r14, r14
+     32c:	0e 94 29 01 	call	0x252	; 0x252 <wl_send_packet>
+     330:	1f 91       	pop	r17
+     332:	0f 91       	pop	r16
+     334:	ef 90       	pop	r14
+     336:	cf 90       	pop	r12
+     338:	08 95       	ret
 
-000003ac <wl_send_robot_to_robot_global_packet>:
-     3ac:	cf 92       	push	r12
-     3ae:	ef 92       	push	r14
-     3b0:	0f 93       	push	r16
-     3b2:	1f 93       	push	r17
-     3b4:	ce 2c       	mov	r12, r14
-     3b6:	e4 e0       	ldi	r30, 0x04	; 4
-     3b8:	ee 2e       	mov	r14, r30
-     3ba:	0e 94 62 01 	call	0x2c4	; 0x2c4 <wl_send_packet>
-     3be:	1f 91       	pop	r17
-     3c0:	0f 91       	pop	r16
-     3c2:	ef 90       	pop	r14
-     3c4:	cf 90       	pop	r12
-     3c6:	08 95       	ret
+0000033a <wl_send_robot_to_robot_global_packet>:
+     33a:	cf 92       	push	r12
+     33c:	ef 92       	push	r14
+     33e:	0f 93       	push	r16
+     340:	1f 93       	push	r17
+     342:	ce 2c       	mov	r12, r14
+     344:	e4 e0       	ldi	r30, 0x04	; 4
+     346:	ee 2e       	mov	r14, r30
+     348:	0e 94 29 01 	call	0x252	; 0x252 <wl_send_packet>
+     34c:	1f 91       	pop	r17
+     34e:	0f 91       	pop	r16
+     350:	ef 90       	pop	r14
+     352:	cf 90       	pop	r12
+     354:	08 95       	ret
 
-000003c8 <wl_get_xbee_id>:
-     3c8:	0e 94 ca 07 	call	0xf94	; 0xf94 <xbee_get_address>
-     3cc:	08 95       	ret
+00000356 <wl_get_xbee_id>:
+     356:	0e 94 f3 07 	call	0xfe6	; 0xfe6 <xbee_get_address>
+     35a:	08 95       	ret
 
-000003ce <wl_get_channel>:
-     3ce:	0e 94 c5 07 	call	0xf8a	; 0xf8a <xbee_get_channel>
-     3d2:	08 95       	ret
+0000035c <wl_get_channel>:
+     35c:	0e 94 ee 07 	call	0xfdc	; 0xfdc <xbee_get_channel>
+     360:	08 95       	ret
 
-000003d4 <wl_set_channel>:
-     3d4:	0e 94 5a 08 	call	0x10b4	; 0x10b4 <xbee_set_channel>
-     3d8:	08 95       	ret
+00000362 <wl_set_channel>:
+     362:	0e 94 83 08 	call	0x1106	; 0x1106 <xbee_set_channel>
+     366:	08 95       	ret
 
-000003da <wl_get_pan>:
-     3da:	0e 94 c0 07 	call	0xf80	; 0xf80 <xbee_get_pan_id>
-     3de:	08 95       	ret
+00000368 <wl_get_pan>:
+     368:	0e 94 e9 07 	call	0xfd2	; 0xfd2 <xbee_get_pan_id>
+     36c:	08 95       	ret
 
-000003e0 <wl_set_pan>:
-     3e0:	0e 94 7c 08 	call	0x10f8	; 0x10f8 <xbee_set_pan_id>
-     3e4:	08 95       	ret
+0000036e <wl_set_pan>:
+     36e:	0e 94 a5 08 	call	0x114a	; 0x114a <xbee_set_pan_id>
+     372:	08 95       	ret
 
-000003e6 <wl_terminate>:
-     3e6:	cf 93       	push	r28
-     3e8:	df 93       	push	r29
-     3ea:	ce ee       	ldi	r28, 0xEE	; 238
-     3ec:	d5 e0       	ldi	r29, 0x05	; 5
-     3ee:	e8 81       	ld	r30, Y
-     3f0:	f9 81       	ldd	r31, Y+1	; 0x01
-     3f2:	30 97       	sbiw	r30, 0x00	; 0
-     3f4:	31 f0       	breq	.+12     	; 0x402 <wl_terminate+0x1c>
-     3f6:	00 84       	ldd	r0, Z+8	; 0x08
-     3f8:	f1 85       	ldd	r31, Z+9	; 0x09
-     3fa:	e0 2d       	mov	r30, r0
-     3fc:	30 97       	sbiw	r30, 0x00	; 0
-     3fe:	09 f0       	breq	.+2      	; 0x402 <wl_terminate+0x1c>
-     400:	09 95       	icall
-     402:	22 96       	adiw	r28, 0x02	; 2
-     404:	86 e0       	ldi	r24, 0x06	; 6
-     406:	ce 30       	cpi	r28, 0x0E	; 14
-     408:	d8 07       	cpc	r29, r24
-     40a:	89 f7       	brne	.-30     	; 0x3ee <wl_terminate+0x8>
-     40c:	0e 94 ae 08 	call	0x115c	; 0x115c <xbee_terminate>
-     410:	df 91       	pop	r29
-     412:	cf 91       	pop	r28
-     414:	08 95       	ret
+00000374 <wl_terminate>:
+     374:	cf 93       	push	r28
+     376:	df 93       	push	r29
+     378:	ce ed       	ldi	r28, 0xDE	; 222
+     37a:	d5 e0       	ldi	r29, 0x05	; 5
+     37c:	e8 81       	ld	r30, Y
+     37e:	f9 81       	ldd	r31, Y+1	; 0x01
+     380:	30 97       	sbiw	r30, 0x00	; 0
+     382:	31 f0       	breq	.+12     	; 0x390 <wl_terminate+0x1c>
+     384:	00 84       	ldd	r0, Z+8	; 0x08
+     386:	f1 85       	ldd	r31, Z+9	; 0x09
+     388:	e0 2d       	mov	r30, r0
+     38a:	30 97       	sbiw	r30, 0x00	; 0
+     38c:	09 f0       	breq	.+2      	; 0x390 <wl_terminate+0x1c>
+     38e:	09 95       	icall
+     390:	22 96       	adiw	r28, 0x02	; 2
+     392:	85 e0       	ldi	r24, 0x05	; 5
+     394:	ce 3f       	cpi	r28, 0xFE	; 254
+     396:	d8 07       	cpc	r29, r24
+     398:	89 f7       	brne	.-30     	; 0x37c <wl_terminate+0x8>
+     39a:	0e 94 d7 08 	call	0x11ae	; 0x11ae <xbee_terminate>
+     39e:	df 91       	pop	r29
+     3a0:	cf 91       	pop	r28
+     3a2:	08 95       	ret
 
-00000416 <wl_init>:
-     416:	ee ee       	ldi	r30, 0xEE	; 238
-     418:	f5 e0       	ldi	r31, 0x05	; 5
-     41a:	11 92       	st	Z+, r1
-     41c:	11 92       	st	Z+, r1
-     41e:	26 e0       	ldi	r18, 0x06	; 6
-     420:	ee 30       	cpi	r30, 0x0E	; 14
-     422:	f2 07       	cpc	r31, r18
-     424:	d1 f7       	brne	.-12     	; 0x41a <wl_init+0x4>
-     426:	0e 94 5d 09 	call	0x12ba	; 0x12ba <xbee_lib_init>
-     42a:	8f 5f       	subi	r24, 0xFF	; 255
-     42c:	9f 4f       	sbci	r25, 0xFF	; 255
-     42e:	19 f4       	brne	.+6      	; 0x436 <wl_init+0x20>
-     430:	2f ef       	ldi	r18, 0xFF	; 255
-     432:	3f ef       	ldi	r19, 0xFF	; 255
-     434:	08 c0       	rjmp	.+16     	; 0x446 <wl_init+0x30>
-     436:	88 e0       	ldi	r24, 0x08	; 8
-     438:	90 e0       	ldi	r25, 0x00	; 0
-     43a:	6c e7       	ldi	r22, 0x7C	; 124
-     43c:	70 e0       	ldi	r23, 0x00	; 0
-     43e:	0e 94 ee 1b 	call	0x37dc	; 0x37dc <rtc_init>
-     442:	20 e0       	ldi	r18, 0x00	; 0
-     444:	30 e0       	ldi	r19, 0x00	; 0
-     446:	c9 01       	movw	r24, r18
-     448:	08 95       	ret
+000003a4 <wl_init>:
+     3a4:	ee ed       	ldi	r30, 0xDE	; 222
+     3a6:	f5 e0       	ldi	r31, 0x05	; 5
+     3a8:	11 92       	st	Z+, r1
+     3aa:	11 92       	st	Z+, r1
+     3ac:	25 e0       	ldi	r18, 0x05	; 5
+     3ae:	ee 3f       	cpi	r30, 0xFE	; 254
+     3b0:	f2 07       	cpc	r31, r18
+     3b2:	d1 f7       	brne	.-12     	; 0x3a8 <wl_init+0x4>
+     3b4:	0e 94 86 09 	call	0x130c	; 0x130c <xbee_lib_init>
+     3b8:	8f 5f       	subi	r24, 0xFF	; 255
+     3ba:	9f 4f       	sbci	r25, 0xFF	; 255
+     3bc:	19 f4       	brne	.+6      	; 0x3c4 <wl_init+0x20>
+     3be:	2f ef       	ldi	r18, 0xFF	; 255
+     3c0:	3f ef       	ldi	r19, 0xFF	; 255
+     3c2:	08 c0       	rjmp	.+16     	; 0x3d4 <wl_init+0x30>
+     3c4:	88 e0       	ldi	r24, 0x08	; 8
+     3c6:	90 e0       	ldi	r25, 0x00	; 0
+     3c8:	6c e7       	ldi	r22, 0x7C	; 124
+     3ca:	70 e0       	ldi	r23, 0x00	; 0
+     3cc:	0e 94 17 1c 	call	0x382e	; 0x382e <rtc_init>
+     3d0:	20 e0       	ldi	r18, 0x00	; 0
+     3d2:	30 e0       	ldi	r19, 0x00	; 0
+     3d4:	c9 01       	movw	r24, r18
+     3d6:	08 95       	ret
 
-0000044a <wl_token_ring_leave>:
-     44a:	84 e0       	ldi	r24, 0x04	; 4
-     44c:	90 e0       	ldi	r25, 0x00	; 0
-     44e:	90 93 13 06 	sts	0x0613, r25
-     452:	80 93 12 06 	sts	0x0612, r24
-     456:	08 95       	ret
+000003d8 <wl_token_ring_leave>:
+     3d8:	84 e0       	ldi	r24, 0x04	; 4
+     3da:	90 e0       	ldi	r25, 0x00	; 0
+     3dc:	90 93 03 06 	sts	0x0603, r25
+     3e0:	80 93 02 06 	sts	0x0602, r24
+     3e4:	08 95       	ret
 
-00000458 <wl_token_ring_set_bom_functions>:
-     458:	90 93 1e 01 	sts	0x011E, r25
-     45c:	80 93 1d 01 	sts	0x011D, r24
-     460:	70 93 20 01 	sts	0x0120, r23
-     464:	60 93 1f 01 	sts	0x011F, r22
-     468:	50 93 22 01 	sts	0x0122, r21
-     46c:	40 93 21 01 	sts	0x0121, r20
-     470:	08 95       	ret
+000003e6 <wl_token_ring_set_bom_functions>:
+     3e6:	90 93 0f 01 	sts	0x010F, r25
+     3ea:	80 93 0e 01 	sts	0x010E, r24
+     3ee:	70 93 11 01 	sts	0x0111, r23
+     3f2:	60 93 10 01 	sts	0x0110, r22
+     3f6:	50 93 13 01 	sts	0x0113, r21
+     3fa:	40 93 12 01 	sts	0x0112, r20
+     3fe:	08 95       	ret
 
-00000472 <wl_token_ring_cleanup>:
-     472:	08 95       	ret
+00000400 <wl_token_ring_cleanup>:
+     400:	08 95       	ret
 
-00000474 <wl_token_ring_response_handler>:
-     474:	08 95       	ret
+00000402 <wl_token_ring_response_handler>:
+     402:	08 95       	ret
 
-00000476 <wl_token_iterator_has_next>:
-     476:	20 e0       	ldi	r18, 0x00	; 0
-     478:	30 e0       	ldi	r19, 0x00	; 0
-     47a:	80 91 0e 06 	lds	r24, 0x060E
-     47e:	90 91 0f 06 	lds	r25, 0x060F
-     482:	8f 5f       	subi	r24, 0xFF	; 255
-     484:	9f 4f       	sbci	r25, 0xFF	; 255
-     486:	11 f0       	breq	.+4      	; 0x48c <wl_token_iterator_has_next+0x16>
-     488:	21 e0       	ldi	r18, 0x01	; 1
-     48a:	30 e0       	ldi	r19, 0x00	; 0
-     48c:	c9 01       	movw	r24, r18
-     48e:	08 95       	ret
+00000404 <wl_token_iterator_has_next>:
+     404:	20 e0       	ldi	r18, 0x00	; 0
+     406:	30 e0       	ldi	r19, 0x00	; 0
+     408:	80 91 fe 05 	lds	r24, 0x05FE
+     40c:	90 91 ff 05 	lds	r25, 0x05FF
+     410:	8f 5f       	subi	r24, 0xFF	; 255
+     412:	9f 4f       	sbci	r25, 0xFF	; 255
+     414:	11 f0       	breq	.+4      	; 0x41a <wl_token_iterator_has_next+0x16>
+     416:	21 e0       	ldi	r18, 0x01	; 1
+     418:	30 e0       	ldi	r19, 0x00	; 0
+     41a:	c9 01       	movw	r24, r18
+     41c:	08 95       	ret
 
-00000490 <wl_token_get_matrix_size>:
-     490:	0e 94 b0 0a 	call	0x1560	; 0x1560 <sensor_matrix_get_size>
-     494:	08 95       	ret
+0000041e <wl_token_get_matrix_size>:
+     41e:	0e 94 d9 0a 	call	0x15b2	; 0x15b2 <sensor_matrix_get_size>
+     422:	08 95       	ret
 
-00000496 <wl_token_get_num_robots>:
-     496:	0e 94 ab 0a 	call	0x1556	; 0x1556 <sensor_matrix_get_joined>
-     49a:	08 95       	ret
+00000424 <wl_token_get_num_robots>:
+     424:	0e 94 d4 0a 	call	0x15a8	; 0x15a8 <sensor_matrix_get_joined>
+     428:	08 95       	ret
 
-0000049c <wl_token_get_robots_in_ring>:
-     49c:	0e 94 ab 0a 	call	0x1556	; 0x1556 <sensor_matrix_get_joined>
-     4a0:	08 95       	ret
+0000042a <wl_token_get_robots_in_ring>:
+     42a:	0e 94 d4 0a 	call	0x15a8	; 0x15a8 <sensor_matrix_get_joined>
+     42e:	08 95       	ret
 
-000004a2 <wl_token_iterator_next>:
-     4a2:	0f 93       	push	r16
-     4a4:	1f 93       	push	r17
-     4a6:	cf 93       	push	r28
-     4a8:	df 93       	push	r29
-     4aa:	c0 91 0e 06 	lds	r28, 0x060E
-     4ae:	d0 91 0f 06 	lds	r29, 0x060F
-     4b2:	d7 fd       	sbrc	r29, 7
-     4b4:	30 c0       	rjmp	.+96     	; 0x516 <wl_token_iterator_next+0x74>
-     4b6:	21 96       	adiw	r28, 0x01	; 1
-     4b8:	d0 93 0f 06 	sts	0x060F, r29
-     4bc:	c0 93 0e 06 	sts	0x060E, r28
-     4c0:	21 97       	sbiw	r28, 0x01	; 1
-     4c2:	09 c0       	rjmp	.+18     	; 0x4d6 <wl_token_iterator_next+0x34>
-     4c4:	80 91 0e 06 	lds	r24, 0x060E
-     4c8:	90 91 0f 06 	lds	r25, 0x060F
-     4cc:	01 96       	adiw	r24, 0x01	; 1
-     4ce:	90 93 0f 06 	sts	0x060F, r25
-     4d2:	80 93 0e 06 	sts	0x060E, r24
-     4d6:	80 91 0e 06 	lds	r24, 0x060E
-     4da:	90 91 0f 06 	lds	r25, 0x060F
-     4de:	0e 94 9d 0a 	call	0x153a	; 0x153a <sensor_matrix_get_in_ring>
-     4e2:	89 2b       	or	r24, r25
-     4e4:	49 f4       	brne	.+18     	; 0x4f8 <wl_token_iterator_next+0x56>
-     4e6:	00 91 0e 06 	lds	r16, 0x060E
-     4ea:	10 91 0f 06 	lds	r17, 0x060F
-     4ee:	0e 94 b0 0a 	call	0x1560	; 0x1560 <sensor_matrix_get_size>
-     4f2:	08 17       	cp	r16, r24
-     4f4:	19 07       	cpc	r17, r25
-     4f6:	34 f3       	brlt	.-52     	; 0x4c4 <wl_token_iterator_next+0x22>
-     4f8:	00 91 0e 06 	lds	r16, 0x060E
-     4fc:	10 91 0f 06 	lds	r17, 0x060F
-     500:	0e 94 b0 0a 	call	0x1560	; 0x1560 <sensor_matrix_get_size>
-     504:	08 17       	cp	r16, r24
-     506:	19 07       	cpc	r17, r25
-     508:	31 f4       	brne	.+12     	; 0x516 <wl_token_iterator_next+0x74>
-     50a:	8f ef       	ldi	r24, 0xFF	; 255
-     50c:	9f ef       	ldi	r25, 0xFF	; 255
-     50e:	90 93 0f 06 	sts	0x060F, r25
-     512:	80 93 0e 06 	sts	0x060E, r24
-     516:	ce 01       	movw	r24, r28
-     518:	df 91       	pop	r29
-     51a:	cf 91       	pop	r28
-     51c:	1f 91       	pop	r17
-     51e:	0f 91       	pop	r16
-     520:	08 95       	ret
+00000430 <wl_token_iterator_next>:
+     430:	0f 93       	push	r16
+     432:	1f 93       	push	r17
+     434:	cf 93       	push	r28
+     436:	df 93       	push	r29
+     438:	c0 91 fe 05 	lds	r28, 0x05FE
+     43c:	d0 91 ff 05 	lds	r29, 0x05FF
+     440:	d7 fd       	sbrc	r29, 7
+     442:	30 c0       	rjmp	.+96     	; 0x4a4 <wl_token_iterator_next+0x74>
+     444:	21 96       	adiw	r28, 0x01	; 1
+     446:	d0 93 ff 05 	sts	0x05FF, r29
+     44a:	c0 93 fe 05 	sts	0x05FE, r28
+     44e:	21 97       	sbiw	r28, 0x01	; 1
+     450:	09 c0       	rjmp	.+18     	; 0x464 <wl_token_iterator_next+0x34>
+     452:	80 91 fe 05 	lds	r24, 0x05FE
+     456:	90 91 ff 05 	lds	r25, 0x05FF
+     45a:	01 96       	adiw	r24, 0x01	; 1
+     45c:	90 93 ff 05 	sts	0x05FF, r25
+     460:	80 93 fe 05 	sts	0x05FE, r24
+     464:	80 91 fe 05 	lds	r24, 0x05FE
+     468:	90 91 ff 05 	lds	r25, 0x05FF
+     46c:	0e 94 c6 0a 	call	0x158c	; 0x158c <sensor_matrix_get_in_ring>
+     470:	89 2b       	or	r24, r25
+     472:	49 f4       	brne	.+18     	; 0x486 <wl_token_iterator_next+0x56>
+     474:	00 91 fe 05 	lds	r16, 0x05FE
+     478:	10 91 ff 05 	lds	r17, 0x05FF
+     47c:	0e 94 d9 0a 	call	0x15b2	; 0x15b2 <sensor_matrix_get_size>
+     480:	08 17       	cp	r16, r24
+     482:	19 07       	cpc	r17, r25
+     484:	34 f3       	brlt	.-52     	; 0x452 <wl_token_iterator_next+0x22>
+     486:	00 91 fe 05 	lds	r16, 0x05FE
+     48a:	10 91 ff 05 	lds	r17, 0x05FF
+     48e:	0e 94 d9 0a 	call	0x15b2	; 0x15b2 <sensor_matrix_get_size>
+     492:	08 17       	cp	r16, r24
+     494:	19 07       	cpc	r17, r25
+     496:	31 f4       	brne	.+12     	; 0x4a4 <wl_token_iterator_next+0x74>
+     498:	8f ef       	ldi	r24, 0xFF	; 255
+     49a:	9f ef       	ldi	r25, 0xFF	; 255
+     49c:	90 93 ff 05 	sts	0x05FF, r25
+     4a0:	80 93 fe 05 	sts	0x05FE, r24
+     4a4:	ce 01       	movw	r24, r28
+     4a6:	df 91       	pop	r29
+     4a8:	cf 91       	pop	r28
+     4aa:	1f 91       	pop	r17
+     4ac:	0f 91       	pop	r16
+     4ae:	08 95       	ret
 
-00000522 <wl_token_iterator_begin>:
-     522:	cf 93       	push	r28
-     524:	df 93       	push	r29
-     526:	c0 e0       	ldi	r28, 0x00	; 0
-     528:	d0 e0       	ldi	r29, 0x00	; 0
-     52a:	01 c0       	rjmp	.+2      	; 0x52e <wl_token_iterator_begin+0xc>
-     52c:	21 96       	adiw	r28, 0x01	; 1
-     52e:	ce 01       	movw	r24, r28
-     530:	0e 94 9d 0a 	call	0x153a	; 0x153a <sensor_matrix_get_in_ring>
-     534:	89 2b       	or	r24, r25
-     536:	29 f4       	brne	.+10     	; 0x542 <wl_token_iterator_begin+0x20>
-     538:	0e 94 b0 0a 	call	0x1560	; 0x1560 <sensor_matrix_get_size>
-     53c:	c8 17       	cp	r28, r24
-     53e:	d9 07       	cpc	r29, r25
-     540:	ac f3       	brlt	.-22     	; 0x52c <wl_token_iterator_begin+0xa>
-     542:	0e 94 b0 0a 	call	0x1560	; 0x1560 <sensor_matrix_get_size>
-     546:	c8 17       	cp	r28, r24
-     548:	d9 07       	cpc	r29, r25
-     54a:	11 f4       	brne	.+4      	; 0x550 <wl_token_iterator_begin+0x2e>
-     54c:	cf ef       	ldi	r28, 0xFF	; 255
-     54e:	df ef       	ldi	r29, 0xFF	; 255
-     550:	d0 93 0f 06 	sts	0x060F, r29
-     554:	c0 93 0e 06 	sts	0x060E, r28
-     558:	df 91       	pop	r29
-     55a:	cf 91       	pop	r28
-     55c:	08 95       	ret
+000004b0 <wl_token_iterator_begin>:
+     4b0:	cf 93       	push	r28
+     4b2:	df 93       	push	r29
+     4b4:	c0 e0       	ldi	r28, 0x00	; 0
+     4b6:	d0 e0       	ldi	r29, 0x00	; 0
+     4b8:	01 c0       	rjmp	.+2      	; 0x4bc <wl_token_iterator_begin+0xc>
+     4ba:	21 96       	adiw	r28, 0x01	; 1
+     4bc:	ce 01       	movw	r24, r28
+     4be:	0e 94 c6 0a 	call	0x158c	; 0x158c <sensor_matrix_get_in_ring>
+     4c2:	89 2b       	or	r24, r25
+     4c4:	29 f4       	brne	.+10     	; 0x4d0 <wl_token_iterator_begin+0x20>
+     4c6:	0e 94 d9 0a 	call	0x15b2	; 0x15b2 <sensor_matrix_get_size>
+     4ca:	c8 17       	cp	r28, r24
+     4cc:	d9 07       	cpc	r29, r25
+     4ce:	ac f3       	brlt	.-22     	; 0x4ba <wl_token_iterator_begin+0xa>
+     4d0:	0e 94 d9 0a 	call	0x15b2	; 0x15b2 <sensor_matrix_get_size>
+     4d4:	c8 17       	cp	r28, r24
+     4d6:	d9 07       	cpc	r29, r25
+     4d8:	11 f4       	brne	.+4      	; 0x4de <wl_token_iterator_begin+0x2e>
+     4da:	cf ef       	ldi	r28, 0xFF	; 255
+     4dc:	df ef       	ldi	r29, 0xFF	; 255
+     4de:	d0 93 ff 05 	sts	0x05FF, r29
+     4e2:	c0 93 fe 05 	sts	0x05FE, r28
+     4e6:	df 91       	pop	r29
+     4e8:	cf 91       	pop	r28
+     4ea:	08 95       	ret
 
-0000055e <wl_token_is_robot_in_ring>:
-     55e:	0e 94 9d 0a 	call	0x153a	; 0x153a <sensor_matrix_get_in_ring>
-     562:	08 95       	ret
+000004ec <wl_token_is_robot_in_ring>:
+     4ec:	0e 94 c6 0a 	call	0x158c	; 0x158c <sensor_matrix_get_in_ring>
+     4f0:	08 95       	ret
 
-00000564 <wl_token_get_sensor_reading>:
-     564:	0f 93       	push	r16
-     566:	1f 93       	push	r17
-     568:	cf 93       	push	r28
-     56a:	df 93       	push	r29
-     56c:	ec 01       	movw	r28, r24
-     56e:	8b 01       	movw	r16, r22
-     570:	cb 01       	movw	r24, r22
-     572:	0e 94 9d 0a 	call	0x153a	; 0x153a <sensor_matrix_get_in_ring>
-     576:	89 2b       	or	r24, r25
-     578:	81 f0       	breq	.+32     	; 0x59a <wl_token_get_sensor_reading+0x36>
-     57a:	0e 94 e4 01 	call	0x3c8	; 0x3c8 <wl_get_xbee_id>
-     57e:	c8 17       	cp	r28, r24
-     580:	d9 07       	cpc	r29, r25
-     582:	29 f0       	breq	.+10     	; 0x58e <wl_token_get_sensor_reading+0x2a>
-     584:	ce 01       	movw	r24, r28
-     586:	0e 94 9d 0a 	call	0x153a	; 0x153a <sensor_matrix_get_in_ring>
-     58a:	89 2b       	or	r24, r25
-     58c:	31 f0       	breq	.+12     	; 0x59a <wl_token_get_sensor_reading+0x36>
-     58e:	ce 01       	movw	r24, r28
-     590:	b8 01       	movw	r22, r16
-     592:	0e 94 5c 0a 	call	0x14b8	; 0x14b8 <sensor_matrix_get_reading>
-     596:	9c 01       	movw	r18, r24
-     598:	02 c0       	rjmp	.+4      	; 0x59e <wl_token_get_sensor_reading+0x3a>
-     59a:	20 e0       	ldi	r18, 0x00	; 0
-     59c:	30 e0       	ldi	r19, 0x00	; 0
-     59e:	c9 01       	movw	r24, r18
-     5a0:	df 91       	pop	r29
-     5a2:	cf 91       	pop	r28
-     5a4:	1f 91       	pop	r17
-     5a6:	0f 91       	pop	r16
-     5a8:	08 95       	ret
+000004f2 <wl_token_get_sensor_reading>:
+     4f2:	0f 93       	push	r16
+     4f4:	1f 93       	push	r17
+     4f6:	cf 93       	push	r28
+     4f8:	df 93       	push	r29
+     4fa:	ec 01       	movw	r28, r24
+     4fc:	8b 01       	movw	r16, r22
+     4fe:	cb 01       	movw	r24, r22
+     500:	0e 94 c6 0a 	call	0x158c	; 0x158c <sensor_matrix_get_in_ring>
+     504:	89 2b       	or	r24, r25
+     506:	81 f0       	breq	.+32     	; 0x528 <wl_token_get_sensor_reading+0x36>
+     508:	0e 94 ab 01 	call	0x356	; 0x356 <wl_get_xbee_id>
+     50c:	c8 17       	cp	r28, r24
+     50e:	d9 07       	cpc	r29, r25
+     510:	29 f0       	breq	.+10     	; 0x51c <wl_token_get_sensor_reading+0x2a>
+     512:	ce 01       	movw	r24, r28
+     514:	0e 94 c6 0a 	call	0x158c	; 0x158c <sensor_matrix_get_in_ring>
+     518:	89 2b       	or	r24, r25
+     51a:	31 f0       	breq	.+12     	; 0x528 <wl_token_get_sensor_reading+0x36>
+     51c:	ce 01       	movw	r24, r28
+     51e:	b8 01       	movw	r22, r16
+     520:	0e 94 85 0a 	call	0x150a	; 0x150a <sensor_matrix_get_reading>
+     524:	9c 01       	movw	r18, r24
+     526:	02 c0       	rjmp	.+4      	; 0x52c <wl_token_get_sensor_reading+0x3a>
+     528:	20 e0       	ldi	r18, 0x00	; 0
+     52a:	30 e0       	ldi	r19, 0x00	; 0
+     52c:	c9 01       	movw	r24, r18
+     52e:	df 91       	pop	r29
+     530:	cf 91       	pop	r28
+     532:	1f 91       	pop	r17
+     534:	0f 91       	pop	r16
+     536:	08 95       	ret
 
-000005aa <wl_token_get_my_sensor_reading>:
-     5aa:	0f 93       	push	r16
-     5ac:	1f 93       	push	r17
-     5ae:	8c 01       	movw	r16, r24
-     5b0:	0e 94 e4 01 	call	0x3c8	; 0x3c8 <wl_get_xbee_id>
-     5b4:	b8 01       	movw	r22, r16
-     5b6:	0e 94 b2 02 	call	0x564	; 0x564 <wl_token_get_sensor_reading>
-     5ba:	1f 91       	pop	r17
-     5bc:	0f 91       	pop	r16
-     5be:	08 95       	ret
+00000538 <wl_token_get_my_sensor_reading>:
+     538:	0f 93       	push	r16
+     53a:	1f 93       	push	r17
+     53c:	8c 01       	movw	r16, r24
+     53e:	0e 94 ab 01 	call	0x356	; 0x356 <wl_get_xbee_id>
+     542:	b8 01       	movw	r22, r16
+     544:	0e 94 79 02 	call	0x4f2	; 0x4f2 <wl_token_get_sensor_reading>
+     548:	1f 91       	pop	r17
+     54a:	0f 91       	pop	r16
+     54c:	08 95       	ret
 
-000005c0 <default_get_bom>:
-     5c0:	df 93       	push	r29
-     5c2:	cf 93       	push	r28
-     5c4:	00 d0       	rcall	.+0      	; 0x5c6 <default_get_bom+0x6>
-     5c6:	cd b7       	in	r28, 0x3d	; 61
-     5c8:	de b7       	in	r29, 0x3e	; 62
-     5ca:	8f ef       	ldi	r24, 0xFF	; 255
-     5cc:	9f ef       	ldi	r25, 0xFF	; 255
-     5ce:	0e 94 c6 0d 	call	0x1b8c	; 0x1b8c <bom_refresh>
-     5d2:	ce 01       	movw	r24, r28
-     5d4:	01 96       	adiw	r24, 0x01	; 1
-     5d6:	0e 94 d7 0a 	call	0x15ae	; 0x15ae <bom_get_max10>
-     5da:	99 81       	ldd	r25, Y+1	; 0x01
-     5dc:	0f 90       	pop	r0
-     5de:	0f 90       	pop	r0
-     5e0:	cf 91       	pop	r28
-     5e2:	df 91       	pop	r29
-     5e4:	08 95       	ret
+0000054e <default_get_bom>:
+     54e:	df 93       	push	r29
+     550:	cf 93       	push	r28
+     552:	00 d0       	rcall	.+0      	; 0x554 <default_get_bom+0x6>
+     554:	cd b7       	in	r28, 0x3d	; 61
+     556:	de b7       	in	r29, 0x3e	; 62
+     558:	8f ef       	ldi	r24, 0xFF	; 255
+     55a:	9f ef       	ldi	r25, 0xFF	; 255
+     55c:	0e 94 ef 0d 	call	0x1bde	; 0x1bde <bom_refresh>
+     560:	ce 01       	movw	r24, r28
+     562:	01 96       	adiw	r24, 0x01	; 1
+     564:	0e 94 00 0b 	call	0x1600	; 0x1600 <bom_get_max10>
+     568:	99 81       	ldd	r25, Y+1	; 0x01
+     56a:	0f 90       	pop	r0
+     56c:	0f 90       	pop	r0
+     56e:	cf 91       	pop	r28
+     570:	df 91       	pop	r29
+     572:	08 95       	ret
 
-000005e6 <wl_token_ring_unregister>:
-     5e6:	83 e2       	ldi	r24, 0x23	; 35
-     5e8:	91 e0       	ldi	r25, 0x01	; 1
-     5ea:	0e 94 96 00 	call	0x12c	; 0x12c <wl_unregister_packet_group>
-     5ee:	08 95       	ret
+00000574 <wl_token_ring_unregister>:
+     574:	84 e1       	ldi	r24, 0x14	; 20
+     576:	91 e0       	ldi	r25, 0x01	; 1
+     578:	0e 94 96 00 	call	0x12c	; 0x12c <wl_unregister_packet_group>
+     57c:	08 95       	ret
 
-000005f0 <wl_token_ring_join>:
-     5f0:	0f 93       	push	r16
-     5f2:	82 e0       	ldi	r24, 0x02	; 2
-     5f4:	90 e0       	ldi	r25, 0x00	; 0
-     5f6:	90 93 13 06 	sts	0x0613, r25
-     5fa:	80 93 12 06 	sts	0x0612, r24
-     5fe:	88 e0       	ldi	r24, 0x08	; 8
-     600:	90 e0       	ldi	r25, 0x00	; 0
-     602:	90 93 32 01 	sts	0x0132, r25
-     606:	80 93 31 01 	sts	0x0131, r24
-     60a:	82 e0       	ldi	r24, 0x02	; 2
-     60c:	64 e0       	ldi	r22, 0x04	; 4
-     60e:	40 e0       	ldi	r20, 0x00	; 0
-     610:	50 e0       	ldi	r21, 0x00	; 0
-     612:	20 e0       	ldi	r18, 0x00	; 0
-     614:	30 e0       	ldi	r19, 0x00	; 0
-     616:	00 e0       	ldi	r16, 0x00	; 0
-     618:	0e 94 b9 01 	call	0x372	; 0x372 <wl_send_global_packet>
-     61c:	89 2b       	or	r24, r25
-     61e:	19 f4       	brne	.+6      	; 0x626 <wl_token_ring_join+0x36>
-     620:	20 e0       	ldi	r18, 0x00	; 0
-     622:	30 e0       	ldi	r19, 0x00	; 0
-     624:	02 c0       	rjmp	.+4      	; 0x62a <wl_token_ring_join+0x3a>
-     626:	2f ef       	ldi	r18, 0xFF	; 255
-     628:	3f ef       	ldi	r19, 0xFF	; 255
-     62a:	c9 01       	movw	r24, r18
-     62c:	0f 91       	pop	r16
-     62e:	08 95       	ret
+0000057e <wl_token_ring_join>:
+     57e:	0f 93       	push	r16
+     580:	82 e0       	ldi	r24, 0x02	; 2
+     582:	90 e0       	ldi	r25, 0x00	; 0
+     584:	90 93 03 06 	sts	0x0603, r25
+     588:	80 93 02 06 	sts	0x0602, r24
+     58c:	88 e0       	ldi	r24, 0x08	; 8
+     58e:	90 e0       	ldi	r25, 0x00	; 0
+     590:	90 93 23 01 	sts	0x0123, r25
+     594:	80 93 22 01 	sts	0x0122, r24
+     598:	82 e0       	ldi	r24, 0x02	; 2
+     59a:	64 e0       	ldi	r22, 0x04	; 4
+     59c:	40 e0       	ldi	r20, 0x00	; 0
+     59e:	50 e0       	ldi	r21, 0x00	; 0
+     5a0:	20 e0       	ldi	r18, 0x00	; 0
+     5a2:	30 e0       	ldi	r19, 0x00	; 0
+     5a4:	00 e0       	ldi	r16, 0x00	; 0
+     5a6:	0e 94 80 01 	call	0x300	; 0x300 <wl_send_global_packet>
+     5aa:	89 2b       	or	r24, r25
+     5ac:	19 f4       	brne	.+6      	; 0x5b4 <wl_token_ring_join+0x36>
+     5ae:	20 e0       	ldi	r18, 0x00	; 0
+     5b0:	30 e0       	ldi	r19, 0x00	; 0
+     5b2:	02 c0       	rjmp	.+4      	; 0x5b8 <wl_token_ring_join+0x3a>
+     5b4:	2f ef       	ldi	r18, 0xFF	; 255
+     5b6:	3f ef       	ldi	r19, 0xFF	; 255
+     5b8:	c9 01       	movw	r24, r18
+     5ba:	0f 91       	pop	r16
+     5bc:	08 95       	ret
 
-00000630 <wl_token_pass_token>:
-     630:	8f 92       	push	r8
-     632:	9f 92       	push	r9
-     634:	af 92       	push	r10
-     636:	bf 92       	push	r11
-     638:	df 92       	push	r13
-     63a:	ef 92       	push	r14
-     63c:	ff 92       	push	r15
-     63e:	0f 93       	push	r16
-     640:	1f 93       	push	r17
-     642:	df 93       	push	r29
-     644:	cf 93       	push	r28
-     646:	cd b7       	in	r28, 0x3d	; 61
-     648:	de b7       	in	r29, 0x3e	; 62
-     64a:	8d b6       	in	r8, 0x3d	; 61
-     64c:	9e b6       	in	r9, 0x3e	; 62
-     64e:	0e 94 e4 01 	call	0x3c8	; 0x3c8 <wl_get_xbee_id>
-     652:	8c 01       	movw	r16, r24
-     654:	0e 94 b0 0a 	call	0x1560	; 0x1560 <sensor_matrix_get_size>
-     658:	9c 01       	movw	r18, r24
-     65a:	22 0f       	add	r18, r18
-     65c:	33 1f       	adc	r19, r19
-     65e:	28 0f       	add	r18, r24
-     660:	39 1f       	adc	r19, r25
-     662:	8d b7       	in	r24, 0x3d	; 61
-     664:	9e b7       	in	r25, 0x3e	; 62
-     666:	82 1b       	sub	r24, r18
-     668:	93 0b       	sbc	r25, r19
-     66a:	0f b6       	in	r0, 0x3f	; 63
-     66c:	f8 94       	cli
-     66e:	9e bf       	out	0x3e, r25	; 62
-     670:	0f be       	out	0x3f, r0	; 63
-     672:	8d bf       	out	0x3d, r24	; 61
-     674:	ad b6       	in	r10, 0x3d	; 61
-     676:	be b6       	in	r11, 0x3e	; 62
-     678:	08 94       	sec
-     67a:	a1 1c       	adc	r10, r1
-     67c:	b1 1c       	adc	r11, r1
-     67e:	80 91 33 01 	lds	r24, 0x0133
-     682:	90 91 34 01 	lds	r25, 0x0134
-     686:	2f ef       	ldi	r18, 0xFF	; 255
-     688:	8f 3f       	cpi	r24, 0xFF	; 255
-     68a:	92 07       	cpc	r25, r18
-     68c:	81 f4       	brne	.+32     	; 0x6ae <wl_token_pass_token+0x7e>
-     68e:	0f 5f       	subi	r16, 0xFF	; 255
-     690:	1f 4f       	sbci	r17, 0xFF	; 255
-     692:	0e 94 b0 0a 	call	0x1560	; 0x1560 <sensor_matrix_get_size>
-     696:	08 17       	cp	r16, r24
-     698:	19 07       	cpc	r17, r25
-     69a:	11 f4       	brne	.+4      	; 0x6a0 <wl_token_pass_token+0x70>
-     69c:	00 e0       	ldi	r16, 0x00	; 0
-     69e:	10 e0       	ldi	r17, 0x00	; 0
-     6a0:	c8 01       	movw	r24, r16
-     6a2:	0e 94 9d 0a 	call	0x153a	; 0x153a <sensor_matrix_get_in_ring>
-     6a6:	89 2b       	or	r24, r25
-     6a8:	91 f3       	breq	.-28     	; 0x68e <wl_token_pass_token+0x5e>
-     6aa:	d0 2e       	mov	r13, r16
-     6ac:	0c c0       	rjmp	.+24     	; 0x6c6 <wl_token_pass_token+0x96>
-     6ae:	61 e0       	ldi	r22, 0x01	; 1
-     6b0:	70 e0       	ldi	r23, 0x00	; 0
-     6b2:	0e 94 73 0a 	call	0x14e6	; 0x14e6 <sensor_matrix_set_in_ring>
-     6b6:	d0 90 33 01 	lds	r13, 0x0133
-     6ba:	8f ef       	ldi	r24, 0xFF	; 255
-     6bc:	9f ef       	ldi	r25, 0xFF	; 255
-     6be:	90 93 34 01 	sts	0x0134, r25
-     6c2:	80 93 33 01 	sts	0x0133, r24
-     6c6:	00 e0       	ldi	r16, 0x00	; 0
-     6c8:	10 e0       	ldi	r17, 0x00	; 0
-     6ca:	ee 24       	eor	r14, r14
-     6cc:	ff 24       	eor	r15, r15
-     6ce:	22 c0       	rjmp	.+68     	; 0x714 <wl_token_pass_token+0xe4>
-     6d0:	c8 01       	movw	r24, r16
-     6d2:	0e 94 9d 0a 	call	0x153a	; 0x153a <sensor_matrix_get_in_ring>
-     6d6:	89 2b       	or	r24, r25
-     6d8:	d9 f0       	breq	.+54     	; 0x710 <wl_token_pass_token+0xe0>
-     6da:	0e 94 e4 01 	call	0x3c8	; 0x3c8 <wl_get_xbee_id>
-     6de:	08 17       	cp	r16, r24
-     6e0:	19 07       	cpc	r17, r25
-     6e2:	b1 f0       	breq	.+44     	; 0x710 <wl_token_pass_token+0xe0>
-     6e4:	0e 94 e4 01 	call	0x3c8	; 0x3c8 <wl_get_xbee_id>
-     6e8:	b8 01       	movw	r22, r16
-     6ea:	0e 94 5c 0a 	call	0x14b8	; 0x14b8 <sensor_matrix_get_reading>
-     6ee:	dc 01       	movw	r26, r24
-     6f0:	f7 01       	movw	r30, r14
-     6f2:	ee 0f       	add	r30, r30
-     6f4:	ff 1f       	adc	r31, r31
-     6f6:	ee 0d       	add	r30, r14
-     6f8:	ff 1d       	adc	r31, r15
-     6fa:	ea 0d       	add	r30, r10
-     6fc:	fb 1d       	adc	r31, r11
-     6fe:	00 83       	st	Z, r16
-     700:	8c 91       	ld	r24, X
-     702:	81 83       	std	Z+1, r24	; 0x01
-     704:	11 96       	adiw	r26, 0x01	; 1
-     706:	8c 91       	ld	r24, X
-     708:	82 83       	std	Z+2, r24	; 0x02
-     70a:	08 94       	sec
-     70c:	e1 1c       	adc	r14, r1
-     70e:	f1 1c       	adc	r15, r1
-     710:	0f 5f       	subi	r16, 0xFF	; 255
-     712:	1f 4f       	sbci	r17, 0xFF	; 255
-     714:	0e 94 b0 0a 	call	0x1560	; 0x1560 <sensor_matrix_get_size>
-     718:	08 17       	cp	r16, r24
-     71a:	19 07       	cpc	r17, r25
-     71c:	cc f2       	brlt	.-78     	; 0x6d0 <wl_token_pass_token+0xa0>
-     71e:	97 01       	movw	r18, r14
-     720:	22 0f       	add	r18, r18
-     722:	33 1f       	adc	r19, r19
-     724:	2e 0d       	add	r18, r14
-     726:	3f 1d       	adc	r19, r15
-     728:	82 e0       	ldi	r24, 0x02	; 2
-     72a:	62 e0       	ldi	r22, 0x02	; 2
-     72c:	a5 01       	movw	r20, r10
-     72e:	00 e0       	ldi	r16, 0x00	; 0
-     730:	0e 94 b9 01 	call	0x372	; 0x372 <wl_send_global_packet>
-     734:	89 2b       	or	r24, r25
-     736:	d9 f4       	brne	.+54     	; 0x76e <wl_token_pass_token+0x13e>
-     738:	82 e0       	ldi	r24, 0x02	; 2
-     73a:	61 e0       	ldi	r22, 0x01	; 1
-     73c:	40 e0       	ldi	r20, 0x00	; 0
-     73e:	50 e0       	ldi	r21, 0x00	; 0
-     740:	20 e0       	ldi	r18, 0x00	; 0
-     742:	30 e0       	ldi	r19, 0x00	; 0
-     744:	0d 2d       	mov	r16, r13
-     746:	10 e0       	ldi	r17, 0x00	; 0
-     748:	92 e0       	ldi	r25, 0x02	; 2
-     74a:	e9 2e       	mov	r14, r25
-     74c:	0e 94 d6 01 	call	0x3ac	; 0x3ac <wl_send_robot_to_robot_global_packet>
-     750:	89 2b       	or	r24, r25
-     752:	69 f4       	brne	.+26     	; 0x76e <wl_token_pass_token+0x13e>
-     754:	d0 92 2d 01 	sts	0x012D, r13
-     758:	10 92 2e 01 	sts	0x012E, r1
-     75c:	84 e0       	ldi	r24, 0x04	; 4
-     75e:	90 e0       	ldi	r25, 0x00	; 0
-     760:	90 93 30 01 	sts	0x0130, r25
-     764:	80 93 2f 01 	sts	0x012F, r24
-     768:	20 e0       	ldi	r18, 0x00	; 0
-     76a:	30 e0       	ldi	r19, 0x00	; 0
-     76c:	02 c0       	rjmp	.+4      	; 0x772 <wl_token_pass_token+0x142>
-     76e:	2f ef       	ldi	r18, 0xFF	; 255
-     770:	3f ef       	ldi	r19, 0xFF	; 255
-     772:	c9 01       	movw	r24, r18
-     774:	0f b6       	in	r0, 0x3f	; 63
-     776:	f8 94       	cli
-     778:	9e be       	out	0x3e, r9	; 62
-     77a:	0f be       	out	0x3f, r0	; 63
-     77c:	8d be       	out	0x3d, r8	; 61
-     77e:	cf 91       	pop	r28
-     780:	df 91       	pop	r29
-     782:	1f 91       	pop	r17
-     784:	0f 91       	pop	r16
-     786:	ff 90       	pop	r15
-     788:	ef 90       	pop	r14
-     78a:	df 90       	pop	r13
-     78c:	bf 90       	pop	r11
-     78e:	af 90       	pop	r10
-     790:	9f 90       	pop	r9
-     792:	8f 90       	pop	r8
-     794:	08 95       	ret
+000005be <wl_token_pass_token>:
+     5be:	8f 92       	push	r8
+     5c0:	9f 92       	push	r9
+     5c2:	af 92       	push	r10
+     5c4:	bf 92       	push	r11
+     5c6:	df 92       	push	r13
+     5c8:	ef 92       	push	r14
+     5ca:	ff 92       	push	r15
+     5cc:	0f 93       	push	r16
+     5ce:	1f 93       	push	r17
+     5d0:	df 93       	push	r29
+     5d2:	cf 93       	push	r28
+     5d4:	cd b7       	in	r28, 0x3d	; 61
+     5d6:	de b7       	in	r29, 0x3e	; 62
+     5d8:	8d b6       	in	r8, 0x3d	; 61
+     5da:	9e b6       	in	r9, 0x3e	; 62
+     5dc:	0e 94 ab 01 	call	0x356	; 0x356 <wl_get_xbee_id>
+     5e0:	8c 01       	movw	r16, r24
+     5e2:	0e 94 d9 0a 	call	0x15b2	; 0x15b2 <sensor_matrix_get_size>
+     5e6:	9c 01       	movw	r18, r24
+     5e8:	22 0f       	add	r18, r18
+     5ea:	33 1f       	adc	r19, r19
+     5ec:	28 0f       	add	r18, r24
+     5ee:	39 1f       	adc	r19, r25
+     5f0:	8d b7       	in	r24, 0x3d	; 61
+     5f2:	9e b7       	in	r25, 0x3e	; 62
+     5f4:	82 1b       	sub	r24, r18
+     5f6:	93 0b       	sbc	r25, r19
+     5f8:	0f b6       	in	r0, 0x3f	; 63
+     5fa:	f8 94       	cli
+     5fc:	9e bf       	out	0x3e, r25	; 62
+     5fe:	0f be       	out	0x3f, r0	; 63
+     600:	8d bf       	out	0x3d, r24	; 61
+     602:	ad b6       	in	r10, 0x3d	; 61
+     604:	be b6       	in	r11, 0x3e	; 62
+     606:	08 94       	sec
+     608:	a1 1c       	adc	r10, r1
+     60a:	b1 1c       	adc	r11, r1
+     60c:	80 91 24 01 	lds	r24, 0x0124
+     610:	90 91 25 01 	lds	r25, 0x0125
+     614:	2f ef       	ldi	r18, 0xFF	; 255
+     616:	8f 3f       	cpi	r24, 0xFF	; 255
+     618:	92 07       	cpc	r25, r18
+     61a:	81 f4       	brne	.+32     	; 0x63c <wl_token_pass_token+0x7e>
+     61c:	0f 5f       	subi	r16, 0xFF	; 255
+     61e:	1f 4f       	sbci	r17, 0xFF	; 255
+     620:	0e 94 d9 0a 	call	0x15b2	; 0x15b2 <sensor_matrix_get_size>
+     624:	08 17       	cp	r16, r24
+     626:	19 07       	cpc	r17, r25
+     628:	11 f4       	brne	.+4      	; 0x62e <wl_token_pass_token+0x70>
+     62a:	00 e0       	ldi	r16, 0x00	; 0
+     62c:	10 e0       	ldi	r17, 0x00	; 0
+     62e:	c8 01       	movw	r24, r16
+     630:	0e 94 c6 0a 	call	0x158c	; 0x158c <sensor_matrix_get_in_ring>
+     634:	89 2b       	or	r24, r25
+     636:	91 f3       	breq	.-28     	; 0x61c <wl_token_pass_token+0x5e>
+     638:	d0 2e       	mov	r13, r16
+     63a:	0c c0       	rjmp	.+24     	; 0x654 <wl_token_pass_token+0x96>
+     63c:	61 e0       	ldi	r22, 0x01	; 1
+     63e:	70 e0       	ldi	r23, 0x00	; 0
+     640:	0e 94 9c 0a 	call	0x1538	; 0x1538 <sensor_matrix_set_in_ring>
+     644:	d0 90 24 01 	lds	r13, 0x0124
+     648:	8f ef       	ldi	r24, 0xFF	; 255
+     64a:	9f ef       	ldi	r25, 0xFF	; 255
+     64c:	90 93 25 01 	sts	0x0125, r25
+     650:	80 93 24 01 	sts	0x0124, r24
+     654:	00 e0       	ldi	r16, 0x00	; 0
+     656:	10 e0       	ldi	r17, 0x00	; 0
+     658:	ee 24       	eor	r14, r14
+     65a:	ff 24       	eor	r15, r15
+     65c:	22 c0       	rjmp	.+68     	; 0x6a2 <wl_token_pass_token+0xe4>
+     65e:	c8 01       	movw	r24, r16
+     660:	0e 94 c6 0a 	call	0x158c	; 0x158c <sensor_matrix_get_in_ring>
+     664:	89 2b       	or	r24, r25
+     666:	d9 f0       	breq	.+54     	; 0x69e <wl_token_pass_token+0xe0>
+     668:	0e 94 ab 01 	call	0x356	; 0x356 <wl_get_xbee_id>
+     66c:	08 17       	cp	r16, r24
+     66e:	19 07       	cpc	r17, r25
+     670:	b1 f0       	breq	.+44     	; 0x69e <wl_token_pass_token+0xe0>
+     672:	0e 94 ab 01 	call	0x356	; 0x356 <wl_get_xbee_id>
+     676:	b8 01       	movw	r22, r16
+     678:	0e 94 85 0a 	call	0x150a	; 0x150a <sensor_matrix_get_reading>
+     67c:	dc 01       	movw	r26, r24
+     67e:	f7 01       	movw	r30, r14
+     680:	ee 0f       	add	r30, r30
+     682:	ff 1f       	adc	r31, r31
+     684:	ee 0d       	add	r30, r14
+     686:	ff 1d       	adc	r31, r15
+     688:	ea 0d       	add	r30, r10
+     68a:	fb 1d       	adc	r31, r11
+     68c:	00 83       	st	Z, r16
+     68e:	8c 91       	ld	r24, X
+     690:	81 83       	std	Z+1, r24	; 0x01
+     692:	11 96       	adiw	r26, 0x01	; 1
+     694:	8c 91       	ld	r24, X
+     696:	82 83       	std	Z+2, r24	; 0x02
+     698:	08 94       	sec
+     69a:	e1 1c       	adc	r14, r1
+     69c:	f1 1c       	adc	r15, r1
+     69e:	0f 5f       	subi	r16, 0xFF	; 255
+     6a0:	1f 4f       	sbci	r17, 0xFF	; 255
+     6a2:	0e 94 d9 0a 	call	0x15b2	; 0x15b2 <sensor_matrix_get_size>
+     6a6:	08 17       	cp	r16, r24
+     6a8:	19 07       	cpc	r17, r25
+     6aa:	cc f2       	brlt	.-78     	; 0x65e <wl_token_pass_token+0xa0>
+     6ac:	97 01       	movw	r18, r14
+     6ae:	22 0f       	add	r18, r18
+     6b0:	33 1f       	adc	r19, r19
+     6b2:	2e 0d       	add	r18, r14
+     6b4:	3f 1d       	adc	r19, r15
+     6b6:	82 e0       	ldi	r24, 0x02	; 2
+     6b8:	62 e0       	ldi	r22, 0x02	; 2
+     6ba:	a5 01       	movw	r20, r10
+     6bc:	00 e0       	ldi	r16, 0x00	; 0
+     6be:	0e 94 80 01 	call	0x300	; 0x300 <wl_send_global_packet>
+     6c2:	89 2b       	or	r24, r25
+     6c4:	d9 f4       	brne	.+54     	; 0x6fc <wl_token_pass_token+0x13e>
+     6c6:	82 e0       	ldi	r24, 0x02	; 2
+     6c8:	61 e0       	ldi	r22, 0x01	; 1
+     6ca:	40 e0       	ldi	r20, 0x00	; 0
+     6cc:	50 e0       	ldi	r21, 0x00	; 0
+     6ce:	20 e0       	ldi	r18, 0x00	; 0
+     6d0:	30 e0       	ldi	r19, 0x00	; 0
+     6d2:	0d 2d       	mov	r16, r13
+     6d4:	10 e0       	ldi	r17, 0x00	; 0
+     6d6:	92 e0       	ldi	r25, 0x02	; 2
+     6d8:	e9 2e       	mov	r14, r25
+     6da:	0e 94 9d 01 	call	0x33a	; 0x33a <wl_send_robot_to_robot_global_packet>
+     6de:	89 2b       	or	r24, r25
+     6e0:	69 f4       	brne	.+26     	; 0x6fc <wl_token_pass_token+0x13e>
+     6e2:	d0 92 1e 01 	sts	0x011E, r13
+     6e6:	10 92 1f 01 	sts	0x011F, r1
+     6ea:	84 e0       	ldi	r24, 0x04	; 4
+     6ec:	90 e0       	ldi	r25, 0x00	; 0
+     6ee:	90 93 21 01 	sts	0x0121, r25
+     6f2:	80 93 20 01 	sts	0x0120, r24
+     6f6:	20 e0       	ldi	r18, 0x00	; 0
+     6f8:	30 e0       	ldi	r19, 0x00	; 0
+     6fa:	02 c0       	rjmp	.+4      	; 0x700 <wl_token_pass_token+0x142>
+     6fc:	2f ef       	ldi	r18, 0xFF	; 255
+     6fe:	3f ef       	ldi	r19, 0xFF	; 255
+     700:	c9 01       	movw	r24, r18
+     702:	0f b6       	in	r0, 0x3f	; 63
+     704:	f8 94       	cli
+     706:	9e be       	out	0x3e, r9	; 62
+     708:	0f be       	out	0x3f, r0	; 63
+     70a:	8d be       	out	0x3d, r8	; 61
+     70c:	cf 91       	pop	r28
+     70e:	df 91       	pop	r29
+     710:	1f 91       	pop	r17
+     712:	0f 91       	pop	r16
+     714:	ff 90       	pop	r15
+     716:	ef 90       	pop	r14
+     718:	df 90       	pop	r13
+     71a:	bf 90       	pop	r11
+     71c:	af 90       	pop	r10
+     71e:	9f 90       	pop	r9
+     720:	8f 90       	pop	r8
+     722:	08 95       	ret
 
-00000796 <wl_token_ring_receive_handler>:
-     796:	6f 92       	push	r6
-     798:	7f 92       	push	r7
-     79a:	8f 92       	push	r8
-     79c:	9f 92       	push	r9
-     79e:	af 92       	push	r10
-     7a0:	bf 92       	push	r11
-     7a2:	cf 92       	push	r12
-     7a4:	df 92       	push	r13
-     7a6:	ef 92       	push	r14
-     7a8:	ff 92       	push	r15
-     7aa:	0f 93       	push	r16
-     7ac:	1f 93       	push	r17
-     7ae:	cf 93       	push	r28
-     7b0:	df 93       	push	r29
-     7b2:	7b 01       	movw	r14, r22
-     7b4:	4a 01       	movw	r8, r20
-     7b6:	e9 01       	movw	r28, r18
-     7b8:	83 30       	cpi	r24, 0x03	; 3
-     7ba:	09 f4       	brne	.+2      	; 0x7be <wl_token_ring_receive_handler+0x28>
-     7bc:	60 c1       	rjmp	.+704    	; 0xa7e <wl_token_ring_receive_handler+0x2e8>
-     7be:	84 30       	cpi	r24, 0x04	; 4
-     7c0:	30 f4       	brcc	.+12     	; 0x7ce <wl_token_ring_receive_handler+0x38>
-     7c2:	81 30       	cpi	r24, 0x01	; 1
-     7c4:	59 f0       	breq	.+22     	; 0x7dc <wl_token_ring_receive_handler+0x46>
-     7c6:	82 30       	cpi	r24, 0x02	; 2
-     7c8:	09 f0       	breq	.+2      	; 0x7cc <wl_token_ring_receive_handler+0x36>
-     7ca:	c9 c1       	rjmp	.+914    	; 0xb5e <wl_token_ring_receive_handler+0x3c8>
-     7cc:	76 c0       	rjmp	.+236    	; 0x8ba <wl_token_ring_receive_handler+0x124>
-     7ce:	84 30       	cpi	r24, 0x04	; 4
-     7d0:	09 f4       	brne	.+2      	; 0x7d4 <wl_token_ring_receive_handler+0x3e>
-     7d2:	68 c1       	rjmp	.+720    	; 0xaa4 <wl_token_ring_receive_handler+0x30e>
-     7d4:	85 30       	cpi	r24, 0x05	; 5
-     7d6:	09 f0       	breq	.+2      	; 0x7da <wl_token_ring_receive_handler+0x44>
-     7d8:	c2 c1       	rjmp	.+900    	; 0xb5e <wl_token_ring_receive_handler+0x3c8>
-     7da:	ab c1       	rjmp	.+854    	; 0xb32 <wl_token_ring_receive_handler+0x39c>
-     7dc:	80 91 2d 01 	lds	r24, 0x012D
-     7e0:	90 91 2e 01 	lds	r25, 0x012E
-     7e4:	68 17       	cp	r22, r24
-     7e6:	79 07       	cpc	r23, r25
-     7e8:	b1 f0       	breq	.+44     	; 0x816 <wl_token_ring_receive_handler+0x80>
-     7ea:	0e 94 e4 01 	call	0x3c8	; 0x3c8 <wl_get_xbee_id>
-     7ee:	20 91 2d 01 	lds	r18, 0x012D
-     7f2:	30 91 2e 01 	lds	r19, 0x012E
-     7f6:	82 17       	cp	r24, r18
-     7f8:	93 07       	cpc	r25, r19
-     7fa:	69 f0       	breq	.+26     	; 0x816 <wl_token_ring_receive_handler+0x80>
-     7fc:	80 91 10 06 	lds	r24, 0x0610
-     800:	90 91 11 06 	lds	r25, 0x0611
-     804:	03 97       	sbiw	r24, 0x03	; 3
-     806:	3c f4       	brge	.+14     	; 0x816 <wl_token_ring_receive_handler+0x80>
-     808:	80 91 12 06 	lds	r24, 0x0612
-     80c:	90 91 13 06 	lds	r25, 0x0613
-     810:	03 97       	sbiw	r24, 0x03	; 3
-     812:	09 f0       	breq	.+2      	; 0x816 <wl_token_ring_receive_handler+0x80>
-     814:	a4 c1       	rjmp	.+840    	; 0xb5e <wl_token_ring_receive_handler+0x3c8>
-     816:	cf ef       	ldi	r28, 0xFF	; 255
-     818:	df ef       	ldi	r29, 0xFF	; 255
-     81a:	d0 93 11 06 	sts	0x0611, r29
-     81e:	c0 93 10 06 	sts	0x0610, r28
-     822:	d0 93 30 01 	sts	0x0130, r29
-     826:	c0 93 2f 01 	sts	0x012F, r28
-     82a:	c7 01       	movw	r24, r14
-     82c:	61 e0       	ldi	r22, 0x01	; 1
-     82e:	70 e0       	ldi	r23, 0x00	; 0
-     830:	0e 94 73 0a 	call	0x14e6	; 0x14e6 <sensor_matrix_set_in_ring>
-     834:	80 91 12 06 	lds	r24, 0x0612
-     838:	90 91 13 06 	lds	r25, 0x0613
-     83c:	03 97       	sbiw	r24, 0x03	; 3
-     83e:	81 f4       	brne	.+32     	; 0x860 <wl_token_ring_receive_handler+0xca>
-     840:	0e 94 e4 01 	call	0x3c8	; 0x3c8 <wl_get_xbee_id>
-     844:	61 e0       	ldi	r22, 0x01	; 1
-     846:	70 e0       	ldi	r23, 0x00	; 0
-     848:	0e 94 73 0a 	call	0x14e6	; 0x14e6 <sensor_matrix_set_in_ring>
-     84c:	81 e0       	ldi	r24, 0x01	; 1
-     84e:	90 e0       	ldi	r25, 0x00	; 0
-     850:	90 93 13 06 	sts	0x0613, r25
-     854:	80 93 12 06 	sts	0x0612, r24
-     858:	d0 93 32 01 	sts	0x0132, r29
-     85c:	c0 93 31 01 	sts	0x0131, r28
-     860:	80 91 12 06 	lds	r24, 0x0612
-     864:	90 91 13 06 	lds	r25, 0x0613
-     868:	84 30       	cpi	r24, 0x04	; 4
-     86a:	91 05       	cpc	r25, r1
-     86c:	11 f0       	breq	.+4      	; 0x872 <wl_token_ring_receive_handler+0xdc>
-     86e:	89 2b       	or	r24, r25
-     870:	29 f4       	brne	.+10     	; 0x87c <wl_token_ring_receive_handler+0xe6>
-     872:	0e 94 e4 01 	call	0x3c8	; 0x3c8 <wl_get_xbee_id>
-     876:	60 e0       	ldi	r22, 0x00	; 0
-     878:	70 e0       	ldi	r23, 0x00	; 0
-     87a:	6f c1       	rjmp	.+734    	; 0xb5a <wl_token_ring_receive_handler+0x3c4>
-     87c:	82 e0       	ldi	r24, 0x02	; 2
-     87e:	63 e0       	ldi	r22, 0x03	; 3
-     880:	40 e0       	ldi	r20, 0x00	; 0
-     882:	50 e0       	ldi	r21, 0x00	; 0
-     884:	20 e0       	ldi	r18, 0x00	; 0
-     886:	30 e0       	ldi	r19, 0x00	; 0
-     888:	00 e0       	ldi	r16, 0x00	; 0
-     88a:	0e 94 b9 01 	call	0x372	; 0x372 <wl_send_global_packet>
-     88e:	e0 91 1d 01 	lds	r30, 0x011D
-     892:	f0 91 1e 01 	lds	r31, 0x011E
-     896:	09 95       	icall
-     898:	84 e6       	ldi	r24, 0x64	; 100
-     89a:	90 e0       	ldi	r25, 0x00	; 0
-     89c:	0e 94 e3 1b 	call	0x37c6	; 0x37c6 <delay_ms>
-     8a0:	e0 91 1f 01 	lds	r30, 0x011F
-     8a4:	f0 91 20 01 	lds	r31, 0x0120
-     8a8:	09 95       	icall
-     8aa:	0e 94 e4 01 	call	0x3c8	; 0x3c8 <wl_get_xbee_id>
-     8ae:	0e 94 9d 0a 	call	0x153a	; 0x153a <sensor_matrix_get_in_ring>
-     8b2:	89 2b       	or	r24, r25
-     8b4:	09 f4       	brne	.+2      	; 0x8b8 <wl_token_ring_receive_handler+0x122>
-     8b6:	53 c1       	rjmp	.+678    	; 0xb5e <wl_token_ring_receive_handler+0x3c8>
-     8b8:	39 c1       	rjmp	.+626    	; 0xb2c <wl_token_ring_receive_handler+0x396>
-     8ba:	8f ef       	ldi	r24, 0xFF	; 255
-     8bc:	9f ef       	ldi	r25, 0xFF	; 255
-     8be:	90 93 11 06 	sts	0x0611, r25
-     8c2:	80 93 10 06 	sts	0x0610, r24
-     8c6:	90 93 30 01 	sts	0x0130, r25
-     8ca:	80 93 2f 01 	sts	0x012F, r24
-     8ce:	cb 01       	movw	r24, r22
-     8d0:	61 e0       	ldi	r22, 0x01	; 1
-     8d2:	70 e0       	ldi	r23, 0x00	; 0
-     8d4:	0e 94 73 0a 	call	0x14e6	; 0x14e6 <sensor_matrix_set_in_ring>
-     8d8:	ce 01       	movw	r24, r28
-     8da:	62 e0       	ldi	r22, 0x02	; 2
-     8dc:	70 e0       	ldi	r23, 0x00	; 0
-     8de:	0e 94 13 32 	call	0x6426	; 0x6426 <__divmodhi4>
-     8e2:	5b 01       	movw	r10, r22
-     8e4:	cc 24       	eor	r12, r12
-     8e6:	dd 24       	eor	r13, r13
-     8e8:	00 e0       	ldi	r16, 0x00	; 0
-     8ea:	10 e0       	ldi	r17, 0x00	; 0
-     8ec:	66 24       	eor	r6, r6
-     8ee:	6a 94       	dec	r6
-     8f0:	76 2c       	mov	r7, r6
-     8f2:	69 c0       	rjmp	.+210    	; 0x9c6 <wl_token_ring_receive_handler+0x230>
-     8f4:	0e 15       	cp	r16, r14
-     8f6:	1f 05       	cpc	r17, r15
-     8f8:	09 f4       	brne	.+2      	; 0x8fc <wl_token_ring_receive_handler+0x166>
-     8fa:	63 c0       	rjmp	.+198    	; 0x9c2 <wl_token_ring_receive_handler+0x22c>
-     8fc:	ca 14       	cp	r12, r10
-     8fe:	db 04       	cpc	r13, r11
-     900:	74 f5       	brge	.+92     	; 0x95e <wl_token_ring_receive_handler+0x1c8>
-     902:	96 01       	movw	r18, r12
-     904:	22 0f       	add	r18, r18
-     906:	33 1f       	adc	r19, r19
-     908:	2c 0d       	add	r18, r12
-     90a:	3d 1d       	adc	r19, r13
-     90c:	f4 01       	movw	r30, r8
-     90e:	e2 0f       	add	r30, r18
-     910:	f3 1f       	adc	r31, r19
-     912:	80 81       	ld	r24, Z
-     914:	c8 2f       	mov	r28, r24
-     916:	d0 e0       	ldi	r29, 0x00	; 0
-     918:	c0 17       	cp	r28, r16
-     91a:	d1 07       	cpc	r29, r17
-     91c:	01 f5       	brne	.+64     	; 0x95e <wl_token_ring_receive_handler+0x1c8>
-     91e:	80 91 33 01 	lds	r24, 0x0133
-     922:	90 91 34 01 	lds	r25, 0x0134
-     926:	80 17       	cp	r24, r16
-     928:	91 07       	cpc	r25, r17
-     92a:	21 f4       	brne	.+8      	; 0x934 <wl_token_ring_receive_handler+0x19e>
-     92c:	70 92 34 01 	sts	0x0134, r7
-     930:	60 92 33 01 	sts	0x0133, r6
-     934:	f9 01       	movw	r30, r18
-     936:	e8 0d       	add	r30, r8
-     938:	f9 1d       	adc	r31, r9
-     93a:	41 81       	ldd	r20, Z+1	; 0x01
-     93c:	52 81       	ldd	r21, Z+2	; 0x02
-     93e:	c7 01       	movw	r24, r14
-     940:	be 01       	movw	r22, r28
-     942:	0e 94 43 0a 	call	0x1486	; 0x1486 <sensor_matrix_set_reading>
-     946:	ce 01       	movw	r24, r28
-     948:	0e 94 9d 0a 	call	0x153a	; 0x153a <sensor_matrix_get_in_ring>
-     94c:	ce 01       	movw	r24, r28
-     94e:	61 e0       	ldi	r22, 0x01	; 1
-     950:	70 e0       	ldi	r23, 0x00	; 0
-     952:	0e 94 73 0a 	call	0x14e6	; 0x14e6 <sensor_matrix_set_in_ring>
-     956:	08 94       	sec
-     958:	c1 1c       	adc	r12, r1
-     95a:	d1 1c       	adc	r13, r1
-     95c:	32 c0       	rjmp	.+100    	; 0x9c2 <wl_token_ring_receive_handler+0x22c>
-     95e:	c8 01       	movw	r24, r16
-     960:	0e 94 9d 0a 	call	0x153a	; 0x153a <sensor_matrix_get_in_ring>
-     964:	89 2b       	or	r24, r25
-     966:	29 f0       	breq	.+10     	; 0x972 <wl_token_ring_receive_handler+0x1dc>
-     968:	c8 01       	movw	r24, r16
-     96a:	60 e0       	ldi	r22, 0x00	; 0
-     96c:	70 e0       	ldi	r23, 0x00	; 0
-     96e:	0e 94 73 0a 	call	0x14e6	; 0x14e6 <sensor_matrix_set_in_ring>
-     972:	0e 94 e4 01 	call	0x3c8	; 0x3c8 <wl_get_xbee_id>
-     976:	08 17       	cp	r16, r24
-     978:	19 07       	cpc	r17, r25
-     97a:	61 f4       	brne	.+24     	; 0x994 <wl_token_ring_receive_handler+0x1fe>
-     97c:	80 91 12 06 	lds	r24, 0x0612
-     980:	90 91 13 06 	lds	r25, 0x0613
-     984:	01 97       	sbiw	r24, 0x01	; 1
-     986:	31 f4       	brne	.+12     	; 0x994 <wl_token_ring_receive_handler+0x1fe>
-     988:	10 92 13 06 	sts	0x0613, r1
-     98c:	10 92 12 06 	sts	0x0612, r1
-     990:	0e 94 f8 02 	call	0x5f0	; 0x5f0 <wl_token_ring_join>
-     994:	80 91 35 01 	lds	r24, 0x0135
-     998:	90 91 36 01 	lds	r25, 0x0136
-     99c:	08 17       	cp	r16, r24
-     99e:	19 07       	cpc	r17, r25
-     9a0:	81 f4       	brne	.+32     	; 0x9c2 <wl_token_ring_receive_handler+0x22c>
-     9a2:	0e 94 e4 01 	call	0x3c8	; 0x3c8 <wl_get_xbee_id>
-     9a6:	60 e0       	ldi	r22, 0x00	; 0
-     9a8:	70 e0       	ldi	r23, 0x00	; 0
-     9aa:	0e 94 73 0a 	call	0x14e6	; 0x14e6 <sensor_matrix_set_in_ring>
-     9ae:	10 92 13 06 	sts	0x0613, r1
-     9b2:	10 92 12 06 	sts	0x0612, r1
-     9b6:	70 92 36 01 	sts	0x0136, r7
-     9ba:	60 92 35 01 	sts	0x0135, r6
-     9be:	0e 94 f8 02 	call	0x5f0	; 0x5f0 <wl_token_ring_join>
-     9c2:	0f 5f       	subi	r16, 0xFF	; 255
-     9c4:	1f 4f       	sbci	r17, 0xFF	; 255
-     9c6:	0e 94 b0 0a 	call	0x1560	; 0x1560 <sensor_matrix_get_size>
-     9ca:	08 17       	cp	r16, r24
-     9cc:	19 07       	cpc	r17, r25
-     9ce:	0c f4       	brge	.+2      	; 0x9d2 <wl_token_ring_receive_handler+0x23c>
-     9d0:	91 cf       	rjmp	.-222    	; 0x8f4 <wl_token_ring_receive_handler+0x15e>
-     9d2:	87 01       	movw	r16, r14
-     9d4:	0f 5f       	subi	r16, 0xFF	; 255
-     9d6:	1f 4f       	sbci	r17, 0xFF	; 255
-     9d8:	0e 94 b0 0a 	call	0x1560	; 0x1560 <sensor_matrix_get_size>
-     9dc:	08 17       	cp	r16, r24
-     9de:	19 07       	cpc	r17, r25
-     9e0:	11 f4       	brne	.+4      	; 0x9e6 <wl_token_ring_receive_handler+0x250>
-     9e2:	00 e0       	ldi	r16, 0x00	; 0
-     9e4:	10 e0       	ldi	r17, 0x00	; 0
-     9e6:	c8 01       	movw	r24, r16
-     9e8:	0e 94 9d 0a 	call	0x153a	; 0x153a <sensor_matrix_get_in_ring>
-     9ec:	89 2b       	or	r24, r25
-     9ee:	19 f4       	brne	.+6      	; 0x9f6 <wl_token_ring_receive_handler+0x260>
-     9f0:	0e 15       	cp	r16, r14
-     9f2:	1f 05       	cpc	r17, r15
-     9f4:	79 f7       	brne	.-34     	; 0x9d4 <wl_token_ring_receive_handler+0x23e>
-     9f6:	e0 2e       	mov	r14, r16
-     9f8:	ff 24       	eor	r15, r15
-     9fa:	0e 94 e4 01 	call	0x3c8	; 0x3c8 <wl_get_xbee_id>
-     9fe:	e8 16       	cp	r14, r24
-     a00:	f9 06       	cpc	r15, r25
-     a02:	21 f0       	breq	.+8      	; 0xa0c <wl_token_ring_receive_handler+0x276>
-     a04:	f0 92 2e 01 	sts	0x012E, r15
-     a08:	e0 92 2d 01 	sts	0x012D, r14
-     a0c:	0e 94 e4 01 	call	0x3c8	; 0x3c8 <wl_get_xbee_id>
-     a10:	8c 01       	movw	r16, r24
-     a12:	0f 5f       	subi	r16, 0xFF	; 255
-     a14:	1f 4f       	sbci	r17, 0xFF	; 255
-     a16:	c1 e0       	ldi	r28, 0x01	; 1
-     a18:	d0 e0       	ldi	r29, 0x00	; 0
-     a1a:	0e 94 b0 0a 	call	0x1560	; 0x1560 <sensor_matrix_get_size>
-     a1e:	08 17       	cp	r16, r24
-     a20:	19 07       	cpc	r17, r25
-     a22:	11 f4       	brne	.+4      	; 0xa28 <wl_token_ring_receive_handler+0x292>
-     a24:	00 e0       	ldi	r16, 0x00	; 0
-     a26:	10 e0       	ldi	r17, 0x00	; 0
-     a28:	0e 15       	cp	r16, r14
-     a2a:	1f 05       	cpc	r17, r15
-     a2c:	49 f0       	breq	.+18     	; 0xa40 <wl_token_ring_receive_handler+0x2aa>
-     a2e:	c8 01       	movw	r24, r16
-     a30:	0e 94 9d 0a 	call	0x153a	; 0x153a <sensor_matrix_get_in_ring>
-     a34:	89 2b       	or	r24, r25
-     a36:	09 f0       	breq	.+2      	; 0xa3a <wl_token_ring_receive_handler+0x2a4>
-     a38:	21 96       	adiw	r28, 0x01	; 1
-     a3a:	0f 5f       	subi	r16, 0xFF	; 255
-     a3c:	1f 4f       	sbci	r17, 0xFF	; 255
-     a3e:	ed cf       	rjmp	.-38     	; 0xa1a <wl_token_ring_receive_handler+0x284>
-     a40:	cc 0f       	add	r28, r28
-     a42:	dd 1f       	adc	r29, r29
-     a44:	cc 0f       	add	r28, r28
-     a46:	dd 1f       	adc	r29, r29
-     a48:	d0 93 30 01 	sts	0x0130, r29
-     a4c:	c0 93 2f 01 	sts	0x012F, r28
-     a50:	0e 94 ab 0a 	call	0x1556	; 0x1556 <sensor_matrix_get_joined>
-     a54:	89 2b       	or	r24, r25
-     a56:	09 f0       	breq	.+2      	; 0xa5a <wl_token_ring_receive_handler+0x2c4>
-     a58:	82 c0       	rjmp	.+260    	; 0xb5e <wl_token_ring_receive_handler+0x3c8>
-     a5a:	80 91 12 06 	lds	r24, 0x0612
-     a5e:	90 91 13 06 	lds	r25, 0x0613
-     a62:	02 97       	sbiw	r24, 0x02	; 2
-     a64:	09 f0       	breq	.+2      	; 0xa68 <wl_token_ring_receive_handler+0x2d2>
-     a66:	7b c0       	rjmp	.+246    	; 0xb5e <wl_token_ring_receive_handler+0x3c8>
-     a68:	82 e0       	ldi	r24, 0x02	; 2
-     a6a:	61 e0       	ldi	r22, 0x01	; 1
-     a6c:	40 e0       	ldi	r20, 0x00	; 0
-     a6e:	50 e0       	ldi	r21, 0x00	; 0
-     a70:	20 e0       	ldi	r18, 0x00	; 0
-     a72:	30 e0       	ldi	r19, 0x00	; 0
-     a74:	72 e0       	ldi	r23, 0x02	; 2
-     a76:	e7 2e       	mov	r14, r23
-     a78:	0e 94 d6 01 	call	0x3ac	; 0x3ac <wl_send_robot_to_robot_global_packet>
-     a7c:	70 c0       	rjmp	.+224    	; 0xb5e <wl_token_ring_receive_handler+0x3c8>
-     a7e:	10 92 11 06 	sts	0x0611, r1
-     a82:	10 92 10 06 	sts	0x0610, r1
-     a86:	e0 91 21 01 	lds	r30, 0x0121
-     a8a:	f0 91 22 01 	lds	r31, 0x0122
-     a8e:	09 95       	icall
-     a90:	18 2f       	mov	r17, r24
-     a92:	09 2f       	mov	r16, r25
-     a94:	0e 94 e4 01 	call	0x3c8	; 0x3c8 <wl_get_xbee_id>
-     a98:	b7 01       	movw	r22, r14
-     a9a:	41 2f       	mov	r20, r17
-     a9c:	50 2f       	mov	r21, r16
-     a9e:	0e 94 43 0a 	call	0x1486	; 0x1486 <sensor_matrix_set_reading>
-     aa2:	5d c0       	rjmp	.+186    	; 0xb5e <wl_token_ring_receive_handler+0x3c8>
-     aa4:	80 91 12 06 	lds	r24, 0x0612
-     aa8:	90 91 13 06 	lds	r25, 0x0613
-     aac:	01 97       	sbiw	r24, 0x01	; 1
-     aae:	09 f0       	breq	.+2      	; 0xab2 <wl_token_ring_receive_handler+0x31c>
-     ab0:	56 c0       	rjmp	.+172    	; 0xb5e <wl_token_ring_receive_handler+0x3c8>
-     ab2:	80 91 33 01 	lds	r24, 0x0133
-     ab6:	90 91 34 01 	lds	r25, 0x0134
-     aba:	86 17       	cp	r24, r22
-     abc:	97 07       	cpc	r25, r23
-     abe:	31 f4       	brne	.+12     	; 0xacc <wl_token_ring_receive_handler+0x336>
-     ac0:	8f ef       	ldi	r24, 0xFF	; 255
-     ac2:	9f ef       	ldi	r25, 0xFF	; 255
-     ac4:	90 93 34 01 	sts	0x0134, r25
-     ac8:	80 93 33 01 	sts	0x0133, r24
-     acc:	80 91 33 01 	lds	r24, 0x0133
-     ad0:	90 91 34 01 	lds	r25, 0x0134
-     ad4:	8f 5f       	subi	r24, 0xFF	; 255
-     ad6:	9f 4f       	sbci	r25, 0xFF	; 255
-     ad8:	09 f0       	breq	.+2      	; 0xadc <wl_token_ring_receive_handler+0x346>
-     ada:	41 c0       	rjmp	.+130    	; 0xb5e <wl_token_ring_receive_handler+0x3c8>
-     adc:	87 01       	movw	r16, r14
-     ade:	01 50       	subi	r16, 0x01	; 1
-     ae0:	10 40       	sbci	r17, 0x00	; 0
-     ae2:	17 ff       	sbrs	r17, 7
-     ae4:	05 c0       	rjmp	.+10     	; 0xaf0 <wl_token_ring_receive_handler+0x35a>
-     ae6:	0e 94 b0 0a 	call	0x1560	; 0x1560 <sensor_matrix_get_size>
-     aea:	8c 01       	movw	r16, r24
-     aec:	01 50       	subi	r16, 0x01	; 1
-     aee:	10 40       	sbci	r17, 0x00	; 0
-     af0:	0e 94 e4 01 	call	0x3c8	; 0x3c8 <wl_get_xbee_id>
-     af4:	08 17       	cp	r16, r24
-     af6:	19 07       	cpc	r17, r25
-     af8:	31 f0       	breq	.+12     	; 0xb06 <wl_token_ring_receive_handler+0x370>
-     afa:	c8 01       	movw	r24, r16
-     afc:	0e 94 9d 0a 	call	0x153a	; 0x153a <sensor_matrix_get_in_ring>
-     b00:	89 2b       	or	r24, r25
-     b02:	69 f3       	breq	.-38     	; 0xade <wl_token_ring_receive_handler+0x348>
-     b04:	2c c0       	rjmp	.+88     	; 0xb5e <wl_token_ring_receive_handler+0x3c8>
-     b06:	f0 92 34 01 	sts	0x0134, r15
-     b0a:	e0 92 33 01 	sts	0x0133, r14
-     b0e:	82 e0       	ldi	r24, 0x02	; 2
-     b10:	65 e0       	ldi	r22, 0x05	; 5
-     b12:	40 e0       	ldi	r20, 0x00	; 0
-     b14:	50 e0       	ldi	r21, 0x00	; 0
-     b16:	20 e0       	ldi	r18, 0x00	; 0
-     b18:	30 e0       	ldi	r19, 0x00	; 0
-     b1a:	87 01       	movw	r16, r14
-     b1c:	ee 24       	eor	r14, r14
-     b1e:	e3 94       	inc	r14
-     b20:	0e 94 d6 01 	call	0x3ac	; 0x3ac <wl_send_robot_to_robot_global_packet>
-     b24:	0e 94 ab 0a 	call	0x1556	; 0x1556 <sensor_matrix_get_joined>
-     b28:	01 97       	sbiw	r24, 0x01	; 1
-     b2a:	c9 f4       	brne	.+50     	; 0xb5e <wl_token_ring_receive_handler+0x3c8>
-     b2c:	0e 94 18 03 	call	0x630	; 0x630 <wl_token_pass_token>
-     b30:	16 c0       	rjmp	.+44     	; 0xb5e <wl_token_ring_receive_handler+0x3c8>
-     b32:	88 e0       	ldi	r24, 0x08	; 8
-     b34:	90 e0       	ldi	r25, 0x00	; 0
-     b36:	90 93 32 01 	sts	0x0132, r25
-     b3a:	80 93 31 01 	sts	0x0131, r24
-     b3e:	83 e0       	ldi	r24, 0x03	; 3
-     b40:	90 e0       	ldi	r25, 0x00	; 0
-     b42:	90 93 13 06 	sts	0x0613, r25
-     b46:	80 93 12 06 	sts	0x0612, r24
-     b4a:	70 93 36 01 	sts	0x0136, r23
-     b4e:	60 93 35 01 	sts	0x0135, r22
-     b52:	0e 94 e4 01 	call	0x3c8	; 0x3c8 <wl_get_xbee_id>
-     b56:	61 e0       	ldi	r22, 0x01	; 1
-     b58:	70 e0       	ldi	r23, 0x00	; 0
-     b5a:	0e 94 73 0a 	call	0x14e6	; 0x14e6 <sensor_matrix_set_in_ring>
-     b5e:	df 91       	pop	r29
-     b60:	cf 91       	pop	r28
-     b62:	1f 91       	pop	r17
-     b64:	0f 91       	pop	r16
-     b66:	ff 90       	pop	r15
-     b68:	ef 90       	pop	r14
-     b6a:	df 90       	pop	r13
-     b6c:	cf 90       	pop	r12
-     b6e:	bf 90       	pop	r11
-     b70:	af 90       	pop	r10
-     b72:	9f 90       	pop	r9
-     b74:	8f 90       	pop	r8
-     b76:	7f 90       	pop	r7
-     b78:	6f 90       	pop	r6
-     b7a:	08 95       	ret
+00000724 <wl_token_ring_receive_handler>:
+     724:	4f 92       	push	r4
+     726:	5f 92       	push	r5
+     728:	6f 92       	push	r6
+     72a:	7f 92       	push	r7
+     72c:	8f 92       	push	r8
+     72e:	9f 92       	push	r9
+     730:	af 92       	push	r10
+     732:	bf 92       	push	r11
+     734:	cf 92       	push	r12
+     736:	df 92       	push	r13
+     738:	ef 92       	push	r14
+     73a:	ff 92       	push	r15
+     73c:	0f 93       	push	r16
+     73e:	1f 93       	push	r17
+     740:	df 93       	push	r29
+     742:	cf 93       	push	r28
+     744:	cd b7       	in	r28, 0x3d	; 61
+     746:	de b7       	in	r29, 0x3e	; 62
+     748:	a0 97       	sbiw	r28, 0x20	; 32
+     74a:	0f b6       	in	r0, 0x3f	; 63
+     74c:	f8 94       	cli
+     74e:	de bf       	out	0x3e, r29	; 62
+     750:	0f be       	out	0x3f, r0	; 63
+     752:	cd bf       	out	0x3d, r28	; 61
+     754:	4b 01       	movw	r8, r22
+     756:	3a 01       	movw	r6, r20
+     758:	89 01       	movw	r16, r18
+     75a:	83 30       	cpi	r24, 0x03	; 3
+     75c:	09 f4       	brne	.+2      	; 0x760 <wl_token_ring_receive_handler+0x3c>
+     75e:	64 c1       	rjmp	.+712    	; 0xa28 <wl_token_ring_receive_handler+0x304>
+     760:	84 30       	cpi	r24, 0x04	; 4
+     762:	30 f4       	brcc	.+12     	; 0x770 <wl_token_ring_receive_handler+0x4c>
+     764:	81 30       	cpi	r24, 0x01	; 1
+     766:	59 f0       	breq	.+22     	; 0x77e <wl_token_ring_receive_handler+0x5a>
+     768:	82 30       	cpi	r24, 0x02	; 2
+     76a:	09 f0       	breq	.+2      	; 0x76e <wl_token_ring_receive_handler+0x4a>
+     76c:	19 c2       	rjmp	.+1074   	; 0xba0 <wl_token_ring_receive_handler+0x47c>
+     76e:	76 c0       	rjmp	.+236    	; 0x85c <wl_token_ring_receive_handler+0x138>
+     770:	84 30       	cpi	r24, 0x04	; 4
+     772:	09 f4       	brne	.+2      	; 0x776 <wl_token_ring_receive_handler+0x52>
+     774:	b8 c1       	rjmp	.+880    	; 0xae6 <wl_token_ring_receive_handler+0x3c2>
+     776:	85 30       	cpi	r24, 0x05	; 5
+     778:	09 f0       	breq	.+2      	; 0x77c <wl_token_ring_receive_handler+0x58>
+     77a:	12 c2       	rjmp	.+1060   	; 0xba0 <wl_token_ring_receive_handler+0x47c>
+     77c:	fb c1       	rjmp	.+1014   	; 0xb74 <wl_token_ring_receive_handler+0x450>
+     77e:	80 91 1e 01 	lds	r24, 0x011E
+     782:	90 91 1f 01 	lds	r25, 0x011F
+     786:	68 17       	cp	r22, r24
+     788:	79 07       	cpc	r23, r25
+     78a:	b1 f0       	breq	.+44     	; 0x7b8 <wl_token_ring_receive_handler+0x94>
+     78c:	0e 94 ab 01 	call	0x356	; 0x356 <wl_get_xbee_id>
+     790:	20 91 1e 01 	lds	r18, 0x011E
+     794:	30 91 1f 01 	lds	r19, 0x011F
+     798:	82 17       	cp	r24, r18
+     79a:	93 07       	cpc	r25, r19
+     79c:	69 f0       	breq	.+26     	; 0x7b8 <wl_token_ring_receive_handler+0x94>
+     79e:	80 91 00 06 	lds	r24, 0x0600
+     7a2:	90 91 01 06 	lds	r25, 0x0601
+     7a6:	03 97       	sbiw	r24, 0x03	; 3
+     7a8:	3c f4       	brge	.+14     	; 0x7b8 <wl_token_ring_receive_handler+0x94>
+     7aa:	80 91 02 06 	lds	r24, 0x0602
+     7ae:	90 91 03 06 	lds	r25, 0x0603
+     7b2:	03 97       	sbiw	r24, 0x03	; 3
+     7b4:	09 f0       	breq	.+2      	; 0x7b8 <wl_token_ring_receive_handler+0x94>
+     7b6:	f4 c1       	rjmp	.+1000   	; 0xba0 <wl_token_ring_receive_handler+0x47c>
+     7b8:	0f ef       	ldi	r16, 0xFF	; 255
+     7ba:	1f ef       	ldi	r17, 0xFF	; 255
+     7bc:	10 93 01 06 	sts	0x0601, r17
+     7c0:	00 93 00 06 	sts	0x0600, r16
+     7c4:	10 93 21 01 	sts	0x0121, r17
+     7c8:	00 93 20 01 	sts	0x0120, r16
+     7cc:	c4 01       	movw	r24, r8
+     7ce:	61 e0       	ldi	r22, 0x01	; 1
+     7d0:	70 e0       	ldi	r23, 0x00	; 0
+     7d2:	0e 94 9c 0a 	call	0x1538	; 0x1538 <sensor_matrix_set_in_ring>
+     7d6:	80 91 02 06 	lds	r24, 0x0602
+     7da:	90 91 03 06 	lds	r25, 0x0603
+     7de:	03 97       	sbiw	r24, 0x03	; 3
+     7e0:	81 f4       	brne	.+32     	; 0x802 <wl_token_ring_receive_handler+0xde>
+     7e2:	0e 94 ab 01 	call	0x356	; 0x356 <wl_get_xbee_id>
+     7e6:	61 e0       	ldi	r22, 0x01	; 1
+     7e8:	70 e0       	ldi	r23, 0x00	; 0
+     7ea:	0e 94 9c 0a 	call	0x1538	; 0x1538 <sensor_matrix_set_in_ring>
+     7ee:	81 e0       	ldi	r24, 0x01	; 1
+     7f0:	90 e0       	ldi	r25, 0x00	; 0
+     7f2:	90 93 03 06 	sts	0x0603, r25
+     7f6:	80 93 02 06 	sts	0x0602, r24
+     7fa:	10 93 23 01 	sts	0x0123, r17
+     7fe:	00 93 22 01 	sts	0x0122, r16
+     802:	80 91 02 06 	lds	r24, 0x0602
+     806:	90 91 03 06 	lds	r25, 0x0603
+     80a:	84 30       	cpi	r24, 0x04	; 4
+     80c:	91 05       	cpc	r25, r1
+     80e:	11 f0       	breq	.+4      	; 0x814 <wl_token_ring_receive_handler+0xf0>
+     810:	89 2b       	or	r24, r25
+     812:	29 f4       	brne	.+10     	; 0x81e <wl_token_ring_receive_handler+0xfa>
+     814:	0e 94 ab 01 	call	0x356	; 0x356 <wl_get_xbee_id>
+     818:	60 e0       	ldi	r22, 0x00	; 0
+     81a:	70 e0       	ldi	r23, 0x00	; 0
+     81c:	bf c1       	rjmp	.+894    	; 0xb9c <wl_token_ring_receive_handler+0x478>
+     81e:	82 e0       	ldi	r24, 0x02	; 2
+     820:	63 e0       	ldi	r22, 0x03	; 3
+     822:	40 e0       	ldi	r20, 0x00	; 0
+     824:	50 e0       	ldi	r21, 0x00	; 0
+     826:	20 e0       	ldi	r18, 0x00	; 0
+     828:	30 e0       	ldi	r19, 0x00	; 0
+     82a:	00 e0       	ldi	r16, 0x00	; 0
+     82c:	0e 94 80 01 	call	0x300	; 0x300 <wl_send_global_packet>
+     830:	e0 91 0e 01 	lds	r30, 0x010E
+     834:	f0 91 0f 01 	lds	r31, 0x010F
+     838:	09 95       	icall
+     83a:	84 e6       	ldi	r24, 0x64	; 100
+     83c:	90 e0       	ldi	r25, 0x00	; 0
+     83e:	0e 94 0c 1c 	call	0x3818	; 0x3818 <delay_ms>
+     842:	e0 91 10 01 	lds	r30, 0x0110
+     846:	f0 91 11 01 	lds	r31, 0x0111
+     84a:	09 95       	icall
+     84c:	0e 94 ab 01 	call	0x356	; 0x356 <wl_get_xbee_id>
+     850:	0e 94 c6 0a 	call	0x158c	; 0x158c <sensor_matrix_get_in_ring>
+     854:	89 2b       	or	r24, r25
+     856:	09 f4       	brne	.+2      	; 0x85a <wl_token_ring_receive_handler+0x136>
+     858:	a3 c1       	rjmp	.+838    	; 0xba0 <wl_token_ring_receive_handler+0x47c>
+     85a:	89 c1       	rjmp	.+786    	; 0xb6e <wl_token_ring_receive_handler+0x44a>
+     85c:	8f ef       	ldi	r24, 0xFF	; 255
+     85e:	9f ef       	ldi	r25, 0xFF	; 255
+     860:	90 93 01 06 	sts	0x0601, r25
+     864:	80 93 00 06 	sts	0x0600, r24
+     868:	90 93 21 01 	sts	0x0121, r25
+     86c:	80 93 20 01 	sts	0x0120, r24
+     870:	cb 01       	movw	r24, r22
+     872:	61 e0       	ldi	r22, 0x01	; 1
+     874:	70 e0       	ldi	r23, 0x00	; 0
+     876:	0e 94 9c 0a 	call	0x1538	; 0x1538 <sensor_matrix_set_in_ring>
+     87a:	c8 01       	movw	r24, r16
+     87c:	62 e0       	ldi	r22, 0x02	; 2
+     87e:	70 e0       	ldi	r23, 0x00	; 0
+     880:	0e 94 aa 2f 	call	0x5f54	; 0x5f54 <__divmodhi4>
+     884:	5b 01       	movw	r10, r22
+     886:	cc 24       	eor	r12, r12
+     888:	dd 24       	eor	r13, r13
+     88a:	ee 24       	eor	r14, r14
+     88c:	ff 24       	eor	r15, r15
+     88e:	44 24       	eor	r4, r4
+     890:	4a 94       	dec	r4
+     892:	54 2c       	mov	r5, r4
+     894:	6a c0       	rjmp	.+212    	; 0x96a <wl_token_ring_receive_handler+0x246>
+     896:	e8 14       	cp	r14, r8
+     898:	f9 04       	cpc	r15, r9
+     89a:	09 f4       	brne	.+2      	; 0x89e <wl_token_ring_receive_handler+0x17a>
+     89c:	63 c0       	rjmp	.+198    	; 0x964 <wl_token_ring_receive_handler+0x240>
+     89e:	ca 14       	cp	r12, r10
+     8a0:	db 04       	cpc	r13, r11
+     8a2:	74 f5       	brge	.+92     	; 0x900 <wl_token_ring_receive_handler+0x1dc>
+     8a4:	96 01       	movw	r18, r12
+     8a6:	22 0f       	add	r18, r18
+     8a8:	33 1f       	adc	r19, r19
+     8aa:	2c 0d       	add	r18, r12
+     8ac:	3d 1d       	adc	r19, r13
+     8ae:	f3 01       	movw	r30, r6
+     8b0:	e2 0f       	add	r30, r18
+     8b2:	f3 1f       	adc	r31, r19
+     8b4:	80 81       	ld	r24, Z
+     8b6:	08 2f       	mov	r16, r24
+     8b8:	10 e0       	ldi	r17, 0x00	; 0
+     8ba:	0e 15       	cp	r16, r14
+     8bc:	1f 05       	cpc	r17, r15
+     8be:	01 f5       	brne	.+64     	; 0x900 <wl_token_ring_receive_handler+0x1dc>
+     8c0:	80 91 24 01 	lds	r24, 0x0124
+     8c4:	90 91 25 01 	lds	r25, 0x0125
+     8c8:	8e 15       	cp	r24, r14
+     8ca:	9f 05       	cpc	r25, r15
+     8cc:	21 f4       	brne	.+8      	; 0x8d6 <wl_token_ring_receive_handler+0x1b2>
+     8ce:	50 92 25 01 	sts	0x0125, r5
+     8d2:	40 92 24 01 	sts	0x0124, r4
+     8d6:	f9 01       	movw	r30, r18
+     8d8:	e6 0d       	add	r30, r6
+     8da:	f7 1d       	adc	r31, r7
+     8dc:	41 81       	ldd	r20, Z+1	; 0x01
+     8de:	52 81       	ldd	r21, Z+2	; 0x02
+     8e0:	c4 01       	movw	r24, r8
+     8e2:	b8 01       	movw	r22, r16
+     8e4:	0e 94 6c 0a 	call	0x14d8	; 0x14d8 <sensor_matrix_set_reading>
+     8e8:	c8 01       	movw	r24, r16
+     8ea:	0e 94 c6 0a 	call	0x158c	; 0x158c <sensor_matrix_get_in_ring>
+     8ee:	c8 01       	movw	r24, r16
+     8f0:	61 e0       	ldi	r22, 0x01	; 1
+     8f2:	70 e0       	ldi	r23, 0x00	; 0
+     8f4:	0e 94 9c 0a 	call	0x1538	; 0x1538 <sensor_matrix_set_in_ring>
+     8f8:	08 94       	sec
+     8fa:	c1 1c       	adc	r12, r1
+     8fc:	d1 1c       	adc	r13, r1
+     8fe:	32 c0       	rjmp	.+100    	; 0x964 <wl_token_ring_receive_handler+0x240>
+     900:	c7 01       	movw	r24, r14
+     902:	0e 94 c6 0a 	call	0x158c	; 0x158c <sensor_matrix_get_in_ring>
+     906:	89 2b       	or	r24, r25
+     908:	29 f0       	breq	.+10     	; 0x914 <wl_token_ring_receive_handler+0x1f0>
+     90a:	c7 01       	movw	r24, r14
+     90c:	60 e0       	ldi	r22, 0x00	; 0
+     90e:	70 e0       	ldi	r23, 0x00	; 0
+     910:	0e 94 9c 0a 	call	0x1538	; 0x1538 <sensor_matrix_set_in_ring>
+     914:	0e 94 ab 01 	call	0x356	; 0x356 <wl_get_xbee_id>
+     918:	e8 16       	cp	r14, r24
+     91a:	f9 06       	cpc	r15, r25
+     91c:	61 f4       	brne	.+24     	; 0x936 <wl_token_ring_receive_handler+0x212>
+     91e:	80 91 02 06 	lds	r24, 0x0602
+     922:	90 91 03 06 	lds	r25, 0x0603
+     926:	01 97       	sbiw	r24, 0x01	; 1
+     928:	31 f4       	brne	.+12     	; 0x936 <wl_token_ring_receive_handler+0x212>
+     92a:	10 92 03 06 	sts	0x0603, r1
+     92e:	10 92 02 06 	sts	0x0602, r1
+     932:	0e 94 bf 02 	call	0x57e	; 0x57e <wl_token_ring_join>
+     936:	80 91 26 01 	lds	r24, 0x0126
+     93a:	90 91 27 01 	lds	r25, 0x0127
+     93e:	e8 16       	cp	r14, r24
+     940:	f9 06       	cpc	r15, r25
+     942:	81 f4       	brne	.+32     	; 0x964 <wl_token_ring_receive_handler+0x240>
+     944:	0e 94 ab 01 	call	0x356	; 0x356 <wl_get_xbee_id>
+     948:	60 e0       	ldi	r22, 0x00	; 0
+     94a:	70 e0       	ldi	r23, 0x00	; 0
+     94c:	0e 94 9c 0a 	call	0x1538	; 0x1538 <sensor_matrix_set_in_ring>
+     950:	10 92 03 06 	sts	0x0603, r1
+     954:	10 92 02 06 	sts	0x0602, r1
+     958:	50 92 27 01 	sts	0x0127, r5
+     95c:	40 92 26 01 	sts	0x0126, r4
+     960:	0e 94 bf 02 	call	0x57e	; 0x57e <wl_token_ring_join>
+     964:	08 94       	sec
+     966:	e1 1c       	adc	r14, r1
+     968:	f1 1c       	adc	r15, r1
+     96a:	0e 94 d9 0a 	call	0x15b2	; 0x15b2 <sensor_matrix_get_size>
+     96e:	e8 16       	cp	r14, r24
+     970:	f9 06       	cpc	r15, r25
+     972:	0c f4       	brge	.+2      	; 0x976 <wl_token_ring_receive_handler+0x252>
+     974:	90 cf       	rjmp	.-224    	; 0x896 <wl_token_ring_receive_handler+0x172>
+     976:	84 01       	movw	r16, r8
+     978:	0f 5f       	subi	r16, 0xFF	; 255
+     97a:	1f 4f       	sbci	r17, 0xFF	; 255
+     97c:	0e 94 d9 0a 	call	0x15b2	; 0x15b2 <sensor_matrix_get_size>
+     980:	08 17       	cp	r16, r24
+     982:	19 07       	cpc	r17, r25
+     984:	11 f4       	brne	.+4      	; 0x98a <wl_token_ring_receive_handler+0x266>
+     986:	00 e0       	ldi	r16, 0x00	; 0
+     988:	10 e0       	ldi	r17, 0x00	; 0
+     98a:	c8 01       	movw	r24, r16
+     98c:	0e 94 c6 0a 	call	0x158c	; 0x158c <sensor_matrix_get_in_ring>
+     990:	89 2b       	or	r24, r25
+     992:	19 f4       	brne	.+6      	; 0x99a <wl_token_ring_receive_handler+0x276>
+     994:	08 15       	cp	r16, r8
+     996:	19 05       	cpc	r17, r9
+     998:	79 f7       	brne	.-34     	; 0x978 <wl_token_ring_receive_handler+0x254>
+     99a:	c0 2e       	mov	r12, r16
+     99c:	dd 24       	eor	r13, r13
+     99e:	0e 94 ab 01 	call	0x356	; 0x356 <wl_get_xbee_id>
+     9a2:	c8 16       	cp	r12, r24
+     9a4:	d9 06       	cpc	r13, r25
+     9a6:	21 f0       	breq	.+8      	; 0x9b0 <wl_token_ring_receive_handler+0x28c>
+     9a8:	d0 92 1f 01 	sts	0x011F, r13
+     9ac:	c0 92 1e 01 	sts	0x011E, r12
+     9b0:	0e 94 ab 01 	call	0x356	; 0x356 <wl_get_xbee_id>
+     9b4:	8c 01       	movw	r16, r24
+     9b6:	0f 5f       	subi	r16, 0xFF	; 255
+     9b8:	1f 4f       	sbci	r17, 0xFF	; 255
+     9ba:	a1 e0       	ldi	r26, 0x01	; 1
+     9bc:	ea 2e       	mov	r14, r26
+     9be:	f1 2c       	mov	r15, r1
+     9c0:	0e 94 d9 0a 	call	0x15b2	; 0x15b2 <sensor_matrix_get_size>
+     9c4:	08 17       	cp	r16, r24
+     9c6:	19 07       	cpc	r17, r25
+     9c8:	11 f4       	brne	.+4      	; 0x9ce <wl_token_ring_receive_handler+0x2aa>
+     9ca:	00 e0       	ldi	r16, 0x00	; 0
+     9cc:	10 e0       	ldi	r17, 0x00	; 0
+     9ce:	0c 15       	cp	r16, r12
+     9d0:	1d 05       	cpc	r17, r13
+     9d2:	59 f0       	breq	.+22     	; 0x9ea <wl_token_ring_receive_handler+0x2c6>
+     9d4:	c8 01       	movw	r24, r16
+     9d6:	0e 94 c6 0a 	call	0x158c	; 0x158c <sensor_matrix_get_in_ring>
+     9da:	89 2b       	or	r24, r25
+     9dc:	19 f0       	breq	.+6      	; 0x9e4 <wl_token_ring_receive_handler+0x2c0>
+     9de:	08 94       	sec
+     9e0:	e1 1c       	adc	r14, r1
+     9e2:	f1 1c       	adc	r15, r1
+     9e4:	0f 5f       	subi	r16, 0xFF	; 255
+     9e6:	1f 4f       	sbci	r17, 0xFF	; 255
+     9e8:	eb cf       	rjmp	.-42     	; 0x9c0 <wl_token_ring_receive_handler+0x29c>
+     9ea:	ee 0c       	add	r14, r14
+     9ec:	ff 1c       	adc	r15, r15
+     9ee:	ee 0c       	add	r14, r14
+     9f0:	ff 1c       	adc	r15, r15
+     9f2:	f0 92 21 01 	sts	0x0121, r15
+     9f6:	e0 92 20 01 	sts	0x0120, r14
+     9fa:	0e 94 d4 0a 	call	0x15a8	; 0x15a8 <sensor_matrix_get_joined>
+     9fe:	89 2b       	or	r24, r25
+     a00:	09 f0       	breq	.+2      	; 0xa04 <wl_token_ring_receive_handler+0x2e0>
+     a02:	ce c0       	rjmp	.+412    	; 0xba0 <wl_token_ring_receive_handler+0x47c>
+     a04:	80 91 02 06 	lds	r24, 0x0602
+     a08:	90 91 03 06 	lds	r25, 0x0603
+     a0c:	02 97       	sbiw	r24, 0x02	; 2
+     a0e:	09 f0       	breq	.+2      	; 0xa12 <wl_token_ring_receive_handler+0x2ee>
+     a10:	c7 c0       	rjmp	.+398    	; 0xba0 <wl_token_ring_receive_handler+0x47c>
+     a12:	82 e0       	ldi	r24, 0x02	; 2
+     a14:	61 e0       	ldi	r22, 0x01	; 1
+     a16:	40 e0       	ldi	r20, 0x00	; 0
+     a18:	50 e0       	ldi	r21, 0x00	; 0
+     a1a:	20 e0       	ldi	r18, 0x00	; 0
+     a1c:	30 e0       	ldi	r19, 0x00	; 0
+     a1e:	e2 e0       	ldi	r30, 0x02	; 2
+     a20:	ee 2e       	mov	r14, r30
+     a22:	0e 94 9d 01 	call	0x33a	; 0x33a <wl_send_robot_to_robot_global_packet>
+     a26:	bc c0       	rjmp	.+376    	; 0xba0 <wl_token_ring_receive_handler+0x47c>
+     a28:	10 92 01 06 	sts	0x0601, r1
+     a2c:	10 92 00 06 	sts	0x0600, r1
+     a30:	e0 91 12 01 	lds	r30, 0x0112
+     a34:	f0 91 13 01 	lds	r31, 0x0113
+     a38:	09 95       	icall
+     a3a:	58 2e       	mov	r5, r24
+     a3c:	49 2e       	mov	r4, r25
+     a3e:	6e 01       	movw	r12, r28
+     a40:	08 94       	sec
+     a42:	c1 1c       	adc	r12, r1
+     a44:	d1 1c       	adc	r13, r1
+     a46:	76 01       	movw	r14, r12
+     a48:	00 e0       	ldi	r16, 0x00	; 0
+     a4a:	10 e0       	ldi	r17, 0x00	; 0
+     a4c:	aa 24       	eor	r10, r10
+     a4e:	aa 94       	dec	r10
+     a50:	ba 2c       	mov	r11, r10
+     a52:	c8 01       	movw	r24, r16
+     a54:	0e 94 dc 0a 	call	0x15b8	; 0x15b8 <bom_get>
+     a58:	f7 01       	movw	r30, r14
+     a5a:	91 83       	std	Z+1, r25	; 0x01
+     a5c:	80 83       	st	Z, r24
+     a5e:	a8 16       	cp	r10, r24
+     a60:	b9 06       	cpc	r11, r25
+     a62:	0c f4       	brge	.+2      	; 0xa66 <wl_token_ring_receive_handler+0x342>
+     a64:	5c 01       	movw	r10, r24
+     a66:	0f 5f       	subi	r16, 0xFF	; 255
+     a68:	1f 4f       	sbci	r17, 0xFF	; 255
+     a6a:	82 e0       	ldi	r24, 0x02	; 2
+     a6c:	90 e0       	ldi	r25, 0x00	; 0
+     a6e:	e8 0e       	add	r14, r24
+     a70:	f9 1e       	adc	r15, r25
+     a72:	00 31       	cpi	r16, 0x10	; 16
+     a74:	11 05       	cpc	r17, r1
+     a76:	69 f7       	brne	.-38     	; 0xa52 <wl_token_ring_receive_handler+0x32e>
+     a78:	71 e2       	ldi	r23, 0x21	; 33
+     a7a:	67 2e       	mov	r6, r23
+     a7c:	71 2c       	mov	r7, r1
+     a7e:	6c 0e       	add	r6, r28
+     a80:	7d 1e       	adc	r7, r29
+     a82:	f6 01       	movw	r30, r12
+     a84:	00 81       	ld	r16, Z
+     a86:	11 81       	ldd	r17, Z+1	; 0x01
+     a88:	c8 01       	movw	r24, r16
+     a8a:	0e 94 ec 1a 	call	0x35d8	; 0x35d8 <usb_puti>
+     a8e:	89 e0       	ldi	r24, 0x09	; 9
+     a90:	90 e0       	ldi	r25, 0x00	; 0
+     a92:	0e 94 a8 1a 	call	0x3550	; 0x3550 <usb_putc>
+     a96:	c5 01       	movw	r24, r10
+     a98:	80 1b       	sub	r24, r16
+     a9a:	91 0b       	sbc	r25, r17
+     a9c:	65 e0       	ldi	r22, 0x05	; 5
+     a9e:	70 e0       	ldi	r23, 0x00	; 0
+     aa0:	0e 94 aa 2f 	call	0x5f54	; 0x5f54 <__divmodhi4>
+     aa4:	8b 01       	movw	r16, r22
+     aa6:	ee 24       	eor	r14, r14
+     aa8:	ff 24       	eor	r15, r15
+     aaa:	07 c0       	rjmp	.+14     	; 0xaba <wl_token_ring_receive_handler+0x396>
+     aac:	83 e2       	ldi	r24, 0x23	; 35
+     aae:	90 e0       	ldi	r25, 0x00	; 0
+     ab0:	0e 94 a8 1a 	call	0x3550	; 0x3550 <usb_putc>
+     ab4:	08 94       	sec
+     ab6:	e1 1c       	adc	r14, r1
+     ab8:	f1 1c       	adc	r15, r1
+     aba:	e0 16       	cp	r14, r16
+     abc:	f1 06       	cpc	r15, r17
+     abe:	b4 f3       	brlt	.-20     	; 0xaac <wl_token_ring_receive_handler+0x388>
+     ac0:	8a e0       	ldi	r24, 0x0A	; 10
+     ac2:	90 e0       	ldi	r25, 0x00	; 0
+     ac4:	0e 94 a8 1a 	call	0x3550	; 0x3550 <usb_putc>
+     ac8:	82 e0       	ldi	r24, 0x02	; 2
+     aca:	90 e0       	ldi	r25, 0x00	; 0
+     acc:	c8 0e       	add	r12, r24
+     ace:	d9 1e       	adc	r13, r25
+     ad0:	c6 14       	cp	r12, r6
+     ad2:	d7 04       	cpc	r13, r7
+     ad4:	b1 f6       	brne	.-84     	; 0xa82 <wl_token_ring_receive_handler+0x35e>
+     ad6:	0e 94 ab 01 	call	0x356	; 0x356 <wl_get_xbee_id>
+     ada:	b4 01       	movw	r22, r8
+     adc:	45 2d       	mov	r20, r5
+     ade:	54 2d       	mov	r21, r4
+     ae0:	0e 94 6c 0a 	call	0x14d8	; 0x14d8 <sensor_matrix_set_reading>
+     ae4:	5d c0       	rjmp	.+186    	; 0xba0 <wl_token_ring_receive_handler+0x47c>
+     ae6:	80 91 02 06 	lds	r24, 0x0602
+     aea:	90 91 03 06 	lds	r25, 0x0603
+     aee:	01 97       	sbiw	r24, 0x01	; 1
+     af0:	09 f0       	breq	.+2      	; 0xaf4 <wl_token_ring_receive_handler+0x3d0>
+     af2:	56 c0       	rjmp	.+172    	; 0xba0 <wl_token_ring_receive_handler+0x47c>
+     af4:	80 91 24 01 	lds	r24, 0x0124
+     af8:	90 91 25 01 	lds	r25, 0x0125
+     afc:	86 17       	cp	r24, r22
+     afe:	97 07       	cpc	r25, r23
+     b00:	31 f4       	brne	.+12     	; 0xb0e <wl_token_ring_receive_handler+0x3ea>
+     b02:	8f ef       	ldi	r24, 0xFF	; 255
+     b04:	9f ef       	ldi	r25, 0xFF	; 255
+     b06:	90 93 25 01 	sts	0x0125, r25
+     b0a:	80 93 24 01 	sts	0x0124, r24
+     b0e:	80 91 24 01 	lds	r24, 0x0124
+     b12:	90 91 25 01 	lds	r25, 0x0125
+     b16:	8f 5f       	subi	r24, 0xFF	; 255
+     b18:	9f 4f       	sbci	r25, 0xFF	; 255
+     b1a:	09 f0       	breq	.+2      	; 0xb1e <wl_token_ring_receive_handler+0x3fa>
+     b1c:	41 c0       	rjmp	.+130    	; 0xba0 <wl_token_ring_receive_handler+0x47c>
+     b1e:	84 01       	movw	r16, r8
+     b20:	01 50       	subi	r16, 0x01	; 1
+     b22:	10 40       	sbci	r17, 0x00	; 0
+     b24:	17 ff       	sbrs	r17, 7
+     b26:	05 c0       	rjmp	.+10     	; 0xb32 <wl_token_ring_receive_handler+0x40e>
+     b28:	0e 94 d9 0a 	call	0x15b2	; 0x15b2 <sensor_matrix_get_size>
+     b2c:	8c 01       	movw	r16, r24
+     b2e:	01 50       	subi	r16, 0x01	; 1
+     b30:	10 40       	sbci	r17, 0x00	; 0
+     b32:	0e 94 ab 01 	call	0x356	; 0x356 <wl_get_xbee_id>
+     b36:	08 17       	cp	r16, r24
+     b38:	19 07       	cpc	r17, r25
+     b3a:	31 f0       	breq	.+12     	; 0xb48 <wl_token_ring_receive_handler+0x424>
+     b3c:	c8 01       	movw	r24, r16
+     b3e:	0e 94 c6 0a 	call	0x158c	; 0x158c <sensor_matrix_get_in_ring>
+     b42:	89 2b       	or	r24, r25
+     b44:	69 f3       	breq	.-38     	; 0xb20 <wl_token_ring_receive_handler+0x3fc>
+     b46:	2c c0       	rjmp	.+88     	; 0xba0 <wl_token_ring_receive_handler+0x47c>
+     b48:	90 92 25 01 	sts	0x0125, r9
+     b4c:	80 92 24 01 	sts	0x0124, r8
+     b50:	82 e0       	ldi	r24, 0x02	; 2
+     b52:	65 e0       	ldi	r22, 0x05	; 5
+     b54:	40 e0       	ldi	r20, 0x00	; 0
+     b56:	50 e0       	ldi	r21, 0x00	; 0
+     b58:	20 e0       	ldi	r18, 0x00	; 0
+     b5a:	30 e0       	ldi	r19, 0x00	; 0
+     b5c:	84 01       	movw	r16, r8
+     b5e:	ee 24       	eor	r14, r14
+     b60:	e3 94       	inc	r14
+     b62:	0e 94 9d 01 	call	0x33a	; 0x33a <wl_send_robot_to_robot_global_packet>
+     b66:	0e 94 d4 0a 	call	0x15a8	; 0x15a8 <sensor_matrix_get_joined>
+     b6a:	01 97       	sbiw	r24, 0x01	; 1
+     b6c:	c9 f4       	brne	.+50     	; 0xba0 <wl_token_ring_receive_handler+0x47c>
+     b6e:	0e 94 df 02 	call	0x5be	; 0x5be <wl_token_pass_token>
+     b72:	16 c0       	rjmp	.+44     	; 0xba0 <wl_token_ring_receive_handler+0x47c>
+     b74:	88 e0       	ldi	r24, 0x08	; 8
+     b76:	90 e0       	ldi	r25, 0x00	; 0
+     b78:	90 93 23 01 	sts	0x0123, r25
+     b7c:	80 93 22 01 	sts	0x0122, r24
+     b80:	83 e0       	ldi	r24, 0x03	; 3
+     b82:	90 e0       	ldi	r25, 0x00	; 0
+     b84:	90 93 03 06 	sts	0x0603, r25
+     b88:	80 93 02 06 	sts	0x0602, r24
+     b8c:	70 93 27 01 	sts	0x0127, r23
+     b90:	60 93 26 01 	sts	0x0126, r22
+     b94:	0e 94 ab 01 	call	0x356	; 0x356 <wl_get_xbee_id>
+     b98:	61 e0       	ldi	r22, 0x01	; 1
+     b9a:	70 e0       	ldi	r23, 0x00	; 0
+     b9c:	0e 94 9c 0a 	call	0x1538	; 0x1538 <sensor_matrix_set_in_ring>
+     ba0:	a0 96       	adiw	r28, 0x20	; 32
+     ba2:	0f b6       	in	r0, 0x3f	; 63
+     ba4:	f8 94       	cli
+     ba6:	de bf       	out	0x3e, r29	; 62
+     ba8:	0f be       	out	0x3f, r0	; 63
+     baa:	cd bf       	out	0x3d, r28	; 61
+     bac:	cf 91       	pop	r28
+     bae:	df 91       	pop	r29
+     bb0:	1f 91       	pop	r17
+     bb2:	0f 91       	pop	r16
+     bb4:	ff 90       	pop	r15
+     bb6:	ef 90       	pop	r14
+     bb8:	df 90       	pop	r13
+     bba:	cf 90       	pop	r12
+     bbc:	bf 90       	pop	r11
+     bbe:	af 90       	pop	r10
+     bc0:	9f 90       	pop	r9
+     bc2:	8f 90       	pop	r8
+     bc4:	7f 90       	pop	r7
+     bc6:	6f 90       	pop	r6
+     bc8:	5f 90       	pop	r5
+     bca:	4f 90       	pop	r4
+     bcc:	08 95       	ret
 
-00000b7c <wl_token_ring_timeout_handler>:
-     b7c:	0f 93       	push	r16
-     b7e:	1f 93       	push	r17
-     b80:	80 91 2f 01 	lds	r24, 0x012F
-     b84:	90 91 30 01 	lds	r25, 0x0130
-     b88:	89 2b       	or	r24, r25
-     b8a:	29 f5       	brne	.+74     	; 0xbd6 <wl_token_ring_timeout_handler+0x5a>
-     b8c:	00 91 2d 01 	lds	r16, 0x012D
-     b90:	10 91 2e 01 	lds	r17, 0x012E
-     b94:	0e 94 e4 01 	call	0x3c8	; 0x3c8 <wl_get_xbee_id>
-     b98:	08 17       	cp	r16, r24
-     b9a:	19 07       	cpc	r17, r25
-     b9c:	a1 f0       	breq	.+40     	; 0xbc6 <wl_token_ring_timeout_handler+0x4a>
-     b9e:	80 91 2d 01 	lds	r24, 0x012D
-     ba2:	90 91 2e 01 	lds	r25, 0x012E
-     ba6:	60 e0       	ldi	r22, 0x00	; 0
-     ba8:	70 e0       	ldi	r23, 0x00	; 0
-     baa:	0e 94 73 0a 	call	0x14e6	; 0x14e6 <sensor_matrix_set_in_ring>
-     bae:	8f ef       	ldi	r24, 0xFF	; 255
-     bb0:	9f ef       	ldi	r25, 0xFF	; 255
-     bb2:	90 93 2e 01 	sts	0x012E, r25
-     bb6:	80 93 2d 01 	sts	0x012D, r24
-     bba:	84 e0       	ldi	r24, 0x04	; 4
-     bbc:	90 e0       	ldi	r25, 0x00	; 0
-     bbe:	90 93 30 01 	sts	0x0130, r25
-     bc2:	80 93 2f 01 	sts	0x012F, r24
-     bc6:	80 91 12 06 	lds	r24, 0x0612
-     bca:	90 91 13 06 	lds	r25, 0x0613
-     bce:	01 97       	sbiw	r24, 0x01	; 1
-     bd0:	11 f4       	brne	.+4      	; 0xbd6 <wl_token_ring_timeout_handler+0x5a>
-     bd2:	0e 94 18 03 	call	0x630	; 0x630 <wl_token_pass_token>
-     bd6:	80 91 31 01 	lds	r24, 0x0131
-     bda:	90 91 32 01 	lds	r25, 0x0132
-     bde:	89 2b       	or	r24, r25
-     be0:	59 f5       	brne	.+86     	; 0xc38 <wl_token_ring_timeout_handler+0xbc>
-     be2:	0e 94 ab 0a 	call	0x1556	; 0x1556 <sensor_matrix_get_joined>
-     be6:	89 2b       	or	r24, r25
-     be8:	c9 f4       	brne	.+50     	; 0xc1c <wl_token_ring_timeout_handler+0xa0>
-     bea:	0e 94 e4 01 	call	0x3c8	; 0x3c8 <wl_get_xbee_id>
-     bee:	61 e0       	ldi	r22, 0x01	; 1
-     bf0:	70 e0       	ldi	r23, 0x00	; 0
-     bf2:	0e 94 73 0a 	call	0x14e6	; 0x14e6 <sensor_matrix_set_in_ring>
-     bf6:	81 e0       	ldi	r24, 0x01	; 1
-     bf8:	90 e0       	ldi	r25, 0x00	; 0
-     bfa:	90 93 13 06 	sts	0x0613, r25
-     bfe:	80 93 12 06 	sts	0x0612, r24
-     c02:	84 e0       	ldi	r24, 0x04	; 4
-     c04:	90 e0       	ldi	r25, 0x00	; 0
-     c06:	90 93 30 01 	sts	0x0130, r25
-     c0a:	80 93 2f 01 	sts	0x012F, r24
-     c0e:	0e 94 e4 01 	call	0x3c8	; 0x3c8 <wl_get_xbee_id>
-     c12:	90 93 2e 01 	sts	0x012E, r25
-     c16:	80 93 2d 01 	sts	0x012D, r24
-     c1a:	0e c0       	rjmp	.+28     	; 0xc38 <wl_token_ring_timeout_handler+0xbc>
-     c1c:	0e 94 f8 02 	call	0x5f0	; 0x5f0 <wl_token_ring_join>
-     c20:	0e 94 68 2f 	call	0x5ed0	; 0x5ed0 <rand>
-     c24:	6f ef       	ldi	r22, 0xFF	; 255
-     c26:	7f e0       	ldi	r23, 0x0F	; 15
-     c28:	0e 94 13 32 	call	0x6426	; 0x6426 <__divmodhi4>
-     c2c:	6f 5f       	subi	r22, 0xFF	; 255
-     c2e:	7f 4f       	sbci	r23, 0xFF	; 255
-     c30:	70 93 32 01 	sts	0x0132, r23
-     c34:	60 93 31 01 	sts	0x0131, r22
-     c38:	80 91 2f 01 	lds	r24, 0x012F
-     c3c:	90 91 30 01 	lds	r25, 0x0130
-     c40:	97 fd       	sbrc	r25, 7
-     c42:	05 c0       	rjmp	.+10     	; 0xc4e <wl_token_ring_timeout_handler+0xd2>
-     c44:	01 97       	sbiw	r24, 0x01	; 1
-     c46:	90 93 30 01 	sts	0x0130, r25
-     c4a:	80 93 2f 01 	sts	0x012F, r24
-     c4e:	80 91 31 01 	lds	r24, 0x0131
-     c52:	90 91 32 01 	lds	r25, 0x0132
-     c56:	97 fd       	sbrc	r25, 7
-     c58:	05 c0       	rjmp	.+10     	; 0xc64 <wl_token_ring_timeout_handler+0xe8>
-     c5a:	01 97       	sbiw	r24, 0x01	; 1
-     c5c:	90 93 32 01 	sts	0x0132, r25
-     c60:	80 93 31 01 	sts	0x0131, r24
-     c64:	80 91 10 06 	lds	r24, 0x0610
-     c68:	90 91 11 06 	lds	r25, 0x0611
-     c6c:	97 fd       	sbrc	r25, 7
-     c6e:	05 c0       	rjmp	.+10     	; 0xc7a <wl_token_ring_timeout_handler+0xfe>
-     c70:	01 96       	adiw	r24, 0x01	; 1
-     c72:	90 93 11 06 	sts	0x0611, r25
-     c76:	80 93 10 06 	sts	0x0610, r24
-     c7a:	1f 91       	pop	r17
-     c7c:	0f 91       	pop	r16
-     c7e:	08 95       	ret
+00000bce <wl_token_ring_timeout_handler>:
+     bce:	0f 93       	push	r16
+     bd0:	1f 93       	push	r17
+     bd2:	80 91 20 01 	lds	r24, 0x0120
+     bd6:	90 91 21 01 	lds	r25, 0x0121
+     bda:	89 2b       	or	r24, r25
+     bdc:	29 f5       	brne	.+74     	; 0xc28 <wl_token_ring_timeout_handler+0x5a>
+     bde:	00 91 1e 01 	lds	r16, 0x011E
+     be2:	10 91 1f 01 	lds	r17, 0x011F
+     be6:	0e 94 ab 01 	call	0x356	; 0x356 <wl_get_xbee_id>
+     bea:	08 17       	cp	r16, r24
+     bec:	19 07       	cpc	r17, r25
+     bee:	a1 f0       	breq	.+40     	; 0xc18 <wl_token_ring_timeout_handler+0x4a>
+     bf0:	80 91 1e 01 	lds	r24, 0x011E
+     bf4:	90 91 1f 01 	lds	r25, 0x011F
+     bf8:	60 e0       	ldi	r22, 0x00	; 0
+     bfa:	70 e0       	ldi	r23, 0x00	; 0
+     bfc:	0e 94 9c 0a 	call	0x1538	; 0x1538 <sensor_matrix_set_in_ring>
+     c00:	8f ef       	ldi	r24, 0xFF	; 255
+     c02:	9f ef       	ldi	r25, 0xFF	; 255
+     c04:	90 93 1f 01 	sts	0x011F, r25
+     c08:	80 93 1e 01 	sts	0x011E, r24
+     c0c:	84 e0       	ldi	r24, 0x04	; 4
+     c0e:	90 e0       	ldi	r25, 0x00	; 0
+     c10:	90 93 21 01 	sts	0x0121, r25
+     c14:	80 93 20 01 	sts	0x0120, r24
+     c18:	80 91 02 06 	lds	r24, 0x0602
+     c1c:	90 91 03 06 	lds	r25, 0x0603
+     c20:	01 97       	sbiw	r24, 0x01	; 1
+     c22:	11 f4       	brne	.+4      	; 0xc28 <wl_token_ring_timeout_handler+0x5a>
+     c24:	0e 94 df 02 	call	0x5be	; 0x5be <wl_token_pass_token>
+     c28:	80 91 22 01 	lds	r24, 0x0122
+     c2c:	90 91 23 01 	lds	r25, 0x0123
+     c30:	89 2b       	or	r24, r25
+     c32:	59 f5       	brne	.+86     	; 0xc8a <wl_token_ring_timeout_handler+0xbc>
+     c34:	0e 94 d4 0a 	call	0x15a8	; 0x15a8 <sensor_matrix_get_joined>
+     c38:	89 2b       	or	r24, r25
+     c3a:	c9 f4       	brne	.+50     	; 0xc6e <wl_token_ring_timeout_handler+0xa0>
+     c3c:	0e 94 ab 01 	call	0x356	; 0x356 <wl_get_xbee_id>
+     c40:	61 e0       	ldi	r22, 0x01	; 1
+     c42:	70 e0       	ldi	r23, 0x00	; 0
+     c44:	0e 94 9c 0a 	call	0x1538	; 0x1538 <sensor_matrix_set_in_ring>
+     c48:	81 e0       	ldi	r24, 0x01	; 1
+     c4a:	90 e0       	ldi	r25, 0x00	; 0
+     c4c:	90 93 03 06 	sts	0x0603, r25
+     c50:	80 93 02 06 	sts	0x0602, r24
+     c54:	84 e0       	ldi	r24, 0x04	; 4
+     c56:	90 e0       	ldi	r25, 0x00	; 0
+     c58:	90 93 21 01 	sts	0x0121, r25
+     c5c:	80 93 20 01 	sts	0x0120, r24
+     c60:	0e 94 ab 01 	call	0x356	; 0x356 <wl_get_xbee_id>
+     c64:	90 93 1f 01 	sts	0x011F, r25
+     c68:	80 93 1e 01 	sts	0x011E, r24
+     c6c:	0e c0       	rjmp	.+28     	; 0xc8a <wl_token_ring_timeout_handler+0xbc>
+     c6e:	0e 94 bf 02 	call	0x57e	; 0x57e <wl_token_ring_join>
+     c72:	0e 94 91 2f 	call	0x5f22	; 0x5f22 <rand>
+     c76:	6f ef       	ldi	r22, 0xFF	; 255
+     c78:	7f e0       	ldi	r23, 0x0F	; 15
+     c7a:	0e 94 aa 2f 	call	0x5f54	; 0x5f54 <__divmodhi4>
+     c7e:	6f 5f       	subi	r22, 0xFF	; 255
+     c80:	7f 4f       	sbci	r23, 0xFF	; 255
+     c82:	70 93 23 01 	sts	0x0123, r23
+     c86:	60 93 22 01 	sts	0x0122, r22
+     c8a:	80 91 20 01 	lds	r24, 0x0120
+     c8e:	90 91 21 01 	lds	r25, 0x0121
+     c92:	97 fd       	sbrc	r25, 7
+     c94:	05 c0       	rjmp	.+10     	; 0xca0 <wl_token_ring_timeout_handler+0xd2>
+     c96:	01 97       	sbiw	r24, 0x01	; 1
+     c98:	90 93 21 01 	sts	0x0121, r25
+     c9c:	80 93 20 01 	sts	0x0120, r24
+     ca0:	80 91 22 01 	lds	r24, 0x0122
+     ca4:	90 91 23 01 	lds	r25, 0x0123
+     ca8:	97 fd       	sbrc	r25, 7
+     caa:	05 c0       	rjmp	.+10     	; 0xcb6 <wl_token_ring_timeout_handler+0xe8>
+     cac:	01 97       	sbiw	r24, 0x01	; 1
+     cae:	90 93 23 01 	sts	0x0123, r25
+     cb2:	80 93 22 01 	sts	0x0122, r24
+     cb6:	80 91 00 06 	lds	r24, 0x0600
+     cba:	90 91 01 06 	lds	r25, 0x0601
+     cbe:	97 fd       	sbrc	r25, 7
+     cc0:	05 c0       	rjmp	.+10     	; 0xccc <wl_token_ring_timeout_handler+0xfe>
+     cc2:	01 96       	adiw	r24, 0x01	; 1
+     cc4:	90 93 01 06 	sts	0x0601, r25
+     cc8:	80 93 00 06 	sts	0x0600, r24
+     ccc:	1f 91       	pop	r17
+     cce:	0f 91       	pop	r16
+     cd0:	08 95       	ret
 
-00000c80 <wl_token_ring_register>:
-     c80:	0e 94 e4 01 	call	0x3c8	; 0x3c8 <wl_get_xbee_id>
-     c84:	8f 3f       	cpi	r24, 0xFF	; 255
-     c86:	91 05       	cpc	r25, r1
-     c88:	21 f0       	breq	.+8      	; 0xc92 <wl_token_ring_register+0x12>
-     c8a:	1c f0       	brlt	.+6      	; 0xc92 <wl_token_ring_register+0x12>
-     c8c:	2f ef       	ldi	r18, 0xFF	; 255
-     c8e:	3f ef       	ldi	r19, 0xFF	; 255
-     c90:	0e c0       	rjmp	.+28     	; 0xcae <wl_token_ring_register+0x2e>
-     c92:	0e 94 22 0a 	call	0x1444	; 0x1444 <sensor_matrix_create>
-     c96:	0e 94 e4 01 	call	0x3c8	; 0x3c8 <wl_get_xbee_id>
-     c9a:	60 e0       	ldi	r22, 0x00	; 0
-     c9c:	70 e0       	ldi	r23, 0x00	; 0
-     c9e:	0e 94 73 0a 	call	0x14e6	; 0x14e6 <sensor_matrix_set_in_ring>
-     ca2:	83 e2       	ldi	r24, 0x23	; 35
-     ca4:	91 e0       	ldi	r25, 0x01	; 1
-     ca6:	0e 94 83 00 	call	0x106	; 0x106 <wl_register_packet_group>
-     caa:	20 e0       	ldi	r18, 0x00	; 0
-     cac:	30 e0       	ldi	r19, 0x00	; 0
-     cae:	c9 01       	movw	r24, r18
-     cb0:	08 95       	ret
+00000cd2 <wl_token_ring_register>:
+     cd2:	0e 94 ab 01 	call	0x356	; 0x356 <wl_get_xbee_id>
+     cd6:	8f 3f       	cpi	r24, 0xFF	; 255
+     cd8:	91 05       	cpc	r25, r1
+     cda:	21 f0       	breq	.+8      	; 0xce4 <wl_token_ring_register+0x12>
+     cdc:	1c f0       	brlt	.+6      	; 0xce4 <wl_token_ring_register+0x12>
+     cde:	2f ef       	ldi	r18, 0xFF	; 255
+     ce0:	3f ef       	ldi	r19, 0xFF	; 255
+     ce2:	0e c0       	rjmp	.+28     	; 0xd00 <wl_token_ring_register+0x2e>
+     ce4:	0e 94 4b 0a 	call	0x1496	; 0x1496 <sensor_matrix_create>
+     ce8:	0e 94 ab 01 	call	0x356	; 0x356 <wl_get_xbee_id>
+     cec:	60 e0       	ldi	r22, 0x00	; 0
+     cee:	70 e0       	ldi	r23, 0x00	; 0
+     cf0:	0e 94 9c 0a 	call	0x1538	; 0x1538 <sensor_matrix_set_in_ring>
+     cf4:	84 e1       	ldi	r24, 0x14	; 20
+     cf6:	91 e0       	ldi	r25, 0x01	; 1
+     cf8:	0e 94 83 00 	call	0x106	; 0x106 <wl_register_packet_group>
+     cfc:	20 e0       	ldi	r18, 0x00	; 0
+     cfe:	30 e0       	ldi	r19, 0x00	; 0
+     d00:	c9 01       	movw	r24, r18
+     d02:	08 95       	ret
 
-00000cb2 <__vector_30>:
-     cb2:	1f 92       	push	r1
-     cb4:	0f 92       	push	r0
-     cb6:	0f b6       	in	r0, 0x3f	; 63
-     cb8:	0f 92       	push	r0
-     cba:	0b b6       	in	r0, 0x3b	; 59
-     cbc:	0f 92       	push	r0
-     cbe:	11 24       	eor	r1, r1
-     cc0:	2f 93       	push	r18
-     cc2:	3f 93       	push	r19
-     cc4:	8f 93       	push	r24
-     cc6:	9f 93       	push	r25
-     cc8:	ef 93       	push	r30
-     cca:	ff 93       	push	r31
-     ccc:	80 91 9c 00 	lds	r24, 0x009C
-     cd0:	e0 91 14 06 	lds	r30, 0x0614
-     cd4:	f0 91 15 06 	lds	r31, 0x0615
-     cd8:	e5 53       	subi	r30, 0x35	; 53
-     cda:	f9 4f       	sbci	r31, 0xF9	; 249
-     cdc:	80 83       	st	Z, r24
-     cde:	80 91 14 06 	lds	r24, 0x0614
-     ce2:	90 91 15 06 	lds	r25, 0x0615
-     ce6:	01 96       	adiw	r24, 0x01	; 1
-     ce8:	80 38       	cpi	r24, 0x80	; 128
-     cea:	91 05       	cpc	r25, r1
-     cec:	11 f4       	brne	.+4      	; 0xcf2 <__vector_30+0x40>
-     cee:	80 e0       	ldi	r24, 0x00	; 0
-     cf0:	90 e0       	ldi	r25, 0x00	; 0
-     cf2:	20 91 16 06 	lds	r18, 0x0616
-     cf6:	30 91 17 06 	lds	r19, 0x0617
-     cfa:	90 93 15 06 	sts	0x0615, r25
-     cfe:	80 93 14 06 	sts	0x0614, r24
-     d02:	ff 91       	pop	r31
-     d04:	ef 91       	pop	r30
-     d06:	9f 91       	pop	r25
-     d08:	8f 91       	pop	r24
-     d0a:	3f 91       	pop	r19
-     d0c:	2f 91       	pop	r18
-     d0e:	0f 90       	pop	r0
-     d10:	0b be       	out	0x3b, r0	; 59
-     d12:	0f 90       	pop	r0
-     d14:	0f be       	out	0x3f, r0	; 63
-     d16:	0f 90       	pop	r0
-     d18:	1f 90       	pop	r1
-     d1a:	18 95       	reti
-
-00000d1c <xbee_get_packet>:
-     d1c:	0f 93       	push	r16
-     d1e:	1f 93       	push	r17
-     d20:	cf 93       	push	r28
-     d22:	df 93       	push	r29
-     d24:	8c 01       	movw	r16, r24
-     d26:	80 91 1e 06 	lds	r24, 0x061E
-     d2a:	90 91 1f 06 	lds	r25, 0x061F
-     d2e:	89 2b       	or	r24, r25
-     d30:	d1 f5       	brne	.+116    	; 0xda6 <xbee_get_packet+0x8a>
-     d32:	80 91 16 06 	lds	r24, 0x0616
-     d36:	90 91 17 06 	lds	r25, 0x0617
+00000d04 <__vector_30>:
+     d04:	1f 92       	push	r1
+     d06:	0f 92       	push	r0
+     d08:	0f b6       	in	r0, 0x3f	; 63
+     d0a:	0f 92       	push	r0
+     d0c:	0b b6       	in	r0, 0x3b	; 59
+     d0e:	0f 92       	push	r0
+     d10:	11 24       	eor	r1, r1
+     d12:	2f 93       	push	r18
+     d14:	3f 93       	push	r19
+     d16:	8f 93       	push	r24
+     d18:	9f 93       	push	r25
+     d1a:	ef 93       	push	r30
+     d1c:	ff 93       	push	r31
+     d1e:	80 91 9c 00 	lds	r24, 0x009C
+     d22:	e0 91 04 06 	lds	r30, 0x0604
+     d26:	f0 91 05 06 	lds	r31, 0x0605
+     d2a:	e5 54       	subi	r30, 0x45	; 69
+     d2c:	f9 4f       	sbci	r31, 0xF9	; 249
+     d2e:	80 83       	st	Z, r24
+     d30:	80 91 04 06 	lds	r24, 0x0604
+     d34:	90 91 05 06 	lds	r25, 0x0605
+     d38:	01 96       	adiw	r24, 0x01	; 1
      d3a:	80 38       	cpi	r24, 0x80	; 128
      d3c:	91 05       	cpc	r25, r1
-     d3e:	21 f4       	brne	.+8      	; 0xd48 <xbee_get_packet+0x2c>
-     d40:	10 92 17 06 	sts	0x0617, r1
-     d44:	10 92 16 06 	sts	0x0616, r1
-     d48:	20 91 16 06 	lds	r18, 0x0616
-     d4c:	30 91 17 06 	lds	r19, 0x0617
-     d50:	80 91 14 06 	lds	r24, 0x0614
-     d54:	90 91 15 06 	lds	r25, 0x0615
-     d58:	28 17       	cp	r18, r24
-     d5a:	39 07       	cpc	r19, r25
-     d5c:	09 f4       	brne	.+2      	; 0xd60 <xbee_get_packet+0x44>
-     d5e:	05 c1       	rjmp	.+522    	; 0xf6a <xbee_get_packet+0x24e>
-     d60:	80 91 16 06 	lds	r24, 0x0616
-     d64:	90 91 17 06 	lds	r25, 0x0617
-     d68:	fc 01       	movw	r30, r24
-     d6a:	e5 53       	subi	r30, 0x35	; 53
-     d6c:	f9 4f       	sbci	r31, 0xF9	; 249
-     d6e:	20 81       	ld	r18, Z
-     d70:	01 96       	adiw	r24, 0x01	; 1
-     d72:	90 93 17 06 	sts	0x0617, r25
-     d76:	80 93 16 06 	sts	0x0616, r24
-     d7a:	2e 37       	cpi	r18, 0x7E	; 126
-     d7c:	d1 f6       	brne	.-76     	; 0xd32 <xbee_get_packet+0x16>
-     d7e:	80 91 16 06 	lds	r24, 0x0616
-     d82:	90 91 17 06 	lds	r25, 0x0617
-     d86:	80 38       	cpi	r24, 0x80	; 128
-     d88:	91 05       	cpc	r25, r1
-     d8a:	21 f4       	brne	.+8      	; 0xd94 <xbee_get_packet+0x78>
-     d8c:	10 92 17 06 	sts	0x0617, r1
-     d90:	10 92 16 06 	sts	0x0616, r1
-     d94:	8e e7       	ldi	r24, 0x7E	; 126
-     d96:	80 93 20 06 	sts	0x0620, r24
-     d9a:	81 e0       	ldi	r24, 0x01	; 1
-     d9c:	90 e0       	ldi	r25, 0x00	; 0
-     d9e:	90 93 1f 06 	sts	0x061F, r25
-     da2:	80 93 1e 06 	sts	0x061E, r24
-     da6:	60 91 1e 06 	lds	r22, 0x061E
-     daa:	70 91 1f 06 	lds	r23, 0x061F
-     dae:	63 30       	cpi	r22, 0x03	; 3
-     db0:	71 05       	cpc	r23, r1
-     db2:	1c f4       	brge	.+6      	; 0xdba <xbee_get_packet+0x9e>
-     db4:	4f ef       	ldi	r20, 0xFF	; 255
-     db6:	5f ef       	ldi	r21, 0xFF	; 255
-     db8:	08 c0       	rjmp	.+16     	; 0xdca <xbee_get_packet+0xae>
-     dba:	90 91 21 06 	lds	r25, 0x0621
-     dbe:	80 e0       	ldi	r24, 0x00	; 0
-     dc0:	20 91 22 06 	lds	r18, 0x0622
-     dc4:	ac 01       	movw	r20, r24
-     dc6:	42 0f       	add	r20, r18
-     dc8:	51 1d       	adc	r21, r1
-     dca:	eb 01       	movw	r28, r22
-     dcc:	c0 5e       	subi	r28, 0xE0	; 224
-     dce:	d9 4f       	sbci	r29, 0xF9	; 249
-     dd0:	3f c0       	rjmp	.+126    	; 0xe50 <xbee_get_packet+0x134>
-     dd2:	63 30       	cpi	r22, 0x03	; 3
-     dd4:	71 05       	cpc	r23, r1
-     dd6:	81 f4       	brne	.+32     	; 0xdf8 <xbee_get_packet+0xdc>
-     dd8:	b0 91 21 06 	lds	r27, 0x0621
-     ddc:	a0 e0       	ldi	r26, 0x00	; 0
-     dde:	80 91 22 06 	lds	r24, 0x0622
-     de2:	ad 01       	movw	r20, r26
-     de4:	48 0f       	add	r20, r24
-     de6:	51 1d       	adc	r21, r1
-     de8:	49 37       	cpi	r20, 0x79	; 121
-     dea:	51 05       	cpc	r21, r1
-     dec:	2c f0       	brlt	.+10     	; 0xdf8 <xbee_get_packet+0xdc>
-     dee:	10 92 1f 06 	sts	0x061F, r1
-     df2:	10 92 1e 06 	sts	0x061E, r1
-     df6:	b9 c0       	rjmp	.+370    	; 0xf6a <xbee_get_packet+0x24e>
-     df8:	20 91 16 06 	lds	r18, 0x0616
-     dfc:	30 91 17 06 	lds	r19, 0x0617
-     e00:	80 91 14 06 	lds	r24, 0x0614
-     e04:	90 91 15 06 	lds	r25, 0x0615
-     e08:	28 17       	cp	r18, r24
-     e0a:	39 07       	cpc	r19, r25
-     e0c:	29 f4       	brne	.+10     	; 0xe18 <xbee_get_packet+0xfc>
-     e0e:	70 93 1f 06 	sts	0x061F, r23
-     e12:	60 93 1e 06 	sts	0x061E, r22
-     e16:	a9 c0       	rjmp	.+338    	; 0xf6a <xbee_get_packet+0x24e>
-     e18:	80 91 16 06 	lds	r24, 0x0616
-     e1c:	90 91 17 06 	lds	r25, 0x0617
-     e20:	fc 01       	movw	r30, r24
-     e22:	e5 53       	subi	r30, 0x35	; 53
-     e24:	f9 4f       	sbci	r31, 0xF9	; 249
-     e26:	20 81       	ld	r18, Z
-     e28:	28 83       	st	Y, r18
-     e2a:	6f 5f       	subi	r22, 0xFF	; 255
-     e2c:	7f 4f       	sbci	r23, 0xFF	; 255
-     e2e:	01 96       	adiw	r24, 0x01	; 1
-     e30:	90 93 17 06 	sts	0x0617, r25
-     e34:	80 93 16 06 	sts	0x0616, r24
-     e38:	80 91 16 06 	lds	r24, 0x0616
-     e3c:	90 91 17 06 	lds	r25, 0x0617
-     e40:	80 38       	cpi	r24, 0x80	; 128
-     e42:	91 05       	cpc	r25, r1
-     e44:	21 f4       	brne	.+8      	; 0xe4e <xbee_get_packet+0x132>
-     e46:	10 92 17 06 	sts	0x0617, r1
-     e4a:	10 92 16 06 	sts	0x0616, r1
-     e4e:	21 96       	adiw	r28, 0x01	; 1
-     e50:	8f ef       	ldi	r24, 0xFF	; 255
-     e52:	4f 3f       	cpi	r20, 0xFF	; 255
-     e54:	58 07       	cpc	r21, r24
-     e56:	09 f4       	brne	.+2      	; 0xe5a <xbee_get_packet+0x13e>
-     e58:	bc cf       	rjmp	.-136    	; 0xdd2 <xbee_get_packet+0xb6>
-     e5a:	ca 01       	movw	r24, r20
-     e5c:	03 96       	adiw	r24, 0x03	; 3
-     e5e:	86 17       	cp	r24, r22
-     e60:	97 07       	cpc	r25, r23
-     e62:	0c f0       	brlt	.+2      	; 0xe66 <xbee_get_packet+0x14a>
-     e64:	b6 cf       	rjmp	.-148    	; 0xdd2 <xbee_get_packet+0xb6>
-     e66:	10 92 1f 06 	sts	0x061F, r1
-     e6a:	10 92 1e 06 	sts	0x061E, r1
-     e6e:	ba 01       	movw	r22, r20
-     e70:	6c 5f       	subi	r22, 0xFC	; 252
-     e72:	7f 4f       	sbci	r23, 0xFF	; 255
-     e74:	23 e0       	ldi	r18, 0x03	; 3
-     e76:	30 e0       	ldi	r19, 0x00	; 0
-     e78:	90 e0       	ldi	r25, 0x00	; 0
-     e7a:	07 c0       	rjmp	.+14     	; 0xe8a <xbee_get_packet+0x16e>
-     e7c:	f9 01       	movw	r30, r18
-     e7e:	e0 5e       	subi	r30, 0xE0	; 224
-     e80:	f9 4f       	sbci	r31, 0xF9	; 249
-     e82:	80 81       	ld	r24, Z
-     e84:	98 0f       	add	r25, r24
-     e86:	2f 5f       	subi	r18, 0xFF	; 255
-     e88:	3f 4f       	sbci	r19, 0xFF	; 255
-     e8a:	26 17       	cp	r18, r22
-     e8c:	37 07       	cpc	r19, r23
-     e8e:	b4 f3       	brlt	.-20     	; 0xe7c <xbee_get_packet+0x160>
-     e90:	9f 3f       	cpi	r25, 0xFF	; 255
-     e92:	09 f0       	breq	.+2      	; 0xe96 <xbee_get_packet+0x17a>
-     e94:	6a c0       	rjmp	.+212    	; 0xf6a <xbee_get_packet+0x24e>
-     e96:	14 16       	cp	r1, r20
-     e98:	15 06       	cpc	r1, r21
-     e9a:	0c f0       	brlt	.+2      	; 0xe9e <xbee_get_packet+0x182>
-     e9c:	51 c0       	rjmp	.+162    	; 0xf40 <xbee_get_packet+0x224>
-     e9e:	80 91 23 06 	lds	r24, 0x0623
-     ea2:	88 38       	cpi	r24, 0x88	; 136
-     ea4:	21 f0       	breq	.+8      	; 0xeae <xbee_get_packet+0x192>
-     ea6:	8a 38       	cpi	r24, 0x8A	; 138
-     ea8:	09 f0       	breq	.+2      	; 0xeac <xbee_get_packet+0x190>
-     eaa:	4a c0       	rjmp	.+148    	; 0xf40 <xbee_get_packet+0x224>
-     eac:	61 c0       	rjmp	.+194    	; 0xf70 <xbee_get_packet+0x254>
-     eae:	80 91 25 06 	lds	r24, 0x0625
-     eb2:	90 91 26 06 	lds	r25, 0x0626
-     eb6:	89 34       	cpi	r24, 0x49	; 73
-     eb8:	61 f4       	brne	.+24     	; 0xed2 <xbee_get_packet+0x1b6>
-     eba:	94 34       	cpi	r25, 0x44	; 68
-     ebc:	09 f0       	breq	.+2      	; 0xec0 <xbee_get_packet+0x1a4>
-     ebe:	58 c0       	rjmp	.+176    	; 0xf70 <xbee_get_packet+0x254>
-     ec0:	80 91 65 01 	lds	r24, 0x0165
-     ec4:	90 91 66 01 	lds	r25, 0x0166
-     ec8:	90 93 64 01 	sts	0x0164, r25
-     ecc:	80 93 63 01 	sts	0x0163, r24
-     ed0:	4f c0       	rjmp	.+158    	; 0xf70 <xbee_get_packet+0x254>
-     ed2:	83 34       	cpi	r24, 0x43	; 67
-     ed4:	61 f4       	brne	.+24     	; 0xeee <xbee_get_packet+0x1d2>
-     ed6:	98 34       	cpi	r25, 0x48	; 72
-     ed8:	09 f0       	breq	.+2      	; 0xedc <xbee_get_packet+0x1c0>
-     eda:	4a c0       	rjmp	.+148    	; 0xf70 <xbee_get_packet+0x254>
-     edc:	80 91 1c 06 	lds	r24, 0x061C
-     ee0:	90 91 1d 06 	lds	r25, 0x061D
-     ee4:	90 93 1b 06 	sts	0x061B, r25
-     ee8:	80 93 1a 06 	sts	0x061A, r24
-     eec:	41 c0       	rjmp	.+130    	; 0xf70 <xbee_get_packet+0x254>
-     eee:	8d 34       	cpi	r24, 0x4D	; 77
-     ef0:	09 f0       	breq	.+2      	; 0xef4 <xbee_get_packet+0x1d8>
-     ef2:	3e c0       	rjmp	.+124    	; 0xf70 <xbee_get_packet+0x254>
-     ef4:	99 35       	cpi	r25, 0x59	; 89
-     ef6:	e1 f5       	brne	.+120    	; 0xf70 <xbee_get_packet+0x254>
-     ef8:	ba 01       	movw	r22, r20
-     efa:	65 50       	subi	r22, 0x05	; 5
-     efc:	70 40       	sbci	r23, 0x00	; 0
-     efe:	c1 f1       	breq	.+112    	; 0xf70 <xbee_get_packet+0x254>
-     f00:	10 92 19 06 	sts	0x0619, r1
-     f04:	10 92 18 06 	sts	0x0618, r1
-     f08:	e8 e2       	ldi	r30, 0x28	; 40
-     f0a:	f6 e0       	ldi	r31, 0x06	; 6
-     f0c:	40 e0       	ldi	r20, 0x00	; 0
-     f0e:	50 e0       	ldi	r21, 0x00	; 0
-     f10:	0f c0       	rjmp	.+30     	; 0xf30 <xbee_get_packet+0x214>
-     f12:	80 91 18 06 	lds	r24, 0x0618
-     f16:	90 91 19 06 	lds	r25, 0x0619
-     f1a:	21 91       	ld	r18, Z+
-     f1c:	98 2f       	mov	r25, r24
-     f1e:	88 27       	eor	r24, r24
-     f20:	82 0f       	add	r24, r18
-     f22:	91 1d       	adc	r25, r1
-     f24:	90 93 19 06 	sts	0x0619, r25
-     f28:	80 93 18 06 	sts	0x0618, r24
-     f2c:	4f 5f       	subi	r20, 0xFF	; 255
-     f2e:	5f 4f       	sbci	r21, 0xFF	; 255
-     f30:	46 17       	cp	r20, r22
-     f32:	57 07       	cpc	r21, r23
-     f34:	74 f3       	brlt	.-36     	; 0xf12 <xbee_get_packet+0x1f6>
-     f36:	80 91 18 06 	lds	r24, 0x0618
-     f3a:	90 91 19 06 	lds	r25, 0x0619
-     f3e:	18 c0       	rjmp	.+48     	; 0xf70 <xbee_get_packet+0x254>
-     f40:	01 15       	cp	r16, r1
-     f42:	11 05       	cpc	r17, r1
-     f44:	91 f0       	breq	.+36     	; 0xf6a <xbee_get_packet+0x24e>
-     f46:	d8 01       	movw	r26, r16
-     f48:	23 e0       	ldi	r18, 0x03	; 3
-     f4a:	30 e0       	ldi	r19, 0x00	; 0
-     f4c:	ba 01       	movw	r22, r20
-     f4e:	6e 5f       	subi	r22, 0xFE	; 254
-     f50:	7f 4f       	sbci	r23, 0xFF	; 255
-     f52:	07 c0       	rjmp	.+14     	; 0xf62 <xbee_get_packet+0x246>
-     f54:	f9 01       	movw	r30, r18
-     f56:	e0 5e       	subi	r30, 0xE0	; 224
-     f58:	f9 4f       	sbci	r31, 0xF9	; 249
-     f5a:	80 81       	ld	r24, Z
-     f5c:	8d 93       	st	X+, r24
-     f5e:	2f 5f       	subi	r18, 0xFF	; 255
-     f60:	3f 4f       	sbci	r19, 0xFF	; 255
-     f62:	62 17       	cp	r22, r18
-     f64:	73 07       	cpc	r23, r19
-     f66:	b4 f7       	brge	.-20     	; 0xf54 <xbee_get_packet+0x238>
-     f68:	05 c0       	rjmp	.+10     	; 0xf74 <xbee_get_packet+0x258>
-     f6a:	4f ef       	ldi	r20, 0xFF	; 255
-     f6c:	5f ef       	ldi	r21, 0xFF	; 255
-     f6e:	02 c0       	rjmp	.+4      	; 0xf74 <xbee_get_packet+0x258>
-     f70:	43 e0       	ldi	r20, 0x03	; 3
-     f72:	50 e0       	ldi	r21, 0x00	; 0
-     f74:	ca 01       	movw	r24, r20
-     f76:	df 91       	pop	r29
-     f78:	cf 91       	pop	r28
-     f7a:	1f 91       	pop	r17
-     f7c:	0f 91       	pop	r16
-     f7e:	08 95       	ret
+     d3e:	11 f4       	brne	.+4      	; 0xd44 <__vector_30+0x40>
+     d40:	80 e0       	ldi	r24, 0x00	; 0
+     d42:	90 e0       	ldi	r25, 0x00	; 0
+     d44:	20 91 06 06 	lds	r18, 0x0606
+     d48:	30 91 07 06 	lds	r19, 0x0607
+     d4c:	90 93 05 06 	sts	0x0605, r25
+     d50:	80 93 04 06 	sts	0x0604, r24
+     d54:	ff 91       	pop	r31
+     d56:	ef 91       	pop	r30
+     d58:	9f 91       	pop	r25
+     d5a:	8f 91       	pop	r24
+     d5c:	3f 91       	pop	r19
+     d5e:	2f 91       	pop	r18
+     d60:	0f 90       	pop	r0
+     d62:	0b be       	out	0x3b, r0	; 59
+     d64:	0f 90       	pop	r0
+     d66:	0f be       	out	0x3f, r0	; 63
+     d68:	0f 90       	pop	r0
+     d6a:	1f 90       	pop	r1
+     d6c:	18 95       	reti
 
-00000f80 <xbee_get_pan_id>:
-     f80:	80 91 63 01 	lds	r24, 0x0163
-     f84:	90 91 64 01 	lds	r25, 0x0164
-     f88:	08 95       	ret
+00000d6e <xbee_get_packet>:
+     d6e:	0f 93       	push	r16
+     d70:	1f 93       	push	r17
+     d72:	cf 93       	push	r28
+     d74:	df 93       	push	r29
+     d76:	8c 01       	movw	r16, r24
+     d78:	80 91 0e 06 	lds	r24, 0x060E
+     d7c:	90 91 0f 06 	lds	r25, 0x060F
+     d80:	89 2b       	or	r24, r25
+     d82:	d1 f5       	brne	.+116    	; 0xdf8 <xbee_get_packet+0x8a>
+     d84:	80 91 06 06 	lds	r24, 0x0606
+     d88:	90 91 07 06 	lds	r25, 0x0607
+     d8c:	80 38       	cpi	r24, 0x80	; 128
+     d8e:	91 05       	cpc	r25, r1
+     d90:	21 f4       	brne	.+8      	; 0xd9a <xbee_get_packet+0x2c>
+     d92:	10 92 07 06 	sts	0x0607, r1
+     d96:	10 92 06 06 	sts	0x0606, r1
+     d9a:	20 91 06 06 	lds	r18, 0x0606
+     d9e:	30 91 07 06 	lds	r19, 0x0607
+     da2:	80 91 04 06 	lds	r24, 0x0604
+     da6:	90 91 05 06 	lds	r25, 0x0605
+     daa:	28 17       	cp	r18, r24
+     dac:	39 07       	cpc	r19, r25
+     dae:	09 f4       	brne	.+2      	; 0xdb2 <xbee_get_packet+0x44>
+     db0:	05 c1       	rjmp	.+522    	; 0xfbc <xbee_get_packet+0x24e>
+     db2:	80 91 06 06 	lds	r24, 0x0606
+     db6:	90 91 07 06 	lds	r25, 0x0607
+     dba:	fc 01       	movw	r30, r24
+     dbc:	e5 54       	subi	r30, 0x45	; 69
+     dbe:	f9 4f       	sbci	r31, 0xF9	; 249
+     dc0:	20 81       	ld	r18, Z
+     dc2:	01 96       	adiw	r24, 0x01	; 1
+     dc4:	90 93 07 06 	sts	0x0607, r25
+     dc8:	80 93 06 06 	sts	0x0606, r24
+     dcc:	2e 37       	cpi	r18, 0x7E	; 126
+     dce:	d1 f6       	brne	.-76     	; 0xd84 <xbee_get_packet+0x16>
+     dd0:	80 91 06 06 	lds	r24, 0x0606
+     dd4:	90 91 07 06 	lds	r25, 0x0607
+     dd8:	80 38       	cpi	r24, 0x80	; 128
+     dda:	91 05       	cpc	r25, r1
+     ddc:	21 f4       	brne	.+8      	; 0xde6 <xbee_get_packet+0x78>
+     dde:	10 92 07 06 	sts	0x0607, r1
+     de2:	10 92 06 06 	sts	0x0606, r1
+     de6:	8e e7       	ldi	r24, 0x7E	; 126
+     de8:	80 93 10 06 	sts	0x0610, r24
+     dec:	81 e0       	ldi	r24, 0x01	; 1
+     dee:	90 e0       	ldi	r25, 0x00	; 0
+     df0:	90 93 0f 06 	sts	0x060F, r25
+     df4:	80 93 0e 06 	sts	0x060E, r24
+     df8:	60 91 0e 06 	lds	r22, 0x060E
+     dfc:	70 91 0f 06 	lds	r23, 0x060F
+     e00:	63 30       	cpi	r22, 0x03	; 3
+     e02:	71 05       	cpc	r23, r1
+     e04:	1c f4       	brge	.+6      	; 0xe0c <xbee_get_packet+0x9e>
+     e06:	4f ef       	ldi	r20, 0xFF	; 255
+     e08:	5f ef       	ldi	r21, 0xFF	; 255
+     e0a:	08 c0       	rjmp	.+16     	; 0xe1c <xbee_get_packet+0xae>
+     e0c:	90 91 11 06 	lds	r25, 0x0611
+     e10:	80 e0       	ldi	r24, 0x00	; 0
+     e12:	20 91 12 06 	lds	r18, 0x0612
+     e16:	ac 01       	movw	r20, r24
+     e18:	42 0f       	add	r20, r18
+     e1a:	51 1d       	adc	r21, r1
+     e1c:	eb 01       	movw	r28, r22
+     e1e:	c0 5f       	subi	r28, 0xF0	; 240
+     e20:	d9 4f       	sbci	r29, 0xF9	; 249
+     e22:	3f c0       	rjmp	.+126    	; 0xea2 <xbee_get_packet+0x134>
+     e24:	63 30       	cpi	r22, 0x03	; 3
+     e26:	71 05       	cpc	r23, r1
+     e28:	81 f4       	brne	.+32     	; 0xe4a <xbee_get_packet+0xdc>
+     e2a:	b0 91 11 06 	lds	r27, 0x0611
+     e2e:	a0 e0       	ldi	r26, 0x00	; 0
+     e30:	80 91 12 06 	lds	r24, 0x0612
+     e34:	ad 01       	movw	r20, r26
+     e36:	48 0f       	add	r20, r24
+     e38:	51 1d       	adc	r21, r1
+     e3a:	49 37       	cpi	r20, 0x79	; 121
+     e3c:	51 05       	cpc	r21, r1
+     e3e:	2c f0       	brlt	.+10     	; 0xe4a <xbee_get_packet+0xdc>
+     e40:	10 92 0f 06 	sts	0x060F, r1
+     e44:	10 92 0e 06 	sts	0x060E, r1
+     e48:	b9 c0       	rjmp	.+370    	; 0xfbc <xbee_get_packet+0x24e>
+     e4a:	20 91 06 06 	lds	r18, 0x0606
+     e4e:	30 91 07 06 	lds	r19, 0x0607
+     e52:	80 91 04 06 	lds	r24, 0x0604
+     e56:	90 91 05 06 	lds	r25, 0x0605
+     e5a:	28 17       	cp	r18, r24
+     e5c:	39 07       	cpc	r19, r25
+     e5e:	29 f4       	brne	.+10     	; 0xe6a <xbee_get_packet+0xfc>
+     e60:	70 93 0f 06 	sts	0x060F, r23
+     e64:	60 93 0e 06 	sts	0x060E, r22
+     e68:	a9 c0       	rjmp	.+338    	; 0xfbc <xbee_get_packet+0x24e>
+     e6a:	80 91 06 06 	lds	r24, 0x0606
+     e6e:	90 91 07 06 	lds	r25, 0x0607
+     e72:	fc 01       	movw	r30, r24
+     e74:	e5 54       	subi	r30, 0x45	; 69
+     e76:	f9 4f       	sbci	r31, 0xF9	; 249
+     e78:	20 81       	ld	r18, Z
+     e7a:	28 83       	st	Y, r18
+     e7c:	6f 5f       	subi	r22, 0xFF	; 255
+     e7e:	7f 4f       	sbci	r23, 0xFF	; 255
+     e80:	01 96       	adiw	r24, 0x01	; 1
+     e82:	90 93 07 06 	sts	0x0607, r25
+     e86:	80 93 06 06 	sts	0x0606, r24
+     e8a:	80 91 06 06 	lds	r24, 0x0606
+     e8e:	90 91 07 06 	lds	r25, 0x0607
+     e92:	80 38       	cpi	r24, 0x80	; 128
+     e94:	91 05       	cpc	r25, r1
+     e96:	21 f4       	brne	.+8      	; 0xea0 <xbee_get_packet+0x132>
+     e98:	10 92 07 06 	sts	0x0607, r1
+     e9c:	10 92 06 06 	sts	0x0606, r1
+     ea0:	21 96       	adiw	r28, 0x01	; 1
+     ea2:	8f ef       	ldi	r24, 0xFF	; 255
+     ea4:	4f 3f       	cpi	r20, 0xFF	; 255
+     ea6:	58 07       	cpc	r21, r24
+     ea8:	09 f4       	brne	.+2      	; 0xeac <xbee_get_packet+0x13e>
+     eaa:	bc cf       	rjmp	.-136    	; 0xe24 <xbee_get_packet+0xb6>
+     eac:	ca 01       	movw	r24, r20
+     eae:	03 96       	adiw	r24, 0x03	; 3
+     eb0:	86 17       	cp	r24, r22
+     eb2:	97 07       	cpc	r25, r23
+     eb4:	0c f0       	brlt	.+2      	; 0xeb8 <xbee_get_packet+0x14a>
+     eb6:	b6 cf       	rjmp	.-148    	; 0xe24 <xbee_get_packet+0xb6>
+     eb8:	10 92 0f 06 	sts	0x060F, r1
+     ebc:	10 92 0e 06 	sts	0x060E, r1
+     ec0:	ba 01       	movw	r22, r20
+     ec2:	6c 5f       	subi	r22, 0xFC	; 252
+     ec4:	7f 4f       	sbci	r23, 0xFF	; 255
+     ec6:	23 e0       	ldi	r18, 0x03	; 3
+     ec8:	30 e0       	ldi	r19, 0x00	; 0
+     eca:	90 e0       	ldi	r25, 0x00	; 0
+     ecc:	07 c0       	rjmp	.+14     	; 0xedc <xbee_get_packet+0x16e>
+     ece:	f9 01       	movw	r30, r18
+     ed0:	e0 5f       	subi	r30, 0xF0	; 240
+     ed2:	f9 4f       	sbci	r31, 0xF9	; 249
+     ed4:	80 81       	ld	r24, Z
+     ed6:	98 0f       	add	r25, r24
+     ed8:	2f 5f       	subi	r18, 0xFF	; 255
+     eda:	3f 4f       	sbci	r19, 0xFF	; 255
+     edc:	26 17       	cp	r18, r22
+     ede:	37 07       	cpc	r19, r23
+     ee0:	b4 f3       	brlt	.-20     	; 0xece <xbee_get_packet+0x160>
+     ee2:	9f 3f       	cpi	r25, 0xFF	; 255
+     ee4:	09 f0       	breq	.+2      	; 0xee8 <xbee_get_packet+0x17a>
+     ee6:	6a c0       	rjmp	.+212    	; 0xfbc <xbee_get_packet+0x24e>
+     ee8:	14 16       	cp	r1, r20
+     eea:	15 06       	cpc	r1, r21
+     eec:	0c f0       	brlt	.+2      	; 0xef0 <xbee_get_packet+0x182>
+     eee:	51 c0       	rjmp	.+162    	; 0xf92 <xbee_get_packet+0x224>
+     ef0:	80 91 13 06 	lds	r24, 0x0613
+     ef4:	88 38       	cpi	r24, 0x88	; 136
+     ef6:	21 f0       	breq	.+8      	; 0xf00 <xbee_get_packet+0x192>
+     ef8:	8a 38       	cpi	r24, 0x8A	; 138
+     efa:	09 f0       	breq	.+2      	; 0xefe <xbee_get_packet+0x190>
+     efc:	4a c0       	rjmp	.+148    	; 0xf92 <xbee_get_packet+0x224>
+     efe:	61 c0       	rjmp	.+194    	; 0xfc2 <xbee_get_packet+0x254>
+     f00:	80 91 15 06 	lds	r24, 0x0615
+     f04:	90 91 16 06 	lds	r25, 0x0616
+     f08:	89 34       	cpi	r24, 0x49	; 73
+     f0a:	61 f4       	brne	.+24     	; 0xf24 <xbee_get_packet+0x1b6>
+     f0c:	94 34       	cpi	r25, 0x44	; 68
+     f0e:	09 f0       	breq	.+2      	; 0xf12 <xbee_get_packet+0x1a4>
+     f10:	58 c0       	rjmp	.+176    	; 0xfc2 <xbee_get_packet+0x254>
+     f12:	80 91 56 01 	lds	r24, 0x0156
+     f16:	90 91 57 01 	lds	r25, 0x0157
+     f1a:	90 93 55 01 	sts	0x0155, r25
+     f1e:	80 93 54 01 	sts	0x0154, r24
+     f22:	4f c0       	rjmp	.+158    	; 0xfc2 <xbee_get_packet+0x254>
+     f24:	83 34       	cpi	r24, 0x43	; 67
+     f26:	61 f4       	brne	.+24     	; 0xf40 <xbee_get_packet+0x1d2>
+     f28:	98 34       	cpi	r25, 0x48	; 72
+     f2a:	09 f0       	breq	.+2      	; 0xf2e <xbee_get_packet+0x1c0>
+     f2c:	4a c0       	rjmp	.+148    	; 0xfc2 <xbee_get_packet+0x254>
+     f2e:	80 91 0c 06 	lds	r24, 0x060C
+     f32:	90 91 0d 06 	lds	r25, 0x060D
+     f36:	90 93 0b 06 	sts	0x060B, r25
+     f3a:	80 93 0a 06 	sts	0x060A, r24
+     f3e:	41 c0       	rjmp	.+130    	; 0xfc2 <xbee_get_packet+0x254>
+     f40:	8d 34       	cpi	r24, 0x4D	; 77
+     f42:	09 f0       	breq	.+2      	; 0xf46 <xbee_get_packet+0x1d8>
+     f44:	3e c0       	rjmp	.+124    	; 0xfc2 <xbee_get_packet+0x254>
+     f46:	99 35       	cpi	r25, 0x59	; 89
+     f48:	e1 f5       	brne	.+120    	; 0xfc2 <xbee_get_packet+0x254>
+     f4a:	ba 01       	movw	r22, r20
+     f4c:	65 50       	subi	r22, 0x05	; 5
+     f4e:	70 40       	sbci	r23, 0x00	; 0
+     f50:	c1 f1       	breq	.+112    	; 0xfc2 <xbee_get_packet+0x254>
+     f52:	10 92 09 06 	sts	0x0609, r1
+     f56:	10 92 08 06 	sts	0x0608, r1
+     f5a:	e8 e1       	ldi	r30, 0x18	; 24
+     f5c:	f6 e0       	ldi	r31, 0x06	; 6
+     f5e:	40 e0       	ldi	r20, 0x00	; 0
+     f60:	50 e0       	ldi	r21, 0x00	; 0
+     f62:	0f c0       	rjmp	.+30     	; 0xf82 <xbee_get_packet+0x214>
+     f64:	80 91 08 06 	lds	r24, 0x0608
+     f68:	90 91 09 06 	lds	r25, 0x0609
+     f6c:	21 91       	ld	r18, Z+
+     f6e:	98 2f       	mov	r25, r24
+     f70:	88 27       	eor	r24, r24
+     f72:	82 0f       	add	r24, r18
+     f74:	91 1d       	adc	r25, r1
+     f76:	90 93 09 06 	sts	0x0609, r25
+     f7a:	80 93 08 06 	sts	0x0608, r24
+     f7e:	4f 5f       	subi	r20, 0xFF	; 255
+     f80:	5f 4f       	sbci	r21, 0xFF	; 255
+     f82:	46 17       	cp	r20, r22
+     f84:	57 07       	cpc	r21, r23
+     f86:	74 f3       	brlt	.-36     	; 0xf64 <xbee_get_packet+0x1f6>
+     f88:	80 91 08 06 	lds	r24, 0x0608
+     f8c:	90 91 09 06 	lds	r25, 0x0609
+     f90:	18 c0       	rjmp	.+48     	; 0xfc2 <xbee_get_packet+0x254>
+     f92:	01 15       	cp	r16, r1
+     f94:	11 05       	cpc	r17, r1
+     f96:	91 f0       	breq	.+36     	; 0xfbc <xbee_get_packet+0x24e>
+     f98:	d8 01       	movw	r26, r16
+     f9a:	23 e0       	ldi	r18, 0x03	; 3
+     f9c:	30 e0       	ldi	r19, 0x00	; 0
+     f9e:	ba 01       	movw	r22, r20
+     fa0:	6e 5f       	subi	r22, 0xFE	; 254
+     fa2:	7f 4f       	sbci	r23, 0xFF	; 255
+     fa4:	07 c0       	rjmp	.+14     	; 0xfb4 <xbee_get_packet+0x246>
+     fa6:	f9 01       	movw	r30, r18
+     fa8:	e0 5f       	subi	r30, 0xF0	; 240
+     faa:	f9 4f       	sbci	r31, 0xF9	; 249
+     fac:	80 81       	ld	r24, Z
+     fae:	8d 93       	st	X+, r24
+     fb0:	2f 5f       	subi	r18, 0xFF	; 255
+     fb2:	3f 4f       	sbci	r19, 0xFF	; 255
+     fb4:	62 17       	cp	r22, r18
+     fb6:	73 07       	cpc	r23, r19
+     fb8:	b4 f7       	brge	.-20     	; 0xfa6 <xbee_get_packet+0x238>
+     fba:	05 c0       	rjmp	.+10     	; 0xfc6 <xbee_get_packet+0x258>
+     fbc:	4f ef       	ldi	r20, 0xFF	; 255
+     fbe:	5f ef       	ldi	r21, 0xFF	; 255
+     fc0:	02 c0       	rjmp	.+4      	; 0xfc6 <xbee_get_packet+0x258>
+     fc2:	43 e0       	ldi	r20, 0x03	; 3
+     fc4:	50 e0       	ldi	r21, 0x00	; 0
+     fc6:	ca 01       	movw	r24, r20
+     fc8:	df 91       	pop	r29
+     fca:	cf 91       	pop	r28
+     fcc:	1f 91       	pop	r17
+     fce:	0f 91       	pop	r16
+     fd0:	08 95       	ret
 
-00000f8a <xbee_get_channel>:
-     f8a:	80 91 1a 06 	lds	r24, 0x061A
-     f8e:	90 91 1b 06 	lds	r25, 0x061B
-     f92:	08 95       	ret
+00000fd2 <xbee_get_pan_id>:
+     fd2:	80 91 54 01 	lds	r24, 0x0154
+     fd6:	90 91 55 01 	lds	r25, 0x0155
+     fda:	08 95       	ret
 
-00000f94 <xbee_get_address>:
-     f94:	20 91 18 06 	lds	r18, 0x0618
-     f98:	30 91 19 06 	lds	r19, 0x0619
-     f9c:	c9 01       	movw	r24, r18
-     f9e:	08 95       	ret
+00000fdc <xbee_get_channel>:
+     fdc:	80 91 0a 06 	lds	r24, 0x060A
+     fe0:	90 91 0b 06 	lds	r25, 0x060B
+     fe4:	08 95       	ret
 
-00000fa0 <xbee_send_modify_at_command>:
-     fa0:	cf 92       	push	r12
-     fa2:	df 92       	push	r13
-     fa4:	ef 92       	push	r14
-     fa6:	ff 92       	push	r15
-     fa8:	0f 93       	push	r16
-     faa:	1f 93       	push	r17
-     fac:	df 93       	push	r29
-     fae:	cf 93       	push	r28
-     fb0:	cd b7       	in	r28, 0x3d	; 61
-     fb2:	de b7       	in	r29, 0x3e	; 62
-     fb4:	64 97       	sbiw	r28, 0x14	; 20
-     fb6:	0f b6       	in	r0, 0x3f	; 63
-     fb8:	f8 94       	cli
-     fba:	de bf       	out	0x3e, r29	; 62
-     fbc:	0f be       	out	0x3f, r0	; 63
-     fbe:	cd bf       	out	0x3d, r28	; 61
-     fc0:	fc 01       	movw	r30, r24
-     fc2:	88 e0       	ldi	r24, 0x08	; 8
-     fc4:	8d 83       	std	Y+5, r24	; 0x05
-     fc6:	81 e0       	ldi	r24, 0x01	; 1
-     fc8:	8e 83       	std	Y+6, r24	; 0x06
-     fca:	80 81       	ld	r24, Z
-     fcc:	8f 83       	std	Y+7, r24	; 0x07
-     fce:	81 81       	ldd	r24, Z+1	; 0x01
-     fd0:	88 87       	std	Y+8, r24	; 0x08
-     fd2:	61 15       	cp	r22, r1
-     fd4:	71 05       	cpc	r23, r1
-     fd6:	19 f4       	brne	.+6      	; 0xfde <xbee_send_modify_at_command+0x3e>
-     fd8:	a0 e0       	ldi	r26, 0x00	; 0
-     fda:	b0 e0       	ldi	r27, 0x00	; 0
-     fdc:	1f c0       	rjmp	.+62     	; 0x101c <xbee_send_modify_at_command+0x7c>
-     fde:	db 01       	movw	r26, r22
-     fe0:	0d 90       	ld	r0, X+
-     fe2:	00 20       	and	r0, r0
-     fe4:	e9 f7       	brne	.-6      	; 0xfe0 <xbee_send_modify_at_command+0x40>
-     fe6:	11 97       	sbiw	r26, 0x01	; 1
-     fe8:	a6 1b       	sub	r26, r22
-     fea:	b7 0b       	sbc	r27, r23
-     fec:	a9 30       	cpi	r26, 0x09	; 9
-     fee:	b1 05       	cpc	r27, r1
-     ff0:	1c f0       	brlt	.+6      	; 0xff8 <xbee_send_modify_at_command+0x58>
-     ff2:	2f ef       	ldi	r18, 0xFF	; 255
-     ff4:	3f ef       	ldi	r19, 0xFF	; 255
-     ff6:	4e c0       	rjmp	.+156    	; 0x1094 <xbee_send_modify_at_command+0xf4>
-     ff8:	ae 01       	movw	r20, r28
-     ffa:	47 5f       	subi	r20, 0xF7	; 247
-     ffc:	5f 4f       	sbci	r21, 0xFF	; 255
-     ffe:	20 e0       	ldi	r18, 0x00	; 0
-    1000:	30 e0       	ldi	r19, 0x00	; 0
-    1002:	09 c0       	rjmp	.+18     	; 0x1016 <xbee_send_modify_at_command+0x76>
-    1004:	fb 01       	movw	r30, r22
-    1006:	e2 0f       	add	r30, r18
-    1008:	f3 1f       	adc	r31, r19
-    100a:	80 81       	ld	r24, Z
-    100c:	fa 01       	movw	r30, r20
-    100e:	81 93       	st	Z+, r24
-    1010:	af 01       	movw	r20, r30
-    1012:	2f 5f       	subi	r18, 0xFF	; 255
-    1014:	3f 4f       	sbci	r19, 0xFF	; 255
-    1016:	2a 17       	cp	r18, r26
-    1018:	3b 07       	cpc	r19, r27
-    101a:	a4 f3       	brlt	.-24     	; 0x1004 <xbee_send_modify_at_command+0x64>
-    101c:	54 e0       	ldi	r21, 0x04	; 4
-    101e:	e5 2e       	mov	r14, r21
-    1020:	f1 2c       	mov	r15, r1
-    1022:	ea 0e       	add	r14, r26
-    1024:	fb 1e       	adc	r15, r27
-    1026:	20 e0       	ldi	r18, 0x00	; 0
-    1028:	30 e0       	ldi	r19, 0x00	; 0
-    102a:	90 e0       	ldi	r25, 0x00	; 0
-    102c:	ae 01       	movw	r20, r28
-    102e:	4b 5f       	subi	r20, 0xFB	; 251
-    1030:	5f 4f       	sbci	r21, 0xFF	; 255
-    1032:	07 c0       	rjmp	.+14     	; 0x1042 <xbee_send_modify_at_command+0xa2>
-    1034:	fa 01       	movw	r30, r20
-    1036:	e2 0f       	add	r30, r18
-    1038:	f3 1f       	adc	r31, r19
-    103a:	80 81       	ld	r24, Z
-    103c:	98 0f       	add	r25, r24
-    103e:	2f 5f       	subi	r18, 0xFF	; 255
-    1040:	3f 4f       	sbci	r19, 0xFF	; 255
-    1042:	2e 15       	cp	r18, r14
-    1044:	3f 05       	cpc	r19, r15
-    1046:	b4 f3       	brlt	.-20     	; 0x1034 <xbee_send_modify_at_command+0x94>
-    1048:	8e e7       	ldi	r24, 0x7E	; 126
-    104a:	8a 83       	std	Y+2, r24	; 0x02
-    104c:	fb 82       	std	Y+3, r15	; 0x03
-    104e:	ec 82       	std	Y+4, r14	; 0x04
-    1050:	90 95       	com	r25
-    1052:	99 83       	std	Y+1, r25	; 0x01
-    1054:	0e 94 85 1a 	call	0x350a	; 0x350a <xbee_putc>
-    1058:	8b 81       	ldd	r24, Y+3	; 0x03
-    105a:	0e 94 85 1a 	call	0x350a	; 0x350a <xbee_putc>
-    105e:	8c 81       	ldd	r24, Y+4	; 0x04
-    1060:	0e 94 85 1a 	call	0x350a	; 0x350a <xbee_putc>
-    1064:	00 e0       	ldi	r16, 0x00	; 0
-    1066:	10 e0       	ldi	r17, 0x00	; 0
-    1068:	45 e0       	ldi	r20, 0x05	; 5
-    106a:	c4 2e       	mov	r12, r20
-    106c:	d1 2c       	mov	r13, r1
-    106e:	cc 0e       	add	r12, r28
-    1070:	dd 1e       	adc	r13, r29
-    1072:	08 c0       	rjmp	.+16     	; 0x1084 <xbee_send_modify_at_command+0xe4>
-    1074:	f6 01       	movw	r30, r12
-    1076:	e0 0f       	add	r30, r16
-    1078:	f1 1f       	adc	r31, r17
-    107a:	80 81       	ld	r24, Z
-    107c:	0e 94 85 1a 	call	0x350a	; 0x350a <xbee_putc>
-    1080:	0f 5f       	subi	r16, 0xFF	; 255
-    1082:	1f 4f       	sbci	r17, 0xFF	; 255
-    1084:	0e 15       	cp	r16, r14
-    1086:	1f 05       	cpc	r17, r15
-    1088:	ac f3       	brlt	.-22     	; 0x1074 <xbee_send_modify_at_command+0xd4>
-    108a:	89 81       	ldd	r24, Y+1	; 0x01
-    108c:	0e 94 85 1a 	call	0x350a	; 0x350a <xbee_putc>
-    1090:	20 e0       	ldi	r18, 0x00	; 0
-    1092:	30 e0       	ldi	r19, 0x00	; 0
-    1094:	c9 01       	movw	r24, r18
-    1096:	64 96       	adiw	r28, 0x14	; 20
-    1098:	0f b6       	in	r0, 0x3f	; 63
-    109a:	f8 94       	cli
-    109c:	de bf       	out	0x3e, r29	; 62
-    109e:	0f be       	out	0x3f, r0	; 63
-    10a0:	cd bf       	out	0x3d, r28	; 61
-    10a2:	cf 91       	pop	r28
-    10a4:	df 91       	pop	r29
-    10a6:	1f 91       	pop	r17
-    10a8:	0f 91       	pop	r16
-    10aa:	ff 90       	pop	r15
-    10ac:	ef 90       	pop	r14
-    10ae:	df 90       	pop	r13
-    10b0:	cf 90       	pop	r12
-    10b2:	08 95       	ret
+00000fe6 <xbee_get_address>:
+     fe6:	20 91 08 06 	lds	r18, 0x0608
+     fea:	30 91 09 06 	lds	r19, 0x0609
+     fee:	c9 01       	movw	r24, r18
+     ff0:	08 95       	ret
 
-000010b4 <xbee_set_channel>:
-    10b4:	df 93       	push	r29
-    10b6:	cf 93       	push	r28
-    10b8:	00 d0       	rcall	.+0      	; 0x10ba <xbee_set_channel+0x6>
-    10ba:	0f 92       	push	r0
-    10bc:	cd b7       	in	r28, 0x3d	; 61
-    10be:	de b7       	in	r29, 0x3e	; 62
-    10c0:	9c 01       	movw	r18, r24
-    10c2:	0b 97       	sbiw	r24, 0x0b	; 11
-    10c4:	40 97       	sbiw	r24, 0x10	; 16
-    10c6:	18 f0       	brcs	.+6      	; 0x10ce <xbee_set_channel+0x1a>
-    10c8:	2f ef       	ldi	r18, 0xFF	; 255
-    10ca:	3f ef       	ldi	r19, 0xFF	; 255
-    10cc:	0e c0       	rjmp	.+28     	; 0x10ea <xbee_set_channel+0x36>
-    10ce:	29 83       	std	Y+1, r18	; 0x01
-    10d0:	1a 82       	std	Y+2, r1	; 0x02
-    10d2:	30 93 1d 06 	sts	0x061D, r19
-    10d6:	20 93 1c 06 	sts	0x061C, r18
-    10da:	87 e3       	ldi	r24, 0x37	; 55
-    10dc:	91 e0       	ldi	r25, 0x01	; 1
-    10de:	be 01       	movw	r22, r28
-    10e0:	6f 5f       	subi	r22, 0xFF	; 255
-    10e2:	7f 4f       	sbci	r23, 0xFF	; 255
-    10e4:	0e 94 d0 07 	call	0xfa0	; 0xfa0 <xbee_send_modify_at_command>
-    10e8:	9c 01       	movw	r18, r24
-    10ea:	c9 01       	movw	r24, r18
-    10ec:	0f 90       	pop	r0
-    10ee:	0f 90       	pop	r0
-    10f0:	0f 90       	pop	r0
-    10f2:	cf 91       	pop	r28
-    10f4:	df 91       	pop	r29
-    10f6:	08 95       	ret
+00000ff2 <xbee_send_modify_at_command>:
+     ff2:	cf 92       	push	r12
+     ff4:	df 92       	push	r13
+     ff6:	ef 92       	push	r14
+     ff8:	ff 92       	push	r15
+     ffa:	0f 93       	push	r16
+     ffc:	1f 93       	push	r17
+     ffe:	df 93       	push	r29
+    1000:	cf 93       	push	r28
+    1002:	cd b7       	in	r28, 0x3d	; 61
+    1004:	de b7       	in	r29, 0x3e	; 62
+    1006:	64 97       	sbiw	r28, 0x14	; 20
+    1008:	0f b6       	in	r0, 0x3f	; 63
+    100a:	f8 94       	cli
+    100c:	de bf       	out	0x3e, r29	; 62
+    100e:	0f be       	out	0x3f, r0	; 63
+    1010:	cd bf       	out	0x3d, r28	; 61
+    1012:	fc 01       	movw	r30, r24
+    1014:	88 e0       	ldi	r24, 0x08	; 8
+    1016:	8d 83       	std	Y+5, r24	; 0x05
+    1018:	81 e0       	ldi	r24, 0x01	; 1
+    101a:	8e 83       	std	Y+6, r24	; 0x06
+    101c:	80 81       	ld	r24, Z
+    101e:	8f 83       	std	Y+7, r24	; 0x07
+    1020:	81 81       	ldd	r24, Z+1	; 0x01
+    1022:	88 87       	std	Y+8, r24	; 0x08
+    1024:	61 15       	cp	r22, r1
+    1026:	71 05       	cpc	r23, r1
+    1028:	19 f4       	brne	.+6      	; 0x1030 <xbee_send_modify_at_command+0x3e>
+    102a:	a0 e0       	ldi	r26, 0x00	; 0
+    102c:	b0 e0       	ldi	r27, 0x00	; 0
+    102e:	1f c0       	rjmp	.+62     	; 0x106e <xbee_send_modify_at_command+0x7c>
+    1030:	db 01       	movw	r26, r22
+    1032:	0d 90       	ld	r0, X+
+    1034:	00 20       	and	r0, r0
+    1036:	e9 f7       	brne	.-6      	; 0x1032 <xbee_send_modify_at_command+0x40>
+    1038:	11 97       	sbiw	r26, 0x01	; 1
+    103a:	a6 1b       	sub	r26, r22
+    103c:	b7 0b       	sbc	r27, r23
+    103e:	a9 30       	cpi	r26, 0x09	; 9
+    1040:	b1 05       	cpc	r27, r1
+    1042:	1c f0       	brlt	.+6      	; 0x104a <xbee_send_modify_at_command+0x58>
+    1044:	2f ef       	ldi	r18, 0xFF	; 255
+    1046:	3f ef       	ldi	r19, 0xFF	; 255
+    1048:	4e c0       	rjmp	.+156    	; 0x10e6 <xbee_send_modify_at_command+0xf4>
+    104a:	ae 01       	movw	r20, r28
+    104c:	47 5f       	subi	r20, 0xF7	; 247
+    104e:	5f 4f       	sbci	r21, 0xFF	; 255
+    1050:	20 e0       	ldi	r18, 0x00	; 0
+    1052:	30 e0       	ldi	r19, 0x00	; 0
+    1054:	09 c0       	rjmp	.+18     	; 0x1068 <xbee_send_modify_at_command+0x76>
+    1056:	fb 01       	movw	r30, r22
+    1058:	e2 0f       	add	r30, r18
+    105a:	f3 1f       	adc	r31, r19
+    105c:	80 81       	ld	r24, Z
+    105e:	fa 01       	movw	r30, r20
+    1060:	81 93       	st	Z+, r24
+    1062:	af 01       	movw	r20, r30
+    1064:	2f 5f       	subi	r18, 0xFF	; 255
+    1066:	3f 4f       	sbci	r19, 0xFF	; 255
+    1068:	2a 17       	cp	r18, r26
+    106a:	3b 07       	cpc	r19, r27
+    106c:	a4 f3       	brlt	.-24     	; 0x1056 <xbee_send_modify_at_command+0x64>
+    106e:	54 e0       	ldi	r21, 0x04	; 4
+    1070:	e5 2e       	mov	r14, r21
+    1072:	f1 2c       	mov	r15, r1
+    1074:	ea 0e       	add	r14, r26
+    1076:	fb 1e       	adc	r15, r27
+    1078:	20 e0       	ldi	r18, 0x00	; 0
+    107a:	30 e0       	ldi	r19, 0x00	; 0
+    107c:	90 e0       	ldi	r25, 0x00	; 0
+    107e:	ae 01       	movw	r20, r28
+    1080:	4b 5f       	subi	r20, 0xFB	; 251
+    1082:	5f 4f       	sbci	r21, 0xFF	; 255
+    1084:	07 c0       	rjmp	.+14     	; 0x1094 <xbee_send_modify_at_command+0xa2>
+    1086:	fa 01       	movw	r30, r20
+    1088:	e2 0f       	add	r30, r18
+    108a:	f3 1f       	adc	r31, r19
+    108c:	80 81       	ld	r24, Z
+    108e:	98 0f       	add	r25, r24
+    1090:	2f 5f       	subi	r18, 0xFF	; 255
+    1092:	3f 4f       	sbci	r19, 0xFF	; 255
+    1094:	2e 15       	cp	r18, r14
+    1096:	3f 05       	cpc	r19, r15
+    1098:	b4 f3       	brlt	.-20     	; 0x1086 <xbee_send_modify_at_command+0x94>
+    109a:	8e e7       	ldi	r24, 0x7E	; 126
+    109c:	8a 83       	std	Y+2, r24	; 0x02
+    109e:	fb 82       	std	Y+3, r15	; 0x03
+    10a0:	ec 82       	std	Y+4, r14	; 0x04
+    10a2:	90 95       	com	r25
+    10a4:	99 83       	std	Y+1, r25	; 0x01
+    10a6:	0e 94 ae 1a 	call	0x355c	; 0x355c <xbee_putc>
+    10aa:	8b 81       	ldd	r24, Y+3	; 0x03
+    10ac:	0e 94 ae 1a 	call	0x355c	; 0x355c <xbee_putc>
+    10b0:	8c 81       	ldd	r24, Y+4	; 0x04
+    10b2:	0e 94 ae 1a 	call	0x355c	; 0x355c <xbee_putc>
+    10b6:	00 e0       	ldi	r16, 0x00	; 0
+    10b8:	10 e0       	ldi	r17, 0x00	; 0
+    10ba:	45 e0       	ldi	r20, 0x05	; 5
+    10bc:	c4 2e       	mov	r12, r20
+    10be:	d1 2c       	mov	r13, r1
+    10c0:	cc 0e       	add	r12, r28
+    10c2:	dd 1e       	adc	r13, r29
+    10c4:	08 c0       	rjmp	.+16     	; 0x10d6 <xbee_send_modify_at_command+0xe4>
+    10c6:	f6 01       	movw	r30, r12
+    10c8:	e0 0f       	add	r30, r16
+    10ca:	f1 1f       	adc	r31, r17
+    10cc:	80 81       	ld	r24, Z
+    10ce:	0e 94 ae 1a 	call	0x355c	; 0x355c <xbee_putc>
+    10d2:	0f 5f       	subi	r16, 0xFF	; 255
+    10d4:	1f 4f       	sbci	r17, 0xFF	; 255
+    10d6:	0e 15       	cp	r16, r14
+    10d8:	1f 05       	cpc	r17, r15
+    10da:	ac f3       	brlt	.-22     	; 0x10c6 <xbee_send_modify_at_command+0xd4>
+    10dc:	89 81       	ldd	r24, Y+1	; 0x01
+    10de:	0e 94 ae 1a 	call	0x355c	; 0x355c <xbee_putc>
+    10e2:	20 e0       	ldi	r18, 0x00	; 0
+    10e4:	30 e0       	ldi	r19, 0x00	; 0
+    10e6:	c9 01       	movw	r24, r18
+    10e8:	64 96       	adiw	r28, 0x14	; 20
+    10ea:	0f b6       	in	r0, 0x3f	; 63
+    10ec:	f8 94       	cli
+    10ee:	de bf       	out	0x3e, r29	; 62
+    10f0:	0f be       	out	0x3f, r0	; 63
+    10f2:	cd bf       	out	0x3d, r28	; 61
+    10f4:	cf 91       	pop	r28
+    10f6:	df 91       	pop	r29
+    10f8:	1f 91       	pop	r17
+    10fa:	0f 91       	pop	r16
+    10fc:	ff 90       	pop	r15
+    10fe:	ef 90       	pop	r14
+    1100:	df 90       	pop	r13
+    1102:	cf 90       	pop	r12
+    1104:	08 95       	ret
 
-000010f8 <xbee_set_pan_id>:
-    10f8:	df 93       	push	r29
-    10fa:	cf 93       	push	r28
-    10fc:	00 d0       	rcall	.+0      	; 0x10fe <xbee_set_pan_id+0x6>
-    10fe:	0f 92       	push	r0
-    1100:	cd b7       	in	r28, 0x3d	; 61
-    1102:	de b7       	in	r29, 0x3e	; 62
-    1104:	99 83       	std	Y+1, r25	; 0x01
-    1106:	8a 83       	std	Y+2, r24	; 0x02
-    1108:	1b 82       	std	Y+3, r1	; 0x03
-    110a:	80 93 65 01 	sts	0x0165, r24
-    110e:	90 93 66 01 	sts	0x0166, r25
-    1112:	8a e3       	ldi	r24, 0x3A	; 58
-    1114:	91 e0       	ldi	r25, 0x01	; 1
-    1116:	be 01       	movw	r22, r28
-    1118:	6f 5f       	subi	r22, 0xFF	; 255
-    111a:	7f 4f       	sbci	r23, 0xFF	; 255
-    111c:	0e 94 d0 07 	call	0xfa0	; 0xfa0 <xbee_send_modify_at_command>
-    1120:	0f 90       	pop	r0
-    1122:	0f 90       	pop	r0
-    1124:	0f 90       	pop	r0
-    1126:	cf 91       	pop	r28
-    1128:	df 91       	pop	r29
-    112a:	08 95       	ret
-
-0000112c <xbee_reset>:
-    112c:	8d e3       	ldi	r24, 0x3D	; 61
+00001106 <xbee_set_channel>:
+    1106:	df 93       	push	r29
+    1108:	cf 93       	push	r28
+    110a:	00 d0       	rcall	.+0      	; 0x110c <xbee_set_channel+0x6>
+    110c:	0f 92       	push	r0
+    110e:	cd b7       	in	r28, 0x3d	; 61
+    1110:	de b7       	in	r29, 0x3e	; 62
+    1112:	9c 01       	movw	r18, r24
+    1114:	0b 97       	sbiw	r24, 0x0b	; 11
+    1116:	40 97       	sbiw	r24, 0x10	; 16
+    1118:	18 f0       	brcs	.+6      	; 0x1120 <xbee_set_channel+0x1a>
+    111a:	2f ef       	ldi	r18, 0xFF	; 255
+    111c:	3f ef       	ldi	r19, 0xFF	; 255
+    111e:	0e c0       	rjmp	.+28     	; 0x113c <xbee_set_channel+0x36>
+    1120:	29 83       	std	Y+1, r18	; 0x01
+    1122:	1a 82       	std	Y+2, r1	; 0x02
+    1124:	30 93 0d 06 	sts	0x060D, r19
+    1128:	20 93 0c 06 	sts	0x060C, r18
+    112c:	88 e2       	ldi	r24, 0x28	; 40
     112e:	91 e0       	ldi	r25, 0x01	; 1
-    1130:	60 e4       	ldi	r22, 0x40	; 64
-    1132:	71 e0       	ldi	r23, 0x01	; 1
-    1134:	0e 94 d0 07 	call	0xfa0	; 0xfa0 <xbee_send_modify_at_command>
-    1138:	82 e4       	ldi	r24, 0x42	; 66
-    113a:	91 e0       	ldi	r25, 0x01	; 1
-    113c:	60 e0       	ldi	r22, 0x00	; 0
-    113e:	70 e0       	ldi	r23, 0x00	; 0
-    1140:	0e 94 d0 07 	call	0xfa0	; 0xfa0 <xbee_send_modify_at_command>
-    1144:	8c ed       	ldi	r24, 0xDC	; 220
-    1146:	95 e0       	ldi	r25, 0x05	; 5
-    1148:	20 e9       	ldi	r18, 0x90	; 144
-    114a:	31 e0       	ldi	r19, 0x01	; 1
-    114c:	f9 01       	movw	r30, r18
-    114e:	31 97       	sbiw	r30, 0x01	; 1
-    1150:	f1 f7       	brne	.-4      	; 0x114e <xbee_reset+0x22>
-    1152:	01 97       	sbiw	r24, 0x01	; 1
-    1154:	d9 f7       	brne	.-10     	; 0x114c <xbee_reset+0x20>
-    1156:	80 e0       	ldi	r24, 0x00	; 0
-    1158:	90 e0       	ldi	r25, 0x00	; 0
-    115a:	08 95       	ret
+    1130:	be 01       	movw	r22, r28
+    1132:	6f 5f       	subi	r22, 0xFF	; 255
+    1134:	7f 4f       	sbci	r23, 0xFF	; 255
+    1136:	0e 94 f9 07 	call	0xff2	; 0xff2 <xbee_send_modify_at_command>
+    113a:	9c 01       	movw	r18, r24
+    113c:	c9 01       	movw	r24, r18
+    113e:	0f 90       	pop	r0
+    1140:	0f 90       	pop	r0
+    1142:	0f 90       	pop	r0
+    1144:	cf 91       	pop	r28
+    1146:	df 91       	pop	r29
+    1148:	08 95       	ret
 
-0000115c <xbee_terminate>:
-    115c:	85 e4       	ldi	r24, 0x45	; 69
-    115e:	91 e0       	ldi	r25, 0x01	; 1
-    1160:	68 e4       	ldi	r22, 0x48	; 72
-    1162:	71 e0       	ldi	r23, 0x01	; 1
-    1164:	0e 94 d0 07 	call	0xfa0	; 0xfa0 <xbee_send_modify_at_command>
-    1168:	08 95       	ret
+0000114a <xbee_set_pan_id>:
+    114a:	df 93       	push	r29
+    114c:	cf 93       	push	r28
+    114e:	00 d0       	rcall	.+0      	; 0x1150 <xbee_set_pan_id+0x6>
+    1150:	0f 92       	push	r0
+    1152:	cd b7       	in	r28, 0x3d	; 61
+    1154:	de b7       	in	r29, 0x3e	; 62
+    1156:	99 83       	std	Y+1, r25	; 0x01
+    1158:	8a 83       	std	Y+2, r24	; 0x02
+    115a:	1b 82       	std	Y+3, r1	; 0x03
+    115c:	80 93 56 01 	sts	0x0156, r24
+    1160:	90 93 57 01 	sts	0x0157, r25
+    1164:	8b e2       	ldi	r24, 0x2B	; 43
+    1166:	91 e0       	ldi	r25, 0x01	; 1
+    1168:	be 01       	movw	r22, r28
+    116a:	6f 5f       	subi	r22, 0xFF	; 255
+    116c:	7f 4f       	sbci	r23, 0xFF	; 255
+    116e:	0e 94 f9 07 	call	0xff2	; 0xff2 <xbee_send_modify_at_command>
+    1172:	0f 90       	pop	r0
+    1174:	0f 90       	pop	r0
+    1176:	0f 90       	pop	r0
+    1178:	cf 91       	pop	r28
+    117a:	df 91       	pop	r29
+    117c:	08 95       	ret
 
-0000116a <xbee_send_packet>:
-    116a:	af 92       	push	r10
-    116c:	bf 92       	push	r11
-    116e:	cf 92       	push	r12
-    1170:	df 92       	push	r13
-    1172:	ef 92       	push	r14
-    1174:	ff 92       	push	r15
-    1176:	0f 93       	push	r16
-    1178:	1f 93       	push	r17
-    117a:	df 93       	push	r29
-    117c:	cf 93       	push	r28
-    117e:	cd b7       	in	r28, 0x3d	; 61
-    1180:	de b7       	in	r29, 0x3e	; 62
-    1182:	29 97       	sbiw	r28, 0x09	; 9
-    1184:	0f b6       	in	r0, 0x3f	; 63
-    1186:	f8 94       	cli
-    1188:	de bf       	out	0x3e, r29	; 62
-    118a:	0f be       	out	0x3f, r0	; 63
-    118c:	cd bf       	out	0x3d, r28	; 61
-    118e:	5c 01       	movw	r10, r24
-    1190:	7b 01       	movw	r14, r22
-    1192:	65 36       	cpi	r22, 0x65	; 101
-    1194:	71 05       	cpc	r23, r1
-    1196:	1c f0       	brlt	.+6      	; 0x119e <xbee_send_packet+0x34>
-    1198:	2f ef       	ldi	r18, 0xFF	; 255
-    119a:	3f ef       	ldi	r19, 0xFF	; 255
-    119c:	56 c0       	rjmp	.+172    	; 0x124a <xbee_send_packet+0xe0>
-    119e:	81 e0       	ldi	r24, 0x01	; 1
-    11a0:	8d 83       	std	Y+5, r24	; 0x05
-    11a2:	0e 83       	std	Y+6, r16	; 0x06
-    11a4:	5f 83       	std	Y+7, r21	; 0x07
-    11a6:	48 87       	std	Y+8, r20	; 0x08
-    11a8:	29 87       	std	Y+9, r18	; 0x09
-    11aa:	8e e7       	ldi	r24, 0x7E	; 126
-    11ac:	8a 83       	std	Y+2, r24	; 0x02
-    11ae:	e5 e0       	ldi	r30, 0x05	; 5
-    11b0:	f0 e0       	ldi	r31, 0x00	; 0
-    11b2:	ee 0e       	add	r14, r30
-    11b4:	ff 1e       	adc	r15, r31
-    11b6:	fb 82       	std	Y+3, r15	; 0x03
-    11b8:	8b ef       	ldi	r24, 0xFB	; 251
-    11ba:	9f ef       	ldi	r25, 0xFF	; 255
-    11bc:	e8 0e       	add	r14, r24
-    11be:	f9 1e       	adc	r15, r25
-    11c0:	8e 2d       	mov	r24, r14
-    11c2:	8b 5f       	subi	r24, 0xFB	; 251
-    11c4:	8c 83       	std	Y+4, r24	; 0x04
-    11c6:	0f 5f       	subi	r16, 0xFF	; 255
-    11c8:	05 0f       	add	r16, r21
-    11ca:	04 0f       	add	r16, r20
-    11cc:	02 0f       	add	r16, r18
-    11ce:	09 83       	std	Y+1, r16	; 0x01
-    11d0:	20 e0       	ldi	r18, 0x00	; 0
-    11d2:	30 e0       	ldi	r19, 0x00	; 0
-    11d4:	08 c0       	rjmp	.+16     	; 0x11e6 <xbee_send_packet+0x7c>
-    11d6:	f5 01       	movw	r30, r10
-    11d8:	e2 0f       	add	r30, r18
-    11da:	f3 1f       	adc	r31, r19
-    11dc:	80 81       	ld	r24, Z
-    11de:	98 0f       	add	r25, r24
-    11e0:	99 83       	std	Y+1, r25	; 0x01
-    11e2:	2f 5f       	subi	r18, 0xFF	; 255
-    11e4:	3f 4f       	sbci	r19, 0xFF	; 255
-    11e6:	99 81       	ldd	r25, Y+1	; 0x01
-    11e8:	2e 15       	cp	r18, r14
-    11ea:	3f 05       	cpc	r19, r15
-    11ec:	a4 f3       	brlt	.-24     	; 0x11d6 <xbee_send_packet+0x6c>
-    11ee:	90 95       	com	r25
-    11f0:	99 83       	std	Y+1, r25	; 0x01
-    11f2:	8e e7       	ldi	r24, 0x7E	; 126
-    11f4:	0e 94 85 1a 	call	0x350a	; 0x350a <xbee_putc>
-    11f8:	8b 81       	ldd	r24, Y+3	; 0x03
-    11fa:	0e 94 85 1a 	call	0x350a	; 0x350a <xbee_putc>
-    11fe:	8c 81       	ldd	r24, Y+4	; 0x04
-    1200:	0e 94 85 1a 	call	0x350a	; 0x350a <xbee_putc>
-    1204:	8e 01       	movw	r16, r28
-    1206:	0b 5f       	subi	r16, 0xFB	; 251
-    1208:	1f 4f       	sbci	r17, 0xFF	; 255
-    120a:	6a e0       	ldi	r22, 0x0A	; 10
-    120c:	c6 2e       	mov	r12, r22
-    120e:	d1 2c       	mov	r13, r1
-    1210:	cc 0e       	add	r12, r28
-    1212:	dd 1e       	adc	r13, r29
-    1214:	f8 01       	movw	r30, r16
-    1216:	81 91       	ld	r24, Z+
-    1218:	8f 01       	movw	r16, r30
-    121a:	0e 94 85 1a 	call	0x350a	; 0x350a <xbee_putc>
-    121e:	0c 15       	cp	r16, r12
-    1220:	1d 05       	cpc	r17, r13
-    1222:	c1 f7       	brne	.-16     	; 0x1214 <xbee_send_packet+0xaa>
-    1224:	00 e0       	ldi	r16, 0x00	; 0
-    1226:	10 e0       	ldi	r17, 0x00	; 0
-    1228:	08 c0       	rjmp	.+16     	; 0x123a <xbee_send_packet+0xd0>
-    122a:	f5 01       	movw	r30, r10
-    122c:	e0 0f       	add	r30, r16
-    122e:	f1 1f       	adc	r31, r17
-    1230:	80 81       	ld	r24, Z
-    1232:	0e 94 85 1a 	call	0x350a	; 0x350a <xbee_putc>
-    1236:	0f 5f       	subi	r16, 0xFF	; 255
-    1238:	1f 4f       	sbci	r17, 0xFF	; 255
-    123a:	0e 15       	cp	r16, r14
-    123c:	1f 05       	cpc	r17, r15
-    123e:	ac f3       	brlt	.-22     	; 0x122a <xbee_send_packet+0xc0>
-    1240:	89 81       	ldd	r24, Y+1	; 0x01
-    1242:	0e 94 85 1a 	call	0x350a	; 0x350a <xbee_putc>
-    1246:	20 e0       	ldi	r18, 0x00	; 0
-    1248:	30 e0       	ldi	r19, 0x00	; 0
-    124a:	c9 01       	movw	r24, r18
-    124c:	29 96       	adiw	r28, 0x09	; 9
-    124e:	0f b6       	in	r0, 0x3f	; 63
-    1250:	f8 94       	cli
-    1252:	de bf       	out	0x3e, r29	; 62
-    1254:	0f be       	out	0x3f, r0	; 63
-    1256:	cd bf       	out	0x3d, r28	; 61
-    1258:	cf 91       	pop	r28
-    125a:	df 91       	pop	r29
-    125c:	1f 91       	pop	r17
-    125e:	0f 91       	pop	r16
-    1260:	ff 90       	pop	r15
-    1262:	ef 90       	pop	r14
-    1264:	df 90       	pop	r13
-    1266:	cf 90       	pop	r12
-    1268:	bf 90       	pop	r11
-    126a:	af 90       	pop	r10
-    126c:	08 95       	ret
+0000117e <xbee_reset>:
+    117e:	8e e2       	ldi	r24, 0x2E	; 46
+    1180:	91 e0       	ldi	r25, 0x01	; 1
+    1182:	61 e3       	ldi	r22, 0x31	; 49
+    1184:	71 e0       	ldi	r23, 0x01	; 1
+    1186:	0e 94 f9 07 	call	0xff2	; 0xff2 <xbee_send_modify_at_command>
+    118a:	83 e3       	ldi	r24, 0x33	; 51
+    118c:	91 e0       	ldi	r25, 0x01	; 1
+    118e:	60 e0       	ldi	r22, 0x00	; 0
+    1190:	70 e0       	ldi	r23, 0x00	; 0
+    1192:	0e 94 f9 07 	call	0xff2	; 0xff2 <xbee_send_modify_at_command>
+    1196:	8c ed       	ldi	r24, 0xDC	; 220
+    1198:	95 e0       	ldi	r25, 0x05	; 5
+    119a:	20 e9       	ldi	r18, 0x90	; 144
+    119c:	31 e0       	ldi	r19, 0x01	; 1
+    119e:	f9 01       	movw	r30, r18
+    11a0:	31 97       	sbiw	r30, 0x01	; 1
+    11a2:	f1 f7       	brne	.-4      	; 0x11a0 <xbee_reset+0x22>
+    11a4:	01 97       	sbiw	r24, 0x01	; 1
+    11a6:	d9 f7       	brne	.-10     	; 0x119e <xbee_reset+0x20>
+    11a8:	80 e0       	ldi	r24, 0x00	; 0
+    11aa:	90 e0       	ldi	r25, 0x00	; 0
+    11ac:	08 95       	ret
 
-0000126e <xbee_send_string>:
-    126e:	ef 92       	push	r14
-    1270:	ff 92       	push	r15
-    1272:	0f 93       	push	r16
-    1274:	1f 93       	push	r17
-    1276:	cf 93       	push	r28
-    1278:	df 93       	push	r29
-    127a:	7c 01       	movw	r14, r24
-    127c:	dc 01       	movw	r26, r24
-    127e:	0d 90       	ld	r0, X+
-    1280:	00 20       	and	r0, r0
-    1282:	e9 f7       	brne	.-6      	; 0x127e <xbee_send_string+0x10>
-    1284:	8d 01       	movw	r16, r26
-    1286:	01 50       	subi	r16, 0x01	; 1
-    1288:	10 40       	sbci	r17, 0x00	; 0
-    128a:	08 1b       	sub	r16, r24
-    128c:	19 0b       	sbc	r17, r25
-    128e:	c0 e0       	ldi	r28, 0x00	; 0
-    1290:	d0 e0       	ldi	r29, 0x00	; 0
-    1292:	07 c0       	rjmp	.+14     	; 0x12a2 <xbee_send_string+0x34>
-    1294:	f7 01       	movw	r30, r14
-    1296:	ec 0f       	add	r30, r28
-    1298:	fd 1f       	adc	r31, r29
-    129a:	80 81       	ld	r24, Z
-    129c:	0e 94 85 1a 	call	0x350a	; 0x350a <xbee_putc>
-    12a0:	21 96       	adiw	r28, 0x01	; 1
-    12a2:	c0 17       	cp	r28, r16
-    12a4:	d1 07       	cpc	r29, r17
-    12a6:	b4 f3       	brlt	.-20     	; 0x1294 <xbee_send_string+0x26>
-    12a8:	80 e0       	ldi	r24, 0x00	; 0
-    12aa:	90 e0       	ldi	r25, 0x00	; 0
+000011ae <xbee_terminate>:
+    11ae:	86 e3       	ldi	r24, 0x36	; 54
+    11b0:	91 e0       	ldi	r25, 0x01	; 1
+    11b2:	69 e3       	ldi	r22, 0x39	; 57
+    11b4:	71 e0       	ldi	r23, 0x01	; 1
+    11b6:	0e 94 f9 07 	call	0xff2	; 0xff2 <xbee_send_modify_at_command>
+    11ba:	08 95       	ret
+
+000011bc <xbee_send_packet>:
+    11bc:	af 92       	push	r10
+    11be:	bf 92       	push	r11
+    11c0:	cf 92       	push	r12
+    11c2:	df 92       	push	r13
+    11c4:	ef 92       	push	r14
+    11c6:	ff 92       	push	r15
+    11c8:	0f 93       	push	r16
+    11ca:	1f 93       	push	r17
+    11cc:	df 93       	push	r29
+    11ce:	cf 93       	push	r28
+    11d0:	cd b7       	in	r28, 0x3d	; 61
+    11d2:	de b7       	in	r29, 0x3e	; 62
+    11d4:	29 97       	sbiw	r28, 0x09	; 9
+    11d6:	0f b6       	in	r0, 0x3f	; 63
+    11d8:	f8 94       	cli
+    11da:	de bf       	out	0x3e, r29	; 62
+    11dc:	0f be       	out	0x3f, r0	; 63
+    11de:	cd bf       	out	0x3d, r28	; 61
+    11e0:	5c 01       	movw	r10, r24
+    11e2:	7b 01       	movw	r14, r22
+    11e4:	65 36       	cpi	r22, 0x65	; 101
+    11e6:	71 05       	cpc	r23, r1
+    11e8:	1c f0       	brlt	.+6      	; 0x11f0 <xbee_send_packet+0x34>
+    11ea:	2f ef       	ldi	r18, 0xFF	; 255
+    11ec:	3f ef       	ldi	r19, 0xFF	; 255
+    11ee:	56 c0       	rjmp	.+172    	; 0x129c <xbee_send_packet+0xe0>
+    11f0:	81 e0       	ldi	r24, 0x01	; 1
+    11f2:	8d 83       	std	Y+5, r24	; 0x05
+    11f4:	0e 83       	std	Y+6, r16	; 0x06
+    11f6:	5f 83       	std	Y+7, r21	; 0x07
+    11f8:	48 87       	std	Y+8, r20	; 0x08
+    11fa:	29 87       	std	Y+9, r18	; 0x09
+    11fc:	8e e7       	ldi	r24, 0x7E	; 126
+    11fe:	8a 83       	std	Y+2, r24	; 0x02
+    1200:	e5 e0       	ldi	r30, 0x05	; 5
+    1202:	f0 e0       	ldi	r31, 0x00	; 0
+    1204:	ee 0e       	add	r14, r30
+    1206:	ff 1e       	adc	r15, r31
+    1208:	fb 82       	std	Y+3, r15	; 0x03
+    120a:	8b ef       	ldi	r24, 0xFB	; 251
+    120c:	9f ef       	ldi	r25, 0xFF	; 255
+    120e:	e8 0e       	add	r14, r24
+    1210:	f9 1e       	adc	r15, r25
+    1212:	8e 2d       	mov	r24, r14
+    1214:	8b 5f       	subi	r24, 0xFB	; 251
+    1216:	8c 83       	std	Y+4, r24	; 0x04
+    1218:	0f 5f       	subi	r16, 0xFF	; 255
+    121a:	05 0f       	add	r16, r21
+    121c:	04 0f       	add	r16, r20
+    121e:	02 0f       	add	r16, r18
+    1220:	09 83       	std	Y+1, r16	; 0x01
+    1222:	20 e0       	ldi	r18, 0x00	; 0
+    1224:	30 e0       	ldi	r19, 0x00	; 0
+    1226:	08 c0       	rjmp	.+16     	; 0x1238 <xbee_send_packet+0x7c>
+    1228:	f5 01       	movw	r30, r10
+    122a:	e2 0f       	add	r30, r18
+    122c:	f3 1f       	adc	r31, r19
+    122e:	80 81       	ld	r24, Z
+    1230:	98 0f       	add	r25, r24
+    1232:	99 83       	std	Y+1, r25	; 0x01
+    1234:	2f 5f       	subi	r18, 0xFF	; 255
+    1236:	3f 4f       	sbci	r19, 0xFF	; 255
+    1238:	99 81       	ldd	r25, Y+1	; 0x01
+    123a:	2e 15       	cp	r18, r14
+    123c:	3f 05       	cpc	r19, r15
+    123e:	a4 f3       	brlt	.-24     	; 0x1228 <xbee_send_packet+0x6c>
+    1240:	90 95       	com	r25
+    1242:	99 83       	std	Y+1, r25	; 0x01
+    1244:	8e e7       	ldi	r24, 0x7E	; 126
+    1246:	0e 94 ae 1a 	call	0x355c	; 0x355c <xbee_putc>
+    124a:	8b 81       	ldd	r24, Y+3	; 0x03
+    124c:	0e 94 ae 1a 	call	0x355c	; 0x355c <xbee_putc>
+    1250:	8c 81       	ldd	r24, Y+4	; 0x04
+    1252:	0e 94 ae 1a 	call	0x355c	; 0x355c <xbee_putc>
+    1256:	8e 01       	movw	r16, r28
+    1258:	0b 5f       	subi	r16, 0xFB	; 251
+    125a:	1f 4f       	sbci	r17, 0xFF	; 255
+    125c:	6a e0       	ldi	r22, 0x0A	; 10
+    125e:	c6 2e       	mov	r12, r22
+    1260:	d1 2c       	mov	r13, r1
+    1262:	cc 0e       	add	r12, r28
+    1264:	dd 1e       	adc	r13, r29
+    1266:	f8 01       	movw	r30, r16
+    1268:	81 91       	ld	r24, Z+
+    126a:	8f 01       	movw	r16, r30
+    126c:	0e 94 ae 1a 	call	0x355c	; 0x355c <xbee_putc>
+    1270:	0c 15       	cp	r16, r12
+    1272:	1d 05       	cpc	r17, r13
+    1274:	c1 f7       	brne	.-16     	; 0x1266 <xbee_send_packet+0xaa>
+    1276:	00 e0       	ldi	r16, 0x00	; 0
+    1278:	10 e0       	ldi	r17, 0x00	; 0
+    127a:	08 c0       	rjmp	.+16     	; 0x128c <xbee_send_packet+0xd0>
+    127c:	f5 01       	movw	r30, r10
+    127e:	e0 0f       	add	r30, r16
+    1280:	f1 1f       	adc	r31, r17
+    1282:	80 81       	ld	r24, Z
+    1284:	0e 94 ae 1a 	call	0x355c	; 0x355c <xbee_putc>
+    1288:	0f 5f       	subi	r16, 0xFF	; 255
+    128a:	1f 4f       	sbci	r17, 0xFF	; 255
+    128c:	0e 15       	cp	r16, r14
+    128e:	1f 05       	cpc	r17, r15
+    1290:	ac f3       	brlt	.-22     	; 0x127c <xbee_send_packet+0xc0>
+    1292:	89 81       	ldd	r24, Y+1	; 0x01
+    1294:	0e 94 ae 1a 	call	0x355c	; 0x355c <xbee_putc>
+    1298:	20 e0       	ldi	r18, 0x00	; 0
+    129a:	30 e0       	ldi	r19, 0x00	; 0
+    129c:	c9 01       	movw	r24, r18
+    129e:	29 96       	adiw	r28, 0x09	; 9
+    12a0:	0f b6       	in	r0, 0x3f	; 63
+    12a2:	f8 94       	cli
+    12a4:	de bf       	out	0x3e, r29	; 62
+    12a6:	0f be       	out	0x3f, r0	; 63
+    12a8:	cd bf       	out	0x3d, r28	; 61
+    12aa:	cf 91       	pop	r28
     12ac:	df 91       	pop	r29
-    12ae:	cf 91       	pop	r28
-    12b0:	1f 91       	pop	r17
-    12b2:	0f 91       	pop	r16
-    12b4:	ff 90       	pop	r15
-    12b6:	ef 90       	pop	r14
-    12b8:	08 95       	ret
+    12ae:	1f 91       	pop	r17
+    12b0:	0f 91       	pop	r16
+    12b2:	ff 90       	pop	r15
+    12b4:	ef 90       	pop	r14
+    12b6:	df 90       	pop	r13
+    12b8:	cf 90       	pop	r12
+    12ba:	bf 90       	pop	r11
+    12bc:	af 90       	pop	r10
+    12be:	08 95       	ret
 
-000012ba <xbee_lib_init>:
-    12ba:	80 91 9a 00 	lds	r24, 0x009A
-    12be:	80 68       	ori	r24, 0x80	; 128
-    12c0:	80 93 9a 00 	sts	0x009A, r24
-    12c4:	78 94       	sei
-    12c6:	8a e4       	ldi	r24, 0x4A	; 74
-    12c8:	91 e0       	ldi	r25, 0x01	; 1
-    12ca:	0e 94 37 09 	call	0x126e	; 0x126e <xbee_send_string>
-    12ce:	89 2b       	or	r24, r25
-    12d0:	09 f0       	breq	.+2      	; 0x12d4 <xbee_lib_init+0x1a>
-    12d2:	99 c0       	rjmp	.+306    	; 0x1406 <xbee_lib_init+0x14c>
-    12d4:	26 c0       	rjmp	.+76     	; 0x1322 <xbee_lib_init+0x68>
-    12d6:	20 91 14 06 	lds	r18, 0x0614
-    12da:	30 91 15 06 	lds	r19, 0x0615
-    12de:	80 91 16 06 	lds	r24, 0x0616
-    12e2:	90 91 17 06 	lds	r25, 0x0617
-    12e6:	28 17       	cp	r18, r24
-    12e8:	39 07       	cpc	r19, r25
-    12ea:	f9 f0       	breq	.+62     	; 0x132a <xbee_lib_init+0x70>
-    12ec:	80 91 16 06 	lds	r24, 0x0616
-    12f0:	90 91 17 06 	lds	r25, 0x0617
-    12f4:	fc 01       	movw	r30, r24
-    12f6:	e5 53       	subi	r30, 0x35	; 53
-    12f8:	f9 4f       	sbci	r31, 0xF9	; 249
-    12fa:	e0 81       	ld	r30, Z
-    12fc:	01 96       	adiw	r24, 0x01	; 1
-    12fe:	90 93 17 06 	sts	0x0617, r25
-    1302:	80 93 16 06 	sts	0x0616, r24
-    1306:	80 91 16 06 	lds	r24, 0x0616
-    130a:	90 91 17 06 	lds	r25, 0x0617
-    130e:	80 38       	cpi	r24, 0x80	; 128
-    1310:	91 05       	cpc	r25, r1
-    1312:	21 f4       	brne	.+8      	; 0x131c <xbee_lib_init+0x62>
-    1314:	10 92 17 06 	sts	0x0617, r1
-    1318:	10 92 16 06 	sts	0x0616, r1
-    131c:	8c 91       	ld	r24, X
-    131e:	e8 17       	cp	r30, r24
-    1320:	19 f0       	breq	.+6      	; 0x1328 <xbee_lib_init+0x6e>
-    1322:	ae e4       	ldi	r26, 0x4E	; 78
-    1324:	b1 e0       	ldi	r27, 0x01	; 1
-    1326:	01 c0       	rjmp	.+2      	; 0x132a <xbee_lib_init+0x70>
-    1328:	11 96       	adiw	r26, 0x01	; 1
-    132a:	cd 01       	movw	r24, r26
-    132c:	8e 54       	subi	r24, 0x4E	; 78
-    132e:	91 40       	sbci	r25, 0x01	; 1
-    1330:	03 97       	sbiw	r24, 0x03	; 3
-    1332:	8c f2       	brlt	.-94     	; 0x12d6 <xbee_lib_init+0x1c>
-    1334:	6c c0       	rjmp	.+216    	; 0x140e <xbee_lib_init+0x154>
-    1336:	20 91 14 06 	lds	r18, 0x0614
-    133a:	30 91 15 06 	lds	r19, 0x0615
-    133e:	80 91 16 06 	lds	r24, 0x0616
-    1342:	90 91 17 06 	lds	r25, 0x0617
-    1346:	28 17       	cp	r18, r24
-    1348:	39 07       	cpc	r19, r25
-    134a:	e9 f0       	breq	.+58     	; 0x1386 <xbee_lib_init+0xcc>
-    134c:	80 91 16 06 	lds	r24, 0x0616
-    1350:	90 91 17 06 	lds	r25, 0x0617
-    1354:	fc 01       	movw	r30, r24
-    1356:	e5 53       	subi	r30, 0x35	; 53
-    1358:	f9 4f       	sbci	r31, 0xF9	; 249
-    135a:	e0 81       	ld	r30, Z
-    135c:	01 96       	adiw	r24, 0x01	; 1
-    135e:	90 93 17 06 	sts	0x0617, r25
-    1362:	80 93 16 06 	sts	0x0616, r24
-    1366:	80 91 16 06 	lds	r24, 0x0616
-    136a:	90 91 17 06 	lds	r25, 0x0617
-    136e:	80 38       	cpi	r24, 0x80	; 128
-    1370:	91 05       	cpc	r25, r1
-    1372:	21 f4       	brne	.+8      	; 0x137c <xbee_lib_init+0xc2>
-    1374:	10 92 17 06 	sts	0x0617, r1
-    1378:	10 92 16 06 	sts	0x0616, r1
-    137c:	8c 91       	ld	r24, X
-    137e:	e8 17       	cp	r30, r24
-    1380:	09 f0       	breq	.+2      	; 0x1384 <xbee_lib_init+0xca>
-    1382:	4b c0       	rjmp	.+150    	; 0x141a <xbee_lib_init+0x160>
-    1384:	11 96       	adiw	r26, 0x01	; 1
-    1386:	cd 01       	movw	r24, r26
-    1388:	8e 54       	subi	r24, 0x4E	; 78
-    138a:	91 40       	sbci	r25, 0x01	; 1
-    138c:	03 97       	sbiw	r24, 0x03	; 3
-    138e:	9c f2       	brlt	.-90     	; 0x1336 <xbee_lib_init+0x7c>
-    1390:	47 c0       	rjmp	.+142    	; 0x1420 <xbee_lib_init+0x166>
-    1392:	20 91 14 06 	lds	r18, 0x0614
-    1396:	30 91 15 06 	lds	r19, 0x0615
-    139a:	80 91 16 06 	lds	r24, 0x0616
-    139e:	90 91 17 06 	lds	r25, 0x0617
-    13a2:	28 17       	cp	r18, r24
-    13a4:	39 07       	cpc	r19, r25
-    13a6:	e1 f0       	breq	.+56     	; 0x13e0 <xbee_lib_init+0x126>
-    13a8:	80 91 16 06 	lds	r24, 0x0616
-    13ac:	90 91 17 06 	lds	r25, 0x0617
-    13b0:	fc 01       	movw	r30, r24
-    13b2:	e5 53       	subi	r30, 0x35	; 53
-    13b4:	f9 4f       	sbci	r31, 0xF9	; 249
-    13b6:	e0 81       	ld	r30, Z
-    13b8:	01 96       	adiw	r24, 0x01	; 1
-    13ba:	90 93 17 06 	sts	0x0617, r25
-    13be:	80 93 16 06 	sts	0x0616, r24
-    13c2:	80 91 16 06 	lds	r24, 0x0616
-    13c6:	90 91 17 06 	lds	r25, 0x0617
-    13ca:	80 38       	cpi	r24, 0x80	; 128
-    13cc:	91 05       	cpc	r25, r1
-    13ce:	21 f4       	brne	.+8      	; 0x13d8 <xbee_lib_init+0x11e>
-    13d0:	10 92 17 06 	sts	0x0617, r1
-    13d4:	10 92 16 06 	sts	0x0616, r1
-    13d8:	8c 91       	ld	r24, X
-    13da:	e8 17       	cp	r30, r24
-    13dc:	39 f5       	brne	.+78     	; 0x142c <xbee_lib_init+0x172>
-    13de:	11 96       	adiw	r26, 0x01	; 1
-    13e0:	cd 01       	movw	r24, r26
-    13e2:	8e 54       	subi	r24, 0x4E	; 78
-    13e4:	91 40       	sbci	r25, 0x01	; 1
-    13e6:	03 97       	sbiw	r24, 0x03	; 3
-    13e8:	a4 f2       	brlt	.-88     	; 0x1392 <xbee_lib_init+0xd8>
-    13ea:	23 c0       	rjmp	.+70     	; 0x1432 <xbee_lib_init+0x178>
-    13ec:	80 e0       	ldi	r24, 0x00	; 0
-    13ee:	90 e0       	ldi	r25, 0x00	; 0
-    13f0:	0e 94 8e 06 	call	0xd1c	; 0xd1c <xbee_get_packet>
-    13f4:	80 91 18 06 	lds	r24, 0x0618
-    13f8:	90 91 19 06 	lds	r25, 0x0619
-    13fc:	89 2b       	or	r24, r25
-    13fe:	b1 f3       	breq	.-20     	; 0x13ec <xbee_lib_init+0x132>
-    1400:	20 e0       	ldi	r18, 0x00	; 0
-    1402:	30 e0       	ldi	r19, 0x00	; 0
-    1404:	02 c0       	rjmp	.+4      	; 0x140a <xbee_lib_init+0x150>
-    1406:	2f ef       	ldi	r18, 0xFF	; 255
-    1408:	3f ef       	ldi	r19, 0xFF	; 255
-    140a:	c9 01       	movw	r24, r18
-    140c:	08 95       	ret
-    140e:	82 e5       	ldi	r24, 0x52	; 82
-    1410:	91 e0       	ldi	r25, 0x01	; 1
-    1412:	0e 94 37 09 	call	0x126e	; 0x126e <xbee_send_string>
-    1416:	89 2b       	or	r24, r25
-    1418:	b1 f7       	brne	.-20     	; 0x1406 <xbee_lib_init+0x14c>
-    141a:	ae e4       	ldi	r26, 0x4E	; 78
-    141c:	b1 e0       	ldi	r27, 0x01	; 1
-    141e:	b3 cf       	rjmp	.-154    	; 0x1386 <xbee_lib_init+0xcc>
-    1420:	8a e5       	ldi	r24, 0x5A	; 90
-    1422:	91 e0       	ldi	r25, 0x01	; 1
-    1424:	0e 94 37 09 	call	0x126e	; 0x126e <xbee_send_string>
-    1428:	89 2b       	or	r24, r25
-    142a:	69 f7       	brne	.-38     	; 0x1406 <xbee_lib_init+0x14c>
-    142c:	ae e4       	ldi	r26, 0x4E	; 78
-    142e:	b1 e0       	ldi	r27, 0x01	; 1
-    1430:	d7 cf       	rjmp	.-82     	; 0x13e0 <xbee_lib_init+0x126>
-    1432:	80 e6       	ldi	r24, 0x60	; 96
-    1434:	91 e0       	ldi	r25, 0x01	; 1
-    1436:	60 e0       	ldi	r22, 0x00	; 0
-    1438:	70 e0       	ldi	r23, 0x00	; 0
-    143a:	0e 94 d0 07 	call	0xfa0	; 0xfa0 <xbee_send_modify_at_command>
-    143e:	89 2b       	or	r24, r25
-    1440:	c9 f2       	breq	.-78     	; 0x13f4 <xbee_lib_init+0x13a>
-    1442:	e1 cf       	rjmp	.-62     	; 0x1406 <xbee_lib_init+0x14c>
+000012c0 <xbee_send_string>:
+    12c0:	ef 92       	push	r14
+    12c2:	ff 92       	push	r15
+    12c4:	0f 93       	push	r16
+    12c6:	1f 93       	push	r17
+    12c8:	cf 93       	push	r28
+    12ca:	df 93       	push	r29
+    12cc:	7c 01       	movw	r14, r24
+    12ce:	dc 01       	movw	r26, r24
+    12d0:	0d 90       	ld	r0, X+
+    12d2:	00 20       	and	r0, r0
+    12d4:	e9 f7       	brne	.-6      	; 0x12d0 <xbee_send_string+0x10>
+    12d6:	8d 01       	movw	r16, r26
+    12d8:	01 50       	subi	r16, 0x01	; 1
+    12da:	10 40       	sbci	r17, 0x00	; 0
+    12dc:	08 1b       	sub	r16, r24
+    12de:	19 0b       	sbc	r17, r25
+    12e0:	c0 e0       	ldi	r28, 0x00	; 0
+    12e2:	d0 e0       	ldi	r29, 0x00	; 0
+    12e4:	07 c0       	rjmp	.+14     	; 0x12f4 <xbee_send_string+0x34>
+    12e6:	f7 01       	movw	r30, r14
+    12e8:	ec 0f       	add	r30, r28
+    12ea:	fd 1f       	adc	r31, r29
+    12ec:	80 81       	ld	r24, Z
+    12ee:	0e 94 ae 1a 	call	0x355c	; 0x355c <xbee_putc>
+    12f2:	21 96       	adiw	r28, 0x01	; 1
+    12f4:	c0 17       	cp	r28, r16
+    12f6:	d1 07       	cpc	r29, r17
+    12f8:	b4 f3       	brlt	.-20     	; 0x12e6 <xbee_send_string+0x26>
+    12fa:	80 e0       	ldi	r24, 0x00	; 0
+    12fc:	90 e0       	ldi	r25, 0x00	; 0
+    12fe:	df 91       	pop	r29
+    1300:	cf 91       	pop	r28
+    1302:	1f 91       	pop	r17
+    1304:	0f 91       	pop	r16
+    1306:	ff 90       	pop	r15
+    1308:	ef 90       	pop	r14
+    130a:	08 95       	ret
 
-00001444 <sensor_matrix_create>:
-    1444:	10 92 4c 07 	sts	0x074C, r1
-    1448:	10 92 4b 07 	sts	0x074B, r1
-    144c:	ad e4       	ldi	r26, 0x4D	; 77
-    144e:	b7 e0       	ldi	r27, 0x07	; 7
-    1450:	20 e0       	ldi	r18, 0x00	; 0
-    1452:	30 e0       	ldi	r19, 0x00	; 0
-    1454:	4f ef       	ldi	r20, 0xFF	; 255
-    1456:	1c 92       	st	X, r1
-    1458:	f9 01       	movw	r30, r18
-    145a:	85 e0       	ldi	r24, 0x05	; 5
-    145c:	ee 0f       	add	r30, r30
-    145e:	ff 1f       	adc	r31, r31
-    1460:	8a 95       	dec	r24
-    1462:	e1 f7       	brne	.-8      	; 0x145c <sensor_matrix_create+0x18>
-    1464:	e3 5a       	subi	r30, 0xA3	; 163
-    1466:	f8 4f       	sbci	r31, 0xF8	; 248
-    1468:	80 e0       	ldi	r24, 0x00	; 0
-    146a:	90 e0       	ldi	r25, 0x00	; 0
-    146c:	40 83       	st	Z, r20
-    146e:	01 96       	adiw	r24, 0x01	; 1
-    1470:	32 96       	adiw	r30, 0x02	; 2
-    1472:	80 31       	cpi	r24, 0x10	; 16
-    1474:	91 05       	cpc	r25, r1
-    1476:	d1 f7       	brne	.-12     	; 0x146c <sensor_matrix_create+0x28>
-    1478:	2f 5f       	subi	r18, 0xFF	; 255
-    147a:	3f 4f       	sbci	r19, 0xFF	; 255
-    147c:	11 96       	adiw	r26, 0x01	; 1
-    147e:	20 31       	cpi	r18, 0x10	; 16
-    1480:	31 05       	cpc	r19, r1
-    1482:	49 f7       	brne	.-46     	; 0x1456 <sensor_matrix_create+0x12>
-    1484:	08 95       	ret
+0000130c <xbee_lib_init>:
+    130c:	80 91 9a 00 	lds	r24, 0x009A
+    1310:	80 68       	ori	r24, 0x80	; 128
+    1312:	80 93 9a 00 	sts	0x009A, r24
+    1316:	78 94       	sei
+    1318:	8b e3       	ldi	r24, 0x3B	; 59
+    131a:	91 e0       	ldi	r25, 0x01	; 1
+    131c:	0e 94 60 09 	call	0x12c0	; 0x12c0 <xbee_send_string>
+    1320:	89 2b       	or	r24, r25
+    1322:	09 f0       	breq	.+2      	; 0x1326 <xbee_lib_init+0x1a>
+    1324:	99 c0       	rjmp	.+306    	; 0x1458 <xbee_lib_init+0x14c>
+    1326:	26 c0       	rjmp	.+76     	; 0x1374 <xbee_lib_init+0x68>
+    1328:	20 91 04 06 	lds	r18, 0x0604
+    132c:	30 91 05 06 	lds	r19, 0x0605
+    1330:	80 91 06 06 	lds	r24, 0x0606
+    1334:	90 91 07 06 	lds	r25, 0x0607
+    1338:	28 17       	cp	r18, r24
+    133a:	39 07       	cpc	r19, r25
+    133c:	f9 f0       	breq	.+62     	; 0x137c <xbee_lib_init+0x70>
+    133e:	80 91 06 06 	lds	r24, 0x0606
+    1342:	90 91 07 06 	lds	r25, 0x0607
+    1346:	fc 01       	movw	r30, r24
+    1348:	e5 54       	subi	r30, 0x45	; 69
+    134a:	f9 4f       	sbci	r31, 0xF9	; 249
+    134c:	e0 81       	ld	r30, Z
+    134e:	01 96       	adiw	r24, 0x01	; 1
+    1350:	90 93 07 06 	sts	0x0607, r25
+    1354:	80 93 06 06 	sts	0x0606, r24
+    1358:	80 91 06 06 	lds	r24, 0x0606
+    135c:	90 91 07 06 	lds	r25, 0x0607
+    1360:	80 38       	cpi	r24, 0x80	; 128
+    1362:	91 05       	cpc	r25, r1
+    1364:	21 f4       	brne	.+8      	; 0x136e <xbee_lib_init+0x62>
+    1366:	10 92 07 06 	sts	0x0607, r1
+    136a:	10 92 06 06 	sts	0x0606, r1
+    136e:	8c 91       	ld	r24, X
+    1370:	e8 17       	cp	r30, r24
+    1372:	19 f0       	breq	.+6      	; 0x137a <xbee_lib_init+0x6e>
+    1374:	af e3       	ldi	r26, 0x3F	; 63
+    1376:	b1 e0       	ldi	r27, 0x01	; 1
+    1378:	01 c0       	rjmp	.+2      	; 0x137c <xbee_lib_init+0x70>
+    137a:	11 96       	adiw	r26, 0x01	; 1
+    137c:	cd 01       	movw	r24, r26
+    137e:	8f 53       	subi	r24, 0x3F	; 63
+    1380:	91 40       	sbci	r25, 0x01	; 1
+    1382:	03 97       	sbiw	r24, 0x03	; 3
+    1384:	8c f2       	brlt	.-94     	; 0x1328 <xbee_lib_init+0x1c>
+    1386:	6c c0       	rjmp	.+216    	; 0x1460 <xbee_lib_init+0x154>
+    1388:	20 91 04 06 	lds	r18, 0x0604
+    138c:	30 91 05 06 	lds	r19, 0x0605
+    1390:	80 91 06 06 	lds	r24, 0x0606
+    1394:	90 91 07 06 	lds	r25, 0x0607
+    1398:	28 17       	cp	r18, r24
+    139a:	39 07       	cpc	r19, r25
+    139c:	e9 f0       	breq	.+58     	; 0x13d8 <xbee_lib_init+0xcc>
+    139e:	80 91 06 06 	lds	r24, 0x0606
+    13a2:	90 91 07 06 	lds	r25, 0x0607
+    13a6:	fc 01       	movw	r30, r24
+    13a8:	e5 54       	subi	r30, 0x45	; 69
+    13aa:	f9 4f       	sbci	r31, 0xF9	; 249
+    13ac:	e0 81       	ld	r30, Z
+    13ae:	01 96       	adiw	r24, 0x01	; 1
+    13b0:	90 93 07 06 	sts	0x0607, r25
+    13b4:	80 93 06 06 	sts	0x0606, r24
+    13b8:	80 91 06 06 	lds	r24, 0x0606
+    13bc:	90 91 07 06 	lds	r25, 0x0607
+    13c0:	80 38       	cpi	r24, 0x80	; 128
+    13c2:	91 05       	cpc	r25, r1
+    13c4:	21 f4       	brne	.+8      	; 0x13ce <xbee_lib_init+0xc2>
+    13c6:	10 92 07 06 	sts	0x0607, r1
+    13ca:	10 92 06 06 	sts	0x0606, r1
+    13ce:	8c 91       	ld	r24, X
+    13d0:	e8 17       	cp	r30, r24
+    13d2:	09 f0       	breq	.+2      	; 0x13d6 <xbee_lib_init+0xca>
+    13d4:	4b c0       	rjmp	.+150    	; 0x146c <xbee_lib_init+0x160>
+    13d6:	11 96       	adiw	r26, 0x01	; 1
+    13d8:	cd 01       	movw	r24, r26
+    13da:	8f 53       	subi	r24, 0x3F	; 63
+    13dc:	91 40       	sbci	r25, 0x01	; 1
+    13de:	03 97       	sbiw	r24, 0x03	; 3
+    13e0:	9c f2       	brlt	.-90     	; 0x1388 <xbee_lib_init+0x7c>
+    13e2:	47 c0       	rjmp	.+142    	; 0x1472 <xbee_lib_init+0x166>
+    13e4:	20 91 04 06 	lds	r18, 0x0604
+    13e8:	30 91 05 06 	lds	r19, 0x0605
+    13ec:	80 91 06 06 	lds	r24, 0x0606
+    13f0:	90 91 07 06 	lds	r25, 0x0607
+    13f4:	28 17       	cp	r18, r24
+    13f6:	39 07       	cpc	r19, r25
+    13f8:	e1 f0       	breq	.+56     	; 0x1432 <xbee_lib_init+0x126>
+    13fa:	80 91 06 06 	lds	r24, 0x0606
+    13fe:	90 91 07 06 	lds	r25, 0x0607
+    1402:	fc 01       	movw	r30, r24
+    1404:	e5 54       	subi	r30, 0x45	; 69
+    1406:	f9 4f       	sbci	r31, 0xF9	; 249
+    1408:	e0 81       	ld	r30, Z
+    140a:	01 96       	adiw	r24, 0x01	; 1
+    140c:	90 93 07 06 	sts	0x0607, r25
+    1410:	80 93 06 06 	sts	0x0606, r24
+    1414:	80 91 06 06 	lds	r24, 0x0606
+    1418:	90 91 07 06 	lds	r25, 0x0607
+    141c:	80 38       	cpi	r24, 0x80	; 128
+    141e:	91 05       	cpc	r25, r1
+    1420:	21 f4       	brne	.+8      	; 0x142a <xbee_lib_init+0x11e>
+    1422:	10 92 07 06 	sts	0x0607, r1
+    1426:	10 92 06 06 	sts	0x0606, r1
+    142a:	8c 91       	ld	r24, X
+    142c:	e8 17       	cp	r30, r24
+    142e:	39 f5       	brne	.+78     	; 0x147e <xbee_lib_init+0x172>
+    1430:	11 96       	adiw	r26, 0x01	; 1
+    1432:	cd 01       	movw	r24, r26
+    1434:	8f 53       	subi	r24, 0x3F	; 63
+    1436:	91 40       	sbci	r25, 0x01	; 1
+    1438:	03 97       	sbiw	r24, 0x03	; 3
+    143a:	a4 f2       	brlt	.-88     	; 0x13e4 <xbee_lib_init+0xd8>
+    143c:	23 c0       	rjmp	.+70     	; 0x1484 <xbee_lib_init+0x178>
+    143e:	80 e0       	ldi	r24, 0x00	; 0
+    1440:	90 e0       	ldi	r25, 0x00	; 0
+    1442:	0e 94 b7 06 	call	0xd6e	; 0xd6e <xbee_get_packet>
+    1446:	80 91 08 06 	lds	r24, 0x0608
+    144a:	90 91 09 06 	lds	r25, 0x0609
+    144e:	89 2b       	or	r24, r25
+    1450:	b1 f3       	breq	.-20     	; 0x143e <xbee_lib_init+0x132>
+    1452:	20 e0       	ldi	r18, 0x00	; 0
+    1454:	30 e0       	ldi	r19, 0x00	; 0
+    1456:	02 c0       	rjmp	.+4      	; 0x145c <xbee_lib_init+0x150>
+    1458:	2f ef       	ldi	r18, 0xFF	; 255
+    145a:	3f ef       	ldi	r19, 0xFF	; 255
+    145c:	c9 01       	movw	r24, r18
+    145e:	08 95       	ret
+    1460:	83 e4       	ldi	r24, 0x43	; 67
+    1462:	91 e0       	ldi	r25, 0x01	; 1
+    1464:	0e 94 60 09 	call	0x12c0	; 0x12c0 <xbee_send_string>
+    1468:	89 2b       	or	r24, r25
+    146a:	b1 f7       	brne	.-20     	; 0x1458 <xbee_lib_init+0x14c>
+    146c:	af e3       	ldi	r26, 0x3F	; 63
+    146e:	b1 e0       	ldi	r27, 0x01	; 1
+    1470:	b3 cf       	rjmp	.-154    	; 0x13d8 <xbee_lib_init+0xcc>
+    1472:	8b e4       	ldi	r24, 0x4B	; 75
+    1474:	91 e0       	ldi	r25, 0x01	; 1
+    1476:	0e 94 60 09 	call	0x12c0	; 0x12c0 <xbee_send_string>
+    147a:	89 2b       	or	r24, r25
+    147c:	69 f7       	brne	.-38     	; 0x1458 <xbee_lib_init+0x14c>
+    147e:	af e3       	ldi	r26, 0x3F	; 63
+    1480:	b1 e0       	ldi	r27, 0x01	; 1
+    1482:	d7 cf       	rjmp	.-82     	; 0x1432 <xbee_lib_init+0x126>
+    1484:	81 e5       	ldi	r24, 0x51	; 81
+    1486:	91 e0       	ldi	r25, 0x01	; 1
+    1488:	60 e0       	ldi	r22, 0x00	; 0
+    148a:	70 e0       	ldi	r23, 0x00	; 0
+    148c:	0e 94 f9 07 	call	0xff2	; 0xff2 <xbee_send_modify_at_command>
+    1490:	89 2b       	or	r24, r25
+    1492:	c9 f2       	breq	.-78     	; 0x1446 <xbee_lib_init+0x13a>
+    1494:	e1 cf       	rjmp	.-62     	; 0x1458 <xbee_lib_init+0x14c>
 
-00001486 <sensor_matrix_set_reading>:
-    1486:	60 31       	cpi	r22, 0x10	; 16
-    1488:	71 05       	cpc	r23, r1
-    148a:	ac f4       	brge	.+42     	; 0x14b6 <sensor_matrix_set_reading+0x30>
-    148c:	80 31       	cpi	r24, 0x10	; 16
-    148e:	91 05       	cpc	r25, r1
-    1490:	94 f4       	brge	.+36     	; 0x14b6 <sensor_matrix_set_reading+0x30>
-    1492:	fc 01       	movw	r30, r24
-    1494:	34 e0       	ldi	r19, 0x04	; 4
-    1496:	ee 0f       	add	r30, r30
-    1498:	ff 1f       	adc	r31, r31
-    149a:	3a 95       	dec	r19
-    149c:	e1 f7       	brne	.-8      	; 0x1496 <sensor_matrix_set_reading+0x10>
-    149e:	e6 0f       	add	r30, r22
-    14a0:	f7 1f       	adc	r31, r23
-    14a2:	ee 0f       	add	r30, r30
-    14a4:	ff 1f       	adc	r31, r31
-    14a6:	df 01       	movw	r26, r30
-    14a8:	a5 5b       	subi	r26, 0xB5	; 181
-    14aa:	b8 4f       	sbci	r27, 0xF8	; 248
-    14ac:	53 96       	adiw	r26, 0x13	; 19
-    14ae:	5c 93       	st	X, r21
-    14b0:	e3 5a       	subi	r30, 0xA3	; 163
-    14b2:	f8 4f       	sbci	r31, 0xF8	; 248
-    14b4:	40 83       	st	Z, r20
-    14b6:	08 95       	ret
+00001496 <sensor_matrix_create>:
+    1496:	10 92 3c 07 	sts	0x073C, r1
+    149a:	10 92 3b 07 	sts	0x073B, r1
+    149e:	ad e3       	ldi	r26, 0x3D	; 61
+    14a0:	b7 e0       	ldi	r27, 0x07	; 7
+    14a2:	20 e0       	ldi	r18, 0x00	; 0
+    14a4:	30 e0       	ldi	r19, 0x00	; 0
+    14a6:	4f ef       	ldi	r20, 0xFF	; 255
+    14a8:	1c 92       	st	X, r1
+    14aa:	f9 01       	movw	r30, r18
+    14ac:	85 e0       	ldi	r24, 0x05	; 5
+    14ae:	ee 0f       	add	r30, r30
+    14b0:	ff 1f       	adc	r31, r31
+    14b2:	8a 95       	dec	r24
+    14b4:	e1 f7       	brne	.-8      	; 0x14ae <sensor_matrix_create+0x18>
+    14b6:	e3 5b       	subi	r30, 0xB3	; 179
+    14b8:	f8 4f       	sbci	r31, 0xF8	; 248
+    14ba:	80 e0       	ldi	r24, 0x00	; 0
+    14bc:	90 e0       	ldi	r25, 0x00	; 0
+    14be:	40 83       	st	Z, r20
+    14c0:	01 96       	adiw	r24, 0x01	; 1
+    14c2:	32 96       	adiw	r30, 0x02	; 2
+    14c4:	80 31       	cpi	r24, 0x10	; 16
+    14c6:	91 05       	cpc	r25, r1
+    14c8:	d1 f7       	brne	.-12     	; 0x14be <sensor_matrix_create+0x28>
+    14ca:	2f 5f       	subi	r18, 0xFF	; 255
+    14cc:	3f 4f       	sbci	r19, 0xFF	; 255
+    14ce:	11 96       	adiw	r26, 0x01	; 1
+    14d0:	20 31       	cpi	r18, 0x10	; 16
+    14d2:	31 05       	cpc	r19, r1
+    14d4:	49 f7       	brne	.-46     	; 0x14a8 <sensor_matrix_create+0x12>
+    14d6:	08 95       	ret
 
-000014b8 <sensor_matrix_get_reading>:
-    14b8:	80 31       	cpi	r24, 0x10	; 16
-    14ba:	91 05       	cpc	r25, r1
-    14bc:	84 f4       	brge	.+32     	; 0x14de <sensor_matrix_get_reading+0x26>
-    14be:	60 31       	cpi	r22, 0x10	; 16
-    14c0:	71 05       	cpc	r23, r1
-    14c2:	6c f4       	brge	.+26     	; 0x14de <sensor_matrix_get_reading+0x26>
-    14c4:	9c 01       	movw	r18, r24
-    14c6:	54 e0       	ldi	r21, 0x04	; 4
-    14c8:	22 0f       	add	r18, r18
-    14ca:	33 1f       	adc	r19, r19
-    14cc:	5a 95       	dec	r21
-    14ce:	e1 f7       	brne	.-8      	; 0x14c8 <sensor_matrix_get_reading+0x10>
-    14d0:	26 0f       	add	r18, r22
-    14d2:	37 1f       	adc	r19, r23
-    14d4:	22 0f       	add	r18, r18
-    14d6:	33 1f       	adc	r19, r19
-    14d8:	23 5a       	subi	r18, 0xA3	; 163
-    14da:	38 4f       	sbci	r19, 0xF8	; 248
-    14dc:	02 c0       	rjmp	.+4      	; 0x14e2 <sensor_matrix_get_reading+0x2a>
-    14de:	20 e0       	ldi	r18, 0x00	; 0
-    14e0:	30 e0       	ldi	r19, 0x00	; 0
-    14e2:	c9 01       	movw	r24, r18
-    14e4:	08 95       	ret
+000014d8 <sensor_matrix_set_reading>:
+    14d8:	60 31       	cpi	r22, 0x10	; 16
+    14da:	71 05       	cpc	r23, r1
+    14dc:	ac f4       	brge	.+42     	; 0x1508 <sensor_matrix_set_reading+0x30>
+    14de:	80 31       	cpi	r24, 0x10	; 16
+    14e0:	91 05       	cpc	r25, r1
+    14e2:	94 f4       	brge	.+36     	; 0x1508 <sensor_matrix_set_reading+0x30>
+    14e4:	fc 01       	movw	r30, r24
+    14e6:	34 e0       	ldi	r19, 0x04	; 4
+    14e8:	ee 0f       	add	r30, r30
+    14ea:	ff 1f       	adc	r31, r31
+    14ec:	3a 95       	dec	r19
+    14ee:	e1 f7       	brne	.-8      	; 0x14e8 <sensor_matrix_set_reading+0x10>
+    14f0:	e6 0f       	add	r30, r22
+    14f2:	f7 1f       	adc	r31, r23
+    14f4:	ee 0f       	add	r30, r30
+    14f6:	ff 1f       	adc	r31, r31
+    14f8:	df 01       	movw	r26, r30
+    14fa:	a5 5c       	subi	r26, 0xC5	; 197
+    14fc:	b8 4f       	sbci	r27, 0xF8	; 248
+    14fe:	53 96       	adiw	r26, 0x13	; 19
+    1500:	5c 93       	st	X, r21
+    1502:	e3 5b       	subi	r30, 0xB3	; 179
+    1504:	f8 4f       	sbci	r31, 0xF8	; 248
+    1506:	40 83       	st	Z, r20
+    1508:	08 95       	ret
 
-000014e6 <sensor_matrix_set_in_ring>:
-    14e6:	dc 01       	movw	r26, r24
-    14e8:	80 31       	cpi	r24, 0x10	; 16
-    14ea:	91 05       	cpc	r25, r1
-    14ec:	2c f5       	brge	.+74     	; 0x1538 <sensor_matrix_set_in_ring+0x52>
-    14ee:	61 30       	cpi	r22, 0x01	; 1
-    14f0:	71 05       	cpc	r23, r1
-    14f2:	61 f4       	brne	.+24     	; 0x150c <sensor_matrix_set_in_ring+0x26>
-    14f4:	fc 01       	movw	r30, r24
-    14f6:	e5 5b       	subi	r30, 0xB5	; 181
-    14f8:	f8 4f       	sbci	r31, 0xF8	; 248
-    14fa:	82 81       	ldd	r24, Z+2	; 0x02
-    14fc:	88 23       	and	r24, r24
-    14fe:	c1 f4       	brne	.+48     	; 0x1530 <sensor_matrix_set_in_ring+0x4a>
-    1500:	80 91 4b 07 	lds	r24, 0x074B
-    1504:	90 91 4c 07 	lds	r25, 0x074C
-    1508:	01 96       	adiw	r24, 0x01	; 1
-    150a:	0e c0       	rjmp	.+28     	; 0x1528 <sensor_matrix_set_in_ring+0x42>
-    150c:	61 15       	cp	r22, r1
-    150e:	71 05       	cpc	r23, r1
-    1510:	79 f4       	brne	.+30     	; 0x1530 <sensor_matrix_set_in_ring+0x4a>
-    1512:	fc 01       	movw	r30, r24
-    1514:	e5 5b       	subi	r30, 0xB5	; 181
-    1516:	f8 4f       	sbci	r31, 0xF8	; 248
-    1518:	82 81       	ldd	r24, Z+2	; 0x02
-    151a:	88 23       	and	r24, r24
-    151c:	49 f0       	breq	.+18     	; 0x1530 <sensor_matrix_set_in_ring+0x4a>
-    151e:	80 91 4b 07 	lds	r24, 0x074B
-    1522:	90 91 4c 07 	lds	r25, 0x074C
-    1526:	01 97       	sbiw	r24, 0x01	; 1
-    1528:	90 93 4c 07 	sts	0x074C, r25
-    152c:	80 93 4b 07 	sts	0x074B, r24
-    1530:	a5 5b       	subi	r26, 0xB5	; 181
-    1532:	b8 4f       	sbci	r27, 0xF8	; 248
-    1534:	12 96       	adiw	r26, 0x02	; 2
-    1536:	6c 93       	st	X, r22
-    1538:	08 95       	ret
+0000150a <sensor_matrix_get_reading>:
+    150a:	80 31       	cpi	r24, 0x10	; 16
+    150c:	91 05       	cpc	r25, r1
+    150e:	84 f4       	brge	.+32     	; 0x1530 <sensor_matrix_get_reading+0x26>
+    1510:	60 31       	cpi	r22, 0x10	; 16
+    1512:	71 05       	cpc	r23, r1
+    1514:	6c f4       	brge	.+26     	; 0x1530 <sensor_matrix_get_reading+0x26>
+    1516:	9c 01       	movw	r18, r24
+    1518:	54 e0       	ldi	r21, 0x04	; 4
+    151a:	22 0f       	add	r18, r18
+    151c:	33 1f       	adc	r19, r19
+    151e:	5a 95       	dec	r21
+    1520:	e1 f7       	brne	.-8      	; 0x151a <sensor_matrix_get_reading+0x10>
+    1522:	26 0f       	add	r18, r22
+    1524:	37 1f       	adc	r19, r23
+    1526:	22 0f       	add	r18, r18
+    1528:	33 1f       	adc	r19, r19
+    152a:	23 5b       	subi	r18, 0xB3	; 179
+    152c:	38 4f       	sbci	r19, 0xF8	; 248
+    152e:	02 c0       	rjmp	.+4      	; 0x1534 <sensor_matrix_get_reading+0x2a>
+    1530:	20 e0       	ldi	r18, 0x00	; 0
+    1532:	30 e0       	ldi	r19, 0x00	; 0
+    1534:	c9 01       	movw	r24, r18
+    1536:	08 95       	ret
 
-0000153a <sensor_matrix_get_in_ring>:
-    153a:	fc 01       	movw	r30, r24
-    153c:	80 31       	cpi	r24, 0x10	; 16
-    153e:	91 05       	cpc	r25, r1
-    1540:	1c f0       	brlt	.+6      	; 0x1548 <sensor_matrix_get_in_ring+0xe>
-    1542:	2f ef       	ldi	r18, 0xFF	; 255
-    1544:	3f ef       	ldi	r19, 0xFF	; 255
-    1546:	05 c0       	rjmp	.+10     	; 0x1552 <sensor_matrix_get_in_ring+0x18>
-    1548:	e5 5b       	subi	r30, 0xB5	; 181
+00001538 <sensor_matrix_set_in_ring>:
+    1538:	dc 01       	movw	r26, r24
+    153a:	80 31       	cpi	r24, 0x10	; 16
+    153c:	91 05       	cpc	r25, r1
+    153e:	2c f5       	brge	.+74     	; 0x158a <sensor_matrix_set_in_ring+0x52>
+    1540:	61 30       	cpi	r22, 0x01	; 1
+    1542:	71 05       	cpc	r23, r1
+    1544:	61 f4       	brne	.+24     	; 0x155e <sensor_matrix_set_in_ring+0x26>
+    1546:	fc 01       	movw	r30, r24
+    1548:	e5 5c       	subi	r30, 0xC5	; 197
     154a:	f8 4f       	sbci	r31, 0xF8	; 248
     154c:	82 81       	ldd	r24, Z+2	; 0x02
-    154e:	28 2f       	mov	r18, r24
-    1550:	30 e0       	ldi	r19, 0x00	; 0
-    1552:	c9 01       	movw	r24, r18
-    1554:	08 95       	ret
+    154e:	88 23       	and	r24, r24
+    1550:	c1 f4       	brne	.+48     	; 0x1582 <sensor_matrix_set_in_ring+0x4a>
+    1552:	80 91 3b 07 	lds	r24, 0x073B
+    1556:	90 91 3c 07 	lds	r25, 0x073C
+    155a:	01 96       	adiw	r24, 0x01	; 1
+    155c:	0e c0       	rjmp	.+28     	; 0x157a <sensor_matrix_set_in_ring+0x42>
+    155e:	61 15       	cp	r22, r1
+    1560:	71 05       	cpc	r23, r1
+    1562:	79 f4       	brne	.+30     	; 0x1582 <sensor_matrix_set_in_ring+0x4a>
+    1564:	fc 01       	movw	r30, r24
+    1566:	e5 5c       	subi	r30, 0xC5	; 197
+    1568:	f8 4f       	sbci	r31, 0xF8	; 248
+    156a:	82 81       	ldd	r24, Z+2	; 0x02
+    156c:	88 23       	and	r24, r24
+    156e:	49 f0       	breq	.+18     	; 0x1582 <sensor_matrix_set_in_ring+0x4a>
+    1570:	80 91 3b 07 	lds	r24, 0x073B
+    1574:	90 91 3c 07 	lds	r25, 0x073C
+    1578:	01 97       	sbiw	r24, 0x01	; 1
+    157a:	90 93 3c 07 	sts	0x073C, r25
+    157e:	80 93 3b 07 	sts	0x073B, r24
+    1582:	a5 5c       	subi	r26, 0xC5	; 197
+    1584:	b8 4f       	sbci	r27, 0xF8	; 248
+    1586:	12 96       	adiw	r26, 0x02	; 2
+    1588:	6c 93       	st	X, r22
+    158a:	08 95       	ret
 
-00001556 <sensor_matrix_get_joined>:
-    1556:	80 91 4b 07 	lds	r24, 0x074B
-    155a:	90 91 4c 07 	lds	r25, 0x074C
-    155e:	08 95       	ret
+0000158c <sensor_matrix_get_in_ring>:
+    158c:	fc 01       	movw	r30, r24
+    158e:	80 31       	cpi	r24, 0x10	; 16
+    1590:	91 05       	cpc	r25, r1
+    1592:	1c f0       	brlt	.+6      	; 0x159a <sensor_matrix_get_in_ring+0xe>
+    1594:	2f ef       	ldi	r18, 0xFF	; 255
+    1596:	3f ef       	ldi	r19, 0xFF	; 255
+    1598:	05 c0       	rjmp	.+10     	; 0x15a4 <sensor_matrix_get_in_ring+0x18>
+    159a:	e5 5c       	subi	r30, 0xC5	; 197
+    159c:	f8 4f       	sbci	r31, 0xF8	; 248
+    159e:	82 81       	ldd	r24, Z+2	; 0x02
+    15a0:	28 2f       	mov	r18, r24
+    15a2:	30 e0       	ldi	r19, 0x00	; 0
+    15a4:	c9 01       	movw	r24, r18
+    15a6:	08 95       	ret
 
-00001560 <sensor_matrix_get_size>:
-    1560:	80 e1       	ldi	r24, 0x10	; 16
-    1562:	90 e0       	ldi	r25, 0x00	; 0
-    1564:	08 95       	ret
+000015a8 <sensor_matrix_get_joined>:
+    15a8:	80 91 3b 07 	lds	r24, 0x073B
+    15ac:	90 91 3c 07 	lds	r25, 0x073C
+    15b0:	08 95       	ret
 
-00001566 <bom_get>:
-    1566:	fc 01       	movw	r30, r24
-    1568:	ee 0f       	add	r30, r30
-    156a:	ff 1f       	adc	r31, r31
-    156c:	e3 57       	subi	r30, 0x73	; 115
-    156e:	f9 4f       	sbci	r31, 0xF9	; 249
-    1570:	80 81       	ld	r24, Z
-    1572:	91 81       	ldd	r25, Z+1	; 0x01
-    1574:	08 95       	ret
+000015b2 <sensor_matrix_get_size>:
+    15b2:	80 e1       	ldi	r24, 0x10	; 16
+    15b4:	90 e0       	ldi	r25, 0x00	; 0
+    15b6:	08 95       	ret
 
-00001576 <bom_get_max>:
-    1576:	ed e8       	ldi	r30, 0x8D	; 141
-    1578:	f6 e0       	ldi	r31, 0x06	; 6
-    157a:	20 e0       	ldi	r18, 0x00	; 0
-    157c:	30 e0       	ldi	r19, 0x00	; 0
-    157e:	8f ef       	ldi	r24, 0xFF	; 255
-    1580:	90 e0       	ldi	r25, 0x00	; 0
-    1582:	6f ef       	ldi	r22, 0xFF	; 255
-    1584:	7f ef       	ldi	r23, 0xFF	; 255
-    1586:	40 81       	ld	r20, Z
-    1588:	51 81       	ldd	r21, Z+1	; 0x01
-    158a:	48 17       	cp	r20, r24
-    158c:	59 07       	cpc	r21, r25
-    158e:	10 f4       	brcc	.+4      	; 0x1594 <bom_get_max+0x1e>
-    1590:	ca 01       	movw	r24, r20
-    1592:	b9 01       	movw	r22, r18
-    1594:	2f 5f       	subi	r18, 0xFF	; 255
-    1596:	3f 4f       	sbci	r19, 0xFF	; 255
-    1598:	32 96       	adiw	r30, 0x02	; 2
-    159a:	20 31       	cpi	r18, 0x10	; 16
-    159c:	31 05       	cpc	r19, r1
-    159e:	99 f7       	brne	.-26     	; 0x1586 <bom_get_max+0x10>
-    15a0:	86 39       	cpi	r24, 0x96	; 150
-    15a2:	91 05       	cpc	r25, r1
-    15a4:	14 f0       	brlt	.+4      	; 0x15aa <bom_get_max+0x34>
-    15a6:	6f ef       	ldi	r22, 0xFF	; 255
-    15a8:	7f ef       	ldi	r23, 0xFF	; 255
-    15aa:	cb 01       	movw	r24, r22
-    15ac:	08 95       	ret
+000015b8 <bom_get>:
+    15b8:	fc 01       	movw	r30, r24
+    15ba:	ee 0f       	add	r30, r30
+    15bc:	ff 1f       	adc	r31, r31
+    15be:	e3 58       	subi	r30, 0x83	; 131
+    15c0:	f9 4f       	sbci	r31, 0xF9	; 249
+    15c2:	80 81       	ld	r24, Z
+    15c4:	91 81       	ldd	r25, Z+1	; 0x01
+    15c6:	08 95       	ret
 
-000015ae <bom_get_max10>:
-    15ae:	2f 92       	push	r2
-    15b0:	3f 92       	push	r3
-    15b2:	4f 92       	push	r4
-    15b4:	5f 92       	push	r5
-    15b6:	6f 92       	push	r6
-    15b8:	7f 92       	push	r7
-    15ba:	8f 92       	push	r8
-    15bc:	9f 92       	push	r9
-    15be:	af 92       	push	r10
-    15c0:	bf 92       	push	r11
-    15c2:	cf 92       	push	r12
-    15c4:	df 92       	push	r13
-    15c6:	ef 92       	push	r14
-    15c8:	ff 92       	push	r15
-    15ca:	0f 93       	push	r16
-    15cc:	1f 93       	push	r17
-    15ce:	df 93       	push	r29
-    15d0:	cf 93       	push	r28
-    15d2:	cd b7       	in	r28, 0x3d	; 61
-    15d4:	de b7       	in	r29, 0x3e	; 62
-    15d6:	67 97       	sbiw	r28, 0x17	; 23
-    15d8:	0f b6       	in	r0, 0x3f	; 63
-    15da:	f8 94       	cli
-    15dc:	de bf       	out	0x3e, r29	; 62
-    15de:	0f be       	out	0x3f, r0	; 63
-    15e0:	cd bf       	out	0x3d, r28	; 61
-    15e2:	2c 01       	movw	r4, r24
-    15e4:	2d e8       	ldi	r18, 0x8D	; 141
-    15e6:	36 e0       	ldi	r19, 0x06	; 6
-    15e8:	3d 8b       	std	Y+21, r19	; 0x15
-    15ea:	2c 8b       	std	Y+20, r18	; 0x14
-    15ec:	f9 01       	movw	r30, r18
-    15ee:	20 e0       	ldi	r18, 0x00	; 0
-    15f0:	30 e0       	ldi	r19, 0x00	; 0
-    15f2:	6f ef       	ldi	r22, 0xFF	; 255
-    15f4:	70 e0       	ldi	r23, 0x00	; 0
-    15f6:	8f ef       	ldi	r24, 0xFF	; 255
-    15f8:	9f ef       	ldi	r25, 0xFF	; 255
-    15fa:	40 81       	ld	r20, Z
-    15fc:	51 81       	ldd	r21, Z+1	; 0x01
-    15fe:	46 17       	cp	r20, r22
-    1600:	57 07       	cpc	r21, r23
-    1602:	10 f4       	brcc	.+4      	; 0x1608 <bom_get_max10+0x5a>
-    1604:	ba 01       	movw	r22, r20
-    1606:	c9 01       	movw	r24, r18
-    1608:	2f 5f       	subi	r18, 0xFF	; 255
-    160a:	3f 4f       	sbci	r19, 0xFF	; 255
-    160c:	32 96       	adiw	r30, 0x02	; 2
-    160e:	20 31       	cpi	r18, 0x10	; 16
-    1610:	31 05       	cpc	r19, r1
-    1612:	99 f7       	brne	.-26     	; 0x15fa <bom_get_max10+0x4c>
-    1614:	66 39       	cpi	r22, 0x96	; 150
-    1616:	71 05       	cpc	r23, r1
-    1618:	24 f4       	brge	.+8      	; 0x1622 <bom_get_max10+0x74>
-    161a:	3f ef       	ldi	r19, 0xFF	; 255
-    161c:	8f 3f       	cpi	r24, 0xFF	; 255
-    161e:	93 07       	cpc	r25, r19
-    1620:	59 f4       	brne	.+22     	; 0x1638 <bom_get_max10+0x8a>
-    1622:	41 14       	cp	r4, r1
-    1624:	51 04       	cpc	r5, r1
-    1626:	29 f0       	breq	.+10     	; 0x1632 <bom_get_max10+0x84>
-    1628:	8f ef       	ldi	r24, 0xFF	; 255
-    162a:	9f ef       	ldi	r25, 0xFF	; 255
-    162c:	d2 01       	movw	r26, r4
-    162e:	8d 93       	st	X+, r24
-    1630:	9c 93       	st	X, r25
-    1632:	2f ef       	ldi	r18, 0xFF	; 255
-    1634:	3f ef       	ldi	r19, 0xFF	; 255
-    1636:	ea c1       	rjmp	.+980    	; 0x1a0c <bom_get_max10+0x45e>
-    1638:	e8 e1       	ldi	r30, 0x18	; 24
-    163a:	f0 e0       	ldi	r31, 0x00	; 0
-    163c:	e8 1b       	sub	r30, r24
-    163e:	f9 0b       	sbc	r31, r25
-    1640:	99 24       	eor	r9, r9
-    1642:	88 24       	eor	r8, r8
-    1644:	77 24       	eor	r7, r7
-    1646:	66 24       	eor	r6, r6
-    1648:	33 24       	eor	r3, r3
-    164a:	22 24       	eor	r2, r2
-    164c:	1a 8a       	std	Y+18, r1	; 0x12
-    164e:	1b 8a       	std	Y+19, r1	; 0x13
-    1650:	10 e0       	ldi	r17, 0x00	; 0
-    1652:	00 e0       	ldi	r16, 0x00	; 0
-    1654:	ee 24       	eor	r14, r14
-    1656:	dd 24       	eor	r13, r13
-    1658:	cc 24       	eor	r12, r12
-    165a:	19 86       	std	Y+9, r1	; 0x09
-    165c:	1a 86       	std	Y+10, r1	; 0x0a
-    165e:	ff 24       	eor	r15, r15
-    1660:	9c 01       	movw	r18, r24
-    1662:	28 50       	subi	r18, 0x08	; 8
-    1664:	30 40       	sbci	r19, 0x00	; 0
-    1666:	39 8b       	std	Y+17, r19	; 0x11
-    1668:	28 8b       	std	Y+16, r18	; 0x10
-    166a:	ac 89       	ldd	r26, Y+20	; 0x14
-    166c:	bd 89       	ldd	r27, Y+21	; 0x15
-    166e:	8d 91       	ld	r24, X+
-    1670:	9c 91       	ld	r25, X
-    1672:	2f ef       	ldi	r18, 0xFF	; 255
-    1674:	a2 2e       	mov	r10, r18
-    1676:	b1 2c       	mov	r11, r1
-    1678:	a8 1a       	sub	r10, r24
-    167a:	b9 0a       	sbc	r11, r25
-    167c:	cf 01       	movw	r24, r30
-    167e:	60 e1       	ldi	r22, 0x10	; 16
-    1680:	70 e0       	ldi	r23, 0x00	; 0
-    1682:	0e 94 13 32 	call	0x6426	; 0x6426 <__divmodhi4>
-    1686:	28 89       	ldd	r18, Y+16	; 0x10
-    1688:	39 89       	ldd	r19, Y+17	; 0x11
-    168a:	82 0f       	add	r24, r18
-    168c:	93 1f       	adc	r25, r19
-    168e:	8a 9d       	mul	r24, r10
-    1690:	90 01       	movw	r18, r0
-    1692:	8b 9d       	mul	r24, r11
-    1694:	30 0d       	add	r19, r0
-    1696:	9a 9d       	mul	r25, r10
-    1698:	30 0d       	add	r19, r0
-    169a:	11 24       	eor	r1, r1
-    169c:	c9 01       	movw	r24, r18
-    169e:	99 0f       	add	r25, r25
-    16a0:	88 0b       	sbc	r24, r24
-    16a2:	98 2f       	mov	r25, r24
-    16a4:	68 2f       	mov	r22, r24
-    16a6:	78 2f       	mov	r23, r24
-    16a8:	8f 8b       	std	Y+23, r24	; 0x17
-    16aa:	8b 87       	std	Y+11, r24	; 0x0b
-    16ac:	8c 87       	std	Y+12, r24	; 0x0c
-    16ae:	98 2f       	mov	r25, r24
-    16b0:	49 2d       	mov	r20, r9
-    16b2:	42 0f       	add	r20, r18
-    16b4:	4d 87       	std	Y+13, r20	; 0x0d
-    16b6:	51 e0       	ldi	r21, 0x01	; 1
-    16b8:	49 15       	cp	r20, r9
-    16ba:	08 f0       	brcs	.+2      	; 0x16be <bom_get_max10+0x110>
-    16bc:	50 e0       	ldi	r21, 0x00	; 0
-    16be:	28 2d       	mov	r18, r8
-    16c0:	23 0f       	add	r18, r19
-    16c2:	41 e0       	ldi	r20, 0x01	; 1
-    16c4:	28 15       	cp	r18, r8
-    16c6:	08 f0       	brcs	.+2      	; 0x16ca <bom_get_max10+0x11c>
-    16c8:	40 e0       	ldi	r20, 0x00	; 0
-    16ca:	52 0f       	add	r21, r18
-    16cc:	59 83       	std	Y+1, r21	; 0x01
-    16ce:	31 e0       	ldi	r19, 0x01	; 1
-    16d0:	52 17       	cp	r21, r18
-    16d2:	08 f0       	brcs	.+2      	; 0x16d6 <bom_get_max10+0x128>
-    16d4:	30 e0       	ldi	r19, 0x00	; 0
-    16d6:	43 2b       	or	r20, r19
-    16d8:	87 2d       	mov	r24, r7
-    16da:	86 0f       	add	r24, r22
-    16dc:	31 e0       	ldi	r19, 0x01	; 1
-    16de:	87 15       	cp	r24, r7
-    16e0:	08 f0       	brcs	.+2      	; 0x16e4 <bom_get_max10+0x136>
-    16e2:	30 e0       	ldi	r19, 0x00	; 0
-    16e4:	48 0f       	add	r20, r24
-    16e6:	4e 8b       	std	Y+22, r20	; 0x16
-    16e8:	21 e0       	ldi	r18, 0x01	; 1
-    16ea:	48 17       	cp	r20, r24
-    16ec:	08 f0       	brcs	.+2      	; 0x16f0 <bom_get_max10+0x142>
-    16ee:	20 e0       	ldi	r18, 0x00	; 0
-    16f0:	32 2b       	or	r19, r18
-    16f2:	86 2d       	mov	r24, r6
-    16f4:	87 0f       	add	r24, r23
-    16f6:	41 e0       	ldi	r20, 0x01	; 1
-    16f8:	86 15       	cp	r24, r6
-    16fa:	08 f0       	brcs	.+2      	; 0x16fe <bom_get_max10+0x150>
-    16fc:	40 e0       	ldi	r20, 0x00	; 0
-    16fe:	73 2f       	mov	r23, r19
-    1700:	78 0f       	add	r23, r24
-    1702:	21 e0       	ldi	r18, 0x01	; 1
-    1704:	78 17       	cp	r23, r24
-    1706:	08 f0       	brcs	.+2      	; 0x170a <bom_get_max10+0x15c>
-    1708:	20 e0       	ldi	r18, 0x00	; 0
-    170a:	42 2b       	or	r20, r18
-    170c:	8f 89       	ldd	r24, Y+23	; 0x17
-    170e:	83 0d       	add	r24, r3
-    1710:	31 e0       	ldi	r19, 0x01	; 1
-    1712:	83 15       	cp	r24, r3
-    1714:	08 f0       	brcs	.+2      	; 0x1718 <bom_get_max10+0x16a>
-    1716:	30 e0       	ldi	r19, 0x00	; 0
-    1718:	64 2f       	mov	r22, r20
-    171a:	68 0f       	add	r22, r24
-    171c:	21 e0       	ldi	r18, 0x01	; 1
-    171e:	68 17       	cp	r22, r24
-    1720:	08 f0       	brcs	.+2      	; 0x1724 <bom_get_max10+0x176>
-    1722:	20 e0       	ldi	r18, 0x00	; 0
-    1724:	32 2b       	or	r19, r18
-    1726:	8b 85       	ldd	r24, Y+11	; 0x0b
-    1728:	82 0d       	add	r24, r2
-    172a:	41 e0       	ldi	r20, 0x01	; 1
-    172c:	82 15       	cp	r24, r2
-    172e:	08 f0       	brcs	.+2      	; 0x1732 <bom_get_max10+0x184>
-    1730:	40 e0       	ldi	r20, 0x00	; 0
-    1732:	53 2f       	mov	r21, r19
-    1734:	58 0f       	add	r21, r24
-    1736:	21 e0       	ldi	r18, 0x01	; 1
-    1738:	58 17       	cp	r21, r24
-    173a:	08 f0       	brcs	.+2      	; 0x173e <bom_get_max10+0x190>
-    173c:	20 e0       	ldi	r18, 0x00	; 0
-    173e:	42 2b       	or	r20, r18
-    1740:	8a 89       	ldd	r24, Y+18	; 0x12
-    1742:	ac 85       	ldd	r26, Y+12	; 0x0c
-    1744:	8a 0f       	add	r24, r26
-    1746:	31 e0       	ldi	r19, 0x01	; 1
-    1748:	ba 89       	ldd	r27, Y+18	; 0x12
-    174a:	8b 17       	cp	r24, r27
-    174c:	08 f0       	brcs	.+2      	; 0x1750 <bom_get_max10+0x1a2>
-    174e:	30 e0       	ldi	r19, 0x00	; 0
-    1750:	48 0f       	add	r20, r24
-    1752:	21 e0       	ldi	r18, 0x01	; 1
-    1754:	48 17       	cp	r20, r24
-    1756:	08 f0       	brcs	.+2      	; 0x175a <bom_get_max10+0x1ac>
-    1758:	20 e0       	ldi	r18, 0x00	; 0
-    175a:	32 2b       	or	r19, r18
-    175c:	2b 89       	ldd	r18, Y+19	; 0x13
-    175e:	92 0f       	add	r25, r18
-    1760:	9d 84       	ldd	r9, Y+13	; 0x0d
-    1762:	89 80       	ldd	r8, Y+1	; 0x01
-    1764:	7e 88       	ldd	r7, Y+22	; 0x16
-    1766:	67 2e       	mov	r6, r23
-    1768:	36 2e       	mov	r3, r22
-    176a:	25 2e       	mov	r2, r21
-    176c:	4a 8b       	std	Y+18, r20	; 0x12
-    176e:	39 0f       	add	r19, r25
-    1770:	3b 8b       	std	Y+19, r19	; 0x13
-    1772:	c5 01       	movw	r24, r10
-    1774:	99 0f       	add	r25, r25
-    1776:	88 0b       	sbc	r24, r24
-    1778:	98 2f       	mov	r25, r24
-    177a:	2b 2d       	mov	r18, r11
-    177c:	98 2f       	mov	r25, r24
-    177e:	68 2f       	mov	r22, r24
-    1780:	78 2f       	mov	r23, r24
-    1782:	8e 8b       	std	Y+22, r24	; 0x16
-    1784:	8f 8b       	std	Y+23, r24	; 0x17
-    1786:	8e 87       	std	Y+14, r24	; 0x0e
-    1788:	31 2f       	mov	r19, r17
-    178a:	3a 0d       	add	r19, r10
-    178c:	3f 87       	std	Y+15, r19	; 0x0f
-    178e:	31 e0       	ldi	r19, 0x01	; 1
-    1790:	4f 85       	ldd	r20, Y+15	; 0x0f
-    1792:	41 17       	cp	r20, r17
-    1794:	08 f0       	brcs	.+2      	; 0x1798 <bom_get_max10+0x1ea>
-    1796:	30 e0       	ldi	r19, 0x00	; 0
-    1798:	20 0f       	add	r18, r16
-    179a:	41 e0       	ldi	r20, 0x01	; 1
-    179c:	20 17       	cp	r18, r16
-    179e:	08 f0       	brcs	.+2      	; 0x17a2 <bom_get_max10+0x1f4>
-    17a0:	40 e0       	ldi	r20, 0x00	; 0
-    17a2:	32 0f       	add	r19, r18
-    17a4:	3a 83       	std	Y+2, r19	; 0x02
-    17a6:	31 e0       	ldi	r19, 0x01	; 1
-    17a8:	8a 81       	ldd	r24, Y+2	; 0x02
-    17aa:	82 17       	cp	r24, r18
-    17ac:	08 f0       	brcs	.+2      	; 0x17b0 <bom_get_max10+0x202>
-    17ae:	30 e0       	ldi	r19, 0x00	; 0
-    17b0:	43 2b       	or	r20, r19
-    17b2:	8e 2d       	mov	r24, r14
-    17b4:	89 0f       	add	r24, r25
-    17b6:	51 e0       	ldi	r21, 0x01	; 1
-    17b8:	8e 15       	cp	r24, r14
-    17ba:	08 f0       	brcs	.+2      	; 0x17be <bom_get_max10+0x210>
-    17bc:	50 e0       	ldi	r21, 0x00	; 0
-    17be:	48 0f       	add	r20, r24
-    17c0:	4b 83       	std	Y+3, r20	; 0x03
-    17c2:	21 e0       	ldi	r18, 0x01	; 1
-    17c4:	48 17       	cp	r20, r24
-    17c6:	08 f0       	brcs	.+2      	; 0x17ca <bom_get_max10+0x21c>
-    17c8:	20 e0       	ldi	r18, 0x00	; 0
-    17ca:	52 2b       	or	r21, r18
-    17cc:	8d 2d       	mov	r24, r13
-    17ce:	86 0f       	add	r24, r22
-    17d0:	61 e0       	ldi	r22, 0x01	; 1
-    17d2:	8d 15       	cp	r24, r13
-    17d4:	08 f0       	brcs	.+2      	; 0x17d8 <bom_get_max10+0x22a>
-    17d6:	60 e0       	ldi	r22, 0x00	; 0
-    17d8:	58 0f       	add	r21, r24
-    17da:	5c 83       	std	Y+4, r21	; 0x04
-    17dc:	21 e0       	ldi	r18, 0x01	; 1
-    17de:	58 17       	cp	r21, r24
-    17e0:	08 f0       	brcs	.+2      	; 0x17e4 <bom_get_max10+0x236>
-    17e2:	20 e0       	ldi	r18, 0x00	; 0
-    17e4:	62 2b       	or	r22, r18
-    17e6:	8c 2d       	mov	r24, r12
-    17e8:	87 0f       	add	r24, r23
-    17ea:	71 e0       	ldi	r23, 0x01	; 1
-    17ec:	8c 15       	cp	r24, r12
-    17ee:	08 f0       	brcs	.+2      	; 0x17f2 <bom_get_max10+0x244>
-    17f0:	70 e0       	ldi	r23, 0x00	; 0
-    17f2:	68 0f       	add	r22, r24
-    17f4:	6d 83       	std	Y+5, r22	; 0x05
-    17f6:	21 e0       	ldi	r18, 0x01	; 1
-    17f8:	68 17       	cp	r22, r24
-    17fa:	08 f0       	brcs	.+2      	; 0x17fe <bom_get_max10+0x250>
-    17fc:	20 e0       	ldi	r18, 0x00	; 0
-    17fe:	72 2b       	or	r23, r18
-    1800:	89 85       	ldd	r24, Y+9	; 0x09
-    1802:	9e 89       	ldd	r25, Y+22	; 0x16
-    1804:	89 0f       	add	r24, r25
-    1806:	01 e0       	ldi	r16, 0x01	; 1
-    1808:	a9 85       	ldd	r26, Y+9	; 0x09
-    180a:	8a 17       	cp	r24, r26
-    180c:	08 f0       	brcs	.+2      	; 0x1810 <bom_get_max10+0x262>
-    180e:	00 e0       	ldi	r16, 0x00	; 0
-    1810:	78 0f       	add	r23, r24
-    1812:	7e 83       	std	Y+6, r23	; 0x06
+000015c8 <bom_get_max>:
+    15c8:	ed e7       	ldi	r30, 0x7D	; 125
+    15ca:	f6 e0       	ldi	r31, 0x06	; 6
+    15cc:	20 e0       	ldi	r18, 0x00	; 0
+    15ce:	30 e0       	ldi	r19, 0x00	; 0
+    15d0:	8f ef       	ldi	r24, 0xFF	; 255
+    15d2:	90 e0       	ldi	r25, 0x00	; 0
+    15d4:	6f ef       	ldi	r22, 0xFF	; 255
+    15d6:	7f ef       	ldi	r23, 0xFF	; 255
+    15d8:	40 81       	ld	r20, Z
+    15da:	51 81       	ldd	r21, Z+1	; 0x01
+    15dc:	48 17       	cp	r20, r24
+    15de:	59 07       	cpc	r21, r25
+    15e0:	10 f4       	brcc	.+4      	; 0x15e6 <bom_get_max+0x1e>
+    15e2:	ca 01       	movw	r24, r20
+    15e4:	b9 01       	movw	r22, r18
+    15e6:	2f 5f       	subi	r18, 0xFF	; 255
+    15e8:	3f 4f       	sbci	r19, 0xFF	; 255
+    15ea:	32 96       	adiw	r30, 0x02	; 2
+    15ec:	20 31       	cpi	r18, 0x10	; 16
+    15ee:	31 05       	cpc	r19, r1
+    15f0:	99 f7       	brne	.-26     	; 0x15d8 <bom_get_max+0x10>
+    15f2:	86 39       	cpi	r24, 0x96	; 150
+    15f4:	91 05       	cpc	r25, r1
+    15f6:	14 f0       	brlt	.+4      	; 0x15fc <bom_get_max+0x34>
+    15f8:	6f ef       	ldi	r22, 0xFF	; 255
+    15fa:	7f ef       	ldi	r23, 0xFF	; 255
+    15fc:	cb 01       	movw	r24, r22
+    15fe:	08 95       	ret
+
+00001600 <bom_get_max10>:
+    1600:	2f 92       	push	r2
+    1602:	3f 92       	push	r3
+    1604:	4f 92       	push	r4
+    1606:	5f 92       	push	r5
+    1608:	6f 92       	push	r6
+    160a:	7f 92       	push	r7
+    160c:	8f 92       	push	r8
+    160e:	9f 92       	push	r9
+    1610:	af 92       	push	r10
+    1612:	bf 92       	push	r11
+    1614:	cf 92       	push	r12
+    1616:	df 92       	push	r13
+    1618:	ef 92       	push	r14
+    161a:	ff 92       	push	r15
+    161c:	0f 93       	push	r16
+    161e:	1f 93       	push	r17
+    1620:	df 93       	push	r29
+    1622:	cf 93       	push	r28
+    1624:	cd b7       	in	r28, 0x3d	; 61
+    1626:	de b7       	in	r29, 0x3e	; 62
+    1628:	67 97       	sbiw	r28, 0x17	; 23
+    162a:	0f b6       	in	r0, 0x3f	; 63
+    162c:	f8 94       	cli
+    162e:	de bf       	out	0x3e, r29	; 62
+    1630:	0f be       	out	0x3f, r0	; 63
+    1632:	cd bf       	out	0x3d, r28	; 61
+    1634:	2c 01       	movw	r4, r24
+    1636:	2d e7       	ldi	r18, 0x7D	; 125
+    1638:	36 e0       	ldi	r19, 0x06	; 6
+    163a:	3d 8b       	std	Y+21, r19	; 0x15
+    163c:	2c 8b       	std	Y+20, r18	; 0x14
+    163e:	f9 01       	movw	r30, r18
+    1640:	20 e0       	ldi	r18, 0x00	; 0
+    1642:	30 e0       	ldi	r19, 0x00	; 0
+    1644:	6f ef       	ldi	r22, 0xFF	; 255
+    1646:	70 e0       	ldi	r23, 0x00	; 0
+    1648:	8f ef       	ldi	r24, 0xFF	; 255
+    164a:	9f ef       	ldi	r25, 0xFF	; 255
+    164c:	40 81       	ld	r20, Z
+    164e:	51 81       	ldd	r21, Z+1	; 0x01
+    1650:	46 17       	cp	r20, r22
+    1652:	57 07       	cpc	r21, r23
+    1654:	10 f4       	brcc	.+4      	; 0x165a <bom_get_max10+0x5a>
+    1656:	ba 01       	movw	r22, r20
+    1658:	c9 01       	movw	r24, r18
+    165a:	2f 5f       	subi	r18, 0xFF	; 255
+    165c:	3f 4f       	sbci	r19, 0xFF	; 255
+    165e:	32 96       	adiw	r30, 0x02	; 2
+    1660:	20 31       	cpi	r18, 0x10	; 16
+    1662:	31 05       	cpc	r19, r1
+    1664:	99 f7       	brne	.-26     	; 0x164c <bom_get_max10+0x4c>
+    1666:	66 39       	cpi	r22, 0x96	; 150
+    1668:	71 05       	cpc	r23, r1
+    166a:	24 f4       	brge	.+8      	; 0x1674 <bom_get_max10+0x74>
+    166c:	3f ef       	ldi	r19, 0xFF	; 255
+    166e:	8f 3f       	cpi	r24, 0xFF	; 255
+    1670:	93 07       	cpc	r25, r19
+    1672:	59 f4       	brne	.+22     	; 0x168a <bom_get_max10+0x8a>
+    1674:	41 14       	cp	r4, r1
+    1676:	51 04       	cpc	r5, r1
+    1678:	29 f0       	breq	.+10     	; 0x1684 <bom_get_max10+0x84>
+    167a:	8f ef       	ldi	r24, 0xFF	; 255
+    167c:	9f ef       	ldi	r25, 0xFF	; 255
+    167e:	d2 01       	movw	r26, r4
+    1680:	8d 93       	st	X+, r24
+    1682:	9c 93       	st	X, r25
+    1684:	2f ef       	ldi	r18, 0xFF	; 255
+    1686:	3f ef       	ldi	r19, 0xFF	; 255
+    1688:	ea c1       	rjmp	.+980    	; 0x1a5e <bom_get_max10+0x45e>
+    168a:	e8 e1       	ldi	r30, 0x18	; 24
+    168c:	f0 e0       	ldi	r31, 0x00	; 0
+    168e:	e8 1b       	sub	r30, r24
+    1690:	f9 0b       	sbc	r31, r25
+    1692:	99 24       	eor	r9, r9
+    1694:	88 24       	eor	r8, r8
+    1696:	77 24       	eor	r7, r7
+    1698:	66 24       	eor	r6, r6
+    169a:	33 24       	eor	r3, r3
+    169c:	22 24       	eor	r2, r2
+    169e:	1a 8a       	std	Y+18, r1	; 0x12
+    16a0:	1b 8a       	std	Y+19, r1	; 0x13
+    16a2:	10 e0       	ldi	r17, 0x00	; 0
+    16a4:	00 e0       	ldi	r16, 0x00	; 0
+    16a6:	ee 24       	eor	r14, r14
+    16a8:	dd 24       	eor	r13, r13
+    16aa:	cc 24       	eor	r12, r12
+    16ac:	19 86       	std	Y+9, r1	; 0x09
+    16ae:	1a 86       	std	Y+10, r1	; 0x0a
+    16b0:	ff 24       	eor	r15, r15
+    16b2:	9c 01       	movw	r18, r24
+    16b4:	28 50       	subi	r18, 0x08	; 8
+    16b6:	30 40       	sbci	r19, 0x00	; 0
+    16b8:	39 8b       	std	Y+17, r19	; 0x11
+    16ba:	28 8b       	std	Y+16, r18	; 0x10
+    16bc:	ac 89       	ldd	r26, Y+20	; 0x14
+    16be:	bd 89       	ldd	r27, Y+21	; 0x15
+    16c0:	8d 91       	ld	r24, X+
+    16c2:	9c 91       	ld	r25, X
+    16c4:	2f ef       	ldi	r18, 0xFF	; 255
+    16c6:	a2 2e       	mov	r10, r18
+    16c8:	b1 2c       	mov	r11, r1
+    16ca:	a8 1a       	sub	r10, r24
+    16cc:	b9 0a       	sbc	r11, r25
+    16ce:	cf 01       	movw	r24, r30
+    16d0:	60 e1       	ldi	r22, 0x10	; 16
+    16d2:	70 e0       	ldi	r23, 0x00	; 0
+    16d4:	0e 94 aa 2f 	call	0x5f54	; 0x5f54 <__divmodhi4>
+    16d8:	28 89       	ldd	r18, Y+16	; 0x10
+    16da:	39 89       	ldd	r19, Y+17	; 0x11
+    16dc:	82 0f       	add	r24, r18
+    16de:	93 1f       	adc	r25, r19
+    16e0:	8a 9d       	mul	r24, r10
+    16e2:	90 01       	movw	r18, r0
+    16e4:	8b 9d       	mul	r24, r11
+    16e6:	30 0d       	add	r19, r0
+    16e8:	9a 9d       	mul	r25, r10
+    16ea:	30 0d       	add	r19, r0
+    16ec:	11 24       	eor	r1, r1
+    16ee:	c9 01       	movw	r24, r18
+    16f0:	99 0f       	add	r25, r25
+    16f2:	88 0b       	sbc	r24, r24
+    16f4:	98 2f       	mov	r25, r24
+    16f6:	68 2f       	mov	r22, r24
+    16f8:	78 2f       	mov	r23, r24
+    16fa:	8f 8b       	std	Y+23, r24	; 0x17
+    16fc:	8b 87       	std	Y+11, r24	; 0x0b
+    16fe:	8c 87       	std	Y+12, r24	; 0x0c
+    1700:	98 2f       	mov	r25, r24
+    1702:	49 2d       	mov	r20, r9
+    1704:	42 0f       	add	r20, r18
+    1706:	4d 87       	std	Y+13, r20	; 0x0d
+    1708:	51 e0       	ldi	r21, 0x01	; 1
+    170a:	49 15       	cp	r20, r9
+    170c:	08 f0       	brcs	.+2      	; 0x1710 <bom_get_max10+0x110>
+    170e:	50 e0       	ldi	r21, 0x00	; 0
+    1710:	28 2d       	mov	r18, r8
+    1712:	23 0f       	add	r18, r19
+    1714:	41 e0       	ldi	r20, 0x01	; 1
+    1716:	28 15       	cp	r18, r8
+    1718:	08 f0       	brcs	.+2      	; 0x171c <bom_get_max10+0x11c>
+    171a:	40 e0       	ldi	r20, 0x00	; 0
+    171c:	52 0f       	add	r21, r18
+    171e:	59 83       	std	Y+1, r21	; 0x01
+    1720:	31 e0       	ldi	r19, 0x01	; 1
+    1722:	52 17       	cp	r21, r18
+    1724:	08 f0       	brcs	.+2      	; 0x1728 <bom_get_max10+0x128>
+    1726:	30 e0       	ldi	r19, 0x00	; 0
+    1728:	43 2b       	or	r20, r19
+    172a:	87 2d       	mov	r24, r7
+    172c:	86 0f       	add	r24, r22
+    172e:	31 e0       	ldi	r19, 0x01	; 1
+    1730:	87 15       	cp	r24, r7
+    1732:	08 f0       	brcs	.+2      	; 0x1736 <bom_get_max10+0x136>
+    1734:	30 e0       	ldi	r19, 0x00	; 0
+    1736:	48 0f       	add	r20, r24
+    1738:	4e 8b       	std	Y+22, r20	; 0x16
+    173a:	21 e0       	ldi	r18, 0x01	; 1
+    173c:	48 17       	cp	r20, r24
+    173e:	08 f0       	brcs	.+2      	; 0x1742 <bom_get_max10+0x142>
+    1740:	20 e0       	ldi	r18, 0x00	; 0
+    1742:	32 2b       	or	r19, r18
+    1744:	86 2d       	mov	r24, r6
+    1746:	87 0f       	add	r24, r23
+    1748:	41 e0       	ldi	r20, 0x01	; 1
+    174a:	86 15       	cp	r24, r6
+    174c:	08 f0       	brcs	.+2      	; 0x1750 <bom_get_max10+0x150>
+    174e:	40 e0       	ldi	r20, 0x00	; 0
+    1750:	73 2f       	mov	r23, r19
+    1752:	78 0f       	add	r23, r24
+    1754:	21 e0       	ldi	r18, 0x01	; 1
+    1756:	78 17       	cp	r23, r24
+    1758:	08 f0       	brcs	.+2      	; 0x175c <bom_get_max10+0x15c>
+    175a:	20 e0       	ldi	r18, 0x00	; 0
+    175c:	42 2b       	or	r20, r18
+    175e:	8f 89       	ldd	r24, Y+23	; 0x17
+    1760:	83 0d       	add	r24, r3
+    1762:	31 e0       	ldi	r19, 0x01	; 1
+    1764:	83 15       	cp	r24, r3
+    1766:	08 f0       	brcs	.+2      	; 0x176a <bom_get_max10+0x16a>
+    1768:	30 e0       	ldi	r19, 0x00	; 0
+    176a:	64 2f       	mov	r22, r20
+    176c:	68 0f       	add	r22, r24
+    176e:	21 e0       	ldi	r18, 0x01	; 1
+    1770:	68 17       	cp	r22, r24
+    1772:	08 f0       	brcs	.+2      	; 0x1776 <bom_get_max10+0x176>
+    1774:	20 e0       	ldi	r18, 0x00	; 0
+    1776:	32 2b       	or	r19, r18
+    1778:	8b 85       	ldd	r24, Y+11	; 0x0b
+    177a:	82 0d       	add	r24, r2
+    177c:	41 e0       	ldi	r20, 0x01	; 1
+    177e:	82 15       	cp	r24, r2
+    1780:	08 f0       	brcs	.+2      	; 0x1784 <bom_get_max10+0x184>
+    1782:	40 e0       	ldi	r20, 0x00	; 0
+    1784:	53 2f       	mov	r21, r19
+    1786:	58 0f       	add	r21, r24
+    1788:	21 e0       	ldi	r18, 0x01	; 1
+    178a:	58 17       	cp	r21, r24
+    178c:	08 f0       	brcs	.+2      	; 0x1790 <bom_get_max10+0x190>
+    178e:	20 e0       	ldi	r18, 0x00	; 0
+    1790:	42 2b       	or	r20, r18
+    1792:	8a 89       	ldd	r24, Y+18	; 0x12
+    1794:	ac 85       	ldd	r26, Y+12	; 0x0c
+    1796:	8a 0f       	add	r24, r26
+    1798:	31 e0       	ldi	r19, 0x01	; 1
+    179a:	ba 89       	ldd	r27, Y+18	; 0x12
+    179c:	8b 17       	cp	r24, r27
+    179e:	08 f0       	brcs	.+2      	; 0x17a2 <bom_get_max10+0x1a2>
+    17a0:	30 e0       	ldi	r19, 0x00	; 0
+    17a2:	48 0f       	add	r20, r24
+    17a4:	21 e0       	ldi	r18, 0x01	; 1
+    17a6:	48 17       	cp	r20, r24
+    17a8:	08 f0       	brcs	.+2      	; 0x17ac <bom_get_max10+0x1ac>
+    17aa:	20 e0       	ldi	r18, 0x00	; 0
+    17ac:	32 2b       	or	r19, r18
+    17ae:	2b 89       	ldd	r18, Y+19	; 0x13
+    17b0:	92 0f       	add	r25, r18
+    17b2:	9d 84       	ldd	r9, Y+13	; 0x0d
+    17b4:	89 80       	ldd	r8, Y+1	; 0x01
+    17b6:	7e 88       	ldd	r7, Y+22	; 0x16
+    17b8:	67 2e       	mov	r6, r23
+    17ba:	36 2e       	mov	r3, r22
+    17bc:	25 2e       	mov	r2, r21
+    17be:	4a 8b       	std	Y+18, r20	; 0x12
+    17c0:	39 0f       	add	r19, r25
+    17c2:	3b 8b       	std	Y+19, r19	; 0x13
+    17c4:	c5 01       	movw	r24, r10
+    17c6:	99 0f       	add	r25, r25
+    17c8:	88 0b       	sbc	r24, r24
+    17ca:	98 2f       	mov	r25, r24
+    17cc:	2b 2d       	mov	r18, r11
+    17ce:	98 2f       	mov	r25, r24
+    17d0:	68 2f       	mov	r22, r24
+    17d2:	78 2f       	mov	r23, r24
+    17d4:	8e 8b       	std	Y+22, r24	; 0x16
+    17d6:	8f 8b       	std	Y+23, r24	; 0x17
+    17d8:	8e 87       	std	Y+14, r24	; 0x0e
+    17da:	31 2f       	mov	r19, r17
+    17dc:	3a 0d       	add	r19, r10
+    17de:	3f 87       	std	Y+15, r19	; 0x0f
+    17e0:	31 e0       	ldi	r19, 0x01	; 1
+    17e2:	4f 85       	ldd	r20, Y+15	; 0x0f
+    17e4:	41 17       	cp	r20, r17
+    17e6:	08 f0       	brcs	.+2      	; 0x17ea <bom_get_max10+0x1ea>
+    17e8:	30 e0       	ldi	r19, 0x00	; 0
+    17ea:	20 0f       	add	r18, r16
+    17ec:	41 e0       	ldi	r20, 0x01	; 1
+    17ee:	20 17       	cp	r18, r16
+    17f0:	08 f0       	brcs	.+2      	; 0x17f4 <bom_get_max10+0x1f4>
+    17f2:	40 e0       	ldi	r20, 0x00	; 0
+    17f4:	32 0f       	add	r19, r18
+    17f6:	3a 83       	std	Y+2, r19	; 0x02
+    17f8:	31 e0       	ldi	r19, 0x01	; 1
+    17fa:	8a 81       	ldd	r24, Y+2	; 0x02
+    17fc:	82 17       	cp	r24, r18
+    17fe:	08 f0       	brcs	.+2      	; 0x1802 <bom_get_max10+0x202>
+    1800:	30 e0       	ldi	r19, 0x00	; 0
+    1802:	43 2b       	or	r20, r19
+    1804:	8e 2d       	mov	r24, r14
+    1806:	89 0f       	add	r24, r25
+    1808:	51 e0       	ldi	r21, 0x01	; 1
+    180a:	8e 15       	cp	r24, r14
+    180c:	08 f0       	brcs	.+2      	; 0x1810 <bom_get_max10+0x210>
+    180e:	50 e0       	ldi	r21, 0x00	; 0
+    1810:	48 0f       	add	r20, r24
+    1812:	4b 83       	std	Y+3, r20	; 0x03
     1814:	21 e0       	ldi	r18, 0x01	; 1
-    1816:	78 17       	cp	r23, r24
-    1818:	08 f0       	brcs	.+2      	; 0x181c <bom_get_max10+0x26e>
+    1816:	48 17       	cp	r20, r24
+    1818:	08 f0       	brcs	.+2      	; 0x181c <bom_get_max10+0x21c>
     181a:	20 e0       	ldi	r18, 0x00	; 0
-    181c:	02 2b       	or	r16, r18
-    181e:	8a 85       	ldd	r24, Y+10	; 0x0a
-    1820:	bf 89       	ldd	r27, Y+23	; 0x17
-    1822:	8b 0f       	add	r24, r27
-    1824:	21 e0       	ldi	r18, 0x01	; 1
-    1826:	3a 85       	ldd	r19, Y+10	; 0x0a
-    1828:	83 17       	cp	r24, r19
-    182a:	08 f0       	brcs	.+2      	; 0x182e <bom_get_max10+0x280>
-    182c:	20 e0       	ldi	r18, 0x00	; 0
-    182e:	08 0f       	add	r16, r24
-    1830:	0f 83       	std	Y+7, r16	; 0x07
-    1832:	11 e0       	ldi	r17, 0x01	; 1
-    1834:	08 17       	cp	r16, r24
-    1836:	08 f0       	brcs	.+2      	; 0x183a <bom_get_max10+0x28c>
-    1838:	10 e0       	ldi	r17, 0x00	; 0
-    183a:	21 2b       	or	r18, r17
-    183c:	4e 85       	ldd	r20, Y+14	; 0x0e
-    183e:	f4 0e       	add	r15, r20
-    1840:	2f 0d       	add	r18, r15
-    1842:	28 87       	std	Y+8, r18	; 0x08
-    1844:	1f 85       	ldd	r17, Y+15	; 0x0f
-    1846:	0a 81       	ldd	r16, Y+2	; 0x02
-    1848:	eb 80       	ldd	r14, Y+3	; 0x03
-    184a:	dc 80       	ldd	r13, Y+4	; 0x04
-    184c:	cd 80       	ldd	r12, Y+5	; 0x05
-    184e:	8e 81       	ldd	r24, Y+6	; 0x06
-    1850:	89 87       	std	Y+9, r24	; 0x09
-    1852:	9f 81       	ldd	r25, Y+7	; 0x07
-    1854:	9a 87       	std	Y+10, r25	; 0x0a
-    1856:	f2 2e       	mov	r15, r18
-    1858:	31 96       	adiw	r30, 0x01	; 1
-    185a:	ac 89       	ldd	r26, Y+20	; 0x14
-    185c:	bd 89       	ldd	r27, Y+21	; 0x15
-    185e:	12 96       	adiw	r26, 0x02	; 2
-    1860:	bd 8b       	std	Y+21, r27	; 0x15
-    1862:	ac 8b       	std	Y+20, r26	; 0x14
-    1864:	ad 5a       	subi	r26, 0xAD	; 173
-    1866:	b6 40       	sbci	r27, 0x06	; 6
-    1868:	09 f0       	breq	.+2      	; 0x186c <bom_get_max10+0x2be>
-    186a:	ff ce       	rjmp	.-514    	; 0x166a <bom_get_max10+0xbc>
-    186c:	41 14       	cp	r4, r1
-    186e:	51 04       	cpc	r5, r1
-    1870:	01 f1       	breq	.+64     	; 0x18b2 <bom_get_max10+0x304>
-    1872:	21 2f       	mov	r18, r17
-    1874:	30 2f       	mov	r19, r16
-    1876:	4e 2d       	mov	r20, r14
-    1878:	5d 2d       	mov	r21, r13
-    187a:	6c 2d       	mov	r22, r12
-    187c:	78 2f       	mov	r23, r24
-    187e:	89 2f       	mov	r24, r25
-    1880:	9f 2d       	mov	r25, r15
-    1882:	e0 ed       	ldi	r30, 0xD0	; 208
-    1884:	ae 2e       	mov	r10, r30
-    1886:	bb 24       	eor	r11, r11
-    1888:	ba 94       	dec	r11
-    188a:	cc 24       	eor	r12, r12
-    188c:	ca 94       	dec	r12
-    188e:	dd 24       	eor	r13, r13
-    1890:	da 94       	dec	r13
-    1892:	ee 24       	eor	r14, r14
-    1894:	ea 94       	dec	r14
-    1896:	ff 24       	eor	r15, r15
-    1898:	fa 94       	dec	r15
-    189a:	0f ef       	ldi	r16, 0xFF	; 255
-    189c:	1f ef       	ldi	r17, 0xFF	; 255
-    189e:	0e 94 b2 1e 	call	0x3d64	; 0x3d64 <__divdi3>
-    18a2:	59 01       	movw	r10, r18
-    18a4:	82 e3       	ldi	r24, 0x32	; 50
-    18a6:	90 e0       	ldi	r25, 0x00	; 0
-    18a8:	a8 0e       	add	r10, r24
-    18aa:	b9 1e       	adc	r11, r25
-    18ac:	d2 01       	movw	r26, r4
-    18ae:	ad 92       	st	X+, r10
-    18b0:	bc 92       	st	X, r11
-    18b2:	29 2d       	mov	r18, r9
-    18b4:	38 2d       	mov	r19, r8
-    18b6:	47 2d       	mov	r20, r7
-    18b8:	56 2d       	mov	r21, r6
-    18ba:	63 2d       	mov	r22, r3
-    18bc:	72 2d       	mov	r23, r2
-    18be:	8a 89       	ldd	r24, Y+18	; 0x12
-    18c0:	9b 89       	ldd	r25, Y+19	; 0x13
-    18c2:	01 e0       	ldi	r16, 0x01	; 1
-    18c4:	0e 94 33 1e 	call	0x3c66	; 0x3c66 <__ashldi3>
-    18c8:	12 2f       	mov	r17, r18
-    18ca:	f3 2e       	mov	r15, r19
-    18cc:	e4 2e       	mov	r14, r20
-    18ce:	d5 2e       	mov	r13, r21
-    18d0:	c6 2e       	mov	r12, r22
-    18d2:	b7 2e       	mov	r11, r23
-    18d4:	a8 2e       	mov	r10, r24
-    18d6:	89 2e       	mov	r8, r25
-    18d8:	02 e0       	ldi	r16, 0x02	; 2
-    18da:	0e 94 33 1e 	call	0x3c66	; 0x3c66 <__ashldi3>
-    18de:	b9 2f       	mov	r27, r25
-    18e0:	21 0f       	add	r18, r17
-    18e2:	e1 e0       	ldi	r30, 0x01	; 1
-    18e4:	21 17       	cp	r18, r17
-    18e6:	08 f0       	brcs	.+2      	; 0x18ea <bom_get_max10+0x33c>
-    18e8:	e0 e0       	ldi	r30, 0x00	; 0
-    18ea:	3f 0d       	add	r19, r15
-    18ec:	f1 e0       	ldi	r31, 0x01	; 1
-    18ee:	3f 15       	cp	r19, r15
-    18f0:	08 f0       	brcs	.+2      	; 0x18f4 <bom_get_max10+0x346>
-    18f2:	f0 e0       	ldi	r31, 0x00	; 0
-    18f4:	9e 2e       	mov	r9, r30
-    18f6:	93 0e       	add	r9, r19
-    18f8:	e1 e0       	ldi	r30, 0x01	; 1
-    18fa:	93 16       	cp	r9, r19
-    18fc:	08 f0       	brcs	.+2      	; 0x1900 <bom_get_max10+0x352>
-    18fe:	e0 e0       	ldi	r30, 0x00	; 0
-    1900:	fe 2b       	or	r31, r30
-    1902:	4e 0d       	add	r20, r14
-    1904:	a1 e0       	ldi	r26, 0x01	; 1
-    1906:	4e 15       	cp	r20, r14
-    1908:	08 f0       	brcs	.+2      	; 0x190c <bom_get_max10+0x35e>
-    190a:	a0 e0       	ldi	r26, 0x00	; 0
-    190c:	ff 2e       	mov	r15, r31
-    190e:	f4 0e       	add	r15, r20
-    1910:	e1 e0       	ldi	r30, 0x01	; 1
-    1912:	f4 16       	cp	r15, r20
-    1914:	08 f0       	brcs	.+2      	; 0x1918 <bom_get_max10+0x36a>
-    1916:	e0 e0       	ldi	r30, 0x00	; 0
-    1918:	ae 2b       	or	r26, r30
-    191a:	5d 0d       	add	r21, r13
-    191c:	f1 e0       	ldi	r31, 0x01	; 1
-    191e:	5d 15       	cp	r21, r13
-    1920:	08 f0       	brcs	.+2      	; 0x1924 <bom_get_max10+0x376>
-    1922:	f0 e0       	ldi	r31, 0x00	; 0
-    1924:	0a 2f       	mov	r16, r26
-    1926:	05 0f       	add	r16, r21
-    1928:	e1 e0       	ldi	r30, 0x01	; 1
-    192a:	05 17       	cp	r16, r21
-    192c:	08 f0       	brcs	.+2      	; 0x1930 <bom_get_max10+0x382>
-    192e:	e0 e0       	ldi	r30, 0x00	; 0
-    1930:	fe 2b       	or	r31, r30
-    1932:	6c 0d       	add	r22, r12
-    1934:	a1 e0       	ldi	r26, 0x01	; 1
-    1936:	6c 15       	cp	r22, r12
-    1938:	08 f0       	brcs	.+2      	; 0x193c <bom_get_max10+0x38e>
-    193a:	a0 e0       	ldi	r26, 0x00	; 0
-    193c:	1f 2f       	mov	r17, r31
-    193e:	16 0f       	add	r17, r22
-    1940:	e1 e0       	ldi	r30, 0x01	; 1
-    1942:	16 17       	cp	r17, r22
-    1944:	08 f0       	brcs	.+2      	; 0x1948 <bom_get_max10+0x39a>
-    1946:	e0 e0       	ldi	r30, 0x00	; 0
-    1948:	ae 2b       	or	r26, r30
-    194a:	7b 0d       	add	r23, r11
-    194c:	f1 e0       	ldi	r31, 0x01	; 1
-    194e:	7b 15       	cp	r23, r11
-    1950:	08 f0       	brcs	.+2      	; 0x1954 <bom_get_max10+0x3a6>
-    1952:	f0 e0       	ldi	r31, 0x00	; 0
-    1954:	a7 0f       	add	r26, r23
-    1956:	e1 e0       	ldi	r30, 0x01	; 1
-    1958:	a7 17       	cp	r26, r23
-    195a:	08 f0       	brcs	.+2      	; 0x195e <bom_get_max10+0x3b0>
-    195c:	e0 e0       	ldi	r30, 0x00	; 0
-    195e:	fe 2b       	or	r31, r30
-    1960:	8a 0d       	add	r24, r10
-    1962:	91 e0       	ldi	r25, 0x01	; 1
-    1964:	8a 15       	cp	r24, r10
-    1966:	08 f0       	brcs	.+2      	; 0x196a <bom_get_max10+0x3bc>
-    1968:	90 e0       	ldi	r25, 0x00	; 0
-    196a:	f8 0f       	add	r31, r24
-    196c:	e1 e0       	ldi	r30, 0x01	; 1
-    196e:	f8 17       	cp	r31, r24
-    1970:	08 f0       	brcs	.+2      	; 0x1974 <bom_get_max10+0x3c6>
-    1972:	e0 e0       	ldi	r30, 0x00	; 0
-    1974:	9e 2b       	or	r25, r30
-    1976:	b8 0d       	add	r27, r8
-    1978:	39 2d       	mov	r19, r9
-    197a:	4f 2d       	mov	r20, r15
-    197c:	50 2f       	mov	r21, r16
-    197e:	61 2f       	mov	r22, r17
-    1980:	7a 2f       	mov	r23, r26
-    1982:	8f 2f       	mov	r24, r31
-    1984:	9b 0f       	add	r25, r27
-    1986:	af 84       	ldd	r10, Y+15	; 0x0f
-    1988:	ba 80       	ldd	r11, Y+2	; 0x02
-    198a:	cb 80       	ldd	r12, Y+3	; 0x03
-    198c:	dc 80       	ldd	r13, Y+4	; 0x04
-    198e:	ed 80       	ldd	r14, Y+5	; 0x05
-    1990:	fe 80       	ldd	r15, Y+6	; 0x06
-    1992:	0f 81       	ldd	r16, Y+7	; 0x07
-    1994:	18 85       	ldd	r17, Y+8	; 0x08
-    1996:	0e 94 b2 1e 	call	0x3d64	; 0x3d64 <__divdi3>
-    199a:	e3 2f       	mov	r30, r19
-    199c:	f4 2f       	mov	r31, r20
-    199e:	a5 2f       	mov	r26, r21
-    19a0:	b6 2f       	mov	r27, r22
-    19a2:	17 2f       	mov	r17, r23
-    19a4:	08 2f       	mov	r16, r24
-    19a6:	e9 2e       	mov	r14, r25
-    19a8:	80 ea       	ldi	r24, 0xA0	; 160
-    19aa:	f8 2e       	mov	r15, r24
-    19ac:	f2 0e       	add	r15, r18
-    19ae:	31 e0       	ldi	r19, 0x01	; 1
-    19b0:	f2 16       	cp	r15, r18
-    19b2:	08 f0       	brcs	.+2      	; 0x19b6 <bom_get_max10+0x408>
-    19b4:	30 e0       	ldi	r19, 0x00	; 0
-    19b6:	3e 0f       	add	r19, r30
-    19b8:	41 e0       	ldi	r20, 0x01	; 1
-    19ba:	3e 17       	cp	r19, r30
-    19bc:	08 f0       	brcs	.+2      	; 0x19c0 <bom_get_max10+0x412>
-    19be:	40 e0       	ldi	r20, 0x00	; 0
-    19c0:	4f 0f       	add	r20, r31
-    19c2:	51 e0       	ldi	r21, 0x01	; 1
-    19c4:	4f 17       	cp	r20, r31
-    19c6:	08 f0       	brcs	.+2      	; 0x19ca <bom_get_max10+0x41c>
-    19c8:	50 e0       	ldi	r21, 0x00	; 0
-    19ca:	5a 0f       	add	r21, r26
-    19cc:	61 e0       	ldi	r22, 0x01	; 1
-    19ce:	5a 17       	cp	r21, r26
-    19d0:	08 f0       	brcs	.+2      	; 0x19d4 <bom_get_max10+0x426>
-    19d2:	60 e0       	ldi	r22, 0x00	; 0
-    19d4:	6b 0f       	add	r22, r27
-    19d6:	71 e0       	ldi	r23, 0x01	; 1
-    19d8:	6b 17       	cp	r22, r27
-    19da:	08 f0       	brcs	.+2      	; 0x19de <bom_get_max10+0x430>
-    19dc:	70 e0       	ldi	r23, 0x00	; 0
-    19de:	71 0f       	add	r23, r17
-    19e0:	81 e0       	ldi	r24, 0x01	; 1
-    19e2:	71 17       	cp	r23, r17
-    19e4:	08 f0       	brcs	.+2      	; 0x19e8 <bom_get_max10+0x43a>
-    19e6:	80 e0       	ldi	r24, 0x00	; 0
-    19e8:	80 0f       	add	r24, r16
-    19ea:	91 e0       	ldi	r25, 0x01	; 1
-    19ec:	80 17       	cp	r24, r16
-    19ee:	08 f0       	brcs	.+2      	; 0x19f2 <bom_get_max10+0x444>
-    19f0:	90 e0       	ldi	r25, 0x00	; 0
-    19f2:	2f 2d       	mov	r18, r15
-    19f4:	9e 0d       	add	r25, r14
-    19f6:	e0 ea       	ldi	r30, 0xA0	; 160
-    19f8:	ae 2e       	mov	r10, r30
-    19fa:	bb 24       	eor	r11, r11
-    19fc:	cc 24       	eor	r12, r12
-    19fe:	dd 24       	eor	r13, r13
-    1a00:	ee 24       	eor	r14, r14
-    1a02:	ff 24       	eor	r15, r15
-    1a04:	00 e0       	ldi	r16, 0x00	; 0
-    1a06:	10 e0       	ldi	r17, 0x00	; 0
-    1a08:	0e 94 da 26 	call	0x4db4	; 0x4db4 <__moddi3>
-    1a0c:	c9 01       	movw	r24, r18
-    1a0e:	67 96       	adiw	r28, 0x17	; 23
-    1a10:	0f b6       	in	r0, 0x3f	; 63
-    1a12:	f8 94       	cli
-    1a14:	de bf       	out	0x3e, r29	; 62
-    1a16:	0f be       	out	0x3f, r0	; 63
-    1a18:	cd bf       	out	0x3d, r28	; 61
-    1a1a:	cf 91       	pop	r28
-    1a1c:	df 91       	pop	r29
-    1a1e:	1f 91       	pop	r17
-    1a20:	0f 91       	pop	r16
-    1a22:	ff 90       	pop	r15
-    1a24:	ef 90       	pop	r14
-    1a26:	df 90       	pop	r13
-    1a28:	cf 90       	pop	r12
-    1a2a:	bf 90       	pop	r11
-    1a2c:	af 90       	pop	r10
-    1a2e:	9f 90       	pop	r9
-    1a30:	8f 90       	pop	r8
-    1a32:	7f 90       	pop	r7
-    1a34:	6f 90       	pop	r6
-    1a36:	5f 90       	pop	r5
-    1a38:	4f 90       	pop	r4
-    1a3a:	3f 90       	pop	r3
-    1a3c:	2f 90       	pop	r2
-    1a3e:	08 95       	ret
+    181c:	52 2b       	or	r21, r18
+    181e:	8d 2d       	mov	r24, r13
+    1820:	86 0f       	add	r24, r22
+    1822:	61 e0       	ldi	r22, 0x01	; 1
+    1824:	8d 15       	cp	r24, r13
+    1826:	08 f0       	brcs	.+2      	; 0x182a <bom_get_max10+0x22a>
+    1828:	60 e0       	ldi	r22, 0x00	; 0
+    182a:	58 0f       	add	r21, r24
+    182c:	5c 83       	std	Y+4, r21	; 0x04
+    182e:	21 e0       	ldi	r18, 0x01	; 1
+    1830:	58 17       	cp	r21, r24
+    1832:	08 f0       	brcs	.+2      	; 0x1836 <bom_get_max10+0x236>
+    1834:	20 e0       	ldi	r18, 0x00	; 0
+    1836:	62 2b       	or	r22, r18
+    1838:	8c 2d       	mov	r24, r12
+    183a:	87 0f       	add	r24, r23
+    183c:	71 e0       	ldi	r23, 0x01	; 1
+    183e:	8c 15       	cp	r24, r12
+    1840:	08 f0       	brcs	.+2      	; 0x1844 <bom_get_max10+0x244>
+    1842:	70 e0       	ldi	r23, 0x00	; 0
+    1844:	68 0f       	add	r22, r24
+    1846:	6d 83       	std	Y+5, r22	; 0x05
+    1848:	21 e0       	ldi	r18, 0x01	; 1
+    184a:	68 17       	cp	r22, r24
+    184c:	08 f0       	brcs	.+2      	; 0x1850 <bom_get_max10+0x250>
+    184e:	20 e0       	ldi	r18, 0x00	; 0
+    1850:	72 2b       	or	r23, r18
+    1852:	89 85       	ldd	r24, Y+9	; 0x09
+    1854:	9e 89       	ldd	r25, Y+22	; 0x16
+    1856:	89 0f       	add	r24, r25
+    1858:	01 e0       	ldi	r16, 0x01	; 1
+    185a:	a9 85       	ldd	r26, Y+9	; 0x09
+    185c:	8a 17       	cp	r24, r26
+    185e:	08 f0       	brcs	.+2      	; 0x1862 <bom_get_max10+0x262>
+    1860:	00 e0       	ldi	r16, 0x00	; 0
+    1862:	78 0f       	add	r23, r24
+    1864:	7e 83       	std	Y+6, r23	; 0x06
+    1866:	21 e0       	ldi	r18, 0x01	; 1
+    1868:	78 17       	cp	r23, r24
+    186a:	08 f0       	brcs	.+2      	; 0x186e <bom_get_max10+0x26e>
+    186c:	20 e0       	ldi	r18, 0x00	; 0
+    186e:	02 2b       	or	r16, r18
+    1870:	8a 85       	ldd	r24, Y+10	; 0x0a
+    1872:	bf 89       	ldd	r27, Y+23	; 0x17
+    1874:	8b 0f       	add	r24, r27
+    1876:	21 e0       	ldi	r18, 0x01	; 1
+    1878:	3a 85       	ldd	r19, Y+10	; 0x0a
+    187a:	83 17       	cp	r24, r19
+    187c:	08 f0       	brcs	.+2      	; 0x1880 <bom_get_max10+0x280>
+    187e:	20 e0       	ldi	r18, 0x00	; 0
+    1880:	08 0f       	add	r16, r24
+    1882:	0f 83       	std	Y+7, r16	; 0x07
+    1884:	11 e0       	ldi	r17, 0x01	; 1
+    1886:	08 17       	cp	r16, r24
+    1888:	08 f0       	brcs	.+2      	; 0x188c <bom_get_max10+0x28c>
+    188a:	10 e0       	ldi	r17, 0x00	; 0
+    188c:	21 2b       	or	r18, r17
+    188e:	4e 85       	ldd	r20, Y+14	; 0x0e
+    1890:	f4 0e       	add	r15, r20
+    1892:	2f 0d       	add	r18, r15
+    1894:	28 87       	std	Y+8, r18	; 0x08
+    1896:	1f 85       	ldd	r17, Y+15	; 0x0f
+    1898:	0a 81       	ldd	r16, Y+2	; 0x02
+    189a:	eb 80       	ldd	r14, Y+3	; 0x03
+    189c:	dc 80       	ldd	r13, Y+4	; 0x04
+    189e:	cd 80       	ldd	r12, Y+5	; 0x05
+    18a0:	8e 81       	ldd	r24, Y+6	; 0x06
+    18a2:	89 87       	std	Y+9, r24	; 0x09
+    18a4:	9f 81       	ldd	r25, Y+7	; 0x07
+    18a6:	9a 87       	std	Y+10, r25	; 0x0a
+    18a8:	f2 2e       	mov	r15, r18
+    18aa:	31 96       	adiw	r30, 0x01	; 1
+    18ac:	ac 89       	ldd	r26, Y+20	; 0x14
+    18ae:	bd 89       	ldd	r27, Y+21	; 0x15
+    18b0:	12 96       	adiw	r26, 0x02	; 2
+    18b2:	bd 8b       	std	Y+21, r27	; 0x15
+    18b4:	ac 8b       	std	Y+20, r26	; 0x14
+    18b6:	ad 59       	subi	r26, 0x9D	; 157
+    18b8:	b6 40       	sbci	r27, 0x06	; 6
+    18ba:	09 f0       	breq	.+2      	; 0x18be <bom_get_max10+0x2be>
+    18bc:	ff ce       	rjmp	.-514    	; 0x16bc <bom_get_max10+0xbc>
+    18be:	41 14       	cp	r4, r1
+    18c0:	51 04       	cpc	r5, r1
+    18c2:	01 f1       	breq	.+64     	; 0x1904 <bom_get_max10+0x304>
+    18c4:	21 2f       	mov	r18, r17
+    18c6:	30 2f       	mov	r19, r16
+    18c8:	4e 2d       	mov	r20, r14
+    18ca:	5d 2d       	mov	r21, r13
+    18cc:	6c 2d       	mov	r22, r12
+    18ce:	78 2f       	mov	r23, r24
+    18d0:	89 2f       	mov	r24, r25
+    18d2:	9f 2d       	mov	r25, r15
+    18d4:	e0 ed       	ldi	r30, 0xD0	; 208
+    18d6:	ae 2e       	mov	r10, r30
+    18d8:	bb 24       	eor	r11, r11
+    18da:	ba 94       	dec	r11
+    18dc:	cc 24       	eor	r12, r12
+    18de:	ca 94       	dec	r12
+    18e0:	dd 24       	eor	r13, r13
+    18e2:	da 94       	dec	r13
+    18e4:	ee 24       	eor	r14, r14
+    18e6:	ea 94       	dec	r14
+    18e8:	ff 24       	eor	r15, r15
+    18ea:	fa 94       	dec	r15
+    18ec:	0f ef       	ldi	r16, 0xFF	; 255
+    18ee:	1f ef       	ldi	r17, 0xFF	; 255
+    18f0:	0e 94 db 1e 	call	0x3db6	; 0x3db6 <__divdi3>
+    18f4:	59 01       	movw	r10, r18
+    18f6:	82 e3       	ldi	r24, 0x32	; 50
+    18f8:	90 e0       	ldi	r25, 0x00	; 0
+    18fa:	a8 0e       	add	r10, r24
+    18fc:	b9 1e       	adc	r11, r25
+    18fe:	d2 01       	movw	r26, r4
+    1900:	ad 92       	st	X+, r10
+    1902:	bc 92       	st	X, r11
+    1904:	29 2d       	mov	r18, r9
+    1906:	38 2d       	mov	r19, r8
+    1908:	47 2d       	mov	r20, r7
+    190a:	56 2d       	mov	r21, r6
+    190c:	63 2d       	mov	r22, r3
+    190e:	72 2d       	mov	r23, r2
+    1910:	8a 89       	ldd	r24, Y+18	; 0x12
+    1912:	9b 89       	ldd	r25, Y+19	; 0x13
+    1914:	01 e0       	ldi	r16, 0x01	; 1
+    1916:	0e 94 5c 1e 	call	0x3cb8	; 0x3cb8 <__ashldi3>
+    191a:	12 2f       	mov	r17, r18
+    191c:	f3 2e       	mov	r15, r19
+    191e:	e4 2e       	mov	r14, r20
+    1920:	d5 2e       	mov	r13, r21
+    1922:	c6 2e       	mov	r12, r22
+    1924:	b7 2e       	mov	r11, r23
+    1926:	a8 2e       	mov	r10, r24
+    1928:	89 2e       	mov	r8, r25
+    192a:	02 e0       	ldi	r16, 0x02	; 2
+    192c:	0e 94 5c 1e 	call	0x3cb8	; 0x3cb8 <__ashldi3>
+    1930:	b9 2f       	mov	r27, r25
+    1932:	21 0f       	add	r18, r17
+    1934:	e1 e0       	ldi	r30, 0x01	; 1
+    1936:	21 17       	cp	r18, r17
+    1938:	08 f0       	brcs	.+2      	; 0x193c <bom_get_max10+0x33c>
+    193a:	e0 e0       	ldi	r30, 0x00	; 0
+    193c:	3f 0d       	add	r19, r15
+    193e:	f1 e0       	ldi	r31, 0x01	; 1
+    1940:	3f 15       	cp	r19, r15
+    1942:	08 f0       	brcs	.+2      	; 0x1946 <bom_get_max10+0x346>
+    1944:	f0 e0       	ldi	r31, 0x00	; 0
+    1946:	9e 2e       	mov	r9, r30
+    1948:	93 0e       	add	r9, r19
+    194a:	e1 e0       	ldi	r30, 0x01	; 1
+    194c:	93 16       	cp	r9, r19
+    194e:	08 f0       	brcs	.+2      	; 0x1952 <bom_get_max10+0x352>
+    1950:	e0 e0       	ldi	r30, 0x00	; 0
+    1952:	fe 2b       	or	r31, r30
+    1954:	4e 0d       	add	r20, r14
+    1956:	a1 e0       	ldi	r26, 0x01	; 1
+    1958:	4e 15       	cp	r20, r14
+    195a:	08 f0       	brcs	.+2      	; 0x195e <bom_get_max10+0x35e>
+    195c:	a0 e0       	ldi	r26, 0x00	; 0
+    195e:	ff 2e       	mov	r15, r31
+    1960:	f4 0e       	add	r15, r20
+    1962:	e1 e0       	ldi	r30, 0x01	; 1
+    1964:	f4 16       	cp	r15, r20
+    1966:	08 f0       	brcs	.+2      	; 0x196a <bom_get_max10+0x36a>
+    1968:	e0 e0       	ldi	r30, 0x00	; 0
+    196a:	ae 2b       	or	r26, r30
+    196c:	5d 0d       	add	r21, r13
+    196e:	f1 e0       	ldi	r31, 0x01	; 1
+    1970:	5d 15       	cp	r21, r13
+    1972:	08 f0       	brcs	.+2      	; 0x1976 <bom_get_max10+0x376>
+    1974:	f0 e0       	ldi	r31, 0x00	; 0
+    1976:	0a 2f       	mov	r16, r26
+    1978:	05 0f       	add	r16, r21
+    197a:	e1 e0       	ldi	r30, 0x01	; 1
+    197c:	05 17       	cp	r16, r21
+    197e:	08 f0       	brcs	.+2      	; 0x1982 <bom_get_max10+0x382>
+    1980:	e0 e0       	ldi	r30, 0x00	; 0
+    1982:	fe 2b       	or	r31, r30
+    1984:	6c 0d       	add	r22, r12
+    1986:	a1 e0       	ldi	r26, 0x01	; 1
+    1988:	6c 15       	cp	r22, r12
+    198a:	08 f0       	brcs	.+2      	; 0x198e <bom_get_max10+0x38e>
+    198c:	a0 e0       	ldi	r26, 0x00	; 0
+    198e:	1f 2f       	mov	r17, r31
+    1990:	16 0f       	add	r17, r22
+    1992:	e1 e0       	ldi	r30, 0x01	; 1
+    1994:	16 17       	cp	r17, r22
+    1996:	08 f0       	brcs	.+2      	; 0x199a <bom_get_max10+0x39a>
+    1998:	e0 e0       	ldi	r30, 0x00	; 0
+    199a:	ae 2b       	or	r26, r30
+    199c:	7b 0d       	add	r23, r11
+    199e:	f1 e0       	ldi	r31, 0x01	; 1
+    19a0:	7b 15       	cp	r23, r11
+    19a2:	08 f0       	brcs	.+2      	; 0x19a6 <bom_get_max10+0x3a6>
+    19a4:	f0 e0       	ldi	r31, 0x00	; 0
+    19a6:	a7 0f       	add	r26, r23
+    19a8:	e1 e0       	ldi	r30, 0x01	; 1
+    19aa:	a7 17       	cp	r26, r23
+    19ac:	08 f0       	brcs	.+2      	; 0x19b0 <bom_get_max10+0x3b0>
+    19ae:	e0 e0       	ldi	r30, 0x00	; 0
+    19b0:	fe 2b       	or	r31, r30
+    19b2:	8a 0d       	add	r24, r10
+    19b4:	91 e0       	ldi	r25, 0x01	; 1
+    19b6:	8a 15       	cp	r24, r10
+    19b8:	08 f0       	brcs	.+2      	; 0x19bc <bom_get_max10+0x3bc>
+    19ba:	90 e0       	ldi	r25, 0x00	; 0
+    19bc:	f8 0f       	add	r31, r24
+    19be:	e1 e0       	ldi	r30, 0x01	; 1
+    19c0:	f8 17       	cp	r31, r24
+    19c2:	08 f0       	brcs	.+2      	; 0x19c6 <bom_get_max10+0x3c6>
+    19c4:	e0 e0       	ldi	r30, 0x00	; 0
+    19c6:	9e 2b       	or	r25, r30
+    19c8:	b8 0d       	add	r27, r8
+    19ca:	39 2d       	mov	r19, r9
+    19cc:	4f 2d       	mov	r20, r15
+    19ce:	50 2f       	mov	r21, r16
+    19d0:	61 2f       	mov	r22, r17
+    19d2:	7a 2f       	mov	r23, r26
+    19d4:	8f 2f       	mov	r24, r31
+    19d6:	9b 0f       	add	r25, r27
+    19d8:	af 84       	ldd	r10, Y+15	; 0x0f
+    19da:	ba 80       	ldd	r11, Y+2	; 0x02
+    19dc:	cb 80       	ldd	r12, Y+3	; 0x03
+    19de:	dc 80       	ldd	r13, Y+4	; 0x04
+    19e0:	ed 80       	ldd	r14, Y+5	; 0x05
+    19e2:	fe 80       	ldd	r15, Y+6	; 0x06
+    19e4:	0f 81       	ldd	r16, Y+7	; 0x07
+    19e6:	18 85       	ldd	r17, Y+8	; 0x08
+    19e8:	0e 94 db 1e 	call	0x3db6	; 0x3db6 <__divdi3>
+    19ec:	e3 2f       	mov	r30, r19
+    19ee:	f4 2f       	mov	r31, r20
+    19f0:	a5 2f       	mov	r26, r21
+    19f2:	b6 2f       	mov	r27, r22
+    19f4:	17 2f       	mov	r17, r23
+    19f6:	08 2f       	mov	r16, r24
+    19f8:	e9 2e       	mov	r14, r25
+    19fa:	80 ea       	ldi	r24, 0xA0	; 160
+    19fc:	f8 2e       	mov	r15, r24
+    19fe:	f2 0e       	add	r15, r18
+    1a00:	31 e0       	ldi	r19, 0x01	; 1
+    1a02:	f2 16       	cp	r15, r18
+    1a04:	08 f0       	brcs	.+2      	; 0x1a08 <bom_get_max10+0x408>
+    1a06:	30 e0       	ldi	r19, 0x00	; 0
+    1a08:	3e 0f       	add	r19, r30
+    1a0a:	41 e0       	ldi	r20, 0x01	; 1
+    1a0c:	3e 17       	cp	r19, r30
+    1a0e:	08 f0       	brcs	.+2      	; 0x1a12 <bom_get_max10+0x412>
+    1a10:	40 e0       	ldi	r20, 0x00	; 0
+    1a12:	4f 0f       	add	r20, r31
+    1a14:	51 e0       	ldi	r21, 0x01	; 1
+    1a16:	4f 17       	cp	r20, r31
+    1a18:	08 f0       	brcs	.+2      	; 0x1a1c <bom_get_max10+0x41c>
+    1a1a:	50 e0       	ldi	r21, 0x00	; 0
+    1a1c:	5a 0f       	add	r21, r26
+    1a1e:	61 e0       	ldi	r22, 0x01	; 1
+    1a20:	5a 17       	cp	r21, r26
+    1a22:	08 f0       	brcs	.+2      	; 0x1a26 <bom_get_max10+0x426>
+    1a24:	60 e0       	ldi	r22, 0x00	; 0
+    1a26:	6b 0f       	add	r22, r27
+    1a28:	71 e0       	ldi	r23, 0x01	; 1
+    1a2a:	6b 17       	cp	r22, r27
+    1a2c:	08 f0       	brcs	.+2      	; 0x1a30 <bom_get_max10+0x430>
+    1a2e:	70 e0       	ldi	r23, 0x00	; 0
+    1a30:	71 0f       	add	r23, r17
+    1a32:	81 e0       	ldi	r24, 0x01	; 1
+    1a34:	71 17       	cp	r23, r17
+    1a36:	08 f0       	brcs	.+2      	; 0x1a3a <bom_get_max10+0x43a>
+    1a38:	80 e0       	ldi	r24, 0x00	; 0
+    1a3a:	80 0f       	add	r24, r16
+    1a3c:	91 e0       	ldi	r25, 0x01	; 1
+    1a3e:	80 17       	cp	r24, r16
+    1a40:	08 f0       	brcs	.+2      	; 0x1a44 <bom_get_max10+0x444>
+    1a42:	90 e0       	ldi	r25, 0x00	; 0
+    1a44:	2f 2d       	mov	r18, r15
+    1a46:	9e 0d       	add	r25, r14
+    1a48:	e0 ea       	ldi	r30, 0xA0	; 160
+    1a4a:	ae 2e       	mov	r10, r30
+    1a4c:	bb 24       	eor	r11, r11
+    1a4e:	cc 24       	eor	r12, r12
+    1a50:	dd 24       	eor	r13, r13
+    1a52:	ee 24       	eor	r14, r14
+    1a54:	ff 24       	eor	r15, r15
+    1a56:	00 e0       	ldi	r16, 0x00	; 0
+    1a58:	10 e0       	ldi	r17, 0x00	; 0
+    1a5a:	0e 94 03 27 	call	0x4e06	; 0x4e06 <__moddi3>
+    1a5e:	c9 01       	movw	r24, r18
+    1a60:	67 96       	adiw	r28, 0x17	; 23
+    1a62:	0f b6       	in	r0, 0x3f	; 63
+    1a64:	f8 94       	cli
+    1a66:	de bf       	out	0x3e, r29	; 62
+    1a68:	0f be       	out	0x3f, r0	; 63
+    1a6a:	cd bf       	out	0x3d, r28	; 61
+    1a6c:	cf 91       	pop	r28
+    1a6e:	df 91       	pop	r29
+    1a70:	1f 91       	pop	r17
+    1a72:	0f 91       	pop	r16
+    1a74:	ff 90       	pop	r15
+    1a76:	ef 90       	pop	r14
+    1a78:	df 90       	pop	r13
+    1a7a:	cf 90       	pop	r12
+    1a7c:	bf 90       	pop	r11
+    1a7e:	af 90       	pop	r10
+    1a80:	9f 90       	pop	r9
+    1a82:	8f 90       	pop	r8
+    1a84:	7f 90       	pop	r7
+    1a86:	6f 90       	pop	r6
+    1a88:	5f 90       	pop	r5
+    1a8a:	4f 90       	pop	r4
+    1a8c:	3f 90       	pop	r3
+    1a8e:	2f 90       	pop	r2
+    1a90:	08 95       	ret
 
-00001a40 <bom_off>:
-    1a40:	80 91 8c 06 	lds	r24, 0x068C
-    1a44:	88 23       	and	r24, r24
-    1a46:	19 f0       	breq	.+6      	; 0x1a4e <bom_off+0xe>
-    1a48:	81 30       	cpi	r24, 0x01	; 1
-    1a4a:	71 f4       	brne	.+28     	; 0x1a68 <bom_off+0x28>
-    1a4c:	07 c0       	rjmp	.+14     	; 0x1a5c <bom_off+0x1c>
-    1a4e:	8a e2       	ldi	r24, 0x2A	; 42
-    1a50:	90 e0       	ldi	r25, 0x00	; 0
-    1a52:	60 e0       	ldi	r22, 0x00	; 0
-    1a54:	70 e0       	ldi	r23, 0x00	; 0
-    1a56:	0e 94 8a 0f 	call	0x1f14	; 0x1f14 <digital_output>
-    1a5a:	08 95       	ret
-    1a5c:	8b e2       	ldi	r24, 0x2B	; 43
-    1a5e:	90 e0       	ldi	r25, 0x00	; 0
-    1a60:	60 e0       	ldi	r22, 0x00	; 0
-    1a62:	70 e0       	ldi	r23, 0x00	; 0
-    1a64:	0e 94 8a 0f 	call	0x1f14	; 0x1f14 <digital_output>
-    1a68:	08 95       	ret
+00001a92 <bom_off>:
+    1a92:	80 91 7c 06 	lds	r24, 0x067C
+    1a96:	88 23       	and	r24, r24
+    1a98:	19 f0       	breq	.+6      	; 0x1aa0 <bom_off+0xe>
+    1a9a:	81 30       	cpi	r24, 0x01	; 1
+    1a9c:	71 f4       	brne	.+28     	; 0x1aba <bom_off+0x28>
+    1a9e:	07 c0       	rjmp	.+14     	; 0x1aae <bom_off+0x1c>
+    1aa0:	8a e2       	ldi	r24, 0x2A	; 42
+    1aa2:	90 e0       	ldi	r25, 0x00	; 0
+    1aa4:	60 e0       	ldi	r22, 0x00	; 0
+    1aa6:	70 e0       	ldi	r23, 0x00	; 0
+    1aa8:	0e 94 b3 0f 	call	0x1f66	; 0x1f66 <digital_output>
+    1aac:	08 95       	ret
+    1aae:	8b e2       	ldi	r24, 0x2B	; 43
+    1ab0:	90 e0       	ldi	r25, 0x00	; 0
+    1ab2:	60 e0       	ldi	r22, 0x00	; 0
+    1ab4:	70 e0       	ldi	r23, 0x00	; 0
+    1ab6:	0e 94 b3 0f 	call	0x1f66	; 0x1f66 <digital_output>
+    1aba:	08 95       	ret
 
-00001a6a <bom_on>:
-    1a6a:	80 91 8c 06 	lds	r24, 0x068C
-    1a6e:	88 23       	and	r24, r24
-    1a70:	19 f0       	breq	.+6      	; 0x1a78 <bom_on+0xe>
-    1a72:	81 30       	cpi	r24, 0x01	; 1
-    1a74:	71 f4       	brne	.+28     	; 0x1a92 <bom_on+0x28>
-    1a76:	07 c0       	rjmp	.+14     	; 0x1a86 <bom_on+0x1c>
-    1a78:	8a e2       	ldi	r24, 0x2A	; 42
-    1a7a:	90 e0       	ldi	r25, 0x00	; 0
-    1a7c:	61 e0       	ldi	r22, 0x01	; 1
-    1a7e:	70 e0       	ldi	r23, 0x00	; 0
-    1a80:	0e 94 8a 0f 	call	0x1f14	; 0x1f14 <digital_output>
-    1a84:	08 95       	ret
-    1a86:	8b e2       	ldi	r24, 0x2B	; 43
-    1a88:	90 e0       	ldi	r25, 0x00	; 0
-    1a8a:	61 e0       	ldi	r22, 0x01	; 1
-    1a8c:	70 e0       	ldi	r23, 0x00	; 0
-    1a8e:	0e 94 8a 0f 	call	0x1f14	; 0x1f14 <digital_output>
-    1a92:	08 95       	ret
+00001abc <bom_on>:
+    1abc:	80 91 7c 06 	lds	r24, 0x067C
+    1ac0:	88 23       	and	r24, r24
+    1ac2:	19 f0       	breq	.+6      	; 0x1aca <bom_on+0xe>
+    1ac4:	81 30       	cpi	r24, 0x01	; 1
+    1ac6:	71 f4       	brne	.+28     	; 0x1ae4 <bom_on+0x28>
+    1ac8:	07 c0       	rjmp	.+14     	; 0x1ad8 <bom_on+0x1c>
+    1aca:	8a e2       	ldi	r24, 0x2A	; 42
+    1acc:	90 e0       	ldi	r25, 0x00	; 0
+    1ace:	61 e0       	ldi	r22, 0x01	; 1
+    1ad0:	70 e0       	ldi	r23, 0x00	; 0
+    1ad2:	0e 94 b3 0f 	call	0x1f66	; 0x1f66 <digital_output>
+    1ad6:	08 95       	ret
+    1ad8:	8b e2       	ldi	r24, 0x2B	; 43
+    1ada:	90 e0       	ldi	r25, 0x00	; 0
+    1adc:	61 e0       	ldi	r22, 0x01	; 1
+    1ade:	70 e0       	ldi	r23, 0x00	; 0
+    1ae0:	0e 94 b3 0f 	call	0x1f66	; 0x1f66 <digital_output>
+    1ae4:	08 95       	ret
 
-00001a94 <bom_set_leds>:
-    1a94:	ef 92       	push	r14
-    1a96:	ff 92       	push	r15
-    1a98:	0f 93       	push	r16
-    1a9a:	1f 93       	push	r17
-    1a9c:	cf 93       	push	r28
-    1a9e:	df 93       	push	r29
-    1aa0:	7c 01       	movw	r14, r24
-    1aa2:	80 91 8c 06 	lds	r24, 0x068C
-    1aa6:	81 30       	cpi	r24, 0x01	; 1
-    1aa8:	e1 f4       	brne	.+56     	; 0x1ae2 <bom_set_leds+0x4e>
-    1aaa:	00 e1       	ldi	r16, 0x10	; 16
-    1aac:	10 e0       	ldi	r17, 0x00	; 0
-    1aae:	c0 e0       	ldi	r28, 0x00	; 0
-    1ab0:	d0 e8       	ldi	r29, 0x80	; 128
-    1ab2:	be 01       	movw	r22, r28
-    1ab4:	6e 21       	and	r22, r14
-    1ab6:	7f 21       	and	r23, r15
-    1ab8:	88 e0       	ldi	r24, 0x08	; 8
-    1aba:	90 e0       	ldi	r25, 0x00	; 0
-    1abc:	0e 94 8a 0f 	call	0x1f14	; 0x1f14 <digital_output>
-    1ac0:	89 e0       	ldi	r24, 0x09	; 9
-    1ac2:	90 e0       	ldi	r25, 0x00	; 0
-    1ac4:	61 e0       	ldi	r22, 0x01	; 1
-    1ac6:	70 e0       	ldi	r23, 0x00	; 0
-    1ac8:	0e 94 8a 0f 	call	0x1f14	; 0x1f14 <digital_output>
-    1acc:	89 e0       	ldi	r24, 0x09	; 9
-    1ace:	90 e0       	ldi	r25, 0x00	; 0
-    1ad0:	60 e0       	ldi	r22, 0x00	; 0
-    1ad2:	70 e0       	ldi	r23, 0x00	; 0
-    1ad4:	0e 94 8a 0f 	call	0x1f14	; 0x1f14 <digital_output>
-    1ad8:	d6 95       	lsr	r29
-    1ada:	c7 95       	ror	r28
-    1adc:	01 50       	subi	r16, 0x01	; 1
-    1ade:	10 40       	sbci	r17, 0x00	; 0
-    1ae0:	41 f7       	brne	.-48     	; 0x1ab2 <bom_set_leds+0x1e>
-    1ae2:	df 91       	pop	r29
-    1ae4:	cf 91       	pop	r28
-    1ae6:	1f 91       	pop	r17
-    1ae8:	0f 91       	pop	r16
-    1aea:	ff 90       	pop	r15
-    1aec:	ef 90       	pop	r14
-    1aee:	08 95       	ret
+00001ae6 <bom_set_leds>:
+    1ae6:	ef 92       	push	r14
+    1ae8:	ff 92       	push	r15
+    1aea:	0f 93       	push	r16
+    1aec:	1f 93       	push	r17
+    1aee:	cf 93       	push	r28
+    1af0:	df 93       	push	r29
+    1af2:	7c 01       	movw	r14, r24
+    1af4:	80 91 7c 06 	lds	r24, 0x067C
+    1af8:	81 30       	cpi	r24, 0x01	; 1
+    1afa:	e1 f4       	brne	.+56     	; 0x1b34 <bom_set_leds+0x4e>
+    1afc:	00 e1       	ldi	r16, 0x10	; 16
+    1afe:	10 e0       	ldi	r17, 0x00	; 0
+    1b00:	c0 e0       	ldi	r28, 0x00	; 0
+    1b02:	d0 e8       	ldi	r29, 0x80	; 128
+    1b04:	be 01       	movw	r22, r28
+    1b06:	6e 21       	and	r22, r14
+    1b08:	7f 21       	and	r23, r15
+    1b0a:	88 e0       	ldi	r24, 0x08	; 8
+    1b0c:	90 e0       	ldi	r25, 0x00	; 0
+    1b0e:	0e 94 b3 0f 	call	0x1f66	; 0x1f66 <digital_output>
+    1b12:	89 e0       	ldi	r24, 0x09	; 9
+    1b14:	90 e0       	ldi	r25, 0x00	; 0
+    1b16:	61 e0       	ldi	r22, 0x01	; 1
+    1b18:	70 e0       	ldi	r23, 0x00	; 0
+    1b1a:	0e 94 b3 0f 	call	0x1f66	; 0x1f66 <digital_output>
+    1b1e:	89 e0       	ldi	r24, 0x09	; 9
+    1b20:	90 e0       	ldi	r25, 0x00	; 0
+    1b22:	60 e0       	ldi	r22, 0x00	; 0
+    1b24:	70 e0       	ldi	r23, 0x00	; 0
+    1b26:	0e 94 b3 0f 	call	0x1f66	; 0x1f66 <digital_output>
+    1b2a:	d6 95       	lsr	r29
+    1b2c:	c7 95       	ror	r28
+    1b2e:	01 50       	subi	r16, 0x01	; 1
+    1b30:	10 40       	sbci	r17, 0x00	; 0
+    1b32:	41 f7       	brne	.-48     	; 0x1b04 <bom_set_leds+0x1e>
+    1b34:	df 91       	pop	r29
+    1b36:	cf 91       	pop	r28
+    1b38:	1f 91       	pop	r17
+    1b3a:	0f 91       	pop	r16
+    1b3c:	ff 90       	pop	r15
+    1b3e:	ef 90       	pop	r14
+    1b40:	08 95       	ret
 
-00001af0 <bom_init>:
-    1af0:	80 93 8c 06 	sts	0x068C, r24
-    1af4:	80 91 8c 06 	lds	r24, 0x068C
-    1af8:	88 23       	and	r24, r24
-    1afa:	21 f0       	breq	.+8      	; 0x1b04 <bom_init+0x14>
-    1afc:	81 30       	cpi	r24, 0x01	; 1
-    1afe:	09 f0       	breq	.+2      	; 0x1b02 <bom_init+0x12>
-    1b00:	44 c0       	rjmp	.+136    	; 0x1b8a <bom_init+0x9a>
-    1b02:	1d c0       	rjmp	.+58     	; 0x1b3e <bom_init+0x4e>
-    1b04:	8c e2       	ldi	r24, 0x2C	; 44
-    1b06:	90 e0       	ldi	r25, 0x00	; 0
-    1b08:	90 93 ae 06 	sts	0x06AE, r25
-    1b0c:	80 93 ad 06 	sts	0x06AD, r24
-    1b10:	8b e2       	ldi	r24, 0x2B	; 43
-    1b12:	90 e0       	ldi	r25, 0x00	; 0
-    1b14:	90 93 b0 06 	sts	0x06B0, r25
-    1b18:	80 93 af 06 	sts	0x06AF, r24
-    1b1c:	8f e2       	ldi	r24, 0x2F	; 47
-    1b1e:	90 e0       	ldi	r25, 0x00	; 0
-    1b20:	90 93 b2 06 	sts	0x06B2, r25
-    1b24:	80 93 b1 06 	sts	0x06B1, r24
-    1b28:	8e e2       	ldi	r24, 0x2E	; 46
-    1b2a:	90 e0       	ldi	r25, 0x00	; 0
-    1b2c:	90 93 b4 06 	sts	0x06B4, r25
-    1b30:	80 93 b3 06 	sts	0x06B3, r24
-    1b34:	10 92 b6 06 	sts	0x06B6, r1
-    1b38:	10 92 b5 06 	sts	0x06B5, r1
-    1b3c:	08 95       	ret
-    1b3e:	8a e2       	ldi	r24, 0x2A	; 42
-    1b40:	90 e0       	ldi	r25, 0x00	; 0
-    1b42:	60 e0       	ldi	r22, 0x00	; 0
-    1b44:	70 e0       	ldi	r23, 0x00	; 0
-    1b46:	0e 94 8a 0f 	call	0x1f14	; 0x1f14 <digital_output>
-    1b4a:	8d e2       	ldi	r24, 0x2D	; 45
-    1b4c:	90 e0       	ldi	r25, 0x00	; 0
-    1b4e:	90 93 ae 06 	sts	0x06AE, r25
-    1b52:	80 93 ad 06 	sts	0x06AD, r24
+00001b42 <bom_init>:
+    1b42:	80 93 7c 06 	sts	0x067C, r24
+    1b46:	80 91 7c 06 	lds	r24, 0x067C
+    1b4a:	88 23       	and	r24, r24
+    1b4c:	21 f0       	breq	.+8      	; 0x1b56 <bom_init+0x14>
+    1b4e:	81 30       	cpi	r24, 0x01	; 1
+    1b50:	09 f0       	breq	.+2      	; 0x1b54 <bom_init+0x12>
+    1b52:	44 c0       	rjmp	.+136    	; 0x1bdc <bom_init+0x9a>
+    1b54:	1d c0       	rjmp	.+58     	; 0x1b90 <bom_init+0x4e>
     1b56:	8c e2       	ldi	r24, 0x2C	; 44
     1b58:	90 e0       	ldi	r25, 0x00	; 0
-    1b5a:	90 93 b0 06 	sts	0x06B0, r25
-    1b5e:	80 93 af 06 	sts	0x06AF, r24
-    1b62:	8f e2       	ldi	r24, 0x2F	; 47
+    1b5a:	90 93 9e 06 	sts	0x069E, r25
+    1b5e:	80 93 9d 06 	sts	0x069D, r24
+    1b62:	8b e2       	ldi	r24, 0x2B	; 43
     1b64:	90 e0       	ldi	r25, 0x00	; 0
-    1b66:	90 93 b2 06 	sts	0x06B2, r25
-    1b6a:	80 93 b1 06 	sts	0x06B1, r24
-    1b6e:	8e e2       	ldi	r24, 0x2E	; 46
+    1b66:	90 93 a0 06 	sts	0x06A0, r25
+    1b6a:	80 93 9f 06 	sts	0x069F, r24
+    1b6e:	8f e2       	ldi	r24, 0x2F	; 47
     1b70:	90 e0       	ldi	r25, 0x00	; 0
-    1b72:	90 93 b4 06 	sts	0x06B4, r25
-    1b76:	80 93 b3 06 	sts	0x06B3, r24
-    1b7a:	8f ef       	ldi	r24, 0xFF	; 255
-    1b7c:	9f ef       	ldi	r25, 0xFF	; 255
-    1b7e:	0e 94 4a 0d 	call	0x1a94	; 0x1a94 <bom_set_leds>
-    1b82:	10 92 b6 06 	sts	0x06B6, r1
-    1b86:	10 92 b5 06 	sts	0x06B5, r1
-    1b8a:	08 95       	ret
+    1b72:	90 93 a2 06 	sts	0x06A2, r25
+    1b76:	80 93 a1 06 	sts	0x06A1, r24
+    1b7a:	8e e2       	ldi	r24, 0x2E	; 46
+    1b7c:	90 e0       	ldi	r25, 0x00	; 0
+    1b7e:	90 93 a4 06 	sts	0x06A4, r25
+    1b82:	80 93 a3 06 	sts	0x06A3, r24
+    1b86:	10 92 a6 06 	sts	0x06A6, r1
+    1b8a:	10 92 a5 06 	sts	0x06A5, r1
+    1b8e:	08 95       	ret
+    1b90:	8a e2       	ldi	r24, 0x2A	; 42
+    1b92:	90 e0       	ldi	r25, 0x00	; 0
+    1b94:	60 e0       	ldi	r22, 0x00	; 0
+    1b96:	70 e0       	ldi	r23, 0x00	; 0
+    1b98:	0e 94 b3 0f 	call	0x1f66	; 0x1f66 <digital_output>
+    1b9c:	8d e2       	ldi	r24, 0x2D	; 45
+    1b9e:	90 e0       	ldi	r25, 0x00	; 0
+    1ba0:	90 93 9e 06 	sts	0x069E, r25
+    1ba4:	80 93 9d 06 	sts	0x069D, r24
+    1ba8:	8c e2       	ldi	r24, 0x2C	; 44
+    1baa:	90 e0       	ldi	r25, 0x00	; 0
+    1bac:	90 93 a0 06 	sts	0x06A0, r25
+    1bb0:	80 93 9f 06 	sts	0x069F, r24
+    1bb4:	8f e2       	ldi	r24, 0x2F	; 47
+    1bb6:	90 e0       	ldi	r25, 0x00	; 0
+    1bb8:	90 93 a2 06 	sts	0x06A2, r25
+    1bbc:	80 93 a1 06 	sts	0x06A1, r24
+    1bc0:	8e e2       	ldi	r24, 0x2E	; 46
+    1bc2:	90 e0       	ldi	r25, 0x00	; 0
+    1bc4:	90 93 a4 06 	sts	0x06A4, r25
+    1bc8:	80 93 a3 06 	sts	0x06A3, r24
+    1bcc:	8f ef       	ldi	r24, 0xFF	; 255
+    1bce:	9f ef       	ldi	r25, 0xFF	; 255
+    1bd0:	0e 94 73 0d 	call	0x1ae6	; 0x1ae6 <bom_set_leds>
+    1bd4:	10 92 a6 06 	sts	0x06A6, r1
+    1bd8:	10 92 a5 06 	sts	0x06A5, r1
+    1bdc:	08 95       	ret
 
-00001b8c <bom_refresh>:
-    1b8c:	af 92       	push	r10
-    1b8e:	bf 92       	push	r11
-    1b90:	cf 92       	push	r12
-    1b92:	df 92       	push	r13
-    1b94:	ef 92       	push	r14
-    1b96:	ff 92       	push	r15
-    1b98:	1f 93       	push	r17
-    1b9a:	cf 93       	push	r28
-    1b9c:	df 93       	push	r29
-    1b9e:	6c 01       	movw	r12, r24
-    1ba0:	0e 94 d9 1c 	call	0x39b2	; 0x39b2 <analog_loop_status>
-    1ba4:	01 97       	sbiw	r24, 0x01	; 1
-    1ba6:	19 f0       	breq	.+6      	; 0x1bae <bom_refresh+0x22>
-    1ba8:	aa 24       	eor	r10, r10
-    1baa:	bb 24       	eor	r11, r11
-    1bac:	05 c0       	rjmp	.+10     	; 0x1bb8 <bom_refresh+0x2c>
-    1bae:	0e 94 d2 1c 	call	0x39a4	; 0x39a4 <analog_stop_loop>
-    1bb2:	61 e0       	ldi	r22, 0x01	; 1
-    1bb4:	a6 2e       	mov	r10, r22
-    1bb6:	b1 2c       	mov	r11, r1
-    1bb8:	5d e8       	ldi	r21, 0x8D	; 141
-    1bba:	e5 2e       	mov	r14, r21
-    1bbc:	56 e0       	ldi	r21, 0x06	; 6
-    1bbe:	f5 2e       	mov	r15, r21
-    1bc0:	c0 e0       	ldi	r28, 0x00	; 0
-    1bc2:	d0 e0       	ldi	r29, 0x00	; 0
-    1bc4:	c0 fe       	sbrs	r12, 0
-    1bc6:	57 c0       	rjmp	.+174    	; 0x1c76 <bom_refresh+0xea>
-    1bc8:	ec 2f       	mov	r30, r28
-    1bca:	80 91 8c 06 	lds	r24, 0x068C
-    1bce:	88 23       	and	r24, r24
-    1bd0:	21 f4       	brne	.+8      	; 0x1bda <bom_refresh+0x4e>
-    1bd2:	fe 01       	movw	r30, r28
-    1bd4:	e9 59       	subi	r30, 0x99	; 153
-    1bd6:	fe 4f       	sbci	r31, 0xFE	; 254
-    1bd8:	e0 81       	ld	r30, Z
-    1bda:	1e 2f       	mov	r17, r30
-    1bdc:	e3 ff       	sbrs	r30, 3
-    1bde:	07 c0       	rjmp	.+14     	; 0x1bee <bom_refresh+0x62>
-    1be0:	80 91 b3 06 	lds	r24, 0x06B3
-    1be4:	90 91 b4 06 	lds	r25, 0x06B4
-    1be8:	61 e0       	ldi	r22, 0x01	; 1
-    1bea:	70 e0       	ldi	r23, 0x00	; 0
-    1bec:	06 c0       	rjmp	.+12     	; 0x1bfa <bom_refresh+0x6e>
-    1bee:	80 91 b3 06 	lds	r24, 0x06B3
-    1bf2:	90 91 b4 06 	lds	r25, 0x06B4
-    1bf6:	60 e0       	ldi	r22, 0x00	; 0
-    1bf8:	70 e0       	ldi	r23, 0x00	; 0
-    1bfa:	0e 94 8a 0f 	call	0x1f14	; 0x1f14 <digital_output>
-    1bfe:	12 ff       	sbrs	r17, 2
-    1c00:	07 c0       	rjmp	.+14     	; 0x1c10 <bom_refresh+0x84>
-    1c02:	80 91 b1 06 	lds	r24, 0x06B1
-    1c06:	90 91 b2 06 	lds	r25, 0x06B2
-    1c0a:	61 e0       	ldi	r22, 0x01	; 1
-    1c0c:	70 e0       	ldi	r23, 0x00	; 0
-    1c0e:	06 c0       	rjmp	.+12     	; 0x1c1c <bom_refresh+0x90>
-    1c10:	80 91 b1 06 	lds	r24, 0x06B1
-    1c14:	90 91 b2 06 	lds	r25, 0x06B2
-    1c18:	60 e0       	ldi	r22, 0x00	; 0
-    1c1a:	70 e0       	ldi	r23, 0x00	; 0
-    1c1c:	0e 94 8a 0f 	call	0x1f14	; 0x1f14 <digital_output>
-    1c20:	11 ff       	sbrs	r17, 1
-    1c22:	07 c0       	rjmp	.+14     	; 0x1c32 <bom_refresh+0xa6>
-    1c24:	80 91 af 06 	lds	r24, 0x06AF
-    1c28:	90 91 b0 06 	lds	r25, 0x06B0
-    1c2c:	61 e0       	ldi	r22, 0x01	; 1
-    1c2e:	70 e0       	ldi	r23, 0x00	; 0
-    1c30:	06 c0       	rjmp	.+12     	; 0x1c3e <bom_refresh+0xb2>
-    1c32:	80 91 af 06 	lds	r24, 0x06AF
-    1c36:	90 91 b0 06 	lds	r25, 0x06B0
-    1c3a:	60 e0       	ldi	r22, 0x00	; 0
+00001bde <bom_refresh>:
+    1bde:	af 92       	push	r10
+    1be0:	bf 92       	push	r11
+    1be2:	cf 92       	push	r12
+    1be4:	df 92       	push	r13
+    1be6:	ef 92       	push	r14
+    1be8:	ff 92       	push	r15
+    1bea:	1f 93       	push	r17
+    1bec:	cf 93       	push	r28
+    1bee:	df 93       	push	r29
+    1bf0:	6c 01       	movw	r12, r24
+    1bf2:	0e 94 02 1d 	call	0x3a04	; 0x3a04 <analog_loop_status>
+    1bf6:	01 97       	sbiw	r24, 0x01	; 1
+    1bf8:	19 f0       	breq	.+6      	; 0x1c00 <bom_refresh+0x22>
+    1bfa:	aa 24       	eor	r10, r10
+    1bfc:	bb 24       	eor	r11, r11
+    1bfe:	05 c0       	rjmp	.+10     	; 0x1c0a <bom_refresh+0x2c>
+    1c00:	0e 94 fb 1c 	call	0x39f6	; 0x39f6 <analog_stop_loop>
+    1c04:	61 e0       	ldi	r22, 0x01	; 1
+    1c06:	a6 2e       	mov	r10, r22
+    1c08:	b1 2c       	mov	r11, r1
+    1c0a:	5d e7       	ldi	r21, 0x7D	; 125
+    1c0c:	e5 2e       	mov	r14, r21
+    1c0e:	56 e0       	ldi	r21, 0x06	; 6
+    1c10:	f5 2e       	mov	r15, r21
+    1c12:	c0 e0       	ldi	r28, 0x00	; 0
+    1c14:	d0 e0       	ldi	r29, 0x00	; 0
+    1c16:	c0 fe       	sbrs	r12, 0
+    1c18:	57 c0       	rjmp	.+174    	; 0x1cc8 <bom_refresh+0xea>
+    1c1a:	ec 2f       	mov	r30, r28
+    1c1c:	80 91 7c 06 	lds	r24, 0x067C
+    1c20:	88 23       	and	r24, r24
+    1c22:	21 f4       	brne	.+8      	; 0x1c2c <bom_refresh+0x4e>
+    1c24:	fe 01       	movw	r30, r28
+    1c26:	e8 5a       	subi	r30, 0xA8	; 168
+    1c28:	fe 4f       	sbci	r31, 0xFE	; 254
+    1c2a:	e0 81       	ld	r30, Z
+    1c2c:	1e 2f       	mov	r17, r30
+    1c2e:	e3 ff       	sbrs	r30, 3
+    1c30:	07 c0       	rjmp	.+14     	; 0x1c40 <bom_refresh+0x62>
+    1c32:	80 91 a3 06 	lds	r24, 0x06A3
+    1c36:	90 91 a4 06 	lds	r25, 0x06A4
+    1c3a:	61 e0       	ldi	r22, 0x01	; 1
     1c3c:	70 e0       	ldi	r23, 0x00	; 0
-    1c3e:	0e 94 8a 0f 	call	0x1f14	; 0x1f14 <digital_output>
-    1c42:	10 ff       	sbrs	r17, 0
-    1c44:	07 c0       	rjmp	.+14     	; 0x1c54 <bom_refresh+0xc8>
-    1c46:	80 91 ad 06 	lds	r24, 0x06AD
-    1c4a:	90 91 ae 06 	lds	r25, 0x06AE
-    1c4e:	61 e0       	ldi	r22, 0x01	; 1
-    1c50:	70 e0       	ldi	r23, 0x00	; 0
-    1c52:	06 c0       	rjmp	.+12     	; 0x1c60 <bom_refresh+0xd4>
-    1c54:	80 91 ad 06 	lds	r24, 0x06AD
-    1c58:	90 91 ae 06 	lds	r25, 0x06AE
-    1c5c:	60 e0       	ldi	r22, 0x00	; 0
+    1c3e:	06 c0       	rjmp	.+12     	; 0x1c4c <bom_refresh+0x6e>
+    1c40:	80 91 a3 06 	lds	r24, 0x06A3
+    1c44:	90 91 a4 06 	lds	r25, 0x06A4
+    1c48:	60 e0       	ldi	r22, 0x00	; 0
+    1c4a:	70 e0       	ldi	r23, 0x00	; 0
+    1c4c:	0e 94 b3 0f 	call	0x1f66	; 0x1f66 <digital_output>
+    1c50:	12 ff       	sbrs	r17, 2
+    1c52:	07 c0       	rjmp	.+14     	; 0x1c62 <bom_refresh+0x84>
+    1c54:	80 91 a1 06 	lds	r24, 0x06A1
+    1c58:	90 91 a2 06 	lds	r25, 0x06A2
+    1c5c:	61 e0       	ldi	r22, 0x01	; 1
     1c5e:	70 e0       	ldi	r23, 0x00	; 0
-    1c60:	0e 94 8a 0f 	call	0x1f14	; 0x1f14 <digital_output>
-    1c64:	80 91 b5 06 	lds	r24, 0x06B5
-    1c68:	90 91 b6 06 	lds	r25, 0x06B6
-    1c6c:	0e 94 df 1c 	call	0x39be	; 0x39be <analog_get8>
-    1c70:	f7 01       	movw	r30, r14
-    1c72:	91 83       	std	Z+1, r25	; 0x01
-    1c74:	80 83       	st	Z, r24
-    1c76:	21 96       	adiw	r28, 0x01	; 1
-    1c78:	82 e0       	ldi	r24, 0x02	; 2
-    1c7a:	90 e0       	ldi	r25, 0x00	; 0
-    1c7c:	e8 0e       	add	r14, r24
-    1c7e:	f9 1e       	adc	r15, r25
-    1c80:	c0 31       	cpi	r28, 0x10	; 16
-    1c82:	d1 05       	cpc	r29, r1
-    1c84:	19 f0       	breq	.+6      	; 0x1c8c <bom_refresh+0x100>
-    1c86:	d5 94       	asr	r13
-    1c88:	c7 94       	ror	r12
-    1c8a:	9c cf       	rjmp	.-200    	; 0x1bc4 <bom_refresh+0x38>
-    1c8c:	ab 28       	or	r10, r11
-    1c8e:	11 f0       	breq	.+4      	; 0x1c94 <bom_refresh+0x108>
-    1c90:	0e 94 c3 1c 	call	0x3986	; 0x3986 <analog_start_loop>
-    1c94:	df 91       	pop	r29
-    1c96:	cf 91       	pop	r28
-    1c98:	1f 91       	pop	r17
-    1c9a:	ff 90       	pop	r15
-    1c9c:	ef 90       	pop	r14
-    1c9e:	df 90       	pop	r13
-    1ca0:	cf 90       	pop	r12
-    1ca2:	bf 90       	pop	r11
-    1ca4:	af 90       	pop	r10
-    1ca6:	08 95       	ret
+    1c60:	06 c0       	rjmp	.+12     	; 0x1c6e <bom_refresh+0x90>
+    1c62:	80 91 a1 06 	lds	r24, 0x06A1
+    1c66:	90 91 a2 06 	lds	r25, 0x06A2
+    1c6a:	60 e0       	ldi	r22, 0x00	; 0
+    1c6c:	70 e0       	ldi	r23, 0x00	; 0
+    1c6e:	0e 94 b3 0f 	call	0x1f66	; 0x1f66 <digital_output>
+    1c72:	11 ff       	sbrs	r17, 1
+    1c74:	07 c0       	rjmp	.+14     	; 0x1c84 <bom_refresh+0xa6>
+    1c76:	80 91 9f 06 	lds	r24, 0x069F
+    1c7a:	90 91 a0 06 	lds	r25, 0x06A0
+    1c7e:	61 e0       	ldi	r22, 0x01	; 1
+    1c80:	70 e0       	ldi	r23, 0x00	; 0
+    1c82:	06 c0       	rjmp	.+12     	; 0x1c90 <bom_refresh+0xb2>
+    1c84:	80 91 9f 06 	lds	r24, 0x069F
+    1c88:	90 91 a0 06 	lds	r25, 0x06A0
+    1c8c:	60 e0       	ldi	r22, 0x00	; 0
+    1c8e:	70 e0       	ldi	r23, 0x00	; 0
+    1c90:	0e 94 b3 0f 	call	0x1f66	; 0x1f66 <digital_output>
+    1c94:	10 ff       	sbrs	r17, 0
+    1c96:	07 c0       	rjmp	.+14     	; 0x1ca6 <bom_refresh+0xc8>
+    1c98:	80 91 9d 06 	lds	r24, 0x069D
+    1c9c:	90 91 9e 06 	lds	r25, 0x069E
+    1ca0:	61 e0       	ldi	r22, 0x01	; 1
+    1ca2:	70 e0       	ldi	r23, 0x00	; 0
+    1ca4:	06 c0       	rjmp	.+12     	; 0x1cb2 <bom_refresh+0xd4>
+    1ca6:	80 91 9d 06 	lds	r24, 0x069D
+    1caa:	90 91 9e 06 	lds	r25, 0x069E
+    1cae:	60 e0       	ldi	r22, 0x00	; 0
+    1cb0:	70 e0       	ldi	r23, 0x00	; 0
+    1cb2:	0e 94 b3 0f 	call	0x1f66	; 0x1f66 <digital_output>
+    1cb6:	80 91 a5 06 	lds	r24, 0x06A5
+    1cba:	90 91 a6 06 	lds	r25, 0x06A6
+    1cbe:	0e 94 08 1d 	call	0x3a10	; 0x3a10 <analog_get8>
+    1cc2:	f7 01       	movw	r30, r14
+    1cc4:	91 83       	std	Z+1, r25	; 0x01
+    1cc6:	80 83       	st	Z, r24
+    1cc8:	21 96       	adiw	r28, 0x01	; 1
+    1cca:	82 e0       	ldi	r24, 0x02	; 2
+    1ccc:	90 e0       	ldi	r25, 0x00	; 0
+    1cce:	e8 0e       	add	r14, r24
+    1cd0:	f9 1e       	adc	r15, r25
+    1cd2:	c0 31       	cpi	r28, 0x10	; 16
+    1cd4:	d1 05       	cpc	r29, r1
+    1cd6:	19 f0       	breq	.+6      	; 0x1cde <bom_refresh+0x100>
+    1cd8:	d5 94       	asr	r13
+    1cda:	c7 94       	ror	r12
+    1cdc:	9c cf       	rjmp	.-200    	; 0x1c16 <bom_refresh+0x38>
+    1cde:	ab 28       	or	r10, r11
+    1ce0:	11 f0       	breq	.+4      	; 0x1ce6 <bom_refresh+0x108>
+    1ce2:	0e 94 ec 1c 	call	0x39d8	; 0x39d8 <analog_start_loop>
+    1ce6:	df 91       	pop	r29
+    1ce8:	cf 91       	pop	r28
+    1cea:	1f 91       	pop	r17
+    1cec:	ff 90       	pop	r15
+    1cee:	ef 90       	pop	r14
+    1cf0:	df 90       	pop	r13
+    1cf2:	cf 90       	pop	r12
+    1cf4:	bf 90       	pop	r11
+    1cf6:	af 90       	pop	r10
+    1cf8:	08 95       	ret
 
-00001ca8 <get_max_bom>:
-    1ca8:	8f ef       	ldi	r24, 0xFF	; 255
-    1caa:	9f ef       	ldi	r25, 0xFF	; 255
-    1cac:	0e 94 c6 0d 	call	0x1b8c	; 0x1b8c <bom_refresh>
-    1cb0:	ed e8       	ldi	r30, 0x8D	; 141
-    1cb2:	f6 e0       	ldi	r31, 0x06	; 6
-    1cb4:	20 e0       	ldi	r18, 0x00	; 0
-    1cb6:	30 e0       	ldi	r19, 0x00	; 0
-    1cb8:	8f ef       	ldi	r24, 0xFF	; 255
-    1cba:	90 e0       	ldi	r25, 0x00	; 0
-    1cbc:	6f ef       	ldi	r22, 0xFF	; 255
-    1cbe:	7f ef       	ldi	r23, 0xFF	; 255
-    1cc0:	40 81       	ld	r20, Z
-    1cc2:	51 81       	ldd	r21, Z+1	; 0x01
-    1cc4:	48 17       	cp	r20, r24
-    1cc6:	59 07       	cpc	r21, r25
-    1cc8:	10 f4       	brcc	.+4      	; 0x1cce <get_max_bom+0x26>
-    1cca:	ca 01       	movw	r24, r20
-    1ccc:	b9 01       	movw	r22, r18
-    1cce:	2f 5f       	subi	r18, 0xFF	; 255
-    1cd0:	3f 4f       	sbci	r19, 0xFF	; 255
-    1cd2:	32 96       	adiw	r30, 0x02	; 2
-    1cd4:	20 31       	cpi	r18, 0x10	; 16
-    1cd6:	31 05       	cpc	r19, r1
-    1cd8:	99 f7       	brne	.-26     	; 0x1cc0 <get_max_bom+0x18>
-    1cda:	86 39       	cpi	r24, 0x96	; 150
-    1cdc:	91 05       	cpc	r25, r1
-    1cde:	14 f0       	brlt	.+4      	; 0x1ce4 <get_max_bom+0x3c>
-    1ce0:	6f ef       	ldi	r22, 0xFF	; 255
-    1ce2:	7f ef       	ldi	r23, 0xFF	; 255
-    1ce4:	cb 01       	movw	r24, r22
-    1ce6:	08 95       	ret
+00001cfa <get_max_bom>:
+    1cfa:	8f ef       	ldi	r24, 0xFF	; 255
+    1cfc:	9f ef       	ldi	r25, 0xFF	; 255
+    1cfe:	0e 94 ef 0d 	call	0x1bde	; 0x1bde <bom_refresh>
+    1d02:	ed e7       	ldi	r30, 0x7D	; 125
+    1d04:	f6 e0       	ldi	r31, 0x06	; 6
+    1d06:	20 e0       	ldi	r18, 0x00	; 0
+    1d08:	30 e0       	ldi	r19, 0x00	; 0
+    1d0a:	8f ef       	ldi	r24, 0xFF	; 255
+    1d0c:	90 e0       	ldi	r25, 0x00	; 0
+    1d0e:	6f ef       	ldi	r22, 0xFF	; 255
+    1d10:	7f ef       	ldi	r23, 0xFF	; 255
+    1d12:	40 81       	ld	r20, Z
+    1d14:	51 81       	ldd	r21, Z+1	; 0x01
+    1d16:	48 17       	cp	r20, r24
+    1d18:	59 07       	cpc	r21, r25
+    1d1a:	10 f4       	brcc	.+4      	; 0x1d20 <get_max_bom+0x26>
+    1d1c:	ca 01       	movw	r24, r20
+    1d1e:	b9 01       	movw	r22, r18
+    1d20:	2f 5f       	subi	r18, 0xFF	; 255
+    1d22:	3f 4f       	sbci	r19, 0xFF	; 255
+    1d24:	32 96       	adiw	r30, 0x02	; 2
+    1d26:	20 31       	cpi	r18, 0x10	; 16
+    1d28:	31 05       	cpc	r19, r1
+    1d2a:	99 f7       	brne	.-26     	; 0x1d12 <get_max_bom+0x18>
+    1d2c:	86 39       	cpi	r24, 0x96	; 150
+    1d2e:	91 05       	cpc	r25, r1
+    1d30:	14 f0       	brlt	.+4      	; 0x1d36 <get_max_bom+0x3c>
+    1d32:	6f ef       	ldi	r22, 0xFF	; 255
+    1d34:	7f ef       	ldi	r23, 0xFF	; 255
+    1d36:	cb 01       	movw	r24, r22
+    1d38:	08 95       	ret
 
-00001ce8 <digital_input>:
-    1ce8:	ac 01       	movw	r20, r24
-    1cea:	47 70       	andi	r20, 0x07	; 7
-    1cec:	50 70       	andi	r21, 0x00	; 0
-    1cee:	9c 01       	movw	r18, r24
-    1cf0:	83 e0       	ldi	r24, 0x03	; 3
-    1cf2:	35 95       	asr	r19
-    1cf4:	27 95       	ror	r18
-    1cf6:	8a 95       	dec	r24
-    1cf8:	e1 f7       	brne	.-8      	; 0x1cf2 <digital_input+0xa>
-    1cfa:	24 30       	cpi	r18, 0x04	; 4
-    1cfc:	31 05       	cpc	r19, r1
-    1cfe:	09 f4       	brne	.+2      	; 0x1d02 <digital_input+0x1a>
-    1d00:	44 c0       	rjmp	.+136    	; 0x1d8a <digital_input+0xa2>
-    1d02:	25 30       	cpi	r18, 0x05	; 5
-    1d04:	31 05       	cpc	r19, r1
-    1d06:	54 f4       	brge	.+20     	; 0x1d1c <digital_input+0x34>
-    1d08:	22 30       	cpi	r18, 0x02	; 2
-    1d0a:	31 05       	cpc	r19, r1
-    1d0c:	11 f1       	breq	.+68     	; 0x1d52 <digital_input+0x6a>
-    1d0e:	23 30       	cpi	r18, 0x03	; 3
-    1d10:	31 05       	cpc	r19, r1
-    1d12:	6c f5       	brge	.+90     	; 0x1d6e <digital_input+0x86>
-    1d14:	21 30       	cpi	r18, 0x01	; 1
-    1d16:	31 05       	cpc	r19, r1
-    1d18:	61 f4       	brne	.+24     	; 0x1d32 <digital_input+0x4a>
-    1d1a:	0e c0       	rjmp	.+28     	; 0x1d38 <digital_input+0x50>
-    1d1c:	26 30       	cpi	r18, 0x06	; 6
-    1d1e:	31 05       	cpc	r19, r1
-    1d20:	09 f4       	brne	.+2      	; 0x1d24 <digital_input+0x3c>
-    1d22:	4f c0       	rjmp	.+158    	; 0x1dc2 <digital_input+0xda>
-    1d24:	26 30       	cpi	r18, 0x06	; 6
-    1d26:	31 05       	cpc	r19, r1
-    1d28:	f4 f1       	brlt	.+124    	; 0x1da6 <digital_input+0xbe>
-    1d2a:	27 30       	cpi	r18, 0x07	; 7
-    1d2c:	31 05       	cpc	r19, r1
-    1d2e:	09 f4       	brne	.+2      	; 0x1d32 <digital_input+0x4a>
-    1d30:	61 c0       	rjmp	.+194    	; 0x1df4 <digital_input+0x10c>
-    1d32:	2f ef       	ldi	r18, 0xFF	; 255
-    1d34:	3f ef       	ldi	r19, 0xFF	; 255
-    1d36:	77 c0       	rjmp	.+238    	; 0x1e26 <digital_input+0x13e>
-    1d38:	8a b3       	in	r24, 0x1a	; 26
-    1d3a:	04 2e       	mov	r0, r20
-    1d3c:	02 c0       	rjmp	.+4      	; 0x1d42 <digital_input+0x5a>
-    1d3e:	22 0f       	add	r18, r18
-    1d40:	33 1f       	adc	r19, r19
-    1d42:	0a 94       	dec	r0
-    1d44:	e2 f7       	brpl	.-8      	; 0x1d3e <digital_input+0x56>
-    1d46:	92 2f       	mov	r25, r18
-    1d48:	90 95       	com	r25
-    1d4a:	98 23       	and	r25, r24
-    1d4c:	9a bb       	out	0x1a, r25	; 26
-    1d4e:	89 b3       	in	r24, 0x19	; 25
-    1d50:	61 c0       	rjmp	.+194    	; 0x1e14 <digital_input+0x12c>
-    1d52:	87 b3       	in	r24, 0x17	; 23
-    1d54:	21 e0       	ldi	r18, 0x01	; 1
-    1d56:	30 e0       	ldi	r19, 0x00	; 0
-    1d58:	04 2e       	mov	r0, r20
-    1d5a:	02 c0       	rjmp	.+4      	; 0x1d60 <digital_input+0x78>
-    1d5c:	22 0f       	add	r18, r18
-    1d5e:	33 1f       	adc	r19, r19
-    1d60:	0a 94       	dec	r0
-    1d62:	e2 f7       	brpl	.-8      	; 0x1d5c <digital_input+0x74>
-    1d64:	20 95       	com	r18
-    1d66:	28 23       	and	r18, r24
-    1d68:	27 bb       	out	0x17, r18	; 23
-    1d6a:	86 b3       	in	r24, 0x16	; 22
-    1d6c:	53 c0       	rjmp	.+166    	; 0x1e14 <digital_input+0x12c>
-    1d6e:	84 b3       	in	r24, 0x14	; 20
-    1d70:	21 e0       	ldi	r18, 0x01	; 1
-    1d72:	30 e0       	ldi	r19, 0x00	; 0
-    1d74:	04 2e       	mov	r0, r20
-    1d76:	02 c0       	rjmp	.+4      	; 0x1d7c <digital_input+0x94>
-    1d78:	22 0f       	add	r18, r18
-    1d7a:	33 1f       	adc	r19, r19
-    1d7c:	0a 94       	dec	r0
-    1d7e:	e2 f7       	brpl	.-8      	; 0x1d78 <digital_input+0x90>
-    1d80:	20 95       	com	r18
-    1d82:	28 23       	and	r18, r24
-    1d84:	24 bb       	out	0x14, r18	; 20
-    1d86:	83 b3       	in	r24, 0x13	; 19
-    1d88:	45 c0       	rjmp	.+138    	; 0x1e14 <digital_input+0x12c>
-    1d8a:	81 b3       	in	r24, 0x11	; 17
-    1d8c:	21 e0       	ldi	r18, 0x01	; 1
-    1d8e:	30 e0       	ldi	r19, 0x00	; 0
-    1d90:	04 2e       	mov	r0, r20
-    1d92:	02 c0       	rjmp	.+4      	; 0x1d98 <digital_input+0xb0>
-    1d94:	22 0f       	add	r18, r18
-    1d96:	33 1f       	adc	r19, r19
-    1d98:	0a 94       	dec	r0
-    1d9a:	e2 f7       	brpl	.-8      	; 0x1d94 <digital_input+0xac>
-    1d9c:	20 95       	com	r18
-    1d9e:	28 23       	and	r18, r24
-    1da0:	21 bb       	out	0x11, r18	; 17
-    1da2:	80 b3       	in	r24, 0x10	; 16
-    1da4:	37 c0       	rjmp	.+110    	; 0x1e14 <digital_input+0x12c>
-    1da6:	82 b1       	in	r24, 0x02	; 2
-    1da8:	21 e0       	ldi	r18, 0x01	; 1
-    1daa:	30 e0       	ldi	r19, 0x00	; 0
-    1dac:	04 2e       	mov	r0, r20
-    1dae:	02 c0       	rjmp	.+4      	; 0x1db4 <digital_input+0xcc>
-    1db0:	22 0f       	add	r18, r18
-    1db2:	33 1f       	adc	r19, r19
-    1db4:	0a 94       	dec	r0
-    1db6:	e2 f7       	brpl	.-8      	; 0x1db0 <digital_input+0xc8>
-    1db8:	20 95       	com	r18
-    1dba:	28 23       	and	r18, r24
-    1dbc:	22 b9       	out	0x02, r18	; 2
-    1dbe:	81 b1       	in	r24, 0x01	; 1
-    1dc0:	29 c0       	rjmp	.+82     	; 0x1e14 <digital_input+0x12c>
-    1dc2:	44 30       	cpi	r20, 0x04	; 4
-    1dc4:	51 05       	cpc	r21, r1
-    1dc6:	34 f0       	brlt	.+12     	; 0x1dd4 <digital_input+0xec>
-    1dc8:	84 b7       	in	r24, 0x34	; 52
-    1dca:	80 68       	ori	r24, 0x80	; 128
-    1dcc:	84 bf       	out	0x34, r24	; 52
-    1dce:	84 b7       	in	r24, 0x34	; 52
-    1dd0:	80 68       	ori	r24, 0x80	; 128
-    1dd2:	84 bf       	out	0x34, r24	; 52
-    1dd4:	80 91 61 00 	lds	r24, 0x0061
-    1dd8:	21 e0       	ldi	r18, 0x01	; 1
-    1dda:	30 e0       	ldi	r19, 0x00	; 0
-    1ddc:	04 2e       	mov	r0, r20
-    1dde:	02 c0       	rjmp	.+4      	; 0x1de4 <digital_input+0xfc>
-    1de0:	22 0f       	add	r18, r18
-    1de2:	33 1f       	adc	r19, r19
-    1de4:	0a 94       	dec	r0
-    1de6:	e2 f7       	brpl	.-8      	; 0x1de0 <digital_input+0xf8>
-    1de8:	20 95       	com	r18
-    1dea:	28 23       	and	r18, r24
-    1dec:	20 93 61 00 	sts	0x0061, r18
-    1df0:	80 b1       	in	r24, 0x00	; 0
-    1df2:	10 c0       	rjmp	.+32     	; 0x1e14 <digital_input+0x12c>
-    1df4:	80 91 64 00 	lds	r24, 0x0064
-    1df8:	21 e0       	ldi	r18, 0x01	; 1
-    1dfa:	30 e0       	ldi	r19, 0x00	; 0
-    1dfc:	04 2e       	mov	r0, r20
-    1dfe:	02 c0       	rjmp	.+4      	; 0x1e04 <digital_input+0x11c>
-    1e00:	22 0f       	add	r18, r18
-    1e02:	33 1f       	adc	r19, r19
-    1e04:	0a 94       	dec	r0
-    1e06:	e2 f7       	brpl	.-8      	; 0x1e00 <digital_input+0x118>
-    1e08:	20 95       	com	r18
-    1e0a:	28 23       	and	r18, r24
-    1e0c:	20 93 64 00 	sts	0x0064, r18
-    1e10:	80 91 63 00 	lds	r24, 0x0063
-    1e14:	28 2f       	mov	r18, r24
-    1e16:	30 e0       	ldi	r19, 0x00	; 0
-    1e18:	02 c0       	rjmp	.+4      	; 0x1e1e <digital_input+0x136>
-    1e1a:	35 95       	asr	r19
-    1e1c:	27 95       	ror	r18
-    1e1e:	4a 95       	dec	r20
-    1e20:	e2 f7       	brpl	.-8      	; 0x1e1a <digital_input+0x132>
-    1e22:	21 70       	andi	r18, 0x01	; 1
-    1e24:	30 70       	andi	r19, 0x00	; 0
-    1e26:	c9 01       	movw	r24, r18
-    1e28:	08 95       	ret
+00001d3a <digital_input>:
+    1d3a:	ac 01       	movw	r20, r24
+    1d3c:	47 70       	andi	r20, 0x07	; 7
+    1d3e:	50 70       	andi	r21, 0x00	; 0
+    1d40:	9c 01       	movw	r18, r24
+    1d42:	83 e0       	ldi	r24, 0x03	; 3
+    1d44:	35 95       	asr	r19
+    1d46:	27 95       	ror	r18
+    1d48:	8a 95       	dec	r24
+    1d4a:	e1 f7       	brne	.-8      	; 0x1d44 <digital_input+0xa>
+    1d4c:	24 30       	cpi	r18, 0x04	; 4
+    1d4e:	31 05       	cpc	r19, r1
+    1d50:	09 f4       	brne	.+2      	; 0x1d54 <digital_input+0x1a>
+    1d52:	44 c0       	rjmp	.+136    	; 0x1ddc <digital_input+0xa2>
+    1d54:	25 30       	cpi	r18, 0x05	; 5
+    1d56:	31 05       	cpc	r19, r1
+    1d58:	54 f4       	brge	.+20     	; 0x1d6e <digital_input+0x34>
+    1d5a:	22 30       	cpi	r18, 0x02	; 2
+    1d5c:	31 05       	cpc	r19, r1
+    1d5e:	11 f1       	breq	.+68     	; 0x1da4 <digital_input+0x6a>
+    1d60:	23 30       	cpi	r18, 0x03	; 3
+    1d62:	31 05       	cpc	r19, r1
+    1d64:	6c f5       	brge	.+90     	; 0x1dc0 <digital_input+0x86>
+    1d66:	21 30       	cpi	r18, 0x01	; 1
+    1d68:	31 05       	cpc	r19, r1
+    1d6a:	61 f4       	brne	.+24     	; 0x1d84 <digital_input+0x4a>
+    1d6c:	0e c0       	rjmp	.+28     	; 0x1d8a <digital_input+0x50>
+    1d6e:	26 30       	cpi	r18, 0x06	; 6
+    1d70:	31 05       	cpc	r19, r1
+    1d72:	09 f4       	brne	.+2      	; 0x1d76 <digital_input+0x3c>
+    1d74:	4f c0       	rjmp	.+158    	; 0x1e14 <digital_input+0xda>
+    1d76:	26 30       	cpi	r18, 0x06	; 6
+    1d78:	31 05       	cpc	r19, r1
+    1d7a:	f4 f1       	brlt	.+124    	; 0x1df8 <digital_input+0xbe>
+    1d7c:	27 30       	cpi	r18, 0x07	; 7
+    1d7e:	31 05       	cpc	r19, r1
+    1d80:	09 f4       	brne	.+2      	; 0x1d84 <digital_input+0x4a>
+    1d82:	61 c0       	rjmp	.+194    	; 0x1e46 <digital_input+0x10c>
+    1d84:	2f ef       	ldi	r18, 0xFF	; 255
+    1d86:	3f ef       	ldi	r19, 0xFF	; 255
+    1d88:	77 c0       	rjmp	.+238    	; 0x1e78 <digital_input+0x13e>
+    1d8a:	8a b3       	in	r24, 0x1a	; 26
+    1d8c:	04 2e       	mov	r0, r20
+    1d8e:	02 c0       	rjmp	.+4      	; 0x1d94 <digital_input+0x5a>
+    1d90:	22 0f       	add	r18, r18
+    1d92:	33 1f       	adc	r19, r19
+    1d94:	0a 94       	dec	r0
+    1d96:	e2 f7       	brpl	.-8      	; 0x1d90 <digital_input+0x56>
+    1d98:	92 2f       	mov	r25, r18
+    1d9a:	90 95       	com	r25
+    1d9c:	98 23       	and	r25, r24
+    1d9e:	9a bb       	out	0x1a, r25	; 26
+    1da0:	89 b3       	in	r24, 0x19	; 25
+    1da2:	61 c0       	rjmp	.+194    	; 0x1e66 <digital_input+0x12c>
+    1da4:	87 b3       	in	r24, 0x17	; 23
+    1da6:	21 e0       	ldi	r18, 0x01	; 1
+    1da8:	30 e0       	ldi	r19, 0x00	; 0
+    1daa:	04 2e       	mov	r0, r20
+    1dac:	02 c0       	rjmp	.+4      	; 0x1db2 <digital_input+0x78>
+    1dae:	22 0f       	add	r18, r18
+    1db0:	33 1f       	adc	r19, r19
+    1db2:	0a 94       	dec	r0
+    1db4:	e2 f7       	brpl	.-8      	; 0x1dae <digital_input+0x74>
+    1db6:	20 95       	com	r18
+    1db8:	28 23       	and	r18, r24
+    1dba:	27 bb       	out	0x17, r18	; 23
+    1dbc:	86 b3       	in	r24, 0x16	; 22
+    1dbe:	53 c0       	rjmp	.+166    	; 0x1e66 <digital_input+0x12c>
+    1dc0:	84 b3       	in	r24, 0x14	; 20
+    1dc2:	21 e0       	ldi	r18, 0x01	; 1
+    1dc4:	30 e0       	ldi	r19, 0x00	; 0
+    1dc6:	04 2e       	mov	r0, r20
+    1dc8:	02 c0       	rjmp	.+4      	; 0x1dce <digital_input+0x94>
+    1dca:	22 0f       	add	r18, r18
+    1dcc:	33 1f       	adc	r19, r19
+    1dce:	0a 94       	dec	r0
+    1dd0:	e2 f7       	brpl	.-8      	; 0x1dca <digital_input+0x90>
+    1dd2:	20 95       	com	r18
+    1dd4:	28 23       	and	r18, r24
+    1dd6:	24 bb       	out	0x14, r18	; 20
+    1dd8:	83 b3       	in	r24, 0x13	; 19
+    1dda:	45 c0       	rjmp	.+138    	; 0x1e66 <digital_input+0x12c>
+    1ddc:	81 b3       	in	r24, 0x11	; 17
+    1dde:	21 e0       	ldi	r18, 0x01	; 1
+    1de0:	30 e0       	ldi	r19, 0x00	; 0
+    1de2:	04 2e       	mov	r0, r20
+    1de4:	02 c0       	rjmp	.+4      	; 0x1dea <digital_input+0xb0>
+    1de6:	22 0f       	add	r18, r18
+    1de8:	33 1f       	adc	r19, r19
+    1dea:	0a 94       	dec	r0
+    1dec:	e2 f7       	brpl	.-8      	; 0x1de6 <digital_input+0xac>
+    1dee:	20 95       	com	r18
+    1df0:	28 23       	and	r18, r24
+    1df2:	21 bb       	out	0x11, r18	; 17
+    1df4:	80 b3       	in	r24, 0x10	; 16
+    1df6:	37 c0       	rjmp	.+110    	; 0x1e66 <digital_input+0x12c>
+    1df8:	82 b1       	in	r24, 0x02	; 2
+    1dfa:	21 e0       	ldi	r18, 0x01	; 1
+    1dfc:	30 e0       	ldi	r19, 0x00	; 0
+    1dfe:	04 2e       	mov	r0, r20
+    1e00:	02 c0       	rjmp	.+4      	; 0x1e06 <digital_input+0xcc>
+    1e02:	22 0f       	add	r18, r18
+    1e04:	33 1f       	adc	r19, r19
+    1e06:	0a 94       	dec	r0
+    1e08:	e2 f7       	brpl	.-8      	; 0x1e02 <digital_input+0xc8>
+    1e0a:	20 95       	com	r18
+    1e0c:	28 23       	and	r18, r24
+    1e0e:	22 b9       	out	0x02, r18	; 2
+    1e10:	81 b1       	in	r24, 0x01	; 1
+    1e12:	29 c0       	rjmp	.+82     	; 0x1e66 <digital_input+0x12c>
+    1e14:	44 30       	cpi	r20, 0x04	; 4
+    1e16:	51 05       	cpc	r21, r1
+    1e18:	34 f0       	brlt	.+12     	; 0x1e26 <digital_input+0xec>
+    1e1a:	84 b7       	in	r24, 0x34	; 52
+    1e1c:	80 68       	ori	r24, 0x80	; 128
+    1e1e:	84 bf       	out	0x34, r24	; 52
+    1e20:	84 b7       	in	r24, 0x34	; 52
+    1e22:	80 68       	ori	r24, 0x80	; 128
+    1e24:	84 bf       	out	0x34, r24	; 52
+    1e26:	80 91 61 00 	lds	r24, 0x0061
+    1e2a:	21 e0       	ldi	r18, 0x01	; 1
+    1e2c:	30 e0       	ldi	r19, 0x00	; 0
+    1e2e:	04 2e       	mov	r0, r20
+    1e30:	02 c0       	rjmp	.+4      	; 0x1e36 <digital_input+0xfc>
+    1e32:	22 0f       	add	r18, r18
+    1e34:	33 1f       	adc	r19, r19
+    1e36:	0a 94       	dec	r0
+    1e38:	e2 f7       	brpl	.-8      	; 0x1e32 <digital_input+0xf8>
+    1e3a:	20 95       	com	r18
+    1e3c:	28 23       	and	r18, r24
+    1e3e:	20 93 61 00 	sts	0x0061, r18
+    1e42:	80 b1       	in	r24, 0x00	; 0
+    1e44:	10 c0       	rjmp	.+32     	; 0x1e66 <digital_input+0x12c>
+    1e46:	80 91 64 00 	lds	r24, 0x0064
+    1e4a:	21 e0       	ldi	r18, 0x01	; 1
+    1e4c:	30 e0       	ldi	r19, 0x00	; 0
+    1e4e:	04 2e       	mov	r0, r20
+    1e50:	02 c0       	rjmp	.+4      	; 0x1e56 <digital_input+0x11c>
+    1e52:	22 0f       	add	r18, r18
+    1e54:	33 1f       	adc	r19, r19
+    1e56:	0a 94       	dec	r0
+    1e58:	e2 f7       	brpl	.-8      	; 0x1e52 <digital_input+0x118>
+    1e5a:	20 95       	com	r18
+    1e5c:	28 23       	and	r18, r24
+    1e5e:	20 93 64 00 	sts	0x0064, r18
+    1e62:	80 91 63 00 	lds	r24, 0x0063
+    1e66:	28 2f       	mov	r18, r24
+    1e68:	30 e0       	ldi	r19, 0x00	; 0
+    1e6a:	02 c0       	rjmp	.+4      	; 0x1e70 <digital_input+0x136>
+    1e6c:	35 95       	asr	r19
+    1e6e:	27 95       	ror	r18
+    1e70:	4a 95       	dec	r20
+    1e72:	e2 f7       	brpl	.-8      	; 0x1e6c <digital_input+0x132>
+    1e74:	21 70       	andi	r18, 0x01	; 1
+    1e76:	30 70       	andi	r19, 0x00	; 0
+    1e78:	c9 01       	movw	r24, r18
+    1e7a:	08 95       	ret
 
-00001e2a <digital_pull_up>:
-    1e2a:	ac 01       	movw	r20, r24
-    1e2c:	47 70       	andi	r20, 0x07	; 7
-    1e2e:	50 70       	andi	r21, 0x00	; 0
-    1e30:	9c 01       	movw	r18, r24
-    1e32:	93 e0       	ldi	r25, 0x03	; 3
-    1e34:	35 95       	asr	r19
-    1e36:	27 95       	ror	r18
-    1e38:	9a 95       	dec	r25
-    1e3a:	e1 f7       	brne	.-8      	; 0x1e34 <digital_pull_up+0xa>
-    1e3c:	24 30       	cpi	r18, 0x04	; 4
-    1e3e:	31 05       	cpc	r19, r1
-    1e40:	c9 f1       	breq	.+114    	; 0x1eb4 <digital_pull_up+0x8a>
-    1e42:	25 30       	cpi	r18, 0x05	; 5
-    1e44:	31 05       	cpc	r19, r1
-    1e46:	5c f4       	brge	.+22     	; 0x1e5e <digital_pull_up+0x34>
-    1e48:	22 30       	cpi	r18, 0x02	; 2
-    1e4a:	31 05       	cpc	r19, r1
-    1e4c:	e9 f0       	breq	.+58     	; 0x1e88 <digital_pull_up+0x5e>
-    1e4e:	23 30       	cpi	r18, 0x03	; 3
-    1e50:	31 05       	cpc	r19, r1
-    1e52:	2c f5       	brge	.+74     	; 0x1e9e <digital_pull_up+0x74>
-    1e54:	21 30       	cpi	r18, 0x01	; 1
-    1e56:	31 05       	cpc	r19, r1
-    1e58:	09 f0       	breq	.+2      	; 0x1e5c <digital_pull_up+0x32>
-    1e5a:	5b c0       	rjmp	.+182    	; 0x1f12 <digital_pull_up+0xe8>
-    1e5c:	0c c0       	rjmp	.+24     	; 0x1e76 <digital_pull_up+0x4c>
-    1e5e:	26 30       	cpi	r18, 0x06	; 6
-    1e60:	31 05       	cpc	r19, r1
-    1e62:	09 f4       	brne	.+2      	; 0x1e66 <digital_pull_up+0x3c>
-    1e64:	3d c0       	rjmp	.+122    	; 0x1ee0 <digital_pull_up+0xb6>
-    1e66:	26 30       	cpi	r18, 0x06	; 6
-    1e68:	31 05       	cpc	r19, r1
-    1e6a:	7c f1       	brlt	.+94     	; 0x1eca <digital_pull_up+0xa0>
-    1e6c:	27 30       	cpi	r18, 0x07	; 7
-    1e6e:	31 05       	cpc	r19, r1
-    1e70:	09 f0       	breq	.+2      	; 0x1e74 <digital_pull_up+0x4a>
-    1e72:	4f c0       	rjmp	.+158    	; 0x1f12 <digital_pull_up+0xe8>
-    1e74:	42 c0       	rjmp	.+132    	; 0x1efa <digital_pull_up+0xd0>
-    1e76:	8b b3       	in	r24, 0x1b	; 27
-    1e78:	02 c0       	rjmp	.+4      	; 0x1e7e <digital_pull_up+0x54>
-    1e7a:	22 0f       	add	r18, r18
-    1e7c:	33 1f       	adc	r19, r19
-    1e7e:	4a 95       	dec	r20
-    1e80:	e2 f7       	brpl	.-8      	; 0x1e7a <digital_pull_up+0x50>
-    1e82:	82 2b       	or	r24, r18
-    1e84:	8b bb       	out	0x1b, r24	; 27
-    1e86:	08 95       	ret
-    1e88:	28 b3       	in	r18, 0x18	; 24
-    1e8a:	81 e0       	ldi	r24, 0x01	; 1
-    1e8c:	90 e0       	ldi	r25, 0x00	; 0
-    1e8e:	02 c0       	rjmp	.+4      	; 0x1e94 <digital_pull_up+0x6a>
-    1e90:	88 0f       	add	r24, r24
-    1e92:	99 1f       	adc	r25, r25
-    1e94:	4a 95       	dec	r20
-    1e96:	e2 f7       	brpl	.-8      	; 0x1e90 <digital_pull_up+0x66>
-    1e98:	28 2b       	or	r18, r24
-    1e9a:	28 bb       	out	0x18, r18	; 24
-    1e9c:	08 95       	ret
-    1e9e:	25 b3       	in	r18, 0x15	; 21
-    1ea0:	81 e0       	ldi	r24, 0x01	; 1
-    1ea2:	90 e0       	ldi	r25, 0x00	; 0
-    1ea4:	02 c0       	rjmp	.+4      	; 0x1eaa <digital_pull_up+0x80>
-    1ea6:	88 0f       	add	r24, r24
-    1ea8:	99 1f       	adc	r25, r25
-    1eaa:	4a 95       	dec	r20
-    1eac:	e2 f7       	brpl	.-8      	; 0x1ea6 <digital_pull_up+0x7c>
-    1eae:	28 2b       	or	r18, r24
-    1eb0:	25 bb       	out	0x15, r18	; 21
-    1eb2:	08 95       	ret
-    1eb4:	22 b3       	in	r18, 0x12	; 18
-    1eb6:	81 e0       	ldi	r24, 0x01	; 1
-    1eb8:	90 e0       	ldi	r25, 0x00	; 0
-    1eba:	02 c0       	rjmp	.+4      	; 0x1ec0 <digital_pull_up+0x96>
-    1ebc:	88 0f       	add	r24, r24
-    1ebe:	99 1f       	adc	r25, r25
-    1ec0:	4a 95       	dec	r20
-    1ec2:	e2 f7       	brpl	.-8      	; 0x1ebc <digital_pull_up+0x92>
-    1ec4:	28 2b       	or	r18, r24
-    1ec6:	22 bb       	out	0x12, r18	; 18
-    1ec8:	08 95       	ret
-    1eca:	23 b1       	in	r18, 0x03	; 3
-    1ecc:	81 e0       	ldi	r24, 0x01	; 1
-    1ece:	90 e0       	ldi	r25, 0x00	; 0
-    1ed0:	02 c0       	rjmp	.+4      	; 0x1ed6 <digital_pull_up+0xac>
-    1ed2:	88 0f       	add	r24, r24
-    1ed4:	99 1f       	adc	r25, r25
-    1ed6:	4a 95       	dec	r20
-    1ed8:	e2 f7       	brpl	.-8      	; 0x1ed2 <digital_pull_up+0xa8>
-    1eda:	28 2b       	or	r18, r24
-    1edc:	23 b9       	out	0x03, r18	; 3
-    1ede:	08 95       	ret
-    1ee0:	20 91 62 00 	lds	r18, 0x0062
-    1ee4:	81 e0       	ldi	r24, 0x01	; 1
-    1ee6:	90 e0       	ldi	r25, 0x00	; 0
-    1ee8:	02 c0       	rjmp	.+4      	; 0x1eee <digital_pull_up+0xc4>
-    1eea:	88 0f       	add	r24, r24
-    1eec:	99 1f       	adc	r25, r25
-    1eee:	4a 95       	dec	r20
-    1ef0:	e2 f7       	brpl	.-8      	; 0x1eea <digital_pull_up+0xc0>
-    1ef2:	28 2b       	or	r18, r24
-    1ef4:	20 93 62 00 	sts	0x0062, r18
-    1ef8:	08 95       	ret
-    1efa:	20 91 65 00 	lds	r18, 0x0065
-    1efe:	81 e0       	ldi	r24, 0x01	; 1
-    1f00:	90 e0       	ldi	r25, 0x00	; 0
-    1f02:	02 c0       	rjmp	.+4      	; 0x1f08 <digital_pull_up+0xde>
-    1f04:	88 0f       	add	r24, r24
-    1f06:	99 1f       	adc	r25, r25
-    1f08:	4a 95       	dec	r20
-    1f0a:	e2 f7       	brpl	.-8      	; 0x1f04 <digital_pull_up+0xda>
-    1f0c:	28 2b       	or	r18, r24
-    1f0e:	20 93 65 00 	sts	0x0065, r18
-    1f12:	08 95       	ret
+00001e7c <digital_pull_up>:
+    1e7c:	ac 01       	movw	r20, r24
+    1e7e:	47 70       	andi	r20, 0x07	; 7
+    1e80:	50 70       	andi	r21, 0x00	; 0
+    1e82:	9c 01       	movw	r18, r24
+    1e84:	93 e0       	ldi	r25, 0x03	; 3
+    1e86:	35 95       	asr	r19
+    1e88:	27 95       	ror	r18
+    1e8a:	9a 95       	dec	r25
+    1e8c:	e1 f7       	brne	.-8      	; 0x1e86 <digital_pull_up+0xa>
+    1e8e:	24 30       	cpi	r18, 0x04	; 4
+    1e90:	31 05       	cpc	r19, r1
+    1e92:	c9 f1       	breq	.+114    	; 0x1f06 <digital_pull_up+0x8a>
+    1e94:	25 30       	cpi	r18, 0x05	; 5
+    1e96:	31 05       	cpc	r19, r1
+    1e98:	5c f4       	brge	.+22     	; 0x1eb0 <digital_pull_up+0x34>
+    1e9a:	22 30       	cpi	r18, 0x02	; 2
+    1e9c:	31 05       	cpc	r19, r1
+    1e9e:	e9 f0       	breq	.+58     	; 0x1eda <digital_pull_up+0x5e>
+    1ea0:	23 30       	cpi	r18, 0x03	; 3
+    1ea2:	31 05       	cpc	r19, r1
+    1ea4:	2c f5       	brge	.+74     	; 0x1ef0 <digital_pull_up+0x74>
+    1ea6:	21 30       	cpi	r18, 0x01	; 1
+    1ea8:	31 05       	cpc	r19, r1
+    1eaa:	09 f0       	breq	.+2      	; 0x1eae <digital_pull_up+0x32>
+    1eac:	5b c0       	rjmp	.+182    	; 0x1f64 <digital_pull_up+0xe8>
+    1eae:	0c c0       	rjmp	.+24     	; 0x1ec8 <digital_pull_up+0x4c>
+    1eb0:	26 30       	cpi	r18, 0x06	; 6
+    1eb2:	31 05       	cpc	r19, r1
+    1eb4:	09 f4       	brne	.+2      	; 0x1eb8 <digital_pull_up+0x3c>
+    1eb6:	3d c0       	rjmp	.+122    	; 0x1f32 <digital_pull_up+0xb6>
+    1eb8:	26 30       	cpi	r18, 0x06	; 6
+    1eba:	31 05       	cpc	r19, r1
+    1ebc:	7c f1       	brlt	.+94     	; 0x1f1c <digital_pull_up+0xa0>
+    1ebe:	27 30       	cpi	r18, 0x07	; 7
+    1ec0:	31 05       	cpc	r19, r1
+    1ec2:	09 f0       	breq	.+2      	; 0x1ec6 <digital_pull_up+0x4a>
+    1ec4:	4f c0       	rjmp	.+158    	; 0x1f64 <digital_pull_up+0xe8>
+    1ec6:	42 c0       	rjmp	.+132    	; 0x1f4c <digital_pull_up+0xd0>
+    1ec8:	8b b3       	in	r24, 0x1b	; 27
+    1eca:	02 c0       	rjmp	.+4      	; 0x1ed0 <digital_pull_up+0x54>
+    1ecc:	22 0f       	add	r18, r18
+    1ece:	33 1f       	adc	r19, r19
+    1ed0:	4a 95       	dec	r20
+    1ed2:	e2 f7       	brpl	.-8      	; 0x1ecc <digital_pull_up+0x50>
+    1ed4:	82 2b       	or	r24, r18
+    1ed6:	8b bb       	out	0x1b, r24	; 27
+    1ed8:	08 95       	ret
+    1eda:	28 b3       	in	r18, 0x18	; 24
+    1edc:	81 e0       	ldi	r24, 0x01	; 1
+    1ede:	90 e0       	ldi	r25, 0x00	; 0
+    1ee0:	02 c0       	rjmp	.+4      	; 0x1ee6 <digital_pull_up+0x6a>
+    1ee2:	88 0f       	add	r24, r24
+    1ee4:	99 1f       	adc	r25, r25
+    1ee6:	4a 95       	dec	r20
+    1ee8:	e2 f7       	brpl	.-8      	; 0x1ee2 <digital_pull_up+0x66>
+    1eea:	28 2b       	or	r18, r24
+    1eec:	28 bb       	out	0x18, r18	; 24
+    1eee:	08 95       	ret
+    1ef0:	25 b3       	in	r18, 0x15	; 21
+    1ef2:	81 e0       	ldi	r24, 0x01	; 1
+    1ef4:	90 e0       	ldi	r25, 0x00	; 0
+    1ef6:	02 c0       	rjmp	.+4      	; 0x1efc <digital_pull_up+0x80>
+    1ef8:	88 0f       	add	r24, r24
+    1efa:	99 1f       	adc	r25, r25
+    1efc:	4a 95       	dec	r20
+    1efe:	e2 f7       	brpl	.-8      	; 0x1ef8 <digital_pull_up+0x7c>
+    1f00:	28 2b       	or	r18, r24
+    1f02:	25 bb       	out	0x15, r18	; 21
+    1f04:	08 95       	ret
+    1f06:	22 b3       	in	r18, 0x12	; 18
+    1f08:	81 e0       	ldi	r24, 0x01	; 1
+    1f0a:	90 e0       	ldi	r25, 0x00	; 0
+    1f0c:	02 c0       	rjmp	.+4      	; 0x1f12 <digital_pull_up+0x96>
+    1f0e:	88 0f       	add	r24, r24
+    1f10:	99 1f       	adc	r25, r25
+    1f12:	4a 95       	dec	r20
+    1f14:	e2 f7       	brpl	.-8      	; 0x1f0e <digital_pull_up+0x92>
+    1f16:	28 2b       	or	r18, r24
+    1f18:	22 bb       	out	0x12, r18	; 18
+    1f1a:	08 95       	ret
+    1f1c:	23 b1       	in	r18, 0x03	; 3
+    1f1e:	81 e0       	ldi	r24, 0x01	; 1
+    1f20:	90 e0       	ldi	r25, 0x00	; 0
+    1f22:	02 c0       	rjmp	.+4      	; 0x1f28 <digital_pull_up+0xac>
+    1f24:	88 0f       	add	r24, r24
+    1f26:	99 1f       	adc	r25, r25
+    1f28:	4a 95       	dec	r20
+    1f2a:	e2 f7       	brpl	.-8      	; 0x1f24 <digital_pull_up+0xa8>
+    1f2c:	28 2b       	or	r18, r24
+    1f2e:	23 b9       	out	0x03, r18	; 3
+    1f30:	08 95       	ret
+    1f32:	20 91 62 00 	lds	r18, 0x0062
+    1f36:	81 e0       	ldi	r24, 0x01	; 1
+    1f38:	90 e0       	ldi	r25, 0x00	; 0
+    1f3a:	02 c0       	rjmp	.+4      	; 0x1f40 <digital_pull_up+0xc4>
+    1f3c:	88 0f       	add	r24, r24
+    1f3e:	99 1f       	adc	r25, r25
+    1f40:	4a 95       	dec	r20
+    1f42:	e2 f7       	brpl	.-8      	; 0x1f3c <digital_pull_up+0xc0>
+    1f44:	28 2b       	or	r18, r24
+    1f46:	20 93 62 00 	sts	0x0062, r18
+    1f4a:	08 95       	ret
+    1f4c:	20 91 65 00 	lds	r18, 0x0065
+    1f50:	81 e0       	ldi	r24, 0x01	; 1
+    1f52:	90 e0       	ldi	r25, 0x00	; 0
+    1f54:	02 c0       	rjmp	.+4      	; 0x1f5a <digital_pull_up+0xde>
+    1f56:	88 0f       	add	r24, r24
+    1f58:	99 1f       	adc	r25, r25
+    1f5a:	4a 95       	dec	r20
+    1f5c:	e2 f7       	brpl	.-8      	; 0x1f56 <digital_pull_up+0xda>
+    1f5e:	28 2b       	or	r18, r24
+    1f60:	20 93 65 00 	sts	0x0065, r18
+    1f64:	08 95       	ret
 
-00001f14 <digital_output>:
-    1f14:	ac 01       	movw	r20, r24
-    1f16:	47 70       	andi	r20, 0x07	; 7
-    1f18:	50 70       	andi	r21, 0x00	; 0
-    1f1a:	9c 01       	movw	r18, r24
-    1f1c:	53 e0       	ldi	r21, 0x03	; 3
-    1f1e:	35 95       	asr	r19
-    1f20:	27 95       	ror	r18
-    1f22:	5a 95       	dec	r21
-    1f24:	e1 f7       	brne	.-8      	; 0x1f1e <digital_output+0xa>
-    1f26:	67 2b       	or	r22, r23
-    1f28:	09 f0       	breq	.+2      	; 0x1f2c <digital_output+0x18>
-    1f2a:	88 c0       	rjmp	.+272    	; 0x203c <digital_output+0x128>
-    1f2c:	24 30       	cpi	r18, 0x04	; 4
-    1f2e:	31 05       	cpc	r19, r1
-    1f30:	09 f4       	brne	.+2      	; 0x1f34 <digital_output+0x20>
-    1f32:	44 c0       	rjmp	.+136    	; 0x1fbc <digital_output+0xa8>
-    1f34:	25 30       	cpi	r18, 0x05	; 5
-    1f36:	31 05       	cpc	r19, r1
-    1f38:	5c f4       	brge	.+22     	; 0x1f50 <digital_output+0x3c>
-    1f3a:	22 30       	cpi	r18, 0x02	; 2
-    1f3c:	31 05       	cpc	r19, r1
-    1f3e:	11 f1       	breq	.+68     	; 0x1f84 <digital_output+0x70>
-    1f40:	23 30       	cpi	r18, 0x03	; 3
-    1f42:	31 05       	cpc	r19, r1
-    1f44:	6c f5       	brge	.+90     	; 0x1fa0 <digital_output+0x8c>
-    1f46:	21 30       	cpi	r18, 0x01	; 1
-    1f48:	31 05       	cpc	r19, r1
-    1f4a:	09 f0       	breq	.+2      	; 0x1f4e <digital_output+0x3a>
-    1f4c:	fe c0       	rjmp	.+508    	; 0x214a <digital_output+0x236>
-    1f4e:	0d c0       	rjmp	.+26     	; 0x1f6a <digital_output+0x56>
-    1f50:	26 30       	cpi	r18, 0x06	; 6
-    1f52:	31 05       	cpc	r19, r1
-    1f54:	09 f4       	brne	.+2      	; 0x1f58 <digital_output+0x44>
-    1f56:	4e c0       	rjmp	.+156    	; 0x1ff4 <digital_output+0xe0>
-    1f58:	26 30       	cpi	r18, 0x06	; 6
-    1f5a:	31 05       	cpc	r19, r1
-    1f5c:	0c f4       	brge	.+2      	; 0x1f60 <digital_output+0x4c>
-    1f5e:	3c c0       	rjmp	.+120    	; 0x1fd8 <digital_output+0xc4>
-    1f60:	27 30       	cpi	r18, 0x07	; 7
-    1f62:	31 05       	cpc	r19, r1
-    1f64:	09 f0       	breq	.+2      	; 0x1f68 <digital_output+0x54>
-    1f66:	f1 c0       	rjmp	.+482    	; 0x214a <digital_output+0x236>
-    1f68:	56 c0       	rjmp	.+172    	; 0x2016 <digital_output+0x102>
-    1f6a:	8a b3       	in	r24, 0x1a	; 26
-    1f6c:	02 c0       	rjmp	.+4      	; 0x1f72 <digital_output+0x5e>
-    1f6e:	22 0f       	add	r18, r18
-    1f70:	33 1f       	adc	r19, r19
-    1f72:	4a 95       	dec	r20
-    1f74:	e2 f7       	brpl	.-8      	; 0x1f6e <digital_output+0x5a>
-    1f76:	82 2b       	or	r24, r18
-    1f78:	8a bb       	out	0x1a, r24	; 26
-    1f7a:	8b b3       	in	r24, 0x1b	; 27
-    1f7c:	20 95       	com	r18
-    1f7e:	28 23       	and	r18, r24
-    1f80:	2b bb       	out	0x1b, r18	; 27
-    1f82:	08 95       	ret
-    1f84:	87 b3       	in	r24, 0x17	; 23
-    1f86:	21 e0       	ldi	r18, 0x01	; 1
-    1f88:	30 e0       	ldi	r19, 0x00	; 0
-    1f8a:	02 c0       	rjmp	.+4      	; 0x1f90 <digital_output+0x7c>
-    1f8c:	22 0f       	add	r18, r18
-    1f8e:	33 1f       	adc	r19, r19
-    1f90:	4a 95       	dec	r20
-    1f92:	e2 f7       	brpl	.-8      	; 0x1f8c <digital_output+0x78>
-    1f94:	82 2b       	or	r24, r18
-    1f96:	87 bb       	out	0x17, r24	; 23
-    1f98:	88 b3       	in	r24, 0x18	; 24
-    1f9a:	20 95       	com	r18
-    1f9c:	28 23       	and	r18, r24
-    1f9e:	86 c0       	rjmp	.+268    	; 0x20ac <digital_output+0x198>
-    1fa0:	84 b3       	in	r24, 0x14	; 20
-    1fa2:	21 e0       	ldi	r18, 0x01	; 1
-    1fa4:	30 e0       	ldi	r19, 0x00	; 0
-    1fa6:	02 c0       	rjmp	.+4      	; 0x1fac <digital_output+0x98>
-    1fa8:	22 0f       	add	r18, r18
-    1faa:	33 1f       	adc	r19, r19
-    1fac:	4a 95       	dec	r20
-    1fae:	e2 f7       	brpl	.-8      	; 0x1fa8 <digital_output+0x94>
-    1fb0:	82 2b       	or	r24, r18
-    1fb2:	84 bb       	out	0x14, r24	; 20
-    1fb4:	85 b3       	in	r24, 0x15	; 21
-    1fb6:	20 95       	com	r18
-    1fb8:	28 23       	and	r18, r24
-    1fba:	86 c0       	rjmp	.+268    	; 0x20c8 <digital_output+0x1b4>
-    1fbc:	81 b3       	in	r24, 0x11	; 17
-    1fbe:	21 e0       	ldi	r18, 0x01	; 1
-    1fc0:	30 e0       	ldi	r19, 0x00	; 0
-    1fc2:	02 c0       	rjmp	.+4      	; 0x1fc8 <digital_output+0xb4>
-    1fc4:	22 0f       	add	r18, r18
-    1fc6:	33 1f       	adc	r19, r19
-    1fc8:	4a 95       	dec	r20
-    1fca:	e2 f7       	brpl	.-8      	; 0x1fc4 <digital_output+0xb0>
-    1fcc:	82 2b       	or	r24, r18
-    1fce:	81 bb       	out	0x11, r24	; 17
-    1fd0:	82 b3       	in	r24, 0x12	; 18
-    1fd2:	20 95       	com	r18
-    1fd4:	28 23       	and	r18, r24
-    1fd6:	86 c0       	rjmp	.+268    	; 0x20e4 <digital_output+0x1d0>
-    1fd8:	82 b1       	in	r24, 0x02	; 2
-    1fda:	21 e0       	ldi	r18, 0x01	; 1
-    1fdc:	30 e0       	ldi	r19, 0x00	; 0
-    1fde:	02 c0       	rjmp	.+4      	; 0x1fe4 <digital_output+0xd0>
-    1fe0:	22 0f       	add	r18, r18
-    1fe2:	33 1f       	adc	r19, r19
-    1fe4:	4a 95       	dec	r20
-    1fe6:	e2 f7       	brpl	.-8      	; 0x1fe0 <digital_output+0xcc>
-    1fe8:	82 2b       	or	r24, r18
-    1fea:	82 b9       	out	0x02, r24	; 2
-    1fec:	83 b1       	in	r24, 0x03	; 3
-    1fee:	20 95       	com	r18
-    1ff0:	28 23       	and	r18, r24
-    1ff2:	86 c0       	rjmp	.+268    	; 0x2100 <digital_output+0x1ec>
-    1ff4:	80 91 61 00 	lds	r24, 0x0061
-    1ff8:	21 e0       	ldi	r18, 0x01	; 1
-    1ffa:	30 e0       	ldi	r19, 0x00	; 0
-    1ffc:	02 c0       	rjmp	.+4      	; 0x2002 <digital_output+0xee>
-    1ffe:	22 0f       	add	r18, r18
-    2000:	33 1f       	adc	r19, r19
-    2002:	4a 95       	dec	r20
-    2004:	e2 f7       	brpl	.-8      	; 0x1ffe <digital_output+0xea>
-    2006:	82 2b       	or	r24, r18
-    2008:	80 93 61 00 	sts	0x0061, r24
-    200c:	80 91 62 00 	lds	r24, 0x0062
-    2010:	20 95       	com	r18
-    2012:	28 23       	and	r18, r24
-    2014:	86 c0       	rjmp	.+268    	; 0x2122 <digital_output+0x20e>
-    2016:	80 91 64 00 	lds	r24, 0x0064
-    201a:	21 e0       	ldi	r18, 0x01	; 1
-    201c:	30 e0       	ldi	r19, 0x00	; 0
-    201e:	02 c0       	rjmp	.+4      	; 0x2024 <digital_output+0x110>
-    2020:	22 0f       	add	r18, r18
-    2022:	33 1f       	adc	r19, r19
-    2024:	4a 95       	dec	r20
-    2026:	e2 f7       	brpl	.-8      	; 0x2020 <digital_output+0x10c>
-    2028:	82 2b       	or	r24, r18
-    202a:	80 93 64 00 	sts	0x0064, r24
-    202e:	80 91 65 00 	lds	r24, 0x0065
-    2032:	20 95       	com	r18
-    2034:	28 23       	and	r18, r24
-    2036:	20 93 65 00 	sts	0x0065, r18
-    203a:	08 95       	ret
-    203c:	24 30       	cpi	r18, 0x04	; 4
-    203e:	31 05       	cpc	r19, r1
-    2040:	09 f4       	brne	.+2      	; 0x2044 <digital_output+0x130>
-    2042:	44 c0       	rjmp	.+136    	; 0x20cc <digital_output+0x1b8>
-    2044:	25 30       	cpi	r18, 0x05	; 5
-    2046:	31 05       	cpc	r19, r1
-    2048:	5c f4       	brge	.+22     	; 0x2060 <digital_output+0x14c>
-    204a:	22 30       	cpi	r18, 0x02	; 2
-    204c:	31 05       	cpc	r19, r1
-    204e:	11 f1       	breq	.+68     	; 0x2094 <digital_output+0x180>
-    2050:	23 30       	cpi	r18, 0x03	; 3
-    2052:	31 05       	cpc	r19, r1
-    2054:	6c f5       	brge	.+90     	; 0x20b0 <digital_output+0x19c>
-    2056:	21 30       	cpi	r18, 0x01	; 1
-    2058:	31 05       	cpc	r19, r1
-    205a:	09 f0       	breq	.+2      	; 0x205e <digital_output+0x14a>
-    205c:	76 c0       	rjmp	.+236    	; 0x214a <digital_output+0x236>
-    205e:	0d c0       	rjmp	.+26     	; 0x207a <digital_output+0x166>
-    2060:	26 30       	cpi	r18, 0x06	; 6
-    2062:	31 05       	cpc	r19, r1
-    2064:	09 f4       	brne	.+2      	; 0x2068 <digital_output+0x154>
-    2066:	4e c0       	rjmp	.+156    	; 0x2104 <digital_output+0x1f0>
-    2068:	26 30       	cpi	r18, 0x06	; 6
-    206a:	31 05       	cpc	r19, r1
-    206c:	0c f4       	brge	.+2      	; 0x2070 <digital_output+0x15c>
-    206e:	3c c0       	rjmp	.+120    	; 0x20e8 <digital_output+0x1d4>
-    2070:	27 30       	cpi	r18, 0x07	; 7
-    2072:	31 05       	cpc	r19, r1
-    2074:	09 f0       	breq	.+2      	; 0x2078 <digital_output+0x164>
-    2076:	69 c0       	rjmp	.+210    	; 0x214a <digital_output+0x236>
-    2078:	57 c0       	rjmp	.+174    	; 0x2128 <digital_output+0x214>
-    207a:	8a b3       	in	r24, 0x1a	; 26
-    207c:	02 c0       	rjmp	.+4      	; 0x2082 <digital_output+0x16e>
-    207e:	22 0f       	add	r18, r18
-    2080:	33 1f       	adc	r19, r19
-    2082:	4a 95       	dec	r20
-    2084:	e2 f7       	brpl	.-8      	; 0x207e <digital_output+0x16a>
-    2086:	92 2f       	mov	r25, r18
-    2088:	82 2b       	or	r24, r18
-    208a:	8a bb       	out	0x1a, r24	; 26
-    208c:	8b b3       	in	r24, 0x1b	; 27
-    208e:	98 2b       	or	r25, r24
-    2090:	9b bb       	out	0x1b, r25	; 27
-    2092:	08 95       	ret
-    2094:	87 b3       	in	r24, 0x17	; 23
-    2096:	21 e0       	ldi	r18, 0x01	; 1
-    2098:	30 e0       	ldi	r19, 0x00	; 0
-    209a:	02 c0       	rjmp	.+4      	; 0x20a0 <digital_output+0x18c>
-    209c:	22 0f       	add	r18, r18
-    209e:	33 1f       	adc	r19, r19
-    20a0:	4a 95       	dec	r20
-    20a2:	e2 f7       	brpl	.-8      	; 0x209c <digital_output+0x188>
-    20a4:	82 2b       	or	r24, r18
-    20a6:	87 bb       	out	0x17, r24	; 23
-    20a8:	88 b3       	in	r24, 0x18	; 24
-    20aa:	28 2b       	or	r18, r24
-    20ac:	28 bb       	out	0x18, r18	; 24
-    20ae:	08 95       	ret
-    20b0:	84 b3       	in	r24, 0x14	; 20
-    20b2:	21 e0       	ldi	r18, 0x01	; 1
-    20b4:	30 e0       	ldi	r19, 0x00	; 0
-    20b6:	02 c0       	rjmp	.+4      	; 0x20bc <digital_output+0x1a8>
-    20b8:	22 0f       	add	r18, r18
-    20ba:	33 1f       	adc	r19, r19
-    20bc:	4a 95       	dec	r20
-    20be:	e2 f7       	brpl	.-8      	; 0x20b8 <digital_output+0x1a4>
-    20c0:	82 2b       	or	r24, r18
-    20c2:	84 bb       	out	0x14, r24	; 20
-    20c4:	85 b3       	in	r24, 0x15	; 21
-    20c6:	28 2b       	or	r18, r24
-    20c8:	25 bb       	out	0x15, r18	; 21
-    20ca:	08 95       	ret
-    20cc:	81 b3       	in	r24, 0x11	; 17
-    20ce:	21 e0       	ldi	r18, 0x01	; 1
-    20d0:	30 e0       	ldi	r19, 0x00	; 0
-    20d2:	02 c0       	rjmp	.+4      	; 0x20d8 <digital_output+0x1c4>
-    20d4:	22 0f       	add	r18, r18
-    20d6:	33 1f       	adc	r19, r19
-    20d8:	4a 95       	dec	r20
-    20da:	e2 f7       	brpl	.-8      	; 0x20d4 <digital_output+0x1c0>
-    20dc:	82 2b       	or	r24, r18
-    20de:	81 bb       	out	0x11, r24	; 17
-    20e0:	82 b3       	in	r24, 0x12	; 18
-    20e2:	28 2b       	or	r18, r24
-    20e4:	22 bb       	out	0x12, r18	; 18
-    20e6:	08 95       	ret
-    20e8:	82 b1       	in	r24, 0x02	; 2
-    20ea:	21 e0       	ldi	r18, 0x01	; 1
-    20ec:	30 e0       	ldi	r19, 0x00	; 0
-    20ee:	02 c0       	rjmp	.+4      	; 0x20f4 <digital_output+0x1e0>
-    20f0:	22 0f       	add	r18, r18
-    20f2:	33 1f       	adc	r19, r19
-    20f4:	4a 95       	dec	r20
-    20f6:	e2 f7       	brpl	.-8      	; 0x20f0 <digital_output+0x1dc>
-    20f8:	82 2b       	or	r24, r18
-    20fa:	82 b9       	out	0x02, r24	; 2
-    20fc:	83 b1       	in	r24, 0x03	; 3
-    20fe:	28 2b       	or	r18, r24
-    2100:	23 b9       	out	0x03, r18	; 3
-    2102:	08 95       	ret
-    2104:	80 91 61 00 	lds	r24, 0x0061
-    2108:	21 e0       	ldi	r18, 0x01	; 1
-    210a:	30 e0       	ldi	r19, 0x00	; 0
-    210c:	02 c0       	rjmp	.+4      	; 0x2112 <digital_output+0x1fe>
-    210e:	22 0f       	add	r18, r18
-    2110:	33 1f       	adc	r19, r19
-    2112:	4a 95       	dec	r20
-    2114:	e2 f7       	brpl	.-8      	; 0x210e <digital_output+0x1fa>
-    2116:	82 2b       	or	r24, r18
-    2118:	80 93 61 00 	sts	0x0061, r24
-    211c:	80 91 62 00 	lds	r24, 0x0062
-    2120:	28 2b       	or	r18, r24
-    2122:	20 93 62 00 	sts	0x0062, r18
-    2126:	08 95       	ret
-    2128:	80 91 64 00 	lds	r24, 0x0064
-    212c:	21 e0       	ldi	r18, 0x01	; 1
-    212e:	30 e0       	ldi	r19, 0x00	; 0
-    2130:	02 c0       	rjmp	.+4      	; 0x2136 <digital_output+0x222>
-    2132:	22 0f       	add	r18, r18
-    2134:	33 1f       	adc	r19, r19
-    2136:	4a 95       	dec	r20
-    2138:	e2 f7       	brpl	.-8      	; 0x2132 <digital_output+0x21e>
-    213a:	82 2b       	or	r24, r18
-    213c:	80 93 64 00 	sts	0x0064, r24
-    2140:	80 91 65 00 	lds	r24, 0x0065
-    2144:	28 2b       	or	r18, r24
-    2146:	20 93 65 00 	sts	0x0065, r18
-    214a:	08 95       	ret
+00001f66 <digital_output>:
+    1f66:	ac 01       	movw	r20, r24
+    1f68:	47 70       	andi	r20, 0x07	; 7
+    1f6a:	50 70       	andi	r21, 0x00	; 0
+    1f6c:	9c 01       	movw	r18, r24
+    1f6e:	53 e0       	ldi	r21, 0x03	; 3
+    1f70:	35 95       	asr	r19
+    1f72:	27 95       	ror	r18
+    1f74:	5a 95       	dec	r21
+    1f76:	e1 f7       	brne	.-8      	; 0x1f70 <digital_output+0xa>
+    1f78:	67 2b       	or	r22, r23
+    1f7a:	09 f0       	breq	.+2      	; 0x1f7e <digital_output+0x18>
+    1f7c:	88 c0       	rjmp	.+272    	; 0x208e <digital_output+0x128>
+    1f7e:	24 30       	cpi	r18, 0x04	; 4
+    1f80:	31 05       	cpc	r19, r1
+    1f82:	09 f4       	brne	.+2      	; 0x1f86 <digital_output+0x20>
+    1f84:	44 c0       	rjmp	.+136    	; 0x200e <digital_output+0xa8>
+    1f86:	25 30       	cpi	r18, 0x05	; 5
+    1f88:	31 05       	cpc	r19, r1
+    1f8a:	5c f4       	brge	.+22     	; 0x1fa2 <digital_output+0x3c>
+    1f8c:	22 30       	cpi	r18, 0x02	; 2
+    1f8e:	31 05       	cpc	r19, r1
+    1f90:	11 f1       	breq	.+68     	; 0x1fd6 <digital_output+0x70>
+    1f92:	23 30       	cpi	r18, 0x03	; 3
+    1f94:	31 05       	cpc	r19, r1
+    1f96:	6c f5       	brge	.+90     	; 0x1ff2 <digital_output+0x8c>
+    1f98:	21 30       	cpi	r18, 0x01	; 1
+    1f9a:	31 05       	cpc	r19, r1
+    1f9c:	09 f0       	breq	.+2      	; 0x1fa0 <digital_output+0x3a>
+    1f9e:	fe c0       	rjmp	.+508    	; 0x219c <digital_output+0x236>
+    1fa0:	0d c0       	rjmp	.+26     	; 0x1fbc <digital_output+0x56>
+    1fa2:	26 30       	cpi	r18, 0x06	; 6
+    1fa4:	31 05       	cpc	r19, r1
+    1fa6:	09 f4       	brne	.+2      	; 0x1faa <digital_output+0x44>
+    1fa8:	4e c0       	rjmp	.+156    	; 0x2046 <digital_output+0xe0>
+    1faa:	26 30       	cpi	r18, 0x06	; 6
+    1fac:	31 05       	cpc	r19, r1
+    1fae:	0c f4       	brge	.+2      	; 0x1fb2 <digital_output+0x4c>
+    1fb0:	3c c0       	rjmp	.+120    	; 0x202a <digital_output+0xc4>
+    1fb2:	27 30       	cpi	r18, 0x07	; 7
+    1fb4:	31 05       	cpc	r19, r1
+    1fb6:	09 f0       	breq	.+2      	; 0x1fba <digital_output+0x54>
+    1fb8:	f1 c0       	rjmp	.+482    	; 0x219c <digital_output+0x236>
+    1fba:	56 c0       	rjmp	.+172    	; 0x2068 <digital_output+0x102>
+    1fbc:	8a b3       	in	r24, 0x1a	; 26
+    1fbe:	02 c0       	rjmp	.+4      	; 0x1fc4 <digital_output+0x5e>
+    1fc0:	22 0f       	add	r18, r18
+    1fc2:	33 1f       	adc	r19, r19
+    1fc4:	4a 95       	dec	r20
+    1fc6:	e2 f7       	brpl	.-8      	; 0x1fc0 <digital_output+0x5a>
+    1fc8:	82 2b       	or	r24, r18
+    1fca:	8a bb       	out	0x1a, r24	; 26
+    1fcc:	8b b3       	in	r24, 0x1b	; 27
+    1fce:	20 95       	com	r18
+    1fd0:	28 23       	and	r18, r24
+    1fd2:	2b bb       	out	0x1b, r18	; 27
+    1fd4:	08 95       	ret
+    1fd6:	87 b3       	in	r24, 0x17	; 23
+    1fd8:	21 e0       	ldi	r18, 0x01	; 1
+    1fda:	30 e0       	ldi	r19, 0x00	; 0
+    1fdc:	02 c0       	rjmp	.+4      	; 0x1fe2 <digital_output+0x7c>
+    1fde:	22 0f       	add	r18, r18
+    1fe0:	33 1f       	adc	r19, r19
+    1fe2:	4a 95       	dec	r20
+    1fe4:	e2 f7       	brpl	.-8      	; 0x1fde <digital_output+0x78>
+    1fe6:	82 2b       	or	r24, r18
+    1fe8:	87 bb       	out	0x17, r24	; 23
+    1fea:	88 b3       	in	r24, 0x18	; 24
+    1fec:	20 95       	com	r18
+    1fee:	28 23       	and	r18, r24
+    1ff0:	86 c0       	rjmp	.+268    	; 0x20fe <digital_output+0x198>
+    1ff2:	84 b3       	in	r24, 0x14	; 20
+    1ff4:	21 e0       	ldi	r18, 0x01	; 1
+    1ff6:	30 e0       	ldi	r19, 0x00	; 0
+    1ff8:	02 c0       	rjmp	.+4      	; 0x1ffe <digital_output+0x98>
+    1ffa:	22 0f       	add	r18, r18
+    1ffc:	33 1f       	adc	r19, r19
+    1ffe:	4a 95       	dec	r20
+    2000:	e2 f7       	brpl	.-8      	; 0x1ffa <digital_output+0x94>
+    2002:	82 2b       	or	r24, r18
+    2004:	84 bb       	out	0x14, r24	; 20
+    2006:	85 b3       	in	r24, 0x15	; 21
+    2008:	20 95       	com	r18
+    200a:	28 23       	and	r18, r24
+    200c:	86 c0       	rjmp	.+268    	; 0x211a <digital_output+0x1b4>
+    200e:	81 b3       	in	r24, 0x11	; 17
+    2010:	21 e0       	ldi	r18, 0x01	; 1
+    2012:	30 e0       	ldi	r19, 0x00	; 0
+    2014:	02 c0       	rjmp	.+4      	; 0x201a <digital_output+0xb4>
+    2016:	22 0f       	add	r18, r18
+    2018:	33 1f       	adc	r19, r19
+    201a:	4a 95       	dec	r20
+    201c:	e2 f7       	brpl	.-8      	; 0x2016 <digital_output+0xb0>
+    201e:	82 2b       	or	r24, r18
+    2020:	81 bb       	out	0x11, r24	; 17
+    2022:	82 b3       	in	r24, 0x12	; 18
+    2024:	20 95       	com	r18
+    2026:	28 23       	and	r18, r24
+    2028:	86 c0       	rjmp	.+268    	; 0x2136 <digital_output+0x1d0>
+    202a:	82 b1       	in	r24, 0x02	; 2
+    202c:	21 e0       	ldi	r18, 0x01	; 1
+    202e:	30 e0       	ldi	r19, 0x00	; 0
+    2030:	02 c0       	rjmp	.+4      	; 0x2036 <digital_output+0xd0>
+    2032:	22 0f       	add	r18, r18
+    2034:	33 1f       	adc	r19, r19
+    2036:	4a 95       	dec	r20
+    2038:	e2 f7       	brpl	.-8      	; 0x2032 <digital_output+0xcc>
+    203a:	82 2b       	or	r24, r18
+    203c:	82 b9       	out	0x02, r24	; 2
+    203e:	83 b1       	in	r24, 0x03	; 3
+    2040:	20 95       	com	r18
+    2042:	28 23       	and	r18, r24
+    2044:	86 c0       	rjmp	.+268    	; 0x2152 <digital_output+0x1ec>
+    2046:	80 91 61 00 	lds	r24, 0x0061
+    204a:	21 e0       	ldi	r18, 0x01	; 1
+    204c:	30 e0       	ldi	r19, 0x00	; 0
+    204e:	02 c0       	rjmp	.+4      	; 0x2054 <digital_output+0xee>
+    2050:	22 0f       	add	r18, r18
+    2052:	33 1f       	adc	r19, r19
+    2054:	4a 95       	dec	r20
+    2056:	e2 f7       	brpl	.-8      	; 0x2050 <digital_output+0xea>
+    2058:	82 2b       	or	r24, r18
+    205a:	80 93 61 00 	sts	0x0061, r24
+    205e:	80 91 62 00 	lds	r24, 0x0062
+    2062:	20 95       	com	r18
+    2064:	28 23       	and	r18, r24
+    2066:	86 c0       	rjmp	.+268    	; 0x2174 <digital_output+0x20e>
+    2068:	80 91 64 00 	lds	r24, 0x0064
+    206c:	21 e0       	ldi	r18, 0x01	; 1
+    206e:	30 e0       	ldi	r19, 0x00	; 0
+    2070:	02 c0       	rjmp	.+4      	; 0x2076 <digital_output+0x110>
+    2072:	22 0f       	add	r18, r18
+    2074:	33 1f       	adc	r19, r19
+    2076:	4a 95       	dec	r20
+    2078:	e2 f7       	brpl	.-8      	; 0x2072 <digital_output+0x10c>
+    207a:	82 2b       	or	r24, r18
+    207c:	80 93 64 00 	sts	0x0064, r24
+    2080:	80 91 65 00 	lds	r24, 0x0065
+    2084:	20 95       	com	r18
+    2086:	28 23       	and	r18, r24
+    2088:	20 93 65 00 	sts	0x0065, r18
+    208c:	08 95       	ret
+    208e:	24 30       	cpi	r18, 0x04	; 4
+    2090:	31 05       	cpc	r19, r1
+    2092:	09 f4       	brne	.+2      	; 0x2096 <digital_output+0x130>
+    2094:	44 c0       	rjmp	.+136    	; 0x211e <digital_output+0x1b8>
+    2096:	25 30       	cpi	r18, 0x05	; 5
+    2098:	31 05       	cpc	r19, r1
+    209a:	5c f4       	brge	.+22     	; 0x20b2 <digital_output+0x14c>
+    209c:	22 30       	cpi	r18, 0x02	; 2
+    209e:	31 05       	cpc	r19, r1
+    20a0:	11 f1       	breq	.+68     	; 0x20e6 <digital_output+0x180>
+    20a2:	23 30       	cpi	r18, 0x03	; 3
+    20a4:	31 05       	cpc	r19, r1
+    20a6:	6c f5       	brge	.+90     	; 0x2102 <digital_output+0x19c>
+    20a8:	21 30       	cpi	r18, 0x01	; 1
+    20aa:	31 05       	cpc	r19, r1
+    20ac:	09 f0       	breq	.+2      	; 0x20b0 <digital_output+0x14a>
+    20ae:	76 c0       	rjmp	.+236    	; 0x219c <digital_output+0x236>
+    20b0:	0d c0       	rjmp	.+26     	; 0x20cc <digital_output+0x166>
+    20b2:	26 30       	cpi	r18, 0x06	; 6
+    20b4:	31 05       	cpc	r19, r1
+    20b6:	09 f4       	brne	.+2      	; 0x20ba <digital_output+0x154>
+    20b8:	4e c0       	rjmp	.+156    	; 0x2156 <digital_output+0x1f0>
+    20ba:	26 30       	cpi	r18, 0x06	; 6
+    20bc:	31 05       	cpc	r19, r1
+    20be:	0c f4       	brge	.+2      	; 0x20c2 <digital_output+0x15c>
+    20c0:	3c c0       	rjmp	.+120    	; 0x213a <digital_output+0x1d4>
+    20c2:	27 30       	cpi	r18, 0x07	; 7
+    20c4:	31 05       	cpc	r19, r1
+    20c6:	09 f0       	breq	.+2      	; 0x20ca <digital_output+0x164>
+    20c8:	69 c0       	rjmp	.+210    	; 0x219c <digital_output+0x236>
+    20ca:	57 c0       	rjmp	.+174    	; 0x217a <digital_output+0x214>
+    20cc:	8a b3       	in	r24, 0x1a	; 26
+    20ce:	02 c0       	rjmp	.+4      	; 0x20d4 <digital_output+0x16e>
+    20d0:	22 0f       	add	r18, r18
+    20d2:	33 1f       	adc	r19, r19
+    20d4:	4a 95       	dec	r20
+    20d6:	e2 f7       	brpl	.-8      	; 0x20d0 <digital_output+0x16a>
+    20d8:	92 2f       	mov	r25, r18
+    20da:	82 2b       	or	r24, r18
+    20dc:	8a bb       	out	0x1a, r24	; 26
+    20de:	8b b3       	in	r24, 0x1b	; 27
+    20e0:	98 2b       	or	r25, r24
+    20e2:	9b bb       	out	0x1b, r25	; 27
+    20e4:	08 95       	ret
+    20e6:	87 b3       	in	r24, 0x17	; 23
+    20e8:	21 e0       	ldi	r18, 0x01	; 1
+    20ea:	30 e0       	ldi	r19, 0x00	; 0
+    20ec:	02 c0       	rjmp	.+4      	; 0x20f2 <digital_output+0x18c>
+    20ee:	22 0f       	add	r18, r18
+    20f0:	33 1f       	adc	r19, r19
+    20f2:	4a 95       	dec	r20
+    20f4:	e2 f7       	brpl	.-8      	; 0x20ee <digital_output+0x188>
+    20f6:	82 2b       	or	r24, r18
+    20f8:	87 bb       	out	0x17, r24	; 23
+    20fa:	88 b3       	in	r24, 0x18	; 24
+    20fc:	28 2b       	or	r18, r24
+    20fe:	28 bb       	out	0x18, r18	; 24
+    2100:	08 95       	ret
+    2102:	84 b3       	in	r24, 0x14	; 20
+    2104:	21 e0       	ldi	r18, 0x01	; 1
+    2106:	30 e0       	ldi	r19, 0x00	; 0
+    2108:	02 c0       	rjmp	.+4      	; 0x210e <digital_output+0x1a8>
+    210a:	22 0f       	add	r18, r18
+    210c:	33 1f       	adc	r19, r19
+    210e:	4a 95       	dec	r20
+    2110:	e2 f7       	brpl	.-8      	; 0x210a <digital_output+0x1a4>
+    2112:	82 2b       	or	r24, r18
+    2114:	84 bb       	out	0x14, r24	; 20
+    2116:	85 b3       	in	r24, 0x15	; 21
+    2118:	28 2b       	or	r18, r24
+    211a:	25 bb       	out	0x15, r18	; 21
+    211c:	08 95       	ret
+    211e:	81 b3       	in	r24, 0x11	; 17
+    2120:	21 e0       	ldi	r18, 0x01	; 1
+    2122:	30 e0       	ldi	r19, 0x00	; 0
+    2124:	02 c0       	rjmp	.+4      	; 0x212a <digital_output+0x1c4>
+    2126:	22 0f       	add	r18, r18
+    2128:	33 1f       	adc	r19, r19
+    212a:	4a 95       	dec	r20
+    212c:	e2 f7       	brpl	.-8      	; 0x2126 <digital_output+0x1c0>
+    212e:	82 2b       	or	r24, r18
+    2130:	81 bb       	out	0x11, r24	; 17
+    2132:	82 b3       	in	r24, 0x12	; 18
+    2134:	28 2b       	or	r18, r24
+    2136:	22 bb       	out	0x12, r18	; 18
+    2138:	08 95       	ret
+    213a:	82 b1       	in	r24, 0x02	; 2
+    213c:	21 e0       	ldi	r18, 0x01	; 1
+    213e:	30 e0       	ldi	r19, 0x00	; 0
+    2140:	02 c0       	rjmp	.+4      	; 0x2146 <digital_output+0x1e0>
+    2142:	22 0f       	add	r18, r18
+    2144:	33 1f       	adc	r19, r19
+    2146:	4a 95       	dec	r20
+    2148:	e2 f7       	brpl	.-8      	; 0x2142 <digital_output+0x1dc>
+    214a:	82 2b       	or	r24, r18
+    214c:	82 b9       	out	0x02, r24	; 2
+    214e:	83 b1       	in	r24, 0x03	; 3
+    2150:	28 2b       	or	r18, r24
+    2152:	23 b9       	out	0x03, r18	; 3
+    2154:	08 95       	ret
+    2156:	80 91 61 00 	lds	r24, 0x0061
+    215a:	21 e0       	ldi	r18, 0x01	; 1
+    215c:	30 e0       	ldi	r19, 0x00	; 0
+    215e:	02 c0       	rjmp	.+4      	; 0x2164 <digital_output+0x1fe>
+    2160:	22 0f       	add	r18, r18
+    2162:	33 1f       	adc	r19, r19
+    2164:	4a 95       	dec	r20
+    2166:	e2 f7       	brpl	.-8      	; 0x2160 <digital_output+0x1fa>
+    2168:	82 2b       	or	r24, r18
+    216a:	80 93 61 00 	sts	0x0061, r24
+    216e:	80 91 62 00 	lds	r24, 0x0062
+    2172:	28 2b       	or	r18, r24
+    2174:	20 93 62 00 	sts	0x0062, r18
+    2178:	08 95       	ret
+    217a:	80 91 64 00 	lds	r24, 0x0064
+    217e:	21 e0       	ldi	r18, 0x01	; 1
+    2180:	30 e0       	ldi	r19, 0x00	; 0
+    2182:	02 c0       	rjmp	.+4      	; 0x2188 <digital_output+0x222>
+    2184:	22 0f       	add	r18, r18
+    2186:	33 1f       	adc	r19, r19
+    2188:	4a 95       	dec	r20
+    218a:	e2 f7       	brpl	.-8      	; 0x2184 <digital_output+0x21e>
+    218c:	82 2b       	or	r24, r18
+    218e:	80 93 64 00 	sts	0x0064, r24
+    2192:	80 91 65 00 	lds	r24, 0x0065
+    2196:	28 2b       	or	r18, r24
+    2198:	20 93 65 00 	sts	0x0065, r18
+    219c:	08 95       	ret
 
-0000214c <button1_read>:
-    214c:	e4 e6       	ldi	r30, 0x64	; 100
-    214e:	f0 e0       	ldi	r31, 0x00	; 0
-    2150:	80 81       	ld	r24, Z
-    2152:	8e 7f       	andi	r24, 0xFE	; 254
-    2154:	80 83       	st	Z, r24
-    2156:	e5 e6       	ldi	r30, 0x65	; 101
-    2158:	f0 e0       	ldi	r31, 0x00	; 0
-    215a:	80 81       	ld	r24, Z
-    215c:	81 60       	ori	r24, 0x01	; 1
-    215e:	80 83       	st	Z, r24
-    2160:	20 91 63 00 	lds	r18, 0x0063
-    2164:	30 e0       	ldi	r19, 0x00	; 0
-    2166:	20 95       	com	r18
-    2168:	30 95       	com	r19
-    216a:	21 70       	andi	r18, 0x01	; 1
-    216c:	30 70       	andi	r19, 0x00	; 0
-    216e:	c9 01       	movw	r24, r18
-    2170:	08 95       	ret
+0000219e <button1_read>:
+    219e:	e4 e6       	ldi	r30, 0x64	; 100
+    21a0:	f0 e0       	ldi	r31, 0x00	; 0
+    21a2:	80 81       	ld	r24, Z
+    21a4:	8e 7f       	andi	r24, 0xFE	; 254
+    21a6:	80 83       	st	Z, r24
+    21a8:	e5 e6       	ldi	r30, 0x65	; 101
+    21aa:	f0 e0       	ldi	r31, 0x00	; 0
+    21ac:	80 81       	ld	r24, Z
+    21ae:	81 60       	ori	r24, 0x01	; 1
+    21b0:	80 83       	st	Z, r24
+    21b2:	20 91 63 00 	lds	r18, 0x0063
+    21b6:	30 e0       	ldi	r19, 0x00	; 0
+    21b8:	20 95       	com	r18
+    21ba:	30 95       	com	r19
+    21bc:	21 70       	andi	r18, 0x01	; 1
+    21be:	30 70       	andi	r19, 0x00	; 0
+    21c0:	c9 01       	movw	r24, r18
+    21c2:	08 95       	ret
 
-00002172 <button1_click>:
-    2172:	80 91 64 00 	lds	r24, 0x0064
-    2176:	8e 7f       	andi	r24, 0xFE	; 254
-    2178:	80 93 64 00 	sts	0x0064, r24
-    217c:	80 91 65 00 	lds	r24, 0x0065
-    2180:	81 60       	ori	r24, 0x01	; 1
-    2182:	80 93 65 00 	sts	0x0065, r24
-    2186:	80 91 63 00 	lds	r24, 0x0063
-    218a:	80 ff       	sbrs	r24, 0
-    218c:	03 c0       	rjmp	.+6      	; 0x2194 <button1_click+0x22>
-    218e:	20 e0       	ldi	r18, 0x00	; 0
-    2190:	30 e0       	ldi	r19, 0x00	; 0
-    2192:	10 c0       	rjmp	.+32     	; 0x21b4 <button1_click+0x42>
-    2194:	80 91 64 00 	lds	r24, 0x0064
-    2198:	8e 7f       	andi	r24, 0xFE	; 254
-    219a:	80 93 64 00 	sts	0x0064, r24
-    219e:	80 91 65 00 	lds	r24, 0x0065
-    21a2:	81 60       	ori	r24, 0x01	; 1
-    21a4:	80 93 65 00 	sts	0x0065, r24
-    21a8:	80 91 63 00 	lds	r24, 0x0063
-    21ac:	80 ff       	sbrs	r24, 0
-    21ae:	f2 cf       	rjmp	.-28     	; 0x2194 <button1_click+0x22>
-    21b0:	21 e0       	ldi	r18, 0x01	; 1
-    21b2:	30 e0       	ldi	r19, 0x00	; 0
-    21b4:	c9 01       	movw	r24, r18
-    21b6:	08 95       	ret
+000021c4 <button1_click>:
+    21c4:	80 91 64 00 	lds	r24, 0x0064
+    21c8:	8e 7f       	andi	r24, 0xFE	; 254
+    21ca:	80 93 64 00 	sts	0x0064, r24
+    21ce:	80 91 65 00 	lds	r24, 0x0065
+    21d2:	81 60       	ori	r24, 0x01	; 1
+    21d4:	80 93 65 00 	sts	0x0065, r24
+    21d8:	80 91 63 00 	lds	r24, 0x0063
+    21dc:	80 ff       	sbrs	r24, 0
+    21de:	03 c0       	rjmp	.+6      	; 0x21e6 <button1_click+0x22>
+    21e0:	20 e0       	ldi	r18, 0x00	; 0
+    21e2:	30 e0       	ldi	r19, 0x00	; 0
+    21e4:	10 c0       	rjmp	.+32     	; 0x2206 <button1_click+0x42>
+    21e6:	80 91 64 00 	lds	r24, 0x0064
+    21ea:	8e 7f       	andi	r24, 0xFE	; 254
+    21ec:	80 93 64 00 	sts	0x0064, r24
+    21f0:	80 91 65 00 	lds	r24, 0x0065
+    21f4:	81 60       	ori	r24, 0x01	; 1
+    21f6:	80 93 65 00 	sts	0x0065, r24
+    21fa:	80 91 63 00 	lds	r24, 0x0063
+    21fe:	80 ff       	sbrs	r24, 0
+    2200:	f2 cf       	rjmp	.-28     	; 0x21e6 <button1_click+0x22>
+    2202:	21 e0       	ldi	r18, 0x01	; 1
+    2204:	30 e0       	ldi	r19, 0x00	; 0
+    2206:	c9 01       	movw	r24, r18
+    2208:	08 95       	ret
 
-000021b8 <button2_read>:
-    21b8:	e4 e6       	ldi	r30, 0x64	; 100
-    21ba:	f0 e0       	ldi	r31, 0x00	; 0
-    21bc:	80 81       	ld	r24, Z
-    21be:	8d 7f       	andi	r24, 0xFD	; 253
-    21c0:	80 83       	st	Z, r24
-    21c2:	e5 e6       	ldi	r30, 0x65	; 101
-    21c4:	f0 e0       	ldi	r31, 0x00	; 0
-    21c6:	80 81       	ld	r24, Z
-    21c8:	82 60       	ori	r24, 0x02	; 2
-    21ca:	80 83       	st	Z, r24
-    21cc:	20 91 63 00 	lds	r18, 0x0063
-    21d0:	30 e0       	ldi	r19, 0x00	; 0
-    21d2:	36 95       	lsr	r19
-    21d4:	27 95       	ror	r18
-    21d6:	20 95       	com	r18
-    21d8:	30 95       	com	r19
-    21da:	21 70       	andi	r18, 0x01	; 1
-    21dc:	30 70       	andi	r19, 0x00	; 0
-    21de:	c9 01       	movw	r24, r18
-    21e0:	08 95       	ret
-
-000021e2 <button2_click>:
-    21e2:	80 91 64 00 	lds	r24, 0x0064
-    21e6:	8d 7f       	andi	r24, 0xFD	; 253
-    21e8:	80 93 64 00 	sts	0x0064, r24
-    21ec:	80 91 65 00 	lds	r24, 0x0065
-    21f0:	82 60       	ori	r24, 0x02	; 2
-    21f2:	80 93 65 00 	sts	0x0065, r24
-    21f6:	80 91 63 00 	lds	r24, 0x0063
-    21fa:	81 ff       	sbrs	r24, 1
-    21fc:	03 c0       	rjmp	.+6      	; 0x2204 <button2_click+0x22>
-    21fe:	20 e0       	ldi	r18, 0x00	; 0
-    2200:	30 e0       	ldi	r19, 0x00	; 0
-    2202:	10 c0       	rjmp	.+32     	; 0x2224 <button2_click+0x42>
-    2204:	80 91 64 00 	lds	r24, 0x0064
-    2208:	8d 7f       	andi	r24, 0xFD	; 253
-    220a:	80 93 64 00 	sts	0x0064, r24
-    220e:	80 91 65 00 	lds	r24, 0x0065
-    2212:	82 60       	ori	r24, 0x02	; 2
-    2214:	80 93 65 00 	sts	0x0065, r24
-    2218:	80 91 63 00 	lds	r24, 0x0063
-    221c:	81 ff       	sbrs	r24, 1
-    221e:	f2 cf       	rjmp	.-28     	; 0x2204 <button2_click+0x22>
-    2220:	21 e0       	ldi	r18, 0x01	; 1
+0000220a <button2_read>:
+    220a:	e4 e6       	ldi	r30, 0x64	; 100
+    220c:	f0 e0       	ldi	r31, 0x00	; 0
+    220e:	80 81       	ld	r24, Z
+    2210:	8d 7f       	andi	r24, 0xFD	; 253
+    2212:	80 83       	st	Z, r24
+    2214:	e5 e6       	ldi	r30, 0x65	; 101
+    2216:	f0 e0       	ldi	r31, 0x00	; 0
+    2218:	80 81       	ld	r24, Z
+    221a:	82 60       	ori	r24, 0x02	; 2
+    221c:	80 83       	st	Z, r24
+    221e:	20 91 63 00 	lds	r18, 0x0063
     2222:	30 e0       	ldi	r19, 0x00	; 0
-    2224:	c9 01       	movw	r24, r18
-    2226:	08 95       	ret
+    2224:	36 95       	lsr	r19
+    2226:	27 95       	ror	r18
+    2228:	20 95       	com	r18
+    222a:	30 95       	com	r19
+    222c:	21 70       	andi	r18, 0x01	; 1
+    222e:	30 70       	andi	r19, 0x00	; 0
+    2230:	c9 01       	movw	r24, r18
+    2232:	08 95       	ret
 
-00002228 <button2_wait>:
-    2228:	04 c0       	rjmp	.+8      	; 0x2232 <button2_wait+0xa>
-    222a:	8f e0       	ldi	r24, 0x0F	; 15
-    222c:	90 e0       	ldi	r25, 0x00	; 0
-    222e:	0e 94 e3 1b 	call	0x37c6	; 0x37c6 <delay_ms>
-    2232:	80 91 64 00 	lds	r24, 0x0064
-    2236:	8d 7f       	andi	r24, 0xFD	; 253
-    2238:	80 93 64 00 	sts	0x0064, r24
-    223c:	80 91 65 00 	lds	r24, 0x0065
-    2240:	82 60       	ori	r24, 0x02	; 2
-    2242:	80 93 65 00 	sts	0x0065, r24
-    2246:	80 91 63 00 	lds	r24, 0x0063
-    224a:	81 fd       	sbrc	r24, 1
-    224c:	ee cf       	rjmp	.-36     	; 0x222a <button2_wait+0x2>
-    224e:	08 95       	ret
+00002234 <button2_click>:
+    2234:	80 91 64 00 	lds	r24, 0x0064
+    2238:	8d 7f       	andi	r24, 0xFD	; 253
+    223a:	80 93 64 00 	sts	0x0064, r24
+    223e:	80 91 65 00 	lds	r24, 0x0065
+    2242:	82 60       	ori	r24, 0x02	; 2
+    2244:	80 93 65 00 	sts	0x0065, r24
+    2248:	80 91 63 00 	lds	r24, 0x0063
+    224c:	81 ff       	sbrs	r24, 1
+    224e:	03 c0       	rjmp	.+6      	; 0x2256 <button2_click+0x22>
+    2250:	20 e0       	ldi	r18, 0x00	; 0
+    2252:	30 e0       	ldi	r19, 0x00	; 0
+    2254:	10 c0       	rjmp	.+32     	; 0x2276 <button2_click+0x42>
+    2256:	80 91 64 00 	lds	r24, 0x0064
+    225a:	8d 7f       	andi	r24, 0xFD	; 253
+    225c:	80 93 64 00 	sts	0x0064, r24
+    2260:	80 91 65 00 	lds	r24, 0x0065
+    2264:	82 60       	ori	r24, 0x02	; 2
+    2266:	80 93 65 00 	sts	0x0065, r24
+    226a:	80 91 63 00 	lds	r24, 0x0063
+    226e:	81 ff       	sbrs	r24, 1
+    2270:	f2 cf       	rjmp	.-28     	; 0x2256 <button2_click+0x22>
+    2272:	21 e0       	ldi	r18, 0x01	; 1
+    2274:	30 e0       	ldi	r19, 0x00	; 0
+    2276:	c9 01       	movw	r24, r18
+    2278:	08 95       	ret
 
-00002250 <button1_wait>:
-    2250:	04 c0       	rjmp	.+8      	; 0x225a <button1_wait+0xa>
-    2252:	8f e0       	ldi	r24, 0x0F	; 15
-    2254:	90 e0       	ldi	r25, 0x00	; 0
-    2256:	0e 94 e3 1b 	call	0x37c6	; 0x37c6 <delay_ms>
-    225a:	80 91 64 00 	lds	r24, 0x0064
-    225e:	8e 7f       	andi	r24, 0xFE	; 254
-    2260:	80 93 64 00 	sts	0x0064, r24
-    2264:	80 91 65 00 	lds	r24, 0x0065
-    2268:	81 60       	ori	r24, 0x01	; 1
-    226a:	80 93 65 00 	sts	0x0065, r24
-    226e:	80 91 63 00 	lds	r24, 0x0063
-    2272:	80 fd       	sbrc	r24, 0
-    2274:	ee cf       	rjmp	.-36     	; 0x2252 <button1_wait+0x2>
-    2276:	08 95       	ret
+0000227a <button2_wait>:
+    227a:	04 c0       	rjmp	.+8      	; 0x2284 <button2_wait+0xa>
+    227c:	8f e0       	ldi	r24, 0x0F	; 15
+    227e:	90 e0       	ldi	r25, 0x00	; 0
+    2280:	0e 94 0c 1c 	call	0x3818	; 0x3818 <delay_ms>
+    2284:	80 91 64 00 	lds	r24, 0x0064
+    2288:	8d 7f       	andi	r24, 0xFD	; 253
+    228a:	80 93 64 00 	sts	0x0064, r24
+    228e:	80 91 65 00 	lds	r24, 0x0065
+    2292:	82 60       	ori	r24, 0x02	; 2
+    2294:	80 93 65 00 	sts	0x0065, r24
+    2298:	80 91 63 00 	lds	r24, 0x0063
+    229c:	81 fd       	sbrc	r24, 1
+    229e:	ee cf       	rjmp	.-36     	; 0x227c <button2_wait+0x2>
+    22a0:	08 95       	ret
 
-00002278 <flash_red>:
-    2278:	ef 92       	push	r14
-    227a:	ff 92       	push	r15
-    227c:	0f 93       	push	r16
-    227e:	1f 93       	push	r17
-    2280:	f8 94       	cli
-    2282:	f4 b2       	in	r15, 0x14	; 20
-    2284:	e5 b2       	in	r14, 0x15	; 21
-    2286:	17 e7       	ldi	r17, 0x77	; 119
-    2288:	14 bb       	out	0x14, r17	; 20
-    228a:	15 bb       	out	0x15, r17	; 21
-    228c:	8c e2       	ldi	r24, 0x2C	; 44
-    228e:	91 e0       	ldi	r25, 0x01	; 1
-    2290:	0e 94 e3 1b 	call	0x37c6	; 0x37c6 <delay_ms>
-    2294:	06 e6       	ldi	r16, 0x66	; 102
-    2296:	05 bb       	out	0x15, r16	; 21
-    2298:	8c e2       	ldi	r24, 0x2C	; 44
-    229a:	91 e0       	ldi	r25, 0x01	; 1
-    229c:	0e 94 e3 1b 	call	0x37c6	; 0x37c6 <delay_ms>
-    22a0:	15 bb       	out	0x15, r17	; 21
-    22a2:	8c e2       	ldi	r24, 0x2C	; 44
-    22a4:	91 e0       	ldi	r25, 0x01	; 1
-    22a6:	0e 94 e3 1b 	call	0x37c6	; 0x37c6 <delay_ms>
-    22aa:	05 bb       	out	0x15, r16	; 21
-    22ac:	8c e2       	ldi	r24, 0x2C	; 44
-    22ae:	91 e0       	ldi	r25, 0x01	; 1
-    22b0:	0e 94 e3 1b 	call	0x37c6	; 0x37c6 <delay_ms>
-    22b4:	15 bb       	out	0x15, r17	; 21
-    22b6:	8c e2       	ldi	r24, 0x2C	; 44
-    22b8:	91 e0       	ldi	r25, 0x01	; 1
-    22ba:	0e 94 e3 1b 	call	0x37c6	; 0x37c6 <delay_ms>
-    22be:	05 bb       	out	0x15, r16	; 21
-    22c0:	8c e2       	ldi	r24, 0x2C	; 44
-    22c2:	91 e0       	ldi	r25, 0x01	; 1
-    22c4:	0e 94 e3 1b 	call	0x37c6	; 0x37c6 <delay_ms>
-    22c8:	f4 ba       	out	0x14, r15	; 20
-    22ca:	e5 ba       	out	0x15, r14	; 21
-    22cc:	78 94       	sei
-    22ce:	1f 91       	pop	r17
-    22d0:	0f 91       	pop	r16
-    22d2:	ff 90       	pop	r15
-    22d4:	ef 90       	pop	r14
-    22d6:	08 95       	ret
+000022a2 <button1_wait>:
+    22a2:	04 c0       	rjmp	.+8      	; 0x22ac <button1_wait+0xa>
+    22a4:	8f e0       	ldi	r24, 0x0F	; 15
+    22a6:	90 e0       	ldi	r25, 0x00	; 0
+    22a8:	0e 94 0c 1c 	call	0x3818	; 0x3818 <delay_ms>
+    22ac:	80 91 64 00 	lds	r24, 0x0064
+    22b0:	8e 7f       	andi	r24, 0xFE	; 254
+    22b2:	80 93 64 00 	sts	0x0064, r24
+    22b6:	80 91 65 00 	lds	r24, 0x0065
+    22ba:	81 60       	ori	r24, 0x01	; 1
+    22bc:	80 93 65 00 	sts	0x0065, r24
+    22c0:	80 91 63 00 	lds	r24, 0x0063
+    22c4:	80 fd       	sbrc	r24, 0
+    22c6:	ee cf       	rjmp	.-36     	; 0x22a4 <button1_wait+0x2>
+    22c8:	08 95       	ret
 
-000022d8 <dragonfly_init>:
-    22d8:	cf 93       	push	r28
-    22da:	df 93       	push	r29
-    22dc:	ec 01       	movw	r28, r24
-    22de:	78 94       	sei
-    22e0:	80 91 64 00 	lds	r24, 0x0064
-    22e4:	8c 7f       	andi	r24, 0xFC	; 252
-    22e6:	80 93 64 00 	sts	0x0064, r24
-    22ea:	80 91 65 00 	lds	r24, 0x0065
-    22ee:	83 60       	ori	r24, 0x03	; 3
-    22f0:	80 93 65 00 	sts	0x0065, r24
-    22f4:	c0 ff       	sbrs	r28, 0
-    22f6:	04 c0       	rjmp	.+8      	; 0x2300 <dragonfly_init+0x28>
-    22f8:	81 e0       	ldi	r24, 0x01	; 1
-    22fa:	90 e0       	ldi	r25, 0x00	; 0
-    22fc:	0e 94 67 1c 	call	0x38ce	; 0x38ce <analog_init>
-    2300:	c1 ff       	sbrs	r28, 1
-    2302:	04 c0       	rjmp	.+8      	; 0x230c <dragonfly_init+0x34>
-    2304:	0e 94 5c 1a 	call	0x34b8	; 0x34b8 <usb_init>
-    2308:	0e 94 6a 1a 	call	0x34d4	; 0x34d4 <xbee_init>
-    230c:	c6 ff       	sbrs	r28, 6
-    230e:	03 c0       	rjmp	.+6      	; 0x2316 <dragonfly_init+0x3e>
-    2310:	78 94       	sei
-    2312:	0e 94 fe 1d 	call	0x3bfc	; 0x3bfc <buzzer_init>
-    2316:	c2 ff       	sbrs	r28, 2
-    2318:	03 c0       	rjmp	.+6      	; 0x2320 <dragonfly_init+0x48>
-    231a:	78 94       	sei
-    231c:	0e 94 e1 19 	call	0x33c2	; 0x33c2 <orb_init>
-    2320:	c3 ff       	sbrs	r28, 3
-    2322:	02 c0       	rjmp	.+4      	; 0x2328 <dragonfly_init+0x50>
-    2324:	0e 94 e4 19 	call	0x33c8	; 0x33c8 <motors_init>
-    2328:	c7 ff       	sbrs	r28, 7
-    232a:	02 c0       	rjmp	.+4      	; 0x2330 <dragonfly_init+0x58>
-    232c:	0e 94 99 15 	call	0x2b32	; 0x2b32 <lcd_init>
-    2330:	d0 ff       	sbrs	r29, 0
-    2332:	02 c0       	rjmp	.+4      	; 0x2338 <dragonfly_init+0x60>
-    2334:	0e 94 55 1a 	call	0x34aa	; 0x34aa <range_init>
-    2338:	d1 ff       	sbrs	r29, 1
-    233a:	09 c0       	rjmp	.+18     	; 0x234e <dragonfly_init+0x76>
-    233c:	0e 94 e5 11 	call	0x23ca	; 0x23ca <get_bom_type>
-    2340:	8f 3f       	cpi	r24, 0xFF	; 255
-    2342:	19 f4       	brne	.+6      	; 0x234a <dragonfly_init+0x72>
-    2344:	0e 94 3c 11 	call	0x2278	; 0x2278 <flash_red>
-    2348:	02 c0       	rjmp	.+4      	; 0x234e <dragonfly_init+0x76>
-    234a:	0e 94 78 0d 	call	0x1af0	; 0x1af0 <bom_init>
-    234e:	d2 ff       	sbrs	r29, 2
-    2350:	02 c0       	rjmp	.+4      	; 0x2356 <dragonfly_init+0x7e>
-    2352:	0e 94 75 14 	call	0x28ea	; 0x28ea <encoders_init>
+000022ca <flash_red>:
+    22ca:	ef 92       	push	r14
+    22cc:	ff 92       	push	r15
+    22ce:	0f 93       	push	r16
+    22d0:	1f 93       	push	r17
+    22d2:	f8 94       	cli
+    22d4:	f4 b2       	in	r15, 0x14	; 20
+    22d6:	e5 b2       	in	r14, 0x15	; 21
+    22d8:	17 e7       	ldi	r17, 0x77	; 119
+    22da:	14 bb       	out	0x14, r17	; 20
+    22dc:	15 bb       	out	0x15, r17	; 21
+    22de:	8c e2       	ldi	r24, 0x2C	; 44
+    22e0:	91 e0       	ldi	r25, 0x01	; 1
+    22e2:	0e 94 0c 1c 	call	0x3818	; 0x3818 <delay_ms>
+    22e6:	06 e6       	ldi	r16, 0x66	; 102
+    22e8:	05 bb       	out	0x15, r16	; 21
+    22ea:	8c e2       	ldi	r24, 0x2C	; 44
+    22ec:	91 e0       	ldi	r25, 0x01	; 1
+    22ee:	0e 94 0c 1c 	call	0x3818	; 0x3818 <delay_ms>
+    22f2:	15 bb       	out	0x15, r17	; 21
+    22f4:	8c e2       	ldi	r24, 0x2C	; 44
+    22f6:	91 e0       	ldi	r25, 0x01	; 1
+    22f8:	0e 94 0c 1c 	call	0x3818	; 0x3818 <delay_ms>
+    22fc:	05 bb       	out	0x15, r16	; 21
+    22fe:	8c e2       	ldi	r24, 0x2C	; 44
+    2300:	91 e0       	ldi	r25, 0x01	; 1
+    2302:	0e 94 0c 1c 	call	0x3818	; 0x3818 <delay_ms>
+    2306:	15 bb       	out	0x15, r17	; 21
+    2308:	8c e2       	ldi	r24, 0x2C	; 44
+    230a:	91 e0       	ldi	r25, 0x01	; 1
+    230c:	0e 94 0c 1c 	call	0x3818	; 0x3818 <delay_ms>
+    2310:	05 bb       	out	0x15, r16	; 21
+    2312:	8c e2       	ldi	r24, 0x2C	; 44
+    2314:	91 e0       	ldi	r25, 0x01	; 1
+    2316:	0e 94 0c 1c 	call	0x3818	; 0x3818 <delay_ms>
+    231a:	f4 ba       	out	0x14, r15	; 20
+    231c:	e5 ba       	out	0x15, r14	; 21
+    231e:	78 94       	sei
+    2320:	1f 91       	pop	r17
+    2322:	0f 91       	pop	r16
+    2324:	ff 90       	pop	r15
+    2326:	ef 90       	pop	r14
+    2328:	08 95       	ret
+
+0000232a <dragonfly_init>:
+    232a:	cf 93       	push	r28
+    232c:	df 93       	push	r29
+    232e:	ec 01       	movw	r28, r24
+    2330:	78 94       	sei
+    2332:	80 91 64 00 	lds	r24, 0x0064
+    2336:	8c 7f       	andi	r24, 0xFC	; 252
+    2338:	80 93 64 00 	sts	0x0064, r24
+    233c:	80 91 65 00 	lds	r24, 0x0065
+    2340:	83 60       	ori	r24, 0x03	; 3
+    2342:	80 93 65 00 	sts	0x0065, r24
+    2346:	c0 ff       	sbrs	r28, 0
+    2348:	04 c0       	rjmp	.+8      	; 0x2352 <dragonfly_init+0x28>
+    234a:	81 e0       	ldi	r24, 0x01	; 1
+    234c:	90 e0       	ldi	r25, 0x00	; 0
+    234e:	0e 94 90 1c 	call	0x3920	; 0x3920 <analog_init>
+    2352:	c1 ff       	sbrs	r28, 1
+    2354:	04 c0       	rjmp	.+8      	; 0x235e <dragonfly_init+0x34>
+    2356:	0e 94 85 1a 	call	0x350a	; 0x350a <usb_init>
+    235a:	0e 94 93 1a 	call	0x3526	; 0x3526 <xbee_init>
+    235e:	c6 ff       	sbrs	r28, 6
+    2360:	03 c0       	rjmp	.+6      	; 0x2368 <dragonfly_init+0x3e>
+    2362:	78 94       	sei
+    2364:	0e 94 27 1e 	call	0x3c4e	; 0x3c4e <buzzer_init>
+    2368:	c2 ff       	sbrs	r28, 2
+    236a:	03 c0       	rjmp	.+6      	; 0x2372 <dragonfly_init+0x48>
+    236c:	78 94       	sei
+    236e:	0e 94 0a 1a 	call	0x3414	; 0x3414 <orb_init>
+    2372:	c3 ff       	sbrs	r28, 3
+    2374:	02 c0       	rjmp	.+4      	; 0x237a <dragonfly_init+0x50>
+    2376:	0e 94 0d 1a 	call	0x341a	; 0x341a <motors_init>
+    237a:	c7 ff       	sbrs	r28, 7
+    237c:	02 c0       	rjmp	.+4      	; 0x2382 <dragonfly_init+0x58>
+    237e:	0e 94 c2 15 	call	0x2b84	; 0x2b84 <lcd_init>
+    2382:	d0 ff       	sbrs	r29, 0
+    2384:	02 c0       	rjmp	.+4      	; 0x238a <dragonfly_init+0x60>
+    2386:	0e 94 7e 1a 	call	0x34fc	; 0x34fc <range_init>
+    238a:	d1 ff       	sbrs	r29, 1
+    238c:	09 c0       	rjmp	.+18     	; 0x23a0 <dragonfly_init+0x76>
+    238e:	0e 94 0e 12 	call	0x241c	; 0x241c <get_bom_type>
+    2392:	8f 3f       	cpi	r24, 0xFF	; 255
+    2394:	19 f4       	brne	.+6      	; 0x239c <dragonfly_init+0x72>
+    2396:	0e 94 65 11 	call	0x22ca	; 0x22ca <flash_red>
+    239a:	02 c0       	rjmp	.+4      	; 0x23a0 <dragonfly_init+0x76>
+    239c:	0e 94 a1 0d 	call	0x1b42	; 0x1b42 <bom_init>
+    23a0:	d2 ff       	sbrs	r29, 2
+    23a2:	02 c0       	rjmp	.+4      	; 0x23a8 <dragonfly_init+0x7e>
+    23a4:	0e 94 9e 14 	call	0x293c	; 0x293c <encoders_init>
     milliseconds can be achieved.
  */
 void
@@ -4125,3073 +4159,2852 @@
 _delay_loop_2(uint16_t __count)
 {
 	__asm__ volatile (
-    2356:	80 ea       	ldi	r24, 0xA0	; 160
-    2358:	9f e0       	ldi	r25, 0x0F	; 15
-    235a:	01 97       	sbiw	r24, 0x01	; 1
-    235c:	f1 f7       	brne	.-4      	; 0x235a <dragonfly_init+0x82>
-    235e:	df 91       	pop	r29
-    2360:	cf 91       	pop	r28
-    2362:	08 95       	ret
+    23a8:	80 ea       	ldi	r24, 0xA0	; 160
+    23aa:	9f e0       	ldi	r25, 0x0F	; 15
+    23ac:	01 97       	sbiw	r24, 0x01	; 1
+    23ae:	f1 f7       	brne	.-4      	; 0x23ac <dragonfly_init+0x82>
+    23b0:	df 91       	pop	r29
+    23b2:	cf 91       	pop	r28
+    23b4:	08 95       	ret
 
-00002364 <eeprom_put_byte>:
+000023b6 <eeprom_put_byte>:
 #include <dragonfly_lib.h>
 #include <wireless.h>
 #include <wl_token_ring.h>
-//#include <xbee.h>
 
-//#define SWARM_PACKET_GROUP_ID 0x8
-    2364:	e1 99       	sbic	0x1c, 1	; 28
-    2366:	fe cf       	rjmp	.-4      	; 0x2364 <eeprom_put_byte>
-
-//static PacketGroupHandler swarm_pgh;
-    2368:	9f bb       	out	0x1f, r25	; 31
-    236a:	8e bb       	out	0x1e, r24	; 30
-//static void swarm_handle_receive(char type, int wl_source, unsigned char* packet, int length);
-    236c:	6d bb       	out	0x1d, r22	; 29
-
 int main(void)
-    236e:	e2 9a       	sbi	0x1c, 2	; 28
 {
+    23b6:	e1 99       	sbic	0x1c, 1	; 28
+    23b8:	fe cf       	rjmp	.-4      	; 0x23b6 <eeprom_put_byte>
     dragonfly_init(ALL_ON);
-    2370:	e1 9a       	sbi	0x1c, 1	; 28
 
+    23ba:	9f bb       	out	0x1f, r25	; 31
+    23bc:	8e bb       	out	0x1e, r24	; 30
     wl_init();
+    23be:	6d bb       	out	0x1d, r22	; 29
     wl_set_channel(0xF);
-    2372:	80 e0       	ldi	r24, 0x00	; 0
-    2374:	90 e0       	ldi	r25, 0x00	; 0
-    2376:	08 95       	ret
 
-00002378 <eeprom_get_byte>:
-
-    /*swarm_pgh.groupCode = SWARM_PACKET_GROUP_ID;
-    2378:	fb 01       	movw	r30, r22
-    swarm_pgh.timeout_handler = NULL;
-    swarm_pgh.handle_response = NULL;
-    237a:	e1 99       	sbic	0x1c, 1	; 28
-    237c:	fe cf       	rjmp	.-4      	; 0x237a <eeprom_get_byte+0x2>
-    swarm_pgh.handle_receive = swarm_handle_receive;
-    swarm_pgh.unregister = NULL;
-    237e:	9f bb       	out	0x1f, r25	; 31
-    2380:	8e bb       	out	0x1e, r24	; 30
-    wl_register_packet_group(&swarm_pgh);*/
-
-    2382:	e0 9a       	sbi	0x1c, 0	; 28
+    23c0:	e2 9a       	sbi	0x1c, 2	; 28
     wl_token_ring_register();
     wl_token_ring_join();
-    2384:	8d b3       	in	r24, 0x1d	; 29
-    2386:	80 83       	st	Z, r24
+    23c2:	e1 9a       	sbi	0x1c, 1	; 28
 
     usb_puts("initialized\r\n");
 
-    2388:	80 e0       	ldi	r24, 0x00	; 0
-    238a:	90 e0       	ldi	r25, 0x00	; 0
-    238c:	08 95       	ret
+    23c4:	80 e0       	ldi	r24, 0x00	; 0
+    23c6:	90 e0       	ldi	r25, 0x00	; 0
+    23c8:	08 95       	ret
 
-0000238e <get_robotid>:
-    wl_init();
-    wl_set_channel(0xF);
+000023ca <eeprom_get_byte>:
+    while (1)
+    {
+    23ca:	fb 01       	movw	r30, r22
+	    wl_do();
+    }
+    23cc:	e1 99       	sbic	0x1c, 1	; 28
+    23ce:	fe cf       	rjmp	.-4      	; 0x23cc <eeprom_get_byte+0x2>
+}
+    23d0:	9f bb       	out	0x1f, r25	; 31
+    23d2:	8e bb       	out	0x1e, r24	; 30
+    23d4:	e0 9a       	sbi	0x1c, 0	; 28
+    23d6:	8d b3       	in	r24, 0x1d	; 29
+    23d8:	80 83       	st	Z, r24
+    23da:	80 e0       	ldi	r24, 0x00	; 0
+    23dc:	90 e0       	ldi	r25, 0x00	; 0
+    23de:	08 95       	ret
 
-    /*swarm_pgh.groupCode = SWARM_PACKET_GROUP_ID;
-    swarm_pgh.timeout_handler = NULL;
-    swarm_pgh.handle_response = NULL;
-    238e:	e1 99       	sbic	0x1c, 1	; 28
-    2390:	fe cf       	rjmp	.-4      	; 0x238e <get_robotid>
-    swarm_pgh.handle_receive = swarm_handle_receive;
-    swarm_pgh.unregister = NULL;
-    2392:	80 e1       	ldi	r24, 0x10	; 16
-    2394:	90 e0       	ldi	r25, 0x00	; 0
-    2396:	9f bb       	out	0x1f, r25	; 31
-    2398:	8e bb       	out	0x1e, r24	; 30
-    wl_register_packet_group(&swarm_pgh);*/
+000023e0 <get_robotid>:
+    usb_puts("initialized\r\n");
 
-    239a:	e0 9a       	sbi	0x1c, 0	; 28
-    wl_token_ring_register();
-    wl_token_ring_join();
-    239c:	3d b3       	in	r19, 0x1d	; 29
-    wl_init();
-    wl_set_channel(0xF);
+    while (1)
+    {
+	    wl_do();
+    }
+    23e0:	e1 99       	sbic	0x1c, 1	; 28
+    23e2:	fe cf       	rjmp	.-4      	; 0x23e0 <get_robotid>
+}
+    23e4:	80 e1       	ldi	r24, 0x10	; 16
+    23e6:	90 e0       	ldi	r25, 0x00	; 0
+    23e8:	9f bb       	out	0x1f, r25	; 31
+    23ea:	8e bb       	out	0x1e, r24	; 30
+    23ec:	e0 9a       	sbi	0x1c, 0	; 28
+    23ee:	3d b3       	in	r19, 0x1d	; 29
+    usb_puts("initialized\r\n");
 
-    /*swarm_pgh.groupCode = SWARM_PACKET_GROUP_ID;
-    swarm_pgh.timeout_handler = NULL;
-    swarm_pgh.handle_response = NULL;
-    239e:	e1 99       	sbic	0x1c, 1	; 28
-    23a0:	fe cf       	rjmp	.-4      	; 0x239e <get_robotid+0x10>
-    swarm_pgh.handle_receive = swarm_handle_receive;
-    swarm_pgh.unregister = NULL;
-    23a2:	81 e1       	ldi	r24, 0x11	; 17
-    23a4:	90 e0       	ldi	r25, 0x00	; 0
-    23a6:	9f bb       	out	0x1f, r25	; 31
-    23a8:	8e bb       	out	0x1e, r24	; 30
-    wl_register_packet_group(&swarm_pgh);*/
+    while (1)
+    {
+	    wl_do();
+    }
+    23f0:	e1 99       	sbic	0x1c, 1	; 28
+    23f2:	fe cf       	rjmp	.-4      	; 0x23f0 <get_robotid+0x10>
+}
+    23f4:	81 e1       	ldi	r24, 0x11	; 17
+    23f6:	90 e0       	ldi	r25, 0x00	; 0
+    23f8:	9f bb       	out	0x1f, r25	; 31
+    23fa:	8e bb       	out	0x1e, r24	; 30
+    23fc:	e0 9a       	sbi	0x1c, 0	; 28
+    23fe:	2d b3       	in	r18, 0x1d	; 29
+    usb_puts("initialized\r\n");
 
-    23aa:	e0 9a       	sbi	0x1c, 0	; 28
-    wl_token_ring_register();
-    wl_token_ring_join();
-    23ac:	2d b3       	in	r18, 0x1d	; 29
-    wl_init();
-    wl_set_channel(0xF);
+    while (1)
+    {
+	    wl_do();
+    }
+    2400:	e1 99       	sbic	0x1c, 1	; 28
+    2402:	fe cf       	rjmp	.-4      	; 0x2400 <get_robotid+0x20>
+}
+    2404:	82 e1       	ldi	r24, 0x12	; 18
+    2406:	90 e0       	ldi	r25, 0x00	; 0
+    2408:	9f bb       	out	0x1f, r25	; 31
+    240a:	8e bb       	out	0x1e, r24	; 30
+    240c:	e0 9a       	sbi	0x1c, 0	; 28
+    240e:	8d b3       	in	r24, 0x1d	; 29
+    2410:	39 34       	cpi	r19, 0x49	; 73
+    2412:	11 f4       	brne	.+4      	; 0x2418 <get_robotid+0x38>
+    2414:	24 34       	cpi	r18, 0x44	; 68
+    2416:	09 f0       	breq	.+2      	; 0x241a <get_robotid+0x3a>
+    2418:	8f ef       	ldi	r24, 0xFF	; 255
+    241a:	08 95       	ret
 
-    /*swarm_pgh.groupCode = SWARM_PACKET_GROUP_ID;
-    swarm_pgh.timeout_handler = NULL;
-    swarm_pgh.handle_response = NULL;
-    23ae:	e1 99       	sbic	0x1c, 1	; 28
-    23b0:	fe cf       	rjmp	.-4      	; 0x23ae <get_robotid+0x20>
-    swarm_pgh.handle_receive = swarm_handle_receive;
-    swarm_pgh.unregister = NULL;
-    23b2:	82 e1       	ldi	r24, 0x12	; 18
-    23b4:	90 e0       	ldi	r25, 0x00	; 0
-    23b6:	9f bb       	out	0x1f, r25	; 31
-    23b8:	8e bb       	out	0x1e, r24	; 30
-    wl_register_packet_group(&swarm_pgh);*/
+0000241c <get_bom_type>:
+    usb_puts("initialized\r\n");
 
-    23ba:	e0 9a       	sbi	0x1c, 0	; 28
-    wl_token_ring_register();
-    wl_token_ring_join();
-    23bc:	8d b3       	in	r24, 0x1d	; 29
-    int num = 0;*/
+    while (1)
+    {
+	    wl_do();
+    }
+    241c:	e1 99       	sbic	0x1c, 1	; 28
+    241e:	fe cf       	rjmp	.-4      	; 0x241c <get_bom_type>
+}
+    2420:	84 e1       	ldi	r24, 0x14	; 20
+    2422:	90 e0       	ldi	r25, 0x00	; 0
+    2424:	9f bb       	out	0x1f, r25	; 31
+    2426:	8e bb       	out	0x1e, r24	; 30
+    2428:	e0 9a       	sbi	0x1c, 0	; 28
+    242a:	4d b3       	in	r20, 0x1d	; 29
+    usb_puts("initialized\r\n");
 
     while (1)
     {
 	    wl_do();
-        /*packet[16] = num;
-    23be:	39 34       	cpi	r19, 0x49	; 73
-    23c0:	11 f4       	brne	.+4      	; 0x23c6 <get_robotid+0x38>
-    23c2:	24 34       	cpi	r18, 0x44	; 68
-    23c4:	09 f0       	breq	.+2      	; 0x23c8 <get_robotid+0x3a>
-    23c6:	8f ef       	ldi	r24, 0xFF	; 255
-        wl_send_global_packet(SWARM_PACKET_GROUP_ID, 0, packet, length, 0);
-        usb_puts("sent ");
-        usb_puti(num);
-        usb_puts("\r\n");
-    23c8:	08 95       	ret
+    }
+    242c:	e1 99       	sbic	0x1c, 1	; 28
+    242e:	fe cf       	rjmp	.-4      	; 0x242c <get_bom_type+0x10>
+}
+    2430:	85 e1       	ldi	r24, 0x15	; 21
+    2432:	90 e0       	ldi	r25, 0x00	; 0
+    2434:	9f bb       	out	0x1f, r25	; 31
+    2436:	8e bb       	out	0x1e, r24	; 30
+    2438:	e0 9a       	sbi	0x1c, 0	; 28
+    243a:	3d b3       	in	r19, 0x1d	; 29
+    usb_puts("initialized\r\n");
 
-000023ca <get_bom_type>:
-    wl_init();
-    wl_set_channel(0xF);
+    while (1)
+    {
+	    wl_do();
+    }
+    243c:	e1 99       	sbic	0x1c, 1	; 28
+    243e:	fe cf       	rjmp	.-4      	; 0x243c <get_bom_type+0x20>
+}
+    2440:	86 e1       	ldi	r24, 0x16	; 22
+    2442:	90 e0       	ldi	r25, 0x00	; 0
+    2444:	9f bb       	out	0x1f, r25	; 31
+    2446:	8e bb       	out	0x1e, r24	; 30
+    2448:	e0 9a       	sbi	0x1c, 0	; 28
+    244a:	2d b3       	in	r18, 0x1d	; 29
+    usb_puts("initialized\r\n");
 
-    /*swarm_pgh.groupCode = SWARM_PACKET_GROUP_ID;
-    swarm_pgh.timeout_handler = NULL;
-    swarm_pgh.handle_response = NULL;
-    23ca:	e1 99       	sbic	0x1c, 1	; 28
-    23cc:	fe cf       	rjmp	.-4      	; 0x23ca <get_bom_type>
-    swarm_pgh.handle_receive = swarm_handle_receive;
-    swarm_pgh.unregister = NULL;
-    23ce:	84 e1       	ldi	r24, 0x14	; 20
-    23d0:	90 e0       	ldi	r25, 0x00	; 0
-    23d2:	9f bb       	out	0x1f, r25	; 31
-    23d4:	8e bb       	out	0x1e, r24	; 30
-    wl_register_packet_group(&swarm_pgh);*/
-
-    23d6:	e0 9a       	sbi	0x1c, 0	; 28
-    wl_token_ring_register();
-    wl_token_ring_join();
-    23d8:	4d b3       	in	r20, 0x1d	; 29
-    wl_init();
-    wl_set_channel(0xF);
-
-    /*swarm_pgh.groupCode = SWARM_PACKET_GROUP_ID;
-    swarm_pgh.timeout_handler = NULL;
-    swarm_pgh.handle_response = NULL;
-    23da:	e1 99       	sbic	0x1c, 1	; 28
-    23dc:	fe cf       	rjmp	.-4      	; 0x23da <get_bom_type+0x10>
-    swarm_pgh.handle_receive = swarm_handle_receive;
-    swarm_pgh.unregister = NULL;
-    23de:	85 e1       	ldi	r24, 0x15	; 21
-    23e0:	90 e0       	ldi	r25, 0x00	; 0
-    23e2:	9f bb       	out	0x1f, r25	; 31
-    23e4:	8e bb       	out	0x1e, r24	; 30
-    wl_register_packet_group(&swarm_pgh);*/
-
-    23e6:	e0 9a       	sbi	0x1c, 0	; 28
-    wl_token_ring_register();
-    wl_token_ring_join();
-    23e8:	3d b3       	in	r19, 0x1d	; 29
-    wl_init();
-    wl_set_channel(0xF);
-
-    /*swarm_pgh.groupCode = SWARM_PACKET_GROUP_ID;
-    swarm_pgh.timeout_handler = NULL;
-    swarm_pgh.handle_response = NULL;
-    23ea:	e1 99       	sbic	0x1c, 1	; 28
-    23ec:	fe cf       	rjmp	.-4      	; 0x23ea <get_bom_type+0x20>
-    swarm_pgh.handle_receive = swarm_handle_receive;
-    swarm_pgh.unregister = NULL;
-    23ee:	86 e1       	ldi	r24, 0x16	; 22
-    23f0:	90 e0       	ldi	r25, 0x00	; 0
-    23f2:	9f bb       	out	0x1f, r25	; 31
-    23f4:	8e bb       	out	0x1e, r24	; 30
-    wl_register_packet_group(&swarm_pgh);*/
-
-    23f6:	e0 9a       	sbi	0x1c, 0	; 28
-    wl_token_ring_register();
-    wl_token_ring_join();
-    23f8:	2d b3       	in	r18, 0x1d	; 29
-    wl_init();
-    wl_set_channel(0xF);
-
-    /*swarm_pgh.groupCode = SWARM_PACKET_GROUP_ID;
-    swarm_pgh.timeout_handler = NULL;
-    swarm_pgh.handle_response = NULL;
-    23fa:	e1 99       	sbic	0x1c, 1	; 28
-    23fc:	fe cf       	rjmp	.-4      	; 0x23fa <get_bom_type+0x30>
-    swarm_pgh.handle_receive = swarm_handle_receive;
-    swarm_pgh.unregister = NULL;
-    23fe:	87 e1       	ldi	r24, 0x17	; 23
-    2400:	90 e0       	ldi	r25, 0x00	; 0
-    2402:	9f bb       	out	0x1f, r25	; 31
-    2404:	8e bb       	out	0x1e, r24	; 30
-    wl_register_packet_group(&swarm_pgh);*/
-
-    2406:	e0 9a       	sbi	0x1c, 0	; 28
-    wl_token_ring_register();
-    wl_token_ring_join();
-    2408:	8d b3       	in	r24, 0x1d	; 29
+    while (1)
+    {
+	    wl_do();
+    }
+    244c:	e1 99       	sbic	0x1c, 1	; 28
+    244e:	fe cf       	rjmp	.-4      	; 0x244c <get_bom_type+0x30>
 }
+    2450:	87 e1       	ldi	r24, 0x17	; 23
+    2452:	90 e0       	ldi	r25, 0x00	; 0
+    2454:	9f bb       	out	0x1f, r25	; 31
+    2456:	8e bb       	out	0x1e, r24	; 30
+    2458:	e0 9a       	sbi	0x1c, 0	; 28
+    245a:	8d b3       	in	r24, 0x1d	; 29
+    245c:	42 34       	cpi	r20, 0x42	; 66
+    245e:	21 f4       	brne	.+8      	; 0x2468 <get_bom_type+0x4c>
+    2460:	3f 34       	cpi	r19, 0x4F	; 79
+    2462:	11 f4       	brne	.+4      	; 0x2468 <get_bom_type+0x4c>
+    2464:	2d 34       	cpi	r18, 0x4D	; 77
+    2466:	09 f0       	breq	.+2      	; 0x246a <get_bom_type+0x4e>
+    2468:	8f ef       	ldi	r24, 0xFF	; 255
+    246a:	08 95       	ret
 
-/*static void swarm_handle_receive(char type, int wl_source, unsigned char* packet, int length)
-{
-    //wl_send_robot_to_robot_packet(SWARM_PACKET_GROUP_ID, type, packet, length, wl_source, 0);
+0000246c <encoder_read>:
+    246c:	88 23       	and	r24, r24
+    246e:	29 f4       	brne	.+10     	; 0x247a <encoder_read+0xe>
+    2470:	20 91 1a 0a 	lds	r18, 0x0A1A
+    2474:	30 91 1b 0a 	lds	r19, 0x0A1B
+    2478:	09 c0       	rjmp	.+18     	; 0x248c <encoder_read+0x20>
+    247a:	81 30       	cpi	r24, 0x01	; 1
+    247c:	19 f0       	breq	.+6      	; 0x2484 <encoder_read+0x18>
+    247e:	2f ef       	ldi	r18, 0xFF	; 255
+    2480:	3f ef       	ldi	r19, 0xFF	; 255
+    2482:	04 c0       	rjmp	.+8      	; 0x248c <encoder_read+0x20>
+    2484:	20 91 4f 09 	lds	r18, 0x094F
+    2488:	30 91 50 09 	lds	r19, 0x0950
+    248c:	c9 01       	movw	r24, r18
+    248e:	08 95       	ret
 
-    240a:	42 34       	cpi	r20, 0x42	; 66
-    240c:	21 f4       	brne	.+8      	; 0x2416 <get_bom_type+0x4c>
-    240e:	3f 34       	cpi	r19, 0x4F	; 79
-    2410:	11 f4       	brne	.+4      	; 0x2416 <get_bom_type+0x4c>
-    2412:	2d 34       	cpi	r18, 0x4D	; 77
-    2414:	09 f0       	breq	.+2      	; 0x2418 <get_bom_type+0x4e>
-    2416:	8f ef       	ldi	r24, 0xFF	; 255
-    char buf[40];
-    int i;
-    for (i = 0; i < length; i++) {
-        sprintf(buf, "%d: %d ", i, packet[i]);
-    2418:	08 95       	ret
+00002490 <encoder_get_x>:
+    2490:	88 23       	and	r24, r24
+    2492:	29 f4       	brne	.+10     	; 0x249e <encoder_get_x+0xe>
+    2494:	20 91 14 0a 	lds	r18, 0x0A14
+    2498:	30 91 15 0a 	lds	r19, 0x0A15
+    249c:	09 c0       	rjmp	.+18     	; 0x24b0 <encoder_get_x+0x20>
+    249e:	81 30       	cpi	r24, 0x01	; 1
+    24a0:	19 f0       	breq	.+6      	; 0x24a8 <encoder_get_x+0x18>
+    24a2:	2f ef       	ldi	r18, 0xFF	; 255
+    24a4:	3f ef       	ldi	r19, 0xFF	; 255
+    24a6:	04 c0       	rjmp	.+8      	; 0x24b0 <encoder_get_x+0x20>
+    24a8:	20 91 b1 09 	lds	r18, 0x09B1
+    24ac:	30 91 b2 09 	lds	r19, 0x09B2
+    24b0:	c9 01       	movw	r24, r18
+    24b2:	08 95       	ret
 
-0000241a <encoder_read>:
-    241a:	88 23       	and	r24, r24
-    241c:	29 f4       	brne	.+10     	; 0x2428 <encoder_read+0xe>
-    241e:	20 91 2a 0a 	lds	r18, 0x0A2A
-    2422:	30 91 2b 0a 	lds	r19, 0x0A2B
-    2426:	09 c0       	rjmp	.+18     	; 0x243a <encoder_read+0x20>
-    2428:	81 30       	cpi	r24, 0x01	; 1
-    242a:	19 f0       	breq	.+6      	; 0x2432 <encoder_read+0x18>
-    242c:	2f ef       	ldi	r18, 0xFF	; 255
-    242e:	3f ef       	ldi	r19, 0xFF	; 255
-    2430:	04 c0       	rjmp	.+8      	; 0x243a <encoder_read+0x20>
-    2432:	20 91 5f 09 	lds	r18, 0x095F
-    2436:	30 91 60 09 	lds	r19, 0x0960
-    243a:	c9 01       	movw	r24, r18
-    243c:	08 95       	ret
-
-0000243e <encoder_get_x>:
-    243e:	88 23       	and	r24, r24
-    2440:	29 f4       	brne	.+10     	; 0x244c <encoder_get_x+0xe>
-    2442:	20 91 24 0a 	lds	r18, 0x0A24
-    2446:	30 91 25 0a 	lds	r19, 0x0A25
-    244a:	09 c0       	rjmp	.+18     	; 0x245e <encoder_get_x+0x20>
-    244c:	81 30       	cpi	r24, 0x01	; 1
-    244e:	19 f0       	breq	.+6      	; 0x2456 <encoder_get_x+0x18>
-    2450:	2f ef       	ldi	r18, 0xFF	; 255
-    2452:	3f ef       	ldi	r19, 0xFF	; 255
-    2454:	04 c0       	rjmp	.+8      	; 0x245e <encoder_get_x+0x20>
-    2456:	20 91 c1 09 	lds	r18, 0x09C1
-    245a:	30 91 c2 09 	lds	r19, 0x09C2
-    245e:	c9 01       	movw	r24, r18
-    2460:	08 95       	ret
-
-00002462 <encoder_get_dx>:
-    2462:	88 23       	and	r24, r24
-    2464:	29 f4       	brne	.+10     	; 0x2470 <encoder_get_dx+0xe>
-    2466:	20 91 24 0a 	lds	r18, 0x0A24
-    246a:	30 91 25 0a 	lds	r19, 0x0A25
-    246e:	09 c0       	rjmp	.+18     	; 0x2482 <encoder_get_dx+0x20>
-    2470:	81 30       	cpi	r24, 0x01	; 1
-    2472:	19 f0       	breq	.+6      	; 0x247a <encoder_get_dx+0x18>
-    2474:	2f ef       	ldi	r18, 0xFF	; 255
-    2476:	3f ef       	ldi	r19, 0xFF	; 255
-    2478:	04 c0       	rjmp	.+8      	; 0x2482 <encoder_get_dx+0x20>
-    247a:	20 91 c1 09 	lds	r18, 0x09C1
-    247e:	30 91 c2 09 	lds	r19, 0x09C2
-    2482:	c9 01       	movw	r24, r18
-    2484:	08 95       	ret
-
-00002486 <encoder_rst_dx>:
-    2486:	88 23       	and	r24, r24
-    2488:	29 f4       	brne	.+10     	; 0x2494 <encoder_rst_dx+0xe>
-    248a:	10 92 25 0a 	sts	0x0A25, r1
-    248e:	10 92 24 0a 	sts	0x0A24, r1
-    2492:	08 95       	ret
-    2494:	81 30       	cpi	r24, 0x01	; 1
-    2496:	21 f4       	brne	.+8      	; 0x24a0 <encoder_rst_dx+0x1a>
-    2498:	10 92 c2 09 	sts	0x09C2, r1
-    249c:	10 92 c1 09 	sts	0x09C1, r1
-    24a0:	08 95       	ret
-
-000024a2 <encoder_get_tc>:
-    24a2:	80 91 c3 09 	lds	r24, 0x09C3
-    24a6:	90 91 c4 09 	lds	r25, 0x09C4
-    24aa:	08 95       	ret
-
-000024ac <encoder_rst_tc>:
-    24ac:	10 92 c3 09 	sts	0x09C3, r1
-    24b0:	10 92 c4 09 	sts	0x09C4, r1
-    24b4:	10 92 c5 09 	sts	0x09C5, r1
-    24b8:	10 92 c6 09 	sts	0x09C6, r1
-    24bc:	08 95       	ret
-
-000024be <encoder_wait>:
-    24be:	9c 01       	movw	r18, r24
-    24c0:	80 91 5d 09 	lds	r24, 0x095D
-    24c4:	90 91 5e 09 	lds	r25, 0x095E
-    24c8:	82 17       	cp	r24, r18
-    24ca:	93 07       	cpc	r25, r19
-    24cc:	cc f3       	brlt	.-14     	; 0x24c0 <encoder_wait+0x2>
-    24ce:	10 92 5e 09 	sts	0x095E, r1
-    24d2:	10 92 5d 09 	sts	0x095D, r1
+000024b4 <encoder_get_dx>:
+    24b4:	88 23       	and	r24, r24
+    24b6:	29 f4       	brne	.+10     	; 0x24c2 <encoder_get_dx+0xe>
+    24b8:	20 91 14 0a 	lds	r18, 0x0A14
+    24bc:	30 91 15 0a 	lds	r19, 0x0A15
+    24c0:	09 c0       	rjmp	.+18     	; 0x24d4 <encoder_get_dx+0x20>
+    24c2:	81 30       	cpi	r24, 0x01	; 1
+    24c4:	19 f0       	breq	.+6      	; 0x24cc <encoder_get_dx+0x18>
+    24c6:	2f ef       	ldi	r18, 0xFF	; 255
+    24c8:	3f ef       	ldi	r19, 0xFF	; 255
+    24ca:	04 c0       	rjmp	.+8      	; 0x24d4 <encoder_get_dx+0x20>
+    24cc:	20 91 b1 09 	lds	r18, 0x09B1
+    24d0:	30 91 b2 09 	lds	r19, 0x09B2
+    24d4:	c9 01       	movw	r24, r18
     24d6:	08 95       	ret
 
-000024d8 <encoder_recv>:
-    24d8:	40 91 c7 09 	lds	r20, 0x09C7
-    24dc:	42 30       	cpi	r20, 0x02	; 2
-    24de:	e1 f0       	breq	.+56     	; 0x2518 <encoder_recv+0x40>
-    24e0:	43 30       	cpi	r20, 0x03	; 3
-    24e2:	28 f4       	brcc	.+10     	; 0x24ee <encoder_recv+0x16>
-    24e4:	44 23       	and	r20, r20
-    24e6:	41 f0       	breq	.+16     	; 0x24f8 <encoder_recv+0x20>
-    24e8:	41 30       	cpi	r20, 0x01	; 1
-    24ea:	71 f5       	brne	.+92     	; 0x2548 <encoder_recv+0x70>
-    24ec:	08 c0       	rjmp	.+16     	; 0x24fe <encoder_recv+0x26>
-    24ee:	43 30       	cpi	r20, 0x03	; 3
-    24f0:	b9 f0       	breq	.+46     	; 0x2520 <encoder_recv+0x48>
-    24f2:	44 30       	cpi	r20, 0x04	; 4
-    24f4:	49 f5       	brne	.+82     	; 0x2548 <encoder_recv+0x70>
-    24f6:	19 c0       	rjmp	.+50     	; 0x252a <encoder_recv+0x52>
-    24f8:	38 2f       	mov	r19, r24
-    24fa:	20 e0       	ldi	r18, 0x00	; 0
-    24fc:	02 c0       	rjmp	.+4      	; 0x2502 <encoder_recv+0x2a>
-    24fe:	28 2f       	mov	r18, r24
-    2500:	30 e0       	ldi	r19, 0x00	; 0
-    2502:	80 91 28 0a 	lds	r24, 0x0A28
-    2506:	90 91 29 0a 	lds	r25, 0x0A29
-    250a:	82 2b       	or	r24, r18
-    250c:	93 2b       	or	r25, r19
-    250e:	90 93 29 0a 	sts	0x0A29, r25
-    2512:	80 93 28 0a 	sts	0x0A28, r24
-    2516:	18 c0       	rjmp	.+48     	; 0x2548 <encoder_recv+0x70>
-    2518:	38 2f       	mov	r19, r24
-    251a:	33 0f       	add	r19, r19
-    251c:	20 e0       	ldi	r18, 0x00	; 0
-    251e:	0a c0       	rjmp	.+20     	; 0x2534 <encoder_recv+0x5c>
-    2520:	28 2f       	mov	r18, r24
-    2522:	30 e0       	ldi	r19, 0x00	; 0
-    2524:	22 0f       	add	r18, r18
-    2526:	33 1f       	adc	r19, r19
-    2528:	05 c0       	rjmp	.+10     	; 0x2534 <encoder_recv+0x5c>
-    252a:	88 1f       	adc	r24, r24
-    252c:	88 27       	eor	r24, r24
-    252e:	88 1f       	adc	r24, r24
-    2530:	28 2f       	mov	r18, r24
-    2532:	30 e0       	ldi	r19, 0x00	; 0
-    2534:	80 91 61 09 	lds	r24, 0x0961
-    2538:	90 91 62 09 	lds	r25, 0x0962
-    253c:	82 2b       	or	r24, r18
-    253e:	93 2b       	or	r25, r19
-    2540:	90 93 62 09 	sts	0x0962, r25
-    2544:	80 93 61 09 	sts	0x0961, r24
-    2548:	84 2f       	mov	r24, r20
-    254a:	90 e0       	ldi	r25, 0x00	; 0
-    254c:	01 96       	adiw	r24, 0x01	; 1
-    254e:	65 e0       	ldi	r22, 0x05	; 5
-    2550:	70 e0       	ldi	r23, 0x00	; 0
-    2552:	0e 94 13 32 	call	0x6426	; 0x6426 <__divmodhi4>
-    2556:	80 93 c7 09 	sts	0x09C7, r24
-    255a:	88 23       	and	r24, r24
-    255c:	09 f0       	breq	.+2      	; 0x2560 <encoder_recv+0x88>
-    255e:	04 c1       	rjmp	.+520    	; 0x2768 <encoder_recv+0x290>
-    2560:	20 91 61 09 	lds	r18, 0x0961
-    2564:	30 91 62 09 	lds	r19, 0x0962
-    2568:	c9 01       	movw	r24, r18
-    256a:	8c 70       	andi	r24, 0x0C	; 12
-    256c:	90 70       	andi	r25, 0x00	; 0
-    256e:	89 2b       	or	r24, r25
-    2570:	19 f0       	breq	.+6      	; 0x2578 <encoder_recv+0xa0>
-    2572:	83 e0       	ldi	r24, 0x03	; 3
-    2574:	94 e0       	ldi	r25, 0x04	; 4
-    2576:	06 c0       	rjmp	.+12     	; 0x2584 <encoder_recv+0xac>
-    2578:	21 ff       	sbrs	r18, 1
-    257a:	09 c0       	rjmp	.+18     	; 0x258e <encoder_recv+0xb6>
-    257c:	20 ff       	sbrs	r18, 0
-    257e:	07 c0       	rjmp	.+14     	; 0x258e <encoder_recv+0xb6>
-    2580:	81 e0       	ldi	r24, 0x01	; 1
-    2582:	94 e0       	ldi	r25, 0x04	; 4
-    2584:	90 93 2b 0a 	sts	0x0A2B, r25
-    2588:	80 93 2a 0a 	sts	0x0A2A, r24
-    258c:	0a c0       	rjmp	.+20     	; 0x25a2 <encoder_recv+0xca>
-    258e:	75 e0       	ldi	r23, 0x05	; 5
-    2590:	36 95       	lsr	r19
-    2592:	27 95       	ror	r18
-    2594:	7a 95       	dec	r23
-    2596:	e1 f7       	brne	.-8      	; 0x2590 <encoder_recv+0xb8>
-    2598:	33 70       	andi	r19, 0x03	; 3
-    259a:	30 93 2b 0a 	sts	0x0A2B, r19
-    259e:	20 93 2a 0a 	sts	0x0A2A, r18
-    25a2:	20 91 28 0a 	lds	r18, 0x0A28
-    25a6:	30 91 29 0a 	lds	r19, 0x0A29
-    25aa:	c9 01       	movw	r24, r18
-    25ac:	8c 70       	andi	r24, 0x0C	; 12
-    25ae:	90 70       	andi	r25, 0x00	; 0
-    25b0:	89 2b       	or	r24, r25
-    25b2:	19 f0       	breq	.+6      	; 0x25ba <encoder_recv+0xe2>
-    25b4:	83 e0       	ldi	r24, 0x03	; 3
-    25b6:	94 e0       	ldi	r25, 0x04	; 4
-    25b8:	06 c0       	rjmp	.+12     	; 0x25c6 <encoder_recv+0xee>
-    25ba:	21 ff       	sbrs	r18, 1
-    25bc:	09 c0       	rjmp	.+18     	; 0x25d0 <encoder_recv+0xf8>
-    25be:	20 ff       	sbrs	r18, 0
-    25c0:	07 c0       	rjmp	.+14     	; 0x25d0 <encoder_recv+0xf8>
-    25c2:	81 e0       	ldi	r24, 0x01	; 1
-    25c4:	94 e0       	ldi	r25, 0x04	; 4
-    25c6:	90 93 60 09 	sts	0x0960, r25
-    25ca:	80 93 5f 09 	sts	0x095F, r24
-    25ce:	0a c0       	rjmp	.+20     	; 0x25e4 <encoder_recv+0x10c>
-    25d0:	65 e0       	ldi	r22, 0x05	; 5
-    25d2:	36 95       	lsr	r19
-    25d4:	27 95       	ror	r18
-    25d6:	6a 95       	dec	r22
-    25d8:	e1 f7       	brne	.-8      	; 0x25d2 <encoder_recv+0xfa>
-    25da:	33 70       	andi	r19, 0x03	; 3
-    25dc:	30 93 60 09 	sts	0x0960, r19
-    25e0:	20 93 5f 09 	sts	0x095F, r18
-    25e4:	10 92 62 09 	sts	0x0962, r1
-    25e8:	10 92 61 09 	sts	0x0961, r1
-    25ec:	10 92 29 0a 	sts	0x0A29, r1
-    25f0:	10 92 28 0a 	sts	0x0A28, r1
-    25f4:	80 91 2a 0a 	lds	r24, 0x0A2A
-    25f8:	90 91 2b 0a 	lds	r25, 0x0A2B
-    25fc:	24 e0       	ldi	r18, 0x04	; 4
-    25fe:	80 30       	cpi	r24, 0x00	; 0
-    2600:	92 07       	cpc	r25, r18
-    2602:	08 f0       	brcs	.+2      	; 0x2606 <encoder_recv+0x12e>
-    2604:	57 c0       	rjmp	.+174    	; 0x26b4 <encoder_recv+0x1dc>
-    2606:	2f ef       	ldi	r18, 0xFF	; 255
-    2608:	33 e0       	ldi	r19, 0x03	; 3
-    260a:	28 1b       	sub	r18, r24
-    260c:	39 0b       	sbc	r19, r25
-    260e:	30 93 2b 0a 	sts	0x0A2B, r19
-    2612:	20 93 2a 0a 	sts	0x0A2A, r18
-    2616:	80 91 bf 09 	lds	r24, 0x09BF
-    261a:	90 91 c0 09 	lds	r25, 0x09C0
-    261e:	8d 32       	cpi	r24, 0x2D	; 45
-    2620:	91 05       	cpc	r25, r1
-    2622:	29 f4       	brne	.+10     	; 0x262e <encoder_recv+0x156>
-    2624:	10 92 c0 09 	sts	0x09C0, r1
-    2628:	10 92 bf 09 	sts	0x09BF, r1
-    262c:	05 c0       	rjmp	.+10     	; 0x2638 <encoder_recv+0x160>
-    262e:	01 96       	adiw	r24, 0x01	; 1
-    2630:	90 93 c0 09 	sts	0x09C0, r25
-    2634:	80 93 bf 09 	sts	0x09BF, r24
-    2638:	a0 91 bf 09 	lds	r26, 0x09BF
-    263c:	b0 91 c0 09 	lds	r27, 0x09C0
-    2640:	fd 01       	movw	r30, r26
-    2642:	ee 0f       	add	r30, r30
-    2644:	ff 1f       	adc	r31, r31
-    2646:	ed 59       	subi	r30, 0x9D	; 157
-    2648:	f6 4f       	sbci	r31, 0xF6	; 246
-    264a:	31 83       	std	Z+1, r19	; 0x01
-    264c:	20 83       	st	Z, r18
-    264e:	10 97       	sbiw	r26, 0x00	; 0
-    2650:	29 f4       	brne	.+10     	; 0x265c <encoder_recv+0x184>
-    2652:	e0 91 bd 09 	lds	r30, 0x09BD
-    2656:	f0 91 be 09 	lds	r31, 0x09BE
-    265a:	06 c0       	rjmp	.+12     	; 0x2668 <encoder_recv+0x190>
-    265c:	aa 0f       	add	r26, r26
-    265e:	bb 1f       	adc	r27, r27
-    2660:	af 59       	subi	r26, 0x9F	; 159
-    2662:	b6 4f       	sbci	r27, 0xF6	; 246
-    2664:	ed 91       	ld	r30, X+
-    2666:	fc 91       	ld	r31, X
-    2668:	30 97       	sbiw	r30, 0x00	; 0
-    266a:	c1 f0       	breq	.+48     	; 0x269c <encoder_recv+0x1c4>
-    266c:	2e 1b       	sub	r18, r30
-    266e:	3f 0b       	sbc	r19, r31
-    2670:	82 e0       	ldi	r24, 0x02	; 2
-    2672:	21 30       	cpi	r18, 0x01	; 1
-    2674:	38 07       	cpc	r19, r24
-    2676:	3c f0       	brlt	.+14     	; 0x2686 <encoder_recv+0x1ae>
-    2678:	80 91 24 0a 	lds	r24, 0x0A24
-    267c:	90 91 25 0a 	lds	r25, 0x0A25
-    2680:	8f 5f       	subi	r24, 0xFF	; 255
-    2682:	93 40       	sbci	r25, 0x03	; 3
-    2684:	11 c0       	rjmp	.+34     	; 0x26a8 <encoder_recv+0x1d0>
-    2686:	9e ef       	ldi	r25, 0xFE	; 254
-    2688:	20 30       	cpi	r18, 0x00	; 0
-    268a:	39 07       	cpc	r19, r25
-    268c:	4c f4       	brge	.+18     	; 0x26a0 <encoder_recv+0x1c8>
-    268e:	80 91 24 0a 	lds	r24, 0x0A24
-    2692:	90 91 25 0a 	lds	r25, 0x0A25
-    2696:	81 50       	subi	r24, 0x01	; 1
-    2698:	9c 4f       	sbci	r25, 0xFC	; 252
-    269a:	06 c0       	rjmp	.+12     	; 0x26a8 <encoder_recv+0x1d0>
-    269c:	20 e0       	ldi	r18, 0x00	; 0
-    269e:	30 e0       	ldi	r19, 0x00	; 0
-    26a0:	80 91 24 0a 	lds	r24, 0x0A24
-    26a4:	90 91 25 0a 	lds	r25, 0x0A25
-    26a8:	82 0f       	add	r24, r18
-    26aa:	93 1f       	adc	r25, r19
-    26ac:	90 93 25 0a 	sts	0x0A25, r25
-    26b0:	80 93 24 0a 	sts	0x0A24, r24
-    26b4:	20 91 5f 09 	lds	r18, 0x095F
-    26b8:	30 91 60 09 	lds	r19, 0x0960
-    26bc:	84 e0       	ldi	r24, 0x04	; 4
-    26be:	20 30       	cpi	r18, 0x00	; 0
-    26c0:	38 07       	cpc	r19, r24
-    26c2:	08 f0       	brcs	.+2      	; 0x26c6 <encoder_recv+0x1ee>
-    26c4:	51 c0       	rjmp	.+162    	; 0x2768 <encoder_recv+0x290>
-    26c6:	80 91 26 0a 	lds	r24, 0x0A26
-    26ca:	90 91 27 0a 	lds	r25, 0x0A27
-    26ce:	8d 32       	cpi	r24, 0x2D	; 45
-    26d0:	91 05       	cpc	r25, r1
-    26d2:	29 f4       	brne	.+10     	; 0x26de <encoder_recv+0x206>
-    26d4:	10 92 27 0a 	sts	0x0A27, r1
-    26d8:	10 92 26 0a 	sts	0x0A26, r1
-    26dc:	05 c0       	rjmp	.+10     	; 0x26e8 <encoder_recv+0x210>
-    26de:	01 96       	adiw	r24, 0x01	; 1
-    26e0:	90 93 27 0a 	sts	0x0A27, r25
-    26e4:	80 93 26 0a 	sts	0x0A26, r24
-    26e8:	a0 91 26 0a 	lds	r26, 0x0A26
-    26ec:	b0 91 27 0a 	lds	r27, 0x0A27
-    26f0:	fd 01       	movw	r30, r26
-    26f2:	ee 0f       	add	r30, r30
-    26f4:	ff 1f       	adc	r31, r31
-    26f6:	e8 53       	subi	r30, 0x38	; 56
-    26f8:	f6 4f       	sbci	r31, 0xF6	; 246
-    26fa:	31 83       	std	Z+1, r19	; 0x01
-    26fc:	20 83       	st	Z, r18
-    26fe:	10 97       	sbiw	r26, 0x00	; 0
-    2700:	29 f4       	brne	.+10     	; 0x270c <encoder_recv+0x234>
-    2702:	e0 91 22 0a 	lds	r30, 0x0A22
-    2706:	f0 91 23 0a 	lds	r31, 0x0A23
-    270a:	06 c0       	rjmp	.+12     	; 0x2718 <encoder_recv+0x240>
-    270c:	aa 0f       	add	r26, r26
-    270e:	bb 1f       	adc	r27, r27
-    2710:	aa 53       	subi	r26, 0x3A	; 58
-    2712:	b6 4f       	sbci	r27, 0xF6	; 246
-    2714:	ed 91       	ld	r30, X+
-    2716:	fc 91       	ld	r31, X
-    2718:	30 97       	sbiw	r30, 0x00	; 0
-    271a:	d1 f0       	breq	.+52     	; 0x2750 <encoder_recv+0x278>
-    271c:	c9 01       	movw	r24, r18
-    271e:	8e 1b       	sub	r24, r30
-    2720:	9f 0b       	sbc	r25, r31
-    2722:	fc 01       	movw	r30, r24
-    2724:	92 e0       	ldi	r25, 0x02	; 2
-    2726:	e1 30       	cpi	r30, 0x01	; 1
-    2728:	f9 07       	cpc	r31, r25
-    272a:	3c f0       	brlt	.+14     	; 0x273a <encoder_recv+0x262>
-    272c:	80 91 c1 09 	lds	r24, 0x09C1
-    2730:	90 91 c2 09 	lds	r25, 0x09C2
-    2734:	8f 5f       	subi	r24, 0xFF	; 255
-    2736:	93 40       	sbci	r25, 0x03	; 3
-    2738:	11 c0       	rjmp	.+34     	; 0x275c <encoder_recv+0x284>
-    273a:	2e ef       	ldi	r18, 0xFE	; 254
-    273c:	e0 30       	cpi	r30, 0x00	; 0
-    273e:	f2 07       	cpc	r31, r18
-    2740:	4c f4       	brge	.+18     	; 0x2754 <encoder_recv+0x27c>
-    2742:	80 91 c1 09 	lds	r24, 0x09C1
-    2746:	90 91 c2 09 	lds	r25, 0x09C2
-    274a:	81 50       	subi	r24, 0x01	; 1
-    274c:	9c 4f       	sbci	r25, 0xFC	; 252
-    274e:	06 c0       	rjmp	.+12     	; 0x275c <encoder_recv+0x284>
-    2750:	e0 e0       	ldi	r30, 0x00	; 0
-    2752:	f0 e0       	ldi	r31, 0x00	; 0
-    2754:	80 91 c1 09 	lds	r24, 0x09C1
-    2758:	90 91 c2 09 	lds	r25, 0x09C2
-    275c:	8e 0f       	add	r24, r30
-    275e:	9f 1f       	adc	r25, r31
-    2760:	90 93 c2 09 	sts	0x09C2, r25
-    2764:	80 93 c1 09 	sts	0x09C1, r24
-    2768:	80 91 c3 09 	lds	r24, 0x09C3
-    276c:	90 91 c4 09 	lds	r25, 0x09C4
-    2770:	a0 91 c5 09 	lds	r26, 0x09C5
-    2774:	b0 91 c6 09 	lds	r27, 0x09C6
-    2778:	01 96       	adiw	r24, 0x01	; 1
-    277a:	a1 1d       	adc	r26, r1
-    277c:	b1 1d       	adc	r27, r1
-    277e:	80 93 c3 09 	sts	0x09C3, r24
-    2782:	90 93 c4 09 	sts	0x09C4, r25
-    2786:	a0 93 c5 09 	sts	0x09C5, r26
-    278a:	b0 93 c6 09 	sts	0x09C6, r27
-    278e:	08 95       	ret
+000024d8 <encoder_rst_dx>:
+    24d8:	88 23       	and	r24, r24
+    24da:	29 f4       	brne	.+10     	; 0x24e6 <encoder_rst_dx+0xe>
+    24dc:	10 92 15 0a 	sts	0x0A15, r1
+    24e0:	10 92 14 0a 	sts	0x0A14, r1
+    24e4:	08 95       	ret
+    24e6:	81 30       	cpi	r24, 0x01	; 1
+    24e8:	21 f4       	brne	.+8      	; 0x24f2 <encoder_rst_dx+0x1a>
+    24ea:	10 92 b2 09 	sts	0x09B2, r1
+    24ee:	10 92 b1 09 	sts	0x09B1, r1
+    24f2:	08 95       	ret
 
-00002790 <left_data_at>:
-    2790:	e0 91 bf 09 	lds	r30, 0x09BF
-    2794:	f0 91 c0 09 	lds	r31, 0x09C0
-    2798:	e8 1b       	sub	r30, r24
-    279a:	f9 0b       	sbc	r31, r25
-    279c:	f7 fd       	sbrc	r31, 7
-    279e:	be 96       	adiw	r30, 0x2e	; 46
-    27a0:	ee 0f       	add	r30, r30
-    27a2:	ff 1f       	adc	r31, r31
-    27a4:	ed 59       	subi	r30, 0x9D	; 157
-    27a6:	f6 4f       	sbci	r31, 0xF6	; 246
-    27a8:	80 81       	ld	r24, Z
-    27aa:	91 81       	ldd	r25, Z+1	; 0x01
-    27ac:	08 95       	ret
+000024f4 <encoder_get_tc>:
+    24f4:	80 91 b3 09 	lds	r24, 0x09B3
+    24f8:	90 91 b4 09 	lds	r25, 0x09B4
+    24fc:	08 95       	ret
 
-000027ae <right_data_at>:
-    27ae:	e0 91 26 0a 	lds	r30, 0x0A26
-    27b2:	f0 91 27 0a 	lds	r31, 0x0A27
-    27b6:	e8 1b       	sub	r30, r24
-    27b8:	f9 0b       	sbc	r31, r25
-    27ba:	f7 fd       	sbrc	r31, 7
-    27bc:	be 96       	adiw	r30, 0x2e	; 46
-    27be:	ee 0f       	add	r30, r30
-    27c0:	ff 1f       	adc	r31, r31
-    27c2:	e8 53       	subi	r30, 0x38	; 56
-    27c4:	f6 4f       	sbci	r31, 0xF6	; 246
-    27c6:	80 81       	ld	r24, Z
-    27c8:	91 81       	ldd	r25, Z+1	; 0x01
-    27ca:	08 95       	ret
+000024fe <encoder_rst_tc>:
+    24fe:	10 92 b3 09 	sts	0x09B3, r1
+    2502:	10 92 b4 09 	sts	0x09B4, r1
+    2506:	10 92 b5 09 	sts	0x09B5, r1
+    250a:	10 92 b6 09 	sts	0x09B6, r1
+    250e:	08 95       	ret
 
-000027cc <get_dx>:
-    27cc:	ff 92       	push	r15
-    27ce:	0f 93       	push	r16
-    27d0:	1f 93       	push	r17
-    27d2:	cf 93       	push	r28
-    27d4:	df 93       	push	r29
-    27d6:	f8 2e       	mov	r15, r24
-    27d8:	80 91 bf 09 	lds	r24, 0x09BF
-    27dc:	90 91 c0 09 	lds	r25, 0x09C0
-    27e0:	20 91 26 0a 	lds	r18, 0x0A26
-    27e4:	30 91 27 0a 	lds	r19, 0x0A27
-    27e8:	86 97       	sbiw	r24, 0x26	; 38
-    27ea:	8c 01       	movw	r16, r24
-    27ec:	06 1b       	sub	r16, r22
-    27ee:	17 0b       	sbc	r17, r23
-    27f0:	dc 01       	movw	r26, r24
-    27f2:	96 96       	adiw	r26, 0x26	; 38
-    27f4:	a6 1b       	sub	r26, r22
-    27f6:	b7 0b       	sbc	r27, r23
-    27f8:	26 52       	subi	r18, 0x26	; 38
-    27fa:	30 40       	sbci	r19, 0x00	; 0
-    27fc:	e9 01       	movw	r28, r18
-    27fe:	c6 1b       	sub	r28, r22
-    2800:	d7 0b       	sbc	r29, r23
-    2802:	2a 5d       	subi	r18, 0xDA	; 218
-    2804:	3f 4f       	sbci	r19, 0xFF	; 255
-    2806:	26 1b       	sub	r18, r22
-    2808:	37 0b       	sbc	r19, r23
-    280a:	60 e0       	ldi	r22, 0x00	; 0
-    280c:	70 e0       	ldi	r23, 0x00	; 0
-    280e:	ff 20       	and	r15, r15
-    2810:	99 f4       	brne	.+38     	; 0x2838 <get_dx+0x6c>
-    2812:	fd 01       	movw	r30, r26
-    2814:	b7 fd       	sbrc	r27, 7
-    2816:	be 96       	adiw	r30, 0x2e	; 46
-    2818:	ee 0f       	add	r30, r30
-    281a:	ff 1f       	adc	r31, r31
-    281c:	ed 59       	subi	r30, 0x9D	; 157
-    281e:	f6 4f       	sbci	r31, 0xF6	; 246
-    2820:	40 81       	ld	r20, Z
-    2822:	51 81       	ldd	r21, Z+1	; 0x01
-    2824:	f8 01       	movw	r30, r16
-    2826:	17 ff       	sbrs	r17, 7
-    2828:	02 c0       	rjmp	.+4      	; 0x282e <get_dx+0x62>
-    282a:	fd 01       	movw	r30, r26
-    282c:	38 96       	adiw	r30, 0x08	; 8
-    282e:	ee 0f       	add	r30, r30
-    2830:	ff 1f       	adc	r31, r31
-    2832:	ed 59       	subi	r30, 0x9D	; 157
-    2834:	f6 4f       	sbci	r31, 0xF6	; 246
-    2836:	12 c0       	rjmp	.+36     	; 0x285c <get_dx+0x90>
-    2838:	f9 01       	movw	r30, r18
-    283a:	37 fd       	sbrc	r19, 7
-    283c:	be 96       	adiw	r30, 0x2e	; 46
-    283e:	ee 0f       	add	r30, r30
-    2840:	ff 1f       	adc	r31, r31
-    2842:	e8 53       	subi	r30, 0x38	; 56
-    2844:	f6 4f       	sbci	r31, 0xF6	; 246
-    2846:	40 81       	ld	r20, Z
-    2848:	51 81       	ldd	r21, Z+1	; 0x01
-    284a:	fe 01       	movw	r30, r28
-    284c:	d7 ff       	sbrs	r29, 7
-    284e:	02 c0       	rjmp	.+4      	; 0x2854 <get_dx+0x88>
-    2850:	f9 01       	movw	r30, r18
-    2852:	38 96       	adiw	r30, 0x08	; 8
-    2854:	ee 0f       	add	r30, r30
-    2856:	ff 1f       	adc	r31, r31
-    2858:	e8 53       	subi	r30, 0x38	; 56
-    285a:	f6 4f       	sbci	r31, 0xF6	; 246
-    285c:	80 81       	ld	r24, Z
-    285e:	91 81       	ldd	r25, Z+1	; 0x01
-    2860:	48 1b       	sub	r20, r24
-    2862:	59 0b       	sbc	r21, r25
-    2864:	ca 01       	movw	r24, r20
-    2866:	4e 96       	adiw	r24, 0x1e	; 30
-    2868:	cd 97       	sbiw	r24, 0x3d	; 61
-    286a:	68 f0       	brcs	.+26     	; 0x2886 <get_dx+0xba>
-    286c:	6f 5f       	subi	r22, 0xFF	; 255
-    286e:	7f 4f       	sbci	r23, 0xFF	; 255
-    2870:	01 50       	subi	r16, 0x01	; 1
-    2872:	10 40       	sbci	r17, 0x00	; 0
-    2874:	11 97       	sbiw	r26, 0x01	; 1
-    2876:	21 97       	sbiw	r28, 0x01	; 1
-    2878:	21 50       	subi	r18, 0x01	; 1
-    287a:	30 40       	sbci	r19, 0x00	; 0
-    287c:	63 30       	cpi	r22, 0x03	; 3
-    287e:	71 05       	cpc	r23, r1
-    2880:	31 f6       	brne	.-116    	; 0x280e <get_dx+0x42>
-    2882:	40 e0       	ldi	r20, 0x00	; 0
-    2884:	54 e0       	ldi	r21, 0x04	; 4
-    2886:	ca 01       	movw	r24, r20
-    2888:	df 91       	pop	r29
-    288a:	cf 91       	pop	r28
-    288c:	1f 91       	pop	r17
-    288e:	0f 91       	pop	r16
-    2890:	ff 90       	pop	r15
-    2892:	08 95       	ret
+00002510 <encoder_wait>:
+    2510:	9c 01       	movw	r18, r24
+    2512:	80 91 4d 09 	lds	r24, 0x094D
+    2516:	90 91 4e 09 	lds	r25, 0x094E
+    251a:	82 17       	cp	r24, r18
+    251c:	93 07       	cpc	r25, r19
+    251e:	cc f3       	brlt	.-14     	; 0x2512 <encoder_wait+0x2>
+    2520:	10 92 4e 09 	sts	0x094E, r1
+    2524:	10 92 4d 09 	sts	0x094D, r1
+    2528:	08 95       	ret
 
-00002894 <encoder_get_v>:
-    2894:	1f 93       	push	r17
-    2896:	cf 93       	push	r28
-    2898:	df 93       	push	r29
-    289a:	18 2f       	mov	r17, r24
-    289c:	60 e0       	ldi	r22, 0x00	; 0
-    289e:	70 e0       	ldi	r23, 0x00	; 0
-    28a0:	0e 94 e6 13 	call	0x27cc	; 0x27cc <get_dx>
-    28a4:	ec 01       	movw	r28, r24
-    28a6:	81 2f       	mov	r24, r17
-    28a8:	61 e0       	ldi	r22, 0x01	; 1
-    28aa:	70 e0       	ldi	r23, 0x00	; 0
-    28ac:	0e 94 e6 13 	call	0x27cc	; 0x27cc <get_dx>
-    28b0:	24 e0       	ldi	r18, 0x04	; 4
-    28b2:	c0 30       	cpi	r28, 0x00	; 0
-    28b4:	d2 07       	cpc	r29, r18
-    28b6:	39 f4       	brne	.+14     	; 0x28c6 <encoder_get_v+0x32>
-    28b8:	24 e0       	ldi	r18, 0x04	; 4
-    28ba:	80 30       	cpi	r24, 0x00	; 0
-    28bc:	92 07       	cpc	r25, r18
-    28be:	49 f4       	brne	.+18     	; 0x28d2 <encoder_get_v+0x3e>
-    28c0:	20 e0       	ldi	r18, 0x00	; 0
-    28c2:	38 e0       	ldi	r19, 0x08	; 8
-    28c4:	0d c0       	rjmp	.+26     	; 0x28e0 <encoder_get_v+0x4c>
-    28c6:	24 e0       	ldi	r18, 0x04	; 4
-    28c8:	80 30       	cpi	r24, 0x00	; 0
-    28ca:	92 07       	cpc	r25, r18
-    28cc:	31 f4       	brne	.+12     	; 0x28da <encoder_get_v+0x46>
-    28ce:	9e 01       	movw	r18, r28
-    28d0:	01 c0       	rjmp	.+2      	; 0x28d4 <encoder_get_v+0x40>
-    28d2:	9c 01       	movw	r18, r24
-    28d4:	22 0f       	add	r18, r18
-    28d6:	33 1f       	adc	r19, r19
-    28d8:	03 c0       	rjmp	.+6      	; 0x28e0 <encoder_get_v+0x4c>
-    28da:	9c 01       	movw	r18, r24
-    28dc:	2c 0f       	add	r18, r28
-    28de:	3d 1f       	adc	r19, r29
-    28e0:	c9 01       	movw	r24, r18
-    28e2:	df 91       	pop	r29
-    28e4:	cf 91       	pop	r28
-    28e6:	1f 91       	pop	r17
-    28e8:	08 95       	ret
+0000252a <encoder_recv>:
+    252a:	40 91 b7 09 	lds	r20, 0x09B7
+    252e:	42 30       	cpi	r20, 0x02	; 2
+    2530:	e1 f0       	breq	.+56     	; 0x256a <encoder_recv+0x40>
+    2532:	43 30       	cpi	r20, 0x03	; 3
+    2534:	28 f4       	brcc	.+10     	; 0x2540 <encoder_recv+0x16>
+    2536:	44 23       	and	r20, r20
+    2538:	41 f0       	breq	.+16     	; 0x254a <encoder_recv+0x20>
+    253a:	41 30       	cpi	r20, 0x01	; 1
+    253c:	71 f5       	brne	.+92     	; 0x259a <encoder_recv+0x70>
+    253e:	08 c0       	rjmp	.+16     	; 0x2550 <encoder_recv+0x26>
+    2540:	43 30       	cpi	r20, 0x03	; 3
+    2542:	b9 f0       	breq	.+46     	; 0x2572 <encoder_recv+0x48>
+    2544:	44 30       	cpi	r20, 0x04	; 4
+    2546:	49 f5       	brne	.+82     	; 0x259a <encoder_recv+0x70>
+    2548:	19 c0       	rjmp	.+50     	; 0x257c <encoder_recv+0x52>
+    254a:	38 2f       	mov	r19, r24
+    254c:	20 e0       	ldi	r18, 0x00	; 0
+    254e:	02 c0       	rjmp	.+4      	; 0x2554 <encoder_recv+0x2a>
+    2550:	28 2f       	mov	r18, r24
+    2552:	30 e0       	ldi	r19, 0x00	; 0
+    2554:	80 91 18 0a 	lds	r24, 0x0A18
+    2558:	90 91 19 0a 	lds	r25, 0x0A19
+    255c:	82 2b       	or	r24, r18
+    255e:	93 2b       	or	r25, r19
+    2560:	90 93 19 0a 	sts	0x0A19, r25
+    2564:	80 93 18 0a 	sts	0x0A18, r24
+    2568:	18 c0       	rjmp	.+48     	; 0x259a <encoder_recv+0x70>
+    256a:	38 2f       	mov	r19, r24
+    256c:	33 0f       	add	r19, r19
+    256e:	20 e0       	ldi	r18, 0x00	; 0
+    2570:	0a c0       	rjmp	.+20     	; 0x2586 <encoder_recv+0x5c>
+    2572:	28 2f       	mov	r18, r24
+    2574:	30 e0       	ldi	r19, 0x00	; 0
+    2576:	22 0f       	add	r18, r18
+    2578:	33 1f       	adc	r19, r19
+    257a:	05 c0       	rjmp	.+10     	; 0x2586 <encoder_recv+0x5c>
+    257c:	88 1f       	adc	r24, r24
+    257e:	88 27       	eor	r24, r24
+    2580:	88 1f       	adc	r24, r24
+    2582:	28 2f       	mov	r18, r24
+    2584:	30 e0       	ldi	r19, 0x00	; 0
+    2586:	80 91 51 09 	lds	r24, 0x0951
+    258a:	90 91 52 09 	lds	r25, 0x0952
+    258e:	82 2b       	or	r24, r18
+    2590:	93 2b       	or	r25, r19
+    2592:	90 93 52 09 	sts	0x0952, r25
+    2596:	80 93 51 09 	sts	0x0951, r24
+    259a:	84 2f       	mov	r24, r20
+    259c:	90 e0       	ldi	r25, 0x00	; 0
+    259e:	01 96       	adiw	r24, 0x01	; 1
+    25a0:	65 e0       	ldi	r22, 0x05	; 5
+    25a2:	70 e0       	ldi	r23, 0x00	; 0
+    25a4:	0e 94 aa 2f 	call	0x5f54	; 0x5f54 <__divmodhi4>
+    25a8:	80 93 b7 09 	sts	0x09B7, r24
+    25ac:	88 23       	and	r24, r24
+    25ae:	09 f0       	breq	.+2      	; 0x25b2 <encoder_recv+0x88>
+    25b0:	04 c1       	rjmp	.+520    	; 0x27ba <encoder_recv+0x290>
+    25b2:	20 91 51 09 	lds	r18, 0x0951
+    25b6:	30 91 52 09 	lds	r19, 0x0952
+    25ba:	c9 01       	movw	r24, r18
+    25bc:	8c 70       	andi	r24, 0x0C	; 12
+    25be:	90 70       	andi	r25, 0x00	; 0
+    25c0:	89 2b       	or	r24, r25
+    25c2:	19 f0       	breq	.+6      	; 0x25ca <encoder_recv+0xa0>
+    25c4:	83 e0       	ldi	r24, 0x03	; 3
+    25c6:	94 e0       	ldi	r25, 0x04	; 4
+    25c8:	06 c0       	rjmp	.+12     	; 0x25d6 <encoder_recv+0xac>
+    25ca:	21 ff       	sbrs	r18, 1
+    25cc:	09 c0       	rjmp	.+18     	; 0x25e0 <encoder_recv+0xb6>
+    25ce:	20 ff       	sbrs	r18, 0
+    25d0:	07 c0       	rjmp	.+14     	; 0x25e0 <encoder_recv+0xb6>
+    25d2:	81 e0       	ldi	r24, 0x01	; 1
+    25d4:	94 e0       	ldi	r25, 0x04	; 4
+    25d6:	90 93 1b 0a 	sts	0x0A1B, r25
+    25da:	80 93 1a 0a 	sts	0x0A1A, r24
+    25de:	0a c0       	rjmp	.+20     	; 0x25f4 <encoder_recv+0xca>
+    25e0:	75 e0       	ldi	r23, 0x05	; 5
+    25e2:	36 95       	lsr	r19
+    25e4:	27 95       	ror	r18
+    25e6:	7a 95       	dec	r23
+    25e8:	e1 f7       	brne	.-8      	; 0x25e2 <encoder_recv+0xb8>
+    25ea:	33 70       	andi	r19, 0x03	; 3
+    25ec:	30 93 1b 0a 	sts	0x0A1B, r19
+    25f0:	20 93 1a 0a 	sts	0x0A1A, r18
+    25f4:	20 91 18 0a 	lds	r18, 0x0A18
+    25f8:	30 91 19 0a 	lds	r19, 0x0A19
+    25fc:	c9 01       	movw	r24, r18
+    25fe:	8c 70       	andi	r24, 0x0C	; 12
+    2600:	90 70       	andi	r25, 0x00	; 0
+    2602:	89 2b       	or	r24, r25
+    2604:	19 f0       	breq	.+6      	; 0x260c <encoder_recv+0xe2>
+    2606:	83 e0       	ldi	r24, 0x03	; 3
+    2608:	94 e0       	ldi	r25, 0x04	; 4
+    260a:	06 c0       	rjmp	.+12     	; 0x2618 <encoder_recv+0xee>
+    260c:	21 ff       	sbrs	r18, 1
+    260e:	09 c0       	rjmp	.+18     	; 0x2622 <encoder_recv+0xf8>
+    2610:	20 ff       	sbrs	r18, 0
+    2612:	07 c0       	rjmp	.+14     	; 0x2622 <encoder_recv+0xf8>
+    2614:	81 e0       	ldi	r24, 0x01	; 1
+    2616:	94 e0       	ldi	r25, 0x04	; 4
+    2618:	90 93 50 09 	sts	0x0950, r25
+    261c:	80 93 4f 09 	sts	0x094F, r24
+    2620:	0a c0       	rjmp	.+20     	; 0x2636 <encoder_recv+0x10c>
+    2622:	65 e0       	ldi	r22, 0x05	; 5
+    2624:	36 95       	lsr	r19
+    2626:	27 95       	ror	r18
+    2628:	6a 95       	dec	r22
+    262a:	e1 f7       	brne	.-8      	; 0x2624 <encoder_recv+0xfa>
+    262c:	33 70       	andi	r19, 0x03	; 3
+    262e:	30 93 50 09 	sts	0x0950, r19
+    2632:	20 93 4f 09 	sts	0x094F, r18
+    2636:	10 92 52 09 	sts	0x0952, r1
+    263a:	10 92 51 09 	sts	0x0951, r1
+    263e:	10 92 19 0a 	sts	0x0A19, r1
+    2642:	10 92 18 0a 	sts	0x0A18, r1
+    2646:	80 91 1a 0a 	lds	r24, 0x0A1A
+    264a:	90 91 1b 0a 	lds	r25, 0x0A1B
+    264e:	24 e0       	ldi	r18, 0x04	; 4
+    2650:	80 30       	cpi	r24, 0x00	; 0
+    2652:	92 07       	cpc	r25, r18
+    2654:	08 f0       	brcs	.+2      	; 0x2658 <encoder_recv+0x12e>
+    2656:	57 c0       	rjmp	.+174    	; 0x2706 <encoder_recv+0x1dc>
+    2658:	2f ef       	ldi	r18, 0xFF	; 255
+    265a:	33 e0       	ldi	r19, 0x03	; 3
+    265c:	28 1b       	sub	r18, r24
+    265e:	39 0b       	sbc	r19, r25
+    2660:	30 93 1b 0a 	sts	0x0A1B, r19
+    2664:	20 93 1a 0a 	sts	0x0A1A, r18
+    2668:	80 91 af 09 	lds	r24, 0x09AF
+    266c:	90 91 b0 09 	lds	r25, 0x09B0
+    2670:	8d 32       	cpi	r24, 0x2D	; 45
+    2672:	91 05       	cpc	r25, r1
+    2674:	29 f4       	brne	.+10     	; 0x2680 <encoder_recv+0x156>
+    2676:	10 92 b0 09 	sts	0x09B0, r1
+    267a:	10 92 af 09 	sts	0x09AF, r1
+    267e:	05 c0       	rjmp	.+10     	; 0x268a <encoder_recv+0x160>
+    2680:	01 96       	adiw	r24, 0x01	; 1
+    2682:	90 93 b0 09 	sts	0x09B0, r25
+    2686:	80 93 af 09 	sts	0x09AF, r24
+    268a:	a0 91 af 09 	lds	r26, 0x09AF
+    268e:	b0 91 b0 09 	lds	r27, 0x09B0
+    2692:	fd 01       	movw	r30, r26
+    2694:	ee 0f       	add	r30, r30
+    2696:	ff 1f       	adc	r31, r31
+    2698:	ed 5a       	subi	r30, 0xAD	; 173
+    269a:	f6 4f       	sbci	r31, 0xF6	; 246
+    269c:	31 83       	std	Z+1, r19	; 0x01
+    269e:	20 83       	st	Z, r18
+    26a0:	10 97       	sbiw	r26, 0x00	; 0
+    26a2:	29 f4       	brne	.+10     	; 0x26ae <encoder_recv+0x184>
+    26a4:	e0 91 ad 09 	lds	r30, 0x09AD
+    26a8:	f0 91 ae 09 	lds	r31, 0x09AE
+    26ac:	06 c0       	rjmp	.+12     	; 0x26ba <encoder_recv+0x190>
+    26ae:	aa 0f       	add	r26, r26
+    26b0:	bb 1f       	adc	r27, r27
+    26b2:	af 5a       	subi	r26, 0xAF	; 175
+    26b4:	b6 4f       	sbci	r27, 0xF6	; 246
+    26b6:	ed 91       	ld	r30, X+
+    26b8:	fc 91       	ld	r31, X
+    26ba:	30 97       	sbiw	r30, 0x00	; 0
+    26bc:	c1 f0       	breq	.+48     	; 0x26ee <encoder_recv+0x1c4>
+    26be:	2e 1b       	sub	r18, r30
+    26c0:	3f 0b       	sbc	r19, r31
+    26c2:	82 e0       	ldi	r24, 0x02	; 2
+    26c4:	21 30       	cpi	r18, 0x01	; 1
+    26c6:	38 07       	cpc	r19, r24
+    26c8:	3c f0       	brlt	.+14     	; 0x26d8 <encoder_recv+0x1ae>
+    26ca:	80 91 14 0a 	lds	r24, 0x0A14
+    26ce:	90 91 15 0a 	lds	r25, 0x0A15
+    26d2:	8f 5f       	subi	r24, 0xFF	; 255
+    26d4:	93 40       	sbci	r25, 0x03	; 3
+    26d6:	11 c0       	rjmp	.+34     	; 0x26fa <encoder_recv+0x1d0>
+    26d8:	9e ef       	ldi	r25, 0xFE	; 254
+    26da:	20 30       	cpi	r18, 0x00	; 0
+    26dc:	39 07       	cpc	r19, r25
+    26de:	4c f4       	brge	.+18     	; 0x26f2 <encoder_recv+0x1c8>
+    26e0:	80 91 14 0a 	lds	r24, 0x0A14
+    26e4:	90 91 15 0a 	lds	r25, 0x0A15
+    26e8:	81 50       	subi	r24, 0x01	; 1
+    26ea:	9c 4f       	sbci	r25, 0xFC	; 252
+    26ec:	06 c0       	rjmp	.+12     	; 0x26fa <encoder_recv+0x1d0>
+    26ee:	20 e0       	ldi	r18, 0x00	; 0
+    26f0:	30 e0       	ldi	r19, 0x00	; 0
+    26f2:	80 91 14 0a 	lds	r24, 0x0A14
+    26f6:	90 91 15 0a 	lds	r25, 0x0A15
+    26fa:	82 0f       	add	r24, r18
+    26fc:	93 1f       	adc	r25, r19
+    26fe:	90 93 15 0a 	sts	0x0A15, r25
+    2702:	80 93 14 0a 	sts	0x0A14, r24
+    2706:	20 91 4f 09 	lds	r18, 0x094F
+    270a:	30 91 50 09 	lds	r19, 0x0950
+    270e:	84 e0       	ldi	r24, 0x04	; 4
+    2710:	20 30       	cpi	r18, 0x00	; 0
+    2712:	38 07       	cpc	r19, r24
+    2714:	08 f0       	brcs	.+2      	; 0x2718 <encoder_recv+0x1ee>
+    2716:	51 c0       	rjmp	.+162    	; 0x27ba <encoder_recv+0x290>
+    2718:	80 91 16 0a 	lds	r24, 0x0A16
+    271c:	90 91 17 0a 	lds	r25, 0x0A17
+    2720:	8d 32       	cpi	r24, 0x2D	; 45
+    2722:	91 05       	cpc	r25, r1
+    2724:	29 f4       	brne	.+10     	; 0x2730 <encoder_recv+0x206>
+    2726:	10 92 17 0a 	sts	0x0A17, r1
+    272a:	10 92 16 0a 	sts	0x0A16, r1
+    272e:	05 c0       	rjmp	.+10     	; 0x273a <encoder_recv+0x210>
+    2730:	01 96       	adiw	r24, 0x01	; 1
+    2732:	90 93 17 0a 	sts	0x0A17, r25
+    2736:	80 93 16 0a 	sts	0x0A16, r24
+    273a:	a0 91 16 0a 	lds	r26, 0x0A16
+    273e:	b0 91 17 0a 	lds	r27, 0x0A17
+    2742:	fd 01       	movw	r30, r26
+    2744:	ee 0f       	add	r30, r30
+    2746:	ff 1f       	adc	r31, r31
+    2748:	e8 54       	subi	r30, 0x48	; 72
+    274a:	f6 4f       	sbci	r31, 0xF6	; 246
+    274c:	31 83       	std	Z+1, r19	; 0x01
+    274e:	20 83       	st	Z, r18
+    2750:	10 97       	sbiw	r26, 0x00	; 0
+    2752:	29 f4       	brne	.+10     	; 0x275e <encoder_recv+0x234>
+    2754:	e0 91 12 0a 	lds	r30, 0x0A12
+    2758:	f0 91 13 0a 	lds	r31, 0x0A13
+    275c:	06 c0       	rjmp	.+12     	; 0x276a <encoder_recv+0x240>
+    275e:	aa 0f       	add	r26, r26
+    2760:	bb 1f       	adc	r27, r27
+    2762:	aa 54       	subi	r26, 0x4A	; 74
+    2764:	b6 4f       	sbci	r27, 0xF6	; 246
+    2766:	ed 91       	ld	r30, X+
+    2768:	fc 91       	ld	r31, X
+    276a:	30 97       	sbiw	r30, 0x00	; 0
+    276c:	d1 f0       	breq	.+52     	; 0x27a2 <encoder_recv+0x278>
+    276e:	c9 01       	movw	r24, r18
+    2770:	8e 1b       	sub	r24, r30
+    2772:	9f 0b       	sbc	r25, r31
+    2774:	fc 01       	movw	r30, r24
+    2776:	92 e0       	ldi	r25, 0x02	; 2
+    2778:	e1 30       	cpi	r30, 0x01	; 1
+    277a:	f9 07       	cpc	r31, r25
+    277c:	3c f0       	brlt	.+14     	; 0x278c <encoder_recv+0x262>
+    277e:	80 91 b1 09 	lds	r24, 0x09B1
+    2782:	90 91 b2 09 	lds	r25, 0x09B2
+    2786:	8f 5f       	subi	r24, 0xFF	; 255
+    2788:	93 40       	sbci	r25, 0x03	; 3
+    278a:	11 c0       	rjmp	.+34     	; 0x27ae <encoder_recv+0x284>
+    278c:	2e ef       	ldi	r18, 0xFE	; 254
+    278e:	e0 30       	cpi	r30, 0x00	; 0
+    2790:	f2 07       	cpc	r31, r18
+    2792:	4c f4       	brge	.+18     	; 0x27a6 <encoder_recv+0x27c>
+    2794:	80 91 b1 09 	lds	r24, 0x09B1
+    2798:	90 91 b2 09 	lds	r25, 0x09B2
+    279c:	81 50       	subi	r24, 0x01	; 1
+    279e:	9c 4f       	sbci	r25, 0xFC	; 252
+    27a0:	06 c0       	rjmp	.+12     	; 0x27ae <encoder_recv+0x284>
+    27a2:	e0 e0       	ldi	r30, 0x00	; 0
+    27a4:	f0 e0       	ldi	r31, 0x00	; 0
+    27a6:	80 91 b1 09 	lds	r24, 0x09B1
+    27aa:	90 91 b2 09 	lds	r25, 0x09B2
+    27ae:	8e 0f       	add	r24, r30
+    27b0:	9f 1f       	adc	r25, r31
+    27b2:	90 93 b2 09 	sts	0x09B2, r25
+    27b6:	80 93 b1 09 	sts	0x09B1, r24
+    27ba:	80 91 b3 09 	lds	r24, 0x09B3
+    27be:	90 91 b4 09 	lds	r25, 0x09B4
+    27c2:	a0 91 b5 09 	lds	r26, 0x09B5
+    27c6:	b0 91 b6 09 	lds	r27, 0x09B6
+    27ca:	01 96       	adiw	r24, 0x01	; 1
+    27cc:	a1 1d       	adc	r26, r1
+    27ce:	b1 1d       	adc	r27, r1
+    27d0:	80 93 b3 09 	sts	0x09B3, r24
+    27d4:	90 93 b4 09 	sts	0x09B4, r25
+    27d8:	a0 93 b5 09 	sts	0x09B5, r26
+    27dc:	b0 93 b6 09 	sts	0x09B6, r27
+    27e0:	08 95       	ret
 
-000028ea <encoders_init>:
-    //wl_send_robot_to_robot_packet(SWARM_PACKET_GROUP_ID, type, packet, length, wl_source, 0);
+000027e2 <left_data_at>:
+    27e2:	e0 91 af 09 	lds	r30, 0x09AF
+    27e6:	f0 91 b0 09 	lds	r31, 0x09B0
+    27ea:	e8 1b       	sub	r30, r24
+    27ec:	f9 0b       	sbc	r31, r25
+    27ee:	f7 fd       	sbrc	r31, 7
+    27f0:	be 96       	adiw	r30, 0x2e	; 46
+    27f2:	ee 0f       	add	r30, r30
+    27f4:	ff 1f       	adc	r31, r31
+    27f6:	ed 5a       	subi	r30, 0xAD	; 173
+    27f8:	f6 4f       	sbci	r31, 0xF6	; 246
+    27fa:	80 81       	ld	r24, Z
+    27fc:	91 81       	ldd	r25, Z+1	; 0x01
+    27fe:	08 95       	ret
 
-    char buf[40];
-    int i;
-    for (i = 0; i < length; i++) {
-        sprintf(buf, "%d: %d ", i, packet[i]);
-    28ea:	10 92 5e 09 	sts	0x095E, r1
-    28ee:	10 92 5d 09 	sts	0x095D, r1
-        usb_puts(buf);
-    }
-    28f2:	8c e6       	ldi	r24, 0x6C	; 108
-    28f4:	92 e1       	ldi	r25, 0x12	; 18
-    28f6:	6f ea       	ldi	r22, 0xAF	; 175
-    28f8:	74 e1       	ldi	r23, 0x14	; 20
-    28fa:	0e 94 85 1b 	call	0x370a	; 0x370a <spi_init>
-    usb_puts("\r\n");
-    28fe:	10 92 c7 09 	sts	0x09C7, r1
-}*/
-    2902:	10 92 62 09 	sts	0x0962, r1
-    2906:	10 92 61 09 	sts	0x0961, r1
+00002800 <right_data_at>:
+    2800:	e0 91 16 0a 	lds	r30, 0x0A16
+    2804:	f0 91 17 0a 	lds	r31, 0x0A17
+    2808:	e8 1b       	sub	r30, r24
+    280a:	f9 0b       	sbc	r31, r25
+    280c:	f7 fd       	sbrc	r31, 7
+    280e:	be 96       	adiw	r30, 0x2e	; 46
+    2810:	ee 0f       	add	r30, r30
+    2812:	ff 1f       	adc	r31, r31
+    2814:	e8 54       	subi	r30, 0x48	; 72
+    2816:	f6 4f       	sbci	r31, 0xF6	; 246
+    2818:	80 81       	ld	r24, Z
+    281a:	91 81       	ldd	r25, Z+1	; 0x01
+    281c:	08 95       	ret
 
-    290a:	10 92 29 0a 	sts	0x0A29, r1
-    290e:	10 92 28 0a 	sts	0x0A28, r1
-    2912:	8f ef       	ldi	r24, 0xFF	; 255
-    2914:	9f ef       	ldi	r25, 0xFF	; 255
-    2916:	90 93 2b 0a 	sts	0x0A2B, r25
-    291a:	80 93 2a 0a 	sts	0x0A2A, r24
-    291e:	90 93 60 09 	sts	0x0960, r25
-    2922:	80 93 5f 09 	sts	0x095F, r24
-    2926:	10 92 c0 09 	sts	0x09C0, r1
-    292a:	10 92 bf 09 	sts	0x09BF, r1
-    292e:	10 92 27 0a 	sts	0x0A27, r1
-    2932:	10 92 26 0a 	sts	0x0A26, r1
-    2936:	e3 e6       	ldi	r30, 0x63	; 99
-    2938:	f9 e0       	ldi	r31, 0x09	; 9
-    293a:	11 92       	st	Z+, r1
-    293c:	11 92       	st	Z+, r1
-    293e:	89 e0       	ldi	r24, 0x09	; 9
-    2940:	ef 3b       	cpi	r30, 0xBF	; 191
-    2942:	f8 07       	cpc	r31, r24
-    2944:	d1 f7       	brne	.-12     	; 0x293a <encoders_init+0x50>
-    2946:	e8 ec       	ldi	r30, 0xC8	; 200
-    2948:	f9 e0       	ldi	r31, 0x09	; 9
-    294a:	11 92       	st	Z+, r1
-    294c:	11 92       	st	Z+, r1
-    294e:	8a e0       	ldi	r24, 0x0A	; 10
-    2950:	e4 32       	cpi	r30, 0x24	; 36
-    2952:	f8 07       	cpc	r31, r24
-    2954:	d1 f7       	brne	.-12     	; 0x294a <encoders_init+0x60>
-    2956:	85 e0       	ldi	r24, 0x05	; 5
-    2958:	0e 94 99 1b 	call	0x3732	; 0x3732 <spi_transfer>
-    295c:	08 95       	ret
+0000281e <get_dx>:
+    281e:	ff 92       	push	r15
+    2820:	0f 93       	push	r16
+    2822:	1f 93       	push	r17
+    2824:	cf 93       	push	r28
+    2826:	df 93       	push	r29
+    2828:	f8 2e       	mov	r15, r24
+    282a:	80 91 af 09 	lds	r24, 0x09AF
+    282e:	90 91 b0 09 	lds	r25, 0x09B0
+    2832:	20 91 16 0a 	lds	r18, 0x0A16
+    2836:	30 91 17 0a 	lds	r19, 0x0A17
+    283a:	86 97       	sbiw	r24, 0x26	; 38
+    283c:	8c 01       	movw	r16, r24
+    283e:	06 1b       	sub	r16, r22
+    2840:	17 0b       	sbc	r17, r23
+    2842:	dc 01       	movw	r26, r24
+    2844:	96 96       	adiw	r26, 0x26	; 38
+    2846:	a6 1b       	sub	r26, r22
+    2848:	b7 0b       	sbc	r27, r23
+    284a:	26 52       	subi	r18, 0x26	; 38
+    284c:	30 40       	sbci	r19, 0x00	; 0
+    284e:	e9 01       	movw	r28, r18
+    2850:	c6 1b       	sub	r28, r22
+    2852:	d7 0b       	sbc	r29, r23
+    2854:	2a 5d       	subi	r18, 0xDA	; 218
+    2856:	3f 4f       	sbci	r19, 0xFF	; 255
+    2858:	26 1b       	sub	r18, r22
+    285a:	37 0b       	sbc	r19, r23
+    285c:	60 e0       	ldi	r22, 0x00	; 0
+    285e:	70 e0       	ldi	r23, 0x00	; 0
+    2860:	ff 20       	and	r15, r15
+    2862:	99 f4       	brne	.+38     	; 0x288a <get_dx+0x6c>
+    2864:	fd 01       	movw	r30, r26
+    2866:	b7 fd       	sbrc	r27, 7
+    2868:	be 96       	adiw	r30, 0x2e	; 46
+    286a:	ee 0f       	add	r30, r30
+    286c:	ff 1f       	adc	r31, r31
+    286e:	ed 5a       	subi	r30, 0xAD	; 173
+    2870:	f6 4f       	sbci	r31, 0xF6	; 246
+    2872:	40 81       	ld	r20, Z
+    2874:	51 81       	ldd	r21, Z+1	; 0x01
+    2876:	f8 01       	movw	r30, r16
+    2878:	17 ff       	sbrs	r17, 7
+    287a:	02 c0       	rjmp	.+4      	; 0x2880 <get_dx+0x62>
+    287c:	fd 01       	movw	r30, r26
+    287e:	38 96       	adiw	r30, 0x08	; 8
+    2880:	ee 0f       	add	r30, r30
+    2882:	ff 1f       	adc	r31, r31
+    2884:	ed 5a       	subi	r30, 0xAD	; 173
+    2886:	f6 4f       	sbci	r31, 0xF6	; 246
+    2888:	12 c0       	rjmp	.+36     	; 0x28ae <get_dx+0x90>
+    288a:	f9 01       	movw	r30, r18
+    288c:	37 fd       	sbrc	r19, 7
+    288e:	be 96       	adiw	r30, 0x2e	; 46
+    2890:	ee 0f       	add	r30, r30
+    2892:	ff 1f       	adc	r31, r31
+    2894:	e8 54       	subi	r30, 0x48	; 72
+    2896:	f6 4f       	sbci	r31, 0xF6	; 246
+    2898:	40 81       	ld	r20, Z
+    289a:	51 81       	ldd	r21, Z+1	; 0x01
+    289c:	fe 01       	movw	r30, r28
+    289e:	d7 ff       	sbrs	r29, 7
+    28a0:	02 c0       	rjmp	.+4      	; 0x28a6 <get_dx+0x88>
+    28a2:	f9 01       	movw	r30, r18
+    28a4:	38 96       	adiw	r30, 0x08	; 8
+    28a6:	ee 0f       	add	r30, r30
+    28a8:	ff 1f       	adc	r31, r31
+    28aa:	e8 54       	subi	r30, 0x48	; 72
+    28ac:	f6 4f       	sbci	r31, 0xF6	; 246
+    28ae:	80 81       	ld	r24, Z
+    28b0:	91 81       	ldd	r25, Z+1	; 0x01
+    28b2:	48 1b       	sub	r20, r24
+    28b4:	59 0b       	sbc	r21, r25
+    28b6:	ca 01       	movw	r24, r20
+    28b8:	4e 96       	adiw	r24, 0x1e	; 30
+    28ba:	cd 97       	sbiw	r24, 0x3d	; 61
+    28bc:	68 f0       	brcs	.+26     	; 0x28d8 <get_dx+0xba>
+    28be:	6f 5f       	subi	r22, 0xFF	; 255
+    28c0:	7f 4f       	sbci	r23, 0xFF	; 255
+    28c2:	01 50       	subi	r16, 0x01	; 1
+    28c4:	10 40       	sbci	r17, 0x00	; 0
+    28c6:	11 97       	sbiw	r26, 0x01	; 1
+    28c8:	21 97       	sbiw	r28, 0x01	; 1
+    28ca:	21 50       	subi	r18, 0x01	; 1
+    28cc:	30 40       	sbci	r19, 0x00	; 0
+    28ce:	63 30       	cpi	r22, 0x03	; 3
+    28d0:	71 05       	cpc	r23, r1
+    28d2:	31 f6       	brne	.-116    	; 0x2860 <get_dx+0x42>
+    28d4:	40 e0       	ldi	r20, 0x00	; 0
+    28d6:	54 e0       	ldi	r21, 0x04	; 4
+    28d8:	ca 01       	movw	r24, r20
+    28da:	df 91       	pop	r29
+    28dc:	cf 91       	pop	r28
+    28de:	1f 91       	pop	r17
+    28e0:	0f 91       	pop	r16
+    28e2:	ff 90       	pop	r15
+    28e4:	08 95       	ret
 
-0000295e <encoder_recv_complete>:
-        /*packet[16] = num;
-        wl_send_global_packet(SWARM_PACKET_GROUP_ID, 0, packet, length, 0);
-        usb_puts("sent ");
-        usb_puti(num);
-        usb_puts("\r\n");
-        num++;
-    295e:	10 92 c7 09 	sts	0x09C7, r1
-        delay_ms(50);*/
-    2962:	80 91 5d 09 	lds	r24, 0x095D
-    2966:	90 91 5e 09 	lds	r25, 0x095E
-    296a:	01 96       	adiw	r24, 0x01	; 1
-    296c:	90 93 5e 09 	sts	0x095E, r25
-    2970:	80 93 5d 09 	sts	0x095D, r24
-    }
-}
-    2974:	85 e0       	ldi	r24, 0x05	; 5
-    2976:	0e 94 99 1b 	call	0x3732	; 0x3732 <spi_transfer>
+000028e6 <encoder_get_v>:
+    28e6:	1f 93       	push	r17
+    28e8:	cf 93       	push	r28
+    28ea:	df 93       	push	r29
+    28ec:	18 2f       	mov	r17, r24
+    28ee:	60 e0       	ldi	r22, 0x00	; 0
+    28f0:	70 e0       	ldi	r23, 0x00	; 0
+    28f2:	0e 94 0f 14 	call	0x281e	; 0x281e <get_dx>
+    28f6:	ec 01       	movw	r28, r24
+    28f8:	81 2f       	mov	r24, r17
+    28fa:	61 e0       	ldi	r22, 0x01	; 1
+    28fc:	70 e0       	ldi	r23, 0x00	; 0
+    28fe:	0e 94 0f 14 	call	0x281e	; 0x281e <get_dx>
+    2902:	24 e0       	ldi	r18, 0x04	; 4
+    2904:	c0 30       	cpi	r28, 0x00	; 0
+    2906:	d2 07       	cpc	r29, r18
+    2908:	39 f4       	brne	.+14     	; 0x2918 <encoder_get_v+0x32>
+    290a:	24 e0       	ldi	r18, 0x04	; 4
+    290c:	80 30       	cpi	r24, 0x00	; 0
+    290e:	92 07       	cpc	r25, r18
+    2910:	49 f4       	brne	.+18     	; 0x2924 <encoder_get_v+0x3e>
+    2912:	20 e0       	ldi	r18, 0x00	; 0
+    2914:	38 e0       	ldi	r19, 0x08	; 8
+    2916:	0d c0       	rjmp	.+26     	; 0x2932 <encoder_get_v+0x4c>
+    2918:	24 e0       	ldi	r18, 0x04	; 4
+    291a:	80 30       	cpi	r24, 0x00	; 0
+    291c:	92 07       	cpc	r25, r18
+    291e:	31 f4       	brne	.+12     	; 0x292c <encoder_get_v+0x46>
+    2920:	9e 01       	movw	r18, r28
+    2922:	01 c0       	rjmp	.+2      	; 0x2926 <encoder_get_v+0x40>
+    2924:	9c 01       	movw	r18, r24
+    2926:	22 0f       	add	r18, r18
+    2928:	33 1f       	adc	r19, r19
+    292a:	03 c0       	rjmp	.+6      	; 0x2932 <encoder_get_v+0x4c>
+    292c:	9c 01       	movw	r18, r24
+    292e:	2c 0f       	add	r18, r28
+    2930:	3d 1f       	adc	r19, r29
+    2932:	c9 01       	movw	r24, r18
+    2934:	df 91       	pop	r29
+    2936:	cf 91       	pop	r28
+    2938:	1f 91       	pop	r17
+    293a:	08 95       	ret
 
-    297a:	08 95       	ret
+0000293c <encoders_init>:
+    293c:	10 92 4e 09 	sts	0x094E, r1
+    2940:	10 92 4d 09 	sts	0x094D, r1
+    2944:	85 e9       	ldi	r24, 0x95	; 149
+    2946:	92 e1       	ldi	r25, 0x12	; 18
+    2948:	68 ed       	ldi	r22, 0xD8	; 216
+    294a:	74 e1       	ldi	r23, 0x14	; 20
+    294c:	0e 94 ae 1b 	call	0x375c	; 0x375c <spi_init>
+    2950:	10 92 b7 09 	sts	0x09B7, r1
+    2954:	10 92 52 09 	sts	0x0952, r1
+    2958:	10 92 51 09 	sts	0x0951, r1
+    295c:	10 92 19 0a 	sts	0x0A19, r1
+    2960:	10 92 18 0a 	sts	0x0A18, r1
+    2964:	8f ef       	ldi	r24, 0xFF	; 255
+    2966:	9f ef       	ldi	r25, 0xFF	; 255
+    2968:	90 93 1b 0a 	sts	0x0A1B, r25
+    296c:	80 93 1a 0a 	sts	0x0A1A, r24
+    2970:	90 93 50 09 	sts	0x0950, r25
+    2974:	80 93 4f 09 	sts	0x094F, r24
+    2978:	10 92 b0 09 	sts	0x09B0, r1
+    297c:	10 92 af 09 	sts	0x09AF, r1
+    2980:	10 92 17 0a 	sts	0x0A17, r1
+    2984:	10 92 16 0a 	sts	0x0A16, r1
+    2988:	e3 e5       	ldi	r30, 0x53	; 83
+    298a:	f9 e0       	ldi	r31, 0x09	; 9
+    298c:	11 92       	st	Z+, r1
+    298e:	11 92       	st	Z+, r1
+    2990:	89 e0       	ldi	r24, 0x09	; 9
+    2992:	ef 3a       	cpi	r30, 0xAF	; 175
+    2994:	f8 07       	cpc	r31, r24
+    2996:	d1 f7       	brne	.-12     	; 0x298c <encoders_init+0x50>
+    2998:	e8 eb       	ldi	r30, 0xB8	; 184
+    299a:	f9 e0       	ldi	r31, 0x09	; 9
+    299c:	11 92       	st	Z+, r1
+    299e:	11 92       	st	Z+, r1
+    29a0:	8a e0       	ldi	r24, 0x0A	; 10
+    29a2:	e4 31       	cpi	r30, 0x14	; 20
+    29a4:	f8 07       	cpc	r31, r24
+    29a6:	d1 f7       	brne	.-12     	; 0x299c <encoders_init+0x60>
+    29a8:	85 e0       	ldi	r24, 0x05	; 5
+    29aa:	0e 94 c2 1b 	call	0x3784	; 0x3784 <spi_transfer>
+    29ae:	08 95       	ret
 
-0000297c <lcd_clear_screen>:
-    297c:	80 e0       	ldi	r24, 0x00	; 0
-    297e:	90 e0       	ldi	r25, 0x00	; 0
-    2980:	1f b8       	out	0x0f, r1	; 15
-    2982:	77 9b       	sbis	0x0e, 7	; 14
-    2984:	fe cf       	rjmp	.-4      	; 0x2982 <lcd_clear_screen+0x6>
-    2986:	01 96       	adiw	r24, 0x01	; 1
-    2988:	21 e0       	ldi	r18, 0x01	; 1
-    298a:	88 3f       	cpi	r24, 0xF8	; 248
-    298c:	92 07       	cpc	r25, r18
-    298e:	c1 f7       	brne	.-16     	; 0x2980 <lcd_clear_screen+0x4>
-    2990:	95 98       	cbi	0x12, 5	; 18
-    2992:	80 e4       	ldi	r24, 0x40	; 64
-    2994:	8f b9       	out	0x0f, r24	; 15
-    2996:	77 9b       	sbis	0x0e, 7	; 14
-    2998:	fe cf       	rjmp	.-4      	; 0x2996 <lcd_clear_screen+0x1a>
-    299a:	80 e8       	ldi	r24, 0x80	; 128
-    299c:	8f b9       	out	0x0f, r24	; 15
-    299e:	77 9b       	sbis	0x0e, 7	; 14
-    29a0:	fe cf       	rjmp	.-4      	; 0x299e <lcd_clear_screen+0x22>
-    29a2:	95 9a       	sbi	0x12, 5	; 18
-    29a4:	08 95       	ret
+000029b0 <encoder_recv_complete>:
+    29b0:	10 92 b7 09 	sts	0x09B7, r1
+    29b4:	80 91 4d 09 	lds	r24, 0x094D
+    29b8:	90 91 4e 09 	lds	r25, 0x094E
+    29bc:	01 96       	adiw	r24, 0x01	; 1
+    29be:	90 93 4e 09 	sts	0x094E, r25
+    29c2:	80 93 4d 09 	sts	0x094D, r24
+    29c6:	85 e0       	ldi	r24, 0x05	; 5
+    29c8:	0e 94 c2 1b 	call	0x3784	; 0x3784 <spi_transfer>
+    29cc:	08 95       	ret
 
-000029a6 <lcd_putc>:
-    29a6:	28 2f       	mov	r18, r24
-    29a8:	30 e0       	ldi	r19, 0x00	; 0
-    29aa:	20 52       	subi	r18, 0x20	; 32
-    29ac:	30 40       	sbci	r19, 0x00	; 0
-    29ae:	f9 01       	movw	r30, r18
-    29b0:	ee 0f       	add	r30, r30
-    29b2:	ff 1f       	adc	r31, r31
-    29b4:	ee 0f       	add	r30, r30
-    29b6:	ff 1f       	adc	r31, r31
-    29b8:	e2 0f       	add	r30, r18
-    29ba:	f3 1f       	adc	r31, r19
-    29bc:	e3 58       	subi	r30, 0x83	; 131
-    29be:	fe 4f       	sbci	r31, 0xFE	; 254
-    29c0:	95 e0       	ldi	r25, 0x05	; 5
-    29c2:	89 9f       	mul	r24, r25
-    29c4:	90 01       	movw	r18, r0
-    29c6:	11 24       	eor	r1, r1
-    29c8:	2e 51       	subi	r18, 0x1E	; 30
-    29ca:	3f 4f       	sbci	r19, 0xFF	; 255
-    29cc:	80 81       	ld	r24, Z
-    29ce:	8f b9       	out	0x0f, r24	; 15
-    29d0:	77 9b       	sbis	0x0e, 7	; 14
-    29d2:	fe cf       	rjmp	.-4      	; 0x29d0 <lcd_putc+0x2a>
-    29d4:	31 96       	adiw	r30, 0x01	; 1
-    29d6:	e2 17       	cp	r30, r18
-    29d8:	f3 07       	cpc	r31, r19
-    29da:	c1 f7       	brne	.-16     	; 0x29cc <lcd_putc+0x26>
-    29dc:	1f b8       	out	0x0f, r1	; 15
-    29de:	77 9b       	sbis	0x0e, 7	; 14
-    29e0:	fe cf       	rjmp	.-4      	; 0x29de <lcd_putc+0x38>
-    29e2:	08 95       	ret
+000029ce <lcd_clear_screen>:
+    29ce:	80 e0       	ldi	r24, 0x00	; 0
+    29d0:	90 e0       	ldi	r25, 0x00	; 0
+    29d2:	1f b8       	out	0x0f, r1	; 15
+    29d4:	77 9b       	sbis	0x0e, 7	; 14
+    29d6:	fe cf       	rjmp	.-4      	; 0x29d4 <lcd_clear_screen+0x6>
+    29d8:	01 96       	adiw	r24, 0x01	; 1
+    29da:	21 e0       	ldi	r18, 0x01	; 1
+    29dc:	88 3f       	cpi	r24, 0xF8	; 248
+    29de:	92 07       	cpc	r25, r18
+    29e0:	c1 f7       	brne	.-16     	; 0x29d2 <lcd_clear_screen+0x4>
+    29e2:	95 98       	cbi	0x12, 5	; 18
+    29e4:	80 e4       	ldi	r24, 0x40	; 64
+    29e6:	8f b9       	out	0x0f, r24	; 15
+    29e8:	77 9b       	sbis	0x0e, 7	; 14
+    29ea:	fe cf       	rjmp	.-4      	; 0x29e8 <lcd_clear_screen+0x1a>
+    29ec:	80 e8       	ldi	r24, 0x80	; 128
+    29ee:	8f b9       	out	0x0f, r24	; 15
+    29f0:	77 9b       	sbis	0x0e, 7	; 14
+    29f2:	fe cf       	rjmp	.-4      	; 0x29f0 <lcd_clear_screen+0x22>
+    29f4:	95 9a       	sbi	0x12, 5	; 18
+    29f6:	08 95       	ret
 
-000029e4 <lcd_puts>:
-    29e4:	dc 01       	movw	r26, r24
-    29e6:	45 e0       	ldi	r20, 0x05	; 5
-    29e8:	0c c0       	rjmp	.+24     	; 0x2a02 <lcd_puts+0x1e>
-    29ea:	80 81       	ld	r24, Z
-    29ec:	8f b9       	out	0x0f, r24	; 15
-    29ee:	77 9b       	sbis	0x0e, 7	; 14
-    29f0:	fe cf       	rjmp	.-4      	; 0x29ee <lcd_puts+0xa>
-    29f2:	31 96       	adiw	r30, 0x01	; 1
-    29f4:	e2 17       	cp	r30, r18
-    29f6:	f3 07       	cpc	r31, r19
-    29f8:	c1 f7       	brne	.-16     	; 0x29ea <lcd_puts+0x6>
-    29fa:	1f b8       	out	0x0f, r1	; 15
-    29fc:	77 9b       	sbis	0x0e, 7	; 14
-    29fe:	fe cf       	rjmp	.-4      	; 0x29fc <lcd_puts+0x18>
-    2a00:	11 96       	adiw	r26, 0x01	; 1
-    2a02:	2c 91       	ld	r18, X
-    2a04:	22 23       	and	r18, r18
-    2a06:	91 f0       	breq	.+36     	; 0x2a2c <lcd_puts+0x48>
-    2a08:	82 2f       	mov	r24, r18
-    2a0a:	90 e0       	ldi	r25, 0x00	; 0
-    2a0c:	80 97       	sbiw	r24, 0x20	; 32
-    2a0e:	fc 01       	movw	r30, r24
-    2a10:	ee 0f       	add	r30, r30
-    2a12:	ff 1f       	adc	r31, r31
-    2a14:	ee 0f       	add	r30, r30
-    2a16:	ff 1f       	adc	r31, r31
-    2a18:	e8 0f       	add	r30, r24
-    2a1a:	f9 1f       	adc	r31, r25
-    2a1c:	e3 58       	subi	r30, 0x83	; 131
-    2a1e:	fe 4f       	sbci	r31, 0xFE	; 254
-    2a20:	24 9f       	mul	r18, r20
-    2a22:	90 01       	movw	r18, r0
-    2a24:	11 24       	eor	r1, r1
-    2a26:	2e 51       	subi	r18, 0x1E	; 30
-    2a28:	3f 4f       	sbci	r19, 0xFF	; 255
-    2a2a:	df cf       	rjmp	.-66     	; 0x29ea <lcd_puts+0x6>
-    2a2c:	08 95       	ret
+000029f8 <lcd_putc>:
+    29f8:	28 2f       	mov	r18, r24
+    29fa:	30 e0       	ldi	r19, 0x00	; 0
+    29fc:	20 52       	subi	r18, 0x20	; 32
+    29fe:	30 40       	sbci	r19, 0x00	; 0
+    2a00:	f9 01       	movw	r30, r18
+    2a02:	ee 0f       	add	r30, r30
+    2a04:	ff 1f       	adc	r31, r31
+    2a06:	ee 0f       	add	r30, r30
+    2a08:	ff 1f       	adc	r31, r31
+    2a0a:	e2 0f       	add	r30, r18
+    2a0c:	f3 1f       	adc	r31, r19
+    2a0e:	e2 59       	subi	r30, 0x92	; 146
+    2a10:	fe 4f       	sbci	r31, 0xFE	; 254
+    2a12:	95 e0       	ldi	r25, 0x05	; 5
+    2a14:	89 9f       	mul	r24, r25
+    2a16:	90 01       	movw	r18, r0
+    2a18:	11 24       	eor	r1, r1
+    2a1a:	2d 52       	subi	r18, 0x2D	; 45
+    2a1c:	3f 4f       	sbci	r19, 0xFF	; 255
+    2a1e:	80 81       	ld	r24, Z
+    2a20:	8f b9       	out	0x0f, r24	; 15
+    2a22:	77 9b       	sbis	0x0e, 7	; 14
+    2a24:	fe cf       	rjmp	.-4      	; 0x2a22 <lcd_putc+0x2a>
+    2a26:	31 96       	adiw	r30, 0x01	; 1
+    2a28:	e2 17       	cp	r30, r18
+    2a2a:	f3 07       	cpc	r31, r19
+    2a2c:	c1 f7       	brne	.-16     	; 0x2a1e <lcd_putc+0x26>
+    2a2e:	1f b8       	out	0x0f, r1	; 15
+    2a30:	77 9b       	sbis	0x0e, 7	; 14
+    2a32:	fe cf       	rjmp	.-4      	; 0x2a30 <lcd_putc+0x38>
+    2a34:	08 95       	ret
 
-00002a2e <lcd_gotoxy>:
-    2a2e:	95 98       	cbi	0x12, 5	; 18
-    2a30:	67 70       	andi	r22, 0x07	; 7
-    2a32:	60 64       	ori	r22, 0x40	; 64
-    2a34:	6f b9       	out	0x0f, r22	; 15
-    2a36:	77 9b       	sbis	0x0e, 7	; 14
-    2a38:	fe cf       	rjmp	.-4      	; 0x2a36 <lcd_gotoxy+0x8>
-    2a3a:	80 68       	ori	r24, 0x80	; 128
-    2a3c:	8f b9       	out	0x0f, r24	; 15
-    2a3e:	77 9b       	sbis	0x0e, 7	; 14
-    2a40:	fe cf       	rjmp	.-4      	; 0x2a3e <lcd_gotoxy+0x10>
-    2a42:	95 9a       	sbi	0x12, 5	; 18
-    2a44:	08 95       	ret
+00002a36 <lcd_puts>:
+    2a36:	dc 01       	movw	r26, r24
+    2a38:	45 e0       	ldi	r20, 0x05	; 5
+    2a3a:	0c c0       	rjmp	.+24     	; 0x2a54 <lcd_puts+0x1e>
+    2a3c:	80 81       	ld	r24, Z
+    2a3e:	8f b9       	out	0x0f, r24	; 15
+    2a40:	77 9b       	sbis	0x0e, 7	; 14
+    2a42:	fe cf       	rjmp	.-4      	; 0x2a40 <lcd_puts+0xa>
+    2a44:	31 96       	adiw	r30, 0x01	; 1
+    2a46:	e2 17       	cp	r30, r18
+    2a48:	f3 07       	cpc	r31, r19
+    2a4a:	c1 f7       	brne	.-16     	; 0x2a3c <lcd_puts+0x6>
+    2a4c:	1f b8       	out	0x0f, r1	; 15
+    2a4e:	77 9b       	sbis	0x0e, 7	; 14
+    2a50:	fe cf       	rjmp	.-4      	; 0x2a4e <lcd_puts+0x18>
+    2a52:	11 96       	adiw	r26, 0x01	; 1
+    2a54:	2c 91       	ld	r18, X
+    2a56:	22 23       	and	r18, r18
+    2a58:	91 f0       	breq	.+36     	; 0x2a7e <lcd_puts+0x48>
+    2a5a:	82 2f       	mov	r24, r18
+    2a5c:	90 e0       	ldi	r25, 0x00	; 0
+    2a5e:	80 97       	sbiw	r24, 0x20	; 32
+    2a60:	fc 01       	movw	r30, r24
+    2a62:	ee 0f       	add	r30, r30
+    2a64:	ff 1f       	adc	r31, r31
+    2a66:	ee 0f       	add	r30, r30
+    2a68:	ff 1f       	adc	r31, r31
+    2a6a:	e8 0f       	add	r30, r24
+    2a6c:	f9 1f       	adc	r31, r25
+    2a6e:	e2 59       	subi	r30, 0x92	; 146
+    2a70:	fe 4f       	sbci	r31, 0xFE	; 254
+    2a72:	24 9f       	mul	r18, r20
+    2a74:	90 01       	movw	r18, r0
+    2a76:	11 24       	eor	r1, r1
+    2a78:	2d 52       	subi	r18, 0x2D	; 45
+    2a7a:	3f 4f       	sbci	r19, 0xFF	; 255
+    2a7c:	df cf       	rjmp	.-66     	; 0x2a3c <lcd_puts+0x6>
+    2a7e:	08 95       	ret
 
-00002a46 <lcd_puti>:
-    2a46:	0f 93       	push	r16
-    2a48:	1f 93       	push	r17
-    2a4a:	df 93       	push	r29
-    2a4c:	cf 93       	push	r28
-    2a4e:	00 d0       	rcall	.+0      	; 0x2a50 <lcd_puti+0xa>
-    2a50:	00 d0       	rcall	.+0      	; 0x2a52 <lcd_puti+0xc>
-    2a52:	00 d0       	rcall	.+0      	; 0x2a54 <lcd_puti+0xe>
-    2a54:	cd b7       	in	r28, 0x3d	; 61
-    2a56:	de b7       	in	r29, 0x3e	; 62
-    2a58:	9c 01       	movw	r18, r24
-    2a5a:	de 01       	movw	r26, r28
-    2a5c:	11 96       	adiw	r26, 0x01	; 1
-    2a5e:	e7 e7       	ldi	r30, 0x77	; 119
-    2a60:	f1 e0       	ldi	r31, 0x01	; 1
-    2a62:	86 e0       	ldi	r24, 0x06	; 6
-    2a64:	01 90       	ld	r0, Z+
-    2a66:	0d 92       	st	X+, r0
-    2a68:	81 50       	subi	r24, 0x01	; 1
-    2a6a:	e1 f7       	brne	.-8      	; 0x2a64 <lcd_puti+0x1e>
-    2a6c:	37 ff       	sbrs	r19, 7
-    2a6e:	11 c0       	rjmp	.+34     	; 0x2a92 <lcd_puti+0x4c>
-    2a70:	ee eb       	ldi	r30, 0xBE	; 190
-    2a72:	f1 e0       	ldi	r31, 0x01	; 1
-    2a74:	80 81       	ld	r24, Z
-    2a76:	8f b9       	out	0x0f, r24	; 15
-    2a78:	77 9b       	sbis	0x0e, 7	; 14
-    2a7a:	fe cf       	rjmp	.-4      	; 0x2a78 <lcd_puti+0x32>
-    2a7c:	31 96       	adiw	r30, 0x01	; 1
-    2a7e:	81 e0       	ldi	r24, 0x01	; 1
-    2a80:	e3 3c       	cpi	r30, 0xC3	; 195
-    2a82:	f8 07       	cpc	r31, r24
-    2a84:	b9 f7       	brne	.-18     	; 0x2a74 <lcd_puti+0x2e>
-    2a86:	1f b8       	out	0x0f, r1	; 15
+00002a80 <lcd_gotoxy>:
+    2a80:	95 98       	cbi	0x12, 5	; 18
+    2a82:	67 70       	andi	r22, 0x07	; 7
+    2a84:	60 64       	ori	r22, 0x40	; 64
+    2a86:	6f b9       	out	0x0f, r22	; 15
     2a88:	77 9b       	sbis	0x0e, 7	; 14
-    2a8a:	fe cf       	rjmp	.-4      	; 0x2a88 <lcd_puti+0x42>
-    2a8c:	30 95       	com	r19
-    2a8e:	21 95       	neg	r18
-    2a90:	3f 4f       	sbci	r19, 0xFF	; 255
-    2a92:	46 e0       	ldi	r20, 0x06	; 6
-    2a94:	8e 01       	movw	r16, r28
-    2a96:	0f 5f       	subi	r16, 0xFF	; 255
-    2a98:	1f 4f       	sbci	r17, 0xFF	; 255
-    2a9a:	41 50       	subi	r20, 0x01	; 1
-    2a9c:	f8 01       	movw	r30, r16
-    2a9e:	e4 0f       	add	r30, r20
-    2aa0:	f1 1d       	adc	r31, r1
-    2aa2:	c9 01       	movw	r24, r18
-    2aa4:	6a e0       	ldi	r22, 0x0A	; 10
-    2aa6:	70 e0       	ldi	r23, 0x00	; 0
-    2aa8:	0e 94 13 32 	call	0x6426	; 0x6426 <__divmodhi4>
-    2aac:	80 5d       	subi	r24, 0xD0	; 208
-    2aae:	80 83       	st	Z, r24
-    2ab0:	c9 01       	movw	r24, r18
-    2ab2:	6a e0       	ldi	r22, 0x0A	; 10
-    2ab4:	70 e0       	ldi	r23, 0x00	; 0
-    2ab6:	0e 94 13 32 	call	0x6426	; 0x6426 <__divmodhi4>
-    2aba:	9b 01       	movw	r18, r22
-    2abc:	61 15       	cp	r22, r1
-    2abe:	71 05       	cpc	r23, r1
-    2ac0:	61 f7       	brne	.-40     	; 0x2a9a <lcd_puti+0x54>
-    2ac2:	22 c0       	rjmp	.+68     	; 0x2b08 <lcd_puti+0xc2>
-    2ac4:	fb 01       	movw	r30, r22
-    2ac6:	e4 0f       	add	r30, r20
-    2ac8:	f1 1d       	adc	r31, r1
-    2aca:	20 81       	ld	r18, Z
-    2acc:	82 2f       	mov	r24, r18
-    2ace:	90 e0       	ldi	r25, 0x00	; 0
-    2ad0:	80 97       	sbiw	r24, 0x20	; 32
-    2ad2:	fc 01       	movw	r30, r24
-    2ad4:	ee 0f       	add	r30, r30
-    2ad6:	ff 1f       	adc	r31, r31
-    2ad8:	ee 0f       	add	r30, r30
-    2ada:	ff 1f       	adc	r31, r31
-    2adc:	e8 0f       	add	r30, r24
-    2ade:	f9 1f       	adc	r31, r25
-    2ae0:	e3 58       	subi	r30, 0x83	; 131
-    2ae2:	fe 4f       	sbci	r31, 0xFE	; 254
-    2ae4:	25 9f       	mul	r18, r21
-    2ae6:	90 01       	movw	r18, r0
-    2ae8:	11 24       	eor	r1, r1
-    2aea:	2e 51       	subi	r18, 0x1E	; 30
-    2aec:	3f 4f       	sbci	r19, 0xFF	; 255
-    2aee:	80 81       	ld	r24, Z
-    2af0:	8f b9       	out	0x0f, r24	; 15
-    2af2:	77 9b       	sbis	0x0e, 7	; 14
-    2af4:	fe cf       	rjmp	.-4      	; 0x2af2 <lcd_puti+0xac>
-    2af6:	31 96       	adiw	r30, 0x01	; 1
-    2af8:	e2 17       	cp	r30, r18
-    2afa:	f3 07       	cpc	r31, r19
-    2afc:	c1 f7       	brne	.-16     	; 0x2aee <lcd_puti+0xa8>
-    2afe:	1f b8       	out	0x0f, r1	; 15
-    2b00:	77 9b       	sbis	0x0e, 7	; 14
-    2b02:	fe cf       	rjmp	.-4      	; 0x2b00 <lcd_puti+0xba>
-    2b04:	4f 5f       	subi	r20, 0xFF	; 255
-    2b06:	04 c0       	rjmp	.+8      	; 0x2b10 <lcd_puti+0xca>
-    2b08:	be 01       	movw	r22, r28
-    2b0a:	6f 5f       	subi	r22, 0xFF	; 255
-    2b0c:	7f 4f       	sbci	r23, 0xFF	; 255
-    2b0e:	55 e0       	ldi	r21, 0x05	; 5
-    2b10:	46 30       	cpi	r20, 0x06	; 6
-    2b12:	c0 f2       	brcs	.-80     	; 0x2ac4 <lcd_puti+0x7e>
-    2b14:	26 96       	adiw	r28, 0x06	; 6
-    2b16:	0f b6       	in	r0, 0x3f	; 63
-    2b18:	f8 94       	cli
-    2b1a:	de bf       	out	0x3e, r29	; 62
-    2b1c:	0f be       	out	0x3f, r0	; 63
-    2b1e:	cd bf       	out	0x3d, r28	; 61
-    2b20:	cf 91       	pop	r28
-    2b22:	df 91       	pop	r29
-    2b24:	1f 91       	pop	r17
-    2b26:	0f 91       	pop	r16
-    2b28:	08 95       	ret
+    2a8a:	fe cf       	rjmp	.-4      	; 0x2a88 <lcd_gotoxy+0x8>
+    2a8c:	80 68       	ori	r24, 0x80	; 128
+    2a8e:	8f b9       	out	0x0f, r24	; 15
+    2a90:	77 9b       	sbis	0x0e, 7	; 14
+    2a92:	fe cf       	rjmp	.-4      	; 0x2a90 <lcd_gotoxy+0x10>
+    2a94:	95 9a       	sbi	0x12, 5	; 18
+    2a96:	08 95       	ret
 
-00002b2a <lcd_putbyte>:
-    2b2a:	8f b9       	out	0x0f, r24	; 15
-    2b2c:	77 9b       	sbis	0x0e, 7	; 14
-    2b2e:	fe cf       	rjmp	.-4      	; 0x2b2c <lcd_putbyte+0x2>
-    2b30:	08 95       	ret
+00002a98 <lcd_puti>:
+    2a98:	0f 93       	push	r16
+    2a9a:	1f 93       	push	r17
+    2a9c:	df 93       	push	r29
+    2a9e:	cf 93       	push	r28
+    2aa0:	00 d0       	rcall	.+0      	; 0x2aa2 <lcd_puti+0xa>
+    2aa2:	00 d0       	rcall	.+0      	; 0x2aa4 <lcd_puti+0xc>
+    2aa4:	00 d0       	rcall	.+0      	; 0x2aa6 <lcd_puti+0xe>
+    2aa6:	cd b7       	in	r28, 0x3d	; 61
+    2aa8:	de b7       	in	r29, 0x3e	; 62
+    2aaa:	9c 01       	movw	r18, r24
+    2aac:	de 01       	movw	r26, r28
+    2aae:	11 96       	adiw	r26, 0x01	; 1
+    2ab0:	e8 e6       	ldi	r30, 0x68	; 104
+    2ab2:	f1 e0       	ldi	r31, 0x01	; 1
+    2ab4:	86 e0       	ldi	r24, 0x06	; 6
+    2ab6:	01 90       	ld	r0, Z+
+    2ab8:	0d 92       	st	X+, r0
+    2aba:	81 50       	subi	r24, 0x01	; 1
+    2abc:	e1 f7       	brne	.-8      	; 0x2ab6 <lcd_puti+0x1e>
+    2abe:	37 ff       	sbrs	r19, 7
+    2ac0:	11 c0       	rjmp	.+34     	; 0x2ae4 <lcd_puti+0x4c>
+    2ac2:	ef ea       	ldi	r30, 0xAF	; 175
+    2ac4:	f1 e0       	ldi	r31, 0x01	; 1
+    2ac6:	80 81       	ld	r24, Z
+    2ac8:	8f b9       	out	0x0f, r24	; 15
+    2aca:	77 9b       	sbis	0x0e, 7	; 14
+    2acc:	fe cf       	rjmp	.-4      	; 0x2aca <lcd_puti+0x32>
+    2ace:	31 96       	adiw	r30, 0x01	; 1
+    2ad0:	81 e0       	ldi	r24, 0x01	; 1
+    2ad2:	e4 3b       	cpi	r30, 0xB4	; 180
+    2ad4:	f8 07       	cpc	r31, r24
+    2ad6:	b9 f7       	brne	.-18     	; 0x2ac6 <lcd_puti+0x2e>
+    2ad8:	1f b8       	out	0x0f, r1	; 15
+    2ada:	77 9b       	sbis	0x0e, 7	; 14
+    2adc:	fe cf       	rjmp	.-4      	; 0x2ada <lcd_puti+0x42>
+    2ade:	30 95       	com	r19
+    2ae0:	21 95       	neg	r18
+    2ae2:	3f 4f       	sbci	r19, 0xFF	; 255
+    2ae4:	46 e0       	ldi	r20, 0x06	; 6
+    2ae6:	8e 01       	movw	r16, r28
+    2ae8:	0f 5f       	subi	r16, 0xFF	; 255
+    2aea:	1f 4f       	sbci	r17, 0xFF	; 255
+    2aec:	41 50       	subi	r20, 0x01	; 1
+    2aee:	f8 01       	movw	r30, r16
+    2af0:	e4 0f       	add	r30, r20
+    2af2:	f1 1d       	adc	r31, r1
+    2af4:	c9 01       	movw	r24, r18
+    2af6:	6a e0       	ldi	r22, 0x0A	; 10
+    2af8:	70 e0       	ldi	r23, 0x00	; 0
+    2afa:	0e 94 aa 2f 	call	0x5f54	; 0x5f54 <__divmodhi4>
+    2afe:	80 5d       	subi	r24, 0xD0	; 208
+    2b00:	80 83       	st	Z, r24
+    2b02:	c9 01       	movw	r24, r18
+    2b04:	6a e0       	ldi	r22, 0x0A	; 10
+    2b06:	70 e0       	ldi	r23, 0x00	; 0
+    2b08:	0e 94 aa 2f 	call	0x5f54	; 0x5f54 <__divmodhi4>
+    2b0c:	9b 01       	movw	r18, r22
+    2b0e:	61 15       	cp	r22, r1
+    2b10:	71 05       	cpc	r23, r1
+    2b12:	61 f7       	brne	.-40     	; 0x2aec <lcd_puti+0x54>
+    2b14:	22 c0       	rjmp	.+68     	; 0x2b5a <lcd_puti+0xc2>
+    2b16:	fb 01       	movw	r30, r22
+    2b18:	e4 0f       	add	r30, r20
+    2b1a:	f1 1d       	adc	r31, r1
+    2b1c:	20 81       	ld	r18, Z
+    2b1e:	82 2f       	mov	r24, r18
+    2b20:	90 e0       	ldi	r25, 0x00	; 0
+    2b22:	80 97       	sbiw	r24, 0x20	; 32
+    2b24:	fc 01       	movw	r30, r24
+    2b26:	ee 0f       	add	r30, r30
+    2b28:	ff 1f       	adc	r31, r31
+    2b2a:	ee 0f       	add	r30, r30
+    2b2c:	ff 1f       	adc	r31, r31
+    2b2e:	e8 0f       	add	r30, r24
+    2b30:	f9 1f       	adc	r31, r25
+    2b32:	e2 59       	subi	r30, 0x92	; 146
+    2b34:	fe 4f       	sbci	r31, 0xFE	; 254
+    2b36:	25 9f       	mul	r18, r21
+    2b38:	90 01       	movw	r18, r0
+    2b3a:	11 24       	eor	r1, r1
+    2b3c:	2d 52       	subi	r18, 0x2D	; 45
+    2b3e:	3f 4f       	sbci	r19, 0xFF	; 255
+    2b40:	80 81       	ld	r24, Z
+    2b42:	8f b9       	out	0x0f, r24	; 15
+    2b44:	77 9b       	sbis	0x0e, 7	; 14
+    2b46:	fe cf       	rjmp	.-4      	; 0x2b44 <lcd_puti+0xac>
+    2b48:	31 96       	adiw	r30, 0x01	; 1
+    2b4a:	e2 17       	cp	r30, r18
+    2b4c:	f3 07       	cpc	r31, r19
+    2b4e:	c1 f7       	brne	.-16     	; 0x2b40 <lcd_puti+0xa8>
+    2b50:	1f b8       	out	0x0f, r1	; 15
+    2b52:	77 9b       	sbis	0x0e, 7	; 14
+    2b54:	fe cf       	rjmp	.-4      	; 0x2b52 <lcd_puti+0xba>
+    2b56:	4f 5f       	subi	r20, 0xFF	; 255
+    2b58:	04 c0       	rjmp	.+8      	; 0x2b62 <lcd_puti+0xca>
+    2b5a:	be 01       	movw	r22, r28
+    2b5c:	6f 5f       	subi	r22, 0xFF	; 255
+    2b5e:	7f 4f       	sbci	r23, 0xFF	; 255
+    2b60:	55 e0       	ldi	r21, 0x05	; 5
+    2b62:	46 30       	cpi	r20, 0x06	; 6
+    2b64:	c0 f2       	brcs	.-80     	; 0x2b16 <lcd_puti+0x7e>
+    2b66:	26 96       	adiw	r28, 0x06	; 6
+    2b68:	0f b6       	in	r0, 0x3f	; 63
+    2b6a:	f8 94       	cli
+    2b6c:	de bf       	out	0x3e, r29	; 62
+    2b6e:	0f be       	out	0x3f, r0	; 63
+    2b70:	cd bf       	out	0x3d, r28	; 61
+    2b72:	cf 91       	pop	r28
+    2b74:	df 91       	pop	r29
+    2b76:	1f 91       	pop	r17
+    2b78:	0f 91       	pop	r16
+    2b7a:	08 95       	ret
 
-00002b32 <lcd_init>:
-    2b32:	87 b3       	in	r24, 0x17	; 23
-    2b34:	87 60       	ori	r24, 0x07	; 7
-    2b36:	87 bb       	out	0x17, r24	; 23
-    2b38:	81 b3       	in	r24, 0x11	; 17
-    2b3a:	80 63       	ori	r24, 0x30	; 48
-    2b3c:	81 bb       	out	0x11, r24	; 17
-    2b3e:	88 b3       	in	r24, 0x18	; 24
-    2b40:	88 7f       	andi	r24, 0xF8	; 248
-    2b42:	88 bb       	out	0x18, r24	; 24
-    2b44:	95 98       	cbi	0x12, 5	; 18
-    2b46:	8d b1       	in	r24, 0x0d	; 13
-    2b48:	80 65       	ori	r24, 0x50	; 80
-    2b4a:	8d b9       	out	0x0d, r24	; 13
-    2b4c:	70 9a       	sbi	0x0e, 0	; 14
-    2b4e:	94 9a       	sbi	0x12, 4	; 18
-    2b50:	8a e0       	ldi	r24, 0x0A	; 10
-    2b52:	90 e0       	ldi	r25, 0x00	; 0
-    2b54:	0e 94 e3 1b 	call	0x37c6	; 0x37c6 <delay_ms>
-    2b58:	94 98       	cbi	0x12, 4	; 18
-    2b5a:	84 e6       	ldi	r24, 0x64	; 100
-    2b5c:	90 e0       	ldi	r25, 0x00	; 0
-    2b5e:	0e 94 e3 1b 	call	0x37c6	; 0x37c6 <delay_ms>
-    2b62:	94 9a       	sbi	0x12, 4	; 18
-    2b64:	81 e2       	ldi	r24, 0x21	; 33
-    2b66:	8f b9       	out	0x0f, r24	; 15
-    2b68:	77 9b       	sbis	0x0e, 7	; 14
-    2b6a:	fe cf       	rjmp	.-4      	; 0x2b68 <lcd_init+0x36>
-    2b6c:	88 ec       	ldi	r24, 0xC8	; 200
-    2b6e:	8f b9       	out	0x0f, r24	; 15
-    2b70:	77 9b       	sbis	0x0e, 7	; 14
-    2b72:	fe cf       	rjmp	.-4      	; 0x2b70 <lcd_init+0x3e>
-    2b74:	86 e0       	ldi	r24, 0x06	; 6
-    2b76:	8f b9       	out	0x0f, r24	; 15
-    2b78:	77 9b       	sbis	0x0e, 7	; 14
-    2b7a:	fe cf       	rjmp	.-4      	; 0x2b78 <lcd_init+0x46>
-    2b7c:	83 e1       	ldi	r24, 0x13	; 19
-    2b7e:	8f b9       	out	0x0f, r24	; 15
-    2b80:	77 9b       	sbis	0x0e, 7	; 14
-    2b82:	fe cf       	rjmp	.-4      	; 0x2b80 <lcd_init+0x4e>
-    2b84:	80 e2       	ldi	r24, 0x20	; 32
-    2b86:	8f b9       	out	0x0f, r24	; 15
-    2b88:	77 9b       	sbis	0x0e, 7	; 14
-    2b8a:	fe cf       	rjmp	.-4      	; 0x2b88 <lcd_init+0x56>
-    2b8c:	8c e0       	ldi	r24, 0x0C	; 12
-    2b8e:	8f b9       	out	0x0f, r24	; 15
-    2b90:	77 9b       	sbis	0x0e, 7	; 14
-    2b92:	fe cf       	rjmp	.-4      	; 0x2b90 <lcd_init+0x5e>
-    2b94:	95 9a       	sbi	0x12, 5	; 18
-    2b96:	0e 94 be 14 	call	0x297c	; 0x297c <lcd_clear_screen>
-    2b9a:	08 95       	ret
+00002b7c <lcd_putbyte>:
+    2b7c:	8f b9       	out	0x0f, r24	; 15
+    2b7e:	77 9b       	sbis	0x0e, 7	; 14
+    2b80:	fe cf       	rjmp	.-4      	; 0x2b7e <lcd_putbyte+0x2>
+    2b82:	08 95       	ret
 
-00002b9c <__vector_16>:
-    2b9c:	1f 92       	push	r1
-    2b9e:	0f 92       	push	r0
-    2ba0:	0f b6       	in	r0, 0x3f	; 63
-    2ba2:	0f 92       	push	r0
-    2ba4:	0b b6       	in	r0, 0x3b	; 59
-    2ba6:	0f 92       	push	r0
-    2ba8:	11 24       	eor	r1, r1
-    2baa:	2f 93       	push	r18
-    2bac:	3f 93       	push	r19
-    2bae:	8f 93       	push	r24
-    2bb0:	9f 93       	push	r25
-    2bb2:	af 93       	push	r26
-    2bb4:	bf 93       	push	r27
-    2bb6:	cf 93       	push	r28
-    2bb8:	df 93       	push	r29
-    2bba:	ef 93       	push	r30
-    2bbc:	ff 93       	push	r31
-    2bbe:	80 91 b7 06 	lds	r24, 0x06B7
-    2bc2:	88 23       	and	r24, r24
-    2bc4:	91 f0       	breq	.+36     	; 0x2bea <__vector_16+0x4e>
-    2bc6:	20 91 64 03 	lds	r18, 0x0364
-    2bca:	30 91 65 03 	lds	r19, 0x0365
-    2bce:	80 91 68 03 	lds	r24, 0x0368
-    2bd2:	90 91 69 03 	lds	r25, 0x0369
-    2bd6:	90 93 65 03 	sts	0x0365, r25
-    2bda:	80 93 64 03 	sts	0x0364, r24
-    2bde:	30 93 69 03 	sts	0x0369, r19
-    2be2:	20 93 68 03 	sts	0x0368, r18
-    2be6:	10 92 b7 06 	sts	0x06B7, r1
-    2bea:	85 b3       	in	r24, 0x15	; 21
-    2bec:	87 67       	ori	r24, 0x77	; 119
-    2bee:	85 bb       	out	0x15, r24	; 21
-    2bf0:	85 b3       	in	r24, 0x15	; 21
-    2bf2:	c0 91 64 03 	lds	r28, 0x0364
-    2bf6:	d0 91 65 03 	lds	r29, 0x0365
-    2bfa:	98 81       	ld	r25, Y
-    2bfc:	89 23       	and	r24, r25
-    2bfe:	85 bb       	out	0x15, r24	; 21
-    2c00:	10 92 b8 06 	sts	0x06B8, r1
-    2c04:	89 81       	ldd	r24, Y+1	; 0x01
-    2c06:	81 bf       	out	0x31, r24	; 49
-    2c08:	20 e0       	ldi	r18, 0x00	; 0
-    2c0a:	a2 2f       	mov	r26, r18
-    2c0c:	b0 e0       	ldi	r27, 0x00	; 0
-    2c0e:	82 b7       	in	r24, 0x32	; 50
-    2c10:	fd 01       	movw	r30, r26
-    2c12:	ee 0f       	add	r30, r30
-    2c14:	ff 1f       	adc	r31, r31
-    2c16:	ec 0f       	add	r30, r28
-    2c18:	fd 1f       	adc	r31, r29
-    2c1a:	91 81       	ldd	r25, Z+1	; 0x01
-    2c1c:	9f 5f       	subi	r25, 0xFF	; 255
-    2c1e:	89 17       	cp	r24, r25
-    2c20:	b8 f0       	brcs	.+46     	; 0x2c50 <__vector_16+0xb4>
-    2c22:	95 b3       	in	r25, 0x15	; 21
-    2c24:	11 96       	adiw	r26, 0x01	; 1
-    2c26:	aa 0f       	add	r26, r26
-    2c28:	bb 1f       	adc	r27, r27
-    2c2a:	ac 0f       	add	r26, r28
-    2c2c:	bd 1f       	adc	r27, r29
-    2c2e:	8c 91       	ld	r24, X
-    2c30:	98 2b       	or	r25, r24
-    2c32:	95 bb       	out	0x15, r25	; 21
-    2c34:	25 30       	cpi	r18, 0x05	; 5
-    2c36:	61 f0       	breq	.+24     	; 0x2c50 <__vector_16+0xb4>
-    2c38:	2f 5f       	subi	r18, 0xFF	; 255
-    2c3a:	e2 2f       	mov	r30, r18
-    2c3c:	f0 e0       	ldi	r31, 0x00	; 0
-    2c3e:	ee 0f       	add	r30, r30
-    2c40:	ff 1f       	adc	r31, r31
-    2c42:	ec 0f       	add	r30, r28
-    2c44:	fd 1f       	adc	r31, r29
-    2c46:	81 81       	ldd	r24, Z+1	; 0x01
-    2c48:	8f 3f       	cpi	r24, 0xFF	; 255
-    2c4a:	f9 f2       	breq	.-66     	; 0x2c0a <__vector_16+0x6e>
-    2c4c:	81 bf       	out	0x31, r24	; 49
-    2c4e:	dd cf       	rjmp	.-70     	; 0x2c0a <__vector_16+0x6e>
-    2c50:	20 93 b8 06 	sts	0x06B8, r18
-    2c54:	ff 91       	pop	r31
-    2c56:	ef 91       	pop	r30
-    2c58:	df 91       	pop	r29
-    2c5a:	cf 91       	pop	r28
-    2c5c:	bf 91       	pop	r27
-    2c5e:	af 91       	pop	r26
-    2c60:	9f 91       	pop	r25
-    2c62:	8f 91       	pop	r24
-    2c64:	3f 91       	pop	r19
-    2c66:	2f 91       	pop	r18
-    2c68:	0f 90       	pop	r0
-    2c6a:	0b be       	out	0x3b, r0	; 59
-    2c6c:	0f 90       	pop	r0
-    2c6e:	0f be       	out	0x3f, r0	; 63
-    2c70:	0f 90       	pop	r0
-    2c72:	1f 90       	pop	r1
-    2c74:	18 95       	reti
+00002b84 <lcd_init>:
+    2b84:	87 b3       	in	r24, 0x17	; 23
+    2b86:	87 60       	ori	r24, 0x07	; 7
+    2b88:	87 bb       	out	0x17, r24	; 23
+    2b8a:	81 b3       	in	r24, 0x11	; 17
+    2b8c:	80 63       	ori	r24, 0x30	; 48
+    2b8e:	81 bb       	out	0x11, r24	; 17
+    2b90:	88 b3       	in	r24, 0x18	; 24
+    2b92:	88 7f       	andi	r24, 0xF8	; 248
+    2b94:	88 bb       	out	0x18, r24	; 24
+    2b96:	95 98       	cbi	0x12, 5	; 18
+    2b98:	8d b1       	in	r24, 0x0d	; 13
+    2b9a:	80 65       	ori	r24, 0x50	; 80
+    2b9c:	8d b9       	out	0x0d, r24	; 13
+    2b9e:	70 9a       	sbi	0x0e, 0	; 14
+    2ba0:	94 9a       	sbi	0x12, 4	; 18
+    2ba2:	8a e0       	ldi	r24, 0x0A	; 10
+    2ba4:	90 e0       	ldi	r25, 0x00	; 0
+    2ba6:	0e 94 0c 1c 	call	0x3818	; 0x3818 <delay_ms>
+    2baa:	94 98       	cbi	0x12, 4	; 18
+    2bac:	84 e6       	ldi	r24, 0x64	; 100
+    2bae:	90 e0       	ldi	r25, 0x00	; 0
+    2bb0:	0e 94 0c 1c 	call	0x3818	; 0x3818 <delay_ms>
+    2bb4:	94 9a       	sbi	0x12, 4	; 18
+    2bb6:	81 e2       	ldi	r24, 0x21	; 33
+    2bb8:	8f b9       	out	0x0f, r24	; 15
+    2bba:	77 9b       	sbis	0x0e, 7	; 14
+    2bbc:	fe cf       	rjmp	.-4      	; 0x2bba <lcd_init+0x36>
+    2bbe:	88 ec       	ldi	r24, 0xC8	; 200
+    2bc0:	8f b9       	out	0x0f, r24	; 15
+    2bc2:	77 9b       	sbis	0x0e, 7	; 14
+    2bc4:	fe cf       	rjmp	.-4      	; 0x2bc2 <lcd_init+0x3e>
+    2bc6:	86 e0       	ldi	r24, 0x06	; 6
+    2bc8:	8f b9       	out	0x0f, r24	; 15
+    2bca:	77 9b       	sbis	0x0e, 7	; 14
+    2bcc:	fe cf       	rjmp	.-4      	; 0x2bca <lcd_init+0x46>
+    2bce:	83 e1       	ldi	r24, 0x13	; 19
+    2bd0:	8f b9       	out	0x0f, r24	; 15
+    2bd2:	77 9b       	sbis	0x0e, 7	; 14
+    2bd4:	fe cf       	rjmp	.-4      	; 0x2bd2 <lcd_init+0x4e>
+    2bd6:	80 e2       	ldi	r24, 0x20	; 32
+    2bd8:	8f b9       	out	0x0f, r24	; 15
+    2bda:	77 9b       	sbis	0x0e, 7	; 14
+    2bdc:	fe cf       	rjmp	.-4      	; 0x2bda <lcd_init+0x56>
+    2bde:	8c e0       	ldi	r24, 0x0C	; 12
+    2be0:	8f b9       	out	0x0f, r24	; 15
+    2be2:	77 9b       	sbis	0x0e, 7	; 14
+    2be4:	fe cf       	rjmp	.-4      	; 0x2be2 <lcd_init+0x5e>
+    2be6:	95 9a       	sbi	0x12, 5	; 18
+    2be8:	0e 94 e7 14 	call	0x29ce	; 0x29ce <lcd_clear_screen>
+    2bec:	08 95       	ret
 
-00002c76 <__vector_15>:
-    2c76:	1f 92       	push	r1
-    2c78:	0f 92       	push	r0
-    2c7a:	0f b6       	in	r0, 0x3f	; 63
-    2c7c:	0f 92       	push	r0
-    2c7e:	0b b6       	in	r0, 0x3b	; 59
-    2c80:	0f 92       	push	r0
-    2c82:	11 24       	eor	r1, r1
-    2c84:	2f 93       	push	r18
-    2c86:	4f 93       	push	r20
-    2c88:	5f 93       	push	r21
-    2c8a:	8f 93       	push	r24
-    2c8c:	9f 93       	push	r25
-    2c8e:	af 93       	push	r26
-    2c90:	bf 93       	push	r27
-    2c92:	ef 93       	push	r30
-    2c94:	ff 93       	push	r31
-    2c96:	40 91 64 03 	lds	r20, 0x0364
-    2c9a:	50 91 65 03 	lds	r21, 0x0365
-    2c9e:	20 91 b8 06 	lds	r18, 0x06B8
-    2ca2:	a2 2f       	mov	r26, r18
-    2ca4:	b0 e0       	ldi	r27, 0x00	; 0
-    2ca6:	82 b7       	in	r24, 0x32	; 50
-    2ca8:	fd 01       	movw	r30, r26
-    2caa:	ee 0f       	add	r30, r30
-    2cac:	ff 1f       	adc	r31, r31
-    2cae:	e4 0f       	add	r30, r20
-    2cb0:	f5 1f       	adc	r31, r21
-    2cb2:	91 81       	ldd	r25, Z+1	; 0x01
-    2cb4:	9f 5f       	subi	r25, 0xFF	; 255
-    2cb6:	89 17       	cp	r24, r25
-    2cb8:	b8 f0       	brcs	.+46     	; 0x2ce8 <__vector_15+0x72>
-    2cba:	95 b3       	in	r25, 0x15	; 21
-    2cbc:	11 96       	adiw	r26, 0x01	; 1
-    2cbe:	aa 0f       	add	r26, r26
-    2cc0:	bb 1f       	adc	r27, r27
-    2cc2:	a4 0f       	add	r26, r20
-    2cc4:	b5 1f       	adc	r27, r21
-    2cc6:	8c 91       	ld	r24, X
-    2cc8:	98 2b       	or	r25, r24
-    2cca:	95 bb       	out	0x15, r25	; 21
-    2ccc:	25 30       	cpi	r18, 0x05	; 5
-    2cce:	61 f0       	breq	.+24     	; 0x2ce8 <__vector_15+0x72>
-    2cd0:	2f 5f       	subi	r18, 0xFF	; 255
-    2cd2:	e2 2f       	mov	r30, r18
-    2cd4:	f0 e0       	ldi	r31, 0x00	; 0
-    2cd6:	ee 0f       	add	r30, r30
-    2cd8:	ff 1f       	adc	r31, r31
-    2cda:	e4 0f       	add	r30, r20
-    2cdc:	f5 1f       	adc	r31, r21
-    2cde:	81 81       	ldd	r24, Z+1	; 0x01
-    2ce0:	8f 3f       	cpi	r24, 0xFF	; 255
-    2ce2:	f9 f2       	breq	.-66     	; 0x2ca2 <__vector_15+0x2c>
-    2ce4:	81 bf       	out	0x31, r24	; 49
-    2ce6:	dd cf       	rjmp	.-70     	; 0x2ca2 <__vector_15+0x2c>
-    2ce8:	20 93 b8 06 	sts	0x06B8, r18
-    2cec:	ff 91       	pop	r31
-    2cee:	ef 91       	pop	r30
-    2cf0:	bf 91       	pop	r27
-    2cf2:	af 91       	pop	r26
-    2cf4:	9f 91       	pop	r25
-    2cf6:	8f 91       	pop	r24
-    2cf8:	5f 91       	pop	r21
-    2cfa:	4f 91       	pop	r20
-    2cfc:	2f 91       	pop	r18
-    2cfe:	0f 90       	pop	r0
-    2d00:	0b be       	out	0x3b, r0	; 59
-    2d02:	0f 90       	pop	r0
-    2d04:	0f be       	out	0x3f, r0	; 63
-    2d06:	0f 90       	pop	r0
-    2d08:	1f 90       	pop	r1
-    2d0a:	18 95       	reti
+00002bee <__vector_16>:
+    2bee:	1f 92       	push	r1
+    2bf0:	0f 92       	push	r0
+    2bf2:	0f b6       	in	r0, 0x3f	; 63
+    2bf4:	0f 92       	push	r0
+    2bf6:	0b b6       	in	r0, 0x3b	; 59
+    2bf8:	0f 92       	push	r0
+    2bfa:	11 24       	eor	r1, r1
+    2bfc:	2f 93       	push	r18
+    2bfe:	3f 93       	push	r19
+    2c00:	8f 93       	push	r24
+    2c02:	9f 93       	push	r25
+    2c04:	af 93       	push	r26
+    2c06:	bf 93       	push	r27
+    2c08:	cf 93       	push	r28
+    2c0a:	df 93       	push	r29
+    2c0c:	ef 93       	push	r30
+    2c0e:	ff 93       	push	r31
+    2c10:	80 91 a7 06 	lds	r24, 0x06A7
+    2c14:	88 23       	and	r24, r24
+    2c16:	91 f0       	breq	.+36     	; 0x2c3c <__vector_16+0x4e>
+    2c18:	20 91 55 03 	lds	r18, 0x0355
+    2c1c:	30 91 56 03 	lds	r19, 0x0356
+    2c20:	80 91 59 03 	lds	r24, 0x0359
+    2c24:	90 91 5a 03 	lds	r25, 0x035A
+    2c28:	90 93 56 03 	sts	0x0356, r25
+    2c2c:	80 93 55 03 	sts	0x0355, r24
+    2c30:	30 93 5a 03 	sts	0x035A, r19
+    2c34:	20 93 59 03 	sts	0x0359, r18
+    2c38:	10 92 a7 06 	sts	0x06A7, r1
+    2c3c:	85 b3       	in	r24, 0x15	; 21
+    2c3e:	87 67       	ori	r24, 0x77	; 119
+    2c40:	85 bb       	out	0x15, r24	; 21
+    2c42:	85 b3       	in	r24, 0x15	; 21
+    2c44:	c0 91 55 03 	lds	r28, 0x0355
+    2c48:	d0 91 56 03 	lds	r29, 0x0356
+    2c4c:	98 81       	ld	r25, Y
+    2c4e:	89 23       	and	r24, r25
+    2c50:	85 bb       	out	0x15, r24	; 21
+    2c52:	10 92 a8 06 	sts	0x06A8, r1
+    2c56:	89 81       	ldd	r24, Y+1	; 0x01
+    2c58:	81 bf       	out	0x31, r24	; 49
+    2c5a:	20 e0       	ldi	r18, 0x00	; 0
+    2c5c:	a2 2f       	mov	r26, r18
+    2c5e:	b0 e0       	ldi	r27, 0x00	; 0
+    2c60:	82 b7       	in	r24, 0x32	; 50
+    2c62:	fd 01       	movw	r30, r26
+    2c64:	ee 0f       	add	r30, r30
+    2c66:	ff 1f       	adc	r31, r31
+    2c68:	ec 0f       	add	r30, r28
+    2c6a:	fd 1f       	adc	r31, r29
+    2c6c:	91 81       	ldd	r25, Z+1	; 0x01
+    2c6e:	9f 5f       	subi	r25, 0xFF	; 255
+    2c70:	89 17       	cp	r24, r25
+    2c72:	b8 f0       	brcs	.+46     	; 0x2ca2 <__vector_16+0xb4>
+    2c74:	95 b3       	in	r25, 0x15	; 21
+    2c76:	11 96       	adiw	r26, 0x01	; 1
+    2c78:	aa 0f       	add	r26, r26
+    2c7a:	bb 1f       	adc	r27, r27
+    2c7c:	ac 0f       	add	r26, r28
+    2c7e:	bd 1f       	adc	r27, r29
+    2c80:	8c 91       	ld	r24, X
+    2c82:	98 2b       	or	r25, r24
+    2c84:	95 bb       	out	0x15, r25	; 21
+    2c86:	25 30       	cpi	r18, 0x05	; 5
+    2c88:	61 f0       	breq	.+24     	; 0x2ca2 <__vector_16+0xb4>
+    2c8a:	2f 5f       	subi	r18, 0xFF	; 255
+    2c8c:	e2 2f       	mov	r30, r18
+    2c8e:	f0 e0       	ldi	r31, 0x00	; 0
+    2c90:	ee 0f       	add	r30, r30
+    2c92:	ff 1f       	adc	r31, r31
+    2c94:	ec 0f       	add	r30, r28
+    2c96:	fd 1f       	adc	r31, r29
+    2c98:	81 81       	ldd	r24, Z+1	; 0x01
+    2c9a:	8f 3f       	cpi	r24, 0xFF	; 255
+    2c9c:	f9 f2       	breq	.-66     	; 0x2c5c <__vector_16+0x6e>
+    2c9e:	81 bf       	out	0x31, r24	; 49
+    2ca0:	dd cf       	rjmp	.-70     	; 0x2c5c <__vector_16+0x6e>
+    2ca2:	20 93 a8 06 	sts	0x06A8, r18
+    2ca6:	ff 91       	pop	r31
+    2ca8:	ef 91       	pop	r30
+    2caa:	df 91       	pop	r29
+    2cac:	cf 91       	pop	r28
+    2cae:	bf 91       	pop	r27
+    2cb0:	af 91       	pop	r26
+    2cb2:	9f 91       	pop	r25
+    2cb4:	8f 91       	pop	r24
+    2cb6:	3f 91       	pop	r19
+    2cb8:	2f 91       	pop	r18
+    2cba:	0f 90       	pop	r0
+    2cbc:	0b be       	out	0x3b, r0	; 59
+    2cbe:	0f 90       	pop	r0
+    2cc0:	0f be       	out	0x3f, r0	; 63
+    2cc2:	0f 90       	pop	r0
+    2cc4:	1f 90       	pop	r1
+    2cc6:	18 95       	reti
 
-00002d0c <apply_orbs>:
-    2d0c:	0f 93       	push	r16
-    2d0e:	1f 93       	push	r17
-    2d10:	cf 93       	push	r28
-    2d12:	df 93       	push	r29
-    2d14:	80 91 63 03 	lds	r24, 0x0363
-    2d18:	88 23       	and	r24, r24
-    2d1a:	09 f4       	brne	.+2      	; 0x2d1e <apply_orbs+0x12>
-    2d1c:	62 c1       	rjmp	.+708    	; 0x2fe2 <apply_orbs+0x2d6>
-    2d1e:	e0 91 66 03 	lds	r30, 0x0366
-    2d22:	f0 91 67 03 	lds	r31, 0x0367
-    2d26:	8f ef       	ldi	r24, 0xFF	; 255
-    2d28:	80 83       	st	Z, r24
-    2d2a:	80 91 53 0a 	lds	r24, 0x0A53
-    2d2e:	81 50       	subi	r24, 0x01	; 1
-    2d30:	81 83       	std	Z+1, r24	; 0x01
-    2d32:	8f 5f       	subi	r24, 0xFF	; 255
-    2d34:	91 e0       	ldi	r25, 0x01	; 1
-    2d36:	92 83       	std	Z+2, r25	; 0x02
-    2d38:	88 23       	and	r24, r24
-    2d3a:	11 f0       	breq	.+4      	; 0x2d40 <apply_orbs+0x34>
-    2d3c:	8e ef       	ldi	r24, 0xFE	; 254
-    2d3e:	80 83       	st	Z, r24
-    2d40:	80 91 54 0a 	lds	r24, 0x0A54
-    2d44:	81 50       	subi	r24, 0x01	; 1
-    2d46:	83 83       	std	Z+3, r24	; 0x03
-    2d48:	8f 5f       	subi	r24, 0xFF	; 255
-    2d4a:	92 e0       	ldi	r25, 0x02	; 2
-    2d4c:	94 83       	std	Z+4, r25	; 0x04
-    2d4e:	88 23       	and	r24, r24
-    2d50:	19 f0       	breq	.+6      	; 0x2d58 <apply_orbs+0x4c>
-    2d52:	80 81       	ld	r24, Z
-    2d54:	8d 7f       	andi	r24, 0xFD	; 253
-    2d56:	80 83       	st	Z, r24
-    2d58:	80 91 55 0a 	lds	r24, 0x0A55
-    2d5c:	81 50       	subi	r24, 0x01	; 1
-    2d5e:	85 83       	std	Z+5, r24	; 0x05
-    2d60:	8f 5f       	subi	r24, 0xFF	; 255
-    2d62:	94 e0       	ldi	r25, 0x04	; 4
-    2d64:	96 83       	std	Z+6, r25	; 0x06
-    2d66:	88 23       	and	r24, r24
-    2d68:	19 f0       	breq	.+6      	; 0x2d70 <apply_orbs+0x64>
-    2d6a:	80 81       	ld	r24, Z
-    2d6c:	8b 7f       	andi	r24, 0xFB	; 251
-    2d6e:	80 83       	st	Z, r24
-    2d70:	80 91 56 0a 	lds	r24, 0x0A56
-    2d74:	81 50       	subi	r24, 0x01	; 1
-    2d76:	87 83       	std	Z+7, r24	; 0x07
-    2d78:	8f 5f       	subi	r24, 0xFF	; 255
-    2d7a:	90 e1       	ldi	r25, 0x10	; 16
-    2d7c:	90 87       	std	Z+8, r25	; 0x08
-    2d7e:	88 23       	and	r24, r24
-    2d80:	19 f0       	breq	.+6      	; 0x2d88 <apply_orbs+0x7c>
-    2d82:	80 81       	ld	r24, Z
-    2d84:	8f 7e       	andi	r24, 0xEF	; 239
-    2d86:	80 83       	st	Z, r24
-    2d88:	80 91 57 0a 	lds	r24, 0x0A57
-    2d8c:	81 50       	subi	r24, 0x01	; 1
-    2d8e:	81 87       	std	Z+9, r24	; 0x09
-    2d90:	8f 5f       	subi	r24, 0xFF	; 255
-    2d92:	90 e2       	ldi	r25, 0x20	; 32
-    2d94:	92 87       	std	Z+10, r25	; 0x0a
-    2d96:	88 23       	and	r24, r24
-    2d98:	19 f0       	breq	.+6      	; 0x2da0 <apply_orbs+0x94>
-    2d9a:	80 81       	ld	r24, Z
-    2d9c:	8f 7d       	andi	r24, 0xDF	; 223
-    2d9e:	80 83       	st	Z, r24
-    2da0:	80 91 58 0a 	lds	r24, 0x0A58
-    2da4:	81 50       	subi	r24, 0x01	; 1
-    2da6:	83 87       	std	Z+11, r24	; 0x0b
-    2da8:	8f 5f       	subi	r24, 0xFF	; 255
-    2daa:	90 e4       	ldi	r25, 0x40	; 64
-    2dac:	94 87       	std	Z+12, r25	; 0x0c
-    2dae:	88 23       	and	r24, r24
-    2db0:	19 f0       	breq	.+6      	; 0x2db8 <apply_orbs+0xac>
-    2db2:	80 81       	ld	r24, Z
-    2db4:	8f 7b       	andi	r24, 0xBF	; 191
-    2db6:	80 83       	st	Z, r24
-    2db8:	91 81       	ldd	r25, Z+1	; 0x01
-    2dba:	83 81       	ldd	r24, Z+3	; 0x03
-    2dbc:	89 17       	cp	r24, r25
-    2dbe:	10 f0       	brcs	.+4      	; 0x2dc4 <apply_orbs+0xb8>
-    2dc0:	61 e0       	ldi	r22, 0x01	; 1
-    2dc2:	07 c0       	rjmp	.+14     	; 0x2dd2 <apply_orbs+0xc6>
-    2dc4:	81 83       	std	Z+1, r24	; 0x01
-    2dc6:	93 83       	std	Z+3, r25	; 0x03
-    2dc8:	92 81       	ldd	r25, Z+2	; 0x02
-    2dca:	84 81       	ldd	r24, Z+4	; 0x04
-    2dcc:	82 83       	std	Z+2, r24	; 0x02
-    2dce:	94 83       	std	Z+4, r25	; 0x04
-    2dd0:	60 e0       	ldi	r22, 0x00	; 0
-    2dd2:	df 01       	movw	r26, r30
-    2dd4:	15 96       	adiw	r26, 0x05	; 5
-    2dd6:	93 81       	ldd	r25, Z+3	; 0x03
-    2dd8:	85 81       	ldd	r24, Z+5	; 0x05
-    2dda:	89 17       	cp	r24, r25
-    2ddc:	58 f4       	brcc	.+22     	; 0x2df4 <apply_orbs+0xe8>
-    2dde:	83 83       	std	Z+3, r24	; 0x03
-    2de0:	95 83       	std	Z+5, r25	; 0x05
-    2de2:	94 81       	ldd	r25, Z+4	; 0x04
-    2de4:	11 96       	adiw	r26, 0x01	; 1
-    2de6:	8c 91       	ld	r24, X
-    2de8:	11 97       	sbiw	r26, 0x01	; 1
-    2dea:	84 83       	std	Z+4, r24	; 0x04
-    2dec:	11 96       	adiw	r26, 0x01	; 1
-    2dee:	9c 93       	st	X, r25
-    2df0:	11 97       	sbiw	r26, 0x01	; 1
-    2df2:	60 e0       	ldi	r22, 0x00	; 0
-    2df4:	8d 01       	movw	r16, r26
-    2df6:	0e 5f       	subi	r16, 0xFE	; 254
-    2df8:	1f 4f       	sbci	r17, 0xFF	; 255
-    2dfa:	95 81       	ldd	r25, Z+5	; 0x05
-    2dfc:	12 96       	adiw	r26, 0x02	; 2
-    2dfe:	8c 91       	ld	r24, X
-    2e00:	12 97       	sbiw	r26, 0x02	; 2
-    2e02:	89 17       	cp	r24, r25
-    2e04:	70 f4       	brcc	.+28     	; 0x2e22 <apply_orbs+0x116>
-    2e06:	85 83       	std	Z+5, r24	; 0x05
-    2e08:	12 96       	adiw	r26, 0x02	; 2
-    2e0a:	9c 93       	st	X, r25
-    2e0c:	12 97       	sbiw	r26, 0x02	; 2
-    2e0e:	11 96       	adiw	r26, 0x01	; 1
-    2e10:	9c 91       	ld	r25, X
-    2e12:	11 97       	sbiw	r26, 0x01	; 1
-    2e14:	e8 01       	movw	r28, r16
-    2e16:	89 81       	ldd	r24, Y+1	; 0x01
-    2e18:	11 96       	adiw	r26, 0x01	; 1
-    2e1a:	8c 93       	st	X, r24
-    2e1c:	11 97       	sbiw	r26, 0x01	; 1
-    2e1e:	99 83       	std	Y+1, r25	; 0x01
-    2e20:	60 e0       	ldi	r22, 0x00	; 0
-    2e22:	98 01       	movw	r18, r16
-    2e24:	2e 5f       	subi	r18, 0xFE	; 254
-    2e26:	3f 4f       	sbci	r19, 0xFF	; 255
-    2e28:	12 96       	adiw	r26, 0x02	; 2
-    2e2a:	9c 91       	ld	r25, X
-    2e2c:	12 97       	sbiw	r26, 0x02	; 2
-    2e2e:	e8 01       	movw	r28, r16
-    2e30:	8a 81       	ldd	r24, Y+2	; 0x02
-    2e32:	89 17       	cp	r24, r25
-    2e34:	60 f4       	brcc	.+24     	; 0x2e4e <apply_orbs+0x142>
-    2e36:	12 96       	adiw	r26, 0x02	; 2
-    2e38:	8c 93       	st	X, r24
-    2e3a:	12 97       	sbiw	r26, 0x02	; 2
-    2e3c:	9a 83       	std	Y+2, r25	; 0x02
-    2e3e:	99 81       	ldd	r25, Y+1	; 0x01
-    2e40:	e9 01       	movw	r28, r18
-    2e42:	89 81       	ldd	r24, Y+1	; 0x01
-    2e44:	e8 01       	movw	r28, r16
-    2e46:	89 83       	std	Y+1, r24	; 0x01
-    2e48:	e9 01       	movw	r28, r18
-    2e4a:	99 83       	std	Y+1, r25	; 0x01
-    2e4c:	60 e0       	ldi	r22, 0x00	; 0
-    2e4e:	a9 01       	movw	r20, r18
-    2e50:	4e 5f       	subi	r20, 0xFE	; 254
-    2e52:	5f 4f       	sbci	r21, 0xFF	; 255
-    2e54:	e8 01       	movw	r28, r16
-    2e56:	9a 81       	ldd	r25, Y+2	; 0x02
-    2e58:	e9 01       	movw	r28, r18
-    2e5a:	8a 81       	ldd	r24, Y+2	; 0x02
-    2e5c:	89 17       	cp	r24, r25
-    2e5e:	60 f4       	brcc	.+24     	; 0x2e78 <apply_orbs+0x16c>
-    2e60:	e8 01       	movw	r28, r16
-    2e62:	8a 83       	std	Y+2, r24	; 0x02
-    2e64:	e9 01       	movw	r28, r18
-    2e66:	9a 83       	std	Y+2, r25	; 0x02
-    2e68:	99 81       	ldd	r25, Y+1	; 0x01
-    2e6a:	ea 01       	movw	r28, r20
-    2e6c:	89 81       	ldd	r24, Y+1	; 0x01
-    2e6e:	e9 01       	movw	r28, r18
-    2e70:	89 83       	std	Y+1, r24	; 0x01
-    2e72:	ea 01       	movw	r28, r20
-    2e74:	99 83       	std	Y+1, r25	; 0x01
-    2e76:	03 c0       	rjmp	.+6      	; 0x2e7e <apply_orbs+0x172>
-    2e78:	66 23       	and	r22, r22
-    2e7a:	09 f0       	breq	.+2      	; 0x2e7e <apply_orbs+0x172>
-    2e7c:	9f c0       	rjmp	.+318    	; 0x2fbc <apply_orbs+0x2b0>
-    2e7e:	91 81       	ldd	r25, Z+1	; 0x01
-    2e80:	83 81       	ldd	r24, Z+3	; 0x03
-    2e82:	89 17       	cp	r24, r25
-    2e84:	10 f0       	brcs	.+4      	; 0x2e8a <apply_orbs+0x17e>
-    2e86:	91 e0       	ldi	r25, 0x01	; 1
-    2e88:	07 c0       	rjmp	.+14     	; 0x2e98 <apply_orbs+0x18c>
-    2e8a:	81 83       	std	Z+1, r24	; 0x01
-    2e8c:	93 83       	std	Z+3, r25	; 0x03
-    2e8e:	92 81       	ldd	r25, Z+2	; 0x02
-    2e90:	84 81       	ldd	r24, Z+4	; 0x04
-    2e92:	82 83       	std	Z+2, r24	; 0x02
-    2e94:	94 83       	std	Z+4, r25	; 0x04
-    2e96:	90 e0       	ldi	r25, 0x00	; 0
-    2e98:	43 81       	ldd	r20, Z+3	; 0x03
-    2e9a:	85 81       	ldd	r24, Z+5	; 0x05
-    2e9c:	84 17       	cp	r24, r20
-    2e9e:	58 f4       	brcc	.+22     	; 0x2eb6 <apply_orbs+0x1aa>
-    2ea0:	83 83       	std	Z+3, r24	; 0x03
-    2ea2:	45 83       	std	Z+5, r20	; 0x05
-    2ea4:	94 81       	ldd	r25, Z+4	; 0x04
-    2ea6:	11 96       	adiw	r26, 0x01	; 1
-    2ea8:	8c 91       	ld	r24, X
-    2eaa:	11 97       	sbiw	r26, 0x01	; 1
-    2eac:	84 83       	std	Z+4, r24	; 0x04
-    2eae:	11 96       	adiw	r26, 0x01	; 1
-    2eb0:	9c 93       	st	X, r25
-    2eb2:	11 97       	sbiw	r26, 0x01	; 1
-    2eb4:	90 e0       	ldi	r25, 0x00	; 0
-    2eb6:	45 81       	ldd	r20, Z+5	; 0x05
-    2eb8:	12 96       	adiw	r26, 0x02	; 2
-    2eba:	8c 91       	ld	r24, X
-    2ebc:	12 97       	sbiw	r26, 0x02	; 2
-    2ebe:	84 17       	cp	r24, r20
-    2ec0:	70 f4       	brcc	.+28     	; 0x2ede <apply_orbs+0x1d2>
-    2ec2:	85 83       	std	Z+5, r24	; 0x05
-    2ec4:	12 96       	adiw	r26, 0x02	; 2
-    2ec6:	4c 93       	st	X, r20
-    2ec8:	12 97       	sbiw	r26, 0x02	; 2
-    2eca:	11 96       	adiw	r26, 0x01	; 1
-    2ecc:	9c 91       	ld	r25, X
-    2ece:	11 97       	sbiw	r26, 0x01	; 1
-    2ed0:	e8 01       	movw	r28, r16
-    2ed2:	89 81       	ldd	r24, Y+1	; 0x01
-    2ed4:	11 96       	adiw	r26, 0x01	; 1
-    2ed6:	8c 93       	st	X, r24
-    2ed8:	11 97       	sbiw	r26, 0x01	; 1
-    2eda:	99 83       	std	Y+1, r25	; 0x01
-    2edc:	90 e0       	ldi	r25, 0x00	; 0
-    2ede:	12 96       	adiw	r26, 0x02	; 2
-    2ee0:	4c 91       	ld	r20, X
-    2ee2:	12 97       	sbiw	r26, 0x02	; 2
-    2ee4:	e8 01       	movw	r28, r16
-    2ee6:	8a 81       	ldd	r24, Y+2	; 0x02
-    2ee8:	84 17       	cp	r24, r20
-    2eea:	60 f4       	brcc	.+24     	; 0x2f04 <apply_orbs+0x1f8>
-    2eec:	12 96       	adiw	r26, 0x02	; 2
-    2eee:	8c 93       	st	X, r24
-    2ef0:	12 97       	sbiw	r26, 0x02	; 2
-    2ef2:	4a 83       	std	Y+2, r20	; 0x02
-    2ef4:	99 81       	ldd	r25, Y+1	; 0x01
-    2ef6:	e9 01       	movw	r28, r18
-    2ef8:	89 81       	ldd	r24, Y+1	; 0x01
-    2efa:	e8 01       	movw	r28, r16
-    2efc:	89 83       	std	Y+1, r24	; 0x01
-    2efe:	e9 01       	movw	r28, r18
-    2f00:	99 83       	std	Y+1, r25	; 0x01
-    2f02:	03 c0       	rjmp	.+6      	; 0x2f0a <apply_orbs+0x1fe>
-    2f04:	99 23       	and	r25, r25
-    2f06:	09 f0       	breq	.+2      	; 0x2f0a <apply_orbs+0x1fe>
-    2f08:	59 c0       	rjmp	.+178    	; 0x2fbc <apply_orbs+0x2b0>
-    2f0a:	91 81       	ldd	r25, Z+1	; 0x01
-    2f0c:	83 81       	ldd	r24, Z+3	; 0x03
-    2f0e:	89 17       	cp	r24, r25
-    2f10:	10 f0       	brcs	.+4      	; 0x2f16 <apply_orbs+0x20a>
-    2f12:	91 e0       	ldi	r25, 0x01	; 1
-    2f14:	07 c0       	rjmp	.+14     	; 0x2f24 <apply_orbs+0x218>
-    2f16:	81 83       	std	Z+1, r24	; 0x01
-    2f18:	93 83       	std	Z+3, r25	; 0x03
-    2f1a:	92 81       	ldd	r25, Z+2	; 0x02
-    2f1c:	84 81       	ldd	r24, Z+4	; 0x04
-    2f1e:	82 83       	std	Z+2, r24	; 0x02
-    2f20:	94 83       	std	Z+4, r25	; 0x04
-    2f22:	90 e0       	ldi	r25, 0x00	; 0
-    2f24:	23 81       	ldd	r18, Z+3	; 0x03
-    2f26:	85 81       	ldd	r24, Z+5	; 0x05
-    2f28:	82 17       	cp	r24, r18
-    2f2a:	58 f4       	brcc	.+22     	; 0x2f42 <apply_orbs+0x236>
-    2f2c:	83 83       	std	Z+3, r24	; 0x03
-    2f2e:	25 83       	std	Z+5, r18	; 0x05
-    2f30:	94 81       	ldd	r25, Z+4	; 0x04
-    2f32:	11 96       	adiw	r26, 0x01	; 1
-    2f34:	8c 91       	ld	r24, X
-    2f36:	11 97       	sbiw	r26, 0x01	; 1
-    2f38:	84 83       	std	Z+4, r24	; 0x04
-    2f3a:	11 96       	adiw	r26, 0x01	; 1
-    2f3c:	9c 93       	st	X, r25
-    2f3e:	11 97       	sbiw	r26, 0x01	; 1
-    2f40:	90 e0       	ldi	r25, 0x00	; 0
-    2f42:	25 81       	ldd	r18, Z+5	; 0x05
-    2f44:	12 96       	adiw	r26, 0x02	; 2
-    2f46:	8c 91       	ld	r24, X
-    2f48:	12 97       	sbiw	r26, 0x02	; 2
-    2f4a:	82 17       	cp	r24, r18
-    2f4c:	70 f4       	brcc	.+28     	; 0x2f6a <apply_orbs+0x25e>
-    2f4e:	85 83       	std	Z+5, r24	; 0x05
-    2f50:	12 96       	adiw	r26, 0x02	; 2
-    2f52:	2c 93       	st	X, r18
-    2f54:	12 97       	sbiw	r26, 0x02	; 2
-    2f56:	11 96       	adiw	r26, 0x01	; 1
-    2f58:	9c 91       	ld	r25, X
-    2f5a:	11 97       	sbiw	r26, 0x01	; 1
-    2f5c:	e8 01       	movw	r28, r16
-    2f5e:	89 81       	ldd	r24, Y+1	; 0x01
-    2f60:	11 96       	adiw	r26, 0x01	; 1
-    2f62:	8c 93       	st	X, r24
-    2f64:	11 97       	sbiw	r26, 0x01	; 1
-    2f66:	99 83       	std	Y+1, r25	; 0x01
-    2f68:	02 c0       	rjmp	.+4      	; 0x2f6e <apply_orbs+0x262>
-    2f6a:	99 23       	and	r25, r25
-    2f6c:	39 f5       	brne	.+78     	; 0x2fbc <apply_orbs+0x2b0>
-    2f6e:	91 81       	ldd	r25, Z+1	; 0x01
-    2f70:	83 81       	ldd	r24, Z+3	; 0x03
-    2f72:	89 17       	cp	r24, r25
-    2f74:	10 f0       	brcs	.+4      	; 0x2f7a <apply_orbs+0x26e>
-    2f76:	21 e0       	ldi	r18, 0x01	; 1
-    2f78:	07 c0       	rjmp	.+14     	; 0x2f88 <apply_orbs+0x27c>
-    2f7a:	81 83       	std	Z+1, r24	; 0x01
-    2f7c:	93 83       	std	Z+3, r25	; 0x03
-    2f7e:	92 81       	ldd	r25, Z+2	; 0x02
-    2f80:	84 81       	ldd	r24, Z+4	; 0x04
-    2f82:	82 83       	std	Z+2, r24	; 0x02
-    2f84:	94 83       	std	Z+4, r25	; 0x04
-    2f86:	20 e0       	ldi	r18, 0x00	; 0
-    2f88:	93 81       	ldd	r25, Z+3	; 0x03
-    2f8a:	85 81       	ldd	r24, Z+5	; 0x05
-    2f8c:	89 17       	cp	r24, r25
-    2f8e:	50 f4       	brcc	.+20     	; 0x2fa4 <apply_orbs+0x298>
-    2f90:	83 83       	std	Z+3, r24	; 0x03
-    2f92:	95 83       	std	Z+5, r25	; 0x05
-    2f94:	94 81       	ldd	r25, Z+4	; 0x04
-    2f96:	11 96       	adiw	r26, 0x01	; 1
+00002cc8 <__vector_15>:
+    2cc8:	1f 92       	push	r1
+    2cca:	0f 92       	push	r0
+    2ccc:	0f b6       	in	r0, 0x3f	; 63
+    2cce:	0f 92       	push	r0
+    2cd0:	0b b6       	in	r0, 0x3b	; 59
+    2cd2:	0f 92       	push	r0
+    2cd4:	11 24       	eor	r1, r1
+    2cd6:	2f 93       	push	r18
+    2cd8:	4f 93       	push	r20
+    2cda:	5f 93       	push	r21
+    2cdc:	8f 93       	push	r24
+    2cde:	9f 93       	push	r25
+    2ce0:	af 93       	push	r26
+    2ce2:	bf 93       	push	r27
+    2ce4:	ef 93       	push	r30
+    2ce6:	ff 93       	push	r31
+    2ce8:	40 91 55 03 	lds	r20, 0x0355
+    2cec:	50 91 56 03 	lds	r21, 0x0356
+    2cf0:	20 91 a8 06 	lds	r18, 0x06A8
+    2cf4:	a2 2f       	mov	r26, r18
+    2cf6:	b0 e0       	ldi	r27, 0x00	; 0
+    2cf8:	82 b7       	in	r24, 0x32	; 50
+    2cfa:	fd 01       	movw	r30, r26
+    2cfc:	ee 0f       	add	r30, r30
+    2cfe:	ff 1f       	adc	r31, r31
+    2d00:	e4 0f       	add	r30, r20
+    2d02:	f5 1f       	adc	r31, r21
+    2d04:	91 81       	ldd	r25, Z+1	; 0x01
+    2d06:	9f 5f       	subi	r25, 0xFF	; 255
+    2d08:	89 17       	cp	r24, r25
+    2d0a:	b8 f0       	brcs	.+46     	; 0x2d3a <__vector_15+0x72>
+    2d0c:	95 b3       	in	r25, 0x15	; 21
+    2d0e:	11 96       	adiw	r26, 0x01	; 1
+    2d10:	aa 0f       	add	r26, r26
+    2d12:	bb 1f       	adc	r27, r27
+    2d14:	a4 0f       	add	r26, r20
+    2d16:	b5 1f       	adc	r27, r21
+    2d18:	8c 91       	ld	r24, X
+    2d1a:	98 2b       	or	r25, r24
+    2d1c:	95 bb       	out	0x15, r25	; 21
+    2d1e:	25 30       	cpi	r18, 0x05	; 5
+    2d20:	61 f0       	breq	.+24     	; 0x2d3a <__vector_15+0x72>
+    2d22:	2f 5f       	subi	r18, 0xFF	; 255
+    2d24:	e2 2f       	mov	r30, r18
+    2d26:	f0 e0       	ldi	r31, 0x00	; 0
+    2d28:	ee 0f       	add	r30, r30
+    2d2a:	ff 1f       	adc	r31, r31
+    2d2c:	e4 0f       	add	r30, r20
+    2d2e:	f5 1f       	adc	r31, r21
+    2d30:	81 81       	ldd	r24, Z+1	; 0x01
+    2d32:	8f 3f       	cpi	r24, 0xFF	; 255
+    2d34:	f9 f2       	breq	.-66     	; 0x2cf4 <__vector_15+0x2c>
+    2d36:	81 bf       	out	0x31, r24	; 49
+    2d38:	dd cf       	rjmp	.-70     	; 0x2cf4 <__vector_15+0x2c>
+    2d3a:	20 93 a8 06 	sts	0x06A8, r18
+    2d3e:	ff 91       	pop	r31
+    2d40:	ef 91       	pop	r30
+    2d42:	bf 91       	pop	r27
+    2d44:	af 91       	pop	r26
+    2d46:	9f 91       	pop	r25
+    2d48:	8f 91       	pop	r24
+    2d4a:	5f 91       	pop	r21
+    2d4c:	4f 91       	pop	r20
+    2d4e:	2f 91       	pop	r18
+    2d50:	0f 90       	pop	r0
+    2d52:	0b be       	out	0x3b, r0	; 59
+    2d54:	0f 90       	pop	r0
+    2d56:	0f be       	out	0x3f, r0	; 63
+    2d58:	0f 90       	pop	r0
+    2d5a:	1f 90       	pop	r1
+    2d5c:	18 95       	reti
+
+00002d5e <apply_orbs>:
+    2d5e:	0f 93       	push	r16
+    2d60:	1f 93       	push	r17
+    2d62:	cf 93       	push	r28
+    2d64:	df 93       	push	r29
+    2d66:	80 91 54 03 	lds	r24, 0x0354
+    2d6a:	88 23       	and	r24, r24
+    2d6c:	09 f4       	brne	.+2      	; 0x2d70 <apply_orbs+0x12>
+    2d6e:	62 c1       	rjmp	.+708    	; 0x3034 <apply_orbs+0x2d6>
+    2d70:	e0 91 57 03 	lds	r30, 0x0357
+    2d74:	f0 91 58 03 	lds	r31, 0x0358
+    2d78:	8f ef       	ldi	r24, 0xFF	; 255
+    2d7a:	80 83       	st	Z, r24
+    2d7c:	80 91 43 0a 	lds	r24, 0x0A43
+    2d80:	81 50       	subi	r24, 0x01	; 1
+    2d82:	81 83       	std	Z+1, r24	; 0x01
+    2d84:	8f 5f       	subi	r24, 0xFF	; 255
+    2d86:	91 e0       	ldi	r25, 0x01	; 1
+    2d88:	92 83       	std	Z+2, r25	; 0x02
+    2d8a:	88 23       	and	r24, r24
+    2d8c:	11 f0       	breq	.+4      	; 0x2d92 <apply_orbs+0x34>
+    2d8e:	8e ef       	ldi	r24, 0xFE	; 254
+    2d90:	80 83       	st	Z, r24
+    2d92:	80 91 44 0a 	lds	r24, 0x0A44
+    2d96:	81 50       	subi	r24, 0x01	; 1
+    2d98:	83 83       	std	Z+3, r24	; 0x03
+    2d9a:	8f 5f       	subi	r24, 0xFF	; 255
+    2d9c:	92 e0       	ldi	r25, 0x02	; 2
+    2d9e:	94 83       	std	Z+4, r25	; 0x04
+    2da0:	88 23       	and	r24, r24
+    2da2:	19 f0       	breq	.+6      	; 0x2daa <apply_orbs+0x4c>
+    2da4:	80 81       	ld	r24, Z
+    2da6:	8d 7f       	andi	r24, 0xFD	; 253
+    2da8:	80 83       	st	Z, r24
+    2daa:	80 91 45 0a 	lds	r24, 0x0A45
+    2dae:	81 50       	subi	r24, 0x01	; 1
+    2db0:	85 83       	std	Z+5, r24	; 0x05
+    2db2:	8f 5f       	subi	r24, 0xFF	; 255
+    2db4:	94 e0       	ldi	r25, 0x04	; 4
+    2db6:	96 83       	std	Z+6, r25	; 0x06
+    2db8:	88 23       	and	r24, r24
+    2dba:	19 f0       	breq	.+6      	; 0x2dc2 <apply_orbs+0x64>
+    2dbc:	80 81       	ld	r24, Z
+    2dbe:	8b 7f       	andi	r24, 0xFB	; 251
+    2dc0:	80 83       	st	Z, r24
+    2dc2:	80 91 46 0a 	lds	r24, 0x0A46
+    2dc6:	81 50       	subi	r24, 0x01	; 1
+    2dc8:	87 83       	std	Z+7, r24	; 0x07
+    2dca:	8f 5f       	subi	r24, 0xFF	; 255
+    2dcc:	90 e1       	ldi	r25, 0x10	; 16
+    2dce:	90 87       	std	Z+8, r25	; 0x08
+    2dd0:	88 23       	and	r24, r24
+    2dd2:	19 f0       	breq	.+6      	; 0x2dda <apply_orbs+0x7c>
+    2dd4:	80 81       	ld	r24, Z
+    2dd6:	8f 7e       	andi	r24, 0xEF	; 239
+    2dd8:	80 83       	st	Z, r24
+    2dda:	80 91 47 0a 	lds	r24, 0x0A47
+    2dde:	81 50       	subi	r24, 0x01	; 1
+    2de0:	81 87       	std	Z+9, r24	; 0x09
+    2de2:	8f 5f       	subi	r24, 0xFF	; 255
+    2de4:	90 e2       	ldi	r25, 0x20	; 32
+    2de6:	92 87       	std	Z+10, r25	; 0x0a
+    2de8:	88 23       	and	r24, r24
+    2dea:	19 f0       	breq	.+6      	; 0x2df2 <apply_orbs+0x94>
+    2dec:	80 81       	ld	r24, Z
+    2dee:	8f 7d       	andi	r24, 0xDF	; 223
+    2df0:	80 83       	st	Z, r24
+    2df2:	80 91 48 0a 	lds	r24, 0x0A48
+    2df6:	81 50       	subi	r24, 0x01	; 1
+    2df8:	83 87       	std	Z+11, r24	; 0x0b
+    2dfa:	8f 5f       	subi	r24, 0xFF	; 255
+    2dfc:	90 e4       	ldi	r25, 0x40	; 64
+    2dfe:	94 87       	std	Z+12, r25	; 0x0c
+    2e00:	88 23       	and	r24, r24
+    2e02:	19 f0       	breq	.+6      	; 0x2e0a <apply_orbs+0xac>
+    2e04:	80 81       	ld	r24, Z
+    2e06:	8f 7b       	andi	r24, 0xBF	; 191
+    2e08:	80 83       	st	Z, r24
+    2e0a:	91 81       	ldd	r25, Z+1	; 0x01
+    2e0c:	83 81       	ldd	r24, Z+3	; 0x03
+    2e0e:	89 17       	cp	r24, r25
+    2e10:	10 f0       	brcs	.+4      	; 0x2e16 <apply_orbs+0xb8>
+    2e12:	61 e0       	ldi	r22, 0x01	; 1
+    2e14:	07 c0       	rjmp	.+14     	; 0x2e24 <apply_orbs+0xc6>
+    2e16:	81 83       	std	Z+1, r24	; 0x01
+    2e18:	93 83       	std	Z+3, r25	; 0x03
+    2e1a:	92 81       	ldd	r25, Z+2	; 0x02
+    2e1c:	84 81       	ldd	r24, Z+4	; 0x04
+    2e1e:	82 83       	std	Z+2, r24	; 0x02
+    2e20:	94 83       	std	Z+4, r25	; 0x04
+    2e22:	60 e0       	ldi	r22, 0x00	; 0
+    2e24:	df 01       	movw	r26, r30
+    2e26:	15 96       	adiw	r26, 0x05	; 5
+    2e28:	93 81       	ldd	r25, Z+3	; 0x03
+    2e2a:	85 81       	ldd	r24, Z+5	; 0x05
+    2e2c:	89 17       	cp	r24, r25
+    2e2e:	58 f4       	brcc	.+22     	; 0x2e46 <apply_orbs+0xe8>
+    2e30:	83 83       	std	Z+3, r24	; 0x03
+    2e32:	95 83       	std	Z+5, r25	; 0x05
+    2e34:	94 81       	ldd	r25, Z+4	; 0x04
+    2e36:	11 96       	adiw	r26, 0x01	; 1
+    2e38:	8c 91       	ld	r24, X
+    2e3a:	11 97       	sbiw	r26, 0x01	; 1
+    2e3c:	84 83       	std	Z+4, r24	; 0x04
+    2e3e:	11 96       	adiw	r26, 0x01	; 1
+    2e40:	9c 93       	st	X, r25
+    2e42:	11 97       	sbiw	r26, 0x01	; 1
+    2e44:	60 e0       	ldi	r22, 0x00	; 0
+    2e46:	8d 01       	movw	r16, r26
+    2e48:	0e 5f       	subi	r16, 0xFE	; 254
+    2e4a:	1f 4f       	sbci	r17, 0xFF	; 255
+    2e4c:	95 81       	ldd	r25, Z+5	; 0x05
+    2e4e:	12 96       	adiw	r26, 0x02	; 2
+    2e50:	8c 91       	ld	r24, X
+    2e52:	12 97       	sbiw	r26, 0x02	; 2
+    2e54:	89 17       	cp	r24, r25
+    2e56:	70 f4       	brcc	.+28     	; 0x2e74 <apply_orbs+0x116>
+    2e58:	85 83       	std	Z+5, r24	; 0x05
+    2e5a:	12 96       	adiw	r26, 0x02	; 2
+    2e5c:	9c 93       	st	X, r25
+    2e5e:	12 97       	sbiw	r26, 0x02	; 2
+    2e60:	11 96       	adiw	r26, 0x01	; 1
+    2e62:	9c 91       	ld	r25, X
+    2e64:	11 97       	sbiw	r26, 0x01	; 1
+    2e66:	e8 01       	movw	r28, r16
+    2e68:	89 81       	ldd	r24, Y+1	; 0x01
+    2e6a:	11 96       	adiw	r26, 0x01	; 1
+    2e6c:	8c 93       	st	X, r24
+    2e6e:	11 97       	sbiw	r26, 0x01	; 1
+    2e70:	99 83       	std	Y+1, r25	; 0x01
+    2e72:	60 e0       	ldi	r22, 0x00	; 0
+    2e74:	98 01       	movw	r18, r16
+    2e76:	2e 5f       	subi	r18, 0xFE	; 254
+    2e78:	3f 4f       	sbci	r19, 0xFF	; 255
+    2e7a:	12 96       	adiw	r26, 0x02	; 2
+    2e7c:	9c 91       	ld	r25, X
+    2e7e:	12 97       	sbiw	r26, 0x02	; 2
+    2e80:	e8 01       	movw	r28, r16
+    2e82:	8a 81       	ldd	r24, Y+2	; 0x02
+    2e84:	89 17       	cp	r24, r25
+    2e86:	60 f4       	brcc	.+24     	; 0x2ea0 <apply_orbs+0x142>
+    2e88:	12 96       	adiw	r26, 0x02	; 2
+    2e8a:	8c 93       	st	X, r24
+    2e8c:	12 97       	sbiw	r26, 0x02	; 2
+    2e8e:	9a 83       	std	Y+2, r25	; 0x02
+    2e90:	99 81       	ldd	r25, Y+1	; 0x01
+    2e92:	e9 01       	movw	r28, r18
+    2e94:	89 81       	ldd	r24, Y+1	; 0x01
+    2e96:	e8 01       	movw	r28, r16
+    2e98:	89 83       	std	Y+1, r24	; 0x01
+    2e9a:	e9 01       	movw	r28, r18
+    2e9c:	99 83       	std	Y+1, r25	; 0x01
+    2e9e:	60 e0       	ldi	r22, 0x00	; 0
+    2ea0:	a9 01       	movw	r20, r18
+    2ea2:	4e 5f       	subi	r20, 0xFE	; 254
+    2ea4:	5f 4f       	sbci	r21, 0xFF	; 255
+    2ea6:	e8 01       	movw	r28, r16
+    2ea8:	9a 81       	ldd	r25, Y+2	; 0x02
+    2eaa:	e9 01       	movw	r28, r18
+    2eac:	8a 81       	ldd	r24, Y+2	; 0x02
+    2eae:	89 17       	cp	r24, r25
+    2eb0:	60 f4       	brcc	.+24     	; 0x2eca <apply_orbs+0x16c>
+    2eb2:	e8 01       	movw	r28, r16
+    2eb4:	8a 83       	std	Y+2, r24	; 0x02
+    2eb6:	e9 01       	movw	r28, r18
+    2eb8:	9a 83       	std	Y+2, r25	; 0x02
+    2eba:	99 81       	ldd	r25, Y+1	; 0x01
+    2ebc:	ea 01       	movw	r28, r20
+    2ebe:	89 81       	ldd	r24, Y+1	; 0x01
+    2ec0:	e9 01       	movw	r28, r18
+    2ec2:	89 83       	std	Y+1, r24	; 0x01
+    2ec4:	ea 01       	movw	r28, r20
+    2ec6:	99 83       	std	Y+1, r25	; 0x01
+    2ec8:	03 c0       	rjmp	.+6      	; 0x2ed0 <apply_orbs+0x172>
+    2eca:	66 23       	and	r22, r22
+    2ecc:	09 f0       	breq	.+2      	; 0x2ed0 <apply_orbs+0x172>
+    2ece:	9f c0       	rjmp	.+318    	; 0x300e <apply_orbs+0x2b0>
+    2ed0:	91 81       	ldd	r25, Z+1	; 0x01
+    2ed2:	83 81       	ldd	r24, Z+3	; 0x03
+    2ed4:	89 17       	cp	r24, r25
+    2ed6:	10 f0       	brcs	.+4      	; 0x2edc <apply_orbs+0x17e>
+    2ed8:	91 e0       	ldi	r25, 0x01	; 1
+    2eda:	07 c0       	rjmp	.+14     	; 0x2eea <apply_orbs+0x18c>
+    2edc:	81 83       	std	Z+1, r24	; 0x01
+    2ede:	93 83       	std	Z+3, r25	; 0x03
+    2ee0:	92 81       	ldd	r25, Z+2	; 0x02
+    2ee2:	84 81       	ldd	r24, Z+4	; 0x04
+    2ee4:	82 83       	std	Z+2, r24	; 0x02
+    2ee6:	94 83       	std	Z+4, r25	; 0x04
+    2ee8:	90 e0       	ldi	r25, 0x00	; 0
+    2eea:	43 81       	ldd	r20, Z+3	; 0x03
+    2eec:	85 81       	ldd	r24, Z+5	; 0x05
+    2eee:	84 17       	cp	r24, r20
+    2ef0:	58 f4       	brcc	.+22     	; 0x2f08 <apply_orbs+0x1aa>
+    2ef2:	83 83       	std	Z+3, r24	; 0x03
+    2ef4:	45 83       	std	Z+5, r20	; 0x05
+    2ef6:	94 81       	ldd	r25, Z+4	; 0x04
+    2ef8:	11 96       	adiw	r26, 0x01	; 1
+    2efa:	8c 91       	ld	r24, X
+    2efc:	11 97       	sbiw	r26, 0x01	; 1
+    2efe:	84 83       	std	Z+4, r24	; 0x04
+    2f00:	11 96       	adiw	r26, 0x01	; 1
+    2f02:	9c 93       	st	X, r25
+    2f04:	11 97       	sbiw	r26, 0x01	; 1
+    2f06:	90 e0       	ldi	r25, 0x00	; 0
+    2f08:	45 81       	ldd	r20, Z+5	; 0x05
+    2f0a:	12 96       	adiw	r26, 0x02	; 2
+    2f0c:	8c 91       	ld	r24, X
+    2f0e:	12 97       	sbiw	r26, 0x02	; 2
+    2f10:	84 17       	cp	r24, r20
+    2f12:	70 f4       	brcc	.+28     	; 0x2f30 <apply_orbs+0x1d2>
+    2f14:	85 83       	std	Z+5, r24	; 0x05
+    2f16:	12 96       	adiw	r26, 0x02	; 2
+    2f18:	4c 93       	st	X, r20
+    2f1a:	12 97       	sbiw	r26, 0x02	; 2
+    2f1c:	11 96       	adiw	r26, 0x01	; 1
+    2f1e:	9c 91       	ld	r25, X
+    2f20:	11 97       	sbiw	r26, 0x01	; 1
+    2f22:	e8 01       	movw	r28, r16
+    2f24:	89 81       	ldd	r24, Y+1	; 0x01
+    2f26:	11 96       	adiw	r26, 0x01	; 1
+    2f28:	8c 93       	st	X, r24
+    2f2a:	11 97       	sbiw	r26, 0x01	; 1
+    2f2c:	99 83       	std	Y+1, r25	; 0x01
+    2f2e:	90 e0       	ldi	r25, 0x00	; 0
+    2f30:	12 96       	adiw	r26, 0x02	; 2
+    2f32:	4c 91       	ld	r20, X
+    2f34:	12 97       	sbiw	r26, 0x02	; 2
+    2f36:	e8 01       	movw	r28, r16
+    2f38:	8a 81       	ldd	r24, Y+2	; 0x02
+    2f3a:	84 17       	cp	r24, r20
+    2f3c:	60 f4       	brcc	.+24     	; 0x2f56 <apply_orbs+0x1f8>
+    2f3e:	12 96       	adiw	r26, 0x02	; 2
+    2f40:	8c 93       	st	X, r24
+    2f42:	12 97       	sbiw	r26, 0x02	; 2
+    2f44:	4a 83       	std	Y+2, r20	; 0x02
+    2f46:	99 81       	ldd	r25, Y+1	; 0x01
+    2f48:	e9 01       	movw	r28, r18
+    2f4a:	89 81       	ldd	r24, Y+1	; 0x01
+    2f4c:	e8 01       	movw	r28, r16
+    2f4e:	89 83       	std	Y+1, r24	; 0x01
+    2f50:	e9 01       	movw	r28, r18
+    2f52:	99 83       	std	Y+1, r25	; 0x01
+    2f54:	03 c0       	rjmp	.+6      	; 0x2f5c <apply_orbs+0x1fe>
+    2f56:	99 23       	and	r25, r25
+    2f58:	09 f0       	breq	.+2      	; 0x2f5c <apply_orbs+0x1fe>
+    2f5a:	59 c0       	rjmp	.+178    	; 0x300e <apply_orbs+0x2b0>
+    2f5c:	91 81       	ldd	r25, Z+1	; 0x01
+    2f5e:	83 81       	ldd	r24, Z+3	; 0x03
+    2f60:	89 17       	cp	r24, r25
+    2f62:	10 f0       	brcs	.+4      	; 0x2f68 <apply_orbs+0x20a>
+    2f64:	91 e0       	ldi	r25, 0x01	; 1
+    2f66:	07 c0       	rjmp	.+14     	; 0x2f76 <apply_orbs+0x218>
+    2f68:	81 83       	std	Z+1, r24	; 0x01
+    2f6a:	93 83       	std	Z+3, r25	; 0x03
+    2f6c:	92 81       	ldd	r25, Z+2	; 0x02
+    2f6e:	84 81       	ldd	r24, Z+4	; 0x04
+    2f70:	82 83       	std	Z+2, r24	; 0x02
+    2f72:	94 83       	std	Z+4, r25	; 0x04
+    2f74:	90 e0       	ldi	r25, 0x00	; 0
+    2f76:	23 81       	ldd	r18, Z+3	; 0x03
+    2f78:	85 81       	ldd	r24, Z+5	; 0x05
+    2f7a:	82 17       	cp	r24, r18
+    2f7c:	58 f4       	brcc	.+22     	; 0x2f94 <apply_orbs+0x236>
+    2f7e:	83 83       	std	Z+3, r24	; 0x03
+    2f80:	25 83       	std	Z+5, r18	; 0x05
+    2f82:	94 81       	ldd	r25, Z+4	; 0x04
+    2f84:	11 96       	adiw	r26, 0x01	; 1
+    2f86:	8c 91       	ld	r24, X
+    2f88:	11 97       	sbiw	r26, 0x01	; 1
+    2f8a:	84 83       	std	Z+4, r24	; 0x04
+    2f8c:	11 96       	adiw	r26, 0x01	; 1
+    2f8e:	9c 93       	st	X, r25
+    2f90:	11 97       	sbiw	r26, 0x01	; 1
+    2f92:	90 e0       	ldi	r25, 0x00	; 0
+    2f94:	25 81       	ldd	r18, Z+5	; 0x05
+    2f96:	12 96       	adiw	r26, 0x02	; 2
     2f98:	8c 91       	ld	r24, X
-    2f9a:	11 97       	sbiw	r26, 0x01	; 1
-    2f9c:	84 83       	std	Z+4, r24	; 0x04
-    2f9e:	11 96       	adiw	r26, 0x01	; 1
-    2fa0:	9c 93       	st	X, r25
-    2fa2:	02 c0       	rjmp	.+4      	; 0x2fa8 <apply_orbs+0x29c>
-    2fa4:	22 23       	and	r18, r18
-    2fa6:	51 f4       	brne	.+20     	; 0x2fbc <apply_orbs+0x2b0>
-    2fa8:	91 81       	ldd	r25, Z+1	; 0x01
-    2faa:	83 81       	ldd	r24, Z+3	; 0x03
-    2fac:	89 17       	cp	r24, r25
-    2fae:	30 f4       	brcc	.+12     	; 0x2fbc <apply_orbs+0x2b0>
-    2fb0:	81 83       	std	Z+1, r24	; 0x01
-    2fb2:	93 83       	std	Z+3, r25	; 0x03
-    2fb4:	92 81       	ldd	r25, Z+2	; 0x02
-    2fb6:	84 81       	ldd	r24, Z+4	; 0x04
-    2fb8:	82 83       	std	Z+2, r24	; 0x02
-    2fba:	94 83       	std	Z+4, r25	; 0x04
-    2fbc:	8f b7       	in	r24, 0x3f	; 63
-/*static void swarm_handle_receive(char type, int wl_source, unsigned char* packet, int length)
-{
-    //wl_send_robot_to_robot_packet(SWARM_PACKET_GROUP_ID, type, packet, length, wl_source, 0);
+    2f9a:	12 97       	sbiw	r26, 0x02	; 2
+    2f9c:	82 17       	cp	r24, r18
+    2f9e:	70 f4       	brcc	.+28     	; 0x2fbc <apply_orbs+0x25e>
+    2fa0:	85 83       	std	Z+5, r24	; 0x05
+    2fa2:	12 96       	adiw	r26, 0x02	; 2
+    2fa4:	2c 93       	st	X, r18
+    2fa6:	12 97       	sbiw	r26, 0x02	; 2
+    2fa8:	11 96       	adiw	r26, 0x01	; 1
+    2faa:	9c 91       	ld	r25, X
+    2fac:	11 97       	sbiw	r26, 0x01	; 1
+    2fae:	e8 01       	movw	r28, r16
+    2fb0:	89 81       	ldd	r24, Y+1	; 0x01
+    2fb2:	11 96       	adiw	r26, 0x01	; 1
+    2fb4:	8c 93       	st	X, r24
+    2fb6:	11 97       	sbiw	r26, 0x01	; 1
+    2fb8:	99 83       	std	Y+1, r25	; 0x01
+    2fba:	02 c0       	rjmp	.+4      	; 0x2fc0 <apply_orbs+0x262>
+    2fbc:	99 23       	and	r25, r25
+    2fbe:	39 f5       	brne	.+78     	; 0x300e <apply_orbs+0x2b0>
+    2fc0:	91 81       	ldd	r25, Z+1	; 0x01
+    2fc2:	83 81       	ldd	r24, Z+3	; 0x03
+    2fc4:	89 17       	cp	r24, r25
+    2fc6:	10 f0       	brcs	.+4      	; 0x2fcc <apply_orbs+0x26e>
+    2fc8:	21 e0       	ldi	r18, 0x01	; 1
+    2fca:	07 c0       	rjmp	.+14     	; 0x2fda <apply_orbs+0x27c>
+    2fcc:	81 83       	std	Z+1, r24	; 0x01
+    2fce:	93 83       	std	Z+3, r25	; 0x03
+    2fd0:	92 81       	ldd	r25, Z+2	; 0x02
+    2fd2:	84 81       	ldd	r24, Z+4	; 0x04
+    2fd4:	82 83       	std	Z+2, r24	; 0x02
+    2fd6:	94 83       	std	Z+4, r25	; 0x04
+    2fd8:	20 e0       	ldi	r18, 0x00	; 0
+    2fda:	93 81       	ldd	r25, Z+3	; 0x03
+    2fdc:	85 81       	ldd	r24, Z+5	; 0x05
+    2fde:	89 17       	cp	r24, r25
+    2fe0:	50 f4       	brcc	.+20     	; 0x2ff6 <apply_orbs+0x298>
+    2fe2:	83 83       	std	Z+3, r24	; 0x03
+    2fe4:	95 83       	std	Z+5, r25	; 0x05
+    2fe6:	94 81       	ldd	r25, Z+4	; 0x04
+    2fe8:	11 96       	adiw	r26, 0x01	; 1
+    2fea:	8c 91       	ld	r24, X
+    2fec:	11 97       	sbiw	r26, 0x01	; 1
+    2fee:	84 83       	std	Z+4, r24	; 0x04
+    2ff0:	11 96       	adiw	r26, 0x01	; 1
+    2ff2:	9c 93       	st	X, r25
+    2ff4:	02 c0       	rjmp	.+4      	; 0x2ffa <apply_orbs+0x29c>
+    2ff6:	22 23       	and	r18, r18
+    2ff8:	51 f4       	brne	.+20     	; 0x300e <apply_orbs+0x2b0>
+    2ffa:	91 81       	ldd	r25, Z+1	; 0x01
+    2ffc:	83 81       	ldd	r24, Z+3	; 0x03
+    2ffe:	89 17       	cp	r24, r25
+    3000:	30 f4       	brcc	.+12     	; 0x300e <apply_orbs+0x2b0>
+    3002:	81 83       	std	Z+1, r24	; 0x01
+    3004:	93 83       	std	Z+3, r25	; 0x03
+    3006:	92 81       	ldd	r25, Z+2	; 0x02
+    3008:	84 81       	ldd	r24, Z+4	; 0x04
+    300a:	82 83       	std	Z+2, r24	; 0x02
+    300c:	94 83       	std	Z+4, r25	; 0x04
+    300e:	8f b7       	in	r24, 0x3f	; 63
+    3010:	f8 94       	cli
+    3012:	20 91 59 03 	lds	r18, 0x0359
+    3016:	30 91 5a 03 	lds	r19, 0x035A
+    301a:	30 93 58 03 	sts	0x0358, r19
+    301e:	20 93 57 03 	sts	0x0357, r18
+    3022:	f0 93 5a 03 	sts	0x035A, r31
+    3026:	e0 93 59 03 	sts	0x0359, r30
+    302a:	8f bf       	out	0x3f, r24	; 63
+    302c:	81 e0       	ldi	r24, 0x01	; 1
+    302e:	80 93 a7 06 	sts	0x06A7, r24
+    3032:	21 c0       	rjmp	.+66     	; 0x3076 <apply_orbs+0x318>
+    3034:	80 91 43 0a 	lds	r24, 0x0A43
+    3038:	81 11       	cpse	r24, r1
+    303a:	81 e0       	ldi	r24, 0x01	; 1
+    303c:	28 2f       	mov	r18, r24
+    303e:	80 91 44 0a 	lds	r24, 0x0A44
+    3042:	81 11       	cpse	r24, r1
+    3044:	22 60       	ori	r18, 0x02	; 2
+    3046:	80 91 45 0a 	lds	r24, 0x0A45
+    304a:	81 11       	cpse	r24, r1
+    304c:	24 60       	ori	r18, 0x04	; 4
+    304e:	80 91 46 0a 	lds	r24, 0x0A46
+    3052:	81 11       	cpse	r24, r1
+    3054:	20 61       	ori	r18, 0x10	; 16
+    3056:	80 91 47 0a 	lds	r24, 0x0A47
+    305a:	81 11       	cpse	r24, r1
+    305c:	20 62       	ori	r18, 0x20	; 32
+    305e:	80 91 48 0a 	lds	r24, 0x0A48
+    3062:	81 11       	cpse	r24, r1
+    3064:	20 64       	ori	r18, 0x40	; 64
+    3066:	9f b7       	in	r25, 0x3f	; 63
+    3068:	f8 94       	cli
+    306a:	85 b3       	in	r24, 0x15	; 21
+    306c:	20 95       	com	r18
+    306e:	87 67       	ori	r24, 0x77	; 119
+    3070:	82 23       	and	r24, r18
+    3072:	85 bb       	out	0x15, r24	; 21
+    3074:	9f bf       	out	0x3f, r25	; 63
+    3076:	df 91       	pop	r29
+    3078:	cf 91       	pop	r28
+    307a:	1f 91       	pop	r17
+    307c:	0f 91       	pop	r16
+    307e:	08 95       	ret
 
-    char buf[40];
-    int i;
-    2fbe:	f8 94       	cli
-    2fc0:	20 91 68 03 	lds	r18, 0x0368
-    2fc4:	30 91 69 03 	lds	r19, 0x0369
-    2fc8:	30 93 67 03 	sts	0x0367, r19
-    2fcc:	20 93 66 03 	sts	0x0366, r18
-    2fd0:	f0 93 69 03 	sts	0x0369, r31
-    2fd4:	e0 93 68 03 	sts	0x0368, r30
-    2fd8:	8f bf       	out	0x3f, r24	; 63
-    2fda:	81 e0       	ldi	r24, 0x01	; 1
-    2fdc:	80 93 b7 06 	sts	0x06B7, r24
-    2fe0:	21 c0       	rjmp	.+66     	; 0x3024 <apply_orbs+0x318>
-    2fe2:	80 91 53 0a 	lds	r24, 0x0A53
-    2fe6:	81 11       	cpse	r24, r1
-    2fe8:	81 e0       	ldi	r24, 0x01	; 1
-    2fea:	28 2f       	mov	r18, r24
-    2fec:	80 91 54 0a 	lds	r24, 0x0A54
-    2ff0:	81 11       	cpse	r24, r1
-    2ff2:	22 60       	ori	r18, 0x02	; 2
-    2ff4:	80 91 55 0a 	lds	r24, 0x0A55
-    2ff8:	81 11       	cpse	r24, r1
-    2ffa:	24 60       	ori	r18, 0x04	; 4
-    2ffc:	80 91 56 0a 	lds	r24, 0x0A56
-    3000:	81 11       	cpse	r24, r1
-    3002:	20 61       	ori	r18, 0x10	; 16
-    3004:	80 91 57 0a 	lds	r24, 0x0A57
-    3008:	81 11       	cpse	r24, r1
-    300a:	20 62       	ori	r18, 0x20	; 32
-    300c:	80 91 58 0a 	lds	r24, 0x0A58
-    3010:	81 11       	cpse	r24, r1
-    3012:	20 64       	ori	r18, 0x40	; 64
-    3014:	9f b7       	in	r25, 0x3f	; 63
-/*static void swarm_handle_receive(char type, int wl_source, unsigned char* packet, int length)
-{
-    //wl_send_robot_to_robot_packet(SWARM_PACKET_GROUP_ID, type, packet, length, wl_source, 0);
+00003080 <orb_n_set>:
+    3080:	98 2f       	mov	r25, r24
+    3082:	3f b7       	in	r19, 0x3f	; 63
+    3084:	f8 94       	cli
+    3086:	80 91 a9 06 	lds	r24, 0x06A9
+    308a:	88 23       	and	r24, r24
+    308c:	a9 f4       	brne	.+42     	; 0x30b8 <orb_n_set+0x38>
+    308e:	81 e0       	ldi	r24, 0x01	; 1
+    3090:	80 93 a9 06 	sts	0x06A9, r24
+    3094:	3f bf       	out	0x3f, r19	; 63
+    3096:	89 2f       	mov	r24, r25
+    3098:	90 e0       	ldi	r25, 0x00	; 0
+    309a:	fc 01       	movw	r30, r24
+    309c:	ee 0f       	add	r30, r30
+    309e:	ff 1f       	adc	r31, r31
+    30a0:	e8 0f       	add	r30, r24
+    30a2:	f9 1f       	adc	r31, r25
+    30a4:	ed 5b       	subi	r30, 0xBD	; 189
+    30a6:	f5 4f       	sbci	r31, 0xF5	; 245
+    30a8:	60 83       	st	Z, r22
+    30aa:	41 83       	std	Z+1, r20	; 0x01
+    30ac:	22 83       	std	Z+2, r18	; 0x02
+    30ae:	0e 94 af 16 	call	0x2d5e	; 0x2d5e <apply_orbs>
+    30b2:	10 92 a9 06 	sts	0x06A9, r1
+    30b6:	08 95       	ret
+    30b8:	3f bf       	out	0x3f, r19	; 63
+    30ba:	08 95       	ret
 
-    char buf[40];
-    int i;
-    3016:	f8 94       	cli
-    3018:	85 b3       	in	r24, 0x15	; 21
-    301a:	20 95       	com	r18
-    301c:	87 67       	ori	r24, 0x77	; 119
-    301e:	82 23       	and	r24, r18
-    3020:	85 bb       	out	0x15, r24	; 21
-    3022:	9f bf       	out	0x3f, r25	; 63
-    3024:	df 91       	pop	r29
-    3026:	cf 91       	pop	r28
-    3028:	1f 91       	pop	r17
-    302a:	0f 91       	pop	r16
-    302c:	08 95       	ret
+000030bc <orb1_set>:
+    30bc:	28 2f       	mov	r18, r24
+    30be:	9f b7       	in	r25, 0x3f	; 63
+    30c0:	f8 94       	cli
+    30c2:	80 91 a9 06 	lds	r24, 0x06A9
+    30c6:	88 23       	and	r24, r24
+    30c8:	79 f4       	brne	.+30     	; 0x30e8 <orb1_set+0x2c>
+    30ca:	81 e0       	ldi	r24, 0x01	; 1
+    30cc:	80 93 a9 06 	sts	0x06A9, r24
+    30d0:	9f bf       	out	0x3f, r25	; 63
+    30d2:	20 93 43 0a 	sts	0x0A43, r18
+    30d6:	60 93 44 0a 	sts	0x0A44, r22
+    30da:	40 93 45 0a 	sts	0x0A45, r20
+    30de:	0e 94 af 16 	call	0x2d5e	; 0x2d5e <apply_orbs>
+    30e2:	10 92 a9 06 	sts	0x06A9, r1
+    30e6:	08 95       	ret
+    30e8:	9f bf       	out	0x3f, r25	; 63
+    30ea:	08 95       	ret
 
-0000302e <orb_n_set>:
-    302e:	98 2f       	mov	r25, r24
-    3030:	3f b7       	in	r19, 0x3f	; 63
-/*static void swarm_handle_receive(char type, int wl_source, unsigned char* packet, int length)
-{
-    //wl_send_robot_to_robot_packet(SWARM_PACKET_GROUP_ID, type, packet, length, wl_source, 0);
+000030ec <orb2_set>:
+    30ec:	28 2f       	mov	r18, r24
+    30ee:	9f b7       	in	r25, 0x3f	; 63
+    30f0:	f8 94       	cli
+    30f2:	80 91 a9 06 	lds	r24, 0x06A9
+    30f6:	88 23       	and	r24, r24
+    30f8:	79 f4       	brne	.+30     	; 0x3118 <orb2_set+0x2c>
+    30fa:	81 e0       	ldi	r24, 0x01	; 1
+    30fc:	80 93 a9 06 	sts	0x06A9, r24
+    3100:	9f bf       	out	0x3f, r25	; 63
+    3102:	20 93 46 0a 	sts	0x0A46, r18
+    3106:	60 93 47 0a 	sts	0x0A47, r22
+    310a:	40 93 48 0a 	sts	0x0A48, r20
+    310e:	0e 94 af 16 	call	0x2d5e	; 0x2d5e <apply_orbs>
+    3112:	10 92 a9 06 	sts	0x06A9, r1
+    3116:	08 95       	ret
+    3118:	9f bf       	out	0x3f, r25	; 63
+    311a:	08 95       	ret
 
-    char buf[40];
-    int i;
-    3032:	f8 94       	cli
-    3034:	80 91 b9 06 	lds	r24, 0x06B9
-    3038:	88 23       	and	r24, r24
-    303a:	a9 f4       	brne	.+42     	; 0x3066 <orb_n_set+0x38>
-    303c:	81 e0       	ldi	r24, 0x01	; 1
-    303e:	80 93 b9 06 	sts	0x06B9, r24
-    3042:	3f bf       	out	0x3f, r19	; 63
-    3044:	89 2f       	mov	r24, r25
-    3046:	90 e0       	ldi	r25, 0x00	; 0
-    3048:	fc 01       	movw	r30, r24
-    304a:	ee 0f       	add	r30, r30
-    304c:	ff 1f       	adc	r31, r31
-    304e:	e8 0f       	add	r30, r24
-    3050:	f9 1f       	adc	r31, r25
-    3052:	ed 5a       	subi	r30, 0xAD	; 173
-    3054:	f5 4f       	sbci	r31, 0xF5	; 245
-    3056:	60 83       	st	Z, r22
-    3058:	41 83       	std	Z+1, r20	; 0x01
-    305a:	22 83       	std	Z+2, r18	; 0x02
-    305c:	0e 94 86 16 	call	0x2d0c	; 0x2d0c <apply_orbs>
-    3060:	10 92 b9 06 	sts	0x06B9, r1
-    3064:	08 95       	ret
-    3066:	3f bf       	out	0x3f, r19	; 63
-    3068:	08 95       	ret
+0000311c <orb_set>:
+    311c:	28 2f       	mov	r18, r24
+    311e:	9f b7       	in	r25, 0x3f	; 63
+    3120:	f8 94       	cli
+    3122:	80 91 a9 06 	lds	r24, 0x06A9
+    3126:	88 23       	and	r24, r24
+    3128:	a9 f4       	brne	.+42     	; 0x3154 <orb_set+0x38>
+    312a:	81 e0       	ldi	r24, 0x01	; 1
+    312c:	80 93 a9 06 	sts	0x06A9, r24
+    3130:	9f bf       	out	0x3f, r25	; 63
+    3132:	20 93 43 0a 	sts	0x0A43, r18
+    3136:	60 93 44 0a 	sts	0x0A44, r22
+    313a:	40 93 45 0a 	sts	0x0A45, r20
+    313e:	20 93 46 0a 	sts	0x0A46, r18
+    3142:	60 93 47 0a 	sts	0x0A47, r22
+    3146:	40 93 48 0a 	sts	0x0A48, r20
+    314a:	0e 94 af 16 	call	0x2d5e	; 0x2d5e <apply_orbs>
+    314e:	10 92 a9 06 	sts	0x06A9, r1
+    3152:	08 95       	ret
+    3154:	9f bf       	out	0x3f, r25	; 63
+    3156:	08 95       	ret
 
-0000306a <orb1_set>:
-    306a:	28 2f       	mov	r18, r24
-    306c:	9f b7       	in	r25, 0x3f	; 63
-/*static void swarm_handle_receive(char type, int wl_source, unsigned char* packet, int length)
-{
-    //wl_send_robot_to_robot_packet(SWARM_PACKET_GROUP_ID, type, packet, length, wl_source, 0);
+00003158 <orbs_set>:
+    3158:	ef 92       	push	r14
+    315a:	0f 93       	push	r16
+    315c:	38 2f       	mov	r19, r24
+    315e:	9f b7       	in	r25, 0x3f	; 63
+    3160:	f8 94       	cli
+    3162:	80 91 a9 06 	lds	r24, 0x06A9
+    3166:	88 23       	and	r24, r24
+    3168:	a9 f4       	brne	.+42     	; 0x3194 <orbs_set+0x3c>
+    316a:	81 e0       	ldi	r24, 0x01	; 1
+    316c:	80 93 a9 06 	sts	0x06A9, r24
+    3170:	9f bf       	out	0x3f, r25	; 63
+    3172:	30 93 43 0a 	sts	0x0A43, r19
+    3176:	60 93 44 0a 	sts	0x0A44, r22
+    317a:	40 93 45 0a 	sts	0x0A45, r20
+    317e:	20 93 46 0a 	sts	0x0A46, r18
+    3182:	00 93 47 0a 	sts	0x0A47, r16
+    3186:	e0 92 48 0a 	sts	0x0A48, r14
+    318a:	0e 94 af 16 	call	0x2d5e	; 0x2d5e <apply_orbs>
+    318e:	10 92 a9 06 	sts	0x06A9, r1
+    3192:	01 c0       	rjmp	.+2      	; 0x3196 <orbs_set+0x3e>
+    3194:	9f bf       	out	0x3f, r25	; 63
+    3196:	0f 91       	pop	r16
+    3198:	ef 90       	pop	r14
+    319a:	08 95       	ret
 
-    char buf[40];
-    int i;
-    306e:	f8 94       	cli
-    3070:	80 91 b9 06 	lds	r24, 0x06B9
-    3074:	88 23       	and	r24, r24
-    3076:	79 f4       	brne	.+30     	; 0x3096 <orb1_set+0x2c>
-    3078:	81 e0       	ldi	r24, 0x01	; 1
-    307a:	80 93 b9 06 	sts	0x06B9, r24
-    307e:	9f bf       	out	0x3f, r25	; 63
-    3080:	20 93 53 0a 	sts	0x0A53, r18
-    3084:	60 93 54 0a 	sts	0x0A54, r22
-    3088:	40 93 55 0a 	sts	0x0A55, r20
-    308c:	0e 94 86 16 	call	0x2d0c	; 0x2d0c <apply_orbs>
-    3090:	10 92 b9 06 	sts	0x06B9, r1
-    3094:	08 95       	ret
-    3096:	9f bf       	out	0x3f, r25	; 63
-    3098:	08 95       	ret
+0000319c <orb_n_set_color>:
+    319c:	e6 2f       	mov	r30, r22
+    319e:	f0 e0       	ldi	r31, 0x00	; 0
+    31a0:	62 95       	swap	r22
+    31a2:	66 95       	lsr	r22
+    31a4:	67 70       	andi	r22, 0x07	; 7
+    31a6:	70 e0       	ldi	r23, 0x00	; 0
+    31a8:	44 e2       	ldi	r20, 0x24	; 36
+    31aa:	50 e0       	ldi	r21, 0x00	; 0
+    31ac:	9b 01       	movw	r18, r22
+    31ae:	24 9f       	mul	r18, r20
+    31b0:	b0 01       	movw	r22, r0
+    31b2:	25 9f       	mul	r18, r21
+    31b4:	70 0d       	add	r23, r0
+    31b6:	34 9f       	mul	r19, r20
+    31b8:	70 0d       	add	r23, r0
+    31ba:	11 24       	eor	r1, r1
+    31bc:	9f 01       	movw	r18, r30
+    31be:	2c 71       	andi	r18, 0x1C	; 28
+    31c0:	30 70       	andi	r19, 0x00	; 0
+    31c2:	35 95       	asr	r19
+    31c4:	27 95       	ror	r18
+    31c6:	35 95       	asr	r19
+    31c8:	27 95       	ror	r18
+    31ca:	da 01       	movw	r26, r20
+    31cc:	2a 9f       	mul	r18, r26
+    31ce:	a0 01       	movw	r20, r0
+    31d0:	2b 9f       	mul	r18, r27
+    31d2:	50 0d       	add	r21, r0
+    31d4:	3a 9f       	mul	r19, r26
+    31d6:	50 0d       	add	r21, r0
+    31d8:	11 24       	eor	r1, r1
+    31da:	e3 70       	andi	r30, 0x03	; 3
+    31dc:	f0 70       	andi	r31, 0x00	; 0
+    31de:	25 e5       	ldi	r18, 0x55	; 85
+    31e0:	30 e0       	ldi	r19, 0x00	; 0
+    31e2:	d9 01       	movw	r26, r18
+    31e4:	ea 9f       	mul	r30, r26
+    31e6:	90 01       	movw	r18, r0
+    31e8:	eb 9f       	mul	r30, r27
+    31ea:	30 0d       	add	r19, r0
+    31ec:	fa 9f       	mul	r31, r26
+    31ee:	30 0d       	add	r19, r0
+    31f0:	11 24       	eor	r1, r1
+    31f2:	0e 94 40 18 	call	0x3080	; 0x3080 <orb_n_set>
+    31f6:	08 95       	ret
 
-0000309a <orb2_set>:
-    309a:	28 2f       	mov	r18, r24
-    309c:	9f b7       	in	r25, 0x3f	; 63
-/*static void swarm_handle_receive(char type, int wl_source, unsigned char* packet, int length)
-{
-    //wl_send_robot_to_robot_packet(SWARM_PACKET_GROUP_ID, type, packet, length, wl_source, 0);
-
-    char buf[40];
-    int i;
-    309e:	f8 94       	cli
-    30a0:	80 91 b9 06 	lds	r24, 0x06B9
-    30a4:	88 23       	and	r24, r24
-    30a6:	79 f4       	brne	.+30     	; 0x30c6 <orb2_set+0x2c>
-    30a8:	81 e0       	ldi	r24, 0x01	; 1
-    30aa:	80 93 b9 06 	sts	0x06B9, r24
-    30ae:	9f bf       	out	0x3f, r25	; 63
-    30b0:	20 93 56 0a 	sts	0x0A56, r18
-    30b4:	60 93 57 0a 	sts	0x0A57, r22
-    30b8:	40 93 58 0a 	sts	0x0A58, r20
-    30bc:	0e 94 86 16 	call	0x2d0c	; 0x2d0c <apply_orbs>
-    30c0:	10 92 b9 06 	sts	0x06B9, r1
-    30c4:	08 95       	ret
-    30c6:	9f bf       	out	0x3f, r25	; 63
-    30c8:	08 95       	ret
-
-000030ca <orb_set>:
-    30ca:	28 2f       	mov	r18, r24
-    30cc:	9f b7       	in	r25, 0x3f	; 63
-/*static void swarm_handle_receive(char type, int wl_source, unsigned char* packet, int length)
-{
-    //wl_send_robot_to_robot_packet(SWARM_PACKET_GROUP_ID, type, packet, length, wl_source, 0);
-
-    char buf[40];
-    int i;
-    30ce:	f8 94       	cli
-    30d0:	80 91 b9 06 	lds	r24, 0x06B9
-    30d4:	88 23       	and	r24, r24
-    30d6:	a9 f4       	brne	.+42     	; 0x3102 <orb_set+0x38>
-    30d8:	81 e0       	ldi	r24, 0x01	; 1
-    30da:	80 93 b9 06 	sts	0x06B9, r24
-    30de:	9f bf       	out	0x3f, r25	; 63
-    30e0:	20 93 53 0a 	sts	0x0A53, r18
-    30e4:	60 93 54 0a 	sts	0x0A54, r22
-    30e8:	40 93 55 0a 	sts	0x0A55, r20
-    30ec:	20 93 56 0a 	sts	0x0A56, r18
-    30f0:	60 93 57 0a 	sts	0x0A57, r22
-    30f4:	40 93 58 0a 	sts	0x0A58, r20
-    30f8:	0e 94 86 16 	call	0x2d0c	; 0x2d0c <apply_orbs>
-    30fc:	10 92 b9 06 	sts	0x06B9, r1
-    3100:	08 95       	ret
-    3102:	9f bf       	out	0x3f, r25	; 63
-    3104:	08 95       	ret
-
-00003106 <orbs_set>:
-    3106:	ef 92       	push	r14
-    3108:	0f 93       	push	r16
-    310a:	38 2f       	mov	r19, r24
-    310c:	9f b7       	in	r25, 0x3f	; 63
-/*static void swarm_handle_receive(char type, int wl_source, unsigned char* packet, int length)
-{
-    //wl_send_robot_to_robot_packet(SWARM_PACKET_GROUP_ID, type, packet, length, wl_source, 0);
-
-    char buf[40];
-    int i;
-    310e:	f8 94       	cli
-    3110:	80 91 b9 06 	lds	r24, 0x06B9
-    3114:	88 23       	and	r24, r24
-    3116:	a9 f4       	brne	.+42     	; 0x3142 <orbs_set+0x3c>
-    3118:	81 e0       	ldi	r24, 0x01	; 1
-    311a:	80 93 b9 06 	sts	0x06B9, r24
-    311e:	9f bf       	out	0x3f, r25	; 63
-    3120:	30 93 53 0a 	sts	0x0A53, r19
-    3124:	60 93 54 0a 	sts	0x0A54, r22
-    3128:	40 93 55 0a 	sts	0x0A55, r20
-    312c:	20 93 56 0a 	sts	0x0A56, r18
-    3130:	00 93 57 0a 	sts	0x0A57, r16
-    3134:	e0 92 58 0a 	sts	0x0A58, r14
-    3138:	0e 94 86 16 	call	0x2d0c	; 0x2d0c <apply_orbs>
-    313c:	10 92 b9 06 	sts	0x06B9, r1
-    3140:	01 c0       	rjmp	.+2      	; 0x3144 <orbs_set+0x3e>
-    3142:	9f bf       	out	0x3f, r25	; 63
-    3144:	0f 91       	pop	r16
-    3146:	ef 90       	pop	r14
-    3148:	08 95       	ret
-
-0000314a <orb_n_set_color>:
-    314a:	e6 2f       	mov	r30, r22
-    314c:	f0 e0       	ldi	r31, 0x00	; 0
-    314e:	62 95       	swap	r22
-    3150:	66 95       	lsr	r22
-    3152:	67 70       	andi	r22, 0x07	; 7
-    3154:	70 e0       	ldi	r23, 0x00	; 0
-    3156:	44 e2       	ldi	r20, 0x24	; 36
-    3158:	50 e0       	ldi	r21, 0x00	; 0
-    315a:	9b 01       	movw	r18, r22
-    315c:	24 9f       	mul	r18, r20
-    315e:	b0 01       	movw	r22, r0
-    3160:	25 9f       	mul	r18, r21
-    3162:	70 0d       	add	r23, r0
-    3164:	34 9f       	mul	r19, r20
-    3166:	70 0d       	add	r23, r0
-    3168:	11 24       	eor	r1, r1
-    316a:	9f 01       	movw	r18, r30
-    316c:	2c 71       	andi	r18, 0x1C	; 28
-    316e:	30 70       	andi	r19, 0x00	; 0
-    3170:	35 95       	asr	r19
-    3172:	27 95       	ror	r18
-    3174:	35 95       	asr	r19
-    3176:	27 95       	ror	r18
-    3178:	da 01       	movw	r26, r20
-    317a:	2a 9f       	mul	r18, r26
-    317c:	a0 01       	movw	r20, r0
-    317e:	2b 9f       	mul	r18, r27
-    3180:	50 0d       	add	r21, r0
-    3182:	3a 9f       	mul	r19, r26
-    3184:	50 0d       	add	r21, r0
-    3186:	11 24       	eor	r1, r1
-    3188:	e3 70       	andi	r30, 0x03	; 3
-    318a:	f0 70       	andi	r31, 0x00	; 0
-    318c:	25 e5       	ldi	r18, 0x55	; 85
-    318e:	30 e0       	ldi	r19, 0x00	; 0
-    3190:	d9 01       	movw	r26, r18
-    3192:	ea 9f       	mul	r30, r26
-    3194:	90 01       	movw	r18, r0
-    3196:	eb 9f       	mul	r30, r27
-    3198:	30 0d       	add	r19, r0
-    319a:	fa 9f       	mul	r31, r26
-    319c:	30 0d       	add	r19, r0
-    319e:	11 24       	eor	r1, r1
-    31a0:	0e 94 17 18 	call	0x302e	; 0x302e <orb_n_set>
-    31a4:	08 95       	ret
-
-000031a6 <orb1_set_color>:
-    31a6:	48 2f       	mov	r20, r24
-    31a8:	50 e0       	ldi	r21, 0x00	; 0
-    31aa:	82 95       	swap	r24
-    31ac:	86 95       	lsr	r24
-    31ae:	87 70       	andi	r24, 0x07	; 7
-    31b0:	e4 e2       	ldi	r30, 0x24	; 36
-    31b2:	f0 e0       	ldi	r31, 0x00	; 0
-    31b4:	9a 01       	movw	r18, r20
-    31b6:	2c 71       	andi	r18, 0x1C	; 28
-    31b8:	30 70       	andi	r19, 0x00	; 0
-    31ba:	35 95       	asr	r19
-    31bc:	27 95       	ror	r18
-    31be:	35 95       	asr	r19
-    31c0:	27 95       	ror	r18
-    31c2:	2e 9f       	mul	r18, r30
-    31c4:	b0 01       	movw	r22, r0
-    31c6:	2f 9f       	mul	r18, r31
-    31c8:	70 0d       	add	r23, r0
-    31ca:	3e 9f       	mul	r19, r30
-    31cc:	70 0d       	add	r23, r0
-    31ce:	11 24       	eor	r1, r1
-    31d0:	43 70       	andi	r20, 0x03	; 3
-    31d2:	50 70       	andi	r21, 0x00	; 0
-    31d4:	25 e5       	ldi	r18, 0x55	; 85
-    31d6:	30 e0       	ldi	r19, 0x00	; 0
-    31d8:	da 01       	movw	r26, r20
-    31da:	a2 9f       	mul	r26, r18
-    31dc:	a0 01       	movw	r20, r0
-    31de:	a3 9f       	mul	r26, r19
-    31e0:	50 0d       	add	r21, r0
-    31e2:	b2 9f       	mul	r27, r18
-    31e4:	50 0d       	add	r21, r0
-    31e6:	11 24       	eor	r1, r1
-    31e8:	8e 9f       	mul	r24, r30
-    31ea:	80 2d       	mov	r24, r0
-    31ec:	11 24       	eor	r1, r1
-    31ee:	0e 94 35 18 	call	0x306a	; 0x306a <orb1_set>
-    31f2:	08 95       	ret
-
-000031f4 <orb2_set_color>:
-    31f4:	48 2f       	mov	r20, r24
-    31f6:	50 e0       	ldi	r21, 0x00	; 0
-    31f8:	82 95       	swap	r24
-    31fa:	86 95       	lsr	r24
-    31fc:	87 70       	andi	r24, 0x07	; 7
-    31fe:	e4 e2       	ldi	r30, 0x24	; 36
-    3200:	f0 e0       	ldi	r31, 0x00	; 0
-    3202:	9a 01       	movw	r18, r20
-    3204:	2c 71       	andi	r18, 0x1C	; 28
-    3206:	30 70       	andi	r19, 0x00	; 0
-    3208:	35 95       	asr	r19
-    320a:	27 95       	ror	r18
+000031f8 <orb1_set_color>:
+    31f8:	48 2f       	mov	r20, r24
+    31fa:	50 e0       	ldi	r21, 0x00	; 0
+    31fc:	82 95       	swap	r24
+    31fe:	86 95       	lsr	r24
+    3200:	87 70       	andi	r24, 0x07	; 7
+    3202:	e4 e2       	ldi	r30, 0x24	; 36
+    3204:	f0 e0       	ldi	r31, 0x00	; 0
+    3206:	9a 01       	movw	r18, r20
+    3208:	2c 71       	andi	r18, 0x1C	; 28
+    320a:	30 70       	andi	r19, 0x00	; 0
     320c:	35 95       	asr	r19
     320e:	27 95       	ror	r18
-    3210:	2e 9f       	mul	r18, r30
-    3212:	b0 01       	movw	r22, r0
-    3214:	2f 9f       	mul	r18, r31
-    3216:	70 0d       	add	r23, r0
-    3218:	3e 9f       	mul	r19, r30
+    3210:	35 95       	asr	r19
+    3212:	27 95       	ror	r18
+    3214:	2e 9f       	mul	r18, r30
+    3216:	b0 01       	movw	r22, r0
+    3218:	2f 9f       	mul	r18, r31
     321a:	70 0d       	add	r23, r0
-    321c:	11 24       	eor	r1, r1
-    321e:	43 70       	andi	r20, 0x03	; 3
-    3220:	50 70       	andi	r21, 0x00	; 0
-    3222:	25 e5       	ldi	r18, 0x55	; 85
-    3224:	30 e0       	ldi	r19, 0x00	; 0
-    3226:	da 01       	movw	r26, r20
-    3228:	a2 9f       	mul	r26, r18
-    322a:	a0 01       	movw	r20, r0
-    322c:	a3 9f       	mul	r26, r19
-    322e:	50 0d       	add	r21, r0
-    3230:	b2 9f       	mul	r27, r18
+    321c:	3e 9f       	mul	r19, r30
+    321e:	70 0d       	add	r23, r0
+    3220:	11 24       	eor	r1, r1
+    3222:	43 70       	andi	r20, 0x03	; 3
+    3224:	50 70       	andi	r21, 0x00	; 0
+    3226:	25 e5       	ldi	r18, 0x55	; 85
+    3228:	30 e0       	ldi	r19, 0x00	; 0
+    322a:	da 01       	movw	r26, r20
+    322c:	a2 9f       	mul	r26, r18
+    322e:	a0 01       	movw	r20, r0
+    3230:	a3 9f       	mul	r26, r19
     3232:	50 0d       	add	r21, r0
-    3234:	11 24       	eor	r1, r1
-    3236:	8e 9f       	mul	r24, r30
-    3238:	80 2d       	mov	r24, r0
-    323a:	11 24       	eor	r1, r1
-    323c:	0e 94 4d 18 	call	0x309a	; 0x309a <orb2_set>
-    3240:	08 95       	ret
+    3234:	b2 9f       	mul	r27, r18
+    3236:	50 0d       	add	r21, r0
+    3238:	11 24       	eor	r1, r1
+    323a:	8e 9f       	mul	r24, r30
+    323c:	80 2d       	mov	r24, r0
+    323e:	11 24       	eor	r1, r1
+    3240:	0e 94 5e 18 	call	0x30bc	; 0x30bc <orb1_set>
+    3244:	08 95       	ret
 
-00003242 <orb_set_color>:
-    3242:	48 2f       	mov	r20, r24
-    3244:	50 e0       	ldi	r21, 0x00	; 0
-    3246:	82 95       	swap	r24
-    3248:	86 95       	lsr	r24
-    324a:	87 70       	andi	r24, 0x07	; 7
-    324c:	e4 e2       	ldi	r30, 0x24	; 36
-    324e:	f0 e0       	ldi	r31, 0x00	; 0
-    3250:	9a 01       	movw	r18, r20
-    3252:	2c 71       	andi	r18, 0x1C	; 28
-    3254:	30 70       	andi	r19, 0x00	; 0
-    3256:	35 95       	asr	r19
-    3258:	27 95       	ror	r18
+00003246 <orb2_set_color>:
+    3246:	48 2f       	mov	r20, r24
+    3248:	50 e0       	ldi	r21, 0x00	; 0
+    324a:	82 95       	swap	r24
+    324c:	86 95       	lsr	r24
+    324e:	87 70       	andi	r24, 0x07	; 7
+    3250:	e4 e2       	ldi	r30, 0x24	; 36
+    3252:	f0 e0       	ldi	r31, 0x00	; 0
+    3254:	9a 01       	movw	r18, r20
+    3256:	2c 71       	andi	r18, 0x1C	; 28
+    3258:	30 70       	andi	r19, 0x00	; 0
     325a:	35 95       	asr	r19
     325c:	27 95       	ror	r18
-    325e:	2e 9f       	mul	r18, r30
-    3260:	b0 01       	movw	r22, r0
-    3262:	2f 9f       	mul	r18, r31
-    3264:	70 0d       	add	r23, r0
-    3266:	3e 9f       	mul	r19, r30
+    325e:	35 95       	asr	r19
+    3260:	27 95       	ror	r18
+    3262:	2e 9f       	mul	r18, r30
+    3264:	b0 01       	movw	r22, r0
+    3266:	2f 9f       	mul	r18, r31
     3268:	70 0d       	add	r23, r0
-    326a:	11 24       	eor	r1, r1
-    326c:	43 70       	andi	r20, 0x03	; 3
-    326e:	50 70       	andi	r21, 0x00	; 0
-    3270:	25 e5       	ldi	r18, 0x55	; 85
-    3272:	30 e0       	ldi	r19, 0x00	; 0
-    3274:	da 01       	movw	r26, r20
-    3276:	a2 9f       	mul	r26, r18
-    3278:	a0 01       	movw	r20, r0
-    327a:	a3 9f       	mul	r26, r19
-    327c:	50 0d       	add	r21, r0
-    327e:	b2 9f       	mul	r27, r18
+    326a:	3e 9f       	mul	r19, r30
+    326c:	70 0d       	add	r23, r0
+    326e:	11 24       	eor	r1, r1
+    3270:	43 70       	andi	r20, 0x03	; 3
+    3272:	50 70       	andi	r21, 0x00	; 0
+    3274:	25 e5       	ldi	r18, 0x55	; 85
+    3276:	30 e0       	ldi	r19, 0x00	; 0
+    3278:	da 01       	movw	r26, r20
+    327a:	a2 9f       	mul	r26, r18
+    327c:	a0 01       	movw	r20, r0
+    327e:	a3 9f       	mul	r26, r19
     3280:	50 0d       	add	r21, r0
-    3282:	11 24       	eor	r1, r1
-    3284:	8e 9f       	mul	r24, r30
-    3286:	80 2d       	mov	r24, r0
-    3288:	11 24       	eor	r1, r1
-    328a:	0e 94 65 18 	call	0x30ca	; 0x30ca <orb_set>
-    328e:	08 95       	ret
+    3282:	b2 9f       	mul	r27, r18
+    3284:	50 0d       	add	r21, r0
+    3286:	11 24       	eor	r1, r1
+    3288:	8e 9f       	mul	r24, r30
+    328a:	80 2d       	mov	r24, r0
+    328c:	11 24       	eor	r1, r1
+    328e:	0e 94 76 18 	call	0x30ec	; 0x30ec <orb2_set>
+    3292:	08 95       	ret
 
-00003290 <orbs_set_color>:
-    3290:	af 92       	push	r10
-    3292:	bf 92       	push	r11
-    3294:	df 92       	push	r13
-    3296:	ef 92       	push	r14
-    3298:	ff 92       	push	r15
-    329a:	0f 93       	push	r16
-    329c:	1f 93       	push	r17
-    329e:	d8 2e       	mov	r13, r24
-    32a0:	48 2f       	mov	r20, r24
-    32a2:	50 e0       	ldi	r21, 0x00	; 0
-    32a4:	e6 2f       	mov	r30, r22
-    32a6:	f0 e0       	ldi	r31, 0x00	; 0
-    32a8:	d2 94       	swap	r13
-    32aa:	d6 94       	lsr	r13
-    32ac:	a7 e0       	ldi	r26, 0x07	; 7
-    32ae:	da 22       	and	r13, r26
-    32b0:	84 e2       	ldi	r24, 0x24	; 36
-    32b2:	90 e0       	ldi	r25, 0x00	; 0
-    32b4:	9a 01       	movw	r18, r20
-    32b6:	2c 71       	andi	r18, 0x1C	; 28
-    32b8:	30 70       	andi	r19, 0x00	; 0
-    32ba:	35 95       	asr	r19
-    32bc:	27 95       	ror	r18
-    32be:	35 95       	asr	r19
-    32c0:	27 95       	ror	r18
-    32c2:	28 9f       	mul	r18, r24
-    32c4:	50 01       	movw	r10, r0
-    32c6:	29 9f       	mul	r18, r25
-    32c8:	b0 0c       	add	r11, r0
-    32ca:	38 9f       	mul	r19, r24
-    32cc:	b0 0c       	add	r11, r0
-    32ce:	11 24       	eor	r1, r1
-    32d0:	43 70       	andi	r20, 0x03	; 3
-    32d2:	50 70       	andi	r21, 0x00	; 0
-    32d4:	a5 e5       	ldi	r26, 0x55	; 85
-    32d6:	b0 e0       	ldi	r27, 0x00	; 0
-    32d8:	9a 01       	movw	r18, r20
-    32da:	2a 9f       	mul	r18, r26
-    32dc:	a0 01       	movw	r20, r0
-    32de:	2b 9f       	mul	r18, r27
-    32e0:	50 0d       	add	r21, r0
-    32e2:	3a 9f       	mul	r19, r26
-    32e4:	50 0d       	add	r21, r0
-    32e6:	11 24       	eor	r1, r1
-    32e8:	62 95       	swap	r22
-    32ea:	66 95       	lsr	r22
-    32ec:	67 70       	andi	r22, 0x07	; 7
-    32ee:	70 e0       	ldi	r23, 0x00	; 0
-    32f0:	68 9f       	mul	r22, r24
-    32f2:	90 01       	movw	r18, r0
-    32f4:	69 9f       	mul	r22, r25
-    32f6:	30 0d       	add	r19, r0
-    32f8:	78 9f       	mul	r23, r24
-    32fa:	30 0d       	add	r19, r0
-    32fc:	11 24       	eor	r1, r1
-    32fe:	bf 01       	movw	r22, r30
-    3300:	6c 71       	andi	r22, 0x1C	; 28
-    3302:	70 70       	andi	r23, 0x00	; 0
-    3304:	75 95       	asr	r23
-    3306:	67 95       	ror	r22
-    3308:	75 95       	asr	r23
-    330a:	67 95       	ror	r22
-    330c:	68 9f       	mul	r22, r24
-    330e:	80 01       	movw	r16, r0
-    3310:	69 9f       	mul	r22, r25
-    3312:	10 0d       	add	r17, r0
-    3314:	78 9f       	mul	r23, r24
-    3316:	10 0d       	add	r17, r0
-    3318:	11 24       	eor	r1, r1
-    331a:	e3 70       	andi	r30, 0x03	; 3
-    331c:	f0 70       	andi	r31, 0x00	; 0
-    331e:	ea 9f       	mul	r30, r26
-    3320:	70 01       	movw	r14, r0
-    3322:	eb 9f       	mul	r30, r27
-    3324:	f0 0c       	add	r15, r0
-    3326:	fa 9f       	mul	r31, r26
-    3328:	f0 0c       	add	r15, r0
-    332a:	11 24       	eor	r1, r1
-    332c:	d8 9e       	mul	r13, r24
-    332e:	80 2d       	mov	r24, r0
-    3330:	11 24       	eor	r1, r1
-    3332:	6a 2d       	mov	r22, r10
-    3334:	0e 94 83 18 	call	0x3106	; 0x3106 <orbs_set>
-    3338:	1f 91       	pop	r17
-    333a:	0f 91       	pop	r16
-    333c:	ff 90       	pop	r15
-    333e:	ef 90       	pop	r14
-    3340:	df 90       	pop	r13
-    3342:	bf 90       	pop	r11
-    3344:	af 90       	pop	r10
-    3346:	08 95       	ret
+00003294 <orb_set_color>:
+    3294:	48 2f       	mov	r20, r24
+    3296:	50 e0       	ldi	r21, 0x00	; 0
+    3298:	82 95       	swap	r24
+    329a:	86 95       	lsr	r24
+    329c:	87 70       	andi	r24, 0x07	; 7
+    329e:	e4 e2       	ldi	r30, 0x24	; 36
+    32a0:	f0 e0       	ldi	r31, 0x00	; 0
+    32a2:	9a 01       	movw	r18, r20
+    32a4:	2c 71       	andi	r18, 0x1C	; 28
+    32a6:	30 70       	andi	r19, 0x00	; 0
+    32a8:	35 95       	asr	r19
+    32aa:	27 95       	ror	r18
+    32ac:	35 95       	asr	r19
+    32ae:	27 95       	ror	r18
+    32b0:	2e 9f       	mul	r18, r30
+    32b2:	b0 01       	movw	r22, r0
+    32b4:	2f 9f       	mul	r18, r31
+    32b6:	70 0d       	add	r23, r0
+    32b8:	3e 9f       	mul	r19, r30
+    32ba:	70 0d       	add	r23, r0
+    32bc:	11 24       	eor	r1, r1
+    32be:	43 70       	andi	r20, 0x03	; 3
+    32c0:	50 70       	andi	r21, 0x00	; 0
+    32c2:	25 e5       	ldi	r18, 0x55	; 85
+    32c4:	30 e0       	ldi	r19, 0x00	; 0
+    32c6:	da 01       	movw	r26, r20
+    32c8:	a2 9f       	mul	r26, r18
+    32ca:	a0 01       	movw	r20, r0
+    32cc:	a3 9f       	mul	r26, r19
+    32ce:	50 0d       	add	r21, r0
+    32d0:	b2 9f       	mul	r27, r18
+    32d2:	50 0d       	add	r21, r0
+    32d4:	11 24       	eor	r1, r1
+    32d6:	8e 9f       	mul	r24, r30
+    32d8:	80 2d       	mov	r24, r0
+    32da:	11 24       	eor	r1, r1
+    32dc:	0e 94 8e 18 	call	0x311c	; 0x311c <orb_set>
+    32e0:	08 95       	ret
 
-00003348 <orb_enable_timer>:
-    3348:	86 e0       	ldi	r24, 0x06	; 6
-    334a:	83 bf       	out	0x33, r24	; 51
-    334c:	87 b7       	in	r24, 0x37	; 55
-    334e:	83 60       	ori	r24, 0x03	; 3
-    3350:	87 bf       	out	0x37, r24	; 55
-    3352:	08 95       	ret
+000032e2 <orbs_set_color>:
+    32e2:	af 92       	push	r10
+    32e4:	bf 92       	push	r11
+    32e6:	df 92       	push	r13
+    32e8:	ef 92       	push	r14
+    32ea:	ff 92       	push	r15
+    32ec:	0f 93       	push	r16
+    32ee:	1f 93       	push	r17
+    32f0:	d8 2e       	mov	r13, r24
+    32f2:	48 2f       	mov	r20, r24
+    32f4:	50 e0       	ldi	r21, 0x00	; 0
+    32f6:	e6 2f       	mov	r30, r22
+    32f8:	f0 e0       	ldi	r31, 0x00	; 0
+    32fa:	d2 94       	swap	r13
+    32fc:	d6 94       	lsr	r13
+    32fe:	a7 e0       	ldi	r26, 0x07	; 7
+    3300:	da 22       	and	r13, r26
+    3302:	84 e2       	ldi	r24, 0x24	; 36
+    3304:	90 e0       	ldi	r25, 0x00	; 0
+    3306:	9a 01       	movw	r18, r20
+    3308:	2c 71       	andi	r18, 0x1C	; 28
+    330a:	30 70       	andi	r19, 0x00	; 0
+    330c:	35 95       	asr	r19
+    330e:	27 95       	ror	r18
+    3310:	35 95       	asr	r19
+    3312:	27 95       	ror	r18
+    3314:	28 9f       	mul	r18, r24
+    3316:	50 01       	movw	r10, r0
+    3318:	29 9f       	mul	r18, r25
+    331a:	b0 0c       	add	r11, r0
+    331c:	38 9f       	mul	r19, r24
+    331e:	b0 0c       	add	r11, r0
+    3320:	11 24       	eor	r1, r1
+    3322:	43 70       	andi	r20, 0x03	; 3
+    3324:	50 70       	andi	r21, 0x00	; 0
+    3326:	a5 e5       	ldi	r26, 0x55	; 85
+    3328:	b0 e0       	ldi	r27, 0x00	; 0
+    332a:	9a 01       	movw	r18, r20
+    332c:	2a 9f       	mul	r18, r26
+    332e:	a0 01       	movw	r20, r0
+    3330:	2b 9f       	mul	r18, r27
+    3332:	50 0d       	add	r21, r0
+    3334:	3a 9f       	mul	r19, r26
+    3336:	50 0d       	add	r21, r0
+    3338:	11 24       	eor	r1, r1
+    333a:	62 95       	swap	r22
+    333c:	66 95       	lsr	r22
+    333e:	67 70       	andi	r22, 0x07	; 7
+    3340:	70 e0       	ldi	r23, 0x00	; 0
+    3342:	68 9f       	mul	r22, r24
+    3344:	90 01       	movw	r18, r0
+    3346:	69 9f       	mul	r22, r25
+    3348:	30 0d       	add	r19, r0
+    334a:	78 9f       	mul	r23, r24
+    334c:	30 0d       	add	r19, r0
+    334e:	11 24       	eor	r1, r1
+    3350:	bf 01       	movw	r22, r30
+    3352:	6c 71       	andi	r22, 0x1C	; 28
+    3354:	70 70       	andi	r23, 0x00	; 0
+    3356:	75 95       	asr	r23
+    3358:	67 95       	ror	r22
+    335a:	75 95       	asr	r23
+    335c:	67 95       	ror	r22
+    335e:	68 9f       	mul	r22, r24
+    3360:	80 01       	movw	r16, r0
+    3362:	69 9f       	mul	r22, r25
+    3364:	10 0d       	add	r17, r0
+    3366:	78 9f       	mul	r23, r24
+    3368:	10 0d       	add	r17, r0
+    336a:	11 24       	eor	r1, r1
+    336c:	e3 70       	andi	r30, 0x03	; 3
+    336e:	f0 70       	andi	r31, 0x00	; 0
+    3370:	ea 9f       	mul	r30, r26
+    3372:	70 01       	movw	r14, r0
+    3374:	eb 9f       	mul	r30, r27
+    3376:	f0 0c       	add	r15, r0
+    3378:	fa 9f       	mul	r31, r26
+    337a:	f0 0c       	add	r15, r0
+    337c:	11 24       	eor	r1, r1
+    337e:	d8 9e       	mul	r13, r24
+    3380:	80 2d       	mov	r24, r0
+    3382:	11 24       	eor	r1, r1
+    3384:	6a 2d       	mov	r22, r10
+    3386:	0e 94 ac 18 	call	0x3158	; 0x3158 <orbs_set>
+    338a:	1f 91       	pop	r17
+    338c:	0f 91       	pop	r16
+    338e:	ff 90       	pop	r15
+    3390:	ef 90       	pop	r14
+    3392:	df 90       	pop	r13
+    3394:	bf 90       	pop	r11
+    3396:	af 90       	pop	r10
+    3398:	08 95       	ret
 
-00003354 <orb_disable_timer>:
-    3354:	87 b7       	in	r24, 0x37	; 55
-    3356:	8c 7f       	andi	r24, 0xFC	; 252
-    3358:	87 bf       	out	0x37, r24	; 55
-    335a:	08 95       	ret
+0000339a <orb_enable_timer>:
+    339a:	86 e0       	ldi	r24, 0x06	; 6
+    339c:	83 bf       	out	0x33, r24	; 51
+    339e:	87 b7       	in	r24, 0x37	; 55
+    33a0:	83 60       	ori	r24, 0x03	; 3
+    33a2:	87 bf       	out	0x37, r24	; 55
+    33a4:	08 95       	ret
 
-0000335c <orb_set_mode>:
-    335c:	81 30       	cpi	r24, 0x01	; 1
-    335e:	41 f4       	brne	.+16     	; 0x3370 <orb_set_mode+0x14>
-    3360:	87 b7       	in	r24, 0x37	; 55
-    3362:	8c 7f       	andi	r24, 0xFC	; 252
-    3364:	87 bf       	out	0x37, r24	; 55
-    3366:	10 92 63 03 	sts	0x0363, r1
-    336a:	0e 94 86 16 	call	0x2d0c	; 0x2d0c <apply_orbs>
-    336e:	08 95       	ret
-    3370:	81 e0       	ldi	r24, 0x01	; 1
-    3372:	80 93 63 03 	sts	0x0363, r24
-    3376:	0e 94 86 16 	call	0x2d0c	; 0x2d0c <apply_orbs>
-    337a:	86 e0       	ldi	r24, 0x06	; 6
-    337c:	83 bf       	out	0x33, r24	; 51
-    337e:	87 b7       	in	r24, 0x37	; 55
-    3380:	83 60       	ori	r24, 0x03	; 3
-    3382:	87 bf       	out	0x37, r24	; 55
-    3384:	08 95       	ret
+000033a6 <orb_disable_timer>:
+    33a6:	87 b7       	in	r24, 0x37	; 55
+    33a8:	8c 7f       	andi	r24, 0xFC	; 252
+    33aa:	87 bf       	out	0x37, r24	; 55
+    33ac:	08 95       	ret
 
-00003386 <orb_init_binary>:
-    3386:	85 b3       	in	r24, 0x15	; 21
-    3388:	87 67       	ori	r24, 0x77	; 119
-    338a:	85 bb       	out	0x15, r24	; 21
-    338c:	84 b3       	in	r24, 0x14	; 20
-    338e:	87 67       	ori	r24, 0x77	; 119
-    3390:	84 bb       	out	0x14, r24	; 20
-    3392:	80 e0       	ldi	r24, 0x00	; 0
-    3394:	60 e0       	ldi	r22, 0x00	; 0
-    3396:	40 e0       	ldi	r20, 0x00	; 0
-    3398:	0e 94 65 18 	call	0x30ca	; 0x30ca <orb_set>
-    339c:	81 e0       	ldi	r24, 0x01	; 1
-    339e:	0e 94 ae 19 	call	0x335c	; 0x335c <orb_set_mode>
-    33a2:	08 95       	ret
-
-000033a4 <orb_init_pwm>:
-    33a4:	85 b3       	in	r24, 0x15	; 21
-    33a6:	87 67       	ori	r24, 0x77	; 119
-    33a8:	85 bb       	out	0x15, r24	; 21
-    33aa:	84 b3       	in	r24, 0x14	; 20
-    33ac:	87 67       	ori	r24, 0x77	; 119
-    33ae:	84 bb       	out	0x14, r24	; 20
-    33b0:	80 e0       	ldi	r24, 0x00	; 0
-    33b2:	60 e0       	ldi	r22, 0x00	; 0
-    33b4:	40 e0       	ldi	r20, 0x00	; 0
-    33b6:	0e 94 65 18 	call	0x30ca	; 0x30ca <orb_set>
-    33ba:	80 e0       	ldi	r24, 0x00	; 0
-    33bc:	0e 94 ae 19 	call	0x335c	; 0x335c <orb_set_mode>
+000033ae <orb_set_mode>:
+    33ae:	81 30       	cpi	r24, 0x01	; 1
+    33b0:	41 f4       	brne	.+16     	; 0x33c2 <orb_set_mode+0x14>
+    33b2:	87 b7       	in	r24, 0x37	; 55
+    33b4:	8c 7f       	andi	r24, 0xFC	; 252
+    33b6:	87 bf       	out	0x37, r24	; 55
+    33b8:	10 92 54 03 	sts	0x0354, r1
+    33bc:	0e 94 af 16 	call	0x2d5e	; 0x2d5e <apply_orbs>
     33c0:	08 95       	ret
+    33c2:	81 e0       	ldi	r24, 0x01	; 1
+    33c4:	80 93 54 03 	sts	0x0354, r24
+    33c8:	0e 94 af 16 	call	0x2d5e	; 0x2d5e <apply_orbs>
+    33cc:	86 e0       	ldi	r24, 0x06	; 6
+    33ce:	83 bf       	out	0x33, r24	; 51
+    33d0:	87 b7       	in	r24, 0x37	; 55
+    33d2:	83 60       	ori	r24, 0x03	; 3
+    33d4:	87 bf       	out	0x37, r24	; 55
+    33d6:	08 95       	ret
 
-000033c2 <orb_init>:
-    33c2:	0e 94 d2 19 	call	0x33a4	; 0x33a4 <orb_init_pwm>
-    33c6:	08 95       	ret
+000033d8 <orb_init_binary>:
+    33d8:	85 b3       	in	r24, 0x15	; 21
+    33da:	87 67       	ori	r24, 0x77	; 119
+    33dc:	85 bb       	out	0x15, r24	; 21
+    33de:	84 b3       	in	r24, 0x14	; 20
+    33e0:	87 67       	ori	r24, 0x77	; 119
+    33e2:	84 bb       	out	0x14, r24	; 20
+    33e4:	80 e0       	ldi	r24, 0x00	; 0
+    33e6:	60 e0       	ldi	r22, 0x00	; 0
+    33e8:	40 e0       	ldi	r20, 0x00	; 0
+    33ea:	0e 94 8e 18 	call	0x311c	; 0x311c <orb_set>
+    33ee:	81 e0       	ldi	r24, 0x01	; 1
+    33f0:	0e 94 d7 19 	call	0x33ae	; 0x33ae <orb_set_mode>
+    33f4:	08 95       	ret
 
-000033c8 <motors_init>:
-    //wl_send_robot_to_robot_packet(SWARM_PACKET_GROUP_ID, type, packet, length, wl_source, 0);
+000033f6 <orb_init_pwm>:
+    33f6:	85 b3       	in	r24, 0x15	; 21
+    33f8:	87 67       	ori	r24, 0x77	; 119
+    33fa:	85 bb       	out	0x15, r24	; 21
+    33fc:	84 b3       	in	r24, 0x14	; 20
+    33fe:	87 67       	ori	r24, 0x77	; 119
+    3400:	84 bb       	out	0x14, r24	; 20
+    3402:	80 e0       	ldi	r24, 0x00	; 0
+    3404:	60 e0       	ldi	r22, 0x00	; 0
+    3406:	40 e0       	ldi	r20, 0x00	; 0
+    3408:	0e 94 8e 18 	call	0x311c	; 0x311c <orb_set>
+    340c:	80 e0       	ldi	r24, 0x00	; 0
+    340e:	0e 94 d7 19 	call	0x33ae	; 0x33ae <orb_set_mode>
+    3412:	08 95       	ret
 
-    char buf[40];
-    int i;
-    for (i = 0; i < length; i++) {
-        sprintf(buf, "%d: %d ", i, packet[i]);
-    33c8:	8b b3       	in	r24, 0x1b	; 27
-    33ca:	8f 70       	andi	r24, 0x0F	; 15
-    33cc:	8b bb       	out	0x1b, r24	; 27
-        usb_puts(buf);
-    33ce:	8a b3       	in	r24, 0x1a	; 26
-    33d0:	80 6f       	ori	r24, 0xF0	; 240
-    33d2:	8a bb       	out	0x1a, r24	; 26
-    }
-    33d4:	87 b3       	in	r24, 0x17	; 23
-    33d6:	80 66       	ori	r24, 0x60	; 96
-    33d8:	87 bb       	out	0x17, r24	; 23
-    usb_puts("\r\n");
-}*/
+00003414 <orb_init>:
+    3414:	0e 94 fb 19 	call	0x33f6	; 0x33f6 <orb_init_pwm>
+    3418:	08 95       	ret
 
-    33da:	81 ea       	ldi	r24, 0xA1	; 161
-    33dc:	8f bd       	out	0x2f, r24	; 47
-    33de:	89 e0       	ldi	r24, 0x09	; 9
-    33e0:	8e bd       	out	0x2e, r24	; 46
-    33e2:	1b bc       	out	0x2b, r1	; 43
-    33e4:	1a bc       	out	0x2a, r1	; 42
-    33e6:	19 bc       	out	0x29, r1	; 41
-    33e8:	18 bc       	out	0x28, r1	; 40
-    33ea:	08 95       	ret
+0000341a <motors_init>:
+    341a:	8b b3       	in	r24, 0x1b	; 27
+    341c:	8f 70       	andi	r24, 0x0F	; 15
+    341e:	8b bb       	out	0x1b, r24	; 27
+    3420:	8a b3       	in	r24, 0x1a	; 26
+    3422:	80 6f       	ori	r24, 0xF0	; 240
+    3424:	8a bb       	out	0x1a, r24	; 26
+    3426:	87 b3       	in	r24, 0x17	; 23
+    3428:	80 66       	ori	r24, 0x60	; 96
+    342a:	87 bb       	out	0x17, r24	; 23
+    342c:	81 ea       	ldi	r24, 0xA1	; 161
+    342e:	8f bd       	out	0x2f, r24	; 47
+    3430:	89 e0       	ldi	r24, 0x09	; 9
+    3432:	8e bd       	out	0x2e, r24	; 46
+    3434:	1b bc       	out	0x2b, r1	; 43
+    3436:	1a bc       	out	0x2a, r1	; 42
+    3438:	19 bc       	out	0x29, r1	; 41
+    343a:	18 bc       	out	0x28, r1	; 40
+    343c:	08 95       	ret
 
-000033ec <motor_l_set>:
-    33ec:	89 2b       	or	r24, r25
-    33ee:	51 f4       	brne	.+20     	; 0x3404 <motor_l_set+0x18>
-    33f0:	8b b3       	in	r24, 0x1b	; 27
-    33f2:	80 73       	andi	r24, 0x30	; 48
-    33f4:	80 31       	cpi	r24, 0x10	; 16
-    33f6:	11 f0       	breq	.+4      	; 0x33fc <motor_l_set+0x10>
-    33f8:	1b bc       	out	0x2b, r1	; 43
-    33fa:	1a bc       	out	0x2a, r1	; 42
-    33fc:	8b b3       	in	r24, 0x1b	; 27
-    33fe:	8f 7c       	andi	r24, 0xCF	; 207
-    3400:	80 61       	ori	r24, 0x10	; 16
-    3402:	09 c0       	rjmp	.+18     	; 0x3416 <motor_l_set+0x2a>
-    3404:	8b b3       	in	r24, 0x1b	; 27
-    3406:	80 73       	andi	r24, 0x30	; 48
-    3408:	80 32       	cpi	r24, 0x20	; 32
-    340a:	11 f0       	breq	.+4      	; 0x3410 <motor_l_set+0x24>
-    340c:	1b bc       	out	0x2b, r1	; 43
-    340e:	1a bc       	out	0x2a, r1	; 42
-    3410:	8b b3       	in	r24, 0x1b	; 27
-    3412:	8f 7c       	andi	r24, 0xCF	; 207
-    3414:	80 62       	ori	r24, 0x20	; 32
-    3416:	8b bb       	out	0x1b, r24	; 27
-    3418:	6a bd       	out	0x2a, r22	; 42
-    341a:	08 95       	ret
+0000343e <motor_l_set>:
+    343e:	89 2b       	or	r24, r25
+    3440:	51 f4       	brne	.+20     	; 0x3456 <motor_l_set+0x18>
+    3442:	8b b3       	in	r24, 0x1b	; 27
+    3444:	80 73       	andi	r24, 0x30	; 48
+    3446:	80 31       	cpi	r24, 0x10	; 16
+    3448:	11 f0       	breq	.+4      	; 0x344e <motor_l_set+0x10>
+    344a:	1b bc       	out	0x2b, r1	; 43
+    344c:	1a bc       	out	0x2a, r1	; 42
+    344e:	8b b3       	in	r24, 0x1b	; 27
+    3450:	8f 7c       	andi	r24, 0xCF	; 207
+    3452:	80 61       	ori	r24, 0x10	; 16
+    3454:	09 c0       	rjmp	.+18     	; 0x3468 <motor_l_set+0x2a>
+    3456:	8b b3       	in	r24, 0x1b	; 27
+    3458:	80 73       	andi	r24, 0x30	; 48
+    345a:	80 32       	cpi	r24, 0x20	; 32
+    345c:	11 f0       	breq	.+4      	; 0x3462 <motor_l_set+0x24>
+    345e:	1b bc       	out	0x2b, r1	; 43
+    3460:	1a bc       	out	0x2a, r1	; 42
+    3462:	8b b3       	in	r24, 0x1b	; 27
+    3464:	8f 7c       	andi	r24, 0xCF	; 207
+    3466:	80 62       	ori	r24, 0x20	; 32
+    3468:	8b bb       	out	0x1b, r24	; 27
+    346a:	6a bd       	out	0x2a, r22	; 42
+    346c:	08 95       	ret
 
-0000341c <motor_r_set>:
-    341c:	89 2b       	or	r24, r25
-    341e:	51 f4       	brne	.+20     	; 0x3434 <motor_r_set+0x18>
-    3420:	8b b3       	in	r24, 0x1b	; 27
-    3422:	80 7c       	andi	r24, 0xC0	; 192
-    3424:	80 38       	cpi	r24, 0x80	; 128
-    3426:	11 f0       	breq	.+4      	; 0x342c <motor_r_set+0x10>
-    3428:	19 bc       	out	0x29, r1	; 41
-    342a:	18 bc       	out	0x28, r1	; 40
-    342c:	8b b3       	in	r24, 0x1b	; 27
-    342e:	8f 73       	andi	r24, 0x3F	; 63
-    3430:	80 68       	ori	r24, 0x80	; 128
-    3432:	09 c0       	rjmp	.+18     	; 0x3446 <motor_r_set+0x2a>
-    3434:	8b b3       	in	r24, 0x1b	; 27
-    3436:	80 7c       	andi	r24, 0xC0	; 192
-    3438:	80 34       	cpi	r24, 0x40	; 64
-    343a:	11 f0       	breq	.+4      	; 0x3440 <motor_r_set+0x24>
-    343c:	19 bc       	out	0x29, r1	; 41
-    343e:	18 bc       	out	0x28, r1	; 40
-    3440:	8b b3       	in	r24, 0x1b	; 27
-    3442:	8f 73       	andi	r24, 0x3F	; 63
-    3444:	80 64       	ori	r24, 0x40	; 64
-    3446:	8b bb       	out	0x1b, r24	; 27
-    3448:	68 bd       	out	0x28, r22	; 40
-    344a:	08 95       	ret
+0000346e <motor_r_set>:
+    346e:	89 2b       	or	r24, r25
+    3470:	51 f4       	brne	.+20     	; 0x3486 <motor_r_set+0x18>
+    3472:	8b b3       	in	r24, 0x1b	; 27
+    3474:	80 7c       	andi	r24, 0xC0	; 192
+    3476:	80 38       	cpi	r24, 0x80	; 128
+    3478:	11 f0       	breq	.+4      	; 0x347e <motor_r_set+0x10>
+    347a:	19 bc       	out	0x29, r1	; 41
+    347c:	18 bc       	out	0x28, r1	; 40
+    347e:	8b b3       	in	r24, 0x1b	; 27
+    3480:	8f 73       	andi	r24, 0x3F	; 63
+    3482:	80 68       	ori	r24, 0x80	; 128
+    3484:	09 c0       	rjmp	.+18     	; 0x3498 <motor_r_set+0x2a>
+    3486:	8b b3       	in	r24, 0x1b	; 27
+    3488:	80 7c       	andi	r24, 0xC0	; 192
+    348a:	80 34       	cpi	r24, 0x40	; 64
+    348c:	11 f0       	breq	.+4      	; 0x3492 <motor_r_set+0x24>
+    348e:	19 bc       	out	0x29, r1	; 41
+    3490:	18 bc       	out	0x28, r1	; 40
+    3492:	8b b3       	in	r24, 0x1b	; 27
+    3494:	8f 73       	andi	r24, 0x3F	; 63
+    3496:	80 64       	ori	r24, 0x40	; 64
+    3498:	8b bb       	out	0x1b, r24	; 27
+    349a:	68 bd       	out	0x28, r22	; 40
+    349c:	08 95       	ret
 
-0000344c <motor1_set>:
-    344c:	0e 94 f6 19 	call	0x33ec	; 0x33ec <motor_l_set>
-    3450:	08 95       	ret
+0000349e <motor1_set>:
+    349e:	0e 94 1f 1a 	call	0x343e	; 0x343e <motor_l_set>
+    34a2:	08 95       	ret
 
-00003452 <motor2_set>:
-    3452:	0e 94 0e 1a 	call	0x341c	; 0x341c <motor_r_set>
-    3456:	08 95       	ret
-
-00003458 <motors_off>:
-    3458:	1a bc       	out	0x2a, r1	; 42
-    345a:	18 bc       	out	0x28, r1	; 40
-    345c:	08 95       	ret
-
-0000345e <linearize_distance>:
-    345e:	fc 01       	movw	r30, r24
-    3460:	84 31       	cpi	r24, 0x14	; 20
-    3462:	91 05       	cpc	r25, r1
-    3464:	54 f0       	brlt	.+20     	; 0x347a <linearize_distance+0x1c>
-    3466:	86 38       	cpi	r24, 0x86	; 134
-    3468:	91 05       	cpc	r25, r1
-    346a:	3c f4       	brge	.+14     	; 0x347a <linearize_distance+0x1c>
-    346c:	ee 0f       	add	r30, r30
-    346e:	ff 1f       	adc	r31, r31
-    3470:	ee 5b       	subi	r30, 0xBE	; 190
-    3472:	fc 4f       	sbci	r31, 0xFC	; 252
-    3474:	20 81       	ld	r18, Z
-    3476:	31 81       	ldd	r19, Z+1	; 0x01
-    3478:	02 c0       	rjmp	.+4      	; 0x347e <linearize_distance+0x20>
-    347a:	2f ef       	ldi	r18, 0xFF	; 255
-    347c:	3f ef       	ldi	r19, 0xFF	; 255
-    347e:	c9 01       	movw	r24, r18
-    3480:	08 95       	ret
-
-00003482 <range_read_distance>:
-    3482:	0e 94 a0 1c 	call	0x3940	; 0x3940 <analog8>
-    3486:	fc 01       	movw	r30, r24
-    3488:	84 31       	cpi	r24, 0x14	; 20
-    348a:	91 05       	cpc	r25, r1
-    348c:	54 f0       	brlt	.+20     	; 0x34a2 <range_read_distance+0x20>
-    348e:	86 38       	cpi	r24, 0x86	; 134
-    3490:	91 05       	cpc	r25, r1
-    3492:	3c f4       	brge	.+14     	; 0x34a2 <range_read_distance+0x20>
-    3494:	ee 0f       	add	r30, r30
-    3496:	ff 1f       	adc	r31, r31
-    3498:	ee 5b       	subi	r30, 0xBE	; 190
-    349a:	fc 4f       	sbci	r31, 0xFC	; 252
-    349c:	20 81       	ld	r18, Z
-    349e:	31 81       	ldd	r19, Z+1	; 0x01
-    34a0:	02 c0       	rjmp	.+4      	; 0x34a6 <range_read_distance+0x24>
-    34a2:	2f ef       	ldi	r18, 0xFF	; 255
-    34a4:	3f ef       	ldi	r19, 0xFF	; 255
-    34a6:	c9 01       	movw	r24, r18
+000034a4 <motor2_set>:
+    34a4:	0e 94 37 1a 	call	0x346e	; 0x346e <motor_r_set>
     34a8:	08 95       	ret
 
-000034aa <range_init>:
-    34aa:	84 e1       	ldi	r24, 0x14	; 20
-    34ac:	90 e0       	ldi	r25, 0x00	; 0
-    34ae:	60 e0       	ldi	r22, 0x00	; 0
-    34b0:	70 e0       	ldi	r23, 0x00	; 0
-    34b2:	0e 94 8a 0f 	call	0x1f14	; 0x1f14 <digital_output>
-    34b6:	08 95       	ret
+000034aa <motors_off>:
+    34aa:	1a bc       	out	0x2a, r1	; 42
+    34ac:	18 bc       	out	0x28, r1	; 40
+    34ae:	08 95       	ret
 
-000034b8 <usb_init>:
-        sprintf(buf, "%d: %d ", i, packet[i]);
-        usb_puts(buf);
-    }
-    usb_puts("\r\n");
-}*/
-
-    34b8:	10 92 90 00 	sts	0x0090, r1
-    34bc:	88 e0       	ldi	r24, 0x08	; 8
-    34be:	89 b9       	out	0x09, r24	; 9
-    34c0:	59 9a       	sbi	0x0b, 1	; 11
-    34c2:	8a b1       	in	r24, 0x0a	; 10
-    34c4:	88 61       	ori	r24, 0x18	; 24
-    34c6:	8a b9       	out	0x0a, r24	; 10
-    34c8:	e5 e9       	ldi	r30, 0x95	; 149
-    34ca:	f0 e0       	ldi	r31, 0x00	; 0
-    34cc:	80 81       	ld	r24, Z
-    34ce:	86 60       	ori	r24, 0x06	; 6
-    34d0:	80 83       	st	Z, r24
+000034b0 <linearize_distance>:
+    34b0:	fc 01       	movw	r30, r24
+    34b2:	84 31       	cpi	r24, 0x14	; 20
+    34b4:	91 05       	cpc	r25, r1
+    34b6:	54 f0       	brlt	.+20     	; 0x34cc <linearize_distance+0x1c>
+    34b8:	86 38       	cpi	r24, 0x86	; 134
+    34ba:	91 05       	cpc	r25, r1
+    34bc:	3c f4       	brge	.+14     	; 0x34cc <linearize_distance+0x1c>
+    34be:	ee 0f       	add	r30, r30
+    34c0:	ff 1f       	adc	r31, r31
+    34c2:	ed 5c       	subi	r30, 0xCD	; 205
+    34c4:	fc 4f       	sbci	r31, 0xFC	; 252
+    34c6:	20 81       	ld	r18, Z
+    34c8:	31 81       	ldd	r19, Z+1	; 0x01
+    34ca:	02 c0       	rjmp	.+4      	; 0x34d0 <linearize_distance+0x20>
+    34cc:	2f ef       	ldi	r18, 0xFF	; 255
+    34ce:	3f ef       	ldi	r19, 0xFF	; 255
+    34d0:	c9 01       	movw	r24, r18
     34d2:	08 95       	ret
 
-000034d4 <xbee_init>:
-    34d4:	10 92 98 00 	sts	0x0098, r1
-    34d8:	87 e6       	ldi	r24, 0x67	; 103
-    34da:	80 93 99 00 	sts	0x0099, r24
-    34de:	eb e9       	ldi	r30, 0x9B	; 155
-    34e0:	f0 e0       	ldi	r31, 0x00	; 0
-    34e2:	80 81       	ld	r24, Z
-    34e4:	82 60       	ori	r24, 0x02	; 2
-    34e6:	80 83       	st	Z, r24
-    34e8:	ea e9       	ldi	r30, 0x9A	; 154
-    34ea:	f0 e0       	ldi	r31, 0x00	; 0
-    34ec:	80 81       	ld	r24, Z
-    34ee:	88 61       	ori	r24, 0x18	; 24
-    34f0:	80 83       	st	Z, r24
-    34f2:	ed e9       	ldi	r30, 0x9D	; 157
-    34f4:	f0 e0       	ldi	r31, 0x00	; 0
-    34f6:	80 81       	ld	r24, Z
-    34f8:	86 60       	ori	r24, 0x06	; 6
-    34fa:	80 83       	st	Z, r24
-    34fc:	08 95       	ret
+000034d4 <range_read_distance>:
+    34d4:	0e 94 c9 1c 	call	0x3992	; 0x3992 <analog8>
+    34d8:	fc 01       	movw	r30, r24
+    34da:	84 31       	cpi	r24, 0x14	; 20
+    34dc:	91 05       	cpc	r25, r1
+    34de:	54 f0       	brlt	.+20     	; 0x34f4 <range_read_distance+0x20>
+    34e0:	86 38       	cpi	r24, 0x86	; 134
+    34e2:	91 05       	cpc	r25, r1
+    34e4:	3c f4       	brge	.+14     	; 0x34f4 <range_read_distance+0x20>
+    34e6:	ee 0f       	add	r30, r30
+    34e8:	ff 1f       	adc	r31, r31
+    34ea:	ed 5c       	subi	r30, 0xCD	; 205
+    34ec:	fc 4f       	sbci	r31, 0xFC	; 252
+    34ee:	20 81       	ld	r18, Z
+    34f0:	31 81       	ldd	r19, Z+1	; 0x01
+    34f2:	02 c0       	rjmp	.+4      	; 0x34f8 <range_read_distance+0x24>
+    34f4:	2f ef       	ldi	r18, 0xFF	; 255
+    34f6:	3f ef       	ldi	r19, 0xFF	; 255
+    34f8:	c9 01       	movw	r24, r18
+    34fa:	08 95       	ret
 
-000034fe <usb_putc>:
-    34fe:	5d 9b       	sbis	0x0b, 5	; 11
-    3500:	fe cf       	rjmp	.-4      	; 0x34fe <usb_putc>
-    3502:	8c b9       	out	0x0c, r24	; 12
-    3504:	80 e0       	ldi	r24, 0x00	; 0
-    3506:	90 e0       	ldi	r25, 0x00	; 0
+000034fc <range_init>:
+    34fc:	84 e1       	ldi	r24, 0x14	; 20
+    34fe:	90 e0       	ldi	r25, 0x00	; 0
+    3500:	60 e0       	ldi	r22, 0x00	; 0
+    3502:	70 e0       	ldi	r23, 0x00	; 0
+    3504:	0e 94 b3 0f 	call	0x1f66	; 0x1f66 <digital_output>
     3508:	08 95       	ret
 
-0000350a <xbee_putc>:
-    350a:	98 2f       	mov	r25, r24
-    350c:	80 91 9b 00 	lds	r24, 0x009B
-    3510:	85 ff       	sbrs	r24, 5
-    3512:	fc cf       	rjmp	.-8      	; 0x350c <xbee_putc+0x2>
-    3514:	90 93 9c 00 	sts	0x009C, r25
-    3518:	80 e0       	ldi	r24, 0x00	; 0
-    351a:	90 e0       	ldi	r25, 0x00	; 0
-    351c:	08 95       	ret
+0000350a <usb_init>:
+    350a:	10 92 90 00 	sts	0x0090, r1
+    350e:	88 e0       	ldi	r24, 0x08	; 8
+    3510:	89 b9       	out	0x09, r24	; 9
+    3512:	59 9a       	sbi	0x0b, 1	; 11
+    3514:	8a b1       	in	r24, 0x0a	; 10
+    3516:	88 61       	ori	r24, 0x18	; 24
+    3518:	8a b9       	out	0x0a, r24	; 10
+    351a:	e5 e9       	ldi	r30, 0x95	; 149
+    351c:	f0 e0       	ldi	r31, 0x00	; 0
+    351e:	80 81       	ld	r24, Z
+    3520:	86 60       	ori	r24, 0x06	; 6
+    3522:	80 83       	st	Z, r24
+    3524:	08 95       	ret
 
-0000351e <usb_puts>:
-    351e:	fc 01       	movw	r30, r24
-    3520:	04 c0       	rjmp	.+8      	; 0x352a <usb_puts+0xc>
-    3522:	5d 9b       	sbis	0x0b, 5	; 11
-    3524:	fe cf       	rjmp	.-4      	; 0x3522 <usb_puts+0x4>
-    3526:	8c b9       	out	0x0c, r24	; 12
-    3528:	31 96       	adiw	r30, 0x01	; 1
-    352a:	80 81       	ld	r24, Z
-    352c:	88 23       	and	r24, r24
-    352e:	c9 f7       	brne	.-14     	; 0x3522 <usb_puts+0x4>
-    3530:	80 e0       	ldi	r24, 0x00	; 0
-    3532:	90 e0       	ldi	r25, 0x00	; 0
-    3534:	08 95       	ret
-
-00003536 <usb_getc>:
-    3536:	5f 9b       	sbis	0x0b, 7	; 11
-    3538:	fe cf       	rjmp	.-4      	; 0x3536 <usb_getc>
-    353a:	8c b1       	in	r24, 0x0c	; 12
-    353c:	90 e0       	ldi	r25, 0x00	; 0
-    353e:	08 95       	ret
-
-00003540 <xbee_getc>:
-    3540:	80 91 9b 00 	lds	r24, 0x009B
-    3544:	87 ff       	sbrs	r24, 7
-    3546:	fc cf       	rjmp	.-8      	; 0x3540 <xbee_getc>
-    3548:	80 91 9c 00 	lds	r24, 0x009C
-    354c:	90 e0       	ldi	r25, 0x00	; 0
+00003526 <xbee_init>:
+    3526:	10 92 98 00 	sts	0x0098, r1
+    352a:	87 e6       	ldi	r24, 0x67	; 103
+    352c:	80 93 99 00 	sts	0x0099, r24
+    3530:	eb e9       	ldi	r30, 0x9B	; 155
+    3532:	f0 e0       	ldi	r31, 0x00	; 0
+    3534:	80 81       	ld	r24, Z
+    3536:	82 60       	ori	r24, 0x02	; 2
+    3538:	80 83       	st	Z, r24
+    353a:	ea e9       	ldi	r30, 0x9A	; 154
+    353c:	f0 e0       	ldi	r31, 0x00	; 0
+    353e:	80 81       	ld	r24, Z
+    3540:	88 61       	ori	r24, 0x18	; 24
+    3542:	80 83       	st	Z, r24
+    3544:	ed e9       	ldi	r30, 0x9D	; 157
+    3546:	f0 e0       	ldi	r31, 0x00	; 0
+    3548:	80 81       	ld	r24, Z
+    354a:	86 60       	ori	r24, 0x06	; 6
+    354c:	80 83       	st	Z, r24
     354e:	08 95       	ret
 
-00003550 <usb_getc_nb>:
-    3550:	fc 01       	movw	r30, r24
-    3552:	5f 99       	sbic	0x0b, 7	; 11
-    3554:	03 c0       	rjmp	.+6      	; 0x355c <usb_getc_nb+0xc>
-    3556:	2f ef       	ldi	r18, 0xFF	; 255
-    3558:	3f ef       	ldi	r19, 0xFF	; 255
-    355a:	04 c0       	rjmp	.+8      	; 0x3564 <usb_getc_nb+0x14>
-    355c:	8c b1       	in	r24, 0x0c	; 12
-    355e:	80 83       	st	Z, r24
-    3560:	20 e0       	ldi	r18, 0x00	; 0
-    3562:	30 e0       	ldi	r19, 0x00	; 0
-    3564:	c9 01       	movw	r24, r18
-    3566:	08 95       	ret
+00003550 <usb_putc>:
+    3550:	5d 9b       	sbis	0x0b, 5	; 11
+    3552:	fe cf       	rjmp	.-4      	; 0x3550 <usb_putc>
+    3554:	8c b9       	out	0x0c, r24	; 12
+    3556:	80 e0       	ldi	r24, 0x00	; 0
+    3558:	90 e0       	ldi	r25, 0x00	; 0
+    355a:	08 95       	ret
 
-00003568 <xbee_getc_nb>:
-    3568:	fc 01       	movw	r30, r24
-    356a:	80 91 9b 00 	lds	r24, 0x009B
-    356e:	87 fd       	sbrc	r24, 7
-    3570:	03 c0       	rjmp	.+6      	; 0x3578 <xbee_getc_nb+0x10>
-    3572:	2f ef       	ldi	r18, 0xFF	; 255
-    3574:	3f ef       	ldi	r19, 0xFF	; 255
-    3576:	05 c0       	rjmp	.+10     	; 0x3582 <xbee_getc_nb+0x1a>
-    3578:	80 91 9c 00 	lds	r24, 0x009C
-    357c:	80 83       	st	Z, r24
-    357e:	20 e0       	ldi	r18, 0x00	; 0
-    3580:	30 e0       	ldi	r19, 0x00	; 0
-    3582:	c9 01       	movw	r24, r18
-    3584:	08 95       	ret
+0000355c <xbee_putc>:
+    355c:	98 2f       	mov	r25, r24
+    355e:	80 91 9b 00 	lds	r24, 0x009B
+    3562:	85 ff       	sbrs	r24, 5
+    3564:	fc cf       	rjmp	.-8      	; 0x355e <xbee_putc+0x2>
+    3566:	90 93 9c 00 	sts	0x009C, r25
+    356a:	80 e0       	ldi	r24, 0x00	; 0
+    356c:	90 e0       	ldi	r25, 0x00	; 0
+    356e:	08 95       	ret
 
-00003586 <usb_puti>:
-    3586:	0f 93       	push	r16
-    3588:	1f 93       	push	r17
-    358a:	df 93       	push	r29
-    358c:	cf 93       	push	r28
-    358e:	00 d0       	rcall	.+0      	; 0x3590 <usb_puti+0xa>
-    3590:	00 d0       	rcall	.+0      	; 0x3592 <usb_puti+0xc>
-    3592:	00 d0       	rcall	.+0      	; 0x3594 <usb_puti+0xe>
-    3594:	cd b7       	in	r28, 0x3d	; 61
-    3596:	de b7       	in	r29, 0x3e	; 62
-    3598:	9c 01       	movw	r18, r24
-    359a:	de 01       	movw	r26, r28
-    359c:	11 96       	adiw	r26, 0x01	; 1
-    359e:	ef e5       	ldi	r30, 0x5F	; 95
-    35a0:	f4 e0       	ldi	r31, 0x04	; 4
-    35a2:	86 e0       	ldi	r24, 0x06	; 6
-    35a4:	01 90       	ld	r0, Z+
-    35a6:	0d 92       	st	X+, r0
-    35a8:	81 50       	subi	r24, 0x01	; 1
-    35aa:	e1 f7       	brne	.-8      	; 0x35a4 <usb_puti+0x1e>
-    35ac:	37 ff       	sbrs	r19, 7
-    35ae:	07 c0       	rjmp	.+14     	; 0x35be <usb_puti+0x38>
-    35b0:	5d 9b       	sbis	0x0b, 5	; 11
-    35b2:	fe cf       	rjmp	.-4      	; 0x35b0 <usb_puti+0x2a>
-    35b4:	8d e2       	ldi	r24, 0x2D	; 45
-    35b6:	8c b9       	out	0x0c, r24	; 12
-    35b8:	30 95       	com	r19
-    35ba:	21 95       	neg	r18
-    35bc:	3f 4f       	sbci	r19, 0xFF	; 255
-    35be:	46 e0       	ldi	r20, 0x06	; 6
-    35c0:	8e 01       	movw	r16, r28
-    35c2:	0f 5f       	subi	r16, 0xFF	; 255
-    35c4:	1f 4f       	sbci	r17, 0xFF	; 255
-    35c6:	41 50       	subi	r20, 0x01	; 1
-    35c8:	f8 01       	movw	r30, r16
-    35ca:	e4 0f       	add	r30, r20
-    35cc:	f1 1d       	adc	r31, r1
-    35ce:	c9 01       	movw	r24, r18
-    35d0:	6a e0       	ldi	r22, 0x0A	; 10
-    35d2:	70 e0       	ldi	r23, 0x00	; 0
-    35d4:	0e 94 13 32 	call	0x6426	; 0x6426 <__divmodhi4>
-    35d8:	80 5d       	subi	r24, 0xD0	; 208
-    35da:	80 83       	st	Z, r24
-    35dc:	c9 01       	movw	r24, r18
-    35de:	6a e0       	ldi	r22, 0x0A	; 10
-    35e0:	70 e0       	ldi	r23, 0x00	; 0
-    35e2:	0e 94 13 32 	call	0x6426	; 0x6426 <__divmodhi4>
-    35e6:	9b 01       	movw	r18, r22
-    35e8:	61 15       	cp	r22, r1
-    35ea:	71 05       	cpc	r23, r1
-    35ec:	61 f7       	brne	.-40     	; 0x35c6 <usb_puti+0x40>
-    35ee:	09 c0       	rjmp	.+18     	; 0x3602 <usb_puti+0x7c>
-    35f0:	fc 01       	movw	r30, r24
-    35f2:	e4 0f       	add	r30, r20
-    35f4:	f1 1d       	adc	r31, r1
-    35f6:	e0 81       	ld	r30, Z
-    35f8:	5d 9b       	sbis	0x0b, 5	; 11
-    35fa:	fe cf       	rjmp	.-4      	; 0x35f8 <usb_puti+0x72>
-    35fc:	ec b9       	out	0x0c, r30	; 12
-    35fe:	4f 5f       	subi	r20, 0xFF	; 255
-    3600:	02 c0       	rjmp	.+4      	; 0x3606 <usb_puti+0x80>
-    3602:	ce 01       	movw	r24, r28
-    3604:	01 96       	adiw	r24, 0x01	; 1
-    3606:	46 30       	cpi	r20, 0x06	; 6
-    3608:	98 f3       	brcs	.-26     	; 0x35f0 <usb_puti+0x6a>
-    360a:	80 e0       	ldi	r24, 0x00	; 0
-    360c:	90 e0       	ldi	r25, 0x00	; 0
-    360e:	26 96       	adiw	r28, 0x06	; 6
-    3610:	0f b6       	in	r0, 0x3f	; 63
-    3612:	f8 94       	cli
-    3614:	de bf       	out	0x3e, r29	; 62
-    3616:	0f be       	out	0x3f, r0	; 63
-    3618:	cd bf       	out	0x3d, r28	; 61
-    361a:	cf 91       	pop	r28
-    361c:	df 91       	pop	r29
-    361e:	1f 91       	pop	r17
-    3620:	0f 91       	pop	r16
-    3622:	08 95       	ret
+00003570 <usb_puts>:
+    3570:	fc 01       	movw	r30, r24
+    3572:	04 c0       	rjmp	.+8      	; 0x357c <usb_puts+0xc>
+    3574:	5d 9b       	sbis	0x0b, 5	; 11
+    3576:	fe cf       	rjmp	.-4      	; 0x3574 <usb_puts+0x4>
+    3578:	8c b9       	out	0x0c, r24	; 12
+    357a:	31 96       	adiw	r30, 0x01	; 1
+    357c:	80 81       	ld	r24, Z
+    357e:	88 23       	and	r24, r24
+    3580:	c9 f7       	brne	.-14     	; 0x3574 <usb_puts+0x4>
+    3582:	80 e0       	ldi	r24, 0x00	; 0
+    3584:	90 e0       	ldi	r25, 0x00	; 0
+    3586:	08 95       	ret
 
-00003624 <hex_digit>:
-    3624:	80 31       	cpi	r24, 0x10	; 16
-    3626:	10 f0       	brcs	.+4      	; 0x362c <hex_digit+0x8>
-    3628:	8f e3       	ldi	r24, 0x3F	; 63
-    362a:	08 95       	ret
-    362c:	e8 2f       	mov	r30, r24
-    362e:	f0 e0       	ldi	r31, 0x00	; 0
-    3630:	e2 5b       	subi	r30, 0xB2	; 178
-    3632:	fb 4f       	sbci	r31, 0xFB	; 251
-    3634:	80 81       	ld	r24, Z
-    3636:	08 95       	ret
+00003588 <usb_getc>:
+    3588:	5f 9b       	sbis	0x0b, 7	; 11
+    358a:	fe cf       	rjmp	.-4      	; 0x3588 <usb_getc>
+    358c:	8c b1       	in	r24, 0x0c	; 12
+    358e:	90 e0       	ldi	r25, 0x00	; 0
+    3590:	08 95       	ret
 
-00003638 <usb_puth16>:
-    3638:	9c 01       	movw	r18, r24
-    363a:	e3 2f       	mov	r30, r19
-    363c:	e2 95       	swap	r30
-    363e:	ef 70       	andi	r30, 0x0F	; 15
-    3640:	f0 e0       	ldi	r31, 0x00	; 0
-    3642:	e2 5b       	subi	r30, 0xB2	; 178
-    3644:	fb 4f       	sbci	r31, 0xFB	; 251
-    3646:	e0 81       	ld	r30, Z
-    3648:	5d 9b       	sbis	0x0b, 5	; 11
-    364a:	fe cf       	rjmp	.-4      	; 0x3648 <usb_puth16+0x10>
-    364c:	ec b9       	out	0x0c, r30	; 12
-    364e:	5d 9b       	sbis	0x0b, 5	; 11
-    3650:	fe cf       	rjmp	.-4      	; 0x364e <usb_puth16+0x16>
-    3652:	e3 2f       	mov	r30, r19
-    3654:	f0 e0       	ldi	r31, 0x00	; 0
-    3656:	ef 70       	andi	r30, 0x0F	; 15
-    3658:	f0 70       	andi	r31, 0x00	; 0
-    365a:	e2 5b       	subi	r30, 0xB2	; 178
-    365c:	fb 4f       	sbci	r31, 0xFB	; 251
-    365e:	80 81       	ld	r24, Z
-    3660:	8c b9       	out	0x0c, r24	; 12
-    3662:	5d 9b       	sbis	0x0b, 5	; 11
-    3664:	fe cf       	rjmp	.-4      	; 0x3662 <usb_puth16+0x2a>
-    3666:	f9 01       	movw	r30, r18
-    3668:	84 e0       	ldi	r24, 0x04	; 4
-    366a:	f6 95       	lsr	r31
-    366c:	e7 95       	ror	r30
-    366e:	8a 95       	dec	r24
-    3670:	e1 f7       	brne	.-8      	; 0x366a <usb_puth16+0x32>
-    3672:	f0 e0       	ldi	r31, 0x00	; 0
-    3674:	ef 70       	andi	r30, 0x0F	; 15
-    3676:	f0 70       	andi	r31, 0x00	; 0
-    3678:	e2 5b       	subi	r30, 0xB2	; 178
-    367a:	fb 4f       	sbci	r31, 0xFB	; 251
-    367c:	80 81       	ld	r24, Z
-    367e:	8c b9       	out	0x0c, r24	; 12
-    3680:	5d 9b       	sbis	0x0b, 5	; 11
-    3682:	fe cf       	rjmp	.-4      	; 0x3680 <usb_puth16+0x48>
-    3684:	e2 2f       	mov	r30, r18
-    3686:	f0 e0       	ldi	r31, 0x00	; 0
-    3688:	ef 70       	andi	r30, 0x0F	; 15
-    368a:	f0 70       	andi	r31, 0x00	; 0
-    368c:	e2 5b       	subi	r30, 0xB2	; 178
-    368e:	fb 4f       	sbci	r31, 0xFB	; 251
-    3690:	80 81       	ld	r24, Z
-    3692:	8c b9       	out	0x0c, r24	; 12
-    3694:	08 95       	ret
+00003592 <xbee_getc>:
+    3592:	80 91 9b 00 	lds	r24, 0x009B
+    3596:	87 ff       	sbrs	r24, 7
+    3598:	fc cf       	rjmp	.-8      	; 0x3592 <xbee_getc>
+    359a:	80 91 9c 00 	lds	r24, 0x009C
+    359e:	90 e0       	ldi	r25, 0x00	; 0
+    35a0:	08 95       	ret
 
-00003696 <usb_puth8>:
-    3696:	e8 2f       	mov	r30, r24
-    3698:	e2 95       	swap	r30
-    369a:	ef 70       	andi	r30, 0x0F	; 15
-    369c:	f0 e0       	ldi	r31, 0x00	; 0
-    369e:	e2 5b       	subi	r30, 0xB2	; 178
-    36a0:	fb 4f       	sbci	r31, 0xFB	; 251
-    36a2:	e0 81       	ld	r30, Z
-    36a4:	5d 9b       	sbis	0x0b, 5	; 11
-    36a6:	fe cf       	rjmp	.-4      	; 0x36a4 <usb_puth8+0xe>
-    36a8:	ec b9       	out	0x0c, r30	; 12
-    36aa:	5d 9b       	sbis	0x0b, 5	; 11
-    36ac:	fe cf       	rjmp	.-4      	; 0x36aa <usb_puth8+0x14>
-    36ae:	e8 2f       	mov	r30, r24
-    36b0:	f0 e0       	ldi	r31, 0x00	; 0
-    36b2:	ef 70       	andi	r30, 0x0F	; 15
-    36b4:	f0 70       	andi	r31, 0x00	; 0
-    36b6:	e2 5b       	subi	r30, 0xB2	; 178
-    36b8:	fb 4f       	sbci	r31, 0xFB	; 251
-    36ba:	80 81       	ld	r24, Z
-    36bc:	8c b9       	out	0x0c, r24	; 12
-    36be:	08 95       	ret
+000035a2 <usb_getc_nb>:
+    35a2:	fc 01       	movw	r30, r24
+    35a4:	5f 99       	sbic	0x0b, 7	; 11
+    35a6:	03 c0       	rjmp	.+6      	; 0x35ae <usb_getc_nb+0xc>
+    35a8:	2f ef       	ldi	r18, 0xFF	; 255
+    35aa:	3f ef       	ldi	r19, 0xFF	; 255
+    35ac:	04 c0       	rjmp	.+8      	; 0x35b6 <usb_getc_nb+0x14>
+    35ae:	8c b1       	in	r24, 0x0c	; 12
+    35b0:	80 83       	st	Z, r24
+    35b2:	20 e0       	ldi	r18, 0x00	; 0
+    35b4:	30 e0       	ldi	r19, 0x00	; 0
+    35b6:	c9 01       	movw	r24, r18
+    35b8:	08 95       	ret
 
-000036c0 <usb_puts_P>:
-    36c0:	ef 92       	push	r14
-    36c2:	ff 92       	push	r15
-    36c4:	0f 93       	push	r16
-    36c6:	1f 93       	push	r17
-    36c8:	df 93       	push	r29
-    36ca:	cf 93       	push	r28
-    36cc:	0f 92       	push	r0
-    36ce:	cd b7       	in	r28, 0x3d	; 61
-    36d0:	de b7       	in	r29, 0x3e	; 62
-    36d2:	8c 01       	movw	r16, r24
-    36d4:	7e 01       	movw	r14, r28
-    36d6:	08 94       	sec
-    36d8:	e1 1c       	adc	r14, r1
-    36da:	f1 1c       	adc	r15, r1
-    36dc:	05 c0       	rjmp	.+10     	; 0x36e8 <usb_puts_P+0x28>
-    36de:	5d 9b       	sbis	0x0b, 5	; 11
-    36e0:	fe cf       	rjmp	.-4      	; 0x36de <usb_puts_P+0x1e>
-    36e2:	8c b9       	out	0x0c, r24	; 12
-    36e4:	0f 5f       	subi	r16, 0xFF	; 255
-    36e6:	1f 4f       	sbci	r17, 0xFF	; 255
-    36e8:	c7 01       	movw	r24, r14
-    36ea:	b8 01       	movw	r22, r16
-    36ec:	41 e0       	ldi	r20, 0x01	; 1
-    36ee:	50 e0       	ldi	r21, 0x00	; 0
-    36f0:	0e 94 78 2f 	call	0x5ef0	; 0x5ef0 <memcpy_P>
-    36f4:	89 81       	ldd	r24, Y+1	; 0x01
-    36f6:	88 23       	and	r24, r24
-    36f8:	91 f7       	brne	.-28     	; 0x36de <usb_puts_P+0x1e>
-    36fa:	0f 90       	pop	r0
-    36fc:	cf 91       	pop	r28
-    36fe:	df 91       	pop	r29
-    3700:	1f 91       	pop	r17
-    3702:	0f 91       	pop	r16
-    3704:	ff 90       	pop	r15
-    3706:	ef 90       	pop	r14
-    3708:	08 95       	ret
+000035ba <xbee_getc_nb>:
+    35ba:	fc 01       	movw	r30, r24
+    35bc:	80 91 9b 00 	lds	r24, 0x009B
+    35c0:	87 fd       	sbrc	r24, 7
+    35c2:	03 c0       	rjmp	.+6      	; 0x35ca <xbee_getc_nb+0x10>
+    35c4:	2f ef       	ldi	r18, 0xFF	; 255
+    35c6:	3f ef       	ldi	r19, 0xFF	; 255
+    35c8:	05 c0       	rjmp	.+10     	; 0x35d4 <xbee_getc_nb+0x1a>
+    35ca:	80 91 9c 00 	lds	r24, 0x009C
+    35ce:	80 83       	st	Z, r24
+    35d0:	20 e0       	ldi	r18, 0x00	; 0
+    35d2:	30 e0       	ldi	r19, 0x00	; 0
+    35d4:	c9 01       	movw	r24, r18
+    35d6:	08 95       	ret
 
-0000370a <spi_init>:
-    swarm_pgh.handle_receive = swarm_handle_receive;
-    swarm_pgh.unregister = NULL;
-    wl_register_packet_group(&swarm_pgh);*/
+000035d8 <usb_puti>:
+    35d8:	0f 93       	push	r16
+    35da:	1f 93       	push	r17
+    35dc:	df 93       	push	r29
+    35de:	cf 93       	push	r28
+    35e0:	00 d0       	rcall	.+0      	; 0x35e2 <usb_puti+0xa>
+    35e2:	00 d0       	rcall	.+0      	; 0x35e4 <usb_puti+0xc>
+    35e4:	00 d0       	rcall	.+0      	; 0x35e6 <usb_puti+0xe>
+    35e6:	cd b7       	in	r28, 0x3d	; 61
+    35e8:	de b7       	in	r29, 0x3e	; 62
+    35ea:	9c 01       	movw	r18, r24
+    35ec:	de 01       	movw	r26, r28
+    35ee:	11 96       	adiw	r26, 0x01	; 1
+    35f0:	e0 e5       	ldi	r30, 0x50	; 80
+    35f2:	f4 e0       	ldi	r31, 0x04	; 4
+    35f4:	86 e0       	ldi	r24, 0x06	; 6
+    35f6:	01 90       	ld	r0, Z+
+    35f8:	0d 92       	st	X+, r0
+    35fa:	81 50       	subi	r24, 0x01	; 1
+    35fc:	e1 f7       	brne	.-8      	; 0x35f6 <usb_puti+0x1e>
+    35fe:	37 ff       	sbrs	r19, 7
+    3600:	07 c0       	rjmp	.+14     	; 0x3610 <usb_puti+0x38>
+    3602:	5d 9b       	sbis	0x0b, 5	; 11
+    3604:	fe cf       	rjmp	.-4      	; 0x3602 <usb_puti+0x2a>
+    3606:	8d e2       	ldi	r24, 0x2D	; 45
+    3608:	8c b9       	out	0x0c, r24	; 12
+    360a:	30 95       	com	r19
+    360c:	21 95       	neg	r18
+    360e:	3f 4f       	sbci	r19, 0xFF	; 255
+    3610:	46 e0       	ldi	r20, 0x06	; 6
+    3612:	8e 01       	movw	r16, r28
+    3614:	0f 5f       	subi	r16, 0xFF	; 255
+    3616:	1f 4f       	sbci	r17, 0xFF	; 255
+    3618:	41 50       	subi	r20, 0x01	; 1
+    361a:	f8 01       	movw	r30, r16
+    361c:	e4 0f       	add	r30, r20
+    361e:	f1 1d       	adc	r31, r1
+    3620:	c9 01       	movw	r24, r18
+    3622:	6a e0       	ldi	r22, 0x0A	; 10
+    3624:	70 e0       	ldi	r23, 0x00	; 0
+    3626:	0e 94 aa 2f 	call	0x5f54	; 0x5f54 <__divmodhi4>
+    362a:	80 5d       	subi	r24, 0xD0	; 208
+    362c:	80 83       	st	Z, r24
+    362e:	c9 01       	movw	r24, r18
+    3630:	6a e0       	ldi	r22, 0x0A	; 10
+    3632:	70 e0       	ldi	r23, 0x00	; 0
+    3634:	0e 94 aa 2f 	call	0x5f54	; 0x5f54 <__divmodhi4>
+    3638:	9b 01       	movw	r18, r22
+    363a:	61 15       	cp	r22, r1
+    363c:	71 05       	cpc	r23, r1
+    363e:	61 f7       	brne	.-40     	; 0x3618 <usb_puti+0x40>
+    3640:	09 c0       	rjmp	.+18     	; 0x3654 <usb_puti+0x7c>
+    3642:	fc 01       	movw	r30, r24
+    3644:	e4 0f       	add	r30, r20
+    3646:	f1 1d       	adc	r31, r1
+    3648:	e0 81       	ld	r30, Z
+    364a:	5d 9b       	sbis	0x0b, 5	; 11
+    364c:	fe cf       	rjmp	.-4      	; 0x364a <usb_puti+0x72>
+    364e:	ec b9       	out	0x0c, r30	; 12
+    3650:	4f 5f       	subi	r20, 0xFF	; 255
+    3652:	02 c0       	rjmp	.+4      	; 0x3658 <usb_puti+0x80>
+    3654:	ce 01       	movw	r24, r28
+    3656:	01 96       	adiw	r24, 0x01	; 1
+    3658:	46 30       	cpi	r20, 0x06	; 6
+    365a:	98 f3       	brcs	.-26     	; 0x3642 <usb_puti+0x6a>
+    365c:	80 e0       	ldi	r24, 0x00	; 0
+    365e:	90 e0       	ldi	r25, 0x00	; 0
+    3660:	26 96       	adiw	r28, 0x06	; 6
+    3662:	0f b6       	in	r0, 0x3f	; 63
+    3664:	f8 94       	cli
+    3666:	de bf       	out	0x3e, r29	; 62
+    3668:	0f be       	out	0x3f, r0	; 63
+    366a:	cd bf       	out	0x3d, r28	; 61
+    366c:	cf 91       	pop	r28
+    366e:	df 91       	pop	r29
+    3670:	1f 91       	pop	r17
+    3672:	0f 91       	pop	r16
+    3674:	08 95       	ret
 
-    wl_token_ring_register();
-    wl_token_ring_join();
-    370a:	23 ed       	ldi	r18, 0xD3	; 211
-    370c:	2d b9       	out	0x0d, r18	; 13
+00003676 <hex_digit>:
+    3676:	80 31       	cpi	r24, 0x10	; 16
+    3678:	10 f0       	brcs	.+4      	; 0x367e <hex_digit+0x8>
+    367a:	8f e3       	ldi	r24, 0x3F	; 63
+    367c:	08 95       	ret
+    367e:	e8 2f       	mov	r30, r24
+    3680:	f0 e0       	ldi	r31, 0x00	; 0
+    3682:	e1 5c       	subi	r30, 0xC1	; 193
+    3684:	fb 4f       	sbci	r31, 0xFB	; 251
+    3686:	80 81       	ld	r24, Z
+    3688:	08 95       	ret
 
-    370e:	21 e0       	ldi	r18, 0x01	; 1
-    3710:	2e b9       	out	0x0e, r18	; 14
-    usb_puts("initialized\r\n");
+0000368a <usb_puth16>:
+    368a:	9c 01       	movw	r18, r24
+    368c:	e3 2f       	mov	r30, r19
+    368e:	e2 95       	swap	r30
+    3690:	ef 70       	andi	r30, 0x0F	; 15
+    3692:	f0 e0       	ldi	r31, 0x00	; 0
+    3694:	e1 5c       	subi	r30, 0xC1	; 193
+    3696:	fb 4f       	sbci	r31, 0xFB	; 251
+    3698:	e0 81       	ld	r30, Z
+    369a:	5d 9b       	sbis	0x0b, 5	; 11
+    369c:	fe cf       	rjmp	.-4      	; 0x369a <usb_puth16+0x10>
+    369e:	ec b9       	out	0x0c, r30	; 12
+    36a0:	5d 9b       	sbis	0x0b, 5	; 11
+    36a2:	fe cf       	rjmp	.-4      	; 0x36a0 <usb_puth16+0x16>
+    36a4:	e3 2f       	mov	r30, r19
+    36a6:	f0 e0       	ldi	r31, 0x00	; 0
+    36a8:	ef 70       	andi	r30, 0x0F	; 15
+    36aa:	f0 70       	andi	r31, 0x00	; 0
+    36ac:	e1 5c       	subi	r30, 0xC1	; 193
+    36ae:	fb 4f       	sbci	r31, 0xFB	; 251
+    36b0:	80 81       	ld	r24, Z
+    36b2:	8c b9       	out	0x0c, r24	; 12
+    36b4:	5d 9b       	sbis	0x0b, 5	; 11
+    36b6:	fe cf       	rjmp	.-4      	; 0x36b4 <usb_puth16+0x2a>
+    36b8:	f9 01       	movw	r30, r18
+    36ba:	84 e0       	ldi	r24, 0x04	; 4
+    36bc:	f6 95       	lsr	r31
+    36be:	e7 95       	ror	r30
+    36c0:	8a 95       	dec	r24
+    36c2:	e1 f7       	brne	.-8      	; 0x36bc <usb_puth16+0x32>
+    36c4:	f0 e0       	ldi	r31, 0x00	; 0
+    36c6:	ef 70       	andi	r30, 0x0F	; 15
+    36c8:	f0 70       	andi	r31, 0x00	; 0
+    36ca:	e1 5c       	subi	r30, 0xC1	; 193
+    36cc:	fb 4f       	sbci	r31, 0xFB	; 251
+    36ce:	80 81       	ld	r24, Z
+    36d0:	8c b9       	out	0x0c, r24	; 12
+    36d2:	5d 9b       	sbis	0x0b, 5	; 11
+    36d4:	fe cf       	rjmp	.-4      	; 0x36d2 <usb_puth16+0x48>
+    36d6:	e2 2f       	mov	r30, r18
+    36d8:	f0 e0       	ldi	r31, 0x00	; 0
+    36da:	ef 70       	andi	r30, 0x0F	; 15
+    36dc:	f0 70       	andi	r31, 0x00	; 0
+    36de:	e1 5c       	subi	r30, 0xC1	; 193
+    36e0:	fb 4f       	sbci	r31, 0xFB	; 251
+    36e2:	80 81       	ld	r24, Z
+    36e4:	8c b9       	out	0x0c, r24	; 12
+    36e6:	08 95       	ret
 
-    /*char packet[] = { 0x0, 0x1, 0x0, 0x3, 0x4, 0x0, 0x6, 0x7, 0x8, 0x0, 0xa, 0xb, 0xc, 0xd, 0x0, 0xf, 0x0 };
-    3712:	27 b3       	in	r18, 0x17	; 23
-    3714:	27 60       	ori	r18, 0x07	; 7
-    3716:	27 bb       	out	0x17, r18	; 23
-    int length = 17;
-    3718:	bb 98       	cbi	0x17, 3	; 23
+000036e8 <usb_puth8>:
+    36e8:	e8 2f       	mov	r30, r24
+    36ea:	e2 95       	swap	r30
+    36ec:	ef 70       	andi	r30, 0x0F	; 15
+    36ee:	f0 e0       	ldi	r31, 0x00	; 0
+    36f0:	e1 5c       	subi	r30, 0xC1	; 193
+    36f2:	fb 4f       	sbci	r31, 0xFB	; 251
+    36f4:	e0 81       	ld	r30, Z
+    36f6:	5d 9b       	sbis	0x0b, 5	; 11
+    36f8:	fe cf       	rjmp	.-4      	; 0x36f6 <usb_puth8+0xe>
+    36fa:	ec b9       	out	0x0c, r30	; 12
+    36fc:	5d 9b       	sbis	0x0b, 5	; 11
+    36fe:	fe cf       	rjmp	.-4      	; 0x36fc <usb_puth8+0x14>
+    3700:	e8 2f       	mov	r30, r24
+    3702:	f0 e0       	ldi	r31, 0x00	; 0
+    3704:	ef 70       	andi	r30, 0x0F	; 15
+    3706:	f0 70       	andi	r31, 0x00	; 0
+    3708:	e1 5c       	subi	r30, 0xC1	; 193
+    370a:	fb 4f       	sbci	r31, 0xFB	; 251
+    370c:	80 81       	ld	r24, Z
+    370e:	8c b9       	out	0x0c, r24	; 12
+    3710:	08 95       	ret
 
-    int num = 0;*/
+00003712 <usb_puts_P>:
+    3712:	ef 92       	push	r14
+    3714:	ff 92       	push	r15
+    3716:	0f 93       	push	r16
+    3718:	1f 93       	push	r17
+    371a:	df 93       	push	r29
+    371c:	cf 93       	push	r28
+    371e:	0f 92       	push	r0
+    3720:	cd b7       	in	r28, 0x3d	; 61
+    3722:	de b7       	in	r29, 0x3e	; 62
+    3724:	8c 01       	movw	r16, r24
+    3726:	7e 01       	movw	r14, r28
+    3728:	08 94       	sec
+    372a:	e1 1c       	adc	r14, r1
+    372c:	f1 1c       	adc	r15, r1
+    372e:	05 c0       	rjmp	.+10     	; 0x373a <usb_puts_P+0x28>
+    3730:	5d 9b       	sbis	0x0b, 5	; 11
+    3732:	fe cf       	rjmp	.-4      	; 0x3730 <usb_puts_P+0x1e>
+    3734:	8c b9       	out	0x0c, r24	; 12
+    3736:	0f 5f       	subi	r16, 0xFF	; 255
+    3738:	1f 4f       	sbci	r17, 0xFF	; 255
+    373a:	c7 01       	movw	r24, r14
+    373c:	b8 01       	movw	r22, r16
+    373e:	41 e0       	ldi	r20, 0x01	; 1
+    3740:	50 e0       	ldi	r21, 0x00	; 0
+    3742:	0e 94 a1 2f 	call	0x5f42	; 0x5f42 <memcpy_P>
+    3746:	89 81       	ldd	r24, Y+1	; 0x01
+    3748:	88 23       	and	r24, r24
+    374a:	91 f7       	brne	.-28     	; 0x3730 <usb_puts_P+0x1e>
+    374c:	0f 90       	pop	r0
+    374e:	cf 91       	pop	r28
+    3750:	df 91       	pop	r29
+    3752:	1f 91       	pop	r17
+    3754:	0f 91       	pop	r16
+    3756:	ff 90       	pop	r15
+    3758:	ef 90       	pop	r14
+    375a:	08 95       	ret
 
-    371a:	c0 9a       	sbi	0x18, 0	; 24
-    while (1)
-    {
-	    wl_do();
-    371c:	90 93 bc 06 	sts	0x06BC, r25
-    3720:	80 93 bb 06 	sts	0x06BB, r24
-        /*packet[16] = num;
-    3724:	70 93 be 06 	sts	0x06BE, r23
-    3728:	60 93 bd 06 	sts	0x06BD, r22
-        wl_send_global_packet(SWARM_PACKET_GROUP_ID, 0, packet, length, 0);
-    372c:	10 92 ba 06 	sts	0x06BA, r1
-        usb_puts("sent ");
-        usb_puti(num);
-    3730:	08 95       	ret
-
-00003732 <spi_transfer>:
+0000375c <spi_init>:
     }
 }
+    375c:	23 ed       	ldi	r18, 0xD3	; 211
+    375e:	2d b9       	out	0x0d, r18	; 13
+    3760:	21 e0       	ldi	r18, 0x01	; 1
+    3762:	2e b9       	out	0x0e, r18	; 14
+    3764:	27 b3       	in	r18, 0x17	; 23
+    3766:	27 60       	ori	r18, 0x07	; 7
+    3768:	27 bb       	out	0x17, r18	; 23
+    376a:	bb 98       	cbi	0x17, 3	; 23
+    376c:	c0 9a       	sbi	0x18, 0	; 24
+    376e:	90 93 ac 06 	sts	0x06AC, r25
+    3772:	80 93 ab 06 	sts	0x06AB, r24
+    3776:	70 93 ae 06 	sts	0x06AE, r23
+    377a:	60 93 ad 06 	sts	0x06AD, r22
+    377e:	10 92 aa 06 	sts	0x06AA, r1
+    3782:	08 95       	ret
 
-/*static void swarm_handle_receive(char type, int wl_source, unsigned char* packet, int length)
-{
-    //wl_send_robot_to_robot_packet(SWARM_PACKET_GROUP_ID, type, packet, length, wl_source, 0);
-    3732:	80 93 ba 06 	sts	0x06BA, r24
+00003784 <spi_transfer>:
+    3784:	80 93 aa 06 	sts	0x06AA, r24
+    3788:	c0 98       	cbi	0x18, 0	; 24
+    378a:	8f ef       	ldi	r24, 0xFF	; 255
+    378c:	8f b9       	out	0x0f, r24	; 15
+    378e:	08 95       	ret
 
-    3736:	c0 98       	cbi	0x18, 0	; 24
-    char buf[40];
-    3738:	8f ef       	ldi	r24, 0xFF	; 255
-    373a:	8f b9       	out	0x0f, r24	; 15
-    int i;
-    373c:	08 95       	ret
+00003790 <__vector_17>:
+    3790:	1f 92       	push	r1
+    3792:	0f 92       	push	r0
+    3794:	0f b6       	in	r0, 0x3f	; 63
+    3796:	0f 92       	push	r0
+    3798:	0b b6       	in	r0, 0x3b	; 59
+    379a:	0f 92       	push	r0
+    379c:	11 24       	eor	r1, r1
+    379e:	2f 93       	push	r18
+    37a0:	3f 93       	push	r19
+    37a2:	4f 93       	push	r20
+    37a4:	5f 93       	push	r21
+    37a6:	6f 93       	push	r22
+    37a8:	7f 93       	push	r23
+    37aa:	8f 93       	push	r24
+    37ac:	9f 93       	push	r25
+    37ae:	af 93       	push	r26
+    37b0:	bf 93       	push	r27
+    37b2:	ef 93       	push	r30
+    37b4:	ff 93       	push	r31
+    37b6:	80 91 aa 06 	lds	r24, 0x06AA
+    37ba:	88 23       	and	r24, r24
+    37bc:	d1 f0       	breq	.+52     	; 0x37f2 <__vector_17+0x62>
+    37be:	8f b1       	in	r24, 0x0f	; 15
+    37c0:	e0 91 ab 06 	lds	r30, 0x06AB
+    37c4:	f0 91 ac 06 	lds	r31, 0x06AC
+    37c8:	09 95       	icall
+    37ca:	80 91 aa 06 	lds	r24, 0x06AA
+    37ce:	81 50       	subi	r24, 0x01	; 1
+    37d0:	80 93 aa 06 	sts	0x06AA, r24
+    37d4:	80 91 aa 06 	lds	r24, 0x06AA
+    37d8:	88 23       	and	r24, r24
+    37da:	49 f4       	brne	.+18     	; 0x37ee <__vector_17+0x5e>
+    37dc:	c0 9a       	sbi	0x18, 0	; 24
+    37de:	e0 91 ad 06 	lds	r30, 0x06AD
+    37e2:	f0 91 ae 06 	lds	r31, 0x06AE
+    37e6:	30 97       	sbiw	r30, 0x00	; 0
+    37e8:	21 f0       	breq	.+8      	; 0x37f2 <__vector_17+0x62>
+    37ea:	09 95       	icall
+    37ec:	02 c0       	rjmp	.+4      	; 0x37f2 <__vector_17+0x62>
+    37ee:	8f ef       	ldi	r24, 0xFF	; 255
+    37f0:	8f b9       	out	0x0f, r24	; 15
+    37f2:	ff 91       	pop	r31
+    37f4:	ef 91       	pop	r30
+    37f6:	bf 91       	pop	r27
+    37f8:	af 91       	pop	r26
+    37fa:	9f 91       	pop	r25
+    37fc:	8f 91       	pop	r24
+    37fe:	7f 91       	pop	r23
+    3800:	6f 91       	pop	r22
+    3802:	5f 91       	pop	r21
+    3804:	4f 91       	pop	r20
+    3806:	3f 91       	pop	r19
+    3808:	2f 91       	pop	r18
+    380a:	0f 90       	pop	r0
+    380c:	0b be       	out	0x3b, r0	; 59
+    380e:	0f 90       	pop	r0
+    3810:	0f be       	out	0x3f, r0	; 63
+    3812:	0f 90       	pop	r0
+    3814:	1f 90       	pop	r1
+    3816:	18 95       	reti
 
-0000373e <__vector_17>:
-    for (i = 0; i < length; i++) {
-        sprintf(buf, "%d: %d ", i, packet[i]);
-        usb_puts(buf);
-    373e:	1f 92       	push	r1
-    3740:	0f 92       	push	r0
-    3742:	0f b6       	in	r0, 0x3f	; 63
-    3744:	0f 92       	push	r0
-    3746:	0b b6       	in	r0, 0x3b	; 59
-    3748:	0f 92       	push	r0
-    374a:	11 24       	eor	r1, r1
-    374c:	2f 93       	push	r18
-    374e:	3f 93       	push	r19
-    3750:	4f 93       	push	r20
-    3752:	5f 93       	push	r21
-    3754:	6f 93       	push	r22
-    3756:	7f 93       	push	r23
-    3758:	8f 93       	push	r24
-    375a:	9f 93       	push	r25
-    375c:	af 93       	push	r26
-    375e:	bf 93       	push	r27
-    3760:	ef 93       	push	r30
-    3762:	ff 93       	push	r31
-    }
-    usb_puts("\r\n");
-}*/
-    3764:	80 91 ba 06 	lds	r24, 0x06BA
-    3768:	88 23       	and	r24, r24
-    376a:	d1 f0       	breq	.+52     	; 0x37a0 <__vector_17+0x62>
+00003818 <delay_ms>:
+    3818:	20 e4       	ldi	r18, 0x40	; 64
+    381a:	36 e0       	ldi	r19, 0x06	; 6
+    381c:	04 c0       	rjmp	.+8      	; 0x3826 <delay_ms+0xe>
+    381e:	f9 01       	movw	r30, r18
+    3820:	31 97       	sbiw	r30, 0x01	; 1
+    3822:	f1 f7       	brne	.-4      	; 0x3820 <delay_ms+0x8>
+    3824:	01 97       	sbiw	r24, 0x01	; 1
+    3826:	18 16       	cp	r1, r24
+    3828:	19 06       	cpc	r1, r25
+    382a:	cc f3       	brlt	.-14     	; 0x381e <delay_ms+0x6>
+    382c:	08 95       	ret
 
-    376c:	8f b1       	in	r24, 0x0f	; 15
-    376e:	e0 91 bb 06 	lds	r30, 0x06BB
-    3772:	f0 91 bc 06 	lds	r31, 0x06BC
-    3776:	09 95       	icall
-    3778:	80 91 ba 06 	lds	r24, 0x06BA
-    377c:	81 50       	subi	r24, 0x01	; 1
-    377e:	80 93 ba 06 	sts	0x06BA, r24
-    3782:	80 91 ba 06 	lds	r24, 0x06BA
-    3786:	88 23       	and	r24, r24
-    3788:	49 f4       	brne	.+18     	; 0x379c <__vector_17+0x5e>
-    378a:	c0 9a       	sbi	0x18, 0	; 24
-    378c:	e0 91 bd 06 	lds	r30, 0x06BD
-    3790:	f0 91 be 06 	lds	r31, 0x06BE
-    3794:	30 97       	sbiw	r30, 0x00	; 0
-    3796:	21 f0       	breq	.+8      	; 0x37a0 <__vector_17+0x62>
-    3798:	09 95       	icall
-    379a:	02 c0       	rjmp	.+4      	; 0x37a0 <__vector_17+0x62>
-    379c:	8f ef       	ldi	r24, 0xFF	; 255
-    379e:	8f b9       	out	0x0f, r24	; 15
-    37a0:	ff 91       	pop	r31
-    37a2:	ef 91       	pop	r30
-    37a4:	bf 91       	pop	r27
-    37a6:	af 91       	pop	r26
-    37a8:	9f 91       	pop	r25
-    37aa:	8f 91       	pop	r24
-    37ac:	7f 91       	pop	r23
-    37ae:	6f 91       	pop	r22
-    37b0:	5f 91       	pop	r21
-    37b2:	4f 91       	pop	r20
-    37b4:	3f 91       	pop	r19
-    37b6:	2f 91       	pop	r18
-    37b8:	0f 90       	pop	r0
-    37ba:	0b be       	out	0x3b, r0	; 59
-    37bc:	0f 90       	pop	r0
-    37be:	0f be       	out	0x3f, r0	; 63
-    37c0:	0f 90       	pop	r0
-    37c2:	1f 90       	pop	r1
-    37c4:	18 95       	reti
+0000382e <rtc_init>:
+    382e:	10 92 89 00 	sts	0x0089, r1
+    3832:	10 92 88 00 	sts	0x0088, r1
+    3836:	ea e8       	ldi	r30, 0x8A	; 138
+    3838:	f0 e0       	ldi	r31, 0x00	; 0
+    383a:	20 81       	ld	r18, Z
+    383c:	28 60       	ori	r18, 0x08	; 8
+    383e:	20 83       	st	Z, r18
+    3840:	20 81       	ld	r18, Z
+    3842:	22 60       	ori	r18, 0x02	; 2
+    3844:	20 83       	st	Z, r18
+    3846:	24 e2       	ldi	r18, 0x24	; 36
+    3848:	34 ef       	ldi	r19, 0xF4	; 244
+    384a:	30 93 87 00 	sts	0x0087, r19
+    384e:	20 93 86 00 	sts	0x0086, r18
+    3852:	ed e7       	ldi	r30, 0x7D	; 125
+    3854:	f0 e0       	ldi	r31, 0x00	; 0
+    3856:	20 81       	ld	r18, Z
+    3858:	20 61       	ori	r18, 0x10	; 16
+    385a:	20 83       	st	Z, r18
+    385c:	70 93 b4 06 	sts	0x06B4, r23
+    3860:	60 93 b3 06 	sts	0x06B3, r22
+    3864:	90 93 57 04 	sts	0x0457, r25
+    3868:	80 93 56 04 	sts	0x0456, r24
+    386c:	08 95       	ret
 
-000037c6 <delay_ms>:
-    37c6:	20 e4       	ldi	r18, 0x40	; 64
-    37c8:	36 e0       	ldi	r19, 0x06	; 6
-    37ca:	04 c0       	rjmp	.+8      	; 0x37d4 <delay_ms+0xe>
-    37cc:	f9 01       	movw	r30, r18
-    37ce:	31 97       	sbiw	r30, 0x01	; 1
-    37d0:	f1 f7       	brne	.-4      	; 0x37ce <delay_ms+0x8>
-    37d2:	01 97       	sbiw	r24, 0x01	; 1
-    37d4:	18 16       	cp	r1, r24
-    37d6:	19 06       	cpc	r1, r25
-    37d8:	cc f3       	brlt	.-14     	; 0x37cc <delay_ms+0x6>
-    37da:	08 95       	ret
+0000386e <rtc_get>:
+    386e:	20 91 b1 06 	lds	r18, 0x06B1
+    3872:	30 91 b2 06 	lds	r19, 0x06B2
+    3876:	c9 01       	movw	r24, r18
+    3878:	08 95       	ret
 
-000037dc <rtc_init>:
-    37dc:	10 92 89 00 	sts	0x0089, r1
-    37e0:	10 92 88 00 	sts	0x0088, r1
-    37e4:	ea e8       	ldi	r30, 0x8A	; 138
-    37e6:	f0 e0       	ldi	r31, 0x00	; 0
-    37e8:	20 81       	ld	r18, Z
-    37ea:	28 60       	ori	r18, 0x08	; 8
-    37ec:	20 83       	st	Z, r18
-    37ee:	20 81       	ld	r18, Z
-    37f0:	22 60       	ori	r18, 0x02	; 2
-    37f2:	20 83       	st	Z, r18
-    37f4:	24 e2       	ldi	r18, 0x24	; 36
-    37f6:	34 ef       	ldi	r19, 0xF4	; 244
-    37f8:	30 93 87 00 	sts	0x0087, r19
-    37fc:	20 93 86 00 	sts	0x0086, r18
-    3800:	ed e7       	ldi	r30, 0x7D	; 125
-    3802:	f0 e0       	ldi	r31, 0x00	; 0
-    3804:	20 81       	ld	r18, Z
-    3806:	20 61       	ori	r18, 0x10	; 16
-    3808:	20 83       	st	Z, r18
-    380a:	70 93 c4 06 	sts	0x06C4, r23
-    380e:	60 93 c3 06 	sts	0x06C3, r22
-    3812:	90 93 66 04 	sts	0x0466, r25
-    3816:	80 93 65 04 	sts	0x0465, r24
-    381a:	08 95       	ret
+0000387a <rtc_reset>:
+    387a:	10 92 b2 06 	sts	0x06B2, r1
+    387e:	10 92 b1 06 	sts	0x06B1, r1
+    3882:	08 95       	ret
 
-0000381c <rtc_get>:
-    381c:	20 91 c1 06 	lds	r18, 0x06C1
-    3820:	30 91 c2 06 	lds	r19, 0x06C2
-    3824:	c9 01       	movw	r24, r18
-    3826:	08 95       	ret
+00003884 <__vector_26>:
+    3884:	1f 92       	push	r1
+    3886:	0f 92       	push	r0
+    3888:	0f b6       	in	r0, 0x3f	; 63
+    388a:	0f 92       	push	r0
+    388c:	0b b6       	in	r0, 0x3b	; 59
+    388e:	0f 92       	push	r0
+    3890:	11 24       	eor	r1, r1
+    3892:	2f 93       	push	r18
+    3894:	3f 93       	push	r19
+    3896:	4f 93       	push	r20
+    3898:	5f 93       	push	r21
+    389a:	6f 93       	push	r22
+    389c:	7f 93       	push	r23
+    389e:	8f 93       	push	r24
+    38a0:	9f 93       	push	r25
+    38a2:	af 93       	push	r26
+    38a4:	bf 93       	push	r27
+    38a6:	ef 93       	push	r30
+    38a8:	ff 93       	push	r31
+    38aa:	20 91 af 06 	lds	r18, 0x06AF
+    38ae:	30 91 b0 06 	lds	r19, 0x06B0
+    38b2:	80 91 56 04 	lds	r24, 0x0456
+    38b6:	90 91 57 04 	lds	r25, 0x0457
+    38ba:	28 17       	cp	r18, r24
+    38bc:	39 07       	cpc	r19, r25
+    38be:	a1 f4       	brne	.+40     	; 0x38e8 <__vector_26+0x64>
+    38c0:	80 91 b1 06 	lds	r24, 0x06B1
+    38c4:	90 91 b2 06 	lds	r25, 0x06B2
+    38c8:	01 96       	adiw	r24, 0x01	; 1
+    38ca:	90 93 b2 06 	sts	0x06B2, r25
+    38ce:	80 93 b1 06 	sts	0x06B1, r24
+    38d2:	e0 91 b3 06 	lds	r30, 0x06B3
+    38d6:	f0 91 b4 06 	lds	r31, 0x06B4
+    38da:	30 97       	sbiw	r30, 0x00	; 0
+    38dc:	09 f0       	breq	.+2      	; 0x38e0 <__vector_26+0x5c>
+    38de:	09 95       	icall
+    38e0:	10 92 b0 06 	sts	0x06B0, r1
+    38e4:	10 92 af 06 	sts	0x06AF, r1
+    38e8:	80 91 af 06 	lds	r24, 0x06AF
+    38ec:	90 91 b0 06 	lds	r25, 0x06B0
+    38f0:	01 96       	adiw	r24, 0x01	; 1
+    38f2:	90 93 b0 06 	sts	0x06B0, r25
+    38f6:	80 93 af 06 	sts	0x06AF, r24
+    38fa:	ff 91       	pop	r31
+    38fc:	ef 91       	pop	r30
+    38fe:	bf 91       	pop	r27
+    3900:	af 91       	pop	r26
+    3902:	9f 91       	pop	r25
+    3904:	8f 91       	pop	r24
+    3906:	7f 91       	pop	r23
+    3908:	6f 91       	pop	r22
+    390a:	5f 91       	pop	r21
+    390c:	4f 91       	pop	r20
+    390e:	3f 91       	pop	r19
+    3910:	2f 91       	pop	r18
+    3912:	0f 90       	pop	r0
+    3914:	0b be       	out	0x3b, r0	; 59
+    3916:	0f 90       	pop	r0
+    3918:	0f be       	out	0x3f, r0	; 63
+    391a:	0f 90       	pop	r0
+    391c:	1f 90       	pop	r1
+    391e:	18 95       	reti
 
-00003828 <rtc_reset>:
-    3828:	10 92 c2 06 	sts	0x06C2, r1
-    382c:	10 92 c1 06 	sts	0x06C1, r1
-    3830:	08 95       	ret
-
-00003832 <__vector_26>:
-    3832:	1f 92       	push	r1
-    3834:	0f 92       	push	r0
-    3836:	0f b6       	in	r0, 0x3f	; 63
-    3838:	0f 92       	push	r0
-    383a:	0b b6       	in	r0, 0x3b	; 59
-    383c:	0f 92       	push	r0
-    383e:	11 24       	eor	r1, r1
-    3840:	2f 93       	push	r18
-    3842:	3f 93       	push	r19
-    3844:	4f 93       	push	r20
-    3846:	5f 93       	push	r21
-    3848:	6f 93       	push	r22
-    384a:	7f 93       	push	r23
-    384c:	8f 93       	push	r24
-    384e:	9f 93       	push	r25
-    3850:	af 93       	push	r26
-    3852:	bf 93       	push	r27
-    3854:	ef 93       	push	r30
-    3856:	ff 93       	push	r31
-    3858:	20 91 bf 06 	lds	r18, 0x06BF
-    385c:	30 91 c0 06 	lds	r19, 0x06C0
-    3860:	80 91 65 04 	lds	r24, 0x0465
-    3864:	90 91 66 04 	lds	r25, 0x0466
-    3868:	28 17       	cp	r18, r24
-    386a:	39 07       	cpc	r19, r25
-    386c:	a1 f4       	brne	.+40     	; 0x3896 <__vector_26+0x64>
-    386e:	80 91 c1 06 	lds	r24, 0x06C1
-    3872:	90 91 c2 06 	lds	r25, 0x06C2
-    3876:	01 96       	adiw	r24, 0x01	; 1
-    3878:	90 93 c2 06 	sts	0x06C2, r25
-    387c:	80 93 c1 06 	sts	0x06C1, r24
-    3880:	e0 91 c3 06 	lds	r30, 0x06C3
-    3884:	f0 91 c4 06 	lds	r31, 0x06C4
-    3888:	30 97       	sbiw	r30, 0x00	; 0
-    388a:	09 f0       	breq	.+2      	; 0x388e <__vector_26+0x5c>
-    388c:	09 95       	icall
-    388e:	10 92 c0 06 	sts	0x06C0, r1
-    3892:	10 92 bf 06 	sts	0x06BF, r1
-    3896:	80 91 bf 06 	lds	r24, 0x06BF
-    389a:	90 91 c0 06 	lds	r25, 0x06C0
-    389e:	01 96       	adiw	r24, 0x01	; 1
-    38a0:	90 93 c0 06 	sts	0x06C0, r25
-    38a4:	80 93 bf 06 	sts	0x06BF, r24
-    38a8:	ff 91       	pop	r31
-    38aa:	ef 91       	pop	r30
-    38ac:	bf 91       	pop	r27
-    38ae:	af 91       	pop	r26
-    38b0:	9f 91       	pop	r25
-    38b2:	8f 91       	pop	r24
-    38b4:	7f 91       	pop	r23
-    38b6:	6f 91       	pop	r22
-    38b8:	5f 91       	pop	r21
-    38ba:	4f 91       	pop	r20
-    38bc:	3f 91       	pop	r19
-    38be:	2f 91       	pop	r18
-    38c0:	0f 90       	pop	r0
-    38c2:	0b be       	out	0x3b, r0	; 59
-    38c4:	0f 90       	pop	r0
-    38c6:	0f be       	out	0x3f, r0	; 63
-    38c8:	0f 90       	pop	r0
-    38ca:	1f 90       	pop	r1
-    38cc:	18 95       	reti
-
-000038ce <analog_init>:
-    38ce:	ac 01       	movw	r20, r24
-    38d0:	20 e0       	ldi	r18, 0x00	; 0
-    38d2:	30 e0       	ldi	r19, 0x00	; 0
-    38d4:	f9 01       	movw	r30, r18
-    38d6:	ee 0f       	add	r30, r30
-    38d8:	ff 1f       	adc	r31, r31
-    38da:	e2 0f       	add	r30, r18
-    38dc:	f3 1f       	adc	r31, r19
-    38de:	e3 5a       	subi	r30, 0xA3	; 163
-    38e0:	f5 4f       	sbci	r31, 0xF5	; 245
-    38e2:	12 82       	std	Z+2, r1	; 0x02
-    38e4:	11 82       	std	Z+1, r1	; 0x01
-    38e6:	10 82       	st	Z, r1
-    38e8:	2f 5f       	subi	r18, 0xFF	; 255
-    38ea:	3f 4f       	sbci	r19, 0xFF	; 255
-    38ec:	2b 30       	cpi	r18, 0x0B	; 11
-    38ee:	31 05       	cpc	r19, r1
-    38f0:	89 f7       	brne	.-30     	; 0x38d4 <analog_init+0x6>
-    38f2:	17 b8       	out	0x07, r1	; 7
-    38f4:	87 b1       	in	r24, 0x07	; 7
-    38f6:	81 66       	ori	r24, 0x61	; 97
-    38f8:	87 b9       	out	0x07, r24	; 7
-    38fa:	16 b8       	out	0x06, r1	; 6
-    38fc:	86 b1       	in	r24, 0x06	; 6
-    38fe:	87 68       	ori	r24, 0x87	; 135
-    3900:	86 b9       	out	0x06, r24	; 6
-    3902:	80 91 64 00 	lds	r24, 0x0064
-    3906:	8c 61       	ori	r24, 0x1C	; 28
-    3908:	80 93 64 00 	sts	0x0064, r24
-    390c:	80 91 65 00 	lds	r24, 0x0065
-    3910:	83 7e       	andi	r24, 0xE3	; 227
-    3912:	80 93 65 00 	sts	0x0065, r24
-    3916:	21 e0       	ldi	r18, 0x01	; 1
-    3918:	30 e0       	ldi	r19, 0x00	; 0
-    391a:	30 93 ca 06 	sts	0x06CA, r19
-    391e:	20 93 c9 06 	sts	0x06C9, r18
-    3922:	45 2b       	or	r20, r21
-    3924:	61 f0       	breq	.+24     	; 0x393e <analog_init+0x70>
-    3926:	80 91 c5 06 	lds	r24, 0x06C5
-    392a:	90 91 c6 06 	lds	r25, 0x06C6
-    392e:	01 97       	sbiw	r24, 0x01	; 1
-    3930:	31 f0       	breq	.+12     	; 0x393e <analog_init+0x70>
-    3932:	33 9a       	sbi	0x06, 3	; 6
-    3934:	36 9a       	sbi	0x06, 6	; 6
-    3936:	30 93 c6 06 	sts	0x06C6, r19
-    393a:	20 93 c5 06 	sts	0x06C5, r18
-    393e:	08 95       	ret
-
-00003940 <analog8>:
-    3940:	00 97       	sbiw	r24, 0x00	; 0
-    3942:	19 f4       	brne	.+6      	; 0x394a <analog8+0xa>
-    3944:	20 e0       	ldi	r18, 0x00	; 0
-    3946:	30 e0       	ldi	r19, 0x00	; 0
-    3948:	0b c0       	rjmp	.+22     	; 0x3960 <analog8+0x20>
-    394a:	01 97       	sbiw	r24, 0x01	; 1
-    394c:	fc 01       	movw	r30, r24
-    394e:	ee 0f       	add	r30, r30
-    3950:	ff 1f       	adc	r31, r31
-    3952:	e8 0f       	add	r30, r24
-    3954:	f9 1f       	adc	r31, r25
-    3956:	e3 5a       	subi	r30, 0xA3	; 163
-    3958:	f5 4f       	sbci	r31, 0xF5	; 245
-    395a:	80 81       	ld	r24, Z
-    395c:	28 2f       	mov	r18, r24
-    395e:	30 e0       	ldi	r19, 0x00	; 0
-    3960:	c9 01       	movw	r24, r18
-    3962:	08 95       	ret
-
-00003964 <analog10>:
-    3964:	00 97       	sbiw	r24, 0x00	; 0
-    3966:	19 f4       	brne	.+6      	; 0x396e <analog10+0xa>
-    3968:	20 e0       	ldi	r18, 0x00	; 0
+00003920 <analog_init>:
+    3920:	ac 01       	movw	r20, r24
+    3922:	20 e0       	ldi	r18, 0x00	; 0
+    3924:	30 e0       	ldi	r19, 0x00	; 0
+    3926:	f9 01       	movw	r30, r18
+    3928:	ee 0f       	add	r30, r30
+    392a:	ff 1f       	adc	r31, r31
+    392c:	e2 0f       	add	r30, r18
+    392e:	f3 1f       	adc	r31, r19
+    3930:	e7 5b       	subi	r30, 0xB7	; 183
+    3932:	f5 4f       	sbci	r31, 0xF5	; 245
+    3934:	12 82       	std	Z+2, r1	; 0x02
+    3936:	11 82       	std	Z+1, r1	; 0x01
+    3938:	10 82       	st	Z, r1
+    393a:	2f 5f       	subi	r18, 0xFF	; 255
+    393c:	3f 4f       	sbci	r19, 0xFF	; 255
+    393e:	2b 30       	cpi	r18, 0x0B	; 11
+    3940:	31 05       	cpc	r19, r1
+    3942:	89 f7       	brne	.-30     	; 0x3926 <analog_init+0x6>
+    3944:	17 b8       	out	0x07, r1	; 7
+    3946:	87 b1       	in	r24, 0x07	; 7
+    3948:	81 66       	ori	r24, 0x61	; 97
+    394a:	87 b9       	out	0x07, r24	; 7
+    394c:	16 b8       	out	0x06, r1	; 6
+    394e:	86 b1       	in	r24, 0x06	; 6
+    3950:	87 68       	ori	r24, 0x87	; 135
+    3952:	86 b9       	out	0x06, r24	; 6
+    3954:	80 91 64 00 	lds	r24, 0x0064
+    3958:	8c 61       	ori	r24, 0x1C	; 28
+    395a:	80 93 64 00 	sts	0x0064, r24
+    395e:	80 91 65 00 	lds	r24, 0x0065
+    3962:	83 7e       	andi	r24, 0xE3	; 227
+    3964:	80 93 65 00 	sts	0x0065, r24
+    3968:	21 e0       	ldi	r18, 0x01	; 1
     396a:	30 e0       	ldi	r19, 0x00	; 0
-    396c:	0a c0       	rjmp	.+20     	; 0x3982 <analog10+0x1e>
-    396e:	01 97       	sbiw	r24, 0x01	; 1
-    3970:	fc 01       	movw	r30, r24
-    3972:	ee 0f       	add	r30, r30
-    3974:	ff 1f       	adc	r31, r31
-    3976:	e8 0f       	add	r30, r24
-    3978:	f9 1f       	adc	r31, r25
-    397a:	e3 5a       	subi	r30, 0xA3	; 163
-    397c:	f5 4f       	sbci	r31, 0xF5	; 245
-    397e:	21 81       	ldd	r18, Z+1	; 0x01
-    3980:	32 81       	ldd	r19, Z+2	; 0x02
-    3982:	c9 01       	movw	r24, r18
-    3984:	08 95       	ret
+    396c:	30 93 ba 06 	sts	0x06BA, r19
+    3970:	20 93 b9 06 	sts	0x06B9, r18
+    3974:	45 2b       	or	r20, r21
+    3976:	61 f0       	breq	.+24     	; 0x3990 <analog_init+0x70>
+    3978:	80 91 b5 06 	lds	r24, 0x06B5
+    397c:	90 91 b6 06 	lds	r25, 0x06B6
+    3980:	01 97       	sbiw	r24, 0x01	; 1
+    3982:	31 f0       	breq	.+12     	; 0x3990 <analog_init+0x70>
+    3984:	33 9a       	sbi	0x06, 3	; 6
+    3986:	36 9a       	sbi	0x06, 6	; 6
+    3988:	30 93 b6 06 	sts	0x06B6, r19
+    398c:	20 93 b5 06 	sts	0x06B5, r18
+    3990:	08 95       	ret
 
-00003986 <analog_start_loop>:
-    3986:	80 91 c5 06 	lds	r24, 0x06C5
-    398a:	90 91 c6 06 	lds	r25, 0x06C6
-    398e:	01 97       	sbiw	r24, 0x01	; 1
-    3990:	41 f0       	breq	.+16     	; 0x39a2 <analog_start_loop+0x1c>
-    3992:	33 9a       	sbi	0x06, 3	; 6
-    3994:	36 9a       	sbi	0x06, 6	; 6
-    3996:	81 e0       	ldi	r24, 0x01	; 1
-    3998:	90 e0       	ldi	r25, 0x00	; 0
-    399a:	90 93 c6 06 	sts	0x06C6, r25
-    399e:	80 93 c5 06 	sts	0x06C5, r24
-    39a2:	08 95       	ret
+00003992 <analog8>:
+    3992:	00 97       	sbiw	r24, 0x00	; 0
+    3994:	19 f4       	brne	.+6      	; 0x399c <analog8+0xa>
+    3996:	20 e0       	ldi	r18, 0x00	; 0
+    3998:	30 e0       	ldi	r19, 0x00	; 0
+    399a:	0b c0       	rjmp	.+22     	; 0x39b2 <analog8+0x20>
+    399c:	01 97       	sbiw	r24, 0x01	; 1
+    399e:	fc 01       	movw	r30, r24
+    39a0:	ee 0f       	add	r30, r30
+    39a2:	ff 1f       	adc	r31, r31
+    39a4:	e8 0f       	add	r30, r24
+    39a6:	f9 1f       	adc	r31, r25
+    39a8:	e7 5b       	subi	r30, 0xB7	; 183
+    39aa:	f5 4f       	sbci	r31, 0xF5	; 245
+    39ac:	80 81       	ld	r24, Z
+    39ae:	28 2f       	mov	r18, r24
+    39b0:	30 e0       	ldi	r19, 0x00	; 0
+    39b2:	c9 01       	movw	r24, r18
+    39b4:	08 95       	ret
 
-000039a4 <analog_stop_loop>:
-    39a4:	81 e0       	ldi	r24, 0x01	; 1
-    39a6:	90 e0       	ldi	r25, 0x00	; 0
-    39a8:	90 93 c8 06 	sts	0x06C8, r25
-    39ac:	80 93 c7 06 	sts	0x06C7, r24
-    39b0:	08 95       	ret
+000039b6 <analog10>:
+    39b6:	00 97       	sbiw	r24, 0x00	; 0
+    39b8:	19 f4       	brne	.+6      	; 0x39c0 <analog10+0xa>
+    39ba:	20 e0       	ldi	r18, 0x00	; 0
+    39bc:	30 e0       	ldi	r19, 0x00	; 0
+    39be:	0a c0       	rjmp	.+20     	; 0x39d4 <analog10+0x1e>
+    39c0:	01 97       	sbiw	r24, 0x01	; 1
+    39c2:	fc 01       	movw	r30, r24
+    39c4:	ee 0f       	add	r30, r30
+    39c6:	ff 1f       	adc	r31, r31
+    39c8:	e8 0f       	add	r30, r24
+    39ca:	f9 1f       	adc	r31, r25
+    39cc:	e7 5b       	subi	r30, 0xB7	; 183
+    39ce:	f5 4f       	sbci	r31, 0xF5	; 245
+    39d0:	21 81       	ldd	r18, Z+1	; 0x01
+    39d2:	32 81       	ldd	r19, Z+2	; 0x02
+    39d4:	c9 01       	movw	r24, r18
+    39d6:	08 95       	ret
 
-000039b2 <analog_loop_status>:
-    39b2:	20 91 c5 06 	lds	r18, 0x06C5
-    39b6:	30 91 c6 06 	lds	r19, 0x06C6
-    39ba:	c9 01       	movw	r24, r18
-    39bc:	08 95       	ret
+000039d8 <analog_start_loop>:
+    39d8:	80 91 b5 06 	lds	r24, 0x06B5
+    39dc:	90 91 b6 06 	lds	r25, 0x06B6
+    39e0:	01 97       	sbiw	r24, 0x01	; 1
+    39e2:	41 f0       	breq	.+16     	; 0x39f4 <analog_start_loop+0x1c>
+    39e4:	33 9a       	sbi	0x06, 3	; 6
+    39e6:	36 9a       	sbi	0x06, 6	; 6
+    39e8:	81 e0       	ldi	r24, 0x01	; 1
+    39ea:	90 e0       	ldi	r25, 0x00	; 0
+    39ec:	90 93 b6 06 	sts	0x06B6, r25
+    39f0:	80 93 b5 06 	sts	0x06B5, r24
+    39f4:	08 95       	ret
 
-000039be <analog_get8>:
-    39be:	9c 01       	movw	r18, r24
-    39c0:	36 99       	sbic	0x06, 6	; 6
-    39c2:	fe cf       	rjmp	.-4      	; 0x39c0 <analog_get8+0x2>
-    39c4:	27 30       	cpi	r18, 0x07	; 7
-    39c6:	31 05       	cpc	r19, r1
-    39c8:	24 f4       	brge	.+8      	; 0x39d2 <analog_get8+0x14>
-    39ca:	82 2f       	mov	r24, r18
-    39cc:	80 5a       	subi	r24, 0xA0	; 160
-    39ce:	87 b9       	out	0x07, r24	; 7
-    39d0:	14 c0       	rjmp	.+40     	; 0x39fa <analog_get8+0x3c>
-    39d2:	87 e6       	ldi	r24, 0x67	; 103
-    39d4:	87 b9       	out	0x07, r24	; 7
-    39d6:	c9 01       	movw	r24, r18
-    39d8:	08 97       	sbiw	r24, 0x08	; 8
-    39da:	20 91 65 00 	lds	r18, 0x0065
-    39de:	38 2f       	mov	r19, r24
-    39e0:	34 70       	andi	r19, 0x04	; 4
-    39e2:	23 7e       	andi	r18, 0xE3	; 227
-    39e4:	32 2b       	or	r19, r18
-    39e6:	83 70       	andi	r24, 0x03	; 3
-    39e8:	90 70       	andi	r25, 0x00	; 0
-    39ea:	43 e0       	ldi	r20, 0x03	; 3
-    39ec:	88 0f       	add	r24, r24
-    39ee:	99 1f       	adc	r25, r25
-    39f0:	4a 95       	dec	r20
-    39f2:	e1 f7       	brne	.-8      	; 0x39ec <analog_get8+0x2e>
-    39f4:	38 2b       	or	r19, r24
-    39f6:	30 93 65 00 	sts	0x0065, r19
-    39fa:	36 9a       	sbi	0x06, 6	; 6
-    39fc:	36 99       	sbic	0x06, 6	; 6
-    39fe:	fe cf       	rjmp	.-4      	; 0x39fc <analog_get8+0x3e>
-    3a00:	85 b1       	in	r24, 0x05	; 5
-    3a02:	90 e0       	ldi	r25, 0x00	; 0
-    3a04:	08 95       	ret
+000039f6 <analog_stop_loop>:
+    39f6:	81 e0       	ldi	r24, 0x01	; 1
+    39f8:	90 e0       	ldi	r25, 0x00	; 0
+    39fa:	90 93 b8 06 	sts	0x06B8, r25
+    39fe:	80 93 b7 06 	sts	0x06B7, r24
+    3a02:	08 95       	ret
 
-00003a06 <analog_get10>:
-    3a06:	9c 01       	movw	r18, r24
-    3a08:	36 99       	sbic	0x06, 6	; 6
-    3a0a:	fe cf       	rjmp	.-4      	; 0x3a08 <analog_get10+0x2>
-    3a0c:	27 30       	cpi	r18, 0x07	; 7
-    3a0e:	31 05       	cpc	r19, r1
-    3a10:	24 f4       	brge	.+8      	; 0x3a1a <analog_get10+0x14>
-    3a12:	82 2f       	mov	r24, r18
-    3a14:	80 5a       	subi	r24, 0xA0	; 160
-    3a16:	87 b9       	out	0x07, r24	; 7
-    3a18:	14 c0       	rjmp	.+40     	; 0x3a42 <analog_get10+0x3c>
-    3a1a:	87 e6       	ldi	r24, 0x67	; 103
-    3a1c:	87 b9       	out	0x07, r24	; 7
-    3a1e:	c9 01       	movw	r24, r18
-    3a20:	08 97       	sbiw	r24, 0x08	; 8
-    3a22:	20 91 65 00 	lds	r18, 0x0065
-    3a26:	38 2f       	mov	r19, r24
-    3a28:	34 70       	andi	r19, 0x04	; 4
-    3a2a:	23 7e       	andi	r18, 0xE3	; 227
-    3a2c:	32 2b       	or	r19, r18
-    3a2e:	83 70       	andi	r24, 0x03	; 3
-    3a30:	90 70       	andi	r25, 0x00	; 0
-    3a32:	73 e0       	ldi	r23, 0x03	; 3
-    3a34:	88 0f       	add	r24, r24
-    3a36:	99 1f       	adc	r25, r25
-    3a38:	7a 95       	dec	r23
-    3a3a:	e1 f7       	brne	.-8      	; 0x3a34 <analog_get10+0x2e>
-    3a3c:	38 2b       	or	r19, r24
-    3a3e:	30 93 65 00 	sts	0x0065, r19
-    3a42:	36 9a       	sbi	0x06, 6	; 6
-    3a44:	36 99       	sbic	0x06, 6	; 6
-    3a46:	fe cf       	rjmp	.-4      	; 0x3a44 <analog_get10+0x3e>
-    3a48:	24 b1       	in	r18, 0x04	; 4
-    3a4a:	85 b1       	in	r24, 0x05	; 5
-    3a4c:	30 e0       	ldi	r19, 0x00	; 0
-    3a4e:	66 e0       	ldi	r22, 0x06	; 6
-    3a50:	35 95       	asr	r19
-    3a52:	27 95       	ror	r18
-    3a54:	6a 95       	dec	r22
-    3a56:	e1 f7       	brne	.-8      	; 0x3a50 <analog_get10+0x4a>
-    3a58:	90 e0       	ldi	r25, 0x00	; 0
-    3a5a:	88 0f       	add	r24, r24
-    3a5c:	99 1f       	adc	r25, r25
-    3a5e:	88 0f       	add	r24, r24
-    3a60:	99 1f       	adc	r25, r25
-    3a62:	28 2b       	or	r18, r24
-    3a64:	39 2b       	or	r19, r25
-    3a66:	c9 01       	movw	r24, r18
-    3a68:	08 95       	ret
+00003a04 <analog_loop_status>:
+    3a04:	20 91 b5 06 	lds	r18, 0x06B5
+    3a08:	30 91 b6 06 	lds	r19, 0x06B6
+    3a0c:	c9 01       	movw	r24, r18
+    3a0e:	08 95       	ret
 
-00003a6a <wheel>:
-    3a6a:	80 91 78 0a 	lds	r24, 0x0A78
-    3a6e:	90 e0       	ldi	r25, 0x00	; 0
-    3a70:	08 95       	ret
+00003a10 <analog_get8>:
+    3a10:	9c 01       	movw	r18, r24
+    3a12:	36 99       	sbic	0x06, 6	; 6
+    3a14:	fe cf       	rjmp	.-4      	; 0x3a12 <analog_get8+0x2>
+    3a16:	27 30       	cpi	r18, 0x07	; 7
+    3a18:	31 05       	cpc	r19, r1
+    3a1a:	24 f4       	brge	.+8      	; 0x3a24 <analog_get8+0x14>
+    3a1c:	82 2f       	mov	r24, r18
+    3a1e:	80 5a       	subi	r24, 0xA0	; 160
+    3a20:	87 b9       	out	0x07, r24	; 7
+    3a22:	14 c0       	rjmp	.+40     	; 0x3a4c <analog_get8+0x3c>
+    3a24:	87 e6       	ldi	r24, 0x67	; 103
+    3a26:	87 b9       	out	0x07, r24	; 7
+    3a28:	c9 01       	movw	r24, r18
+    3a2a:	08 97       	sbiw	r24, 0x08	; 8
+    3a2c:	20 91 65 00 	lds	r18, 0x0065
+    3a30:	38 2f       	mov	r19, r24
+    3a32:	34 70       	andi	r19, 0x04	; 4
+    3a34:	23 7e       	andi	r18, 0xE3	; 227
+    3a36:	32 2b       	or	r19, r18
+    3a38:	83 70       	andi	r24, 0x03	; 3
+    3a3a:	90 70       	andi	r25, 0x00	; 0
+    3a3c:	43 e0       	ldi	r20, 0x03	; 3
+    3a3e:	88 0f       	add	r24, r24
+    3a40:	99 1f       	adc	r25, r25
+    3a42:	4a 95       	dec	r20
+    3a44:	e1 f7       	brne	.-8      	; 0x3a3e <analog_get8+0x2e>
+    3a46:	38 2b       	or	r19, r24
+    3a48:	30 93 65 00 	sts	0x0065, r19
+    3a4c:	36 9a       	sbi	0x06, 6	; 6
+    3a4e:	36 99       	sbic	0x06, 6	; 6
+    3a50:	fe cf       	rjmp	.-4      	; 0x3a4e <analog_get8+0x3e>
+    3a52:	85 b1       	in	r24, 0x05	; 5
+    3a54:	90 e0       	ldi	r25, 0x00	; 0
+    3a56:	08 95       	ret
 
-00003a72 <set_adc_mux>:
-    3a72:	e5 e6       	ldi	r30, 0x65	; 101
-    3a74:	f0 e0       	ldi	r31, 0x00	; 0
-    3a76:	20 81       	ld	r18, Z
+00003a58 <analog_get10>:
+    3a58:	9c 01       	movw	r18, r24
+    3a5a:	36 99       	sbic	0x06, 6	; 6
+    3a5c:	fe cf       	rjmp	.-4      	; 0x3a5a <analog_get10+0x2>
+    3a5e:	27 30       	cpi	r18, 0x07	; 7
+    3a60:	31 05       	cpc	r19, r1
+    3a62:	24 f4       	brge	.+8      	; 0x3a6c <analog_get10+0x14>
+    3a64:	82 2f       	mov	r24, r18
+    3a66:	80 5a       	subi	r24, 0xA0	; 160
+    3a68:	87 b9       	out	0x07, r24	; 7
+    3a6a:	14 c0       	rjmp	.+40     	; 0x3a94 <analog_get10+0x3c>
+    3a6c:	87 e6       	ldi	r24, 0x67	; 103
+    3a6e:	87 b9       	out	0x07, r24	; 7
+    3a70:	c9 01       	movw	r24, r18
+    3a72:	08 97       	sbiw	r24, 0x08	; 8
+    3a74:	20 91 65 00 	lds	r18, 0x0065
     3a78:	38 2f       	mov	r19, r24
     3a7a:	34 70       	andi	r19, 0x04	; 4
     3a7c:	23 7e       	andi	r18, 0xE3	; 227
@@ -7198,5518 +7011,4861 @@
     3a7e:	32 2b       	or	r19, r18
     3a80:	83 70       	andi	r24, 0x03	; 3
     3a82:	90 70       	andi	r25, 0x00	; 0
-    3a84:	a3 e0       	ldi	r26, 0x03	; 3
+    3a84:	73 e0       	ldi	r23, 0x03	; 3
     3a86:	88 0f       	add	r24, r24
     3a88:	99 1f       	adc	r25, r25
-    3a8a:	aa 95       	dec	r26
-    3a8c:	e1 f7       	brne	.-8      	; 0x3a86 <set_adc_mux+0x14>
+    3a8a:	7a 95       	dec	r23
+    3a8c:	e1 f7       	brne	.-8      	; 0x3a86 <analog_get10+0x2e>
     3a8e:	38 2b       	or	r19, r24
-    3a90:	30 83       	st	Z, r19
-    3a92:	08 95       	ret
+    3a90:	30 93 65 00 	sts	0x0065, r19
+    3a94:	36 9a       	sbi	0x06, 6	; 6
+    3a96:	36 99       	sbic	0x06, 6	; 6
+    3a98:	fe cf       	rjmp	.-4      	; 0x3a96 <analog_get10+0x3e>
+    3a9a:	24 b1       	in	r18, 0x04	; 4
+    3a9c:	85 b1       	in	r24, 0x05	; 5
+    3a9e:	30 e0       	ldi	r19, 0x00	; 0
+    3aa0:	66 e0       	ldi	r22, 0x06	; 6
+    3aa2:	35 95       	asr	r19
+    3aa4:	27 95       	ror	r18
+    3aa6:	6a 95       	dec	r22
+    3aa8:	e1 f7       	brne	.-8      	; 0x3aa2 <analog_get10+0x4a>
+    3aaa:	90 e0       	ldi	r25, 0x00	; 0
+    3aac:	88 0f       	add	r24, r24
+    3aae:	99 1f       	adc	r25, r25
+    3ab0:	88 0f       	add	r24, r24
+    3ab2:	99 1f       	adc	r25, r25
+    3ab4:	28 2b       	or	r18, r24
+    3ab6:	39 2b       	or	r19, r25
+    3ab8:	c9 01       	movw	r24, r18
+    3aba:	08 95       	ret
 
-00003a94 <__vector_21>:
-    3a94:	1f 92       	push	r1
-    3a96:	0f 92       	push	r0
-    3a98:	0f b6       	in	r0, 0x3f	; 63
-    3a9a:	0f 92       	push	r0
-    3a9c:	0b b6       	in	r0, 0x3b	; 59
-    3a9e:	0f 92       	push	r0
-    3aa0:	11 24       	eor	r1, r1
-    3aa2:	2f 93       	push	r18
-    3aa4:	3f 93       	push	r19
-    3aa6:	4f 93       	push	r20
-    3aa8:	5f 93       	push	r21
-    3aaa:	6f 93       	push	r22
-    3aac:	8f 93       	push	r24
-    3aae:	9f 93       	push	r25
-    3ab0:	ef 93       	push	r30
-    3ab2:	ff 93       	push	r31
-    3ab4:	80 91 c5 06 	lds	r24, 0x06C5
-    3ab8:	90 91 c6 06 	lds	r25, 0x06C6
-    3abc:	01 97       	sbiw	r24, 0x01	; 1
-    3abe:	09 f0       	breq	.+2      	; 0x3ac2 <__vector_21+0x2e>
-    3ac0:	8d c0       	rjmp	.+282    	; 0x3bdc <__vector_21+0x148>
-    3ac2:	87 b1       	in	r24, 0x07	; 7
-    3ac4:	88 23       	and	r24, r24
-    3ac6:	61 f1       	breq	.+88     	; 0x3b20 <__vector_21+0x8c>
-    3ac8:	24 b1       	in	r18, 0x04	; 4
-    3aca:	65 b1       	in	r22, 0x05	; 5
-    3acc:	40 91 c9 06 	lds	r20, 0x06C9
-    3ad0:	50 91 ca 06 	lds	r21, 0x06CA
-    3ad4:	41 50       	subi	r20, 0x01	; 1
-    3ad6:	50 40       	sbci	r21, 0x00	; 0
-    3ad8:	30 e0       	ldi	r19, 0x00	; 0
-    3ada:	f6 e0       	ldi	r31, 0x06	; 6
-    3adc:	35 95       	asr	r19
-    3ade:	27 95       	ror	r18
-    3ae0:	fa 95       	dec	r31
-    3ae2:	e1 f7       	brne	.-8      	; 0x3adc <__vector_21+0x48>
-    3ae4:	86 2f       	mov	r24, r22
-    3ae6:	90 e0       	ldi	r25, 0x00	; 0
-    3ae8:	88 0f       	add	r24, r24
-    3aea:	99 1f       	adc	r25, r25
-    3aec:	88 0f       	add	r24, r24
-    3aee:	99 1f       	adc	r25, r25
-    3af0:	28 2b       	or	r18, r24
-    3af2:	39 2b       	or	r19, r25
-    3af4:	fa 01       	movw	r30, r20
-    3af6:	ee 0f       	add	r30, r30
-    3af8:	ff 1f       	adc	r31, r31
-    3afa:	e4 0f       	add	r30, r20
-    3afc:	f5 1f       	adc	r31, r21
-    3afe:	e3 5a       	subi	r30, 0xA3	; 163
-    3b00:	f5 4f       	sbci	r31, 0xF5	; 245
-    3b02:	32 83       	std	Z+2, r19	; 0x02
-    3b04:	21 83       	std	Z+1, r18	; 0x01
-    3b06:	80 91 c9 06 	lds	r24, 0x06C9
-    3b0a:	90 91 ca 06 	lds	r25, 0x06CA
+00003abc <wheel>:
+    3abc:	80 91 64 0a 	lds	r24, 0x0A64
+    3ac0:	90 e0       	ldi	r25, 0x00	; 0
+    3ac2:	08 95       	ret
+
+00003ac4 <set_adc_mux>:
+    3ac4:	e5 e6       	ldi	r30, 0x65	; 101
+    3ac6:	f0 e0       	ldi	r31, 0x00	; 0
+    3ac8:	20 81       	ld	r18, Z
+    3aca:	38 2f       	mov	r19, r24
+    3acc:	34 70       	andi	r19, 0x04	; 4
+    3ace:	23 7e       	andi	r18, 0xE3	; 227
+    3ad0:	32 2b       	or	r19, r18
+    3ad2:	83 70       	andi	r24, 0x03	; 3
+    3ad4:	90 70       	andi	r25, 0x00	; 0
+    3ad6:	a3 e0       	ldi	r26, 0x03	; 3
+    3ad8:	88 0f       	add	r24, r24
+    3ada:	99 1f       	adc	r25, r25
+    3adc:	aa 95       	dec	r26
+    3ade:	e1 f7       	brne	.-8      	; 0x3ad8 <set_adc_mux+0x14>
+    3ae0:	38 2b       	or	r19, r24
+    3ae2:	30 83       	st	Z, r19
+    3ae4:	08 95       	ret
+
+00003ae6 <__vector_21>:
+    3ae6:	1f 92       	push	r1
+    3ae8:	0f 92       	push	r0
+    3aea:	0f b6       	in	r0, 0x3f	; 63
+    3aec:	0f 92       	push	r0
+    3aee:	0b b6       	in	r0, 0x3b	; 59
+    3af0:	0f 92       	push	r0
+    3af2:	11 24       	eor	r1, r1
+    3af4:	2f 93       	push	r18
+    3af6:	3f 93       	push	r19
+    3af8:	4f 93       	push	r20
+    3afa:	5f 93       	push	r21
+    3afc:	6f 93       	push	r22
+    3afe:	8f 93       	push	r24
+    3b00:	9f 93       	push	r25
+    3b02:	ef 93       	push	r30
+    3b04:	ff 93       	push	r31
+    3b06:	80 91 b5 06 	lds	r24, 0x06B5
+    3b0a:	90 91 b6 06 	lds	r25, 0x06B6
     3b0e:	01 97       	sbiw	r24, 0x01	; 1
-    3b10:	fc 01       	movw	r30, r24
-    3b12:	ee 0f       	add	r30, r30
-    3b14:	ff 1f       	adc	r31, r31
-    3b16:	e8 0f       	add	r30, r24
-    3b18:	f9 1f       	adc	r31, r25
-    3b1a:	e3 5a       	subi	r30, 0xA3	; 163
-    3b1c:	f5 4f       	sbci	r31, 0xF5	; 245
-    3b1e:	60 83       	st	Z, r22
-    3b20:	80 91 c9 06 	lds	r24, 0x06C9
-    3b24:	90 91 ca 06 	lds	r25, 0x06CA
-    3b28:	06 97       	sbiw	r24, 0x06	; 6
-    3b2a:	71 f4       	brne	.+28     	; 0x3b48 <__vector_21+0xb4>
-    3b2c:	87 e6       	ldi	r24, 0x67	; 103
-    3b2e:	87 b9       	out	0x07, r24	; 7
-    3b30:	80 91 65 00 	lds	r24, 0x0065
-    3b34:	83 7e       	andi	r24, 0xE3	; 227
-    3b36:	80 93 65 00 	sts	0x0065, r24
-    3b3a:	88 e0       	ldi	r24, 0x08	; 8
-    3b3c:	90 e0       	ldi	r25, 0x00	; 0
-    3b3e:	90 93 ca 06 	sts	0x06CA, r25
-    3b42:	80 93 c9 06 	sts	0x06C9, r24
-    3b46:	3a c0       	rjmp	.+116    	; 0x3bbc <__vector_21+0x128>
-    3b48:	80 91 c9 06 	lds	r24, 0x06C9
-    3b4c:	90 91 ca 06 	lds	r25, 0x06CA
-    3b50:	0b 97       	sbiw	r24, 0x0b	; 11
-    3b52:	39 f4       	brne	.+14     	; 0x3b62 <__vector_21+0xce>
-    3b54:	81 e0       	ldi	r24, 0x01	; 1
-    3b56:	90 e0       	ldi	r25, 0x00	; 0
-    3b58:	90 93 ca 06 	sts	0x06CA, r25
-    3b5c:	80 93 c9 06 	sts	0x06C9, r24
-    3b60:	0f c0       	rjmp	.+30     	; 0x3b80 <__vector_21+0xec>
-    3b62:	80 91 c9 06 	lds	r24, 0x06C9
-    3b66:	90 91 ca 06 	lds	r25, 0x06CA
-    3b6a:	01 96       	adiw	r24, 0x01	; 1
-    3b6c:	90 93 ca 06 	sts	0x06CA, r25
-    3b70:	80 93 c9 06 	sts	0x06C9, r24
-    3b74:	80 91 c9 06 	lds	r24, 0x06C9
-    3b78:	90 91 ca 06 	lds	r25, 0x06CA
-    3b7c:	07 97       	sbiw	r24, 0x07	; 7
-    3b7e:	3c f4       	brge	.+14     	; 0x3b8e <__vector_21+0xfa>
-    3b80:	80 91 c9 06 	lds	r24, 0x06C9
-    3b84:	90 91 ca 06 	lds	r25, 0x06CA
-    3b88:	80 66       	ori	r24, 0x60	; 96
-    3b8a:	87 b9       	out	0x07, r24	; 7
-    3b8c:	17 c0       	rjmp	.+46     	; 0x3bbc <__vector_21+0x128>
-    3b8e:	87 e6       	ldi	r24, 0x67	; 103
-    3b90:	87 b9       	out	0x07, r24	; 7
-    3b92:	80 91 c9 06 	lds	r24, 0x06C9
-    3b96:	90 91 ca 06 	lds	r25, 0x06CA
-    3b9a:	08 97       	sbiw	r24, 0x08	; 8
-    3b9c:	20 91 65 00 	lds	r18, 0x0065
-    3ba0:	38 2f       	mov	r19, r24
-    3ba2:	34 70       	andi	r19, 0x04	; 4
-    3ba4:	23 7e       	andi	r18, 0xE3	; 227
-    3ba6:	32 2b       	or	r19, r18
-    3ba8:	83 70       	andi	r24, 0x03	; 3
-    3baa:	90 70       	andi	r25, 0x00	; 0
-    3bac:	23 e0       	ldi	r18, 0x03	; 3
-    3bae:	88 0f       	add	r24, r24
-    3bb0:	99 1f       	adc	r25, r25
-    3bb2:	2a 95       	dec	r18
-    3bb4:	e1 f7       	brne	.-8      	; 0x3bae <__vector_21+0x11a>
-    3bb6:	38 2b       	or	r19, r24
-    3bb8:	30 93 65 00 	sts	0x0065, r19
-    3bbc:	80 91 c7 06 	lds	r24, 0x06C7
-    3bc0:	90 91 c8 06 	lds	r25, 0x06C8
-    3bc4:	89 2b       	or	r24, r25
-    3bc6:	49 f0       	breq	.+18     	; 0x3bda <__vector_21+0x146>
-    3bc8:	10 92 c8 06 	sts	0x06C8, r1
-    3bcc:	10 92 c7 06 	sts	0x06C7, r1
-    3bd0:	10 92 c6 06 	sts	0x06C6, r1
-    3bd4:	10 92 c5 06 	sts	0x06C5, r1
-    3bd8:	01 c0       	rjmp	.+2      	; 0x3bdc <__vector_21+0x148>
-    3bda:	36 9a       	sbi	0x06, 6	; 6
-    3bdc:	ff 91       	pop	r31
-    3bde:	ef 91       	pop	r30
-    3be0:	9f 91       	pop	r25
-    3be2:	8f 91       	pop	r24
-    3be4:	6f 91       	pop	r22
-    3be6:	5f 91       	pop	r21
-    3be8:	4f 91       	pop	r20
-    3bea:	3f 91       	pop	r19
-    3bec:	2f 91       	pop	r18
-    3bee:	0f 90       	pop	r0
-    3bf0:	0b be       	out	0x3b, r0	; 59
-    3bf2:	0f 90       	pop	r0
-    3bf4:	0f be       	out	0x3f, r0	; 63
-    3bf6:	0f 90       	pop	r0
-    3bf8:	1f 90       	pop	r1
-    3bfa:	18 95       	reti
+    3b10:	09 f0       	breq	.+2      	; 0x3b14 <__vector_21+0x2e>
+    3b12:	8d c0       	rjmp	.+282    	; 0x3c2e <__vector_21+0x148>
+    3b14:	87 b1       	in	r24, 0x07	; 7
+    3b16:	88 23       	and	r24, r24
+    3b18:	61 f1       	breq	.+88     	; 0x3b72 <__vector_21+0x8c>
+    3b1a:	24 b1       	in	r18, 0x04	; 4
+    3b1c:	65 b1       	in	r22, 0x05	; 5
+    3b1e:	40 91 b9 06 	lds	r20, 0x06B9
+    3b22:	50 91 ba 06 	lds	r21, 0x06BA
+    3b26:	41 50       	subi	r20, 0x01	; 1
+    3b28:	50 40       	sbci	r21, 0x00	; 0
+    3b2a:	30 e0       	ldi	r19, 0x00	; 0
+    3b2c:	f6 e0       	ldi	r31, 0x06	; 6
+    3b2e:	35 95       	asr	r19
+    3b30:	27 95       	ror	r18
+    3b32:	fa 95       	dec	r31
+    3b34:	e1 f7       	brne	.-8      	; 0x3b2e <__vector_21+0x48>
+    3b36:	86 2f       	mov	r24, r22
+    3b38:	90 e0       	ldi	r25, 0x00	; 0
+    3b3a:	88 0f       	add	r24, r24
+    3b3c:	99 1f       	adc	r25, r25
+    3b3e:	88 0f       	add	r24, r24
+    3b40:	99 1f       	adc	r25, r25
+    3b42:	28 2b       	or	r18, r24
+    3b44:	39 2b       	or	r19, r25
+    3b46:	fa 01       	movw	r30, r20
+    3b48:	ee 0f       	add	r30, r30
+    3b4a:	ff 1f       	adc	r31, r31
+    3b4c:	e4 0f       	add	r30, r20
+    3b4e:	f5 1f       	adc	r31, r21
+    3b50:	e7 5b       	subi	r30, 0xB7	; 183
+    3b52:	f5 4f       	sbci	r31, 0xF5	; 245
+    3b54:	32 83       	std	Z+2, r19	; 0x02
+    3b56:	21 83       	std	Z+1, r18	; 0x01
+    3b58:	80 91 b9 06 	lds	r24, 0x06B9
+    3b5c:	90 91 ba 06 	lds	r25, 0x06BA
+    3b60:	01 97       	sbiw	r24, 0x01	; 1
+    3b62:	fc 01       	movw	r30, r24
+    3b64:	ee 0f       	add	r30, r30
+    3b66:	ff 1f       	adc	r31, r31
+    3b68:	e8 0f       	add	r30, r24
+    3b6a:	f9 1f       	adc	r31, r25
+    3b6c:	e7 5b       	subi	r30, 0xB7	; 183
+    3b6e:	f5 4f       	sbci	r31, 0xF5	; 245
+    3b70:	60 83       	st	Z, r22
+    3b72:	80 91 b9 06 	lds	r24, 0x06B9
+    3b76:	90 91 ba 06 	lds	r25, 0x06BA
+    3b7a:	06 97       	sbiw	r24, 0x06	; 6
+    3b7c:	71 f4       	brne	.+28     	; 0x3b9a <__vector_21+0xb4>
+    3b7e:	87 e6       	ldi	r24, 0x67	; 103
+    3b80:	87 b9       	out	0x07, r24	; 7
+    3b82:	80 91 65 00 	lds	r24, 0x0065
+    3b86:	83 7e       	andi	r24, 0xE3	; 227
+    3b88:	80 93 65 00 	sts	0x0065, r24
+    3b8c:	88 e0       	ldi	r24, 0x08	; 8
+    3b8e:	90 e0       	ldi	r25, 0x00	; 0
+    3b90:	90 93 ba 06 	sts	0x06BA, r25
+    3b94:	80 93 b9 06 	sts	0x06B9, r24
+    3b98:	3a c0       	rjmp	.+116    	; 0x3c0e <__vector_21+0x128>
+    3b9a:	80 91 b9 06 	lds	r24, 0x06B9
+    3b9e:	90 91 ba 06 	lds	r25, 0x06BA
+    3ba2:	0b 97       	sbiw	r24, 0x0b	; 11
+    3ba4:	39 f4       	brne	.+14     	; 0x3bb4 <__vector_21+0xce>
+    3ba6:	81 e0       	ldi	r24, 0x01	; 1
+    3ba8:	90 e0       	ldi	r25, 0x00	; 0
+    3baa:	90 93 ba 06 	sts	0x06BA, r25
+    3bae:	80 93 b9 06 	sts	0x06B9, r24
+    3bb2:	0f c0       	rjmp	.+30     	; 0x3bd2 <__vector_21+0xec>
+    3bb4:	80 91 b9 06 	lds	r24, 0x06B9
+    3bb8:	90 91 ba 06 	lds	r25, 0x06BA
+    3bbc:	01 96       	adiw	r24, 0x01	; 1
+    3bbe:	90 93 ba 06 	sts	0x06BA, r25
+    3bc2:	80 93 b9 06 	sts	0x06B9, r24
+    3bc6:	80 91 b9 06 	lds	r24, 0x06B9
+    3bca:	90 91 ba 06 	lds	r25, 0x06BA
+    3bce:	07 97       	sbiw	r24, 0x07	; 7
+    3bd0:	3c f4       	brge	.+14     	; 0x3be0 <__vector_21+0xfa>
+    3bd2:	80 91 b9 06 	lds	r24, 0x06B9
+    3bd6:	90 91 ba 06 	lds	r25, 0x06BA
+    3bda:	80 66       	ori	r24, 0x60	; 96
+    3bdc:	87 b9       	out	0x07, r24	; 7
+    3bde:	17 c0       	rjmp	.+46     	; 0x3c0e <__vector_21+0x128>
+    3be0:	87 e6       	ldi	r24, 0x67	; 103
+    3be2:	87 b9       	out	0x07, r24	; 7
+    3be4:	80 91 b9 06 	lds	r24, 0x06B9
+    3be8:	90 91 ba 06 	lds	r25, 0x06BA
+    3bec:	08 97       	sbiw	r24, 0x08	; 8
+    3bee:	20 91 65 00 	lds	r18, 0x0065
+    3bf2:	38 2f       	mov	r19, r24
+    3bf4:	34 70       	andi	r19, 0x04	; 4
+    3bf6:	23 7e       	andi	r18, 0xE3	; 227
+    3bf8:	32 2b       	or	r19, r18
+    3bfa:	83 70       	andi	r24, 0x03	; 3
+    3bfc:	90 70       	andi	r25, 0x00	; 0
+    3bfe:	23 e0       	ldi	r18, 0x03	; 3
+    3c00:	88 0f       	add	r24, r24
+    3c02:	99 1f       	adc	r25, r25
+    3c04:	2a 95       	dec	r18
+    3c06:	e1 f7       	brne	.-8      	; 0x3c00 <__vector_21+0x11a>
+    3c08:	38 2b       	or	r19, r24
+    3c0a:	30 93 65 00 	sts	0x0065, r19
+    3c0e:	80 91 b7 06 	lds	r24, 0x06B7
+    3c12:	90 91 b8 06 	lds	r25, 0x06B8
+    3c16:	89 2b       	or	r24, r25
+    3c18:	49 f0       	breq	.+18     	; 0x3c2c <__vector_21+0x146>
+    3c1a:	10 92 b8 06 	sts	0x06B8, r1
+    3c1e:	10 92 b7 06 	sts	0x06B7, r1
+    3c22:	10 92 b6 06 	sts	0x06B6, r1
+    3c26:	10 92 b5 06 	sts	0x06B5, r1
+    3c2a:	01 c0       	rjmp	.+2      	; 0x3c2e <__vector_21+0x148>
+    3c2c:	36 9a       	sbi	0x06, 6	; 6
+    3c2e:	ff 91       	pop	r31
+    3c30:	ef 91       	pop	r30
+    3c32:	9f 91       	pop	r25
+    3c34:	8f 91       	pop	r24
+    3c36:	6f 91       	pop	r22
+    3c38:	5f 91       	pop	r21
+    3c3a:	4f 91       	pop	r20
+    3c3c:	3f 91       	pop	r19
+    3c3e:	2f 91       	pop	r18
+    3c40:	0f 90       	pop	r0
+    3c42:	0b be       	out	0x3b, r0	; 59
+    3c44:	0f 90       	pop	r0
+    3c46:	0f be       	out	0x3f, r0	; 63
+    3c48:	0f 90       	pop	r0
+    3c4a:	1f 90       	pop	r1
+    3c4c:	18 95       	reti
 
-00003bfc <buzzer_init>:
-        usb_puts(buf);
-    }
-    usb_puts("\r\n");
-}*/
+00003c4e <buzzer_init>:
+    3c4e:	08 95       	ret
 
-    3bfc:	08 95       	ret
+00003c50 <buzzer_set_val>:
+    3c50:	9c e1       	ldi	r25, 0x1C	; 28
+    3c52:	95 bd       	out	0x25, r25	; 37
+    3c54:	bf 9a       	sbi	0x17, 7	; 23
+    3c56:	83 bd       	out	0x23, r24	; 35
+    3c58:	08 95       	ret
 
-00003bfe <buzzer_set_val>:
-    3bfe:	9c e1       	ldi	r25, 0x1C	; 28
-    3c00:	95 bd       	out	0x25, r25	; 37
-    3c02:	bf 9a       	sbi	0x17, 7	; 23
-    3c04:	83 bd       	out	0x23, r24	; 35
-    3c06:	08 95       	ret
+00003c5a <buzzer_set_freq>:
+    3c5a:	9c 01       	movw	r18, r24
+    3c5c:	40 e0       	ldi	r20, 0x00	; 0
+    3c5e:	50 e0       	ldi	r21, 0x00	; 0
+    3c60:	64 e2       	ldi	r22, 0x24	; 36
+    3c62:	74 ef       	ldi	r23, 0xF4	; 244
+    3c64:	80 e0       	ldi	r24, 0x00	; 0
+    3c66:	90 e0       	ldi	r25, 0x00	; 0
+    3c68:	0e 94 bd 2f 	call	0x5f7a	; 0x5f7a <__divmodsi4>
+    3c6c:	21 50       	subi	r18, 0x01	; 1
+    3c6e:	30 40       	sbci	r19, 0x00	; 0
+    3c70:	37 ff       	sbrs	r19, 7
+    3c72:	02 c0       	rjmp	.+4      	; 0x3c78 <buzzer_set_freq+0x1e>
+    3c74:	20 e0       	ldi	r18, 0x00	; 0
+    3c76:	30 e0       	ldi	r19, 0x00	; 0
+    3c78:	8c e1       	ldi	r24, 0x1C	; 28
+    3c7a:	85 bd       	out	0x25, r24	; 37
+    3c7c:	bf 9a       	sbi	0x17, 7	; 23
+    3c7e:	2f 3f       	cpi	r18, 0xFF	; 255
+    3c80:	31 05       	cpc	r19, r1
+    3c82:	19 f0       	breq	.+6      	; 0x3c8a <buzzer_set_freq+0x30>
+    3c84:	14 f0       	brlt	.+4      	; 0x3c8a <buzzer_set_freq+0x30>
+    3c86:	2f ef       	ldi	r18, 0xFF	; 255
+    3c88:	30 e0       	ldi	r19, 0x00	; 0
+    3c8a:	23 bd       	out	0x23, r18	; 35
+    3c8c:	08 95       	ret
 
-00003c08 <buzzer_set_freq>:
-    3c08:	9c 01       	movw	r18, r24
-    3c0a:	40 e0       	ldi	r20, 0x00	; 0
-    3c0c:	50 e0       	ldi	r21, 0x00	; 0
-    3c0e:	64 e2       	ldi	r22, 0x24	; 36
-    3c10:	74 ef       	ldi	r23, 0xF4	; 244
-    3c12:	80 e0       	ldi	r24, 0x00	; 0
-    3c14:	90 e0       	ldi	r25, 0x00	; 0
-    3c16:	0e 94 26 32 	call	0x644c	; 0x644c <__divmodsi4>
-    3c1a:	21 50       	subi	r18, 0x01	; 1
-    3c1c:	30 40       	sbci	r19, 0x00	; 0
-    3c1e:	37 ff       	sbrs	r19, 7
-    3c20:	02 c0       	rjmp	.+4      	; 0x3c26 <buzzer_set_freq+0x1e>
-    3c22:	20 e0       	ldi	r18, 0x00	; 0
-    3c24:	30 e0       	ldi	r19, 0x00	; 0
-    3c26:	8c e1       	ldi	r24, 0x1C	; 28
-    3c28:	85 bd       	out	0x25, r24	; 37
-    3c2a:	bf 9a       	sbi	0x17, 7	; 23
-    3c2c:	2f 3f       	cpi	r18, 0xFF	; 255
-    3c2e:	31 05       	cpc	r19, r1
-    3c30:	19 f0       	breq	.+6      	; 0x3c38 <buzzer_set_freq+0x30>
-    3c32:	14 f0       	brlt	.+4      	; 0x3c38 <buzzer_set_freq+0x30>
-    3c34:	2f ef       	ldi	r18, 0xFF	; 255
-    3c36:	30 e0       	ldi	r19, 0x00	; 0
-    3c38:	23 bd       	out	0x23, r18	; 35
-    3c3a:	08 95       	ret
+00003c8e <buzzer_off>:
+    3c8e:	85 b5       	in	r24, 0x25	; 37
+    3c90:	88 7f       	andi	r24, 0xF8	; 248
+    3c92:	85 bd       	out	0x25, r24	; 37
+    3c94:	c6 98       	cbi	0x18, 6	; 24
+    3c96:	08 95       	ret
 
-00003c3c <buzzer_off>:
-    3c3c:	85 b5       	in	r24, 0x25	; 37
-    3c3e:	88 7f       	andi	r24, 0xF8	; 248
-    3c40:	85 bd       	out	0x25, r24	; 37
-    3c42:	c6 98       	cbi	0x18, 6	; 24
-    3c44:	08 95       	ret
+00003c98 <buzzer_chirp>:
+    3c98:	0f 93       	push	r16
+    3c9a:	1f 93       	push	r17
+    3c9c:	8c 01       	movw	r16, r24
+    3c9e:	cb 01       	movw	r24, r22
+    3ca0:	0e 94 2d 1e 	call	0x3c5a	; 0x3c5a <buzzer_set_freq>
+    3ca4:	c8 01       	movw	r24, r16
+    3ca6:	0e 94 0c 1c 	call	0x3818	; 0x3818 <delay_ms>
+    3caa:	85 b5       	in	r24, 0x25	; 37
+    3cac:	88 7f       	andi	r24, 0xF8	; 248
+    3cae:	85 bd       	out	0x25, r24	; 37
+    3cb0:	c6 98       	cbi	0x18, 6	; 24
+    3cb2:	1f 91       	pop	r17
+    3cb4:	0f 91       	pop	r16
+    3cb6:	08 95       	ret
 
-00003c46 <buzzer_chirp>:
-    3c46:	0f 93       	push	r16
-    3c48:	1f 93       	push	r17
-    3c4a:	8c 01       	movw	r16, r24
-    3c4c:	cb 01       	movw	r24, r22
-    3c4e:	0e 94 04 1e 	call	0x3c08	; 0x3c08 <buzzer_set_freq>
-    3c52:	c8 01       	movw	r24, r16
-    3c54:	0e 94 e3 1b 	call	0x37c6	; 0x37c6 <delay_ms>
-    3c58:	85 b5       	in	r24, 0x25	; 37
-    3c5a:	88 7f       	andi	r24, 0xF8	; 248
-    3c5c:	85 bd       	out	0x25, r24	; 37
-    3c5e:	c6 98       	cbi	0x18, 6	; 24
-    3c60:	1f 91       	pop	r17
-    3c62:	0f 91       	pop	r16
-    3c64:	08 95       	ret
+00003cb8 <__ashldi3>:
+    3cb8:	ef 92       	push	r14
+    3cba:	ff 92       	push	r15
+    3cbc:	0f 93       	push	r16
+    3cbe:	df 93       	push	r29
+    3cc0:	cf 93       	push	r28
+    3cc2:	cd b7       	in	r28, 0x3d	; 61
+    3cc4:	de b7       	in	r29, 0x3e	; 62
+    3cc6:	60 97       	sbiw	r28, 0x10	; 16
+    3cc8:	0f b6       	in	r0, 0x3f	; 63
+    3cca:	f8 94       	cli
+    3ccc:	de bf       	out	0x3e, r29	; 62
+    3cce:	0f be       	out	0x3f, r0	; 63
+    3cd0:	cd bf       	out	0x3d, r28	; 61
+    3cd2:	a8 2f       	mov	r26, r24
+    3cd4:	00 23       	and	r16, r16
+    3cd6:	09 f4       	brne	.+2      	; 0x3cda <__ashldi3+0x22>
+    3cd8:	61 c0       	rjmp	.+194    	; 0x3d9c <__ashldi3+0xe4>
+    3cda:	7e 01       	movw	r14, r28
+    3cdc:	08 94       	sec
+    3cde:	e1 1c       	adc	r14, r1
+    3ce0:	f1 1c       	adc	r15, r1
+    3ce2:	88 e0       	ldi	r24, 0x08	; 8
+    3ce4:	f7 01       	movw	r30, r14
+    3ce6:	11 92       	st	Z+, r1
+    3ce8:	8a 95       	dec	r24
+    3cea:	e9 f7       	brne	.-6      	; 0x3ce6 <__ashldi3+0x2e>
+    3cec:	29 83       	std	Y+1, r18	; 0x01
+    3cee:	3a 83       	std	Y+2, r19	; 0x02
+    3cf0:	4b 83       	std	Y+3, r20	; 0x03
+    3cf2:	5c 83       	std	Y+4, r21	; 0x04
+    3cf4:	6d 83       	std	Y+5, r22	; 0x05
+    3cf6:	7e 83       	std	Y+6, r23	; 0x06
+    3cf8:	af 83       	std	Y+7, r26	; 0x07
+    3cfa:	98 87       	std	Y+8, r25	; 0x08
+    3cfc:	80 e2       	ldi	r24, 0x20	; 32
+    3cfe:	80 1b       	sub	r24, r16
+    3d00:	e8 2f       	mov	r30, r24
+    3d02:	ff 27       	eor	r31, r31
+    3d04:	e7 fd       	sbrc	r30, 7
+    3d06:	f0 95       	com	r31
+    3d08:	49 81       	ldd	r20, Y+1	; 0x01
+    3d0a:	5a 81       	ldd	r21, Y+2	; 0x02
+    3d0c:	6b 81       	ldd	r22, Y+3	; 0x03
+    3d0e:	7c 81       	ldd	r23, Y+4	; 0x04
+    3d10:	18 16       	cp	r1, r24
+    3d12:	84 f0       	brlt	.+32     	; 0x3d34 <__ashldi3+0x7c>
+    3d14:	19 86       	std	Y+9, r1	; 0x09
+    3d16:	1a 86       	std	Y+10, r1	; 0x0a
+    3d18:	1b 86       	std	Y+11, r1	; 0x0b
+    3d1a:	1c 86       	std	Y+12, r1	; 0x0c
+    3d1c:	88 27       	eor	r24, r24
+    3d1e:	99 27       	eor	r25, r25
+    3d20:	8e 1b       	sub	r24, r30
+    3d22:	9f 0b       	sbc	r25, r31
+    3d24:	04 c0       	rjmp	.+8      	; 0x3d2e <__ashldi3+0x76>
+    3d26:	44 0f       	add	r20, r20
+    3d28:	55 1f       	adc	r21, r21
+    3d2a:	66 1f       	adc	r22, r22
+    3d2c:	77 1f       	adc	r23, r23
+    3d2e:	8a 95       	dec	r24
+    3d30:	d2 f7       	brpl	.-12     	; 0x3d26 <__ashldi3+0x6e>
+    3d32:	28 c0       	rjmp	.+80     	; 0x3d84 <__ashldi3+0xcc>
+    3d34:	20 2f       	mov	r18, r16
+    3d36:	33 27       	eor	r19, r19
+    3d38:	27 fd       	sbrc	r18, 7
+    3d3a:	30 95       	com	r19
+    3d3c:	db 01       	movw	r26, r22
+    3d3e:	ca 01       	movw	r24, r20
+    3d40:	02 2e       	mov	r0, r18
+    3d42:	04 c0       	rjmp	.+8      	; 0x3d4c <__ashldi3+0x94>
+    3d44:	88 0f       	add	r24, r24
+    3d46:	99 1f       	adc	r25, r25
+    3d48:	aa 1f       	adc	r26, r26
+    3d4a:	bb 1f       	adc	r27, r27
+    3d4c:	0a 94       	dec	r0
+    3d4e:	d2 f7       	brpl	.-12     	; 0x3d44 <__ashldi3+0x8c>
+    3d50:	89 87       	std	Y+9, r24	; 0x09
+    3d52:	9a 87       	std	Y+10, r25	; 0x0a
+    3d54:	ab 87       	std	Y+11, r26	; 0x0b
+    3d56:	bc 87       	std	Y+12, r27	; 0x0c
+    3d58:	04 c0       	rjmp	.+8      	; 0x3d62 <__ashldi3+0xaa>
+    3d5a:	76 95       	lsr	r23
+    3d5c:	67 95       	ror	r22
+    3d5e:	57 95       	ror	r21
+    3d60:	47 95       	ror	r20
+    3d62:	ea 95       	dec	r30
+    3d64:	d2 f7       	brpl	.-12     	; 0x3d5a <__ashldi3+0xa2>
+    3d66:	8d 81       	ldd	r24, Y+5	; 0x05
+    3d68:	9e 81       	ldd	r25, Y+6	; 0x06
+    3d6a:	af 81       	ldd	r26, Y+7	; 0x07
+    3d6c:	b8 85       	ldd	r27, Y+8	; 0x08
+    3d6e:	04 c0       	rjmp	.+8      	; 0x3d78 <__ashldi3+0xc0>
+    3d70:	88 0f       	add	r24, r24
+    3d72:	99 1f       	adc	r25, r25
+    3d74:	aa 1f       	adc	r26, r26
+    3d76:	bb 1f       	adc	r27, r27
+    3d78:	2a 95       	dec	r18
+    3d7a:	d2 f7       	brpl	.-12     	; 0x3d70 <__ashldi3+0xb8>
+    3d7c:	48 2b       	or	r20, r24
+    3d7e:	59 2b       	or	r21, r25
+    3d80:	6a 2b       	or	r22, r26
+    3d82:	7b 2b       	or	r23, r27
+    3d84:	4d 87       	std	Y+13, r20	; 0x0d
+    3d86:	5e 87       	std	Y+14, r21	; 0x0e
+    3d88:	6f 87       	std	Y+15, r22	; 0x0f
+    3d8a:	78 8b       	std	Y+16, r23	; 0x10
+    3d8c:	29 85       	ldd	r18, Y+9	; 0x09
+    3d8e:	3a 85       	ldd	r19, Y+10	; 0x0a
+    3d90:	4b 85       	ldd	r20, Y+11	; 0x0b
+    3d92:	5c 85       	ldd	r21, Y+12	; 0x0c
+    3d94:	6d 85       	ldd	r22, Y+13	; 0x0d
+    3d96:	7e 85       	ldd	r23, Y+14	; 0x0e
+    3d98:	af 85       	ldd	r26, Y+15	; 0x0f
+    3d9a:	98 89       	ldd	r25, Y+16	; 0x10
+    3d9c:	8a 2f       	mov	r24, r26
+    3d9e:	60 96       	adiw	r28, 0x10	; 16
+    3da0:	0f b6       	in	r0, 0x3f	; 63
+    3da2:	f8 94       	cli
+    3da4:	de bf       	out	0x3e, r29	; 62
+    3da6:	0f be       	out	0x3f, r0	; 63
+    3da8:	cd bf       	out	0x3d, r28	; 61
+    3daa:	cf 91       	pop	r28
+    3dac:	df 91       	pop	r29
+    3dae:	0f 91       	pop	r16
+    3db0:	ff 90       	pop	r15
+    3db2:	ef 90       	pop	r14
+    3db4:	08 95       	ret
 
-00003c66 <__ashldi3>:
-    3c66:	ef 92       	push	r14
-    3c68:	ff 92       	push	r15
-    3c6a:	0f 93       	push	r16
-    3c6c:	df 93       	push	r29
-    3c6e:	cf 93       	push	r28
-    3c70:	cd b7       	in	r28, 0x3d	; 61
-    3c72:	de b7       	in	r29, 0x3e	; 62
-    3c74:	60 97       	sbiw	r28, 0x10	; 16
-    3c76:	0f b6       	in	r0, 0x3f	; 63
-    3c78:	f8 94       	cli
-    3c7a:	de bf       	out	0x3e, r29	; 62
-    3c7c:	0f be       	out	0x3f, r0	; 63
-    3c7e:	cd bf       	out	0x3d, r28	; 61
-    3c80:	a8 2f       	mov	r26, r24
-    3c82:	00 23       	and	r16, r16
-    3c84:	09 f4       	brne	.+2      	; 0x3c88 <__ashldi3+0x22>
-    3c86:	61 c0       	rjmp	.+194    	; 0x3d4a <__ashldi3+0xe4>
-    3c88:	7e 01       	movw	r14, r28
-    3c8a:	08 94       	sec
-    3c8c:	e1 1c       	adc	r14, r1
-    3c8e:	f1 1c       	adc	r15, r1
-    3c90:	88 e0       	ldi	r24, 0x08	; 8
-    3c92:	f7 01       	movw	r30, r14
-    3c94:	11 92       	st	Z+, r1
-    3c96:	8a 95       	dec	r24
-    3c98:	e9 f7       	brne	.-6      	; 0x3c94 <__ashldi3+0x2e>
-    3c9a:	29 83       	std	Y+1, r18	; 0x01
-    3c9c:	3a 83       	std	Y+2, r19	; 0x02
-    3c9e:	4b 83       	std	Y+3, r20	; 0x03
-    3ca0:	5c 83       	std	Y+4, r21	; 0x04
-    3ca2:	6d 83       	std	Y+5, r22	; 0x05
-    3ca4:	7e 83       	std	Y+6, r23	; 0x06
-    3ca6:	af 83       	std	Y+7, r26	; 0x07
-    3ca8:	98 87       	std	Y+8, r25	; 0x08
-    3caa:	80 e2       	ldi	r24, 0x20	; 32
-    3cac:	80 1b       	sub	r24, r16
-    3cae:	e8 2f       	mov	r30, r24
-    3cb0:	ff 27       	eor	r31, r31
-    3cb2:	e7 fd       	sbrc	r30, 7
-    3cb4:	f0 95       	com	r31
-    3cb6:	49 81       	ldd	r20, Y+1	; 0x01
-    3cb8:	5a 81       	ldd	r21, Y+2	; 0x02
-    3cba:	6b 81       	ldd	r22, Y+3	; 0x03
-    3cbc:	7c 81       	ldd	r23, Y+4	; 0x04
-    3cbe:	18 16       	cp	r1, r24
-    3cc0:	84 f0       	brlt	.+32     	; 0x3ce2 <__ashldi3+0x7c>
-    3cc2:	19 86       	std	Y+9, r1	; 0x09
-    3cc4:	1a 86       	std	Y+10, r1	; 0x0a
-    3cc6:	1b 86       	std	Y+11, r1	; 0x0b
-    3cc8:	1c 86       	std	Y+12, r1	; 0x0c
-    3cca:	88 27       	eor	r24, r24
-    3ccc:	99 27       	eor	r25, r25
-    3cce:	8e 1b       	sub	r24, r30
-    3cd0:	9f 0b       	sbc	r25, r31
-    3cd2:	04 c0       	rjmp	.+8      	; 0x3cdc <__ashldi3+0x76>
-    3cd4:	44 0f       	add	r20, r20
-    3cd6:	55 1f       	adc	r21, r21
-    3cd8:	66 1f       	adc	r22, r22
-    3cda:	77 1f       	adc	r23, r23
-    3cdc:	8a 95       	dec	r24
-    3cde:	d2 f7       	brpl	.-12     	; 0x3cd4 <__ashldi3+0x6e>
-    3ce0:	28 c0       	rjmp	.+80     	; 0x3d32 <__ashldi3+0xcc>
-    3ce2:	20 2f       	mov	r18, r16
-    3ce4:	33 27       	eor	r19, r19
-    3ce6:	27 fd       	sbrc	r18, 7
-    3ce8:	30 95       	com	r19
-    3cea:	db 01       	movw	r26, r22
-    3cec:	ca 01       	movw	r24, r20
-    3cee:	02 2e       	mov	r0, r18
-    3cf0:	04 c0       	rjmp	.+8      	; 0x3cfa <__ashldi3+0x94>
-    3cf2:	88 0f       	add	r24, r24
-    3cf4:	99 1f       	adc	r25, r25
-    3cf6:	aa 1f       	adc	r26, r26
-    3cf8:	bb 1f       	adc	r27, r27
-    3cfa:	0a 94       	dec	r0
-    3cfc:	d2 f7       	brpl	.-12     	; 0x3cf2 <__ashldi3+0x8c>
-    3cfe:	89 87       	std	Y+9, r24	; 0x09
-    3d00:	9a 87       	std	Y+10, r25	; 0x0a
-    3d02:	ab 87       	std	Y+11, r26	; 0x0b
-    3d04:	bc 87       	std	Y+12, r27	; 0x0c
-    3d06:	04 c0       	rjmp	.+8      	; 0x3d10 <__ashldi3+0xaa>
-    3d08:	76 95       	lsr	r23
-    3d0a:	67 95       	ror	r22
-    3d0c:	57 95       	ror	r21
-    3d0e:	47 95       	ror	r20
-    3d10:	ea 95       	dec	r30
-    3d12:	d2 f7       	brpl	.-12     	; 0x3d08 <__ashldi3+0xa2>
-    3d14:	8d 81       	ldd	r24, Y+5	; 0x05
-    3d16:	9e 81       	ldd	r25, Y+6	; 0x06
-    3d18:	af 81       	ldd	r26, Y+7	; 0x07
-    3d1a:	b8 85       	ldd	r27, Y+8	; 0x08
-    3d1c:	04 c0       	rjmp	.+8      	; 0x3d26 <__ashldi3+0xc0>
-    3d1e:	88 0f       	add	r24, r24
-    3d20:	99 1f       	adc	r25, r25
-    3d22:	aa 1f       	adc	r26, r26
-    3d24:	bb 1f       	adc	r27, r27
-    3d26:	2a 95       	dec	r18
-    3d28:	d2 f7       	brpl	.-12     	; 0x3d1e <__ashldi3+0xb8>
-    3d2a:	48 2b       	or	r20, r24
-    3d2c:	59 2b       	or	r21, r25
-    3d2e:	6a 2b       	or	r22, r26
-    3d30:	7b 2b       	or	r23, r27
-    3d32:	4d 87       	std	Y+13, r20	; 0x0d
-    3d34:	5e 87       	std	Y+14, r21	; 0x0e
-    3d36:	6f 87       	std	Y+15, r22	; 0x0f
-    3d38:	78 8b       	std	Y+16, r23	; 0x10
-    3d3a:	29 85       	ldd	r18, Y+9	; 0x09
-    3d3c:	3a 85       	ldd	r19, Y+10	; 0x0a
-    3d3e:	4b 85       	ldd	r20, Y+11	; 0x0b
-    3d40:	5c 85       	ldd	r21, Y+12	; 0x0c
-    3d42:	6d 85       	ldd	r22, Y+13	; 0x0d
-    3d44:	7e 85       	ldd	r23, Y+14	; 0x0e
-    3d46:	af 85       	ldd	r26, Y+15	; 0x0f
-    3d48:	98 89       	ldd	r25, Y+16	; 0x10
-    3d4a:	8a 2f       	mov	r24, r26
-    3d4c:	60 96       	adiw	r28, 0x10	; 16
-    3d4e:	0f b6       	in	r0, 0x3f	; 63
-    3d50:	f8 94       	cli
-    3d52:	de bf       	out	0x3e, r29	; 62
-    3d54:	0f be       	out	0x3f, r0	; 63
-    3d56:	cd bf       	out	0x3d, r28	; 61
-    3d58:	cf 91       	pop	r28
-    3d5a:	df 91       	pop	r29
-    3d5c:	0f 91       	pop	r16
-    3d5e:	ff 90       	pop	r15
-    3d60:	ef 90       	pop	r14
-    3d62:	08 95       	ret
-
-00003d64 <__divdi3>:
-    3d64:	a2 e7       	ldi	r26, 0x72	; 114
-    3d66:	b0 e0       	ldi	r27, 0x00	; 0
-    3d68:	e8 eb       	ldi	r30, 0xB8	; 184
-    3d6a:	fe e1       	ldi	r31, 0x1E	; 30
-    3d6c:	0c 94 96 32 	jmp	0x652c	; 0x652c <__prologue_saves__>
-    3d70:	98 2e       	mov	r9, r24
-    3d72:	89 2e       	mov	r8, r25
-    3d74:	71 2e       	mov	r7, r17
-    3d76:	88 e0       	ldi	r24, 0x08	; 8
-    3d78:	fe 01       	movw	r30, r28
-    3d7a:	31 96       	adiw	r30, 0x01	; 1
-    3d7c:	df 01       	movw	r26, r30
-    3d7e:	68 2e       	mov	r6, r24
-    3d80:	1d 92       	st	X+, r1
-    3d82:	6a 94       	dec	r6
-    3d84:	e9 f7       	brne	.-6      	; 0x3d80 <__divdi3+0x1c>
-    3d86:	29 83       	std	Y+1, r18	; 0x01
-    3d88:	3a 83       	std	Y+2, r19	; 0x02
-    3d8a:	4b 83       	std	Y+3, r20	; 0x03
-    3d8c:	5c 83       	std	Y+4, r21	; 0x04
-    3d8e:	6d 83       	std	Y+5, r22	; 0x05
-    3d90:	7e 83       	std	Y+6, r23	; 0x06
-    3d92:	9f 82       	std	Y+7, r9	; 0x07
-    3d94:	98 87       	std	Y+8, r25	; 0x08
-    3d96:	fe 01       	movw	r30, r28
-    3d98:	39 96       	adiw	r30, 0x09	; 9
-    3d9a:	df 01       	movw	r26, r30
-    3d9c:	1d 92       	st	X+, r1
-    3d9e:	8a 95       	dec	r24
-    3da0:	e9 f7       	brne	.-6      	; 0x3d9c <__divdi3+0x38>
-    3da2:	a9 86       	std	Y+9, r10	; 0x09
-    3da4:	ba 86       	std	Y+10, r11	; 0x0a
-    3da6:	cb 86       	std	Y+11, r12	; 0x0b
-    3da8:	dc 86       	std	Y+12, r13	; 0x0c
-    3daa:	ed 86       	std	Y+13, r14	; 0x0d
-    3dac:	fe 86       	std	Y+14, r15	; 0x0e
-    3dae:	0f 87       	std	Y+15, r16	; 0x0f
-    3db0:	18 8b       	std	Y+16, r17	; 0x10
-    3db2:	8d 81       	ldd	r24, Y+5	; 0x05
-    3db4:	9e 81       	ldd	r25, Y+6	; 0x06
-    3db6:	af 81       	ldd	r26, Y+7	; 0x07
-    3db8:	b8 85       	ldd	r27, Y+8	; 0x08
-    3dba:	b7 fd       	sbrc	r27, 7
-    3dbc:	07 c0       	rjmp	.+14     	; 0x3dcc <__divdi3+0x68>
-    3dbe:	e1 96       	adiw	r28, 0x31	; 49
-    3dc0:	1c ae       	std	Y+60, r1	; 0x3c
-    3dc2:	1d ae       	std	Y+61, r1	; 0x3d
-    3dc4:	1e ae       	std	Y+62, r1	; 0x3e
-    3dc6:	1f ae       	std	Y+63, r1	; 0x3f
-    3dc8:	e1 97       	sbiw	r28, 0x31	; 49
-    3dca:	64 c0       	rjmp	.+200    	; 0x3e94 <__divdi3+0x130>
-    3dcc:	21 95       	neg	r18
-    3dce:	81 e0       	ldi	r24, 0x01	; 1
-    3dd0:	12 16       	cp	r1, r18
-    3dd2:	08 f0       	brcs	.+2      	; 0x3dd6 <__divdi3+0x72>
-    3dd4:	80 e0       	ldi	r24, 0x00	; 0
-    3dd6:	31 95       	neg	r19
-    3dd8:	91 e0       	ldi	r25, 0x01	; 1
-    3dda:	13 16       	cp	r1, r19
-    3ddc:	08 f0       	brcs	.+2      	; 0x3de0 <__divdi3+0x7c>
-    3dde:	90 e0       	ldi	r25, 0x00	; 0
-    3de0:	b3 2f       	mov	r27, r19
-    3de2:	b8 1b       	sub	r27, r24
-    3de4:	81 e0       	ldi	r24, 0x01	; 1
-    3de6:	3b 17       	cp	r19, r27
-    3de8:	08 f0       	brcs	.+2      	; 0x3dec <__divdi3+0x88>
-    3dea:	80 e0       	ldi	r24, 0x00	; 0
-    3dec:	98 2b       	or	r25, r24
-    3dee:	41 95       	neg	r20
-    3df0:	31 e0       	ldi	r19, 0x01	; 1
-    3df2:	14 16       	cp	r1, r20
-    3df4:	08 f0       	brcs	.+2      	; 0x3df8 <__divdi3+0x94>
-    3df6:	30 e0       	ldi	r19, 0x00	; 0
-    3df8:	a4 2f       	mov	r26, r20
-    3dfa:	a9 1b       	sub	r26, r25
-    3dfc:	81 e0       	ldi	r24, 0x01	; 1
-    3dfe:	4a 17       	cp	r20, r26
-    3e00:	08 f0       	brcs	.+2      	; 0x3e04 <__divdi3+0xa0>
-    3e02:	80 e0       	ldi	r24, 0x00	; 0
-    3e04:	38 2b       	or	r19, r24
-    3e06:	51 95       	neg	r21
-    3e08:	91 e0       	ldi	r25, 0x01	; 1
-    3e0a:	15 16       	cp	r1, r21
-    3e0c:	08 f0       	brcs	.+2      	; 0x3e10 <__divdi3+0xac>
-    3e0e:	90 e0       	ldi	r25, 0x00	; 0
-    3e10:	f5 2f       	mov	r31, r21
-    3e12:	f3 1b       	sub	r31, r19
-    3e14:	81 e0       	ldi	r24, 0x01	; 1
-    3e16:	5f 17       	cp	r21, r31
-    3e18:	08 f0       	brcs	.+2      	; 0x3e1c <__divdi3+0xb8>
-    3e1a:	80 e0       	ldi	r24, 0x00	; 0
-    3e1c:	98 2b       	or	r25, r24
-    3e1e:	61 95       	neg	r22
-    3e20:	31 e0       	ldi	r19, 0x01	; 1
-    3e22:	16 16       	cp	r1, r22
-    3e24:	08 f0       	brcs	.+2      	; 0x3e28 <__divdi3+0xc4>
-    3e26:	30 e0       	ldi	r19, 0x00	; 0
-    3e28:	e6 2f       	mov	r30, r22
-    3e2a:	e9 1b       	sub	r30, r25
-    3e2c:	81 e0       	ldi	r24, 0x01	; 1
-    3e2e:	6e 17       	cp	r22, r30
-    3e30:	08 f0       	brcs	.+2      	; 0x3e34 <__divdi3+0xd0>
-    3e32:	80 e0       	ldi	r24, 0x00	; 0
-    3e34:	38 2b       	or	r19, r24
-    3e36:	71 95       	neg	r23
-    3e38:	41 e0       	ldi	r20, 0x01	; 1
-    3e3a:	17 16       	cp	r1, r23
-    3e3c:	08 f0       	brcs	.+2      	; 0x3e40 <__divdi3+0xdc>
-    3e3e:	40 e0       	ldi	r20, 0x00	; 0
-    3e40:	57 2f       	mov	r21, r23
-    3e42:	53 1b       	sub	r21, r19
-    3e44:	81 e0       	ldi	r24, 0x01	; 1
-    3e46:	75 17       	cp	r23, r21
-    3e48:	08 f0       	brcs	.+2      	; 0x3e4c <__divdi3+0xe8>
-    3e4a:	80 e0       	ldi	r24, 0x00	; 0
-    3e4c:	48 2b       	or	r20, r24
-    3e4e:	89 2d       	mov	r24, r9
-    3e50:	81 95       	neg	r24
-    3e52:	91 e0       	ldi	r25, 0x01	; 1
-    3e54:	18 16       	cp	r1, r24
-    3e56:	08 f0       	brcs	.+2      	; 0x3e5a <__divdi3+0xf6>
-    3e58:	90 e0       	ldi	r25, 0x00	; 0
-    3e5a:	68 2e       	mov	r6, r24
-    3e5c:	64 1a       	sub	r6, r20
-    3e5e:	46 2d       	mov	r20, r6
-    3e60:	31 e0       	ldi	r19, 0x01	; 1
-    3e62:	86 15       	cp	r24, r6
-    3e64:	08 f0       	brcs	.+2      	; 0x3e68 <__divdi3+0x104>
-    3e66:	30 e0       	ldi	r19, 0x00	; 0
-    3e68:	93 2b       	or	r25, r19
-    3e6a:	88 2d       	mov	r24, r8
-    3e6c:	81 95       	neg	r24
-    3e6e:	89 1b       	sub	r24, r25
-    3e70:	29 83       	std	Y+1, r18	; 0x01
-    3e72:	ba 83       	std	Y+2, r27	; 0x02
-    3e74:	ab 83       	std	Y+3, r26	; 0x03
-    3e76:	fc 83       	std	Y+4, r31	; 0x04
-    3e78:	ed 83       	std	Y+5, r30	; 0x05
-    3e7a:	5e 83       	std	Y+6, r21	; 0x06
-    3e7c:	4f 83       	std	Y+7, r20	; 0x07
-    3e7e:	88 87       	std	Y+8, r24	; 0x08
-    3e80:	2f ef       	ldi	r18, 0xFF	; 255
-    3e82:	3f ef       	ldi	r19, 0xFF	; 255
-    3e84:	4f ef       	ldi	r20, 0xFF	; 255
-    3e86:	5f ef       	ldi	r21, 0xFF	; 255
-    3e88:	e1 96       	adiw	r28, 0x31	; 49
-    3e8a:	2c af       	std	Y+60, r18	; 0x3c
-    3e8c:	3d af       	std	Y+61, r19	; 0x3d
-    3e8e:	4e af       	std	Y+62, r20	; 0x3e
-    3e90:	5f af       	std	Y+63, r21	; 0x3f
-    3e92:	e1 97       	sbiw	r28, 0x31	; 49
-    3e94:	8d 85       	ldd	r24, Y+13	; 0x0d
-    3e96:	9e 85       	ldd	r25, Y+14	; 0x0e
-    3e98:	af 85       	ldd	r26, Y+15	; 0x0f
-    3e9a:	b8 89       	ldd	r27, Y+16	; 0x10
-    3e9c:	b7 ff       	sbrs	r27, 7
-    3e9e:	6a c0       	rjmp	.+212    	; 0x3f74 <__divdi3+0x210>
-    3ea0:	e1 96       	adiw	r28, 0x31	; 49
-    3ea2:	4c ad       	ldd	r20, Y+60	; 0x3c
-    3ea4:	5d ad       	ldd	r21, Y+61	; 0x3d
-    3ea6:	6e ad       	ldd	r22, Y+62	; 0x3e
-    3ea8:	7f ad       	ldd	r23, Y+63	; 0x3f
-    3eaa:	e1 97       	sbiw	r28, 0x31	; 49
-    3eac:	40 95       	com	r20
-    3eae:	50 95       	com	r21
-    3eb0:	60 95       	com	r22
-    3eb2:	70 95       	com	r23
-    3eb4:	e1 96       	adiw	r28, 0x31	; 49
-    3eb6:	4c af       	std	Y+60, r20	; 0x3c
-    3eb8:	5d af       	std	Y+61, r21	; 0x3d
-    3eba:	6e af       	std	Y+62, r22	; 0x3e
-    3ebc:	7f af       	std	Y+63, r23	; 0x3f
-    3ebe:	e1 97       	sbiw	r28, 0x31	; 49
-    3ec0:	a1 94       	neg	r10
-    3ec2:	81 e0       	ldi	r24, 0x01	; 1
-    3ec4:	1a 14       	cp	r1, r10
-    3ec6:	08 f0       	brcs	.+2      	; 0x3eca <__divdi3+0x166>
-    3ec8:	80 e0       	ldi	r24, 0x00	; 0
-    3eca:	b1 94       	neg	r11
-    3ecc:	91 e0       	ldi	r25, 0x01	; 1
-    3ece:	1b 14       	cp	r1, r11
-    3ed0:	08 f0       	brcs	.+2      	; 0x3ed4 <__divdi3+0x170>
-    3ed2:	90 e0       	ldi	r25, 0x00	; 0
-    3ed4:	6b 2d       	mov	r22, r11
-    3ed6:	68 1b       	sub	r22, r24
-    3ed8:	81 e0       	ldi	r24, 0x01	; 1
-    3eda:	b6 16       	cp	r11, r22
-    3edc:	08 f0       	brcs	.+2      	; 0x3ee0 <__divdi3+0x17c>
-    3ede:	80 e0       	ldi	r24, 0x00	; 0
-    3ee0:	98 2b       	or	r25, r24
-    3ee2:	c1 94       	neg	r12
-    3ee4:	21 e0       	ldi	r18, 0x01	; 1
-    3ee6:	1c 14       	cp	r1, r12
-    3ee8:	08 f0       	brcs	.+2      	; 0x3eec <__divdi3+0x188>
-    3eea:	20 e0       	ldi	r18, 0x00	; 0
-    3eec:	5c 2d       	mov	r21, r12
-    3eee:	59 1b       	sub	r21, r25
-    3ef0:	81 e0       	ldi	r24, 0x01	; 1
-    3ef2:	c5 16       	cp	r12, r21
-    3ef4:	08 f0       	brcs	.+2      	; 0x3ef8 <__divdi3+0x194>
-    3ef6:	80 e0       	ldi	r24, 0x00	; 0
-    3ef8:	28 2b       	or	r18, r24
-    3efa:	d1 94       	neg	r13
-    3efc:	91 e0       	ldi	r25, 0x01	; 1
-    3efe:	1d 14       	cp	r1, r13
-    3f00:	08 f0       	brcs	.+2      	; 0x3f04 <__divdi3+0x1a0>
-    3f02:	90 e0       	ldi	r25, 0x00	; 0
-    3f04:	4d 2d       	mov	r20, r13
-    3f06:	42 1b       	sub	r20, r18
-    3f08:	81 e0       	ldi	r24, 0x01	; 1
-    3f0a:	d4 16       	cp	r13, r20
-    3f0c:	08 f0       	brcs	.+2      	; 0x3f10 <__divdi3+0x1ac>
-    3f0e:	80 e0       	ldi	r24, 0x00	; 0
-    3f10:	98 2b       	or	r25, r24
-    3f12:	e1 94       	neg	r14
-    3f14:	21 e0       	ldi	r18, 0x01	; 1
-    3f16:	1e 14       	cp	r1, r14
-    3f18:	08 f0       	brcs	.+2      	; 0x3f1c <__divdi3+0x1b8>
-    3f1a:	20 e0       	ldi	r18, 0x00	; 0
-    3f1c:	3e 2d       	mov	r19, r14
-    3f1e:	39 1b       	sub	r19, r25
-    3f20:	81 e0       	ldi	r24, 0x01	; 1
-    3f22:	e3 16       	cp	r14, r19
-    3f24:	08 f0       	brcs	.+2      	; 0x3f28 <__divdi3+0x1c4>
-    3f26:	80 e0       	ldi	r24, 0x00	; 0
-    3f28:	28 2b       	or	r18, r24
-    3f2a:	f1 94       	neg	r15
-    3f2c:	91 e0       	ldi	r25, 0x01	; 1
-    3f2e:	1f 14       	cp	r1, r15
-    3f30:	08 f0       	brcs	.+2      	; 0x3f34 <__divdi3+0x1d0>
-    3f32:	90 e0       	ldi	r25, 0x00	; 0
-    3f34:	7f 2d       	mov	r23, r15
-    3f36:	72 1b       	sub	r23, r18
-    3f38:	27 2f       	mov	r18, r23
-    3f3a:	81 e0       	ldi	r24, 0x01	; 1
-    3f3c:	f7 16       	cp	r15, r23
-    3f3e:	08 f0       	brcs	.+2      	; 0x3f42 <__divdi3+0x1de>
-    3f40:	80 e0       	ldi	r24, 0x00	; 0
-    3f42:	98 2b       	or	r25, r24
-    3f44:	01 95       	neg	r16
-    3f46:	11 e0       	ldi	r17, 0x01	; 1
-    3f48:	10 16       	cp	r1, r16
-    3f4a:	08 f0       	brcs	.+2      	; 0x3f4e <__divdi3+0x1ea>
-    3f4c:	10 e0       	ldi	r17, 0x00	; 0
-    3f4e:	80 2f       	mov	r24, r16
-    3f50:	89 1b       	sub	r24, r25
-    3f52:	98 2f       	mov	r25, r24
-    3f54:	81 e0       	ldi	r24, 0x01	; 1
-    3f56:	09 17       	cp	r16, r25
-    3f58:	08 f0       	brcs	.+2      	; 0x3f5c <__divdi3+0x1f8>
-    3f5a:	80 e0       	ldi	r24, 0x00	; 0
-    3f5c:	18 2b       	or	r17, r24
-    3f5e:	87 2d       	mov	r24, r7
-    3f60:	81 95       	neg	r24
-    3f62:	81 1b       	sub	r24, r17
-    3f64:	a9 86       	std	Y+9, r10	; 0x09
-    3f66:	6a 87       	std	Y+10, r22	; 0x0a
-    3f68:	5b 87       	std	Y+11, r21	; 0x0b
-    3f6a:	4c 87       	std	Y+12, r20	; 0x0c
-    3f6c:	3d 87       	std	Y+13, r19	; 0x0d
-    3f6e:	2e 87       	std	Y+14, r18	; 0x0e
-    3f70:	9f 87       	std	Y+15, r25	; 0x0f
-    3f72:	88 8b       	std	Y+16, r24	; 0x10
-    3f74:	99 81       	ldd	r25, Y+1	; 0x01
-    3f76:	2a 81       	ldd	r18, Y+2	; 0x02
-    3f78:	3b 81       	ldd	r19, Y+3	; 0x03
-    3f7a:	4c 81       	ldd	r20, Y+4	; 0x04
-    3f7c:	5d 81       	ldd	r21, Y+5	; 0x05
-    3f7e:	6e 81       	ldd	r22, Y+6	; 0x06
-    3f80:	7f 81       	ldd	r23, Y+7	; 0x07
-    3f82:	a8 85       	ldd	r26, Y+8	; 0x08
-    3f84:	b9 85       	ldd	r27, Y+9	; 0x09
-    3f86:	1a 85       	ldd	r17, Y+10	; 0x0a
-    3f88:	0b 85       	ldd	r16, Y+11	; 0x0b
-    3f8a:	fc 84       	ldd	r15, Y+12	; 0x0c
-    3f8c:	ed 84       	ldd	r14, Y+13	; 0x0d
-    3f8e:	de 84       	ldd	r13, Y+14	; 0x0e
-    3f90:	cf 84       	ldd	r12, Y+15	; 0x0f
-    3f92:	b8 88       	ldd	r11, Y+16	; 0x10
-    3f94:	88 e0       	ldi	r24, 0x08	; 8
-    3f96:	e1 e1       	ldi	r30, 0x11	; 17
-    3f98:	8e 2e       	mov	r8, r30
-    3f9a:	91 2c       	mov	r9, r1
-    3f9c:	8c 0e       	add	r8, r28
-    3f9e:	9d 1e       	adc	r9, r29
-    3fa0:	f4 01       	movw	r30, r8
-    3fa2:	68 2e       	mov	r6, r24
-    3fa4:	11 92       	st	Z+, r1
-    3fa6:	6a 94       	dec	r6
-    3fa8:	e9 f7       	brne	.-6      	; 0x3fa4 <__divdi3+0x240>
-    3faa:	99 8b       	std	Y+17, r25	; 0x11
-    3fac:	2a 8b       	std	Y+18, r18	; 0x12
-    3fae:	3b 8b       	std	Y+19, r19	; 0x13
-    3fb0:	4c 8b       	std	Y+20, r20	; 0x14
-    3fb2:	5d 8b       	std	Y+21, r21	; 0x15
-    3fb4:	6e 8b       	std	Y+22, r22	; 0x16
-    3fb6:	7f 8b       	std	Y+23, r23	; 0x17
-    3fb8:	a8 8f       	std	Y+24, r26	; 0x18
-    3fba:	9e 01       	movw	r18, r28
-    3fbc:	27 5e       	subi	r18, 0xE7	; 231
-    3fbe:	3f 4f       	sbci	r19, 0xFF	; 255
-    3fc0:	f9 01       	movw	r30, r18
-    3fc2:	11 92       	st	Z+, r1
-    3fc4:	8a 95       	dec	r24
-    3fc6:	e9 f7       	brne	.-6      	; 0x3fc2 <__divdi3+0x25e>
-    3fc8:	b9 8f       	std	Y+25, r27	; 0x19
-    3fca:	1a 8f       	std	Y+26, r17	; 0x1a
-    3fcc:	0b 8f       	std	Y+27, r16	; 0x1b
-    3fce:	fc 8e       	std	Y+28, r15	; 0x1c
-    3fd0:	ed 8e       	std	Y+29, r14	; 0x1d
-    3fd2:	de 8e       	std	Y+30, r13	; 0x1e
-    3fd4:	cf 8e       	std	Y+31, r12	; 0x1f
-    3fd6:	b8 a2       	std	Y+32, r11	; 0x20
-    3fd8:	29 8c       	ldd	r2, Y+25	; 0x19
-    3fda:	3a 8c       	ldd	r3, Y+26	; 0x1a
-    3fdc:	4b 8c       	ldd	r4, Y+27	; 0x1b
-    3fde:	5c 8c       	ldd	r5, Y+28	; 0x1c
-    3fe0:	ed 8c       	ldd	r14, Y+29	; 0x1d
-    3fe2:	fe 8c       	ldd	r15, Y+30	; 0x1e
-    3fe4:	0f 8d       	ldd	r16, Y+31	; 0x1f
-    3fe6:	18 a1       	ldd	r17, Y+32	; 0x20
-    3fe8:	69 88       	ldd	r6, Y+17	; 0x11
-    3fea:	7a 88       	ldd	r7, Y+18	; 0x12
-    3fec:	8b 88       	ldd	r8, Y+19	; 0x13
-    3fee:	9c 88       	ldd	r9, Y+20	; 0x14
-    3ff0:	21 96       	adiw	r28, 0x01	; 1
-    3ff2:	6c ae       	std	Y+60, r6	; 0x3c
-    3ff4:	7d ae       	std	Y+61, r7	; 0x3d
-    3ff6:	8e ae       	std	Y+62, r8	; 0x3e
-    3ff8:	9f ae       	std	Y+63, r9	; 0x3f
-    3ffa:	21 97       	sbiw	r28, 0x01	; 1
-    3ffc:	6d 88       	ldd	r6, Y+21	; 0x15
-    3ffe:	7e 88       	ldd	r7, Y+22	; 0x16
-    4000:	8f 88       	ldd	r8, Y+23	; 0x17
-    4002:	98 8c       	ldd	r9, Y+24	; 0x18
-    4004:	e1 14       	cp	r14, r1
-    4006:	f1 04       	cpc	r15, r1
-    4008:	01 05       	cpc	r16, r1
-    400a:	11 05       	cpc	r17, r1
-    400c:	09 f0       	breq	.+2      	; 0x4010 <__divdi3+0x2ac>
-    400e:	d9 c3       	rjmp	.+1970   	; 0x47c2 <__divdi3+0xa5e>
-    4010:	62 14       	cp	r6, r2
-    4012:	73 04       	cpc	r7, r3
-    4014:	84 04       	cpc	r8, r4
-    4016:	95 04       	cpc	r9, r5
-    4018:	08 f0       	brcs	.+2      	; 0x401c <__divdi3+0x2b8>
-    401a:	57 c1       	rjmp	.+686    	; 0x42ca <__divdi3+0x566>
-    401c:	00 e0       	ldi	r16, 0x00	; 0
-    401e:	20 16       	cp	r2, r16
-    4020:	00 e0       	ldi	r16, 0x00	; 0
-    4022:	30 06       	cpc	r3, r16
-    4024:	01 e0       	ldi	r16, 0x01	; 1
-    4026:	40 06       	cpc	r4, r16
-    4028:	00 e0       	ldi	r16, 0x00	; 0
-    402a:	50 06       	cpc	r5, r16
-    402c:	88 f4       	brcc	.+34     	; 0x4050 <__divdi3+0x2ec>
-    402e:	1f ef       	ldi	r17, 0xFF	; 255
-    4030:	21 16       	cp	r2, r17
-    4032:	31 04       	cpc	r3, r1
-    4034:	41 04       	cpc	r4, r1
-    4036:	51 04       	cpc	r5, r1
-    4038:	39 f0       	breq	.+14     	; 0x4048 <__divdi3+0x2e4>
-    403a:	30 f0       	brcs	.+12     	; 0x4048 <__divdi3+0x2e4>
-    403c:	48 e0       	ldi	r20, 0x08	; 8
-    403e:	e4 2e       	mov	r14, r20
-    4040:	f1 2c       	mov	r15, r1
-    4042:	01 2d       	mov	r16, r1
-    4044:	11 2d       	mov	r17, r1
-    4046:	18 c0       	rjmp	.+48     	; 0x4078 <__divdi3+0x314>
-    4048:	ee 24       	eor	r14, r14
-    404a:	ff 24       	eor	r15, r15
-    404c:	87 01       	movw	r16, r14
-    404e:	14 c0       	rjmp	.+40     	; 0x4078 <__divdi3+0x314>
-    4050:	20 e0       	ldi	r18, 0x00	; 0
-    4052:	22 16       	cp	r2, r18
-    4054:	20 e0       	ldi	r18, 0x00	; 0
-    4056:	32 06       	cpc	r3, r18
-    4058:	20 e0       	ldi	r18, 0x00	; 0
-    405a:	42 06       	cpc	r4, r18
-    405c:	21 e0       	ldi	r18, 0x01	; 1
-    405e:	52 06       	cpc	r5, r18
-    4060:	30 f0       	brcs	.+12     	; 0x406e <__divdi3+0x30a>
-    4062:	38 e1       	ldi	r19, 0x18	; 24
-    4064:	e3 2e       	mov	r14, r19
-    4066:	f1 2c       	mov	r15, r1
-    4068:	01 2d       	mov	r16, r1
-    406a:	11 2d       	mov	r17, r1
-    406c:	05 c0       	rjmp	.+10     	; 0x4078 <__divdi3+0x314>
-    406e:	20 e1       	ldi	r18, 0x10	; 16
-    4070:	e2 2e       	mov	r14, r18
-    4072:	f1 2c       	mov	r15, r1
-    4074:	01 2d       	mov	r16, r1
-    4076:	11 2d       	mov	r17, r1
-    4078:	d2 01       	movw	r26, r4
-    407a:	c1 01       	movw	r24, r2
-    407c:	0e 2c       	mov	r0, r14
-    407e:	04 c0       	rjmp	.+8      	; 0x4088 <__divdi3+0x324>
-    4080:	b6 95       	lsr	r27
-    4082:	a7 95       	ror	r26
-    4084:	97 95       	ror	r25
-    4086:	87 95       	ror	r24
-    4088:	0a 94       	dec	r0
-    408a:	d2 f7       	brpl	.-12     	; 0x4080 <__divdi3+0x31c>
-    408c:	89 59       	subi	r24, 0x99	; 153
-    408e:	9b 4f       	sbci	r25, 0xFB	; 251
-    4090:	dc 01       	movw	r26, r24
-    4092:	2c 91       	ld	r18, X
-    4094:	80 e2       	ldi	r24, 0x20	; 32
-    4096:	90 e0       	ldi	r25, 0x00	; 0
-    4098:	a0 e0       	ldi	r26, 0x00	; 0
-    409a:	b0 e0       	ldi	r27, 0x00	; 0
-    409c:	8e 19       	sub	r24, r14
-    409e:	9f 09       	sbc	r25, r15
-    40a0:	a0 0b       	sbc	r26, r16
-    40a2:	b1 0b       	sbc	r27, r17
-    40a4:	7c 01       	movw	r14, r24
-    40a6:	8d 01       	movw	r16, r26
-    40a8:	e2 1a       	sub	r14, r18
-    40aa:	f1 08       	sbc	r15, r1
-    40ac:	01 09       	sbc	r16, r1
-    40ae:	11 09       	sbc	r17, r1
-    40b0:	e1 14       	cp	r14, r1
-    40b2:	f1 04       	cpc	r15, r1
-    40b4:	01 05       	cpc	r16, r1
-    40b6:	11 05       	cpc	r17, r1
-    40b8:	d1 f1       	breq	.+116    	; 0x412e <__divdi3+0x3ca>
-    40ba:	0e 2c       	mov	r0, r14
-    40bc:	04 c0       	rjmp	.+8      	; 0x40c6 <__divdi3+0x362>
-    40be:	22 0c       	add	r2, r2
-    40c0:	33 1c       	adc	r3, r3
-    40c2:	44 1c       	adc	r4, r4
-    40c4:	55 1c       	adc	r5, r5
-    40c6:	0a 94       	dec	r0
-    40c8:	d2 f7       	brpl	.-12     	; 0x40be <__divdi3+0x35a>
-    40ca:	a4 01       	movw	r20, r8
-    40cc:	93 01       	movw	r18, r6
+00003db6 <__divdi3>:
+    3db6:	a2 e7       	ldi	r26, 0x72	; 114
+    3db8:	b0 e0       	ldi	r27, 0x00	; 0
+    3dba:	e1 ee       	ldi	r30, 0xE1	; 225
+    3dbc:	fe e1       	ldi	r31, 0x1E	; 30
+    3dbe:	0c 94 2d 30 	jmp	0x605a	; 0x605a <__prologue_saves__>
+    3dc2:	98 2e       	mov	r9, r24
+    3dc4:	89 2e       	mov	r8, r25
+    3dc6:	71 2e       	mov	r7, r17
+    3dc8:	88 e0       	ldi	r24, 0x08	; 8
+    3dca:	fe 01       	movw	r30, r28
+    3dcc:	31 96       	adiw	r30, 0x01	; 1
+    3dce:	df 01       	movw	r26, r30
+    3dd0:	68 2e       	mov	r6, r24
+    3dd2:	1d 92       	st	X+, r1
+    3dd4:	6a 94       	dec	r6
+    3dd6:	e9 f7       	brne	.-6      	; 0x3dd2 <__divdi3+0x1c>
+    3dd8:	29 83       	std	Y+1, r18	; 0x01
+    3dda:	3a 83       	std	Y+2, r19	; 0x02
+    3ddc:	4b 83       	std	Y+3, r20	; 0x03
+    3dde:	5c 83       	std	Y+4, r21	; 0x04
+    3de0:	6d 83       	std	Y+5, r22	; 0x05
+    3de2:	7e 83       	std	Y+6, r23	; 0x06
+    3de4:	9f 82       	std	Y+7, r9	; 0x07
+    3de6:	98 87       	std	Y+8, r25	; 0x08
+    3de8:	fe 01       	movw	r30, r28
+    3dea:	39 96       	adiw	r30, 0x09	; 9
+    3dec:	df 01       	movw	r26, r30
+    3dee:	1d 92       	st	X+, r1
+    3df0:	8a 95       	dec	r24
+    3df2:	e9 f7       	brne	.-6      	; 0x3dee <__divdi3+0x38>
+    3df4:	a9 86       	std	Y+9, r10	; 0x09
+    3df6:	ba 86       	std	Y+10, r11	; 0x0a
+    3df8:	cb 86       	std	Y+11, r12	; 0x0b
+    3dfa:	dc 86       	std	Y+12, r13	; 0x0c
+    3dfc:	ed 86       	std	Y+13, r14	; 0x0d
+    3dfe:	fe 86       	std	Y+14, r15	; 0x0e
+    3e00:	0f 87       	std	Y+15, r16	; 0x0f
+    3e02:	18 8b       	std	Y+16, r17	; 0x10
+    3e04:	8d 81       	ldd	r24, Y+5	; 0x05
+    3e06:	9e 81       	ldd	r25, Y+6	; 0x06
+    3e08:	af 81       	ldd	r26, Y+7	; 0x07
+    3e0a:	b8 85       	ldd	r27, Y+8	; 0x08
+    3e0c:	b7 fd       	sbrc	r27, 7
+    3e0e:	07 c0       	rjmp	.+14     	; 0x3e1e <__divdi3+0x68>
+    3e10:	e1 96       	adiw	r28, 0x31	; 49
+    3e12:	1c ae       	std	Y+60, r1	; 0x3c
+    3e14:	1d ae       	std	Y+61, r1	; 0x3d
+    3e16:	1e ae       	std	Y+62, r1	; 0x3e
+    3e18:	1f ae       	std	Y+63, r1	; 0x3f
+    3e1a:	e1 97       	sbiw	r28, 0x31	; 49
+    3e1c:	64 c0       	rjmp	.+200    	; 0x3ee6 <__divdi3+0x130>
+    3e1e:	21 95       	neg	r18
+    3e20:	81 e0       	ldi	r24, 0x01	; 1
+    3e22:	12 16       	cp	r1, r18
+    3e24:	08 f0       	brcs	.+2      	; 0x3e28 <__divdi3+0x72>
+    3e26:	80 e0       	ldi	r24, 0x00	; 0
+    3e28:	31 95       	neg	r19
+    3e2a:	91 e0       	ldi	r25, 0x01	; 1
+    3e2c:	13 16       	cp	r1, r19
+    3e2e:	08 f0       	brcs	.+2      	; 0x3e32 <__divdi3+0x7c>
+    3e30:	90 e0       	ldi	r25, 0x00	; 0
+    3e32:	b3 2f       	mov	r27, r19
+    3e34:	b8 1b       	sub	r27, r24
+    3e36:	81 e0       	ldi	r24, 0x01	; 1
+    3e38:	3b 17       	cp	r19, r27
+    3e3a:	08 f0       	brcs	.+2      	; 0x3e3e <__divdi3+0x88>
+    3e3c:	80 e0       	ldi	r24, 0x00	; 0
+    3e3e:	98 2b       	or	r25, r24
+    3e40:	41 95       	neg	r20
+    3e42:	31 e0       	ldi	r19, 0x01	; 1
+    3e44:	14 16       	cp	r1, r20
+    3e46:	08 f0       	brcs	.+2      	; 0x3e4a <__divdi3+0x94>
+    3e48:	30 e0       	ldi	r19, 0x00	; 0
+    3e4a:	a4 2f       	mov	r26, r20
+    3e4c:	a9 1b       	sub	r26, r25
+    3e4e:	81 e0       	ldi	r24, 0x01	; 1
+    3e50:	4a 17       	cp	r20, r26
+    3e52:	08 f0       	brcs	.+2      	; 0x3e56 <__divdi3+0xa0>
+    3e54:	80 e0       	ldi	r24, 0x00	; 0
+    3e56:	38 2b       	or	r19, r24
+    3e58:	51 95       	neg	r21
+    3e5a:	91 e0       	ldi	r25, 0x01	; 1
+    3e5c:	15 16       	cp	r1, r21
+    3e5e:	08 f0       	brcs	.+2      	; 0x3e62 <__divdi3+0xac>
+    3e60:	90 e0       	ldi	r25, 0x00	; 0
+    3e62:	f5 2f       	mov	r31, r21
+    3e64:	f3 1b       	sub	r31, r19
+    3e66:	81 e0       	ldi	r24, 0x01	; 1
+    3e68:	5f 17       	cp	r21, r31
+    3e6a:	08 f0       	brcs	.+2      	; 0x3e6e <__divdi3+0xb8>
+    3e6c:	80 e0       	ldi	r24, 0x00	; 0
+    3e6e:	98 2b       	or	r25, r24
+    3e70:	61 95       	neg	r22
+    3e72:	31 e0       	ldi	r19, 0x01	; 1
+    3e74:	16 16       	cp	r1, r22
+    3e76:	08 f0       	brcs	.+2      	; 0x3e7a <__divdi3+0xc4>
+    3e78:	30 e0       	ldi	r19, 0x00	; 0
+    3e7a:	e6 2f       	mov	r30, r22
+    3e7c:	e9 1b       	sub	r30, r25
+    3e7e:	81 e0       	ldi	r24, 0x01	; 1
+    3e80:	6e 17       	cp	r22, r30
+    3e82:	08 f0       	brcs	.+2      	; 0x3e86 <__divdi3+0xd0>
+    3e84:	80 e0       	ldi	r24, 0x00	; 0
+    3e86:	38 2b       	or	r19, r24
+    3e88:	71 95       	neg	r23
+    3e8a:	41 e0       	ldi	r20, 0x01	; 1
+    3e8c:	17 16       	cp	r1, r23
+    3e8e:	08 f0       	brcs	.+2      	; 0x3e92 <__divdi3+0xdc>
+    3e90:	40 e0       	ldi	r20, 0x00	; 0
+    3e92:	57 2f       	mov	r21, r23
+    3e94:	53 1b       	sub	r21, r19
+    3e96:	81 e0       	ldi	r24, 0x01	; 1
+    3e98:	75 17       	cp	r23, r21
+    3e9a:	08 f0       	brcs	.+2      	; 0x3e9e <__divdi3+0xe8>
+    3e9c:	80 e0       	ldi	r24, 0x00	; 0
+    3e9e:	48 2b       	or	r20, r24
+    3ea0:	89 2d       	mov	r24, r9
+    3ea2:	81 95       	neg	r24
+    3ea4:	91 e0       	ldi	r25, 0x01	; 1
+    3ea6:	18 16       	cp	r1, r24
+    3ea8:	08 f0       	brcs	.+2      	; 0x3eac <__divdi3+0xf6>
+    3eaa:	90 e0       	ldi	r25, 0x00	; 0
+    3eac:	68 2e       	mov	r6, r24
+    3eae:	64 1a       	sub	r6, r20
+    3eb0:	46 2d       	mov	r20, r6
+    3eb2:	31 e0       	ldi	r19, 0x01	; 1
+    3eb4:	86 15       	cp	r24, r6
+    3eb6:	08 f0       	brcs	.+2      	; 0x3eba <__divdi3+0x104>
+    3eb8:	30 e0       	ldi	r19, 0x00	; 0
+    3eba:	93 2b       	or	r25, r19
+    3ebc:	88 2d       	mov	r24, r8
+    3ebe:	81 95       	neg	r24
+    3ec0:	89 1b       	sub	r24, r25
+    3ec2:	29 83       	std	Y+1, r18	; 0x01
+    3ec4:	ba 83       	std	Y+2, r27	; 0x02
+    3ec6:	ab 83       	std	Y+3, r26	; 0x03
+    3ec8:	fc 83       	std	Y+4, r31	; 0x04
+    3eca:	ed 83       	std	Y+5, r30	; 0x05
+    3ecc:	5e 83       	std	Y+6, r21	; 0x06
+    3ece:	4f 83       	std	Y+7, r20	; 0x07
+    3ed0:	88 87       	std	Y+8, r24	; 0x08
+    3ed2:	2f ef       	ldi	r18, 0xFF	; 255
+    3ed4:	3f ef       	ldi	r19, 0xFF	; 255
+    3ed6:	4f ef       	ldi	r20, 0xFF	; 255
+    3ed8:	5f ef       	ldi	r21, 0xFF	; 255
+    3eda:	e1 96       	adiw	r28, 0x31	; 49
+    3edc:	2c af       	std	Y+60, r18	; 0x3c
+    3ede:	3d af       	std	Y+61, r19	; 0x3d
+    3ee0:	4e af       	std	Y+62, r20	; 0x3e
+    3ee2:	5f af       	std	Y+63, r21	; 0x3f
+    3ee4:	e1 97       	sbiw	r28, 0x31	; 49
+    3ee6:	8d 85       	ldd	r24, Y+13	; 0x0d
+    3ee8:	9e 85       	ldd	r25, Y+14	; 0x0e
+    3eea:	af 85       	ldd	r26, Y+15	; 0x0f
+    3eec:	b8 89       	ldd	r27, Y+16	; 0x10
+    3eee:	b7 ff       	sbrs	r27, 7
+    3ef0:	6a c0       	rjmp	.+212    	; 0x3fc6 <__divdi3+0x210>
+    3ef2:	e1 96       	adiw	r28, 0x31	; 49
+    3ef4:	4c ad       	ldd	r20, Y+60	; 0x3c
+    3ef6:	5d ad       	ldd	r21, Y+61	; 0x3d
+    3ef8:	6e ad       	ldd	r22, Y+62	; 0x3e
+    3efa:	7f ad       	ldd	r23, Y+63	; 0x3f
+    3efc:	e1 97       	sbiw	r28, 0x31	; 49
+    3efe:	40 95       	com	r20
+    3f00:	50 95       	com	r21
+    3f02:	60 95       	com	r22
+    3f04:	70 95       	com	r23
+    3f06:	e1 96       	adiw	r28, 0x31	; 49
+    3f08:	4c af       	std	Y+60, r20	; 0x3c
+    3f0a:	5d af       	std	Y+61, r21	; 0x3d
+    3f0c:	6e af       	std	Y+62, r22	; 0x3e
+    3f0e:	7f af       	std	Y+63, r23	; 0x3f
+    3f10:	e1 97       	sbiw	r28, 0x31	; 49
+    3f12:	a1 94       	neg	r10
+    3f14:	81 e0       	ldi	r24, 0x01	; 1
+    3f16:	1a 14       	cp	r1, r10
+    3f18:	08 f0       	brcs	.+2      	; 0x3f1c <__divdi3+0x166>
+    3f1a:	80 e0       	ldi	r24, 0x00	; 0
+    3f1c:	b1 94       	neg	r11
+    3f1e:	91 e0       	ldi	r25, 0x01	; 1
+    3f20:	1b 14       	cp	r1, r11
+    3f22:	08 f0       	brcs	.+2      	; 0x3f26 <__divdi3+0x170>
+    3f24:	90 e0       	ldi	r25, 0x00	; 0
+    3f26:	6b 2d       	mov	r22, r11
+    3f28:	68 1b       	sub	r22, r24
+    3f2a:	81 e0       	ldi	r24, 0x01	; 1
+    3f2c:	b6 16       	cp	r11, r22
+    3f2e:	08 f0       	brcs	.+2      	; 0x3f32 <__divdi3+0x17c>
+    3f30:	80 e0       	ldi	r24, 0x00	; 0
+    3f32:	98 2b       	or	r25, r24
+    3f34:	c1 94       	neg	r12
+    3f36:	21 e0       	ldi	r18, 0x01	; 1
+    3f38:	1c 14       	cp	r1, r12
+    3f3a:	08 f0       	brcs	.+2      	; 0x3f3e <__divdi3+0x188>
+    3f3c:	20 e0       	ldi	r18, 0x00	; 0
+    3f3e:	5c 2d       	mov	r21, r12
+    3f40:	59 1b       	sub	r21, r25
+    3f42:	81 e0       	ldi	r24, 0x01	; 1
+    3f44:	c5 16       	cp	r12, r21
+    3f46:	08 f0       	brcs	.+2      	; 0x3f4a <__divdi3+0x194>
+    3f48:	80 e0       	ldi	r24, 0x00	; 0
+    3f4a:	28 2b       	or	r18, r24
+    3f4c:	d1 94       	neg	r13
+    3f4e:	91 e0       	ldi	r25, 0x01	; 1
+    3f50:	1d 14       	cp	r1, r13
+    3f52:	08 f0       	brcs	.+2      	; 0x3f56 <__divdi3+0x1a0>
+    3f54:	90 e0       	ldi	r25, 0x00	; 0
+    3f56:	4d 2d       	mov	r20, r13
+    3f58:	42 1b       	sub	r20, r18
+    3f5a:	81 e0       	ldi	r24, 0x01	; 1
+    3f5c:	d4 16       	cp	r13, r20
+    3f5e:	08 f0       	brcs	.+2      	; 0x3f62 <__divdi3+0x1ac>
+    3f60:	80 e0       	ldi	r24, 0x00	; 0
+    3f62:	98 2b       	or	r25, r24
+    3f64:	e1 94       	neg	r14
+    3f66:	21 e0       	ldi	r18, 0x01	; 1
+    3f68:	1e 14       	cp	r1, r14
+    3f6a:	08 f0       	brcs	.+2      	; 0x3f6e <__divdi3+0x1b8>
+    3f6c:	20 e0       	ldi	r18, 0x00	; 0
+    3f6e:	3e 2d       	mov	r19, r14
+    3f70:	39 1b       	sub	r19, r25
+    3f72:	81 e0       	ldi	r24, 0x01	; 1
+    3f74:	e3 16       	cp	r14, r19
+    3f76:	08 f0       	brcs	.+2      	; 0x3f7a <__divdi3+0x1c4>
+    3f78:	80 e0       	ldi	r24, 0x00	; 0
+    3f7a:	28 2b       	or	r18, r24
+    3f7c:	f1 94       	neg	r15
+    3f7e:	91 e0       	ldi	r25, 0x01	; 1
+    3f80:	1f 14       	cp	r1, r15
+    3f82:	08 f0       	brcs	.+2      	; 0x3f86 <__divdi3+0x1d0>
+    3f84:	90 e0       	ldi	r25, 0x00	; 0
+    3f86:	7f 2d       	mov	r23, r15
+    3f88:	72 1b       	sub	r23, r18
+    3f8a:	27 2f       	mov	r18, r23
+    3f8c:	81 e0       	ldi	r24, 0x01	; 1
+    3f8e:	f7 16       	cp	r15, r23
+    3f90:	08 f0       	brcs	.+2      	; 0x3f94 <__divdi3+0x1de>
+    3f92:	80 e0       	ldi	r24, 0x00	; 0
+    3f94:	98 2b       	or	r25, r24
+    3f96:	01 95       	neg	r16
+    3f98:	11 e0       	ldi	r17, 0x01	; 1
+    3f9a:	10 16       	cp	r1, r16
+    3f9c:	08 f0       	brcs	.+2      	; 0x3fa0 <__divdi3+0x1ea>
+    3f9e:	10 e0       	ldi	r17, 0x00	; 0
+    3fa0:	80 2f       	mov	r24, r16
+    3fa2:	89 1b       	sub	r24, r25
+    3fa4:	98 2f       	mov	r25, r24
+    3fa6:	81 e0       	ldi	r24, 0x01	; 1
+    3fa8:	09 17       	cp	r16, r25
+    3faa:	08 f0       	brcs	.+2      	; 0x3fae <__divdi3+0x1f8>
+    3fac:	80 e0       	ldi	r24, 0x00	; 0
+    3fae:	18 2b       	or	r17, r24
+    3fb0:	87 2d       	mov	r24, r7
+    3fb2:	81 95       	neg	r24
+    3fb4:	81 1b       	sub	r24, r17
+    3fb6:	a9 86       	std	Y+9, r10	; 0x09
+    3fb8:	6a 87       	std	Y+10, r22	; 0x0a
+    3fba:	5b 87       	std	Y+11, r21	; 0x0b
+    3fbc:	4c 87       	std	Y+12, r20	; 0x0c
+    3fbe:	3d 87       	std	Y+13, r19	; 0x0d
+    3fc0:	2e 87       	std	Y+14, r18	; 0x0e
+    3fc2:	9f 87       	std	Y+15, r25	; 0x0f
+    3fc4:	88 8b       	std	Y+16, r24	; 0x10
+    3fc6:	99 81       	ldd	r25, Y+1	; 0x01
+    3fc8:	2a 81       	ldd	r18, Y+2	; 0x02
+    3fca:	3b 81       	ldd	r19, Y+3	; 0x03
+    3fcc:	4c 81       	ldd	r20, Y+4	; 0x04
+    3fce:	5d 81       	ldd	r21, Y+5	; 0x05
+    3fd0:	6e 81       	ldd	r22, Y+6	; 0x06
+    3fd2:	7f 81       	ldd	r23, Y+7	; 0x07
+    3fd4:	a8 85       	ldd	r26, Y+8	; 0x08
+    3fd6:	b9 85       	ldd	r27, Y+9	; 0x09
+    3fd8:	1a 85       	ldd	r17, Y+10	; 0x0a
+    3fda:	0b 85       	ldd	r16, Y+11	; 0x0b
+    3fdc:	fc 84       	ldd	r15, Y+12	; 0x0c
+    3fde:	ed 84       	ldd	r14, Y+13	; 0x0d
+    3fe0:	de 84       	ldd	r13, Y+14	; 0x0e
+    3fe2:	cf 84       	ldd	r12, Y+15	; 0x0f
+    3fe4:	b8 88       	ldd	r11, Y+16	; 0x10
+    3fe6:	88 e0       	ldi	r24, 0x08	; 8
+    3fe8:	e1 e1       	ldi	r30, 0x11	; 17
+    3fea:	8e 2e       	mov	r8, r30
+    3fec:	91 2c       	mov	r9, r1
+    3fee:	8c 0e       	add	r8, r28
+    3ff0:	9d 1e       	adc	r9, r29
+    3ff2:	f4 01       	movw	r30, r8
+    3ff4:	68 2e       	mov	r6, r24
+    3ff6:	11 92       	st	Z+, r1
+    3ff8:	6a 94       	dec	r6
+    3ffa:	e9 f7       	brne	.-6      	; 0x3ff6 <__divdi3+0x240>
+    3ffc:	99 8b       	std	Y+17, r25	; 0x11
+    3ffe:	2a 8b       	std	Y+18, r18	; 0x12
+    4000:	3b 8b       	std	Y+19, r19	; 0x13
+    4002:	4c 8b       	std	Y+20, r20	; 0x14
+    4004:	5d 8b       	std	Y+21, r21	; 0x15
+    4006:	6e 8b       	std	Y+22, r22	; 0x16
+    4008:	7f 8b       	std	Y+23, r23	; 0x17
+    400a:	a8 8f       	std	Y+24, r26	; 0x18
+    400c:	9e 01       	movw	r18, r28
+    400e:	27 5e       	subi	r18, 0xE7	; 231
+    4010:	3f 4f       	sbci	r19, 0xFF	; 255
+    4012:	f9 01       	movw	r30, r18
+    4014:	11 92       	st	Z+, r1
+    4016:	8a 95       	dec	r24
+    4018:	e9 f7       	brne	.-6      	; 0x4014 <__divdi3+0x25e>
+    401a:	b9 8f       	std	Y+25, r27	; 0x19
+    401c:	1a 8f       	std	Y+26, r17	; 0x1a
+    401e:	0b 8f       	std	Y+27, r16	; 0x1b
+    4020:	fc 8e       	std	Y+28, r15	; 0x1c
+    4022:	ed 8e       	std	Y+29, r14	; 0x1d
+    4024:	de 8e       	std	Y+30, r13	; 0x1e
+    4026:	cf 8e       	std	Y+31, r12	; 0x1f
+    4028:	b8 a2       	std	Y+32, r11	; 0x20
+    402a:	29 8c       	ldd	r2, Y+25	; 0x19
+    402c:	3a 8c       	ldd	r3, Y+26	; 0x1a
+    402e:	4b 8c       	ldd	r4, Y+27	; 0x1b
+    4030:	5c 8c       	ldd	r5, Y+28	; 0x1c
+    4032:	ed 8c       	ldd	r14, Y+29	; 0x1d
+    4034:	fe 8c       	ldd	r15, Y+30	; 0x1e
+    4036:	0f 8d       	ldd	r16, Y+31	; 0x1f
+    4038:	18 a1       	ldd	r17, Y+32	; 0x20
+    403a:	69 88       	ldd	r6, Y+17	; 0x11
+    403c:	7a 88       	ldd	r7, Y+18	; 0x12
+    403e:	8b 88       	ldd	r8, Y+19	; 0x13
+    4040:	9c 88       	ldd	r9, Y+20	; 0x14
+    4042:	21 96       	adiw	r28, 0x01	; 1
+    4044:	6c ae       	std	Y+60, r6	; 0x3c
+    4046:	7d ae       	std	Y+61, r7	; 0x3d
+    4048:	8e ae       	std	Y+62, r8	; 0x3e
+    404a:	9f ae       	std	Y+63, r9	; 0x3f
+    404c:	21 97       	sbiw	r28, 0x01	; 1
+    404e:	6d 88       	ldd	r6, Y+21	; 0x15
+    4050:	7e 88       	ldd	r7, Y+22	; 0x16
+    4052:	8f 88       	ldd	r8, Y+23	; 0x17
+    4054:	98 8c       	ldd	r9, Y+24	; 0x18
+    4056:	e1 14       	cp	r14, r1
+    4058:	f1 04       	cpc	r15, r1
+    405a:	01 05       	cpc	r16, r1
+    405c:	11 05       	cpc	r17, r1
+    405e:	09 f0       	breq	.+2      	; 0x4062 <__divdi3+0x2ac>
+    4060:	d9 c3       	rjmp	.+1970   	; 0x4814 <__divdi3+0xa5e>
+    4062:	62 14       	cp	r6, r2
+    4064:	73 04       	cpc	r7, r3
+    4066:	84 04       	cpc	r8, r4
+    4068:	95 04       	cpc	r9, r5
+    406a:	08 f0       	brcs	.+2      	; 0x406e <__divdi3+0x2b8>
+    406c:	57 c1       	rjmp	.+686    	; 0x431c <__divdi3+0x566>
+    406e:	00 e0       	ldi	r16, 0x00	; 0
+    4070:	20 16       	cp	r2, r16
+    4072:	00 e0       	ldi	r16, 0x00	; 0
+    4074:	30 06       	cpc	r3, r16
+    4076:	01 e0       	ldi	r16, 0x01	; 1
+    4078:	40 06       	cpc	r4, r16
+    407a:	00 e0       	ldi	r16, 0x00	; 0
+    407c:	50 06       	cpc	r5, r16
+    407e:	88 f4       	brcc	.+34     	; 0x40a2 <__divdi3+0x2ec>
+    4080:	1f ef       	ldi	r17, 0xFF	; 255
+    4082:	21 16       	cp	r2, r17
+    4084:	31 04       	cpc	r3, r1
+    4086:	41 04       	cpc	r4, r1
+    4088:	51 04       	cpc	r5, r1
+    408a:	39 f0       	breq	.+14     	; 0x409a <__divdi3+0x2e4>
+    408c:	30 f0       	brcs	.+12     	; 0x409a <__divdi3+0x2e4>
+    408e:	48 e0       	ldi	r20, 0x08	; 8
+    4090:	e4 2e       	mov	r14, r20
+    4092:	f1 2c       	mov	r15, r1
+    4094:	01 2d       	mov	r16, r1
+    4096:	11 2d       	mov	r17, r1
+    4098:	18 c0       	rjmp	.+48     	; 0x40ca <__divdi3+0x314>
+    409a:	ee 24       	eor	r14, r14
+    409c:	ff 24       	eor	r15, r15
+    409e:	87 01       	movw	r16, r14
+    40a0:	14 c0       	rjmp	.+40     	; 0x40ca <__divdi3+0x314>
+    40a2:	20 e0       	ldi	r18, 0x00	; 0
+    40a4:	22 16       	cp	r2, r18
+    40a6:	20 e0       	ldi	r18, 0x00	; 0
+    40a8:	32 06       	cpc	r3, r18
+    40aa:	20 e0       	ldi	r18, 0x00	; 0
+    40ac:	42 06       	cpc	r4, r18
+    40ae:	21 e0       	ldi	r18, 0x01	; 1
+    40b0:	52 06       	cpc	r5, r18
+    40b2:	30 f0       	brcs	.+12     	; 0x40c0 <__divdi3+0x30a>
+    40b4:	38 e1       	ldi	r19, 0x18	; 24
+    40b6:	e3 2e       	mov	r14, r19
+    40b8:	f1 2c       	mov	r15, r1
+    40ba:	01 2d       	mov	r16, r1
+    40bc:	11 2d       	mov	r17, r1
+    40be:	05 c0       	rjmp	.+10     	; 0x40ca <__divdi3+0x314>
+    40c0:	20 e1       	ldi	r18, 0x10	; 16
+    40c2:	e2 2e       	mov	r14, r18
+    40c4:	f1 2c       	mov	r15, r1
+    40c6:	01 2d       	mov	r16, r1
+    40c8:	11 2d       	mov	r17, r1
+    40ca:	d2 01       	movw	r26, r4
+    40cc:	c1 01       	movw	r24, r2
     40ce:	0e 2c       	mov	r0, r14
-    40d0:	04 c0       	rjmp	.+8      	; 0x40da <__divdi3+0x376>
-    40d2:	22 0f       	add	r18, r18
-    40d4:	33 1f       	adc	r19, r19
-    40d6:	44 1f       	adc	r20, r20
-    40d8:	55 1f       	adc	r21, r21
+    40d0:	04 c0       	rjmp	.+8      	; 0x40da <__divdi3+0x324>
+    40d2:	b6 95       	lsr	r27
+    40d4:	a7 95       	ror	r26
+    40d6:	97 95       	ror	r25
+    40d8:	87 95       	ror	r24
     40da:	0a 94       	dec	r0
-    40dc:	d2 f7       	brpl	.-12     	; 0x40d2 <__divdi3+0x36e>
-    40de:	80 e2       	ldi	r24, 0x20	; 32
-    40e0:	90 e0       	ldi	r25, 0x00	; 0
-    40e2:	8e 19       	sub	r24, r14
-    40e4:	9f 09       	sbc	r25, r15
-    40e6:	21 96       	adiw	r28, 0x01	; 1
-    40e8:	6c ac       	ldd	r6, Y+60	; 0x3c
-    40ea:	7d ac       	ldd	r7, Y+61	; 0x3d
-    40ec:	8e ac       	ldd	r8, Y+62	; 0x3e
-    40ee:	9f ac       	ldd	r9, Y+63	; 0x3f
-    40f0:	21 97       	sbiw	r28, 0x01	; 1
-    40f2:	04 c0       	rjmp	.+8      	; 0x40fc <__divdi3+0x398>
-    40f4:	96 94       	lsr	r9
-    40f6:	87 94       	ror	r8
-    40f8:	77 94       	ror	r7
-    40fa:	67 94       	ror	r6
-    40fc:	8a 95       	dec	r24
-    40fe:	d2 f7       	brpl	.-12     	; 0x40f4 <__divdi3+0x390>
-    4100:	62 2a       	or	r6, r18
-    4102:	73 2a       	or	r7, r19
-    4104:	84 2a       	or	r8, r20
-    4106:	95 2a       	or	r9, r21
-    4108:	21 96       	adiw	r28, 0x01	; 1
-    410a:	ac ac       	ldd	r10, Y+60	; 0x3c
-    410c:	bd ac       	ldd	r11, Y+61	; 0x3d
-    410e:	ce ac       	ldd	r12, Y+62	; 0x3e
-    4110:	df ac       	ldd	r13, Y+63	; 0x3f
-    4112:	21 97       	sbiw	r28, 0x01	; 1
-    4114:	04 c0       	rjmp	.+8      	; 0x411e <__divdi3+0x3ba>
-    4116:	aa 0c       	add	r10, r10
-    4118:	bb 1c       	adc	r11, r11
-    411a:	cc 1c       	adc	r12, r12
-    411c:	dd 1c       	adc	r13, r13
-    411e:	ea 94       	dec	r14
-    4120:	d2 f7       	brpl	.-12     	; 0x4116 <__divdi3+0x3b2>
-    4122:	21 96       	adiw	r28, 0x01	; 1
-    4124:	ac ae       	std	Y+60, r10	; 0x3c
-    4126:	bd ae       	std	Y+61, r11	; 0x3d
-    4128:	ce ae       	std	Y+62, r12	; 0x3e
-    412a:	df ae       	std	Y+63, r13	; 0x3f
-    412c:	21 97       	sbiw	r28, 0x01	; 1
-    412e:	62 01       	movw	r12, r4
-    4130:	ee 24       	eor	r14, r14
-    4132:	ff 24       	eor	r15, r15
-    4134:	29 96       	adiw	r28, 0x09	; 9
-    4136:	cc ae       	std	Y+60, r12	; 0x3c
-    4138:	dd ae       	std	Y+61, r13	; 0x3d
-    413a:	ee ae       	std	Y+62, r14	; 0x3e
-    413c:	ff ae       	std	Y+63, r15	; 0x3f
-    413e:	29 97       	sbiw	r28, 0x09	; 9
-    4140:	92 01       	movw	r18, r4
-    4142:	81 01       	movw	r16, r2
-    4144:	20 70       	andi	r18, 0x00	; 0
-    4146:	30 70       	andi	r19, 0x00	; 0
-    4148:	2d 96       	adiw	r28, 0x0d	; 13
-    414a:	0c af       	std	Y+60, r16	; 0x3c
-    414c:	1d af       	std	Y+61, r17	; 0x3d
-    414e:	2e af       	std	Y+62, r18	; 0x3e
-    4150:	3f af       	std	Y+63, r19	; 0x3f
-    4152:	2d 97       	sbiw	r28, 0x0d	; 13
-    4154:	c4 01       	movw	r24, r8
-    4156:	b3 01       	movw	r22, r6
-    4158:	a7 01       	movw	r20, r14
-    415a:	96 01       	movw	r18, r12
-    415c:	0e 94 74 32 	call	0x64e8	; 0x64e8 <__udivmodsi4>
-    4160:	7b 01       	movw	r14, r22
-    4162:	8c 01       	movw	r16, r24
-    4164:	c4 01       	movw	r24, r8
-    4166:	b3 01       	movw	r22, r6
-    4168:	29 96       	adiw	r28, 0x09	; 9
-    416a:	2c ad       	ldd	r18, Y+60	; 0x3c
-    416c:	3d ad       	ldd	r19, Y+61	; 0x3d
-    416e:	4e ad       	ldd	r20, Y+62	; 0x3e
-    4170:	5f ad       	ldd	r21, Y+63	; 0x3f
-    4172:	29 97       	sbiw	r28, 0x09	; 9
-    4174:	0e 94 74 32 	call	0x64e8	; 0x64e8 <__udivmodsi4>
-    4178:	c9 01       	movw	r24, r18
-    417a:	da 01       	movw	r26, r20
-    417c:	3c 01       	movw	r6, r24
-    417e:	4d 01       	movw	r8, r26
-    4180:	c4 01       	movw	r24, r8
-    4182:	b3 01       	movw	r22, r6
-    4184:	2d 96       	adiw	r28, 0x0d	; 13
-    4186:	2c ad       	ldd	r18, Y+60	; 0x3c
-    4188:	3d ad       	ldd	r19, Y+61	; 0x3d
-    418a:	4e ad       	ldd	r20, Y+62	; 0x3e
-    418c:	5f ad       	ldd	r21, Y+63	; 0x3f
-    418e:	2d 97       	sbiw	r28, 0x0d	; 13
-    4190:	0e 94 41 32 	call	0x6482	; 0x6482 <__mulsi3>
-    4194:	9b 01       	movw	r18, r22
-    4196:	ac 01       	movw	r20, r24
-    4198:	87 01       	movw	r16, r14
-    419a:	ff 24       	eor	r15, r15
-    419c:	ee 24       	eor	r14, r14
-    419e:	21 96       	adiw	r28, 0x01	; 1
-    41a0:	ac ac       	ldd	r10, Y+60	; 0x3c
-    41a2:	bd ac       	ldd	r11, Y+61	; 0x3d
-    41a4:	ce ac       	ldd	r12, Y+62	; 0x3e
-    41a6:	df ac       	ldd	r13, Y+63	; 0x3f
-    41a8:	21 97       	sbiw	r28, 0x01	; 1
-    41aa:	c6 01       	movw	r24, r12
-    41ac:	aa 27       	eor	r26, r26
-    41ae:	bb 27       	eor	r27, r27
-    41b0:	57 01       	movw	r10, r14
-    41b2:	68 01       	movw	r12, r16
-    41b4:	a8 2a       	or	r10, r24
-    41b6:	b9 2a       	or	r11, r25
-    41b8:	ca 2a       	or	r12, r26
-    41ba:	db 2a       	or	r13, r27
-    41bc:	a2 16       	cp	r10, r18
-    41be:	b3 06       	cpc	r11, r19
-    41c0:	c4 06       	cpc	r12, r20
-    41c2:	d5 06       	cpc	r13, r21
-    41c4:	e0 f4       	brcc	.+56     	; 0x41fe <__divdi3+0x49a>
-    41c6:	08 94       	sec
-    41c8:	61 08       	sbc	r6, r1
-    41ca:	71 08       	sbc	r7, r1
-    41cc:	81 08       	sbc	r8, r1
-    41ce:	91 08       	sbc	r9, r1
-    41d0:	a2 0c       	add	r10, r2
-    41d2:	b3 1c       	adc	r11, r3
-    41d4:	c4 1c       	adc	r12, r4
-    41d6:	d5 1c       	adc	r13, r5
-    41d8:	a2 14       	cp	r10, r2
-    41da:	b3 04       	cpc	r11, r3
-    41dc:	c4 04       	cpc	r12, r4
-    41de:	d5 04       	cpc	r13, r5
-    41e0:	70 f0       	brcs	.+28     	; 0x41fe <__divdi3+0x49a>
-    41e2:	a2 16       	cp	r10, r18
-    41e4:	b3 06       	cpc	r11, r19
-    41e6:	c4 06       	cpc	r12, r20
-    41e8:	d5 06       	cpc	r13, r21
-    41ea:	48 f4       	brcc	.+18     	; 0x41fe <__divdi3+0x49a>
-    41ec:	08 94       	sec
-    41ee:	61 08       	sbc	r6, r1
-    41f0:	71 08       	sbc	r7, r1
-    41f2:	81 08       	sbc	r8, r1
-    41f4:	91 08       	sbc	r9, r1
-    41f6:	a2 0c       	add	r10, r2
-    41f8:	b3 1c       	adc	r11, r3
-    41fa:	c4 1c       	adc	r12, r4
-    41fc:	d5 1c       	adc	r13, r5
-    41fe:	a2 1a       	sub	r10, r18
-    4200:	b3 0a       	sbc	r11, r19
-    4202:	c4 0a       	sbc	r12, r20
-    4204:	d5 0a       	sbc	r13, r21
-    4206:	c6 01       	movw	r24, r12
-    4208:	b5 01       	movw	r22, r10
-    420a:	29 96       	adiw	r28, 0x09	; 9
-    420c:	2c ad       	ldd	r18, Y+60	; 0x3c
-    420e:	3d ad       	ldd	r19, Y+61	; 0x3d
-    4210:	4e ad       	ldd	r20, Y+62	; 0x3e
-    4212:	5f ad       	ldd	r21, Y+63	; 0x3f
-    4214:	29 97       	sbiw	r28, 0x09	; 9
-    4216:	0e 94 74 32 	call	0x64e8	; 0x64e8 <__udivmodsi4>
-    421a:	7b 01       	movw	r14, r22
-    421c:	8c 01       	movw	r16, r24
-    421e:	c6 01       	movw	r24, r12
-    4220:	b5 01       	movw	r22, r10
-    4222:	29 96       	adiw	r28, 0x09	; 9
-    4224:	2c ad       	ldd	r18, Y+60	; 0x3c
-    4226:	3d ad       	ldd	r19, Y+61	; 0x3d
-    4228:	4e ad       	ldd	r20, Y+62	; 0x3e
-    422a:	5f ad       	ldd	r21, Y+63	; 0x3f
-    422c:	29 97       	sbiw	r28, 0x09	; 9
-    422e:	0e 94 74 32 	call	0x64e8	; 0x64e8 <__udivmodsi4>
-    4232:	c9 01       	movw	r24, r18
-    4234:	da 01       	movw	r26, r20
-    4236:	5c 01       	movw	r10, r24
-    4238:	6d 01       	movw	r12, r26
-    423a:	c6 01       	movw	r24, r12
-    423c:	b5 01       	movw	r22, r10
-    423e:	2d 96       	adiw	r28, 0x0d	; 13
-    4240:	2c ad       	ldd	r18, Y+60	; 0x3c
-    4242:	3d ad       	ldd	r19, Y+61	; 0x3d
-    4244:	4e ad       	ldd	r20, Y+62	; 0x3e
-    4246:	5f ad       	ldd	r21, Y+63	; 0x3f
-    4248:	2d 97       	sbiw	r28, 0x0d	; 13
-    424a:	0e 94 41 32 	call	0x6482	; 0x6482 <__mulsi3>
-    424e:	9b 01       	movw	r18, r22
-    4250:	ac 01       	movw	r20, r24
-    4252:	87 01       	movw	r16, r14
-    4254:	ff 24       	eor	r15, r15
-    4256:	ee 24       	eor	r14, r14
-    4258:	21 96       	adiw	r28, 0x01	; 1
-    425a:	8c ad       	ldd	r24, Y+60	; 0x3c
-    425c:	9d ad       	ldd	r25, Y+61	; 0x3d
-    425e:	ae ad       	ldd	r26, Y+62	; 0x3e
-    4260:	bf ad       	ldd	r27, Y+63	; 0x3f
-    4262:	21 97       	sbiw	r28, 0x01	; 1
-    4264:	a0 70       	andi	r26, 0x00	; 0
-    4266:	b0 70       	andi	r27, 0x00	; 0
-    4268:	e8 2a       	or	r14, r24
-    426a:	f9 2a       	or	r15, r25
-    426c:	0a 2b       	or	r16, r26
-    426e:	1b 2b       	or	r17, r27
-    4270:	e2 16       	cp	r14, r18
-    4272:	f3 06       	cpc	r15, r19
-    4274:	04 07       	cpc	r16, r20
-    4276:	15 07       	cpc	r17, r21
-    4278:	c0 f4       	brcc	.+48     	; 0x42aa <__divdi3+0x546>
-    427a:	08 94       	sec
-    427c:	a1 08       	sbc	r10, r1
-    427e:	b1 08       	sbc	r11, r1
-    4280:	c1 08       	sbc	r12, r1
-    4282:	d1 08       	sbc	r13, r1
-    4284:	e2 0c       	add	r14, r2
-    4286:	f3 1c       	adc	r15, r3
-    4288:	04 1d       	adc	r16, r4
-    428a:	15 1d       	adc	r17, r5
-    428c:	e2 14       	cp	r14, r2
-    428e:	f3 04       	cpc	r15, r3
-    4290:	04 05       	cpc	r16, r4
-    4292:	15 05       	cpc	r17, r5
-    4294:	50 f0       	brcs	.+20     	; 0x42aa <__divdi3+0x546>
-    4296:	e2 16       	cp	r14, r18
-    4298:	f3 06       	cpc	r15, r19
-    429a:	04 07       	cpc	r16, r20
-    429c:	15 07       	cpc	r17, r21
-    429e:	28 f4       	brcc	.+10     	; 0x42aa <__divdi3+0x546>
-    42a0:	08 94       	sec
-    42a2:	a1 08       	sbc	r10, r1
-    42a4:	b1 08       	sbc	r11, r1
-    42a6:	c1 08       	sbc	r12, r1
-    42a8:	d1 08       	sbc	r13, r1
-    42aa:	d3 01       	movw	r26, r6
-    42ac:	99 27       	eor	r25, r25
-    42ae:	88 27       	eor	r24, r24
-    42b0:	86 01       	movw	r16, r12
-    42b2:	75 01       	movw	r14, r10
-    42b4:	e8 2a       	or	r14, r24
-    42b6:	f9 2a       	or	r15, r25
-    42b8:	0a 2b       	or	r16, r26
-    42ba:	1b 2b       	or	r17, r27
-    42bc:	25 96       	adiw	r28, 0x05	; 5
-    42be:	ec ae       	std	Y+60, r14	; 0x3c
-    42c0:	fd ae       	std	Y+61, r15	; 0x3d
-    42c2:	0e af       	std	Y+62, r16	; 0x3e
-    42c4:	1f af       	std	Y+63, r17	; 0x3f
-    42c6:	25 97       	sbiw	r28, 0x05	; 5
-    42c8:	eb c4       	rjmp	.+2518   	; 0x4ca0 <__divdi3+0xf3c>
-    42ca:	21 14       	cp	r2, r1
-    42cc:	31 04       	cpc	r3, r1
-    42ce:	41 04       	cpc	r4, r1
-    42d0:	51 04       	cpc	r5, r1
-    42d2:	71 f4       	brne	.+28     	; 0x42f0 <__divdi3+0x58c>
-    42d4:	61 e0       	ldi	r22, 0x01	; 1
-    42d6:	70 e0       	ldi	r23, 0x00	; 0
-    42d8:	80 e0       	ldi	r24, 0x00	; 0
-    42da:	90 e0       	ldi	r25, 0x00	; 0
-    42dc:	20 e0       	ldi	r18, 0x00	; 0
-    42de:	30 e0       	ldi	r19, 0x00	; 0
-    42e0:	40 e0       	ldi	r20, 0x00	; 0
-    42e2:	50 e0       	ldi	r21, 0x00	; 0
-    42e4:	0e 94 74 32 	call	0x64e8	; 0x64e8 <__udivmodsi4>
-    42e8:	c9 01       	movw	r24, r18
-    42ea:	da 01       	movw	r26, r20
-    42ec:	1c 01       	movw	r2, r24
-    42ee:	2d 01       	movw	r4, r26
-    42f0:	00 e0       	ldi	r16, 0x00	; 0
-    42f2:	20 16       	cp	r2, r16
-    42f4:	00 e0       	ldi	r16, 0x00	; 0
-    42f6:	30 06       	cpc	r3, r16
-    42f8:	01 e0       	ldi	r16, 0x01	; 1
-    42fa:	40 06       	cpc	r4, r16
-    42fc:	00 e0       	ldi	r16, 0x00	; 0
-    42fe:	50 06       	cpc	r5, r16
-    4300:	88 f4       	brcc	.+34     	; 0x4324 <__divdi3+0x5c0>
-    4302:	1f ef       	ldi	r17, 0xFF	; 255
-    4304:	21 16       	cp	r2, r17
-    4306:	31 04       	cpc	r3, r1
-    4308:	41 04       	cpc	r4, r1
-    430a:	51 04       	cpc	r5, r1
-    430c:	31 f0       	breq	.+12     	; 0x431a <__divdi3+0x5b6>
-    430e:	28 f0       	brcs	.+10     	; 0x431a <__divdi3+0x5b6>
-    4310:	48 e0       	ldi	r20, 0x08	; 8
-    4312:	50 e0       	ldi	r21, 0x00	; 0
-    4314:	60 e0       	ldi	r22, 0x00	; 0
-    4316:	70 e0       	ldi	r23, 0x00	; 0
-    4318:	17 c0       	rjmp	.+46     	; 0x4348 <__divdi3+0x5e4>
-    431a:	40 e0       	ldi	r20, 0x00	; 0
-    431c:	50 e0       	ldi	r21, 0x00	; 0
-    431e:	60 e0       	ldi	r22, 0x00	; 0
-    4320:	70 e0       	ldi	r23, 0x00	; 0
-    4322:	12 c0       	rjmp	.+36     	; 0x4348 <__divdi3+0x5e4>
-    4324:	20 e0       	ldi	r18, 0x00	; 0
-    4326:	22 16       	cp	r2, r18
-    4328:	20 e0       	ldi	r18, 0x00	; 0
-    432a:	32 06       	cpc	r3, r18
-    432c:	20 e0       	ldi	r18, 0x00	; 0
-    432e:	42 06       	cpc	r4, r18
-    4330:	21 e0       	ldi	r18, 0x01	; 1
-    4332:	52 06       	cpc	r5, r18
-    4334:	28 f0       	brcs	.+10     	; 0x4340 <__divdi3+0x5dc>
-    4336:	48 e1       	ldi	r20, 0x18	; 24
-    4338:	50 e0       	ldi	r21, 0x00	; 0
-    433a:	60 e0       	ldi	r22, 0x00	; 0
-    433c:	70 e0       	ldi	r23, 0x00	; 0
-    433e:	04 c0       	rjmp	.+8      	; 0x4348 <__divdi3+0x5e4>
-    4340:	40 e1       	ldi	r20, 0x10	; 16
-    4342:	50 e0       	ldi	r21, 0x00	; 0
-    4344:	60 e0       	ldi	r22, 0x00	; 0
-    4346:	70 e0       	ldi	r23, 0x00	; 0
-    4348:	d2 01       	movw	r26, r4
-    434a:	c1 01       	movw	r24, r2
-    434c:	04 2e       	mov	r0, r20
-    434e:	04 c0       	rjmp	.+8      	; 0x4358 <__divdi3+0x5f4>
-    4350:	b6 95       	lsr	r27
-    4352:	a7 95       	ror	r26
-    4354:	97 95       	ror	r25
-    4356:	87 95       	ror	r24
-    4358:	0a 94       	dec	r0
-    435a:	d2 f7       	brpl	.-12     	; 0x4350 <__divdi3+0x5ec>
-    435c:	89 59       	subi	r24, 0x99	; 153
-    435e:	9b 4f       	sbci	r25, 0xFB	; 251
-    4360:	dc 01       	movw	r26, r24
-    4362:	2c 91       	ld	r18, X
-    4364:	e0 e2       	ldi	r30, 0x20	; 32
-    4366:	ee 2e       	mov	r14, r30
-    4368:	f1 2c       	mov	r15, r1
-    436a:	01 2d       	mov	r16, r1
-    436c:	11 2d       	mov	r17, r1
-    436e:	d8 01       	movw	r26, r16
-    4370:	c7 01       	movw	r24, r14
-    4372:	84 1b       	sub	r24, r20
-    4374:	95 0b       	sbc	r25, r21
-    4376:	a6 0b       	sbc	r26, r22
-    4378:	b7 0b       	sbc	r27, r23
-    437a:	82 1b       	sub	r24, r18
-    437c:	91 09       	sbc	r25, r1
-    437e:	a1 09       	sbc	r26, r1
-    4380:	b1 09       	sbc	r27, r1
-    4382:	00 97       	sbiw	r24, 0x00	; 0
-    4384:	a1 05       	cpc	r26, r1
-    4386:	b1 05       	cpc	r27, r1
-    4388:	61 f4       	brne	.+24     	; 0x43a2 <__divdi3+0x63e>
-    438a:	64 01       	movw	r12, r8
-    438c:	53 01       	movw	r10, r6
-    438e:	a2 18       	sub	r10, r2
-    4390:	b3 08       	sbc	r11, r3
-    4392:	c4 08       	sbc	r12, r4
-    4394:	d5 08       	sbc	r13, r5
-    4396:	31 e0       	ldi	r19, 0x01	; 1
-    4398:	63 2e       	mov	r6, r19
-    439a:	71 2c       	mov	r7, r1
-    439c:	81 2c       	mov	r8, r1
-    439e:	91 2c       	mov	r9, r1
-    43a0:	24 c1       	rjmp	.+584    	; 0x45ea <__divdi3+0x886>
-    43a2:	e3 96       	adiw	r28, 0x33	; 51
-    43a4:	8f af       	std	Y+63, r24	; 0x3f
-    43a6:	e3 97       	sbiw	r28, 0x33	; 51
-    43a8:	08 2e       	mov	r0, r24
-    43aa:	04 c0       	rjmp	.+8      	; 0x43b4 <__divdi3+0x650>
-    43ac:	22 0c       	add	r2, r2
-    43ae:	33 1c       	adc	r3, r3
-    43b0:	44 1c       	adc	r4, r4
-    43b2:	55 1c       	adc	r5, r5
-    43b4:	0a 94       	dec	r0
-    43b6:	d2 f7       	brpl	.-12     	; 0x43ac <__divdi3+0x648>
-    43b8:	ee 2d       	mov	r30, r14
-    43ba:	e8 1b       	sub	r30, r24
-    43bc:	64 01       	movw	r12, r8
-    43be:	53 01       	movw	r10, r6
-    43c0:	0e 2e       	mov	r0, r30
-    43c2:	04 c0       	rjmp	.+8      	; 0x43cc <__divdi3+0x668>
-    43c4:	d6 94       	lsr	r13
-    43c6:	c7 94       	ror	r12
-    43c8:	b7 94       	ror	r11
-    43ca:	a7 94       	ror	r10
-    43cc:	0a 94       	dec	r0
-    43ce:	d2 f7       	brpl	.-12     	; 0x43c4 <__divdi3+0x660>
-    43d0:	a4 01       	movw	r20, r8
-    43d2:	93 01       	movw	r18, r6
-    43d4:	e3 96       	adiw	r28, 0x33	; 51
-    43d6:	0f ac       	ldd	r0, Y+63	; 0x3f
-    43d8:	e3 97       	sbiw	r28, 0x33	; 51
-    43da:	04 c0       	rjmp	.+8      	; 0x43e4 <__divdi3+0x680>
-    43dc:	22 0f       	add	r18, r18
-    43de:	33 1f       	adc	r19, r19
-    43e0:	44 1f       	adc	r20, r20
-    43e2:	55 1f       	adc	r21, r21
-    43e4:	0a 94       	dec	r0
-    43e6:	d2 f7       	brpl	.-12     	; 0x43dc <__divdi3+0x678>
-    43e8:	21 96       	adiw	r28, 0x01	; 1
-    43ea:	6c ac       	ldd	r6, Y+60	; 0x3c
-    43ec:	7d ac       	ldd	r7, Y+61	; 0x3d
-    43ee:	8e ac       	ldd	r8, Y+62	; 0x3e
-    43f0:	9f ac       	ldd	r9, Y+63	; 0x3f
-    43f2:	21 97       	sbiw	r28, 0x01	; 1
-    43f4:	0e 2e       	mov	r0, r30
-    43f6:	04 c0       	rjmp	.+8      	; 0x4400 <__divdi3+0x69c>
-    43f8:	96 94       	lsr	r9
-    43fa:	87 94       	ror	r8
-    43fc:	77 94       	ror	r7
-    43fe:	67 94       	ror	r6
-    4400:	0a 94       	dec	r0
-    4402:	d2 f7       	brpl	.-12     	; 0x43f8 <__divdi3+0x694>
-    4404:	84 01       	movw	r16, r8
-    4406:	73 01       	movw	r14, r6
-    4408:	e2 2a       	or	r14, r18
-    440a:	f3 2a       	or	r15, r19
-    440c:	04 2b       	or	r16, r20
-    440e:	15 2b       	or	r17, r21
-    4410:	e9 ae       	std	Y+57, r14	; 0x39
-    4412:	fa ae       	std	Y+58, r15	; 0x3a
-    4414:	0b af       	std	Y+59, r16	; 0x3b
-    4416:	1c af       	std	Y+60, r17	; 0x3c
-    4418:	32 01       	movw	r6, r4
-    441a:	88 24       	eor	r8, r8
-    441c:	99 24       	eor	r9, r9
-    441e:	92 01       	movw	r18, r4
-    4420:	81 01       	movw	r16, r2
-    4422:	20 70       	andi	r18, 0x00	; 0
-    4424:	30 70       	andi	r19, 0x00	; 0
-    4426:	61 96       	adiw	r28, 0x11	; 17
-    4428:	0c af       	std	Y+60, r16	; 0x3c
-    442a:	1d af       	std	Y+61, r17	; 0x3d
-    442c:	2e af       	std	Y+62, r18	; 0x3e
-    442e:	3f af       	std	Y+63, r19	; 0x3f
-    4430:	61 97       	sbiw	r28, 0x11	; 17
-    4432:	c6 01       	movw	r24, r12
-    4434:	b5 01       	movw	r22, r10
-    4436:	a4 01       	movw	r20, r8
-    4438:	93 01       	movw	r18, r6
-    443a:	0e 94 74 32 	call	0x64e8	; 0x64e8 <__udivmodsi4>
-    443e:	7b 01       	movw	r14, r22
-    4440:	8c 01       	movw	r16, r24
-    4442:	c6 01       	movw	r24, r12
-    4444:	b5 01       	movw	r22, r10
-    4446:	a4 01       	movw	r20, r8
-    4448:	93 01       	movw	r18, r6
-    444a:	0e 94 74 32 	call	0x64e8	; 0x64e8 <__udivmodsi4>
-    444e:	c9 01       	movw	r24, r18
-    4450:	da 01       	movw	r26, r20
-    4452:	65 96       	adiw	r28, 0x15	; 21
-    4454:	8c af       	std	Y+60, r24	; 0x3c
-    4456:	9d af       	std	Y+61, r25	; 0x3d
-    4458:	ae af       	std	Y+62, r26	; 0x3e
-    445a:	bf af       	std	Y+63, r27	; 0x3f
-    445c:	65 97       	sbiw	r28, 0x15	; 21
-    445e:	bc 01       	movw	r22, r24
-    4460:	cd 01       	movw	r24, r26
-    4462:	61 96       	adiw	r28, 0x11	; 17
-    4464:	2c ad       	ldd	r18, Y+60	; 0x3c
-    4466:	3d ad       	ldd	r19, Y+61	; 0x3d
-    4468:	4e ad       	ldd	r20, Y+62	; 0x3e
-    446a:	5f ad       	ldd	r21, Y+63	; 0x3f
-    446c:	61 97       	sbiw	r28, 0x11	; 17
-    446e:	0e 94 41 32 	call	0x6482	; 0x6482 <__mulsi3>
-    4472:	9b 01       	movw	r18, r22
-    4474:	ac 01       	movw	r20, r24
-    4476:	87 01       	movw	r16, r14
-    4478:	ff 24       	eor	r15, r15
-    447a:	ee 24       	eor	r14, r14
-    447c:	a9 ac       	ldd	r10, Y+57	; 0x39
-    447e:	ba ac       	ldd	r11, Y+58	; 0x3a
-    4480:	cb ac       	ldd	r12, Y+59	; 0x3b
-    4482:	dc ac       	ldd	r13, Y+60	; 0x3c
+    40dc:	d2 f7       	brpl	.-12     	; 0x40d2 <__divdi3+0x31c>
+    40de:	88 5a       	subi	r24, 0xA8	; 168
+    40e0:	9b 4f       	sbci	r25, 0xFB	; 251
+    40e2:	dc 01       	movw	r26, r24
+    40e4:	2c 91       	ld	r18, X
+    40e6:	80 e2       	ldi	r24, 0x20	; 32
+    40e8:	90 e0       	ldi	r25, 0x00	; 0
+    40ea:	a0 e0       	ldi	r26, 0x00	; 0
+    40ec:	b0 e0       	ldi	r27, 0x00	; 0
+    40ee:	8e 19       	sub	r24, r14
+    40f0:	9f 09       	sbc	r25, r15
+    40f2:	a0 0b       	sbc	r26, r16
+    40f4:	b1 0b       	sbc	r27, r17
+    40f6:	7c 01       	movw	r14, r24
+    40f8:	8d 01       	movw	r16, r26
+    40fa:	e2 1a       	sub	r14, r18
+    40fc:	f1 08       	sbc	r15, r1
+    40fe:	01 09       	sbc	r16, r1
+    4100:	11 09       	sbc	r17, r1
+    4102:	e1 14       	cp	r14, r1
+    4104:	f1 04       	cpc	r15, r1
+    4106:	01 05       	cpc	r16, r1
+    4108:	11 05       	cpc	r17, r1
+    410a:	d1 f1       	breq	.+116    	; 0x4180 <__divdi3+0x3ca>
+    410c:	0e 2c       	mov	r0, r14
+    410e:	04 c0       	rjmp	.+8      	; 0x4118 <__divdi3+0x362>
+    4110:	22 0c       	add	r2, r2
+    4112:	33 1c       	adc	r3, r3
+    4114:	44 1c       	adc	r4, r4
+    4116:	55 1c       	adc	r5, r5
+    4118:	0a 94       	dec	r0
+    411a:	d2 f7       	brpl	.-12     	; 0x4110 <__divdi3+0x35a>
+    411c:	a4 01       	movw	r20, r8
+    411e:	93 01       	movw	r18, r6
+    4120:	0e 2c       	mov	r0, r14
+    4122:	04 c0       	rjmp	.+8      	; 0x412c <__divdi3+0x376>
+    4124:	22 0f       	add	r18, r18
+    4126:	33 1f       	adc	r19, r19
+    4128:	44 1f       	adc	r20, r20
+    412a:	55 1f       	adc	r21, r21
+    412c:	0a 94       	dec	r0
+    412e:	d2 f7       	brpl	.-12     	; 0x4124 <__divdi3+0x36e>
+    4130:	80 e2       	ldi	r24, 0x20	; 32
+    4132:	90 e0       	ldi	r25, 0x00	; 0
+    4134:	8e 19       	sub	r24, r14
+    4136:	9f 09       	sbc	r25, r15
+    4138:	21 96       	adiw	r28, 0x01	; 1
+    413a:	6c ac       	ldd	r6, Y+60	; 0x3c
+    413c:	7d ac       	ldd	r7, Y+61	; 0x3d
+    413e:	8e ac       	ldd	r8, Y+62	; 0x3e
+    4140:	9f ac       	ldd	r9, Y+63	; 0x3f
+    4142:	21 97       	sbiw	r28, 0x01	; 1
+    4144:	04 c0       	rjmp	.+8      	; 0x414e <__divdi3+0x398>
+    4146:	96 94       	lsr	r9
+    4148:	87 94       	ror	r8
+    414a:	77 94       	ror	r7
+    414c:	67 94       	ror	r6
+    414e:	8a 95       	dec	r24
+    4150:	d2 f7       	brpl	.-12     	; 0x4146 <__divdi3+0x390>
+    4152:	62 2a       	or	r6, r18
+    4154:	73 2a       	or	r7, r19
+    4156:	84 2a       	or	r8, r20
+    4158:	95 2a       	or	r9, r21
+    415a:	21 96       	adiw	r28, 0x01	; 1
+    415c:	ac ac       	ldd	r10, Y+60	; 0x3c
+    415e:	bd ac       	ldd	r11, Y+61	; 0x3d
+    4160:	ce ac       	ldd	r12, Y+62	; 0x3e
+    4162:	df ac       	ldd	r13, Y+63	; 0x3f
+    4164:	21 97       	sbiw	r28, 0x01	; 1
+    4166:	04 c0       	rjmp	.+8      	; 0x4170 <__divdi3+0x3ba>
+    4168:	aa 0c       	add	r10, r10
+    416a:	bb 1c       	adc	r11, r11
+    416c:	cc 1c       	adc	r12, r12
+    416e:	dd 1c       	adc	r13, r13
+    4170:	ea 94       	dec	r14
+    4172:	d2 f7       	brpl	.-12     	; 0x4168 <__divdi3+0x3b2>
+    4174:	21 96       	adiw	r28, 0x01	; 1
+    4176:	ac ae       	std	Y+60, r10	; 0x3c
+    4178:	bd ae       	std	Y+61, r11	; 0x3d
+    417a:	ce ae       	std	Y+62, r12	; 0x3e
+    417c:	df ae       	std	Y+63, r13	; 0x3f
+    417e:	21 97       	sbiw	r28, 0x01	; 1
+    4180:	62 01       	movw	r12, r4
+    4182:	ee 24       	eor	r14, r14
+    4184:	ff 24       	eor	r15, r15
+    4186:	29 96       	adiw	r28, 0x09	; 9
+    4188:	cc ae       	std	Y+60, r12	; 0x3c
+    418a:	dd ae       	std	Y+61, r13	; 0x3d
+    418c:	ee ae       	std	Y+62, r14	; 0x3e
+    418e:	ff ae       	std	Y+63, r15	; 0x3f
+    4190:	29 97       	sbiw	r28, 0x09	; 9
+    4192:	92 01       	movw	r18, r4
+    4194:	81 01       	movw	r16, r2
+    4196:	20 70       	andi	r18, 0x00	; 0
+    4198:	30 70       	andi	r19, 0x00	; 0
+    419a:	2d 96       	adiw	r28, 0x0d	; 13
+    419c:	0c af       	std	Y+60, r16	; 0x3c
+    419e:	1d af       	std	Y+61, r17	; 0x3d
+    41a0:	2e af       	std	Y+62, r18	; 0x3e
+    41a2:	3f af       	std	Y+63, r19	; 0x3f
+    41a4:	2d 97       	sbiw	r28, 0x0d	; 13
+    41a6:	c4 01       	movw	r24, r8
+    41a8:	b3 01       	movw	r22, r6
+    41aa:	a7 01       	movw	r20, r14
+    41ac:	96 01       	movw	r18, r12
+    41ae:	0e 94 0b 30 	call	0x6016	; 0x6016 <__udivmodsi4>
+    41b2:	7b 01       	movw	r14, r22
+    41b4:	8c 01       	movw	r16, r24
+    41b6:	c4 01       	movw	r24, r8
+    41b8:	b3 01       	movw	r22, r6
+    41ba:	29 96       	adiw	r28, 0x09	; 9
+    41bc:	2c ad       	ldd	r18, Y+60	; 0x3c
+    41be:	3d ad       	ldd	r19, Y+61	; 0x3d
+    41c0:	4e ad       	ldd	r20, Y+62	; 0x3e
+    41c2:	5f ad       	ldd	r21, Y+63	; 0x3f
+    41c4:	29 97       	sbiw	r28, 0x09	; 9
+    41c6:	0e 94 0b 30 	call	0x6016	; 0x6016 <__udivmodsi4>
+    41ca:	c9 01       	movw	r24, r18
+    41cc:	da 01       	movw	r26, r20
+    41ce:	3c 01       	movw	r6, r24
+    41d0:	4d 01       	movw	r8, r26
+    41d2:	c4 01       	movw	r24, r8
+    41d4:	b3 01       	movw	r22, r6
+    41d6:	2d 96       	adiw	r28, 0x0d	; 13
+    41d8:	2c ad       	ldd	r18, Y+60	; 0x3c
+    41da:	3d ad       	ldd	r19, Y+61	; 0x3d
+    41dc:	4e ad       	ldd	r20, Y+62	; 0x3e
+    41de:	5f ad       	ldd	r21, Y+63	; 0x3f
+    41e0:	2d 97       	sbiw	r28, 0x0d	; 13
+    41e2:	0e 94 d8 2f 	call	0x5fb0	; 0x5fb0 <__mulsi3>
+    41e6:	9b 01       	movw	r18, r22
+    41e8:	ac 01       	movw	r20, r24
+    41ea:	87 01       	movw	r16, r14
+    41ec:	ff 24       	eor	r15, r15
+    41ee:	ee 24       	eor	r14, r14
+    41f0:	21 96       	adiw	r28, 0x01	; 1
+    41f2:	ac ac       	ldd	r10, Y+60	; 0x3c
+    41f4:	bd ac       	ldd	r11, Y+61	; 0x3d
+    41f6:	ce ac       	ldd	r12, Y+62	; 0x3e
+    41f8:	df ac       	ldd	r13, Y+63	; 0x3f
+    41fa:	21 97       	sbiw	r28, 0x01	; 1
+    41fc:	c6 01       	movw	r24, r12
+    41fe:	aa 27       	eor	r26, r26
+    4200:	bb 27       	eor	r27, r27
+    4202:	57 01       	movw	r10, r14
+    4204:	68 01       	movw	r12, r16
+    4206:	a8 2a       	or	r10, r24
+    4208:	b9 2a       	or	r11, r25
+    420a:	ca 2a       	or	r12, r26
+    420c:	db 2a       	or	r13, r27
+    420e:	a2 16       	cp	r10, r18
+    4210:	b3 06       	cpc	r11, r19
+    4212:	c4 06       	cpc	r12, r20
+    4214:	d5 06       	cpc	r13, r21
+    4216:	e0 f4       	brcc	.+56     	; 0x4250 <__divdi3+0x49a>
+    4218:	08 94       	sec
+    421a:	61 08       	sbc	r6, r1
+    421c:	71 08       	sbc	r7, r1
+    421e:	81 08       	sbc	r8, r1
+    4220:	91 08       	sbc	r9, r1
+    4222:	a2 0c       	add	r10, r2
+    4224:	b3 1c       	adc	r11, r3
+    4226:	c4 1c       	adc	r12, r4
+    4228:	d5 1c       	adc	r13, r5
+    422a:	a2 14       	cp	r10, r2
+    422c:	b3 04       	cpc	r11, r3
+    422e:	c4 04       	cpc	r12, r4
+    4230:	d5 04       	cpc	r13, r5
+    4232:	70 f0       	brcs	.+28     	; 0x4250 <__divdi3+0x49a>
+    4234:	a2 16       	cp	r10, r18
+    4236:	b3 06       	cpc	r11, r19
+    4238:	c4 06       	cpc	r12, r20
+    423a:	d5 06       	cpc	r13, r21
+    423c:	48 f4       	brcc	.+18     	; 0x4250 <__divdi3+0x49a>
+    423e:	08 94       	sec
+    4240:	61 08       	sbc	r6, r1
+    4242:	71 08       	sbc	r7, r1
+    4244:	81 08       	sbc	r8, r1
+    4246:	91 08       	sbc	r9, r1
+    4248:	a2 0c       	add	r10, r2
+    424a:	b3 1c       	adc	r11, r3
+    424c:	c4 1c       	adc	r12, r4
+    424e:	d5 1c       	adc	r13, r5
+    4250:	a2 1a       	sub	r10, r18
+    4252:	b3 0a       	sbc	r11, r19
+    4254:	c4 0a       	sbc	r12, r20
+    4256:	d5 0a       	sbc	r13, r21
+    4258:	c6 01       	movw	r24, r12
+    425a:	b5 01       	movw	r22, r10
+    425c:	29 96       	adiw	r28, 0x09	; 9
+    425e:	2c ad       	ldd	r18, Y+60	; 0x3c
+    4260:	3d ad       	ldd	r19, Y+61	; 0x3d
+    4262:	4e ad       	ldd	r20, Y+62	; 0x3e
+    4264:	5f ad       	ldd	r21, Y+63	; 0x3f
+    4266:	29 97       	sbiw	r28, 0x09	; 9
+    4268:	0e 94 0b 30 	call	0x6016	; 0x6016 <__udivmodsi4>
+    426c:	7b 01       	movw	r14, r22
+    426e:	8c 01       	movw	r16, r24
+    4270:	c6 01       	movw	r24, r12
+    4272:	b5 01       	movw	r22, r10
+    4274:	29 96       	adiw	r28, 0x09	; 9
+    4276:	2c ad       	ldd	r18, Y+60	; 0x3c
+    4278:	3d ad       	ldd	r19, Y+61	; 0x3d
+    427a:	4e ad       	ldd	r20, Y+62	; 0x3e
+    427c:	5f ad       	ldd	r21, Y+63	; 0x3f
+    427e:	29 97       	sbiw	r28, 0x09	; 9
+    4280:	0e 94 0b 30 	call	0x6016	; 0x6016 <__udivmodsi4>
+    4284:	c9 01       	movw	r24, r18
+    4286:	da 01       	movw	r26, r20
+    4288:	5c 01       	movw	r10, r24
+    428a:	6d 01       	movw	r12, r26
+    428c:	c6 01       	movw	r24, r12
+    428e:	b5 01       	movw	r22, r10
+    4290:	2d 96       	adiw	r28, 0x0d	; 13
+    4292:	2c ad       	ldd	r18, Y+60	; 0x3c
+    4294:	3d ad       	ldd	r19, Y+61	; 0x3d
+    4296:	4e ad       	ldd	r20, Y+62	; 0x3e
+    4298:	5f ad       	ldd	r21, Y+63	; 0x3f
+    429a:	2d 97       	sbiw	r28, 0x0d	; 13
+    429c:	0e 94 d8 2f 	call	0x5fb0	; 0x5fb0 <__mulsi3>
+    42a0:	9b 01       	movw	r18, r22
+    42a2:	ac 01       	movw	r20, r24
+    42a4:	87 01       	movw	r16, r14
+    42a6:	ff 24       	eor	r15, r15
+    42a8:	ee 24       	eor	r14, r14
+    42aa:	21 96       	adiw	r28, 0x01	; 1
+    42ac:	8c ad       	ldd	r24, Y+60	; 0x3c
+    42ae:	9d ad       	ldd	r25, Y+61	; 0x3d
+    42b0:	ae ad       	ldd	r26, Y+62	; 0x3e
+    42b2:	bf ad       	ldd	r27, Y+63	; 0x3f
+    42b4:	21 97       	sbiw	r28, 0x01	; 1
+    42b6:	a0 70       	andi	r26, 0x00	; 0
+    42b8:	b0 70       	andi	r27, 0x00	; 0
+    42ba:	e8 2a       	or	r14, r24
+    42bc:	f9 2a       	or	r15, r25
+    42be:	0a 2b       	or	r16, r26
+    42c0:	1b 2b       	or	r17, r27
+    42c2:	e2 16       	cp	r14, r18
+    42c4:	f3 06       	cpc	r15, r19
+    42c6:	04 07       	cpc	r16, r20
+    42c8:	15 07       	cpc	r17, r21
+    42ca:	c0 f4       	brcc	.+48     	; 0x42fc <__divdi3+0x546>
+    42cc:	08 94       	sec
+    42ce:	a1 08       	sbc	r10, r1
+    42d0:	b1 08       	sbc	r11, r1
+    42d2:	c1 08       	sbc	r12, r1
+    42d4:	d1 08       	sbc	r13, r1
+    42d6:	e2 0c       	add	r14, r2
+    42d8:	f3 1c       	adc	r15, r3
+    42da:	04 1d       	adc	r16, r4
+    42dc:	15 1d       	adc	r17, r5
+    42de:	e2 14       	cp	r14, r2
+    42e0:	f3 04       	cpc	r15, r3
+    42e2:	04 05       	cpc	r16, r4
+    42e4:	15 05       	cpc	r17, r5
+    42e6:	50 f0       	brcs	.+20     	; 0x42fc <__divdi3+0x546>
+    42e8:	e2 16       	cp	r14, r18
+    42ea:	f3 06       	cpc	r15, r19
+    42ec:	04 07       	cpc	r16, r20
+    42ee:	15 07       	cpc	r17, r21
+    42f0:	28 f4       	brcc	.+10     	; 0x42fc <__divdi3+0x546>
+    42f2:	08 94       	sec
+    42f4:	a1 08       	sbc	r10, r1
+    42f6:	b1 08       	sbc	r11, r1
+    42f8:	c1 08       	sbc	r12, r1
+    42fa:	d1 08       	sbc	r13, r1
+    42fc:	d3 01       	movw	r26, r6
+    42fe:	99 27       	eor	r25, r25
+    4300:	88 27       	eor	r24, r24
+    4302:	86 01       	movw	r16, r12
+    4304:	75 01       	movw	r14, r10
+    4306:	e8 2a       	or	r14, r24
+    4308:	f9 2a       	or	r15, r25
+    430a:	0a 2b       	or	r16, r26
+    430c:	1b 2b       	or	r17, r27
+    430e:	25 96       	adiw	r28, 0x05	; 5
+    4310:	ec ae       	std	Y+60, r14	; 0x3c
+    4312:	fd ae       	std	Y+61, r15	; 0x3d
+    4314:	0e af       	std	Y+62, r16	; 0x3e
+    4316:	1f af       	std	Y+63, r17	; 0x3f
+    4318:	25 97       	sbiw	r28, 0x05	; 5
+    431a:	eb c4       	rjmp	.+2518   	; 0x4cf2 <__divdi3+0xf3c>
+    431c:	21 14       	cp	r2, r1
+    431e:	31 04       	cpc	r3, r1
+    4320:	41 04       	cpc	r4, r1
+    4322:	51 04       	cpc	r5, r1
+    4324:	71 f4       	brne	.+28     	; 0x4342 <__divdi3+0x58c>
+    4326:	61 e0       	ldi	r22, 0x01	; 1
+    4328:	70 e0       	ldi	r23, 0x00	; 0
+    432a:	80 e0       	ldi	r24, 0x00	; 0
+    432c:	90 e0       	ldi	r25, 0x00	; 0
+    432e:	20 e0       	ldi	r18, 0x00	; 0
+    4330:	30 e0       	ldi	r19, 0x00	; 0
+    4332:	40 e0       	ldi	r20, 0x00	; 0
+    4334:	50 e0       	ldi	r21, 0x00	; 0
+    4336:	0e 94 0b 30 	call	0x6016	; 0x6016 <__udivmodsi4>
+    433a:	c9 01       	movw	r24, r18
+    433c:	da 01       	movw	r26, r20
+    433e:	1c 01       	movw	r2, r24
+    4340:	2d 01       	movw	r4, r26
+    4342:	00 e0       	ldi	r16, 0x00	; 0
+    4344:	20 16       	cp	r2, r16
+    4346:	00 e0       	ldi	r16, 0x00	; 0
+    4348:	30 06       	cpc	r3, r16
+    434a:	01 e0       	ldi	r16, 0x01	; 1
+    434c:	40 06       	cpc	r4, r16
+    434e:	00 e0       	ldi	r16, 0x00	; 0
+    4350:	50 06       	cpc	r5, r16
+    4352:	88 f4       	brcc	.+34     	; 0x4376 <__divdi3+0x5c0>
+    4354:	1f ef       	ldi	r17, 0xFF	; 255
+    4356:	21 16       	cp	r2, r17
+    4358:	31 04       	cpc	r3, r1
+    435a:	41 04       	cpc	r4, r1
+    435c:	51 04       	cpc	r5, r1
+    435e:	31 f0       	breq	.+12     	; 0x436c <__divdi3+0x5b6>
+    4360:	28 f0       	brcs	.+10     	; 0x436c <__divdi3+0x5b6>
+    4362:	48 e0       	ldi	r20, 0x08	; 8
+    4364:	50 e0       	ldi	r21, 0x00	; 0
+    4366:	60 e0       	ldi	r22, 0x00	; 0
+    4368:	70 e0       	ldi	r23, 0x00	; 0
+    436a:	17 c0       	rjmp	.+46     	; 0x439a <__divdi3+0x5e4>
+    436c:	40 e0       	ldi	r20, 0x00	; 0
+    436e:	50 e0       	ldi	r21, 0x00	; 0
+    4370:	60 e0       	ldi	r22, 0x00	; 0
+    4372:	70 e0       	ldi	r23, 0x00	; 0
+    4374:	12 c0       	rjmp	.+36     	; 0x439a <__divdi3+0x5e4>
+    4376:	20 e0       	ldi	r18, 0x00	; 0
+    4378:	22 16       	cp	r2, r18
+    437a:	20 e0       	ldi	r18, 0x00	; 0
+    437c:	32 06       	cpc	r3, r18
+    437e:	20 e0       	ldi	r18, 0x00	; 0
+    4380:	42 06       	cpc	r4, r18
+    4382:	21 e0       	ldi	r18, 0x01	; 1
+    4384:	52 06       	cpc	r5, r18
+    4386:	28 f0       	brcs	.+10     	; 0x4392 <__divdi3+0x5dc>
+    4388:	48 e1       	ldi	r20, 0x18	; 24
+    438a:	50 e0       	ldi	r21, 0x00	; 0
+    438c:	60 e0       	ldi	r22, 0x00	; 0
+    438e:	70 e0       	ldi	r23, 0x00	; 0
+    4390:	04 c0       	rjmp	.+8      	; 0x439a <__divdi3+0x5e4>
+    4392:	40 e1       	ldi	r20, 0x10	; 16
+    4394:	50 e0       	ldi	r21, 0x00	; 0
+    4396:	60 e0       	ldi	r22, 0x00	; 0
+    4398:	70 e0       	ldi	r23, 0x00	; 0
+    439a:	d2 01       	movw	r26, r4
+    439c:	c1 01       	movw	r24, r2
+    439e:	04 2e       	mov	r0, r20
+    43a0:	04 c0       	rjmp	.+8      	; 0x43aa <__divdi3+0x5f4>
+    43a2:	b6 95       	lsr	r27
+    43a4:	a7 95       	ror	r26
+    43a6:	97 95       	ror	r25
+    43a8:	87 95       	ror	r24
+    43aa:	0a 94       	dec	r0
+    43ac:	d2 f7       	brpl	.-12     	; 0x43a2 <__divdi3+0x5ec>
+    43ae:	88 5a       	subi	r24, 0xA8	; 168
+    43b0:	9b 4f       	sbci	r25, 0xFB	; 251
+    43b2:	dc 01       	movw	r26, r24
+    43b4:	2c 91       	ld	r18, X
+    43b6:	e0 e2       	ldi	r30, 0x20	; 32
+    43b8:	ee 2e       	mov	r14, r30
+    43ba:	f1 2c       	mov	r15, r1
+    43bc:	01 2d       	mov	r16, r1
+    43be:	11 2d       	mov	r17, r1
+    43c0:	d8 01       	movw	r26, r16
+    43c2:	c7 01       	movw	r24, r14
+    43c4:	84 1b       	sub	r24, r20
+    43c6:	95 0b       	sbc	r25, r21
+    43c8:	a6 0b       	sbc	r26, r22
+    43ca:	b7 0b       	sbc	r27, r23
+    43cc:	82 1b       	sub	r24, r18
+    43ce:	91 09       	sbc	r25, r1
+    43d0:	a1 09       	sbc	r26, r1
+    43d2:	b1 09       	sbc	r27, r1
+    43d4:	00 97       	sbiw	r24, 0x00	; 0
+    43d6:	a1 05       	cpc	r26, r1
+    43d8:	b1 05       	cpc	r27, r1
+    43da:	61 f4       	brne	.+24     	; 0x43f4 <__divdi3+0x63e>
+    43dc:	64 01       	movw	r12, r8
+    43de:	53 01       	movw	r10, r6
+    43e0:	a2 18       	sub	r10, r2
+    43e2:	b3 08       	sbc	r11, r3
+    43e4:	c4 08       	sbc	r12, r4
+    43e6:	d5 08       	sbc	r13, r5
+    43e8:	31 e0       	ldi	r19, 0x01	; 1
+    43ea:	63 2e       	mov	r6, r19
+    43ec:	71 2c       	mov	r7, r1
+    43ee:	81 2c       	mov	r8, r1
+    43f0:	91 2c       	mov	r9, r1
+    43f2:	24 c1       	rjmp	.+584    	; 0x463c <__divdi3+0x886>
+    43f4:	e3 96       	adiw	r28, 0x33	; 51
+    43f6:	8f af       	std	Y+63, r24	; 0x3f
+    43f8:	e3 97       	sbiw	r28, 0x33	; 51
+    43fa:	08 2e       	mov	r0, r24
+    43fc:	04 c0       	rjmp	.+8      	; 0x4406 <__divdi3+0x650>
+    43fe:	22 0c       	add	r2, r2
+    4400:	33 1c       	adc	r3, r3
+    4402:	44 1c       	adc	r4, r4
+    4404:	55 1c       	adc	r5, r5
+    4406:	0a 94       	dec	r0
+    4408:	d2 f7       	brpl	.-12     	; 0x43fe <__divdi3+0x648>
+    440a:	ee 2d       	mov	r30, r14
+    440c:	e8 1b       	sub	r30, r24
+    440e:	64 01       	movw	r12, r8
+    4410:	53 01       	movw	r10, r6
+    4412:	0e 2e       	mov	r0, r30
+    4414:	04 c0       	rjmp	.+8      	; 0x441e <__divdi3+0x668>
+    4416:	d6 94       	lsr	r13
+    4418:	c7 94       	ror	r12
+    441a:	b7 94       	ror	r11
+    441c:	a7 94       	ror	r10
+    441e:	0a 94       	dec	r0
+    4420:	d2 f7       	brpl	.-12     	; 0x4416 <__divdi3+0x660>
+    4422:	a4 01       	movw	r20, r8
+    4424:	93 01       	movw	r18, r6
+    4426:	e3 96       	adiw	r28, 0x33	; 51
+    4428:	0f ac       	ldd	r0, Y+63	; 0x3f
+    442a:	e3 97       	sbiw	r28, 0x33	; 51
+    442c:	04 c0       	rjmp	.+8      	; 0x4436 <__divdi3+0x680>
+    442e:	22 0f       	add	r18, r18
+    4430:	33 1f       	adc	r19, r19
+    4432:	44 1f       	adc	r20, r20
+    4434:	55 1f       	adc	r21, r21
+    4436:	0a 94       	dec	r0
+    4438:	d2 f7       	brpl	.-12     	; 0x442e <__divdi3+0x678>
+    443a:	21 96       	adiw	r28, 0x01	; 1
+    443c:	6c ac       	ldd	r6, Y+60	; 0x3c
+    443e:	7d ac       	ldd	r7, Y+61	; 0x3d
+    4440:	8e ac       	ldd	r8, Y+62	; 0x3e
+    4442:	9f ac       	ldd	r9, Y+63	; 0x3f
+    4444:	21 97       	sbiw	r28, 0x01	; 1
+    4446:	0e 2e       	mov	r0, r30
+    4448:	04 c0       	rjmp	.+8      	; 0x4452 <__divdi3+0x69c>
+    444a:	96 94       	lsr	r9
+    444c:	87 94       	ror	r8
+    444e:	77 94       	ror	r7
+    4450:	67 94       	ror	r6
+    4452:	0a 94       	dec	r0
+    4454:	d2 f7       	brpl	.-12     	; 0x444a <__divdi3+0x694>
+    4456:	84 01       	movw	r16, r8
+    4458:	73 01       	movw	r14, r6
+    445a:	e2 2a       	or	r14, r18
+    445c:	f3 2a       	or	r15, r19
+    445e:	04 2b       	or	r16, r20
+    4460:	15 2b       	or	r17, r21
+    4462:	e9 ae       	std	Y+57, r14	; 0x39
+    4464:	fa ae       	std	Y+58, r15	; 0x3a
+    4466:	0b af       	std	Y+59, r16	; 0x3b
+    4468:	1c af       	std	Y+60, r17	; 0x3c
+    446a:	32 01       	movw	r6, r4
+    446c:	88 24       	eor	r8, r8
+    446e:	99 24       	eor	r9, r9
+    4470:	92 01       	movw	r18, r4
+    4472:	81 01       	movw	r16, r2
+    4474:	20 70       	andi	r18, 0x00	; 0
+    4476:	30 70       	andi	r19, 0x00	; 0
+    4478:	61 96       	adiw	r28, 0x11	; 17
+    447a:	0c af       	std	Y+60, r16	; 0x3c
+    447c:	1d af       	std	Y+61, r17	; 0x3d
+    447e:	2e af       	std	Y+62, r18	; 0x3e
+    4480:	3f af       	std	Y+63, r19	; 0x3f
+    4482:	61 97       	sbiw	r28, 0x11	; 17
     4484:	c6 01       	movw	r24, r12
-    4486:	aa 27       	eor	r26, r26
-    4488:	bb 27       	eor	r27, r27
-    448a:	5c 01       	movw	r10, r24
-    448c:	6d 01       	movw	r12, r26
-    448e:	ae 28       	or	r10, r14
-    4490:	bf 28       	or	r11, r15
-    4492:	c0 2a       	or	r12, r16
-    4494:	d1 2a       	or	r13, r17
-    4496:	a2 16       	cp	r10, r18
-    4498:	b3 06       	cpc	r11, r19
-    449a:	c4 06       	cpc	r12, r20
-    449c:	d5 06       	cpc	r13, r21
-    449e:	60 f5       	brcc	.+88     	; 0x44f8 <__divdi3+0x794>
-    44a0:	65 96       	adiw	r28, 0x15	; 21
-    44a2:	6c ad       	ldd	r22, Y+60	; 0x3c
-    44a4:	7d ad       	ldd	r23, Y+61	; 0x3d
-    44a6:	8e ad       	ldd	r24, Y+62	; 0x3e
-    44a8:	9f ad       	ldd	r25, Y+63	; 0x3f
-    44aa:	65 97       	sbiw	r28, 0x15	; 21
-    44ac:	61 50       	subi	r22, 0x01	; 1
-    44ae:	70 40       	sbci	r23, 0x00	; 0
-    44b0:	80 40       	sbci	r24, 0x00	; 0
-    44b2:	90 40       	sbci	r25, 0x00	; 0
-    44b4:	65 96       	adiw	r28, 0x15	; 21
-    44b6:	6c af       	std	Y+60, r22	; 0x3c
-    44b8:	7d af       	std	Y+61, r23	; 0x3d
-    44ba:	8e af       	std	Y+62, r24	; 0x3e
-    44bc:	9f af       	std	Y+63, r25	; 0x3f
-    44be:	65 97       	sbiw	r28, 0x15	; 21
-    44c0:	a2 0c       	add	r10, r2
-    44c2:	b3 1c       	adc	r11, r3
-    44c4:	c4 1c       	adc	r12, r4
-    44c6:	d5 1c       	adc	r13, r5
-    44c8:	a2 14       	cp	r10, r2
-    44ca:	b3 04       	cpc	r11, r3
-    44cc:	c4 04       	cpc	r12, r4
-    44ce:	d5 04       	cpc	r13, r5
-    44d0:	98 f0       	brcs	.+38     	; 0x44f8 <__divdi3+0x794>
-    44d2:	a2 16       	cp	r10, r18
-    44d4:	b3 06       	cpc	r11, r19
-    44d6:	c4 06       	cpc	r12, r20
-    44d8:	d5 06       	cpc	r13, r21
-    44da:	70 f4       	brcc	.+28     	; 0x44f8 <__divdi3+0x794>
-    44dc:	61 50       	subi	r22, 0x01	; 1
-    44de:	70 40       	sbci	r23, 0x00	; 0
-    44e0:	80 40       	sbci	r24, 0x00	; 0
-    44e2:	90 40       	sbci	r25, 0x00	; 0
-    44e4:	65 96       	adiw	r28, 0x15	; 21
-    44e6:	6c af       	std	Y+60, r22	; 0x3c
-    44e8:	7d af       	std	Y+61, r23	; 0x3d
-    44ea:	8e af       	std	Y+62, r24	; 0x3e
-    44ec:	9f af       	std	Y+63, r25	; 0x3f
-    44ee:	65 97       	sbiw	r28, 0x15	; 21
-    44f0:	a2 0c       	add	r10, r2
-    44f2:	b3 1c       	adc	r11, r3
-    44f4:	c4 1c       	adc	r12, r4
-    44f6:	d5 1c       	adc	r13, r5
-    44f8:	a2 1a       	sub	r10, r18
-    44fa:	b3 0a       	sbc	r11, r19
-    44fc:	c4 0a       	sbc	r12, r20
-    44fe:	d5 0a       	sbc	r13, r21
-    4500:	c6 01       	movw	r24, r12
-    4502:	b5 01       	movw	r22, r10
-    4504:	a4 01       	movw	r20, r8
-    4506:	93 01       	movw	r18, r6
-    4508:	0e 94 74 32 	call	0x64e8	; 0x64e8 <__udivmodsi4>
-    450c:	7b 01       	movw	r14, r22
-    450e:	8c 01       	movw	r16, r24
-    4510:	c6 01       	movw	r24, r12
-    4512:	b5 01       	movw	r22, r10
-    4514:	a4 01       	movw	r20, r8
-    4516:	93 01       	movw	r18, r6
-    4518:	0e 94 74 32 	call	0x64e8	; 0x64e8 <__udivmodsi4>
-    451c:	c9 01       	movw	r24, r18
-    451e:	da 01       	movw	r26, r20
-    4520:	3c 01       	movw	r6, r24
-    4522:	4d 01       	movw	r8, r26
-    4524:	c4 01       	movw	r24, r8
-    4526:	b3 01       	movw	r22, r6
-    4528:	61 96       	adiw	r28, 0x11	; 17
-    452a:	2c ad       	ldd	r18, Y+60	; 0x3c
-    452c:	3d ad       	ldd	r19, Y+61	; 0x3d
-    452e:	4e ad       	ldd	r20, Y+62	; 0x3e
-    4530:	5f ad       	ldd	r21, Y+63	; 0x3f
-    4532:	61 97       	sbiw	r28, 0x11	; 17
-    4534:	0e 94 41 32 	call	0x6482	; 0x6482 <__mulsi3>
-    4538:	9b 01       	movw	r18, r22
-    453a:	ac 01       	movw	r20, r24
-    453c:	87 01       	movw	r16, r14
-    453e:	ff 24       	eor	r15, r15
-    4540:	ee 24       	eor	r14, r14
-    4542:	89 ad       	ldd	r24, Y+57	; 0x39
-    4544:	9a ad       	ldd	r25, Y+58	; 0x3a
-    4546:	ab ad       	ldd	r26, Y+59	; 0x3b
-    4548:	bc ad       	ldd	r27, Y+60	; 0x3c
-    454a:	a0 70       	andi	r26, 0x00	; 0
-    454c:	b0 70       	andi	r27, 0x00	; 0
-    454e:	57 01       	movw	r10, r14
-    4550:	68 01       	movw	r12, r16
-    4552:	a8 2a       	or	r10, r24
-    4554:	b9 2a       	or	r11, r25
-    4556:	ca 2a       	or	r12, r26
-    4558:	db 2a       	or	r13, r27
-    455a:	a2 16       	cp	r10, r18
-    455c:	b3 06       	cpc	r11, r19
-    455e:	c4 06       	cpc	r12, r20
-    4560:	d5 06       	cpc	r13, r21
-    4562:	e0 f4       	brcc	.+56     	; 0x459c <__divdi3+0x838>
-    4564:	08 94       	sec
-    4566:	61 08       	sbc	r6, r1
-    4568:	71 08       	sbc	r7, r1
-    456a:	81 08       	sbc	r8, r1
-    456c:	91 08       	sbc	r9, r1
-    456e:	a2 0c       	add	r10, r2
-    4570:	b3 1c       	adc	r11, r3
-    4572:	c4 1c       	adc	r12, r4
-    4574:	d5 1c       	adc	r13, r5
-    4576:	a2 14       	cp	r10, r2
-    4578:	b3 04       	cpc	r11, r3
-    457a:	c4 04       	cpc	r12, r4
-    457c:	d5 04       	cpc	r13, r5
-    457e:	70 f0       	brcs	.+28     	; 0x459c <__divdi3+0x838>
-    4580:	a2 16       	cp	r10, r18
-    4582:	b3 06       	cpc	r11, r19
-    4584:	c4 06       	cpc	r12, r20
-    4586:	d5 06       	cpc	r13, r21
-    4588:	48 f4       	brcc	.+18     	; 0x459c <__divdi3+0x838>
-    458a:	08 94       	sec
-    458c:	61 08       	sbc	r6, r1
-    458e:	71 08       	sbc	r7, r1
-    4590:	81 08       	sbc	r8, r1
-    4592:	91 08       	sbc	r9, r1
-    4594:	a2 0c       	add	r10, r2
-    4596:	b3 1c       	adc	r11, r3
-    4598:	c4 1c       	adc	r12, r4
-    459a:	d5 1c       	adc	r13, r5
-    459c:	21 96       	adiw	r28, 0x01	; 1
-    459e:	8c ad       	ldd	r24, Y+60	; 0x3c
-    45a0:	9d ad       	ldd	r25, Y+61	; 0x3d
-    45a2:	ae ad       	ldd	r26, Y+62	; 0x3e
-    45a4:	bf ad       	ldd	r27, Y+63	; 0x3f
-    45a6:	21 97       	sbiw	r28, 0x01	; 1
-    45a8:	e3 96       	adiw	r28, 0x33	; 51
-    45aa:	0f ac       	ldd	r0, Y+63	; 0x3f
-    45ac:	e3 97       	sbiw	r28, 0x33	; 51
-    45ae:	04 c0       	rjmp	.+8      	; 0x45b8 <__divdi3+0x854>
-    45b0:	88 0f       	add	r24, r24
-    45b2:	99 1f       	adc	r25, r25
-    45b4:	aa 1f       	adc	r26, r26
-    45b6:	bb 1f       	adc	r27, r27
-    45b8:	0a 94       	dec	r0
-    45ba:	d2 f7       	brpl	.-12     	; 0x45b0 <__divdi3+0x84c>
-    45bc:	21 96       	adiw	r28, 0x01	; 1
-    45be:	8c af       	std	Y+60, r24	; 0x3c
-    45c0:	9d af       	std	Y+61, r25	; 0x3d
-    45c2:	ae af       	std	Y+62, r26	; 0x3e
-    45c4:	bf af       	std	Y+63, r27	; 0x3f
-    45c6:	21 97       	sbiw	r28, 0x01	; 1
-    45c8:	a2 1a       	sub	r10, r18
-    45ca:	b3 0a       	sbc	r11, r19
-    45cc:	c4 0a       	sbc	r12, r20
-    45ce:	d5 0a       	sbc	r13, r21
-    45d0:	65 96       	adiw	r28, 0x15	; 21
-    45d2:	ec ac       	ldd	r14, Y+60	; 0x3c
-    45d4:	fd ac       	ldd	r15, Y+61	; 0x3d
-    45d6:	0e ad       	ldd	r16, Y+62	; 0x3e
-    45d8:	1f ad       	ldd	r17, Y+63	; 0x3f
-    45da:	65 97       	sbiw	r28, 0x15	; 21
-    45dc:	d7 01       	movw	r26, r14
-    45de:	99 27       	eor	r25, r25
-    45e0:	88 27       	eor	r24, r24
-    45e2:	68 2a       	or	r6, r24
-    45e4:	79 2a       	or	r7, r25
-    45e6:	8a 2a       	or	r8, r26
-    45e8:	9b 2a       	or	r9, r27
-    45ea:	82 01       	movw	r16, r4
-    45ec:	22 27       	eor	r18, r18
-    45ee:	33 27       	eor	r19, r19
-    45f0:	69 96       	adiw	r28, 0x19	; 25
-    45f2:	0c af       	std	Y+60, r16	; 0x3c
-    45f4:	1d af       	std	Y+61, r17	; 0x3d
-    45f6:	2e af       	std	Y+62, r18	; 0x3e
-    45f8:	3f af       	std	Y+63, r19	; 0x3f
-    45fa:	69 97       	sbiw	r28, 0x19	; 25
-    45fc:	a2 01       	movw	r20, r4
-    45fe:	91 01       	movw	r18, r2
-    4600:	40 70       	andi	r20, 0x00	; 0
-    4602:	50 70       	andi	r21, 0x00	; 0
-    4604:	6d 96       	adiw	r28, 0x1d	; 29
-    4606:	2c af       	std	Y+60, r18	; 0x3c
-    4608:	3d af       	std	Y+61, r19	; 0x3d
-    460a:	4e af       	std	Y+62, r20	; 0x3e
-    460c:	5f af       	std	Y+63, r21	; 0x3f
-    460e:	6d 97       	sbiw	r28, 0x1d	; 29
-    4610:	c6 01       	movw	r24, r12
-    4612:	b5 01       	movw	r22, r10
-    4614:	69 96       	adiw	r28, 0x19	; 25
-    4616:	2c ad       	ldd	r18, Y+60	; 0x3c
-    4618:	3d ad       	ldd	r19, Y+61	; 0x3d
-    461a:	4e ad       	ldd	r20, Y+62	; 0x3e
-    461c:	5f ad       	ldd	r21, Y+63	; 0x3f
-    461e:	69 97       	sbiw	r28, 0x19	; 25
-    4620:	0e 94 74 32 	call	0x64e8	; 0x64e8 <__udivmodsi4>
-    4624:	7b 01       	movw	r14, r22
-    4626:	8c 01       	movw	r16, r24
-    4628:	c6 01       	movw	r24, r12
-    462a:	b5 01       	movw	r22, r10
-    462c:	69 96       	adiw	r28, 0x19	; 25
-    462e:	2c ad       	ldd	r18, Y+60	; 0x3c
-    4630:	3d ad       	ldd	r19, Y+61	; 0x3d
-    4632:	4e ad       	ldd	r20, Y+62	; 0x3e
-    4634:	5f ad       	ldd	r21, Y+63	; 0x3f
-    4636:	69 97       	sbiw	r28, 0x19	; 25
-    4638:	0e 94 74 32 	call	0x64e8	; 0x64e8 <__udivmodsi4>
-    463c:	c9 01       	movw	r24, r18
-    463e:	da 01       	movw	r26, r20
-    4640:	a1 96       	adiw	r28, 0x21	; 33
-    4642:	8c af       	std	Y+60, r24	; 0x3c
-    4644:	9d af       	std	Y+61, r25	; 0x3d
-    4646:	ae af       	std	Y+62, r26	; 0x3e
-    4648:	bf af       	std	Y+63, r27	; 0x3f
-    464a:	a1 97       	sbiw	r28, 0x21	; 33
-    464c:	bc 01       	movw	r22, r24
-    464e:	cd 01       	movw	r24, r26
-    4650:	6d 96       	adiw	r28, 0x1d	; 29
-    4652:	2c ad       	ldd	r18, Y+60	; 0x3c
-    4654:	3d ad       	ldd	r19, Y+61	; 0x3d
-    4656:	4e ad       	ldd	r20, Y+62	; 0x3e
-    4658:	5f ad       	ldd	r21, Y+63	; 0x3f
-    465a:	6d 97       	sbiw	r28, 0x1d	; 29
-    465c:	0e 94 41 32 	call	0x6482	; 0x6482 <__mulsi3>
-    4660:	9b 01       	movw	r18, r22
-    4662:	ac 01       	movw	r20, r24
-    4664:	87 01       	movw	r16, r14
-    4666:	ff 24       	eor	r15, r15
-    4668:	ee 24       	eor	r14, r14
-    466a:	21 96       	adiw	r28, 0x01	; 1
-    466c:	ac ac       	ldd	r10, Y+60	; 0x3c
-    466e:	bd ac       	ldd	r11, Y+61	; 0x3d
-    4670:	ce ac       	ldd	r12, Y+62	; 0x3e
-    4672:	df ac       	ldd	r13, Y+63	; 0x3f
-    4674:	21 97       	sbiw	r28, 0x01	; 1
-    4676:	c6 01       	movw	r24, r12
-    4678:	aa 27       	eor	r26, r26
-    467a:	bb 27       	eor	r27, r27
-    467c:	57 01       	movw	r10, r14
-    467e:	68 01       	movw	r12, r16
-    4680:	a8 2a       	or	r10, r24
-    4682:	b9 2a       	or	r11, r25
-    4684:	ca 2a       	or	r12, r26
-    4686:	db 2a       	or	r13, r27
-    4688:	a2 16       	cp	r10, r18
-    468a:	b3 06       	cpc	r11, r19
-    468c:	c4 06       	cpc	r12, r20
-    468e:	d5 06       	cpc	r13, r21
-    4690:	60 f5       	brcc	.+88     	; 0x46ea <__divdi3+0x986>
+    4486:	b5 01       	movw	r22, r10
+    4488:	a4 01       	movw	r20, r8
+    448a:	93 01       	movw	r18, r6
+    448c:	0e 94 0b 30 	call	0x6016	; 0x6016 <__udivmodsi4>
+    4490:	7b 01       	movw	r14, r22
+    4492:	8c 01       	movw	r16, r24
+    4494:	c6 01       	movw	r24, r12
+    4496:	b5 01       	movw	r22, r10
+    4498:	a4 01       	movw	r20, r8
+    449a:	93 01       	movw	r18, r6
+    449c:	0e 94 0b 30 	call	0x6016	; 0x6016 <__udivmodsi4>
+    44a0:	c9 01       	movw	r24, r18
+    44a2:	da 01       	movw	r26, r20
+    44a4:	65 96       	adiw	r28, 0x15	; 21
+    44a6:	8c af       	std	Y+60, r24	; 0x3c
+    44a8:	9d af       	std	Y+61, r25	; 0x3d
+    44aa:	ae af       	std	Y+62, r26	; 0x3e
+    44ac:	bf af       	std	Y+63, r27	; 0x3f
+    44ae:	65 97       	sbiw	r28, 0x15	; 21
+    44b0:	bc 01       	movw	r22, r24
+    44b2:	cd 01       	movw	r24, r26
+    44b4:	61 96       	adiw	r28, 0x11	; 17
+    44b6:	2c ad       	ldd	r18, Y+60	; 0x3c
+    44b8:	3d ad       	ldd	r19, Y+61	; 0x3d
+    44ba:	4e ad       	ldd	r20, Y+62	; 0x3e
+    44bc:	5f ad       	ldd	r21, Y+63	; 0x3f
+    44be:	61 97       	sbiw	r28, 0x11	; 17
+    44c0:	0e 94 d8 2f 	call	0x5fb0	; 0x5fb0 <__mulsi3>
+    44c4:	9b 01       	movw	r18, r22
+    44c6:	ac 01       	movw	r20, r24
+    44c8:	87 01       	movw	r16, r14
+    44ca:	ff 24       	eor	r15, r15
+    44cc:	ee 24       	eor	r14, r14
+    44ce:	a9 ac       	ldd	r10, Y+57	; 0x39
+    44d0:	ba ac       	ldd	r11, Y+58	; 0x3a
+    44d2:	cb ac       	ldd	r12, Y+59	; 0x3b
+    44d4:	dc ac       	ldd	r13, Y+60	; 0x3c
+    44d6:	c6 01       	movw	r24, r12
+    44d8:	aa 27       	eor	r26, r26
+    44da:	bb 27       	eor	r27, r27
+    44dc:	5c 01       	movw	r10, r24
+    44de:	6d 01       	movw	r12, r26
+    44e0:	ae 28       	or	r10, r14
+    44e2:	bf 28       	or	r11, r15
+    44e4:	c0 2a       	or	r12, r16
+    44e6:	d1 2a       	or	r13, r17
+    44e8:	a2 16       	cp	r10, r18
+    44ea:	b3 06       	cpc	r11, r19
+    44ec:	c4 06       	cpc	r12, r20
+    44ee:	d5 06       	cpc	r13, r21
+    44f0:	60 f5       	brcc	.+88     	; 0x454a <__divdi3+0x794>
+    44f2:	65 96       	adiw	r28, 0x15	; 21
+    44f4:	6c ad       	ldd	r22, Y+60	; 0x3c
+    44f6:	7d ad       	ldd	r23, Y+61	; 0x3d
+    44f8:	8e ad       	ldd	r24, Y+62	; 0x3e
+    44fa:	9f ad       	ldd	r25, Y+63	; 0x3f
+    44fc:	65 97       	sbiw	r28, 0x15	; 21
+    44fe:	61 50       	subi	r22, 0x01	; 1
+    4500:	70 40       	sbci	r23, 0x00	; 0
+    4502:	80 40       	sbci	r24, 0x00	; 0
+    4504:	90 40       	sbci	r25, 0x00	; 0
+    4506:	65 96       	adiw	r28, 0x15	; 21
+    4508:	6c af       	std	Y+60, r22	; 0x3c
+    450a:	7d af       	std	Y+61, r23	; 0x3d
+    450c:	8e af       	std	Y+62, r24	; 0x3e
+    450e:	9f af       	std	Y+63, r25	; 0x3f
+    4510:	65 97       	sbiw	r28, 0x15	; 21
+    4512:	a2 0c       	add	r10, r2
+    4514:	b3 1c       	adc	r11, r3
+    4516:	c4 1c       	adc	r12, r4
+    4518:	d5 1c       	adc	r13, r5
+    451a:	a2 14       	cp	r10, r2
+    451c:	b3 04       	cpc	r11, r3
+    451e:	c4 04       	cpc	r12, r4
+    4520:	d5 04       	cpc	r13, r5
+    4522:	98 f0       	brcs	.+38     	; 0x454a <__divdi3+0x794>
+    4524:	a2 16       	cp	r10, r18
+    4526:	b3 06       	cpc	r11, r19
+    4528:	c4 06       	cpc	r12, r20
+    452a:	d5 06       	cpc	r13, r21
+    452c:	70 f4       	brcc	.+28     	; 0x454a <__divdi3+0x794>
+    452e:	61 50       	subi	r22, 0x01	; 1
+    4530:	70 40       	sbci	r23, 0x00	; 0
+    4532:	80 40       	sbci	r24, 0x00	; 0
+    4534:	90 40       	sbci	r25, 0x00	; 0
+    4536:	65 96       	adiw	r28, 0x15	; 21
+    4538:	6c af       	std	Y+60, r22	; 0x3c
+    453a:	7d af       	std	Y+61, r23	; 0x3d
+    453c:	8e af       	std	Y+62, r24	; 0x3e
+    453e:	9f af       	std	Y+63, r25	; 0x3f
+    4540:	65 97       	sbiw	r28, 0x15	; 21
+    4542:	a2 0c       	add	r10, r2
+    4544:	b3 1c       	adc	r11, r3
+    4546:	c4 1c       	adc	r12, r4
+    4548:	d5 1c       	adc	r13, r5
+    454a:	a2 1a       	sub	r10, r18
+    454c:	b3 0a       	sbc	r11, r19
+    454e:	c4 0a       	sbc	r12, r20
+    4550:	d5 0a       	sbc	r13, r21
+    4552:	c6 01       	movw	r24, r12
+    4554:	b5 01       	movw	r22, r10
+    4556:	a4 01       	movw	r20, r8
+    4558:	93 01       	movw	r18, r6
+    455a:	0e 94 0b 30 	call	0x6016	; 0x6016 <__udivmodsi4>
+    455e:	7b 01       	movw	r14, r22
+    4560:	8c 01       	movw	r16, r24
+    4562:	c6 01       	movw	r24, r12
+    4564:	b5 01       	movw	r22, r10
+    4566:	a4 01       	movw	r20, r8
+    4568:	93 01       	movw	r18, r6
+    456a:	0e 94 0b 30 	call	0x6016	; 0x6016 <__udivmodsi4>
+    456e:	c9 01       	movw	r24, r18
+    4570:	da 01       	movw	r26, r20
+    4572:	3c 01       	movw	r6, r24
+    4574:	4d 01       	movw	r8, r26
+    4576:	c4 01       	movw	r24, r8
+    4578:	b3 01       	movw	r22, r6
+    457a:	61 96       	adiw	r28, 0x11	; 17
+    457c:	2c ad       	ldd	r18, Y+60	; 0x3c
+    457e:	3d ad       	ldd	r19, Y+61	; 0x3d
+    4580:	4e ad       	ldd	r20, Y+62	; 0x3e
+    4582:	5f ad       	ldd	r21, Y+63	; 0x3f
+    4584:	61 97       	sbiw	r28, 0x11	; 17
+    4586:	0e 94 d8 2f 	call	0x5fb0	; 0x5fb0 <__mulsi3>
+    458a:	9b 01       	movw	r18, r22
+    458c:	ac 01       	movw	r20, r24
+    458e:	87 01       	movw	r16, r14
+    4590:	ff 24       	eor	r15, r15
+    4592:	ee 24       	eor	r14, r14
+    4594:	89 ad       	ldd	r24, Y+57	; 0x39
+    4596:	9a ad       	ldd	r25, Y+58	; 0x3a
+    4598:	ab ad       	ldd	r26, Y+59	; 0x3b
+    459a:	bc ad       	ldd	r27, Y+60	; 0x3c
+    459c:	a0 70       	andi	r26, 0x00	; 0
+    459e:	b0 70       	andi	r27, 0x00	; 0
+    45a0:	57 01       	movw	r10, r14
+    45a2:	68 01       	movw	r12, r16
+    45a4:	a8 2a       	or	r10, r24
+    45a6:	b9 2a       	or	r11, r25
+    45a8:	ca 2a       	or	r12, r26
+    45aa:	db 2a       	or	r13, r27
+    45ac:	a2 16       	cp	r10, r18
+    45ae:	b3 06       	cpc	r11, r19
+    45b0:	c4 06       	cpc	r12, r20
+    45b2:	d5 06       	cpc	r13, r21
+    45b4:	e0 f4       	brcc	.+56     	; 0x45ee <__divdi3+0x838>
+    45b6:	08 94       	sec
+    45b8:	61 08       	sbc	r6, r1
+    45ba:	71 08       	sbc	r7, r1
+    45bc:	81 08       	sbc	r8, r1
+    45be:	91 08       	sbc	r9, r1
+    45c0:	a2 0c       	add	r10, r2
+    45c2:	b3 1c       	adc	r11, r3
+    45c4:	c4 1c       	adc	r12, r4
+    45c6:	d5 1c       	adc	r13, r5
+    45c8:	a2 14       	cp	r10, r2
+    45ca:	b3 04       	cpc	r11, r3
+    45cc:	c4 04       	cpc	r12, r4
+    45ce:	d5 04       	cpc	r13, r5
+    45d0:	70 f0       	brcs	.+28     	; 0x45ee <__divdi3+0x838>
+    45d2:	a2 16       	cp	r10, r18
+    45d4:	b3 06       	cpc	r11, r19
+    45d6:	c4 06       	cpc	r12, r20
+    45d8:	d5 06       	cpc	r13, r21
+    45da:	48 f4       	brcc	.+18     	; 0x45ee <__divdi3+0x838>
+    45dc:	08 94       	sec
+    45de:	61 08       	sbc	r6, r1
+    45e0:	71 08       	sbc	r7, r1
+    45e2:	81 08       	sbc	r8, r1
+    45e4:	91 08       	sbc	r9, r1
+    45e6:	a2 0c       	add	r10, r2
+    45e8:	b3 1c       	adc	r11, r3
+    45ea:	c4 1c       	adc	r12, r4
+    45ec:	d5 1c       	adc	r13, r5
+    45ee:	21 96       	adiw	r28, 0x01	; 1
+    45f0:	8c ad       	ldd	r24, Y+60	; 0x3c
+    45f2:	9d ad       	ldd	r25, Y+61	; 0x3d
+    45f4:	ae ad       	ldd	r26, Y+62	; 0x3e
+    45f6:	bf ad       	ldd	r27, Y+63	; 0x3f
+    45f8:	21 97       	sbiw	r28, 0x01	; 1
+    45fa:	e3 96       	adiw	r28, 0x33	; 51
+    45fc:	0f ac       	ldd	r0, Y+63	; 0x3f
+    45fe:	e3 97       	sbiw	r28, 0x33	; 51
+    4600:	04 c0       	rjmp	.+8      	; 0x460a <__divdi3+0x854>
+    4602:	88 0f       	add	r24, r24
+    4604:	99 1f       	adc	r25, r25
+    4606:	aa 1f       	adc	r26, r26
+    4608:	bb 1f       	adc	r27, r27
+    460a:	0a 94       	dec	r0
+    460c:	d2 f7       	brpl	.-12     	; 0x4602 <__divdi3+0x84c>
+    460e:	21 96       	adiw	r28, 0x01	; 1
+    4610:	8c af       	std	Y+60, r24	; 0x3c
+    4612:	9d af       	std	Y+61, r25	; 0x3d
+    4614:	ae af       	std	Y+62, r26	; 0x3e
+    4616:	bf af       	std	Y+63, r27	; 0x3f
+    4618:	21 97       	sbiw	r28, 0x01	; 1
+    461a:	a2 1a       	sub	r10, r18
+    461c:	b3 0a       	sbc	r11, r19
+    461e:	c4 0a       	sbc	r12, r20
+    4620:	d5 0a       	sbc	r13, r21
+    4622:	65 96       	adiw	r28, 0x15	; 21
+    4624:	ec ac       	ldd	r14, Y+60	; 0x3c
+    4626:	fd ac       	ldd	r15, Y+61	; 0x3d
+    4628:	0e ad       	ldd	r16, Y+62	; 0x3e
+    462a:	1f ad       	ldd	r17, Y+63	; 0x3f
+    462c:	65 97       	sbiw	r28, 0x15	; 21
+    462e:	d7 01       	movw	r26, r14
+    4630:	99 27       	eor	r25, r25
+    4632:	88 27       	eor	r24, r24
+    4634:	68 2a       	or	r6, r24
+    4636:	79 2a       	or	r7, r25
+    4638:	8a 2a       	or	r8, r26
+    463a:	9b 2a       	or	r9, r27
+    463c:	82 01       	movw	r16, r4
+    463e:	22 27       	eor	r18, r18
+    4640:	33 27       	eor	r19, r19
+    4642:	69 96       	adiw	r28, 0x19	; 25
+    4644:	0c af       	std	Y+60, r16	; 0x3c
+    4646:	1d af       	std	Y+61, r17	; 0x3d
+    4648:	2e af       	std	Y+62, r18	; 0x3e
+    464a:	3f af       	std	Y+63, r19	; 0x3f
+    464c:	69 97       	sbiw	r28, 0x19	; 25
+    464e:	a2 01       	movw	r20, r4
+    4650:	91 01       	movw	r18, r2
+    4652:	40 70       	andi	r20, 0x00	; 0
+    4654:	50 70       	andi	r21, 0x00	; 0
+    4656:	6d 96       	adiw	r28, 0x1d	; 29
+    4658:	2c af       	std	Y+60, r18	; 0x3c
+    465a:	3d af       	std	Y+61, r19	; 0x3d
+    465c:	4e af       	std	Y+62, r20	; 0x3e
+    465e:	5f af       	std	Y+63, r21	; 0x3f
+    4660:	6d 97       	sbiw	r28, 0x1d	; 29
+    4662:	c6 01       	movw	r24, r12
+    4664:	b5 01       	movw	r22, r10
+    4666:	69 96       	adiw	r28, 0x19	; 25
+    4668:	2c ad       	ldd	r18, Y+60	; 0x3c
+    466a:	3d ad       	ldd	r19, Y+61	; 0x3d
+    466c:	4e ad       	ldd	r20, Y+62	; 0x3e
+    466e:	5f ad       	ldd	r21, Y+63	; 0x3f
+    4670:	69 97       	sbiw	r28, 0x19	; 25
+    4672:	0e 94 0b 30 	call	0x6016	; 0x6016 <__udivmodsi4>
+    4676:	7b 01       	movw	r14, r22
+    4678:	8c 01       	movw	r16, r24
+    467a:	c6 01       	movw	r24, r12
+    467c:	b5 01       	movw	r22, r10
+    467e:	69 96       	adiw	r28, 0x19	; 25
+    4680:	2c ad       	ldd	r18, Y+60	; 0x3c
+    4682:	3d ad       	ldd	r19, Y+61	; 0x3d
+    4684:	4e ad       	ldd	r20, Y+62	; 0x3e
+    4686:	5f ad       	ldd	r21, Y+63	; 0x3f
+    4688:	69 97       	sbiw	r28, 0x19	; 25
+    468a:	0e 94 0b 30 	call	0x6016	; 0x6016 <__udivmodsi4>
+    468e:	c9 01       	movw	r24, r18
+    4690:	da 01       	movw	r26, r20
     4692:	a1 96       	adiw	r28, 0x21	; 33
-    4694:	6c ad       	ldd	r22, Y+60	; 0x3c
-    4696:	7d ad       	ldd	r23, Y+61	; 0x3d
-    4698:	8e ad       	ldd	r24, Y+62	; 0x3e
-    469a:	9f ad       	ldd	r25, Y+63	; 0x3f
+    4694:	8c af       	std	Y+60, r24	; 0x3c
+    4696:	9d af       	std	Y+61, r25	; 0x3d
+    4698:	ae af       	std	Y+62, r26	; 0x3e
+    469a:	bf af       	std	Y+63, r27	; 0x3f
     469c:	a1 97       	sbiw	r28, 0x21	; 33
-    469e:	61 50       	subi	r22, 0x01	; 1
-    46a0:	70 40       	sbci	r23, 0x00	; 0
-    46a2:	80 40       	sbci	r24, 0x00	; 0
-    46a4:	90 40       	sbci	r25, 0x00	; 0
-    46a6:	a1 96       	adiw	r28, 0x21	; 33
-    46a8:	6c af       	std	Y+60, r22	; 0x3c
-    46aa:	7d af       	std	Y+61, r23	; 0x3d
-    46ac:	8e af       	std	Y+62, r24	; 0x3e
-    46ae:	9f af       	std	Y+63, r25	; 0x3f
-    46b0:	a1 97       	sbiw	r28, 0x21	; 33
-    46b2:	a2 0c       	add	r10, r2
-    46b4:	b3 1c       	adc	r11, r3
-    46b6:	c4 1c       	adc	r12, r4
-    46b8:	d5 1c       	adc	r13, r5
-    46ba:	a2 14       	cp	r10, r2
-    46bc:	b3 04       	cpc	r11, r3
-    46be:	c4 04       	cpc	r12, r4
-    46c0:	d5 04       	cpc	r13, r5
-    46c2:	98 f0       	brcs	.+38     	; 0x46ea <__divdi3+0x986>
-    46c4:	a2 16       	cp	r10, r18
-    46c6:	b3 06       	cpc	r11, r19
-    46c8:	c4 06       	cpc	r12, r20
-    46ca:	d5 06       	cpc	r13, r21
-    46cc:	70 f4       	brcc	.+28     	; 0x46ea <__divdi3+0x986>
-    46ce:	61 50       	subi	r22, 0x01	; 1
-    46d0:	70 40       	sbci	r23, 0x00	; 0
-    46d2:	80 40       	sbci	r24, 0x00	; 0
-    46d4:	90 40       	sbci	r25, 0x00	; 0
-    46d6:	a1 96       	adiw	r28, 0x21	; 33
-    46d8:	6c af       	std	Y+60, r22	; 0x3c
-    46da:	7d af       	std	Y+61, r23	; 0x3d
-    46dc:	8e af       	std	Y+62, r24	; 0x3e
-    46de:	9f af       	std	Y+63, r25	; 0x3f
-    46e0:	a1 97       	sbiw	r28, 0x21	; 33
-    46e2:	a2 0c       	add	r10, r2
-    46e4:	b3 1c       	adc	r11, r3
-    46e6:	c4 1c       	adc	r12, r4
-    46e8:	d5 1c       	adc	r13, r5
-    46ea:	a2 1a       	sub	r10, r18
-    46ec:	b3 0a       	sbc	r11, r19
-    46ee:	c4 0a       	sbc	r12, r20
-    46f0:	d5 0a       	sbc	r13, r21
-    46f2:	c6 01       	movw	r24, r12
-    46f4:	b5 01       	movw	r22, r10
-    46f6:	69 96       	adiw	r28, 0x19	; 25
-    46f8:	2c ad       	ldd	r18, Y+60	; 0x3c
-    46fa:	3d ad       	ldd	r19, Y+61	; 0x3d
-    46fc:	4e ad       	ldd	r20, Y+62	; 0x3e
-    46fe:	5f ad       	ldd	r21, Y+63	; 0x3f
-    4700:	69 97       	sbiw	r28, 0x19	; 25
-    4702:	0e 94 74 32 	call	0x64e8	; 0x64e8 <__udivmodsi4>
-    4706:	7b 01       	movw	r14, r22
-    4708:	8c 01       	movw	r16, r24
-    470a:	c6 01       	movw	r24, r12
-    470c:	b5 01       	movw	r22, r10
-    470e:	69 96       	adiw	r28, 0x19	; 25
-    4710:	2c ad       	ldd	r18, Y+60	; 0x3c
-    4712:	3d ad       	ldd	r19, Y+61	; 0x3d
-    4714:	4e ad       	ldd	r20, Y+62	; 0x3e
-    4716:	5f ad       	ldd	r21, Y+63	; 0x3f
-    4718:	69 97       	sbiw	r28, 0x19	; 25
-    471a:	0e 94 74 32 	call	0x64e8	; 0x64e8 <__udivmodsi4>
-    471e:	c9 01       	movw	r24, r18
-    4720:	da 01       	movw	r26, r20
-    4722:	5c 01       	movw	r10, r24
-    4724:	6d 01       	movw	r12, r26
-    4726:	c6 01       	movw	r24, r12
-    4728:	b5 01       	movw	r22, r10
-    472a:	6d 96       	adiw	r28, 0x1d	; 29
-    472c:	2c ad       	ldd	r18, Y+60	; 0x3c
-    472e:	3d ad       	ldd	r19, Y+61	; 0x3d
-    4730:	4e ad       	ldd	r20, Y+62	; 0x3e
-    4732:	5f ad       	ldd	r21, Y+63	; 0x3f
-    4734:	6d 97       	sbiw	r28, 0x1d	; 29
-    4736:	0e 94 41 32 	call	0x6482	; 0x6482 <__mulsi3>
-    473a:	9b 01       	movw	r18, r22
-    473c:	ac 01       	movw	r20, r24
-    473e:	87 01       	movw	r16, r14
-    4740:	ff 24       	eor	r15, r15
-    4742:	ee 24       	eor	r14, r14
-    4744:	21 96       	adiw	r28, 0x01	; 1
-    4746:	8c ad       	ldd	r24, Y+60	; 0x3c
-    4748:	9d ad       	ldd	r25, Y+61	; 0x3d
-    474a:	ae ad       	ldd	r26, Y+62	; 0x3e
-    474c:	bf ad       	ldd	r27, Y+63	; 0x3f
-    474e:	21 97       	sbiw	r28, 0x01	; 1
-    4750:	a0 70       	andi	r26, 0x00	; 0
-    4752:	b0 70       	andi	r27, 0x00	; 0
-    4754:	e8 2a       	or	r14, r24
-    4756:	f9 2a       	or	r15, r25
-    4758:	0a 2b       	or	r16, r26
-    475a:	1b 2b       	or	r17, r27
-    475c:	e2 16       	cp	r14, r18
-    475e:	f3 06       	cpc	r15, r19
-    4760:	04 07       	cpc	r16, r20
-    4762:	15 07       	cpc	r17, r21
-    4764:	c0 f4       	brcc	.+48     	; 0x4796 <__divdi3+0xa32>
-    4766:	08 94       	sec
-    4768:	a1 08       	sbc	r10, r1
-    476a:	b1 08       	sbc	r11, r1
-    476c:	c1 08       	sbc	r12, r1
-    476e:	d1 08       	sbc	r13, r1
-    4770:	e2 0c       	add	r14, r2
-    4772:	f3 1c       	adc	r15, r3
-    4774:	04 1d       	adc	r16, r4
-    4776:	15 1d       	adc	r17, r5
-    4778:	e2 14       	cp	r14, r2
-    477a:	f3 04       	cpc	r15, r3
-    477c:	04 05       	cpc	r16, r4
-    477e:	15 05       	cpc	r17, r5
-    4780:	50 f0       	brcs	.+20     	; 0x4796 <__divdi3+0xa32>
-    4782:	e2 16       	cp	r14, r18
-    4784:	f3 06       	cpc	r15, r19
-    4786:	04 07       	cpc	r16, r20
-    4788:	15 07       	cpc	r17, r21
-    478a:	28 f4       	brcc	.+10     	; 0x4796 <__divdi3+0xa32>
-    478c:	08 94       	sec
-    478e:	a1 08       	sbc	r10, r1
-    4790:	b1 08       	sbc	r11, r1
-    4792:	c1 08       	sbc	r12, r1
-    4794:	d1 08       	sbc	r13, r1
-    4796:	a1 96       	adiw	r28, 0x21	; 33
-    4798:	ec ac       	ldd	r14, Y+60	; 0x3c
-    479a:	fd ac       	ldd	r15, Y+61	; 0x3d
-    479c:	0e ad       	ldd	r16, Y+62	; 0x3e
-    479e:	1f ad       	ldd	r17, Y+63	; 0x3f
-    47a0:	a1 97       	sbiw	r28, 0x21	; 33
-    47a2:	d7 01       	movw	r26, r14
-    47a4:	99 27       	eor	r25, r25
-    47a6:	88 27       	eor	r24, r24
-    47a8:	96 01       	movw	r18, r12
-    47aa:	85 01       	movw	r16, r10
-    47ac:	08 2b       	or	r16, r24
-    47ae:	19 2b       	or	r17, r25
-    47b0:	2a 2b       	or	r18, r26
-    47b2:	3b 2b       	or	r19, r27
-    47b4:	25 96       	adiw	r28, 0x05	; 5
-    47b6:	0c af       	std	Y+60, r16	; 0x3c
-    47b8:	1d af       	std	Y+61, r17	; 0x3d
-    47ba:	2e af       	std	Y+62, r18	; 0x3e
-    47bc:	3f af       	std	Y+63, r19	; 0x3f
-    47be:	25 97       	sbiw	r28, 0x05	; 5
-    47c0:	72 c2       	rjmp	.+1252   	; 0x4ca6 <__divdi3+0xf42>
-    47c2:	6e 14       	cp	r6, r14
-    47c4:	7f 04       	cpc	r7, r15
-    47c6:	80 06       	cpc	r8, r16
-    47c8:	91 06       	cpc	r9, r17
-    47ca:	08 f4       	brcc	.+2      	; 0x47ce <__divdi3+0xa6a>
-    47cc:	5f c2       	rjmp	.+1214   	; 0x4c8c <__divdi3+0xf28>
-    47ce:	20 e0       	ldi	r18, 0x00	; 0
-    47d0:	e2 16       	cp	r14, r18
-    47d2:	20 e0       	ldi	r18, 0x00	; 0
-    47d4:	f2 06       	cpc	r15, r18
-    47d6:	21 e0       	ldi	r18, 0x01	; 1
-    47d8:	02 07       	cpc	r16, r18
-    47da:	20 e0       	ldi	r18, 0x00	; 0
-    47dc:	12 07       	cpc	r17, r18
-    47de:	88 f4       	brcc	.+34     	; 0x4802 <__divdi3+0xa9e>
-    47e0:	3f ef       	ldi	r19, 0xFF	; 255
-    47e2:	e3 16       	cp	r14, r19
-    47e4:	f1 04       	cpc	r15, r1
-    47e6:	01 05       	cpc	r16, r1
-    47e8:	11 05       	cpc	r17, r1
-    47ea:	31 f0       	breq	.+12     	; 0x47f8 <__divdi3+0xa94>
-    47ec:	28 f0       	brcs	.+10     	; 0x47f8 <__divdi3+0xa94>
-    47ee:	48 e0       	ldi	r20, 0x08	; 8
-    47f0:	50 e0       	ldi	r21, 0x00	; 0
-    47f2:	60 e0       	ldi	r22, 0x00	; 0
-    47f4:	70 e0       	ldi	r23, 0x00	; 0
-    47f6:	17 c0       	rjmp	.+46     	; 0x4826 <__divdi3+0xac2>
-    47f8:	40 e0       	ldi	r20, 0x00	; 0
-    47fa:	50 e0       	ldi	r21, 0x00	; 0
-    47fc:	60 e0       	ldi	r22, 0x00	; 0
-    47fe:	70 e0       	ldi	r23, 0x00	; 0
-    4800:	12 c0       	rjmp	.+36     	; 0x4826 <__divdi3+0xac2>
-    4802:	40 e0       	ldi	r20, 0x00	; 0
-    4804:	e4 16       	cp	r14, r20
-    4806:	40 e0       	ldi	r20, 0x00	; 0
-    4808:	f4 06       	cpc	r15, r20
-    480a:	40 e0       	ldi	r20, 0x00	; 0
-    480c:	04 07       	cpc	r16, r20
-    480e:	41 e0       	ldi	r20, 0x01	; 1
-    4810:	14 07       	cpc	r17, r20
-    4812:	28 f0       	brcs	.+10     	; 0x481e <__divdi3+0xaba>
-    4814:	48 e1       	ldi	r20, 0x18	; 24
-    4816:	50 e0       	ldi	r21, 0x00	; 0
-    4818:	60 e0       	ldi	r22, 0x00	; 0
-    481a:	70 e0       	ldi	r23, 0x00	; 0
-    481c:	04 c0       	rjmp	.+8      	; 0x4826 <__divdi3+0xac2>
-    481e:	40 e1       	ldi	r20, 0x10	; 16
-    4820:	50 e0       	ldi	r21, 0x00	; 0
-    4822:	60 e0       	ldi	r22, 0x00	; 0
-    4824:	70 e0       	ldi	r23, 0x00	; 0
-    4826:	d8 01       	movw	r26, r16
-    4828:	c7 01       	movw	r24, r14
-    482a:	04 2e       	mov	r0, r20
-    482c:	04 c0       	rjmp	.+8      	; 0x4836 <__divdi3+0xad2>
-    482e:	b6 95       	lsr	r27
-    4830:	a7 95       	ror	r26
-    4832:	97 95       	ror	r25
-    4834:	87 95       	ror	r24
-    4836:	0a 94       	dec	r0
-    4838:	d2 f7       	brpl	.-12     	; 0x482e <__divdi3+0xaca>
-    483a:	89 59       	subi	r24, 0x99	; 153
-    483c:	9b 4f       	sbci	r25, 0xFB	; 251
-    483e:	dc 01       	movw	r26, r24
-    4840:	2c 91       	ld	r18, X
-    4842:	30 e2       	ldi	r19, 0x20	; 32
-    4844:	a3 2e       	mov	r10, r19
-    4846:	b1 2c       	mov	r11, r1
-    4848:	c1 2c       	mov	r12, r1
-    484a:	d1 2c       	mov	r13, r1
-    484c:	d6 01       	movw	r26, r12
-    484e:	c5 01       	movw	r24, r10
-    4850:	84 1b       	sub	r24, r20
-    4852:	95 0b       	sbc	r25, r21
-    4854:	a6 0b       	sbc	r26, r22
-    4856:	b7 0b       	sbc	r27, r23
-    4858:	82 1b       	sub	r24, r18
-    485a:	91 09       	sbc	r25, r1
-    485c:	a1 09       	sbc	r26, r1
-    485e:	b1 09       	sbc	r27, r1
-    4860:	00 97       	sbiw	r24, 0x00	; 0
-    4862:	a1 05       	cpc	r26, r1
-    4864:	b1 05       	cpc	r27, r1
-    4866:	99 f4       	brne	.+38     	; 0x488e <__divdi3+0xb2a>
-    4868:	e6 14       	cp	r14, r6
-    486a:	f7 04       	cpc	r15, r7
-    486c:	08 05       	cpc	r16, r8
-    486e:	19 05       	cpc	r17, r9
-    4870:	08 f4       	brcc	.+2      	; 0x4874 <__divdi3+0xb10>
-    4872:	fe c1       	rjmp	.+1020   	; 0x4c70 <__divdi3+0xf0c>
-    4874:	21 96       	adiw	r28, 0x01	; 1
-    4876:	6c ac       	ldd	r6, Y+60	; 0x3c
-    4878:	7d ac       	ldd	r7, Y+61	; 0x3d
-    487a:	8e ac       	ldd	r8, Y+62	; 0x3e
-    487c:	9f ac       	ldd	r9, Y+63	; 0x3f
-    487e:	21 97       	sbiw	r28, 0x01	; 1
-    4880:	62 14       	cp	r6, r2
-    4882:	73 04       	cpc	r7, r3
-    4884:	84 04       	cpc	r8, r4
-    4886:	95 04       	cpc	r9, r5
-    4888:	08 f0       	brcs	.+2      	; 0x488c <__divdi3+0xb28>
-    488a:	f2 c1       	rjmp	.+996    	; 0x4c70 <__divdi3+0xf0c>
-    488c:	ff c1       	rjmp	.+1022   	; 0x4c8c <__divdi3+0xf28>
-    488e:	e2 96       	adiw	r28, 0x32	; 50
-    4890:	8f af       	std	Y+63, r24	; 0x3f
-    4892:	e2 97       	sbiw	r28, 0x32	; 50
-    4894:	08 2e       	mov	r0, r24
-    4896:	04 c0       	rjmp	.+8      	; 0x48a0 <__divdi3+0xb3c>
-    4898:	ee 0c       	add	r14, r14
-    489a:	ff 1c       	adc	r15, r15
-    489c:	00 1f       	adc	r16, r16
-    489e:	11 1f       	adc	r17, r17
-    48a0:	0a 94       	dec	r0
-    48a2:	d2 f7       	brpl	.-12     	; 0x4898 <__divdi3+0xb34>
-    48a4:	6a 2d       	mov	r22, r10
-    48a6:	68 1b       	sub	r22, r24
-    48a8:	d2 01       	movw	r26, r4
-    48aa:	c1 01       	movw	r24, r2
-    48ac:	06 2e       	mov	r0, r22
-    48ae:	04 c0       	rjmp	.+8      	; 0x48b8 <__divdi3+0xb54>
-    48b0:	b6 95       	lsr	r27
-    48b2:	a7 95       	ror	r26
-    48b4:	97 95       	ror	r25
-    48b6:	87 95       	ror	r24
-    48b8:	0a 94       	dec	r0
-    48ba:	d2 f7       	brpl	.-12     	; 0x48b0 <__divdi3+0xb4c>
-    48bc:	5c 01       	movw	r10, r24
-    48be:	6d 01       	movw	r12, r26
-    48c0:	ae 28       	or	r10, r14
-    48c2:	bf 28       	or	r11, r15
-    48c4:	c0 2a       	or	r12, r16
-    48c6:	d1 2a       	or	r13, r17
-    48c8:	ad aa       	std	Y+53, r10	; 0x35
-    48ca:	be aa       	std	Y+54, r11	; 0x36
-    48cc:	cf aa       	std	Y+55, r12	; 0x37
-    48ce:	d8 ae       	std	Y+56, r13	; 0x38
-    48d0:	72 01       	movw	r14, r4
-    48d2:	61 01       	movw	r12, r2
-    48d4:	e2 96       	adiw	r28, 0x32	; 50
-    48d6:	0f ac       	ldd	r0, Y+63	; 0x3f
-    48d8:	e2 97       	sbiw	r28, 0x32	; 50
-    48da:	04 c0       	rjmp	.+8      	; 0x48e4 <__divdi3+0xb80>
-    48dc:	cc 0c       	add	r12, r12
-    48de:	dd 1c       	adc	r13, r13
-    48e0:	ee 1c       	adc	r14, r14
-    48e2:	ff 1c       	adc	r15, r15
-    48e4:	0a 94       	dec	r0
-    48e6:	d2 f7       	brpl	.-12     	; 0x48dc <__divdi3+0xb78>
-    48e8:	c9 aa       	std	Y+49, r12	; 0x31
-    48ea:	da aa       	std	Y+50, r13	; 0x32
-    48ec:	eb aa       	std	Y+51, r14	; 0x33
-    48ee:	fc aa       	std	Y+52, r15	; 0x34
-    48f0:	64 01       	movw	r12, r8
-    48f2:	53 01       	movw	r10, r6
-    48f4:	06 2e       	mov	r0, r22
-    48f6:	04 c0       	rjmp	.+8      	; 0x4900 <__divdi3+0xb9c>
-    48f8:	d6 94       	lsr	r13
-    48fa:	c7 94       	ror	r12
-    48fc:	b7 94       	ror	r11
-    48fe:	a7 94       	ror	r10
-    4900:	0a 94       	dec	r0
-    4902:	d2 f7       	brpl	.-12     	; 0x48f8 <__divdi3+0xb94>
-    4904:	d4 01       	movw	r26, r8
-    4906:	c3 01       	movw	r24, r6
-    4908:	e2 96       	adiw	r28, 0x32	; 50
-    490a:	0f ac       	ldd	r0, Y+63	; 0x3f
-    490c:	e2 97       	sbiw	r28, 0x32	; 50
-    490e:	04 c0       	rjmp	.+8      	; 0x4918 <__divdi3+0xbb4>
-    4910:	88 0f       	add	r24, r24
-    4912:	99 1f       	adc	r25, r25
-    4914:	aa 1f       	adc	r26, r26
-    4916:	bb 1f       	adc	r27, r27
-    4918:	0a 94       	dec	r0
-    491a:	d2 f7       	brpl	.-12     	; 0x4910 <__divdi3+0xbac>
-    491c:	21 96       	adiw	r28, 0x01	; 1
-    491e:	ec ac       	ldd	r14, Y+60	; 0x3c
-    4920:	fd ac       	ldd	r15, Y+61	; 0x3d
-    4922:	0e ad       	ldd	r16, Y+62	; 0x3e
-    4924:	1f ad       	ldd	r17, Y+63	; 0x3f
-    4926:	21 97       	sbiw	r28, 0x01	; 1
-    4928:	04 c0       	rjmp	.+8      	; 0x4932 <__divdi3+0xbce>
-    492a:	16 95       	lsr	r17
-    492c:	07 95       	ror	r16
-    492e:	f7 94       	ror	r15
-    4930:	e7 94       	ror	r14
-    4932:	6a 95       	dec	r22
-    4934:	d2 f7       	brpl	.-12     	; 0x492a <__divdi3+0xbc6>
-    4936:	37 01       	movw	r6, r14
-    4938:	48 01       	movw	r8, r16
-    493a:	68 2a       	or	r6, r24
-    493c:	79 2a       	or	r7, r25
-    493e:	8a 2a       	or	r8, r26
-    4940:	9b 2a       	or	r9, r27
-    4942:	6d a6       	std	Y+45, r6	; 0x2d
-    4944:	7e a6       	std	Y+46, r7	; 0x2e
-    4946:	8f a6       	std	Y+47, r8	; 0x2f
-    4948:	98 aa       	std	Y+48, r9	; 0x30
-    494a:	ed a8       	ldd	r14, Y+53	; 0x35
-    494c:	fe a8       	ldd	r15, Y+54	; 0x36
-    494e:	0f a9       	ldd	r16, Y+55	; 0x37
-    4950:	18 ad       	ldd	r17, Y+56	; 0x38
-    4952:	38 01       	movw	r6, r16
-    4954:	88 24       	eor	r8, r8
-    4956:	99 24       	eor	r9, r9
-    4958:	98 01       	movw	r18, r16
-    495a:	87 01       	movw	r16, r14
-    495c:	20 70       	andi	r18, 0x00	; 0
-    495e:	30 70       	andi	r19, 0x00	; 0
-    4960:	a5 96       	adiw	r28, 0x25	; 37
-    4962:	0c af       	std	Y+60, r16	; 0x3c
-    4964:	1d af       	std	Y+61, r17	; 0x3d
-    4966:	2e af       	std	Y+62, r18	; 0x3e
-    4968:	3f af       	std	Y+63, r19	; 0x3f
-    496a:	a5 97       	sbiw	r28, 0x25	; 37
-    496c:	c6 01       	movw	r24, r12
-    496e:	b5 01       	movw	r22, r10
-    4970:	a4 01       	movw	r20, r8
-    4972:	93 01       	movw	r18, r6
-    4974:	0e 94 74 32 	call	0x64e8	; 0x64e8 <__udivmodsi4>
-    4978:	7b 01       	movw	r14, r22
-    497a:	8c 01       	movw	r16, r24
-    497c:	c6 01       	movw	r24, r12
-    497e:	b5 01       	movw	r22, r10
-    4980:	a4 01       	movw	r20, r8
-    4982:	93 01       	movw	r18, r6
-    4984:	0e 94 74 32 	call	0x64e8	; 0x64e8 <__udivmodsi4>
-    4988:	c9 01       	movw	r24, r18
-    498a:	da 01       	movw	r26, r20
-    498c:	1c 01       	movw	r2, r24
-    498e:	2d 01       	movw	r4, r26
-    4990:	c2 01       	movw	r24, r4
-    4992:	b1 01       	movw	r22, r2
-    4994:	a5 96       	adiw	r28, 0x25	; 37
-    4996:	2c ad       	ldd	r18, Y+60	; 0x3c
-    4998:	3d ad       	ldd	r19, Y+61	; 0x3d
-    499a:	4e ad       	ldd	r20, Y+62	; 0x3e
-    499c:	5f ad       	ldd	r21, Y+63	; 0x3f
-    499e:	a5 97       	sbiw	r28, 0x25	; 37
-    49a0:	0e 94 41 32 	call	0x6482	; 0x6482 <__mulsi3>
-    49a4:	9b 01       	movw	r18, r22
-    49a6:	ac 01       	movw	r20, r24
-    49a8:	87 01       	movw	r16, r14
-    49aa:	ff 24       	eor	r15, r15
-    49ac:	ee 24       	eor	r14, r14
-    49ae:	ad a4       	ldd	r10, Y+45	; 0x2d
-    49b0:	be a4       	ldd	r11, Y+46	; 0x2e
-    49b2:	cf a4       	ldd	r12, Y+47	; 0x2f
-    49b4:	d8 a8       	ldd	r13, Y+48	; 0x30
-    49b6:	c6 01       	movw	r24, r12
-    49b8:	aa 27       	eor	r26, r26
-    49ba:	bb 27       	eor	r27, r27
-    49bc:	57 01       	movw	r10, r14
-    49be:	68 01       	movw	r12, r16
-    49c0:	a8 2a       	or	r10, r24
-    49c2:	b9 2a       	or	r11, r25
-    49c4:	ca 2a       	or	r12, r26
-    49c6:	db 2a       	or	r13, r27
-    49c8:	a2 16       	cp	r10, r18
-    49ca:	b3 06       	cpc	r11, r19
-    49cc:	c4 06       	cpc	r12, r20
-    49ce:	d5 06       	cpc	r13, r21
-    49d0:	00 f5       	brcc	.+64     	; 0x4a12 <__divdi3+0xcae>
-    49d2:	08 94       	sec
-    49d4:	21 08       	sbc	r2, r1
-    49d6:	31 08       	sbc	r3, r1
-    49d8:	41 08       	sbc	r4, r1
-    49da:	51 08       	sbc	r5, r1
-    49dc:	ed a8       	ldd	r14, Y+53	; 0x35
-    49de:	fe a8       	ldd	r15, Y+54	; 0x36
-    49e0:	0f a9       	ldd	r16, Y+55	; 0x37
-    49e2:	18 ad       	ldd	r17, Y+56	; 0x38
-    49e4:	ae 0c       	add	r10, r14
-    49e6:	bf 1c       	adc	r11, r15
-    49e8:	c0 1e       	adc	r12, r16
-    49ea:	d1 1e       	adc	r13, r17
-    49ec:	ae 14       	cp	r10, r14
-    49ee:	bf 04       	cpc	r11, r15
-    49f0:	c0 06       	cpc	r12, r16
-    49f2:	d1 06       	cpc	r13, r17
-    49f4:	70 f0       	brcs	.+28     	; 0x4a12 <__divdi3+0xcae>
-    49f6:	a2 16       	cp	r10, r18
-    49f8:	b3 06       	cpc	r11, r19
-    49fa:	c4 06       	cpc	r12, r20
-    49fc:	d5 06       	cpc	r13, r21
-    49fe:	48 f4       	brcc	.+18     	; 0x4a12 <__divdi3+0xcae>
-    4a00:	08 94       	sec
-    4a02:	21 08       	sbc	r2, r1
-    4a04:	31 08       	sbc	r3, r1
-    4a06:	41 08       	sbc	r4, r1
-    4a08:	51 08       	sbc	r5, r1
-    4a0a:	ae 0c       	add	r10, r14
-    4a0c:	bf 1c       	adc	r11, r15
-    4a0e:	c0 1e       	adc	r12, r16
-    4a10:	d1 1e       	adc	r13, r17
-    4a12:	a2 1a       	sub	r10, r18
-    4a14:	b3 0a       	sbc	r11, r19
-    4a16:	c4 0a       	sbc	r12, r20
-    4a18:	d5 0a       	sbc	r13, r21
-    4a1a:	c6 01       	movw	r24, r12
-    4a1c:	b5 01       	movw	r22, r10
-    4a1e:	a4 01       	movw	r20, r8
-    4a20:	93 01       	movw	r18, r6
-    4a22:	0e 94 74 32 	call	0x64e8	; 0x64e8 <__udivmodsi4>
-    4a26:	7b 01       	movw	r14, r22
-    4a28:	8c 01       	movw	r16, r24
-    4a2a:	c6 01       	movw	r24, r12
-    4a2c:	b5 01       	movw	r22, r10
-    4a2e:	a4 01       	movw	r20, r8
-    4a30:	93 01       	movw	r18, r6
-    4a32:	0e 94 74 32 	call	0x64e8	; 0x64e8 <__udivmodsi4>
-    4a36:	c9 01       	movw	r24, r18
-    4a38:	da 01       	movw	r26, r20
-    4a3a:	3c 01       	movw	r6, r24
-    4a3c:	4d 01       	movw	r8, r26
-    4a3e:	c4 01       	movw	r24, r8
-    4a40:	b3 01       	movw	r22, r6
-    4a42:	a5 96       	adiw	r28, 0x25	; 37
-    4a44:	2c ad       	ldd	r18, Y+60	; 0x3c
-    4a46:	3d ad       	ldd	r19, Y+61	; 0x3d
-    4a48:	4e ad       	ldd	r20, Y+62	; 0x3e
-    4a4a:	5f ad       	ldd	r21, Y+63	; 0x3f
-    4a4c:	a5 97       	sbiw	r28, 0x25	; 37
-    4a4e:	0e 94 41 32 	call	0x6482	; 0x6482 <__mulsi3>
-    4a52:	9b 01       	movw	r18, r22
-    4a54:	ac 01       	movw	r20, r24
-    4a56:	87 01       	movw	r16, r14
-    4a58:	ff 24       	eor	r15, r15
-    4a5a:	ee 24       	eor	r14, r14
-    4a5c:	8d a5       	ldd	r24, Y+45	; 0x2d
-    4a5e:	9e a5       	ldd	r25, Y+46	; 0x2e
-    4a60:	af a5       	ldd	r26, Y+47	; 0x2f
-    4a62:	b8 a9       	ldd	r27, Y+48	; 0x30
-    4a64:	a0 70       	andi	r26, 0x00	; 0
-    4a66:	b0 70       	andi	r27, 0x00	; 0
-    4a68:	57 01       	movw	r10, r14
-    4a6a:	68 01       	movw	r12, r16
-    4a6c:	a8 2a       	or	r10, r24
-    4a6e:	b9 2a       	or	r11, r25
-    4a70:	ca 2a       	or	r12, r26
-    4a72:	db 2a       	or	r13, r27
-    4a74:	a2 16       	cp	r10, r18
-    4a76:	b3 06       	cpc	r11, r19
-    4a78:	c4 06       	cpc	r12, r20
-    4a7a:	d5 06       	cpc	r13, r21
-    4a7c:	00 f5       	brcc	.+64     	; 0x4abe <__divdi3+0xd5a>
-    4a7e:	08 94       	sec
-    4a80:	61 08       	sbc	r6, r1
-    4a82:	71 08       	sbc	r7, r1
-    4a84:	81 08       	sbc	r8, r1
-    4a86:	91 08       	sbc	r9, r1
-    4a88:	6d a9       	ldd	r22, Y+53	; 0x35
-    4a8a:	7e a9       	ldd	r23, Y+54	; 0x36
-    4a8c:	8f a9       	ldd	r24, Y+55	; 0x37
-    4a8e:	98 ad       	ldd	r25, Y+56	; 0x38
-    4a90:	a6 0e       	add	r10, r22
-    4a92:	b7 1e       	adc	r11, r23
-    4a94:	c8 1e       	adc	r12, r24
-    4a96:	d9 1e       	adc	r13, r25
-    4a98:	a6 16       	cp	r10, r22
-    4a9a:	b7 06       	cpc	r11, r23
-    4a9c:	c8 06       	cpc	r12, r24
-    4a9e:	d9 06       	cpc	r13, r25
-    4aa0:	70 f0       	brcs	.+28     	; 0x4abe <__divdi3+0xd5a>
-    4aa2:	a2 16       	cp	r10, r18
-    4aa4:	b3 06       	cpc	r11, r19
-    4aa6:	c4 06       	cpc	r12, r20
-    4aa8:	d5 06       	cpc	r13, r21
-    4aaa:	48 f4       	brcc	.+18     	; 0x4abe <__divdi3+0xd5a>
-    4aac:	08 94       	sec
-    4aae:	61 08       	sbc	r6, r1
-    4ab0:	71 08       	sbc	r7, r1
-    4ab2:	81 08       	sbc	r8, r1
-    4ab4:	91 08       	sbc	r9, r1
-    4ab6:	a6 0e       	add	r10, r22
-    4ab8:	b7 1e       	adc	r11, r23
-    4aba:	c8 1e       	adc	r12, r24
-    4abc:	d9 1e       	adc	r13, r25
-    4abe:	d6 01       	movw	r26, r12
-    4ac0:	c5 01       	movw	r24, r10
-    4ac2:	82 1b       	sub	r24, r18
-    4ac4:	93 0b       	sbc	r25, r19
-    4ac6:	a4 0b       	sbc	r26, r20
-    4ac8:	b5 0b       	sbc	r27, r21
-    4aca:	89 a7       	std	Y+41, r24	; 0x29
-    4acc:	9a a7       	std	Y+42, r25	; 0x2a
-    4ace:	ab a7       	std	Y+43, r26	; 0x2b
-    4ad0:	bc a7       	std	Y+44, r27	; 0x2c
-    4ad2:	d1 01       	movw	r26, r2
-    4ad4:	99 27       	eor	r25, r25
-    4ad6:	88 27       	eor	r24, r24
-    4ad8:	64 01       	movw	r12, r8
-    4ada:	53 01       	movw	r10, r6
-    4adc:	a8 2a       	or	r10, r24
-    4ade:	b9 2a       	or	r11, r25
-    4ae0:	ca 2a       	or	r12, r26
-    4ae2:	db 2a       	or	r13, r27
-    4ae4:	25 96       	adiw	r28, 0x05	; 5
-    4ae6:	ac ae       	std	Y+60, r10	; 0x3c
-    4ae8:	bd ae       	std	Y+61, r11	; 0x3d
-    4aea:	ce ae       	std	Y+62, r12	; 0x3e
-    4aec:	df ae       	std	Y+63, r13	; 0x3f
-    4aee:	25 97       	sbiw	r28, 0x05	; 5
-    4af0:	86 01       	movw	r16, r12
-    4af2:	75 01       	movw	r14, r10
-    4af4:	2f ef       	ldi	r18, 0xFF	; 255
-    4af6:	3f ef       	ldi	r19, 0xFF	; 255
-    4af8:	40 e0       	ldi	r20, 0x00	; 0
-    4afa:	50 e0       	ldi	r21, 0x00	; 0
-    4afc:	e2 22       	and	r14, r18
-    4afe:	f3 22       	and	r15, r19
-    4b00:	04 23       	and	r16, r20
-    4b02:	15 23       	and	r17, r21
-    4b04:	a6 01       	movw	r20, r12
-    4b06:	66 27       	eor	r22, r22
-    4b08:	77 27       	eor	r23, r23
-    4b0a:	ad 96       	adiw	r28, 0x2d	; 45
-    4b0c:	4c af       	std	Y+60, r20	; 0x3c
-    4b0e:	5d af       	std	Y+61, r21	; 0x3d
-    4b10:	6e af       	std	Y+62, r22	; 0x3e
-    4b12:	7f af       	std	Y+63, r23	; 0x3f
-    4b14:	ad 97       	sbiw	r28, 0x2d	; 45
-    4b16:	a9 a8       	ldd	r10, Y+49	; 0x31
-    4b18:	ba a8       	ldd	r11, Y+50	; 0x32
-    4b1a:	cb a8       	ldd	r12, Y+51	; 0x33
-    4b1c:	dc a8       	ldd	r13, Y+52	; 0x34
-    4b1e:	6f ef       	ldi	r22, 0xFF	; 255
-    4b20:	7f ef       	ldi	r23, 0xFF	; 255
-    4b22:	80 e0       	ldi	r24, 0x00	; 0
-    4b24:	90 e0       	ldi	r25, 0x00	; 0
-    4b26:	a6 22       	and	r10, r22
-    4b28:	b7 22       	and	r11, r23
-    4b2a:	c8 22       	and	r12, r24
-    4b2c:	d9 22       	and	r13, r25
-    4b2e:	89 a9       	ldd	r24, Y+49	; 0x31
-    4b30:	9a a9       	ldd	r25, Y+50	; 0x32
-    4b32:	ab a9       	ldd	r26, Y+51	; 0x33
-    4b34:	bc a9       	ldd	r27, Y+52	; 0x34
-    4b36:	1d 01       	movw	r2, r26
-    4b38:	44 24       	eor	r4, r4
-    4b3a:	55 24       	eor	r5, r5
-    4b3c:	c8 01       	movw	r24, r16
-    4b3e:	b7 01       	movw	r22, r14
-    4b40:	a6 01       	movw	r20, r12
-    4b42:	95 01       	movw	r18, r10
-    4b44:	0e 94 41 32 	call	0x6482	; 0x6482 <__mulsi3>
-    4b48:	a9 96       	adiw	r28, 0x29	; 41
-    4b4a:	6c af       	std	Y+60, r22	; 0x3c
-    4b4c:	7d af       	std	Y+61, r23	; 0x3d
-    4b4e:	8e af       	std	Y+62, r24	; 0x3e
-    4b50:	9f af       	std	Y+63, r25	; 0x3f
-    4b52:	a9 97       	sbiw	r28, 0x29	; 41
-    4b54:	c8 01       	movw	r24, r16
-    4b56:	b7 01       	movw	r22, r14
-    4b58:	a2 01       	movw	r20, r4
-    4b5a:	91 01       	movw	r18, r2
-    4b5c:	0e 94 41 32 	call	0x6482	; 0x6482 <__mulsi3>
-    4b60:	3b 01       	movw	r6, r22
-    4b62:	4c 01       	movw	r8, r24
-    4b64:	ad 96       	adiw	r28, 0x2d	; 45
-    4b66:	6c ad       	ldd	r22, Y+60	; 0x3c
-    4b68:	7d ad       	ldd	r23, Y+61	; 0x3d
-    4b6a:	8e ad       	ldd	r24, Y+62	; 0x3e
-    4b6c:	9f ad       	ldd	r25, Y+63	; 0x3f
-    4b6e:	ad 97       	sbiw	r28, 0x2d	; 45
-    4b70:	a6 01       	movw	r20, r12
-    4b72:	95 01       	movw	r18, r10
-    4b74:	0e 94 41 32 	call	0x6482	; 0x6482 <__mulsi3>
-    4b78:	7b 01       	movw	r14, r22
-    4b7a:	8c 01       	movw	r16, r24
-    4b7c:	ad 96       	adiw	r28, 0x2d	; 45
-    4b7e:	6c ad       	ldd	r22, Y+60	; 0x3c
-    4b80:	7d ad       	ldd	r23, Y+61	; 0x3d
-    4b82:	8e ad       	ldd	r24, Y+62	; 0x3e
-    4b84:	9f ad       	ldd	r25, Y+63	; 0x3f
-    4b86:	ad 97       	sbiw	r28, 0x2d	; 45
-    4b88:	a2 01       	movw	r20, r4
-    4b8a:	91 01       	movw	r18, r2
-    4b8c:	0e 94 41 32 	call	0x6482	; 0x6482 <__mulsi3>
-    4b90:	5b 01       	movw	r10, r22
-    4b92:	6c 01       	movw	r12, r24
-    4b94:	a8 01       	movw	r20, r16
-    4b96:	97 01       	movw	r18, r14
-    4b98:	26 0d       	add	r18, r6
-    4b9a:	37 1d       	adc	r19, r7
-    4b9c:	48 1d       	adc	r20, r8
-    4b9e:	59 1d       	adc	r21, r9
-    4ba0:	a9 96       	adiw	r28, 0x29	; 41
-    4ba2:	6c ac       	ldd	r6, Y+60	; 0x3c
-    4ba4:	7d ac       	ldd	r7, Y+61	; 0x3d
-    4ba6:	8e ac       	ldd	r8, Y+62	; 0x3e
-    4ba8:	9f ac       	ldd	r9, Y+63	; 0x3f
-    4baa:	a9 97       	sbiw	r28, 0x29	; 41
-    4bac:	c4 01       	movw	r24, r8
-    4bae:	aa 27       	eor	r26, r26
-    4bb0:	bb 27       	eor	r27, r27
-    4bb2:	28 0f       	add	r18, r24
-    4bb4:	39 1f       	adc	r19, r25
-    4bb6:	4a 1f       	adc	r20, r26
-    4bb8:	5b 1f       	adc	r21, r27
-    4bba:	2e 15       	cp	r18, r14
-    4bbc:	3f 05       	cpc	r19, r15
-    4bbe:	40 07       	cpc	r20, r16
-    4bc0:	51 07       	cpc	r21, r17
-    4bc2:	48 f4       	brcc	.+18     	; 0x4bd6 <__divdi3+0xe72>
-    4bc4:	e1 2c       	mov	r14, r1
-    4bc6:	f1 2c       	mov	r15, r1
-    4bc8:	61 e0       	ldi	r22, 0x01	; 1
-    4bca:	06 2f       	mov	r16, r22
-    4bcc:	11 2d       	mov	r17, r1
-    4bce:	ae 0c       	add	r10, r14
-    4bd0:	bf 1c       	adc	r11, r15
-    4bd2:	c0 1e       	adc	r12, r16
-    4bd4:	d1 1e       	adc	r13, r17
-    4bd6:	ca 01       	movw	r24, r20
-    4bd8:	aa 27       	eor	r26, r26
-    4bda:	bb 27       	eor	r27, r27
-    4bdc:	bc 01       	movw	r22, r24
-    4bde:	cd 01       	movw	r24, r26
-    4be0:	6a 0d       	add	r22, r10
-    4be2:	7b 1d       	adc	r23, r11
-    4be4:	8c 1d       	adc	r24, r12
-    4be6:	9d 1d       	adc	r25, r13
-    4be8:	69 a4       	ldd	r6, Y+41	; 0x29
-    4bea:	7a a4       	ldd	r7, Y+42	; 0x2a
-    4bec:	8b a4       	ldd	r8, Y+43	; 0x2b
-    4bee:	9c a4       	ldd	r9, Y+44	; 0x2c
-    4bf0:	66 16       	cp	r6, r22
-    4bf2:	77 06       	cpc	r7, r23
-    4bf4:	88 06       	cpc	r8, r24
-    4bf6:	99 06       	cpc	r9, r25
-    4bf8:	50 f1       	brcs	.+84     	; 0x4c4e <__divdi3+0xeea>
-    4bfa:	66 15       	cp	r22, r6
-    4bfc:	77 05       	cpc	r23, r7
-    4bfe:	88 05       	cpc	r24, r8
-    4c00:	99 05       	cpc	r25, r9
-    4c02:	09 f0       	breq	.+2      	; 0x4c06 <__divdi3+0xea2>
-    4c04:	4d c0       	rjmp	.+154    	; 0x4ca0 <__divdi3+0xf3c>
-    4c06:	d9 01       	movw	r26, r18
-    4c08:	99 27       	eor	r25, r25
-    4c0a:	88 27       	eor	r24, r24
-    4c0c:	a9 96       	adiw	r28, 0x29	; 41
-    4c0e:	2c ad       	ldd	r18, Y+60	; 0x3c
-    4c10:	3d ad       	ldd	r19, Y+61	; 0x3d
-    4c12:	4e ad       	ldd	r20, Y+62	; 0x3e
-    4c14:	5f ad       	ldd	r21, Y+63	; 0x3f
-    4c16:	a9 97       	sbiw	r28, 0x29	; 41
-    4c18:	40 70       	andi	r20, 0x00	; 0
-    4c1a:	50 70       	andi	r21, 0x00	; 0
-    4c1c:	82 0f       	add	r24, r18
-    4c1e:	93 1f       	adc	r25, r19
-    4c20:	a4 1f       	adc	r26, r20
-    4c22:	b5 1f       	adc	r27, r21
-    4c24:	21 96       	adiw	r28, 0x01	; 1
-    4c26:	2c ad       	ldd	r18, Y+60	; 0x3c
-    4c28:	3d ad       	ldd	r19, Y+61	; 0x3d
-    4c2a:	4e ad       	ldd	r20, Y+62	; 0x3e
-    4c2c:	5f ad       	ldd	r21, Y+63	; 0x3f
-    4c2e:	21 97       	sbiw	r28, 0x01	; 1
-    4c30:	e2 96       	adiw	r28, 0x32	; 50
-    4c32:	0f ac       	ldd	r0, Y+63	; 0x3f
-    4c34:	e2 97       	sbiw	r28, 0x32	; 50
-    4c36:	04 c0       	rjmp	.+8      	; 0x4c40 <__divdi3+0xedc>
-    4c38:	22 0f       	add	r18, r18
-    4c3a:	33 1f       	adc	r19, r19
-    4c3c:	44 1f       	adc	r20, r20
-    4c3e:	55 1f       	adc	r21, r21
-    4c40:	0a 94       	dec	r0
-    4c42:	d2 f7       	brpl	.-12     	; 0x4c38 <__divdi3+0xed4>
-    4c44:	28 17       	cp	r18, r24
-    4c46:	39 07       	cpc	r19, r25
-    4c48:	4a 07       	cpc	r20, r26
-    4c4a:	5b 07       	cpc	r21, r27
-    4c4c:	48 f5       	brcc	.+82     	; 0x4ca0 <__divdi3+0xf3c>
-    4c4e:	25 96       	adiw	r28, 0x05	; 5
-    4c50:	0c ad       	ldd	r16, Y+60	; 0x3c
-    4c52:	1d ad       	ldd	r17, Y+61	; 0x3d
-    4c54:	2e ad       	ldd	r18, Y+62	; 0x3e
-    4c56:	3f ad       	ldd	r19, Y+63	; 0x3f
-    4c58:	25 97       	sbiw	r28, 0x05	; 5
-    4c5a:	01 50       	subi	r16, 0x01	; 1
-    4c5c:	10 40       	sbci	r17, 0x00	; 0
-    4c5e:	20 40       	sbci	r18, 0x00	; 0
-    4c60:	30 40       	sbci	r19, 0x00	; 0
-    4c62:	25 96       	adiw	r28, 0x05	; 5
-    4c64:	0c af       	std	Y+60, r16	; 0x3c
-    4c66:	1d af       	std	Y+61, r17	; 0x3d
-    4c68:	2e af       	std	Y+62, r18	; 0x3e
-    4c6a:	3f af       	std	Y+63, r19	; 0x3f
-    4c6c:	25 97       	sbiw	r28, 0x05	; 5
-    4c6e:	18 c0       	rjmp	.+48     	; 0x4ca0 <__divdi3+0xf3c>
-    4c70:	66 24       	eor	r6, r6
-    4c72:	77 24       	eor	r7, r7
-    4c74:	43 01       	movw	r8, r6
-    4c76:	21 e0       	ldi	r18, 0x01	; 1
-    4c78:	30 e0       	ldi	r19, 0x00	; 0
-    4c7a:	40 e0       	ldi	r20, 0x00	; 0
-    4c7c:	50 e0       	ldi	r21, 0x00	; 0
-    4c7e:	25 96       	adiw	r28, 0x05	; 5
-    4c80:	2c af       	std	Y+60, r18	; 0x3c
-    4c82:	3d af       	std	Y+61, r19	; 0x3d
-    4c84:	4e af       	std	Y+62, r20	; 0x3e
-    4c86:	5f af       	std	Y+63, r21	; 0x3f
-    4c88:	25 97       	sbiw	r28, 0x05	; 5
-    4c8a:	0d c0       	rjmp	.+26     	; 0x4ca6 <__divdi3+0xf42>
-    4c8c:	66 24       	eor	r6, r6
-    4c8e:	77 24       	eor	r7, r7
-    4c90:	43 01       	movw	r8, r6
-    4c92:	25 96       	adiw	r28, 0x05	; 5
-    4c94:	1c ae       	std	Y+60, r1	; 0x3c
-    4c96:	1d ae       	std	Y+61, r1	; 0x3d
-    4c98:	1e ae       	std	Y+62, r1	; 0x3e
-    4c9a:	1f ae       	std	Y+63, r1	; 0x3f
-    4c9c:	25 97       	sbiw	r28, 0x05	; 5
-    4c9e:	03 c0       	rjmp	.+6      	; 0x4ca6 <__divdi3+0xf42>
-    4ca0:	66 24       	eor	r6, r6
-    4ca2:	77 24       	eor	r7, r7
-    4ca4:	43 01       	movw	r8, r6
-    4ca6:	fe 01       	movw	r30, r28
-    4ca8:	b1 96       	adiw	r30, 0x21	; 33
-    4caa:	88 e0       	ldi	r24, 0x08	; 8
-    4cac:	df 01       	movw	r26, r30
-    4cae:	1d 92       	st	X+, r1
-    4cb0:	8a 95       	dec	r24
-    4cb2:	e9 f7       	brne	.-6      	; 0x4cae <__divdi3+0xf4a>
+    469e:	bc 01       	movw	r22, r24
+    46a0:	cd 01       	movw	r24, r26
+    46a2:	6d 96       	adiw	r28, 0x1d	; 29
+    46a4:	2c ad       	ldd	r18, Y+60	; 0x3c
+    46a6:	3d ad       	ldd	r19, Y+61	; 0x3d
+    46a8:	4e ad       	ldd	r20, Y+62	; 0x3e
+    46aa:	5f ad       	ldd	r21, Y+63	; 0x3f
+    46ac:	6d 97       	sbiw	r28, 0x1d	; 29
+    46ae:	0e 94 d8 2f 	call	0x5fb0	; 0x5fb0 <__mulsi3>
+    46b2:	9b 01       	movw	r18, r22
+    46b4:	ac 01       	movw	r20, r24
+    46b6:	87 01       	movw	r16, r14
+    46b8:	ff 24       	eor	r15, r15
+    46ba:	ee 24       	eor	r14, r14
+    46bc:	21 96       	adiw	r28, 0x01	; 1
+    46be:	ac ac       	ldd	r10, Y+60	; 0x3c
+    46c0:	bd ac       	ldd	r11, Y+61	; 0x3d
+    46c2:	ce ac       	ldd	r12, Y+62	; 0x3e
+    46c4:	df ac       	ldd	r13, Y+63	; 0x3f
+    46c6:	21 97       	sbiw	r28, 0x01	; 1
+    46c8:	c6 01       	movw	r24, r12
+    46ca:	aa 27       	eor	r26, r26
+    46cc:	bb 27       	eor	r27, r27
+    46ce:	57 01       	movw	r10, r14
+    46d0:	68 01       	movw	r12, r16
+    46d2:	a8 2a       	or	r10, r24
+    46d4:	b9 2a       	or	r11, r25
+    46d6:	ca 2a       	or	r12, r26
+    46d8:	db 2a       	or	r13, r27
+    46da:	a2 16       	cp	r10, r18
+    46dc:	b3 06       	cpc	r11, r19
+    46de:	c4 06       	cpc	r12, r20
+    46e0:	d5 06       	cpc	r13, r21
+    46e2:	60 f5       	brcc	.+88     	; 0x473c <__divdi3+0x986>
+    46e4:	a1 96       	adiw	r28, 0x21	; 33
+    46e6:	6c ad       	ldd	r22, Y+60	; 0x3c
+    46e8:	7d ad       	ldd	r23, Y+61	; 0x3d
+    46ea:	8e ad       	ldd	r24, Y+62	; 0x3e
+    46ec:	9f ad       	ldd	r25, Y+63	; 0x3f
+    46ee:	a1 97       	sbiw	r28, 0x21	; 33
+    46f0:	61 50       	subi	r22, 0x01	; 1
+    46f2:	70 40       	sbci	r23, 0x00	; 0
+    46f4:	80 40       	sbci	r24, 0x00	; 0
+    46f6:	90 40       	sbci	r25, 0x00	; 0
+    46f8:	a1 96       	adiw	r28, 0x21	; 33
+    46fa:	6c af       	std	Y+60, r22	; 0x3c
+    46fc:	7d af       	std	Y+61, r23	; 0x3d
+    46fe:	8e af       	std	Y+62, r24	; 0x3e
+    4700:	9f af       	std	Y+63, r25	; 0x3f
+    4702:	a1 97       	sbiw	r28, 0x21	; 33
+    4704:	a2 0c       	add	r10, r2
+    4706:	b3 1c       	adc	r11, r3
+    4708:	c4 1c       	adc	r12, r4
+    470a:	d5 1c       	adc	r13, r5
+    470c:	a2 14       	cp	r10, r2
+    470e:	b3 04       	cpc	r11, r3
+    4710:	c4 04       	cpc	r12, r4
+    4712:	d5 04       	cpc	r13, r5
+    4714:	98 f0       	brcs	.+38     	; 0x473c <__divdi3+0x986>
+    4716:	a2 16       	cp	r10, r18
+    4718:	b3 06       	cpc	r11, r19
+    471a:	c4 06       	cpc	r12, r20
+    471c:	d5 06       	cpc	r13, r21
+    471e:	70 f4       	brcc	.+28     	; 0x473c <__divdi3+0x986>
+    4720:	61 50       	subi	r22, 0x01	; 1
+    4722:	70 40       	sbci	r23, 0x00	; 0
+    4724:	80 40       	sbci	r24, 0x00	; 0
+    4726:	90 40       	sbci	r25, 0x00	; 0
+    4728:	a1 96       	adiw	r28, 0x21	; 33
+    472a:	6c af       	std	Y+60, r22	; 0x3c
+    472c:	7d af       	std	Y+61, r23	; 0x3d
+    472e:	8e af       	std	Y+62, r24	; 0x3e
+    4730:	9f af       	std	Y+63, r25	; 0x3f
+    4732:	a1 97       	sbiw	r28, 0x21	; 33
+    4734:	a2 0c       	add	r10, r2
+    4736:	b3 1c       	adc	r11, r3
+    4738:	c4 1c       	adc	r12, r4
+    473a:	d5 1c       	adc	r13, r5
+    473c:	a2 1a       	sub	r10, r18
+    473e:	b3 0a       	sbc	r11, r19
+    4740:	c4 0a       	sbc	r12, r20
+    4742:	d5 0a       	sbc	r13, r21
+    4744:	c6 01       	movw	r24, r12
+    4746:	b5 01       	movw	r22, r10
+    4748:	69 96       	adiw	r28, 0x19	; 25
+    474a:	2c ad       	ldd	r18, Y+60	; 0x3c
+    474c:	3d ad       	ldd	r19, Y+61	; 0x3d
+    474e:	4e ad       	ldd	r20, Y+62	; 0x3e
+    4750:	5f ad       	ldd	r21, Y+63	; 0x3f
+    4752:	69 97       	sbiw	r28, 0x19	; 25
+    4754:	0e 94 0b 30 	call	0x6016	; 0x6016 <__udivmodsi4>
+    4758:	7b 01       	movw	r14, r22
+    475a:	8c 01       	movw	r16, r24
+    475c:	c6 01       	movw	r24, r12
+    475e:	b5 01       	movw	r22, r10
+    4760:	69 96       	adiw	r28, 0x19	; 25
+    4762:	2c ad       	ldd	r18, Y+60	; 0x3c
+    4764:	3d ad       	ldd	r19, Y+61	; 0x3d
+    4766:	4e ad       	ldd	r20, Y+62	; 0x3e
+    4768:	5f ad       	ldd	r21, Y+63	; 0x3f
+    476a:	69 97       	sbiw	r28, 0x19	; 25
+    476c:	0e 94 0b 30 	call	0x6016	; 0x6016 <__udivmodsi4>
+    4770:	c9 01       	movw	r24, r18
+    4772:	da 01       	movw	r26, r20
+    4774:	5c 01       	movw	r10, r24
+    4776:	6d 01       	movw	r12, r26
+    4778:	c6 01       	movw	r24, r12
+    477a:	b5 01       	movw	r22, r10
+    477c:	6d 96       	adiw	r28, 0x1d	; 29
+    477e:	2c ad       	ldd	r18, Y+60	; 0x3c
+    4780:	3d ad       	ldd	r19, Y+61	; 0x3d
+    4782:	4e ad       	ldd	r20, Y+62	; 0x3e
+    4784:	5f ad       	ldd	r21, Y+63	; 0x3f
+    4786:	6d 97       	sbiw	r28, 0x1d	; 29
+    4788:	0e 94 d8 2f 	call	0x5fb0	; 0x5fb0 <__mulsi3>
+    478c:	9b 01       	movw	r18, r22
+    478e:	ac 01       	movw	r20, r24
+    4790:	87 01       	movw	r16, r14
+    4792:	ff 24       	eor	r15, r15
+    4794:	ee 24       	eor	r14, r14
+    4796:	21 96       	adiw	r28, 0x01	; 1
+    4798:	8c ad       	ldd	r24, Y+60	; 0x3c
+    479a:	9d ad       	ldd	r25, Y+61	; 0x3d
+    479c:	ae ad       	ldd	r26, Y+62	; 0x3e
+    479e:	bf ad       	ldd	r27, Y+63	; 0x3f
+    47a0:	21 97       	sbiw	r28, 0x01	; 1
+    47a2:	a0 70       	andi	r26, 0x00	; 0
+    47a4:	b0 70       	andi	r27, 0x00	; 0
+    47a6:	e8 2a       	or	r14, r24
+    47a8:	f9 2a       	or	r15, r25
+    47aa:	0a 2b       	or	r16, r26
+    47ac:	1b 2b       	or	r17, r27
+    47ae:	e2 16       	cp	r14, r18
+    47b0:	f3 06       	cpc	r15, r19
+    47b2:	04 07       	cpc	r16, r20
+    47b4:	15 07       	cpc	r17, r21
+    47b6:	c0 f4       	brcc	.+48     	; 0x47e8 <__divdi3+0xa32>
+    47b8:	08 94       	sec
+    47ba:	a1 08       	sbc	r10, r1
+    47bc:	b1 08       	sbc	r11, r1
+    47be:	c1 08       	sbc	r12, r1
+    47c0:	d1 08       	sbc	r13, r1
+    47c2:	e2 0c       	add	r14, r2
+    47c4:	f3 1c       	adc	r15, r3
+    47c6:	04 1d       	adc	r16, r4
+    47c8:	15 1d       	adc	r17, r5
+    47ca:	e2 14       	cp	r14, r2
+    47cc:	f3 04       	cpc	r15, r3
+    47ce:	04 05       	cpc	r16, r4
+    47d0:	15 05       	cpc	r17, r5
+    47d2:	50 f0       	brcs	.+20     	; 0x47e8 <__divdi3+0xa32>
+    47d4:	e2 16       	cp	r14, r18
+    47d6:	f3 06       	cpc	r15, r19
+    47d8:	04 07       	cpc	r16, r20
+    47da:	15 07       	cpc	r17, r21
+    47dc:	28 f4       	brcc	.+10     	; 0x47e8 <__divdi3+0xa32>
+    47de:	08 94       	sec
+    47e0:	a1 08       	sbc	r10, r1
+    47e2:	b1 08       	sbc	r11, r1
+    47e4:	c1 08       	sbc	r12, r1
+    47e6:	d1 08       	sbc	r13, r1
+    47e8:	a1 96       	adiw	r28, 0x21	; 33
+    47ea:	ec ac       	ldd	r14, Y+60	; 0x3c
+    47ec:	fd ac       	ldd	r15, Y+61	; 0x3d
+    47ee:	0e ad       	ldd	r16, Y+62	; 0x3e
+    47f0:	1f ad       	ldd	r17, Y+63	; 0x3f
+    47f2:	a1 97       	sbiw	r28, 0x21	; 33
+    47f4:	d7 01       	movw	r26, r14
+    47f6:	99 27       	eor	r25, r25
+    47f8:	88 27       	eor	r24, r24
+    47fa:	96 01       	movw	r18, r12
+    47fc:	85 01       	movw	r16, r10
+    47fe:	08 2b       	or	r16, r24
+    4800:	19 2b       	or	r17, r25
+    4802:	2a 2b       	or	r18, r26
+    4804:	3b 2b       	or	r19, r27
+    4806:	25 96       	adiw	r28, 0x05	; 5
+    4808:	0c af       	std	Y+60, r16	; 0x3c
+    480a:	1d af       	std	Y+61, r17	; 0x3d
+    480c:	2e af       	std	Y+62, r18	; 0x3e
+    480e:	3f af       	std	Y+63, r19	; 0x3f
+    4810:	25 97       	sbiw	r28, 0x05	; 5
+    4812:	72 c2       	rjmp	.+1252   	; 0x4cf8 <__divdi3+0xf42>
+    4814:	6e 14       	cp	r6, r14
+    4816:	7f 04       	cpc	r7, r15
+    4818:	80 06       	cpc	r8, r16
+    481a:	91 06       	cpc	r9, r17
+    481c:	08 f4       	brcc	.+2      	; 0x4820 <__divdi3+0xa6a>
+    481e:	5f c2       	rjmp	.+1214   	; 0x4cde <__divdi3+0xf28>
+    4820:	20 e0       	ldi	r18, 0x00	; 0
+    4822:	e2 16       	cp	r14, r18
+    4824:	20 e0       	ldi	r18, 0x00	; 0
+    4826:	f2 06       	cpc	r15, r18
+    4828:	21 e0       	ldi	r18, 0x01	; 1
+    482a:	02 07       	cpc	r16, r18
+    482c:	20 e0       	ldi	r18, 0x00	; 0
+    482e:	12 07       	cpc	r17, r18
+    4830:	88 f4       	brcc	.+34     	; 0x4854 <__divdi3+0xa9e>
+    4832:	3f ef       	ldi	r19, 0xFF	; 255
+    4834:	e3 16       	cp	r14, r19
+    4836:	f1 04       	cpc	r15, r1
+    4838:	01 05       	cpc	r16, r1
+    483a:	11 05       	cpc	r17, r1
+    483c:	31 f0       	breq	.+12     	; 0x484a <__divdi3+0xa94>
+    483e:	28 f0       	brcs	.+10     	; 0x484a <__divdi3+0xa94>
+    4840:	48 e0       	ldi	r20, 0x08	; 8
+    4842:	50 e0       	ldi	r21, 0x00	; 0
+    4844:	60 e0       	ldi	r22, 0x00	; 0
+    4846:	70 e0       	ldi	r23, 0x00	; 0
+    4848:	17 c0       	rjmp	.+46     	; 0x4878 <__divdi3+0xac2>
+    484a:	40 e0       	ldi	r20, 0x00	; 0
+    484c:	50 e0       	ldi	r21, 0x00	; 0
+    484e:	60 e0       	ldi	r22, 0x00	; 0
+    4850:	70 e0       	ldi	r23, 0x00	; 0
+    4852:	12 c0       	rjmp	.+36     	; 0x4878 <__divdi3+0xac2>
+    4854:	40 e0       	ldi	r20, 0x00	; 0
+    4856:	e4 16       	cp	r14, r20
+    4858:	40 e0       	ldi	r20, 0x00	; 0
+    485a:	f4 06       	cpc	r15, r20
+    485c:	40 e0       	ldi	r20, 0x00	; 0
+    485e:	04 07       	cpc	r16, r20
+    4860:	41 e0       	ldi	r20, 0x01	; 1
+    4862:	14 07       	cpc	r17, r20
+    4864:	28 f0       	brcs	.+10     	; 0x4870 <__divdi3+0xaba>
+    4866:	48 e1       	ldi	r20, 0x18	; 24
+    4868:	50 e0       	ldi	r21, 0x00	; 0
+    486a:	60 e0       	ldi	r22, 0x00	; 0
+    486c:	70 e0       	ldi	r23, 0x00	; 0
+    486e:	04 c0       	rjmp	.+8      	; 0x4878 <__divdi3+0xac2>
+    4870:	40 e1       	ldi	r20, 0x10	; 16
+    4872:	50 e0       	ldi	r21, 0x00	; 0
+    4874:	60 e0       	ldi	r22, 0x00	; 0
+    4876:	70 e0       	ldi	r23, 0x00	; 0
+    4878:	d8 01       	movw	r26, r16
+    487a:	c7 01       	movw	r24, r14
+    487c:	04 2e       	mov	r0, r20
+    487e:	04 c0       	rjmp	.+8      	; 0x4888 <__divdi3+0xad2>
+    4880:	b6 95       	lsr	r27
+    4882:	a7 95       	ror	r26
+    4884:	97 95       	ror	r25
+    4886:	87 95       	ror	r24
+    4888:	0a 94       	dec	r0
+    488a:	d2 f7       	brpl	.-12     	; 0x4880 <__divdi3+0xaca>
+    488c:	88 5a       	subi	r24, 0xA8	; 168
+    488e:	9b 4f       	sbci	r25, 0xFB	; 251
+    4890:	dc 01       	movw	r26, r24
+    4892:	2c 91       	ld	r18, X
+    4894:	30 e2       	ldi	r19, 0x20	; 32
+    4896:	a3 2e       	mov	r10, r19
+    4898:	b1 2c       	mov	r11, r1
+    489a:	c1 2c       	mov	r12, r1
+    489c:	d1 2c       	mov	r13, r1
+    489e:	d6 01       	movw	r26, r12
+    48a0:	c5 01       	movw	r24, r10
+    48a2:	84 1b       	sub	r24, r20
+    48a4:	95 0b       	sbc	r25, r21
+    48a6:	a6 0b       	sbc	r26, r22
+    48a8:	b7 0b       	sbc	r27, r23
+    48aa:	82 1b       	sub	r24, r18
+    48ac:	91 09       	sbc	r25, r1
+    48ae:	a1 09       	sbc	r26, r1
+    48b0:	b1 09       	sbc	r27, r1
+    48b2:	00 97       	sbiw	r24, 0x00	; 0
+    48b4:	a1 05       	cpc	r26, r1
+    48b6:	b1 05       	cpc	r27, r1
+    48b8:	99 f4       	brne	.+38     	; 0x48e0 <__divdi3+0xb2a>
+    48ba:	e6 14       	cp	r14, r6
+    48bc:	f7 04       	cpc	r15, r7
+    48be:	08 05       	cpc	r16, r8
+    48c0:	19 05       	cpc	r17, r9
+    48c2:	08 f4       	brcc	.+2      	; 0x48c6 <__divdi3+0xb10>
+    48c4:	fe c1       	rjmp	.+1020   	; 0x4cc2 <__divdi3+0xf0c>
+    48c6:	21 96       	adiw	r28, 0x01	; 1
+    48c8:	6c ac       	ldd	r6, Y+60	; 0x3c
+    48ca:	7d ac       	ldd	r7, Y+61	; 0x3d
+    48cc:	8e ac       	ldd	r8, Y+62	; 0x3e
+    48ce:	9f ac       	ldd	r9, Y+63	; 0x3f
+    48d0:	21 97       	sbiw	r28, 0x01	; 1
+    48d2:	62 14       	cp	r6, r2
+    48d4:	73 04       	cpc	r7, r3
+    48d6:	84 04       	cpc	r8, r4
+    48d8:	95 04       	cpc	r9, r5
+    48da:	08 f0       	brcs	.+2      	; 0x48de <__divdi3+0xb28>
+    48dc:	f2 c1       	rjmp	.+996    	; 0x4cc2 <__divdi3+0xf0c>
+    48de:	ff c1       	rjmp	.+1022   	; 0x4cde <__divdi3+0xf28>
+    48e0:	e2 96       	adiw	r28, 0x32	; 50
+    48e2:	8f af       	std	Y+63, r24	; 0x3f
+    48e4:	e2 97       	sbiw	r28, 0x32	; 50
+    48e6:	08 2e       	mov	r0, r24
+    48e8:	04 c0       	rjmp	.+8      	; 0x48f2 <__divdi3+0xb3c>
+    48ea:	ee 0c       	add	r14, r14
+    48ec:	ff 1c       	adc	r15, r15
+    48ee:	00 1f       	adc	r16, r16
+    48f0:	11 1f       	adc	r17, r17
+    48f2:	0a 94       	dec	r0
+    48f4:	d2 f7       	brpl	.-12     	; 0x48ea <__divdi3+0xb34>
+    48f6:	6a 2d       	mov	r22, r10
+    48f8:	68 1b       	sub	r22, r24
+    48fa:	d2 01       	movw	r26, r4
+    48fc:	c1 01       	movw	r24, r2
+    48fe:	06 2e       	mov	r0, r22
+    4900:	04 c0       	rjmp	.+8      	; 0x490a <__divdi3+0xb54>
+    4902:	b6 95       	lsr	r27
+    4904:	a7 95       	ror	r26
+    4906:	97 95       	ror	r25
+    4908:	87 95       	ror	r24
+    490a:	0a 94       	dec	r0
+    490c:	d2 f7       	brpl	.-12     	; 0x4902 <__divdi3+0xb4c>
+    490e:	5c 01       	movw	r10, r24
+    4910:	6d 01       	movw	r12, r26
+    4912:	ae 28       	or	r10, r14
+    4914:	bf 28       	or	r11, r15
+    4916:	c0 2a       	or	r12, r16
+    4918:	d1 2a       	or	r13, r17
+    491a:	ad aa       	std	Y+53, r10	; 0x35
+    491c:	be aa       	std	Y+54, r11	; 0x36
+    491e:	cf aa       	std	Y+55, r12	; 0x37
+    4920:	d8 ae       	std	Y+56, r13	; 0x38
+    4922:	72 01       	movw	r14, r4
+    4924:	61 01       	movw	r12, r2
+    4926:	e2 96       	adiw	r28, 0x32	; 50
+    4928:	0f ac       	ldd	r0, Y+63	; 0x3f
+    492a:	e2 97       	sbiw	r28, 0x32	; 50
+    492c:	04 c0       	rjmp	.+8      	; 0x4936 <__divdi3+0xb80>
+    492e:	cc 0c       	add	r12, r12
+    4930:	dd 1c       	adc	r13, r13
+    4932:	ee 1c       	adc	r14, r14
+    4934:	ff 1c       	adc	r15, r15
+    4936:	0a 94       	dec	r0
+    4938:	d2 f7       	brpl	.-12     	; 0x492e <__divdi3+0xb78>
+    493a:	c9 aa       	std	Y+49, r12	; 0x31
+    493c:	da aa       	std	Y+50, r13	; 0x32
+    493e:	eb aa       	std	Y+51, r14	; 0x33
+    4940:	fc aa       	std	Y+52, r15	; 0x34
+    4942:	64 01       	movw	r12, r8
+    4944:	53 01       	movw	r10, r6
+    4946:	06 2e       	mov	r0, r22
+    4948:	04 c0       	rjmp	.+8      	; 0x4952 <__divdi3+0xb9c>
+    494a:	d6 94       	lsr	r13
+    494c:	c7 94       	ror	r12
+    494e:	b7 94       	ror	r11
+    4950:	a7 94       	ror	r10
+    4952:	0a 94       	dec	r0
+    4954:	d2 f7       	brpl	.-12     	; 0x494a <__divdi3+0xb94>
+    4956:	d4 01       	movw	r26, r8
+    4958:	c3 01       	movw	r24, r6
+    495a:	e2 96       	adiw	r28, 0x32	; 50
+    495c:	0f ac       	ldd	r0, Y+63	; 0x3f
+    495e:	e2 97       	sbiw	r28, 0x32	; 50
+    4960:	04 c0       	rjmp	.+8      	; 0x496a <__divdi3+0xbb4>
+    4962:	88 0f       	add	r24, r24
+    4964:	99 1f       	adc	r25, r25
+    4966:	aa 1f       	adc	r26, r26
+    4968:	bb 1f       	adc	r27, r27
+    496a:	0a 94       	dec	r0
+    496c:	d2 f7       	brpl	.-12     	; 0x4962 <__divdi3+0xbac>
+    496e:	21 96       	adiw	r28, 0x01	; 1
+    4970:	ec ac       	ldd	r14, Y+60	; 0x3c
+    4972:	fd ac       	ldd	r15, Y+61	; 0x3d
+    4974:	0e ad       	ldd	r16, Y+62	; 0x3e
+    4976:	1f ad       	ldd	r17, Y+63	; 0x3f
+    4978:	21 97       	sbiw	r28, 0x01	; 1
+    497a:	04 c0       	rjmp	.+8      	; 0x4984 <__divdi3+0xbce>
+    497c:	16 95       	lsr	r17
+    497e:	07 95       	ror	r16
+    4980:	f7 94       	ror	r15
+    4982:	e7 94       	ror	r14
+    4984:	6a 95       	dec	r22
+    4986:	d2 f7       	brpl	.-12     	; 0x497c <__divdi3+0xbc6>
+    4988:	37 01       	movw	r6, r14
+    498a:	48 01       	movw	r8, r16
+    498c:	68 2a       	or	r6, r24
+    498e:	79 2a       	or	r7, r25
+    4990:	8a 2a       	or	r8, r26
+    4992:	9b 2a       	or	r9, r27
+    4994:	6d a6       	std	Y+45, r6	; 0x2d
+    4996:	7e a6       	std	Y+46, r7	; 0x2e
+    4998:	8f a6       	std	Y+47, r8	; 0x2f
+    499a:	98 aa       	std	Y+48, r9	; 0x30
+    499c:	ed a8       	ldd	r14, Y+53	; 0x35
+    499e:	fe a8       	ldd	r15, Y+54	; 0x36
+    49a0:	0f a9       	ldd	r16, Y+55	; 0x37
+    49a2:	18 ad       	ldd	r17, Y+56	; 0x38
+    49a4:	38 01       	movw	r6, r16
+    49a6:	88 24       	eor	r8, r8
+    49a8:	99 24       	eor	r9, r9
+    49aa:	98 01       	movw	r18, r16
+    49ac:	87 01       	movw	r16, r14
+    49ae:	20 70       	andi	r18, 0x00	; 0
+    49b0:	30 70       	andi	r19, 0x00	; 0
+    49b2:	a5 96       	adiw	r28, 0x25	; 37
+    49b4:	0c af       	std	Y+60, r16	; 0x3c
+    49b6:	1d af       	std	Y+61, r17	; 0x3d
+    49b8:	2e af       	std	Y+62, r18	; 0x3e
+    49ba:	3f af       	std	Y+63, r19	; 0x3f
+    49bc:	a5 97       	sbiw	r28, 0x25	; 37
+    49be:	c6 01       	movw	r24, r12
+    49c0:	b5 01       	movw	r22, r10
+    49c2:	a4 01       	movw	r20, r8
+    49c4:	93 01       	movw	r18, r6
+    49c6:	0e 94 0b 30 	call	0x6016	; 0x6016 <__udivmodsi4>
+    49ca:	7b 01       	movw	r14, r22
+    49cc:	8c 01       	movw	r16, r24
+    49ce:	c6 01       	movw	r24, r12
+    49d0:	b5 01       	movw	r22, r10
+    49d2:	a4 01       	movw	r20, r8
+    49d4:	93 01       	movw	r18, r6
+    49d6:	0e 94 0b 30 	call	0x6016	; 0x6016 <__udivmodsi4>
+    49da:	c9 01       	movw	r24, r18
+    49dc:	da 01       	movw	r26, r20
+    49de:	1c 01       	movw	r2, r24
+    49e0:	2d 01       	movw	r4, r26
+    49e2:	c2 01       	movw	r24, r4
+    49e4:	b1 01       	movw	r22, r2
+    49e6:	a5 96       	adiw	r28, 0x25	; 37
+    49e8:	2c ad       	ldd	r18, Y+60	; 0x3c
+    49ea:	3d ad       	ldd	r19, Y+61	; 0x3d
+    49ec:	4e ad       	ldd	r20, Y+62	; 0x3e
+    49ee:	5f ad       	ldd	r21, Y+63	; 0x3f
+    49f0:	a5 97       	sbiw	r28, 0x25	; 37
+    49f2:	0e 94 d8 2f 	call	0x5fb0	; 0x5fb0 <__mulsi3>
+    49f6:	9b 01       	movw	r18, r22
+    49f8:	ac 01       	movw	r20, r24
+    49fa:	87 01       	movw	r16, r14
+    49fc:	ff 24       	eor	r15, r15
+    49fe:	ee 24       	eor	r14, r14
+    4a00:	ad a4       	ldd	r10, Y+45	; 0x2d
+    4a02:	be a4       	ldd	r11, Y+46	; 0x2e
+    4a04:	cf a4       	ldd	r12, Y+47	; 0x2f
+    4a06:	d8 a8       	ldd	r13, Y+48	; 0x30
+    4a08:	c6 01       	movw	r24, r12
+    4a0a:	aa 27       	eor	r26, r26
+    4a0c:	bb 27       	eor	r27, r27
+    4a0e:	57 01       	movw	r10, r14
+    4a10:	68 01       	movw	r12, r16
+    4a12:	a8 2a       	or	r10, r24
+    4a14:	b9 2a       	or	r11, r25
+    4a16:	ca 2a       	or	r12, r26
+    4a18:	db 2a       	or	r13, r27
+    4a1a:	a2 16       	cp	r10, r18
+    4a1c:	b3 06       	cpc	r11, r19
+    4a1e:	c4 06       	cpc	r12, r20
+    4a20:	d5 06       	cpc	r13, r21
+    4a22:	00 f5       	brcc	.+64     	; 0x4a64 <__divdi3+0xcae>
+    4a24:	08 94       	sec
+    4a26:	21 08       	sbc	r2, r1
+    4a28:	31 08       	sbc	r3, r1
+    4a2a:	41 08       	sbc	r4, r1
+    4a2c:	51 08       	sbc	r5, r1
+    4a2e:	ed a8       	ldd	r14, Y+53	; 0x35
+    4a30:	fe a8       	ldd	r15, Y+54	; 0x36
+    4a32:	0f a9       	ldd	r16, Y+55	; 0x37
+    4a34:	18 ad       	ldd	r17, Y+56	; 0x38
+    4a36:	ae 0c       	add	r10, r14
+    4a38:	bf 1c       	adc	r11, r15
+    4a3a:	c0 1e       	adc	r12, r16
+    4a3c:	d1 1e       	adc	r13, r17
+    4a3e:	ae 14       	cp	r10, r14
+    4a40:	bf 04       	cpc	r11, r15
+    4a42:	c0 06       	cpc	r12, r16
+    4a44:	d1 06       	cpc	r13, r17
+    4a46:	70 f0       	brcs	.+28     	; 0x4a64 <__divdi3+0xcae>
+    4a48:	a2 16       	cp	r10, r18
+    4a4a:	b3 06       	cpc	r11, r19
+    4a4c:	c4 06       	cpc	r12, r20
+    4a4e:	d5 06       	cpc	r13, r21
+    4a50:	48 f4       	brcc	.+18     	; 0x4a64 <__divdi3+0xcae>
+    4a52:	08 94       	sec
+    4a54:	21 08       	sbc	r2, r1
+    4a56:	31 08       	sbc	r3, r1
+    4a58:	41 08       	sbc	r4, r1
+    4a5a:	51 08       	sbc	r5, r1
+    4a5c:	ae 0c       	add	r10, r14
+    4a5e:	bf 1c       	adc	r11, r15
+    4a60:	c0 1e       	adc	r12, r16
+    4a62:	d1 1e       	adc	r13, r17
+    4a64:	a2 1a       	sub	r10, r18
+    4a66:	b3 0a       	sbc	r11, r19
+    4a68:	c4 0a       	sbc	r12, r20
+    4a6a:	d5 0a       	sbc	r13, r21
+    4a6c:	c6 01       	movw	r24, r12
+    4a6e:	b5 01       	movw	r22, r10
+    4a70:	a4 01       	movw	r20, r8
+    4a72:	93 01       	movw	r18, r6
+    4a74:	0e 94 0b 30 	call	0x6016	; 0x6016 <__udivmodsi4>
+    4a78:	7b 01       	movw	r14, r22
+    4a7a:	8c 01       	movw	r16, r24
+    4a7c:	c6 01       	movw	r24, r12
+    4a7e:	b5 01       	movw	r22, r10
+    4a80:	a4 01       	movw	r20, r8
+    4a82:	93 01       	movw	r18, r6
+    4a84:	0e 94 0b 30 	call	0x6016	; 0x6016 <__udivmodsi4>
+    4a88:	c9 01       	movw	r24, r18
+    4a8a:	da 01       	movw	r26, r20
+    4a8c:	3c 01       	movw	r6, r24
+    4a8e:	4d 01       	movw	r8, r26
+    4a90:	c4 01       	movw	r24, r8
+    4a92:	b3 01       	movw	r22, r6
+    4a94:	a5 96       	adiw	r28, 0x25	; 37
+    4a96:	2c ad       	ldd	r18, Y+60	; 0x3c
+    4a98:	3d ad       	ldd	r19, Y+61	; 0x3d
+    4a9a:	4e ad       	ldd	r20, Y+62	; 0x3e
+    4a9c:	5f ad       	ldd	r21, Y+63	; 0x3f
+    4a9e:	a5 97       	sbiw	r28, 0x25	; 37
+    4aa0:	0e 94 d8 2f 	call	0x5fb0	; 0x5fb0 <__mulsi3>
+    4aa4:	9b 01       	movw	r18, r22
+    4aa6:	ac 01       	movw	r20, r24
+    4aa8:	87 01       	movw	r16, r14
+    4aaa:	ff 24       	eor	r15, r15
+    4aac:	ee 24       	eor	r14, r14
+    4aae:	8d a5       	ldd	r24, Y+45	; 0x2d
+    4ab0:	9e a5       	ldd	r25, Y+46	; 0x2e
+    4ab2:	af a5       	ldd	r26, Y+47	; 0x2f
+    4ab4:	b8 a9       	ldd	r27, Y+48	; 0x30
+    4ab6:	a0 70       	andi	r26, 0x00	; 0
+    4ab8:	b0 70       	andi	r27, 0x00	; 0
+    4aba:	57 01       	movw	r10, r14
+    4abc:	68 01       	movw	r12, r16
+    4abe:	a8 2a       	or	r10, r24
+    4ac0:	b9 2a       	or	r11, r25
+    4ac2:	ca 2a       	or	r12, r26
+    4ac4:	db 2a       	or	r13, r27
+    4ac6:	a2 16       	cp	r10, r18
+    4ac8:	b3 06       	cpc	r11, r19
+    4aca:	c4 06       	cpc	r12, r20
+    4acc:	d5 06       	cpc	r13, r21
+    4ace:	00 f5       	brcc	.+64     	; 0x4b10 <__divdi3+0xd5a>
+    4ad0:	08 94       	sec
+    4ad2:	61 08       	sbc	r6, r1
+    4ad4:	71 08       	sbc	r7, r1
+    4ad6:	81 08       	sbc	r8, r1
+    4ad8:	91 08       	sbc	r9, r1
+    4ada:	6d a9       	ldd	r22, Y+53	; 0x35
+    4adc:	7e a9       	ldd	r23, Y+54	; 0x36
+    4ade:	8f a9       	ldd	r24, Y+55	; 0x37
+    4ae0:	98 ad       	ldd	r25, Y+56	; 0x38
+    4ae2:	a6 0e       	add	r10, r22
+    4ae4:	b7 1e       	adc	r11, r23
+    4ae6:	c8 1e       	adc	r12, r24
+    4ae8:	d9 1e       	adc	r13, r25
+    4aea:	a6 16       	cp	r10, r22
+    4aec:	b7 06       	cpc	r11, r23
+    4aee:	c8 06       	cpc	r12, r24
+    4af0:	d9 06       	cpc	r13, r25
+    4af2:	70 f0       	brcs	.+28     	; 0x4b10 <__divdi3+0xd5a>
+    4af4:	a2 16       	cp	r10, r18
+    4af6:	b3 06       	cpc	r11, r19
+    4af8:	c4 06       	cpc	r12, r20
+    4afa:	d5 06       	cpc	r13, r21
+    4afc:	48 f4       	brcc	.+18     	; 0x4b10 <__divdi3+0xd5a>
+    4afe:	08 94       	sec
+    4b00:	61 08       	sbc	r6, r1
+    4b02:	71 08       	sbc	r7, r1
+    4b04:	81 08       	sbc	r8, r1
+    4b06:	91 08       	sbc	r9, r1
+    4b08:	a6 0e       	add	r10, r22
+    4b0a:	b7 1e       	adc	r11, r23
+    4b0c:	c8 1e       	adc	r12, r24
+    4b0e:	d9 1e       	adc	r13, r25
+    4b10:	d6 01       	movw	r26, r12
+    4b12:	c5 01       	movw	r24, r10
+    4b14:	82 1b       	sub	r24, r18
+    4b16:	93 0b       	sbc	r25, r19
+    4b18:	a4 0b       	sbc	r26, r20
+    4b1a:	b5 0b       	sbc	r27, r21
+    4b1c:	89 a7       	std	Y+41, r24	; 0x29
+    4b1e:	9a a7       	std	Y+42, r25	; 0x2a
+    4b20:	ab a7       	std	Y+43, r26	; 0x2b
+    4b22:	bc a7       	std	Y+44, r27	; 0x2c
+    4b24:	d1 01       	movw	r26, r2
+    4b26:	99 27       	eor	r25, r25
+    4b28:	88 27       	eor	r24, r24
+    4b2a:	64 01       	movw	r12, r8
+    4b2c:	53 01       	movw	r10, r6
+    4b2e:	a8 2a       	or	r10, r24
+    4b30:	b9 2a       	or	r11, r25
+    4b32:	ca 2a       	or	r12, r26
+    4b34:	db 2a       	or	r13, r27
+    4b36:	25 96       	adiw	r28, 0x05	; 5
+    4b38:	ac ae       	std	Y+60, r10	; 0x3c
+    4b3a:	bd ae       	std	Y+61, r11	; 0x3d
+    4b3c:	ce ae       	std	Y+62, r12	; 0x3e
+    4b3e:	df ae       	std	Y+63, r13	; 0x3f
+    4b40:	25 97       	sbiw	r28, 0x05	; 5
+    4b42:	86 01       	movw	r16, r12
+    4b44:	75 01       	movw	r14, r10
+    4b46:	2f ef       	ldi	r18, 0xFF	; 255
+    4b48:	3f ef       	ldi	r19, 0xFF	; 255
+    4b4a:	40 e0       	ldi	r20, 0x00	; 0
+    4b4c:	50 e0       	ldi	r21, 0x00	; 0
+    4b4e:	e2 22       	and	r14, r18
+    4b50:	f3 22       	and	r15, r19
+    4b52:	04 23       	and	r16, r20
+    4b54:	15 23       	and	r17, r21
+    4b56:	a6 01       	movw	r20, r12
+    4b58:	66 27       	eor	r22, r22
+    4b5a:	77 27       	eor	r23, r23
+    4b5c:	ad 96       	adiw	r28, 0x2d	; 45
+    4b5e:	4c af       	std	Y+60, r20	; 0x3c
+    4b60:	5d af       	std	Y+61, r21	; 0x3d
+    4b62:	6e af       	std	Y+62, r22	; 0x3e
+    4b64:	7f af       	std	Y+63, r23	; 0x3f
+    4b66:	ad 97       	sbiw	r28, 0x2d	; 45
+    4b68:	a9 a8       	ldd	r10, Y+49	; 0x31
+    4b6a:	ba a8       	ldd	r11, Y+50	; 0x32
+    4b6c:	cb a8       	ldd	r12, Y+51	; 0x33
+    4b6e:	dc a8       	ldd	r13, Y+52	; 0x34
+    4b70:	6f ef       	ldi	r22, 0xFF	; 255
+    4b72:	7f ef       	ldi	r23, 0xFF	; 255
+    4b74:	80 e0       	ldi	r24, 0x00	; 0
+    4b76:	90 e0       	ldi	r25, 0x00	; 0
+    4b78:	a6 22       	and	r10, r22
+    4b7a:	b7 22       	and	r11, r23
+    4b7c:	c8 22       	and	r12, r24
+    4b7e:	d9 22       	and	r13, r25
+    4b80:	89 a9       	ldd	r24, Y+49	; 0x31
+    4b82:	9a a9       	ldd	r25, Y+50	; 0x32
+    4b84:	ab a9       	ldd	r26, Y+51	; 0x33
+    4b86:	bc a9       	ldd	r27, Y+52	; 0x34
+    4b88:	1d 01       	movw	r2, r26
+    4b8a:	44 24       	eor	r4, r4
+    4b8c:	55 24       	eor	r5, r5
+    4b8e:	c8 01       	movw	r24, r16
+    4b90:	b7 01       	movw	r22, r14
+    4b92:	a6 01       	movw	r20, r12
+    4b94:	95 01       	movw	r18, r10
+    4b96:	0e 94 d8 2f 	call	0x5fb0	; 0x5fb0 <__mulsi3>
+    4b9a:	a9 96       	adiw	r28, 0x29	; 41
+    4b9c:	6c af       	std	Y+60, r22	; 0x3c
+    4b9e:	7d af       	std	Y+61, r23	; 0x3d
+    4ba0:	8e af       	std	Y+62, r24	; 0x3e
+    4ba2:	9f af       	std	Y+63, r25	; 0x3f
+    4ba4:	a9 97       	sbiw	r28, 0x29	; 41
+    4ba6:	c8 01       	movw	r24, r16
+    4ba8:	b7 01       	movw	r22, r14
+    4baa:	a2 01       	movw	r20, r4
+    4bac:	91 01       	movw	r18, r2
+    4bae:	0e 94 d8 2f 	call	0x5fb0	; 0x5fb0 <__mulsi3>
+    4bb2:	3b 01       	movw	r6, r22
+    4bb4:	4c 01       	movw	r8, r24
+    4bb6:	ad 96       	adiw	r28, 0x2d	; 45
+    4bb8:	6c ad       	ldd	r22, Y+60	; 0x3c
+    4bba:	7d ad       	ldd	r23, Y+61	; 0x3d
+    4bbc:	8e ad       	ldd	r24, Y+62	; 0x3e
+    4bbe:	9f ad       	ldd	r25, Y+63	; 0x3f
+    4bc0:	ad 97       	sbiw	r28, 0x2d	; 45
+    4bc2:	a6 01       	movw	r20, r12
+    4bc4:	95 01       	movw	r18, r10
+    4bc6:	0e 94 d8 2f 	call	0x5fb0	; 0x5fb0 <__mulsi3>
+    4bca:	7b 01       	movw	r14, r22
+    4bcc:	8c 01       	movw	r16, r24
+    4bce:	ad 96       	adiw	r28, 0x2d	; 45
+    4bd0:	6c ad       	ldd	r22, Y+60	; 0x3c
+    4bd2:	7d ad       	ldd	r23, Y+61	; 0x3d
+    4bd4:	8e ad       	ldd	r24, Y+62	; 0x3e
+    4bd6:	9f ad       	ldd	r25, Y+63	; 0x3f
+    4bd8:	ad 97       	sbiw	r28, 0x2d	; 45
+    4bda:	a2 01       	movw	r20, r4
+    4bdc:	91 01       	movw	r18, r2
+    4bde:	0e 94 d8 2f 	call	0x5fb0	; 0x5fb0 <__mulsi3>
+    4be2:	5b 01       	movw	r10, r22
+    4be4:	6c 01       	movw	r12, r24
+    4be6:	a8 01       	movw	r20, r16
+    4be8:	97 01       	movw	r18, r14
+    4bea:	26 0d       	add	r18, r6
+    4bec:	37 1d       	adc	r19, r7
+    4bee:	48 1d       	adc	r20, r8
+    4bf0:	59 1d       	adc	r21, r9
+    4bf2:	a9 96       	adiw	r28, 0x29	; 41
+    4bf4:	6c ac       	ldd	r6, Y+60	; 0x3c
+    4bf6:	7d ac       	ldd	r7, Y+61	; 0x3d
+    4bf8:	8e ac       	ldd	r8, Y+62	; 0x3e
+    4bfa:	9f ac       	ldd	r9, Y+63	; 0x3f
+    4bfc:	a9 97       	sbiw	r28, 0x29	; 41
+    4bfe:	c4 01       	movw	r24, r8
+    4c00:	aa 27       	eor	r26, r26
+    4c02:	bb 27       	eor	r27, r27
+    4c04:	28 0f       	add	r18, r24
+    4c06:	39 1f       	adc	r19, r25
+    4c08:	4a 1f       	adc	r20, r26
+    4c0a:	5b 1f       	adc	r21, r27
+    4c0c:	2e 15       	cp	r18, r14
+    4c0e:	3f 05       	cpc	r19, r15
+    4c10:	40 07       	cpc	r20, r16
+    4c12:	51 07       	cpc	r21, r17
+    4c14:	48 f4       	brcc	.+18     	; 0x4c28 <__divdi3+0xe72>
+    4c16:	e1 2c       	mov	r14, r1
+    4c18:	f1 2c       	mov	r15, r1
+    4c1a:	61 e0       	ldi	r22, 0x01	; 1
+    4c1c:	06 2f       	mov	r16, r22
+    4c1e:	11 2d       	mov	r17, r1
+    4c20:	ae 0c       	add	r10, r14
+    4c22:	bf 1c       	adc	r11, r15
+    4c24:	c0 1e       	adc	r12, r16
+    4c26:	d1 1e       	adc	r13, r17
+    4c28:	ca 01       	movw	r24, r20
+    4c2a:	aa 27       	eor	r26, r26
+    4c2c:	bb 27       	eor	r27, r27
+    4c2e:	bc 01       	movw	r22, r24
+    4c30:	cd 01       	movw	r24, r26
+    4c32:	6a 0d       	add	r22, r10
+    4c34:	7b 1d       	adc	r23, r11
+    4c36:	8c 1d       	adc	r24, r12
+    4c38:	9d 1d       	adc	r25, r13
+    4c3a:	69 a4       	ldd	r6, Y+41	; 0x29
+    4c3c:	7a a4       	ldd	r7, Y+42	; 0x2a
+    4c3e:	8b a4       	ldd	r8, Y+43	; 0x2b
+    4c40:	9c a4       	ldd	r9, Y+44	; 0x2c
+    4c42:	66 16       	cp	r6, r22
+    4c44:	77 06       	cpc	r7, r23
+    4c46:	88 06       	cpc	r8, r24
+    4c48:	99 06       	cpc	r9, r25
+    4c4a:	50 f1       	brcs	.+84     	; 0x4ca0 <__divdi3+0xeea>
+    4c4c:	66 15       	cp	r22, r6
+    4c4e:	77 05       	cpc	r23, r7
+    4c50:	88 05       	cpc	r24, r8
+    4c52:	99 05       	cpc	r25, r9
+    4c54:	09 f0       	breq	.+2      	; 0x4c58 <__divdi3+0xea2>
+    4c56:	4d c0       	rjmp	.+154    	; 0x4cf2 <__divdi3+0xf3c>
+    4c58:	d9 01       	movw	r26, r18
+    4c5a:	99 27       	eor	r25, r25
+    4c5c:	88 27       	eor	r24, r24
+    4c5e:	a9 96       	adiw	r28, 0x29	; 41
+    4c60:	2c ad       	ldd	r18, Y+60	; 0x3c
+    4c62:	3d ad       	ldd	r19, Y+61	; 0x3d
+    4c64:	4e ad       	ldd	r20, Y+62	; 0x3e
+    4c66:	5f ad       	ldd	r21, Y+63	; 0x3f
+    4c68:	a9 97       	sbiw	r28, 0x29	; 41
+    4c6a:	40 70       	andi	r20, 0x00	; 0
+    4c6c:	50 70       	andi	r21, 0x00	; 0
+    4c6e:	82 0f       	add	r24, r18
+    4c70:	93 1f       	adc	r25, r19
+    4c72:	a4 1f       	adc	r26, r20
+    4c74:	b5 1f       	adc	r27, r21
+    4c76:	21 96       	adiw	r28, 0x01	; 1
+    4c78:	2c ad       	ldd	r18, Y+60	; 0x3c
+    4c7a:	3d ad       	ldd	r19, Y+61	; 0x3d
+    4c7c:	4e ad       	ldd	r20, Y+62	; 0x3e
+    4c7e:	5f ad       	ldd	r21, Y+63	; 0x3f
+    4c80:	21 97       	sbiw	r28, 0x01	; 1
+    4c82:	e2 96       	adiw	r28, 0x32	; 50
+    4c84:	0f ac       	ldd	r0, Y+63	; 0x3f
+    4c86:	e2 97       	sbiw	r28, 0x32	; 50
+    4c88:	04 c0       	rjmp	.+8      	; 0x4c92 <__divdi3+0xedc>
+    4c8a:	22 0f       	add	r18, r18
+    4c8c:	33 1f       	adc	r19, r19
+    4c8e:	44 1f       	adc	r20, r20
+    4c90:	55 1f       	adc	r21, r21
+    4c92:	0a 94       	dec	r0
+    4c94:	d2 f7       	brpl	.-12     	; 0x4c8a <__divdi3+0xed4>
+    4c96:	28 17       	cp	r18, r24
+    4c98:	39 07       	cpc	r19, r25
+    4c9a:	4a 07       	cpc	r20, r26
+    4c9c:	5b 07       	cpc	r21, r27
+    4c9e:	48 f5       	brcc	.+82     	; 0x4cf2 <__divdi3+0xf3c>
+    4ca0:	25 96       	adiw	r28, 0x05	; 5
+    4ca2:	0c ad       	ldd	r16, Y+60	; 0x3c
+    4ca4:	1d ad       	ldd	r17, Y+61	; 0x3d
+    4ca6:	2e ad       	ldd	r18, Y+62	; 0x3e
+    4ca8:	3f ad       	ldd	r19, Y+63	; 0x3f
+    4caa:	25 97       	sbiw	r28, 0x05	; 5
+    4cac:	01 50       	subi	r16, 0x01	; 1
+    4cae:	10 40       	sbci	r17, 0x00	; 0
+    4cb0:	20 40       	sbci	r18, 0x00	; 0
+    4cb2:	30 40       	sbci	r19, 0x00	; 0
     4cb4:	25 96       	adiw	r28, 0x05	; 5
-    4cb6:	ac ac       	ldd	r10, Y+60	; 0x3c
-    4cb8:	bd ac       	ldd	r11, Y+61	; 0x3d
-    4cba:	ce ac       	ldd	r12, Y+62	; 0x3e
-    4cbc:	df ac       	ldd	r13, Y+63	; 0x3f
+    4cb6:	0c af       	std	Y+60, r16	; 0x3c
+    4cb8:	1d af       	std	Y+61, r17	; 0x3d
+    4cba:	2e af       	std	Y+62, r18	; 0x3e
+    4cbc:	3f af       	std	Y+63, r19	; 0x3f
     4cbe:	25 97       	sbiw	r28, 0x05	; 5
-    4cc0:	a9 a2       	std	Y+33, r10	; 0x21
-    4cc2:	ba a2       	std	Y+34, r11	; 0x22
-    4cc4:	cb a2       	std	Y+35, r12	; 0x23
-    4cc6:	dc a2       	std	Y+36, r13	; 0x24
-    4cc8:	6d a2       	std	Y+37, r6	; 0x25
-    4cca:	7e a2       	std	Y+38, r7	; 0x26
-    4ccc:	8f a2       	std	Y+39, r8	; 0x27
-    4cce:	98 a6       	std	Y+40, r9	; 0x28
-    4cd0:	22 96       	adiw	r28, 0x02	; 2
-    4cd2:	2f ad       	ldd	r18, Y+63	; 0x3f
-    4cd4:	22 97       	sbiw	r28, 0x02	; 2
-    4cd6:	3a a1       	ldd	r19, Y+34	; 0x22
-    4cd8:	4b a1       	ldd	r20, Y+35	; 0x23
-    4cda:	5c a1       	ldd	r21, Y+36	; 0x24
-    4cdc:	66 2d       	mov	r22, r6
-    4cde:	7e a1       	ldd	r23, Y+38	; 0x26
-    4ce0:	df a0       	ldd	r13, Y+39	; 0x27
-    4ce2:	98 a5       	ldd	r25, Y+40	; 0x28
-    4ce4:	e1 96       	adiw	r28, 0x31	; 49
-    4ce6:	ec ac       	ldd	r14, Y+60	; 0x3c
-    4ce8:	fd ac       	ldd	r15, Y+61	; 0x3d
-    4cea:	0e ad       	ldd	r16, Y+62	; 0x3e
-    4cec:	1f ad       	ldd	r17, Y+63	; 0x3f
-    4cee:	e1 97       	sbiw	r28, 0x31	; 49
-    4cf0:	e1 14       	cp	r14, r1
-    4cf2:	f1 04       	cpc	r15, r1
-    4cf4:	01 05       	cpc	r16, r1
-    4cf6:	11 05       	cpc	r17, r1
-    4cf8:	09 f4       	brne	.+2      	; 0x4cfc <__divdi3+0xf98>
-    4cfa:	56 c0       	rjmp	.+172    	; 0x4da8 <__divdi3+0x1044>
-    4cfc:	21 95       	neg	r18
-    4cfe:	81 e0       	ldi	r24, 0x01	; 1
-    4d00:	12 16       	cp	r1, r18
-    4d02:	08 f0       	brcs	.+2      	; 0x4d06 <__divdi3+0xfa2>
-    4d04:	80 e0       	ldi	r24, 0x00	; 0
-    4d06:	31 95       	neg	r19
-    4d08:	e1 e0       	ldi	r30, 0x01	; 1
-    4d0a:	13 16       	cp	r1, r19
-    4d0c:	08 f0       	brcs	.+2      	; 0x4d10 <__divdi3+0xfac>
-    4d0e:	e0 e0       	ldi	r30, 0x00	; 0
-    4d10:	93 2e       	mov	r9, r19
-    4d12:	98 1a       	sub	r9, r24
-    4d14:	81 e0       	ldi	r24, 0x01	; 1
-    4d16:	39 15       	cp	r19, r9
-    4d18:	08 f0       	brcs	.+2      	; 0x4d1c <__divdi3+0xfb8>
-    4d1a:	80 e0       	ldi	r24, 0x00	; 0
-    4d1c:	e8 2b       	or	r30, r24
-    4d1e:	41 95       	neg	r20
-    4d20:	f1 e0       	ldi	r31, 0x01	; 1
-    4d22:	14 16       	cp	r1, r20
-    4d24:	08 f0       	brcs	.+2      	; 0x4d28 <__divdi3+0xfc4>
-    4d26:	f0 e0       	ldi	r31, 0x00	; 0
-    4d28:	a4 2e       	mov	r10, r20
-    4d2a:	ae 1a       	sub	r10, r30
-    4d2c:	81 e0       	ldi	r24, 0x01	; 1
-    4d2e:	4a 15       	cp	r20, r10
-    4d30:	08 f0       	brcs	.+2      	; 0x4d34 <__divdi3+0xfd0>
-    4d32:	80 e0       	ldi	r24, 0x00	; 0
-    4d34:	f8 2b       	or	r31, r24
-    4d36:	51 95       	neg	r21
-    4d38:	e1 e0       	ldi	r30, 0x01	; 1
-    4d3a:	15 16       	cp	r1, r21
-    4d3c:	08 f0       	brcs	.+2      	; 0x4d40 <__divdi3+0xfdc>
-    4d3e:	e0 e0       	ldi	r30, 0x00	; 0
-    4d40:	b5 2e       	mov	r11, r21
-    4d42:	bf 1a       	sub	r11, r31
-    4d44:	81 e0       	ldi	r24, 0x01	; 1
-    4d46:	5b 15       	cp	r21, r11
-    4d48:	08 f0       	brcs	.+2      	; 0x4d4c <__divdi3+0xfe8>
-    4d4a:	80 e0       	ldi	r24, 0x00	; 0
-    4d4c:	e8 2b       	or	r30, r24
-    4d4e:	61 95       	neg	r22
-    4d50:	f1 e0       	ldi	r31, 0x01	; 1
-    4d52:	16 16       	cp	r1, r22
-    4d54:	08 f0       	brcs	.+2      	; 0x4d58 <__divdi3+0xff4>
-    4d56:	f0 e0       	ldi	r31, 0x00	; 0
-    4d58:	a6 2f       	mov	r26, r22
-    4d5a:	ae 1b       	sub	r26, r30
-    4d5c:	81 e0       	ldi	r24, 0x01	; 1
-    4d5e:	6a 17       	cp	r22, r26
-    4d60:	08 f0       	brcs	.+2      	; 0x4d64 <__divdi3+0x1000>
-    4d62:	80 e0       	ldi	r24, 0x00	; 0
-    4d64:	f8 2b       	or	r31, r24
-    4d66:	71 95       	neg	r23
-    4d68:	e1 e0       	ldi	r30, 0x01	; 1
-    4d6a:	17 16       	cp	r1, r23
-    4d6c:	08 f0       	brcs	.+2      	; 0x4d70 <__divdi3+0x100c>
-    4d6e:	e0 e0       	ldi	r30, 0x00	; 0
-    4d70:	c7 2e       	mov	r12, r23
-    4d72:	cf 1a       	sub	r12, r31
-    4d74:	81 e0       	ldi	r24, 0x01	; 1
-    4d76:	7c 15       	cp	r23, r12
-    4d78:	08 f0       	brcs	.+2      	; 0x4d7c <__divdi3+0x1018>
-    4d7a:	80 e0       	ldi	r24, 0x00	; 0
-    4d7c:	e8 2b       	or	r30, r24
-    4d7e:	8d 2d       	mov	r24, r13
-    4d80:	81 95       	neg	r24
-    4d82:	f1 e0       	ldi	r31, 0x01	; 1
-    4d84:	18 16       	cp	r1, r24
-    4d86:	08 f0       	brcs	.+2      	; 0x4d8a <__divdi3+0x1026>
-    4d88:	f0 e0       	ldi	r31, 0x00	; 0
-    4d8a:	d8 2e       	mov	r13, r24
-    4d8c:	de 1a       	sub	r13, r30
-    4d8e:	e1 e0       	ldi	r30, 0x01	; 1
-    4d90:	8d 15       	cp	r24, r13
-    4d92:	08 f0       	brcs	.+2      	; 0x4d96 <__divdi3+0x1032>
-    4d94:	e0 e0       	ldi	r30, 0x00	; 0
-    4d96:	fe 2b       	or	r31, r30
-    4d98:	89 2f       	mov	r24, r25
-    4d9a:	81 95       	neg	r24
-    4d9c:	39 2d       	mov	r19, r9
-    4d9e:	a5 01       	movw	r20, r10
-    4da0:	6a 2f       	mov	r22, r26
-    4da2:	7c 2d       	mov	r23, r12
-    4da4:	98 2f       	mov	r25, r24
-    4da6:	9f 1b       	sub	r25, r31
-    4da8:	8d 2d       	mov	r24, r13
-    4daa:	ce 58       	subi	r28, 0x8E	; 142
-    4dac:	df 4f       	sbci	r29, 0xFF	; 255
-    4dae:	e2 e1       	ldi	r30, 0x12	; 18
-    4db0:	0c 94 b2 32 	jmp	0x6564	; 0x6564 <__epilogue_restores__>
+    4cc0:	18 c0       	rjmp	.+48     	; 0x4cf2 <__divdi3+0xf3c>
+    4cc2:	66 24       	eor	r6, r6
+    4cc4:	77 24       	eor	r7, r7
+    4cc6:	43 01       	movw	r8, r6
+    4cc8:	21 e0       	ldi	r18, 0x01	; 1
+    4cca:	30 e0       	ldi	r19, 0x00	; 0
+    4ccc:	40 e0       	ldi	r20, 0x00	; 0
+    4cce:	50 e0       	ldi	r21, 0x00	; 0
+    4cd0:	25 96       	adiw	r28, 0x05	; 5
+    4cd2:	2c af       	std	Y+60, r18	; 0x3c
+    4cd4:	3d af       	std	Y+61, r19	; 0x3d
+    4cd6:	4e af       	std	Y+62, r20	; 0x3e
+    4cd8:	5f af       	std	Y+63, r21	; 0x3f
+    4cda:	25 97       	sbiw	r28, 0x05	; 5
+    4cdc:	0d c0       	rjmp	.+26     	; 0x4cf8 <__divdi3+0xf42>
+    4cde:	66 24       	eor	r6, r6
+    4ce0:	77 24       	eor	r7, r7
+    4ce2:	43 01       	movw	r8, r6
+    4ce4:	25 96       	adiw	r28, 0x05	; 5
+    4ce6:	1c ae       	std	Y+60, r1	; 0x3c
+    4ce8:	1d ae       	std	Y+61, r1	; 0x3d
+    4cea:	1e ae       	std	Y+62, r1	; 0x3e
+    4cec:	1f ae       	std	Y+63, r1	; 0x3f
+    4cee:	25 97       	sbiw	r28, 0x05	; 5
+    4cf0:	03 c0       	rjmp	.+6      	; 0x4cf8 <__divdi3+0xf42>
+    4cf2:	66 24       	eor	r6, r6
+    4cf4:	77 24       	eor	r7, r7
+    4cf6:	43 01       	movw	r8, r6
+    4cf8:	fe 01       	movw	r30, r28
+    4cfa:	b1 96       	adiw	r30, 0x21	; 33
+    4cfc:	88 e0       	ldi	r24, 0x08	; 8
+    4cfe:	df 01       	movw	r26, r30
+    4d00:	1d 92       	st	X+, r1
+    4d02:	8a 95       	dec	r24
+    4d04:	e9 f7       	brne	.-6      	; 0x4d00 <__divdi3+0xf4a>
+    4d06:	25 96       	adiw	r28, 0x05	; 5
+    4d08:	ac ac       	ldd	r10, Y+60	; 0x3c
+    4d0a:	bd ac       	ldd	r11, Y+61	; 0x3d
+    4d0c:	ce ac       	ldd	r12, Y+62	; 0x3e
+    4d0e:	df ac       	ldd	r13, Y+63	; 0x3f
+    4d10:	25 97       	sbiw	r28, 0x05	; 5
+    4d12:	a9 a2       	std	Y+33, r10	; 0x21
+    4d14:	ba a2       	std	Y+34, r11	; 0x22
+    4d16:	cb a2       	std	Y+35, r12	; 0x23
+    4d18:	dc a2       	std	Y+36, r13	; 0x24
+    4d1a:	6d a2       	std	Y+37, r6	; 0x25
+    4d1c:	7e a2       	std	Y+38, r7	; 0x26
+    4d1e:	8f a2       	std	Y+39, r8	; 0x27
+    4d20:	98 a6       	std	Y+40, r9	; 0x28
+    4d22:	22 96       	adiw	r28, 0x02	; 2
+    4d24:	2f ad       	ldd	r18, Y+63	; 0x3f
+    4d26:	22 97       	sbiw	r28, 0x02	; 2
+    4d28:	3a a1       	ldd	r19, Y+34	; 0x22
+    4d2a:	4b a1       	ldd	r20, Y+35	; 0x23
+    4d2c:	5c a1       	ldd	r21, Y+36	; 0x24
+    4d2e:	66 2d       	mov	r22, r6
+    4d30:	7e a1       	ldd	r23, Y+38	; 0x26
+    4d32:	df a0       	ldd	r13, Y+39	; 0x27
+    4d34:	98 a5       	ldd	r25, Y+40	; 0x28
+    4d36:	e1 96       	adiw	r28, 0x31	; 49
+    4d38:	ec ac       	ldd	r14, Y+60	; 0x3c
+    4d3a:	fd ac       	ldd	r15, Y+61	; 0x3d
+    4d3c:	0e ad       	ldd	r16, Y+62	; 0x3e
+    4d3e:	1f ad       	ldd	r17, Y+63	; 0x3f
+    4d40:	e1 97       	sbiw	r28, 0x31	; 49
+    4d42:	e1 14       	cp	r14, r1
+    4d44:	f1 04       	cpc	r15, r1
+    4d46:	01 05       	cpc	r16, r1
+    4d48:	11 05       	cpc	r17, r1
+    4d4a:	09 f4       	brne	.+2      	; 0x4d4e <__divdi3+0xf98>
+    4d4c:	56 c0       	rjmp	.+172    	; 0x4dfa <__divdi3+0x1044>
+    4d4e:	21 95       	neg	r18
+    4d50:	81 e0       	ldi	r24, 0x01	; 1
+    4d52:	12 16       	cp	r1, r18
+    4d54:	08 f0       	brcs	.+2      	; 0x4d58 <__divdi3+0xfa2>
+    4d56:	80 e0       	ldi	r24, 0x00	; 0
+    4d58:	31 95       	neg	r19
+    4d5a:	e1 e0       	ldi	r30, 0x01	; 1
+    4d5c:	13 16       	cp	r1, r19
+    4d5e:	08 f0       	brcs	.+2      	; 0x4d62 <__divdi3+0xfac>
+    4d60:	e0 e0       	ldi	r30, 0x00	; 0
+    4d62:	93 2e       	mov	r9, r19
+    4d64:	98 1a       	sub	r9, r24
+    4d66:	81 e0       	ldi	r24, 0x01	; 1
+    4d68:	39 15       	cp	r19, r9
+    4d6a:	08 f0       	brcs	.+2      	; 0x4d6e <__divdi3+0xfb8>
+    4d6c:	80 e0       	ldi	r24, 0x00	; 0
+    4d6e:	e8 2b       	or	r30, r24
+    4d70:	41 95       	neg	r20
+    4d72:	f1 e0       	ldi	r31, 0x01	; 1
+    4d74:	14 16       	cp	r1, r20
+    4d76:	08 f0       	brcs	.+2      	; 0x4d7a <__divdi3+0xfc4>
+    4d78:	f0 e0       	ldi	r31, 0x00	; 0
+    4d7a:	a4 2e       	mov	r10, r20
+    4d7c:	ae 1a       	sub	r10, r30
+    4d7e:	81 e0       	ldi	r24, 0x01	; 1
+    4d80:	4a 15       	cp	r20, r10
+    4d82:	08 f0       	brcs	.+2      	; 0x4d86 <__divdi3+0xfd0>
+    4d84:	80 e0       	ldi	r24, 0x00	; 0
+    4d86:	f8 2b       	or	r31, r24
+    4d88:	51 95       	neg	r21
+    4d8a:	e1 e0       	ldi	r30, 0x01	; 1
+    4d8c:	15 16       	cp	r1, r21
+    4d8e:	08 f0       	brcs	.+2      	; 0x4d92 <__divdi3+0xfdc>
+    4d90:	e0 e0       	ldi	r30, 0x00	; 0
+    4d92:	b5 2e       	mov	r11, r21
+    4d94:	bf 1a       	sub	r11, r31
+    4d96:	81 e0       	ldi	r24, 0x01	; 1
+    4d98:	5b 15       	cp	r21, r11
+    4d9a:	08 f0       	brcs	.+2      	; 0x4d9e <__divdi3+0xfe8>
+    4d9c:	80 e0       	ldi	r24, 0x00	; 0
+    4d9e:	e8 2b       	or	r30, r24
+    4da0:	61 95       	neg	r22
+    4da2:	f1 e0       	ldi	r31, 0x01	; 1
+    4da4:	16 16       	cp	r1, r22
+    4da6:	08 f0       	brcs	.+2      	; 0x4daa <__divdi3+0xff4>
+    4da8:	f0 e0       	ldi	r31, 0x00	; 0
+    4daa:	a6 2f       	mov	r26, r22
+    4dac:	ae 1b       	sub	r26, r30
+    4dae:	81 e0       	ldi	r24, 0x01	; 1
+    4db0:	6a 17       	cp	r22, r26
+    4db2:	08 f0       	brcs	.+2      	; 0x4db6 <__divdi3+0x1000>
+    4db4:	80 e0       	ldi	r24, 0x00	; 0
+    4db6:	f8 2b       	or	r31, r24
+    4db8:	71 95       	neg	r23
+    4dba:	e1 e0       	ldi	r30, 0x01	; 1
+    4dbc:	17 16       	cp	r1, r23
+    4dbe:	08 f0       	brcs	.+2      	; 0x4dc2 <__divdi3+0x100c>
+    4dc0:	e0 e0       	ldi	r30, 0x00	; 0
+    4dc2:	c7 2e       	mov	r12, r23
+    4dc4:	cf 1a       	sub	r12, r31
+    4dc6:	81 e0       	ldi	r24, 0x01	; 1
+    4dc8:	7c 15       	cp	r23, r12
+    4dca:	08 f0       	brcs	.+2      	; 0x4dce <__divdi3+0x1018>
+    4dcc:	80 e0       	ldi	r24, 0x00	; 0
+    4dce:	e8 2b       	or	r30, r24
+    4dd0:	8d 2d       	mov	r24, r13
+    4dd2:	81 95       	neg	r24
+    4dd4:	f1 e0       	ldi	r31, 0x01	; 1
+    4dd6:	18 16       	cp	r1, r24
+    4dd8:	08 f0       	brcs	.+2      	; 0x4ddc <__divdi3+0x1026>
+    4dda:	f0 e0       	ldi	r31, 0x00	; 0
+    4ddc:	d8 2e       	mov	r13, r24
+    4dde:	de 1a       	sub	r13, r30
+    4de0:	e1 e0       	ldi	r30, 0x01	; 1
+    4de2:	8d 15       	cp	r24, r13
+    4de4:	08 f0       	brcs	.+2      	; 0x4de8 <__divdi3+0x1032>
+    4de6:	e0 e0       	ldi	r30, 0x00	; 0
+    4de8:	fe 2b       	or	r31, r30
+    4dea:	89 2f       	mov	r24, r25
+    4dec:	81 95       	neg	r24
+    4dee:	39 2d       	mov	r19, r9
+    4df0:	a5 01       	movw	r20, r10
+    4df2:	6a 2f       	mov	r22, r26
+    4df4:	7c 2d       	mov	r23, r12
+    4df6:	98 2f       	mov	r25, r24
+    4df8:	9f 1b       	sub	r25, r31
+    4dfa:	8d 2d       	mov	r24, r13
+    4dfc:	ce 58       	subi	r28, 0x8E	; 142
+    4dfe:	df 4f       	sbci	r29, 0xFF	; 255
+    4e00:	e2 e1       	ldi	r30, 0x12	; 18
+    4e02:	0c 94 49 30 	jmp	0x6092	; 0x6092 <__epilogue_restores__>
 
-00004db4 <__moddi3>:
-    4db4:	a7 e7       	ldi	r26, 0x77	; 119
-    4db6:	b0 e0       	ldi	r27, 0x00	; 0
-    4db8:	e0 ee       	ldi	r30, 0xE0	; 224
-    4dba:	f6 e2       	ldi	r31, 0x26	; 38
-    4dbc:	0c 94 96 32 	jmp	0x652c	; 0x652c <__prologue_saves__>
-    4dc0:	98 2e       	mov	r9, r24
-    4dc2:	89 2e       	mov	r8, r25
-    4dc4:	71 2e       	mov	r7, r17
-    4dc6:	88 e0       	ldi	r24, 0x08	; 8
-    4dc8:	fe 01       	movw	r30, r28
-    4dca:	31 96       	adiw	r30, 0x01	; 1
-    4dcc:	df 01       	movw	r26, r30
-    4dce:	68 2e       	mov	r6, r24
-    4dd0:	1d 92       	st	X+, r1
-    4dd2:	6a 94       	dec	r6
-    4dd4:	e9 f7       	brne	.-6      	; 0x4dd0 <__moddi3+0x1c>
-    4dd6:	29 83       	std	Y+1, r18	; 0x01
-    4dd8:	3a 83       	std	Y+2, r19	; 0x02
-    4dda:	4b 83       	std	Y+3, r20	; 0x03
-    4ddc:	5c 83       	std	Y+4, r21	; 0x04
-    4dde:	6d 83       	std	Y+5, r22	; 0x05
-    4de0:	7e 83       	std	Y+6, r23	; 0x06
-    4de2:	9f 82       	std	Y+7, r9	; 0x07
-    4de4:	98 87       	std	Y+8, r25	; 0x08
-    4de6:	fe 01       	movw	r30, r28
-    4de8:	39 96       	adiw	r30, 0x09	; 9
-    4dea:	df 01       	movw	r26, r30
-    4dec:	1d 92       	st	X+, r1
-    4dee:	8a 95       	dec	r24
-    4df0:	e9 f7       	brne	.-6      	; 0x4dec <__moddi3+0x38>
-    4df2:	a9 86       	std	Y+9, r10	; 0x09
-    4df4:	ba 86       	std	Y+10, r11	; 0x0a
-    4df6:	cb 86       	std	Y+11, r12	; 0x0b
-    4df8:	dc 86       	std	Y+12, r13	; 0x0c
-    4dfa:	ed 86       	std	Y+13, r14	; 0x0d
-    4dfc:	fe 86       	std	Y+14, r15	; 0x0e
-    4dfe:	0f 87       	std	Y+15, r16	; 0x0f
-    4e00:	18 8b       	std	Y+16, r17	; 0x10
-    4e02:	8d 81       	ldd	r24, Y+5	; 0x05
-    4e04:	9e 81       	ldd	r25, Y+6	; 0x06
-    4e06:	af 81       	ldd	r26, Y+7	; 0x07
-    4e08:	b8 85       	ldd	r27, Y+8	; 0x08
-    4e0a:	b7 fd       	sbrc	r27, 7
-    4e0c:	07 c0       	rjmp	.+14     	; 0x4e1c <__moddi3+0x68>
-    4e0e:	e1 96       	adiw	r28, 0x31	; 49
-    4e10:	1c ae       	std	Y+60, r1	; 0x3c
-    4e12:	1d ae       	std	Y+61, r1	; 0x3d
-    4e14:	1e ae       	std	Y+62, r1	; 0x3e
-    4e16:	1f ae       	std	Y+63, r1	; 0x3f
-    4e18:	e1 97       	sbiw	r28, 0x31	; 49
-    4e1a:	64 c0       	rjmp	.+200    	; 0x4ee4 <__moddi3+0x130>
-    4e1c:	21 95       	neg	r18
-    4e1e:	81 e0       	ldi	r24, 0x01	; 1
-    4e20:	12 16       	cp	r1, r18
-    4e22:	08 f0       	brcs	.+2      	; 0x4e26 <__moddi3+0x72>
-    4e24:	80 e0       	ldi	r24, 0x00	; 0
-    4e26:	31 95       	neg	r19
-    4e28:	91 e0       	ldi	r25, 0x01	; 1
-    4e2a:	13 16       	cp	r1, r19
-    4e2c:	08 f0       	brcs	.+2      	; 0x4e30 <__moddi3+0x7c>
-    4e2e:	90 e0       	ldi	r25, 0x00	; 0
-    4e30:	b3 2f       	mov	r27, r19
-    4e32:	b8 1b       	sub	r27, r24
-    4e34:	81 e0       	ldi	r24, 0x01	; 1
-    4e36:	3b 17       	cp	r19, r27
-    4e38:	08 f0       	brcs	.+2      	; 0x4e3c <__moddi3+0x88>
-    4e3a:	80 e0       	ldi	r24, 0x00	; 0
-    4e3c:	98 2b       	or	r25, r24
-    4e3e:	41 95       	neg	r20
-    4e40:	31 e0       	ldi	r19, 0x01	; 1
-    4e42:	14 16       	cp	r1, r20
-    4e44:	08 f0       	brcs	.+2      	; 0x4e48 <__moddi3+0x94>
-    4e46:	30 e0       	ldi	r19, 0x00	; 0
-    4e48:	a4 2f       	mov	r26, r20
-    4e4a:	a9 1b       	sub	r26, r25
-    4e4c:	81 e0       	ldi	r24, 0x01	; 1
-    4e4e:	4a 17       	cp	r20, r26
-    4e50:	08 f0       	brcs	.+2      	; 0x4e54 <__moddi3+0xa0>
-    4e52:	80 e0       	ldi	r24, 0x00	; 0
-    4e54:	38 2b       	or	r19, r24
-    4e56:	51 95       	neg	r21
-    4e58:	91 e0       	ldi	r25, 0x01	; 1
-    4e5a:	15 16       	cp	r1, r21
-    4e5c:	08 f0       	brcs	.+2      	; 0x4e60 <__moddi3+0xac>
-    4e5e:	90 e0       	ldi	r25, 0x00	; 0
-    4e60:	f5 2f       	mov	r31, r21
-    4e62:	f3 1b       	sub	r31, r19
-    4e64:	81 e0       	ldi	r24, 0x01	; 1
-    4e66:	5f 17       	cp	r21, r31
-    4e68:	08 f0       	brcs	.+2      	; 0x4e6c <__moddi3+0xb8>
-    4e6a:	80 e0       	ldi	r24, 0x00	; 0
-    4e6c:	98 2b       	or	r25, r24
-    4e6e:	61 95       	neg	r22
-    4e70:	31 e0       	ldi	r19, 0x01	; 1
-    4e72:	16 16       	cp	r1, r22
-    4e74:	08 f0       	brcs	.+2      	; 0x4e78 <__moddi3+0xc4>
-    4e76:	30 e0       	ldi	r19, 0x00	; 0
-    4e78:	e6 2f       	mov	r30, r22
-    4e7a:	e9 1b       	sub	r30, r25
-    4e7c:	81 e0       	ldi	r24, 0x01	; 1
-    4e7e:	6e 17       	cp	r22, r30
-    4e80:	08 f0       	brcs	.+2      	; 0x4e84 <__moddi3+0xd0>
-    4e82:	80 e0       	ldi	r24, 0x00	; 0
-    4e84:	38 2b       	or	r19, r24
-    4e86:	71 95       	neg	r23
-    4e88:	41 e0       	ldi	r20, 0x01	; 1
-    4e8a:	17 16       	cp	r1, r23
-    4e8c:	08 f0       	brcs	.+2      	; 0x4e90 <__moddi3+0xdc>
-    4e8e:	40 e0       	ldi	r20, 0x00	; 0
-    4e90:	57 2f       	mov	r21, r23
-    4e92:	53 1b       	sub	r21, r19
-    4e94:	81 e0       	ldi	r24, 0x01	; 1
-    4e96:	75 17       	cp	r23, r21
-    4e98:	08 f0       	brcs	.+2      	; 0x4e9c <__moddi3+0xe8>
-    4e9a:	80 e0       	ldi	r24, 0x00	; 0
-    4e9c:	48 2b       	or	r20, r24
-    4e9e:	89 2d       	mov	r24, r9
-    4ea0:	81 95       	neg	r24
-    4ea2:	91 e0       	ldi	r25, 0x01	; 1
-    4ea4:	18 16       	cp	r1, r24
-    4ea6:	08 f0       	brcs	.+2      	; 0x4eaa <__moddi3+0xf6>
-    4ea8:	90 e0       	ldi	r25, 0x00	; 0
-    4eaa:	68 2e       	mov	r6, r24
-    4eac:	64 1a       	sub	r6, r20
-    4eae:	46 2d       	mov	r20, r6
-    4eb0:	31 e0       	ldi	r19, 0x01	; 1
-    4eb2:	86 15       	cp	r24, r6
-    4eb4:	08 f0       	brcs	.+2      	; 0x4eb8 <__moddi3+0x104>
-    4eb6:	30 e0       	ldi	r19, 0x00	; 0
-    4eb8:	93 2b       	or	r25, r19
-    4eba:	88 2d       	mov	r24, r8
-    4ebc:	81 95       	neg	r24
-    4ebe:	89 1b       	sub	r24, r25
-    4ec0:	29 83       	std	Y+1, r18	; 0x01
-    4ec2:	ba 83       	std	Y+2, r27	; 0x02
-    4ec4:	ab 83       	std	Y+3, r26	; 0x03
-    4ec6:	fc 83       	std	Y+4, r31	; 0x04
-    4ec8:	ed 83       	std	Y+5, r30	; 0x05
-    4eca:	5e 83       	std	Y+6, r21	; 0x06
-    4ecc:	4f 83       	std	Y+7, r20	; 0x07
-    4ece:	88 87       	std	Y+8, r24	; 0x08
-    4ed0:	2f ef       	ldi	r18, 0xFF	; 255
-    4ed2:	3f ef       	ldi	r19, 0xFF	; 255
-    4ed4:	4f ef       	ldi	r20, 0xFF	; 255
-    4ed6:	5f ef       	ldi	r21, 0xFF	; 255
-    4ed8:	e1 96       	adiw	r28, 0x31	; 49
-    4eda:	2c af       	std	Y+60, r18	; 0x3c
-    4edc:	3d af       	std	Y+61, r19	; 0x3d
-    4ede:	4e af       	std	Y+62, r20	; 0x3e
-    4ee0:	5f af       	std	Y+63, r21	; 0x3f
-    4ee2:	e1 97       	sbiw	r28, 0x31	; 49
-    4ee4:	8d 85       	ldd	r24, Y+13	; 0x0d
-    4ee6:	9e 85       	ldd	r25, Y+14	; 0x0e
-    4ee8:	af 85       	ldd	r26, Y+15	; 0x0f
-    4eea:	b8 89       	ldd	r27, Y+16	; 0x10
-    4eec:	b7 ff       	sbrs	r27, 7
-    4eee:	5a c0       	rjmp	.+180    	; 0x4fa4 <__moddi3+0x1f0>
-    4ef0:	a1 94       	neg	r10
-    4ef2:	81 e0       	ldi	r24, 0x01	; 1
-    4ef4:	1a 14       	cp	r1, r10
-    4ef6:	08 f0       	brcs	.+2      	; 0x4efa <__moddi3+0x146>
-    4ef8:	80 e0       	ldi	r24, 0x00	; 0
-    4efa:	b1 94       	neg	r11
-    4efc:	91 e0       	ldi	r25, 0x01	; 1
-    4efe:	1b 14       	cp	r1, r11
-    4f00:	08 f0       	brcs	.+2      	; 0x4f04 <__moddi3+0x150>
-    4f02:	90 e0       	ldi	r25, 0x00	; 0
-    4f04:	6b 2d       	mov	r22, r11
-    4f06:	68 1b       	sub	r22, r24
-    4f08:	81 e0       	ldi	r24, 0x01	; 1
-    4f0a:	b6 16       	cp	r11, r22
-    4f0c:	08 f0       	brcs	.+2      	; 0x4f10 <__moddi3+0x15c>
-    4f0e:	80 e0       	ldi	r24, 0x00	; 0
-    4f10:	98 2b       	or	r25, r24
-    4f12:	c1 94       	neg	r12
-    4f14:	21 e0       	ldi	r18, 0x01	; 1
-    4f16:	1c 14       	cp	r1, r12
-    4f18:	08 f0       	brcs	.+2      	; 0x4f1c <__moddi3+0x168>
-    4f1a:	20 e0       	ldi	r18, 0x00	; 0
-    4f1c:	5c 2d       	mov	r21, r12
-    4f1e:	59 1b       	sub	r21, r25
-    4f20:	81 e0       	ldi	r24, 0x01	; 1
-    4f22:	c5 16       	cp	r12, r21
-    4f24:	08 f0       	brcs	.+2      	; 0x4f28 <__moddi3+0x174>
-    4f26:	80 e0       	ldi	r24, 0x00	; 0
-    4f28:	28 2b       	or	r18, r24
-    4f2a:	d1 94       	neg	r13
-    4f2c:	91 e0       	ldi	r25, 0x01	; 1
-    4f2e:	1d 14       	cp	r1, r13
-    4f30:	08 f0       	brcs	.+2      	; 0x4f34 <__moddi3+0x180>
-    4f32:	90 e0       	ldi	r25, 0x00	; 0
-    4f34:	4d 2d       	mov	r20, r13
-    4f36:	42 1b       	sub	r20, r18
-    4f38:	81 e0       	ldi	r24, 0x01	; 1
-    4f3a:	d4 16       	cp	r13, r20
-    4f3c:	08 f0       	brcs	.+2      	; 0x4f40 <__moddi3+0x18c>
-    4f3e:	80 e0       	ldi	r24, 0x00	; 0
-    4f40:	98 2b       	or	r25, r24
-    4f42:	e1 94       	neg	r14
-    4f44:	21 e0       	ldi	r18, 0x01	; 1
-    4f46:	1e 14       	cp	r1, r14
-    4f48:	08 f0       	brcs	.+2      	; 0x4f4c <__moddi3+0x198>
-    4f4a:	20 e0       	ldi	r18, 0x00	; 0
-    4f4c:	3e 2d       	mov	r19, r14
-    4f4e:	39 1b       	sub	r19, r25
-    4f50:	81 e0       	ldi	r24, 0x01	; 1
-    4f52:	e3 16       	cp	r14, r19
-    4f54:	08 f0       	brcs	.+2      	; 0x4f58 <__moddi3+0x1a4>
-    4f56:	80 e0       	ldi	r24, 0x00	; 0
-    4f58:	28 2b       	or	r18, r24
-    4f5a:	f1 94       	neg	r15
-    4f5c:	91 e0       	ldi	r25, 0x01	; 1
-    4f5e:	1f 14       	cp	r1, r15
-    4f60:	08 f0       	brcs	.+2      	; 0x4f64 <__moddi3+0x1b0>
-    4f62:	90 e0       	ldi	r25, 0x00	; 0
-    4f64:	7f 2d       	mov	r23, r15
-    4f66:	72 1b       	sub	r23, r18
-    4f68:	27 2f       	mov	r18, r23
-    4f6a:	81 e0       	ldi	r24, 0x01	; 1
-    4f6c:	f7 16       	cp	r15, r23
-    4f6e:	08 f0       	brcs	.+2      	; 0x4f72 <__moddi3+0x1be>
-    4f70:	80 e0       	ldi	r24, 0x00	; 0
-    4f72:	98 2b       	or	r25, r24
-    4f74:	01 95       	neg	r16
-    4f76:	11 e0       	ldi	r17, 0x01	; 1
-    4f78:	10 16       	cp	r1, r16
-    4f7a:	08 f0       	brcs	.+2      	; 0x4f7e <__moddi3+0x1ca>
-    4f7c:	10 e0       	ldi	r17, 0x00	; 0
-    4f7e:	80 2f       	mov	r24, r16
-    4f80:	89 1b       	sub	r24, r25
-    4f82:	98 2f       	mov	r25, r24
-    4f84:	81 e0       	ldi	r24, 0x01	; 1
-    4f86:	09 17       	cp	r16, r25
-    4f88:	08 f0       	brcs	.+2      	; 0x4f8c <__moddi3+0x1d8>
-    4f8a:	80 e0       	ldi	r24, 0x00	; 0
-    4f8c:	18 2b       	or	r17, r24
-    4f8e:	87 2d       	mov	r24, r7
-    4f90:	81 95       	neg	r24
-    4f92:	81 1b       	sub	r24, r17
-    4f94:	a9 86       	std	Y+9, r10	; 0x09
-    4f96:	6a 87       	std	Y+10, r22	; 0x0a
-    4f98:	5b 87       	std	Y+11, r21	; 0x0b
-    4f9a:	4c 87       	std	Y+12, r20	; 0x0c
-    4f9c:	3d 87       	std	Y+13, r19	; 0x0d
-    4f9e:	2e 87       	std	Y+14, r18	; 0x0e
-    4fa0:	9f 87       	std	Y+15, r25	; 0x0f
-    4fa2:	88 8b       	std	Y+16, r24	; 0x10
-    4fa4:	99 81       	ldd	r25, Y+1	; 0x01
-    4fa6:	2a 81       	ldd	r18, Y+2	; 0x02
-    4fa8:	3b 81       	ldd	r19, Y+3	; 0x03
-    4faa:	4c 81       	ldd	r20, Y+4	; 0x04
-    4fac:	5d 81       	ldd	r21, Y+5	; 0x05
-    4fae:	6e 81       	ldd	r22, Y+6	; 0x06
-    4fb0:	7f 81       	ldd	r23, Y+7	; 0x07
-    4fb2:	a8 85       	ldd	r26, Y+8	; 0x08
-    4fb4:	b9 85       	ldd	r27, Y+9	; 0x09
-    4fb6:	1a 85       	ldd	r17, Y+10	; 0x0a
-    4fb8:	0b 85       	ldd	r16, Y+11	; 0x0b
-    4fba:	fc 84       	ldd	r15, Y+12	; 0x0c
-    4fbc:	ed 84       	ldd	r14, Y+13	; 0x0d
-    4fbe:	de 84       	ldd	r13, Y+14	; 0x0e
-    4fc0:	cf 84       	ldd	r12, Y+15	; 0x0f
-    4fc2:	b8 88       	ldd	r11, Y+16	; 0x10
-    4fc4:	88 e0       	ldi	r24, 0x08	; 8
-    4fc6:	e9 e1       	ldi	r30, 0x19	; 25
-    4fc8:	8e 2e       	mov	r8, r30
-    4fca:	91 2c       	mov	r9, r1
-    4fcc:	8c 0e       	add	r8, r28
-    4fce:	9d 1e       	adc	r9, r29
-    4fd0:	f4 01       	movw	r30, r8
-    4fd2:	68 2e       	mov	r6, r24
-    4fd4:	11 92       	st	Z+, r1
-    4fd6:	6a 94       	dec	r6
-    4fd8:	e9 f7       	brne	.-6      	; 0x4fd4 <__moddi3+0x220>
-    4fda:	99 8f       	std	Y+25, r25	; 0x19
-    4fdc:	2a 8f       	std	Y+26, r18	; 0x1a
-    4fde:	3b 8f       	std	Y+27, r19	; 0x1b
-    4fe0:	4c 8f       	std	Y+28, r20	; 0x1c
-    4fe2:	5d 8f       	std	Y+29, r21	; 0x1d
-    4fe4:	6e 8f       	std	Y+30, r22	; 0x1e
-    4fe6:	7f 8f       	std	Y+31, r23	; 0x1f
-    4fe8:	a8 a3       	std	Y+32, r26	; 0x20
-    4fea:	9e 01       	movw	r18, r28
-    4fec:	2f 5d       	subi	r18, 0xDF	; 223
-    4fee:	3f 4f       	sbci	r19, 0xFF	; 255
-    4ff0:	f9 01       	movw	r30, r18
-    4ff2:	11 92       	st	Z+, r1
-    4ff4:	8a 95       	dec	r24
-    4ff6:	e9 f7       	brne	.-6      	; 0x4ff2 <__moddi3+0x23e>
-    4ff8:	b9 a3       	std	Y+33, r27	; 0x21
-    4ffa:	1a a3       	std	Y+34, r17	; 0x22
-    4ffc:	0b a3       	std	Y+35, r16	; 0x23
-    4ffe:	fc a2       	std	Y+36, r15	; 0x24
-    5000:	ed a2       	std	Y+37, r14	; 0x25
-    5002:	de a2       	std	Y+38, r13	; 0x26
-    5004:	cf a2       	std	Y+39, r12	; 0x27
-    5006:	b8 a6       	std	Y+40, r11	; 0x28
-    5008:	29 a0       	ldd	r2, Y+33	; 0x21
-    500a:	3a a0       	ldd	r3, Y+34	; 0x22
-    500c:	4b a0       	ldd	r4, Y+35	; 0x23
-    500e:	5c a0       	ldd	r5, Y+36	; 0x24
-    5010:	ad a0       	ldd	r10, Y+37	; 0x25
-    5012:	be a0       	ldd	r11, Y+38	; 0x26
-    5014:	cf a0       	ldd	r12, Y+39	; 0x27
-    5016:	d8 a4       	ldd	r13, Y+40	; 0x28
-    5018:	49 8d       	ldd	r20, Y+25	; 0x19
-    501a:	5a 8d       	ldd	r21, Y+26	; 0x1a
-    501c:	6b 8d       	ldd	r22, Y+27	; 0x1b
-    501e:	7c 8d       	ldd	r23, Y+28	; 0x1c
-    5020:	e5 96       	adiw	r28, 0x35	; 53
-    5022:	4f af       	std	Y+63, r20	; 0x3f
-    5024:	e5 97       	sbiw	r28, 0x35	; 53
-    5026:	e6 96       	adiw	r28, 0x36	; 54
-    5028:	5f af       	std	Y+63, r21	; 0x3f
-    502a:	e6 97       	sbiw	r28, 0x36	; 54
-    502c:	e7 96       	adiw	r28, 0x37	; 55
-    502e:	6f af       	std	Y+63, r22	; 0x3f
-    5030:	e7 97       	sbiw	r28, 0x37	; 55
-    5032:	e8 96       	adiw	r28, 0x38	; 56
-    5034:	7f af       	std	Y+63, r23	; 0x3f
-    5036:	e8 97       	sbiw	r28, 0x38	; 56
-    5038:	e8 96       	adiw	r28, 0x38	; 56
-    503a:	6c ac       	ldd	r6, Y+60	; 0x3c
-    503c:	7d ac       	ldd	r7, Y+61	; 0x3d
-    503e:	8e ac       	ldd	r8, Y+62	; 0x3e
-    5040:	9f ac       	ldd	r9, Y+63	; 0x3f
-    5042:	e8 97       	sbiw	r28, 0x38	; 56
-    5044:	2d 96       	adiw	r28, 0x0d	; 13
-    5046:	6c ae       	std	Y+60, r6	; 0x3c
-    5048:	7d ae       	std	Y+61, r7	; 0x3d
-    504a:	8e ae       	std	Y+62, r8	; 0x3e
-    504c:	9f ae       	std	Y+63, r9	; 0x3f
-    504e:	2d 97       	sbiw	r28, 0x0d	; 13
-    5050:	8d 8d       	ldd	r24, Y+29	; 0x1d
-    5052:	9e 8d       	ldd	r25, Y+30	; 0x1e
-    5054:	2f 8d       	ldd	r18, Y+31	; 0x1f
-    5056:	38 a1       	ldd	r19, Y+32	; 0x20
-    5058:	3c 01       	movw	r6, r24
-    505a:	49 01       	movw	r8, r18
-    505c:	61 96       	adiw	r28, 0x11	; 17
-    505e:	6c ae       	std	Y+60, r6	; 0x3c
-    5060:	7d ae       	std	Y+61, r7	; 0x3d
-    5062:	8e ae       	std	Y+62, r8	; 0x3e
-    5064:	9f ae       	std	Y+63, r9	; 0x3f
-    5066:	61 97       	sbiw	r28, 0x11	; 17
-    5068:	a1 14       	cp	r10, r1
-    506a:	b1 04       	cpc	r11, r1
-    506c:	c1 04       	cpc	r12, r1
-    506e:	d1 04       	cpc	r13, r1
-    5070:	09 f0       	breq	.+2      	; 0x5074 <__moddi3+0x2c0>
-    5072:	28 c3       	rjmp	.+1616   	; 0x56c4 <__moddi3+0x910>
-    5074:	62 14       	cp	r6, r2
-    5076:	73 04       	cpc	r7, r3
-    5078:	84 04       	cpc	r8, r4
-    507a:	95 04       	cpc	r9, r5
-    507c:	08 f0       	brcs	.+2      	; 0x5080 <__moddi3+0x2cc>
-    507e:	0e c1       	rjmp	.+540    	; 0x529c <__moddi3+0x4e8>
-    5080:	00 e0       	ldi	r16, 0x00	; 0
-    5082:	20 16       	cp	r2, r16
-    5084:	00 e0       	ldi	r16, 0x00	; 0
-    5086:	30 06       	cpc	r3, r16
-    5088:	01 e0       	ldi	r16, 0x01	; 1
-    508a:	40 06       	cpc	r4, r16
-    508c:	00 e0       	ldi	r16, 0x00	; 0
-    508e:	50 06       	cpc	r5, r16
-    5090:	88 f4       	brcc	.+34     	; 0x50b4 <__moddi3+0x300>
-    5092:	1f ef       	ldi	r17, 0xFF	; 255
-    5094:	21 16       	cp	r2, r17
-    5096:	31 04       	cpc	r3, r1
-    5098:	41 04       	cpc	r4, r1
-    509a:	51 04       	cpc	r5, r1
-    509c:	39 f0       	breq	.+14     	; 0x50ac <__moddi3+0x2f8>
-    509e:	30 f0       	brcs	.+12     	; 0x50ac <__moddi3+0x2f8>
-    50a0:	18 e0       	ldi	r17, 0x08	; 8
-    50a2:	e1 2e       	mov	r14, r17
-    50a4:	f1 2c       	mov	r15, r1
-    50a6:	01 2d       	mov	r16, r1
-    50a8:	11 2d       	mov	r17, r1
-    50aa:	18 c0       	rjmp	.+48     	; 0x50dc <__moddi3+0x328>
-    50ac:	ee 24       	eor	r14, r14
-    50ae:	ff 24       	eor	r15, r15
-    50b0:	87 01       	movw	r16, r14
-    50b2:	14 c0       	rjmp	.+40     	; 0x50dc <__moddi3+0x328>
-    50b4:	20 e0       	ldi	r18, 0x00	; 0
-    50b6:	22 16       	cp	r2, r18
-    50b8:	20 e0       	ldi	r18, 0x00	; 0
-    50ba:	32 06       	cpc	r3, r18
-    50bc:	20 e0       	ldi	r18, 0x00	; 0
-    50be:	42 06       	cpc	r4, r18
-    50c0:	21 e0       	ldi	r18, 0x01	; 1
-    50c2:	52 06       	cpc	r5, r18
-    50c4:	30 f0       	brcs	.+12     	; 0x50d2 <__moddi3+0x31e>
-    50c6:	b8 e1       	ldi	r27, 0x18	; 24
-    50c8:	eb 2e       	mov	r14, r27
-    50ca:	f1 2c       	mov	r15, r1
-    50cc:	01 2d       	mov	r16, r1
-    50ce:	11 2d       	mov	r17, r1
-    50d0:	05 c0       	rjmp	.+10     	; 0x50dc <__moddi3+0x328>
-    50d2:	a0 e1       	ldi	r26, 0x10	; 16
-    50d4:	ea 2e       	mov	r14, r26
-    50d6:	f1 2c       	mov	r15, r1
-    50d8:	01 2d       	mov	r16, r1
-    50da:	11 2d       	mov	r17, r1
-    50dc:	d2 01       	movw	r26, r4
-    50de:	c1 01       	movw	r24, r2
-    50e0:	0e 2c       	mov	r0, r14
-    50e2:	04 c0       	rjmp	.+8      	; 0x50ec <__moddi3+0x338>
-    50e4:	b6 95       	lsr	r27
-    50e6:	a7 95       	ror	r26
-    50e8:	97 95       	ror	r25
-    50ea:	87 95       	ror	r24
-    50ec:	0a 94       	dec	r0
-    50ee:	d2 f7       	brpl	.-12     	; 0x50e4 <__moddi3+0x330>
-    50f0:	89 59       	subi	r24, 0x99	; 153
-    50f2:	9b 4f       	sbci	r25, 0xFB	; 251
-    50f4:	dc 01       	movw	r26, r24
-    50f6:	2c 91       	ld	r18, X
-    50f8:	80 e2       	ldi	r24, 0x20	; 32
-    50fa:	90 e0       	ldi	r25, 0x00	; 0
-    50fc:	a0 e0       	ldi	r26, 0x00	; 0
-    50fe:	b0 e0       	ldi	r27, 0x00	; 0
-    5100:	8e 19       	sub	r24, r14
-    5102:	9f 09       	sbc	r25, r15
-    5104:	a0 0b       	sbc	r26, r16
-    5106:	b1 0b       	sbc	r27, r17
-    5108:	5c 01       	movw	r10, r24
-    510a:	6d 01       	movw	r12, r26
-    510c:	a2 1a       	sub	r10, r18
-    510e:	b1 08       	sbc	r11, r1
-    5110:	c1 08       	sbc	r12, r1
-    5112:	d1 08       	sbc	r13, r1
-    5114:	65 96       	adiw	r28, 0x15	; 21
-    5116:	ac ae       	std	Y+60, r10	; 0x3c
-    5118:	bd ae       	std	Y+61, r11	; 0x3d
-    511a:	ce ae       	std	Y+62, r12	; 0x3e
-    511c:	df ae       	std	Y+63, r13	; 0x3f
-    511e:	65 97       	sbiw	r28, 0x15	; 21
-    5120:	a1 14       	cp	r10, r1
-    5122:	b1 04       	cpc	r11, r1
-    5124:	c1 04       	cpc	r12, r1
-    5126:	d1 04       	cpc	r13, r1
-    5128:	09 f4       	brne	.+2      	; 0x512c <__moddi3+0x378>
-    512a:	45 c0       	rjmp	.+138    	; 0x51b6 <__moddi3+0x402>
-    512c:	62 96       	adiw	r28, 0x12	; 18
-    512e:	6f ad       	ldd	r22, Y+63	; 0x3f
-    5130:	62 97       	sbiw	r28, 0x12	; 18
-    5132:	06 2e       	mov	r0, r22
-    5134:	04 c0       	rjmp	.+8      	; 0x513e <__moddi3+0x38a>
-    5136:	22 0c       	add	r2, r2
-    5138:	33 1c       	adc	r3, r3
-    513a:	44 1c       	adc	r4, r4
-    513c:	55 1c       	adc	r5, r5
+00004e06 <__moddi3>:
+    4e06:	a7 e7       	ldi	r26, 0x77	; 119
+    4e08:	b0 e0       	ldi	r27, 0x00	; 0
+    4e0a:	e9 e0       	ldi	r30, 0x09	; 9
+    4e0c:	f7 e2       	ldi	r31, 0x27	; 39
+    4e0e:	0c 94 2d 30 	jmp	0x605a	; 0x605a <__prologue_saves__>
+    4e12:	98 2e       	mov	r9, r24
+    4e14:	89 2e       	mov	r8, r25
+    4e16:	71 2e       	mov	r7, r17
+    4e18:	88 e0       	ldi	r24, 0x08	; 8
+    4e1a:	fe 01       	movw	r30, r28
+    4e1c:	31 96       	adiw	r30, 0x01	; 1
+    4e1e:	df 01       	movw	r26, r30
+    4e20:	68 2e       	mov	r6, r24
+    4e22:	1d 92       	st	X+, r1
+    4e24:	6a 94       	dec	r6
+    4e26:	e9 f7       	brne	.-6      	; 0x4e22 <__moddi3+0x1c>
+    4e28:	29 83       	std	Y+1, r18	; 0x01
+    4e2a:	3a 83       	std	Y+2, r19	; 0x02
+    4e2c:	4b 83       	std	Y+3, r20	; 0x03
+    4e2e:	5c 83       	std	Y+4, r21	; 0x04
+    4e30:	6d 83       	std	Y+5, r22	; 0x05
+    4e32:	7e 83       	std	Y+6, r23	; 0x06
+    4e34:	9f 82       	std	Y+7, r9	; 0x07
+    4e36:	98 87       	std	Y+8, r25	; 0x08
+    4e38:	fe 01       	movw	r30, r28
+    4e3a:	39 96       	adiw	r30, 0x09	; 9
+    4e3c:	df 01       	movw	r26, r30
+    4e3e:	1d 92       	st	X+, r1
+    4e40:	8a 95       	dec	r24
+    4e42:	e9 f7       	brne	.-6      	; 0x4e3e <__moddi3+0x38>
+    4e44:	a9 86       	std	Y+9, r10	; 0x09
+    4e46:	ba 86       	std	Y+10, r11	; 0x0a
+    4e48:	cb 86       	std	Y+11, r12	; 0x0b
+    4e4a:	dc 86       	std	Y+12, r13	; 0x0c
+    4e4c:	ed 86       	std	Y+13, r14	; 0x0d
+    4e4e:	fe 86       	std	Y+14, r15	; 0x0e
+    4e50:	0f 87       	std	Y+15, r16	; 0x0f
+    4e52:	18 8b       	std	Y+16, r17	; 0x10
+    4e54:	8d 81       	ldd	r24, Y+5	; 0x05
+    4e56:	9e 81       	ldd	r25, Y+6	; 0x06
+    4e58:	af 81       	ldd	r26, Y+7	; 0x07
+    4e5a:	b8 85       	ldd	r27, Y+8	; 0x08
+    4e5c:	b7 fd       	sbrc	r27, 7
+    4e5e:	07 c0       	rjmp	.+14     	; 0x4e6e <__moddi3+0x68>
+    4e60:	e1 96       	adiw	r28, 0x31	; 49
+    4e62:	1c ae       	std	Y+60, r1	; 0x3c
+    4e64:	1d ae       	std	Y+61, r1	; 0x3d
+    4e66:	1e ae       	std	Y+62, r1	; 0x3e
+    4e68:	1f ae       	std	Y+63, r1	; 0x3f
+    4e6a:	e1 97       	sbiw	r28, 0x31	; 49
+    4e6c:	64 c0       	rjmp	.+200    	; 0x4f36 <__moddi3+0x130>
+    4e6e:	21 95       	neg	r18
+    4e70:	81 e0       	ldi	r24, 0x01	; 1
+    4e72:	12 16       	cp	r1, r18
+    4e74:	08 f0       	brcs	.+2      	; 0x4e78 <__moddi3+0x72>
+    4e76:	80 e0       	ldi	r24, 0x00	; 0
+    4e78:	31 95       	neg	r19
+    4e7a:	91 e0       	ldi	r25, 0x01	; 1
+    4e7c:	13 16       	cp	r1, r19
+    4e7e:	08 f0       	brcs	.+2      	; 0x4e82 <__moddi3+0x7c>
+    4e80:	90 e0       	ldi	r25, 0x00	; 0
+    4e82:	b3 2f       	mov	r27, r19
+    4e84:	b8 1b       	sub	r27, r24
+    4e86:	81 e0       	ldi	r24, 0x01	; 1
+    4e88:	3b 17       	cp	r19, r27
+    4e8a:	08 f0       	brcs	.+2      	; 0x4e8e <__moddi3+0x88>
+    4e8c:	80 e0       	ldi	r24, 0x00	; 0
+    4e8e:	98 2b       	or	r25, r24
+    4e90:	41 95       	neg	r20
+    4e92:	31 e0       	ldi	r19, 0x01	; 1
+    4e94:	14 16       	cp	r1, r20
+    4e96:	08 f0       	brcs	.+2      	; 0x4e9a <__moddi3+0x94>
+    4e98:	30 e0       	ldi	r19, 0x00	; 0
+    4e9a:	a4 2f       	mov	r26, r20
+    4e9c:	a9 1b       	sub	r26, r25
+    4e9e:	81 e0       	ldi	r24, 0x01	; 1
+    4ea0:	4a 17       	cp	r20, r26
+    4ea2:	08 f0       	brcs	.+2      	; 0x4ea6 <__moddi3+0xa0>
+    4ea4:	80 e0       	ldi	r24, 0x00	; 0
+    4ea6:	38 2b       	or	r19, r24
+    4ea8:	51 95       	neg	r21
+    4eaa:	91 e0       	ldi	r25, 0x01	; 1
+    4eac:	15 16       	cp	r1, r21
+    4eae:	08 f0       	brcs	.+2      	; 0x4eb2 <__moddi3+0xac>
+    4eb0:	90 e0       	ldi	r25, 0x00	; 0
+    4eb2:	f5 2f       	mov	r31, r21
+    4eb4:	f3 1b       	sub	r31, r19
+    4eb6:	81 e0       	ldi	r24, 0x01	; 1
+    4eb8:	5f 17       	cp	r21, r31
+    4eba:	08 f0       	brcs	.+2      	; 0x4ebe <__moddi3+0xb8>
+    4ebc:	80 e0       	ldi	r24, 0x00	; 0
+    4ebe:	98 2b       	or	r25, r24
+    4ec0:	61 95       	neg	r22
+    4ec2:	31 e0       	ldi	r19, 0x01	; 1
+    4ec4:	16 16       	cp	r1, r22
+    4ec6:	08 f0       	brcs	.+2      	; 0x4eca <__moddi3+0xc4>
+    4ec8:	30 e0       	ldi	r19, 0x00	; 0
+    4eca:	e6 2f       	mov	r30, r22
+    4ecc:	e9 1b       	sub	r30, r25
+    4ece:	81 e0       	ldi	r24, 0x01	; 1
+    4ed0:	6e 17       	cp	r22, r30
+    4ed2:	08 f0       	brcs	.+2      	; 0x4ed6 <__moddi3+0xd0>
+    4ed4:	80 e0       	ldi	r24, 0x00	; 0
+    4ed6:	38 2b       	or	r19, r24
+    4ed8:	71 95       	neg	r23
+    4eda:	41 e0       	ldi	r20, 0x01	; 1
+    4edc:	17 16       	cp	r1, r23
+    4ede:	08 f0       	brcs	.+2      	; 0x4ee2 <__moddi3+0xdc>
+    4ee0:	40 e0       	ldi	r20, 0x00	; 0
+    4ee2:	57 2f       	mov	r21, r23
+    4ee4:	53 1b       	sub	r21, r19
+    4ee6:	81 e0       	ldi	r24, 0x01	; 1
+    4ee8:	75 17       	cp	r23, r21
+    4eea:	08 f0       	brcs	.+2      	; 0x4eee <__moddi3+0xe8>
+    4eec:	80 e0       	ldi	r24, 0x00	; 0
+    4eee:	48 2b       	or	r20, r24
+    4ef0:	89 2d       	mov	r24, r9
+    4ef2:	81 95       	neg	r24
+    4ef4:	91 e0       	ldi	r25, 0x01	; 1
+    4ef6:	18 16       	cp	r1, r24
+    4ef8:	08 f0       	brcs	.+2      	; 0x4efc <__moddi3+0xf6>
+    4efa:	90 e0       	ldi	r25, 0x00	; 0
+    4efc:	68 2e       	mov	r6, r24
+    4efe:	64 1a       	sub	r6, r20
+    4f00:	46 2d       	mov	r20, r6
+    4f02:	31 e0       	ldi	r19, 0x01	; 1
+    4f04:	86 15       	cp	r24, r6
+    4f06:	08 f0       	brcs	.+2      	; 0x4f0a <__moddi3+0x104>
+    4f08:	30 e0       	ldi	r19, 0x00	; 0
+    4f0a:	93 2b       	or	r25, r19
+    4f0c:	88 2d       	mov	r24, r8
+    4f0e:	81 95       	neg	r24
+    4f10:	89 1b       	sub	r24, r25
+    4f12:	29 83       	std	Y+1, r18	; 0x01
+    4f14:	ba 83       	std	Y+2, r27	; 0x02
+    4f16:	ab 83       	std	Y+3, r26	; 0x03
+    4f18:	fc 83       	std	Y+4, r31	; 0x04
+    4f1a:	ed 83       	std	Y+5, r30	; 0x05
+    4f1c:	5e 83       	std	Y+6, r21	; 0x06
+    4f1e:	4f 83       	std	Y+7, r20	; 0x07
+    4f20:	88 87       	std	Y+8, r24	; 0x08
+    4f22:	2f ef       	ldi	r18, 0xFF	; 255
+    4f24:	3f ef       	ldi	r19, 0xFF	; 255
+    4f26:	4f ef       	ldi	r20, 0xFF	; 255
+    4f28:	5f ef       	ldi	r21, 0xFF	; 255
+    4f2a:	e1 96       	adiw	r28, 0x31	; 49
+    4f2c:	2c af       	std	Y+60, r18	; 0x3c
+    4f2e:	3d af       	std	Y+61, r19	; 0x3d
+    4f30:	4e af       	std	Y+62, r20	; 0x3e
+    4f32:	5f af       	std	Y+63, r21	; 0x3f
+    4f34:	e1 97       	sbiw	r28, 0x31	; 49
+    4f36:	8d 85       	ldd	r24, Y+13	; 0x0d
+    4f38:	9e 85       	ldd	r25, Y+14	; 0x0e
+    4f3a:	af 85       	ldd	r26, Y+15	; 0x0f
+    4f3c:	b8 89       	ldd	r27, Y+16	; 0x10
+    4f3e:	b7 ff       	sbrs	r27, 7
+    4f40:	5a c0       	rjmp	.+180    	; 0x4ff6 <__moddi3+0x1f0>
+    4f42:	a1 94       	neg	r10
+    4f44:	81 e0       	ldi	r24, 0x01	; 1
+    4f46:	1a 14       	cp	r1, r10
+    4f48:	08 f0       	brcs	.+2      	; 0x4f4c <__moddi3+0x146>
+    4f4a:	80 e0       	ldi	r24, 0x00	; 0
+    4f4c:	b1 94       	neg	r11
+    4f4e:	91 e0       	ldi	r25, 0x01	; 1
+    4f50:	1b 14       	cp	r1, r11
+    4f52:	08 f0       	brcs	.+2      	; 0x4f56 <__moddi3+0x150>
+    4f54:	90 e0       	ldi	r25, 0x00	; 0
+    4f56:	6b 2d       	mov	r22, r11
+    4f58:	68 1b       	sub	r22, r24
+    4f5a:	81 e0       	ldi	r24, 0x01	; 1
+    4f5c:	b6 16       	cp	r11, r22
+    4f5e:	08 f0       	brcs	.+2      	; 0x4f62 <__moddi3+0x15c>
+    4f60:	80 e0       	ldi	r24, 0x00	; 0
+    4f62:	98 2b       	or	r25, r24
+    4f64:	c1 94       	neg	r12
+    4f66:	21 e0       	ldi	r18, 0x01	; 1
+    4f68:	1c 14       	cp	r1, r12
+    4f6a:	08 f0       	brcs	.+2      	; 0x4f6e <__moddi3+0x168>
+    4f6c:	20 e0       	ldi	r18, 0x00	; 0
+    4f6e:	5c 2d       	mov	r21, r12
+    4f70:	59 1b       	sub	r21, r25
+    4f72:	81 e0       	ldi	r24, 0x01	; 1
+    4f74:	c5 16       	cp	r12, r21
+    4f76:	08 f0       	brcs	.+2      	; 0x4f7a <__moddi3+0x174>
+    4f78:	80 e0       	ldi	r24, 0x00	; 0
+    4f7a:	28 2b       	or	r18, r24
+    4f7c:	d1 94       	neg	r13
+    4f7e:	91 e0       	ldi	r25, 0x01	; 1
+    4f80:	1d 14       	cp	r1, r13
+    4f82:	08 f0       	brcs	.+2      	; 0x4f86 <__moddi3+0x180>
+    4f84:	90 e0       	ldi	r25, 0x00	; 0
+    4f86:	4d 2d       	mov	r20, r13
+    4f88:	42 1b       	sub	r20, r18
+    4f8a:	81 e0       	ldi	r24, 0x01	; 1
+    4f8c:	d4 16       	cp	r13, r20
+    4f8e:	08 f0       	brcs	.+2      	; 0x4f92 <__moddi3+0x18c>
+    4f90:	80 e0       	ldi	r24, 0x00	; 0
+    4f92:	98 2b       	or	r25, r24
+    4f94:	e1 94       	neg	r14
+    4f96:	21 e0       	ldi	r18, 0x01	; 1
+    4f98:	1e 14       	cp	r1, r14
+    4f9a:	08 f0       	brcs	.+2      	; 0x4f9e <__moddi3+0x198>
+    4f9c:	20 e0       	ldi	r18, 0x00	; 0
+    4f9e:	3e 2d       	mov	r19, r14
+    4fa0:	39 1b       	sub	r19, r25
+    4fa2:	81 e0       	ldi	r24, 0x01	; 1
+    4fa4:	e3 16       	cp	r14, r19
+    4fa6:	08 f0       	brcs	.+2      	; 0x4faa <__moddi3+0x1a4>
+    4fa8:	80 e0       	ldi	r24, 0x00	; 0
+    4faa:	28 2b       	or	r18, r24
+    4fac:	f1 94       	neg	r15
+    4fae:	91 e0       	ldi	r25, 0x01	; 1
+    4fb0:	1f 14       	cp	r1, r15
+    4fb2:	08 f0       	brcs	.+2      	; 0x4fb6 <__moddi3+0x1b0>
+    4fb4:	90 e0       	ldi	r25, 0x00	; 0
+    4fb6:	7f 2d       	mov	r23, r15
+    4fb8:	72 1b       	sub	r23, r18
+    4fba:	27 2f       	mov	r18, r23
+    4fbc:	81 e0       	ldi	r24, 0x01	; 1
+    4fbe:	f7 16       	cp	r15, r23
+    4fc0:	08 f0       	brcs	.+2      	; 0x4fc4 <__moddi3+0x1be>
+    4fc2:	80 e0       	ldi	r24, 0x00	; 0
+    4fc4:	98 2b       	or	r25, r24
+    4fc6:	01 95       	neg	r16
+    4fc8:	11 e0       	ldi	r17, 0x01	; 1
+    4fca:	10 16       	cp	r1, r16
+    4fcc:	08 f0       	brcs	.+2      	; 0x4fd0 <__moddi3+0x1ca>
+    4fce:	10 e0       	ldi	r17, 0x00	; 0
+    4fd0:	80 2f       	mov	r24, r16
+    4fd2:	89 1b       	sub	r24, r25
+    4fd4:	98 2f       	mov	r25, r24
+    4fd6:	81 e0       	ldi	r24, 0x01	; 1
+    4fd8:	09 17       	cp	r16, r25
+    4fda:	08 f0       	brcs	.+2      	; 0x4fde <__moddi3+0x1d8>
+    4fdc:	80 e0       	ldi	r24, 0x00	; 0
+    4fde:	18 2b       	or	r17, r24
+    4fe0:	87 2d       	mov	r24, r7
+    4fe2:	81 95       	neg	r24
+    4fe4:	81 1b       	sub	r24, r17
+    4fe6:	a9 86       	std	Y+9, r10	; 0x09
+    4fe8:	6a 87       	std	Y+10, r22	; 0x0a
+    4fea:	5b 87       	std	Y+11, r21	; 0x0b
+    4fec:	4c 87       	std	Y+12, r20	; 0x0c
+    4fee:	3d 87       	std	Y+13, r19	; 0x0d
+    4ff0:	2e 87       	std	Y+14, r18	; 0x0e
+    4ff2:	9f 87       	std	Y+15, r25	; 0x0f
+    4ff4:	88 8b       	std	Y+16, r24	; 0x10
+    4ff6:	99 81       	ldd	r25, Y+1	; 0x01
+    4ff8:	2a 81       	ldd	r18, Y+2	; 0x02
+    4ffa:	3b 81       	ldd	r19, Y+3	; 0x03
+    4ffc:	4c 81       	ldd	r20, Y+4	; 0x04
+    4ffe:	5d 81       	ldd	r21, Y+5	; 0x05
+    5000:	6e 81       	ldd	r22, Y+6	; 0x06
+    5002:	7f 81       	ldd	r23, Y+7	; 0x07
+    5004:	a8 85       	ldd	r26, Y+8	; 0x08
+    5006:	b9 85       	ldd	r27, Y+9	; 0x09
+    5008:	1a 85       	ldd	r17, Y+10	; 0x0a
+    500a:	0b 85       	ldd	r16, Y+11	; 0x0b
+    500c:	fc 84       	ldd	r15, Y+12	; 0x0c
+    500e:	ed 84       	ldd	r14, Y+13	; 0x0d
+    5010:	de 84       	ldd	r13, Y+14	; 0x0e
+    5012:	cf 84       	ldd	r12, Y+15	; 0x0f
+    5014:	b8 88       	ldd	r11, Y+16	; 0x10
+    5016:	88 e0       	ldi	r24, 0x08	; 8
+    5018:	e9 e1       	ldi	r30, 0x19	; 25
+    501a:	8e 2e       	mov	r8, r30
+    501c:	91 2c       	mov	r9, r1
+    501e:	8c 0e       	add	r8, r28
+    5020:	9d 1e       	adc	r9, r29
+    5022:	f4 01       	movw	r30, r8
+    5024:	68 2e       	mov	r6, r24
+    5026:	11 92       	st	Z+, r1
+    5028:	6a 94       	dec	r6
+    502a:	e9 f7       	brne	.-6      	; 0x5026 <__moddi3+0x220>
+    502c:	99 8f       	std	Y+25, r25	; 0x19
+    502e:	2a 8f       	std	Y+26, r18	; 0x1a
+    5030:	3b 8f       	std	Y+27, r19	; 0x1b
+    5032:	4c 8f       	std	Y+28, r20	; 0x1c
+    5034:	5d 8f       	std	Y+29, r21	; 0x1d
+    5036:	6e 8f       	std	Y+30, r22	; 0x1e
+    5038:	7f 8f       	std	Y+31, r23	; 0x1f
+    503a:	a8 a3       	std	Y+32, r26	; 0x20
+    503c:	9e 01       	movw	r18, r28
+    503e:	2f 5d       	subi	r18, 0xDF	; 223
+    5040:	3f 4f       	sbci	r19, 0xFF	; 255
+    5042:	f9 01       	movw	r30, r18
+    5044:	11 92       	st	Z+, r1
+    5046:	8a 95       	dec	r24
+    5048:	e9 f7       	brne	.-6      	; 0x5044 <__moddi3+0x23e>
+    504a:	b9 a3       	std	Y+33, r27	; 0x21
+    504c:	1a a3       	std	Y+34, r17	; 0x22
+    504e:	0b a3       	std	Y+35, r16	; 0x23
+    5050:	fc a2       	std	Y+36, r15	; 0x24
+    5052:	ed a2       	std	Y+37, r14	; 0x25
+    5054:	de a2       	std	Y+38, r13	; 0x26
+    5056:	cf a2       	std	Y+39, r12	; 0x27
+    5058:	b8 a6       	std	Y+40, r11	; 0x28
+    505a:	29 a0       	ldd	r2, Y+33	; 0x21
+    505c:	3a a0       	ldd	r3, Y+34	; 0x22
+    505e:	4b a0       	ldd	r4, Y+35	; 0x23
+    5060:	5c a0       	ldd	r5, Y+36	; 0x24
+    5062:	ad a0       	ldd	r10, Y+37	; 0x25
+    5064:	be a0       	ldd	r11, Y+38	; 0x26
+    5066:	cf a0       	ldd	r12, Y+39	; 0x27
+    5068:	d8 a4       	ldd	r13, Y+40	; 0x28
+    506a:	49 8d       	ldd	r20, Y+25	; 0x19
+    506c:	5a 8d       	ldd	r21, Y+26	; 0x1a
+    506e:	6b 8d       	ldd	r22, Y+27	; 0x1b
+    5070:	7c 8d       	ldd	r23, Y+28	; 0x1c
+    5072:	e5 96       	adiw	r28, 0x35	; 53
+    5074:	4f af       	std	Y+63, r20	; 0x3f
+    5076:	e5 97       	sbiw	r28, 0x35	; 53
+    5078:	e6 96       	adiw	r28, 0x36	; 54
+    507a:	5f af       	std	Y+63, r21	; 0x3f
+    507c:	e6 97       	sbiw	r28, 0x36	; 54
+    507e:	e7 96       	adiw	r28, 0x37	; 55
+    5080:	6f af       	std	Y+63, r22	; 0x3f
+    5082:	e7 97       	sbiw	r28, 0x37	; 55
+    5084:	e8 96       	adiw	r28, 0x38	; 56
+    5086:	7f af       	std	Y+63, r23	; 0x3f
+    5088:	e8 97       	sbiw	r28, 0x38	; 56
+    508a:	e8 96       	adiw	r28, 0x38	; 56
+    508c:	6c ac       	ldd	r6, Y+60	; 0x3c
+    508e:	7d ac       	ldd	r7, Y+61	; 0x3d
+    5090:	8e ac       	ldd	r8, Y+62	; 0x3e
+    5092:	9f ac       	ldd	r9, Y+63	; 0x3f
+    5094:	e8 97       	sbiw	r28, 0x38	; 56
+    5096:	2d 96       	adiw	r28, 0x0d	; 13
+    5098:	6c ae       	std	Y+60, r6	; 0x3c
+    509a:	7d ae       	std	Y+61, r7	; 0x3d
+    509c:	8e ae       	std	Y+62, r8	; 0x3e
+    509e:	9f ae       	std	Y+63, r9	; 0x3f
+    50a0:	2d 97       	sbiw	r28, 0x0d	; 13
+    50a2:	8d 8d       	ldd	r24, Y+29	; 0x1d
+    50a4:	9e 8d       	ldd	r25, Y+30	; 0x1e
+    50a6:	2f 8d       	ldd	r18, Y+31	; 0x1f
+    50a8:	38 a1       	ldd	r19, Y+32	; 0x20
+    50aa:	3c 01       	movw	r6, r24
+    50ac:	49 01       	movw	r8, r18
+    50ae:	61 96       	adiw	r28, 0x11	; 17
+    50b0:	6c ae       	std	Y+60, r6	; 0x3c
+    50b2:	7d ae       	std	Y+61, r7	; 0x3d
+    50b4:	8e ae       	std	Y+62, r8	; 0x3e
+    50b6:	9f ae       	std	Y+63, r9	; 0x3f
+    50b8:	61 97       	sbiw	r28, 0x11	; 17
+    50ba:	a1 14       	cp	r10, r1
+    50bc:	b1 04       	cpc	r11, r1
+    50be:	c1 04       	cpc	r12, r1
+    50c0:	d1 04       	cpc	r13, r1
+    50c2:	09 f0       	breq	.+2      	; 0x50c6 <__moddi3+0x2c0>
+    50c4:	28 c3       	rjmp	.+1616   	; 0x5716 <__moddi3+0x910>
+    50c6:	62 14       	cp	r6, r2
+    50c8:	73 04       	cpc	r7, r3
+    50ca:	84 04       	cpc	r8, r4
+    50cc:	95 04       	cpc	r9, r5
+    50ce:	08 f0       	brcs	.+2      	; 0x50d2 <__moddi3+0x2cc>
+    50d0:	0e c1       	rjmp	.+540    	; 0x52ee <__moddi3+0x4e8>
+    50d2:	00 e0       	ldi	r16, 0x00	; 0
+    50d4:	20 16       	cp	r2, r16
+    50d6:	00 e0       	ldi	r16, 0x00	; 0
+    50d8:	30 06       	cpc	r3, r16
+    50da:	01 e0       	ldi	r16, 0x01	; 1
+    50dc:	40 06       	cpc	r4, r16
+    50de:	00 e0       	ldi	r16, 0x00	; 0
+    50e0:	50 06       	cpc	r5, r16
+    50e2:	88 f4       	brcc	.+34     	; 0x5106 <__moddi3+0x300>
+    50e4:	1f ef       	ldi	r17, 0xFF	; 255
+    50e6:	21 16       	cp	r2, r17
+    50e8:	31 04       	cpc	r3, r1
+    50ea:	41 04       	cpc	r4, r1
+    50ec:	51 04       	cpc	r5, r1
+    50ee:	39 f0       	breq	.+14     	; 0x50fe <__moddi3+0x2f8>
+    50f0:	30 f0       	brcs	.+12     	; 0x50fe <__moddi3+0x2f8>
+    50f2:	18 e0       	ldi	r17, 0x08	; 8
+    50f4:	e1 2e       	mov	r14, r17
+    50f6:	f1 2c       	mov	r15, r1
+    50f8:	01 2d       	mov	r16, r1
+    50fa:	11 2d       	mov	r17, r1
+    50fc:	18 c0       	rjmp	.+48     	; 0x512e <__moddi3+0x328>
+    50fe:	ee 24       	eor	r14, r14
+    5100:	ff 24       	eor	r15, r15
+    5102:	87 01       	movw	r16, r14
+    5104:	14 c0       	rjmp	.+40     	; 0x512e <__moddi3+0x328>
+    5106:	20 e0       	ldi	r18, 0x00	; 0
+    5108:	22 16       	cp	r2, r18
+    510a:	20 e0       	ldi	r18, 0x00	; 0
+    510c:	32 06       	cpc	r3, r18
+    510e:	20 e0       	ldi	r18, 0x00	; 0
+    5110:	42 06       	cpc	r4, r18
+    5112:	21 e0       	ldi	r18, 0x01	; 1
+    5114:	52 06       	cpc	r5, r18
+    5116:	30 f0       	brcs	.+12     	; 0x5124 <__moddi3+0x31e>
+    5118:	b8 e1       	ldi	r27, 0x18	; 24
+    511a:	eb 2e       	mov	r14, r27
+    511c:	f1 2c       	mov	r15, r1
+    511e:	01 2d       	mov	r16, r1
+    5120:	11 2d       	mov	r17, r1
+    5122:	05 c0       	rjmp	.+10     	; 0x512e <__moddi3+0x328>
+    5124:	a0 e1       	ldi	r26, 0x10	; 16
+    5126:	ea 2e       	mov	r14, r26
+    5128:	f1 2c       	mov	r15, r1
+    512a:	01 2d       	mov	r16, r1
+    512c:	11 2d       	mov	r17, r1
+    512e:	d2 01       	movw	r26, r4
+    5130:	c1 01       	movw	r24, r2
+    5132:	0e 2c       	mov	r0, r14
+    5134:	04 c0       	rjmp	.+8      	; 0x513e <__moddi3+0x338>
+    5136:	b6 95       	lsr	r27
+    5138:	a7 95       	ror	r26
+    513a:	97 95       	ror	r25
+    513c:	87 95       	ror	r24
     513e:	0a 94       	dec	r0
-    5140:	d2 f7       	brpl	.-12     	; 0x5136 <__moddi3+0x382>
-    5142:	a4 01       	movw	r20, r8
-    5144:	93 01       	movw	r18, r6
-    5146:	06 2e       	mov	r0, r22
-    5148:	04 c0       	rjmp	.+8      	; 0x5152 <__moddi3+0x39e>
-    514a:	22 0f       	add	r18, r18
-    514c:	33 1f       	adc	r19, r19
-    514e:	44 1f       	adc	r20, r20
-    5150:	55 1f       	adc	r21, r21
-    5152:	0a 94       	dec	r0
-    5154:	d2 f7       	brpl	.-12     	; 0x514a <__moddi3+0x396>
-    5156:	80 e2       	ldi	r24, 0x20	; 32
-    5158:	90 e0       	ldi	r25, 0x00	; 0
-    515a:	8a 19       	sub	r24, r10
-    515c:	9b 09       	sbc	r25, r11
-    515e:	e8 96       	adiw	r28, 0x38	; 56
-    5160:	cc ac       	ldd	r12, Y+60	; 0x3c
-    5162:	dd ac       	ldd	r13, Y+61	; 0x3d
-    5164:	ee ac       	ldd	r14, Y+62	; 0x3e
-    5166:	ff ac       	ldd	r15, Y+63	; 0x3f
-    5168:	e8 97       	sbiw	r28, 0x38	; 56
-    516a:	04 c0       	rjmp	.+8      	; 0x5174 <__moddi3+0x3c0>
-    516c:	f6 94       	lsr	r15
-    516e:	e7 94       	ror	r14
-    5170:	d7 94       	ror	r13
-    5172:	c7 94       	ror	r12
-    5174:	8a 95       	dec	r24
-    5176:	d2 f7       	brpl	.-12     	; 0x516c <__moddi3+0x3b8>
-    5178:	87 01       	movw	r16, r14
-    517a:	76 01       	movw	r14, r12
-    517c:	e2 2a       	or	r14, r18
-    517e:	f3 2a       	or	r15, r19
-    5180:	04 2b       	or	r16, r20
-    5182:	15 2b       	or	r17, r21
-    5184:	61 96       	adiw	r28, 0x11	; 17
-    5186:	ec ae       	std	Y+60, r14	; 0x3c
-    5188:	fd ae       	std	Y+61, r15	; 0x3d
-    518a:	0e af       	std	Y+62, r16	; 0x3e
-    518c:	1f af       	std	Y+63, r17	; 0x3f
-    518e:	61 97       	sbiw	r28, 0x11	; 17
-    5190:	e8 96       	adiw	r28, 0x38	; 56
-    5192:	0c ad       	ldd	r16, Y+60	; 0x3c
-    5194:	1d ad       	ldd	r17, Y+61	; 0x3d
-    5196:	2e ad       	ldd	r18, Y+62	; 0x3e
-    5198:	3f ad       	ldd	r19, Y+63	; 0x3f
-    519a:	e8 97       	sbiw	r28, 0x38	; 56
-    519c:	04 c0       	rjmp	.+8      	; 0x51a6 <__moddi3+0x3f2>
-    519e:	00 0f       	add	r16, r16
-    51a0:	11 1f       	adc	r17, r17
-    51a2:	22 1f       	adc	r18, r18
-    51a4:	33 1f       	adc	r19, r19
-    51a6:	6a 95       	dec	r22
-    51a8:	d2 f7       	brpl	.-12     	; 0x519e <__moddi3+0x3ea>
-    51aa:	2d 96       	adiw	r28, 0x0d	; 13
-    51ac:	0c af       	std	Y+60, r16	; 0x3c
-    51ae:	1d af       	std	Y+61, r17	; 0x3d
-    51b0:	2e af       	std	Y+62, r18	; 0x3e
-    51b2:	3f af       	std	Y+63, r19	; 0x3f
-    51b4:	2d 97       	sbiw	r28, 0x0d	; 13
-    51b6:	32 01       	movw	r6, r4
-    51b8:	88 24       	eor	r8, r8
-    51ba:	99 24       	eor	r9, r9
-    51bc:	a2 01       	movw	r20, r4
-    51be:	91 01       	movw	r18, r2
-    51c0:	40 70       	andi	r20, 0x00	; 0
-    51c2:	50 70       	andi	r21, 0x00	; 0
-    51c4:	69 96       	adiw	r28, 0x19	; 25
-    51c6:	2c af       	std	Y+60, r18	; 0x3c
-    51c8:	3d af       	std	Y+61, r19	; 0x3d
-    51ca:	4e af       	std	Y+62, r20	; 0x3e
-    51cc:	5f af       	std	Y+63, r21	; 0x3f
-    51ce:	69 97       	sbiw	r28, 0x19	; 25
-    51d0:	61 96       	adiw	r28, 0x11	; 17
-    51d2:	6c ad       	ldd	r22, Y+60	; 0x3c
-    51d4:	7d ad       	ldd	r23, Y+61	; 0x3d
-    51d6:	8e ad       	ldd	r24, Y+62	; 0x3e
-    51d8:	9f ad       	ldd	r25, Y+63	; 0x3f
-    51da:	61 97       	sbiw	r28, 0x11	; 17
-    51dc:	a4 01       	movw	r20, r8
-    51de:	93 01       	movw	r18, r6
-    51e0:	0e 94 74 32 	call	0x64e8	; 0x64e8 <__udivmodsi4>
-    51e4:	7b 01       	movw	r14, r22
-    51e6:	8c 01       	movw	r16, r24
-    51e8:	61 96       	adiw	r28, 0x11	; 17
-    51ea:	6c ad       	ldd	r22, Y+60	; 0x3c
-    51ec:	7d ad       	ldd	r23, Y+61	; 0x3d
-    51ee:	8e ad       	ldd	r24, Y+62	; 0x3e
-    51f0:	9f ad       	ldd	r25, Y+63	; 0x3f
-    51f2:	61 97       	sbiw	r28, 0x11	; 17
-    51f4:	a4 01       	movw	r20, r8
-    51f6:	93 01       	movw	r18, r6
-    51f8:	0e 94 74 32 	call	0x64e8	; 0x64e8 <__udivmodsi4>
-    51fc:	ca 01       	movw	r24, r20
-    51fe:	b9 01       	movw	r22, r18
-    5200:	69 96       	adiw	r28, 0x19	; 25
-    5202:	2c ad       	ldd	r18, Y+60	; 0x3c
-    5204:	3d ad       	ldd	r19, Y+61	; 0x3d
-    5206:	4e ad       	ldd	r20, Y+62	; 0x3e
-    5208:	5f ad       	ldd	r21, Y+63	; 0x3f
-    520a:	69 97       	sbiw	r28, 0x19	; 25
-    520c:	0e 94 41 32 	call	0x6482	; 0x6482 <__mulsi3>
-    5210:	9b 01       	movw	r18, r22
-    5212:	ac 01       	movw	r20, r24
-    5214:	87 01       	movw	r16, r14
-    5216:	ff 24       	eor	r15, r15
-    5218:	ee 24       	eor	r14, r14
-    521a:	2d 96       	adiw	r28, 0x0d	; 13
-    521c:	ac ac       	ldd	r10, Y+60	; 0x3c
-    521e:	bd ac       	ldd	r11, Y+61	; 0x3d
-    5220:	ce ac       	ldd	r12, Y+62	; 0x3e
-    5222:	df ac       	ldd	r13, Y+63	; 0x3f
-    5224:	2d 97       	sbiw	r28, 0x0d	; 13
-    5226:	c6 01       	movw	r24, r12
-    5228:	aa 27       	eor	r26, r26
-    522a:	bb 27       	eor	r27, r27
-    522c:	57 01       	movw	r10, r14
-    522e:	68 01       	movw	r12, r16
-    5230:	a8 2a       	or	r10, r24
-    5232:	b9 2a       	or	r11, r25
-    5234:	ca 2a       	or	r12, r26
-    5236:	db 2a       	or	r13, r27
-    5238:	a2 16       	cp	r10, r18
-    523a:	b3 06       	cpc	r11, r19
-    523c:	c4 06       	cpc	r12, r20
-    523e:	d5 06       	cpc	r13, r21
-    5240:	90 f4       	brcc	.+36     	; 0x5266 <__moddi3+0x4b2>
-    5242:	a2 0c       	add	r10, r2
-    5244:	b3 1c       	adc	r11, r3
-    5246:	c4 1c       	adc	r12, r4
-    5248:	d5 1c       	adc	r13, r5
-    524a:	a2 14       	cp	r10, r2
-    524c:	b3 04       	cpc	r11, r3
-    524e:	c4 04       	cpc	r12, r4
-    5250:	d5 04       	cpc	r13, r5
-    5252:	48 f0       	brcs	.+18     	; 0x5266 <__moddi3+0x4b2>
-    5254:	a2 16       	cp	r10, r18
-    5256:	b3 06       	cpc	r11, r19
-    5258:	c4 06       	cpc	r12, r20
-    525a:	d5 06       	cpc	r13, r21
-    525c:	20 f4       	brcc	.+8      	; 0x5266 <__moddi3+0x4b2>
-    525e:	a2 0c       	add	r10, r2
-    5260:	b3 1c       	adc	r11, r3
-    5262:	c4 1c       	adc	r12, r4
-    5264:	d5 1c       	adc	r13, r5
-    5266:	a2 1a       	sub	r10, r18
-    5268:	b3 0a       	sbc	r11, r19
-    526a:	c4 0a       	sbc	r12, r20
-    526c:	d5 0a       	sbc	r13, r21
-    526e:	c6 01       	movw	r24, r12
-    5270:	b5 01       	movw	r22, r10
-    5272:	a4 01       	movw	r20, r8
-    5274:	93 01       	movw	r18, r6
-    5276:	0e 94 74 32 	call	0x64e8	; 0x64e8 <__udivmodsi4>
-    527a:	7b 01       	movw	r14, r22
-    527c:	8c 01       	movw	r16, r24
-    527e:	c6 01       	movw	r24, r12
-    5280:	b5 01       	movw	r22, r10
-    5282:	a4 01       	movw	r20, r8
-    5284:	93 01       	movw	r18, r6
-    5286:	0e 94 74 32 	call	0x64e8	; 0x64e8 <__udivmodsi4>
-    528a:	ca 01       	movw	r24, r20
-    528c:	b9 01       	movw	r22, r18
-    528e:	69 96       	adiw	r28, 0x19	; 25
-    5290:	2c ad       	ldd	r18, Y+60	; 0x3c
-    5292:	3d ad       	ldd	r19, Y+61	; 0x3d
-    5294:	4e ad       	ldd	r20, Y+62	; 0x3e
-    5296:	5f ad       	ldd	r21, Y+63	; 0x3f
-    5298:	69 97       	sbiw	r28, 0x19	; 25
-    529a:	c8 c1       	rjmp	.+912    	; 0x562c <__moddi3+0x878>
-    529c:	21 14       	cp	r2, r1
-    529e:	31 04       	cpc	r3, r1
-    52a0:	41 04       	cpc	r4, r1
-    52a2:	51 04       	cpc	r5, r1
-    52a4:	71 f4       	brne	.+28     	; 0x52c2 <__moddi3+0x50e>
-    52a6:	61 e0       	ldi	r22, 0x01	; 1
-    52a8:	70 e0       	ldi	r23, 0x00	; 0
-    52aa:	80 e0       	ldi	r24, 0x00	; 0
-    52ac:	90 e0       	ldi	r25, 0x00	; 0
-    52ae:	20 e0       	ldi	r18, 0x00	; 0
-    52b0:	30 e0       	ldi	r19, 0x00	; 0
-    52b2:	40 e0       	ldi	r20, 0x00	; 0
-    52b4:	50 e0       	ldi	r21, 0x00	; 0
-    52b6:	0e 94 74 32 	call	0x64e8	; 0x64e8 <__udivmodsi4>
-    52ba:	c9 01       	movw	r24, r18
-    52bc:	da 01       	movw	r26, r20
-    52be:	1c 01       	movw	r2, r24
-    52c0:	2d 01       	movw	r4, r26
-    52c2:	00 e0       	ldi	r16, 0x00	; 0
-    52c4:	20 16       	cp	r2, r16
-    52c6:	00 e0       	ldi	r16, 0x00	; 0
-    52c8:	30 06       	cpc	r3, r16
-    52ca:	01 e0       	ldi	r16, 0x01	; 1
-    52cc:	40 06       	cpc	r4, r16
-    52ce:	00 e0       	ldi	r16, 0x00	; 0
-    52d0:	50 06       	cpc	r5, r16
-    52d2:	88 f4       	brcc	.+34     	; 0x52f6 <__moddi3+0x542>
-    52d4:	1f ef       	ldi	r17, 0xFF	; 255
-    52d6:	21 16       	cp	r2, r17
-    52d8:	31 04       	cpc	r3, r1
-    52da:	41 04       	cpc	r4, r1
-    52dc:	51 04       	cpc	r5, r1
-    52de:	39 f0       	breq	.+14     	; 0x52ee <__moddi3+0x53a>
-    52e0:	30 f0       	brcs	.+12     	; 0x52ee <__moddi3+0x53a>
-    52e2:	68 e0       	ldi	r22, 0x08	; 8
-    52e4:	e6 2e       	mov	r14, r22
-    52e6:	f1 2c       	mov	r15, r1
-    52e8:	01 2d       	mov	r16, r1
-    52ea:	11 2d       	mov	r17, r1
-    52ec:	18 c0       	rjmp	.+48     	; 0x531e <__moddi3+0x56a>
-    52ee:	ee 24       	eor	r14, r14
-    52f0:	ff 24       	eor	r15, r15
-    52f2:	87 01       	movw	r16, r14
-    52f4:	14 c0       	rjmp	.+40     	; 0x531e <__moddi3+0x56a>
-    52f6:	20 e0       	ldi	r18, 0x00	; 0
-    52f8:	22 16       	cp	r2, r18
-    52fa:	20 e0       	ldi	r18, 0x00	; 0
-    52fc:	32 06       	cpc	r3, r18
-    52fe:	20 e0       	ldi	r18, 0x00	; 0
-    5300:	42 06       	cpc	r4, r18
-    5302:	21 e0       	ldi	r18, 0x01	; 1
-    5304:	52 06       	cpc	r5, r18
-    5306:	30 f0       	brcs	.+12     	; 0x5314 <__moddi3+0x560>
-    5308:	58 e1       	ldi	r21, 0x18	; 24
-    530a:	e5 2e       	mov	r14, r21
-    530c:	f1 2c       	mov	r15, r1
-    530e:	01 2d       	mov	r16, r1
-    5310:	11 2d       	mov	r17, r1
-    5312:	05 c0       	rjmp	.+10     	; 0x531e <__moddi3+0x56a>
-    5314:	40 e1       	ldi	r20, 0x10	; 16
-    5316:	e4 2e       	mov	r14, r20
-    5318:	f1 2c       	mov	r15, r1
-    531a:	01 2d       	mov	r16, r1
-    531c:	11 2d       	mov	r17, r1
-    531e:	d2 01       	movw	r26, r4
-    5320:	c1 01       	movw	r24, r2
-    5322:	0e 2c       	mov	r0, r14
-    5324:	04 c0       	rjmp	.+8      	; 0x532e <__moddi3+0x57a>
-    5326:	b6 95       	lsr	r27
-    5328:	a7 95       	ror	r26
-    532a:	97 95       	ror	r25
-    532c:	87 95       	ror	r24
-    532e:	0a 94       	dec	r0
-    5330:	d2 f7       	brpl	.-12     	; 0x5326 <__moddi3+0x572>
-    5332:	89 59       	subi	r24, 0x99	; 153
-    5334:	9b 4f       	sbci	r25, 0xFB	; 251
-    5336:	dc 01       	movw	r26, r24
-    5338:	2c 91       	ld	r18, X
-    533a:	30 e2       	ldi	r19, 0x20	; 32
-    533c:	a3 2e       	mov	r10, r19
-    533e:	b1 2c       	mov	r11, r1
-    5340:	c1 2c       	mov	r12, r1
-    5342:	d1 2c       	mov	r13, r1
-    5344:	d6 01       	movw	r26, r12
-    5346:	c5 01       	movw	r24, r10
-    5348:	8e 19       	sub	r24, r14
-    534a:	9f 09       	sbc	r25, r15
-    534c:	a0 0b       	sbc	r26, r16
-    534e:	b1 0b       	sbc	r27, r17
-    5350:	7c 01       	movw	r14, r24
-    5352:	8d 01       	movw	r16, r26
-    5354:	e2 1a       	sub	r14, r18
-    5356:	f1 08       	sbc	r15, r1
-    5358:	01 09       	sbc	r16, r1
-    535a:	11 09       	sbc	r17, r1
-    535c:	65 96       	adiw	r28, 0x15	; 21
-    535e:	ec ae       	std	Y+60, r14	; 0x3c
-    5360:	fd ae       	std	Y+61, r15	; 0x3d
-    5362:	0e af       	std	Y+62, r16	; 0x3e
-    5364:	1f af       	std	Y+63, r17	; 0x3f
-    5366:	65 97       	sbiw	r28, 0x15	; 21
-    5368:	e1 14       	cp	r14, r1
-    536a:	f1 04       	cpc	r15, r1
-    536c:	01 05       	cpc	r16, r1
-    536e:	11 05       	cpc	r17, r1
-    5370:	39 f4       	brne	.+14     	; 0x5380 <__moddi3+0x5cc>
-    5372:	64 01       	movw	r12, r8
-    5374:	53 01       	movw	r10, r6
-    5376:	a2 18       	sub	r10, r2
-    5378:	b3 08       	sbc	r11, r3
-    537a:	c4 08       	sbc	r12, r4
-    537c:	d5 08       	sbc	r13, r5
-    537e:	ec c0       	rjmp	.+472    	; 0x5558 <__moddi3+0x7a4>
-    5380:	62 96       	adiw	r28, 0x12	; 18
-    5382:	ff ac       	ldd	r15, Y+63	; 0x3f
-    5384:	62 97       	sbiw	r28, 0x12	; 18
-    5386:	e4 96       	adiw	r28, 0x34	; 52
-    5388:	ff ae       	std	Y+63, r15	; 0x3f
-    538a:	e4 97       	sbiw	r28, 0x34	; 52
-    538c:	0f 2c       	mov	r0, r15
-    538e:	04 c0       	rjmp	.+8      	; 0x5398 <__moddi3+0x5e4>
-    5390:	22 0c       	add	r2, r2
-    5392:	33 1c       	adc	r3, r3
-    5394:	44 1c       	adc	r4, r4
-    5396:	55 1c       	adc	r5, r5
-    5398:	0a 94       	dec	r0
-    539a:	d2 f7       	brpl	.-12     	; 0x5390 <__moddi3+0x5dc>
-    539c:	8a 2d       	mov	r24, r10
-    539e:	8f 19       	sub	r24, r15
-    53a0:	64 01       	movw	r12, r8
-    53a2:	53 01       	movw	r10, r6
-    53a4:	08 2e       	mov	r0, r24
-    53a6:	04 c0       	rjmp	.+8      	; 0x53b0 <__moddi3+0x5fc>
-    53a8:	d6 94       	lsr	r13
-    53aa:	c7 94       	ror	r12
-    53ac:	b7 94       	ror	r11
-    53ae:	a7 94       	ror	r10
-    53b0:	0a 94       	dec	r0
-    53b2:	d2 f7       	brpl	.-12     	; 0x53a8 <__moddi3+0x5f4>
-    53b4:	a4 01       	movw	r20, r8
-    53b6:	93 01       	movw	r18, r6
-    53b8:	04 c0       	rjmp	.+8      	; 0x53c2 <__moddi3+0x60e>
-    53ba:	22 0f       	add	r18, r18
-    53bc:	33 1f       	adc	r19, r19
-    53be:	44 1f       	adc	r20, r20
-    53c0:	55 1f       	adc	r21, r21
-    53c2:	fa 94       	dec	r15
-    53c4:	d2 f7       	brpl	.-12     	; 0x53ba <__moddi3+0x606>
-    53c6:	e8 96       	adiw	r28, 0x38	; 56
-    53c8:	6c ac       	ldd	r6, Y+60	; 0x3c
-    53ca:	7d ac       	ldd	r7, Y+61	; 0x3d
-    53cc:	8e ac       	ldd	r8, Y+62	; 0x3e
-    53ce:	9f ac       	ldd	r9, Y+63	; 0x3f
-    53d0:	e8 97       	sbiw	r28, 0x38	; 56
-    53d2:	04 c0       	rjmp	.+8      	; 0x53dc <__moddi3+0x628>
-    53d4:	96 94       	lsr	r9
-    53d6:	87 94       	ror	r8
-    53d8:	77 94       	ror	r7
-    53da:	67 94       	ror	r6
-    53dc:	8a 95       	dec	r24
-    53de:	d2 f7       	brpl	.-12     	; 0x53d4 <__moddi3+0x620>
-    53e0:	84 01       	movw	r16, r8
-    53e2:	73 01       	movw	r14, r6
-    53e4:	e2 2a       	or	r14, r18
-    53e6:	f3 2a       	or	r15, r19
-    53e8:	04 2b       	or	r16, r20
-    53ea:	15 2b       	or	r17, r21
-    53ec:	29 96       	adiw	r28, 0x09	; 9
-    53ee:	ec ae       	std	Y+60, r14	; 0x3c
-    53f0:	fd ae       	std	Y+61, r15	; 0x3d
-    53f2:	0e af       	std	Y+62, r16	; 0x3e
-    53f4:	1f af       	std	Y+63, r17	; 0x3f
-    53f6:	29 97       	sbiw	r28, 0x09	; 9
-    53f8:	32 01       	movw	r6, r4
-    53fa:	88 24       	eor	r8, r8
-    53fc:	99 24       	eor	r9, r9
-    53fe:	92 01       	movw	r18, r4
-    5400:	81 01       	movw	r16, r2
-    5402:	20 70       	andi	r18, 0x00	; 0
-    5404:	30 70       	andi	r19, 0x00	; 0
-    5406:	6d 96       	adiw	r28, 0x1d	; 29
-    5408:	0c af       	std	Y+60, r16	; 0x3c
-    540a:	1d af       	std	Y+61, r17	; 0x3d
-    540c:	2e af       	std	Y+62, r18	; 0x3e
-    540e:	3f af       	std	Y+63, r19	; 0x3f
-    5410:	6d 97       	sbiw	r28, 0x1d	; 29
-    5412:	c6 01       	movw	r24, r12
-    5414:	b5 01       	movw	r22, r10
-    5416:	a4 01       	movw	r20, r8
-    5418:	93 01       	movw	r18, r6
-    541a:	0e 94 74 32 	call	0x64e8	; 0x64e8 <__udivmodsi4>
-    541e:	7b 01       	movw	r14, r22
-    5420:	8c 01       	movw	r16, r24
-    5422:	c6 01       	movw	r24, r12
-    5424:	b5 01       	movw	r22, r10
-    5426:	a4 01       	movw	r20, r8
-    5428:	93 01       	movw	r18, r6
-    542a:	0e 94 74 32 	call	0x64e8	; 0x64e8 <__udivmodsi4>
-    542e:	ca 01       	movw	r24, r20
-    5430:	b9 01       	movw	r22, r18
-    5432:	6d 96       	adiw	r28, 0x1d	; 29
-    5434:	2c ad       	ldd	r18, Y+60	; 0x3c
-    5436:	3d ad       	ldd	r19, Y+61	; 0x3d
-    5438:	4e ad       	ldd	r20, Y+62	; 0x3e
-    543a:	5f ad       	ldd	r21, Y+63	; 0x3f
-    543c:	6d 97       	sbiw	r28, 0x1d	; 29
-    543e:	0e 94 41 32 	call	0x6482	; 0x6482 <__mulsi3>
-    5442:	9b 01       	movw	r18, r22
-    5444:	ac 01       	movw	r20, r24
-    5446:	87 01       	movw	r16, r14
-    5448:	ff 24       	eor	r15, r15
-    544a:	ee 24       	eor	r14, r14
-    544c:	29 96       	adiw	r28, 0x09	; 9
-    544e:	ac ac       	ldd	r10, Y+60	; 0x3c
-    5450:	bd ac       	ldd	r11, Y+61	; 0x3d
-    5452:	ce ac       	ldd	r12, Y+62	; 0x3e
-    5454:	df ac       	ldd	r13, Y+63	; 0x3f
-    5456:	29 97       	sbiw	r28, 0x09	; 9
-    5458:	c6 01       	movw	r24, r12
-    545a:	aa 27       	eor	r26, r26
-    545c:	bb 27       	eor	r27, r27
-    545e:	5c 01       	movw	r10, r24
-    5460:	6d 01       	movw	r12, r26
-    5462:	ae 28       	or	r10, r14
-    5464:	bf 28       	or	r11, r15
-    5466:	c0 2a       	or	r12, r16
-    5468:	d1 2a       	or	r13, r17
-    546a:	a2 16       	cp	r10, r18
-    546c:	b3 06       	cpc	r11, r19
-    546e:	c4 06       	cpc	r12, r20
-    5470:	d5 06       	cpc	r13, r21
-    5472:	90 f4       	brcc	.+36     	; 0x5498 <__moddi3+0x6e4>
-    5474:	a2 0c       	add	r10, r2
-    5476:	b3 1c       	adc	r11, r3
-    5478:	c4 1c       	adc	r12, r4
-    547a:	d5 1c       	adc	r13, r5
-    547c:	a2 14       	cp	r10, r2
-    547e:	b3 04       	cpc	r11, r3
-    5480:	c4 04       	cpc	r12, r4
-    5482:	d5 04       	cpc	r13, r5
-    5484:	48 f0       	brcs	.+18     	; 0x5498 <__moddi3+0x6e4>
-    5486:	a2 16       	cp	r10, r18
-    5488:	b3 06       	cpc	r11, r19
-    548a:	c4 06       	cpc	r12, r20
-    548c:	d5 06       	cpc	r13, r21
-    548e:	20 f4       	brcc	.+8      	; 0x5498 <__moddi3+0x6e4>
-    5490:	a2 0c       	add	r10, r2
-    5492:	b3 1c       	adc	r11, r3
-    5494:	c4 1c       	adc	r12, r4
-    5496:	d5 1c       	adc	r13, r5
-    5498:	a2 1a       	sub	r10, r18
-    549a:	b3 0a       	sbc	r11, r19
-    549c:	c4 0a       	sbc	r12, r20
-    549e:	d5 0a       	sbc	r13, r21
-    54a0:	c6 01       	movw	r24, r12
-    54a2:	b5 01       	movw	r22, r10
-    54a4:	a4 01       	movw	r20, r8
-    54a6:	93 01       	movw	r18, r6
-    54a8:	0e 94 74 32 	call	0x64e8	; 0x64e8 <__udivmodsi4>
-    54ac:	7b 01       	movw	r14, r22
-    54ae:	8c 01       	movw	r16, r24
-    54b0:	c6 01       	movw	r24, r12
-    54b2:	b5 01       	movw	r22, r10
-    54b4:	a4 01       	movw	r20, r8
-    54b6:	93 01       	movw	r18, r6
-    54b8:	0e 94 74 32 	call	0x64e8	; 0x64e8 <__udivmodsi4>
-    54bc:	ca 01       	movw	r24, r20
-    54be:	b9 01       	movw	r22, r18
-    54c0:	6d 96       	adiw	r28, 0x1d	; 29
-    54c2:	2c ad       	ldd	r18, Y+60	; 0x3c
-    54c4:	3d ad       	ldd	r19, Y+61	; 0x3d
-    54c6:	4e ad       	ldd	r20, Y+62	; 0x3e
-    54c8:	5f ad       	ldd	r21, Y+63	; 0x3f
-    54ca:	6d 97       	sbiw	r28, 0x1d	; 29
-    54cc:	0e 94 41 32 	call	0x6482	; 0x6482 <__mulsi3>
-    54d0:	9b 01       	movw	r18, r22
-    54d2:	ac 01       	movw	r20, r24
-    54d4:	87 01       	movw	r16, r14
-    54d6:	ff 24       	eor	r15, r15
-    54d8:	ee 24       	eor	r14, r14
-    54da:	29 96       	adiw	r28, 0x09	; 9
-    54dc:	8c ad       	ldd	r24, Y+60	; 0x3c
-    54de:	9d ad       	ldd	r25, Y+61	; 0x3d
-    54e0:	ae ad       	ldd	r26, Y+62	; 0x3e
-    54e2:	bf ad       	ldd	r27, Y+63	; 0x3f
-    54e4:	29 97       	sbiw	r28, 0x09	; 9
-    54e6:	a0 70       	andi	r26, 0x00	; 0
-    54e8:	b0 70       	andi	r27, 0x00	; 0
-    54ea:	57 01       	movw	r10, r14
-    54ec:	68 01       	movw	r12, r16
-    54ee:	a8 2a       	or	r10, r24
-    54f0:	b9 2a       	or	r11, r25
-    54f2:	ca 2a       	or	r12, r26
-    54f4:	db 2a       	or	r13, r27
-    54f6:	a2 16       	cp	r10, r18
-    54f8:	b3 06       	cpc	r11, r19
-    54fa:	c4 06       	cpc	r12, r20
-    54fc:	d5 06       	cpc	r13, r21
-    54fe:	90 f4       	brcc	.+36     	; 0x5524 <__moddi3+0x770>
-    5500:	a2 0c       	add	r10, r2
-    5502:	b3 1c       	adc	r11, r3
-    5504:	c4 1c       	adc	r12, r4
-    5506:	d5 1c       	adc	r13, r5
-    5508:	a2 14       	cp	r10, r2
-    550a:	b3 04       	cpc	r11, r3
-    550c:	c4 04       	cpc	r12, r4
-    550e:	d5 04       	cpc	r13, r5
-    5510:	48 f0       	brcs	.+18     	; 0x5524 <__moddi3+0x770>
-    5512:	a2 16       	cp	r10, r18
-    5514:	b3 06       	cpc	r11, r19
-    5516:	c4 06       	cpc	r12, r20
-    5518:	d5 06       	cpc	r13, r21
-    551a:	20 f4       	brcc	.+8      	; 0x5524 <__moddi3+0x770>
-    551c:	a2 0c       	add	r10, r2
-    551e:	b3 1c       	adc	r11, r3
-    5520:	c4 1c       	adc	r12, r4
-    5522:	d5 1c       	adc	r13, r5
-    5524:	e8 96       	adiw	r28, 0x38	; 56
-    5526:	ec ac       	ldd	r14, Y+60	; 0x3c
-    5528:	fd ac       	ldd	r15, Y+61	; 0x3d
-    552a:	0e ad       	ldd	r16, Y+62	; 0x3e
-    552c:	1f ad       	ldd	r17, Y+63	; 0x3f
-    552e:	e8 97       	sbiw	r28, 0x38	; 56
-    5530:	e4 96       	adiw	r28, 0x34	; 52
-    5532:	0f ac       	ldd	r0, Y+63	; 0x3f
-    5534:	e4 97       	sbiw	r28, 0x34	; 52
-    5536:	04 c0       	rjmp	.+8      	; 0x5540 <__moddi3+0x78c>
-    5538:	ee 0c       	add	r14, r14
-    553a:	ff 1c       	adc	r15, r15
-    553c:	00 1f       	adc	r16, r16
-    553e:	11 1f       	adc	r17, r17
-    5540:	0a 94       	dec	r0
-    5542:	d2 f7       	brpl	.-12     	; 0x5538 <__moddi3+0x784>
-    5544:	2d 96       	adiw	r28, 0x0d	; 13
-    5546:	ec ae       	std	Y+60, r14	; 0x3c
-    5548:	fd ae       	std	Y+61, r15	; 0x3d
-    554a:	0e af       	std	Y+62, r16	; 0x3e
-    554c:	1f af       	std	Y+63, r17	; 0x3f
-    554e:	2d 97       	sbiw	r28, 0x0d	; 13
-    5550:	a2 1a       	sub	r10, r18
-    5552:	b3 0a       	sbc	r11, r19
-    5554:	c4 0a       	sbc	r12, r20
-    5556:	d5 0a       	sbc	r13, r21
-    5558:	32 01       	movw	r6, r4
-    555a:	88 24       	eor	r8, r8
-    555c:	99 24       	eor	r9, r9
-    555e:	92 01       	movw	r18, r4
-    5560:	81 01       	movw	r16, r2
-    5562:	20 70       	andi	r18, 0x00	; 0
-    5564:	30 70       	andi	r19, 0x00	; 0
-    5566:	a1 96       	adiw	r28, 0x21	; 33
-    5568:	0c af       	std	Y+60, r16	; 0x3c
-    556a:	1d af       	std	Y+61, r17	; 0x3d
-    556c:	2e af       	std	Y+62, r18	; 0x3e
-    556e:	3f af       	std	Y+63, r19	; 0x3f
-    5570:	a1 97       	sbiw	r28, 0x21	; 33
-    5572:	c6 01       	movw	r24, r12
-    5574:	b5 01       	movw	r22, r10
-    5576:	a4 01       	movw	r20, r8
-    5578:	93 01       	movw	r18, r6
-    557a:	0e 94 74 32 	call	0x64e8	; 0x64e8 <__udivmodsi4>
-    557e:	7b 01       	movw	r14, r22
-    5580:	8c 01       	movw	r16, r24
-    5582:	c6 01       	movw	r24, r12
-    5584:	b5 01       	movw	r22, r10
-    5586:	a4 01       	movw	r20, r8
-    5588:	93 01       	movw	r18, r6
-    558a:	0e 94 74 32 	call	0x64e8	; 0x64e8 <__udivmodsi4>
-    558e:	ca 01       	movw	r24, r20
-    5590:	b9 01       	movw	r22, r18
-    5592:	a1 96       	adiw	r28, 0x21	; 33
-    5594:	2c ad       	ldd	r18, Y+60	; 0x3c
-    5596:	3d ad       	ldd	r19, Y+61	; 0x3d
-    5598:	4e ad       	ldd	r20, Y+62	; 0x3e
-    559a:	5f ad       	ldd	r21, Y+63	; 0x3f
-    559c:	a1 97       	sbiw	r28, 0x21	; 33
-    559e:	0e 94 41 32 	call	0x6482	; 0x6482 <__mulsi3>
-    55a2:	9b 01       	movw	r18, r22
-    55a4:	ac 01       	movw	r20, r24
-    55a6:	87 01       	movw	r16, r14
-    55a8:	ff 24       	eor	r15, r15
-    55aa:	ee 24       	eor	r14, r14
-    55ac:	2d 96       	adiw	r28, 0x0d	; 13
-    55ae:	ac ac       	ldd	r10, Y+60	; 0x3c
-    55b0:	bd ac       	ldd	r11, Y+61	; 0x3d
-    55b2:	ce ac       	ldd	r12, Y+62	; 0x3e
-    55b4:	df ac       	ldd	r13, Y+63	; 0x3f
-    55b6:	2d 97       	sbiw	r28, 0x0d	; 13
-    55b8:	c6 01       	movw	r24, r12
-    55ba:	aa 27       	eor	r26, r26
-    55bc:	bb 27       	eor	r27, r27
-    55be:	57 01       	movw	r10, r14
-    55c0:	68 01       	movw	r12, r16
-    55c2:	a8 2a       	or	r10, r24
-    55c4:	b9 2a       	or	r11, r25
-    55c6:	ca 2a       	or	r12, r26
-    55c8:	db 2a       	or	r13, r27
-    55ca:	a2 16       	cp	r10, r18
-    55cc:	b3 06       	cpc	r11, r19
-    55ce:	c4 06       	cpc	r12, r20
-    55d0:	d5 06       	cpc	r13, r21
-    55d2:	90 f4       	brcc	.+36     	; 0x55f8 <__moddi3+0x844>
-    55d4:	a2 0c       	add	r10, r2
-    55d6:	b3 1c       	adc	r11, r3
-    55d8:	c4 1c       	adc	r12, r4
-    55da:	d5 1c       	adc	r13, r5
-    55dc:	a2 14       	cp	r10, r2
-    55de:	b3 04       	cpc	r11, r3
-    55e0:	c4 04       	cpc	r12, r4
-    55e2:	d5 04       	cpc	r13, r5
-    55e4:	48 f0       	brcs	.+18     	; 0x55f8 <__moddi3+0x844>
-    55e6:	a2 16       	cp	r10, r18
-    55e8:	b3 06       	cpc	r11, r19
-    55ea:	c4 06       	cpc	r12, r20
-    55ec:	d5 06       	cpc	r13, r21
-    55ee:	20 f4       	brcc	.+8      	; 0x55f8 <__moddi3+0x844>
-    55f0:	a2 0c       	add	r10, r2
-    55f2:	b3 1c       	adc	r11, r3
-    55f4:	c4 1c       	adc	r12, r4
-    55f6:	d5 1c       	adc	r13, r5
-    55f8:	a2 1a       	sub	r10, r18
-    55fa:	b3 0a       	sbc	r11, r19
-    55fc:	c4 0a       	sbc	r12, r20
-    55fe:	d5 0a       	sbc	r13, r21
-    5600:	c6 01       	movw	r24, r12
-    5602:	b5 01       	movw	r22, r10
-    5604:	a4 01       	movw	r20, r8
-    5606:	93 01       	movw	r18, r6
-    5608:	0e 94 74 32 	call	0x64e8	; 0x64e8 <__udivmodsi4>
-    560c:	7b 01       	movw	r14, r22
-    560e:	8c 01       	movw	r16, r24
-    5610:	c6 01       	movw	r24, r12
-    5612:	b5 01       	movw	r22, r10
-    5614:	a4 01       	movw	r20, r8
-    5616:	93 01       	movw	r18, r6
-    5618:	0e 94 74 32 	call	0x64e8	; 0x64e8 <__udivmodsi4>
-    561c:	ca 01       	movw	r24, r20
-    561e:	b9 01       	movw	r22, r18
-    5620:	a1 96       	adiw	r28, 0x21	; 33
-    5622:	2c ad       	ldd	r18, Y+60	; 0x3c
-    5624:	3d ad       	ldd	r19, Y+61	; 0x3d
-    5626:	4e ad       	ldd	r20, Y+62	; 0x3e
-    5628:	5f ad       	ldd	r21, Y+63	; 0x3f
-    562a:	a1 97       	sbiw	r28, 0x21	; 33
-    562c:	0e 94 41 32 	call	0x6482	; 0x6482 <__mulsi3>
-    5630:	9b 01       	movw	r18, r22
-    5632:	ac 01       	movw	r20, r24
-    5634:	87 01       	movw	r16, r14
-    5636:	ff 24       	eor	r15, r15
-    5638:	ee 24       	eor	r14, r14
-    563a:	2d 96       	adiw	r28, 0x0d	; 13
-    563c:	8c ad       	ldd	r24, Y+60	; 0x3c
-    563e:	9d ad       	ldd	r25, Y+61	; 0x3d
-    5640:	ae ad       	ldd	r26, Y+62	; 0x3e
-    5642:	bf ad       	ldd	r27, Y+63	; 0x3f
-    5644:	2d 97       	sbiw	r28, 0x0d	; 13
-    5646:	a0 70       	andi	r26, 0x00	; 0
-    5648:	b0 70       	andi	r27, 0x00	; 0
-    564a:	e8 2a       	or	r14, r24
-    564c:	f9 2a       	or	r15, r25
-    564e:	0a 2b       	or	r16, r26
-    5650:	1b 2b       	or	r17, r27
-    5652:	e2 16       	cp	r14, r18
-    5654:	f3 06       	cpc	r15, r19
-    5656:	04 07       	cpc	r16, r20
-    5658:	15 07       	cpc	r17, r21
-    565a:	90 f4       	brcc	.+36     	; 0x5680 <__moddi3+0x8cc>
-    565c:	e2 0c       	add	r14, r2
-    565e:	f3 1c       	adc	r15, r3
-    5660:	04 1d       	adc	r16, r4
-    5662:	15 1d       	adc	r17, r5
-    5664:	e2 14       	cp	r14, r2
-    5666:	f3 04       	cpc	r15, r3
-    5668:	04 05       	cpc	r16, r4
-    566a:	15 05       	cpc	r17, r5
-    566c:	48 f0       	brcs	.+18     	; 0x5680 <__moddi3+0x8cc>
-    566e:	e2 16       	cp	r14, r18
-    5670:	f3 06       	cpc	r15, r19
-    5672:	04 07       	cpc	r16, r20
-    5674:	15 07       	cpc	r17, r21
-    5676:	20 f4       	brcc	.+8      	; 0x5680 <__moddi3+0x8cc>
-    5678:	e2 0c       	add	r14, r2
-    567a:	f3 1c       	adc	r15, r3
-    567c:	04 1d       	adc	r16, r4
-    567e:	15 1d       	adc	r17, r5
-    5680:	e2 1a       	sub	r14, r18
-    5682:	f3 0a       	sbc	r15, r19
-    5684:	04 0b       	sbc	r16, r20
-    5686:	15 0b       	sbc	r17, r21
-    5688:	d8 01       	movw	r26, r16
-    568a:	c7 01       	movw	r24, r14
-    568c:	62 96       	adiw	r28, 0x12	; 18
-    568e:	0f ac       	ldd	r0, Y+63	; 0x3f
-    5690:	62 97       	sbiw	r28, 0x12	; 18
-    5692:	04 c0       	rjmp	.+8      	; 0x569c <__moddi3+0x8e8>
-    5694:	b6 95       	lsr	r27
-    5696:	a7 95       	ror	r26
-    5698:	97 95       	ror	r25
-    569a:	87 95       	ror	r24
-    569c:	0a 94       	dec	r0
-    569e:	d2 f7       	brpl	.-12     	; 0x5694 <__moddi3+0x8e0>
-    56a0:	89 a7       	std	Y+41, r24	; 0x29
-    56a2:	9a a7       	std	Y+42, r25	; 0x2a
-    56a4:	ab a7       	std	Y+43, r26	; 0x2b
-    56a6:	bc a7       	std	Y+44, r27	; 0x2c
-    56a8:	1d a6       	std	Y+45, r1	; 0x2d
-    56aa:	1e a6       	std	Y+46, r1	; 0x2e
-    56ac:	1f a6       	std	Y+47, r1	; 0x2f
-    56ae:	18 aa       	std	Y+48, r1	; 0x30
-    56b0:	89 8b       	std	Y+17, r24	; 0x11
-    56b2:	8a a5       	ldd	r24, Y+42	; 0x2a
-    56b4:	8a 8b       	std	Y+18, r24	; 0x12
-    56b6:	8b a5       	ldd	r24, Y+43	; 0x2b
-    56b8:	8b 8b       	std	Y+19, r24	; 0x13
-    56ba:	8c a5       	ldd	r24, Y+44	; 0x2c
-    56bc:	8c 8b       	std	Y+20, r24	; 0x14
-    56be:	8d a5       	ldd	r24, Y+45	; 0x2d
-    56c0:	8d 8b       	std	Y+21, r24	; 0x15
-    56c2:	2f c3       	rjmp	.+1630   	; 0x5d22 <__moddi3+0xf6e>
-    56c4:	6a 14       	cp	r6, r10
-    56c6:	7b 04       	cpc	r7, r11
-    56c8:	8c 04       	cpc	r8, r12
-    56ca:	9d 04       	cpc	r9, r13
-    56cc:	48 f4       	brcc	.+18     	; 0x56e0 <__moddi3+0x92c>
-    56ce:	49 8b       	std	Y+17, r20	; 0x11
-    56d0:	5a 8b       	std	Y+18, r21	; 0x12
-    56d2:	6b 8b       	std	Y+19, r22	; 0x13
-    56d4:	7c 8b       	std	Y+20, r23	; 0x14
-    56d6:	8d 8b       	std	Y+21, r24	; 0x15
-    56d8:	9e 8b       	std	Y+22, r25	; 0x16
-    56da:	2f 8b       	std	Y+23, r18	; 0x17
-    56dc:	38 8f       	std	Y+24, r19	; 0x18
-    56de:	27 c3       	rjmp	.+1614   	; 0x5d2e <__moddi3+0xf7a>
-    56e0:	00 e0       	ldi	r16, 0x00	; 0
-    56e2:	a0 16       	cp	r10, r16
-    56e4:	00 e0       	ldi	r16, 0x00	; 0
-    56e6:	b0 06       	cpc	r11, r16
-    56e8:	01 e0       	ldi	r16, 0x01	; 1
-    56ea:	c0 06       	cpc	r12, r16
-    56ec:	00 e0       	ldi	r16, 0x00	; 0
-    56ee:	d0 06       	cpc	r13, r16
-    56f0:	88 f4       	brcc	.+34     	; 0x5714 <__moddi3+0x960>
-    56f2:	1f ef       	ldi	r17, 0xFF	; 255
-    56f4:	a1 16       	cp	r10, r17
-    56f6:	b1 04       	cpc	r11, r1
-    56f8:	c1 04       	cpc	r12, r1
-    56fa:	d1 04       	cpc	r13, r1
-    56fc:	39 f0       	breq	.+14     	; 0x570c <__moddi3+0x958>
-    56fe:	30 f0       	brcs	.+12     	; 0x570c <__moddi3+0x958>
-    5700:	98 e0       	ldi	r25, 0x08	; 8
-    5702:	e9 2e       	mov	r14, r25
-    5704:	f1 2c       	mov	r15, r1
-    5706:	01 2d       	mov	r16, r1
-    5708:	11 2d       	mov	r17, r1
-    570a:	18 c0       	rjmp	.+48     	; 0x573c <__moddi3+0x988>
-    570c:	ee 24       	eor	r14, r14
-    570e:	ff 24       	eor	r15, r15
-    5710:	87 01       	movw	r16, r14
-    5712:	14 c0       	rjmp	.+40     	; 0x573c <__moddi3+0x988>
-    5714:	20 e0       	ldi	r18, 0x00	; 0
-    5716:	a2 16       	cp	r10, r18
-    5718:	20 e0       	ldi	r18, 0x00	; 0
-    571a:	b2 06       	cpc	r11, r18
-    571c:	20 e0       	ldi	r18, 0x00	; 0
-    571e:	c2 06       	cpc	r12, r18
-    5720:	21 e0       	ldi	r18, 0x01	; 1
-    5722:	d2 06       	cpc	r13, r18
-    5724:	30 f0       	brcs	.+12     	; 0x5732 <__moddi3+0x97e>
-    5726:	88 e1       	ldi	r24, 0x18	; 24
-    5728:	e8 2e       	mov	r14, r24
-    572a:	f1 2c       	mov	r15, r1
-    572c:	01 2d       	mov	r16, r1
-    572e:	11 2d       	mov	r17, r1
-    5730:	05 c0       	rjmp	.+10     	; 0x573c <__moddi3+0x988>
-    5732:	00 e1       	ldi	r16, 0x10	; 16
-    5734:	e0 2e       	mov	r14, r16
-    5736:	f1 2c       	mov	r15, r1
-    5738:	01 2d       	mov	r16, r1
-    573a:	11 2d       	mov	r17, r1
-    573c:	d6 01       	movw	r26, r12
-    573e:	c5 01       	movw	r24, r10
-    5740:	0e 2c       	mov	r0, r14
-    5742:	04 c0       	rjmp	.+8      	; 0x574c <__moddi3+0x998>
-    5744:	b6 95       	lsr	r27
-    5746:	a7 95       	ror	r26
-    5748:	97 95       	ror	r25
-    574a:	87 95       	ror	r24
-    574c:	0a 94       	dec	r0
-    574e:	d2 f7       	brpl	.-12     	; 0x5744 <__moddi3+0x990>
-    5750:	89 59       	subi	r24, 0x99	; 153
-    5752:	9b 4f       	sbci	r25, 0xFB	; 251
-    5754:	dc 01       	movw	r26, r24
-    5756:	2c 91       	ld	r18, X
-    5758:	80 e2       	ldi	r24, 0x20	; 32
-    575a:	90 e0       	ldi	r25, 0x00	; 0
-    575c:	a0 e0       	ldi	r26, 0x00	; 0
-    575e:	b0 e0       	ldi	r27, 0x00	; 0
-    5760:	8e 19       	sub	r24, r14
-    5762:	9f 09       	sbc	r25, r15
-    5764:	a0 0b       	sbc	r26, r16
-    5766:	b1 0b       	sbc	r27, r17
-    5768:	82 1b       	sub	r24, r18
-    576a:	91 09       	sbc	r25, r1
-    576c:	a1 09       	sbc	r26, r1
-    576e:	b1 09       	sbc	r27, r1
-    5770:	00 97       	sbiw	r24, 0x00	; 0
-    5772:	a1 05       	cpc	r26, r1
-    5774:	b1 05       	cpc	r27, r1
-    5776:	09 f0       	breq	.+2      	; 0x577a <__moddi3+0x9c6>
-    5778:	59 c0       	rjmp	.+178    	; 0x582c <__moddi3+0xa78>
-    577a:	a6 14       	cp	r10, r6
-    577c:	b7 04       	cpc	r11, r7
-    577e:	c8 04       	cpc	r12, r8
-    5780:	d9 04       	cpc	r13, r9
-    5782:	70 f0       	brcs	.+28     	; 0x57a0 <__moddi3+0x9ec>
-    5784:	e8 96       	adiw	r28, 0x38	; 56
-    5786:	ec ac       	ldd	r14, Y+60	; 0x3c
-    5788:	fd ac       	ldd	r15, Y+61	; 0x3d
-    578a:	0e ad       	ldd	r16, Y+62	; 0x3e
-    578c:	1f ad       	ldd	r17, Y+63	; 0x3f
-    578e:	e8 97       	sbiw	r28, 0x38	; 56
-    5790:	e2 14       	cp	r14, r2
-    5792:	f3 04       	cpc	r15, r3
-    5794:	04 05       	cpc	r16, r4
-    5796:	15 05       	cpc	r17, r5
-    5798:	18 f4       	brcc	.+6      	; 0x57a0 <__moddi3+0x9ec>
-    579a:	d8 01       	movw	r26, r16
-    579c:	c7 01       	movw	r24, r14
-    579e:	2f c0       	rjmp	.+94     	; 0x57fe <__moddi3+0xa4a>
-    57a0:	e8 96       	adiw	r28, 0x38	; 56
-    57a2:	8c ad       	ldd	r24, Y+60	; 0x3c
-    57a4:	9d ad       	ldd	r25, Y+61	; 0x3d
-    57a6:	ae ad       	ldd	r26, Y+62	; 0x3e
-    57a8:	bf ad       	ldd	r27, Y+63	; 0x3f
-    57aa:	e8 97       	sbiw	r28, 0x38	; 56
-    57ac:	82 19       	sub	r24, r2
-    57ae:	93 09       	sbc	r25, r3
-    57b0:	a4 09       	sbc	r26, r4
-    57b2:	b5 09       	sbc	r27, r5
-    57b4:	a4 01       	movw	r20, r8
-    57b6:	93 01       	movw	r18, r6
-    57b8:	2a 19       	sub	r18, r10
-    57ba:	3b 09       	sbc	r19, r11
-    57bc:	4c 09       	sbc	r20, r12
-    57be:	5d 09       	sbc	r21, r13
-    57c0:	aa 24       	eor	r10, r10
-    57c2:	bb 24       	eor	r11, r11
-    57c4:	65 01       	movw	r12, r10
-    57c6:	e8 96       	adiw	r28, 0x38	; 56
-    57c8:	6c ac       	ldd	r6, Y+60	; 0x3c
-    57ca:	7d ac       	ldd	r7, Y+61	; 0x3d
-    57cc:	8e ac       	ldd	r8, Y+62	; 0x3e
-    57ce:	9f ac       	ldd	r9, Y+63	; 0x3f
-    57d0:	e8 97       	sbiw	r28, 0x38	; 56
-    57d2:	68 16       	cp	r6, r24
-    57d4:	79 06       	cpc	r7, r25
-    57d6:	8a 06       	cpc	r8, r26
-    57d8:	9b 06       	cpc	r9, r27
-    57da:	28 f4       	brcc	.+10     	; 0x57e6 <__moddi3+0xa32>
-    57dc:	11 e0       	ldi	r17, 0x01	; 1
-    57de:	a1 2e       	mov	r10, r17
-    57e0:	b1 2c       	mov	r11, r1
-    57e2:	c1 2c       	mov	r12, r1
-    57e4:	d1 2c       	mov	r13, r1
-    57e6:	79 01       	movw	r14, r18
-    57e8:	8a 01       	movw	r16, r20
-    57ea:	ea 18       	sub	r14, r10
-    57ec:	fb 08       	sbc	r15, r11
-    57ee:	0c 09       	sbc	r16, r12
-    57f0:	1d 09       	sbc	r17, r13
-    57f2:	61 96       	adiw	r28, 0x11	; 17
-    57f4:	ec ae       	std	Y+60, r14	; 0x3c
-    57f6:	fd ae       	std	Y+61, r15	; 0x3d
-    57f8:	0e af       	std	Y+62, r16	; 0x3e
-    57fa:	1f af       	std	Y+63, r17	; 0x3f
-    57fc:	61 97       	sbiw	r28, 0x11	; 17
-    57fe:	89 a7       	std	Y+41, r24	; 0x29
-    5800:	9a a7       	std	Y+42, r25	; 0x2a
-    5802:	ab a7       	std	Y+43, r26	; 0x2b
-    5804:	bc a7       	std	Y+44, r27	; 0x2c
-    5806:	61 96       	adiw	r28, 0x11	; 17
-    5808:	0c ad       	ldd	r16, Y+60	; 0x3c
-    580a:	1d ad       	ldd	r17, Y+61	; 0x3d
-    580c:	2e ad       	ldd	r18, Y+62	; 0x3e
-    580e:	3f ad       	ldd	r19, Y+63	; 0x3f
-    5810:	61 97       	sbiw	r28, 0x11	; 17
-    5812:	0d a7       	std	Y+45, r16	; 0x2d
-    5814:	1e a7       	std	Y+46, r17	; 0x2e
-    5816:	2f a7       	std	Y+47, r18	; 0x2f
-    5818:	38 ab       	std	Y+48, r19	; 0x30
-    581a:	89 8b       	std	Y+17, r24	; 0x11
-    581c:	8a a5       	ldd	r24, Y+42	; 0x2a
-    581e:	8a 8b       	std	Y+18, r24	; 0x12
-    5820:	8b a5       	ldd	r24, Y+43	; 0x2b
-    5822:	8b 8b       	std	Y+19, r24	; 0x13
-    5824:	8c a5       	ldd	r24, Y+44	; 0x2c
-    5826:	8c 8b       	std	Y+20, r24	; 0x14
-    5828:	0d 8b       	std	Y+21, r16	; 0x15
-    582a:	7b c2       	rjmp	.+1270   	; 0x5d22 <__moddi3+0xf6e>
-    582c:	e3 96       	adiw	r28, 0x33	; 51
-    582e:	8f af       	std	Y+63, r24	; 0x3f
-    5830:	e3 97       	sbiw	r28, 0x33	; 51
-    5832:	a6 01       	movw	r20, r12
-    5834:	95 01       	movw	r18, r10
-    5836:	08 2e       	mov	r0, r24
-    5838:	04 c0       	rjmp	.+8      	; 0x5842 <__moddi3+0xa8e>
-    583a:	22 0f       	add	r18, r18
-    583c:	33 1f       	adc	r19, r19
-    583e:	44 1f       	adc	r20, r20
-    5840:	55 1f       	adc	r21, r21
-    5842:	0a 94       	dec	r0
-    5844:	d2 f7       	brpl	.-12     	; 0x583a <__moddi3+0xa86>
-    5846:	10 e2       	ldi	r17, 0x20	; 32
-    5848:	18 1b       	sub	r17, r24
-    584a:	e2 96       	adiw	r28, 0x32	; 50
+    5140:	d2 f7       	brpl	.-12     	; 0x5136 <__moddi3+0x330>
+    5142:	88 5a       	subi	r24, 0xA8	; 168
+    5144:	9b 4f       	sbci	r25, 0xFB	; 251
+    5146:	dc 01       	movw	r26, r24
+    5148:	2c 91       	ld	r18, X
+    514a:	80 e2       	ldi	r24, 0x20	; 32
+    514c:	90 e0       	ldi	r25, 0x00	; 0
+    514e:	a0 e0       	ldi	r26, 0x00	; 0
+    5150:	b0 e0       	ldi	r27, 0x00	; 0
+    5152:	8e 19       	sub	r24, r14
+    5154:	9f 09       	sbc	r25, r15
+    5156:	a0 0b       	sbc	r26, r16
+    5158:	b1 0b       	sbc	r27, r17
+    515a:	5c 01       	movw	r10, r24
+    515c:	6d 01       	movw	r12, r26
+    515e:	a2 1a       	sub	r10, r18
+    5160:	b1 08       	sbc	r11, r1
+    5162:	c1 08       	sbc	r12, r1
+    5164:	d1 08       	sbc	r13, r1
+    5166:	65 96       	adiw	r28, 0x15	; 21
+    5168:	ac ae       	std	Y+60, r10	; 0x3c
+    516a:	bd ae       	std	Y+61, r11	; 0x3d
+    516c:	ce ae       	std	Y+62, r12	; 0x3e
+    516e:	df ae       	std	Y+63, r13	; 0x3f
+    5170:	65 97       	sbiw	r28, 0x15	; 21
+    5172:	a1 14       	cp	r10, r1
+    5174:	b1 04       	cpc	r11, r1
+    5176:	c1 04       	cpc	r12, r1
+    5178:	d1 04       	cpc	r13, r1
+    517a:	09 f4       	brne	.+2      	; 0x517e <__moddi3+0x378>
+    517c:	45 c0       	rjmp	.+138    	; 0x5208 <__moddi3+0x402>
+    517e:	62 96       	adiw	r28, 0x12	; 18
+    5180:	6f ad       	ldd	r22, Y+63	; 0x3f
+    5182:	62 97       	sbiw	r28, 0x12	; 18
+    5184:	06 2e       	mov	r0, r22
+    5186:	04 c0       	rjmp	.+8      	; 0x5190 <__moddi3+0x38a>
+    5188:	22 0c       	add	r2, r2
+    518a:	33 1c       	adc	r3, r3
+    518c:	44 1c       	adc	r4, r4
+    518e:	55 1c       	adc	r5, r5
+    5190:	0a 94       	dec	r0
+    5192:	d2 f7       	brpl	.-12     	; 0x5188 <__moddi3+0x382>
+    5194:	a4 01       	movw	r20, r8
+    5196:	93 01       	movw	r18, r6
+    5198:	06 2e       	mov	r0, r22
+    519a:	04 c0       	rjmp	.+8      	; 0x51a4 <__moddi3+0x39e>
+    519c:	22 0f       	add	r18, r18
+    519e:	33 1f       	adc	r19, r19
+    51a0:	44 1f       	adc	r20, r20
+    51a2:	55 1f       	adc	r21, r21
+    51a4:	0a 94       	dec	r0
+    51a6:	d2 f7       	brpl	.-12     	; 0x519c <__moddi3+0x396>
+    51a8:	80 e2       	ldi	r24, 0x20	; 32
+    51aa:	90 e0       	ldi	r25, 0x00	; 0
+    51ac:	8a 19       	sub	r24, r10
+    51ae:	9b 09       	sbc	r25, r11
+    51b0:	e8 96       	adiw	r28, 0x38	; 56
+    51b2:	cc ac       	ldd	r12, Y+60	; 0x3c
+    51b4:	dd ac       	ldd	r13, Y+61	; 0x3d
+    51b6:	ee ac       	ldd	r14, Y+62	; 0x3e
+    51b8:	ff ac       	ldd	r15, Y+63	; 0x3f
+    51ba:	e8 97       	sbiw	r28, 0x38	; 56
+    51bc:	04 c0       	rjmp	.+8      	; 0x51c6 <__moddi3+0x3c0>
+    51be:	f6 94       	lsr	r15
+    51c0:	e7 94       	ror	r14
+    51c2:	d7 94       	ror	r13
+    51c4:	c7 94       	ror	r12
+    51c6:	8a 95       	dec	r24
+    51c8:	d2 f7       	brpl	.-12     	; 0x51be <__moddi3+0x3b8>
+    51ca:	87 01       	movw	r16, r14
+    51cc:	76 01       	movw	r14, r12
+    51ce:	e2 2a       	or	r14, r18
+    51d0:	f3 2a       	or	r15, r19
+    51d2:	04 2b       	or	r16, r20
+    51d4:	15 2b       	or	r17, r21
+    51d6:	61 96       	adiw	r28, 0x11	; 17
+    51d8:	ec ae       	std	Y+60, r14	; 0x3c
+    51da:	fd ae       	std	Y+61, r15	; 0x3d
+    51dc:	0e af       	std	Y+62, r16	; 0x3e
+    51de:	1f af       	std	Y+63, r17	; 0x3f
+    51e0:	61 97       	sbiw	r28, 0x11	; 17
+    51e2:	e8 96       	adiw	r28, 0x38	; 56
+    51e4:	0c ad       	ldd	r16, Y+60	; 0x3c
+    51e6:	1d ad       	ldd	r17, Y+61	; 0x3d
+    51e8:	2e ad       	ldd	r18, Y+62	; 0x3e
+    51ea:	3f ad       	ldd	r19, Y+63	; 0x3f
+    51ec:	e8 97       	sbiw	r28, 0x38	; 56
+    51ee:	04 c0       	rjmp	.+8      	; 0x51f8 <__moddi3+0x3f2>
+    51f0:	00 0f       	add	r16, r16
+    51f2:	11 1f       	adc	r17, r17
+    51f4:	22 1f       	adc	r18, r18
+    51f6:	33 1f       	adc	r19, r19
+    51f8:	6a 95       	dec	r22
+    51fa:	d2 f7       	brpl	.-12     	; 0x51f0 <__moddi3+0x3ea>
+    51fc:	2d 96       	adiw	r28, 0x0d	; 13
+    51fe:	0c af       	std	Y+60, r16	; 0x3c
+    5200:	1d af       	std	Y+61, r17	; 0x3d
+    5202:	2e af       	std	Y+62, r18	; 0x3e
+    5204:	3f af       	std	Y+63, r19	; 0x3f
+    5206:	2d 97       	sbiw	r28, 0x0d	; 13
+    5208:	32 01       	movw	r6, r4
+    520a:	88 24       	eor	r8, r8
+    520c:	99 24       	eor	r9, r9
+    520e:	a2 01       	movw	r20, r4
+    5210:	91 01       	movw	r18, r2
+    5212:	40 70       	andi	r20, 0x00	; 0
+    5214:	50 70       	andi	r21, 0x00	; 0
+    5216:	69 96       	adiw	r28, 0x19	; 25
+    5218:	2c af       	std	Y+60, r18	; 0x3c
+    521a:	3d af       	std	Y+61, r19	; 0x3d
+    521c:	4e af       	std	Y+62, r20	; 0x3e
+    521e:	5f af       	std	Y+63, r21	; 0x3f
+    5220:	69 97       	sbiw	r28, 0x19	; 25
+    5222:	61 96       	adiw	r28, 0x11	; 17
+    5224:	6c ad       	ldd	r22, Y+60	; 0x3c
+    5226:	7d ad       	ldd	r23, Y+61	; 0x3d
+    5228:	8e ad       	ldd	r24, Y+62	; 0x3e
+    522a:	9f ad       	ldd	r25, Y+63	; 0x3f
+    522c:	61 97       	sbiw	r28, 0x11	; 17
+    522e:	a4 01       	movw	r20, r8
+    5230:	93 01       	movw	r18, r6
+    5232:	0e 94 0b 30 	call	0x6016	; 0x6016 <__udivmodsi4>
+    5236:	7b 01       	movw	r14, r22
+    5238:	8c 01       	movw	r16, r24
+    523a:	61 96       	adiw	r28, 0x11	; 17
+    523c:	6c ad       	ldd	r22, Y+60	; 0x3c
+    523e:	7d ad       	ldd	r23, Y+61	; 0x3d
+    5240:	8e ad       	ldd	r24, Y+62	; 0x3e
+    5242:	9f ad       	ldd	r25, Y+63	; 0x3f
+    5244:	61 97       	sbiw	r28, 0x11	; 17
+    5246:	a4 01       	movw	r20, r8
+    5248:	93 01       	movw	r18, r6
+    524a:	0e 94 0b 30 	call	0x6016	; 0x6016 <__udivmodsi4>
+    524e:	ca 01       	movw	r24, r20
+    5250:	b9 01       	movw	r22, r18
+    5252:	69 96       	adiw	r28, 0x19	; 25
+    5254:	2c ad       	ldd	r18, Y+60	; 0x3c
+    5256:	3d ad       	ldd	r19, Y+61	; 0x3d
+    5258:	4e ad       	ldd	r20, Y+62	; 0x3e
+    525a:	5f ad       	ldd	r21, Y+63	; 0x3f
+    525c:	69 97       	sbiw	r28, 0x19	; 25
+    525e:	0e 94 d8 2f 	call	0x5fb0	; 0x5fb0 <__mulsi3>
+    5262:	9b 01       	movw	r18, r22
+    5264:	ac 01       	movw	r20, r24
+    5266:	87 01       	movw	r16, r14
+    5268:	ff 24       	eor	r15, r15
+    526a:	ee 24       	eor	r14, r14
+    526c:	2d 96       	adiw	r28, 0x0d	; 13
+    526e:	ac ac       	ldd	r10, Y+60	; 0x3c
+    5270:	bd ac       	ldd	r11, Y+61	; 0x3d
+    5272:	ce ac       	ldd	r12, Y+62	; 0x3e
+    5274:	df ac       	ldd	r13, Y+63	; 0x3f
+    5276:	2d 97       	sbiw	r28, 0x0d	; 13
+    5278:	c6 01       	movw	r24, r12
+    527a:	aa 27       	eor	r26, r26
+    527c:	bb 27       	eor	r27, r27
+    527e:	57 01       	movw	r10, r14
+    5280:	68 01       	movw	r12, r16
+    5282:	a8 2a       	or	r10, r24
+    5284:	b9 2a       	or	r11, r25
+    5286:	ca 2a       	or	r12, r26
+    5288:	db 2a       	or	r13, r27
+    528a:	a2 16       	cp	r10, r18
+    528c:	b3 06       	cpc	r11, r19
+    528e:	c4 06       	cpc	r12, r20
+    5290:	d5 06       	cpc	r13, r21
+    5292:	90 f4       	brcc	.+36     	; 0x52b8 <__moddi3+0x4b2>
+    5294:	a2 0c       	add	r10, r2
+    5296:	b3 1c       	adc	r11, r3
+    5298:	c4 1c       	adc	r12, r4
+    529a:	d5 1c       	adc	r13, r5
+    529c:	a2 14       	cp	r10, r2
+    529e:	b3 04       	cpc	r11, r3
+    52a0:	c4 04       	cpc	r12, r4
+    52a2:	d5 04       	cpc	r13, r5
+    52a4:	48 f0       	brcs	.+18     	; 0x52b8 <__moddi3+0x4b2>
+    52a6:	a2 16       	cp	r10, r18
+    52a8:	b3 06       	cpc	r11, r19
+    52aa:	c4 06       	cpc	r12, r20
+    52ac:	d5 06       	cpc	r13, r21
+    52ae:	20 f4       	brcc	.+8      	; 0x52b8 <__moddi3+0x4b2>
+    52b0:	a2 0c       	add	r10, r2
+    52b2:	b3 1c       	adc	r11, r3
+    52b4:	c4 1c       	adc	r12, r4
+    52b6:	d5 1c       	adc	r13, r5
+    52b8:	a2 1a       	sub	r10, r18
+    52ba:	b3 0a       	sbc	r11, r19
+    52bc:	c4 0a       	sbc	r12, r20
+    52be:	d5 0a       	sbc	r13, r21
+    52c0:	c6 01       	movw	r24, r12
+    52c2:	b5 01       	movw	r22, r10
+    52c4:	a4 01       	movw	r20, r8
+    52c6:	93 01       	movw	r18, r6
+    52c8:	0e 94 0b 30 	call	0x6016	; 0x6016 <__udivmodsi4>
+    52cc:	7b 01       	movw	r14, r22
+    52ce:	8c 01       	movw	r16, r24
+    52d0:	c6 01       	movw	r24, r12
+    52d2:	b5 01       	movw	r22, r10
+    52d4:	a4 01       	movw	r20, r8
+    52d6:	93 01       	movw	r18, r6
+    52d8:	0e 94 0b 30 	call	0x6016	; 0x6016 <__udivmodsi4>
+    52dc:	ca 01       	movw	r24, r20
+    52de:	b9 01       	movw	r22, r18
+    52e0:	69 96       	adiw	r28, 0x19	; 25
+    52e2:	2c ad       	ldd	r18, Y+60	; 0x3c
+    52e4:	3d ad       	ldd	r19, Y+61	; 0x3d
+    52e6:	4e ad       	ldd	r20, Y+62	; 0x3e
+    52e8:	5f ad       	ldd	r21, Y+63	; 0x3f
+    52ea:	69 97       	sbiw	r28, 0x19	; 25
+    52ec:	c8 c1       	rjmp	.+912    	; 0x567e <__moddi3+0x878>
+    52ee:	21 14       	cp	r2, r1
+    52f0:	31 04       	cpc	r3, r1
+    52f2:	41 04       	cpc	r4, r1
+    52f4:	51 04       	cpc	r5, r1
+    52f6:	71 f4       	brne	.+28     	; 0x5314 <__moddi3+0x50e>
+    52f8:	61 e0       	ldi	r22, 0x01	; 1
+    52fa:	70 e0       	ldi	r23, 0x00	; 0
+    52fc:	80 e0       	ldi	r24, 0x00	; 0
+    52fe:	90 e0       	ldi	r25, 0x00	; 0
+    5300:	20 e0       	ldi	r18, 0x00	; 0
+    5302:	30 e0       	ldi	r19, 0x00	; 0
+    5304:	40 e0       	ldi	r20, 0x00	; 0
+    5306:	50 e0       	ldi	r21, 0x00	; 0
+    5308:	0e 94 0b 30 	call	0x6016	; 0x6016 <__udivmodsi4>
+    530c:	c9 01       	movw	r24, r18
+    530e:	da 01       	movw	r26, r20
+    5310:	1c 01       	movw	r2, r24
+    5312:	2d 01       	movw	r4, r26
+    5314:	00 e0       	ldi	r16, 0x00	; 0
+    5316:	20 16       	cp	r2, r16
+    5318:	00 e0       	ldi	r16, 0x00	; 0
+    531a:	30 06       	cpc	r3, r16
+    531c:	01 e0       	ldi	r16, 0x01	; 1
+    531e:	40 06       	cpc	r4, r16
+    5320:	00 e0       	ldi	r16, 0x00	; 0
+    5322:	50 06       	cpc	r5, r16
+    5324:	88 f4       	brcc	.+34     	; 0x5348 <__moddi3+0x542>
+    5326:	1f ef       	ldi	r17, 0xFF	; 255
+    5328:	21 16       	cp	r2, r17
+    532a:	31 04       	cpc	r3, r1
+    532c:	41 04       	cpc	r4, r1
+    532e:	51 04       	cpc	r5, r1
+    5330:	39 f0       	breq	.+14     	; 0x5340 <__moddi3+0x53a>
+    5332:	30 f0       	brcs	.+12     	; 0x5340 <__moddi3+0x53a>
+    5334:	68 e0       	ldi	r22, 0x08	; 8
+    5336:	e6 2e       	mov	r14, r22
+    5338:	f1 2c       	mov	r15, r1
+    533a:	01 2d       	mov	r16, r1
+    533c:	11 2d       	mov	r17, r1
+    533e:	18 c0       	rjmp	.+48     	; 0x5370 <__moddi3+0x56a>
+    5340:	ee 24       	eor	r14, r14
+    5342:	ff 24       	eor	r15, r15
+    5344:	87 01       	movw	r16, r14
+    5346:	14 c0       	rjmp	.+40     	; 0x5370 <__moddi3+0x56a>
+    5348:	20 e0       	ldi	r18, 0x00	; 0
+    534a:	22 16       	cp	r2, r18
+    534c:	20 e0       	ldi	r18, 0x00	; 0
+    534e:	32 06       	cpc	r3, r18
+    5350:	20 e0       	ldi	r18, 0x00	; 0
+    5352:	42 06       	cpc	r4, r18
+    5354:	21 e0       	ldi	r18, 0x01	; 1
+    5356:	52 06       	cpc	r5, r18
+    5358:	30 f0       	brcs	.+12     	; 0x5366 <__moddi3+0x560>
+    535a:	58 e1       	ldi	r21, 0x18	; 24
+    535c:	e5 2e       	mov	r14, r21
+    535e:	f1 2c       	mov	r15, r1
+    5360:	01 2d       	mov	r16, r1
+    5362:	11 2d       	mov	r17, r1
+    5364:	05 c0       	rjmp	.+10     	; 0x5370 <__moddi3+0x56a>
+    5366:	40 e1       	ldi	r20, 0x10	; 16
+    5368:	e4 2e       	mov	r14, r20
+    536a:	f1 2c       	mov	r15, r1
+    536c:	01 2d       	mov	r16, r1
+    536e:	11 2d       	mov	r17, r1
+    5370:	d2 01       	movw	r26, r4
+    5372:	c1 01       	movw	r24, r2
+    5374:	0e 2c       	mov	r0, r14
+    5376:	04 c0       	rjmp	.+8      	; 0x5380 <__moddi3+0x57a>
+    5378:	b6 95       	lsr	r27
+    537a:	a7 95       	ror	r26
+    537c:	97 95       	ror	r25
+    537e:	87 95       	ror	r24
+    5380:	0a 94       	dec	r0
+    5382:	d2 f7       	brpl	.-12     	; 0x5378 <__moddi3+0x572>
+    5384:	88 5a       	subi	r24, 0xA8	; 168
+    5386:	9b 4f       	sbci	r25, 0xFB	; 251
+    5388:	dc 01       	movw	r26, r24
+    538a:	2c 91       	ld	r18, X
+    538c:	30 e2       	ldi	r19, 0x20	; 32
+    538e:	a3 2e       	mov	r10, r19
+    5390:	b1 2c       	mov	r11, r1
+    5392:	c1 2c       	mov	r12, r1
+    5394:	d1 2c       	mov	r13, r1
+    5396:	d6 01       	movw	r26, r12
+    5398:	c5 01       	movw	r24, r10
+    539a:	8e 19       	sub	r24, r14
+    539c:	9f 09       	sbc	r25, r15
+    539e:	a0 0b       	sbc	r26, r16
+    53a0:	b1 0b       	sbc	r27, r17
+    53a2:	7c 01       	movw	r14, r24
+    53a4:	8d 01       	movw	r16, r26
+    53a6:	e2 1a       	sub	r14, r18
+    53a8:	f1 08       	sbc	r15, r1
+    53aa:	01 09       	sbc	r16, r1
+    53ac:	11 09       	sbc	r17, r1
+    53ae:	65 96       	adiw	r28, 0x15	; 21
+    53b0:	ec ae       	std	Y+60, r14	; 0x3c
+    53b2:	fd ae       	std	Y+61, r15	; 0x3d
+    53b4:	0e af       	std	Y+62, r16	; 0x3e
+    53b6:	1f af       	std	Y+63, r17	; 0x3f
+    53b8:	65 97       	sbiw	r28, 0x15	; 21
+    53ba:	e1 14       	cp	r14, r1
+    53bc:	f1 04       	cpc	r15, r1
+    53be:	01 05       	cpc	r16, r1
+    53c0:	11 05       	cpc	r17, r1
+    53c2:	39 f4       	brne	.+14     	; 0x53d2 <__moddi3+0x5cc>
+    53c4:	64 01       	movw	r12, r8
+    53c6:	53 01       	movw	r10, r6
+    53c8:	a2 18       	sub	r10, r2
+    53ca:	b3 08       	sbc	r11, r3
+    53cc:	c4 08       	sbc	r12, r4
+    53ce:	d5 08       	sbc	r13, r5
+    53d0:	ec c0       	rjmp	.+472    	; 0x55aa <__moddi3+0x7a4>
+    53d2:	62 96       	adiw	r28, 0x12	; 18
+    53d4:	ff ac       	ldd	r15, Y+63	; 0x3f
+    53d6:	62 97       	sbiw	r28, 0x12	; 18
+    53d8:	e4 96       	adiw	r28, 0x34	; 52
+    53da:	ff ae       	std	Y+63, r15	; 0x3f
+    53dc:	e4 97       	sbiw	r28, 0x34	; 52
+    53de:	0f 2c       	mov	r0, r15
+    53e0:	04 c0       	rjmp	.+8      	; 0x53ea <__moddi3+0x5e4>
+    53e2:	22 0c       	add	r2, r2
+    53e4:	33 1c       	adc	r3, r3
+    53e6:	44 1c       	adc	r4, r4
+    53e8:	55 1c       	adc	r5, r5
+    53ea:	0a 94       	dec	r0
+    53ec:	d2 f7       	brpl	.-12     	; 0x53e2 <__moddi3+0x5dc>
+    53ee:	8a 2d       	mov	r24, r10
+    53f0:	8f 19       	sub	r24, r15
+    53f2:	64 01       	movw	r12, r8
+    53f4:	53 01       	movw	r10, r6
+    53f6:	08 2e       	mov	r0, r24
+    53f8:	04 c0       	rjmp	.+8      	; 0x5402 <__moddi3+0x5fc>
+    53fa:	d6 94       	lsr	r13
+    53fc:	c7 94       	ror	r12
+    53fe:	b7 94       	ror	r11
+    5400:	a7 94       	ror	r10
+    5402:	0a 94       	dec	r0
+    5404:	d2 f7       	brpl	.-12     	; 0x53fa <__moddi3+0x5f4>
+    5406:	a4 01       	movw	r20, r8
+    5408:	93 01       	movw	r18, r6
+    540a:	04 c0       	rjmp	.+8      	; 0x5414 <__moddi3+0x60e>
+    540c:	22 0f       	add	r18, r18
+    540e:	33 1f       	adc	r19, r19
+    5410:	44 1f       	adc	r20, r20
+    5412:	55 1f       	adc	r21, r21
+    5414:	fa 94       	dec	r15
+    5416:	d2 f7       	brpl	.-12     	; 0x540c <__moddi3+0x606>
+    5418:	e8 96       	adiw	r28, 0x38	; 56
+    541a:	6c ac       	ldd	r6, Y+60	; 0x3c
+    541c:	7d ac       	ldd	r7, Y+61	; 0x3d
+    541e:	8e ac       	ldd	r8, Y+62	; 0x3e
+    5420:	9f ac       	ldd	r9, Y+63	; 0x3f
+    5422:	e8 97       	sbiw	r28, 0x38	; 56
+    5424:	04 c0       	rjmp	.+8      	; 0x542e <__moddi3+0x628>
+    5426:	96 94       	lsr	r9
+    5428:	87 94       	ror	r8
+    542a:	77 94       	ror	r7
+    542c:	67 94       	ror	r6
+    542e:	8a 95       	dec	r24
+    5430:	d2 f7       	brpl	.-12     	; 0x5426 <__moddi3+0x620>
+    5432:	84 01       	movw	r16, r8
+    5434:	73 01       	movw	r14, r6
+    5436:	e2 2a       	or	r14, r18
+    5438:	f3 2a       	or	r15, r19
+    543a:	04 2b       	or	r16, r20
+    543c:	15 2b       	or	r17, r21
+    543e:	29 96       	adiw	r28, 0x09	; 9
+    5440:	ec ae       	std	Y+60, r14	; 0x3c
+    5442:	fd ae       	std	Y+61, r15	; 0x3d
+    5444:	0e af       	std	Y+62, r16	; 0x3e
+    5446:	1f af       	std	Y+63, r17	; 0x3f
+    5448:	29 97       	sbiw	r28, 0x09	; 9
+    544a:	32 01       	movw	r6, r4
+    544c:	88 24       	eor	r8, r8
+    544e:	99 24       	eor	r9, r9
+    5450:	92 01       	movw	r18, r4
+    5452:	81 01       	movw	r16, r2
+    5454:	20 70       	andi	r18, 0x00	; 0
+    5456:	30 70       	andi	r19, 0x00	; 0
+    5458:	6d 96       	adiw	r28, 0x1d	; 29
+    545a:	0c af       	std	Y+60, r16	; 0x3c
+    545c:	1d af       	std	Y+61, r17	; 0x3d
+    545e:	2e af       	std	Y+62, r18	; 0x3e
+    5460:	3f af       	std	Y+63, r19	; 0x3f
+    5462:	6d 97       	sbiw	r28, 0x1d	; 29
+    5464:	c6 01       	movw	r24, r12
+    5466:	b5 01       	movw	r22, r10
+    5468:	a4 01       	movw	r20, r8
+    546a:	93 01       	movw	r18, r6
+    546c:	0e 94 0b 30 	call	0x6016	; 0x6016 <__udivmodsi4>
+    5470:	7b 01       	movw	r14, r22
+    5472:	8c 01       	movw	r16, r24
+    5474:	c6 01       	movw	r24, r12
+    5476:	b5 01       	movw	r22, r10
+    5478:	a4 01       	movw	r20, r8
+    547a:	93 01       	movw	r18, r6
+    547c:	0e 94 0b 30 	call	0x6016	; 0x6016 <__udivmodsi4>
+    5480:	ca 01       	movw	r24, r20
+    5482:	b9 01       	movw	r22, r18
+    5484:	6d 96       	adiw	r28, 0x1d	; 29
+    5486:	2c ad       	ldd	r18, Y+60	; 0x3c
+    5488:	3d ad       	ldd	r19, Y+61	; 0x3d
+    548a:	4e ad       	ldd	r20, Y+62	; 0x3e
+    548c:	5f ad       	ldd	r21, Y+63	; 0x3f
+    548e:	6d 97       	sbiw	r28, 0x1d	; 29
+    5490:	0e 94 d8 2f 	call	0x5fb0	; 0x5fb0 <__mulsi3>
+    5494:	9b 01       	movw	r18, r22
+    5496:	ac 01       	movw	r20, r24
+    5498:	87 01       	movw	r16, r14
+    549a:	ff 24       	eor	r15, r15
+    549c:	ee 24       	eor	r14, r14
+    549e:	29 96       	adiw	r28, 0x09	; 9
+    54a0:	ac ac       	ldd	r10, Y+60	; 0x3c
+    54a2:	bd ac       	ldd	r11, Y+61	; 0x3d
+    54a4:	ce ac       	ldd	r12, Y+62	; 0x3e
+    54a6:	df ac       	ldd	r13, Y+63	; 0x3f
+    54a8:	29 97       	sbiw	r28, 0x09	; 9
+    54aa:	c6 01       	movw	r24, r12
+    54ac:	aa 27       	eor	r26, r26
+    54ae:	bb 27       	eor	r27, r27
+    54b0:	5c 01       	movw	r10, r24
+    54b2:	6d 01       	movw	r12, r26
+    54b4:	ae 28       	or	r10, r14
+    54b6:	bf 28       	or	r11, r15
+    54b8:	c0 2a       	or	r12, r16
+    54ba:	d1 2a       	or	r13, r17
+    54bc:	a2 16       	cp	r10, r18
+    54be:	b3 06       	cpc	r11, r19
+    54c0:	c4 06       	cpc	r12, r20
+    54c2:	d5 06       	cpc	r13, r21
+    54c4:	90 f4       	brcc	.+36     	; 0x54ea <__moddi3+0x6e4>
+    54c6:	a2 0c       	add	r10, r2
+    54c8:	b3 1c       	adc	r11, r3
+    54ca:	c4 1c       	adc	r12, r4
+    54cc:	d5 1c       	adc	r13, r5
+    54ce:	a2 14       	cp	r10, r2
+    54d0:	b3 04       	cpc	r11, r3
+    54d2:	c4 04       	cpc	r12, r4
+    54d4:	d5 04       	cpc	r13, r5
+    54d6:	48 f0       	brcs	.+18     	; 0x54ea <__moddi3+0x6e4>
+    54d8:	a2 16       	cp	r10, r18
+    54da:	b3 06       	cpc	r11, r19
+    54dc:	c4 06       	cpc	r12, r20
+    54de:	d5 06       	cpc	r13, r21
+    54e0:	20 f4       	brcc	.+8      	; 0x54ea <__moddi3+0x6e4>
+    54e2:	a2 0c       	add	r10, r2
+    54e4:	b3 1c       	adc	r11, r3
+    54e6:	c4 1c       	adc	r12, r4
+    54e8:	d5 1c       	adc	r13, r5
+    54ea:	a2 1a       	sub	r10, r18
+    54ec:	b3 0a       	sbc	r11, r19
+    54ee:	c4 0a       	sbc	r12, r20
+    54f0:	d5 0a       	sbc	r13, r21
+    54f2:	c6 01       	movw	r24, r12
+    54f4:	b5 01       	movw	r22, r10
+    54f6:	a4 01       	movw	r20, r8
+    54f8:	93 01       	movw	r18, r6
+    54fa:	0e 94 0b 30 	call	0x6016	; 0x6016 <__udivmodsi4>
+    54fe:	7b 01       	movw	r14, r22
+    5500:	8c 01       	movw	r16, r24
+    5502:	c6 01       	movw	r24, r12
+    5504:	b5 01       	movw	r22, r10
+    5506:	a4 01       	movw	r20, r8
+    5508:	93 01       	movw	r18, r6
+    550a:	0e 94 0b 30 	call	0x6016	; 0x6016 <__udivmodsi4>
+    550e:	ca 01       	movw	r24, r20
+    5510:	b9 01       	movw	r22, r18
+    5512:	6d 96       	adiw	r28, 0x1d	; 29
+    5514:	2c ad       	ldd	r18, Y+60	; 0x3c
+    5516:	3d ad       	ldd	r19, Y+61	; 0x3d
+    5518:	4e ad       	ldd	r20, Y+62	; 0x3e
+    551a:	5f ad       	ldd	r21, Y+63	; 0x3f
+    551c:	6d 97       	sbiw	r28, 0x1d	; 29
+    551e:	0e 94 d8 2f 	call	0x5fb0	; 0x5fb0 <__mulsi3>
+    5522:	9b 01       	movw	r18, r22
+    5524:	ac 01       	movw	r20, r24
+    5526:	87 01       	movw	r16, r14
+    5528:	ff 24       	eor	r15, r15
+    552a:	ee 24       	eor	r14, r14
+    552c:	29 96       	adiw	r28, 0x09	; 9
+    552e:	8c ad       	ldd	r24, Y+60	; 0x3c
+    5530:	9d ad       	ldd	r25, Y+61	; 0x3d
+    5532:	ae ad       	ldd	r26, Y+62	; 0x3e
+    5534:	bf ad       	ldd	r27, Y+63	; 0x3f
+    5536:	29 97       	sbiw	r28, 0x09	; 9
+    5538:	a0 70       	andi	r26, 0x00	; 0
+    553a:	b0 70       	andi	r27, 0x00	; 0
+    553c:	57 01       	movw	r10, r14
+    553e:	68 01       	movw	r12, r16
+    5540:	a8 2a       	or	r10, r24
+    5542:	b9 2a       	or	r11, r25
+    5544:	ca 2a       	or	r12, r26
+    5546:	db 2a       	or	r13, r27
+    5548:	a2 16       	cp	r10, r18
+    554a:	b3 06       	cpc	r11, r19
+    554c:	c4 06       	cpc	r12, r20
+    554e:	d5 06       	cpc	r13, r21
+    5550:	90 f4       	brcc	.+36     	; 0x5576 <__moddi3+0x770>
+    5552:	a2 0c       	add	r10, r2
+    5554:	b3 1c       	adc	r11, r3
+    5556:	c4 1c       	adc	r12, r4
+    5558:	d5 1c       	adc	r13, r5
+    555a:	a2 14       	cp	r10, r2
+    555c:	b3 04       	cpc	r11, r3
+    555e:	c4 04       	cpc	r12, r4
+    5560:	d5 04       	cpc	r13, r5
+    5562:	48 f0       	brcs	.+18     	; 0x5576 <__moddi3+0x770>
+    5564:	a2 16       	cp	r10, r18
+    5566:	b3 06       	cpc	r11, r19
+    5568:	c4 06       	cpc	r12, r20
+    556a:	d5 06       	cpc	r13, r21
+    556c:	20 f4       	brcc	.+8      	; 0x5576 <__moddi3+0x770>
+    556e:	a2 0c       	add	r10, r2
+    5570:	b3 1c       	adc	r11, r3
+    5572:	c4 1c       	adc	r12, r4
+    5574:	d5 1c       	adc	r13, r5
+    5576:	e8 96       	adiw	r28, 0x38	; 56
+    5578:	ec ac       	ldd	r14, Y+60	; 0x3c
+    557a:	fd ac       	ldd	r15, Y+61	; 0x3d
+    557c:	0e ad       	ldd	r16, Y+62	; 0x3e
+    557e:	1f ad       	ldd	r17, Y+63	; 0x3f
+    5580:	e8 97       	sbiw	r28, 0x38	; 56
+    5582:	e4 96       	adiw	r28, 0x34	; 52
+    5584:	0f ac       	ldd	r0, Y+63	; 0x3f
+    5586:	e4 97       	sbiw	r28, 0x34	; 52
+    5588:	04 c0       	rjmp	.+8      	; 0x5592 <__moddi3+0x78c>
+    558a:	ee 0c       	add	r14, r14
+    558c:	ff 1c       	adc	r15, r15
+    558e:	00 1f       	adc	r16, r16
+    5590:	11 1f       	adc	r17, r17
+    5592:	0a 94       	dec	r0
+    5594:	d2 f7       	brpl	.-12     	; 0x558a <__moddi3+0x784>
+    5596:	2d 96       	adiw	r28, 0x0d	; 13
+    5598:	ec ae       	std	Y+60, r14	; 0x3c
+    559a:	fd ae       	std	Y+61, r15	; 0x3d
+    559c:	0e af       	std	Y+62, r16	; 0x3e
+    559e:	1f af       	std	Y+63, r17	; 0x3f
+    55a0:	2d 97       	sbiw	r28, 0x0d	; 13
+    55a2:	a2 1a       	sub	r10, r18
+    55a4:	b3 0a       	sbc	r11, r19
+    55a6:	c4 0a       	sbc	r12, r20
+    55a8:	d5 0a       	sbc	r13, r21
+    55aa:	32 01       	movw	r6, r4
+    55ac:	88 24       	eor	r8, r8
+    55ae:	99 24       	eor	r9, r9
+    55b0:	92 01       	movw	r18, r4
+    55b2:	81 01       	movw	r16, r2
+    55b4:	20 70       	andi	r18, 0x00	; 0
+    55b6:	30 70       	andi	r19, 0x00	; 0
+    55b8:	a1 96       	adiw	r28, 0x21	; 33
+    55ba:	0c af       	std	Y+60, r16	; 0x3c
+    55bc:	1d af       	std	Y+61, r17	; 0x3d
+    55be:	2e af       	std	Y+62, r18	; 0x3e
+    55c0:	3f af       	std	Y+63, r19	; 0x3f
+    55c2:	a1 97       	sbiw	r28, 0x21	; 33
+    55c4:	c6 01       	movw	r24, r12
+    55c6:	b5 01       	movw	r22, r10
+    55c8:	a4 01       	movw	r20, r8
+    55ca:	93 01       	movw	r18, r6
+    55cc:	0e 94 0b 30 	call	0x6016	; 0x6016 <__udivmodsi4>
+    55d0:	7b 01       	movw	r14, r22
+    55d2:	8c 01       	movw	r16, r24
+    55d4:	c6 01       	movw	r24, r12
+    55d6:	b5 01       	movw	r22, r10
+    55d8:	a4 01       	movw	r20, r8
+    55da:	93 01       	movw	r18, r6
+    55dc:	0e 94 0b 30 	call	0x6016	; 0x6016 <__udivmodsi4>
+    55e0:	ca 01       	movw	r24, r20
+    55e2:	b9 01       	movw	r22, r18
+    55e4:	a1 96       	adiw	r28, 0x21	; 33
+    55e6:	2c ad       	ldd	r18, Y+60	; 0x3c
+    55e8:	3d ad       	ldd	r19, Y+61	; 0x3d
+    55ea:	4e ad       	ldd	r20, Y+62	; 0x3e
+    55ec:	5f ad       	ldd	r21, Y+63	; 0x3f
+    55ee:	a1 97       	sbiw	r28, 0x21	; 33
+    55f0:	0e 94 d8 2f 	call	0x5fb0	; 0x5fb0 <__mulsi3>
+    55f4:	9b 01       	movw	r18, r22
+    55f6:	ac 01       	movw	r20, r24
+    55f8:	87 01       	movw	r16, r14
+    55fa:	ff 24       	eor	r15, r15
+    55fc:	ee 24       	eor	r14, r14
+    55fe:	2d 96       	adiw	r28, 0x0d	; 13
+    5600:	ac ac       	ldd	r10, Y+60	; 0x3c
+    5602:	bd ac       	ldd	r11, Y+61	; 0x3d
+    5604:	ce ac       	ldd	r12, Y+62	; 0x3e
+    5606:	df ac       	ldd	r13, Y+63	; 0x3f
+    5608:	2d 97       	sbiw	r28, 0x0d	; 13
+    560a:	c6 01       	movw	r24, r12
+    560c:	aa 27       	eor	r26, r26
+    560e:	bb 27       	eor	r27, r27
+    5610:	57 01       	movw	r10, r14
+    5612:	68 01       	movw	r12, r16
+    5614:	a8 2a       	or	r10, r24
+    5616:	b9 2a       	or	r11, r25
+    5618:	ca 2a       	or	r12, r26
+    561a:	db 2a       	or	r13, r27
+    561c:	a2 16       	cp	r10, r18
+    561e:	b3 06       	cpc	r11, r19
+    5620:	c4 06       	cpc	r12, r20
+    5622:	d5 06       	cpc	r13, r21
+    5624:	90 f4       	brcc	.+36     	; 0x564a <__moddi3+0x844>
+    5626:	a2 0c       	add	r10, r2
+    5628:	b3 1c       	adc	r11, r3
+    562a:	c4 1c       	adc	r12, r4
+    562c:	d5 1c       	adc	r13, r5
+    562e:	a2 14       	cp	r10, r2
+    5630:	b3 04       	cpc	r11, r3
+    5632:	c4 04       	cpc	r12, r4
+    5634:	d5 04       	cpc	r13, r5
+    5636:	48 f0       	brcs	.+18     	; 0x564a <__moddi3+0x844>
+    5638:	a2 16       	cp	r10, r18
+    563a:	b3 06       	cpc	r11, r19
+    563c:	c4 06       	cpc	r12, r20
+    563e:	d5 06       	cpc	r13, r21
+    5640:	20 f4       	brcc	.+8      	; 0x564a <__moddi3+0x844>
+    5642:	a2 0c       	add	r10, r2
+    5644:	b3 1c       	adc	r11, r3
+    5646:	c4 1c       	adc	r12, r4
+    5648:	d5 1c       	adc	r13, r5
+    564a:	a2 1a       	sub	r10, r18
+    564c:	b3 0a       	sbc	r11, r19
+    564e:	c4 0a       	sbc	r12, r20
+    5650:	d5 0a       	sbc	r13, r21
+    5652:	c6 01       	movw	r24, r12
+    5654:	b5 01       	movw	r22, r10
+    5656:	a4 01       	movw	r20, r8
+    5658:	93 01       	movw	r18, r6
+    565a:	0e 94 0b 30 	call	0x6016	; 0x6016 <__udivmodsi4>
+    565e:	7b 01       	movw	r14, r22
+    5660:	8c 01       	movw	r16, r24
+    5662:	c6 01       	movw	r24, r12
+    5664:	b5 01       	movw	r22, r10
+    5666:	a4 01       	movw	r20, r8
+    5668:	93 01       	movw	r18, r6
+    566a:	0e 94 0b 30 	call	0x6016	; 0x6016 <__udivmodsi4>
+    566e:	ca 01       	movw	r24, r20
+    5670:	b9 01       	movw	r22, r18
+    5672:	a1 96       	adiw	r28, 0x21	; 33
+    5674:	2c ad       	ldd	r18, Y+60	; 0x3c
+    5676:	3d ad       	ldd	r19, Y+61	; 0x3d
+    5678:	4e ad       	ldd	r20, Y+62	; 0x3e
+    567a:	5f ad       	ldd	r21, Y+63	; 0x3f
+    567c:	a1 97       	sbiw	r28, 0x21	; 33
+    567e:	0e 94 d8 2f 	call	0x5fb0	; 0x5fb0 <__mulsi3>
+    5682:	9b 01       	movw	r18, r22
+    5684:	ac 01       	movw	r20, r24
+    5686:	87 01       	movw	r16, r14
+    5688:	ff 24       	eor	r15, r15
+    568a:	ee 24       	eor	r14, r14
+    568c:	2d 96       	adiw	r28, 0x0d	; 13
+    568e:	8c ad       	ldd	r24, Y+60	; 0x3c
+    5690:	9d ad       	ldd	r25, Y+61	; 0x3d
+    5692:	ae ad       	ldd	r26, Y+62	; 0x3e
+    5694:	bf ad       	ldd	r27, Y+63	; 0x3f
+    5696:	2d 97       	sbiw	r28, 0x0d	; 13
+    5698:	a0 70       	andi	r26, 0x00	; 0
+    569a:	b0 70       	andi	r27, 0x00	; 0
+    569c:	e8 2a       	or	r14, r24
+    569e:	f9 2a       	or	r15, r25
+    56a0:	0a 2b       	or	r16, r26
+    56a2:	1b 2b       	or	r17, r27
+    56a4:	e2 16       	cp	r14, r18
+    56a6:	f3 06       	cpc	r15, r19
+    56a8:	04 07       	cpc	r16, r20
+    56aa:	15 07       	cpc	r17, r21
+    56ac:	90 f4       	brcc	.+36     	; 0x56d2 <__moddi3+0x8cc>
+    56ae:	e2 0c       	add	r14, r2
+    56b0:	f3 1c       	adc	r15, r3
+    56b2:	04 1d       	adc	r16, r4
+    56b4:	15 1d       	adc	r17, r5
+    56b6:	e2 14       	cp	r14, r2
+    56b8:	f3 04       	cpc	r15, r3
+    56ba:	04 05       	cpc	r16, r4
+    56bc:	15 05       	cpc	r17, r5
+    56be:	48 f0       	brcs	.+18     	; 0x56d2 <__moddi3+0x8cc>
+    56c0:	e2 16       	cp	r14, r18
+    56c2:	f3 06       	cpc	r15, r19
+    56c4:	04 07       	cpc	r16, r20
+    56c6:	15 07       	cpc	r17, r21
+    56c8:	20 f4       	brcc	.+8      	; 0x56d2 <__moddi3+0x8cc>
+    56ca:	e2 0c       	add	r14, r2
+    56cc:	f3 1c       	adc	r15, r3
+    56ce:	04 1d       	adc	r16, r4
+    56d0:	15 1d       	adc	r17, r5
+    56d2:	e2 1a       	sub	r14, r18
+    56d4:	f3 0a       	sbc	r15, r19
+    56d6:	04 0b       	sbc	r16, r20
+    56d8:	15 0b       	sbc	r17, r21
+    56da:	d8 01       	movw	r26, r16
+    56dc:	c7 01       	movw	r24, r14
+    56de:	62 96       	adiw	r28, 0x12	; 18
+    56e0:	0f ac       	ldd	r0, Y+63	; 0x3f
+    56e2:	62 97       	sbiw	r28, 0x12	; 18
+    56e4:	04 c0       	rjmp	.+8      	; 0x56ee <__moddi3+0x8e8>
+    56e6:	b6 95       	lsr	r27
+    56e8:	a7 95       	ror	r26
+    56ea:	97 95       	ror	r25
+    56ec:	87 95       	ror	r24
+    56ee:	0a 94       	dec	r0
+    56f0:	d2 f7       	brpl	.-12     	; 0x56e6 <__moddi3+0x8e0>
+    56f2:	89 a7       	std	Y+41, r24	; 0x29
+    56f4:	9a a7       	std	Y+42, r25	; 0x2a
+    56f6:	ab a7       	std	Y+43, r26	; 0x2b
+    56f8:	bc a7       	std	Y+44, r27	; 0x2c
+    56fa:	1d a6       	std	Y+45, r1	; 0x2d
+    56fc:	1e a6       	std	Y+46, r1	; 0x2e
+    56fe:	1f a6       	std	Y+47, r1	; 0x2f
+    5700:	18 aa       	std	Y+48, r1	; 0x30
+    5702:	89 8b       	std	Y+17, r24	; 0x11
+    5704:	8a a5       	ldd	r24, Y+42	; 0x2a
+    5706:	8a 8b       	std	Y+18, r24	; 0x12
+    5708:	8b a5       	ldd	r24, Y+43	; 0x2b
+    570a:	8b 8b       	std	Y+19, r24	; 0x13
+    570c:	8c a5       	ldd	r24, Y+44	; 0x2c
+    570e:	8c 8b       	std	Y+20, r24	; 0x14
+    5710:	8d a5       	ldd	r24, Y+45	; 0x2d
+    5712:	8d 8b       	std	Y+21, r24	; 0x15
+    5714:	2f c3       	rjmp	.+1630   	; 0x5d74 <__moddi3+0xf6e>
+    5716:	6a 14       	cp	r6, r10
+    5718:	7b 04       	cpc	r7, r11
+    571a:	8c 04       	cpc	r8, r12
+    571c:	9d 04       	cpc	r9, r13
+    571e:	48 f4       	brcc	.+18     	; 0x5732 <__moddi3+0x92c>
+    5720:	49 8b       	std	Y+17, r20	; 0x11
+    5722:	5a 8b       	std	Y+18, r21	; 0x12
+    5724:	6b 8b       	std	Y+19, r22	; 0x13
+    5726:	7c 8b       	std	Y+20, r23	; 0x14
+    5728:	8d 8b       	std	Y+21, r24	; 0x15
+    572a:	9e 8b       	std	Y+22, r25	; 0x16
+    572c:	2f 8b       	std	Y+23, r18	; 0x17
+    572e:	38 8f       	std	Y+24, r19	; 0x18
+    5730:	27 c3       	rjmp	.+1614   	; 0x5d80 <__moddi3+0xf7a>
+    5732:	00 e0       	ldi	r16, 0x00	; 0
+    5734:	a0 16       	cp	r10, r16
+    5736:	00 e0       	ldi	r16, 0x00	; 0
+    5738:	b0 06       	cpc	r11, r16
+    573a:	01 e0       	ldi	r16, 0x01	; 1
+    573c:	c0 06       	cpc	r12, r16
+    573e:	00 e0       	ldi	r16, 0x00	; 0
+    5740:	d0 06       	cpc	r13, r16
+    5742:	88 f4       	brcc	.+34     	; 0x5766 <__moddi3+0x960>
+    5744:	1f ef       	ldi	r17, 0xFF	; 255
+    5746:	a1 16       	cp	r10, r17
+    5748:	b1 04       	cpc	r11, r1
+    574a:	c1 04       	cpc	r12, r1
+    574c:	d1 04       	cpc	r13, r1
+    574e:	39 f0       	breq	.+14     	; 0x575e <__moddi3+0x958>
+    5750:	30 f0       	brcs	.+12     	; 0x575e <__moddi3+0x958>
+    5752:	98 e0       	ldi	r25, 0x08	; 8
+    5754:	e9 2e       	mov	r14, r25
+    5756:	f1 2c       	mov	r15, r1
+    5758:	01 2d       	mov	r16, r1
+    575a:	11 2d       	mov	r17, r1
+    575c:	18 c0       	rjmp	.+48     	; 0x578e <__moddi3+0x988>
+    575e:	ee 24       	eor	r14, r14
+    5760:	ff 24       	eor	r15, r15
+    5762:	87 01       	movw	r16, r14
+    5764:	14 c0       	rjmp	.+40     	; 0x578e <__moddi3+0x988>
+    5766:	20 e0       	ldi	r18, 0x00	; 0
+    5768:	a2 16       	cp	r10, r18
+    576a:	20 e0       	ldi	r18, 0x00	; 0
+    576c:	b2 06       	cpc	r11, r18
+    576e:	20 e0       	ldi	r18, 0x00	; 0
+    5770:	c2 06       	cpc	r12, r18
+    5772:	21 e0       	ldi	r18, 0x01	; 1
+    5774:	d2 06       	cpc	r13, r18
+    5776:	30 f0       	brcs	.+12     	; 0x5784 <__moddi3+0x97e>
+    5778:	88 e1       	ldi	r24, 0x18	; 24
+    577a:	e8 2e       	mov	r14, r24
+    577c:	f1 2c       	mov	r15, r1
+    577e:	01 2d       	mov	r16, r1
+    5780:	11 2d       	mov	r17, r1
+    5782:	05 c0       	rjmp	.+10     	; 0x578e <__moddi3+0x988>
+    5784:	00 e1       	ldi	r16, 0x10	; 16
+    5786:	e0 2e       	mov	r14, r16
+    5788:	f1 2c       	mov	r15, r1
+    578a:	01 2d       	mov	r16, r1
+    578c:	11 2d       	mov	r17, r1
+    578e:	d6 01       	movw	r26, r12
+    5790:	c5 01       	movw	r24, r10
+    5792:	0e 2c       	mov	r0, r14
+    5794:	04 c0       	rjmp	.+8      	; 0x579e <__moddi3+0x998>
+    5796:	b6 95       	lsr	r27
+    5798:	a7 95       	ror	r26
+    579a:	97 95       	ror	r25
+    579c:	87 95       	ror	r24
+    579e:	0a 94       	dec	r0
+    57a0:	d2 f7       	brpl	.-12     	; 0x5796 <__moddi3+0x990>
+    57a2:	88 5a       	subi	r24, 0xA8	; 168
+    57a4:	9b 4f       	sbci	r25, 0xFB	; 251
+    57a6:	dc 01       	movw	r26, r24
+    57a8:	2c 91       	ld	r18, X
+    57aa:	80 e2       	ldi	r24, 0x20	; 32
+    57ac:	90 e0       	ldi	r25, 0x00	; 0
+    57ae:	a0 e0       	ldi	r26, 0x00	; 0
+    57b0:	b0 e0       	ldi	r27, 0x00	; 0
+    57b2:	8e 19       	sub	r24, r14
+    57b4:	9f 09       	sbc	r25, r15
+    57b6:	a0 0b       	sbc	r26, r16
+    57b8:	b1 0b       	sbc	r27, r17
+    57ba:	82 1b       	sub	r24, r18
+    57bc:	91 09       	sbc	r25, r1
+    57be:	a1 09       	sbc	r26, r1
+    57c0:	b1 09       	sbc	r27, r1
+    57c2:	00 97       	sbiw	r24, 0x00	; 0
+    57c4:	a1 05       	cpc	r26, r1
+    57c6:	b1 05       	cpc	r27, r1
+    57c8:	09 f0       	breq	.+2      	; 0x57cc <__moddi3+0x9c6>
+    57ca:	59 c0       	rjmp	.+178    	; 0x587e <__moddi3+0xa78>
+    57cc:	a6 14       	cp	r10, r6
+    57ce:	b7 04       	cpc	r11, r7
+    57d0:	c8 04       	cpc	r12, r8
+    57d2:	d9 04       	cpc	r13, r9
+    57d4:	70 f0       	brcs	.+28     	; 0x57f2 <__moddi3+0x9ec>
+    57d6:	e8 96       	adiw	r28, 0x38	; 56
+    57d8:	ec ac       	ldd	r14, Y+60	; 0x3c
+    57da:	fd ac       	ldd	r15, Y+61	; 0x3d
+    57dc:	0e ad       	ldd	r16, Y+62	; 0x3e
+    57de:	1f ad       	ldd	r17, Y+63	; 0x3f
+    57e0:	e8 97       	sbiw	r28, 0x38	; 56
+    57e2:	e2 14       	cp	r14, r2
+    57e4:	f3 04       	cpc	r15, r3
+    57e6:	04 05       	cpc	r16, r4
+    57e8:	15 05       	cpc	r17, r5
+    57ea:	18 f4       	brcc	.+6      	; 0x57f2 <__moddi3+0x9ec>
+    57ec:	d8 01       	movw	r26, r16
+    57ee:	c7 01       	movw	r24, r14
+    57f0:	2f c0       	rjmp	.+94     	; 0x5850 <__moddi3+0xa4a>
+    57f2:	e8 96       	adiw	r28, 0x38	; 56
+    57f4:	8c ad       	ldd	r24, Y+60	; 0x3c
+    57f6:	9d ad       	ldd	r25, Y+61	; 0x3d
+    57f8:	ae ad       	ldd	r26, Y+62	; 0x3e
+    57fa:	bf ad       	ldd	r27, Y+63	; 0x3f
+    57fc:	e8 97       	sbiw	r28, 0x38	; 56
+    57fe:	82 19       	sub	r24, r2
+    5800:	93 09       	sbc	r25, r3
+    5802:	a4 09       	sbc	r26, r4
+    5804:	b5 09       	sbc	r27, r5
+    5806:	a4 01       	movw	r20, r8
+    5808:	93 01       	movw	r18, r6
+    580a:	2a 19       	sub	r18, r10
+    580c:	3b 09       	sbc	r19, r11
+    580e:	4c 09       	sbc	r20, r12
+    5810:	5d 09       	sbc	r21, r13
+    5812:	aa 24       	eor	r10, r10
+    5814:	bb 24       	eor	r11, r11
+    5816:	65 01       	movw	r12, r10
+    5818:	e8 96       	adiw	r28, 0x38	; 56
+    581a:	6c ac       	ldd	r6, Y+60	; 0x3c
+    581c:	7d ac       	ldd	r7, Y+61	; 0x3d
+    581e:	8e ac       	ldd	r8, Y+62	; 0x3e
+    5820:	9f ac       	ldd	r9, Y+63	; 0x3f
+    5822:	e8 97       	sbiw	r28, 0x38	; 56
+    5824:	68 16       	cp	r6, r24
+    5826:	79 06       	cpc	r7, r25
+    5828:	8a 06       	cpc	r8, r26
+    582a:	9b 06       	cpc	r9, r27
+    582c:	28 f4       	brcc	.+10     	; 0x5838 <__moddi3+0xa32>
+    582e:	11 e0       	ldi	r17, 0x01	; 1
+    5830:	a1 2e       	mov	r10, r17
+    5832:	b1 2c       	mov	r11, r1
+    5834:	c1 2c       	mov	r12, r1
+    5836:	d1 2c       	mov	r13, r1
+    5838:	79 01       	movw	r14, r18
+    583a:	8a 01       	movw	r16, r20
+    583c:	ea 18       	sub	r14, r10
+    583e:	fb 08       	sbc	r15, r11
+    5840:	0c 09       	sbc	r16, r12
+    5842:	1d 09       	sbc	r17, r13
+    5844:	61 96       	adiw	r28, 0x11	; 17
+    5846:	ec ae       	std	Y+60, r14	; 0x3c
+    5848:	fd ae       	std	Y+61, r15	; 0x3d
+    584a:	0e af       	std	Y+62, r16	; 0x3e
     584c:	1f af       	std	Y+63, r17	; 0x3f
-    584e:	e2 97       	sbiw	r28, 0x32	; 50
-    5850:	d2 01       	movw	r26, r4
-    5852:	c1 01       	movw	r24, r2
-    5854:	01 2e       	mov	r0, r17
-    5856:	04 c0       	rjmp	.+8      	; 0x5860 <__moddi3+0xaac>
-    5858:	b6 95       	lsr	r27
-    585a:	a7 95       	ror	r26
-    585c:	97 95       	ror	r25
-    585e:	87 95       	ror	r24
-    5860:	0a 94       	dec	r0
-    5862:	d2 f7       	brpl	.-12     	; 0x5858 <__moddi3+0xaa4>
-    5864:	5c 01       	movw	r10, r24
-    5866:	6d 01       	movw	r12, r26
-    5868:	a2 2a       	or	r10, r18
-    586a:	b3 2a       	or	r11, r19
-    586c:	c4 2a       	or	r12, r20
-    586e:	d5 2a       	or	r13, r21
-    5870:	25 96       	adiw	r28, 0x05	; 5
-    5872:	ac ae       	std	Y+60, r10	; 0x3c
-    5874:	bd ae       	std	Y+61, r11	; 0x3d
-    5876:	ce ae       	std	Y+62, r12	; 0x3e
-    5878:	df ae       	std	Y+63, r13	; 0x3f
-    587a:	25 97       	sbiw	r28, 0x05	; 5
-    587c:	72 01       	movw	r14, r4
-    587e:	61 01       	movw	r12, r2
-    5880:	e3 96       	adiw	r28, 0x33	; 51
-    5882:	0f ac       	ldd	r0, Y+63	; 0x3f
-    5884:	e3 97       	sbiw	r28, 0x33	; 51
-    5886:	04 c0       	rjmp	.+8      	; 0x5890 <__moddi3+0xadc>
-    5888:	cc 0c       	add	r12, r12
-    588a:	dd 1c       	adc	r13, r13
-    588c:	ee 1c       	adc	r14, r14
-    588e:	ff 1c       	adc	r15, r15
-    5890:	0a 94       	dec	r0
-    5892:	d2 f7       	brpl	.-12     	; 0x5888 <__moddi3+0xad4>
-    5894:	21 96       	adiw	r28, 0x01	; 1
-    5896:	cc ae       	std	Y+60, r12	; 0x3c
-    5898:	dd ae       	std	Y+61, r13	; 0x3d
-    589a:	ee ae       	std	Y+62, r14	; 0x3e
-    589c:	ff ae       	std	Y+63, r15	; 0x3f
-    589e:	21 97       	sbiw	r28, 0x01	; 1
-    58a0:	64 01       	movw	r12, r8
-    58a2:	53 01       	movw	r10, r6
-    58a4:	01 2e       	mov	r0, r17
-    58a6:	04 c0       	rjmp	.+8      	; 0x58b0 <__moddi3+0xafc>
-    58a8:	d6 94       	lsr	r13
-    58aa:	c7 94       	ror	r12
-    58ac:	b7 94       	ror	r11
-    58ae:	a7 94       	ror	r10
-    58b0:	0a 94       	dec	r0
-    58b2:	d2 f7       	brpl	.-12     	; 0x58a8 <__moddi3+0xaf4>
-    58b4:	a4 01       	movw	r20, r8
-    58b6:	93 01       	movw	r18, r6
-    58b8:	e3 96       	adiw	r28, 0x33	; 51
-    58ba:	0f ac       	ldd	r0, Y+63	; 0x3f
-    58bc:	e3 97       	sbiw	r28, 0x33	; 51
-    58be:	04 c0       	rjmp	.+8      	; 0x58c8 <__moddi3+0xb14>
-    58c0:	22 0f       	add	r18, r18
-    58c2:	33 1f       	adc	r19, r19
-    58c4:	44 1f       	adc	r20, r20
-    58c6:	55 1f       	adc	r21, r21
-    58c8:	0a 94       	dec	r0
-    58ca:	d2 f7       	brpl	.-12     	; 0x58c0 <__moddi3+0xb0c>
-    58cc:	e8 96       	adiw	r28, 0x38	; 56
-    58ce:	8c ad       	ldd	r24, Y+60	; 0x3c
-    58d0:	9d ad       	ldd	r25, Y+61	; 0x3d
-    58d2:	ae ad       	ldd	r26, Y+62	; 0x3e
-    58d4:	bf ad       	ldd	r27, Y+63	; 0x3f
-    58d6:	e8 97       	sbiw	r28, 0x38	; 56
-    58d8:	04 c0       	rjmp	.+8      	; 0x58e2 <__moddi3+0xb2e>
-    58da:	b6 95       	lsr	r27
-    58dc:	a7 95       	ror	r26
-    58de:	97 95       	ror	r25
-    58e0:	87 95       	ror	r24
-    58e2:	1a 95       	dec	r17
-    58e4:	d2 f7       	brpl	.-12     	; 0x58da <__moddi3+0xb26>
-    58e6:	7c 01       	movw	r14, r24
-    58e8:	8d 01       	movw	r16, r26
-    58ea:	e2 2a       	or	r14, r18
-    58ec:	f3 2a       	or	r15, r19
-    58ee:	04 2b       	or	r16, r20
-    58f0:	15 2b       	or	r17, r21
-    58f2:	e9 ae       	std	Y+57, r14	; 0x39
-    58f4:	fa ae       	std	Y+58, r15	; 0x3a
-    58f6:	0b af       	std	Y+59, r16	; 0x3b
-    58f8:	1c af       	std	Y+60, r17	; 0x3c
-    58fa:	e8 96       	adiw	r28, 0x38	; 56
-    58fc:	0c ad       	ldd	r16, Y+60	; 0x3c
-    58fe:	1d ad       	ldd	r17, Y+61	; 0x3d
-    5900:	2e ad       	ldd	r18, Y+62	; 0x3e
-    5902:	3f ad       	ldd	r19, Y+63	; 0x3f
-    5904:	e8 97       	sbiw	r28, 0x38	; 56
-    5906:	e3 96       	adiw	r28, 0x33	; 51
-    5908:	0f ac       	ldd	r0, Y+63	; 0x3f
-    590a:	e3 97       	sbiw	r28, 0x33	; 51
-    590c:	04 c0       	rjmp	.+8      	; 0x5916 <__moddi3+0xb62>
-    590e:	00 0f       	add	r16, r16
-    5910:	11 1f       	adc	r17, r17
-    5912:	22 1f       	adc	r18, r18
+    584e:	61 97       	sbiw	r28, 0x11	; 17
+    5850:	89 a7       	std	Y+41, r24	; 0x29
+    5852:	9a a7       	std	Y+42, r25	; 0x2a
+    5854:	ab a7       	std	Y+43, r26	; 0x2b
+    5856:	bc a7       	std	Y+44, r27	; 0x2c
+    5858:	61 96       	adiw	r28, 0x11	; 17
+    585a:	0c ad       	ldd	r16, Y+60	; 0x3c
+    585c:	1d ad       	ldd	r17, Y+61	; 0x3d
+    585e:	2e ad       	ldd	r18, Y+62	; 0x3e
+    5860:	3f ad       	ldd	r19, Y+63	; 0x3f
+    5862:	61 97       	sbiw	r28, 0x11	; 17
+    5864:	0d a7       	std	Y+45, r16	; 0x2d
+    5866:	1e a7       	std	Y+46, r17	; 0x2e
+    5868:	2f a7       	std	Y+47, r18	; 0x2f
+    586a:	38 ab       	std	Y+48, r19	; 0x30
+    586c:	89 8b       	std	Y+17, r24	; 0x11
+    586e:	8a a5       	ldd	r24, Y+42	; 0x2a
+    5870:	8a 8b       	std	Y+18, r24	; 0x12
+    5872:	8b a5       	ldd	r24, Y+43	; 0x2b
+    5874:	8b 8b       	std	Y+19, r24	; 0x13
+    5876:	8c a5       	ldd	r24, Y+44	; 0x2c
+    5878:	8c 8b       	std	Y+20, r24	; 0x14
+    587a:	0d 8b       	std	Y+21, r16	; 0x15
+    587c:	7b c2       	rjmp	.+1270   	; 0x5d74 <__moddi3+0xf6e>
+    587e:	e3 96       	adiw	r28, 0x33	; 51
+    5880:	8f af       	std	Y+63, r24	; 0x3f
+    5882:	e3 97       	sbiw	r28, 0x33	; 51
+    5884:	a6 01       	movw	r20, r12
+    5886:	95 01       	movw	r18, r10
+    5888:	08 2e       	mov	r0, r24
+    588a:	04 c0       	rjmp	.+8      	; 0x5894 <__moddi3+0xa8e>
+    588c:	22 0f       	add	r18, r18
+    588e:	33 1f       	adc	r19, r19
+    5890:	44 1f       	adc	r20, r20
+    5892:	55 1f       	adc	r21, r21
+    5894:	0a 94       	dec	r0
+    5896:	d2 f7       	brpl	.-12     	; 0x588c <__moddi3+0xa86>
+    5898:	10 e2       	ldi	r17, 0x20	; 32
+    589a:	18 1b       	sub	r17, r24
+    589c:	e2 96       	adiw	r28, 0x32	; 50
+    589e:	1f af       	std	Y+63, r17	; 0x3f
+    58a0:	e2 97       	sbiw	r28, 0x32	; 50
+    58a2:	d2 01       	movw	r26, r4
+    58a4:	c1 01       	movw	r24, r2
+    58a6:	01 2e       	mov	r0, r17
+    58a8:	04 c0       	rjmp	.+8      	; 0x58b2 <__moddi3+0xaac>
+    58aa:	b6 95       	lsr	r27
+    58ac:	a7 95       	ror	r26
+    58ae:	97 95       	ror	r25
+    58b0:	87 95       	ror	r24
+    58b2:	0a 94       	dec	r0
+    58b4:	d2 f7       	brpl	.-12     	; 0x58aa <__moddi3+0xaa4>
+    58b6:	5c 01       	movw	r10, r24
+    58b8:	6d 01       	movw	r12, r26
+    58ba:	a2 2a       	or	r10, r18
+    58bc:	b3 2a       	or	r11, r19
+    58be:	c4 2a       	or	r12, r20
+    58c0:	d5 2a       	or	r13, r21
+    58c2:	25 96       	adiw	r28, 0x05	; 5
+    58c4:	ac ae       	std	Y+60, r10	; 0x3c
+    58c6:	bd ae       	std	Y+61, r11	; 0x3d
+    58c8:	ce ae       	std	Y+62, r12	; 0x3e
+    58ca:	df ae       	std	Y+63, r13	; 0x3f
+    58cc:	25 97       	sbiw	r28, 0x05	; 5
+    58ce:	72 01       	movw	r14, r4
+    58d0:	61 01       	movw	r12, r2
+    58d2:	e3 96       	adiw	r28, 0x33	; 51
+    58d4:	0f ac       	ldd	r0, Y+63	; 0x3f
+    58d6:	e3 97       	sbiw	r28, 0x33	; 51
+    58d8:	04 c0       	rjmp	.+8      	; 0x58e2 <__moddi3+0xadc>
+    58da:	cc 0c       	add	r12, r12
+    58dc:	dd 1c       	adc	r13, r13
+    58de:	ee 1c       	adc	r14, r14
+    58e0:	ff 1c       	adc	r15, r15
+    58e2:	0a 94       	dec	r0
+    58e4:	d2 f7       	brpl	.-12     	; 0x58da <__moddi3+0xad4>
+    58e6:	21 96       	adiw	r28, 0x01	; 1
+    58e8:	cc ae       	std	Y+60, r12	; 0x3c
+    58ea:	dd ae       	std	Y+61, r13	; 0x3d
+    58ec:	ee ae       	std	Y+62, r14	; 0x3e
+    58ee:	ff ae       	std	Y+63, r15	; 0x3f
+    58f0:	21 97       	sbiw	r28, 0x01	; 1
+    58f2:	64 01       	movw	r12, r8
+    58f4:	53 01       	movw	r10, r6
+    58f6:	01 2e       	mov	r0, r17
+    58f8:	04 c0       	rjmp	.+8      	; 0x5902 <__moddi3+0xafc>
+    58fa:	d6 94       	lsr	r13
+    58fc:	c7 94       	ror	r12
+    58fe:	b7 94       	ror	r11
+    5900:	a7 94       	ror	r10
+    5902:	0a 94       	dec	r0
+    5904:	d2 f7       	brpl	.-12     	; 0x58fa <__moddi3+0xaf4>
+    5906:	a4 01       	movw	r20, r8
+    5908:	93 01       	movw	r18, r6
+    590a:	e3 96       	adiw	r28, 0x33	; 51
+    590c:	0f ac       	ldd	r0, Y+63	; 0x3f
+    590e:	e3 97       	sbiw	r28, 0x33	; 51
+    5910:	04 c0       	rjmp	.+8      	; 0x591a <__moddi3+0xb14>
+    5912:	22 0f       	add	r18, r18
     5914:	33 1f       	adc	r19, r19
-    5916:	0a 94       	dec	r0
-    5918:	d2 f7       	brpl	.-12     	; 0x590e <__moddi3+0xb5a>
-    591a:	0d ab       	std	Y+53, r16	; 0x35
-    591c:	1e ab       	std	Y+54, r17	; 0x36
-    591e:	2f ab       	std	Y+55, r18	; 0x37
-    5920:	38 af       	std	Y+56, r19	; 0x38
-    5922:	25 96       	adiw	r28, 0x05	; 5
-    5924:	2c ad       	ldd	r18, Y+60	; 0x3c
-    5926:	3d ad       	ldd	r19, Y+61	; 0x3d
-    5928:	4e ad       	ldd	r20, Y+62	; 0x3e
-    592a:	5f ad       	ldd	r21, Y+63	; 0x3f
-    592c:	25 97       	sbiw	r28, 0x05	; 5
-    592e:	3a 01       	movw	r6, r20
-    5930:	88 24       	eor	r8, r8
-    5932:	99 24       	eor	r9, r9
-    5934:	40 70       	andi	r20, 0x00	; 0
-    5936:	50 70       	andi	r21, 0x00	; 0
-    5938:	a5 96       	adiw	r28, 0x25	; 37
-    593a:	2c af       	std	Y+60, r18	; 0x3c
-    593c:	3d af       	std	Y+61, r19	; 0x3d
-    593e:	4e af       	std	Y+62, r20	; 0x3e
-    5940:	5f af       	std	Y+63, r21	; 0x3f
-    5942:	a5 97       	sbiw	r28, 0x25	; 37
-    5944:	c6 01       	movw	r24, r12
-    5946:	b5 01       	movw	r22, r10
-    5948:	a4 01       	movw	r20, r8
-    594a:	93 01       	movw	r18, r6
-    594c:	0e 94 74 32 	call	0x64e8	; 0x64e8 <__udivmodsi4>
-    5950:	7b 01       	movw	r14, r22
-    5952:	8c 01       	movw	r16, r24
-    5954:	c6 01       	movw	r24, r12
-    5956:	b5 01       	movw	r22, r10
-    5958:	a4 01       	movw	r20, r8
-    595a:	93 01       	movw	r18, r6
-    595c:	0e 94 74 32 	call	0x64e8	; 0x64e8 <__udivmodsi4>
-    5960:	c9 01       	movw	r24, r18
-    5962:	da 01       	movw	r26, r20
-    5964:	1c 01       	movw	r2, r24
-    5966:	2d 01       	movw	r4, r26
-    5968:	c2 01       	movw	r24, r4
-    596a:	b1 01       	movw	r22, r2
-    596c:	a5 96       	adiw	r28, 0x25	; 37
-    596e:	2c ad       	ldd	r18, Y+60	; 0x3c
-    5970:	3d ad       	ldd	r19, Y+61	; 0x3d
-    5972:	4e ad       	ldd	r20, Y+62	; 0x3e
-    5974:	5f ad       	ldd	r21, Y+63	; 0x3f
-    5976:	a5 97       	sbiw	r28, 0x25	; 37
-    5978:	0e 94 41 32 	call	0x6482	; 0x6482 <__mulsi3>
-    597c:	9b 01       	movw	r18, r22
-    597e:	ac 01       	movw	r20, r24
-    5980:	87 01       	movw	r16, r14
-    5982:	ff 24       	eor	r15, r15
-    5984:	ee 24       	eor	r14, r14
-    5986:	a9 ac       	ldd	r10, Y+57	; 0x39
-    5988:	ba ac       	ldd	r11, Y+58	; 0x3a
-    598a:	cb ac       	ldd	r12, Y+59	; 0x3b
-    598c:	dc ac       	ldd	r13, Y+60	; 0x3c
-    598e:	c6 01       	movw	r24, r12
-    5990:	aa 27       	eor	r26, r26
-    5992:	bb 27       	eor	r27, r27
-    5994:	57 01       	movw	r10, r14
-    5996:	68 01       	movw	r12, r16
-    5998:	a8 2a       	or	r10, r24
-    599a:	b9 2a       	or	r11, r25
-    599c:	ca 2a       	or	r12, r26
-    599e:	db 2a       	or	r13, r27
-    59a0:	a2 16       	cp	r10, r18
-    59a2:	b3 06       	cpc	r11, r19
-    59a4:	c4 06       	cpc	r12, r20
-    59a6:	d5 06       	cpc	r13, r21
-    59a8:	10 f5       	brcc	.+68     	; 0x59ee <__moddi3+0xc3a>
-    59aa:	08 94       	sec
-    59ac:	21 08       	sbc	r2, r1
-    59ae:	31 08       	sbc	r3, r1
-    59b0:	41 08       	sbc	r4, r1
-    59b2:	51 08       	sbc	r5, r1
-    59b4:	25 96       	adiw	r28, 0x05	; 5
-    59b6:	ec ac       	ldd	r14, Y+60	; 0x3c
-    59b8:	fd ac       	ldd	r15, Y+61	; 0x3d
-    59ba:	0e ad       	ldd	r16, Y+62	; 0x3e
-    59bc:	1f ad       	ldd	r17, Y+63	; 0x3f
-    59be:	25 97       	sbiw	r28, 0x05	; 5
-    59c0:	ae 0c       	add	r10, r14
-    59c2:	bf 1c       	adc	r11, r15
-    59c4:	c0 1e       	adc	r12, r16
-    59c6:	d1 1e       	adc	r13, r17
-    59c8:	ae 14       	cp	r10, r14
-    59ca:	bf 04       	cpc	r11, r15
-    59cc:	c0 06       	cpc	r12, r16
-    59ce:	d1 06       	cpc	r13, r17
-    59d0:	70 f0       	brcs	.+28     	; 0x59ee <__moddi3+0xc3a>
-    59d2:	a2 16       	cp	r10, r18
-    59d4:	b3 06       	cpc	r11, r19
-    59d6:	c4 06       	cpc	r12, r20
-    59d8:	d5 06       	cpc	r13, r21
-    59da:	48 f4       	brcc	.+18     	; 0x59ee <__moddi3+0xc3a>
-    59dc:	08 94       	sec
-    59de:	21 08       	sbc	r2, r1
-    59e0:	31 08       	sbc	r3, r1
-    59e2:	41 08       	sbc	r4, r1
-    59e4:	51 08       	sbc	r5, r1
-    59e6:	ae 0c       	add	r10, r14
-    59e8:	bf 1c       	adc	r11, r15
-    59ea:	c0 1e       	adc	r12, r16
-    59ec:	d1 1e       	adc	r13, r17
-    59ee:	a2 1a       	sub	r10, r18
-    59f0:	b3 0a       	sbc	r11, r19
-    59f2:	c4 0a       	sbc	r12, r20
-    59f4:	d5 0a       	sbc	r13, r21
-    59f6:	c6 01       	movw	r24, r12
-    59f8:	b5 01       	movw	r22, r10
-    59fa:	a4 01       	movw	r20, r8
-    59fc:	93 01       	movw	r18, r6
-    59fe:	0e 94 74 32 	call	0x64e8	; 0x64e8 <__udivmodsi4>
-    5a02:	7b 01       	movw	r14, r22
-    5a04:	8c 01       	movw	r16, r24
-    5a06:	c6 01       	movw	r24, r12
-    5a08:	b5 01       	movw	r22, r10
-    5a0a:	a4 01       	movw	r20, r8
-    5a0c:	93 01       	movw	r18, r6
-    5a0e:	0e 94 74 32 	call	0x64e8	; 0x64e8 <__udivmodsi4>
-    5a12:	c9 01       	movw	r24, r18
-    5a14:	da 01       	movw	r26, r20
-    5a16:	3c 01       	movw	r6, r24
-    5a18:	4d 01       	movw	r8, r26
-    5a1a:	c4 01       	movw	r24, r8
-    5a1c:	b3 01       	movw	r22, r6
-    5a1e:	a5 96       	adiw	r28, 0x25	; 37
-    5a20:	2c ad       	ldd	r18, Y+60	; 0x3c
-    5a22:	3d ad       	ldd	r19, Y+61	; 0x3d
-    5a24:	4e ad       	ldd	r20, Y+62	; 0x3e
-    5a26:	5f ad       	ldd	r21, Y+63	; 0x3f
-    5a28:	a5 97       	sbiw	r28, 0x25	; 37
-    5a2a:	0e 94 41 32 	call	0x6482	; 0x6482 <__mulsi3>
-    5a2e:	9b 01       	movw	r18, r22
-    5a30:	ac 01       	movw	r20, r24
-    5a32:	87 01       	movw	r16, r14
-    5a34:	ff 24       	eor	r15, r15
-    5a36:	ee 24       	eor	r14, r14
-    5a38:	89 ad       	ldd	r24, Y+57	; 0x39
-    5a3a:	9a ad       	ldd	r25, Y+58	; 0x3a
-    5a3c:	ab ad       	ldd	r26, Y+59	; 0x3b
-    5a3e:	bc ad       	ldd	r27, Y+60	; 0x3c
-    5a40:	a0 70       	andi	r26, 0x00	; 0
-    5a42:	b0 70       	andi	r27, 0x00	; 0
-    5a44:	57 01       	movw	r10, r14
-    5a46:	68 01       	movw	r12, r16
-    5a48:	a8 2a       	or	r10, r24
-    5a4a:	b9 2a       	or	r11, r25
-    5a4c:	ca 2a       	or	r12, r26
-    5a4e:	db 2a       	or	r13, r27
-    5a50:	a2 16       	cp	r10, r18
-    5a52:	b3 06       	cpc	r11, r19
-    5a54:	c4 06       	cpc	r12, r20
-    5a56:	d5 06       	cpc	r13, r21
-    5a58:	10 f5       	brcc	.+68     	; 0x5a9e <__moddi3+0xcea>
-    5a5a:	08 94       	sec
-    5a5c:	61 08       	sbc	r6, r1
-    5a5e:	71 08       	sbc	r7, r1
-    5a60:	81 08       	sbc	r8, r1
-    5a62:	91 08       	sbc	r9, r1
-    5a64:	25 96       	adiw	r28, 0x05	; 5
-    5a66:	6c ad       	ldd	r22, Y+60	; 0x3c
-    5a68:	7d ad       	ldd	r23, Y+61	; 0x3d
-    5a6a:	8e ad       	ldd	r24, Y+62	; 0x3e
-    5a6c:	9f ad       	ldd	r25, Y+63	; 0x3f
-    5a6e:	25 97       	sbiw	r28, 0x05	; 5
-    5a70:	a6 0e       	add	r10, r22
-    5a72:	b7 1e       	adc	r11, r23
-    5a74:	c8 1e       	adc	r12, r24
-    5a76:	d9 1e       	adc	r13, r25
-    5a78:	a6 16       	cp	r10, r22
-    5a7a:	b7 06       	cpc	r11, r23
-    5a7c:	c8 06       	cpc	r12, r24
-    5a7e:	d9 06       	cpc	r13, r25
-    5a80:	70 f0       	brcs	.+28     	; 0x5a9e <__moddi3+0xcea>
-    5a82:	a2 16       	cp	r10, r18
-    5a84:	b3 06       	cpc	r11, r19
-    5a86:	c4 06       	cpc	r12, r20
-    5a88:	d5 06       	cpc	r13, r21
-    5a8a:	48 f4       	brcc	.+18     	; 0x5a9e <__moddi3+0xcea>
-    5a8c:	08 94       	sec
-    5a8e:	61 08       	sbc	r6, r1
-    5a90:	71 08       	sbc	r7, r1
-    5a92:	81 08       	sbc	r8, r1
-    5a94:	91 08       	sbc	r9, r1
-    5a96:	a6 0e       	add	r10, r22
-    5a98:	b7 1e       	adc	r11, r23
-    5a9a:	c8 1e       	adc	r12, r24
-    5a9c:	d9 1e       	adc	r13, r25
-    5a9e:	d6 01       	movw	r26, r12
-    5aa0:	c5 01       	movw	r24, r10
-    5aa2:	82 1b       	sub	r24, r18
-    5aa4:	93 0b       	sbc	r25, r19
-    5aa6:	a4 0b       	sbc	r26, r20
-    5aa8:	b5 0b       	sbc	r27, r21
-    5aaa:	89 ab       	std	Y+49, r24	; 0x31
-    5aac:	9a ab       	std	Y+50, r25	; 0x32
-    5aae:	ab ab       	std	Y+51, r26	; 0x33
-    5ab0:	bc ab       	std	Y+52, r27	; 0x34
-    5ab2:	d1 01       	movw	r26, r2
-    5ab4:	99 27       	eor	r25, r25
-    5ab6:	88 27       	eor	r24, r24
-    5ab8:	84 01       	movw	r16, r8
-    5aba:	73 01       	movw	r14, r6
-    5abc:	e8 2a       	or	r14, r24
-    5abe:	f9 2a       	or	r15, r25
-    5ac0:	0a 2b       	or	r16, r26
-    5ac2:	1b 2b       	or	r17, r27
-    5ac4:	8f ef       	ldi	r24, 0xFF	; 255
-    5ac6:	a8 2e       	mov	r10, r24
-    5ac8:	8f ef       	ldi	r24, 0xFF	; 255
-    5aca:	b8 2e       	mov	r11, r24
-    5acc:	c1 2c       	mov	r12, r1
-    5ace:	d1 2c       	mov	r13, r1
-    5ad0:	ae 20       	and	r10, r14
-    5ad2:	bf 20       	and	r11, r15
-    5ad4:	c0 22       	and	r12, r16
-    5ad6:	d1 22       	and	r13, r17
-    5ad8:	78 01       	movw	r14, r16
-    5ada:	00 27       	eor	r16, r16
-    5adc:	11 27       	eor	r17, r17
-    5ade:	21 96       	adiw	r28, 0x01	; 1
-    5ae0:	6c ac       	ldd	r6, Y+60	; 0x3c
-    5ae2:	7d ac       	ldd	r7, Y+61	; 0x3d
-    5ae4:	8e ac       	ldd	r8, Y+62	; 0x3e
-    5ae6:	9f ac       	ldd	r9, Y+63	; 0x3f
-    5ae8:	21 97       	sbiw	r28, 0x01	; 1
-    5aea:	2f ef       	ldi	r18, 0xFF	; 255
-    5aec:	3f ef       	ldi	r19, 0xFF	; 255
-    5aee:	40 e0       	ldi	r20, 0x00	; 0
-    5af0:	50 e0       	ldi	r21, 0x00	; 0
-    5af2:	62 22       	and	r6, r18
-    5af4:	73 22       	and	r7, r19
-    5af6:	84 22       	and	r8, r20
-    5af8:	95 22       	and	r9, r21
-    5afa:	21 96       	adiw	r28, 0x01	; 1
-    5afc:	6c ad       	ldd	r22, Y+60	; 0x3c
-    5afe:	7d ad       	ldd	r23, Y+61	; 0x3d
-    5b00:	8e ad       	ldd	r24, Y+62	; 0x3e
-    5b02:	9f ad       	ldd	r25, Y+63	; 0x3f
-    5b04:	21 97       	sbiw	r28, 0x01	; 1
-    5b06:	ac 01       	movw	r20, r24
-    5b08:	66 27       	eor	r22, r22
-    5b0a:	77 27       	eor	r23, r23
-    5b0c:	ad 96       	adiw	r28, 0x2d	; 45
-    5b0e:	4c af       	std	Y+60, r20	; 0x3c
-    5b10:	5d af       	std	Y+61, r21	; 0x3d
-    5b12:	6e af       	std	Y+62, r22	; 0x3e
-    5b14:	7f af       	std	Y+63, r23	; 0x3f
-    5b16:	ad 97       	sbiw	r28, 0x2d	; 45
-    5b18:	c6 01       	movw	r24, r12
-    5b1a:	b5 01       	movw	r22, r10
-    5b1c:	a4 01       	movw	r20, r8
-    5b1e:	93 01       	movw	r18, r6
-    5b20:	0e 94 41 32 	call	0x6482	; 0x6482 <__mulsi3>
-    5b24:	a9 96       	adiw	r28, 0x29	; 41
-    5b26:	6c af       	std	Y+60, r22	; 0x3c
-    5b28:	7d af       	std	Y+61, r23	; 0x3d
-    5b2a:	8e af       	std	Y+62, r24	; 0x3e
-    5b2c:	9f af       	std	Y+63, r25	; 0x3f
-    5b2e:	a9 97       	sbiw	r28, 0x29	; 41
-    5b30:	c6 01       	movw	r24, r12
-    5b32:	b5 01       	movw	r22, r10
-    5b34:	ad 96       	adiw	r28, 0x2d	; 45
-    5b36:	2c ad       	ldd	r18, Y+60	; 0x3c
-    5b38:	3d ad       	ldd	r19, Y+61	; 0x3d
-    5b3a:	4e ad       	ldd	r20, Y+62	; 0x3e
-    5b3c:	5f ad       	ldd	r21, Y+63	; 0x3f
-    5b3e:	ad 97       	sbiw	r28, 0x2d	; 45
-    5b40:	0e 94 41 32 	call	0x6482	; 0x6482 <__mulsi3>
-    5b44:	1b 01       	movw	r2, r22
-    5b46:	2c 01       	movw	r4, r24
-    5b48:	c8 01       	movw	r24, r16
-    5b4a:	b7 01       	movw	r22, r14
-    5b4c:	a4 01       	movw	r20, r8
-    5b4e:	93 01       	movw	r18, r6
-    5b50:	0e 94 41 32 	call	0x6482	; 0x6482 <__mulsi3>
-    5b54:	5b 01       	movw	r10, r22
-    5b56:	6c 01       	movw	r12, r24
-    5b58:	c8 01       	movw	r24, r16
-    5b5a:	b7 01       	movw	r22, r14
-    5b5c:	ad 96       	adiw	r28, 0x2d	; 45
-    5b5e:	2c ad       	ldd	r18, Y+60	; 0x3c
-    5b60:	3d ad       	ldd	r19, Y+61	; 0x3d
-    5b62:	4e ad       	ldd	r20, Y+62	; 0x3e
-    5b64:	5f ad       	ldd	r21, Y+63	; 0x3f
-    5b66:	ad 97       	sbiw	r28, 0x2d	; 45
-    5b68:	0e 94 41 32 	call	0x6482	; 0x6482 <__mulsi3>
-    5b6c:	7b 01       	movw	r14, r22
-    5b6e:	8c 01       	movw	r16, r24
-    5b70:	a6 01       	movw	r20, r12
-    5b72:	95 01       	movw	r18, r10
-    5b74:	22 0d       	add	r18, r2
-    5b76:	33 1d       	adc	r19, r3
-    5b78:	44 1d       	adc	r20, r4
-    5b7a:	55 1d       	adc	r21, r5
-    5b7c:	a9 96       	adiw	r28, 0x29	; 41
-    5b7e:	6c ac       	ldd	r6, Y+60	; 0x3c
-    5b80:	7d ac       	ldd	r7, Y+61	; 0x3d
-    5b82:	8e ac       	ldd	r8, Y+62	; 0x3e
-    5b84:	9f ac       	ldd	r9, Y+63	; 0x3f
-    5b86:	a9 97       	sbiw	r28, 0x29	; 41
-    5b88:	c4 01       	movw	r24, r8
-    5b8a:	aa 27       	eor	r26, r26
-    5b8c:	bb 27       	eor	r27, r27
-    5b8e:	28 0f       	add	r18, r24
-    5b90:	39 1f       	adc	r19, r25
-    5b92:	4a 1f       	adc	r20, r26
-    5b94:	5b 1f       	adc	r21, r27
-    5b96:	2a 15       	cp	r18, r10
-    5b98:	3b 05       	cpc	r19, r11
-    5b9a:	4c 05       	cpc	r20, r12
-    5b9c:	5d 05       	cpc	r21, r13
-    5b9e:	48 f4       	brcc	.+18     	; 0x5bb2 <__moddi3+0xdfe>
-    5ba0:	81 2c       	mov	r8, r1
-    5ba2:	91 2c       	mov	r9, r1
-    5ba4:	e1 e0       	ldi	r30, 0x01	; 1
-    5ba6:	ae 2e       	mov	r10, r30
-    5ba8:	b1 2c       	mov	r11, r1
-    5baa:	e8 0c       	add	r14, r8
-    5bac:	f9 1c       	adc	r15, r9
-    5bae:	0a 1d       	adc	r16, r10
-    5bb0:	1b 1d       	adc	r17, r11
-    5bb2:	ca 01       	movw	r24, r20
-    5bb4:	aa 27       	eor	r26, r26
-    5bb6:	bb 27       	eor	r27, r27
-    5bb8:	57 01       	movw	r10, r14
-    5bba:	68 01       	movw	r12, r16
-    5bbc:	a8 0e       	add	r10, r24
-    5bbe:	b9 1e       	adc	r11, r25
-    5bc0:	ca 1e       	adc	r12, r26
-    5bc2:	db 1e       	adc	r13, r27
-    5bc4:	a9 01       	movw	r20, r18
-    5bc6:	33 27       	eor	r19, r19
-    5bc8:	22 27       	eor	r18, r18
-    5bca:	a9 96       	adiw	r28, 0x29	; 41
-    5bcc:	8c ad       	ldd	r24, Y+60	; 0x3c
-    5bce:	9d ad       	ldd	r25, Y+61	; 0x3d
-    5bd0:	ae ad       	ldd	r26, Y+62	; 0x3e
-    5bd2:	bf ad       	ldd	r27, Y+63	; 0x3f
-    5bd4:	a9 97       	sbiw	r28, 0x29	; 41
-    5bd6:	a0 70       	andi	r26, 0x00	; 0
-    5bd8:	b0 70       	andi	r27, 0x00	; 0
-    5bda:	28 0f       	add	r18, r24
-    5bdc:	39 1f       	adc	r19, r25
-    5bde:	4a 1f       	adc	r20, r26
-    5be0:	5b 1f       	adc	r21, r27
-    5be2:	e9 a8       	ldd	r14, Y+49	; 0x31
-    5be4:	fa a8       	ldd	r15, Y+50	; 0x32
-    5be6:	0b a9       	ldd	r16, Y+51	; 0x33
-    5be8:	1c a9       	ldd	r17, Y+52	; 0x34
-    5bea:	ea 14       	cp	r14, r10
-    5bec:	fb 04       	cpc	r15, r11
-    5bee:	0c 05       	cpc	r16, r12
-    5bf0:	1d 05       	cpc	r17, r13
-    5bf2:	70 f0       	brcs	.+28     	; 0x5c10 <__moddi3+0xe5c>
-    5bf4:	ae 14       	cp	r10, r14
-    5bf6:	bf 04       	cpc	r11, r15
-    5bf8:	c0 06       	cpc	r12, r16
-    5bfa:	d1 06       	cpc	r13, r17
-    5bfc:	89 f5       	brne	.+98     	; 0x5c60 <__moddi3+0xeac>
-    5bfe:	6d a9       	ldd	r22, Y+53	; 0x35
-    5c00:	7e a9       	ldd	r23, Y+54	; 0x36
-    5c02:	8f a9       	ldd	r24, Y+55	; 0x37
-    5c04:	98 ad       	ldd	r25, Y+56	; 0x38
-    5c06:	62 17       	cp	r22, r18
-    5c08:	73 07       	cpc	r23, r19
-    5c0a:	84 07       	cpc	r24, r20
-    5c0c:	95 07       	cpc	r25, r21
-    5c0e:	40 f5       	brcc	.+80     	; 0x5c60 <__moddi3+0xeac>
-    5c10:	da 01       	movw	r26, r20
-    5c12:	c9 01       	movw	r24, r18
-    5c14:	21 96       	adiw	r28, 0x01	; 1
-    5c16:	6c ac       	ldd	r6, Y+60	; 0x3c
-    5c18:	7d ac       	ldd	r7, Y+61	; 0x3d
-    5c1a:	8e ac       	ldd	r8, Y+62	; 0x3e
-    5c1c:	9f ac       	ldd	r9, Y+63	; 0x3f
-    5c1e:	21 97       	sbiw	r28, 0x01	; 1
-    5c20:	86 19       	sub	r24, r6
-    5c22:	97 09       	sbc	r25, r7
-    5c24:	a8 09       	sbc	r26, r8
-    5c26:	b9 09       	sbc	r27, r9
-    5c28:	25 96       	adiw	r28, 0x05	; 5
-    5c2a:	ec ac       	ldd	r14, Y+60	; 0x3c
-    5c2c:	fd ac       	ldd	r15, Y+61	; 0x3d
-    5c2e:	0e ad       	ldd	r16, Y+62	; 0x3e
-    5c30:	1f ad       	ldd	r17, Y+63	; 0x3f
-    5c32:	25 97       	sbiw	r28, 0x05	; 5
-    5c34:	ae 18       	sub	r10, r14
-    5c36:	bf 08       	sbc	r11, r15
-    5c38:	c0 0a       	sbc	r12, r16
-    5c3a:	d1 0a       	sbc	r13, r17
-    5c3c:	ee 24       	eor	r14, r14
-    5c3e:	ff 24       	eor	r15, r15
-    5c40:	87 01       	movw	r16, r14
-    5c42:	28 17       	cp	r18, r24
-    5c44:	39 07       	cpc	r19, r25
-    5c46:	4a 07       	cpc	r20, r26
-    5c48:	5b 07       	cpc	r21, r27
-    5c4a:	28 f4       	brcc	.+10     	; 0x5c56 <__moddi3+0xea2>
-    5c4c:	21 e0       	ldi	r18, 0x01	; 1
-    5c4e:	e2 2e       	mov	r14, r18
-    5c50:	f1 2c       	mov	r15, r1
-    5c52:	01 2d       	mov	r16, r1
-    5c54:	11 2d       	mov	r17, r1
-    5c56:	ae 18       	sub	r10, r14
-    5c58:	bf 08       	sbc	r11, r15
-    5c5a:	c0 0a       	sbc	r12, r16
-    5c5c:	d1 0a       	sbc	r13, r17
-    5c5e:	02 c0       	rjmp	.+4      	; 0x5c64 <__moddi3+0xeb0>
-    5c60:	da 01       	movw	r26, r20
-    5c62:	c9 01       	movw	r24, r18
-    5c64:	6d a8       	ldd	r6, Y+53	; 0x35
-    5c66:	7e a8       	ldd	r7, Y+54	; 0x36
-    5c68:	8f a8       	ldd	r8, Y+55	; 0x37
-    5c6a:	98 ac       	ldd	r9, Y+56	; 0x38
-    5c6c:	68 1a       	sub	r6, r24
-    5c6e:	79 0a       	sbc	r7, r25
-    5c70:	8a 0a       	sbc	r8, r26
-    5c72:	9b 0a       	sbc	r9, r27
-    5c74:	09 a9       	ldd	r16, Y+49	; 0x31
-    5c76:	1a a9       	ldd	r17, Y+50	; 0x32
-    5c78:	2b a9       	ldd	r18, Y+51	; 0x33
-    5c7a:	3c a9       	ldd	r19, Y+52	; 0x34
-    5c7c:	0a 19       	sub	r16, r10
-    5c7e:	1b 09       	sbc	r17, r11
-    5c80:	2c 09       	sbc	r18, r12
-    5c82:	3d 09       	sbc	r19, r13
-    5c84:	58 01       	movw	r10, r16
-    5c86:	69 01       	movw	r12, r18
-    5c88:	22 24       	eor	r2, r2
-    5c8a:	33 24       	eor	r3, r3
-    5c8c:	21 01       	movw	r4, r2
-    5c8e:	2d a9       	ldd	r18, Y+53	; 0x35
-    5c90:	3e a9       	ldd	r19, Y+54	; 0x36
-    5c92:	4f a9       	ldd	r20, Y+55	; 0x37
-    5c94:	58 ad       	ldd	r21, Y+56	; 0x38
-    5c96:	26 15       	cp	r18, r6
-    5c98:	37 05       	cpc	r19, r7
-    5c9a:	48 05       	cpc	r20, r8
-    5c9c:	59 05       	cpc	r21, r9
-    5c9e:	28 f4       	brcc	.+10     	; 0x5caa <__moddi3+0xef6>
-    5ca0:	81 e0       	ldi	r24, 0x01	; 1
-    5ca2:	28 2e       	mov	r2, r24
-    5ca4:	31 2c       	mov	r3, r1
-    5ca6:	41 2c       	mov	r4, r1
-    5ca8:	51 2c       	mov	r5, r1
-    5caa:	86 01       	movw	r16, r12
-    5cac:	75 01       	movw	r14, r10
-    5cae:	e2 18       	sub	r14, r2
-    5cb0:	f3 08       	sbc	r15, r3
-    5cb2:	04 09       	sbc	r16, r4
-    5cb4:	15 09       	sbc	r17, r5
-    5cb6:	a8 01       	movw	r20, r16
-    5cb8:	97 01       	movw	r18, r14
-    5cba:	e2 96       	adiw	r28, 0x32	; 50
-    5cbc:	0f ac       	ldd	r0, Y+63	; 0x3f
-    5cbe:	e2 97       	sbiw	r28, 0x32	; 50
-    5cc0:	04 c0       	rjmp	.+8      	; 0x5cca <__moddi3+0xf16>
-    5cc2:	22 0f       	add	r18, r18
-    5cc4:	33 1f       	adc	r19, r19
-    5cc6:	44 1f       	adc	r20, r20
-    5cc8:	55 1f       	adc	r21, r21
-    5cca:	0a 94       	dec	r0
-    5ccc:	d2 f7       	brpl	.-12     	; 0x5cc2 <__moddi3+0xf0e>
-    5cce:	d4 01       	movw	r26, r8
-    5cd0:	c3 01       	movw	r24, r6
-    5cd2:	e3 96       	adiw	r28, 0x33	; 51
-    5cd4:	0f ac       	ldd	r0, Y+63	; 0x3f
-    5cd6:	e3 97       	sbiw	r28, 0x33	; 51
-    5cd8:	04 c0       	rjmp	.+8      	; 0x5ce2 <__moddi3+0xf2e>
-    5cda:	b6 95       	lsr	r27
-    5cdc:	a7 95       	ror	r26
-    5cde:	97 95       	ror	r25
-    5ce0:	87 95       	ror	r24
-    5ce2:	0a 94       	dec	r0
-    5ce4:	d2 f7       	brpl	.-12     	; 0x5cda <__moddi3+0xf26>
-    5ce6:	28 2b       	or	r18, r24
-    5ce8:	39 2b       	or	r19, r25
-    5cea:	4a 2b       	or	r20, r26
-    5cec:	5b 2b       	or	r21, r27
-    5cee:	29 a7       	std	Y+41, r18	; 0x29
-    5cf0:	3a a7       	std	Y+42, r19	; 0x2a
-    5cf2:	4b a7       	std	Y+43, r20	; 0x2b
-    5cf4:	5c a7       	std	Y+44, r21	; 0x2c
-    5cf6:	e3 96       	adiw	r28, 0x33	; 51
-    5cf8:	0f ac       	ldd	r0, Y+63	; 0x3f
-    5cfa:	e3 97       	sbiw	r28, 0x33	; 51
-    5cfc:	04 c0       	rjmp	.+8      	; 0x5d06 <__moddi3+0xf52>
-    5cfe:	16 95       	lsr	r17
-    5d00:	07 95       	ror	r16
-    5d02:	f7 94       	ror	r15
-    5d04:	e7 94       	ror	r14
-    5d06:	0a 94       	dec	r0
-    5d08:	d2 f7       	brpl	.-12     	; 0x5cfe <__moddi3+0xf4a>
-    5d0a:	ed a6       	std	Y+45, r14	; 0x2d
-    5d0c:	fe a6       	std	Y+46, r15	; 0x2e
-    5d0e:	0f a7       	std	Y+47, r16	; 0x2f
-    5d10:	18 ab       	std	Y+48, r17	; 0x30
-    5d12:	29 8b       	std	Y+17, r18	; 0x11
-    5d14:	8a a5       	ldd	r24, Y+42	; 0x2a
-    5d16:	8a 8b       	std	Y+18, r24	; 0x12
-    5d18:	8b a5       	ldd	r24, Y+43	; 0x2b
-    5d1a:	8b 8b       	std	Y+19, r24	; 0x13
-    5d1c:	8c a5       	ldd	r24, Y+44	; 0x2c
-    5d1e:	8c 8b       	std	Y+20, r24	; 0x14
-    5d20:	ed 8a       	std	Y+21, r14	; 0x15
-    5d22:	8e a5       	ldd	r24, Y+46	; 0x2e
-    5d24:	8e 8b       	std	Y+22, r24	; 0x16
-    5d26:	8f a5       	ldd	r24, Y+47	; 0x2f
-    5d28:	8f 8b       	std	Y+23, r24	; 0x17
-    5d2a:	88 a9       	ldd	r24, Y+48	; 0x30
-    5d2c:	88 8f       	std	Y+24, r24	; 0x18
-    5d2e:	e1 96       	adiw	r28, 0x31	; 49
-    5d30:	4c ad       	ldd	r20, Y+60	; 0x3c
-    5d32:	5d ad       	ldd	r21, Y+61	; 0x3d
-    5d34:	6e ad       	ldd	r22, Y+62	; 0x3e
-    5d36:	7f ad       	ldd	r23, Y+63	; 0x3f
-    5d38:	e1 97       	sbiw	r28, 0x31	; 49
-    5d3a:	41 15       	cp	r20, r1
-    5d3c:	51 05       	cpc	r21, r1
-    5d3e:	61 05       	cpc	r22, r1
-    5d40:	71 05       	cpc	r23, r1
-    5d42:	09 f4       	brne	.+2      	; 0x5d46 <__moddi3+0xf92>
-    5d44:	67 c0       	rjmp	.+206    	; 0x5e14 <__moddi3+0x1060>
-    5d46:	89 89       	ldd	r24, Y+17	; 0x11
-    5d48:	2a 89       	ldd	r18, Y+18	; 0x12
-    5d4a:	3b 89       	ldd	r19, Y+19	; 0x13
-    5d4c:	4c 89       	ldd	r20, Y+20	; 0x14
-    5d4e:	5d 89       	ldd	r21, Y+21	; 0x15
-    5d50:	ae 89       	ldd	r26, Y+22	; 0x16
-    5d52:	bf 89       	ldd	r27, Y+23	; 0x17
-    5d54:	18 8d       	ldd	r17, Y+24	; 0x18
-    5d56:	f8 2f       	mov	r31, r24
-    5d58:	f1 95       	neg	r31
-    5d5a:	91 e0       	ldi	r25, 0x01	; 1
-    5d5c:	1f 16       	cp	r1, r31
-    5d5e:	08 f0       	brcs	.+2      	; 0x5d62 <__moddi3+0xfae>
-    5d60:	90 e0       	ldi	r25, 0x00	; 0
-    5d62:	82 2f       	mov	r24, r18
-    5d64:	81 95       	neg	r24
-    5d66:	21 e0       	ldi	r18, 0x01	; 1
-    5d68:	18 16       	cp	r1, r24
-    5d6a:	08 f0       	brcs	.+2      	; 0x5d6e <__moddi3+0xfba>
-    5d6c:	20 e0       	ldi	r18, 0x00	; 0
-    5d6e:	e8 2f       	mov	r30, r24
-    5d70:	e9 1b       	sub	r30, r25
-    5d72:	91 e0       	ldi	r25, 0x01	; 1
-    5d74:	8e 17       	cp	r24, r30
-    5d76:	08 f0       	brcs	.+2      	; 0x5d7a <__moddi3+0xfc6>
-    5d78:	90 e0       	ldi	r25, 0x00	; 0
-    5d7a:	29 2b       	or	r18, r25
-    5d7c:	83 2f       	mov	r24, r19
-    5d7e:	81 95       	neg	r24
-    5d80:	31 e0       	ldi	r19, 0x01	; 1
-    5d82:	18 16       	cp	r1, r24
-    5d84:	08 f0       	brcs	.+2      	; 0x5d88 <__moddi3+0xfd4>
-    5d86:	30 e0       	ldi	r19, 0x00	; 0
-    5d88:	78 2f       	mov	r23, r24
-    5d8a:	72 1b       	sub	r23, r18
-    5d8c:	91 e0       	ldi	r25, 0x01	; 1
-    5d8e:	87 17       	cp	r24, r23
-    5d90:	08 f0       	brcs	.+2      	; 0x5d94 <__moddi3+0xfe0>
-    5d92:	90 e0       	ldi	r25, 0x00	; 0
-    5d94:	39 2b       	or	r19, r25
-    5d96:	84 2f       	mov	r24, r20
-    5d98:	81 95       	neg	r24
-    5d9a:	21 e0       	ldi	r18, 0x01	; 1
-    5d9c:	18 16       	cp	r1, r24
-    5d9e:	08 f0       	brcs	.+2      	; 0x5da2 <__moddi3+0xfee>
-    5da0:	20 e0       	ldi	r18, 0x00	; 0
-    5da2:	68 2f       	mov	r22, r24
-    5da4:	63 1b       	sub	r22, r19
-    5da6:	91 e0       	ldi	r25, 0x01	; 1
-    5da8:	86 17       	cp	r24, r22
-    5daa:	08 f0       	brcs	.+2      	; 0x5dae <__moddi3+0xffa>
-    5dac:	90 e0       	ldi	r25, 0x00	; 0
-    5dae:	29 2b       	or	r18, r25
-    5db0:	85 2f       	mov	r24, r21
-    5db2:	81 95       	neg	r24
-    5db4:	31 e0       	ldi	r19, 0x01	; 1
-    5db6:	18 16       	cp	r1, r24
-    5db8:	08 f0       	brcs	.+2      	; 0x5dbc <__moddi3+0x1008>
-    5dba:	30 e0       	ldi	r19, 0x00	; 0
-    5dbc:	58 2f       	mov	r21, r24
-    5dbe:	52 1b       	sub	r21, r18
-    5dc0:	91 e0       	ldi	r25, 0x01	; 1
-    5dc2:	85 17       	cp	r24, r21
-    5dc4:	08 f0       	brcs	.+2      	; 0x5dc8 <__moddi3+0x1014>
-    5dc6:	90 e0       	ldi	r25, 0x00	; 0
-    5dc8:	39 2b       	or	r19, r25
-    5dca:	8a 2f       	mov	r24, r26
-    5dcc:	81 95       	neg	r24
-    5dce:	21 e0       	ldi	r18, 0x01	; 1
-    5dd0:	18 16       	cp	r1, r24
-    5dd2:	08 f0       	brcs	.+2      	; 0x5dd6 <__moddi3+0x1022>
-    5dd4:	20 e0       	ldi	r18, 0x00	; 0
-    5dd6:	48 2f       	mov	r20, r24
-    5dd8:	43 1b       	sub	r20, r19
-    5dda:	91 e0       	ldi	r25, 0x01	; 1
-    5ddc:	84 17       	cp	r24, r20
-    5dde:	08 f0       	brcs	.+2      	; 0x5de2 <__moddi3+0x102e>
-    5de0:	90 e0       	ldi	r25, 0x00	; 0
-    5de2:	29 2b       	or	r18, r25
-    5de4:	8b 2f       	mov	r24, r27
-    5de6:	81 95       	neg	r24
-    5de8:	91 e0       	ldi	r25, 0x01	; 1
-    5dea:	18 16       	cp	r1, r24
-    5dec:	08 f0       	brcs	.+2      	; 0x5df0 <__moddi3+0x103c>
-    5dee:	90 e0       	ldi	r25, 0x00	; 0
-    5df0:	38 2f       	mov	r19, r24
-    5df2:	32 1b       	sub	r19, r18
-    5df4:	21 e0       	ldi	r18, 0x01	; 1
-    5df6:	83 17       	cp	r24, r19
-    5df8:	08 f0       	brcs	.+2      	; 0x5dfc <__moddi3+0x1048>
-    5dfa:	20 e0       	ldi	r18, 0x00	; 0
-    5dfc:	92 2b       	or	r25, r18
-    5dfe:	81 2f       	mov	r24, r17
-    5e00:	81 95       	neg	r24
-    5e02:	89 1b       	sub	r24, r25
-    5e04:	f9 8b       	std	Y+17, r31	; 0x11
-    5e06:	ea 8b       	std	Y+18, r30	; 0x12
-    5e08:	7b 8b       	std	Y+19, r23	; 0x13
-    5e0a:	6c 8b       	std	Y+20, r22	; 0x14
-    5e0c:	5d 8b       	std	Y+21, r21	; 0x15
-    5e0e:	4e 8b       	std	Y+22, r20	; 0x16
-    5e10:	3f 8b       	std	Y+23, r19	; 0x17
-    5e12:	88 8f       	std	Y+24, r24	; 0x18
-    5e14:	29 89       	ldd	r18, Y+17	; 0x11
-    5e16:	3a 89       	ldd	r19, Y+18	; 0x12
-    5e18:	4b 89       	ldd	r20, Y+19	; 0x13
-    5e1a:	5c 89       	ldd	r21, Y+20	; 0x14
-    5e1c:	6d 89       	ldd	r22, Y+21	; 0x15
-    5e1e:	7e 89       	ldd	r23, Y+22	; 0x16
-    5e20:	8f 89       	ldd	r24, Y+23	; 0x17
-    5e22:	98 8d       	ldd	r25, Y+24	; 0x18
-    5e24:	c9 58       	subi	r28, 0x89	; 137
-    5e26:	df 4f       	sbci	r29, 0xFF	; 255
-    5e28:	e2 e1       	ldi	r30, 0x12	; 18
-    5e2a:	0c 94 b2 32 	jmp	0x6564	; 0x6564 <__epilogue_restores__>
+    5916:	44 1f       	adc	r20, r20
+    5918:	55 1f       	adc	r21, r21
+    591a:	0a 94       	dec	r0
+    591c:	d2 f7       	brpl	.-12     	; 0x5912 <__moddi3+0xb0c>
+    591e:	e8 96       	adiw	r28, 0x38	; 56
+    5920:	8c ad       	ldd	r24, Y+60	; 0x3c
+    5922:	9d ad       	ldd	r25, Y+61	; 0x3d
+    5924:	ae ad       	ldd	r26, Y+62	; 0x3e
+    5926:	bf ad       	ldd	r27, Y+63	; 0x3f
+    5928:	e8 97       	sbiw	r28, 0x38	; 56
+    592a:	04 c0       	rjmp	.+8      	; 0x5934 <__moddi3+0xb2e>
+    592c:	b6 95       	lsr	r27
+    592e:	a7 95       	ror	r26
+    5930:	97 95       	ror	r25
+    5932:	87 95       	ror	r24
+    5934:	1a 95       	dec	r17
+    5936:	d2 f7       	brpl	.-12     	; 0x592c <__moddi3+0xb26>
+    5938:	7c 01       	movw	r14, r24
+    593a:	8d 01       	movw	r16, r26
+    593c:	e2 2a       	or	r14, r18
+    593e:	f3 2a       	or	r15, r19
+    5940:	04 2b       	or	r16, r20
+    5942:	15 2b       	or	r17, r21
+    5944:	e9 ae       	std	Y+57, r14	; 0x39
+    5946:	fa ae       	std	Y+58, r15	; 0x3a
+    5948:	0b af       	std	Y+59, r16	; 0x3b
+    594a:	1c af       	std	Y+60, r17	; 0x3c
+    594c:	e8 96       	adiw	r28, 0x38	; 56
+    594e:	0c ad       	ldd	r16, Y+60	; 0x3c
+    5950:	1d ad       	ldd	r17, Y+61	; 0x3d
+    5952:	2e ad       	ldd	r18, Y+62	; 0x3e
+    5954:	3f ad       	ldd	r19, Y+63	; 0x3f
+    5956:	e8 97       	sbiw	r28, 0x38	; 56
+    5958:	e3 96       	adiw	r28, 0x33	; 51
+    595a:	0f ac       	ldd	r0, Y+63	; 0x3f
+    595c:	e3 97       	sbiw	r28, 0x33	; 51
+    595e:	04 c0       	rjmp	.+8      	; 0x5968 <__moddi3+0xb62>
+    5960:	00 0f       	add	r16, r16
+    5962:	11 1f       	adc	r17, r17
+    5964:	22 1f       	adc	r18, r18
+    5966:	33 1f       	adc	r19, r19
+    5968:	0a 94       	dec	r0
+    596a:	d2 f7       	brpl	.-12     	; 0x5960 <__moddi3+0xb5a>
+    596c:	0d ab       	std	Y+53, r16	; 0x35
+    596e:	1e ab       	std	Y+54, r17	; 0x36
+    5970:	2f ab       	std	Y+55, r18	; 0x37
+    5972:	38 af       	std	Y+56, r19	; 0x38
+    5974:	25 96       	adiw	r28, 0x05	; 5
+    5976:	2c ad       	ldd	r18, Y+60	; 0x3c
+    5978:	3d ad       	ldd	r19, Y+61	; 0x3d
+    597a:	4e ad       	ldd	r20, Y+62	; 0x3e
+    597c:	5f ad       	ldd	r21, Y+63	; 0x3f
+    597e:	25 97       	sbiw	r28, 0x05	; 5
+    5980:	3a 01       	movw	r6, r20
+    5982:	88 24       	eor	r8, r8
+    5984:	99 24       	eor	r9, r9
+    5986:	40 70       	andi	r20, 0x00	; 0
+    5988:	50 70       	andi	r21, 0x00	; 0
+    598a:	a5 96       	adiw	r28, 0x25	; 37
+    598c:	2c af       	std	Y+60, r18	; 0x3c
+    598e:	3d af       	std	Y+61, r19	; 0x3d
+    5990:	4e af       	std	Y+62, r20	; 0x3e
+    5992:	5f af       	std	Y+63, r21	; 0x3f
+    5994:	a5 97       	sbiw	r28, 0x25	; 37
+    5996:	c6 01       	movw	r24, r12
+    5998:	b5 01       	movw	r22, r10
+    599a:	a4 01       	movw	r20, r8
+    599c:	93 01       	movw	r18, r6
+    599e:	0e 94 0b 30 	call	0x6016	; 0x6016 <__udivmodsi4>
+    59a2:	7b 01       	movw	r14, r22
+    59a4:	8c 01       	movw	r16, r24
+    59a6:	c6 01       	movw	r24, r12
+    59a8:	b5 01       	movw	r22, r10
+    59aa:	a4 01       	movw	r20, r8
+    59ac:	93 01       	movw	r18, r6
+    59ae:	0e 94 0b 30 	call	0x6016	; 0x6016 <__udivmodsi4>
+    59b2:	c9 01       	movw	r24, r18
+    59b4:	da 01       	movw	r26, r20
+    59b6:	1c 01       	movw	r2, r24
+    59b8:	2d 01       	movw	r4, r26
+    59ba:	c2 01       	movw	r24, r4
+    59bc:	b1 01       	movw	r22, r2
+    59be:	a5 96       	adiw	r28, 0x25	; 37
+    59c0:	2c ad       	ldd	r18, Y+60	; 0x3c
+    59c2:	3d ad       	ldd	r19, Y+61	; 0x3d
+    59c4:	4e ad       	ldd	r20, Y+62	; 0x3e
+    59c6:	5f ad       	ldd	r21, Y+63	; 0x3f
+    59c8:	a5 97       	sbiw	r28, 0x25	; 37
+    59ca:	0e 94 d8 2f 	call	0x5fb0	; 0x5fb0 <__mulsi3>
+    59ce:	9b 01       	movw	r18, r22
+    59d0:	ac 01       	movw	r20, r24
+    59d2:	87 01       	movw	r16, r14
+    59d4:	ff 24       	eor	r15, r15
+    59d6:	ee 24       	eor	r14, r14
+    59d8:	a9 ac       	ldd	r10, Y+57	; 0x39
+    59da:	ba ac       	ldd	r11, Y+58	; 0x3a
+    59dc:	cb ac       	ldd	r12, Y+59	; 0x3b
+    59de:	dc ac       	ldd	r13, Y+60	; 0x3c
+    59e0:	c6 01       	movw	r24, r12
+    59e2:	aa 27       	eor	r26, r26
+    59e4:	bb 27       	eor	r27, r27
+    59e6:	57 01       	movw	r10, r14
+    59e8:	68 01       	movw	r12, r16
+    59ea:	a8 2a       	or	r10, r24
+    59ec:	b9 2a       	or	r11, r25
+    59ee:	ca 2a       	or	r12, r26
+    59f0:	db 2a       	or	r13, r27
+    59f2:	a2 16       	cp	r10, r18
+    59f4:	b3 06       	cpc	r11, r19
+    59f6:	c4 06       	cpc	r12, r20
+    59f8:	d5 06       	cpc	r13, r21
+    59fa:	10 f5       	brcc	.+68     	; 0x5a40 <__moddi3+0xc3a>
+    59fc:	08 94       	sec
+    59fe:	21 08       	sbc	r2, r1
+    5a00:	31 08       	sbc	r3, r1
+    5a02:	41 08       	sbc	r4, r1
+    5a04:	51 08       	sbc	r5, r1
+    5a06:	25 96       	adiw	r28, 0x05	; 5
+    5a08:	ec ac       	ldd	r14, Y+60	; 0x3c
+    5a0a:	fd ac       	ldd	r15, Y+61	; 0x3d
+    5a0c:	0e ad       	ldd	r16, Y+62	; 0x3e
+    5a0e:	1f ad       	ldd	r17, Y+63	; 0x3f
+    5a10:	25 97       	sbiw	r28, 0x05	; 5
+    5a12:	ae 0c       	add	r10, r14
+    5a14:	bf 1c       	adc	r11, r15
+    5a16:	c0 1e       	adc	r12, r16
+    5a18:	d1 1e       	adc	r13, r17
+    5a1a:	ae 14       	cp	r10, r14
+    5a1c:	bf 04       	cpc	r11, r15
+    5a1e:	c0 06       	cpc	r12, r16
+    5a20:	d1 06       	cpc	r13, r17
+    5a22:	70 f0       	brcs	.+28     	; 0x5a40 <__moddi3+0xc3a>
+    5a24:	a2 16       	cp	r10, r18
+    5a26:	b3 06       	cpc	r11, r19
+    5a28:	c4 06       	cpc	r12, r20
+    5a2a:	d5 06       	cpc	r13, r21
+    5a2c:	48 f4       	brcc	.+18     	; 0x5a40 <__moddi3+0xc3a>
+    5a2e:	08 94       	sec
+    5a30:	21 08       	sbc	r2, r1
+    5a32:	31 08       	sbc	r3, r1
+    5a34:	41 08       	sbc	r4, r1
+    5a36:	51 08       	sbc	r5, r1
+    5a38:	ae 0c       	add	r10, r14
+    5a3a:	bf 1c       	adc	r11, r15
+    5a3c:	c0 1e       	adc	r12, r16
+    5a3e:	d1 1e       	adc	r13, r17
+    5a40:	a2 1a       	sub	r10, r18
+    5a42:	b3 0a       	sbc	r11, r19
+    5a44:	c4 0a       	sbc	r12, r20
+    5a46:	d5 0a       	sbc	r13, r21
+    5a48:	c6 01       	movw	r24, r12
+    5a4a:	b5 01       	movw	r22, r10
+    5a4c:	a4 01       	movw	r20, r8
+    5a4e:	93 01       	movw	r18, r6
+    5a50:	0e 94 0b 30 	call	0x6016	; 0x6016 <__udivmodsi4>
+    5a54:	7b 01       	movw	r14, r22
+    5a56:	8c 01       	movw	r16, r24
+    5a58:	c6 01       	movw	r24, r12
+    5a5a:	b5 01       	movw	r22, r10
+    5a5c:	a4 01       	movw	r20, r8
+    5a5e:	93 01       	movw	r18, r6
+    5a60:	0e 94 0b 30 	call	0x6016	; 0x6016 <__udivmodsi4>
+    5a64:	c9 01       	movw	r24, r18
+    5a66:	da 01       	movw	r26, r20
+    5a68:	3c 01       	movw	r6, r24
+    5a6a:	4d 01       	movw	r8, r26
+    5a6c:	c4 01       	movw	r24, r8
+    5a6e:	b3 01       	movw	r22, r6
+    5a70:	a5 96       	adiw	r28, 0x25	; 37
+    5a72:	2c ad       	ldd	r18, Y+60	; 0x3c
+    5a74:	3d ad       	ldd	r19, Y+61	; 0x3d
+    5a76:	4e ad       	ldd	r20, Y+62	; 0x3e
+    5a78:	5f ad       	ldd	r21, Y+63	; 0x3f
+    5a7a:	a5 97       	sbiw	r28, 0x25	; 37
+    5a7c:	0e 94 d8 2f 	call	0x5fb0	; 0x5fb0 <__mulsi3>
+    5a80:	9b 01       	movw	r18, r22
+    5a82:	ac 01       	movw	r20, r24
+    5a84:	87 01       	movw	r16, r14
+    5a86:	ff 24       	eor	r15, r15
+    5a88:	ee 24       	eor	r14, r14
+    5a8a:	89 ad       	ldd	r24, Y+57	; 0x39
+    5a8c:	9a ad       	ldd	r25, Y+58	; 0x3a
+    5a8e:	ab ad       	ldd	r26, Y+59	; 0x3b
+    5a90:	bc ad       	ldd	r27, Y+60	; 0x3c
+    5a92:	a0 70       	andi	r26, 0x00	; 0
+    5a94:	b0 70       	andi	r27, 0x00	; 0
+    5a96:	57 01       	movw	r10, r14
+    5a98:	68 01       	movw	r12, r16
+    5a9a:	a8 2a       	or	r10, r24
+    5a9c:	b9 2a       	or	r11, r25
+    5a9e:	ca 2a       	or	r12, r26
+    5aa0:	db 2a       	or	r13, r27
+    5aa2:	a2 16       	cp	r10, r18
+    5aa4:	b3 06       	cpc	r11, r19
+    5aa6:	c4 06       	cpc	r12, r20
+    5aa8:	d5 06       	cpc	r13, r21
+    5aaa:	10 f5       	brcc	.+68     	; 0x5af0 <__moddi3+0xcea>
+    5aac:	08 94       	sec
+    5aae:	61 08       	sbc	r6, r1
+    5ab0:	71 08       	sbc	r7, r1
+    5ab2:	81 08       	sbc	r8, r1
+    5ab4:	91 08       	sbc	r9, r1
+    5ab6:	25 96       	adiw	r28, 0x05	; 5
+    5ab8:	6c ad       	ldd	r22, Y+60	; 0x3c
+    5aba:	7d ad       	ldd	r23, Y+61	; 0x3d
+    5abc:	8e ad       	ldd	r24, Y+62	; 0x3e
+    5abe:	9f ad       	ldd	r25, Y+63	; 0x3f
+    5ac0:	25 97       	sbiw	r28, 0x05	; 5
+    5ac2:	a6 0e       	add	r10, r22
+    5ac4:	b7 1e       	adc	r11, r23
+    5ac6:	c8 1e       	adc	r12, r24
+    5ac8:	d9 1e       	adc	r13, r25
+    5aca:	a6 16       	cp	r10, r22
+    5acc:	b7 06       	cpc	r11, r23
+    5ace:	c8 06       	cpc	r12, r24
+    5ad0:	d9 06       	cpc	r13, r25
+    5ad2:	70 f0       	brcs	.+28     	; 0x5af0 <__moddi3+0xcea>
+    5ad4:	a2 16       	cp	r10, r18
+    5ad6:	b3 06       	cpc	r11, r19
+    5ad8:	c4 06       	cpc	r12, r20
+    5ada:	d5 06       	cpc	r13, r21
+    5adc:	48 f4       	brcc	.+18     	; 0x5af0 <__moddi3+0xcea>
+    5ade:	08 94       	sec
+    5ae0:	61 08       	sbc	r6, r1
+    5ae2:	71 08       	sbc	r7, r1
+    5ae4:	81 08       	sbc	r8, r1
+    5ae6:	91 08       	sbc	r9, r1
+    5ae8:	a6 0e       	add	r10, r22
+    5aea:	b7 1e       	adc	r11, r23
+    5aec:	c8 1e       	adc	r12, r24
+    5aee:	d9 1e       	adc	r13, r25
+    5af0:	d6 01       	movw	r26, r12
+    5af2:	c5 01       	movw	r24, r10
+    5af4:	82 1b       	sub	r24, r18
+    5af6:	93 0b       	sbc	r25, r19
+    5af8:	a4 0b       	sbc	r26, r20
+    5afa:	b5 0b       	sbc	r27, r21
+    5afc:	89 ab       	std	Y+49, r24	; 0x31
+    5afe:	9a ab       	std	Y+50, r25	; 0x32
+    5b00:	ab ab       	std	Y+51, r26	; 0x33
+    5b02:	bc ab       	std	Y+52, r27	; 0x34
+    5b04:	d1 01       	movw	r26, r2
+    5b06:	99 27       	eor	r25, r25
+    5b08:	88 27       	eor	r24, r24
+    5b0a:	84 01       	movw	r16, r8
+    5b0c:	73 01       	movw	r14, r6
+    5b0e:	e8 2a       	or	r14, r24
+    5b10:	f9 2a       	or	r15, r25
+    5b12:	0a 2b       	or	r16, r26
+    5b14:	1b 2b       	or	r17, r27
+    5b16:	8f ef       	ldi	r24, 0xFF	; 255
+    5b18:	a8 2e       	mov	r10, r24
+    5b1a:	8f ef       	ldi	r24, 0xFF	; 255
+    5b1c:	b8 2e       	mov	r11, r24
+    5b1e:	c1 2c       	mov	r12, r1
+    5b20:	d1 2c       	mov	r13, r1
+    5b22:	ae 20       	and	r10, r14
+    5b24:	bf 20       	and	r11, r15
+    5b26:	c0 22       	and	r12, r16
+    5b28:	d1 22       	and	r13, r17
+    5b2a:	78 01       	movw	r14, r16
+    5b2c:	00 27       	eor	r16, r16
+    5b2e:	11 27       	eor	r17, r17
+    5b30:	21 96       	adiw	r28, 0x01	; 1
+    5b32:	6c ac       	ldd	r6, Y+60	; 0x3c
+    5b34:	7d ac       	ldd	r7, Y+61	; 0x3d
+    5b36:	8e ac       	ldd	r8, Y+62	; 0x3e
+    5b38:	9f ac       	ldd	r9, Y+63	; 0x3f
+    5b3a:	21 97       	sbiw	r28, 0x01	; 1
+    5b3c:	2f ef       	ldi	r18, 0xFF	; 255
+    5b3e:	3f ef       	ldi	r19, 0xFF	; 255
+    5b40:	40 e0       	ldi	r20, 0x00	; 0
+    5b42:	50 e0       	ldi	r21, 0x00	; 0
+    5b44:	62 22       	and	r6, r18
+    5b46:	73 22       	and	r7, r19
+    5b48:	84 22       	and	r8, r20
+    5b4a:	95 22       	and	r9, r21
+    5b4c:	21 96       	adiw	r28, 0x01	; 1
+    5b4e:	6c ad       	ldd	r22, Y+60	; 0x3c
+    5b50:	7d ad       	ldd	r23, Y+61	; 0x3d
+    5b52:	8e ad       	ldd	r24, Y+62	; 0x3e
+    5b54:	9f ad       	ldd	r25, Y+63	; 0x3f
+    5b56:	21 97       	sbiw	r28, 0x01	; 1
+    5b58:	ac 01       	movw	r20, r24
+    5b5a:	66 27       	eor	r22, r22
+    5b5c:	77 27       	eor	r23, r23
+    5b5e:	ad 96       	adiw	r28, 0x2d	; 45
+    5b60:	4c af       	std	Y+60, r20	; 0x3c
+    5b62:	5d af       	std	Y+61, r21	; 0x3d
+    5b64:	6e af       	std	Y+62, r22	; 0x3e
+    5b66:	7f af       	std	Y+63, r23	; 0x3f
+    5b68:	ad 97       	sbiw	r28, 0x2d	; 45
+    5b6a:	c6 01       	movw	r24, r12
+    5b6c:	b5 01       	movw	r22, r10
+    5b6e:	a4 01       	movw	r20, r8
+    5b70:	93 01       	movw	r18, r6
+    5b72:	0e 94 d8 2f 	call	0x5fb0	; 0x5fb0 <__mulsi3>
+    5b76:	a9 96       	adiw	r28, 0x29	; 41
+    5b78:	6c af       	std	Y+60, r22	; 0x3c
+    5b7a:	7d af       	std	Y+61, r23	; 0x3d
+    5b7c:	8e af       	std	Y+62, r24	; 0x3e
+    5b7e:	9f af       	std	Y+63, r25	; 0x3f
+    5b80:	a9 97       	sbiw	r28, 0x29	; 41
+    5b82:	c6 01       	movw	r24, r12
+    5b84:	b5 01       	movw	r22, r10
+    5b86:	ad 96       	adiw	r28, 0x2d	; 45
+    5b88:	2c ad       	ldd	r18, Y+60	; 0x3c
+    5b8a:	3d ad       	ldd	r19, Y+61	; 0x3d
+    5b8c:	4e ad       	ldd	r20, Y+62	; 0x3e
+    5b8e:	5f ad       	ldd	r21, Y+63	; 0x3f
+    5b90:	ad 97       	sbiw	r28, 0x2d	; 45
+    5b92:	0e 94 d8 2f 	call	0x5fb0	; 0x5fb0 <__mulsi3>
+    5b96:	1b 01       	movw	r2, r22
+    5b98:	2c 01       	movw	r4, r24
+    5b9a:	c8 01       	movw	r24, r16
+    5b9c:	b7 01       	movw	r22, r14
+    5b9e:	a4 01       	movw	r20, r8
+    5ba0:	93 01       	movw	r18, r6
+    5ba2:	0e 94 d8 2f 	call	0x5fb0	; 0x5fb0 <__mulsi3>
+    5ba6:	5b 01       	movw	r10, r22
+    5ba8:	6c 01       	movw	r12, r24
+    5baa:	c8 01       	movw	r24, r16
+    5bac:	b7 01       	movw	r22, r14
+    5bae:	ad 96       	adiw	r28, 0x2d	; 45
+    5bb0:	2c ad       	ldd	r18, Y+60	; 0x3c
+    5bb2:	3d ad       	ldd	r19, Y+61	; 0x3d
+    5bb4:	4e ad       	ldd	r20, Y+62	; 0x3e
+    5bb6:	5f ad       	ldd	r21, Y+63	; 0x3f
+    5bb8:	ad 97       	sbiw	r28, 0x2d	; 45
+    5bba:	0e 94 d8 2f 	call	0x5fb0	; 0x5fb0 <__mulsi3>
+    5bbe:	7b 01       	movw	r14, r22
+    5bc0:	8c 01       	movw	r16, r24
+    5bc2:	a6 01       	movw	r20, r12
+    5bc4:	95 01       	movw	r18, r10
+    5bc6:	22 0d       	add	r18, r2
+    5bc8:	33 1d       	adc	r19, r3
+    5bca:	44 1d       	adc	r20, r4
+    5bcc:	55 1d       	adc	r21, r5
+    5bce:	a9 96       	adiw	r28, 0x29	; 41
+    5bd0:	6c ac       	ldd	r6, Y+60	; 0x3c
+    5bd2:	7d ac       	ldd	r7, Y+61	; 0x3d
+    5bd4:	8e ac       	ldd	r8, Y+62	; 0x3e
+    5bd6:	9f ac       	ldd	r9, Y+63	; 0x3f
+    5bd8:	a9 97       	sbiw	r28, 0x29	; 41
+    5bda:	c4 01       	movw	r24, r8
+    5bdc:	aa 27       	eor	r26, r26
+    5bde:	bb 27       	eor	r27, r27
+    5be0:	28 0f       	add	r18, r24
+    5be2:	39 1f       	adc	r19, r25
+    5be4:	4a 1f       	adc	r20, r26
+    5be6:	5b 1f       	adc	r21, r27
+    5be8:	2a 15       	cp	r18, r10
+    5bea:	3b 05       	cpc	r19, r11
+    5bec:	4c 05       	cpc	r20, r12
+    5bee:	5d 05       	cpc	r21, r13
+    5bf0:	48 f4       	brcc	.+18     	; 0x5c04 <__moddi3+0xdfe>
+    5bf2:	81 2c       	mov	r8, r1
+    5bf4:	91 2c       	mov	r9, r1
+    5bf6:	e1 e0       	ldi	r30, 0x01	; 1
+    5bf8:	ae 2e       	mov	r10, r30
+    5bfa:	b1 2c       	mov	r11, r1
+    5bfc:	e8 0c       	add	r14, r8
+    5bfe:	f9 1c       	adc	r15, r9
+    5c00:	0a 1d       	adc	r16, r10
+    5c02:	1b 1d       	adc	r17, r11
+    5c04:	ca 01       	movw	r24, r20
+    5c06:	aa 27       	eor	r26, r26
+    5c08:	bb 27       	eor	r27, r27
+    5c0a:	57 01       	movw	r10, r14
+    5c0c:	68 01       	movw	r12, r16
+    5c0e:	a8 0e       	add	r10, r24
+    5c10:	b9 1e       	adc	r11, r25
+    5c12:	ca 1e       	adc	r12, r26
+    5c14:	db 1e       	adc	r13, r27
+    5c16:	a9 01       	movw	r20, r18
+    5c18:	33 27       	eor	r19, r19
+    5c1a:	22 27       	eor	r18, r18
+    5c1c:	a9 96       	adiw	r28, 0x29	; 41
+    5c1e:	8c ad       	ldd	r24, Y+60	; 0x3c
+    5c20:	9d ad       	ldd	r25, Y+61	; 0x3d
+    5c22:	ae ad       	ldd	r26, Y+62	; 0x3e
+    5c24:	bf ad       	ldd	r27, Y+63	; 0x3f
+    5c26:	a9 97       	sbiw	r28, 0x29	; 41
+    5c28:	a0 70       	andi	r26, 0x00	; 0
+    5c2a:	b0 70       	andi	r27, 0x00	; 0
+    5c2c:	28 0f       	add	r18, r24
+    5c2e:	39 1f       	adc	r19, r25
+    5c30:	4a 1f       	adc	r20, r26
+    5c32:	5b 1f       	adc	r21, r27
+    5c34:	e9 a8       	ldd	r14, Y+49	; 0x31
+    5c36:	fa a8       	ldd	r15, Y+50	; 0x32
+    5c38:	0b a9       	ldd	r16, Y+51	; 0x33
+    5c3a:	1c a9       	ldd	r17, Y+52	; 0x34
+    5c3c:	ea 14       	cp	r14, r10
+    5c3e:	fb 04       	cpc	r15, r11
+    5c40:	0c 05       	cpc	r16, r12
+    5c42:	1d 05       	cpc	r17, r13
+    5c44:	70 f0       	brcs	.+28     	; 0x5c62 <__moddi3+0xe5c>
+    5c46:	ae 14       	cp	r10, r14
+    5c48:	bf 04       	cpc	r11, r15
+    5c4a:	c0 06       	cpc	r12, r16
+    5c4c:	d1 06       	cpc	r13, r17
+    5c4e:	89 f5       	brne	.+98     	; 0x5cb2 <__moddi3+0xeac>
+    5c50:	6d a9       	ldd	r22, Y+53	; 0x35
+    5c52:	7e a9       	ldd	r23, Y+54	; 0x36
+    5c54:	8f a9       	ldd	r24, Y+55	; 0x37
+    5c56:	98 ad       	ldd	r25, Y+56	; 0x38
+    5c58:	62 17       	cp	r22, r18
+    5c5a:	73 07       	cpc	r23, r19
+    5c5c:	84 07       	cpc	r24, r20
+    5c5e:	95 07       	cpc	r25, r21
+    5c60:	40 f5       	brcc	.+80     	; 0x5cb2 <__moddi3+0xeac>
+    5c62:	da 01       	movw	r26, r20
+    5c64:	c9 01       	movw	r24, r18
+    5c66:	21 96       	adiw	r28, 0x01	; 1
+    5c68:	6c ac       	ldd	r6, Y+60	; 0x3c
+    5c6a:	7d ac       	ldd	r7, Y+61	; 0x3d
+    5c6c:	8e ac       	ldd	r8, Y+62	; 0x3e
+    5c6e:	9f ac       	ldd	r9, Y+63	; 0x3f
+    5c70:	21 97       	sbiw	r28, 0x01	; 1
+    5c72:	86 19       	sub	r24, r6
+    5c74:	97 09       	sbc	r25, r7
+    5c76:	a8 09       	sbc	r26, r8
+    5c78:	b9 09       	sbc	r27, r9
+    5c7a:	25 96       	adiw	r28, 0x05	; 5
+    5c7c:	ec ac       	ldd	r14, Y+60	; 0x3c
+    5c7e:	fd ac       	ldd	r15, Y+61	; 0x3d
+    5c80:	0e ad       	ldd	r16, Y+62	; 0x3e
+    5c82:	1f ad       	ldd	r17, Y+63	; 0x3f
+    5c84:	25 97       	sbiw	r28, 0x05	; 5
+    5c86:	ae 18       	sub	r10, r14
+    5c88:	bf 08       	sbc	r11, r15
+    5c8a:	c0 0a       	sbc	r12, r16
+    5c8c:	d1 0a       	sbc	r13, r17
+    5c8e:	ee 24       	eor	r14, r14
+    5c90:	ff 24       	eor	r15, r15
+    5c92:	87 01       	movw	r16, r14
+    5c94:	28 17       	cp	r18, r24
+    5c96:	39 07       	cpc	r19, r25
+    5c98:	4a 07       	cpc	r20, r26
+    5c9a:	5b 07       	cpc	r21, r27
+    5c9c:	28 f4       	brcc	.+10     	; 0x5ca8 <__moddi3+0xea2>
+    5c9e:	21 e0       	ldi	r18, 0x01	; 1
+    5ca0:	e2 2e       	mov	r14, r18
+    5ca2:	f1 2c       	mov	r15, r1
+    5ca4:	01 2d       	mov	r16, r1
+    5ca6:	11 2d       	mov	r17, r1
+    5ca8:	ae 18       	sub	r10, r14
+    5caa:	bf 08       	sbc	r11, r15
+    5cac:	c0 0a       	sbc	r12, r16
+    5cae:	d1 0a       	sbc	r13, r17
+    5cb0:	02 c0       	rjmp	.+4      	; 0x5cb6 <__moddi3+0xeb0>
+    5cb2:	da 01       	movw	r26, r20
+    5cb4:	c9 01       	movw	r24, r18
+    5cb6:	6d a8       	ldd	r6, Y+53	; 0x35
+    5cb8:	7e a8       	ldd	r7, Y+54	; 0x36
+    5cba:	8f a8       	ldd	r8, Y+55	; 0x37
+    5cbc:	98 ac       	ldd	r9, Y+56	; 0x38
+    5cbe:	68 1a       	sub	r6, r24
+    5cc0:	79 0a       	sbc	r7, r25
+    5cc2:	8a 0a       	sbc	r8, r26
+    5cc4:	9b 0a       	sbc	r9, r27
+    5cc6:	09 a9       	ldd	r16, Y+49	; 0x31
+    5cc8:	1a a9       	ldd	r17, Y+50	; 0x32
+    5cca:	2b a9       	ldd	r18, Y+51	; 0x33
+    5ccc:	3c a9       	ldd	r19, Y+52	; 0x34
+    5cce:	0a 19       	sub	r16, r10
+    5cd0:	1b 09       	sbc	r17, r11
+    5cd2:	2c 09       	sbc	r18, r12
+    5cd4:	3d 09       	sbc	r19, r13
+    5cd6:	58 01       	movw	r10, r16
+    5cd8:	69 01       	movw	r12, r18
+    5cda:	22 24       	eor	r2, r2
+    5cdc:	33 24       	eor	r3, r3
+    5cde:	21 01       	movw	r4, r2
+    5ce0:	2d a9       	ldd	r18, Y+53	; 0x35
+    5ce2:	3e a9       	ldd	r19, Y+54	; 0x36
+    5ce4:	4f a9       	ldd	r20, Y+55	; 0x37
+    5ce6:	58 ad       	ldd	r21, Y+56	; 0x38
+    5ce8:	26 15       	cp	r18, r6
+    5cea:	37 05       	cpc	r19, r7
+    5cec:	48 05       	cpc	r20, r8
+    5cee:	59 05       	cpc	r21, r9
+    5cf0:	28 f4       	brcc	.+10     	; 0x5cfc <__moddi3+0xef6>
+    5cf2:	81 e0       	ldi	r24, 0x01	; 1
+    5cf4:	28 2e       	mov	r2, r24
+    5cf6:	31 2c       	mov	r3, r1
+    5cf8:	41 2c       	mov	r4, r1
+    5cfa:	51 2c       	mov	r5, r1
+    5cfc:	86 01       	movw	r16, r12
+    5cfe:	75 01       	movw	r14, r10
+    5d00:	e2 18       	sub	r14, r2
+    5d02:	f3 08       	sbc	r15, r3
+    5d04:	04 09       	sbc	r16, r4
+    5d06:	15 09       	sbc	r17, r5
+    5d08:	a8 01       	movw	r20, r16
+    5d0a:	97 01       	movw	r18, r14
+    5d0c:	e2 96       	adiw	r28, 0x32	; 50
+    5d0e:	0f ac       	ldd	r0, Y+63	; 0x3f
+    5d10:	e2 97       	sbiw	r28, 0x32	; 50
+    5d12:	04 c0       	rjmp	.+8      	; 0x5d1c <__moddi3+0xf16>
+    5d14:	22 0f       	add	r18, r18
+    5d16:	33 1f       	adc	r19, r19
+    5d18:	44 1f       	adc	r20, r20
+    5d1a:	55 1f       	adc	r21, r21
+    5d1c:	0a 94       	dec	r0
+    5d1e:	d2 f7       	brpl	.-12     	; 0x5d14 <__moddi3+0xf0e>
+    5d20:	d4 01       	movw	r26, r8
+    5d22:	c3 01       	movw	r24, r6
+    5d24:	e3 96       	adiw	r28, 0x33	; 51
+    5d26:	0f ac       	ldd	r0, Y+63	; 0x3f
+    5d28:	e3 97       	sbiw	r28, 0x33	; 51
+    5d2a:	04 c0       	rjmp	.+8      	; 0x5d34 <__moddi3+0xf2e>
+    5d2c:	b6 95       	lsr	r27
+    5d2e:	a7 95       	ror	r26
+    5d30:	97 95       	ror	r25
+    5d32:	87 95       	ror	r24
+    5d34:	0a 94       	dec	r0
+    5d36:	d2 f7       	brpl	.-12     	; 0x5d2c <__moddi3+0xf26>
+    5d38:	28 2b       	or	r18, r24
+    5d3a:	39 2b       	or	r19, r25
+    5d3c:	4a 2b       	or	r20, r26
+    5d3e:	5b 2b       	or	r21, r27
+    5d40:	29 a7       	std	Y+41, r18	; 0x29
+    5d42:	3a a7       	std	Y+42, r19	; 0x2a
+    5d44:	4b a7       	std	Y+43, r20	; 0x2b
+    5d46:	5c a7       	std	Y+44, r21	; 0x2c
+    5d48:	e3 96       	adiw	r28, 0x33	; 51
+    5d4a:	0f ac       	ldd	r0, Y+63	; 0x3f
+    5d4c:	e3 97       	sbiw	r28, 0x33	; 51
+    5d4e:	04 c0       	rjmp	.+8      	; 0x5d58 <__moddi3+0xf52>
+    5d50:	16 95       	lsr	r17
+    5d52:	07 95       	ror	r16
+    5d54:	f7 94       	ror	r15
+    5d56:	e7 94       	ror	r14
+    5d58:	0a 94       	dec	r0
+    5d5a:	d2 f7       	brpl	.-12     	; 0x5d50 <__moddi3+0xf4a>
+    5d5c:	ed a6       	std	Y+45, r14	; 0x2d
+    5d5e:	fe a6       	std	Y+46, r15	; 0x2e
+    5d60:	0f a7       	std	Y+47, r16	; 0x2f
+    5d62:	18 ab       	std	Y+48, r17	; 0x30
+    5d64:	29 8b       	std	Y+17, r18	; 0x11
+    5d66:	8a a5       	ldd	r24, Y+42	; 0x2a
+    5d68:	8a 8b       	std	Y+18, r24	; 0x12
+    5d6a:	8b a5       	ldd	r24, Y+43	; 0x2b
+    5d6c:	8b 8b       	std	Y+19, r24	; 0x13
+    5d6e:	8c a5       	ldd	r24, Y+44	; 0x2c
+    5d70:	8c 8b       	std	Y+20, r24	; 0x14
+    5d72:	ed 8a       	std	Y+21, r14	; 0x15
+    5d74:	8e a5       	ldd	r24, Y+46	; 0x2e
+    5d76:	8e 8b       	std	Y+22, r24	; 0x16
+    5d78:	8f a5       	ldd	r24, Y+47	; 0x2f
+    5d7a:	8f 8b       	std	Y+23, r24	; 0x17
+    5d7c:	88 a9       	ldd	r24, Y+48	; 0x30
+    5d7e:	88 8f       	std	Y+24, r24	; 0x18
+    5d80:	e1 96       	adiw	r28, 0x31	; 49
+    5d82:	4c ad       	ldd	r20, Y+60	; 0x3c
+    5d84:	5d ad       	ldd	r21, Y+61	; 0x3d
+    5d86:	6e ad       	ldd	r22, Y+62	; 0x3e
+    5d88:	7f ad       	ldd	r23, Y+63	; 0x3f
+    5d8a:	e1 97       	sbiw	r28, 0x31	; 49
+    5d8c:	41 15       	cp	r20, r1
+    5d8e:	51 05       	cpc	r21, r1
+    5d90:	61 05       	cpc	r22, r1
+    5d92:	71 05       	cpc	r23, r1
+    5d94:	09 f4       	brne	.+2      	; 0x5d98 <__moddi3+0xf92>
+    5d96:	67 c0       	rjmp	.+206    	; 0x5e66 <__moddi3+0x1060>
+    5d98:	89 89       	ldd	r24, Y+17	; 0x11
+    5d9a:	2a 89       	ldd	r18, Y+18	; 0x12
+    5d9c:	3b 89       	ldd	r19, Y+19	; 0x13
+    5d9e:	4c 89       	ldd	r20, Y+20	; 0x14
+    5da0:	5d 89       	ldd	r21, Y+21	; 0x15
+    5da2:	ae 89       	ldd	r26, Y+22	; 0x16
+    5da4:	bf 89       	ldd	r27, Y+23	; 0x17
+    5da6:	18 8d       	ldd	r17, Y+24	; 0x18
+    5da8:	f8 2f       	mov	r31, r24
+    5daa:	f1 95       	neg	r31
+    5dac:	91 e0       	ldi	r25, 0x01	; 1
+    5dae:	1f 16       	cp	r1, r31
+    5db0:	08 f0       	brcs	.+2      	; 0x5db4 <__moddi3+0xfae>
+    5db2:	90 e0       	ldi	r25, 0x00	; 0
+    5db4:	82 2f       	mov	r24, r18
+    5db6:	81 95       	neg	r24
+    5db8:	21 e0       	ldi	r18, 0x01	; 1
+    5dba:	18 16       	cp	r1, r24
+    5dbc:	08 f0       	brcs	.+2      	; 0x5dc0 <__moddi3+0xfba>
+    5dbe:	20 e0       	ldi	r18, 0x00	; 0
+    5dc0:	e8 2f       	mov	r30, r24
+    5dc2:	e9 1b       	sub	r30, r25
+    5dc4:	91 e0       	ldi	r25, 0x01	; 1
+    5dc6:	8e 17       	cp	r24, r30
+    5dc8:	08 f0       	brcs	.+2      	; 0x5dcc <__moddi3+0xfc6>
+    5dca:	90 e0       	ldi	r25, 0x00	; 0
+    5dcc:	29 2b       	or	r18, r25
+    5dce:	83 2f       	mov	r24, r19
+    5dd0:	81 95       	neg	r24
+    5dd2:	31 e0       	ldi	r19, 0x01	; 1
+    5dd4:	18 16       	cp	r1, r24
+    5dd6:	08 f0       	brcs	.+2      	; 0x5dda <__moddi3+0xfd4>
+    5dd8:	30 e0       	ldi	r19, 0x00	; 0
+    5dda:	78 2f       	mov	r23, r24
+    5ddc:	72 1b       	sub	r23, r18
+    5dde:	91 e0       	ldi	r25, 0x01	; 1
+    5de0:	87 17       	cp	r24, r23
+    5de2:	08 f0       	brcs	.+2      	; 0x5de6 <__moddi3+0xfe0>
+    5de4:	90 e0       	ldi	r25, 0x00	; 0
+    5de6:	39 2b       	or	r19, r25
+    5de8:	84 2f       	mov	r24, r20
+    5dea:	81 95       	neg	r24
+    5dec:	21 e0       	ldi	r18, 0x01	; 1
+    5dee:	18 16       	cp	r1, r24
+    5df0:	08 f0       	brcs	.+2      	; 0x5df4 <__moddi3+0xfee>
+    5df2:	20 e0       	ldi	r18, 0x00	; 0
+    5df4:	68 2f       	mov	r22, r24
+    5df6:	63 1b       	sub	r22, r19
+    5df8:	91 e0       	ldi	r25, 0x01	; 1
+    5dfa:	86 17       	cp	r24, r22
+    5dfc:	08 f0       	brcs	.+2      	; 0x5e00 <__moddi3+0xffa>
+    5dfe:	90 e0       	ldi	r25, 0x00	; 0
+    5e00:	29 2b       	or	r18, r25
+    5e02:	85 2f       	mov	r24, r21
+    5e04:	81 95       	neg	r24
+    5e06:	31 e0       	ldi	r19, 0x01	; 1
+    5e08:	18 16       	cp	r1, r24
+    5e0a:	08 f0       	brcs	.+2      	; 0x5e0e <__moddi3+0x1008>
+    5e0c:	30 e0       	ldi	r19, 0x00	; 0
+    5e0e:	58 2f       	mov	r21, r24
+    5e10:	52 1b       	sub	r21, r18
+    5e12:	91 e0       	ldi	r25, 0x01	; 1
+    5e14:	85 17       	cp	r24, r21
+    5e16:	08 f0       	brcs	.+2      	; 0x5e1a <__moddi3+0x1014>
+    5e18:	90 e0       	ldi	r25, 0x00	; 0
+    5e1a:	39 2b       	or	r19, r25
+    5e1c:	8a 2f       	mov	r24, r26
+    5e1e:	81 95       	neg	r24
+    5e20:	21 e0       	ldi	r18, 0x01	; 1
+    5e22:	18 16       	cp	r1, r24
+    5e24:	08 f0       	brcs	.+2      	; 0x5e28 <__moddi3+0x1022>
+    5e26:	20 e0       	ldi	r18, 0x00	; 0
+    5e28:	48 2f       	mov	r20, r24
+    5e2a:	43 1b       	sub	r20, r19
+    5e2c:	91 e0       	ldi	r25, 0x01	; 1
+    5e2e:	84 17       	cp	r24, r20
+    5e30:	08 f0       	brcs	.+2      	; 0x5e34 <__moddi3+0x102e>
+    5e32:	90 e0       	ldi	r25, 0x00	; 0
+    5e34:	29 2b       	or	r18, r25
+    5e36:	8b 2f       	mov	r24, r27
+    5e38:	81 95       	neg	r24
+    5e3a:	91 e0       	ldi	r25, 0x01	; 1
+    5e3c:	18 16       	cp	r1, r24
+    5e3e:	08 f0       	brcs	.+2      	; 0x5e42 <__moddi3+0x103c>
+    5e40:	90 e0       	ldi	r25, 0x00	; 0
+    5e42:	38 2f       	mov	r19, r24
+    5e44:	32 1b       	sub	r19, r18
+    5e46:	21 e0       	ldi	r18, 0x01	; 1
+    5e48:	83 17       	cp	r24, r19
+    5e4a:	08 f0       	brcs	.+2      	; 0x5e4e <__moddi3+0x1048>
+    5e4c:	20 e0       	ldi	r18, 0x00	; 0
+    5e4e:	92 2b       	or	r25, r18
+    5e50:	81 2f       	mov	r24, r17
+    5e52:	81 95       	neg	r24
+    5e54:	89 1b       	sub	r24, r25
+    5e56:	f9 8b       	std	Y+17, r31	; 0x11
+    5e58:	ea 8b       	std	Y+18, r30	; 0x12
+    5e5a:	7b 8b       	std	Y+19, r23	; 0x13
+    5e5c:	6c 8b       	std	Y+20, r22	; 0x14
+    5e5e:	5d 8b       	std	Y+21, r21	; 0x15
+    5e60:	4e 8b       	std	Y+22, r20	; 0x16
+    5e62:	3f 8b       	std	Y+23, r19	; 0x17
+    5e64:	88 8f       	std	Y+24, r24	; 0x18
+    5e66:	29 89       	ldd	r18, Y+17	; 0x11
+    5e68:	3a 89       	ldd	r19, Y+18	; 0x12
+    5e6a:	4b 89       	ldd	r20, Y+19	; 0x13
+    5e6c:	5c 89       	ldd	r21, Y+20	; 0x14
+    5e6e:	6d 89       	ldd	r22, Y+21	; 0x15
+    5e70:	7e 89       	ldd	r23, Y+22	; 0x16
+    5e72:	8f 89       	ldd	r24, Y+23	; 0x17
+    5e74:	98 8d       	ldd	r25, Y+24	; 0x18
+    5e76:	c9 58       	subi	r28, 0x89	; 137
+    5e78:	df 4f       	sbci	r29, 0xFF	; 255
+    5e7a:	e2 e1       	ldi	r30, 0x12	; 18
+    5e7c:	0c 94 49 30 	jmp	0x6092	; 0x6092 <__epilogue_restores__>
 
-00005e2e <do_rand>:
-        /*packet[16] = num;
-        wl_send_global_packet(SWARM_PACKET_GROUP_ID, 0, packet, length, 0);
-        usb_puts("sent ");
-        usb_puti(num);
-        usb_puts("\r\n");
-        num++;
-    5e2e:	a0 e0       	ldi	r26, 0x00	; 0
-    5e30:	b0 e0       	ldi	r27, 0x00	; 0
-    5e32:	ed e1       	ldi	r30, 0x1D	; 29
-    5e34:	ff e2       	ldi	r31, 0x2F	; 47
-    5e36:	0c 94 9e 32 	jmp	0x653c	; 0x653c <__prologue_saves__+0x10>
-    5e3a:	ec 01       	movw	r28, r24
-    usb_puts("\r\n");
-}*/
+00005e80 <do_rand>:
+    5e80:	a0 e0       	ldi	r26, 0x00	; 0
+    5e82:	b0 e0       	ldi	r27, 0x00	; 0
+    5e84:	e6 e4       	ldi	r30, 0x46	; 70
+    5e86:	ff e2       	ldi	r31, 0x2F	; 47
+    5e88:	0c 94 35 30 	jmp	0x606a	; 0x606a <__prologue_saves__+0x10>
+    5e8c:	ec 01       	movw	r28, r24
+    5e8e:	a8 80       	ld	r10, Y
+    5e90:	b9 80       	ldd	r11, Y+1	; 0x01
+    5e92:	ca 80       	ldd	r12, Y+2	; 0x02
+    5e94:	db 80       	ldd	r13, Y+3	; 0x03
+    5e96:	a1 14       	cp	r10, r1
+    5e98:	b1 04       	cpc	r11, r1
+    5e9a:	c1 04       	cpc	r12, r1
+    5e9c:	d1 04       	cpc	r13, r1
+    5e9e:	41 f4       	brne	.+16     	; 0x5eb0 <do_rand+0x30>
+    5ea0:	84 e2       	ldi	r24, 0x24	; 36
+    5ea2:	a8 2e       	mov	r10, r24
+    5ea4:	89 ed       	ldi	r24, 0xD9	; 217
+    5ea6:	b8 2e       	mov	r11, r24
+    5ea8:	8b e5       	ldi	r24, 0x5B	; 91
+    5eaa:	c8 2e       	mov	r12, r24
+    5eac:	87 e0       	ldi	r24, 0x07	; 7
+    5eae:	d8 2e       	mov	r13, r24
+    5eb0:	c6 01       	movw	r24, r12
+    5eb2:	b5 01       	movw	r22, r10
+    5eb4:	2d e1       	ldi	r18, 0x1D	; 29
+    5eb6:	33 ef       	ldi	r19, 0xF3	; 243
+    5eb8:	41 e0       	ldi	r20, 0x01	; 1
+    5eba:	50 e0       	ldi	r21, 0x00	; 0
+    5ebc:	0e 94 bd 2f 	call	0x5f7a	; 0x5f7a <__divmodsi4>
+    5ec0:	27 ea       	ldi	r18, 0xA7	; 167
+    5ec2:	31 e4       	ldi	r19, 0x41	; 65
+    5ec4:	40 e0       	ldi	r20, 0x00	; 0
+    5ec6:	50 e0       	ldi	r21, 0x00	; 0
+    5ec8:	0e 94 d8 2f 	call	0x5fb0	; 0x5fb0 <__mulsi3>
+    5ecc:	7b 01       	movw	r14, r22
+    5ece:	8c 01       	movw	r16, r24
+    5ed0:	c6 01       	movw	r24, r12
+    5ed2:	b5 01       	movw	r22, r10
+    5ed4:	2d e1       	ldi	r18, 0x1D	; 29
+    5ed6:	33 ef       	ldi	r19, 0xF3	; 243
+    5ed8:	41 e0       	ldi	r20, 0x01	; 1
+    5eda:	50 e0       	ldi	r21, 0x00	; 0
+    5edc:	0e 94 bd 2f 	call	0x5f7a	; 0x5f7a <__divmodsi4>
+    5ee0:	ca 01       	movw	r24, r20
+    5ee2:	b9 01       	movw	r22, r18
+    5ee4:	2c ee       	ldi	r18, 0xEC	; 236
+    5ee6:	34 ef       	ldi	r19, 0xF4	; 244
+    5ee8:	4f ef       	ldi	r20, 0xFF	; 255
+    5eea:	5f ef       	ldi	r21, 0xFF	; 255
+    5eec:	0e 94 d8 2f 	call	0x5fb0	; 0x5fb0 <__mulsi3>
+    5ef0:	6e 0d       	add	r22, r14
+    5ef2:	7f 1d       	adc	r23, r15
+    5ef4:	80 1f       	adc	r24, r16
+    5ef6:	91 1f       	adc	r25, r17
+    5ef8:	97 ff       	sbrs	r25, 7
+    5efa:	04 c0       	rjmp	.+8      	; 0x5f04 <do_rand+0x84>
+    5efc:	61 50       	subi	r22, 0x01	; 1
+    5efe:	70 40       	sbci	r23, 0x00	; 0
+    5f00:	80 40       	sbci	r24, 0x00	; 0
+    5f02:	90 48       	sbci	r25, 0x80	; 128
+    5f04:	68 83       	st	Y, r22
+    5f06:	79 83       	std	Y+1, r23	; 0x01
+    5f08:	8a 83       	std	Y+2, r24	; 0x02
+    5f0a:	9b 83       	std	Y+3, r25	; 0x03
+    5f0c:	9b 01       	movw	r18, r22
+    5f0e:	3f 77       	andi	r19, 0x7F	; 127
+    5f10:	c9 01       	movw	r24, r18
+    5f12:	cd b7       	in	r28, 0x3d	; 61
+    5f14:	de b7       	in	r29, 0x3e	; 62
+    5f16:	ea e0       	ldi	r30, 0x0A	; 10
+    5f18:	0c 94 51 30 	jmp	0x60a2	; 0x60a2 <__epilogue_restores__+0x10>
 
-    5e3c:	a8 80       	ld	r10, Y
-    5e3e:	b9 80       	ldd	r11, Y+1	; 0x01
-    5e40:	ca 80       	ldd	r12, Y+2	; 0x02
-    5e42:	db 80       	ldd	r13, Y+3	; 0x03
-    5e44:	a1 14       	cp	r10, r1
-    5e46:	b1 04       	cpc	r11, r1
-    5e48:	c1 04       	cpc	r12, r1
-    5e4a:	d1 04       	cpc	r13, r1
-    5e4c:	41 f4       	brne	.+16     	; 0x5e5e <do_rand+0x30>
-    5e4e:	84 e2       	ldi	r24, 0x24	; 36
-    5e50:	a8 2e       	mov	r10, r24
-    5e52:	89 ed       	ldi	r24, 0xD9	; 217
-    5e54:	b8 2e       	mov	r11, r24
-    5e56:	8b e5       	ldi	r24, 0x5B	; 91
-    5e58:	c8 2e       	mov	r12, r24
-    5e5a:	87 e0       	ldi	r24, 0x07	; 7
-    5e5c:	d8 2e       	mov	r13, r24
-    5e5e:	c6 01       	movw	r24, r12
-    5e60:	b5 01       	movw	r22, r10
-    5e62:	2d e1       	ldi	r18, 0x1D	; 29
-    5e64:	33 ef       	ldi	r19, 0xF3	; 243
-    5e66:	41 e0       	ldi	r20, 0x01	; 1
-    5e68:	50 e0       	ldi	r21, 0x00	; 0
-    5e6a:	0e 94 26 32 	call	0x644c	; 0x644c <__divmodsi4>
-    5e6e:	27 ea       	ldi	r18, 0xA7	; 167
-    5e70:	31 e4       	ldi	r19, 0x41	; 65
-    5e72:	40 e0       	ldi	r20, 0x00	; 0
-    5e74:	50 e0       	ldi	r21, 0x00	; 0
-    5e76:	0e 94 41 32 	call	0x6482	; 0x6482 <__mulsi3>
-    5e7a:	7b 01       	movw	r14, r22
-    5e7c:	8c 01       	movw	r16, r24
-    5e7e:	c6 01       	movw	r24, r12
-    5e80:	b5 01       	movw	r22, r10
-    5e82:	2d e1       	ldi	r18, 0x1D	; 29
-    5e84:	33 ef       	ldi	r19, 0xF3	; 243
-    5e86:	41 e0       	ldi	r20, 0x01	; 1
-    5e88:	50 e0       	ldi	r21, 0x00	; 0
-    5e8a:	0e 94 26 32 	call	0x644c	; 0x644c <__divmodsi4>
-    5e8e:	ca 01       	movw	r24, r20
-    5e90:	b9 01       	movw	r22, r18
-    5e92:	2c ee       	ldi	r18, 0xEC	; 236
-    5e94:	34 ef       	ldi	r19, 0xF4	; 244
-    5e96:	4f ef       	ldi	r20, 0xFF	; 255
-    5e98:	5f ef       	ldi	r21, 0xFF	; 255
-    5e9a:	0e 94 41 32 	call	0x6482	; 0x6482 <__mulsi3>
-    5e9e:	6e 0d       	add	r22, r14
-    5ea0:	7f 1d       	adc	r23, r15
-    5ea2:	80 1f       	adc	r24, r16
-    5ea4:	91 1f       	adc	r25, r17
-    5ea6:	97 ff       	sbrs	r25, 7
-    5ea8:	04 c0       	rjmp	.+8      	; 0x5eb2 <do_rand+0x84>
-    5eaa:	61 50       	subi	r22, 0x01	; 1
-    5eac:	70 40       	sbci	r23, 0x00	; 0
-    5eae:	80 40       	sbci	r24, 0x00	; 0
-    5eb0:	90 48       	sbci	r25, 0x80	; 128
-    5eb2:	68 83       	st	Y, r22
-    5eb4:	79 83       	std	Y+1, r23	; 0x01
-    5eb6:	8a 83       	std	Y+2, r24	; 0x02
-    5eb8:	9b 83       	std	Y+3, r25	; 0x03
-    5eba:	9b 01       	movw	r18, r22
-    5ebc:	3f 77       	andi	r19, 0x7F	; 127
-    5ebe:	c9 01       	movw	r24, r18
-    5ec0:	cd b7       	in	r28, 0x3d	; 61
-    5ec2:	de b7       	in	r29, 0x3e	; 62
-    5ec4:	ea e0       	ldi	r30, 0x0A	; 10
-    5ec6:	0c 94 ba 32 	jmp	0x6574	; 0x6574 <__epilogue_restores__+0x10>
+00005f1c <rand_r>:
+    5f1c:	0e 94 40 2f 	call	0x5e80	; 0x5e80 <do_rand>
+    5f20:	08 95       	ret
 
-00005eca <rand_r>:
-    5eca:	0e 94 17 2f 	call	0x5e2e	; 0x5e2e <do_rand>
-    5ece:	08 95       	ret
+00005f22 <rand>:
+    5f22:	88 e5       	ldi	r24, 0x58	; 88
+    5f24:	95 e0       	ldi	r25, 0x05	; 5
+    5f26:	0e 94 40 2f 	call	0x5e80	; 0x5e80 <do_rand>
+    5f2a:	08 95       	ret
 
-00005ed0 <rand>:
-    5ed0:	87 e6       	ldi	r24, 0x67	; 103
-    5ed2:	95 e0       	ldi	r25, 0x05	; 5
-    5ed4:	0e 94 17 2f 	call	0x5e2e	; 0x5e2e <do_rand>
-    5ed8:	08 95       	ret
-
-00005eda <srand>:
-    5eda:	a0 e0       	ldi	r26, 0x00	; 0
-    5edc:	b0 e0       	ldi	r27, 0x00	; 0
-    5ede:	80 93 67 05 	sts	0x0567, r24
-    5ee2:	90 93 68 05 	sts	0x0568, r25
-    5ee6:	a0 93 69 05 	sts	0x0569, r26
-    5eea:	b0 93 6a 05 	sts	0x056A, r27
-    5eee:	08 95       	ret
-
-00005ef0 <memcpy_P>:
-    5ef0:	fb 01       	movw	r30, r22
-    5ef2:	dc 01       	movw	r26, r24
-    5ef4:	02 c0       	rjmp	.+4      	; 0x5efa <memcpy_P+0xa>
-    5ef6:	05 90       	lpm	r0, Z+
-    5ef8:	0d 92       	st	X+, r0
-    5efa:	41 50       	subi	r20, 0x01	; 1
-    5efc:	50 40       	sbci	r21, 0x00	; 0
-    5efe:	d8 f7       	brcc	.-10     	; 0x5ef6 <memcpy_P+0x6>
-    5f00:	08 95       	ret
-
-00005f02 <printf>:
-
-    int num = 0;*/
-
-    while (1)
-    {
-	    wl_do();
-    5f02:	a0 e0       	ldi	r26, 0x00	; 0
-    5f04:	b0 e0       	ldi	r27, 0x00	; 0
-    5f06:	e7 e8       	ldi	r30, 0x87	; 135
-    5f08:	ff e2       	ldi	r31, 0x2F	; 47
-    5f0a:	0c 94 a6 32 	jmp	0x654c	; 0x654c <__prologue_saves__+0x20>
-    5f0e:	fe 01       	movw	r30, r28
-    5f10:	35 96       	adiw	r30, 0x05	; 5
-    5f12:	61 91       	ld	r22, Z+
-    5f14:	71 91       	ld	r23, Z+
-        /*packet[16] = num;
-        wl_send_global_packet(SWARM_PACKET_GROUP_ID, 0, packet, length, 0);
-        usb_puts("sent ");
-        usb_puti(num);
-        usb_puts("\r\n");
-    5f16:	80 91 80 0a 	lds	r24, 0x0A80
-    5f1a:	90 91 81 0a 	lds	r25, 0x0A81
-    5f1e:	af 01       	movw	r20, r30
-    5f20:	0e 94 96 2f 	call	0x5f2c	; 0x5f2c <vfprintf>
-        num++;
-        delay_ms(50);*/
-    }
-}
-    5f24:	20 96       	adiw	r28, 0x00	; 0
-    5f26:	e2 e0       	ldi	r30, 0x02	; 2
-    5f28:	0c 94 c2 32 	jmp	0x6584	; 0x6584 <__epilogue_restores__+0x20>
-
-00005f2c <vfprintf>:
-    5f2c:	ab e0       	ldi	r26, 0x0B	; 11
+00005f2c <srand>:
+    5f2c:	a0 e0       	ldi	r26, 0x00	; 0
     5f2e:	b0 e0       	ldi	r27, 0x00	; 0
-    5f30:	ec e9       	ldi	r30, 0x9C	; 156
-    5f32:	ff e2       	ldi	r31, 0x2F	; 47
-    5f34:	0c 94 96 32 	jmp	0x652c	; 0x652c <__prologue_saves__>
-    5f38:	3c 01       	movw	r6, r24
-    5f3a:	2b 01       	movw	r4, r22
-    5f3c:	5a 01       	movw	r10, r20
-    5f3e:	fc 01       	movw	r30, r24
-    5f40:	17 82       	std	Z+7, r1	; 0x07
-    5f42:	16 82       	std	Z+6, r1	; 0x06
-    5f44:	83 81       	ldd	r24, Z+3	; 0x03
-    5f46:	81 fd       	sbrc	r24, 1
-    5f48:	03 c0       	rjmp	.+6      	; 0x5f50 <vfprintf+0x24>
-    5f4a:	6f ef       	ldi	r22, 0xFF	; 255
-    5f4c:	7f ef       	ldi	r23, 0xFF	; 255
-    5f4e:	c6 c1       	rjmp	.+908    	; 0x62dc <vfprintf+0x3b0>
-    5f50:	9a e0       	ldi	r25, 0x0A	; 10
-    5f52:	89 2e       	mov	r8, r25
-    5f54:	1e 01       	movw	r2, r28
-    5f56:	08 94       	sec
-    5f58:	21 1c       	adc	r2, r1
-    5f5a:	31 1c       	adc	r3, r1
-    5f5c:	f3 01       	movw	r30, r6
-    5f5e:	23 81       	ldd	r18, Z+3	; 0x03
-    5f60:	f2 01       	movw	r30, r4
-    5f62:	23 fd       	sbrc	r18, 3
-    5f64:	85 91       	lpm	r24, Z+
-    5f66:	23 ff       	sbrs	r18, 3
-    5f68:	81 91       	ld	r24, Z+
-    5f6a:	2f 01       	movw	r4, r30
-    5f6c:	88 23       	and	r24, r24
-    5f6e:	09 f4       	brne	.+2      	; 0x5f72 <vfprintf+0x46>
-    5f70:	b2 c1       	rjmp	.+868    	; 0x62d6 <vfprintf+0x3aa>
-    5f72:	85 32       	cpi	r24, 0x25	; 37
-    5f74:	39 f4       	brne	.+14     	; 0x5f84 <vfprintf+0x58>
-    5f76:	23 fd       	sbrc	r18, 3
-    5f78:	85 91       	lpm	r24, Z+
-    5f7a:	23 ff       	sbrs	r18, 3
-    5f7c:	81 91       	ld	r24, Z+
-    5f7e:	2f 01       	movw	r4, r30
-    5f80:	85 32       	cpi	r24, 0x25	; 37
-    5f82:	29 f4       	brne	.+10     	; 0x5f8e <vfprintf+0x62>
-    5f84:	90 e0       	ldi	r25, 0x00	; 0
-    5f86:	b3 01       	movw	r22, r6
-    5f88:	0e 94 89 31 	call	0x6312	; 0x6312 <fputc>
-    5f8c:	e7 cf       	rjmp	.-50     	; 0x5f5c <vfprintf+0x30>
-    5f8e:	98 2f       	mov	r25, r24
-    5f90:	ff 24       	eor	r15, r15
-    5f92:	ee 24       	eor	r14, r14
-    5f94:	99 24       	eor	r9, r9
-    5f96:	ff e1       	ldi	r31, 0x1F	; 31
-    5f98:	ff 15       	cp	r31, r15
-    5f9a:	d0 f0       	brcs	.+52     	; 0x5fd0 <vfprintf+0xa4>
-    5f9c:	9b 32       	cpi	r25, 0x2B	; 43
-    5f9e:	69 f0       	breq	.+26     	; 0x5fba <vfprintf+0x8e>
-    5fa0:	9c 32       	cpi	r25, 0x2C	; 44
-    5fa2:	28 f4       	brcc	.+10     	; 0x5fae <vfprintf+0x82>
-    5fa4:	90 32       	cpi	r25, 0x20	; 32
-    5fa6:	59 f0       	breq	.+22     	; 0x5fbe <vfprintf+0x92>
-    5fa8:	93 32       	cpi	r25, 0x23	; 35
-    5faa:	91 f4       	brne	.+36     	; 0x5fd0 <vfprintf+0xa4>
-    5fac:	0e c0       	rjmp	.+28     	; 0x5fca <vfprintf+0x9e>
-    5fae:	9d 32       	cpi	r25, 0x2D	; 45
-    5fb0:	49 f0       	breq	.+18     	; 0x5fc4 <vfprintf+0x98>
-    5fb2:	90 33       	cpi	r25, 0x30	; 48
-    5fb4:	69 f4       	brne	.+26     	; 0x5fd0 <vfprintf+0xa4>
-    5fb6:	41 e0       	ldi	r20, 0x01	; 1
-    5fb8:	24 c0       	rjmp	.+72     	; 0x6002 <vfprintf+0xd6>
-    5fba:	52 e0       	ldi	r21, 0x02	; 2
-    5fbc:	f5 2a       	or	r15, r21
-    5fbe:	84 e0       	ldi	r24, 0x04	; 4
-    5fc0:	f8 2a       	or	r15, r24
-    5fc2:	28 c0       	rjmp	.+80     	; 0x6014 <vfprintf+0xe8>
-    5fc4:	98 e0       	ldi	r25, 0x08	; 8
-    5fc6:	f9 2a       	or	r15, r25
-    5fc8:	25 c0       	rjmp	.+74     	; 0x6014 <vfprintf+0xe8>
-    5fca:	e0 e1       	ldi	r30, 0x10	; 16
-    5fcc:	fe 2a       	or	r15, r30
-    5fce:	22 c0       	rjmp	.+68     	; 0x6014 <vfprintf+0xe8>
-    5fd0:	f7 fc       	sbrc	r15, 7
-    5fd2:	29 c0       	rjmp	.+82     	; 0x6026 <vfprintf+0xfa>
-    5fd4:	89 2f       	mov	r24, r25
-    5fd6:	80 53       	subi	r24, 0x30	; 48
-    5fd8:	8a 30       	cpi	r24, 0x0A	; 10
-    5fda:	70 f4       	brcc	.+28     	; 0x5ff8 <vfprintf+0xcc>
-    5fdc:	f6 fe       	sbrs	r15, 6
-    5fde:	05 c0       	rjmp	.+10     	; 0x5fea <vfprintf+0xbe>
-    5fe0:	98 9c       	mul	r9, r8
-    5fe2:	90 2c       	mov	r9, r0
-    5fe4:	11 24       	eor	r1, r1
-    5fe6:	98 0e       	add	r9, r24
-    5fe8:	15 c0       	rjmp	.+42     	; 0x6014 <vfprintf+0xe8>
-    5fea:	e8 9c       	mul	r14, r8
-    5fec:	e0 2c       	mov	r14, r0
-    5fee:	11 24       	eor	r1, r1
-    5ff0:	e8 0e       	add	r14, r24
-    5ff2:	f0 e2       	ldi	r31, 0x20	; 32
-    5ff4:	ff 2a       	or	r15, r31
-    5ff6:	0e c0       	rjmp	.+28     	; 0x6014 <vfprintf+0xe8>
-    5ff8:	9e 32       	cpi	r25, 0x2E	; 46
-    5ffa:	29 f4       	brne	.+10     	; 0x6006 <vfprintf+0xda>
-    5ffc:	f6 fc       	sbrc	r15, 6
-    5ffe:	6b c1       	rjmp	.+726    	; 0x62d6 <vfprintf+0x3aa>
-    6000:	40 e4       	ldi	r20, 0x40	; 64
-    6002:	f4 2a       	or	r15, r20
-    6004:	07 c0       	rjmp	.+14     	; 0x6014 <vfprintf+0xe8>
-    6006:	9c 36       	cpi	r25, 0x6C	; 108
-    6008:	19 f4       	brne	.+6      	; 0x6010 <vfprintf+0xe4>
-    600a:	50 e8       	ldi	r21, 0x80	; 128
-    600c:	f5 2a       	or	r15, r21
-    600e:	02 c0       	rjmp	.+4      	; 0x6014 <vfprintf+0xe8>
-    6010:	98 36       	cpi	r25, 0x68	; 104
-    6012:	49 f4       	brne	.+18     	; 0x6026 <vfprintf+0xfa>
-    6014:	f2 01       	movw	r30, r4
-    6016:	23 fd       	sbrc	r18, 3
-    6018:	95 91       	lpm	r25, Z+
-    601a:	23 ff       	sbrs	r18, 3
-    601c:	91 91       	ld	r25, Z+
-    601e:	2f 01       	movw	r4, r30
-    6020:	99 23       	and	r25, r25
-    6022:	09 f0       	breq	.+2      	; 0x6026 <vfprintf+0xfa>
-    6024:	b8 cf       	rjmp	.-144    	; 0x5f96 <vfprintf+0x6a>
-    6026:	89 2f       	mov	r24, r25
-    6028:	85 54       	subi	r24, 0x45	; 69
-    602a:	83 30       	cpi	r24, 0x03	; 3
-    602c:	18 f0       	brcs	.+6      	; 0x6034 <vfprintf+0x108>
-    602e:	80 52       	subi	r24, 0x20	; 32
-    6030:	83 30       	cpi	r24, 0x03	; 3
-    6032:	38 f4       	brcc	.+14     	; 0x6042 <vfprintf+0x116>
-    6034:	44 e0       	ldi	r20, 0x04	; 4
-    6036:	50 e0       	ldi	r21, 0x00	; 0
-    6038:	a4 0e       	add	r10, r20
-    603a:	b5 1e       	adc	r11, r21
-    603c:	5f e3       	ldi	r21, 0x3F	; 63
-    603e:	59 83       	std	Y+1, r21	; 0x01
-    6040:	0f c0       	rjmp	.+30     	; 0x6060 <vfprintf+0x134>
-    6042:	93 36       	cpi	r25, 0x63	; 99
-    6044:	31 f0       	breq	.+12     	; 0x6052 <vfprintf+0x126>
-    6046:	93 37       	cpi	r25, 0x73	; 115
-    6048:	79 f0       	breq	.+30     	; 0x6068 <vfprintf+0x13c>
-    604a:	93 35       	cpi	r25, 0x53	; 83
-    604c:	09 f0       	breq	.+2      	; 0x6050 <vfprintf+0x124>
-    604e:	56 c0       	rjmp	.+172    	; 0x60fc <vfprintf+0x1d0>
-    6050:	20 c0       	rjmp	.+64     	; 0x6092 <vfprintf+0x166>
-    6052:	f5 01       	movw	r30, r10
-    6054:	80 81       	ld	r24, Z
-    6056:	89 83       	std	Y+1, r24	; 0x01
-    6058:	42 e0       	ldi	r20, 0x02	; 2
-    605a:	50 e0       	ldi	r21, 0x00	; 0
-    605c:	a4 0e       	add	r10, r20
-    605e:	b5 1e       	adc	r11, r21
-    6060:	61 01       	movw	r12, r2
-    6062:	01 e0       	ldi	r16, 0x01	; 1
-    6064:	10 e0       	ldi	r17, 0x00	; 0
-    6066:	12 c0       	rjmp	.+36     	; 0x608c <vfprintf+0x160>
-    6068:	f5 01       	movw	r30, r10
-    606a:	c0 80       	ld	r12, Z
-    606c:	d1 80       	ldd	r13, Z+1	; 0x01
-    606e:	f6 fc       	sbrc	r15, 6
-    6070:	03 c0       	rjmp	.+6      	; 0x6078 <vfprintf+0x14c>
-    6072:	6f ef       	ldi	r22, 0xFF	; 255
-    6074:	7f ef       	ldi	r23, 0xFF	; 255
-    6076:	02 c0       	rjmp	.+4      	; 0x607c <vfprintf+0x150>
-    6078:	69 2d       	mov	r22, r9
-    607a:	70 e0       	ldi	r23, 0x00	; 0
-    607c:	42 e0       	ldi	r20, 0x02	; 2
-    607e:	50 e0       	ldi	r21, 0x00	; 0
-    6080:	a4 0e       	add	r10, r20
-    6082:	b5 1e       	adc	r11, r21
-    6084:	c6 01       	movw	r24, r12
-    6086:	0e 94 7e 31 	call	0x62fc	; 0x62fc <strnlen>
-    608a:	8c 01       	movw	r16, r24
-    608c:	5f e7       	ldi	r21, 0x7F	; 127
-    608e:	f5 22       	and	r15, r21
-    6090:	14 c0       	rjmp	.+40     	; 0x60ba <vfprintf+0x18e>
-    6092:	f5 01       	movw	r30, r10
-    6094:	c0 80       	ld	r12, Z
-    6096:	d1 80       	ldd	r13, Z+1	; 0x01
-    6098:	f6 fc       	sbrc	r15, 6
-    609a:	03 c0       	rjmp	.+6      	; 0x60a2 <vfprintf+0x176>
-    609c:	6f ef       	ldi	r22, 0xFF	; 255
-    609e:	7f ef       	ldi	r23, 0xFF	; 255
-    60a0:	02 c0       	rjmp	.+4      	; 0x60a6 <vfprintf+0x17a>
-    60a2:	69 2d       	mov	r22, r9
-    60a4:	70 e0       	ldi	r23, 0x00	; 0
-    60a6:	42 e0       	ldi	r20, 0x02	; 2
-    60a8:	50 e0       	ldi	r21, 0x00	; 0
-    60aa:	a4 0e       	add	r10, r20
-    60ac:	b5 1e       	adc	r11, r21
-    60ae:	c6 01       	movw	r24, r12
-    60b0:	0e 94 73 31 	call	0x62e6	; 0x62e6 <strnlen_P>
-    60b4:	8c 01       	movw	r16, r24
-    60b6:	50 e8       	ldi	r21, 0x80	; 128
-    60b8:	f5 2a       	or	r15, r21
-    60ba:	f3 fe       	sbrs	r15, 3
-    60bc:	07 c0       	rjmp	.+14     	; 0x60cc <vfprintf+0x1a0>
-    60be:	1a c0       	rjmp	.+52     	; 0x60f4 <vfprintf+0x1c8>
-    60c0:	80 e2       	ldi	r24, 0x20	; 32
-    60c2:	90 e0       	ldi	r25, 0x00	; 0
-    60c4:	b3 01       	movw	r22, r6
-    60c6:	0e 94 89 31 	call	0x6312	; 0x6312 <fputc>
-    60ca:	ea 94       	dec	r14
-    60cc:	8e 2d       	mov	r24, r14
-    60ce:	90 e0       	ldi	r25, 0x00	; 0
-    60d0:	08 17       	cp	r16, r24
-    60d2:	19 07       	cpc	r17, r25
-    60d4:	a8 f3       	brcs	.-22     	; 0x60c0 <vfprintf+0x194>
-    60d6:	0e c0       	rjmp	.+28     	; 0x60f4 <vfprintf+0x1c8>
-    60d8:	f6 01       	movw	r30, r12
-    60da:	f7 fc       	sbrc	r15, 7
-    60dc:	85 91       	lpm	r24, Z+
-    60de:	f7 fe       	sbrs	r15, 7
-    60e0:	81 91       	ld	r24, Z+
-    60e2:	6f 01       	movw	r12, r30
-    60e4:	90 e0       	ldi	r25, 0x00	; 0
-    60e6:	b3 01       	movw	r22, r6
-    60e8:	0e 94 89 31 	call	0x6312	; 0x6312 <fputc>
-    60ec:	e1 10       	cpse	r14, r1
-    60ee:	ea 94       	dec	r14
-    60f0:	01 50       	subi	r16, 0x01	; 1
-    60f2:	10 40       	sbci	r17, 0x00	; 0
-    60f4:	01 15       	cp	r16, r1
-    60f6:	11 05       	cpc	r17, r1
-    60f8:	79 f7       	brne	.-34     	; 0x60d8 <vfprintf+0x1ac>
-    60fa:	ea c0       	rjmp	.+468    	; 0x62d0 <vfprintf+0x3a4>
-    60fc:	94 36       	cpi	r25, 0x64	; 100
-    60fe:	11 f0       	breq	.+4      	; 0x6104 <vfprintf+0x1d8>
-    6100:	99 36       	cpi	r25, 0x69	; 105
-    6102:	69 f5       	brne	.+90     	; 0x615e <vfprintf+0x232>
-    6104:	f7 fe       	sbrs	r15, 7
-    6106:	08 c0       	rjmp	.+16     	; 0x6118 <vfprintf+0x1ec>
-    6108:	f5 01       	movw	r30, r10
-    610a:	20 81       	ld	r18, Z
-    610c:	31 81       	ldd	r19, Z+1	; 0x01
-    610e:	42 81       	ldd	r20, Z+2	; 0x02
-    6110:	53 81       	ldd	r21, Z+3	; 0x03
-    6112:	84 e0       	ldi	r24, 0x04	; 4
-    6114:	90 e0       	ldi	r25, 0x00	; 0
-    6116:	0a c0       	rjmp	.+20     	; 0x612c <vfprintf+0x200>
-    6118:	f5 01       	movw	r30, r10
-    611a:	80 81       	ld	r24, Z
-    611c:	91 81       	ldd	r25, Z+1	; 0x01
-    611e:	9c 01       	movw	r18, r24
-    6120:	44 27       	eor	r20, r20
-    6122:	37 fd       	sbrc	r19, 7
-    6124:	40 95       	com	r20
-    6126:	54 2f       	mov	r21, r20
-    6128:	82 e0       	ldi	r24, 0x02	; 2
-    612a:	90 e0       	ldi	r25, 0x00	; 0
-    612c:	a8 0e       	add	r10, r24
-    612e:	b9 1e       	adc	r11, r25
-    6130:	9f e6       	ldi	r25, 0x6F	; 111
-    6132:	f9 22       	and	r15, r25
-    6134:	57 ff       	sbrs	r21, 7
-    6136:	09 c0       	rjmp	.+18     	; 0x614a <vfprintf+0x21e>
-    6138:	50 95       	com	r21
-    613a:	40 95       	com	r20
-    613c:	30 95       	com	r19
-    613e:	21 95       	neg	r18
-    6140:	3f 4f       	sbci	r19, 0xFF	; 255
-    6142:	4f 4f       	sbci	r20, 0xFF	; 255
-    6144:	5f 4f       	sbci	r21, 0xFF	; 255
-    6146:	e0 e8       	ldi	r30, 0x80	; 128
-    6148:	fe 2a       	or	r15, r30
-    614a:	ca 01       	movw	r24, r20
-    614c:	b9 01       	movw	r22, r18
-    614e:	a1 01       	movw	r20, r2
-    6150:	2a e0       	ldi	r18, 0x0A	; 10
-    6152:	30 e0       	ldi	r19, 0x00	; 0
-    6154:	0e 94 b5 31 	call	0x636a	; 0x636a <__ultoa_invert>
-    6158:	d8 2e       	mov	r13, r24
-    615a:	d2 18       	sub	r13, r2
-    615c:	40 c0       	rjmp	.+128    	; 0x61de <vfprintf+0x2b2>
-    615e:	95 37       	cpi	r25, 0x75	; 117
-    6160:	29 f4       	brne	.+10     	; 0x616c <vfprintf+0x240>
-    6162:	1f 2d       	mov	r17, r15
-    6164:	1f 7e       	andi	r17, 0xEF	; 239
-    6166:	2a e0       	ldi	r18, 0x0A	; 10
-    6168:	30 e0       	ldi	r19, 0x00	; 0
-    616a:	1d c0       	rjmp	.+58     	; 0x61a6 <vfprintf+0x27a>
-    616c:	1f 2d       	mov	r17, r15
-    616e:	19 7f       	andi	r17, 0xF9	; 249
-    6170:	9f 36       	cpi	r25, 0x6F	; 111
-    6172:	61 f0       	breq	.+24     	; 0x618c <vfprintf+0x260>
-    6174:	90 37       	cpi	r25, 0x70	; 112
-    6176:	20 f4       	brcc	.+8      	; 0x6180 <vfprintf+0x254>
-    6178:	98 35       	cpi	r25, 0x58	; 88
-    617a:	09 f0       	breq	.+2      	; 0x617e <vfprintf+0x252>
-    617c:	ac c0       	rjmp	.+344    	; 0x62d6 <vfprintf+0x3aa>
-    617e:	0f c0       	rjmp	.+30     	; 0x619e <vfprintf+0x272>
-    6180:	90 37       	cpi	r25, 0x70	; 112
-    6182:	39 f0       	breq	.+14     	; 0x6192 <vfprintf+0x266>
-    6184:	98 37       	cpi	r25, 0x78	; 120
-    6186:	09 f0       	breq	.+2      	; 0x618a <vfprintf+0x25e>
-    6188:	a6 c0       	rjmp	.+332    	; 0x62d6 <vfprintf+0x3aa>
-    618a:	04 c0       	rjmp	.+8      	; 0x6194 <vfprintf+0x268>
-    618c:	28 e0       	ldi	r18, 0x08	; 8
-    618e:	30 e0       	ldi	r19, 0x00	; 0
-    6190:	0a c0       	rjmp	.+20     	; 0x61a6 <vfprintf+0x27a>
-    6192:	10 61       	ori	r17, 0x10	; 16
-    6194:	14 fd       	sbrc	r17, 4
-    6196:	14 60       	ori	r17, 0x04	; 4
-    6198:	20 e1       	ldi	r18, 0x10	; 16
-    619a:	30 e0       	ldi	r19, 0x00	; 0
-    619c:	04 c0       	rjmp	.+8      	; 0x61a6 <vfprintf+0x27a>
-    619e:	14 fd       	sbrc	r17, 4
-    61a0:	16 60       	ori	r17, 0x06	; 6
-    61a2:	20 e1       	ldi	r18, 0x10	; 16
-    61a4:	32 e0       	ldi	r19, 0x02	; 2
-    61a6:	17 ff       	sbrs	r17, 7
-    61a8:	08 c0       	rjmp	.+16     	; 0x61ba <vfprintf+0x28e>
-    61aa:	f5 01       	movw	r30, r10
-    61ac:	60 81       	ld	r22, Z
-    61ae:	71 81       	ldd	r23, Z+1	; 0x01
-    61b0:	82 81       	ldd	r24, Z+2	; 0x02
-    61b2:	93 81       	ldd	r25, Z+3	; 0x03
-    61b4:	44 e0       	ldi	r20, 0x04	; 4
-    61b6:	50 e0       	ldi	r21, 0x00	; 0
-    61b8:	08 c0       	rjmp	.+16     	; 0x61ca <vfprintf+0x29e>
-    61ba:	f5 01       	movw	r30, r10
-    61bc:	80 81       	ld	r24, Z
-    61be:	91 81       	ldd	r25, Z+1	; 0x01
-    61c0:	bc 01       	movw	r22, r24
-    61c2:	80 e0       	ldi	r24, 0x00	; 0
-    61c4:	90 e0       	ldi	r25, 0x00	; 0
-    61c6:	42 e0       	ldi	r20, 0x02	; 2
-    61c8:	50 e0       	ldi	r21, 0x00	; 0
-    61ca:	a4 0e       	add	r10, r20
-    61cc:	b5 1e       	adc	r11, r21
-    61ce:	a1 01       	movw	r20, r2
-    61d0:	0e 94 b5 31 	call	0x636a	; 0x636a <__ultoa_invert>
-    61d4:	d8 2e       	mov	r13, r24
-    61d6:	d2 18       	sub	r13, r2
-    61d8:	8f e7       	ldi	r24, 0x7F	; 127
-    61da:	f8 2e       	mov	r15, r24
-    61dc:	f1 22       	and	r15, r17
-    61de:	f6 fe       	sbrs	r15, 6
-    61e0:	0b c0       	rjmp	.+22     	; 0x61f8 <vfprintf+0x2cc>
-    61e2:	5e ef       	ldi	r21, 0xFE	; 254
-    61e4:	f5 22       	and	r15, r21
-    61e6:	d9 14       	cp	r13, r9
-    61e8:	38 f4       	brcc	.+14     	; 0x61f8 <vfprintf+0x2cc>
-    61ea:	f4 fe       	sbrs	r15, 4
-    61ec:	07 c0       	rjmp	.+14     	; 0x61fc <vfprintf+0x2d0>
-    61ee:	f2 fc       	sbrc	r15, 2
-    61f0:	05 c0       	rjmp	.+10     	; 0x61fc <vfprintf+0x2d0>
-    61f2:	8f ee       	ldi	r24, 0xEF	; 239
-    61f4:	f8 22       	and	r15, r24
-    61f6:	02 c0       	rjmp	.+4      	; 0x61fc <vfprintf+0x2d0>
-    61f8:	1d 2d       	mov	r17, r13
-    61fa:	01 c0       	rjmp	.+2      	; 0x61fe <vfprintf+0x2d2>
-    61fc:	19 2d       	mov	r17, r9
-    61fe:	f4 fe       	sbrs	r15, 4
-    6200:	0d c0       	rjmp	.+26     	; 0x621c <vfprintf+0x2f0>
-    6202:	fe 01       	movw	r30, r28
-    6204:	ed 0d       	add	r30, r13
-    6206:	f1 1d       	adc	r31, r1
-    6208:	80 81       	ld	r24, Z
-    620a:	80 33       	cpi	r24, 0x30	; 48
-    620c:	19 f4       	brne	.+6      	; 0x6214 <vfprintf+0x2e8>
-    620e:	99 ee       	ldi	r25, 0xE9	; 233
-    6210:	f9 22       	and	r15, r25
-    6212:	08 c0       	rjmp	.+16     	; 0x6224 <vfprintf+0x2f8>
-    6214:	1f 5f       	subi	r17, 0xFF	; 255
-    6216:	f2 fe       	sbrs	r15, 2
-    6218:	05 c0       	rjmp	.+10     	; 0x6224 <vfprintf+0x2f8>
-    621a:	03 c0       	rjmp	.+6      	; 0x6222 <vfprintf+0x2f6>
-    621c:	8f 2d       	mov	r24, r15
-    621e:	86 78       	andi	r24, 0x86	; 134
-    6220:	09 f0       	breq	.+2      	; 0x6224 <vfprintf+0x2f8>
-    6222:	1f 5f       	subi	r17, 0xFF	; 255
-    6224:	0f 2d       	mov	r16, r15
-    6226:	f3 fc       	sbrc	r15, 3
-    6228:	14 c0       	rjmp	.+40     	; 0x6252 <vfprintf+0x326>
-    622a:	f0 fe       	sbrs	r15, 0
-    622c:	0f c0       	rjmp	.+30     	; 0x624c <vfprintf+0x320>
-    622e:	1e 15       	cp	r17, r14
-    6230:	10 f0       	brcs	.+4      	; 0x6236 <vfprintf+0x30a>
-    6232:	9d 2c       	mov	r9, r13
-    6234:	0b c0       	rjmp	.+22     	; 0x624c <vfprintf+0x320>
-    6236:	9d 2c       	mov	r9, r13
-    6238:	9e 0c       	add	r9, r14
-    623a:	91 1a       	sub	r9, r17
-    623c:	1e 2d       	mov	r17, r14
-    623e:	06 c0       	rjmp	.+12     	; 0x624c <vfprintf+0x320>
-    6240:	80 e2       	ldi	r24, 0x20	; 32
-    6242:	90 e0       	ldi	r25, 0x00	; 0
-    6244:	b3 01       	movw	r22, r6
-    6246:	0e 94 89 31 	call	0x6312	; 0x6312 <fputc>
-    624a:	1f 5f       	subi	r17, 0xFF	; 255
-    624c:	1e 15       	cp	r17, r14
-    624e:	c0 f3       	brcs	.-16     	; 0x6240 <vfprintf+0x314>
-    6250:	04 c0       	rjmp	.+8      	; 0x625a <vfprintf+0x32e>
-    6252:	1e 15       	cp	r17, r14
-    6254:	10 f4       	brcc	.+4      	; 0x625a <vfprintf+0x32e>
-    6256:	e1 1a       	sub	r14, r17
-    6258:	01 c0       	rjmp	.+2      	; 0x625c <vfprintf+0x330>
-    625a:	ee 24       	eor	r14, r14
-    625c:	04 ff       	sbrs	r16, 4
-    625e:	0f c0       	rjmp	.+30     	; 0x627e <vfprintf+0x352>
-    6260:	80 e3       	ldi	r24, 0x30	; 48
-    6262:	90 e0       	ldi	r25, 0x00	; 0
-    6264:	b3 01       	movw	r22, r6
-    6266:	0e 94 89 31 	call	0x6312	; 0x6312 <fputc>
-    626a:	02 ff       	sbrs	r16, 2
-    626c:	1d c0       	rjmp	.+58     	; 0x62a8 <vfprintf+0x37c>
-    626e:	01 fd       	sbrc	r16, 1
-    6270:	03 c0       	rjmp	.+6      	; 0x6278 <vfprintf+0x34c>
-    6272:	88 e7       	ldi	r24, 0x78	; 120
-    6274:	90 e0       	ldi	r25, 0x00	; 0
-    6276:	0e c0       	rjmp	.+28     	; 0x6294 <vfprintf+0x368>
-    6278:	88 e5       	ldi	r24, 0x58	; 88
-    627a:	90 e0       	ldi	r25, 0x00	; 0
-    627c:	0b c0       	rjmp	.+22     	; 0x6294 <vfprintf+0x368>
-    627e:	80 2f       	mov	r24, r16
-    6280:	86 78       	andi	r24, 0x86	; 134
-    6282:	91 f0       	breq	.+36     	; 0x62a8 <vfprintf+0x37c>
-    6284:	01 ff       	sbrs	r16, 1
-    6286:	02 c0       	rjmp	.+4      	; 0x628c <vfprintf+0x360>
-    6288:	8b e2       	ldi	r24, 0x2B	; 43
-    628a:	01 c0       	rjmp	.+2      	; 0x628e <vfprintf+0x362>
-    628c:	80 e2       	ldi	r24, 0x20	; 32
-    628e:	f7 fc       	sbrc	r15, 7
-    6290:	8d e2       	ldi	r24, 0x2D	; 45
-    6292:	90 e0       	ldi	r25, 0x00	; 0
-    6294:	b3 01       	movw	r22, r6
-    6296:	0e 94 89 31 	call	0x6312	; 0x6312 <fputc>
-    629a:	06 c0       	rjmp	.+12     	; 0x62a8 <vfprintf+0x37c>
-    629c:	80 e3       	ldi	r24, 0x30	; 48
-    629e:	90 e0       	ldi	r25, 0x00	; 0
-    62a0:	b3 01       	movw	r22, r6
-    62a2:	0e 94 89 31 	call	0x6312	; 0x6312 <fputc>
-    62a6:	9a 94       	dec	r9
-    62a8:	d9 14       	cp	r13, r9
-    62aa:	c0 f3       	brcs	.-16     	; 0x629c <vfprintf+0x370>
-    62ac:	da 94       	dec	r13
-    62ae:	f1 01       	movw	r30, r2
-    62b0:	ed 0d       	add	r30, r13
-    62b2:	f1 1d       	adc	r31, r1
-    62b4:	80 81       	ld	r24, Z
-    62b6:	90 e0       	ldi	r25, 0x00	; 0
-    62b8:	b3 01       	movw	r22, r6
-    62ba:	0e 94 89 31 	call	0x6312	; 0x6312 <fputc>
-    62be:	dd 20       	and	r13, r13
-    62c0:	a9 f7       	brne	.-22     	; 0x62ac <vfprintf+0x380>
-    62c2:	06 c0       	rjmp	.+12     	; 0x62d0 <vfprintf+0x3a4>
-    62c4:	80 e2       	ldi	r24, 0x20	; 32
-    62c6:	90 e0       	ldi	r25, 0x00	; 0
-    62c8:	b3 01       	movw	r22, r6
-    62ca:	0e 94 89 31 	call	0x6312	; 0x6312 <fputc>
-    62ce:	ea 94       	dec	r14
-    62d0:	ee 20       	and	r14, r14
-    62d2:	c1 f7       	brne	.-16     	; 0x62c4 <vfprintf+0x398>
-    62d4:	43 ce       	rjmp	.-890    	; 0x5f5c <vfprintf+0x30>
-    62d6:	f3 01       	movw	r30, r6
-    62d8:	66 81       	ldd	r22, Z+6	; 0x06
-    62da:	77 81       	ldd	r23, Z+7	; 0x07
-    62dc:	cb 01       	movw	r24, r22
-    62de:	2b 96       	adiw	r28, 0x0b	; 11
-    62e0:	e2 e1       	ldi	r30, 0x12	; 18
-    62e2:	0c 94 b2 32 	jmp	0x6564	; 0x6564 <__epilogue_restores__>
+    5f30:	80 93 58 05 	sts	0x0558, r24
+    5f34:	90 93 59 05 	sts	0x0559, r25
+    5f38:	a0 93 5a 05 	sts	0x055A, r26
+    5f3c:	b0 93 5b 05 	sts	0x055B, r27
+    5f40:	08 95       	ret
 
-000062e6 <strnlen_P>:
-    62e6:	fc 01       	movw	r30, r24
-    62e8:	05 90       	lpm	r0, Z+
-    62ea:	61 50       	subi	r22, 0x01	; 1
-    62ec:	70 40       	sbci	r23, 0x00	; 0
-    62ee:	01 10       	cpse	r0, r1
-    62f0:	d8 f7       	brcc	.-10     	; 0x62e8 <strnlen_P+0x2>
-    62f2:	80 95       	com	r24
-    62f4:	90 95       	com	r25
-    62f6:	8e 0f       	add	r24, r30
-    62f8:	9f 1f       	adc	r25, r31
-    62fa:	08 95       	ret
+00005f42 <memcpy_P>:
+    5f42:	fb 01       	movw	r30, r22
+    5f44:	dc 01       	movw	r26, r24
+    5f46:	02 c0       	rjmp	.+4      	; 0x5f4c <memcpy_P+0xa>
+    5f48:	05 90       	lpm	r0, Z+
+    5f4a:	0d 92       	st	X+, r0
+    5f4c:	41 50       	subi	r20, 0x01	; 1
+    5f4e:	50 40       	sbci	r21, 0x00	; 0
+    5f50:	d8 f7       	brcc	.-10     	; 0x5f48 <memcpy_P+0x6>
+    5f52:	08 95       	ret
 
-000062fc <strnlen>:
-    62fc:	fc 01       	movw	r30, r24
-    62fe:	61 50       	subi	r22, 0x01	; 1
-    6300:	70 40       	sbci	r23, 0x00	; 0
-    6302:	01 90       	ld	r0, Z+
-    6304:	01 10       	cpse	r0, r1
-    6306:	d8 f7       	brcc	.-10     	; 0x62fe <strnlen+0x2>
-    6308:	80 95       	com	r24
-    630a:	90 95       	com	r25
-    630c:	8e 0f       	add	r24, r30
-    630e:	9f 1f       	adc	r25, r31
-    6310:	08 95       	ret
+00005f54 <__divmodhi4>:
+    5f54:	97 fb       	bst	r25, 7
+    5f56:	09 2e       	mov	r0, r25
+    5f58:	07 26       	eor	r0, r23
+    5f5a:	0a d0       	rcall	.+20     	; 0x5f70 <__divmodhi4_neg1>
+    5f5c:	77 fd       	sbrc	r23, 7
+    5f5e:	04 d0       	rcall	.+8      	; 0x5f68 <__divmodhi4_neg2>
+    5f60:	46 d0       	rcall	.+140    	; 0x5fee <__udivmodhi4>
+    5f62:	06 d0       	rcall	.+12     	; 0x5f70 <__divmodhi4_neg1>
+    5f64:	00 20       	and	r0, r0
+    5f66:	1a f4       	brpl	.+6      	; 0x5f6e <__divmodhi4_exit>
 
-00006312 <fputc>:
-    while (1)
-    {
-	    wl_do();
-        /*packet[16] = num;
-        wl_send_global_packet(SWARM_PACKET_GROUP_ID, 0, packet, length, 0);
-        usb_puts("sent ");
-    6312:	0f 93       	push	r16
-    6314:	1f 93       	push	r17
-    6316:	cf 93       	push	r28
-    6318:	df 93       	push	r29
-    631a:	8c 01       	movw	r16, r24
-    631c:	eb 01       	movw	r28, r22
-    631e:	8b 81       	ldd	r24, Y+3	; 0x03
-    6320:	81 ff       	sbrs	r24, 1
-    6322:	1b c0       	rjmp	.+54     	; 0x635a <fputc+0x48>
-        usb_puti(num);
-        usb_puts("\r\n");
-        num++;
-    6324:	82 ff       	sbrs	r24, 2
-    6326:	0d c0       	rjmp	.+26     	; 0x6342 <fputc+0x30>
-        delay_ms(50);*/
-    6328:	2e 81       	ldd	r18, Y+6	; 0x06
-    632a:	3f 81       	ldd	r19, Y+7	; 0x07
-    632c:	8c 81       	ldd	r24, Y+4	; 0x04
-    632e:	9d 81       	ldd	r25, Y+5	; 0x05
-    6330:	28 17       	cp	r18, r24
-    6332:	39 07       	cpc	r19, r25
-    6334:	64 f4       	brge	.+24     	; 0x634e <fputc+0x3c>
-    }
-    6336:	e8 81       	ld	r30, Y
-    6338:	f9 81       	ldd	r31, Y+1	; 0x01
-    633a:	01 93       	st	Z+, r16
-    633c:	f9 83       	std	Y+1, r31	; 0x01
-    633e:	e8 83       	st	Y, r30
-    6340:	06 c0       	rjmp	.+12     	; 0x634e <fputc+0x3c>
-}
+00005f68 <__divmodhi4_neg2>:
+    5f68:	70 95       	com	r23
+    5f6a:	61 95       	neg	r22
+    5f6c:	7f 4f       	sbci	r23, 0xFF	; 255
 
-/*static void swarm_handle_receive(char type, int wl_source, unsigned char* packet, int length)
-{
-    6342:	e8 85       	ldd	r30, Y+8	; 0x08
-    6344:	f9 85       	ldd	r31, Y+9	; 0x09
-    6346:	80 2f       	mov	r24, r16
-    6348:	09 95       	icall
-    634a:	89 2b       	or	r24, r25
-    634c:	31 f4       	brne	.+12     	; 0x635a <fputc+0x48>
-    //wl_send_robot_to_robot_packet(SWARM_PACKET_GROUP_ID, type, packet, length, wl_source, 0);
-    634e:	8e 81       	ldd	r24, Y+6	; 0x06
-    6350:	9f 81       	ldd	r25, Y+7	; 0x07
-    6352:	01 96       	adiw	r24, 0x01	; 1
-    6354:	9f 83       	std	Y+7, r25	; 0x07
-    6356:	8e 83       	std	Y+6, r24	; 0x06
-    6358:	02 c0       	rjmp	.+4      	; 0x635e <fputc+0x4c>
+00005f6e <__divmodhi4_exit>:
+    5f6e:	08 95       	ret
 
-    635a:	0f ef       	ldi	r16, 0xFF	; 255
-    635c:	1f ef       	ldi	r17, 0xFF	; 255
-    char buf[40];
-    int i;
-    for (i = 0; i < length; i++) {
-        sprintf(buf, "%d: %d ", i, packet[i]);
-    635e:	c8 01       	movw	r24, r16
-    6360:	df 91       	pop	r29
-    6362:	cf 91       	pop	r28
-    6364:	1f 91       	pop	r17
-    6366:	0f 91       	pop	r16
-    6368:	08 95       	ret
+00005f70 <__divmodhi4_neg1>:
+    5f70:	f6 f7       	brtc	.-4      	; 0x5f6e <__divmodhi4_exit>
+    5f72:	90 95       	com	r25
+    5f74:	81 95       	neg	r24
+    5f76:	9f 4f       	sbci	r25, 0xFF	; 255
+    5f78:	08 95       	ret
 
-0000636a <__ultoa_invert>:
-    636a:	fa 01       	movw	r30, r20
-    636c:	aa 27       	eor	r26, r26
-    636e:	28 30       	cpi	r18, 0x08	; 8
-    6370:	51 f1       	breq	.+84     	; 0x63c6 <__ultoa_invert+0x5c>
-    6372:	20 31       	cpi	r18, 0x10	; 16
-    6374:	81 f1       	breq	.+96     	; 0x63d6 <__ultoa_invert+0x6c>
-    6376:	e8 94       	clt
-    6378:	6f 93       	push	r22
-    637a:	6e 7f       	andi	r22, 0xFE	; 254
-    637c:	6e 5f       	subi	r22, 0xFE	; 254
-    637e:	7f 4f       	sbci	r23, 0xFF	; 255
-    6380:	8f 4f       	sbci	r24, 0xFF	; 255
-    6382:	9f 4f       	sbci	r25, 0xFF	; 255
-    6384:	af 4f       	sbci	r26, 0xFF	; 255
-    6386:	b1 e0       	ldi	r27, 0x01	; 1
-    6388:	3e d0       	rcall	.+124    	; 0x6406 <__ultoa_invert+0x9c>
-    638a:	b4 e0       	ldi	r27, 0x04	; 4
-    638c:	3c d0       	rcall	.+120    	; 0x6406 <__ultoa_invert+0x9c>
-    638e:	67 0f       	add	r22, r23
-    6390:	78 1f       	adc	r23, r24
-    6392:	89 1f       	adc	r24, r25
-    6394:	9a 1f       	adc	r25, r26
-    6396:	a1 1d       	adc	r26, r1
-    6398:	68 0f       	add	r22, r24
-    639a:	79 1f       	adc	r23, r25
-    639c:	8a 1f       	adc	r24, r26
-    639e:	91 1d       	adc	r25, r1
-    63a0:	a1 1d       	adc	r26, r1
-    63a2:	6a 0f       	add	r22, r26
-    63a4:	71 1d       	adc	r23, r1
-    63a6:	81 1d       	adc	r24, r1
-    63a8:	91 1d       	adc	r25, r1
-    63aa:	a1 1d       	adc	r26, r1
-    63ac:	20 d0       	rcall	.+64     	; 0x63ee <__ultoa_invert+0x84>
-    63ae:	09 f4       	brne	.+2      	; 0x63b2 <__ultoa_invert+0x48>
-    63b0:	68 94       	set
-    63b2:	3f 91       	pop	r19
-    63b4:	2a e0       	ldi	r18, 0x0A	; 10
-    63b6:	26 9f       	mul	r18, r22
-    63b8:	11 24       	eor	r1, r1
-    63ba:	30 19       	sub	r19, r0
-    63bc:	30 5d       	subi	r19, 0xD0	; 208
-    63be:	31 93       	st	Z+, r19
-    63c0:	de f6       	brtc	.-74     	; 0x6378 <__ultoa_invert+0xe>
-    63c2:	cf 01       	movw	r24, r30
-    63c4:	08 95       	ret
-    63c6:	46 2f       	mov	r20, r22
-    63c8:	47 70       	andi	r20, 0x07	; 7
-    63ca:	40 5d       	subi	r20, 0xD0	; 208
-    63cc:	41 93       	st	Z+, r20
-    63ce:	b3 e0       	ldi	r27, 0x03	; 3
-    63d0:	0f d0       	rcall	.+30     	; 0x63f0 <__ultoa_invert+0x86>
-    63d2:	c9 f7       	brne	.-14     	; 0x63c6 <__ultoa_invert+0x5c>
-    63d4:	f6 cf       	rjmp	.-20     	; 0x63c2 <__ultoa_invert+0x58>
-    63d6:	46 2f       	mov	r20, r22
-    63d8:	4f 70       	andi	r20, 0x0F	; 15
-    63da:	40 5d       	subi	r20, 0xD0	; 208
-    63dc:	4a 33       	cpi	r20, 0x3A	; 58
-    63de:	18 f0       	brcs	.+6      	; 0x63e6 <__ultoa_invert+0x7c>
-    63e0:	49 5d       	subi	r20, 0xD9	; 217
-    63e2:	31 fd       	sbrc	r19, 1
-    63e4:	40 52       	subi	r20, 0x20	; 32
-    63e6:	41 93       	st	Z+, r20
-    63e8:	02 d0       	rcall	.+4      	; 0x63ee <__ultoa_invert+0x84>
-    63ea:	a9 f7       	brne	.-22     	; 0x63d6 <__ultoa_invert+0x6c>
-    63ec:	ea cf       	rjmp	.-44     	; 0x63c2 <__ultoa_invert+0x58>
-    63ee:	b4 e0       	ldi	r27, 0x04	; 4
-    63f0:	a6 95       	lsr	r26
-    63f2:	97 95       	ror	r25
-    63f4:	87 95       	ror	r24
-    63f6:	77 95       	ror	r23
-    63f8:	67 95       	ror	r22
-    63fa:	ba 95       	dec	r27
-    63fc:	c9 f7       	brne	.-14     	; 0x63f0 <__ultoa_invert+0x86>
-    63fe:	00 97       	sbiw	r24, 0x00	; 0
-    6400:	61 05       	cpc	r22, r1
-    6402:	71 05       	cpc	r23, r1
-    6404:	08 95       	ret
-    6406:	9b 01       	movw	r18, r22
-    6408:	ac 01       	movw	r20, r24
-    640a:	0a 2e       	mov	r0, r26
-    640c:	06 94       	lsr	r0
-    640e:	57 95       	ror	r21
-    6410:	47 95       	ror	r20
-    6412:	37 95       	ror	r19
-    6414:	27 95       	ror	r18
-    6416:	ba 95       	dec	r27
-    6418:	c9 f7       	brne	.-14     	; 0x640c <__ultoa_invert+0xa2>
-    641a:	62 0f       	add	r22, r18
-    641c:	73 1f       	adc	r23, r19
-    641e:	84 1f       	adc	r24, r20
-    6420:	95 1f       	adc	r25, r21
-    6422:	a0 1d       	adc	r26, r0
-    6424:	08 95       	ret
+00005f7a <__divmodsi4>:
+    5f7a:	97 fb       	bst	r25, 7
+    5f7c:	09 2e       	mov	r0, r25
+    5f7e:	05 26       	eor	r0, r21
+    5f80:	0e d0       	rcall	.+28     	; 0x5f9e <__divmodsi4_neg1>
+    5f82:	57 fd       	sbrc	r21, 7
+    5f84:	04 d0       	rcall	.+8      	; 0x5f8e <__divmodsi4_neg2>
+    5f86:	47 d0       	rcall	.+142    	; 0x6016 <__udivmodsi4>
+    5f88:	0a d0       	rcall	.+20     	; 0x5f9e <__divmodsi4_neg1>
+    5f8a:	00 1c       	adc	r0, r0
+    5f8c:	38 f4       	brcc	.+14     	; 0x5f9c <__divmodsi4_exit>
 
-00006426 <__divmodhi4>:
-    6426:	97 fb       	bst	r25, 7
-    6428:	09 2e       	mov	r0, r25
-    642a:	07 26       	eor	r0, r23
-    642c:	0a d0       	rcall	.+20     	; 0x6442 <__divmodhi4_neg1>
-    642e:	77 fd       	sbrc	r23, 7
-    6430:	04 d0       	rcall	.+8      	; 0x643a <__divmodhi4_neg2>
-    6432:	46 d0       	rcall	.+140    	; 0x64c0 <__udivmodhi4>
-    6434:	06 d0       	rcall	.+12     	; 0x6442 <__divmodhi4_neg1>
-    6436:	00 20       	and	r0, r0
-    6438:	1a f4       	brpl	.+6      	; 0x6440 <__divmodhi4_exit>
+00005f8e <__divmodsi4_neg2>:
+    5f8e:	50 95       	com	r21
+    5f90:	40 95       	com	r20
+    5f92:	30 95       	com	r19
+    5f94:	21 95       	neg	r18
+    5f96:	3f 4f       	sbci	r19, 0xFF	; 255
+    5f98:	4f 4f       	sbci	r20, 0xFF	; 255
+    5f9a:	5f 4f       	sbci	r21, 0xFF	; 255
 
-0000643a <__divmodhi4_neg2>:
-    643a:	70 95       	com	r23
-    643c:	61 95       	neg	r22
-    643e:	7f 4f       	sbci	r23, 0xFF	; 255
+00005f9c <__divmodsi4_exit>:
+    5f9c:	08 95       	ret
 
-00006440 <__divmodhi4_exit>:
-    6440:	08 95       	ret
+00005f9e <__divmodsi4_neg1>:
+    5f9e:	f6 f7       	brtc	.-4      	; 0x5f9c <__divmodsi4_exit>
+    5fa0:	90 95       	com	r25
+    5fa2:	80 95       	com	r24
+    5fa4:	70 95       	com	r23
+    5fa6:	61 95       	neg	r22
+    5fa8:	7f 4f       	sbci	r23, 0xFF	; 255
+    5faa:	8f 4f       	sbci	r24, 0xFF	; 255
+    5fac:	9f 4f       	sbci	r25, 0xFF	; 255
+    5fae:	08 95       	ret
 
-00006442 <__divmodhi4_neg1>:
-    6442:	f6 f7       	brtc	.-4      	; 0x6440 <__divmodhi4_exit>
-    6444:	90 95       	com	r25
-    6446:	81 95       	neg	r24
-    6448:	9f 4f       	sbci	r25, 0xFF	; 255
-    644a:	08 95       	ret
+00005fb0 <__mulsi3>:
+    5fb0:	62 9f       	mul	r22, r18
+    5fb2:	d0 01       	movw	r26, r0
+    5fb4:	73 9f       	mul	r23, r19
+    5fb6:	f0 01       	movw	r30, r0
+    5fb8:	82 9f       	mul	r24, r18
+    5fba:	e0 0d       	add	r30, r0
+    5fbc:	f1 1d       	adc	r31, r1
+    5fbe:	64 9f       	mul	r22, r20
+    5fc0:	e0 0d       	add	r30, r0
+    5fc2:	f1 1d       	adc	r31, r1
+    5fc4:	92 9f       	mul	r25, r18
+    5fc6:	f0 0d       	add	r31, r0
+    5fc8:	83 9f       	mul	r24, r19
+    5fca:	f0 0d       	add	r31, r0
+    5fcc:	74 9f       	mul	r23, r20
+    5fce:	f0 0d       	add	r31, r0
+    5fd0:	65 9f       	mul	r22, r21
+    5fd2:	f0 0d       	add	r31, r0
+    5fd4:	99 27       	eor	r25, r25
+    5fd6:	72 9f       	mul	r23, r18
+    5fd8:	b0 0d       	add	r27, r0
+    5fda:	e1 1d       	adc	r30, r1
+    5fdc:	f9 1f       	adc	r31, r25
+    5fde:	63 9f       	mul	r22, r19
+    5fe0:	b0 0d       	add	r27, r0
+    5fe2:	e1 1d       	adc	r30, r1
+    5fe4:	f9 1f       	adc	r31, r25
+    5fe6:	bd 01       	movw	r22, r26
+    5fe8:	cf 01       	movw	r24, r30
+    5fea:	11 24       	eor	r1, r1
+    5fec:	08 95       	ret
 
-0000644c <__divmodsi4>:
-    644c:	97 fb       	bst	r25, 7
-    644e:	09 2e       	mov	r0, r25
-    6450:	05 26       	eor	r0, r21
-    6452:	0e d0       	rcall	.+28     	; 0x6470 <__divmodsi4_neg1>
-    6454:	57 fd       	sbrc	r21, 7
-    6456:	04 d0       	rcall	.+8      	; 0x6460 <__divmodsi4_neg2>
-    6458:	47 d0       	rcall	.+142    	; 0x64e8 <__udivmodsi4>
-    645a:	0a d0       	rcall	.+20     	; 0x6470 <__divmodsi4_neg1>
-    645c:	00 1c       	adc	r0, r0
-    645e:	38 f4       	brcc	.+14     	; 0x646e <__divmodsi4_exit>
+00005fee <__udivmodhi4>:
+    5fee:	aa 1b       	sub	r26, r26
+    5ff0:	bb 1b       	sub	r27, r27
+    5ff2:	51 e1       	ldi	r21, 0x11	; 17
+    5ff4:	07 c0       	rjmp	.+14     	; 0x6004 <__udivmodhi4_ep>
 
-00006460 <__divmodsi4_neg2>:
-    6460:	50 95       	com	r21
-    6462:	40 95       	com	r20
-    6464:	30 95       	com	r19
-    6466:	21 95       	neg	r18
-    6468:	3f 4f       	sbci	r19, 0xFF	; 255
-    646a:	4f 4f       	sbci	r20, 0xFF	; 255
-    646c:	5f 4f       	sbci	r21, 0xFF	; 255
+00005ff6 <__udivmodhi4_loop>:
+    5ff6:	aa 1f       	adc	r26, r26
+    5ff8:	bb 1f       	adc	r27, r27
+    5ffa:	a6 17       	cp	r26, r22
+    5ffc:	b7 07       	cpc	r27, r23
+    5ffe:	10 f0       	brcs	.+4      	; 0x6004 <__udivmodhi4_ep>
+    6000:	a6 1b       	sub	r26, r22
+    6002:	b7 0b       	sbc	r27, r23
 
-0000646e <__divmodsi4_exit>:
-    646e:	08 95       	ret
+00006004 <__udivmodhi4_ep>:
+    6004:	88 1f       	adc	r24, r24
+    6006:	99 1f       	adc	r25, r25
+    6008:	5a 95       	dec	r21
+    600a:	a9 f7       	brne	.-22     	; 0x5ff6 <__udivmodhi4_loop>
+    600c:	80 95       	com	r24
+    600e:	90 95       	com	r25
+    6010:	bc 01       	movw	r22, r24
+    6012:	cd 01       	movw	r24, r26
+    6014:	08 95       	ret
 
-00006470 <__divmodsi4_neg1>:
-    6470:	f6 f7       	brtc	.-4      	; 0x646e <__divmodsi4_exit>
-    6472:	90 95       	com	r25
-    6474:	80 95       	com	r24
-    6476:	70 95       	com	r23
-    6478:	61 95       	neg	r22
-    647a:	7f 4f       	sbci	r23, 0xFF	; 255
-    647c:	8f 4f       	sbci	r24, 0xFF	; 255
-    647e:	9f 4f       	sbci	r25, 0xFF	; 255
-    6480:	08 95       	ret
+00006016 <__udivmodsi4>:
+    6016:	a1 e2       	ldi	r26, 0x21	; 33
+    6018:	1a 2e       	mov	r1, r26
+    601a:	aa 1b       	sub	r26, r26
+    601c:	bb 1b       	sub	r27, r27
+    601e:	fd 01       	movw	r30, r26
+    6020:	0d c0       	rjmp	.+26     	; 0x603c <__udivmodsi4_ep>
 
-00006482 <__mulsi3>:
-    6482:	62 9f       	mul	r22, r18
-    6484:	d0 01       	movw	r26, r0
-    6486:	73 9f       	mul	r23, r19
-    6488:	f0 01       	movw	r30, r0
-    648a:	82 9f       	mul	r24, r18
-    648c:	e0 0d       	add	r30, r0
-    648e:	f1 1d       	adc	r31, r1
-    6490:	64 9f       	mul	r22, r20
-    6492:	e0 0d       	add	r30, r0
-    6494:	f1 1d       	adc	r31, r1
-    6496:	92 9f       	mul	r25, r18
-    6498:	f0 0d       	add	r31, r0
-    649a:	83 9f       	mul	r24, r19
-    649c:	f0 0d       	add	r31, r0
-    649e:	74 9f       	mul	r23, r20
-    64a0:	f0 0d       	add	r31, r0
-    64a2:	65 9f       	mul	r22, r21
-    64a4:	f0 0d       	add	r31, r0
-    64a6:	99 27       	eor	r25, r25
-    64a8:	72 9f       	mul	r23, r18
-    64aa:	b0 0d       	add	r27, r0
-    64ac:	e1 1d       	adc	r30, r1
-    64ae:	f9 1f       	adc	r31, r25
-    64b0:	63 9f       	mul	r22, r19
-    64b2:	b0 0d       	add	r27, r0
-    64b4:	e1 1d       	adc	r30, r1
-    64b6:	f9 1f       	adc	r31, r25
-    64b8:	bd 01       	movw	r22, r26
-    64ba:	cf 01       	movw	r24, r30
-    64bc:	11 24       	eor	r1, r1
-    64be:	08 95       	ret
+00006022 <__udivmodsi4_loop>:
+    6022:	aa 1f       	adc	r26, r26
+    6024:	bb 1f       	adc	r27, r27
+    6026:	ee 1f       	adc	r30, r30
+    6028:	ff 1f       	adc	r31, r31
+    602a:	a2 17       	cp	r26, r18
+    602c:	b3 07       	cpc	r27, r19
+    602e:	e4 07       	cpc	r30, r20
+    6030:	f5 07       	cpc	r31, r21
+    6032:	20 f0       	brcs	.+8      	; 0x603c <__udivmodsi4_ep>
+    6034:	a2 1b       	sub	r26, r18
+    6036:	b3 0b       	sbc	r27, r19
+    6038:	e4 0b       	sbc	r30, r20
+    603a:	f5 0b       	sbc	r31, r21
 
-000064c0 <__udivmodhi4>:
-    64c0:	aa 1b       	sub	r26, r26
-    64c2:	bb 1b       	sub	r27, r27
-    64c4:	51 e1       	ldi	r21, 0x11	; 17
-    64c6:	07 c0       	rjmp	.+14     	; 0x64d6 <__udivmodhi4_ep>
+0000603c <__udivmodsi4_ep>:
+    603c:	66 1f       	adc	r22, r22
+    603e:	77 1f       	adc	r23, r23
+    6040:	88 1f       	adc	r24, r24
+    6042:	99 1f       	adc	r25, r25
+    6044:	1a 94       	dec	r1
+    6046:	69 f7       	brne	.-38     	; 0x6022 <__udivmodsi4_loop>
+    6048:	60 95       	com	r22
+    604a:	70 95       	com	r23
+    604c:	80 95       	com	r24
+    604e:	90 95       	com	r25
+    6050:	9b 01       	movw	r18, r22
+    6052:	ac 01       	movw	r20, r24
+    6054:	bd 01       	movw	r22, r26
+    6056:	cf 01       	movw	r24, r30
+    6058:	08 95       	ret
 
-000064c8 <__udivmodhi4_loop>:
-    64c8:	aa 1f       	adc	r26, r26
-    64ca:	bb 1f       	adc	r27, r27
-    64cc:	a6 17       	cp	r26, r22
-    64ce:	b7 07       	cpc	r27, r23
-    64d0:	10 f0       	brcs	.+4      	; 0x64d6 <__udivmodhi4_ep>
-    64d2:	a6 1b       	sub	r26, r22
-    64d4:	b7 0b       	sbc	r27, r23
+0000605a <__prologue_saves__>:
+    605a:	2f 92       	push	r2
+    605c:	3f 92       	push	r3
+    605e:	4f 92       	push	r4
+    6060:	5f 92       	push	r5
+    6062:	6f 92       	push	r6
+    6064:	7f 92       	push	r7
+    6066:	8f 92       	push	r8
+    6068:	9f 92       	push	r9
+    606a:	af 92       	push	r10
+    606c:	bf 92       	push	r11
+    606e:	cf 92       	push	r12
+    6070:	df 92       	push	r13
+    6072:	ef 92       	push	r14
+    6074:	ff 92       	push	r15
+    6076:	0f 93       	push	r16
+    6078:	1f 93       	push	r17
+    607a:	cf 93       	push	r28
+    607c:	df 93       	push	r29
+    607e:	cd b7       	in	r28, 0x3d	; 61
+    6080:	de b7       	in	r29, 0x3e	; 62
+    6082:	ca 1b       	sub	r28, r26
+    6084:	db 0b       	sbc	r29, r27
+    6086:	0f b6       	in	r0, 0x3f	; 63
+    6088:	f8 94       	cli
+    608a:	de bf       	out	0x3e, r29	; 62
+    608c:	0f be       	out	0x3f, r0	; 63
+    608e:	cd bf       	out	0x3d, r28	; 61
+    6090:	09 94       	ijmp
 
-000064d6 <__udivmodhi4_ep>:
-    64d6:	88 1f       	adc	r24, r24
-    64d8:	99 1f       	adc	r25, r25
-    64da:	5a 95       	dec	r21
-    64dc:	a9 f7       	brne	.-22     	; 0x64c8 <__udivmodhi4_loop>
-    64de:	80 95       	com	r24
-    64e0:	90 95       	com	r25
-    64e2:	bc 01       	movw	r22, r24
-    64e4:	cd 01       	movw	r24, r26
-    64e6:	08 95       	ret
+00006092 <__epilogue_restores__>:
+    6092:	2a 88       	ldd	r2, Y+18	; 0x12
+    6094:	39 88       	ldd	r3, Y+17	; 0x11
+    6096:	48 88       	ldd	r4, Y+16	; 0x10
+    6098:	5f 84       	ldd	r5, Y+15	; 0x0f
+    609a:	6e 84       	ldd	r6, Y+14	; 0x0e
+    609c:	7d 84       	ldd	r7, Y+13	; 0x0d
+    609e:	8c 84       	ldd	r8, Y+12	; 0x0c
+    60a0:	9b 84       	ldd	r9, Y+11	; 0x0b
+    60a2:	aa 84       	ldd	r10, Y+10	; 0x0a
+    60a4:	b9 84       	ldd	r11, Y+9	; 0x09
+    60a6:	c8 84       	ldd	r12, Y+8	; 0x08
+    60a8:	df 80       	ldd	r13, Y+7	; 0x07
+    60aa:	ee 80       	ldd	r14, Y+6	; 0x06
+    60ac:	fd 80       	ldd	r15, Y+5	; 0x05
+    60ae:	0c 81       	ldd	r16, Y+4	; 0x04
+    60b0:	1b 81       	ldd	r17, Y+3	; 0x03
+    60b2:	aa 81       	ldd	r26, Y+2	; 0x02
+    60b4:	b9 81       	ldd	r27, Y+1	; 0x01
+    60b6:	ce 0f       	add	r28, r30
+    60b8:	d1 1d       	adc	r29, r1
+    60ba:	0f b6       	in	r0, 0x3f	; 63
+    60bc:	f8 94       	cli
+    60be:	de bf       	out	0x3e, r29	; 62
+    60c0:	0f be       	out	0x3f, r0	; 63
+    60c2:	cd bf       	out	0x3d, r28	; 61
+    60c4:	ed 01       	movw	r28, r26
+    60c6:	08 95       	ret
 
-000064e8 <__udivmodsi4>:
-    64e8:	a1 e2       	ldi	r26, 0x21	; 33
-    64ea:	1a 2e       	mov	r1, r26
-    64ec:	aa 1b       	sub	r26, r26
-    64ee:	bb 1b       	sub	r27, r27
-    64f0:	fd 01       	movw	r30, r26
-    64f2:	0d c0       	rjmp	.+26     	; 0x650e <__udivmodsi4_ep>
+000060c8 <_exit>:
+    60c8:	f8 94       	cli
 
-000064f4 <__udivmodsi4_loop>:
-    64f4:	aa 1f       	adc	r26, r26
-    64f6:	bb 1f       	adc	r27, r27
-    64f8:	ee 1f       	adc	r30, r30
-    64fa:	ff 1f       	adc	r31, r31
-    64fc:	a2 17       	cp	r26, r18
-    64fe:	b3 07       	cpc	r27, r19
-    6500:	e4 07       	cpc	r30, r20
-    6502:	f5 07       	cpc	r31, r21
-    6504:	20 f0       	brcs	.+8      	; 0x650e <__udivmodsi4_ep>
-    6506:	a2 1b       	sub	r26, r18
-    6508:	b3 0b       	sbc	r27, r19
-    650a:	e4 0b       	sbc	r30, r20
-    650c:	f5 0b       	sbc	r31, r21
-
-0000650e <__udivmodsi4_ep>:
-    650e:	66 1f       	adc	r22, r22
-    6510:	77 1f       	adc	r23, r23
-    6512:	88 1f       	adc	r24, r24
-    6514:	99 1f       	adc	r25, r25
-    6516:	1a 94       	dec	r1
-    6518:	69 f7       	brne	.-38     	; 0x64f4 <__udivmodsi4_loop>
-    651a:	60 95       	com	r22
-    651c:	70 95       	com	r23
-    651e:	80 95       	com	r24
-    6520:	90 95       	com	r25
-    6522:	9b 01       	movw	r18, r22
-    6524:	ac 01       	movw	r20, r24
-    6526:	bd 01       	movw	r22, r26
-    6528:	cf 01       	movw	r24, r30
-    652a:	08 95       	ret
-
-0000652c <__prologue_saves__>:
-    652c:	2f 92       	push	r2
-    652e:	3f 92       	push	r3
-    6530:	4f 92       	push	r4
-    6532:	5f 92       	push	r5
-    6534:	6f 92       	push	r6
-    6536:	7f 92       	push	r7
-    6538:	8f 92       	push	r8
-    653a:	9f 92       	push	r9
-    653c:	af 92       	push	r10
-    653e:	bf 92       	push	r11
-    6540:	cf 92       	push	r12
-    6542:	df 92       	push	r13
-    6544:	ef 92       	push	r14
-    6546:	ff 92       	push	r15
-    6548:	0f 93       	push	r16
-    654a:	1f 93       	push	r17
-    654c:	cf 93       	push	r28
-    654e:	df 93       	push	r29
-    6550:	cd b7       	in	r28, 0x3d	; 61
-    6552:	de b7       	in	r29, 0x3e	; 62
-    6554:	ca 1b       	sub	r28, r26
-    6556:	db 0b       	sbc	r29, r27
-    6558:	0f b6       	in	r0, 0x3f	; 63
-    655a:	f8 94       	cli
-    655c:	de bf       	out	0x3e, r29	; 62
-    655e:	0f be       	out	0x3f, r0	; 63
-    6560:	cd bf       	out	0x3d, r28	; 61
-    6562:	09 94       	ijmp
-
-00006564 <__epilogue_restores__>:
-    6564:	2a 88       	ldd	r2, Y+18	; 0x12
-    6566:	39 88       	ldd	r3, Y+17	; 0x11
-    6568:	48 88       	ldd	r4, Y+16	; 0x10
-    656a:	5f 84       	ldd	r5, Y+15	; 0x0f
-    656c:	6e 84       	ldd	r6, Y+14	; 0x0e
-    656e:	7d 84       	ldd	r7, Y+13	; 0x0d
-    6570:	8c 84       	ldd	r8, Y+12	; 0x0c
-    6572:	9b 84       	ldd	r9, Y+11	; 0x0b
-    6574:	aa 84       	ldd	r10, Y+10	; 0x0a
-    6576:	b9 84       	ldd	r11, Y+9	; 0x09
-    6578:	c8 84       	ldd	r12, Y+8	; 0x08
-    657a:	df 80       	ldd	r13, Y+7	; 0x07
-    657c:	ee 80       	ldd	r14, Y+6	; 0x06
-    657e:	fd 80       	ldd	r15, Y+5	; 0x05
-    6580:	0c 81       	ldd	r16, Y+4	; 0x04
-    6582:	1b 81       	ldd	r17, Y+3	; 0x03
-    6584:	aa 81       	ldd	r26, Y+2	; 0x02
-    6586:	b9 81       	ldd	r27, Y+1	; 0x01
-    6588:	ce 0f       	add	r28, r30
-    658a:	d1 1d       	adc	r29, r1
-    658c:	0f b6       	in	r0, 0x3f	; 63
-    658e:	f8 94       	cli
-    6590:	de bf       	out	0x3e, r29	; 62
-    6592:	0f be       	out	0x3f, r0	; 63
-    6594:	cd bf       	out	0x3d, r28	; 61
-    6596:	ed 01       	movw	r28, r26
-    6598:	08 95       	ret
-
-0000659a <_exit>:
-    659a:	f8 94       	cli
-
-0000659c <__stop_program>:
-    659c:	ff cf       	rjmp	.-2      	; 0x659c <__stop_program>
+000060ca <__stop_program>:
+    60ca:	ff cf       	rjmp	.-2      	; 0x60ca <__stop_program>
