No changes between revisions
/Designs/GPSRL01A/SCH/GPSRL.dia |
---|
Cannot display: file marked as a binary type. |
svn:mime-type = application/octet-stream |
Property changes: |
Deleted: svn:mime-type |
-application/octet-stream |
\ No newline at end of property |
/Designs/GPSRL01A/SCH/GPSRL.svg |
---|
File deleted |
\ No newline at end of file |
/Designs/GPSRL01A/SCH/GPSRL.png |
---|
Cannot display: file marked as a binary type. |
svn:mime-type = application/octet-stream |
Property changes: |
Deleted: svn:mime-type |
-application/octet-stream |
\ No newline at end of property |
/Designs/GPSRL01A/gpslr_Small.jpg |
---|
Cannot display: file marked as a binary type. |
svn:mime-type = application/octet-stream |
Property changes: |
Deleted: svn:mime-type |
-application/octet-stream |
\ No newline at end of property |
/Designs/GPSRL01A/DOC/dokumentace_NB_3201.zip |
---|
Cannot display: file marked as a binary type. |
svn:mime-type = application/octet-stream |
Property changes: |
Deleted: svn:mime-type |
-application/octet-stream |
\ No newline at end of property |
/Designs/GPSRL01A/DOC/HTML/pictures/image001_small.jpg |
---|
Cannot display: file marked as a binary type. |
svn:mime-type = application/octet-stream |
Property changes: |
Deleted: svn:mime-type |
-application/octet-stream |
\ No newline at end of property |
/Designs/GPSRL01A/DOC/HTML/pictures/P5290002.JPG |
---|
Cannot display: file marked as a binary type. |
svn:mime-type = application/octet-stream |
Property changes: |
Deleted: svn:mime-type |
-application/octet-stream |
\ No newline at end of property |
/Designs/GPSRL01A/DOC/HTML/pictures/P5290003.JPG |
---|
Cannot display: file marked as a binary type. |
svn:mime-type = application/octet-stream |
Property changes: |
Deleted: svn:mime-type |
-application/octet-stream |
\ No newline at end of property |
/Designs/GPSRL01A/DOC/HTML/pictures/image001.jpg |
---|
Cannot display: file marked as a binary type. |
svn:mime-type = application/octet-stream |
Property changes: |
Deleted: svn:mime-type |
-application/octet-stream |
\ No newline at end of property |
/Designs/GPSRL01A/DOC/HTML/pictures/P5290002_small.JPG |
---|
Cannot display: file marked as a binary type. |
svn:mime-type = application/octet-stream |
Property changes: |
Deleted: svn:mime-type |
-application/octet-stream |
\ No newline at end of property |
/Designs/GPSRL01A/DOC/HTML/pictures/P5290003_small.JPG |
---|
Cannot display: file marked as a binary type. |
svn:mime-type = application/octet-stream |
Property changes: |
Deleted: svn:mime-type |
-application/octet-stream |
\ No newline at end of property |
/Designs/GPSRL01A/DOC/HTML/GPSRL01A.cs.html |
---|
File deleted |
/Designs/GPSRL01A/PrjInfo.txt |
---|
File deleted |
/Designs/GPSRL01B/SW/gpsrl.h |
---|
File deleted |
/Designs/GPSRL01B/SW/gpsrl.c |
---|
File deleted |
/Designs/GPSRL01B/SW/MYLCD.C |
---|
File deleted |
/Designs/GPSRL01B/SW/gpsrl.hex |
---|
File deleted |
/Designs/GPSRL01B/SW |
---|
Property changes: |
Deleted: svn:ignore |
-*.lst |
-*.sta |
-*.tre |
-*.sym |
-*.BAK |
-*.err |
/Designs/GPSRL02A/SW/buffer/rprintf.h |
---|
File deleted |
Property changes: |
Deleted: svn:executable |
-* |
\ No newline at end of property |
/Designs/GPSRL02A/SW/buffer/gpsrl.hex |
---|
File deleted |
/Designs/GPSRL02A/SW/buffer/Makefile |
---|
File deleted |
Property changes: |
Deleted: svn:executable |
-* |
\ No newline at end of property |
/Designs/GPSRL02A/SW/buffer/global.h |
---|
File deleted |
Property changes: |
Deleted: svn:executable |
-* |
\ No newline at end of property |
/Designs/GPSRL02A/SW/buffer/a2d.c |
---|
File deleted |
Property changes: |
Deleted: svn:executable |
-* |
\ No newline at end of property |
/Designs/GPSRL02A/SW/buffer/a2dtest.c |
---|
File deleted |
Property changes: |
Deleted: svn:executable |
-* |
\ No newline at end of property |
/Designs/GPSRL02A/SW/buffer/buffer.c |
---|
File deleted |
Property changes: |
Deleted: svn:executable |
-* |
\ No newline at end of property |
/Designs/GPSRL02A/SW/buffer/avrlibtypes.h |
---|
File deleted |
Property changes: |
Deleted: svn:executable |
-* |
\ No newline at end of property |
/Designs/GPSRL02A/SW/buffer/vt100.c |
---|
File deleted |
Property changes: |
Deleted: svn:executable |
-* |
\ No newline at end of property |
/Designs/GPSRL02A/SW/buffer/a2d.h |
---|
File deleted |
Property changes: |
Deleted: svn:executable |
-* |
\ No newline at end of property |
/Designs/GPSRL02A/SW/buffer/uart.c |
---|
File deleted |
Property changes: |
Deleted: svn:executable |
-* |
\ No newline at end of property |
/Designs/GPSRL02A/SW/buffer/gpsrl.out |
---|
Cannot display: file marked as a binary type. |
svn:mime-type = application/octet-stream |
Property changes: |
Deleted: svn:executable |
-* |
\ No newline at end of property |
Deleted: svn:mime-type |
-application/octet-stream |
\ No newline at end of property |
/Designs/GPSRL02A/SW/buffer/buffer.h |
---|
File deleted |
Property changes: |
Deleted: svn:executable |
-* |
\ No newline at end of property |
/Designs/GPSRL02A/SW/buffer/vt100.h |
---|
File deleted |
Property changes: |
Deleted: svn:executable |
-* |
\ No newline at end of property |
/Designs/GPSRL02A/SW/buffer/timer.c |
---|
File deleted |
Property changes: |
Deleted: svn:executable |
-* |
\ No newline at end of property |
/Designs/GPSRL02A/SW/buffer/uart.h |
---|
File deleted |
Property changes: |
Deleted: svn:executable |
-* |
\ No newline at end of property |
/Designs/GPSRL02A/SW/buffer/gpsrl.map |
---|
File deleted |
/Designs/GPSRL02A/SW/buffer/rprintf.c |
---|
File deleted |
Property changes: |
Deleted: svn:executable |
-* |
\ No newline at end of property |
/Designs/GPSRL02A/SW/buffer/timer.h |
---|
File deleted |
Property changes: |
Deleted: svn:executable |
-* |
\ No newline at end of property |
/Designs/GPSRL02A/SW/buffer/avrlibdefs.h |
---|
File deleted |
Property changes: |
Deleted: svn:executable |
-* |
\ No newline at end of property |
/Designs/GPSRL02A/SW/logger/sd-reader_config.h |
---|
File deleted |
/Designs/GPSRL02A/SW/logger/sd-reader.map |
---|
File deleted |
/Designs/GPSRL02A/SW/logger/Doxyfile |
---|
File deleted |
/Designs/GPSRL02A/SW/logger/partition_config.h |
---|
File deleted |
/Designs/GPSRL02A/SW/logger/ChangeLog |
---|
File deleted |
/Designs/GPSRL02A/SW/logger/sd-reader.hex |
---|
File deleted |
/Designs/GPSRL02A/SW/logger/sd_raw_config.h |
---|
File deleted |
/Designs/GPSRL02A/SW/logger/partition.c |
---|
File deleted |
/Designs/GPSRL02A/SW/logger/fat16_config.h |
---|
File deleted |
/Designs/GPSRL02A/SW/logger/uart.c |
---|
File deleted |
/Designs/GPSRL02A/SW/logger/partition.h |
---|
File deleted |
/Designs/GPSRL02A/SW/logger/sd_raw.c |
---|
File deleted |
/Designs/GPSRL02A/SW/logger/uart.h |
---|
File deleted |
/Designs/GPSRL02A/SW/logger/fat16.c |
---|
File deleted |
/Designs/GPSRL02A/SW/logger/sd_raw.h |
---|
File deleted |
/Designs/GPSRL02A/SW/logger/doc/pic01.jpg |
---|
Cannot display: file marked as a binary type. |
svn:mime-type = application/octet-stream |
Property changes: |
Deleted: svn:mime-type |
-application/octet-stream |
\ No newline at end of property |
/Designs/GPSRL02A/SW/logger/doc/pic02.jpg |
---|
Cannot display: file marked as a binary type. |
svn:mime-type = application/octet-stream |
Property changes: |
Deleted: svn:mime-type |
-application/octet-stream |
\ No newline at end of property |
/Designs/GPSRL02A/SW/logger/main.c |
---|
File deleted |
/Designs/GPSRL02A/SW/logger/fat16.h |
---|
File deleted |
/Designs/GPSRL02A/SW/logger/sd-reader.out |
---|
Cannot display: file marked as a binary type. |
svn:mime-type = application/octet-stream |
Property changes: |
Deleted: svn:executable |
-* |
\ No newline at end of property |
Deleted: svn:mime-type |
-application/octet-stream |
\ No newline at end of property |
/Designs/GPSRL02A/SW/logger/Makefile |
---|
File deleted |
/Designs/GPSRL02A/GPSRL02A_Small.jpg |
---|
Cannot display: file marked as a binary type. |
svn:mime-type = application/octet-stream |
Property changes: |
Deleted: svn:mime-type |
-application/octet-stream |
\ No newline at end of property |
/Designs/GPSRL02A/DOC/SRC/GPSRL02A_Big.JPG |
---|
Cannot display: file marked as a binary type. |
svn:mime-type = application/octet-stream |
Property changes: |
Deleted: svn:executable |
-* |
\ No newline at end of property |
Deleted: svn:mime-type |
-application/octet-stream |
\ No newline at end of property |
/Designs/GPSRL02A/PrjInfo.txt |
---|
File deleted |
/Designs/GPSRL03A/glg.lst |
---|
File deleted |
/Designs/GPSRL03A/ff.c |
---|
File deleted |
/Designs/GPSRL03A/glg.hex |
---|
File deleted |
/Designs/GPSRL03A/mmc.c |
---|
File deleted |
/Designs/GPSRL03A/Makefile |
---|
File deleted |
/Designs/GPSRL03A/glg.elf |
---|
Cannot display: file marked as a binary type. |
svn:mime-type = application/octet-stream |
Property changes: |
Deleted: svn:executable |
-* |
\ No newline at end of property |
Deleted: svn:mime-type |
-application/octet-stream |
\ No newline at end of property |
/Designs/GPSRL03A/tff.c |
---|
File deleted |
/Designs/GPSRL03A/ff.h |
---|
File deleted |
/Designs/GPSRL03A/integer.h |
---|
File deleted |
/Designs/GPSRL03A/main.c |
---|
File deleted |
/Designs/GPSRL03A/tt.ini |
---|
File deleted |
/Designs/GPSRL03A/glg.map |
---|
File deleted |
/Designs/GPSRL03A/tff.h |
---|
File deleted |
/Designs/GPSRL03A/diskio.h |
---|
File deleted |
/Designs/GPSRL03A/glg_sch.png |
---|
Cannot display: file marked as a binary type. |
svn:mime-type = application/octet-stream |
Property changes: |
Deleted: svn:mime-type |
-application/octet-stream |
\ No newline at end of property |
/Designs/GMCOUNT/PCB/GMC01A.pcb |
---|
Cannot display: file marked as a binary type. |
svn:mime-type = application/octet-stream |
Property changes: |
Deleted: svn:mime-type |
-application/octet-stream |
\ No newline at end of property |
/Designs/GMCOUNT/PCB/GMC01A-POWER.pcb |
---|
Cannot display: file marked as a binary type. |
svn:mime-type = application/octet-stream |
Property changes: |
Deleted: svn:mime-type |
-application/octet-stream |
\ No newline at end of property |
/Designs/GMCOUNT/PrjInfo.txt |
---|
File deleted |
/Designs/GMCOUNT/CAM_GMC01A/V1.PHO |
---|
File deleted |
/Designs/GMCOUNT/CAM_GMC01A/V2_POWER.pdf |
---|
File deleted |
=================================================================== |
--- Designs/GMCOUNT/CAM_GMC01A/BOARD.PHO (revision 1857) |
+++ Designs/GMCOUNT/CAM_GMC01A/BOARD.PHO (nonexistent) |
@@ -1,86 +0,0 @@ |
-* |
-* |
-G04 PADS Layout (Build Number 2007.42.1) generated Gerber (RS-274-X) file* |
-G04 PC Version=2.1* |
-* |
-%IN "GMC01A.pcb"*% |
-* |
-%MOIN*% |
-* |
-%FSLAX35Y35*% |
-* |
-* |
-* |
-* |
-G04 PC Standard Apertures* |
-* |
-* |
-G04 Thermal Relief Aperture macro.* |
-%AMTER* |
-1,1,$1,0,0* |
-1,0,$1-$2,0,0* |
-21,0,$3,$4,0,0,45* |
-21,0,$3,$4,0,0,135* |
-% |
-* |
-* |
-G04 Annular Aperture macro.* |
-%AMANN* |
-1,1,$1,0,0* |
-1,0,$2,0,0* |
-% |
-* |
-* |
-G04 Odd Aperture macro.* |
-%AMODD* |
-1,1,$1,0,0* |
-1,0,$1-0.005,0,0* |
-% |
-* |
-* |
-G04 PC Custom Aperture Macros* |
-* |
-* |
-* |
-* |
-* |
-* |
-G04 PC Aperture Table* |
-* |
-%ADD025C,0.01*% |
-* |
-* |
-* |
-* |
-G04 PC Copper Outlines (0)* |
-G04 Layer Name GMC01A.pcb - dark (0)* |
-%LPD*% |
-* |
-* |
-G04 PC Area=Custom_Thermal* |
-* |
-G04 PC Custom Flashes* |
-G04 Layer Name GMC01A.pcb - flashes* |
-%LPD*% |
-* |
-* |
-G04 PC Circuitry* |
-G04 Layer Name GMC01A.pcb - circuitry* |
-%LPD*% |
-* |
-G54D25* |
-G01X108400Y330550D02* |
-X145800D01* |
-Y377750* |
-X614200* |
-Y330550* |
-X651600* |
-Y149450* |
-X614200* |
-Y102250* |
-X145800* |
-Y149450* |
-X108400* |
-Y330550* |
-X0Y0D02* |
-M02* |
/Designs/GMCOUNT/CAM_GMC01A/V1.pdf |
---|
File deleted |
=================================================================== |
--- Designs/GMCOUNT/CAM_GMC01A/DRILL_POWER.DRL (revision 1857) |
+++ Designs/GMCOUNT/CAM_GMC01A/DRILL_POWER.DRL (nonexistent) |
@@ -1,70 +0,0 @@ |
-% |
-T1C.001F0S0 |
-X04875Y011477 |
-X05075Y011477 |
-T2C.035F197S55 |
-X018253Y011606 |
-X018253Y022426 |
-X020622Y023691 |
-X02617Y036282 |
-X024179Y036245 |
-X028201Y034994 |
-X024179Y032745 |
-X025078Y025094 |
-X025133Y023691 |
-X024122Y023691 |
-X027037Y022232 |
-X027037Y018732 |
-X027037Y017446 |
-X027037Y013946 |
-X028704Y015714 |
-X028704Y021314 |
-X029935Y023558 |
-X028633Y023691 |
-X029935Y024558 |
-X028578Y025094 |
-X029935Y025558 |
-X029935Y026558 |
-X030169Y033864 |
-X029169Y033864 |
-X02967Y036282 |
-X030618Y036282 |
-X034118Y036282 |
-X032994Y03503 |
-X031701Y034994 |
-X031169Y033864 |
-X033169Y033864 |
-X032169Y033864 |
-X034169Y033864 |
-X035169Y033864 |
-X032935Y026558 |
-X032935Y025558 |
-X032935Y024558 |
-X032935Y023558 |
-X034304Y021314 |
-X035541Y017863 |
-X034304Y015714 |
-X041169Y011481 |
-X037106Y011484 |
-X041169Y012861 |
-X037106Y012864 |
-X036494Y03503 |
-X045111Y012861 |
-X045111Y011481 |
-X056704Y023072 |
-T3C.037F197S55 |
-X029654Y027934 |
-X029648Y031689 |
-X032331Y032983 |
-X033173Y032253 |
-X032336Y029016 |
-X033177Y027388 |
-T4C.04F139S55 |
-X015509Y017863 |
-X013509Y017863 |
-T5C.12598F035S794 |
-X016349Y013173 |
-X016349Y034827 |
-X059651Y034827 |
-X059651Y013173 |
-M30 |
/Designs/GMCOUNT/CAM_GMC01A/DRILL.DRL |
---|
File deleted |
/Designs/GMCOUNT/CAM_GMC01A/BOARD_POWER.PHO |
---|
File deleted |
/Designs/GMCOUNT/CAM_GMC01A/V2_POWER.PHO |
---|
File deleted |
/Designs/GMCOUNT/SW/GMC01A.c |
---|
File deleted |
/Designs/GMCOUNT/SW/GMC01A.hex |
---|
File deleted |
/Designs/GMCOUNT/SW |
---|
Property changes: |
Deleted: svn:ignore |
-*.err |
/Designs/GMCOUNT/SCH/GMC01A_POWER.DSN |
---|
Cannot display: file marked as a binary type. |
svn:mime-type = application/octet-stream |
Property changes: |
Deleted: svn:mime-type |
-application/octet-stream |
\ No newline at end of property |
/Designs/GMCOUNT/SCH/GMC01A.DSN |
---|
Cannot display: file marked as a binary type. |
svn:mime-type = application/octet-stream |
Property changes: |
Deleted: svn:mime-type |
-application/octet-stream |
\ No newline at end of property |
/Designs/GMCOUNT/SCH/GMC01A_POWER.pdf |
---|
Cannot display: file marked as a binary type. |
svn:mime-type = application/octet-stream |
Property changes: |
Deleted: svn:mime-type |
-application/octet-stream |
\ No newline at end of property |
/Designs/GMCOUNT/SCH/GMC01A.pdf |
---|
Cannot display: file marked as a binary type. |
svn:mime-type = application/octet-stream |
Property changes: |
Deleted: svn:mime-type |
-application/octet-stream |
\ No newline at end of property |
/Designs/galileo_experiment/SW/main.pjt |
---|
File deleted |
/Designs/galileo_experiment/SW/main.c |
---|
File deleted |
/Designs/galileo_experiment/SW/main.lst |
---|
File deleted |
/Designs/galileo_experiment/SW/main.hex |
---|
File deleted |
/Designs/galileo_experiment/SW/main.h |
---|
File deleted |
/Designs/galileo_experiment/galileo_experiment_Big.jpg |
---|
Cannot display: file marked as a binary type. |
svn:mime-type = application/octet-stream |
Property changes: |
Deleted: svn:mime-type |
-application/octet-stream |
\ No newline at end of property |
/Designs/galileo_experiment/galileo_experiment_Small.jpg |
---|
Cannot display: file marked as a binary type. |
svn:mime-type = application/octet-stream |
Property changes: |
Deleted: svn:mime-type |
-application/octet-stream |
\ No newline at end of property |
/Designs/galileo_experiment/DOC/gnuplot/tabor_olbramovice.png |
---|
Cannot display: file marked as a binary type. |
svn:mime-type = application/octet-stream |
Property changes: |
Deleted: svn:mime-type |
-application/octet-stream |
\ No newline at end of property |
/Designs/galileo_experiment/DOC/gnuplot/olbramovice_benesov.txt |
---|
File deleted |
=================================================================== |
--- Designs/galileo_experiment/DOC/gnuplot/sobeslav_tabor.txt (revision 1857) |
+++ Designs/galileo_experiment/DOC/gnuplot/sobeslav_tabor.txt (nonexistent) |
@@ -1,7516 +0,0 @@ |
-time[s] X Xerr Y Yerr Z Zerr |
- 0.046 473.890 6.872 532.000 8.687 234.710 7.143 |
- 36.855 491.998 8.301 528.890 7.523 243.507 10.614 |
- 37.013 484.870 11.103 527.368 10.576 245.245 10.324 |
- 37.171 472.998 10.415 531.113 15.568 255.832 13.671 |
- 37.328 507.560 14.224 521.681 9.275 240.888 16.570 |
- 37.484 480.195 9.528 525.366 9.038 242.018 11.094 |
- 37.640 495.072 6.807 535.513 11.970 253.550 7.336 |
- 37.797 493.460 8.822 528.755 9.465 241.515 13.170 |
- 37.953 499.164 13.158 527.657 12.693 264.725 12.399 |
- 38.108 478.171 14.375 531.586 11.909 216.727 18.358 |
- 38.264 497.611 10.331 541.385 10.139 254.107 8.122 |
- 38.420 481.596 9.740 536.693 7.595 256.071 6.603 |
- 38.578 489.296 11.327 532.667 9.156 254.970 6.038 |
- 38.735 490.702 9.594 538.136 9.546 240.299 13.929 |
- 38.891 503.607 14.932 531.641 7.071 239.763 16.721 |
- 39.046 490.436 11.052 529.726 9.241 247.277 12.023 |
- 39.204 488.504 9.922 529.177 8.956 259.212 7.060 |
- 39.361 493.155 8.246 532.781 7.241 257.002 9.090 |
- 39.518 488.641 12.690 537.947 10.876 240.420 17.286 |
- 39.674 487.976 10.399 540.049 8.907 235.414 6.140 |
- 39.831 498.499 10.493 533.740 7.603 253.154 7.265 |
- 39.988 483.255 14.560 534.887 10.390 257.291 18.777 |
- 40.144 489.872 16.587 536.049 12.744 250.872 23.112 |
- 40.300 491.218 13.775 535.120 7.862 252.428 8.574 |
- 40.456 491.622 8.430 535.851 10.267 247.634 5.483 |
- 40.613 489.936 6.519 530.988 6.787 253.266 7.130 |
- 40.771 492.159 8.485 536.369 8.497 243.912 10.078 |
- 40.928 492.781 8.425 533.623 7.159 248.039 8.602 |
- 41.085 484.697 13.785 533.456 15.099 238.490 12.979 |
- 41.240 503.957 13.382 536.334 11.656 238.614 18.716 |
- 41.396 500.379 10.057 532.893 13.252 252.646 14.751 |
- 41.553 484.273 9.101 535.968 8.940 243.686 14.275 |
- 41.709 493.702 14.335 537.909 9.563 245.836 12.366 |
- 41.866 495.087 7.606 534.359 9.614 252.038 8.835 |
- 42.023 486.170 11.688 539.193 11.618 248.330 20.960 |
- 42.181 486.411 9.835 536.361 9.314 243.413 12.274 |
- 42.337 490.174 11.270 536.273 10.110 245.714 10.059 |
- 42.493 488.131 6.810 539.152 10.644 244.247 6.053 |
- 42.650 495.871 10.049 536.531 9.115 252.652 6.794 |
- 42.807 489.198 6.903 536.315 7.337 245.906 5.779 |
- 42.964 492.002 9.901 533.663 7.239 238.369 12.595 |
- 43.122 491.730 7.964 538.116 9.547 252.133 17.241 |
- 43.278 491.807 14.397 536.571 6.734 244.281 20.860 |
- 43.435 490.288 8.567 532.375 6.764 251.532 7.220 |
- 43.591 491.382 7.200 534.803 6.241 251.195 7.027 |
- 43.748 493.193 8.952 536.938 7.779 243.332 11.654 |
- 43.904 494.511 9.919 537.609 12.005 247.573 7.456 |
- 44.060 488.285 7.573 534.536 7.127 246.395 7.163 |
- 44.217 495.072 6.500 535.475 7.070 248.093 7.498 |
- 44.374 495.640 8.041 534.744 7.849 250.270 9.322 |
- 44.530 491.026 7.100 537.187 6.503 246.672 6.367 |
- 44.688 492.980 8.627 537.701 7.903 236.046 6.847 |
- 44.844 488.319 7.504 534.867 8.231 250.710 8.928 |
- 45.000 489.473 11.451 534.678 6.937 252.237 6.302 |
- 45.158 492.604 10.619 534.426 9.089 256.092 10.698 |
- 45.316 493.596 9.198 537.544 6.482 246.200 5.541 |
- 45.473 494.475 8.382 537.715 7.515 237.342 5.294 |
- 45.630 496.554 6.030 537.467 6.371 242.563 4.403 |
- 45.788 491.555 8.149 536.174 6.326 246.085 4.018 |
- 45.945 486.525 7.779 535.091 7.663 253.180 13.259 |
- 46.102 491.875 7.837 533.991 6.692 251.671 4.799 |
- 46.259 491.998 6.659 536.379 6.404 242.666 5.765 |
- 46.416 492.640 6.720 535.183 6.427 246.076 5.283 |
- 46.574 495.796 7.491 535.161 7.170 250.280 4.216 |
- 46.731 493.657 6.686 535.951 6.945 249.482 9.138 |
- 46.887 496.756 8.116 537.059 7.452 251.304 8.463 |
- 47.044 497.297 10.795 539.080 7.002 246.573 12.199 |
- 47.201 491.513 7.940 538.370 6.428 251.465 9.140 |
- 47.358 500.235 7.564 534.473 6.008 260.384 9.774 |
- 47.515 502.602 5.885 538.304 7.105 247.013 8.301 |
- 47.672 499.716 8.880 537.753 6.419 238.550 17.363 |
- 47.828 503.117 10.743 535.567 7.736 246.065 10.753 |
- 47.985 499.351 7.814 534.985 8.331 250.480 9.162 |
- 48.142 501.763 6.317 534.019 7.201 255.974 4.726 |
- 48.300 496.567 6.227 534.890 7.169 249.219 6.444 |
- 48.458 504.345 7.710 540.138 6.773 241.062 5.864 |
- 48.617 507.643 13.119 537.731 6.880 244.720 14.025 |
- 48.773 507.456 8.017 538.967 6.246 246.327 6.610 |
- 48.930 515.494 10.851 535.269 10.531 236.283 19.961 |
- 49.088 504.555 6.584 537.592 8.047 243.822 8.112 |
- 49.244 503.845 10.305 534.845 6.116 259.258 3.716 |
- 49.402 498.978 15.205 536.898 8.663 239.962 19.681 |
- 49.558 500.289 6.977 538.209 8.149 242.989 16.196 |
- 49.714 505.882 8.659 537.312 7.407 240.119 13.967 |
- 49.871 506.808 10.078 538.303 7.745 251.061 12.350 |
- 50.029 508.498 12.319 536.273 8.047 252.240 6.800 |
- 50.185 500.345 8.424 534.722 7.345 243.312 6.711 |
- 50.343 504.223 10.085 540.107 7.573 252.423 5.348 |
- 50.501 509.322 6.205 536.261 6.840 247.564 4.325 |
- 50.658 508.163 6.586 537.502 6.688 248.635 12.159 |
- 50.816 512.081 7.737 535.325 7.718 247.426 6.545 |
- 50.973 507.940 8.251 531.033 8.830 246.064 11.948 |
- 51.129 508.829 7.926 537.700 7.797 238.370 12.599 |
- 51.286 519.318 10.092 536.527 10.450 257.183 7.445 |
- 51.444 508.243 8.506 538.765 9.255 228.791 13.889 |
- 51.599 514.912 7.341 540.417 10.389 254.357 8.003 |
- 51.756 511.129 10.315 536.464 11.264 247.863 10.549 |
- 51.913 502.771 14.376 533.124 6.598 241.078 8.103 |
- 52.069 515.997 7.878 536.591 7.611 239.730 12.518 |
- 52.226 505.769 11.420 538.706 8.341 239.477 8.701 |
- 52.382 516.727 8.725 534.277 6.272 246.534 6.362 |
- 52.540 505.307 8.498 532.912 6.290 248.035 8.838 |
- 52.697 507.323 10.234 538.949 7.213 233.690 6.976 |
- 52.854 505.733 8.242 540.009 6.939 253.776 6.226 |
- 53.011 508.047 9.826 537.440 6.338 250.497 12.116 |
- 53.169 513.580 10.661 536.124 7.091 247.604 9.687 |
- 53.326 498.675 13.037 538.841 10.988 244.586 7.584 |
- 53.482 520.076 13.564 538.808 9.014 253.135 12.826 |
- 53.639 501.230 8.341 543.058 6.793 254.951 5.332 |
- 53.797 504.482 7.426 531.530 8.159 250.079 8.549 |
- 53.954 506.344 7.913 542.835 8.873 240.070 9.233 |
- 54.110 510.613 14.164 534.148 7.359 252.840 14.936 |
- 54.266 505.066 7.451 531.511 6.656 255.768 8.804 |
- 54.423 505.080 7.614 538.095 6.588 238.127 7.712 |
- 54.580 510.340 9.974 539.471 6.062 241.371 7.002 |
- 54.736 511.843 8.584 534.174 8.544 244.243 7.384 |
- 54.893 501.858 7.825 534.391 5.944 246.452 4.943 |
- 55.050 503.548 8.595 534.074 6.458 254.244 4.474 |
- 55.207 502.605 7.269 536.330 6.491 244.542 4.748 |
- 55.364 506.776 8.813 533.433 6.100 248.525 6.064 |
- 55.521 503.127 7.903 535.704 7.896 243.365 8.491 |
- 55.677 505.701 6.181 535.947 7.259 246.163 4.472 |
- 55.835 501.747 10.256 534.729 6.201 248.421 5.255 |
- 55.992 503.027 5.767 534.517 5.944 250.264 4.313 |
- 56.150 501.540 7.175 532.725 7.658 246.082 4.864 |
- 56.307 501.315 9.444 535.847 7.334 256.770 9.616 |
- 56.464 497.983 11.833 535.268 6.394 222.667 5.662 |
- 56.621 505.549 7.321 534.562 6.972 253.816 6.566 |
- 56.779 505.695 6.850 534.565 7.686 260.888 7.612 |
- 56.937 506.907 9.979 532.055 7.528 254.708 5.475 |
- 57.095 494.319 8.467 538.560 6.510 233.587 8.394 |
- 57.251 488.813 8.178 536.195 7.914 237.365 5.308 |
- 57.408 504.468 9.229 530.212 7.531 247.833 10.706 |
- 57.566 497.904 9.997 532.392 7.719 255.468 6.783 |
- 57.723 498.969 8.705 536.464 6.994 238.274 6.312 |
- 57.881 500.069 9.127 535.344 6.329 246.422 10.157 |
- 58.038 494.950 12.439 533.763 7.971 250.364 9.125 |
- 58.194 491.339 7.409 536.287 9.194 238.283 11.495 |
- 58.350 490.213 9.928 537.682 10.947 241.432 8.730 |
- 58.507 493.552 10.402 535.996 8.604 252.234 7.919 |
- 58.664 485.625 10.325 533.450 7.492 247.712 7.806 |
- 58.820 495.056 9.488 534.084 6.885 246.987 6.147 |
- 58.977 498.730 13.487 533.780 9.474 252.379 9.457 |
- 59.133 494.177 9.729 535.717 6.791 237.793 9.745 |
- 59.289 482.681 14.204 533.177 9.198 240.917 9.648 |
- 59.445 496.536 10.578 533.311 10.508 249.489 12.487 |
- 59.603 495.785 13.234 532.363 6.623 252.624 15.330 |
- 59.759 492.147 6.761 533.713 6.330 241.026 5.350 |
- 59.916 492.651 7.988 532.137 9.185 247.650 5.675 |
- 60.073 492.476 8.541 533.591 7.528 243.496 9.422 |
- 60.230 491.584 7.948 532.686 7.058 253.565 7.371 |
- 60.387 492.375 12.425 529.306 10.084 248.815 10.442 |
- 60.544 493.533 11.089 532.863 16.091 244.448 26.434 |
- 60.699 482.145 9.775 532.568 8.008 244.184 18.494 |
- 60.855 493.561 12.217 531.365 9.063 251.761 8.451 |
- 61.011 493.825 11.350 528.063 10.690 250.657 7.540 |
- 61.168 491.228 7.995 526.930 10.176 243.826 11.504 |
- 61.325 488.052 12.402 528.819 12.903 247.558 10.362 |
- 61.481 502.940 13.297 517.288 13.816 236.685 16.329 |
- 61.637 481.539 15.294 523.972 8.069 241.786 15.167 |
- 61.793 491.455 12.056 518.939 13.429 249.727 8.579 |
- 61.949 498.644 9.501 517.859 10.442 252.827 8.566 |
- 62.106 491.416 9.184 527.108 7.910 245.388 9.276 |
- 62.262 490.624 11.551 521.331 9.996 237.373 13.746 |
- 62.419 482.306 8.735 528.623 9.178 239.713 10.544 |
- 62.575 501.263 24.217 529.986 11.419 253.967 24.392 |
- 62.731 488.302 12.922 526.959 10.844 249.619 6.632 |
- 62.888 491.083 9.473 526.949 6.867 249.556 10.152 |
- 63.044 489.920 9.797 526.419 8.828 248.685 7.816 |
- 63.200 493.339 12.025 536.674 8.868 248.046 7.459 |
- 63.357 497.363 11.217 526.576 6.777 244.120 7.995 |
- 63.513 487.313 7.420 528.195 8.723 247.771 10.119 |
- 63.670 491.983 11.572 523.922 9.210 246.517 6.587 |
- 63.827 485.099 7.657 526.599 9.311 250.765 5.804 |
- 63.985 503.011 12.840 529.756 8.968 258.357 14.818 |
- 64.142 482.020 9.716 531.187 9.627 234.173 8.552 |
- 64.299 507.640 8.728 534.261 6.662 252.301 9.544 |
- 64.455 483.536 9.457 532.032 9.723 233.223 9.729 |
- 64.611 489.785 11.079 530.770 10.661 254.752 8.530 |
- 64.769 490.377 9.484 527.637 8.624 246.137 9.161 |
- 64.926 486.213 11.525 532.436 9.105 250.491 10.089 |
- 65.083 493.272 9.125 528.674 10.142 254.574 8.958 |
- 65.240 488.252 10.633 535.996 8.079 235.435 10.147 |
- 65.397 495.322 9.613 532.450 9.187 249.934 9.294 |
- 65.553 470.103 8.925 531.054 9.868 232.739 12.325 |
- 65.709 494.051 13.903 533.600 12.041 248.317 14.352 |
- 65.866 488.520 8.283 532.096 9.463 257.543 6.752 |
- 66.023 488.475 7.385 533.151 7.520 247.975 6.242 |
- 66.181 495.694 9.341 532.791 7.530 254.289 10.127 |
- 66.338 489.066 11.898 533.478 10.300 244.942 11.868 |
- 66.495 488.740 8.694 535.264 10.053 241.419 7.683 |
- 66.651 485.697 19.185 536.052 7.820 253.024 10.920 |
- 66.807 490.657 11.983 533.340 11.575 249.980 10.891 |
- 66.964 495.766 9.553 533.303 9.599 249.059 9.237 |
- 67.121 489.437 7.806 530.343 9.766 247.750 8.666 |
- 67.277 494.914 9.978 535.253 9.444 249.257 9.752 |
- 67.433 492.999 8.063 534.042 8.983 252.662 9.150 |
- 67.589 487.850 7.762 535.910 6.842 234.156 7.953 |
- 67.745 494.968 11.816 533.319 7.901 247.701 17.275 |
- 67.902 498.029 12.458 534.423 13.623 254.097 16.801 |
- 68.057 501.330 16.697 533.704 9.334 244.161 13.283 |
- 68.213 496.353 8.594 536.267 16.467 242.171 11.654 |
- 68.370 489.443 9.976 536.872 8.078 244.551 8.639 |
- 68.526 491.544 11.792 530.658 7.791 242.495 14.605 |
- 68.683 492.065 9.398 535.016 7.907 255.594 7.835 |
- 68.839 491.630 17.189 535.180 11.793 235.055 19.066 |
- 68.994 491.596 9.617 535.161 10.769 240.360 11.533 |
- 69.151 496.825 7.091 536.561 9.519 256.953 8.225 |
- 69.308 497.778 12.856 536.035 9.537 243.549 12.131 |
- 69.465 492.607 11.291 535.150 11.737 241.505 7.536 |
- 69.622 490.826 11.632 537.561 8.291 248.045 12.548 |
- 69.779 487.428 9.864 534.505 11.718 255.680 11.002 |
- 69.936 492.194 7.987 532.585 9.448 258.436 13.236 |
- 70.092 487.892 12.435 536.545 9.900 246.414 14.760 |
- 70.248 493.018 8.474 536.645 10.192 239.914 9.628 |
- 70.405 502.800 11.926 538.136 7.136 240.239 7.112 |
- 70.562 495.628 10.645 534.451 9.860 253.552 8.707 |
- 70.719 494.356 8.069 534.934 11.416 246.715 7.886 |
- 70.876 489.933 9.365 534.109 8.987 246.667 6.594 |
- 71.033 483.669 11.472 534.761 12.177 238.956 11.096 |
- 71.192 490.266 13.829 533.717 7.071 242.719 9.784 |
- 71.348 494.522 10.680 536.007 10.958 254.107 8.270 |
- 71.506 494.575 8.269 536.030 8.858 262.321 6.228 |
- 71.663 496.055 11.053 537.240 14.022 248.273 12.688 |
- 71.819 492.440 10.780 539.032 9.061 237.482 13.329 |
- 71.975 489.524 7.449 535.870 8.784 244.274 10.366 |
- 72.133 494.615 11.967 534.018 6.630 255.062 11.924 |
- 72.290 492.336 10.049 533.010 10.083 260.960 18.106 |
- 72.447 488.423 11.665 534.640 10.049 240.089 8.617 |
- 72.604 494.754 7.957 536.306 8.203 247.010 5.169 |
- 72.762 495.947 9.743 537.863 9.259 246.340 8.423 |
- 72.919 497.249 12.565 535.418 7.827 252.853 7.084 |
- 73.075 495.762 7.566 536.034 6.966 244.288 9.073 |
- 73.233 487.757 6.471 537.400 8.116 244.872 6.917 |
- 73.389 487.077 11.071 531.854 8.003 248.518 11.730 |
- 73.546 489.890 15.242 534.738 6.995 254.565 14.969 |
- 73.703 491.598 11.350 531.307 10.429 261.475 6.070 |
- 73.861 493.856 11.115 535.653 7.326 247.804 8.113 |
- 74.017 495.488 9.029 535.106 8.165 239.868 7.762 |
- 74.174 485.244 18.136 536.311 14.457 236.518 11.792 |
- 74.329 480.012 11.755 533.143 7.990 248.655 11.048 |
- 74.486 487.780 12.174 532.451 7.955 259.516 11.205 |
- 74.644 492.567 9.093 535.004 7.037 253.425 5.576 |
- 74.801 489.325 8.545 535.870 11.173 240.824 6.132 |
- 74.958 491.293 12.060 537.698 8.459 239.028 6.366 |
- 75.115 491.052 11.271 537.127 7.333 246.370 4.926 |
- 75.272 492.550 11.431 536.581 9.090 249.503 13.238 |
- 75.429 494.405 11.652 533.235 11.258 253.945 11.054 |
- 75.586 493.774 7.425 536.812 11.138 249.529 13.349 |
- 75.743 493.597 11.544 535.288 7.823 239.335 9.392 |
- 75.900 489.316 12.197 535.373 7.900 247.853 8.658 |
- 76.056 501.353 8.867 537.263 10.012 251.188 9.189 |
- 76.212 497.253 9.663 534.852 8.270 234.011 10.152 |
- 76.369 492.492 10.513 534.618 12.032 252.240 10.590 |
- 76.527 494.274 8.729 537.906 12.493 248.842 10.175 |
- 76.684 486.012 8.203 535.139 7.984 253.588 9.689 |
- 76.841 488.740 11.578 534.881 8.624 258.705 6.831 |
- 76.999 489.787 8.455 538.848 11.593 239.537 9.422 |
- 77.156 490.067 7.653 538.838 11.116 239.675 9.574 |
- 77.313 498.000 9.787 535.648 10.913 264.276 11.322 |
- 77.470 491.490 13.559 535.836 12.653 243.692 22.320 |
- 77.626 491.074 11.019 535.048 10.498 237.896 15.697 |
- 77.782 488.790 12.377 540.840 14.729 246.718 14.236 |
- 77.939 490.867 10.972 534.758 14.635 247.107 15.321 |
- 78.095 498.088 9.260 531.687 10.661 267.671 8.145 |
- 78.251 493.180 9.551 536.666 15.203 245.566 12.217 |
- 78.407 494.371 10.228 540.556 11.937 232.895 11.881 |
- 78.564 495.993 7.856 535.155 9.331 248.398 6.687 |
- 78.721 488.930 9.048 532.301 9.298 250.274 7.234 |
- 78.877 488.309 8.227 534.033 9.944 253.022 6.821 |
- 79.034 493.413 12.704 535.180 8.362 251.690 15.690 |
- 79.190 488.624 8.642 536.431 9.956 244.736 8.987 |
- 79.346 489.956 8.472 534.614 9.271 251.197 6.818 |
- 79.503 495.509 7.459 535.126 7.944 252.952 11.056 |
- 79.660 493.665 9.353 536.361 8.656 248.929 7.564 |
- 79.817 495.426 7.539 535.353 8.786 248.569 5.005 |
- 79.973 489.374 6.825 535.433 11.235 240.255 12.703 |
- 80.131 486.243 10.378 533.684 7.883 250.362 12.490 |
- 80.287 490.392 10.567 535.826 8.497 245.413 8.663 |
- 80.443 494.633 9.833 535.718 8.415 250.134 6.871 |
- 80.601 494.616 8.162 533.487 8.467 254.171 7.255 |
- 80.758 492.076 7.321 536.464 8.716 237.981 6.948 |
- 80.915 492.070 8.280 536.684 8.609 239.249 11.088 |
- 81.072 489.680 7.553 535.356 8.403 249.512 4.848 |
- 81.229 492.156 6.189 535.153 7.567 246.385 6.259 |
- 81.386 492.341 9.039 534.201 7.522 250.533 5.182 |
- 81.543 489.823 8.201 536.172 7.717 247.955 6.675 |
- 81.700 491.198 8.146 536.281 10.136 245.359 9.137 |
- 81.856 496.192 7.119 534.122 7.200 246.493 5.564 |
- 82.014 493.941 7.313 536.601 8.093 246.254 7.937 |
- 82.170 496.589 6.784 534.286 7.987 246.372 8.173 |
- 82.326 488.215 8.939 536.582 8.968 251.873 9.550 |
- 82.482 482.442 8.764 534.695 7.419 243.278 6.821 |
- 82.639 498.884 11.365 535.267 12.642 248.132 16.444 |
- 82.796 497.708 8.628 536.512 9.776 248.561 9.047 |
- 82.952 494.467 9.492 537.075 6.898 240.035 6.045 |
- 83.109 492.234 7.620 536.120 8.186 250.110 6.216 |
- 83.265 492.252 7.782 535.591 7.560 247.761 8.089 |
- 83.422 492.932 10.229 535.085 6.882 250.437 6.697 |
- 83.579 492.999 13.185 535.270 10.530 242.674 9.544 |
- 83.736 487.120 8.854 535.982 7.248 243.406 9.791 |
- 83.894 492.491 7.341 533.749 9.654 256.494 7.861 |
- 84.050 491.744 7.013 536.057 7.705 248.154 6.294 |
- 84.207 493.287 8.561 538.100 10.129 244.381 9.131 |
- 84.364 492.372 8.927 536.941 6.640 244.033 13.321 |
- 84.520 492.863 8.533 535.969 7.981 242.790 8.701 |
- 84.676 486.468 9.751 535.869 8.475 245.217 10.344 |
- 84.833 489.534 8.659 535.858 10.272 245.342 11.007 |
- 84.990 492.305 7.898 534.078 8.465 248.053 8.379 |
- 85.146 493.153 7.094 535.560 6.827 253.730 6.267 |
- 85.303 494.441 7.118 536.855 7.672 249.767 6.426 |
- 85.460 498.284 9.638 537.958 7.201 238.317 8.913 |
- 85.617 496.822 10.303 536.629 6.915 251.133 4.080 |
- 85.774 492.388 6.818 534.116 7.262 252.401 7.462 |
- 85.931 492.833 7.217 536.071 8.088 246.094 9.525 |
- 86.087 490.838 8.578 536.250 7.407 249.730 6.802 |
- 86.243 490.448 8.632 534.992 8.404 242.627 7.499 |
- 86.399 495.294 6.841 535.159 7.895 253.416 8.848 |
- 86.556 495.242 10.315 536.661 7.400 246.694 9.561 |
- 86.712 493.912 6.980 536.216 6.617 246.666 6.687 |
- 86.869 495.119 9.012 536.012 12.412 243.406 11.901 |
- 87.026 497.061 8.583 536.600 7.566 248.694 14.679 |
- 87.183 489.040 10.182 536.856 6.738 245.216 19.729 |
- 87.339 491.070 10.750 535.008 11.000 247.362 6.824 |
- 87.497 498.480 15.077 535.030 10.518 248.673 9.134 |
- 87.653 494.464 7.479 537.150 8.587 247.476 9.762 |
- 87.810 489.574 10.669 536.561 9.017 243.324 8.474 |
- 87.967 494.825 9.513 534.345 9.298 246.053 13.770 |
- 88.123 487.288 6.679 535.753 8.132 243.000 7.673 |
- 88.281 496.352 7.094 535.407 7.795 255.970 6.452 |
- 88.438 494.823 8.516 535.324 8.189 250.779 6.794 |
- 88.595 496.708 8.434 536.393 6.629 251.697 8.115 |
- 88.752 495.127 10.201 534.374 8.601 248.127 12.367 |
- 88.908 490.021 9.721 538.683 7.623 239.381 10.485 |
- 89.065 491.630 6.210 535.946 6.299 253.253 7.398 |
- 89.223 496.466 5.746 537.149 6.786 251.492 9.246 |
- 89.380 503.284 12.542 537.191 7.657 243.844 11.834 |
- 89.536 497.212 9.485 536.222 6.623 249.878 7.167 |
- 89.693 498.382 9.811 539.502 6.581 245.308 10.188 |
- 89.850 505.343 8.600 536.535 7.354 250.983 11.539 |
- 90.007 508.543 6.158 532.815 6.673 250.949 11.747 |
- 90.165 509.325 8.706 538.368 7.098 235.989 12.964 |
- 90.320 495.983 6.920 536.883 7.322 232.539 9.470 |
- 90.477 506.739 7.234 534.688 6.069 255.215 8.290 |
- 90.635 506.357 8.066 535.247 6.187 250.752 6.070 |
- 90.792 509.963 6.966 536.512 6.804 240.957 4.388 |
- 90.949 513.189 5.719 536.095 5.846 245.869 3.743 |
- 91.108 507.361 6.585 537.681 6.646 239.658 4.946 |
- 91.265 509.413 7.119 537.556 5.932 243.326 4.598 |
- 91.422 505.394 5.564 537.405 6.142 243.043 3.954 |
- 91.580 506.583 6.411 537.354 6.222 251.750 6.732 |
- 91.738 503.135 9.944 536.843 6.485 246.967 6.456 |
- 91.896 503.441 21.197 534.408 10.103 251.979 20.160 |
- 92.053 504.754 12.464 536.524 11.856 246.819 46.454 |
- 92.208 511.037 9.967 537.025 7.930 245.678 11.574 |
- 92.365 500.470 6.109 535.120 8.858 246.056 12.928 |
- 92.522 494.974 7.394 537.241 7.043 247.160 5.560 |
- 92.681 498.199 5.945 534.562 6.523 254.071 6.394 |
- 92.840 491.972 6.652 533.365 7.608 252.480 10.865 |
- 92.998 491.909 8.578 535.063 6.467 246.734 4.941 |
- 93.155 494.609 6.667 538.120 6.711 240.507 3.758 |
- 93.313 488.716 7.138 535.531 5.997 245.175 4.835 |
- 93.470 479.807 6.420 533.295 6.098 250.851 4.848 |
- 93.627 471.898 6.284 533.583 5.931 249.708 3.908 |
- 93.785 471.978 5.812 535.895 6.262 252.107 3.557 |
- 93.945 474.339 6.171 533.909 6.116 253.601 3.973 |
- 94.102 477.003 8.189 535.809 6.930 250.586 6.256 |
- 94.259 477.330 6.523 536.308 6.156 247.385 4.550 |
- 94.416 477.913 5.655 536.503 5.789 247.423 5.487 |
- 94.574 473.059 6.149 533.805 6.200 250.564 4.292 |
- 94.732 470.200 6.530 534.718 6.015 251.415 4.822 |
- 94.890 469.692 5.978 535.237 5.955 251.704 4.636 |
- 95.048 472.736 5.538 533.352 6.213 254.517 4.500 |
- 95.206 476.307 5.833 535.053 5.891 252.235 4.036 |
- 95.364 489.393 5.466 537.970 5.800 252.252 4.494 |
- 95.521 486.983 6.016 538.899 5.984 245.562 7.158 |
- 95.679 491.909 5.487 538.909 5.922 245.805 5.015 |
- 95.836 489.379 5.743 537.139 5.800 248.808 4.541 |
- 95.993 487.843 5.407 536.691 5.823 248.768 4.241 |
- 96.150 488.938 5.533 534.826 5.679 252.717 3.476 |
- 96.308 488.469 5.445 534.698 6.055 247.137 5.674 |
- 96.466 491.134 5.545 537.037 6.002 243.861 4.000 |
- 96.623 493.631 5.402 535.950 6.232 246.768 3.745 |
- 96.781 495.886 5.799 536.189 6.125 248.737 3.666 |
- 96.939 495.028 5.719 536.051 5.793 248.667 3.192 |
- 97.097 491.620 5.699 536.200 6.127 247.206 3.952 |
- 97.255 493.646 5.430 536.572 5.730 247.122 3.941 |
- 97.413 493.576 5.412 536.675 5.965 246.701 3.397 |
- 97.571 492.265 5.363 536.146 6.022 248.817 4.182 |
- 97.728 493.342 5.599 535.171 6.138 248.278 3.390 |
- 97.887 495.033 5.639 535.411 5.756 247.932 3.976 |
- 98.045 492.150 5.803 536.814 5.863 247.299 4.685 |
- 98.202 491.551 5.645 537.228 5.787 245.623 3.779 |
- 98.360 492.145 5.338 537.542 5.819 245.426 4.656 |
- 98.517 493.671 6.741 536.705 5.868 248.894 4.938 |
- 98.675 493.206 5.807 534.717 5.950 251.788 4.450 |
- 98.832 492.922 5.620 535.257 5.915 247.597 4.767 |
- 98.990 492.569 5.632 536.772 5.809 243.866 4.493 |
- 99.148 493.065 5.548 537.617 6.120 246.738 4.985 |
- 99.305 488.350 8.605 537.066 6.762 248.597 8.642 |
- 99.462 493.773 6.459 536.570 5.913 253.885 4.795 |
- 99.619 491.967 5.439 535.745 6.422 248.878 4.493 |
- 99.776 492.429 5.610 535.187 6.008 247.158 4.265 |
- 99.934 493.134 5.635 536.181 6.185 247.191 4.274 |
-100.092 490.181 6.218 537.421 6.775 247.611 3.767 |
-100.250 494.761 5.915 536.364 5.788 246.796 5.275 |
-100.408 493.337 5.645 535.713 6.006 249.607 4.448 |
-100.566 491.243 6.045 536.607 6.086 250.436 5.297 |
-100.724 492.952 6.127 536.516 5.791 249.754 3.521 |
-100.882 492.719 5.639 536.815 6.052 249.047 4.364 |
-101.040 491.287 5.652 537.018 6.235 247.840 3.740 |
-101.198 493.592 5.770 536.230 6.053 249.278 3.603 |
-101.356 492.665 5.520 537.502 5.891 243.462 3.219 |
-101.515 492.626 5.530 536.405 5.934 246.074 3.384 |
-101.673 492.456 5.482 536.994 5.772 247.830 4.065 |
-101.831 490.854 5.456 537.560 5.962 249.648 4.047 |
-101.988 493.818 5.588 536.255 5.803 251.276 3.942 |
-102.146 491.258 5.402 535.202 5.859 248.442 4.079 |
-102.303 491.932 5.471 537.332 5.798 243.994 3.561 |
-102.462 495.189 5.410 538.803 5.792 245.979 3.893 |
-102.619 493.481 5.557 536.248 5.762 250.119 3.838 |
-102.777 493.324 5.609 536.582 6.369 248.911 3.934 |
-102.936 494.363 5.887 536.885 5.791 249.899 4.029 |
-103.093 488.063 5.411 536.468 5.994 244.289 3.809 |
-103.251 494.180 6.258 536.814 6.147 252.052 3.476 |
-103.410 492.221 5.674 535.628 5.842 249.060 4.120 |
-103.568 492.202 5.900 538.046 5.774 245.580 3.792 |
-103.726 495.382 5.563 535.910 5.969 248.765 3.718 |
-103.884 492.453 6.015 537.049 5.915 245.007 5.035 |
-104.042 493.394 5.863 537.090 6.091 250.240 5.382 |
-104.200 493.074 6.504 537.390 5.988 249.242 3.318 |
-104.357 490.880 5.818 537.993 5.691 246.682 3.899 |
-104.515 493.518 5.287 536.389 6.222 248.326 3.847 |
-104.673 492.085 5.355 534.924 6.152 249.353 5.331 |
-104.831 493.310 5.749 537.849 6.267 247.313 3.450 |
-104.988 495.013 6.245 537.218 6.043 249.413 3.971 |
-105.145 492.180 5.422 537.312 5.808 244.244 3.925 |
-105.302 494.481 5.624 537.783 5.874 247.952 4.293 |
-105.460 493.044 5.383 536.537 6.056 249.099 3.760 |
-105.618 493.340 5.541 536.445 6.286 247.231 3.987 |
-105.776 491.273 5.885 536.444 5.960 249.792 4.092 |
-105.933 491.472 5.502 537.614 5.781 247.877 3.451 |
-106.091 493.334 5.835 536.996 5.988 246.658 3.769 |
-106.248 492.013 5.604 536.140 5.908 247.116 3.963 |
-106.406 492.120 5.933 535.701 5.948 248.861 3.771 |
-106.563 492.321 5.317 536.887 6.271 248.678 3.990 |
-106.721 495.833 5.366 536.838 5.823 249.136 3.607 |
-106.879 488.858 5.738 536.398 6.075 247.721 3.625 |
-107.037 491.588 5.468 536.614 5.868 246.647 4.774 |
-107.194 493.325 5.341 536.656 5.819 248.936 3.759 |
-107.352 493.433 5.521 536.666 5.947 249.999 3.287 |
-107.512 492.184 5.412 536.496 5.999 247.440 3.960 |
-107.669 490.991 5.597 537.295 6.042 245.564 3.639 |
-107.827 492.609 5.725 536.993 5.774 245.895 3.518 |
-107.986 492.726 5.738 535.550 5.824 248.848 3.606 |
-108.144 493.477 5.598 536.175 5.687 251.588 3.558 |
-108.301 493.134 5.831 536.461 5.721 247.385 3.388 |
-108.459 492.201 5.390 537.304 5.808 247.753 4.317 |
-108.616 490.362 5.588 536.623 5.881 245.187 4.622 |
-108.774 492.223 5.282 537.106 5.933 249.601 3.979 |
-108.932 493.032 5.831 536.751 6.205 249.866 3.800 |
-109.089 494.070 5.759 535.997 6.031 249.838 3.559 |
-109.248 492.250 6.650 536.970 5.889 244.978 5.037 |
-109.405 492.302 5.623 536.369 5.876 245.829 3.607 |
-109.563 493.743 5.475 536.073 5.698 249.038 4.045 |
-109.721 491.997 5.709 537.190 6.392 248.930 3.724 |
-109.879 493.330 5.648 537.111 5.797 249.409 3.798 |
-110.037 491.913 5.746 535.621 5.858 248.584 4.025 |
-110.194 491.389 5.354 537.266 6.298 245.775 3.876 |
-110.352 491.683 5.276 537.422 5.999 245.247 3.564 |
-110.510 493.716 5.716 536.814 5.830 249.382 3.714 |
-110.668 494.787 5.736 536.078 5.767 250.183 3.654 |
-110.826 493.017 5.589 536.360 6.230 247.231 3.649 |
-110.984 490.880 5.471 536.643 6.035 246.382 3.708 |
-111.142 491.898 5.757 536.926 5.697 248.483 3.653 |
-111.300 492.589 5.285 537.649 5.816 249.634 3.784 |
-111.459 493.035 5.695 536.036 6.037 249.416 3.883 |
-111.616 494.620 5.429 537.270 5.698 246.624 4.001 |
-111.774 492.656 5.609 536.752 5.880 246.316 3.777 |
-111.932 491.836 5.634 536.497 5.839 244.353 4.217 |
-112.089 492.428 5.727 536.125 5.715 249.333 3.902 |
-112.247 491.954 5.596 536.581 5.626 249.763 3.297 |
-112.405 492.399 5.583 535.885 5.653 248.747 3.397 |
-112.563 492.124 5.496 536.788 5.943 247.977 3.370 |
-112.721 492.961 5.610 537.807 5.866 248.609 3.674 |
-112.879 493.649 5.868 537.128 5.920 244.346 4.047 |
-113.037 491.606 5.498 537.511 6.258 247.743 4.907 |
-113.195 492.986 5.492 535.685 5.769 250.137 3.842 |
-113.353 492.569 5.502 536.996 5.862 250.061 3.513 |
-113.512 494.145 5.830 537.790 6.094 246.560 4.729 |
-113.669 492.461 5.413 537.028 6.431 247.775 4.898 |
-113.827 492.404 5.786 537.670 5.792 246.647 3.725 |
-113.986 492.394 5.709 536.906 5.892 247.736 5.184 |
-114.144 493.934 5.784 536.019 5.856 251.627 4.976 |
-114.302 492.679 5.859 537.980 5.829 245.286 4.092 |
-114.459 492.976 5.709 538.109 5.854 248.192 4.825 |
-114.617 493.189 5.723 537.041 5.805 247.431 3.609 |
-114.775 491.651 5.946 537.450 5.886 246.824 3.141 |
-114.933 494.096 5.424 536.704 5.968 251.448 3.804 |
-115.091 491.940 5.996 537.447 6.429 246.024 3.812 |
-115.249 493.629 5.793 537.544 6.372 248.050 3.971 |
-115.407 492.526 5.545 536.545 5.797 249.970 3.922 |
-115.565 492.815 5.719 536.425 5.725 247.189 3.919 |
-115.723 493.388 5.675 536.304 5.861 246.851 3.855 |
-115.881 494.303 5.596 537.033 5.783 248.668 3.285 |
-116.039 492.993 5.431 536.390 5.904 247.566 3.596 |
-116.197 491.009 5.364 536.393 5.777 249.355 3.562 |
-116.355 492.420 5.587 536.853 5.827 245.893 3.543 |
-116.513 493.094 5.496 537.088 5.729 247.078 3.036 |
-116.671 496.121 5.879 536.320 5.962 251.270 3.320 |
-116.829 491.751 5.608 536.883 5.828 249.202 3.827 |
-116.987 493.387 5.577 536.838 5.856 244.992 4.093 |
-117.145 492.903 5.606 537.078 5.926 248.669 3.363 |
-117.303 492.249 5.520 536.160 5.942 247.116 3.654 |
-117.461 494.322 5.852 536.591 5.744 252.291 4.053 |
-117.618 492.763 6.114 537.066 5.776 246.452 4.011 |
-117.776 494.477 5.345 538.130 5.627 244.754 3.635 |
-117.933 492.524 5.745 537.591 5.841 248.967 3.283 |
-118.091 490.775 5.575 535.956 5.651 248.079 3.687 |
-118.249 493.007 5.827 535.729 6.125 250.880 4.385 |
-118.408 492.640 5.615 536.347 5.954 247.798 3.580 |
-118.566 495.586 6.738 537.433 5.864 248.048 3.901 |
-118.723 491.325 5.913 537.374 5.965 246.680 3.520 |
-118.881 492.443 5.467 537.053 5.880 247.286 3.825 |
-119.039 493.734 5.573 535.760 6.216 249.202 4.607 |
-119.197 493.527 6.199 536.677 6.076 250.212 4.559 |
-119.355 491.865 5.772 536.906 6.096 247.662 5.281 |
-119.512 492.198 5.667 537.449 5.751 244.646 4.356 |
-119.670 492.992 5.673 536.784 5.928 249.346 4.204 |
-119.828 492.999 5.581 535.917 5.919 251.193 3.539 |
-119.986 491.720 5.954 538.369 5.886 246.491 4.109 |
-120.144 494.587 5.533 538.033 5.879 247.214 3.955 |
-120.301 490.395 5.395 536.650 6.008 246.922 4.882 |
-120.459 493.664 5.903 537.206 6.103 247.989 4.403 |
-120.617 493.076 5.670 536.612 5.894 249.339 3.398 |
-120.775 491.210 5.670 537.596 5.756 245.093 3.408 |
-120.934 494.472 5.484 536.396 5.727 249.420 3.396 |
-121.091 491.714 5.536 537.684 5.712 245.654 3.224 |
-121.249 494.107 6.019 537.276 5.902 244.006 3.530 |
-121.408 494.911 5.466 537.292 5.932 251.250 3.456 |
-121.565 491.289 5.230 537.432 5.734 247.142 3.092 |
-121.723 493.632 5.455 536.664 5.879 250.031 3.363 |
-121.881 492.386 5.449 536.966 5.697 246.580 3.394 |
-122.040 492.213 5.324 537.089 5.874 246.115 3.329 |
-122.197 494.732 5.688 538.030 5.792 247.251 3.671 |
-122.355 491.557 6.440 537.140 5.811 248.412 3.845 |
-122.513 493.405 6.098 535.501 5.826 249.354 3.792 |
-122.670 493.504 5.510 536.095 5.696 250.713 4.208 |
-122.828 492.675 5.661 537.531 5.812 242.837 4.150 |
-122.986 492.456 5.517 538.155 5.863 245.768 3.328 |
-123.144 493.744 5.590 536.061 5.779 251.447 3.721 |
-123.302 491.987 5.439 536.630 5.886 247.924 3.329 |
-123.460 493.089 5.919 536.876 5.943 248.429 3.520 |
-123.618 493.080 5.528 537.758 5.831 246.544 3.686 |
-123.776 492.910 5.960 537.617 5.968 246.545 3.503 |
-123.933 493.059 5.456 536.946 5.766 252.605 4.029 |
-124.091 492.220 5.366 537.589 6.033 245.816 3.970 |
-124.249 493.532 5.711 536.966 5.941 247.468 4.163 |
-124.406 491.195 5.369 536.439 5.688 249.164 4.258 |
-124.564 493.242 5.600 537.504 6.128 249.291 4.210 |
-124.722 492.992 5.273 537.915 6.107 250.412 3.447 |
-124.880 492.609 5.660 536.909 5.933 247.814 3.736 |
-125.038 494.566 5.456 535.949 5.740 250.548 3.147 |
-125.197 491.995 5.676 537.819 5.952 246.115 4.453 |
-125.355 493.680 5.699 538.388 5.796 247.061 3.767 |
-125.513 495.846 5.294 536.813 6.029 248.610 3.603 |
-125.672 493.358 5.525 537.328 5.809 247.846 3.905 |
-125.830 491.873 5.578 536.193 5.741 250.438 4.057 |
-125.987 492.508 6.052 537.822 5.756 246.934 3.437 |
-126.144 493.795 5.470 536.668 6.063 245.489 3.698 |
-126.302 492.048 5.667 538.736 6.046 247.094 4.190 |
-126.460 494.330 6.077 536.767 5.818 249.570 3.557 |
-126.619 492.963 5.792 537.017 5.739 247.425 3.599 |
-126.777 490.789 5.632 535.450 5.891 246.984 4.967 |
-126.934 492.107 5.685 537.244 5.974 246.749 5.120 |
-127.092 494.001 5.778 537.802 5.968 246.767 4.275 |
-127.250 493.350 8.050 536.598 5.878 246.877 4.383 |
-127.407 493.123 6.309 536.706 5.787 250.318 4.356 |
-127.565 492.261 5.684 537.437 5.857 247.653 4.555 |
-127.722 489.832 5.999 538.694 5.936 244.936 4.406 |
-127.880 493.318 5.375 536.176 6.053 249.199 3.253 |
-128.038 491.703 5.421 535.351 5.900 250.332 3.803 |
-128.196 491.347 5.440 536.723 5.825 249.243 3.130 |
-128.355 494.773 5.377 536.547 5.878 250.742 4.140 |
-128.512 494.537 5.416 537.435 6.129 245.507 3.827 |
-128.670 493.685 6.124 538.244 5.959 246.085 4.106 |
-128.828 493.626 5.648 538.222 5.741 248.590 3.732 |
-128.985 491.666 5.299 536.352 5.999 247.635 3.341 |
-129.143 491.496 5.455 536.413 5.930 251.996 3.883 |
-129.301 491.235 6.054 537.474 6.194 248.459 3.305 |
-129.459 494.132 5.318 537.424 5.866 247.214 3.659 |
-129.617 494.061 5.364 536.824 6.126 248.382 3.686 |
-129.775 493.080 5.586 537.658 5.824 248.753 3.860 |
-129.934 493.630 5.546 537.836 5.984 248.707 4.168 |
-130.091 494.046 5.571 537.478 6.202 249.277 3.866 |
-130.249 495.350 5.432 539.114 6.477 246.032 3.763 |
-130.407 491.283 5.540 538.011 5.924 244.730 4.598 |
-130.565 491.652 6.509 537.210 5.903 250.987 4.696 |
-130.723 493.186 5.865 538.032 6.046 254.419 3.763 |
-130.880 492.351 5.568 537.940 6.204 248.714 4.947 |
-131.038 492.473 5.950 540.109 5.967 246.457 4.614 |
-131.196 494.284 6.782 539.141 6.320 245.194 4.861 |
-131.352 493.642 6.281 540.591 6.023 251.291 6.119 |
-131.511 492.146 5.658 541.456 6.304 248.992 5.533 |
-131.669 493.681 6.010 539.754 5.965 249.509 4.049 |
-131.826 492.186 5.848 541.997 5.861 244.705 4.109 |
-131.984 492.151 5.564 540.410 5.853 249.007 3.534 |
-132.143 490.791 6.635 539.864 6.885 250.420 4.598 |
-132.300 492.897 6.549 543.238 6.278 250.014 3.749 |
-132.458 494.679 5.755 539.062 5.985 249.560 5.196 |
-132.616 490.046 5.953 541.600 6.226 245.195 3.893 |
-132.774 492.970 5.639 542.036 5.903 247.371 4.138 |
-132.932 494.269 5.678 541.330 6.082 249.083 3.660 |
-133.091 493.372 5.596 540.553 5.899 248.770 3.758 |
-133.249 493.593 5.494 541.315 5.878 251.027 4.367 |
-133.407 492.345 5.666 541.663 6.101 245.340 3.181 |
-133.565 491.923 5.651 540.756 5.931 250.243 3.597 |
-133.723 493.409 6.240 540.757 5.824 249.712 4.788 |
-133.881 492.934 5.559 542.147 5.766 248.057 3.792 |
-134.038 491.879 5.824 541.351 5.898 247.250 5.092 |
-134.196 494.538 5.604 541.683 5.763 247.922 2.915 |
-134.355 491.895 5.625 542.276 6.288 247.299 4.093 |
-134.512 492.989 5.587 541.442 5.857 251.033 4.319 |
-134.671 494.219 5.715 540.884 6.222 248.670 4.634 |
-134.828 491.642 6.039 541.668 5.925 245.236 5.375 |
-134.986 493.286 5.524 542.306 5.791 247.532 4.143 |
-135.144 491.972 5.801 540.843 6.007 248.955 3.337 |
-135.303 493.359 6.186 541.228 5.986 251.479 3.948 |
-135.460 492.193 5.341 541.392 6.078 249.404 3.414 |
-135.618 490.431 5.803 543.124 6.267 245.784 3.965 |
-135.775 493.954 5.839 543.471 6.186 250.337 3.612 |
-135.933 492.729 5.488 543.594 6.100 250.343 4.312 |
-136.091 493.067 5.598 543.926 5.818 248.703 4.164 |
-136.249 493.790 5.707 543.269 6.279 249.017 3.565 |
-136.407 493.417 5.752 543.942 5.986 249.790 3.745 |
-136.566 492.474 6.042 544.519 6.154 249.647 4.368 |
-136.723 493.034 6.204 543.985 6.244 251.576 4.092 |
-136.880 493.020 6.081 543.549 5.955 247.545 3.807 |
-137.038 492.230 5.912 544.265 5.914 246.325 3.743 |
-137.195 493.842 5.758 543.922 5.813 250.163 3.900 |
-137.353 494.698 5.797 544.599 6.151 249.871 3.708 |
-137.511 494.267 7.224 546.306 6.046 246.578 4.379 |
-137.669 493.722 6.970 544.693 6.482 251.015 7.303 |
-137.825 491.187 7.030 545.657 6.181 250.810 4.482 |
-137.982 492.791 6.229 545.786 6.142 248.988 5.188 |
-138.141 493.287 5.716 544.787 6.268 245.859 4.269 |
-138.299 492.942 6.262 545.357 6.033 248.608 4.577 |
-138.457 493.689 5.621 546.173 6.050 251.796 3.689 |
-138.615 493.356 5.707 545.461 6.077 249.177 4.183 |
-138.773 494.363 5.444 545.574 6.044 248.721 4.396 |
-138.931 494.033 5.805 546.175 6.288 250.357 3.722 |
-139.088 493.000 5.600 545.411 6.427 247.773 3.680 |
-139.246 493.310 5.451 544.704 5.939 249.417 3.918 |
-139.403 492.793 5.453 545.257 6.055 250.034 3.713 |
-139.561 492.667 5.732 545.632 6.324 249.570 3.698 |
-139.719 493.226 5.779 544.966 5.844 248.635 4.001 |
-139.876 491.942 6.047 545.979 5.835 245.986 3.398 |
-140.035 495.919 5.502 545.679 5.777 250.529 3.451 |
-140.193 494.929 5.522 545.206 6.153 249.855 3.592 |
-140.351 491.279 5.558 545.132 5.939 247.308 4.560 |
-140.509 493.462 5.626 546.121 6.062 250.133 3.836 |
-140.667 492.504 5.373 546.761 6.244 247.391 4.365 |
-140.824 494.475 5.777 545.107 6.530 250.063 4.962 |
-140.982 492.584 5.594 544.461 6.764 250.820 4.265 |
-141.140 492.825 5.382 546.024 6.826 248.658 4.617 |
-141.297 492.338 5.654 544.910 5.924 248.646 3.437 |
-141.455 492.083 5.636 546.609 5.988 248.436 3.923 |
-141.612 492.830 5.961 545.216 6.070 248.694 3.230 |
-141.770 490.778 5.527 545.482 6.012 247.806 3.320 |
-141.928 496.447 5.608 545.644 6.119 251.228 3.473 |
-142.086 493.004 5.874 544.846 6.170 248.622 4.050 |
-142.244 491.970 5.909 545.248 5.978 248.176 3.610 |
-142.403 492.189 5.678 546.292 5.860 249.021 3.899 |
-142.561 491.991 5.645 545.702 6.018 249.130 4.794 |
-142.719 491.969 5.456 545.457 5.887 251.251 3.615 |
-142.877 489.499 5.727 545.004 6.278 250.052 3.698 |
-143.035 491.725 5.522 544.910 6.234 246.500 3.488 |
-143.193 492.797 5.727 544.509 5.980 250.635 3.498 |
-143.351 492.388 5.592 546.185 6.329 248.926 3.389 |
-143.509 492.463 5.507 545.001 6.280 249.019 3.609 |
-143.667 491.804 5.770 544.620 6.301 249.400 3.813 |
-143.825 492.028 5.595 545.126 6.289 249.334 4.732 |
-143.983 491.480 5.500 544.291 6.116 248.463 3.680 |
-144.141 490.874 5.527 544.343 6.069 249.984 4.224 |
-144.298 492.888 5.659 544.363 5.892 248.469 3.781 |
-144.456 489.478 6.694 544.223 6.142 248.984 3.438 |
-144.614 491.394 6.027 544.222 5.972 250.819 3.633 |
-144.772 490.364 5.590 543.482 6.032 249.428 3.784 |
-144.930 491.803 5.594 543.774 5.917 249.804 4.323 |
-145.088 490.858 5.716 544.427 5.897 249.448 3.284 |
-145.246 490.818 5.828 544.784 5.990 248.244 3.732 |
-145.405 490.998 5.638 544.267 5.916 247.702 3.520 |
-145.563 489.550 5.567 543.062 5.876 250.227 4.116 |
-145.720 493.535 5.330 543.990 5.989 251.582 3.480 |
-145.879 489.575 5.400 544.229 6.041 247.465 3.613 |
-146.037 490.405 5.956 542.412 5.938 247.554 4.168 |
-146.194 490.604 5.966 544.024 5.861 249.355 4.358 |
-146.351 489.176 5.614 543.030 6.051 249.293 4.049 |
-146.509 490.621 5.499 543.010 6.334 250.022 3.739 |
-146.667 489.786 5.571 543.260 6.111 246.730 4.332 |
-146.825 490.087 5.648 542.192 6.333 250.607 4.815 |
-146.983 489.600 5.652 543.082 6.023 249.546 4.397 |
-147.140 491.666 6.630 541.400 6.286 248.525 4.766 |
-147.298 486.396 5.846 543.544 6.156 246.915 4.022 |
-147.456 493.154 6.128 542.355 5.844 248.219 4.578 |
-147.613 491.461 5.673 543.143 5.888 251.672 3.802 |
-147.771 490.824 5.698 542.331 5.938 249.636 3.464 |
-147.929 492.558 5.427 542.333 5.920 251.716 3.696 |
-148.087 490.815 5.663 542.003 6.210 247.037 3.519 |
-148.245 490.918 5.844 543.000 5.968 244.290 3.935 |
-148.402 491.579 5.782 541.480 5.960 250.032 3.978 |
-148.560 490.055 5.805 541.174 6.028 250.270 3.525 |
-148.717 491.140 7.197 540.861 6.223 247.802 3.607 |
-148.875 490.021 5.728 541.088 5.913 247.898 3.834 |
-149.033 492.980 6.312 541.350 5.950 250.069 4.114 |
-149.191 493.549 5.546 542.913 5.924 248.610 3.433 |
-149.348 490.675 6.703 541.039 6.762 250.866 3.939 |
-149.506 490.516 6.100 539.920 6.159 248.708 4.004 |
-149.663 491.745 6.228 539.409 5.976 247.027 3.817 |
-149.821 491.507 6.995 539.794 6.222 251.790 4.014 |
-149.979 494.035 6.414 541.328 5.879 248.927 3.455 |
-150.136 491.020 5.810 540.783 6.494 247.569 4.191 |
-150.294 495.970 6.158 539.917 6.026 246.085 4.152 |
-150.452 494.739 5.807 539.939 5.892 249.070 5.723 |
-150.610 490.637 5.911 539.669 6.044 247.940 5.127 |
-150.768 488.966 5.809 538.656 5.849 248.329 3.579 |
-150.927 496.779 6.867 539.386 6.281 251.773 4.184 |
-151.084 494.077 5.898 538.063 6.246 247.717 3.757 |
-151.242 493.380 6.640 539.820 5.904 247.197 3.951 |
-151.400 497.243 6.271 539.798 5.774 247.212 3.977 |
-151.557 498.442 6.128 539.088 6.282 252.002 5.031 |
-151.715 494.624 6.238 540.050 5.938 249.120 3.303 |
-151.873 495.526 6.000 539.000 6.343 249.571 3.773 |
-152.031 494.425 6.253 538.870 6.732 249.325 3.920 |
-152.189 494.314 5.761 537.638 6.283 249.403 3.746 |
-152.347 493.873 6.551 539.236 5.955 246.954 3.678 |
-152.505 494.568 6.018 538.132 6.034 249.779 5.187 |
-152.664 497.035 5.993 538.931 6.145 249.587 5.587 |
-152.822 492.190 6.321 539.079 6.525 246.505 4.009 |
-152.979 495.271 8.050 538.980 7.148 250.785 4.555 |
-153.137 495.982 7.900 538.619 6.367 247.657 3.893 |
-153.293 492.609 6.909 539.546 6.068 246.836 5.832 |
-153.451 493.826 5.808 537.555 6.213 249.408 5.239 |
-153.609 493.908 5.919 538.735 6.496 251.104 6.354 |
-153.766 494.449 6.079 538.467 6.774 248.421 3.761 |
-153.924 493.894 6.881 540.304 6.787 246.784 7.252 |
-154.081 493.458 7.816 537.863 6.362 247.977 3.572 |
-154.239 492.774 6.610 537.898 6.345 249.059 4.859 |
-154.395 491.697 7.377 537.669 6.157 248.540 4.879 |
-154.552 492.647 7.878 537.846 6.332 247.465 4.284 |
-154.708 494.416 7.630 538.618 6.014 249.944 4.888 |
-154.866 493.054 7.311 538.036 8.037 247.899 6.665 |
-155.023 495.850 8.470 538.010 6.107 250.099 4.980 |
-155.180 496.578 8.466 538.640 7.130 249.291 6.280 |
-155.337 495.315 6.052 539.466 6.504 250.512 4.621 |
-155.494 497.313 6.663 538.314 6.346 249.175 4.707 |
-155.652 495.993 9.083 537.903 6.562 248.971 9.501 |
-155.808 496.979 5.878 537.589 6.742 248.889 4.937 |
-155.966 496.039 7.133 538.035 5.906 250.388 4.052 |
-156.123 492.550 8.389 538.610 7.079 247.033 4.925 |
-156.280 493.815 6.827 537.316 6.284 248.550 6.077 |
-156.438 488.598 6.053 538.433 6.355 245.755 5.773 |
-156.596 490.416 5.868 537.644 6.132 249.087 3.233 |
-156.754 493.394 6.442 537.886 6.160 247.660 3.609 |
-156.912 493.164 6.712 537.458 7.006 247.176 4.099 |
-157.070 492.611 7.176 537.494 6.593 248.631 4.913 |
-157.227 488.636 5.807 538.324 6.805 246.406 4.362 |
-157.384 490.896 6.285 537.593 6.055 249.724 4.671 |
-157.542 489.789 6.221 537.986 6.694 248.447 3.803 |
-157.699 496.277 5.833 538.629 6.665 250.604 4.643 |
-157.856 496.462 6.808 536.826 5.813 249.376 5.005 |
-158.014 494.104 6.963 537.678 6.290 249.893 6.335 |
-158.171 497.021 6.351 537.446 6.945 248.838 6.830 |
-158.328 497.310 6.629 537.764 6.701 251.018 4.254 |
-158.485 492.143 7.634 536.647 6.444 248.320 4.687 |
-158.643 494.151 6.691 538.676 6.040 250.273 3.568 |
-158.801 492.971 6.169 537.576 6.250 247.242 6.054 |
-158.959 495.469 6.524 537.435 6.468 249.332 3.770 |
-159.116 496.014 7.912 538.954 7.277 246.283 3.800 |
-159.273 497.170 6.490 537.389 6.636 248.542 4.610 |
-159.431 489.461 7.115 538.223 6.583 248.225 3.477 |
-159.589 491.924 9.918 538.072 6.342 248.362 5.877 |
-159.746 492.019 5.645 537.900 6.412 247.463 4.893 |
-159.903 494.790 6.273 538.329 6.087 249.564 4.829 |
-160.061 493.947 6.368 537.973 6.122 248.345 4.681 |
-160.219 495.709 5.429 538.039 5.798 247.833 3.938 |
-160.377 497.217 6.918 538.810 6.121 249.358 4.080 |
-160.534 493.292 6.054 537.878 5.911 245.913 3.215 |
-160.692 495.192 5.718 538.258 5.880 249.319 4.862 |
-160.850 493.861 6.683 537.872 6.449 247.843 4.166 |
-161.007 491.148 5.806 538.648 6.086 247.218 3.783 |
-161.165 496.091 6.175 537.246 6.074 248.102 4.974 |
-161.324 492.430 7.326 538.542 6.115 246.041 4.022 |
-161.481 497.264 6.242 537.945 6.670 249.830 4.434 |
-161.639 491.182 5.918 537.949 6.227 246.018 4.251 |
-161.798 493.751 5.589 536.189 6.044 251.180 4.406 |
-161.955 491.587 5.692 537.531 6.086 246.171 4.387 |
-162.113 494.355 6.258 536.275 6.109 250.991 3.689 |
-162.272 492.683 5.773 538.872 6.483 248.099 4.563 |
-162.430 494.006 5.982 538.418 5.980 250.381 4.703 |
-162.587 493.650 7.688 538.894 6.108 248.493 6.568 |
-162.745 493.306 5.774 536.878 6.688 247.334 3.728 |
-162.902 490.383 5.829 537.608 6.142 248.363 4.408 |
-163.060 493.413 6.249 536.316 5.959 250.463 4.842 |
-163.217 491.244 5.877 537.303 6.086 248.854 4.474 |
-163.375 492.672 6.037 537.243 5.911 245.368 5.607 |
-163.533 492.086 5.675 536.742 6.388 245.333 6.695 |
-163.691 491.700 5.757 537.557 6.269 244.153 4.576 |
-163.849 491.077 6.132 537.065 5.920 250.021 3.555 |
-164.007 492.410 7.403 537.530 6.230 249.360 9.223 |
-164.164 491.354 8.352 536.155 5.797 249.523 4.940 |
-164.322 490.803 6.420 537.901 6.758 243.955 4.437 |
-164.479 491.558 6.072 537.939 6.566 247.539 6.182 |
-164.637 491.465 5.604 537.079 6.577 249.985 5.317 |
-164.795 490.604 6.778 537.020 5.949 249.559 4.781 |
-164.953 492.916 6.694 537.700 6.378 247.535 4.615 |
-165.111 488.909 6.401 537.117 5.853 247.405 4.437 |
-165.269 494.599 6.184 537.501 6.297 250.884 4.456 |
-165.427 490.996 6.090 537.205 6.096 248.118 3.433 |
-165.586 491.289 5.676 536.162 5.891 250.571 4.632 |
-165.743 490.982 6.312 538.261 7.278 241.815 5.974 |
-165.901 490.579 5.908 538.572 5.968 244.208 3.537 |
-166.059 494.545 6.125 538.075 5.871 250.992 4.533 |
-166.217 497.075 5.837 539.120 5.960 248.939 4.280 |
-166.375 494.580 5.613 537.721 5.793 247.999 3.587 |
-166.534 494.265 6.737 538.477 6.290 248.160 4.976 |
-166.691 491.372 6.697 538.984 6.438 248.111 4.172 |
-166.849 494.093 5.358 538.279 5.948 246.631 3.682 |
-167.006 492.980 5.710 538.362 6.075 245.956 4.861 |
-167.164 493.009 6.243 536.543 5.931 248.909 3.242 |
-167.322 494.840 8.695 539.425 5.914 248.879 5.305 |
-167.480 490.748 6.592 538.004 6.560 244.338 3.535 |
-167.638 494.317 6.864 538.610 5.879 249.363 3.997 |
-167.795 490.693 5.548 538.686 6.423 246.713 3.629 |
-167.953 494.906 7.877 538.606 5.694 250.907 6.236 |
-168.111 496.569 7.064 539.276 6.288 245.749 6.044 |
-168.268 493.735 5.934 538.832 6.040 247.267 4.928 |
-168.426 494.177 8.957 539.118 5.802 249.872 3.540 |
-168.583 492.181 6.819 540.421 6.335 248.338 4.997 |
-168.741 492.001 6.363 538.784 6.086 248.633 4.029 |
-168.898 493.480 6.173 541.387 5.848 247.296 5.881 |
-169.056 494.074 6.357 540.583 6.103 248.152 4.772 |
-169.214 493.940 6.239 542.065 5.950 246.501 5.420 |
-169.372 494.859 6.732 541.030 5.934 249.785 3.856 |
-169.529 496.228 7.245 541.300 6.481 251.407 3.295 |
-169.687 492.432 6.881 542.123 6.205 246.444 4.067 |
-169.844 498.874 7.094 542.791 5.832 252.514 4.741 |
-170.002 497.628 6.658 542.158 6.445 247.015 5.385 |
-170.160 498.086 6.138 542.421 6.637 246.250 5.890 |
-170.318 497.330 6.180 543.544 7.094 246.242 7.260 |
-170.475 496.313 5.746 542.965 6.142 252.022 3.953 |
-170.633 493.453 5.718 543.819 6.877 249.170 5.917 |
-170.790 498.554 6.453 543.858 6.126 249.091 4.954 |
-170.947 495.935 5.862 543.628 6.126 245.240 3.525 |
-171.105 495.119 5.950 543.156 5.839 246.792 4.770 |
-171.262 495.381 6.235 543.521 6.224 245.527 4.737 |
-171.420 492.923 5.720 542.695 6.001 252.325 4.404 |
-171.577 495.619 6.933 545.517 7.103 247.963 7.826 |
-171.734 490.986 6.535 545.595 6.743 247.309 8.590 |
-171.891 491.259 7.171 543.846 6.478 249.353 6.398 |
-172.048 492.382 6.491 544.668 6.670 250.713 4.311 |
-172.206 491.783 5.764 544.246 7.354 249.797 5.260 |
-172.364 489.777 6.310 544.722 6.776 247.987 4.663 |
-172.522 494.767 6.001 544.547 6.193 250.169 6.378 |
-172.680 499.047 6.740 544.405 6.234 250.611 5.902 |
-172.837 492.880 8.320 543.924 8.045 247.686 3.748 |
-172.994 491.598 6.515 544.379 7.054 248.766 6.338 |
-173.152 498.526 10.276 543.963 7.269 254.877 8.417 |
-173.309 487.215 6.562 545.069 6.272 241.218 4.206 |
-173.466 493.192 7.216 544.680 6.143 246.402 6.535 |
-173.623 493.201 7.394 543.486 6.501 251.624 4.327 |
-173.780 494.272 6.220 541.884 5.965 255.236 3.948 |
-173.938 488.642 7.034 545.448 6.540 240.232 8.627 |
-174.095 493.736 6.283 544.374 6.168 246.272 5.307 |
-174.253 492.327 8.163 543.323 6.292 250.182 7.901 |
-174.409 484.493 6.198 543.523 6.446 246.701 4.101 |
-174.567 490.914 7.089 545.085 6.565 246.177 4.653 |
-174.724 491.699 9.252 544.510 5.930 245.201 5.935 |
-174.881 489.467 6.528 543.115 6.509 250.902 5.509 |
-175.039 492.874 7.089 545.401 6.127 242.729 4.739 |
-175.197 495.718 7.753 543.254 5.958 252.717 4.791 |
-175.355 492.037 7.078 543.812 7.156 249.297 8.022 |
-175.511 496.020 6.087 545.958 6.133 245.553 5.472 |
-175.670 494.370 6.081 544.149 6.221 250.825 4.375 |
-175.828 494.733 5.755 544.051 6.121 250.608 5.394 |
-175.985 498.087 6.113 543.210 6.349 248.596 6.937 |
-176.143 499.670 6.645 545.592 6.785 249.165 4.688 |
-176.301 496.156 7.561 545.426 6.391 247.931 5.201 |
-176.458 496.001 6.178 543.594 6.917 251.409 3.991 |
-176.616 495.030 6.476 543.326 7.742 253.454 5.031 |
-176.774 496.230 7.951 542.403 6.470 252.794 4.372 |
-176.930 492.762 7.157 543.354 6.471 246.597 8.066 |
-177.086 496.627 7.383 543.223 6.844 249.056 8.190 |
-177.243 493.056 6.794 543.602 6.532 252.360 5.529 |
-177.401 491.790 7.262 542.256 7.318 247.633 7.474 |
-177.558 494.847 21.067 544.832 11.366 244.666 32.331 |
-177.713 490.078 11.714 544.178 10.426 247.796 17.695 |
-177.870 491.750 7.119 543.601 8.062 250.927 6.298 |
-178.027 493.147 6.871 543.516 7.936 255.979 6.075 |
-178.185 492.731 6.720 540.785 6.787 248.419 7.399 |
-178.341 494.527 11.681 544.508 6.475 241.074 7.043 |
-178.499 494.495 6.735 544.545 8.067 251.260 8.142 |
-178.655 489.924 8.039 542.725 7.160 253.622 6.756 |
-178.812 498.489 7.393 543.647 6.512 254.506 7.168 |
-178.969 488.534 6.369 543.846 7.960 245.265 8.181 |
-179.126 493.985 6.956 545.188 8.453 241.902 8.734 |
-179.283 497.139 6.216 544.221 6.327 253.599 8.300 |
-179.440 490.161 7.012 542.082 6.310 249.766 7.593 |
-179.597 495.661 6.732 544.390 8.353 251.217 10.529 |
-179.754 490.506 7.679 544.403 7.415 243.152 7.034 |
-179.911 493.965 7.032 542.174 6.831 257.331 4.393 |
-180.069 493.339 6.502 541.961 7.245 253.333 4.648 |
-180.226 505.123 10.631 541.969 8.280 250.813 20.658 |
-180.382 479.661 39.015 546.219 18.937 216.698 30.568 |
-180.535 493.176 15.960 542.112 8.874 250.117 15.408 |
-180.692 497.211 10.428 541.671 7.636 264.981 10.518 |
-180.850 499.142 9.365 540.426 7.085 258.179 6.787 |
-181.007 496.731 11.128 546.934 8.798 239.231 10.907 |
-181.163 496.377 7.075 545.009 6.708 241.512 7.395 |
-181.320 502.403 6.248 540.090 6.332 258.495 4.299 |
-181.478 496.904 6.723 542.890 7.664 251.434 3.365 |
-181.636 499.739 6.666 543.649 6.813 246.144 4.234 |
-181.794 501.107 6.677 544.346 6.051 244.191 4.717 |
-181.951 498.381 6.422 543.313 5.975 247.071 5.137 |
-182.108 502.453 6.145 542.643 6.038 247.770 3.360 |
-182.266 502.194 7.003 543.406 6.032 251.167 6.210 |
-182.423 499.291 5.976 544.454 5.896 252.691 4.021 |
-182.581 495.072 5.870 545.014 6.375 243.666 5.896 |
-182.738 496.590 6.275 542.370 6.651 241.786 3.868 |
-182.896 498.765 6.571 544.503 6.080 252.827 5.528 |
-183.055 500.347 7.637 543.865 6.703 251.938 6.441 |
-183.212 501.513 6.537 543.938 6.160 242.149 4.860 |
-183.370 495.845 6.626 544.679 6.524 244.041 5.021 |
-183.529 496.288 7.343 542.476 6.611 265.790 5.105 |
-183.688 500.082 6.168 542.414 5.978 248.117 9.692 |
-183.845 493.050 7.160 543.384 6.795 232.011 9.288 |
-184.002 493.130 7.947 542.973 6.314 245.710 7.151 |
-184.160 500.931 6.589 540.289 6.502 267.317 5.418 |
-184.317 494.059 6.822 544.423 6.344 244.063 8.711 |
-184.474 494.790 7.093 545.584 6.398 235.300 8.374 |
-184.632 493.447 6.520 543.165 6.388 246.733 7.755 |
-184.789 493.974 6.635 542.381 6.360 252.567 5.581 |
-184.947 498.379 7.967 543.213 6.288 246.195 7.917 |
-185.103 498.003 6.090 542.962 6.722 245.182 4.982 |
-185.260 497.190 7.095 543.869 6.456 248.131 5.836 |
-185.418 496.491 9.444 542.058 6.357 249.351 7.404 |
-185.575 493.354 6.389 542.630 6.552 248.903 5.475 |
-185.732 496.133 6.352 543.036 6.952 249.739 4.593 |
-185.890 492.671 7.518 543.720 7.344 244.567 4.463 |
-186.047 494.356 7.158 542.307 7.649 248.965 6.419 |
-186.204 495.223 7.474 543.573 7.509 250.459 4.143 |
-186.361 493.222 8.153 542.055 6.566 249.744 7.432 |
-186.517 495.442 6.988 544.870 7.412 248.297 3.987 |
-186.674 498.994 5.851 542.048 6.005 254.223 5.589 |
-186.832 492.509 7.607 543.180 6.997 245.822 7.878 |
-186.988 497.265 7.736 543.991 7.512 238.968 5.712 |
-187.146 495.292 5.834 541.859 6.111 257.079 4.423 |
-187.305 494.132 6.900 541.738 6.378 261.300 4.607 |
-187.463 492.331 7.800 541.877 7.015 242.843 4.775 |
-187.621 491.633 8.320 543.698 7.689 238.758 9.610 |
-187.777 492.226 6.915 540.637 8.670 251.177 4.986 |
-187.935 494.332 6.722 542.006 6.035 251.491 7.115 |
-188.092 490.313 8.551 541.270 6.733 250.214 5.844 |
-188.249 488.073 6.308 540.242 7.111 251.742 4.133 |
-188.406 492.860 6.100 542.552 6.271 256.467 7.899 |
-188.564 491.878 7.253 542.445 6.610 247.424 6.511 |
-188.721 482.598 7.513 541.674 5.930 245.824 5.158 |
-188.880 491.146 6.226 542.756 5.869 257.768 3.906 |
-189.038 489.961 6.492 540.677 5.926 256.187 5.877 |
-189.197 489.409 6.437 545.276 6.247 247.061 6.339 |
-189.355 493.534 5.713 543.312 6.596 248.550 6.182 |
-189.513 493.265 8.925 540.643 7.064 254.745 6.719 |
-189.669 495.192 8.564 542.986 6.695 251.277 6.321 |
-189.827 495.511 8.235 542.939 6.031 247.772 6.845 |
-189.984 498.625 8.858 541.149 7.170 250.187 7.987 |
-190.140 492.586 7.924 543.981 6.498 246.751 7.585 |
-190.296 495.935 8.205 543.759 6.339 249.127 5.837 |
-190.454 494.779 8.351 541.747 6.574 250.911 4.539 |
-190.611 491.437 8.016 540.847 6.868 250.839 5.578 |
-190.768 490.814 9.904 543.778 6.476 245.998 4.888 |
-190.925 489.758 7.889 542.347 6.876 247.300 8.158 |
-191.081 487.947 9.197 541.933 6.447 249.263 9.160 |
-191.238 489.139 9.663 542.249 6.377 249.362 8.656 |
-191.395 486.171 8.878 542.212 6.378 247.353 9.474 |
-191.551 480.361 8.847 543.572 7.490 244.523 9.581 |
-191.707 480.113 6.621 541.195 6.756 245.805 11.091 |
-191.865 482.201 7.341 539.672 7.035 252.808 9.644 |
-192.022 480.902 5.648 543.686 5.992 247.428 9.869 |
-192.180 484.319 7.924 543.006 9.223 241.824 9.653 |
-192.336 487.503 8.793 542.940 7.227 246.078 6.532 |
-192.493 486.695 6.324 543.579 7.130 249.570 10.795 |
-192.650 490.036 8.987 542.185 6.541 247.995 11.627 |
-192.807 490.170 7.524 541.651 6.188 247.399 7.838 |
-192.964 492.631 8.908 541.206 6.607 246.804 12.223 |
-193.120 491.716 9.284 541.582 7.271 246.108 9.801 |
-193.276 492.197 8.061 543.285 7.105 248.361 8.340 |
-193.432 496.972 8.038 542.962 6.479 254.043 8.885 |
-193.588 498.859 9.505 542.079 6.821 251.320 4.615 |
-193.745 497.768 6.785 542.630 6.698 249.143 4.871 |
-193.903 493.747 6.129 542.426 6.662 249.031 5.840 |
-194.061 493.677 6.012 542.914 6.847 249.640 5.275 |
-194.219 488.556 6.570 540.439 5.853 248.306 4.089 |
-194.376 492.805 5.737 541.624 5.941 245.243 5.800 |
-194.535 494.008 6.435 542.056 6.392 247.952 6.310 |
-194.693 495.130 5.603 541.770 6.127 253.789 4.905 |
-194.850 494.931 6.344 541.087 6.327 252.687 4.231 |
-195.007 493.549 6.336 540.690 6.175 248.116 5.146 |
-195.165 494.615 6.082 541.446 6.065 246.251 4.201 |
-195.322 494.366 5.650 541.704 6.250 248.542 4.806 |
-195.480 496.533 7.169 541.877 6.593 254.225 6.573 |
-195.638 497.695 7.517 539.938 5.986 252.992 6.029 |
-195.796 499.107 6.871 541.319 7.129 247.319 5.105 |
-195.953 501.261 6.091 542.853 7.049 252.203 5.135 |
-196.111 499.392 6.000 542.248 6.469 253.612 6.721 |
-196.268 497.964 6.672 542.332 6.312 248.046 5.727 |
-196.426 495.859 6.711 539.713 7.131 246.590 5.470 |
-196.584 488.588 6.034 539.147 6.371 246.415 3.816 |
-196.743 489.575 7.068 539.681 7.560 247.394 9.160 |
-196.900 494.135 6.844 540.006 6.270 251.443 4.908 |
-197.058 497.371 5.372 540.240 6.940 249.834 5.919 |
-197.216 498.563 6.273 539.512 5.695 249.758 5.835 |
-197.374 500.965 8.688 540.855 6.676 248.987 4.419 |
-197.531 495.399 5.929 539.268 6.789 245.209 8.553 |
-197.688 491.044 6.305 539.352 6.485 249.872 4.814 |
-197.846 496.370 6.049 538.493 6.371 250.968 4.520 |
-198.004 493.613 6.263 537.205 6.473 250.229 3.577 |
-198.163 490.946 5.737 539.812 6.119 242.542 3.574 |
-198.321 493.269 6.129 539.838 6.267 250.385 4.228 |
-198.479 489.842 5.650 538.318 5.849 252.283 3.541 |
-198.636 491.808 5.475 538.873 6.846 243.012 5.313 |
-198.794 488.668 6.671 536.648 6.530 245.860 5.599 |
-198.952 489.876 6.637 537.786 6.026 253.318 4.060 |
-199.110 489.268 6.067 537.987 5.895 253.513 3.956 |
-199.267 487.152 6.226 539.879 6.312 244.015 4.170 |
-199.425 488.061 6.411 539.248 6.250 246.690 3.826 |
-199.584 489.490 5.868 537.122 6.233 253.386 4.427 |
-199.741 485.674 6.455 537.731 6.003 249.843 3.830 |
-199.899 486.686 6.866 539.677 5.957 246.508 5.380 |
-200.056 484.336 6.227 539.946 5.859 247.915 5.190 |
-200.215 484.883 7.012 537.729 6.121 251.469 4.761 |
-200.372 490.118 6.108 538.087 6.120 248.384 3.796 |
-200.530 489.391 5.977 539.310 6.188 247.973 3.720 |
-200.689 485.803 6.090 538.453 6.566 253.409 3.869 |
-200.847 484.748 5.871 538.314 6.246 254.884 3.424 |
-201.005 484.327 6.450 538.163 6.111 247.008 3.459 |
-201.163 488.283 5.365 539.071 5.897 243.770 4.579 |
-201.321 492.072 6.054 539.070 6.263 251.987 3.465 |
-201.480 489.280 5.553 538.700 6.279 253.469 4.904 |
-201.638 490.262 5.935 539.007 5.949 250.794 5.276 |
-201.796 491.212 6.854 537.370 6.331 247.577 6.149 |
-201.954 492.882 6.636 537.773 6.074 251.495 6.692 |
-202.112 493.398 6.604 538.607 6.986 250.584 5.054 |
-202.269 496.454 9.959 539.276 5.990 252.855 4.944 |
-202.426 493.004 11.098 538.292 8.095 250.828 6.575 |
-202.583 487.610 7.371 538.293 7.009 248.968 7.761 |
-202.740 482.176 6.331 538.633 6.381 245.789 4.970 |
-202.898 476.881 9.051 540.076 6.279 247.057 10.885 |
-203.055 476.538 9.872 539.390 7.138 250.200 4.587 |
-203.211 482.465 5.697 537.524 7.510 246.692 7.005 |
-203.369 490.474 7.498 538.745 6.309 247.826 5.754 |
-203.526 490.734 11.238 537.437 6.863 252.128 5.864 |
-203.685 494.617 8.869 538.154 8.121 255.221 7.965 |
-203.840 490.846 8.914 540.001 8.302 249.322 9.877 |
-203.997 490.298 8.092 538.600 6.619 244.113 7.403 |
-204.155 488.823 10.455 537.616 6.600 253.071 10.213 |
-204.312 486.478 8.913 537.886 6.968 255.840 4.739 |
-204.469 484.064 8.527 540.568 7.233 239.338 3.794 |
-204.626 483.860 7.076 536.435 6.255 249.163 3.837 |
-204.785 491.118 7.046 537.084 7.684 257.781 5.961 |
-204.943 482.831 13.553 538.690 12.669 234.877 24.318 |
-205.099 495.268 14.927 538.636 10.173 251.718 13.186 |
-205.256 494.162 11.197 537.876 11.718 261.157 8.614 |
-205.414 498.251 9.060 538.048 8.315 259.941 18.672 |
-205.570 481.152 10.967 536.980 10.176 236.979 9.681 |
-205.726 493.121 15.352 539.829 10.048 241.569 6.885 |
-205.882 481.561 7.638 537.868 6.516 250.075 8.928 |
-206.040 482.185 7.113 538.538 7.625 264.980 8.941 |
-206.197 481.051 9.001 537.035 6.602 253.079 4.691 |
-206.355 479.840 6.296 540.770 6.688 231.560 10.306 |
-206.512 490.578 13.012 539.017 7.145 250.655 7.688 |
-206.668 484.945 7.127 539.410 6.546 244.796 5.413 |
-206.825 485.659 8.682 539.104 6.465 243.087 6.729 |
-206.983 486.596 6.488 535.891 6.258 249.300 4.833 |
-207.140 486.145 6.952 539.049 6.093 245.083 4.747 |
-207.298 486.581 5.792 537.930 5.968 245.220 5.442 |
-207.456 484.515 6.550 539.049 5.787 246.222 3.689 |
-207.614 485.445 6.920 541.350 6.676 246.852 5.964 |
-207.771 486.934 5.948 539.873 6.060 249.168 3.752 |
-207.929 485.089 6.425 539.158 6.202 246.231 5.180 |
-208.087 486.030 5.565 539.621 7.246 249.052 4.864 |
-208.245 490.200 6.618 539.826 6.216 254.570 6.446 |
-208.402 487.962 5.666 541.248 6.737 249.305 5.267 |
-208.561 488.219 6.072 538.912 6.684 244.693 9.614 |
-208.718 487.522 6.977 538.099 6.479 250.976 11.425 |
-208.876 485.975 6.845 540.221 7.306 242.959 5.731 |
-209.034 481.819 5.801 538.612 5.955 245.679 3.468 |
-209.193 483.438 5.575 539.066 5.962 248.566 5.737 |
-209.351 480.674 6.340 538.150 6.185 256.105 3.804 |
-209.510 481.386 5.666 538.881 6.062 248.881 4.555 |
-209.668 482.313 6.648 538.968 6.016 248.238 4.688 |
-209.826 476.613 8.083 540.399 5.861 247.062 4.872 |
-209.983 481.916 6.120 539.554 5.972 255.320 3.923 |
-210.142 482.189 6.024 537.245 6.056 252.263 6.693 |
-210.300 480.711 5.826 538.682 6.537 249.082 5.724 |
-210.458 483.817 5.968 539.526 6.198 253.090 3.127 |
-210.617 480.858 6.475 540.205 5.939 246.400 4.789 |
-210.775 483.268 6.683 538.622 5.949 246.794 3.833 |
-210.932 486.612 5.970 539.186 5.816 255.247 3.666 |
-211.090 483.926 7.089 538.691 6.164 254.522 4.521 |
-211.248 486.459 7.441 540.717 6.043 250.155 5.545 |
-211.406 484.554 6.423 541.287 6.190 244.441 4.612 |
-211.564 477.295 6.513 540.582 6.161 243.604 5.363 |
-211.722 485.213 6.582 537.555 5.918 254.986 4.525 |
-211.880 485.862 5.478 538.055 5.987 256.709 3.670 |
-212.038 481.138 6.203 540.250 6.091 250.657 4.715 |
-212.195 477.661 6.589 540.232 5.931 244.436 4.165 |
-212.353 483.946 5.347 539.882 6.238 252.994 4.741 |
-212.511 483.009 5.621 538.248 5.997 250.229 3.587 |
-212.669 485.380 6.028 539.122 6.066 256.662 3.830 |
-212.827 486.243 6.351 541.741 5.918 247.526 4.658 |
-212.985 481.462 7.000 541.817 5.781 241.785 4.324 |
-213.142 481.804 6.360 540.178 6.511 250.737 4.600 |
-213.301 487.688 7.047 538.081 5.914 259.007 3.994 |
-213.459 476.766 6.200 539.120 6.398 246.880 4.284 |
-213.616 481.357 6.688 542.201 6.029 243.278 4.109 |
-213.773 486.283 5.513 541.682 6.578 253.732 3.965 |
-213.931 478.762 6.029 539.696 6.101 251.937 4.422 |
-214.089 485.527 6.162 539.287 6.392 251.469 7.436 |
-214.247 481.545 6.239 541.282 6.745 239.544 5.585 |
-214.404 481.395 8.121 542.742 6.272 252.815 3.829 |
-214.562 485.494 7.282 540.137 7.550 258.698 6.024 |
-214.721 477.155 12.313 539.821 10.079 246.287 11.347 |
-214.877 485.371 8.401 541.808 9.498 248.112 12.827 |
-215.033 480.373 6.539 539.548 7.188 253.761 5.576 |
-215.191 483.313 6.143 538.605 8.901 258.977 8.746 |
-215.349 472.653 7.559 539.126 8.079 238.539 6.869 |
-215.505 485.006 6.807 538.231 7.045 254.755 4.166 |
-215.663 483.440 8.572 540.092 7.331 254.457 8.528 |
-215.820 488.234 11.322 542.811 10.258 245.094 11.205 |
-215.977 481.132 11.927 541.448 7.911 246.820 7.767 |
-216.134 485.381 8.758 541.394 7.979 252.278 8.773 |
-216.289 483.303 7.150 537.684 7.246 251.042 4.702 |
-216.448 481.923 7.219 540.606 6.467 247.060 5.360 |
-216.606 484.369 6.158 541.256 7.107 246.700 6.206 |
-216.763 482.213 5.395 541.652 6.130 246.877 4.148 |
-216.921 486.012 6.050 539.966 6.493 254.368 3.834 |
-217.080 484.230 6.347 538.409 6.328 253.973 4.153 |
-217.238 483.532 6.889 540.644 6.797 244.619 4.133 |
-217.395 485.615 5.281 540.066 6.118 246.186 3.966 |
-217.553 486.486 6.034 540.540 6.200 253.681 5.419 |
-217.712 488.324 5.823 539.265 6.066 255.466 4.613 |
-217.870 489.853 6.332 539.772 5.716 251.294 4.225 |
-218.027 485.838 5.629 542.837 6.099 240.912 3.856 |
-218.185 488.718 6.155 541.468 6.015 245.229 3.796 |
-218.343 486.487 6.056 539.694 6.292 253.182 3.915 |
-218.501 493.864 5.995 539.207 6.086 248.931 5.054 |
-218.660 492.788 7.131 540.522 6.762 244.949 6.369 |
-218.817 494.927 6.248 539.965 6.668 247.149 7.769 |
-218.975 493.929 7.356 539.129 8.053 257.771 5.407 |
-219.132 486.629 11.704 541.571 8.206 241.017 20.138 |
-219.288 496.626 10.057 541.235 7.573 241.810 6.768 |
-219.445 496.986 7.205 540.292 6.935 253.108 8.446 |
-219.602 496.179 7.228 538.182 6.997 253.391 5.729 |
-219.759 489.951 6.091 542.931 5.960 234.223 5.782 |
-219.917 490.839 5.657 540.629 6.360 244.242 6.502 |
-220.075 493.038 6.996 539.486 6.517 259.872 4.846 |
-220.232 500.710 10.276 541.114 6.588 242.978 11.178 |
-220.389 489.717 20.178 541.951 11.424 236.149 24.173 |
-220.546 502.407 11.679 539.199 8.655 262.001 8.460 |
-220.703 491.014 7.659 539.362 6.659 258.440 5.290 |
-220.861 496.310 7.651 539.963 8.152 239.654 9.327 |
-221.017 494.063 7.229 540.329 7.031 236.606 9.488 |
-221.173 495.760 6.646 537.823 7.758 257.876 8.347 |
-221.330 495.267 6.722 541.078 6.949 251.628 4.093 |
-221.487 495.662 5.971 540.570 6.698 244.816 5.906 |
-221.644 491.126 8.154 540.865 6.503 240.868 5.846 |
-221.801 496.651 6.416 540.698 6.220 249.378 5.705 |
-221.959 490.136 6.586 539.177 6.317 246.013 4.817 |
-222.117 486.571 5.814 540.701 6.015 243.200 5.022 |
-222.275 496.925 6.584 540.717 6.311 251.282 5.146 |
-222.433 497.449 9.009 540.967 6.518 252.622 4.110 |
-222.590 488.024 6.628 540.919 6.244 243.636 5.902 |
-222.748 490.930 5.674 540.509 5.925 248.626 4.073 |
-222.906 490.909 5.849 540.715 6.307 250.916 4.756 |
-223.064 489.259 5.678 539.717 6.106 250.199 3.459 |
-223.222 487.032 5.792 538.947 6.077 249.152 4.229 |
-223.381 490.500 6.507 539.979 5.829 248.191 4.335 |
-223.538 489.535 7.587 541.519 6.043 249.361 4.386 |
-223.696 487.255 6.290 540.915 5.873 251.173 4.267 |
-223.854 492.302 6.075 540.329 5.792 251.221 3.534 |
-224.011 489.263 5.781 539.983 6.381 246.822 3.553 |
-224.170 491.742 6.158 540.779 6.080 247.928 4.516 |
-224.328 489.527 6.165 540.937 6.246 250.959 3.759 |
-224.487 490.665 6.376 540.829 6.544 251.029 4.133 |
-224.645 494.376 6.861 541.018 6.291 246.530 3.649 |
-224.802 491.043 5.790 541.540 6.010 245.905 3.516 |
-224.960 496.230 5.345 537.655 6.083 254.579 3.439 |
-225.118 493.942 5.379 540.946 6.202 250.415 3.697 |
-225.276 493.589 7.659 542.119 6.284 246.534 3.893 |
-225.433 497.195 7.174 541.141 6.030 249.615 4.470 |
-225.591 495.652 7.634 541.651 6.304 249.026 5.299 |
-225.749 496.746 6.394 539.336 6.037 253.610 3.447 |
-225.907 489.407 6.006 539.383 6.531 247.036 3.836 |
-226.066 489.264 5.699 542.203 6.022 246.570 4.661 |
-226.223 488.332 5.690 540.742 6.095 247.155 3.254 |
-226.381 495.243 6.420 540.477 6.102 246.961 5.754 |
-226.539 497.252 5.978 539.184 6.238 251.819 4.121 |
-226.697 500.332 7.771 541.091 6.806 255.618 5.088 |
-226.854 496.613 5.837 541.510 6.507 247.306 6.897 |
-227.012 497.956 6.032 541.085 6.478 245.573 4.661 |
-227.170 497.849 6.564 541.670 5.952 249.545 3.369 |
-227.328 493.208 6.163 539.266 5.962 249.535 5.790 |
-227.486 491.772 6.307 541.072 6.357 242.565 7.243 |
-227.643 494.667 5.965 539.520 6.078 248.365 3.319 |
-227.801 495.106 5.602 541.845 6.164 250.283 4.840 |
-227.959 495.901 6.006 539.978 6.125 248.852 3.740 |
-228.117 495.819 5.726 539.929 5.909 246.628 3.551 |
-228.275 495.648 5.883 540.909 6.197 251.276 4.312 |
-228.433 499.196 5.570 539.669 6.249 254.512 3.058 |
-228.591 495.992 7.110 541.986 7.931 238.095 6.324 |
-228.748 495.899 5.497 539.839 5.993 241.980 4.325 |
-228.907 498.139 5.827 538.128 6.743 264.749 5.009 |
-229.065 490.791 7.294 538.271 6.690 248.827 7.318 |
-229.221 492.737 6.787 542.572 6.502 236.668 7.229 |
-229.378 496.307 7.312 541.365 7.056 241.436 4.802 |
-229.536 503.423 6.581 540.063 7.026 262.594 5.473 |
-229.694 501.624 6.571 538.850 6.773 258.436 5.139 |
-229.853 493.436 7.324 541.408 6.452 239.034 6.504 |
-230.010 488.804 8.455 540.484 6.061 243.190 4.694 |
-230.168 486.578 7.279 540.004 7.737 254.621 5.923 |
-230.326 491.705 7.016 538.210 6.059 248.966 10.083 |
-230.483 495.017 6.894 540.012 6.660 246.769 5.244 |
-230.641 498.420 6.146 541.810 5.865 249.107 3.964 |
-230.798 496.354 5.900 540.978 6.440 249.281 4.708 |
-230.956 501.023 7.940 539.869 6.773 251.762 5.895 |
-231.114 501.540 6.769 539.308 7.303 256.527 6.586 |
-231.271 497.255 8.803 540.553 6.805 247.555 6.809 |
-231.428 496.012 11.499 540.915 7.144 245.145 14.154 |
-231.585 491.790 9.240 541.799 6.589 246.381 8.199 |
-231.742 489.297 6.703 539.828 5.966 252.613 4.538 |
-231.899 493.373 5.884 539.388 6.319 250.696 5.299 |
-232.057 497.773 5.613 541.333 6.319 247.146 3.887 |
-232.215 495.727 6.853 540.373 5.998 249.031 3.546 |
-232.373 496.677 5.825 540.673 6.279 251.480 3.491 |
-232.531 493.366 6.555 539.896 6.209 249.114 5.655 |
-232.689 489.433 6.160 538.319 6.206 246.601 3.672 |
-232.847 494.964 6.357 538.853 6.130 243.576 3.671 |
-233.005 496.269 6.011 540.028 6.290 250.335 4.739 |
-233.163 497.092 6.221 540.720 7.159 256.133 4.584 |
-233.321 496.930 6.121 538.817 6.681 245.881 5.172 |
-233.479 493.329 6.084 541.538 6.238 242.038 8.580 |
-233.637 490.433 5.661 539.715 6.528 249.630 4.231 |
-233.795 491.624 8.374 539.237 5.975 253.346 4.845 |
-233.952 491.686 5.943 542.012 6.383 248.733 4.935 |
-234.110 497.316 6.276 540.350 6.937 245.407 6.952 |
-234.267 498.083 6.962 541.293 6.525 245.214 4.375 |
-234.425 494.950 7.409 539.023 6.520 252.572 5.924 |
-234.582 490.139 5.647 540.140 5.970 249.845 4.310 |
-234.739 491.941 5.902 541.351 6.213 242.748 3.528 |
-234.897 492.169 6.506 540.903 6.371 244.787 4.950 |
-235.055 498.111 5.820 540.189 6.157 250.047 4.095 |
-235.212 496.241 6.294 538.201 6.095 253.640 3.537 |
-235.369 493.282 5.873 541.472 5.807 250.266 4.013 |
-235.527 493.582 6.148 542.734 6.090 248.372 5.007 |
-235.685 490.775 5.976 540.777 5.940 246.663 3.959 |
-235.842 493.997 6.481 538.737 6.138 247.666 3.622 |
-236.000 497.120 6.295 540.027 5.862 250.336 4.041 |
-236.158 495.541 5.592 540.030 6.608 252.273 4.340 |
-236.315 492.815 5.742 540.760 5.969 248.482 3.823 |
-236.472 495.808 5.928 540.697 6.748 244.154 4.513 |
-236.630 494.658 6.030 540.067 5.890 245.971 4.234 |
-236.789 493.466 6.526 538.670 6.237 253.569 3.553 |
-236.946 490.234 6.122 540.006 6.812 251.375 4.986 |
-237.104 490.682 5.973 541.140 6.129 245.593 5.802 |
-237.261 496.296 6.042 541.771 5.823 246.435 3.692 |
-237.419 498.692 5.521 540.037 6.275 249.024 4.431 |
-237.578 494.607 5.815 540.270 6.306 251.380 4.625 |
-237.736 495.756 6.505 540.632 6.010 254.033 4.585 |
-237.893 490.947 5.816 542.036 5.998 248.030 4.903 |
-238.051 489.539 6.065 542.310 5.946 242.050 4.232 |
-238.209 499.095 5.838 539.993 5.920 248.620 3.399 |
-238.367 496.550 6.365 540.380 6.105 251.956 4.776 |
-238.525 494.465 7.098 541.493 6.137 249.109 3.502 |
-238.683 489.894 5.937 539.925 6.020 247.641 3.428 |
-238.841 491.989 6.406 541.669 6.229 247.296 3.736 |
-239.000 495.869 5.410 540.436 6.157 249.302 4.204 |
-239.158 496.638 5.407 540.044 5.946 252.503 4.548 |
-239.316 497.396 5.960 540.930 5.724 248.005 3.219 |
-239.475 494.164 6.110 541.349 6.115 244.890 3.442 |
-239.633 486.691 5.911 540.413 5.863 248.228 3.570 |
-239.791 495.007 6.274 538.234 6.164 255.802 4.183 |
-239.949 494.990 5.825 539.822 6.036 247.308 4.776 |
-240.107 496.879 5.613 541.308 5.899 245.893 3.967 |
-240.264 496.878 6.652 541.703 6.406 247.668 4.817 |
-240.422 494.218 6.344 540.777 6.116 247.026 5.549 |
-240.581 498.792 7.585 540.497 6.373 252.740 4.569 |
-240.739 496.677 7.808 539.635 6.371 257.207 5.028 |
-240.897 490.466 7.695 541.096 6.257 245.162 6.907 |
-241.054 485.694 6.259 541.191 6.995 239.651 3.579 |
-241.211 493.267 5.445 540.351 6.222 248.056 3.912 |
-241.369 496.982 6.087 538.753 5.950 255.030 6.013 |
-241.528 495.509 5.894 539.317 5.871 249.280 4.388 |
-241.686 498.505 6.348 541.233 5.885 248.622 6.080 |
-241.844 489.345 7.155 541.672 6.304 244.096 4.047 |
-242.001 490.043 5.937 539.156 6.036 249.720 3.555 |
-242.159 498.420 6.887 539.291 6.327 254.097 4.170 |
-242.316 495.774 5.811 538.663 5.991 247.350 3.951 |
-242.474 494.247 6.214 539.966 6.449 245.883 3.452 |
-242.632 496.472 6.643 540.779 5.982 252.398 5.784 |
-242.790 491.774 6.335 539.057 6.113 250.994 5.182 |
-242.948 495.547 5.670 540.290 6.168 247.729 3.257 |
-243.107 496.615 6.016 539.932 5.933 246.637 3.615 |
-243.264 494.036 6.042 539.919 6.234 247.326 3.329 |
-243.422 491.150 6.271 539.209 6.299 250.293 3.558 |
-243.581 494.441 5.469 540.102 6.076 251.952 3.598 |
-243.739 495.304 5.635 540.601 6.234 248.439 4.002 |
-243.896 493.603 5.528 540.426 6.111 245.614 3.597 |
-244.054 494.106 6.586 540.004 6.086 246.206 3.240 |
-244.212 493.381 5.836 540.640 6.184 249.752 4.587 |
-244.369 493.353 5.833 540.646 5.933 252.887 3.565 |
-244.528 494.743 5.640 539.416 6.099 252.688 3.782 |
-244.685 495.557 6.222 539.894 6.073 247.856 3.970 |
-244.843 492.385 5.614 541.228 6.428 244.798 3.602 |
-245.001 492.163 6.633 540.412 6.500 248.048 5.729 |
-245.158 496.991 5.497 540.534 6.201 248.830 4.062 |
-245.316 494.759 5.911 539.055 6.083 251.948 4.456 |
-245.474 492.767 5.874 540.360 5.967 247.879 3.621 |
-245.633 494.307 5.702 540.533 6.055 247.728 4.208 |
-245.791 492.973 5.632 541.225 6.353 244.777 4.920 |
-245.949 495.319 6.151 541.002 6.057 250.787 4.440 |
-246.108 494.193 5.569 539.930 6.157 251.717 3.823 |
-246.266 494.072 5.982 540.379 5.935 249.037 3.105 |
-246.424 493.540 6.571 539.293 5.929 245.820 3.685 |
-246.582 495.215 5.686 540.453 6.074 250.868 3.696 |
-246.740 494.292 5.935 540.844 6.146 248.378 3.623 |
-246.898 493.862 5.743 540.288 6.141 248.263 4.020 |
-247.056 494.108 5.721 538.752 5.822 247.512 3.659 |
-247.213 493.241 5.646 541.377 6.377 251.675 4.332 |
-247.371 494.172 5.439 541.013 6.364 249.096 4.251 |
-247.528 495.031 5.810 541.670 6.308 245.830 4.011 |
-247.686 492.040 5.913 541.106 5.922 242.488 3.843 |
-247.844 494.430 5.756 539.221 6.238 253.954 3.278 |
-248.002 494.824 6.106 540.482 6.029 253.269 4.594 |
-248.160 496.038 5.514 541.604 5.989 249.402 4.720 |
-248.318 497.900 6.643 541.826 6.026 246.214 5.297 |
-248.475 500.589 12.070 540.638 6.199 251.462 5.077 |
-248.633 502.275 8.822 541.526 6.077 252.974 5.512 |
-248.790 500.372 9.520 540.155 7.635 249.809 6.805 |
-248.947 491.903 7.799 540.491 6.174 243.978 5.793 |
-249.105 488.059 6.543 541.424 6.379 246.039 5.920 |
-249.263 489.030 6.378 540.434 6.541 247.540 8.034 |
-249.420 486.250 6.647 539.384 6.956 247.935 4.878 |
-249.577 486.322 6.839 540.273 7.038 247.059 6.649 |
-249.734 491.083 7.676 541.272 6.442 244.370 7.709 |
-249.891 494.160 7.335 540.192 6.545 247.843 6.422 |
-250.048 496.231 7.708 539.152 5.781 250.368 7.149 |
-250.205 500.722 6.606 538.841 6.634 250.583 5.569 |
-250.362 499.957 6.592 540.598 6.304 248.255 4.065 |
-250.520 502.209 7.644 542.586 6.866 248.462 5.856 |
-250.678 501.462 7.638 540.735 7.135 251.024 6.381 |
-250.835 500.014 6.595 540.747 6.331 250.350 6.756 |
-250.993 497.960 7.205 541.037 6.608 249.093 4.201 |
-251.150 496.449 7.003 541.070 5.946 248.650 6.463 |
-251.308 497.144 6.401 541.060 6.368 249.466 4.315 |
-251.465 494.931 6.982 541.100 6.548 247.944 5.197 |
-251.624 496.649 5.618 540.381 5.906 251.109 3.475 |
-251.782 500.356 6.205 540.823 6.122 251.791 5.004 |
-251.940 496.793 5.858 540.678 6.623 247.787 4.503 |
-252.098 493.867 6.106 540.816 6.384 246.077 3.776 |
-252.256 496.768 5.641 540.048 6.434 250.130 3.880 |
-252.414 496.527 5.941 540.550 6.273 250.901 4.664 |
-252.572 496.875 5.421 540.075 5.818 245.899 4.605 |
-252.730 494.438 6.758 540.470 6.197 245.899 4.323 |
-252.887 494.234 6.002 541.074 5.724 247.179 3.832 |
-253.045 496.942 5.632 540.240 5.853 249.541 3.754 |
-253.203 495.389 5.739 540.102 6.202 250.005 3.706 |
-253.361 494.443 5.423 541.371 5.865 245.360 3.894 |
-253.519 491.814 5.995 540.613 5.965 247.793 3.166 |
-253.677 493.508 5.876 538.966 5.854 253.047 3.980 |
-253.835 497.895 6.031 540.479 5.859 253.320 3.782 |
-253.993 496.019 5.995 541.034 5.882 247.583 3.779 |
-254.150 492.520 5.764 541.330 6.116 241.025 4.330 |
-254.309 495.905 5.780 540.193 5.956 251.610 4.304 |
-254.467 494.629 5.750 539.272 5.883 259.646 3.731 |
-254.626 494.596 6.405 541.302 6.359 242.736 4.420 |
-254.783 498.155 5.419 541.593 5.847 248.387 3.553 |
-254.941 499.831 6.195 541.275 5.883 246.903 4.246 |
-255.099 499.848 5.673 541.432 6.121 248.679 3.906 |
-255.257 495.738 5.760 540.554 6.111 246.046 3.743 |
-255.415 496.757 5.808 539.735 6.381 251.730 4.631 |
-255.573 495.157 5.556 541.297 5.812 249.217 3.771 |
-255.731 498.691 6.002 542.923 6.441 244.882 5.743 |
-255.888 497.566 5.873 539.419 5.943 247.898 4.998 |
-256.047 494.965 6.516 542.234 5.833 246.919 4.367 |
-256.205 496.289 6.188 539.582 6.480 252.229 6.497 |
-256.363 496.182 5.729 539.945 6.011 244.992 4.767 |
-256.521 490.491 6.771 541.579 6.138 243.389 4.536 |
-256.679 492.894 7.003 539.395 6.000 247.343 5.105 |
-256.837 500.019 6.295 539.084 6.019 259.463 7.374 |
-256.995 493.830 6.209 540.870 6.098 248.824 4.663 |
-257.153 495.458 5.544 540.668 6.495 239.348 6.532 |
-257.310 495.364 5.529 538.996 6.295 245.363 5.693 |
-257.469 497.513 6.405 538.600 5.887 261.333 4.308 |
-257.626 494.835 6.021 539.766 5.892 249.253 4.209 |
-257.784 493.778 5.860 541.577 5.926 243.552 5.516 |
-257.943 497.027 6.010 541.035 6.577 244.555 4.113 |
-258.101 494.000 6.339 541.490 6.043 249.015 3.004 |
-258.259 495.760 6.030 538.784 6.363 250.470 3.535 |
-258.417 495.417 5.437 539.427 6.142 249.894 3.745 |
-258.575 495.234 5.660 541.494 5.836 247.978 3.543 |
-258.734 497.342 5.439 540.884 6.576 246.289 4.747 |
-258.891 496.533 5.832 540.438 6.051 246.522 4.694 |
-259.049 495.395 5.837 539.914 6.064 246.365 3.499 |
-259.207 496.954 5.486 539.349 6.076 249.183 4.934 |
-259.365 497.519 5.708 538.713 6.150 251.531 3.642 |
-259.523 496.835 5.631 541.227 6.435 243.365 4.139 |
-259.681 495.738 6.354 540.222 6.378 245.863 3.172 |
-259.839 496.907 5.877 539.532 6.057 249.908 4.790 |
-259.998 497.149 6.159 539.965 5.987 252.599 3.348 |
-260.156 497.401 6.525 539.179 6.326 247.366 4.419 |
-260.313 496.834 5.619 540.991 5.893 242.263 4.635 |
-260.471 496.098 6.077 539.979 5.947 249.232 3.813 |
-260.629 495.681 6.566 540.469 5.776 252.362 4.191 |
-260.787 493.906 5.815 540.174 5.948 245.283 3.993 |
-260.944 497.269 5.905 539.911 6.197 247.712 4.116 |
-261.101 497.142 5.664 540.279 6.126 245.277 5.868 |
-261.259 497.561 5.934 540.132 6.215 249.292 6.326 |
-261.417 495.455 5.858 540.491 6.227 247.212 3.778 |
-261.574 495.314 5.640 540.324 6.510 249.082 3.940 |
-261.732 496.273 5.538 540.423 5.989 249.190 4.208 |
-261.889 498.132 5.747 538.814 5.904 249.011 4.310 |
-262.048 494.471 5.996 539.948 5.899 247.040 3.816 |
-262.207 495.834 5.997 538.829 5.856 247.540 4.128 |
-262.364 496.158 6.248 539.228 5.948 247.185 4.999 |
-262.521 496.221 5.565 539.862 6.112 248.531 4.643 |
-262.679 495.752 5.888 539.978 6.062 249.245 4.677 |
-262.837 495.187 5.358 540.539 5.861 248.312 3.498 |
-262.995 494.521 5.978 540.905 6.055 246.343 4.306 |
-263.152 497.365 5.663 539.509 6.083 248.403 3.561 |
-263.310 497.303 5.912 540.075 6.227 251.544 4.217 |
-263.468 496.823 6.175 539.980 6.396 246.585 3.245 |
-263.627 495.558 5.612 539.789 6.089 245.785 4.296 |
-263.784 495.905 5.739 539.978 6.164 250.747 3.614 |
-263.942 498.159 5.610 539.729 5.951 250.557 4.122 |
-264.100 498.471 6.202 539.607 5.754 248.765 3.631 |
-264.257 494.724 5.635 540.256 5.899 245.667 3.741 |
-264.415 496.737 5.605 541.372 6.037 248.226 4.269 |
-264.572 496.447 6.179 540.863 6.177 245.432 5.233 |
-264.730 499.234 6.238 540.468 6.078 248.474 3.353 |
-264.888 497.132 6.106 539.824 6.344 250.284 3.897 |
-265.046 495.581 5.830 540.408 6.118 245.462 3.763 |
-265.204 493.955 5.556 540.974 5.969 247.714 4.300 |
-265.362 496.629 6.664 539.139 6.015 251.617 3.646 |
-265.520 495.846 5.708 539.221 5.957 249.416 3.583 |
-265.678 496.748 6.049 540.852 5.812 244.474 4.245 |
-265.835 494.577 5.806 540.028 6.035 247.164 3.162 |
-265.994 495.855 5.603 540.520 6.247 248.811 4.172 |
-266.151 494.498 5.981 540.675 5.890 248.178 3.726 |
-266.310 495.985 5.896 540.536 6.347 249.201 3.452 |
-266.468 495.459 6.442 539.995 5.953 248.652 3.808 |
-266.626 496.584 5.727 540.540 5.919 246.626 4.133 |
-266.784 497.705 5.652 540.405 5.876 247.576 3.921 |
-266.941 496.297 5.862 540.184 5.861 250.485 3.599 |
-267.098 496.573 5.977 539.351 6.048 251.184 3.548 |
-267.256 495.015 5.657 540.363 6.099 248.711 3.766 |
-267.414 496.820 5.905 539.683 6.378 249.837 4.124 |
-267.572 496.228 5.861 539.486 6.176 246.768 4.602 |
-267.730 495.592 5.806 540.704 6.311 245.397 3.648 |
-267.889 495.525 5.641 539.797 6.050 252.444 3.626 |
-268.046 494.105 8.066 538.708 5.866 252.574 3.982 |
-268.204 498.341 6.041 541.847 6.166 241.185 3.409 |
-268.361 500.293 5.671 539.888 6.012 249.731 3.318 |
-268.519 495.502 6.009 539.338 6.479 249.447 5.077 |
-268.677 495.675 5.622 539.333 5.829 252.094 5.289 |
-268.835 495.666 6.477 538.593 5.963 245.160 3.614 |
-268.993 492.306 6.444 540.666 6.044 246.941 5.106 |
-269.151 499.453 5.582 539.616 5.924 251.789 4.291 |
-269.309 498.004 5.784 539.416 6.376 246.927 4.120 |
-269.467 495.450 5.487 539.724 6.300 245.729 3.940 |
-269.624 494.004 5.740 540.647 6.056 247.717 3.958 |
-269.782 498.250 5.695 539.256 6.219 251.887 4.218 |
-269.940 495.412 5.670 538.592 6.135 247.628 4.299 |
-270.098 497.314 6.605 541.195 6.646 245.286 6.747 |
-270.254 496.303 7.552 539.942 6.580 244.712 3.988 |
-270.412 497.363 6.019 539.639 6.225 249.597 4.390 |
-270.570 494.863 6.549 539.146 6.221 248.425 3.966 |
-270.728 495.878 5.511 539.581 6.214 247.534 4.135 |
-270.886 497.498 5.810 539.715 6.072 245.875 3.603 |
-271.043 496.375 5.970 540.677 6.037 246.618 3.926 |
-271.202 495.333 5.997 540.266 6.022 252.456 4.241 |
-271.359 495.593 5.676 538.412 6.438 249.234 3.139 |
-271.517 495.745 5.604 539.964 6.101 245.512 4.405 |
-271.675 494.677 5.760 538.669 6.301 245.455 3.533 |
-271.833 496.626 5.908 539.116 5.728 250.584 4.326 |
-271.990 495.246 5.889 539.181 6.085 249.145 3.539 |
-272.148 497.172 6.128 538.261 5.906 247.101 4.615 |
-272.305 500.041 6.745 539.882 5.955 246.881 4.998 |
-272.463 495.430 6.690 536.818 6.349 247.268 4.755 |
-272.621 495.684 5.944 539.808 6.084 255.372 3.507 |
-272.779 496.026 5.851 537.498 5.928 252.793 5.553 |
-272.938 494.380 5.843 539.365 5.890 242.397 3.666 |
-273.096 497.483 5.807 539.543 5.999 246.683 5.084 |
-273.254 498.244 6.313 540.125 6.005 246.256 3.871 |
-273.411 495.582 6.391 538.491 6.147 252.122 3.539 |
-273.570 492.925 5.766 539.534 5.725 246.771 3.379 |
-273.728 496.339 6.522 540.435 6.553 247.087 3.430 |
-273.886 496.283 5.525 539.734 6.295 243.990 4.464 |
-274.044 497.972 5.475 539.537 6.234 248.199 3.991 |
-274.202 496.999 5.518 540.085 5.998 247.252 5.979 |
-274.359 497.830 6.237 540.550 5.983 247.982 4.483 |
-274.517 495.938 6.028 539.815 6.115 246.979 4.249 |
-274.675 500.309 6.193 540.128 5.846 247.589 3.485 |
-274.834 494.703 7.470 540.981 6.126 246.755 4.269 |
-274.992 496.487 5.639 540.469 5.904 251.717 4.588 |
-275.149 496.404 6.219 540.984 6.021 246.287 5.550 |
-275.307 495.034 6.076 539.419 6.508 247.572 3.813 |
-275.464 494.130 5.920 539.734 5.986 250.755 3.539 |
-275.622 496.021 6.195 541.517 6.211 249.897 3.685 |
-275.781 497.200 6.156 541.505 6.408 250.338 3.472 |
-275.939 497.232 6.045 539.835 6.253 253.613 4.357 |
-276.098 499.362 6.120 540.698 6.116 253.246 5.777 |
-276.256 497.523 6.074 539.767 6.073 248.252 3.926 |
-276.413 494.405 5.567 539.087 6.131 248.122 4.246 |
-276.571 497.214 5.317 539.390 6.049 249.861 4.506 |
-276.729 496.592 5.839 537.874 5.790 252.138 3.324 |
-276.887 499.405 6.947 537.988 6.342 254.541 6.566 |
-277.044 495.814 7.454 538.799 6.993 241.085 5.753 |
-277.202 495.678 7.085 539.868 6.499 242.710 4.352 |
-277.359 497.416 6.283 539.048 7.020 247.737 4.643 |
-277.516 497.044 6.309 539.390 6.525 251.407 6.209 |
-277.674 497.470 6.498 539.664 6.290 250.344 4.749 |
-277.831 495.484 6.455 538.836 6.428 244.323 3.903 |
-277.988 494.824 6.940 538.738 6.016 245.803 4.993 |
-278.145 497.378 5.625 539.427 5.978 251.048 3.726 |
-278.303 495.983 5.733 538.814 5.943 247.640 3.921 |
-278.460 495.939 6.429 539.138 6.281 247.066 4.051 |
-278.618 495.959 5.759 538.471 6.318 247.570 4.218 |
-278.777 496.609 5.710 538.594 5.894 249.555 3.376 |
-278.934 496.356 5.524 539.596 5.863 246.745 3.651 |
-279.092 499.113 5.365 539.066 6.100 251.797 4.468 |
-279.249 495.111 6.289 538.920 6.050 243.827 4.668 |
-279.407 498.491 6.490 539.379 6.093 249.038 4.676 |
-279.564 495.924 6.339 539.303 6.124 246.840 5.040 |
-279.722 496.719 5.679 538.893 6.358 249.038 4.059 |
-279.881 495.867 6.036 537.499 6.666 248.280 3.606 |
-280.038 497.218 6.204 538.615 5.778 251.292 4.071 |
-280.195 495.352 6.546 539.266 5.954 244.302 4.690 |
-280.353 494.653 7.030 538.562 6.474 243.333 4.389 |
-280.511 497.856 5.599 538.155 5.960 251.813 3.799 |
-280.669 494.788 5.805 537.341 6.177 253.828 4.751 |
-280.827 495.327 6.021 538.803 6.338 248.208 3.305 |
-280.985 497.153 6.072 538.768 6.458 243.642 6.508 |
-281.142 494.621 6.050 538.177 5.937 248.546 5.787 |
-281.299 491.086 6.205 537.841 6.258 252.195 5.379 |
-281.457 495.980 5.688 537.808 5.766 248.051 3.858 |
-281.615 495.169 5.687 539.058 6.143 244.740 3.344 |
-281.773 496.941 5.980 538.990 6.105 250.167 3.604 |
-281.931 496.489 6.138 538.199 5.822 252.151 3.750 |
-282.089 494.204 6.103 538.312 5.857 248.071 3.617 |
-282.247 495.052 5.626 538.503 6.245 247.680 4.053 |
-282.405 493.020 5.917 537.695 6.306 246.786 5.111 |
-282.563 495.110 6.247 537.207 5.835 252.207 4.363 |
-282.720 494.751 5.698 537.542 6.330 249.102 4.042 |
-282.878 494.877 6.184 538.575 6.176 246.441 3.282 |
-283.037 497.208 5.993 538.575 5.902 246.464 3.226 |
-283.195 496.602 5.869 537.755 6.074 250.244 3.795 |
-283.353 492.986 6.102 537.137 5.798 247.522 5.449 |
-283.511 494.799 5.622 537.281 5.871 249.725 4.009 |
-283.669 495.068 6.114 538.012 6.468 247.947 3.760 |
-283.826 494.760 6.662 538.370 5.869 244.279 4.543 |
-283.984 495.977 5.606 537.923 6.059 250.992 3.900 |
-284.142 494.119 5.698 538.359 5.898 247.769 3.890 |
-284.300 494.941 5.505 536.613 5.899 251.857 3.055 |
-284.459 489.409 6.525 537.896 6.386 244.488 3.840 |
-284.616 495.604 6.700 538.769 5.731 247.264 4.084 |
-284.773 494.576 5.347 537.987 6.134 250.372 3.544 |
-284.932 495.985 5.789 538.379 6.122 252.133 3.831 |
-285.089 494.989 5.948 538.513 5.963 249.631 5.441 |
-285.247 490.189 5.953 538.115 6.785 248.486 4.164 |
-285.405 490.411 8.859 538.841 6.369 246.894 8.170 |
-285.562 490.614 8.222 538.678 6.899 243.548 9.150 |
-285.718 487.446 7.839 537.626 6.678 242.635 6.234 |
-285.876 488.184 7.324 537.376 6.710 247.406 4.952 |
-286.034 489.801 8.300 538.383 8.166 246.394 7.985 |
-286.190 488.288 8.617 538.893 6.495 243.433 5.986 |
-286.348 490.242 6.385 537.699 6.194 247.074 5.876 |
-286.505 497.902 7.043 537.887 6.781 250.700 6.357 |
-286.662 499.219 6.890 537.018 6.127 244.677 6.083 |
-286.820 500.002 7.269 538.790 6.692 247.476 4.832 |
-286.977 499.250 6.894 537.817 6.226 253.644 3.983 |
-287.135 497.012 7.524 539.468 5.962 251.366 3.954 |
-287.291 491.400 7.822 538.374 7.349 245.993 5.446 |
-287.449 487.174 8.144 538.763 7.345 242.549 6.818 |
-287.605 485.381 6.323 538.327 6.301 248.815 3.140 |
-287.763 488.423 7.250 537.143 7.069 253.248 5.264 |
-287.921 488.414 5.960 538.311 6.849 245.362 5.011 |
-288.079 485.074 6.547 539.903 6.521 245.873 7.215 |
-288.236 486.270 7.666 537.269 8.262 248.678 5.679 |
-288.393 492.592 7.379 537.462 6.037 250.536 6.762 |
-288.550 496.785 6.570 538.994 6.792 249.785 5.777 |
-288.708 498.217 5.703 538.690 6.294 254.047 8.099 |
-288.866 497.372 6.779 538.816 6.647 250.960 10.925 |
-289.023 499.523 7.918 539.148 6.085 246.749 9.718 |
-289.179 499.315 7.582 538.061 6.658 246.447 6.032 |
-289.337 500.173 10.308 537.790 7.954 250.724 6.866 |
-289.494 490.651 7.591 538.587 6.260 247.037 5.816 |
-289.651 484.986 6.053 538.655 6.541 244.930 5.842 |
-289.809 486.119 6.779 538.356 6.654 243.009 5.750 |
-289.967 491.311 11.647 538.723 6.605 246.850 7.852 |
-290.124 497.403 6.202 537.777 6.523 252.968 9.402 |
-290.281 497.454 11.803 537.797 6.588 251.849 7.880 |
-290.437 502.564 12.683 540.118 7.006 249.218 6.289 |
-290.595 503.395 10.355 539.311 7.115 251.992 8.005 |
-290.752 499.353 7.046 539.113 6.668 251.219 6.627 |
-290.909 489.553 7.687 538.601 8.482 244.322 3.935 |
-291.066 483.795 7.344 538.186 6.670 246.273 6.812 |
-291.223 488.567 7.441 538.981 7.122 246.472 7.962 |
-291.379 500.275 7.284 537.139 8.575 252.864 5.617 |
-291.538 498.922 7.660 538.881 6.044 248.618 6.515 |
-291.695 499.189 6.422 539.278 7.303 252.086 6.021 |
-291.853 502.111 7.088 539.792 7.038 254.230 5.112 |
-292.011 494.791 7.904 539.978 6.800 245.552 5.913 |
-292.168 493.067 7.985 537.729 6.379 247.785 5.239 |
-292.325 488.810 8.418 537.797 7.393 247.687 5.411 |
-292.482 489.188 6.789 537.568 7.780 250.876 7.214 |
-292.639 483.931 5.620 539.335 6.707 241.768 5.472 |
-292.797 493.059 9.265 538.093 7.840 251.297 7.816 |
-292.954 489.160 11.749 538.361 6.828 246.732 7.747 |
-293.110 493.611 6.711 539.283 6.170 248.707 7.054 |
-293.268 495.536 9.554 538.492 6.559 249.467 5.997 |
-293.425 500.725 10.415 539.394 6.840 253.534 8.771 |
-293.582 502.467 8.427 540.074 7.582 252.875 7.474 |
-293.739 503.104 11.586 539.710 7.626 251.928 8.632 |
-293.896 500.641 10.237 539.117 6.980 249.189 8.803 |
-294.053 492.396 8.108 539.171 7.418 244.501 8.873 |
-294.209 491.084 8.546 537.931 6.702 246.855 8.733 |
-294.366 484.360 7.587 536.899 7.585 248.658 10.993 |
-294.523 485.013 9.273 539.699 7.291 242.506 9.279 |
-294.679 484.560 11.529 540.727 7.990 243.165 6.865 |
-294.835 491.605 8.945 539.377 8.396 247.871 6.955 |
-294.991 491.256 8.178 537.463 7.909 253.688 8.243 |
-295.147 492.752 7.542 539.644 8.088 250.376 6.220 |
-295.304 492.927 7.826 539.056 6.844 245.163 7.501 |
-295.460 497.349 7.402 539.720 6.412 242.861 6.114 |
-295.617 499.573 7.585 539.837 7.674 255.598 6.561 |
-295.775 501.525 8.532 536.888 6.566 256.976 5.858 |
-295.933 500.015 8.003 538.088 6.551 249.079 5.702 |
-296.090 503.920 6.471 540.591 6.795 248.470 7.252 |
-296.248 498.429 10.241 539.156 7.868 250.304 11.773 |
-296.405 502.034 7.709 538.071 8.424 255.763 7.927 |
-296.561 499.360 6.264 538.650 7.447 252.707 6.030 |
-296.718 497.573 7.155 539.736 7.500 251.557 4.614 |
-296.875 490.215 6.944 539.977 7.325 247.705 5.736 |
-297.033 483.192 7.505 538.759 6.479 244.357 7.057 |
-297.191 489.151 7.909 537.847 7.987 250.043 7.335 |
-297.349 488.811 9.493 537.838 7.925 250.910 5.456 |
-297.505 484.618 7.213 538.448 6.840 245.659 7.587 |
-297.662 486.596 7.641 538.374 7.201 249.606 6.368 |
-297.819 484.805 6.027 538.583 6.190 250.266 5.998 |
-297.977 487.828 6.630 539.655 6.579 249.652 3.953 |
-298.134 488.678 5.978 538.076 6.113 249.606 4.300 |
-298.292 490.426 6.053 538.670 6.102 247.136 4.703 |
-298.450 490.314 5.989 538.616 6.405 250.341 4.806 |
-298.608 490.063 6.674 538.766 6.153 250.523 4.396 |
-298.766 482.620 7.438 539.557 6.015 249.725 4.930 |
-298.924 480.206 6.535 537.825 6.071 248.117 3.946 |
-299.081 485.302 5.761 538.598 6.294 249.721 7.606 |
-299.238 485.833 6.846 537.506 6.608 246.237 6.272 |
-299.395 487.778 6.077 539.445 6.049 250.672 4.699 |
-299.553 486.147 5.459 540.384 6.058 248.676 4.331 |
-299.711 484.671 5.703 537.913 6.065 248.266 4.627 |
-299.869 486.406 6.443 538.959 6.187 249.022 5.380 |
-300.027 482.234 5.680 539.789 6.078 249.160 4.443 |
-300.185 481.692 5.481 538.067 6.302 252.021 3.671 |
-300.343 483.116 6.644 537.660 6.312 249.360 4.528 |
-300.500 479.891 5.851 538.356 6.263 246.713 4.201 |
-300.658 480.868 5.689 539.393 7.045 247.067 4.842 |
-300.816 479.468 6.018 537.603 6.871 251.260 4.239 |
-300.973 478.604 5.941 538.146 6.327 247.302 5.381 |
-301.131 478.796 5.956 538.741 6.199 252.613 4.449 |
-301.289 481.407 6.276 537.037 6.579 250.766 5.402 |
-301.447 481.534 6.316 541.400 6.100 243.477 5.234 |
-301.605 482.785 6.336 540.094 5.972 247.784 3.378 |
-301.763 479.417 5.341 538.191 6.223 254.437 4.734 |
-301.921 480.284 6.077 538.711 6.315 250.664 7.015 |
-302.079 481.722 7.607 538.567 6.108 243.386 4.072 |
-302.236 475.817 5.411 537.655 7.147 246.423 4.640 |
-302.394 478.538 6.199 539.086 6.735 251.744 3.961 |
-302.551 479.835 6.825 538.081 6.134 250.807 4.643 |
-302.709 475.448 6.674 539.300 6.592 244.318 4.434 |
-302.866 478.304 6.047 538.583 6.676 248.773 3.814 |
-303.024 480.703 5.970 537.065 6.066 252.187 3.926 |
-303.181 482.307 6.477 538.220 6.091 248.651 4.332 |
-303.339 480.273 7.372 537.992 6.527 248.276 5.498 |
-303.496 478.742 5.568 539.360 6.674 247.732 4.172 |
-303.654 476.797 5.478 539.593 6.253 246.997 6.431 |
-303.812 480.518 5.870 537.956 6.591 249.009 3.699 |
-303.970 475.725 5.737 539.939 6.539 247.320 4.467 |
-304.128 478.077 6.127 537.369 6.087 248.713 4.963 |
-304.286 479.300 5.936 537.483 6.155 247.857 4.730 |
-304.444 478.513 6.067 536.434 6.656 248.708 4.091 |
-304.601 480.065 6.102 536.744 6.602 251.437 3.526 |
-304.759 479.680 6.634 538.607 6.744 249.974 4.568 |
-304.917 480.646 5.553 538.506 6.464 248.149 4.218 |
-305.074 478.156 5.916 539.515 6.298 245.491 4.186 |
-305.232 481.341 6.027 541.445 6.131 248.004 3.434 |
-305.390 481.213 6.339 537.904 6.617 248.270 5.088 |
-305.548 478.362 5.641 537.399 6.504 246.122 3.500 |
-305.706 480.703 5.816 536.814 6.559 251.001 4.823 |
-305.863 478.327 5.506 538.088 6.469 247.000 4.731 |
-306.022 482.293 5.430 537.300 6.253 249.740 3.555 |
-306.180 479.812 5.750 540.223 6.548 249.787 4.895 |
-306.338 480.998 8.095 538.612 6.515 248.807 8.277 |
-306.493 479.280 6.557 537.076 6.834 248.658 4.471 |
-306.652 479.822 6.046 539.010 6.932 247.436 3.737 |
-306.810 479.408 6.180 537.290 6.606 248.864 3.731 |
-306.968 479.614 6.954 537.543 6.372 247.198 4.310 |
-307.126 483.036 5.941 538.035 6.690 247.312 4.506 |
-307.284 479.060 5.727 536.770 6.439 245.603 4.036 |
-307.441 481.960 6.871 536.867 6.318 250.186 4.834 |
-307.599 479.399 5.915 538.478 6.327 250.281 3.494 |
-307.757 478.724 7.031 537.484 7.321 248.672 4.796 |
-307.913 475.807 6.423 538.384 6.214 248.716 6.167 |
-308.071 480.918 7.259 537.603 6.384 247.267 3.979 |
-308.228 482.259 7.369 537.516 6.735 245.962 9.963 |
-308.385 481.082 6.153 537.755 6.086 246.189 4.706 |
-308.543 483.200 6.110 539.367 6.298 250.191 7.308 |
-308.700 481.202 6.084 538.663 6.114 247.721 5.768 |
-308.858 480.952 5.784 538.996 6.155 250.327 6.038 |
-309.016 478.089 6.509 538.260 5.902 250.163 4.524 |
-309.174 478.120 5.592 538.472 7.100 250.971 6.194 |
-309.332 484.711 5.953 537.544 5.945 251.449 5.100 |
-309.490 481.777 5.551 538.465 5.737 244.344 4.243 |
-309.648 482.567 6.038 537.674 5.983 245.583 3.700 |
-309.806 481.115 6.441 538.126 6.107 249.805 4.199 |
-309.964 486.971 6.003 537.411 5.990 251.998 4.524 |
-310.122 481.169 5.288 538.584 6.160 248.000 4.127 |
-310.278 485.981 5.543 538.955 6.201 248.880 3.497 |
-310.436 488.939 5.959 538.799 5.785 251.598 4.097 |
-310.594 487.779 6.305 539.838 5.979 250.386 4.169 |
-310.752 485.967 5.677 538.008 6.296 249.883 3.653 |
-310.910 488.729 6.810 538.910 6.102 246.938 4.080 |
-311.067 487.517 6.009 538.939 6.029 245.929 6.417 |
-311.225 477.815 5.936 538.929 6.046 242.389 4.715 |
-311.383 492.568 5.749 537.479 6.028 254.463 4.394 |
-311.541 482.985 5.486 538.274 6.013 248.074 4.905 |
-311.699 487.469 7.783 539.562 6.432 245.270 6.672 |
-311.855 492.734 7.939 538.695 6.855 251.582 5.720 |
-312.013 492.087 6.338 539.337 7.501 265.945 5.425 |
-312.171 491.200 7.520 540.183 6.241 245.449 7.584 |
-312.327 486.672 6.725 538.451 6.602 243.804 9.719 |
-312.484 490.456 8.280 534.194 6.274 267.748 4.673 |
-312.642 494.114 6.810 536.922 5.969 252.617 5.659 |
-312.800 488.921 9.566 538.959 7.066 234.846 10.043 |
-312.956 491.159 9.092 540.489 6.595 234.878 7.616 |
-313.113 493.121 5.937 538.384 6.407 253.458 7.758 |
-313.271 489.801 5.824 537.113 5.844 254.604 4.048 |
-313.428 490.958 7.660 538.861 6.187 241.106 6.047 |
-313.586 487.229 7.904 539.928 7.342 238.461 5.175 |
-313.743 487.452 6.246 539.899 7.652 248.704 5.229 |
-313.902 496.574 6.176 536.529 7.425 260.407 5.885 |
-314.060 491.455 9.412 537.895 6.777 248.824 5.752 |
-314.217 490.694 7.566 539.029 7.072 244.188 8.234 |
-314.374 490.406 6.301 539.030 6.906 238.891 6.345 |
-314.531 493.564 10.901 538.700 7.568 247.478 8.742 |
-314.688 487.725 7.817 537.117 6.514 252.264 6.250 |
-314.846 489.397 5.753 538.171 6.142 247.082 3.991 |
-315.004 491.664 7.851 541.881 6.865 235.880 4.860 |
-315.161 493.016 7.109 540.088 6.193 241.258 3.859 |
-315.318 490.570 5.888 539.680 6.220 250.462 3.925 |
-315.476 489.875 5.890 539.186 6.328 248.114 3.804 |
-315.634 492.018 5.340 539.491 6.801 248.341 3.944 |
-315.791 493.400 6.485 540.784 6.232 243.063 3.488 |
-315.950 486.744 5.308 539.397 6.753 245.980 5.718 |
-316.108 494.747 5.922 539.764 6.400 253.519 4.412 |
-316.266 493.667 6.691 539.027 6.122 254.625 3.837 |
-316.424 489.506 5.835 539.520 6.260 244.406 3.550 |
-316.582 487.585 6.332 539.295 6.395 244.424 5.287 |
-316.739 494.205 7.022 539.053 6.326 250.294 8.477 |
-316.896 494.202 6.090 540.780 7.059 252.302 5.381 |
-317.054 493.062 7.412 540.077 5.874 246.953 3.729 |
-317.212 490.770 6.275 539.800 6.104 249.269 3.859 |
-317.370 492.807 6.022 541.198 5.868 250.782 6.682 |
-317.528 492.258 6.905 540.292 6.501 247.417 4.932 |
-317.685 490.762 5.602 540.913 6.064 247.964 6.045 |
-317.843 492.247 6.303 539.499 6.018 250.249 4.567 |
-318.001 490.972 6.300 539.235 6.153 249.062 4.773 |
-318.158 491.979 6.518 541.362 6.176 246.700 6.668 |
-318.316 492.879 6.096 541.823 5.898 248.147 3.524 |
-318.474 491.298 6.184 538.758 6.273 254.791 3.500 |
-318.632 491.973 5.533 540.117 5.978 251.247 4.044 |
-318.790 493.159 6.609 540.341 6.140 246.432 4.663 |
-318.948 491.961 8.310 540.373 7.540 249.684 11.670 |
-319.105 493.399 8.946 540.623 6.191 250.896 5.768 |
-319.262 492.714 5.816 541.376 6.617 249.808 5.175 |
-319.420 488.637 7.757 540.923 7.306 246.278 5.269 |
-319.578 495.176 6.151 540.659 6.389 252.022 3.946 |
-319.736 491.241 6.231 540.246 6.015 254.320 4.742 |
-319.894 494.902 5.931 541.432 6.168 247.953 3.606 |
-320.052 490.009 6.708 540.604 6.344 247.039 3.959 |
-320.210 495.740 7.261 541.246 7.083 251.460 5.624 |
-320.367 492.057 6.373 542.082 6.525 243.074 10.206 |
-320.525 490.610 5.886 542.070 6.152 243.500 5.745 |
-320.683 489.126 5.493 542.430 6.249 253.855 4.141 |
-320.841 489.031 5.998 540.914 5.859 251.748 3.963 |
-320.998 486.050 6.698 540.529 6.412 246.487 5.607 |
-321.156 485.270 6.796 541.605 6.085 248.854 6.042 |
-321.314 491.232 5.997 540.386 5.868 255.468 4.620 |
-321.471 485.032 7.360 540.943 6.260 247.124 3.966 |
-321.629 486.010 5.592 539.499 5.950 249.091 3.535 |
-321.787 490.460 6.069 540.805 6.057 251.430 4.406 |
-321.944 486.984 6.633 541.278 5.927 249.244 4.445 |
-322.103 488.679 5.828 541.132 6.187 250.282 3.199 |
-322.261 488.576 5.821 541.411 5.755 249.732 3.493 |
-322.419 485.685 5.454 540.924 5.929 251.427 4.195 |
-322.577 480.826 6.421 539.429 6.115 246.714 4.113 |
-322.734 486.968 5.540 539.804 5.946 253.147 3.256 |
-322.893 479.759 5.666 540.848 6.155 247.631 3.799 |
-323.051 487.007 5.786 540.138 5.731 250.306 4.526 |
-323.209 483.070 6.029 539.741 6.191 247.143 3.851 |
-323.367 483.720 6.520 540.687 6.089 249.931 4.237 |
-323.524 483.687 5.607 539.706 5.803 250.999 3.931 |
-323.682 481.276 6.613 540.667 5.985 245.580 3.383 |
-323.840 484.822 6.034 540.646 5.869 249.215 4.337 |
-323.997 481.008 5.948 539.886 6.257 250.292 3.342 |
-324.155 485.100 6.477 540.158 5.938 251.232 3.860 |
-324.314 482.051 5.567 540.291 6.074 247.252 3.507 |
-324.472 481.210 5.460 541.483 6.499 249.342 4.119 |
-324.629 480.122 6.093 541.524 6.891 250.383 4.469 |
-324.786 480.471 6.113 540.465 7.185 249.133 5.105 |
-324.943 479.334 5.738 540.384 6.549 246.651 6.066 |
-325.101 484.043 6.508 540.493 7.818 251.036 5.958 |
-325.259 481.150 5.598 541.375 6.378 246.120 6.188 |
-325.416 479.631 6.003 542.863 6.373 247.791 3.552 |
-325.574 479.626 5.841 542.838 6.007 250.787 4.227 |
-325.732 479.526 6.159 540.518 6.372 246.627 3.577 |
-325.891 476.855 6.794 540.385 6.016 250.166 3.735 |
-326.048 478.818 6.127 540.093 6.563 250.451 7.280 |
-326.206 480.258 5.740 542.041 6.275 251.634 4.297 |
-326.363 480.862 7.161 540.720 5.867 247.936 4.451 |
-326.521 478.248 5.824 540.857 5.950 248.959 4.957 |
-326.680 478.682 5.831 540.118 6.254 249.369 4.077 |
-326.838 480.366 5.907 540.961 6.998 254.473 3.515 |
-326.996 480.863 5.816 540.509 6.193 248.984 3.580 |
-327.154 481.048 5.598 541.105 5.977 245.989 4.001 |
-327.312 480.660 5.945 543.081 6.743 247.479 4.376 |
-327.470 479.976 6.112 540.110 6.658 253.714 3.525 |
-327.628 479.879 6.005 540.081 6.085 250.397 5.041 |
-327.786 482.208 6.928 540.110 6.477 249.544 5.241 |
-327.944 478.892 6.624 541.671 6.658 248.065 3.941 |
-328.100 481.889 6.002 540.556 6.496 249.060 4.374 |
-328.259 478.678 5.377 540.345 6.981 248.630 3.575 |
-328.417 478.076 6.201 539.903 6.304 249.916 4.546 |
-328.575 481.260 5.990 539.979 7.326 251.769 4.662 |
-328.733 482.482 6.811 541.239 6.846 245.687 4.764 |
-328.890 479.974 5.889 539.862 6.669 248.656 3.856 |
-329.049 479.979 5.614 540.268 6.624 250.246 3.631 |
-329.207 480.559 5.468 539.692 7.382 247.902 5.530 |
-329.365 477.645 7.092 541.407 6.302 243.729 6.026 |
-329.522 481.886 6.128 540.604 6.462 248.907 5.769 |
-329.680 483.618 6.530 541.966 6.386 252.039 4.181 |
-329.838 481.536 5.811 542.409 6.101 246.600 4.850 |
-329.996 482.515 6.373 541.134 6.411 244.416 3.774 |
-330.154 485.125 7.481 540.161 6.396 251.464 4.083 |
-330.311 480.991 6.207 539.791 6.561 250.304 5.967 |
-330.469 486.359 6.122 541.498 5.935 245.173 3.940 |
-330.627 485.133 6.562 541.645 6.398 248.831 4.162 |
-330.785 483.001 5.723 540.696 5.793 250.968 3.218 |
-330.944 487.920 6.132 541.267 5.835 254.029 5.865 |
-331.103 484.589 5.716 542.902 6.070 245.910 4.895 |
-331.261 482.275 5.913 540.749 5.912 246.179 3.617 |
-331.419 489.212 5.973 541.107 6.234 252.051 3.373 |
-331.578 486.732 6.380 540.291 6.068 250.550 4.760 |
-331.736 484.607 6.877 541.273 5.681 245.915 5.801 |
-331.894 485.506 5.894 540.412 6.034 253.539 3.633 |
-332.052 488.525 5.547 540.834 5.891 249.605 3.466 |
-332.210 485.115 5.819 541.088 5.899 247.256 4.392 |
-332.367 488.341 5.658 542.150 5.843 249.492 3.976 |
-332.525 491.303 5.831 541.311 5.985 252.994 4.378 |
-332.683 489.453 5.475 540.663 5.891 246.039 3.369 |
-332.842 491.894 5.529 540.996 5.925 247.690 4.727 |
-332.999 491.658 6.352 540.190 5.902 249.536 3.454 |
-333.158 491.126 5.663 542.001 5.751 251.145 4.677 |
-333.315 492.711 5.895 540.280 5.989 250.981 4.066 |
-333.473 494.667 5.510 541.602 6.304 250.429 3.351 |
-333.631 492.766 5.735 540.886 5.856 245.334 4.579 |
-333.789 492.447 5.735 540.098 5.982 251.863 4.393 |
-333.946 494.114 6.040 542.041 6.146 248.988 5.154 |
-334.104 495.001 5.749 541.300 5.946 243.639 6.091 |
-334.262 494.700 5.874 541.343 6.094 250.466 3.175 |
-334.421 491.727 5.448 539.263 6.167 249.134 5.052 |
-334.578 493.807 5.425 539.432 6.066 252.121 7.949 |
-334.735 494.848 5.602 542.414 5.991 251.421 4.045 |
-334.893 493.858 6.719 540.564 5.858 248.414 3.662 |
-335.051 491.068 5.676 541.465 6.049 242.964 4.093 |
-335.208 497.590 5.724 541.774 5.720 253.069 3.593 |
-335.366 495.795 5.668 540.577 6.051 250.970 3.584 |
-335.525 493.548 5.521 540.815 6.153 248.229 4.130 |
-335.682 494.915 5.866 541.828 6.200 247.592 4.949 |
-335.841 498.129 7.334 540.568 6.585 248.775 3.475 |
-335.998 491.271 5.473 540.385 6.459 248.187 4.244 |
-336.156 490.392 5.902 540.313 6.262 252.131 5.189 |
-336.315 497.733 6.662 541.983 6.384 253.871 5.376 |
-336.473 499.317 6.673 541.269 6.049 245.458 5.740 |
-336.630 494.383 6.078 542.072 6.235 240.724 4.860 |
-336.788 492.383 6.152 539.410 6.265 253.887 4.628 |
-336.947 493.073 5.650 540.484 6.029 255.258 3.609 |
-337.105 495.030 5.660 541.124 6.092 249.572 3.662 |
-337.263 490.700 5.742 540.201 6.442 239.595 4.547 |
-337.421 492.847 5.693 540.492 5.956 245.946 4.097 |
-337.579 494.538 5.916 538.884 5.902 254.089 4.947 |
-337.737 492.165 5.973 539.658 6.047 251.690 4.569 |
-337.894 493.641 6.172 539.186 5.795 252.806 3.438 |
-338.052 494.476 5.588 539.251 5.900 247.128 3.445 |
-338.210 493.964 6.584 539.932 5.889 243.341 4.254 |
-338.367 493.999 5.654 537.919 6.071 251.223 4.231 |
-338.526 494.410 7.196 538.509 6.438 252.492 4.776 |
-338.683 494.294 6.697 538.855 6.285 246.234 4.185 |
-338.840 498.332 5.889 537.908 6.063 250.962 4.073 |
-338.999 495.733 5.906 537.629 5.929 248.959 3.326 |
-339.157 496.587 5.752 537.446 6.202 247.409 4.253 |
-339.315 494.815 5.722 538.194 5.778 248.314 4.795 |
-339.472 489.748 6.176 537.561 5.888 243.943 4.562 |
-339.630 493.587 6.313 538.325 6.117 247.049 4.729 |
-339.789 497.145 6.331 536.763 6.031 253.060 4.280 |
-339.947 499.131 5.670 538.697 6.613 251.930 5.980 |
-340.104 497.541 6.703 537.707 6.038 247.969 3.303 |
-340.263 490.585 5.907 538.037 5.854 245.249 4.045 |
-340.420 491.125 5.817 537.590 6.435 248.312 6.413 |
-340.577 495.451 5.446 538.045 6.392 249.033 5.220 |
-340.735 496.524 5.893 536.630 6.463 249.370 5.125 |
-340.893 496.795 5.714 538.206 5.633 248.233 4.302 |
-341.051 493.507 6.763 538.782 5.745 245.492 4.258 |
-341.209 497.035 6.531 537.597 6.319 251.714 4.630 |
-341.366 495.400 6.553 536.706 5.836 251.647 5.113 |
-341.523 493.134 5.913 538.267 5.947 245.456 3.853 |
-341.681 494.731 5.786 537.862 5.919 247.074 3.394 |
-341.839 495.587 5.582 537.318 6.143 254.010 3.626 |
-341.998 493.765 5.777 537.183 6.089 244.470 3.455 |
-342.155 494.587 5.992 538.431 5.986 246.694 3.677 |
-342.313 497.675 6.082 536.834 6.276 253.696 5.484 |
-342.472 492.876 6.396 537.358 6.191 250.186 3.888 |
-342.629 493.378 5.939 538.293 6.070 241.731 3.796 |
-342.787 494.693 6.539 537.483 6.194 243.717 5.903 |
-342.945 496.636 5.778 537.354 5.997 257.947 3.494 |
-343.105 494.616 7.059 536.783 6.589 251.939 4.940 |
-343.262 492.926 6.065 537.787 5.937 245.869 3.933 |
-343.420 492.679 6.032 538.287 6.397 241.088 4.617 |
-343.578 493.536 5.489 537.952 5.985 250.480 3.743 |
-343.736 496.105 5.520 537.589 6.041 253.454 3.295 |
-343.894 497.511 5.531 537.375 5.956 248.284 3.480 |
-344.052 492.385 6.001 538.303 5.739 241.592 3.771 |
-344.210 496.793 6.064 538.903 5.767 250.105 3.425 |
-344.369 494.267 5.708 537.109 6.348 252.871 4.035 |
-344.526 493.862 5.924 536.801 6.202 251.478 3.498 |
-344.684 494.248 5.882 537.798 5.961 244.664 4.542 |
-344.842 497.892 5.592 539.108 6.179 247.746 3.560 |
-345.000 493.718 5.732 537.831 5.970 251.357 3.614 |
-345.158 494.167 6.432 536.348 5.840 250.323 3.724 |
-345.316 493.651 5.810 537.523 5.848 248.473 3.679 |
-345.474 493.666 7.344 538.675 6.143 247.714 4.141 |
-345.631 495.136 5.313 537.236 5.846 249.917 3.904 |
-345.789 495.431 5.916 538.222 6.034 245.659 4.443 |
-345.947 495.574 6.031 537.002 5.880 250.076 4.462 |
-346.104 495.565 7.202 537.810 6.687 253.710 4.547 |
-346.262 493.505 6.891 538.138 6.203 248.727 3.667 |
-346.419 495.905 5.862 538.361 5.917 246.567 3.857 |
-346.577 496.889 6.964 538.983 5.983 246.575 4.083 |
-346.734 494.678 5.992 538.339 6.275 248.035 4.411 |
-346.892 494.056 6.320 537.343 6.204 248.690 3.563 |
-347.050 494.590 5.661 537.693 6.025 248.366 4.036 |
-347.207 491.895 6.475 537.066 6.058 249.553 3.695 |
-347.365 495.728 5.833 537.350 6.491 251.175 3.930 |
-347.523 497.097 6.747 537.573 6.024 251.841 3.275 |
-347.680 495.770 6.416 536.585 6.023 247.378 4.589 |
-347.838 494.337 6.215 536.885 6.059 246.743 5.336 |
-347.996 495.343 6.220 537.858 6.290 248.027 4.857 |
-348.154 493.963 6.171 536.528 6.230 250.930 4.216 |
-348.312 495.619 6.289 536.585 6.667 252.779 3.961 |
-348.470 496.246 6.702 538.005 5.933 251.317 3.616 |
-348.628 490.932 6.524 537.070 6.300 245.223 3.636 |
-348.786 494.659 6.116 538.150 5.864 245.522 5.270 |
-348.943 498.326 6.534 537.851 5.835 250.275 3.164 |
-349.102 495.133 6.748 537.718 6.017 248.172 4.667 |
-349.260 490.251 5.724 537.437 6.170 249.101 3.861 |
-349.418 493.642 5.523 538.614 5.874 248.581 3.631 |
-349.576 493.986 6.681 537.856 6.449 246.075 5.020 |
-349.733 497.739 6.115 538.778 6.212 246.420 5.013 |
-349.892 497.567 6.162 538.477 5.872 252.904 4.404 |
-350.050 495.595 5.913 537.344 6.136 251.759 5.135 |
-350.209 493.145 7.323 537.493 6.029 247.157 5.095 |
-350.366 493.081 5.845 536.965 6.162 244.661 4.550 |
-350.524 497.440 6.477 537.979 6.244 248.536 3.808 |
-350.682 496.384 6.328 536.799 5.993 252.545 3.626 |
-350.840 492.873 5.941 537.398 5.982 247.895 3.531 |
-350.998 492.548 6.402 537.404 6.047 248.118 4.044 |
-351.157 493.275 5.760 538.374 6.642 249.811 4.413 |
-351.314 497.792 5.915 537.833 6.155 251.588 3.347 |
-351.472 498.127 5.604 538.038 6.385 248.075 4.653 |
-351.629 496.531 6.618 537.100 6.184 248.990 4.040 |
-351.788 494.615 5.795 538.011 5.754 246.499 4.412 |
-351.945 495.166 8.417 538.000 6.415 248.575 4.912 |
-352.102 490.351 6.935 537.470 6.285 247.435 3.677 |
-352.260 491.843 6.508 536.834 5.917 245.384 5.722 |
-352.418 492.068 6.377 538.948 6.479 247.893 4.804 |
-352.576 491.810 6.997 538.609 5.859 247.008 4.253 |
-352.733 491.158 7.555 537.846 6.496 243.350 5.850 |
-352.890 496.541 6.554 539.078 7.527 250.003 4.574 |
-353.048 498.145 7.004 538.240 6.875 255.780 6.809 |
-353.205 499.131 7.001 537.112 6.473 249.357 4.703 |
-353.362 492.411 6.278 538.311 6.336 243.063 4.086 |
-353.520 491.014 6.803 536.563 6.927 246.550 5.425 |
-353.677 498.460 6.126 537.445 6.280 251.805 4.459 |
-353.835 495.284 6.051 537.574 6.216 249.808 3.945 |
-353.993 495.232 6.581 538.005 5.794 248.778 5.255 |
-354.151 497.022 6.876 537.890 6.423 249.317 4.075 |
-354.308 497.610 5.545 537.858 6.051 249.673 4.174 |
-354.466 494.486 6.217 537.138 6.019 249.606 3.640 |
-354.624 493.674 6.633 538.521 5.714 245.526 3.676 |
-354.782 491.826 5.898 538.215 6.356 248.735 4.807 |
-354.939 492.428 5.767 537.222 7.020 251.397 3.772 |
-355.097 492.314 6.413 537.862 6.635 249.833 4.462 |
-355.254 496.253 6.449 536.478 6.503 248.848 3.584 |
-355.412 499.632 7.092 538.344 6.221 252.758 4.253 |
-355.569 499.786 6.644 538.143 6.544 249.677 4.664 |
-355.726 494.037 6.390 537.831 6.192 246.636 5.226 |
-355.884 486.750 6.208 537.788 5.835 246.816 4.759 |
-356.042 486.527 6.423 537.237 6.767 247.468 3.465 |
-356.199 489.365 6.500 537.412 6.100 246.674 3.553 |
-356.357 495.713 6.051 537.524 6.132 247.066 4.306 |
-356.514 499.117 7.455 537.945 5.832 250.360 3.709 |
-356.672 497.611 6.147 538.539 6.062 250.973 5.394 |
-356.831 495.766 6.160 537.985 5.744 249.689 3.459 |
-356.989 491.177 6.781 538.899 6.998 244.836 4.154 |
-357.147 487.761 6.077 537.869 6.774 245.428 5.076 |
-357.305 490.687 5.448 538.928 6.740 250.174 6.127 |
-357.462 491.776 6.780 538.319 6.322 248.741 4.563 |
-357.620 496.927 6.297 537.283 6.096 248.057 4.942 |
-357.778 499.439 5.978 539.452 6.190 250.120 3.435 |
-357.936 496.514 5.673 538.794 5.961 247.271 3.716 |
-358.094 490.665 5.990 537.378 6.036 247.072 3.948 |
-358.251 493.826 6.699 538.953 6.534 247.850 5.188 |
-358.408 496.208 5.789 538.659 6.056 251.368 3.367 |
-358.566 496.862 5.733 537.606 5.858 250.983 4.537 |
-358.725 496.118 7.202 539.166 6.615 247.269 3.839 |
-358.883 495.691 6.124 537.891 6.410 246.872 5.025 |
-359.041 492.586 6.386 538.329 6.061 247.428 4.156 |
-359.198 491.845 5.890 538.113 6.082 249.034 3.811 |
-359.356 495.918 5.615 537.561 6.409 248.670 3.798 |
-359.514 496.249 7.291 538.105 6.152 248.156 4.202 |
-359.671 497.172 6.215 538.041 5.944 251.821 7.333 |
-359.829 495.021 6.603 538.380 5.835 248.538 4.406 |
-359.986 492.130 5.910 538.133 6.092 248.815 4.977 |
-360.143 491.901 7.270 538.381 6.084 246.588 4.713 |
-360.300 497.669 5.909 537.223 6.154 249.505 3.791 |
-360.457 499.456 5.939 537.552 5.965 251.245 4.300 |
-360.615 497.834 7.394 539.035 5.938 251.612 5.122 |
-360.772 495.948 8.223 538.010 6.635 248.096 4.894 |
-360.929 492.629 6.945 537.640 6.279 247.941 3.572 |
-361.088 489.636 6.521 537.216 6.265 248.289 4.406 |
-361.246 489.046 6.493 537.702 6.071 246.032 4.623 |
-361.403 493.710 7.003 537.297 6.504 247.430 6.059 |
-361.560 495.677 7.029 538.163 6.689 249.404 5.093 |
-361.718 497.656 6.459 537.961 6.007 250.064 4.767 |
-361.876 499.546 5.592 538.019 5.992 252.590 5.434 |
-362.034 498.905 5.917 539.440 6.313 251.575 6.068 |
-362.192 493.829 7.562 538.914 6.266 246.445 4.293 |
-362.349 489.398 6.501 537.079 6.381 247.164 5.544 |
-362.507 492.214 8.298 537.660 6.972 247.461 4.218 |
-362.664 498.612 9.408 537.446 7.002 250.964 4.122 |
-362.822 498.016 6.659 537.684 6.299 250.859 4.070 |
-362.980 496.580 6.177 538.306 6.134 248.028 3.893 |
-363.138 494.325 6.187 537.493 5.890 246.780 3.544 |
-363.296 491.533 6.734 538.815 5.949 247.137 3.798 |
-363.454 490.435 5.728 538.238 5.931 247.671 4.598 |
-363.611 496.134 5.913 537.732 6.019 249.766 3.268 |
-363.769 496.211 5.562 537.617 5.949 251.077 3.379 |
-363.927 495.582 5.775 537.846 5.756 252.310 4.233 |
-364.085 492.475 6.234 537.928 6.172 248.763 4.203 |
-364.243 495.604 5.670 538.099 5.871 247.167 3.777 |
-364.401 497.446 5.666 537.601 6.218 247.761 3.762 |
-364.559 495.754 6.049 536.866 5.785 248.557 4.085 |
-364.716 494.367 6.739 537.928 5.734 248.625 5.055 |
-364.874 495.323 5.809 537.069 5.876 250.096 5.742 |
-365.032 495.863 5.338 537.900 5.864 248.380 3.423 |
-365.190 496.118 5.364 538.189 5.828 250.253 5.158 |
-365.347 493.771 5.727 537.691 5.791 246.022 3.154 |
-365.505 493.667 5.780 538.826 6.230 247.440 4.708 |
-365.663 495.486 5.720 537.948 6.329 250.814 3.897 |
-365.822 492.984 5.894 537.199 6.096 250.168 3.775 |
-365.980 494.229 6.075 538.082 5.838 246.131 4.428 |
-366.137 495.792 6.152 538.650 5.867 241.511 3.650 |
-366.295 499.867 6.059 537.966 6.252 246.045 4.065 |
-366.453 499.808 5.815 536.909 6.029 257.910 3.558 |
-366.612 500.088 5.796 538.629 6.288 248.529 5.338 |
-366.769 494.350 5.979 539.626 6.059 239.465 4.999 |
-366.928 492.583 6.122 539.396 6.367 245.694 4.775 |
-367.086 495.835 5.765 537.174 5.869 257.756 3.347 |
-367.245 496.068 5.838 538.041 6.457 254.127 4.815 |
-367.403 494.460 6.871 538.680 6.409 236.321 5.168 |
-367.561 495.384 6.115 538.306 6.175 243.483 5.529 |
-367.719 498.303 5.995 538.583 5.723 260.094 4.967 |
-367.878 498.173 5.639 536.705 6.301 257.640 3.965 |
-368.036 496.961 6.448 539.217 6.222 245.156 6.100 |
-368.194 494.799 7.238 541.242 6.395 241.491 6.763 |
-368.352 490.858 6.094 537.902 6.350 246.604 4.607 |
-368.509 491.008 6.026 537.939 5.961 253.316 4.184 |
-368.667 497.620 5.869 536.289 6.622 249.173 4.918 |
-368.825 498.066 5.729 539.073 6.255 249.541 4.937 |
-368.982 498.240 6.136 539.600 6.218 249.075 5.391 |
-369.140 496.532 6.706 537.746 6.240 247.500 4.826 |
-369.298 494.085 5.610 538.677 6.301 248.535 3.932 |
-369.456 490.780 5.352 538.086 5.800 246.685 4.059 |
-369.613 491.427 6.092 537.480 6.375 251.056 5.183 |
-369.771 490.574 5.809 538.854 5.718 247.870 5.871 |
-369.929 496.345 6.555 538.048 6.493 247.628 4.936 |
-370.087 496.913 6.409 537.990 5.879 249.506 4.195 |
-370.244 499.389 5.617 538.029 6.168 252.155 4.126 |
-370.402 497.253 5.459 538.020 5.829 250.091 5.344 |
-370.560 498.122 6.213 537.980 5.977 246.250 4.245 |
-370.718 498.891 6.743 538.659 6.208 250.082 3.896 |
-370.875 498.018 6.165 538.556 6.262 252.310 3.427 |
-371.033 494.120 6.401 538.245 5.950 247.623 3.854 |
-371.191 492.611 6.719 539.022 6.368 246.256 3.734 |
-371.349 490.406 6.251 538.580 6.106 247.692 4.030 |
-371.506 491.914 6.292 537.705 6.751 250.266 4.361 |
-371.664 496.069 5.889 537.137 6.314 251.572 4.712 |
-371.822 497.650 6.636 537.711 6.770 251.525 4.628 |
-371.979 499.706 6.063 539.217 6.094 248.735 4.653 |
-372.137 498.607 5.921 538.752 6.066 250.557 4.344 |
-372.295 493.376 7.160 539.107 6.763 249.945 3.901 |
-372.453 493.713 6.634 538.741 6.500 246.529 4.049 |
-372.610 492.397 7.296 538.047 6.872 247.665 3.328 |
-372.767 496.244 6.193 537.690 6.195 249.286 4.085 |
-372.925 499.152 5.587 537.346 5.985 251.762 3.587 |
-373.083 498.691 5.863 538.483 6.176 250.627 3.979 |
-373.241 496.986 7.415 538.254 6.868 250.046 6.433 |
-373.398 490.649 6.175 538.402 5.840 244.280 4.613 |
-373.556 493.686 6.027 538.374 6.357 244.972 4.473 |
-373.714 498.526 6.549 538.293 5.882 246.679 4.044 |
-373.871 502.325 5.994 537.803 5.976 251.936 3.084 |
-374.029 498.333 5.869 537.808 5.814 246.269 4.095 |
-374.187 499.053 5.658 540.338 5.834 244.022 5.046 |
-374.344 499.760 6.324 539.773 6.053 244.630 6.068 |
-374.502 500.377 6.042 538.657 5.906 249.256 4.638 |
-374.659 499.093 6.071 538.956 5.889 251.902 3.463 |
-374.818 499.560 5.744 539.129 5.936 249.449 3.767 |
-374.975 498.705 6.141 540.011 5.834 248.284 4.341 |
-375.133 499.837 5.885 539.400 6.400 247.152 4.716 |
-375.291 500.588 6.185 539.214 5.788 247.271 3.553 |
-375.449 503.165 5.483 537.222 5.732 250.052 3.849 |
-375.606 498.071 6.558 537.612 6.051 245.110 3.809 |
-375.764 504.910 6.397 538.596 6.197 252.661 4.194 |
-375.922 499.889 6.380 538.456 5.823 244.916 5.077 |
-376.080 504.448 5.739 539.394 5.976 247.839 3.483 |
-376.238 504.404 6.220 538.254 5.908 244.808 4.010 |
-376.395 502.614 5.692 540.222 6.219 249.608 3.516 |
-376.553 503.956 6.195 539.262 6.510 245.956 3.880 |
-376.712 506.349 5.671 539.862 6.014 249.309 3.951 |
-376.869 505.783 5.686 539.278 6.255 246.823 3.535 |
-377.027 505.287 5.529 539.492 5.960 245.578 3.500 |
-377.184 505.302 6.382 538.465 6.556 248.815 4.791 |
-377.342 506.373 6.347 538.864 6.553 247.628 4.399 |
-377.499 504.623 5.766 539.378 5.968 244.686 3.979 |
-377.657 504.876 5.543 538.153 6.113 246.876 3.431 |
-377.815 506.718 7.327 539.241 6.156 247.318 3.715 |
-377.973 505.157 5.756 537.962 5.862 244.813 3.487 |
-378.131 509.441 5.553 541.469 6.724 244.638 3.779 |
-378.289 507.954 5.830 538.614 5.924 247.626 4.807 |
-378.446 509.459 6.338 537.806 6.418 248.936 4.379 |
-378.604 507.074 6.537 535.158 6.561 251.509 6.051 |
-378.761 506.660 6.295 542.671 6.263 243.995 5.094 |
-378.919 505.966 6.003 536.426 6.504 249.019 3.751 |
-379.077 509.699 6.057 539.144 6.844 244.760 4.806 |
-379.235 503.877 5.977 537.111 6.068 247.437 4.418 |
-379.392 508.468 5.859 538.251 6.679 247.404 4.446 |
-379.549 507.014 8.044 538.362 6.171 245.654 6.898 |
-379.706 504.950 6.277 538.503 6.524 243.686 4.577 |
-379.863 506.409 7.459 539.335 6.502 245.096 4.541 |
-380.020 507.434 6.663 538.963 6.017 246.250 5.476 |
-380.178 508.634 6.157 537.999 6.521 247.902 4.288 |
-380.337 505.786 5.702 539.430 6.126 246.119 3.396 |
-380.495 507.117 5.959 538.204 6.070 244.571 4.170 |
-380.652 505.611 6.389 537.452 6.410 246.625 4.563 |
-380.810 506.966 7.248 537.444 6.414 246.136 4.754 |
-380.967 505.879 6.622 537.494 6.556 247.541 4.930 |
-381.124 506.898 6.033 538.805 6.276 245.725 3.248 |
-381.282 507.239 6.756 537.398 6.699 245.447 4.667 |
-381.439 509.422 7.252 539.464 6.934 246.834 5.658 |
-381.596 509.924 6.228 537.574 6.552 247.648 5.969 |
-381.754 503.919 6.729 537.435 6.173 246.506 4.831 |
-381.911 505.939 6.885 539.024 6.197 247.385 5.117 |
-382.069 505.039 6.381 538.850 6.146 242.373 4.646 |
-382.227 507.450 5.925 536.478 6.627 248.163 7.359 |
-382.384 504.194 7.573 536.544 6.914 245.211 4.736 |
-382.541 507.472 6.810 538.345 6.492 244.732 5.617 |
-382.699 505.694 6.290 537.433 6.772 245.897 6.672 |
-382.856 507.816 7.877 539.984 6.503 244.728 4.787 |
-383.013 505.598 7.006 539.159 5.990 245.317 4.483 |
-383.169 504.446 6.714 538.381 6.174 244.883 5.223 |
-383.327 510.284 7.537 537.593 6.447 246.798 4.463 |
-383.485 503.732 6.570 539.926 6.205 246.418 4.649 |
-383.642 506.987 6.514 534.299 5.983 247.654 4.779 |
-383.800 505.109 6.813 539.873 6.452 245.766 5.037 |
-383.958 504.951 6.589 536.258 6.107 249.477 4.322 |
-384.116 502.849 6.532 541.302 6.492 244.334 5.440 |
-384.274 501.298 5.868 538.433 6.296 247.183 3.611 |
-384.433 503.813 5.572 539.884 5.954 247.281 3.755 |
-384.591 504.508 6.001 536.038 5.927 250.582 3.551 |
-384.748 498.275 5.852 536.980 5.771 246.605 3.806 |
-384.906 503.082 6.821 538.459 5.927 246.496 5.220 |
-385.063 500.020 6.280 538.174 6.113 247.074 3.689 |
-385.221 500.190 5.716 538.421 6.000 248.340 3.594 |
-385.379 500.651 5.650 537.874 6.100 246.593 3.832 |
-385.538 501.616 6.122 537.198 5.775 248.815 3.973 |
-385.695 499.456 6.231 537.412 5.907 247.618 3.547 |
-385.854 499.294 5.434 538.694 6.133 247.516 3.508 |
-386.011 499.782 5.651 537.556 5.760 248.125 3.342 |
-386.170 497.837 5.838 538.975 5.813 249.031 3.704 |
-386.328 500.108 5.491 538.029 5.781 247.250 3.564 |
-386.485 499.501 5.822 537.940 5.964 250.122 4.039 |
-386.643 498.915 6.026 537.849 5.850 248.501 3.331 |
-386.801 498.949 5.943 537.708 6.063 249.765 3.679 |
-386.960 497.079 5.635 538.347 6.627 244.777 3.860 |
-387.117 498.070 5.963 537.673 5.831 249.957 4.169 |
-387.275 497.330 5.900 537.696 5.800 247.469 3.425 |
-387.433 497.993 5.633 536.407 5.943 251.274 3.652 |
-387.591 499.100 6.111 539.024 6.049 247.352 3.335 |
-387.749 496.651 6.415 537.390 6.006 247.423 3.677 |
-387.907 495.986 5.743 537.683 5.818 248.664 3.422 |
-388.065 495.519 5.901 537.886 6.077 251.596 3.857 |
-388.224 494.975 5.617 537.539 5.759 247.805 3.343 |
-388.382 495.069 6.614 537.855 6.394 248.678 4.372 |
-388.540 497.440 5.858 537.718 5.813 250.006 3.897 |
-388.698 494.604 8.900 537.497 6.365 245.170 4.318 |
-388.856 496.976 7.006 538.615 5.775 247.371 3.569 |
-389.014 495.539 5.793 538.736 5.899 244.433 5.090 |
-389.171 497.455 6.612 537.887 6.314 250.624 4.754 |
-389.329 495.144 5.541 538.308 6.305 246.766 4.535 |
-389.487 495.991 5.952 538.303 6.083 249.917 4.312 |
-389.644 495.679 5.844 538.253 5.970 246.239 4.069 |
-389.802 496.966 5.770 538.102 6.116 249.042 5.779 |
-389.960 496.899 5.555 538.111 5.966 248.040 4.087 |
-390.118 496.109 6.176 538.471 6.128 249.430 3.754 |
-390.277 496.711 6.267 538.614 6.282 249.764 3.852 |
-390.436 496.077 5.969 538.626 6.132 249.567 3.800 |
-390.594 494.430 5.825 538.646 5.862 247.775 3.923 |
-390.751 496.174 6.280 537.516 5.985 248.757 4.319 |
-390.909 495.521 6.294 537.695 5.848 248.447 3.525 |
-391.066 495.075 6.100 537.947 5.746 249.264 3.818 |
-391.224 496.820 9.025 537.379 10.331 250.572 7.647 |
-391.380 495.128 5.622 537.113 6.504 249.015 4.378 |
-391.538 497.041 5.489 537.621 5.875 249.650 6.617 |
-391.695 495.550 5.997 535.616 6.093 249.046 4.228 |
-391.853 496.115 5.483 537.766 5.982 247.090 4.081 |
-392.010 495.051 5.907 536.887 6.135 247.350 3.170 |
-392.169 493.850 6.658 536.299 6.533 249.493 6.483 |
-392.325 495.258 6.231 536.313 5.952 248.834 5.928 |
-392.483 496.192 5.743 534.413 5.980 253.818 4.410 |
-392.641 492.732 6.067 537.114 5.827 246.588 3.468 |
-392.799 497.367 5.461 535.841 5.934 249.455 3.923 |
-392.956 495.993 5.615 536.048 5.898 246.164 5.255 |
-393.114 495.139 6.344 535.020 6.264 249.261 3.461 |
-393.272 494.331 5.481 535.870 6.011 248.862 4.532 |
-393.430 494.613 5.994 536.248 6.098 249.048 4.049 |
-393.588 496.166 5.902 535.852 6.107 250.890 4.632 |
-393.745 493.851 5.846 536.278 6.073 245.528 3.402 |
-393.903 496.618 6.173 535.282 6.095 250.795 3.920 |
-394.061 493.896 6.524 536.382 6.092 247.427 6.566 |
-394.219 498.869 8.277 534.473 7.416 245.384 11.435 |
-394.376 493.888 8.106 535.944 8.115 243.493 11.436 |
-394.533 491.348 6.806 534.289 6.441 243.454 5.487 |
-394.689 493.893 5.938 537.793 6.225 250.124 5.057 |
-394.848 496.768 6.234 537.168 5.836 248.201 4.345 |
-395.005 496.447 6.430 538.761 6.842 252.002 5.328 |
-395.164 496.314 6.361 538.947 6.281 248.020 4.730 |
-395.323 496.633 5.994 535.329 6.465 248.100 3.886 |
-395.481 494.626 6.272 536.793 6.280 247.401 4.592 |
-395.639 493.596 6.481 536.498 6.076 248.024 5.171 |
-395.796 496.546 6.462 536.355 6.115 250.180 3.547 |
-395.954 496.015 7.225 537.243 6.685 248.981 4.908 |
-396.112 496.820 6.112 537.562 6.287 247.269 5.283 |
-396.269 496.038 6.279 539.135 6.084 247.972 3.790 |
-396.428 495.170 6.124 538.451 6.114 249.739 4.010 |
-396.585 494.001 5.862 539.174 5.854 248.477 4.717 |
-396.743 495.710 5.988 538.651 6.744 250.434 4.986 |
-396.901 495.377 5.849 538.136 6.079 249.604 5.055 |
-397.058 497.023 5.875 537.431 6.027 250.756 4.047 |
-397.216 496.610 5.714 538.144 5.922 249.207 3.676 |
-397.373 496.836 6.059 538.391 6.512 246.542 4.156 |
-397.531 495.548 5.950 539.243 5.753 248.515 3.403 |
-397.688 495.845 5.787 538.122 6.157 250.935 4.145 |
-397.846 496.078 5.778 539.321 6.172 248.919 4.301 |
-398.004 496.220 6.016 539.173 5.858 248.719 4.674 |
-398.160 496.112 5.654 538.331 6.027 248.057 3.579 |
-398.318 499.051 6.027 538.843 5.995 249.720 3.318 |
-398.476 498.350 5.834 538.578 5.830 248.967 4.301 |
-398.633 495.453 5.600 538.015 6.187 248.719 4.199 |
-398.791 496.254 5.647 537.860 6.546 249.707 4.293 |
-398.949 497.672 5.981 537.548 5.857 250.887 3.321 |
-399.107 493.756 5.700 536.995 6.192 246.388 3.563 |
-399.265 494.957 5.728 538.100 5.808 249.383 3.507 |
-399.423 499.969 5.670 537.991 5.932 251.663 3.942 |
-399.580 501.019 5.697 537.769 5.996 249.096 3.872 |
-399.739 499.140 5.565 538.397 5.861 248.061 3.433 |
-399.897 496.511 5.479 538.364 5.719 246.350 3.625 |
-400.054 498.275 5.573 537.693 6.138 251.073 5.534 |
-400.212 497.382 5.694 538.757 6.037 252.990 4.362 |
-400.371 496.273 5.701 538.037 5.850 249.509 3.487 |
-400.528 497.092 6.031 538.200 6.239 248.245 3.565 |
-400.686 496.720 5.656 538.432 5.913 250.702 3.294 |
-400.844 496.377 5.416 537.674 5.944 249.347 4.602 |
-401.001 498.453 6.109 537.856 5.768 250.023 4.364 |
-401.159 495.484 5.982 538.338 6.176 249.450 6.542 |
-401.316 497.344 5.452 538.143 6.030 242.844 4.930 |
-401.474 497.493 8.537 538.811 9.629 249.758 7.468 |
-401.630 494.744 5.862 538.578 7.448 241.337 5.673 |
-401.788 496.057 7.022 538.765 6.890 245.883 5.365 |
-401.946 494.140 6.387 537.897 8.762 257.808 4.058 |
-402.105 497.691 5.363 539.049 6.440 256.468 4.109 |
-402.262 495.496 6.224 539.880 7.933 246.504 5.705 |
-402.420 496.155 7.175 539.568 6.568 245.165 5.774 |
-402.577 497.721 6.652 540.095 9.500 246.781 5.670 |
-402.734 498.107 5.919 536.421 7.566 247.347 4.230 |
-402.892 495.551 5.770 538.244 5.919 249.323 3.685 |
-403.050 493.335 5.456 537.862 5.789 246.603 3.294 |
-403.208 495.623 5.604 538.038 5.757 251.606 4.527 |
-403.365 495.836 5.755 538.390 5.784 254.396 3.635 |
-403.523 495.598 6.270 539.924 5.820 242.923 4.114 |
-403.681 493.796 5.840 539.459 5.928 244.769 3.418 |
-403.839 492.967 5.404 538.534 5.924 250.217 3.584 |
-403.997 495.609 5.464 538.505 5.724 251.692 3.264 |
-404.156 493.736 5.485 538.195 6.037 249.486 3.496 |
-404.313 494.717 5.541 538.782 5.774 248.584 3.179 |
-404.472 493.827 6.217 538.387 5.916 247.345 3.417 |
-404.630 491.758 5.373 538.633 5.799 251.243 4.105 |
-404.788 493.367 5.474 537.956 5.794 252.922 3.454 |
-404.946 493.183 5.588 539.059 5.907 247.679 4.224 |
-405.104 493.001 5.341 537.620 5.856 248.506 3.447 |
-405.262 494.670 5.538 538.716 6.002 250.905 4.029 |
-405.419 494.156 5.651 538.837 6.226 247.309 3.330 |
-405.577 495.051 5.854 538.468 6.020 250.163 3.766 |
-405.735 494.930 5.514 538.974 5.751 252.771 3.242 |
-405.894 495.059 6.002 538.599 5.658 247.637 3.496 |
-406.052 495.000 5.621 540.186 5.927 244.226 3.252 |
-406.209 495.720 6.117 539.241 5.956 251.542 3.880 |
-406.367 494.557 5.419 538.512 6.097 251.115 4.311 |
-406.525 498.425 6.609 538.865 5.913 249.031 5.881 |
-406.682 495.044 5.723 538.418 5.913 244.500 4.504 |
-406.840 492.160 5.960 539.554 6.004 247.705 3.545 |
-406.998 494.501 6.091 539.105 6.125 248.907 4.386 |
-407.156 495.165 5.620 538.551 5.844 249.379 3.905 |
-407.313 496.451 5.741 538.235 5.905 252.853 4.097 |
-407.470 495.374 5.874 537.972 5.970 250.128 4.048 |
-407.627 496.113 5.878 539.749 5.920 244.481 3.882 |
-407.785 498.881 5.855 539.987 6.141 249.984 4.510 |
-407.943 498.298 9.402 538.849 6.553 255.639 8.505 |
-408.100 487.933 9.972 537.938 7.375 249.726 9.211 |
-408.258 498.389 9.663 537.809 8.724 250.507 14.277 |
-408.414 495.693 6.984 538.038 7.975 248.865 7.321 |
-408.570 496.306 6.824 538.460 6.343 245.728 4.041 |
-408.727 495.353 7.626 538.684 6.589 245.067 8.034 |
-408.884 497.543 5.690 536.596 6.621 251.820 3.693 |
-409.041 492.165 6.541 537.516 6.403 253.568 6.502 |
-409.199 496.671 5.441 538.965 5.815 250.905 4.345 |
-409.356 493.376 5.906 537.599 6.012 248.219 6.109 |
-409.514 499.293 6.080 538.466 6.109 253.472 4.981 |
-409.671 490.352 6.224 539.894 6.557 239.994 5.154 |
-409.830 493.203 6.196 538.619 5.921 249.509 5.201 |
-409.987 500.332 5.877 537.766 6.203 252.565 4.838 |
-410.144 493.283 5.509 539.567 6.222 243.085 4.461 |
-410.302 496.312 6.135 537.805 6.472 249.150 5.143 |
-410.460 494.483 6.866 538.498 6.242 247.991 3.616 |
-410.619 495.374 5.588 539.725 5.931 241.719 4.638 |
-410.776 493.203 6.020 538.137 5.971 249.257 7.104 |
-410.934 490.252 5.896 537.691 6.052 250.942 7.014 |
-411.090 495.532 5.848 538.146 6.244 250.119 4.413 |
-411.249 495.285 5.343 538.941 5.864 247.931 5.221 |
-411.406 497.242 5.571 537.829 6.047 251.069 6.910 |
-411.564 495.262 5.933 540.188 6.024 245.960 4.771 |
-411.722 497.622 5.434 539.461 5.782 246.149 3.939 |
-411.880 496.656 5.775 536.834 5.816 251.211 3.963 |
-412.038 492.836 5.375 538.448 5.934 251.082 3.759 |
-412.195 494.618 5.459 539.094 5.709 246.550 3.361 |
-412.353 496.706 5.668 538.001 6.029 247.455 4.398 |
-412.511 494.647 5.581 537.970 5.771 249.554 3.431 |
-412.669 494.386 5.651 538.389 5.893 248.865 3.959 |
-412.827 497.233 5.847 541.073 6.018 246.268 5.016 |
-412.984 492.872 6.878 538.330 5.915 243.972 6.098 |
-413.142 492.558 6.739 537.223 6.142 254.209 4.530 |
-413.300 491.485 5.776 539.922 5.824 249.232 4.828 |
-413.458 490.194 6.138 538.739 5.942 246.202 10.799 |
-413.615 487.882 5.843 537.227 6.043 254.402 3.964 |
-413.773 486.588 5.586 536.782 6.069 251.164 4.508 |
-413.931 490.045 5.634 538.087 5.974 251.151 3.478 |
-414.089 482.280 5.705 538.250 5.945 249.571 3.581 |
-414.246 485.282 5.764 538.522 6.364 250.955 3.767 |
-414.404 485.512 5.761 538.455 5.955 249.939 3.805 |
-414.562 479.645 5.772 536.844 6.267 248.749 4.949 |
-414.720 482.366 5.689 536.198 6.091 248.597 3.932 |
-414.878 484.063 5.543 538.322 6.090 249.925 4.917 |
-415.036 480.080 6.622 538.423 5.994 249.519 3.937 |
-415.194 479.390 5.722 536.724 6.292 253.055 5.096 |
-415.353 478.164 5.654 537.937 6.106 252.750 5.384 |
-415.511 475.031 5.942 537.719 6.232 248.047 4.943 |
-415.669 481.410 5.903 538.237 6.077 248.940 3.644 |
-415.827 480.244 5.988 536.352 6.222 250.609 4.384 |
-415.985 477.412 5.924 538.073 7.013 246.166 4.727 |
-416.142 473.374 6.333 537.870 5.963 245.991 7.144 |
-416.299 476.913 5.677 536.218 5.862 253.209 3.668 |
-416.457 476.419 5.189 536.642 5.981 251.602 5.027 |
-416.616 477.014 5.734 537.986 6.049 250.246 4.506 |
-416.774 475.500 5.855 539.829 5.952 246.282 4.906 |
-416.931 476.525 6.210 537.538 5.895 248.782 4.062 |
-417.088 477.255 5.622 538.825 6.094 251.747 3.215 |
-417.246 477.882 5.649 538.068 6.463 249.917 3.446 |
-417.404 475.628 5.683 535.600 6.262 250.269 3.518 |
-417.562 476.766 5.586 537.856 5.725 251.322 3.528 |
-417.720 476.257 5.427 537.388 5.931 249.583 5.323 |
-417.878 477.222 5.413 537.683 5.849 249.415 3.600 |
-418.035 476.132 5.841 538.046 6.191 251.194 3.915 |
-418.193 475.991 6.096 538.020 6.054 251.491 3.740 |
-418.351 477.259 5.492 537.850 6.061 252.184 3.664 |
-418.509 477.442 6.108 538.768 5.765 249.241 3.547 |
-418.667 478.354 5.936 537.437 6.210 250.652 4.008 |
-418.825 476.813 5.687 538.754 6.191 248.896 3.361 |
-418.983 476.728 5.522 538.007 6.068 252.538 3.533 |
-419.141 477.217 5.556 537.440 6.291 248.945 4.980 |
-419.299 476.592 6.835 537.454 6.054 251.269 3.587 |
-419.457 477.155 5.701 538.234 5.809 247.182 3.719 |
-419.614 480.051 5.395 538.162 5.819 252.221 3.585 |
-419.772 478.660 5.748 537.591 6.205 250.622 4.131 |
-419.930 477.046 5.596 538.626 6.482 249.176 3.975 |
-420.087 475.340 5.865 538.746 6.112 251.311 5.129 |
-420.246 476.403 6.141 537.607 6.344 251.913 3.799 |
-420.404 476.824 6.029 537.366 7.493 250.969 5.903 |
-420.562 479.518 5.918 538.533 7.174 253.259 4.710 |
-420.719 475.095 5.781 538.875 7.035 250.252 4.717 |
-420.878 480.100 5.592 538.568 6.522 249.042 3.436 |
-421.036 480.041 6.123 539.425 6.439 250.900 5.550 |
-421.195 478.870 8.392 536.394 7.540 252.499 5.054 |
-421.352 479.898 7.543 538.174 6.736 248.225 4.701 |
-421.509 477.039 7.383 539.101 6.262 249.412 4.271 |
-421.667 478.230 7.018 537.651 6.355 252.574 3.999 |
-421.824 477.092 5.555 537.346 6.340 248.205 4.187 |
-421.982 478.290 5.735 538.433 6.719 249.452 4.848 |
-422.139 480.112 5.861 537.704 5.865 255.444 3.827 |
-422.297 481.891 6.096 538.357 6.080 251.744 4.713 |
-422.454 478.218 5.720 538.503 5.780 243.737 5.292 |
-422.612 477.652 5.781 538.695 6.201 252.387 4.539 |
-422.770 477.436 6.270 536.277 6.217 253.123 4.577 |
-422.928 481.454 5.785 541.072 6.111 254.691 4.427 |
-423.085 479.584 6.401 534.910 6.080 248.756 6.795 |
-423.242 481.005 5.643 537.049 6.031 248.307 5.354 |
-423.400 482.390 5.520 537.330 6.330 252.683 5.091 |
-423.559 481.913 6.405 538.483 6.882 250.106 6.997 |
-423.716 484.079 5.605 538.494 6.062 252.681 3.739 |
-423.874 484.300 5.596 538.855 6.722 249.076 5.152 |
-424.032 484.313 6.665 537.668 6.316 251.750 4.649 |
-424.189 484.813 6.114 538.326 6.164 247.697 4.150 |
-424.347 486.038 6.082 539.023 6.236 248.237 4.711 |
-424.505 486.540 6.580 538.090 6.185 250.552 4.025 |
-424.662 487.265 6.189 538.491 6.405 250.535 3.598 |
-424.820 491.442 6.409 536.894 6.422 250.195 4.848 |
-424.978 491.114 5.952 538.679 5.868 249.342 6.032 |
-425.135 489.721 7.268 538.756 6.943 246.633 5.983 |
-425.293 492.177 6.487 536.667 6.769 249.636 4.359 |
-425.451 491.751 6.122 536.136 7.055 249.626 8.377 |
-425.608 496.777 6.621 537.651 7.151 250.876 4.162 |
-425.765 496.427 7.972 536.116 6.797 247.478 9.327 |
-425.921 492.284 9.378 536.531 8.898 244.534 10.322 |
-426.078 493.872 7.010 532.845 6.263 252.735 4.072 |
-426.235 494.068 7.152 533.038 6.188 251.947 7.317 |
-426.393 500.800 9.252 533.860 8.035 256.289 9.354 |
-426.550 498.638 10.705 532.848 7.628 252.982 7.429 |
-426.707 496.516 8.998 532.878 6.988 244.559 4.464 |
-426.864 497.085 6.170 533.288 6.372 245.135 5.458 |
-427.022 496.180 7.594 525.902 7.644 253.831 6.419 |
-427.179 497.561 7.597 530.309 7.279 249.808 8.649 |
-427.336 495.435 8.348 529.283 7.926 244.118 7.352 |
-427.492 500.714 7.878 532.522 6.718 247.891 9.575 |
-427.649 486.447 8.166 525.955 7.706 241.628 10.730 |
-427.806 502.314 9.389 527.639 6.143 251.106 6.777 |
-427.963 496.553 8.519 520.916 7.165 252.701 6.932 |
-428.119 487.275 7.361 534.699 9.799 238.077 5.738 |
-428.276 510.092 8.421 530.407 8.066 257.320 15.450 |
-428.433 483.810 10.631 530.714 9.274 236.363 12.851 |
-428.589 505.108 7.375 532.887 7.925 249.233 9.588 |
-428.746 493.011 9.743 520.058 8.111 254.942 7.537 |
-428.902 494.890 7.522 529.820 9.433 245.759 6.086 |
-429.059 502.258 6.904 527.968 8.386 250.147 5.563 |
-429.218 487.872 9.560 526.899 7.481 247.291 5.720 |
-429.375 498.578 15.053 522.139 17.130 244.682 10.441 |
-429.531 488.245 19.609 521.791 14.765 246.256 21.223 |
-429.687 496.712 10.847 527.908 10.107 243.852 12.534 |
-429.845 494.117 7.762 521.249 9.675 260.838 7.631 |
-430.001 490.611 11.175 524.132 8.178 235.988 9.607 |
-430.158 493.166 8.309 523.011 8.497 238.519 11.843 |
-430.314 504.271 7.659 528.100 8.292 257.105 6.603 |
-430.472 490.842 7.647 522.161 8.262 238.091 9.540 |
-430.627 503.508 10.339 527.731 9.196 243.110 10.551 |
-430.785 489.315 9.204 531.967 8.529 242.371 10.059 |
-430.942 491.513 7.245 524.229 10.027 249.513 8.007 |
-431.098 493.395 7.860 528.872 7.009 241.595 7.930 |
-431.255 493.603 9.368 524.108 9.044 258.015 12.487 |
-431.412 488.176 11.759 526.421 15.172 241.420 12.958 |
-431.568 500.541 9.504 526.544 9.663 249.914 15.897 |
-431.724 498.085 8.890 523.875 7.215 252.139 7.110 |
-431.881 498.530 8.299 527.348 7.236 242.981 6.012 |
-432.038 494.935 8.914 526.963 7.398 246.469 7.287 |
-432.195 498.709 9.596 528.129 9.602 250.184 9.291 |
-432.351 486.937 10.146 526.591 9.434 249.951 8.589 |
-432.509 498.759 7.870 529.316 7.035 250.709 8.173 |
-432.665 494.017 7.750 525.973 6.804 250.557 5.893 |
-432.823 494.070 7.135 528.299 6.822 242.985 5.828 |
-432.980 499.650 7.453 527.033 7.117 248.409 6.572 |
-433.137 495.406 7.792 528.660 7.189 248.534 6.943 |
-433.294 496.674 6.977 529.026 6.432 246.325 6.022 |
-433.452 496.986 8.879 530.210 6.712 249.583 7.399 |
-433.609 495.839 8.113 528.322 8.352 250.595 9.387 |
-433.766 495.598 7.730 529.573 8.844 250.635 7.270 |
-433.924 495.876 8.142 530.775 6.864 248.086 6.508 |
-434.081 495.548 7.581 529.367 6.639 249.680 6.895 |
-434.238 494.315 6.901 528.523 6.385 247.316 6.074 |
-434.396 489.733 6.913 529.085 8.666 247.253 5.421 |
-434.553 493.057 6.631 529.130 7.769 247.852 6.086 |
-434.710 491.590 6.853 530.241 6.450 249.418 6.038 |
-434.868 491.375 7.396 527.822 7.401 246.324 5.770 |
-435.026 496.183 7.295 527.678 6.529 249.373 6.774 |
-435.183 490.151 7.885 529.156 6.629 245.713 7.489 |
-435.340 493.061 7.445 529.901 6.807 244.967 7.566 |
-435.497 490.350 7.373 529.179 6.713 247.249 7.735 |
-435.655 485.873 7.181 529.011 6.570 248.032 6.868 |
-435.812 490.148 7.221 530.370 7.137 246.410 7.340 |
-435.970 492.781 8.174 529.773 7.756 248.364 7.351 |
-436.126 485.517 8.788 528.837 7.938 244.473 8.706 |
-436.283 489.285 8.404 527.058 6.855 249.114 8.671 |
-436.440 487.832 8.483 525.970 7.769 256.781 7.207 |
-436.597 487.988 8.291 528.189 7.534 243.337 7.297 |
-436.755 491.619 8.434 527.741 7.074 247.293 5.769 |
-436.912 492.926 7.631 525.977 6.928 256.512 6.882 |
-437.070 487.389 7.294 528.529 7.261 238.315 7.483 |
-437.227 491.963 8.276 528.255 7.752 249.553 5.998 |
-437.384 490.879 7.597 527.822 7.077 249.425 8.191 |
-437.541 492.978 8.410 527.798 10.217 248.514 9.516 |
-437.699 494.909 8.367 527.488 8.180 252.205 7.277 |
-437.855 492.649 8.147 527.464 7.014 244.462 6.432 |
-438.012 493.346 7.642 527.624 7.491 247.214 5.768 |
-438.169 489.013 8.547 527.356 7.655 246.022 6.628 |
-438.326 496.240 7.780 526.123 7.896 249.370 6.512 |
-438.483 496.912 7.154 525.691 7.693 250.413 8.577 |
-438.640 493.119 8.501 525.216 7.056 244.654 7.366 |
-438.797 499.551 6.859 524.722 7.015 248.766 6.488 |
-438.954 495.905 7.609 525.907 6.384 245.367 7.387 |
-439.111 494.449 6.813 523.649 6.752 245.723 6.352 |
-439.268 496.014 6.879 524.426 7.114 249.197 6.229 |
-439.426 493.790 7.852 525.954 6.744 247.911 7.827 |
-439.582 495.117 7.084 525.049 7.258 246.549 6.413 |
-439.739 497.541 8.795 525.500 7.853 247.045 8.132 |
-439.895 496.115 7.331 525.105 7.276 247.840 8.789 |
-440.052 494.791 7.026 524.831 6.833 246.648 8.437 |
-440.209 495.327 7.584 522.698 7.696 246.606 7.977 |
-440.365 496.053 7.044 522.607 7.184 246.116 6.928 |
-440.522 497.480 8.136 523.466 7.415 246.191 10.546 |
-440.679 496.334 7.523 524.364 7.373 247.911 7.618 |
-440.836 493.553 8.012 524.033 6.871 246.609 7.668 |
-440.992 492.285 7.078 523.850 7.842 248.606 7.843 |
-441.149 494.692 6.819 524.238 7.244 248.056 6.210 |
-441.307 496.066 10.192 522.272 8.369 245.870 9.645 |
-441.463 496.380 7.313 523.752 6.185 248.338 6.800 |
-441.620 494.733 6.793 523.757 7.156 249.193 8.288 |
-441.777 496.667 8.410 523.747 7.973 247.891 8.080 |
-441.933 496.916 6.512 524.487 6.884 247.088 4.411 |
-442.091 495.109 6.959 523.654 7.229 245.470 5.970 |
-442.249 496.891 6.744 523.646 6.378 245.474 5.278 |
-442.408 494.478 7.353 523.136 7.294 247.924 7.841 |
-442.564 493.794 7.840 523.371 6.547 246.999 4.999 |
-442.721 497.238 6.988 523.003 6.999 246.190 7.850 |
-442.878 493.902 7.165 523.340 7.135 245.101 5.790 |
-443.035 494.789 7.786 521.753 7.181 251.011 8.359 |
-443.192 496.707 7.899 522.747 7.322 249.510 5.839 |
-443.350 495.127 8.433 523.837 7.037 244.975 6.935 |
-443.508 495.091 7.346 522.328 6.809 246.459 5.328 |
-443.665 495.820 6.978 521.423 7.272 248.534 6.115 |
-443.823 496.248 7.533 521.994 7.244 246.295 6.058 |
-443.981 495.062 7.326 521.259 7.526 245.662 6.869 |
-444.137 495.590 7.449 521.702 7.058 244.456 6.569 |
-444.295 496.335 6.796 521.737 6.602 246.834 5.149 |
-444.453 495.043 6.979 520.457 7.739 249.668 5.507 |
-444.611 493.220 7.777 520.194 6.818 246.946 6.079 |
-444.768 494.482 7.476 519.982 7.159 244.619 4.879 |
-444.926 497.164 8.235 519.509 8.637 247.396 6.852 |
-445.083 494.291 7.174 519.795 6.901 246.123 4.576 |
-445.241 495.652 8.090 519.097 8.230 245.421 5.969 |
-445.398 495.766 8.125 518.471 6.892 248.794 7.033 |
-445.555 494.967 6.921 517.994 6.981 247.547 6.099 |
-445.713 494.409 7.194 518.080 7.995 243.985 5.630 |
-445.871 497.024 8.536 517.220 7.186 247.309 5.337 |
-446.029 495.670 7.606 516.252 8.017 246.863 6.376 |
-446.186 494.086 8.685 517.672 8.264 245.538 4.755 |
-446.343 495.370 7.394 517.526 8.036 242.405 4.511 |
-446.500 495.733 9.032 515.985 9.117 247.854 7.096 |
-446.657 494.157 7.530 516.519 7.423 249.368 5.557 |
-446.815 494.181 8.032 515.475 7.959 245.013 5.113 |
-446.972 495.401 7.732 514.054 8.829 243.770 7.330 |
-447.129 497.184 7.977 515.140 7.673 248.327 5.031 |
-447.286 495.211 7.880 514.651 8.482 248.053 5.472 |
-447.443 495.362 7.833 516.706 7.239 245.180 5.050 |
-447.601 495.783 8.105 515.447 7.866 245.231 6.426 |
-447.758 495.537 7.528 513.574 8.358 247.252 5.577 |
-447.915 495.145 8.606 514.765 8.950 246.082 5.896 |
-448.072 495.461 6.334 515.167 6.926 248.080 4.583 |
-448.230 494.784 8.588 515.401 7.817 247.360 4.638 |
-448.387 494.567 6.994 516.264 7.683 244.623 4.729 |
-448.544 494.835 6.545 515.952 7.245 238.876 5.448 |
-448.702 496.208 7.132 516.329 7.004 246.568 4.302 |
-448.859 496.912 7.976 516.323 7.621 248.285 4.259 |
-449.016 496.579 7.518 515.633 8.619 251.092 5.924 |
-449.174 495.185 9.148 517.086 8.205 246.560 5.250 |
-449.331 495.311 8.548 517.540 8.449 242.295 7.260 |
-449.488 495.923 8.605 517.745 7.821 245.282 5.985 |
-449.645 494.589 7.826 517.707 7.988 250.012 5.323 |
-449.802 495.495 6.788 519.047 7.807 248.990 5.126 |
-449.960 495.524 8.067 518.330 8.761 248.369 5.634 |
-450.117 495.975 7.409 519.233 8.331 246.143 6.976 |
-450.275 495.659 6.943 519.962 7.166 246.241 6.052 |
-450.432 495.116 8.420 521.819 7.584 244.082 4.894 |
-450.589 493.561 6.561 519.948 7.389 247.430 6.085 |
-450.747 494.855 7.874 520.189 10.314 247.384 5.190 |
-450.904 494.048 6.779 522.581 6.773 247.023 6.318 |
-451.062 495.830 9.020 522.005 9.795 249.400 5.437 |
-451.219 496.778 7.505 522.260 7.113 247.214 4.992 |
-451.376 495.357 6.502 522.632 6.322 246.572 4.326 |
-451.534 494.603 6.533 523.446 8.010 246.985 5.552 |
-451.691 495.176 7.406 524.534 7.109 246.569 5.563 |
-451.849 494.861 7.162 523.625 7.332 247.825 5.787 |
-452.006 495.268 7.167 523.466 7.923 247.908 5.066 |
-452.163 494.312 6.723 523.674 7.135 247.399 5.412 |
-452.321 494.583 6.574 524.026 7.149 250.814 6.839 |
-452.478 494.485 6.743 524.370 7.939 246.398 5.987 |
-452.635 496.974 6.803 524.593 7.140 248.324 5.203 |
-452.793 495.329 7.287 525.275 7.538 246.463 4.754 |
-452.950 495.473 6.606 525.002 7.803 247.914 5.933 |
-453.108 494.514 7.390 524.310 7.206 248.279 5.810 |
-453.265 494.445 6.955 524.903 7.802 246.912 5.965 |
-453.424 494.274 6.544 525.399 8.327 248.379 6.291 |
-453.580 494.102 6.699 525.214 6.792 249.073 5.248 |
-453.738 494.181 7.035 525.462 7.081 246.880 4.690 |
-453.896 494.511 6.895 525.074 7.564 247.268 5.888 |
-454.053 494.505 7.729 524.630 7.684 247.862 4.863 |
-454.211 495.245 8.040 525.036 8.096 247.538 6.105 |
-454.367 494.272 7.166 524.960 7.665 246.515 4.978 |
-454.524 494.742 7.012 525.059 6.591 249.965 4.765 |
-454.682 494.417 7.843 525.900 8.052 246.159 7.097 |
-454.839 493.654 7.147 525.019 7.349 245.151 5.581 |
-454.996 494.856 7.942 525.010 8.637 250.371 6.046 |
-455.153 495.298 8.012 523.040 9.569 249.093 7.710 |
-455.310 494.083 6.522 524.210 6.790 244.520 5.770 |
-455.467 495.120 7.711 523.922 8.175 248.055 4.736 |
-455.625 493.481 7.741 523.989 7.969 250.260 6.935 |
-455.781 493.594 7.641 523.659 7.244 245.612 4.467 |
-455.938 495.425 6.855 524.176 7.830 244.816 4.654 |
-456.096 494.594 7.560 523.051 7.854 248.248 5.833 |
-456.253 494.155 7.039 522.580 7.186 247.952 5.925 |
-456.411 495.361 7.304 523.545 6.084 246.699 6.196 |
-456.569 493.903 6.138 523.665 6.773 246.897 5.743 |
-456.726 494.879 7.139 521.346 8.542 247.688 4.094 |
-456.883 494.578 6.378 521.803 6.854 246.446 5.303 |
-457.041 495.405 7.029 521.878 6.743 246.914 4.505 |
-457.199 494.634 7.617 521.408 7.753 246.739 4.428 |
-457.357 495.046 6.753 520.624 7.693 246.167 4.696 |
-457.514 494.540 7.769 520.766 6.680 247.671 4.783 |
-457.672 494.595 5.838 519.907 7.600 247.456 4.969 |
-457.829 495.135 8.457 519.019 8.841 246.284 5.416 |
-457.987 494.371 7.445 518.730 7.210 245.722 5.312 |
-458.144 494.583 7.439 519.447 6.955 246.917 5.324 |
-458.302 494.315 6.856 516.624 6.740 247.499 4.598 |
-458.459 494.743 6.300 517.696 6.423 248.145 5.802 |
-458.617 494.167 6.907 518.127 6.375 246.231 4.045 |
-458.775 494.771 6.714 517.261 6.723 246.722 5.443 |
-458.933 495.267 5.983 515.302 7.884 246.307 4.340 |
-459.089 495.842 6.386 516.253 7.421 246.963 5.603 |
-459.248 494.048 7.175 519.522 6.791 246.189 5.192 |
-459.405 495.030 6.173 521.435 6.846 245.881 4.643 |
-459.564 494.310 6.881 517.534 7.253 247.278 5.322 |
-459.721 494.133 8.742 513.715 7.337 246.712 5.226 |
-459.879 494.521 6.648 512.327 7.048 247.247 5.209 |
-460.037 494.395 6.543 512.593 6.084 245.352 6.182 |
-460.195 494.094 6.850 510.125 5.940 245.193 5.019 |
-460.352 494.141 7.573 506.591 8.657 246.261 7.992 |
-460.508 494.591 5.667 507.245 5.764 243.982 3.560 |
-460.666 495.015 5.701 505.932 6.245 247.319 5.055 |
-460.824 494.170 6.468 505.959 6.061 245.293 3.712 |
-460.983 493.661 5.887 505.919 5.841 246.392 3.956 |
-461.141 494.756 5.497 506.009 5.528 244.353 4.285 |
-461.298 495.517 6.823 531.800 6.131 248.663 5.878 |
-461.455 495.985 8.457 549.218 6.134 249.956 8.049 |
-461.612 494.439 5.862 545.552 6.204 249.679 5.125 |
-461.769 492.834 5.620 535.815 5.912 247.666 3.602 |
-461.928 493.318 5.472 539.668 5.934 250.806 3.211 |
-462.086 494.083 5.727 540.086 5.695 249.508 3.248 |
-462.243 493.260 5.233 538.620 5.808 248.115 3.016 |
-462.401 493.772 5.348 540.666 5.663 249.681 3.532 |
-462.559 493.407 5.313 538.606 5.645 250.216 3.022 |
-462.717 493.784 5.485 540.436 5.667 248.852 3.407 |
-462.875 493.857 5.306 539.004 5.682 249.818 3.735 |
-463.033 494.068 5.274 539.850 5.708 250.128 3.051 |
-463.191 493.620 5.333 539.378 5.765 250.301 3.434 |
-463.349 495.276 5.439 539.723 5.700 248.563 4.974 |
-463.507 493.192 5.397 539.697 5.711 247.945 4.407 |
-463.664 493.901 5.283 539.627 5.732 250.609 3.616 |
-463.822 494.439 5.361 539.316 5.643 250.726 3.176 |
-463.980 493.624 5.265 539.743 5.742 248.977 3.616 |
-464.138 494.276 5.286 539.647 5.679 249.279 3.210 |
-464.296 493.722 5.255 539.296 5.714 249.152 3.065 |
-464.454 494.027 5.251 539.463 5.708 249.751 3.501 |
-464.611 494.020 5.240 540.244 5.701 248.867 3.462 |
-464.769 493.860 5.425 539.002 5.650 249.948 3.949 |
-464.926 493.438 5.302 539.610 5.628 249.249 3.273 |
-465.084 493.014 5.282 539.136 5.656 249.932 3.101 |
-465.242 493.770 5.263 539.821 5.675 250.899 3.522 |
-465.400 494.357 5.363 539.688 5.708 249.539 3.747 |
-465.558 495.393 5.303 539.466 5.818 248.895 3.341 |
-465.716 493.924 5.425 539.684 5.650 249.758 3.041 |
-465.874 494.189 5.259 539.196 5.669 250.327 3.367 |
-466.032 494.421 5.349 540.152 5.718 248.903 3.299 |
-466.190 494.384 5.593 540.221 5.611 250.429 4.588 |
-466.347 494.473 5.305 539.562 5.854 250.114 6.009 |
-466.504 494.284 5.382 539.355 5.840 248.141 5.329 |
-466.662 494.472 5.589 540.733 5.719 249.441 3.944 |
-466.819 493.044 5.323 539.567 5.714 249.954 4.704 |
-466.977 493.350 5.330 538.895 5.757 250.079 3.612 |
-467.134 494.283 5.233 540.249 5.777 249.130 4.234 |
-467.292 494.122 5.368 539.402 5.738 247.781 5.266 |
-467.449 493.221 5.323 539.594 5.681 249.827 3.244 |
-467.607 494.382 5.272 539.406 5.757 249.848 3.154 |
-467.765 493.543 5.437 540.274 5.770 249.568 3.710 |
-467.922 493.615 5.304 540.722 5.701 248.965 3.123 |
-468.080 494.226 5.343 539.377 5.669 249.809 3.224 |
-468.239 489.582 9.351 505.003 27.861 245.148 9.851 |
-468.394 494.435 5.949 538.030 5.934 250.241 4.209 |
-468.552 493.464 5.453 538.190 5.825 249.802 3.596 |
-468.709 493.734 5.271 538.071 5.714 248.948 3.380 |
-468.867 493.727 5.184 536.940 5.621 250.699 3.519 |
-469.025 493.657 5.283 537.299 5.818 248.947 3.514 |
-469.183 493.036 5.427 538.483 5.646 248.739 3.311 |
-469.341 493.300 5.351 537.144 5.649 250.247 3.116 |
-469.498 492.773 5.548 537.661 5.677 250.202 2.975 |
-469.657 492.977 9.278 537.906 7.301 248.662 11.306 |
-469.813 493.589 5.532 537.369 5.722 248.936 4.153 |
-469.970 494.525 5.625 538.583 5.723 249.409 3.034 |
-470.129 494.005 5.283 538.035 5.747 250.314 3.368 |
-470.286 494.420 5.332 538.100 5.685 249.893 3.231 |
-470.444 493.664 5.269 538.241 5.758 248.838 3.031 |
-470.602 494.116 5.379 538.022 5.730 250.798 3.519 |
-470.759 493.441 5.273 538.150 5.643 248.258 3.475 |
-470.917 493.354 5.311 537.731 5.762 248.452 3.494 |
-471.074 493.473 5.200 538.057 5.763 250.814 3.119 |
-471.232 493.684 5.249 537.750 5.603 249.568 3.054 |
-471.390 493.636 5.173 537.527 5.753 248.875 3.225 |
-471.548 492.746 5.321 538.695 5.672 248.878 3.090 |
-471.707 492.947 5.414 538.287 5.624 249.478 3.592 |
-471.864 493.759 5.377 537.602 5.648 250.024 3.015 |
-472.023 493.637 5.326 537.626 5.701 248.910 3.192 |
-472.181 492.736 5.231 538.006 5.630 248.699 3.092 |
-472.339 494.267 5.331 538.060 5.641 249.707 3.328 |
-472.497 493.942 5.298 537.990 5.797 249.497 3.309 |
-472.655 493.409 5.248 538.289 5.611 248.534 3.111 |
-472.813 493.214 5.404 538.643 5.734 250.725 6.912 |
-472.970 493.362 5.423 538.096 5.732 250.047 5.556 |
-473.128 493.543 5.486 538.631 5.610 250.300 3.309 |
-473.286 493.635 5.350 537.756 5.675 248.113 3.072 |
-473.444 493.556 5.274 537.667 5.758 250.471 3.172 |
-473.602 493.555 5.197 537.856 5.733 250.414 3.627 |
-473.760 493.145 5.374 537.928 5.653 248.564 3.573 |
-473.917 493.841 5.364 538.159 5.720 248.735 3.079 |
-474.076 493.638 5.308 537.441 5.684 249.117 3.426 |
-474.234 494.906 5.813 538.614 6.356 248.281 4.940 |
-474.391 493.969 5.281 538.496 5.678 248.882 3.099 |
-474.550 494.559 5.323 537.915 5.713 249.898 3.607 |
-474.708 493.885 5.317 537.479 5.720 249.469 3.321 |
-474.865 493.008 5.270 536.324 6.861 249.434 3.622 |
-475.023 493.570 5.283 536.763 5.655 248.494 4.135 |
-475.180 493.905 5.202 537.897 5.640 249.944 3.344 |
-475.338 493.979 5.160 537.719 5.647 249.729 3.335 |
-475.496 493.799 5.282 538.267 5.680 250.027 3.476 |
-475.654 493.328 5.225 538.042 5.737 248.520 3.333 |
-475.811 493.753 5.263 537.550 5.684 249.805 3.129 |
-475.969 493.467 5.419 537.675 5.605 250.438 3.126 |
-476.127 494.274 5.464 537.896 5.707 249.374 3.086 |
-476.285 494.732 5.330 538.159 5.718 248.763 3.294 |
-476.443 493.977 5.194 538.131 5.684 248.807 3.278 |
-476.601 494.389 5.243 537.181 5.734 250.368 2.999 |
-476.760 493.733 5.457 538.071 5.643 249.143 3.621 |
-476.918 493.887 5.257 537.820 5.658 248.721 4.488 |
-477.075 493.748 5.409 538.058 5.578 249.217 3.111 |
-477.233 493.657 5.255 537.620 5.785 249.962 3.059 |
-477.391 493.786 5.230 537.926 5.689 248.799 2.962 |
-477.549 493.757 5.324 537.599 5.602 249.618 3.178 |
-477.708 494.557 5.326 538.046 5.716 248.686 2.977 |
-477.866 494.065 5.379 538.000 5.732 248.696 3.093 |
-478.024 494.160 5.392 537.940 5.663 250.057 3.348 |
-478.181 493.971 5.395 537.749 5.647 248.890 3.064 |
-478.340 494.469 5.402 537.517 5.660 249.808 3.395 |
-478.498 494.314 5.240 537.165 5.779 250.378 2.923 |
-478.656 493.793 5.270 538.131 5.653 249.163 3.360 |
-478.814 494.338 5.318 537.321 5.578 249.481 3.032 |
-478.971 493.903 5.294 537.653 5.794 249.904 3.141 |
-479.130 494.029 5.247 537.946 5.590 249.779 3.166 |
-479.288 493.950 5.222 538.199 5.696 247.887 3.142 |
-479.446 494.549 5.293 537.972 5.748 249.738 3.120 |
-479.604 493.905 5.249 537.949 5.755 249.897 3.449 |
-479.762 494.019 5.344 538.089 5.595 249.228 3.178 |
-479.919 494.050 5.416 538.030 5.744 249.252 3.202 |
-480.077 494.210 5.365 537.580 5.729 249.172 3.018 |
-480.235 494.122 5.206 538.115 5.736 249.871 2.970 |
-480.393 494.531 5.302 538.071 5.721 249.818 3.127 |
-480.551 494.425 5.359 538.600 5.660 248.198 3.100 |
-480.710 494.404 5.345 538.276 5.727 249.212 3.264 |
-480.867 494.194 5.410 538.562 5.562 249.702 3.107 |
-481.026 494.691 5.281 538.575 5.655 250.347 3.320 |
-481.183 494.297 5.325 538.245 5.719 248.963 3.214 |
-481.341 494.143 5.230 539.072 5.639 248.879 3.091 |
-481.499 495.031 5.368 538.280 5.719 249.188 2.923 |
-481.657 495.720 5.383 538.752 5.710 249.601 3.050 |
-481.815 494.887 5.243 538.087 5.815 249.216 3.251 |
-481.972 495.548 5.358 538.910 5.704 249.612 3.205 |
-482.130 494.865 5.373 538.829 5.664 249.356 3.598 |
-482.288 495.338 5.237 538.598 5.617 248.903 3.310 |
-482.446 494.793 5.437 538.466 5.593 248.999 2.987 |
-482.605 494.997 5.313 538.244 5.638 250.090 3.298 |
-482.762 494.580 5.258 538.392 5.735 248.690 3.260 |
-482.920 494.235 5.505 538.144 6.014 248.436 4.281 |
-483.077 494.682 5.304 538.081 5.780 249.724 3.091 |
-483.235 494.956 5.205 537.000 5.816 250.127 2.971 |
-483.393 495.319 5.430 538.150 5.618 250.021 3.642 |
-483.551 494.013 5.680 538.131 5.748 248.700 3.211 |
-483.710 494.640 5.199 538.271 5.686 250.017 3.509 |
-483.868 494.676 5.370 538.202 5.685 249.150 3.446 |
-484.025 494.496 5.261 538.442 6.013 249.601 3.493 |
-484.183 495.095 5.300 538.824 5.868 249.176 3.125 |
-484.341 495.721 5.369 537.768 5.762 249.351 2.994 |
-484.499 495.087 5.329 538.487 5.606 249.153 3.549 |
-484.656 495.570 5.519 538.474 5.676 248.831 3.689 |
-484.814 494.855 5.326 538.124 5.650 249.268 3.575 |
-484.972 496.148 9.399 539.141 7.630 249.392 5.943 |
-485.129 494.951 7.860 538.681 7.100 249.053 5.165 |
-485.286 495.029 5.469 538.116 5.747 248.370 4.624 |
-485.444 495.000 5.352 538.041 5.679 248.843 3.733 |
-485.601 495.130 5.243 538.560 5.737 249.128 3.530 |
-485.758 495.231 5.340 538.465 5.758 249.251 3.122 |
-485.917 495.272 5.331 538.174 5.564 248.542 2.915 |
-486.074 494.792 5.344 538.111 5.644 249.545 3.463 |
-486.232 494.487 5.227 538.631 5.673 249.585 3.299 |
-486.389 494.824 5.328 538.666 5.717 248.895 3.266 |
-486.547 494.788 5.375 538.056 5.686 248.818 3.328 |
-486.705 495.557 5.276 538.720 5.723 249.368 2.979 |
-486.864 495.395 5.271 538.937 5.608 249.893 3.107 |
-487.022 495.054 5.330 537.849 5.735 248.818 3.343 |
-487.180 495.210 5.274 538.168 5.726 249.378 2.840 |
-487.338 494.982 5.201 538.051 5.637 248.963 3.185 |
-487.495 494.869 5.330 537.430 5.633 249.009 3.154 |
-487.654 495.288 5.356 538.414 5.658 249.650 3.110 |
-487.812 495.832 5.247 538.234 5.684 249.956 3.146 |
-487.971 494.988 5.354 538.242 5.724 249.269 3.131 |
-488.129 494.709 5.253 538.702 5.638 249.262 3.266 |
-488.286 494.887 5.367 539.087 5.666 249.112 3.080 |
-488.444 496.358 5.337 539.100 5.705 249.961 2.914 |
-488.602 494.773 5.415 538.641 5.714 248.999 3.402 |
-488.761 496.977 6.352 538.596 5.931 249.540 5.316 |
-488.919 495.509 5.294 537.166 5.730 248.765 3.206 |
-489.077 494.935 5.476 537.731 5.660 249.157 3.096 |
-489.235 494.159 5.403 538.117 5.708 248.641 3.142 |
-489.393 494.971 5.296 537.701 5.721 249.136 3.182 |
-489.552 495.389 5.341 537.127 5.690 249.261 3.250 |
-489.710 494.553 5.359 538.311 5.706 248.962 3.376 |
-489.868 495.515 5.291 537.763 5.656 249.309 3.383 |
-490.026 495.685 5.262 537.507 5.693 249.793 2.957 |
-490.184 494.796 5.316 537.245 5.717 249.547 3.185 |
-490.342 495.207 5.395 537.522 5.693 249.705 3.094 |
-490.500 494.992 5.453 537.935 5.623 248.387 2.988 |
-490.658 495.029 5.207 538.469 5.739 250.353 4.434 |
-490.816 495.460 5.401 538.234 5.566 248.923 3.235 |
-490.974 495.734 5.245 537.872 5.685 249.579 3.146 |
-491.132 495.277 5.307 537.558 5.654 249.355 3.401 |
-491.290 494.842 5.299 537.995 5.649 249.053 3.461 |
-491.448 494.428 5.315 537.509 5.613 249.360 3.177 |
-491.606 495.294 5.339 537.615 5.691 248.973 3.260 |
-491.764 494.713 5.296 538.146 5.612 249.329 3.132 |
-491.922 494.717 5.365 537.871 5.768 249.093 3.107 |
-492.080 495.157 5.316 537.688 5.644 249.160 3.073 |
-492.238 494.861 5.268 537.586 5.654 249.661 3.073 |
-492.396 495.138 5.227 537.625 5.778 249.246 3.243 |
-492.554 495.561 5.268 537.826 5.636 249.092 3.229 |
-492.712 495.275 5.340 537.888 5.688 249.810 2.983 |
-492.870 494.742 5.237 537.628 5.734 249.338 3.029 |
-493.029 495.587 5.286 538.156 5.728 248.753 2.930 |
-493.187 494.065 5.230 537.801 5.683 249.897 3.038 |
-493.345 495.410 5.338 537.358 5.660 249.369 2.996 |
-493.503 495.854 5.281 537.693 5.696 249.473 3.434 |
-493.661 494.808 5.270 537.806 5.628 249.464 2.893 |
-493.819 495.198 5.269 537.928 5.714 249.364 3.230 |
-493.977 495.352 5.270 537.719 5.648 249.143 3.076 |
-494.135 495.023 5.284 538.267 5.613 249.821 3.021 |
-494.293 495.110 5.219 538.262 5.651 250.128 3.113 |
-494.450 495.341 5.300 537.392 5.807 249.011 3.166 |
-494.609 495.403 5.293 538.324 5.643 248.900 3.200 |
-494.766 495.174 5.253 537.233 5.648 249.479 2.980 |
-494.924 495.051 5.206 537.482 5.793 249.374 3.067 |
-495.082 494.640 5.267 537.724 5.825 248.313 2.981 |
-495.240 494.826 5.343 537.607 5.627 249.513 3.097 |
-495.398 495.628 5.263 537.766 5.692 249.865 3.019 |
-495.557 495.286 5.280 537.817 5.586 249.248 3.167 |
-495.715 495.442 5.431 538.548 5.739 249.122 3.027 |
-495.873 495.474 5.232 537.655 5.706 248.991 3.218 |
-496.032 495.494 5.240 538.396 5.648 249.259 2.996 |
-496.189 495.594 5.213 538.264 5.636 249.502 2.916 |
-496.347 495.375 5.273 538.212 5.749 249.555 3.137 |
-496.505 494.943 5.443 538.042 5.626 248.955 2.942 |
-496.663 495.149 5.178 538.390 5.693 249.659 3.171 |
-496.821 495.121 5.272 537.803 5.743 248.916 2.969 |
-496.979 495.511 5.336 538.178 5.692 249.779 3.367 |
-497.137 494.995 5.328 538.261 5.727 248.867 3.327 |
-497.295 494.969 5.171 537.412 5.711 249.938 3.143 |
-497.454 495.619 5.312 537.604 5.677 248.769 3.060 |
-497.612 495.446 5.271 538.066 5.654 249.177 3.023 |
-497.770 495.044 5.233 538.350 5.633 249.581 3.100 |
-497.928 495.670 5.365 538.083 5.650 248.475 3.047 |
-498.085 495.896 5.242 538.360 5.604 249.184 3.082 |
-498.243 496.049 5.287 539.103 5.611 249.631 2.991 |
-498.401 495.450 5.247 538.351 5.676 250.246 3.136 |
-498.559 495.554 5.314 538.263 5.671 249.872 2.989 |
-498.717 495.125 5.295 538.552 5.710 248.788 2.964 |
-498.875 495.791 5.263 537.775 5.641 249.147 3.520 |
-499.033 495.147 5.362 537.817 5.705 249.291 3.194 |
-499.191 495.311 5.309 537.918 5.640 249.132 3.277 |
-499.349 495.083 5.301 538.329 5.757 249.631 3.737 |
-499.506 495.840 5.244 538.223 5.714 249.836 3.196 |
-499.664 494.968 5.264 538.262 5.744 249.268 3.032 |
-499.822 495.189 5.316 537.662 5.652 249.442 3.162 |
-499.980 495.961 5.335 538.246 5.619 249.604 3.203 |
-500.138 495.719 5.340 537.482 5.723 249.236 3.175 |
-500.296 494.857 5.244 537.854 5.635 249.012 3.146 |
-500.454 496.008 5.217 538.018 5.700 249.420 3.086 |
-500.612 495.970 5.256 538.560 5.649 248.884 3.566 |
-500.770 495.029 5.246 538.055 5.729 249.068 2.986 |
-500.928 495.640 5.504 537.860 5.619 249.910 3.179 |
-501.086 495.616 5.326 537.978 5.657 249.569 3.157 |
-501.245 495.276 5.299 538.119 5.682 249.245 3.002 |
-501.402 495.512 5.336 537.841 5.692 248.812 3.195 |
-501.561 495.165 5.336 537.928 5.871 249.268 2.919 |
-501.719 495.251 5.346 537.489 5.681 248.712 3.079 |
-501.877 494.832 5.277 538.194 5.624 248.647 3.019 |
-502.035 495.228 5.352 537.822 5.652 249.016 2.882 |
-502.193 494.802 5.365 537.718 5.634 249.030 3.119 |
-502.351 495.158 5.371 537.797 5.624 248.990 3.145 |
-502.509 494.341 6.700 537.968 7.942 248.499 8.112 |
-502.665 495.393 6.324 537.199 6.057 249.505 3.506 |
-502.823 495.043 5.577 537.672 5.655 249.265 3.467 |
-502.981 494.550 5.463 538.256 5.684 248.532 4.208 |
-503.139 495.745 5.132 537.412 5.701 248.755 3.548 |
-503.297 495.057 5.342 538.004 5.610 249.097 3.453 |
-503.455 495.420 5.247 537.990 5.723 248.650 3.218 |
-503.613 495.244 5.200 538.340 5.779 249.866 3.171 |
-503.771 495.542 5.225 538.403 5.720 249.928 2.974 |
-503.929 495.815 5.397 538.574 5.674 248.549 3.245 |
-504.087 495.468 5.461 538.395 5.730 249.055 3.181 |
-504.245 495.994 5.494 537.974 5.666 249.160 3.131 |
-504.403 495.259 5.432 537.499 5.753 249.161 3.371 |
-504.561 494.612 5.485 538.115 5.605 249.181 3.134 |
-504.719 496.056 5.207 538.501 5.662 249.421 2.876 |
-504.877 495.890 5.347 538.065 5.653 249.864 3.145 |
-505.035 495.428 5.362 538.350 5.580 248.248 3.604 |
-505.193 495.244 5.204 538.563 5.606 249.292 3.068 |
-505.351 495.432 5.270 538.215 5.798 249.632 2.979 |
-505.509 495.634 5.250 537.782 5.747 249.406 3.008 |
-505.667 495.106 5.375 538.087 5.705 248.804 3.035 |
-505.825 495.281 5.366 537.790 5.777 249.588 3.429 |
-505.983 495.692 5.304 537.887 5.717 249.285 3.933 |
-506.141 495.336 5.501 538.668 5.640 249.002 3.153 |
-506.299 495.973 5.296 537.726 5.803 249.520 3.342 |
-506.457 495.569 5.345 537.687 5.743 248.965 3.123 |
-506.615 494.925 5.316 538.056 5.572 248.939 2.919 |
-506.773 495.579 5.557 537.660 5.654 249.429 3.045 |
-506.932 495.085 7.163 538.196 6.346 250.134 5.664 |
-507.089 495.040 5.629 538.222 5.856 249.241 3.244 |
-507.247 495.430 5.281 538.032 5.775 249.252 3.471 |
-507.405 495.444 5.266 537.640 5.667 248.482 3.165 |
-507.563 495.174 5.304 538.396 5.767 249.864 2.954 |
-507.721 495.181 5.373 538.534 5.747 249.178 3.117 |
-507.879 495.791 5.166 538.515 5.737 249.501 3.065 |
-508.037 494.977 5.265 538.535 5.673 248.705 3.005 |
-508.195 496.819 5.787 538.335 5.916 250.277 3.554 |
-508.353 495.128 5.230 538.593 5.706 249.512 3.260 |
-508.511 496.161 5.314 538.056 5.692 249.105 3.037 |
-508.669 495.871 5.312 538.210 5.627 249.471 3.222 |
-508.826 495.638 5.278 538.622 5.741 248.484 3.038 |
-508.984 495.826 5.306 538.286 5.639 249.034 3.212 |
-509.142 495.608 5.309 538.152 5.773 249.580 3.197 |
-509.301 496.036 5.186 537.901 5.592 248.375 3.110 |
-509.458 495.310 5.210 538.349 5.646 250.003 3.146 |
-509.616 495.503 5.259 538.363 5.718 249.700 3.141 |
-509.774 495.385 5.236 538.243 5.711 249.177 3.186 |
-509.933 495.213 5.252 537.712 5.650 249.801 3.046 |
-510.091 495.292 5.384 538.007 5.639 249.518 3.101 |
-510.248 495.102 5.217 538.340 5.688 248.555 3.007 |
-510.406 495.151 5.296 538.703 5.647 249.715 3.174 |
-510.564 496.071 5.344 538.747 5.633 249.087 3.249 |
-510.721 496.110 5.310 538.487 5.707 249.420 2.882 |
-510.879 495.481 5.255 537.924 5.722 249.384 3.162 |
-511.037 495.814 5.439 538.009 5.862 249.893 3.594 |
-511.195 494.958 5.280 538.280 5.735 248.588 3.406 |
-511.353 495.439 5.320 537.892 5.688 249.935 2.974 |
-511.511 495.224 5.250 538.178 5.677 250.039 3.189 |
-511.669 495.182 5.424 537.871 5.636 248.930 3.097 |
-511.827 494.991 5.327 537.848 5.583 250.449 3.330 |
-511.985 495.009 5.130 538.268 5.689 250.204 3.352 |
-512.143 495.570 5.355 538.332 5.870 247.392 3.184 |
-512.301 495.475 5.296 537.893 5.631 250.273 2.983 |
-512.459 495.374 5.349 538.289 5.620 249.472 2.948 |
-512.617 495.613 5.303 537.812 5.653 249.664 3.371 |
-512.774 495.866 5.355 538.548 5.625 248.876 3.090 |
-512.933 495.588 5.304 538.325 5.662 249.718 3.103 |
-513.091 495.785 5.289 538.543 5.723 249.047 3.406 |
-513.249 495.497 5.244 537.565 5.698 250.020 3.154 |
-513.407 495.945 5.381 538.445 5.807 249.440 3.147 |
-513.565 495.349 5.232 538.094 5.698 249.134 3.012 |
-513.722 495.153 5.289 537.781 5.628 248.741 3.048 |
-513.880 496.041 5.291 537.847 5.652 249.097 2.950 |
-514.038 495.340 5.192 537.748 5.628 249.711 3.325 |
-514.195 495.423 5.221 538.137 5.648 249.737 3.246 |
-514.354 495.594 5.275 538.061 5.688 249.117 3.321 |
-514.511 495.975 5.221 538.840 5.656 248.931 3.129 |
-514.670 495.989 5.337 538.258 5.643 248.529 3.052 |
-514.828 495.149 5.241 538.072 5.734 249.555 3.010 |
-514.986 495.351 5.207 538.210 5.680 249.185 2.874 |
-515.144 495.683 5.201 538.282 5.728 249.611 3.071 |
-515.302 496.116 5.314 538.082 5.739 248.876 3.076 |
-515.460 495.631 5.452 538.660 5.596 248.498 3.037 |
-515.618 495.256 5.216 538.316 5.635 249.285 3.104 |
-515.776 496.302 5.285 538.343 5.742 249.072 3.055 |
-515.934 495.663 5.293 538.183 5.782 249.740 3.154 |
-516.092 495.456 5.355 537.691 5.672 249.077 3.039 |
-516.251 494.984 5.207 538.267 5.661 249.380 3.085 |
-516.409 495.419 5.354 537.772 5.691 249.673 3.034 |
-516.567 495.294 5.162 538.027 5.713 249.486 3.063 |
-516.725 495.472 5.217 538.410 5.690 249.104 3.059 |
-516.883 495.324 5.242 538.054 5.722 249.441 3.054 |
-517.041 495.793 5.356 538.670 5.667 248.574 3.126 |
-517.199 495.648 5.279 537.926 5.732 249.295 3.077 |
-517.357 496.006 5.281 537.969 5.693 249.362 3.207 |
-517.515 496.180 5.380 537.919 5.602 248.953 3.194 |
-517.674 495.201 5.249 538.209 5.732 249.349 3.313 |
-517.832 495.562 5.289 538.132 5.674 250.343 3.050 |
-517.990 496.035 5.373 538.281 5.599 249.083 3.028 |
-518.148 494.930 5.268 537.792 5.735 249.080 3.235 |
-518.305 495.869 5.175 538.098 5.637 249.600 3.219 |
-518.463 495.458 5.165 538.291 5.553 249.526 3.107 |
-518.621 495.504 5.336 537.862 5.671 250.025 3.145 |
-518.780 495.655 5.348 538.088 5.682 249.270 3.347 |
-518.937 495.816 5.258 537.800 5.661 248.952 3.059 |
-519.096 495.548 5.325 538.228 5.668 249.139 3.030 |
-519.253 495.305 5.257 538.162 5.718 248.801 3.013 |
-519.411 495.223 5.241 538.471 5.667 249.778 2.965 |
-519.570 495.852 5.306 538.344 5.752 248.657 3.123 |
-519.728 495.738 5.236 537.893 5.680 248.956 3.151 |
-519.887 495.257 5.263 538.098 5.640 249.539 3.147 |
-520.044 494.752 5.240 537.721 5.626 249.285 3.074 |
-520.203 494.637 5.279 537.607 5.693 249.852 3.200 |
-520.361 495.936 5.224 538.166 5.625 249.678 2.961 |
-520.519 495.609 5.299 538.301 5.725 249.366 3.076 |
-520.677 495.566 5.161 538.143 5.646 248.923 3.184 |
-520.835 495.765 5.249 538.131 5.724 249.219 3.198 |
-520.993 495.687 5.315 538.261 5.620 249.212 3.279 |
-521.151 495.706 5.207 538.392 5.607 249.072 3.158 |
-521.309 496.227 5.348 538.444 5.694 249.080 2.990 |
-521.467 495.052 5.359 538.304 5.643 249.630 3.296 |
-521.624 495.810 5.292 538.513 5.616 249.796 2.986 |
-521.783 495.648 5.277 538.315 5.743 250.377 3.063 |
-521.941 495.756 5.301 537.983 5.691 249.283 3.156 |
-522.099 495.687 5.427 538.319 5.647 248.742 3.259 |
-522.257 495.996 5.271 538.043 5.736 248.797 2.922 |
-522.415 495.660 5.375 537.980 5.607 248.848 3.104 |
-522.573 495.286 5.292 537.819 5.604 249.078 3.051 |
-522.731 495.582 5.257 537.858 5.696 249.980 3.223 |
-522.889 495.095 5.268 537.678 5.839 249.809 2.987 |
-523.048 495.790 5.367 538.166 5.631 249.348 3.150 |
-523.206 495.437 5.339 538.111 5.655 249.803 3.035 |
-523.364 495.384 5.298 538.101 5.751 249.318 3.027 |
-523.522 495.153 5.155 537.841 5.795 249.023 3.181 |
-523.679 495.281 5.360 538.738 5.681 249.380 3.085 |
-523.837 495.822 5.297 538.267 5.590 249.113 3.167 |
-523.995 495.638 5.346 537.942 5.728 249.181 2.939 |
-524.153 495.916 5.418 538.769 5.619 248.741 3.294 |
-524.311 495.869 5.294 538.477 5.701 249.277 3.032 |
-524.469 495.608 5.247 538.004 5.703 250.132 3.178 |
-524.628 495.336 5.313 537.570 5.709 249.571 3.467 |
-524.785 495.703 5.289 538.175 5.662 249.935 3.068 |
-524.943 495.367 5.345 538.561 5.747 249.329 3.037 |
-525.101 496.123 5.245 537.825 5.679 248.853 3.153 |
-525.259 495.571 5.302 538.248 5.598 248.958 3.098 |
-525.417 495.455 5.265 538.092 5.772 249.569 3.011 |
-525.575 495.384 5.390 538.441 5.613 248.985 2.915 |
-525.734 495.473 5.305 537.694 5.711 249.779 3.213 |
-525.892 496.004 5.213 538.037 5.861 249.557 3.012 |
-526.050 495.690 5.253 537.930 5.603 249.575 3.036 |
-526.208 495.616 5.425 538.099 5.665 248.835 3.220 |
-526.366 495.676 5.269 537.671 5.706 249.518 3.062 |
-526.524 495.576 5.346 537.606 5.734 249.875 3.146 |
-526.682 495.025 5.378 538.136 5.685 249.198 3.018 |
-526.840 495.640 5.515 538.221 5.649 248.832 3.094 |
-526.998 495.586 5.332 537.742 5.590 249.818 3.384 |
-527.156 495.485 5.260 538.107 5.659 249.098 3.171 |
-527.313 495.404 5.222 538.321 5.647 249.111 3.082 |
-527.471 495.864 5.263 538.193 5.691 248.931 2.975 |
-527.629 495.978 5.273 538.511 5.690 249.749 3.278 |
-527.787 496.109 5.365 538.065 5.614 249.967 3.053 |
-527.946 495.571 5.233 538.190 5.706 249.049 3.081 |
-528.103 495.315 5.318 538.081 5.677 249.170 2.922 |
-528.261 495.573 5.474 538.020 5.655 248.911 3.173 |
-528.419 495.525 5.303 537.720 5.629 248.959 3.121 |
-528.578 495.485 5.333 538.617 5.683 248.979 3.067 |
-528.736 495.354 5.386 538.826 5.630 249.079 2.990 |
-528.895 495.473 5.242 538.248 5.654 250.060 3.122 |
-529.053 495.704 5.313 537.762 5.719 249.540 2.991 |
-529.211 495.587 5.282 538.497 5.655 249.115 3.156 |
-529.369 495.305 5.297 537.615 5.724 248.951 3.068 |
-529.527 494.633 5.324 538.456 5.617 248.669 3.391 |
-529.685 495.686 5.416 538.184 5.686 249.626 2.963 |
-529.842 494.956 5.313 537.961 5.682 249.036 3.146 |
-530.001 495.019 5.293 538.149 5.697 249.500 3.015 |
-530.158 495.880 5.369 537.801 5.611 249.915 3.112 |
-530.317 495.028 5.291 538.298 5.690 250.139 2.972 |
-530.474 495.680 5.274 538.823 5.644 249.921 3.310 |
-530.633 495.106 5.304 538.118 5.700 248.709 3.223 |
-530.790 495.531 5.440 537.971 5.700 249.237 3.045 |
-530.948 494.835 5.396 538.239 5.676 249.612 3.052 |
-531.106 495.508 5.335 537.922 5.695 250.006 2.912 |
-531.265 495.135 6.569 537.609 5.954 248.360 4.721 |
-531.422 495.611 5.546 537.996 5.647 250.013 6.029 |
-531.579 495.426 5.275 538.180 5.611 249.680 3.237 |
-531.737 495.224 5.167 537.571 5.711 250.106 3.422 |
-531.895 495.492 5.432 537.665 5.664 249.831 3.466 |
-532.052 496.534 5.467 538.046 5.692 249.728 3.177 |
-532.211 495.565 5.338 538.370 5.633 250.057 3.253 |
-532.368 494.845 5.368 537.973 5.715 250.050 2.993 |
-532.527 495.258 5.306 537.809 5.701 249.240 2.987 |
-532.685 495.532 5.256 538.288 5.602 249.382 3.057 |
-532.843 495.925 5.420 538.242 5.624 249.623 3.012 |
-533.001 494.979 5.365 538.092 5.700 249.136 3.222 |
-533.159 495.369 5.265 538.450 5.610 249.141 3.297 |
-533.317 495.143 5.356 537.924 5.632 249.811 3.082 |
-533.475 495.381 5.263 538.539 5.790 249.338 3.058 |
-533.633 495.583 5.343 538.885 5.666 249.543 3.043 |
-533.791 496.265 5.290 537.238 5.771 248.995 3.387 |
-533.950 495.322 5.497 538.272 5.666 249.699 3.403 |
-534.108 494.643 5.441 538.582 5.780 249.277 3.172 |
-534.267 495.606 5.356 537.585 6.163 249.292 3.422 |
-534.425 495.836 5.389 539.395 6.018 249.282 3.334 |
-534.583 496.738 5.330 539.884 5.812 249.922 3.261 |
-534.741 494.327 5.517 537.228 6.306 249.179 3.166 |
-534.899 497.273 5.822 545.042 6.520 251.001 3.665 |
-535.057 495.782 5.334 540.090 5.770 250.170 3.244 |
-535.215 496.887 5.324 539.561 5.744 249.741 3.108 |
-535.373 497.228 5.892 540.565 5.804 249.687 3.041 |
-535.531 496.312 5.307 540.325 5.712 249.346 2.863 |
-535.689 496.143 5.251 539.923 5.734 249.163 3.006 |
-535.847 495.941 5.388 540.769 5.699 250.471 3.229 |
-536.005 495.499 5.227 540.217 5.725 249.774 3.291 |
-536.162 496.185 5.277 539.982 5.786 249.847 3.047 |
-536.320 496.391 5.339 540.079 5.629 249.768 3.221 |
-536.478 495.934 5.237 540.160 5.693 249.657 3.087 |
-536.636 496.169 5.293 539.881 5.634 249.416 3.213 |
-536.794 495.821 5.224 540.298 5.718 249.694 3.298 |
-536.952 495.858 5.241 539.943 5.697 249.216 3.094 |
-537.110 496.248 5.233 540.389 5.701 249.572 3.112 |
-537.268 495.952 5.209 540.133 5.683 249.615 2.869 |
-537.426 496.129 5.230 540.401 5.684 249.516 3.427 |
-537.584 496.301 5.249 540.114 5.622 250.275 2.979 |
-537.741 496.093 5.322 541.141 5.717 249.782 2.892 |
-537.899 496.110 5.211 540.471 5.735 249.667 3.085 |
-538.058 496.061 5.257 539.974 5.686 249.726 3.260 |
-538.216 496.340 5.429 540.569 5.672 250.277 3.047 |
-538.374 495.963 5.358 539.785 5.775 249.432 2.947 |
-538.532 496.369 5.314 540.287 5.667 250.094 3.231 |
-538.690 495.723 5.295 539.722 5.650 250.140 3.244 |
-538.848 496.057 5.210 540.377 5.696 249.971 3.115 |
-539.006 496.310 5.405 540.053 5.771 249.389 3.040 |
-539.164 495.883 5.337 539.510 5.639 249.783 3.004 |
-539.322 495.368 5.277 539.885 5.610 249.607 3.097 |
-539.480 495.563 5.328 539.898 5.669 249.656 3.010 |
-539.638 496.205 5.382 540.039 5.646 249.566 3.286 |
-539.796 495.572 5.435 540.120 5.778 249.645 3.123 |
-539.954 496.715 5.362 540.281 5.706 249.756 2.940 |
-540.112 496.137 5.277 540.152 5.633 249.207 3.082 |
-540.270 496.261 5.344 540.091 5.764 250.072 3.248 |
-540.428 495.752 5.360 540.481 5.669 249.940 2.935 |
-540.586 496.607 5.420 540.544 5.657 249.919 3.167 |
-540.744 495.976 5.311 539.575 5.741 250.159 3.148 |
-540.902 495.469 5.372 540.305 5.619 250.211 2.963 |
-541.060 496.324 5.291 539.983 5.654 249.712 3.311 |
-541.218 496.123 5.269 540.259 5.683 250.057 3.137 |
-541.376 496.271 5.335 540.082 5.713 249.740 3.167 |
-541.534 495.712 5.291 540.230 5.757 249.527 2.878 |
-541.692 496.207 5.334 540.092 5.669 249.555 3.150 |
-541.850 495.822 5.400 539.960 5.651 250.165 3.308 |
-542.008 496.328 5.251 540.349 5.635 249.241 3.080 |
-542.165 495.833 5.191 540.473 5.699 249.112 3.044 |
-542.324 496.368 5.391 540.014 5.627 249.801 3.104 |
-542.482 495.813 5.316 539.950 5.724 250.348 3.163 |
-542.640 496.598 5.298 540.289 5.700 249.203 3.249 |
-542.797 496.096 5.323 540.012 5.717 249.762 3.040 |
-542.955 496.371 7.935 540.290 6.893 249.627 5.586 |
-543.113 495.903 5.840 539.573 6.080 249.576 3.993 |
-543.270 496.159 5.886 540.015 5.867 248.665 3.028 |
-543.429 496.391 5.995 539.760 5.656 249.596 3.101 |
-543.587 496.623 5.350 540.667 5.657 249.625 3.265 |
-543.744 496.186 5.319 539.986 5.763 250.236 3.030 |
-543.902 496.581 5.291 540.279 5.784 250.132 3.129 |
-544.060 496.495 5.250 539.932 5.770 248.981 3.044 |
-544.219 495.744 5.400 540.289 5.710 248.799 3.239 |
-544.377 496.147 5.333 540.673 5.618 249.808 3.241 |
-544.535 496.861 5.367 540.846 5.716 249.638 3.121 |
-544.693 495.468 5.421 540.428 5.574 249.976 2.990 |
-544.852 495.914 5.256 540.384 5.689 250.399 3.098 |
-545.010 495.939 5.386 539.883 5.714 249.514 3.227 |
-545.168 495.699 5.348 540.398 5.666 249.225 3.134 |
-545.326 496.107 5.236 539.724 5.676 250.632 3.294 |
-545.483 496.281 5.269 540.067 5.696 249.396 3.310 |
-545.641 496.152 5.353 539.770 5.635 249.333 3.051 |
-545.799 497.111 5.210 539.837 5.653 249.923 3.124 |
-545.957 496.201 5.271 540.078 5.619 250.119 2.996 |
-546.115 496.492 5.199 540.350 5.688 249.601 3.083 |
-546.273 496.074 5.335 540.543 5.621 249.726 3.014 |
-546.431 495.900 5.325 539.755 5.701 249.627 3.188 |
-546.589 496.669 5.195 539.647 5.621 249.386 3.014 |
-546.747 496.566 5.372 540.046 5.682 249.823 3.152 |
-546.905 496.825 5.295 540.470 5.689 249.648 2.947 |
-547.063 495.968 5.265 539.894 5.873 249.936 3.072 |
-547.222 495.549 5.418 539.859 5.739 250.289 3.058 |
-547.380 495.915 5.176 540.508 5.644 250.082 3.112 |
-547.538 496.029 5.297 540.425 5.665 249.640 2.862 |
-547.696 495.730 5.238 540.114 5.694 249.806 3.153 |
-547.854 495.847 5.283 539.621 5.648 249.888 3.101 |
-548.013 495.948 5.330 540.746 5.683 250.228 3.203 |
-548.170 496.179 5.367 540.887 5.724 249.232 3.036 |
-548.329 496.281 5.370 539.938 5.682 249.322 3.051 |
-548.487 495.582 5.396 539.829 5.693 250.113 3.122 |
-548.645 495.715 5.374 539.958 5.874 248.771 2.944 |
-548.803 496.667 5.302 539.949 5.737 249.477 3.171 |
-548.961 496.056 5.258 540.089 5.745 249.594 3.061 |
-549.119 496.090 5.255 540.320 5.711 249.785 3.218 |
-549.276 496.150 5.225 540.143 5.641 249.627 3.186 |
-549.434 495.971 5.396 540.531 5.684 249.736 3.177 |
-549.593 496.579 5.382 540.285 5.716 249.467 2.943 |
-549.751 496.365 5.383 540.322 5.741 249.594 3.230 |
-549.909 496.463 5.331 539.793 5.814 249.595 3.283 |
-550.067 496.104 5.352 540.018 5.825 249.775 3.080 |
-550.225 495.811 5.338 540.250 5.648 249.487 3.099 |
-550.383 496.328 5.311 539.532 5.640 249.054 3.038 |
-550.541 495.753 5.264 540.195 5.717 250.190 3.217 |
-550.699 495.397 5.346 540.102 5.682 249.821 3.249 |
-550.857 495.684 5.308 540.321 5.758 249.168 3.043 |
-551.015 495.536 5.343 539.823 5.681 250.101 3.004 |
-551.174 496.145 5.281 540.008 5.718 249.761 2.994 |
-551.332 496.551 5.266 540.120 5.683 249.957 3.070 |
-551.490 496.265 5.290 539.881 5.730 249.939 3.009 |
-551.648 496.352 5.233 540.068 5.655 249.779 3.047 |
-551.806 496.083 5.284 540.500 5.732 250.437 3.042 |
-551.964 496.290 5.229 540.315 5.732 249.654 3.009 |
-552.122 496.402 5.260 540.743 5.691 249.496 3.090 |
-552.280 496.154 5.237 539.757 5.706 249.584 3.096 |
-552.438 496.361 5.418 540.517 5.794 249.875 3.156 |
-552.596 496.453 5.311 539.635 5.691 249.828 3.128 |
-552.754 496.444 5.279 540.186 5.703 250.148 3.163 |
-552.912 495.464 5.311 539.461 5.612 249.021 2.974 |
-553.070 496.534 5.243 540.804 5.724 248.660 3.023 |
-553.228 496.055 5.245 540.238 5.750 249.156 2.980 |
-553.386 496.510 5.266 540.022 5.637 249.101 3.096 |
-553.544 496.755 5.373 540.220 5.638 249.421 3.005 |
-553.703 496.837 5.307 539.902 5.677 249.534 3.286 |
-553.860 496.068 5.243 539.779 5.605 249.625 3.181 |
-554.018 496.220 5.280 540.957 5.596 249.706 3.045 |
-554.176 496.502 5.286 540.039 5.608 249.717 2.954 |
-554.333 496.665 5.558 540.450 5.618 249.297 3.449 |
-554.491 496.646 5.344 539.834 5.599 249.542 3.286 |
-554.649 495.746 5.260 540.038 5.652 250.025 3.171 |
-554.807 495.867 5.278 540.140 5.698 250.150 2.918 |
-554.966 496.998 5.294 540.231 5.749 250.031 3.213 |
-555.124 496.360 5.332 540.662 5.742 250.180 3.272 |
-555.282 495.923 5.397 540.526 5.732 249.501 3.184 |
-555.439 496.569 5.324 540.315 5.672 249.665 2.947 |
-555.598 496.095 5.292 540.463 5.766 249.696 3.064 |
-555.756 496.410 5.383 540.374 5.747 248.726 3.018 |
-555.914 496.004 5.219 539.843 5.660 249.497 3.049 |
-556.072 496.470 5.252 539.988 5.822 249.574 3.187 |
-556.230 496.184 5.295 539.580 5.724 249.795 3.032 |
-556.388 496.071 5.304 540.315 5.591 249.427 3.047 |
-556.546 496.130 5.305 539.503 5.635 249.944 3.207 |
-556.704 496.551 5.315 540.555 5.775 248.959 3.071 |
-556.863 496.445 5.350 540.765 5.689 249.409 2.991 |
-557.021 496.344 5.261 539.587 5.734 249.984 2.998 |
-557.180 495.893 5.361 539.716 5.588 250.119 3.000 |
-557.338 496.278 5.242 539.787 5.682 249.611 3.199 |
-557.496 496.722 5.360 540.357 5.654 249.766 2.903 |
-557.654 495.967 5.292 539.593 5.673 249.227 3.189 |
-557.812 495.799 5.273 539.416 5.686 249.832 3.325 |
-557.970 496.178 5.347 539.844 5.671 250.608 2.963 |
-558.128 496.571 5.217 539.958 5.714 249.796 2.857 |
-558.286 495.975 5.275 539.459 5.606 249.587 3.121 |
-558.444 495.509 5.240 539.724 5.739 249.725 3.047 |
-558.602 496.195 5.308 540.097 5.728 249.767 3.051 |
-558.760 496.341 5.270 539.991 5.712 249.867 3.015 |
-558.919 496.633 5.408 540.269 5.708 249.268 3.277 |
-559.076 497.136 5.417 540.402 5.755 249.952 3.092 |
-559.235 495.941 5.365 540.024 5.746 249.589 3.090 |
-559.393 496.509 5.333 539.890 5.700 249.515 3.198 |
-559.551 496.605 5.438 539.678 5.687 248.845 2.924 |
-559.709 496.706 5.390 540.216 5.761 249.408 2.994 |
-559.866 496.807 5.363 539.762 5.688 249.974 3.001 |
-560.025 496.708 5.209 539.977 5.732 249.249 2.887 |
-560.183 496.307 5.270 540.149 5.614 249.712 3.159 |
-560.341 497.033 5.232 540.301 5.689 249.537 3.233 |
-560.498 496.440 5.298 539.713 5.708 249.635 3.144 |
-560.656 496.404 5.341 540.087 5.760 249.786 3.171 |
-560.815 496.164 5.280 540.370 5.640 249.657 3.002 |
-560.973 496.451 5.376 539.753 5.680 249.546 3.246 |
-561.131 496.694 5.372 540.397 5.719 249.625 3.046 |
-561.289 496.316 5.319 539.774 5.697 250.116 3.128 |
-561.447 496.293 5.362 540.627 5.733 249.121 3.064 |
-561.605 496.452 5.278 540.626 5.674 249.801 3.069 |
-561.764 496.634 5.277 540.906 5.691 249.828 3.046 |
-561.922 496.206 5.395 540.489 5.661 249.598 3.064 |
-562.080 496.962 5.202 540.215 5.618 249.526 3.143 |
-562.238 496.779 5.318 540.662 5.645 249.125 2.979 |
-562.396 495.777 5.585 540.506 5.665 249.181 3.003 |
-562.555 496.437 5.239 540.095 5.692 249.841 3.174 |
-562.712 496.254 5.317 539.951 5.744 249.358 3.121 |
-562.871 497.012 5.319 540.639 5.617 249.783 3.095 |
-563.029 496.650 5.401 540.516 5.710 249.447 2.987 |
-563.187 495.766 5.398 539.935 5.609 249.814 3.023 |
-563.345 496.117 5.277 540.099 5.783 249.838 3.137 |
-563.503 495.951 5.342 539.521 5.726 249.678 3.070 |
-563.661 496.169 5.488 539.765 5.662 250.136 3.033 |
-563.819 495.571 5.251 540.177 5.717 250.691 3.113 |
-563.977 496.835 5.286 541.191 5.675 249.816 2.852 |
-564.135 496.198 5.272 540.352 5.706 249.698 3.140 |
-564.294 496.762 5.351 540.803 5.674 249.547 3.114 |
-564.452 496.637 5.280 540.768 5.739 249.395 3.165 |
-564.610 496.526 5.391 539.847 5.741 249.313 3.166 |
-564.769 496.275 5.400 540.278 5.715 250.543 3.481 |
-564.927 496.782 5.270 540.482 5.683 249.315 3.103 |
-565.084 496.947 5.373 540.444 5.859 250.053 3.137 |
-565.243 496.759 5.265 540.094 5.619 249.540 3.054 |
-565.401 496.117 5.254 540.671 5.662 249.325 3.096 |
-565.559 496.261 5.261 540.196 5.810 249.803 3.112 |
-565.717 496.632 5.262 540.582 5.712 249.978 3.138 |
-565.876 497.046 5.302 540.295 5.713 249.519 3.083 |
-566.034 496.100 5.319 539.713 5.634 249.995 3.039 |
-566.192 496.601 5.238 540.557 5.722 250.309 3.095 |
-566.350 496.166 5.334 540.205 5.646 249.293 3.097 |
-566.508 496.311 5.555 540.022 5.723 249.952 3.271 |
-566.666 495.883 5.219 540.170 5.601 249.929 3.045 |
-566.824 496.568 5.343 540.101 5.740 249.619 3.077 |
-566.982 496.305 5.325 540.261 5.593 249.876 3.253 |
-567.140 496.983 5.260 540.182 5.651 249.678 3.151 |
-567.298 496.489 5.284 540.131 5.698 249.736 3.273 |
-567.456 496.434 5.205 540.431 5.701 249.877 3.195 |
-567.614 496.314 5.292 540.464 5.699 249.558 3.171 |
-567.772 496.343 5.356 540.254 5.697 249.855 3.292 |
-567.930 496.313 5.278 539.952 5.726 250.008 3.081 |
-568.089 496.283 5.271 540.149 5.628 249.830 3.038 |
-568.247 496.382 5.311 540.661 5.771 248.968 3.028 |
-568.405 496.983 5.270 540.506 5.616 249.949 3.083 |
-568.564 496.519 5.261 539.755 5.672 250.049 3.042 |
-568.722 496.845 5.308 540.917 5.688 250.240 3.185 |
-568.881 496.938 5.232 540.529 5.718 250.322 3.132 |
-569.039 496.979 5.404 540.465 5.681 249.083 3.217 |
-569.197 496.859 5.453 540.324 5.662 249.690 3.131 |
-569.355 496.708 5.287 540.693 5.706 249.246 3.007 |
-569.513 496.927 5.292 540.227 5.757 249.792 3.470 |
-569.671 496.999 5.310 540.422 5.680 250.057 3.137 |
-569.829 496.690 5.244 540.254 5.710 249.040 2.939 |
-569.987 497.216 5.371 540.312 5.752 248.990 3.167 |
-570.145 496.222 5.290 540.283 5.679 250.009 3.028 |
-570.303 496.442 5.309 540.532 5.748 250.410 3.008 |
-570.461 497.044 5.285 541.085 5.672 249.734 3.299 |
-570.618 496.780 5.268 541.010 5.686 249.467 2.994 |
-570.776 496.177 5.219 539.960 5.772 249.344 2.988 |
-570.934 496.491 5.273 540.969 5.765 249.813 3.045 |
-571.093 497.014 5.381 540.749 5.707 250.338 3.233 |
-571.250 497.420 5.352 540.317 5.699 249.883 3.231 |
-571.408 496.494 5.399 540.063 5.706 249.068 3.047 |
-571.566 496.774 5.295 540.130 5.695 250.350 3.222 |
-571.724 496.447 5.282 540.881 5.651 249.783 2.910 |
-571.882 496.394 5.286 540.108 5.699 249.117 3.419 |
-572.040 496.964 5.295 540.181 5.671 249.451 3.356 |
-572.198 496.959 5.294 540.061 5.667 249.404 3.432 |
-572.356 496.409 5.278 541.050 5.749 249.354 2.898 |
-572.513 496.074 5.314 540.300 5.661 249.503 3.305 |
-572.671 496.170 5.273 540.453 5.639 249.315 3.312 |
-572.829 496.411 5.376 539.824 5.769 249.433 3.087 |
-572.987 496.534 5.378 540.098 5.670 249.604 3.046 |
-573.145 496.475 5.280 540.331 5.792 250.046 3.094 |
-573.304 496.024 5.293 540.083 5.754 249.060 3.158 |
-573.462 496.490 5.245 540.900 5.688 249.660 3.102 |
-573.620 496.274 5.271 539.879 5.690 248.886 2.995 |
-573.778 496.322 5.319 540.708 5.656 249.448 3.126 |
-573.936 496.233 5.322 540.737 5.810 249.964 3.132 |
-574.094 496.332 5.343 540.127 5.727 250.069 3.035 |
-574.252 496.843 5.276 540.021 5.677 249.040 2.986 |
-574.410 496.328 5.279 540.080 5.679 249.660 3.212 |
-574.568 495.933 5.209 540.160 5.666 250.366 3.210 |
-574.726 495.899 5.286 539.991 5.667 249.193 3.063 |
-574.884 496.039 5.448 540.009 5.754 249.541 2.873 |
-575.042 496.690 5.329 540.150 5.708 249.735 3.080 |
-575.199 496.656 5.348 540.121 5.698 250.317 3.014 |
-575.358 496.946 5.286 540.241 5.618 249.953 3.103 |
-575.516 496.699 5.317 540.422 5.753 249.489 3.208 |
-575.674 496.487 5.316 540.834 5.682 249.204 3.024 |
-575.832 496.324 5.327 540.118 5.690 249.462 3.171 |
-575.990 496.793 5.369 540.441 5.643 249.834 3.031 |
-576.148 496.808 5.367 540.004 5.682 249.778 3.219 |
-576.306 496.598 5.351 540.480 5.712 249.447 2.957 |
-576.465 496.496 5.324 540.284 5.656 249.654 3.094 |
-576.623 496.794 5.179 540.072 5.861 249.696 3.157 |
-576.781 496.798 5.274 539.970 5.731 249.566 3.114 |
-576.939 497.128 5.399 540.329 5.642 250.085 3.096 |
-577.097 496.871 5.286 540.563 5.664 249.020 3.140 |
-577.255 496.008 5.238 540.175 5.811 249.390 3.077 |
-577.413 496.990 5.290 540.521 5.717 250.283 3.128 |
-577.571 496.479 5.358 540.565 5.794 250.472 2.972 |
-577.730 496.474 5.342 539.575 5.653 250.084 3.110 |
-577.888 496.334 5.253 540.235 5.634 249.860 3.047 |
-578.046 496.193 5.269 540.122 5.891 249.088 3.050 |
-578.204 496.531 5.324 540.381 5.716 250.330 3.023 |
-578.362 496.635 5.332 540.103 5.687 249.823 3.108 |
-578.520 496.026 5.203 541.161 5.617 249.588 3.046 |
-578.678 496.420 5.247 540.701 5.666 249.985 3.139 |
-578.837 497.134 5.350 540.067 5.779 249.729 3.080 |
-578.994 496.311 5.349 540.320 5.633 249.627 3.099 |
-579.153 496.543 5.399 540.633 5.657 249.836 3.164 |
-579.311 496.705 5.244 540.326 5.634 249.638 3.053 |
-579.469 496.737 5.346 540.113 5.674 249.306 3.024 |
-579.627 496.847 5.276 540.211 5.711 250.133 3.057 |
-579.785 497.018 5.218 540.242 5.721 249.501 3.009 |
-579.943 496.940 5.231 540.412 5.697 250.255 3.131 |
-580.101 496.779 5.239 540.174 5.760 249.552 2.934 |
-580.259 496.837 5.447 540.381 5.799 249.715 3.123 |
-580.417 496.338 5.375 540.163 5.786 249.497 2.995 |
-580.575 496.943 5.270 539.851 5.870 249.284 3.113 |
-580.733 496.799 5.326 540.748 5.661 249.682 2.991 |
-580.891 496.868 5.281 540.457 5.622 249.896 3.045 |
-581.049 497.728 5.419 541.054 5.725 249.888 3.243 |
-581.207 497.067 5.300 540.300 5.768 249.388 3.265 |
-581.365 496.870 5.222 539.903 5.580 249.663 2.973 |
-581.523 496.328 5.213 540.319 5.720 249.306 3.080 |
-581.681 496.323 5.254 540.633 5.747 249.533 2.876 |
-581.839 497.083 5.278 540.026 5.681 249.575 3.190 |
-581.997 496.670 5.359 539.940 5.733 250.055 2.924 |
-582.155 496.376 5.301 540.809 5.723 249.610 2.975 |
-582.313 496.763 5.238 539.968 5.642 249.126 3.234 |
-582.471 496.227 5.256 539.999 5.631 249.631 2.854 |
-582.629 496.972 5.339 539.970 5.697 249.396 3.234 |
-582.787 496.679 5.305 540.449 5.687 250.163 2.956 |
-582.945 495.986 5.376 540.974 5.751 249.251 2.974 |
-583.103 496.819 5.263 540.459 5.714 250.712 3.017 |
-583.261 496.038 5.413 540.324 5.591 250.037 3.042 |
-583.419 496.880 5.257 540.953 5.814 249.400 3.013 |
-583.578 496.648 5.312 539.859 5.682 249.594 3.047 |
-583.736 497.136 5.295 541.328 5.693 249.855 3.101 |
-583.894 496.791 5.293 540.383 5.643 250.348 2.830 |
-584.052 496.887 5.302 540.533 5.712 250.333 3.004 |
-584.210 496.668 5.217 540.465 5.759 249.593 3.011 |
-584.368 496.936 5.327 540.054 5.725 249.275 3.003 |
-584.526 496.539 5.249 540.700 5.661 249.452 3.176 |
-584.684 496.725 5.396 540.527 5.753 250.324 3.003 |
-584.842 496.747 5.398 540.295 5.761 249.903 2.970 |
-585.001 496.517 5.265 540.593 5.659 249.499 3.314 |
-585.158 496.265 5.223 540.746 5.781 249.545 2.948 |
-585.316 496.442 5.327 540.457 5.778 249.805 3.036 |
-585.475 496.114 5.324 540.884 5.737 249.898 3.361 |
-585.632 496.921 5.410 539.988 5.767 249.788 2.931 |
-585.791 496.669 5.398 540.409 5.692 249.857 2.964 |
-585.950 496.656 5.234 540.164 5.625 250.058 3.070 |
-586.108 497.246 5.478 539.951 5.662 250.170 3.202 |
-586.266 496.812 5.306 539.999 5.599 249.301 3.307 |
-586.423 496.808 5.330 540.090 5.654 249.983 3.247 |
-586.582 496.198 5.390 539.720 5.616 250.239 3.140 |
-586.740 496.452 5.309 540.127 5.734 249.962 2.981 |
-586.898 496.154 5.302 540.331 5.866 250.099 3.147 |
-587.057 496.551 5.368 540.263 5.661 249.811 3.238 |
-587.215 495.725 5.321 539.922 5.700 249.698 3.174 |
-587.373 496.357 5.285 540.879 5.706 249.657 3.157 |
-587.531 496.613 5.290 540.538 5.740 249.716 3.225 |
-587.689 495.856 5.414 541.265 5.702 249.107 3.032 |
-587.847 496.448 5.291 540.412 5.698 249.691 3.115 |
-588.005 496.544 5.369 540.714 5.784 249.086 3.297 |
-588.163 497.225 5.350 540.577 5.700 250.220 2.970 |
-588.322 496.692 5.376 540.395 5.687 250.372 3.192 |
-588.479 496.406 5.396 540.304 5.776 249.043 2.911 |
-588.638 496.854 5.304 540.873 5.678 248.990 3.154 |
-588.796 495.728 5.275 541.078 5.714 250.059 2.902 |
-588.954 496.667 5.346 540.840 5.807 250.200 3.219 |
-589.112 496.586 5.316 540.838 5.663 249.712 3.200 |
-589.269 496.115 5.369 541.058 5.612 248.927 3.075 |
-589.427 496.661 5.270 540.180 5.785 249.579 3.094 |
-589.585 497.456 5.345 540.531 5.795 250.305 3.134 |
-589.744 496.274 5.647 540.745 5.667 249.823 3.262 |
-589.902 497.312 5.341 540.397 5.624 249.418 3.094 |
-590.059 497.533 5.278 540.214 5.569 249.814 3.212 |
-590.217 497.135 5.294 540.442 5.695 249.858 2.954 |
-590.375 496.301 5.362 540.394 5.753 249.348 3.407 |
-590.533 496.773 5.269 540.264 5.725 249.353 3.334 |
-590.691 496.557 5.272 540.482 5.690 249.733 3.052 |
-590.849 497.545 5.351 540.664 5.681 250.107 3.002 |
-591.007 496.015 5.270 540.356 5.663 250.261 3.236 |
-591.165 496.770 5.310 540.353 5.724 249.472 3.028 |
-591.323 497.037 5.301 540.363 5.747 250.494 3.089 |
-591.481 496.650 5.323 540.613 5.666 249.204 3.188 |
-591.639 497.216 5.304 540.246 5.688 250.212 3.077 |
-591.797 496.332 5.315 540.472 5.799 249.532 3.615 |
-591.955 497.033 5.278 540.574 5.665 249.575 3.056 |
-592.113 496.700 5.361 539.845 5.643 250.325 3.047 |
-592.271 496.277 5.512 540.218 5.721 249.443 2.933 |
-592.429 496.632 5.386 540.072 5.627 249.214 3.023 |
-592.587 496.846 5.216 540.150 5.714 249.782 2.945 |
-592.745 495.748 5.390 539.731 5.672 249.437 3.242 |
-592.903 496.607 5.312 540.607 5.825 250.064 3.024 |
-593.061 496.256 5.252 540.616 5.661 250.360 3.148 |
-593.219 496.562 5.278 540.416 5.674 249.893 2.864 |
-593.377 496.625 5.308 540.454 5.714 250.058 3.312 |
-593.535 496.816 5.322 540.634 5.785 249.790 3.059 |
-593.694 496.818 5.408 540.306 5.693 250.367 3.028 |
-593.852 495.728 5.355 540.193 5.699 249.913 3.201 |
-594.010 496.517 5.274 541.092 5.710 249.399 2.876 |
-594.168 496.525 5.308 540.920 5.636 250.174 3.065 |
-594.326 496.275 5.329 540.839 5.748 249.601 3.220 |
-594.484 496.512 5.358 540.758 5.772 249.726 3.024 |
-594.642 497.065 5.217 540.897 5.672 249.577 3.099 |
-594.800 496.390 5.273 540.269 5.791 249.515 3.102 |
-594.958 496.653 5.469 540.572 5.708 250.145 2.955 |
-595.116 496.096 5.278 540.415 5.705 249.951 3.105 |
-595.274 496.721 5.356 540.544 5.828 249.539 3.219 |
-595.432 496.737 5.300 540.935 5.668 249.275 3.155 |
-595.591 496.427 5.435 539.859 5.606 249.812 3.048 |
-595.749 497.034 5.187 540.048 5.661 249.658 3.032 |
-595.907 496.750 5.251 540.090 5.647 249.856 3.181 |
-596.064 496.707 5.348 540.371 5.616 249.138 3.064 |
-596.223 496.497 5.353 539.943 5.698 250.471 2.987 |
-596.381 496.685 5.298 540.349 5.632 249.594 2.965 |
-596.539 496.786 5.302 539.953 5.778 249.335 3.203 |
-596.697 496.987 5.334 540.009 5.714 249.183 3.031 |
-596.855 496.589 5.274 540.410 5.769 249.851 3.072 |
-597.013 496.565 5.359 540.244 5.669 250.368 2.802 |
-597.171 497.015 5.333 540.582 5.691 248.923 3.223 |
-597.329 497.070 5.233 540.525 5.673 250.609 2.990 |
-597.487 496.550 5.313 540.205 5.688 249.426 3.113 |
-597.645 496.575 5.292 540.432 5.647 250.024 3.144 |
-597.803 496.245 5.205 540.654 5.816 249.790 3.123 |
-597.962 495.802 5.274 539.866 5.649 249.927 3.391 |
-598.120 496.038 5.298 540.418 5.690 249.849 3.189 |
-598.278 496.530 5.292 540.204 5.788 249.768 3.143 |
-598.436 496.205 5.325 539.702 5.736 250.007 3.011 |
-598.594 496.252 5.233 540.327 5.649 249.610 3.278 |
-598.751 496.832 5.232 541.193 5.693 249.906 3.015 |
-598.909 496.688 5.374 539.642 5.748 249.799 2.845 |
-599.067 497.036 5.279 540.476 5.603 249.938 3.037 |
-599.226 496.600 5.302 540.194 5.633 250.319 3.297 |
-599.383 496.456 5.322 540.181 5.673 250.363 3.070 |
-599.541 496.724 5.434 540.831 5.685 250.413 3.315 |
-599.699 496.367 5.360 540.778 5.711 250.614 3.011 |
-599.858 496.583 5.410 540.667 5.645 249.416 3.262 |
-600.015 497.015 5.311 540.186 5.664 249.624 2.992 |
-600.173 497.070 5.516 541.111 5.703 249.306 3.144 |
-600.331 496.650 5.244 540.841 5.724 249.833 3.019 |
-600.489 497.556 5.387 540.458 5.617 249.418 2.887 |
-600.647 496.595 5.269 540.314 5.750 249.474 4.076 |
-600.804 496.865 5.246 540.253 5.681 249.764 3.501 |
-600.962 496.358 5.310 540.352 5.651 249.277 3.151 |
-601.120 496.833 5.245 540.223 5.623 249.692 3.223 |
-601.278 496.778 5.245 540.532 5.667 249.046 3.268 |
-601.436 496.617 5.310 540.735 5.683 250.040 2.984 |
-601.594 496.726 5.265 540.637 5.640 250.010 2.996 |
-601.752 497.577 5.393 540.416 5.775 249.710 2.945 |
-601.911 496.405 5.183 540.754 5.738 250.067 3.237 |
-602.068 497.314 5.254 540.727 5.633 249.610 3.041 |
-602.226 496.593 5.339 540.397 5.662 250.056 3.049 |
-602.385 496.735 5.228 540.134 5.775 248.770 3.144 |
-602.543 496.767 5.199 539.971 5.779 250.147 3.106 |
-602.701 496.677 5.223 540.689 5.612 250.351 3.156 |
-602.859 496.526 5.245 540.586 5.702 249.593 3.287 |
-603.017 496.615 5.249 540.295 5.774 249.055 3.303 |
-603.175 496.536 5.374 540.103 5.701 250.010 3.236 |
-603.334 497.045 5.256 539.731 5.717 249.680 3.094 |
-603.492 496.910 5.280 540.747 5.763 249.696 3.058 |
-603.650 496.729 5.469 539.927 5.632 248.946 2.922 |
-603.808 496.957 5.238 540.059 5.723 250.069 3.075 |
-603.967 496.529 5.209 539.870 5.711 250.290 3.184 |
-604.125 497.065 5.305 540.578 5.619 250.252 2.903 |
-604.283 496.820 5.349 540.345 5.711 249.602 2.886 |
-604.441 496.558 5.406 540.673 5.688 249.726 2.974 |
-604.599 496.625 5.242 540.546 5.645 249.797 3.128 |
-604.757 496.566 5.211 539.865 5.632 248.848 3.040 |
-604.915 496.935 5.225 540.068 5.669 250.218 2.978 |
-605.073 497.059 5.373 540.070 5.631 249.502 3.062 |
-605.231 496.600 5.327 540.720 5.717 249.385 3.027 |
-605.389 496.736 5.317 540.297 5.725 249.313 3.296 |
-605.547 497.047 5.313 540.793 5.726 250.143 3.092 |
-605.705 496.490 5.214 541.048 5.702 249.791 3.020 |
-605.862 497.014 5.328 540.620 5.690 249.827 2.980 |
-606.020 497.070 5.408 541.006 5.703 249.798 3.064 |
-606.178 497.190 5.257 540.660 5.752 249.407 3.101 |
-606.336 496.711 5.264 540.196 5.622 249.924 3.335 |
-606.495 496.547 5.293 540.192 5.769 249.859 3.006 |
-606.653 496.955 5.269 540.422 5.725 250.068 3.017 |
-606.811 496.899 5.331 540.464 5.676 249.540 3.044 |
-606.969 496.749 5.306 540.264 5.632 249.145 3.129 |
-607.127 496.637 5.220 540.342 5.731 249.351 3.073 |
-607.285 496.466 5.443 540.733 5.851 249.733 2.942 |
-607.444 495.924 5.246 540.477 5.757 249.897 3.196 |
-607.602 495.849 5.395 539.954 5.686 250.078 3.147 |
-607.760 496.718 5.382 540.599 5.752 249.600 3.317 |
-607.917 496.107 5.268 540.136 5.681 249.976 3.052 |
-608.076 496.391 5.285 539.711 5.699 249.739 3.401 |
-608.234 496.803 5.360 540.327 5.717 249.437 3.279 |
-608.391 496.218 5.459 540.203 5.714 249.594 2.954 |
-608.549 496.322 5.417 540.372 5.707 249.295 3.109 |
-608.707 496.943 5.300 540.933 5.755 249.162 3.029 |
-608.865 496.459 5.333 540.469 5.646 249.671 3.208 |
-609.023 496.794 5.221 540.344 5.653 249.506 3.178 |
-609.181 496.877 5.459 540.343 5.712 250.125 3.246 |
-609.339 497.258 5.341 540.243 5.738 249.291 3.301 |
-609.496 496.602 5.240 540.192 5.693 250.112 2.998 |
-609.654 496.136 5.383 540.592 5.768 249.621 3.197 |
-609.812 496.521 5.192 540.926 5.615 250.356 3.176 |
-609.971 496.685 5.324 540.569 5.799 249.703 3.099 |
-610.129 496.756 5.256 540.435 5.693 249.107 3.061 |
-610.287 497.017 5.344 540.434 5.674 249.901 3.125 |
-610.445 497.030 5.298 540.064 5.670 249.759 3.139 |
-610.603 496.750 5.268 540.320 5.767 249.637 3.196 |
-610.761 496.757 5.223 540.483 5.705 249.736 3.078 |
-610.919 496.997 5.280 540.494 5.583 250.017 3.278 |
-611.078 496.769 5.338 540.324 5.689 250.540 3.166 |
-611.236 497.457 5.261 540.703 5.734 249.205 3.210 |
-611.394 497.084 5.282 540.397 5.759 249.842 3.078 |
-611.552 496.530 5.351 540.984 5.692 249.568 3.311 |
-611.710 496.575 5.335 540.699 5.724 250.025 3.199 |
-611.868 497.015 5.246 540.287 5.674 249.380 3.071 |
-612.026 497.150 5.239 540.883 5.727 249.803 3.022 |
-612.184 497.131 5.222 540.828 5.720 249.918 2.881 |
-612.342 497.071 5.353 540.398 5.784 249.189 3.039 |
-612.500 497.040 5.283 540.914 5.717 250.041 2.999 |
-612.658 496.630 5.258 540.789 5.654 249.540 3.093 |
-612.816 496.976 5.268 540.567 5.686 249.435 3.338 |
-612.974 496.819 5.452 540.515 5.753 249.574 3.038 |
-613.132 497.028 5.298 539.935 5.776 249.735 3.035 |
-613.290 496.600 5.431 539.659 5.674 249.977 3.222 |
-613.449 496.776 5.275 539.906 5.705 249.399 3.149 |
-613.607 496.607 5.229 540.549 5.711 249.444 2.991 |
-613.766 497.566 5.293 540.085 5.765 249.574 3.142 |
-613.924 496.825 5.329 540.510 5.616 249.695 3.144 |
-614.082 496.788 5.266 540.845 5.660 249.776 3.183 |
-614.240 496.737 5.238 540.998 5.682 249.437 2.975 |
-614.399 496.707 5.290 539.700 5.763 249.204 3.317 |
-614.556 496.117 5.283 540.327 5.581 249.202 3.015 |
-614.714 496.721 5.311 540.593 5.652 250.272 3.153 |
-614.872 497.417 5.383 540.496 5.668 249.452 2.941 |
-615.031 496.984 5.193 539.894 5.678 249.454 3.066 |
-615.188 496.439 5.380 540.379 5.699 250.094 3.069 |
-615.346 496.634 5.339 540.683 5.650 249.730 3.041 |
-615.504 496.976 5.392 540.446 5.652 250.037 3.073 |
-615.663 496.719 5.273 540.454 5.737 249.970 3.162 |
-615.821 496.727 5.247 540.904 5.772 249.209 3.028 |
-615.979 497.047 5.372 541.319 5.716 250.742 3.085 |
-616.137 496.820 5.231 540.863 5.666 249.167 3.164 |
-616.296 496.588 5.264 540.828 5.690 249.741 3.107 |
-616.454 497.685 5.272 541.138 5.689 249.767 3.342 |
-616.612 496.836 5.290 540.741 5.667 249.357 3.149 |
-616.770 496.728 5.277 539.827 5.722 250.603 3.055 |
-616.928 496.607 5.297 540.358 5.660 249.936 3.105 |
-617.086 496.876 5.301 540.743 5.831 250.479 3.150 |
-617.245 496.978 5.310 540.607 5.707 250.044 3.030 |
-617.403 496.819 5.235 540.576 5.715 249.120 3.086 |
-617.562 496.818 5.430 540.685 5.699 249.411 3.146 |
-617.720 497.428 5.298 540.596 5.745 250.414 3.032 |
-617.878 497.244 5.414 540.996 5.755 249.554 3.307 |
-618.036 497.182 5.371 540.240 5.767 249.255 3.047 |
-618.194 497.281 5.275 540.512 5.674 250.032 3.203 |
-618.352 497.192 5.411 540.235 5.779 249.900 3.384 |
-618.510 496.422 5.282 540.602 5.671 249.449 3.157 |
-618.668 496.814 5.206 540.206 5.718 249.754 3.061 |
-618.826 497.118 5.296 539.992 5.577 249.417 3.044 |
-618.983 496.781 5.277 540.209 5.757 249.804 3.224 |
-619.141 496.657 5.239 540.452 5.689 249.698 3.307 |
-619.299 496.246 5.197 540.094 5.697 249.567 3.003 |
-619.456 496.702 5.278 540.771 5.648 249.155 3.167 |
-619.615 497.117 5.308 540.537 5.642 249.881 3.024 |
-619.773 495.931 5.204 540.355 5.678 249.858 3.055 |
-619.931 497.079 5.257 540.213 5.638 249.428 3.057 |
-620.089 496.580 5.305 540.912 5.649 249.674 3.260 |
-620.247 496.825 5.245 540.389 5.837 249.426 3.029 |
-620.405 496.198 5.280 540.593 5.698 250.354 3.000 |
-620.563 495.922 5.259 539.996 5.769 249.103 3.096 |
-620.722 496.529 5.338 540.580 5.701 249.291 3.108 |
-620.880 496.425 5.333 540.195 5.689 249.742 3.056 |
-621.038 496.294 5.238 540.262 5.699 249.747 2.990 |
-621.196 496.572 5.250 540.292 5.646 249.247 2.977 |
-621.355 496.985 5.245 540.002 5.785 249.582 3.074 |
-621.513 496.409 5.293 540.510 5.749 249.515 2.988 |
-621.671 497.164 5.464 539.535 5.694 249.935 3.239 |
-621.829 496.931 5.296 540.305 5.696 249.639 3.296 |
-621.986 496.969 5.421 540.393 5.815 249.886 3.021 |
-622.145 496.709 5.218 540.454 5.661 250.668 3.175 |
-622.303 496.987 5.302 540.034 5.672 249.346 2.921 |
-622.461 497.119 5.261 540.430 5.677 250.063 3.304 |
-622.619 496.691 5.258 540.204 5.598 248.750 3.175 |
-622.777 497.206 5.252 540.192 5.655 250.327 3.092 |
-622.935 496.742 5.291 540.232 5.741 250.053 3.129 |
-623.093 496.567 5.253 540.242 5.709 249.720 2.984 |
-623.251 496.755 5.337 540.072 5.706 249.737 3.049 |
-623.409 496.597 5.286 540.480 5.601 248.947 3.197 |
-623.567 496.975 5.174 540.134 5.741 249.679 2.981 |
-623.726 496.499 5.384 540.111 5.734 249.486 3.519 |
-623.883 496.075 5.275 539.551 5.758 250.214 3.128 |
-624.041 496.490 5.266 540.515 5.751 249.722 3.080 |
-624.199 496.694 5.415 539.835 5.676 250.147 2.953 |
-624.357 496.556 5.233 540.378 5.671 250.431 3.114 |
-624.515 496.715 5.318 540.743 5.722 249.534 3.149 |
-624.674 496.757 5.205 540.377 5.661 249.725 2.983 |
-624.832 496.447 5.339 540.213 5.818 249.627 3.115 |
-624.990 496.544 5.225 540.122 5.652 249.876 3.185 |
-625.148 497.075 5.332 540.441 5.754 249.728 3.133 |
-625.306 497.050 5.327 540.074 5.689 250.167 3.075 |
-625.464 497.230 5.431 539.540 5.755 249.731 3.145 |
-625.622 496.382 5.252 540.305 5.689 249.867 3.083 |
-625.780 497.153 5.304 540.853 5.697 249.968 3.012 |
-625.938 496.581 5.279 540.408 5.668 249.059 3.015 |
-626.096 496.385 5.376 539.924 5.778 250.010 3.093 |
-626.255 496.403 5.370 540.099 5.760 249.390 3.106 |
-626.413 496.514 5.244 540.761 5.781 249.493 3.139 |
-626.571 496.845 5.329 540.697 5.673 249.864 2.962 |
-626.730 496.498 5.283 540.517 5.799 249.598 3.270 |
-626.888 496.945 5.347 540.815 5.649 250.106 3.096 |
-627.046 496.149 5.429 540.128 5.673 249.431 3.114 |
-627.204 497.111 5.398 540.271 5.798 250.004 3.064 |
-627.362 496.741 5.343 540.722 5.696 249.390 2.998 |
-627.520 496.677 5.263 540.297 5.712 249.603 3.104 |
-627.678 497.426 5.247 540.093 5.655 249.636 3.080 |
-627.836 496.344 5.325 540.301 5.744 250.476 2.958 |
-627.994 496.423 5.303 540.083 5.826 250.284 2.916 |
-628.152 496.164 5.320 539.990 5.736 250.092 3.256 |
-628.310 496.441 5.448 539.859 5.673 250.050 3.358 |
-628.468 496.484 5.315 540.198 5.724 249.770 3.386 |
-628.626 496.144 5.342 540.422 5.678 249.717 2.968 |
-628.784 496.571 5.360 540.354 5.780 249.167 3.325 |
-628.941 496.125 5.245 540.373 5.797 249.911 3.138 |
/Designs/galileo_experiment/DOC/gnuplot/plot.gp |
---|
File deleted |
/Designs/galileo_experiment/DOC/gnuplot/olbramovice_benesov.png |
---|
Cannot display: file marked as a binary type. |
svn:mime-type = application/octet-stream |
Property changes: |
Deleted: svn:mime-type |
-application/octet-stream |
\ No newline at end of property |
/Designs/galileo_experiment/DOC/gnuplot/tabor_olbramovice.txt |
---|
File deleted |
=================================================================== |
Cannot display: file marked as a binary type. |
svn:mime-type = application/octet-stream |
/Designs/galileo_experiment/DOC/gnuplot/sobeslav_tabor.png |
---|
Property changes: |
Deleted: svn:mime-type |
-application/octet-stream |
\ No newline at end of property |
/Designs/galileo_experiment/PrjInfo.txt |
---|
File deleted |
/Designs/DOGFINDER01A/PrjInfo.txt |
---|
File deleted |
/Designs/DOGFINDER01A/SW/ATMEGA168/ff.h |
---|
File deleted |
/Designs/DOGFINDER01A/SW/ATMEGA168/integer.h |
---|
File deleted |
/Designs/DOGFINDER01A/SW/ATMEGA168/main.c |
---|
File deleted |
/Designs/DOGFINDER01A/SW/ATMEGA168/tt.ini |
---|
File deleted |
/Designs/DOGFINDER01A/SW/ATMEGA168/tff.h |
---|
File deleted |
/Designs/DOGFINDER01A/SW/ATMEGA168/diskio.h |
---|
File deleted |
/Designs/DOGFINDER01A/SW/ATMEGA168/ff.c |
---|
File deleted |
/Designs/DOGFINDER01A/SW/ATMEGA168/glg.hex |
---|
File deleted |
/Designs/DOGFINDER01A/SW/ATMEGA168/mmc.c |
---|
File deleted |
/Designs/DOGFINDER01A/SW/ATMEGA168/Makefile |
---|
File deleted |
/Designs/DOGFINDER01A/SW/ATMEGA168/tff.c |
---|
File deleted |
/Designs/DOGFINDER02A/SW/TX_RFM02.c~ |
---|
File deleted |
/Designs/DOGFINDER02A/SW/DOGFINDER_TX.out |
---|
Cannot display: file marked as a binary type. |
svn:mime-type = application/octet-stream |
Property changes: |
Deleted: svn:executable |
-* |
\ No newline at end of property |
Deleted: svn:mime-type |
-application/octet-stream |
\ No newline at end of property |
/Designs/DOGFINDER02A/SW/DOGFINDER_TX.map |
---|
File deleted |
/Designs/DOGFINDER02A/SW/DOGFINDER_TX.o |
---|
Cannot display: file marked as a binary type. |
svn:mime-type = application/octet-stream |
Property changes: |
Deleted: svn:mime-type |
-application/octet-stream |
\ No newline at end of property |
/Designs/DOGFINDER02A/SW/Makefile~ |
---|
File deleted |
/Designs/DOGFINDER02A/SW/DOGFINDER_TX.c~ |
---|
File deleted |
/Designs/DOGFINDER02A/SW/RFM02.h |
---|
File deleted |
/Designs/DOGFINDER02A/SW/Makefile |
---|
File deleted |
/Designs/DOGFINDER02A/SW/DOGFINDER_TX.c |
---|
File deleted |
/Designs/DOGFINDER02A/SW/DOGFINDER_TX.hex |
---|
File deleted |
/Designs/DOGFINDER02A/PrjInfo.txt~ |
---|
File deleted |
/Designs/DOGFINDER02A/PrjInfo.txt |
---|
File deleted |
/Designs/Data_loggers/DOGFINDER01A/PrjInfo.txt |
---|
0,0 → 1,18 |
// |
// Toto je popisný soubor pro popis obsahu adresáře (příklad) |
// |
[InfoShortDescription.en] |
Dog finder - Track Logger |
[InfoShortDescription.cs] |
Psí vyhledávač - záznamník trasy |
[InfoLongDescription.en] |
The track is logged in NMEA format on SD/MMC card. |
[InfoLongDescription.cs] |
Umožňuje zaznamanat trasu opakovaně utíkajícího psa. A tím nalézt zdroj problémů, například díru v plotě :) |
Trasa je zaznamenávána na SD/MMC kartu ve formátu NMEA. |
[End] |
/Designs/Data_loggers/DOGFINDER01A/SW/ATMEGA168/Makefile |
---|
0,0 → 1,52 |
PRG = glg |
OBJ = main.o tff.o mmc.o |
MCU_TARGET = atmega168 |
OPTIMIZE = -Os -mcall-prologues |
DEFS = |
LIBS = |
DEBUG = dwarf-2 |
CC = avr-gcc |
ASFLAGS = -Wa,-adhlns=$(<:.S=.lst),-gstabs |
ALL_ASFLAGS = -mmcu=$(MCU_TARGET) -I. -x assembler-with-cpp $(ASFLAGS) |
CFLAGS = -g$(DEBUG) -Wall $(OPTIMIZE) -mmcu=$(MCU_TARGET) $(DEFS) |
LDFLAGS = -Wl,-Map,$(PRG).map |
OBJCOPY = avr-objcopy |
OBJDUMP = avr-objdump |
SIZE = avr-size |
all: $(PRG).elf lst text size |
$(PRG).elf: $(OBJ) |
$(CC) $(CFLAGS) $(LDFLAGS) -o $@ $^ $(LIBS) |
clean: |
rm -rf *.o $(PRG).elf *.eps *.bak *.a |
rm -rf *.lst *.map $(EXTRA_CLEAN_FILES) |
rm -rf $(PRG).hex |
size: $(PRG).elf |
$(SIZE) $(PRG).elf |
lst: $(PRG).lst |
%.lst: %.elf |
$(OBJDUMP) -h -S $< > $@ |
%.o : %.S |
$(CC) -c $(ALL_ASFLAGS) $< -o $@ |
text: hex |
hex: $(PRG).hex |
%.hex: %.elf |
$(OBJCOPY) -j .text -j .data -O ihex $< $@ |
/Designs/Data_loggers/DOGFINDER01A/SW/ATMEGA168/diskio.h |
---|
0,0 → 1,64 |
/*----------------------------------------------------------------------- |
/ Low level disk interface modlue include file R0.04a (C)ChaN, 2007 |
/-----------------------------------------------------------------------*/ |
#ifndef _DISKIO |
#define _READONLY 0 /* 1: Read-only mode */ |
#include "integer.h" |
/* Status of Disk Functions */ |
typedef BYTE DSTATUS; |
/* Results of Disk Functions */ |
typedef enum { |
RES_OK = 0, /* 0: Successful */ |
RES_ERROR, /* 1: R/W Error */ |
RES_WRPRT, /* 2: Write Protected */ |
RES_NOTRDY, /* 3: Not Ready */ |
RES_PARERR /* 4: Invalid Parameter */ |
} DRESULT; |
/*---------------------------------------*/ |
/* Prototypes for disk control functions */ |
DSTATUS disk_initialize (BYTE); |
DSTATUS disk_status (BYTE); |
DRESULT disk_read (BYTE, BYTE*, DWORD, BYTE); |
#if _READONLY == 0 |
DRESULT disk_write (BYTE, const BYTE*, DWORD, BYTE); |
#endif |
DRESULT disk_ioctl (BYTE, BYTE, void*); |
void disk_timerproc (void); |
/* Disk Status Bits (DSTATUS) */ |
#define STA_NOINIT 0x01 /* Drive not initialized */ |
#define STA_NODISK 0x02 /* No medium in the drive */ |
#define STA_PROTECT 0x04 /* Write protected */ |
/* Command code for disk_ioctrl() */ |
#define GET_SECTOR_COUNT 1 |
#define GET_SECTOR_SIZE 2 |
#define CTRL_SYNC 3 |
#define CTRL_POWER 4 |
#define CTRL_LOCK 5 |
#define CTRL_EJECT 6 |
#define MMC_GET_CSD 10 |
#define MMC_GET_CID 11 |
#define MMC_GET_OCR 12 |
#define ATA_GET_REV 20 |
#define ATA_GET_MODEL 21 |
#define ATA_GET_SN 22 |
#define _DISKIO |
#endif |
/Designs/Data_loggers/DOGFINDER01A/SW/ATMEGA168/ff.c |
---|
0,0 → 1,2036 |
/*----------------------------------------------------------------------------/ |
/ FatFs - FAT file system module R0.06 (C)ChaN, 2008 |
/-----------------------------------------------------------------------------/ |
/ The FatFs module is an experimenal project to implement FAT file system to |
/ cheap microcontrollers. This is a free software and is opened for education, |
/ research and development under license policy of following trems. |
/ |
/ Copyright (C) 2008, ChaN, all right reserved. |
/ |
/ * The FatFs module is a free software and there is no warranty. |
/ * You can use, modify and/or redistribute it for personal, non-profit or |
/ commercial use without restriction under your responsibility. |
/ * Redistributions of source code must retain the above copyright notice. |
/ |
/-----------------------------------------------------------------------------/ |
/ Feb 26,'06 R0.00 Prototype. |
/ |
/ Apr 29,'06 R0.01 First stable version. |
/ |
/ Jun 01,'06 R0.02 Added FAT12 support. |
/ Removed unbuffered mode. |
/ Fixed a problem on small (<32M) patition. |
/ Jun 10,'06 R0.02a Added a configuration option (_FS_MINIMUM). |
/ |
/ Sep 22,'06 R0.03 Added f_rename(). |
/ Changed option _FS_MINIMUM to _FS_MINIMIZE. |
/ Dec 11,'06 R0.03a Improved cluster scan algolithm to write files fast. |
/ Fixed f_mkdir() creates incorrect directory on FAT32. |
/ |
/ Feb 04,'07 R0.04 Supported multiple drive system. |
/ Changed some interfaces for multiple drive system. |
/ Changed f_mountdrv() to f_mount(). |
/ Added f_mkfs(). |
/ Apr 01,'07 R0.04a Supported multiple partitions on a plysical drive. |
/ Added a capability of extending file size to f_lseek(). |
/ Added minimization level 3. |
/ Fixed an endian sensitive code in f_mkfs(). |
/ May 05,'07 R0.04b Added a configuration option _USE_NTFLAG. |
/ Added FSInfo support. |
/ Fixed DBCS name can result FR_INVALID_NAME. |
/ Fixed short seek (<= csize) collapses the file object. |
/ |
/ Aug 25,'07 R0.05 Changed arguments of f_read(), f_write() and f_mkfs(). |
/ Fixed f_mkfs() on FAT32 creates incorrect FSInfo. |
/ Fixed f_mkdir() on FAT32 creates incorrect directory. |
/ Feb 03,'08 R0.05a Added f_truncate() and f_utime(). |
/ Fixed off by one error at FAT sub-type determination. |
/ Fixed btr in f_read() can be mistruncated. |
/ Fixed cached sector is not flushed when create and close |
/ without write. |
/ |
/ Apr 01,'08 R0.06 Added fputc(), fputs(), fprintf() and fgets(). |
/ Improved performance of f_lseek() on moving to the same |
/ or following cluster. |
/---------------------------------------------------------------------------*/ |
#include <string.h> |
#include "ff.h" /* FatFs declarations */ |
#include "diskio.h" /* Include file for user provided disk functions */ |
/*-------------------------------------------------------------------------- |
Module Private Functions |
---------------------------------------------------------------------------*/ |
static |
FATFS *FatFs[_DRIVES]; /* Pointer to the file system objects (logical drives) */ |
static |
WORD fsid; /* File system mount ID */ |
/*-----------------------------------------------------------------------*/ |
/* Change window offset */ |
/*-----------------------------------------------------------------------*/ |
static |
BOOL move_window ( /* TRUE: successful, FALSE: failed */ |
FATFS *fs, /* File system object */ |
DWORD sector /* Sector number to make apperance in the fs->win[] */ |
) /* Move to zero only writes back dirty window */ |
{ |
DWORD wsect; |
wsect = fs->winsect; |
if (wsect != sector) { /* Changed current window */ |
#if !_FS_READONLY |
BYTE n; |
if (fs->winflag) { /* Write back dirty window if needed */ |
if (disk_write(fs->drive, fs->win, wsect, 1) != RES_OK) |
return FALSE; |
fs->winflag = 0; |
if (wsect < (fs->fatbase + fs->sects_fat)) { /* In FAT area */ |
for (n = fs->n_fats; n >= 2; n--) { /* Refrect the change to FAT copy */ |
wsect += fs->sects_fat; |
disk_write(fs->drive, fs->win, wsect, 1); |
} |
} |
} |
#endif |
if (sector) { |
if (disk_read(fs->drive, fs->win, sector, 1) != RES_OK) |
return FALSE; |
fs->winsect = sector; |
} |
} |
return TRUE; |
} |
/*-----------------------------------------------------------------------*/ |
/* Clean-up cached data */ |
/*-----------------------------------------------------------------------*/ |
#if !_FS_READONLY |
static |
FRESULT sync ( /* FR_OK: successful, FR_RW_ERROR: failed */ |
FATFS *fs /* File system object */ |
) |
{ |
fs->winflag = 1; |
if (!move_window(fs, 0)) return FR_RW_ERROR; |
#if _USE_FSINFO |
/* Update FSInfo sector if needed */ |
if (fs->fs_type == FS_FAT32 && fs->fsi_flag) { |
fs->winsect = 0; |
memset(fs->win, 0, 512); |
ST_WORD(&fs->win[BS_55AA], 0xAA55); |
ST_DWORD(&fs->win[FSI_LeadSig], 0x41615252); |
ST_DWORD(&fs->win[FSI_StrucSig], 0x61417272); |
ST_DWORD(&fs->win[FSI_Free_Count], fs->free_clust); |
ST_DWORD(&fs->win[FSI_Nxt_Free], fs->last_clust); |
disk_write(fs->drive, fs->win, fs->fsi_sector, 1); |
fs->fsi_flag = 0; |
} |
#endif |
/* Make sure that no pending write process in the physical drive */ |
if (disk_ioctl(fs->drive, CTRL_SYNC, NULL) != RES_OK) |
return FR_RW_ERROR; |
return FR_OK; |
} |
#endif |
/*-----------------------------------------------------------------------*/ |
/* Get a cluster status */ |
/*-----------------------------------------------------------------------*/ |
static |
DWORD get_cluster ( /* 0,>=2: successful, 1: failed */ |
FATFS *fs, /* File system object */ |
DWORD clust /* Cluster# to get the link information */ |
) |
{ |
WORD wc, bc; |
DWORD fatsect; |
if (clust >= 2 && clust < fs->max_clust) { /* Is it a valid cluster#? */ |
fatsect = fs->fatbase; |
switch (fs->fs_type) { |
case FS_FAT12 : |
bc = (WORD)clust * 3 / 2; |
if (!move_window(fs, fatsect + (bc / SS(fs)))) break; |
wc = fs->win[bc & (SS(fs) - 1)]; bc++; |
if (!move_window(fs, fatsect + (bc / SS(fs)))) break; |
wc |= (WORD)fs->win[bc & (SS(fs) - 1)] << 8; |
return (clust & 1) ? (wc >> 4) : (wc & 0xFFF); |
case FS_FAT16 : |
if (!move_window(fs, fatsect + (clust / (SS(fs) / 2)))) break; |
return LD_WORD(&fs->win[((WORD)clust * 2) & (SS(fs) - 1)]); |
case FS_FAT32 : |
if (!move_window(fs, fatsect + (clust / (SS(fs) / 4)))) break; |
return LD_DWORD(&fs->win[((WORD)clust * 4) & (SS(fs) - 1)]) & 0x0FFFFFFF; |
} |
} |
return 1; /* Out of cluster range, or an error occured */ |
} |
/*-----------------------------------------------------------------------*/ |
/* Change a cluster status */ |
/*-----------------------------------------------------------------------*/ |
#if !_FS_READONLY |
static |
BOOL put_cluster ( /* TRUE: successful, FALSE: failed */ |
FATFS *fs, /* File system object */ |
DWORD clust, /* Cluster# to change (must be 2 to fs->max_clust-1) */ |
DWORD val /* New value to mark the cluster */ |
) |
{ |
WORD bc; |
BYTE *p; |
DWORD fatsect; |
fatsect = fs->fatbase; |
switch (fs->fs_type) { |
case FS_FAT12 : |
bc = (WORD)clust * 3 / 2; |
if (!move_window(fs, fatsect + (bc / SS(fs)))) return FALSE; |
p = &fs->win[bc & (SS(fs) - 1)]; |
*p = (clust & 1) ? ((*p & 0x0F) | ((BYTE)val << 4)) : (BYTE)val; |
bc++; |
fs->winflag = 1; |
if (!move_window(fs, fatsect + (bc / SS(fs)))) return FALSE; |
p = &fs->win[bc & (SS(fs) - 1)]; |
*p = (clust & 1) ? (BYTE)(val >> 4) : ((*p & 0xF0) | ((BYTE)(val >> 8) & 0x0F)); |
break; |
case FS_FAT16 : |
if (!move_window(fs, fatsect + (clust / (SS(fs) / 2)))) return FALSE; |
ST_WORD(&fs->win[((WORD)clust * 2) & (SS(fs) - 1)], (WORD)val); |
break; |
case FS_FAT32 : |
if (!move_window(fs, fatsect + (clust / (SS(fs) / 4)))) return FALSE; |
ST_DWORD(&fs->win[((WORD)clust * 4) & (SS(fs) - 1)], val); |
break; |
default : |
return FALSE; |
} |
fs->winflag = 1; |
return TRUE; |
} |
#endif /* !_FS_READONLY */ |
/*-----------------------------------------------------------------------*/ |
/* Remove a cluster chain */ |
/*-----------------------------------------------------------------------*/ |
#if !_FS_READONLY |
static |
BOOL remove_chain ( /* TRUE: successful, FALSE: failed */ |
FATFS *fs, /* File system object */ |
DWORD clust /* Cluster# to remove chain from */ |
) |
{ |
DWORD nxt; |
while (clust >= 2 && clust < fs->max_clust) { |
nxt = get_cluster(fs, clust); |
if (nxt == 1) return FALSE; |
if (!put_cluster(fs, clust, 0)) return FALSE; |
if (fs->free_clust != 0xFFFFFFFF) { |
fs->free_clust++; |
#if _USE_FSINFO |
fs->fsi_flag = 1; |
#endif |
} |
clust = nxt; |
} |
return TRUE; |
} |
#endif |
/*-----------------------------------------------------------------------*/ |
/* Stretch or create a cluster chain */ |
/*-----------------------------------------------------------------------*/ |
#if !_FS_READONLY |
static |
DWORD create_chain ( /* 0: No free cluster, 1: Error, >=2: New cluster number */ |
FATFS *fs, /* File system object */ |
DWORD clust /* Cluster# to stretch, 0 means create new */ |
) |
{ |
DWORD cstat, ncl, scl, mcl = fs->max_clust; |
if (clust == 0) { /* Create new chain */ |
scl = fs->last_clust; /* Get suggested start point */ |
if (scl == 0 || scl >= mcl) scl = 1; |
} |
else { /* Stretch existing chain */ |
cstat = get_cluster(fs, clust); /* Check the cluster status */ |
if (cstat < 2) return 1; /* It is an invalid cluster */ |
if (cstat < mcl) return cstat; /* It is already followed by next cluster */ |
scl = clust; |
} |
ncl = scl; /* Start cluster */ |
for (;;) { |
ncl++; /* Next cluster */ |
if (ncl >= mcl) { /* Wrap around */ |
ncl = 2; |
if (ncl > scl) return 0; /* No free custer */ |
} |
cstat = get_cluster(fs, ncl); /* Get the cluster status */ |
if (cstat == 0) break; /* Found a free cluster */ |
if (cstat == 1) return 1; /* Any error occured */ |
if (ncl == scl) return 0; /* No free custer */ |
} |
if (!put_cluster(fs, ncl, 0x0FFFFFFF)) return 1; /* Mark the new cluster "in use" */ |
if (clust != 0 && !put_cluster(fs, clust, ncl)) return 1; /* Link it to previous one if needed */ |
fs->last_clust = ncl; /* Update fsinfo */ |
if (fs->free_clust != 0xFFFFFFFF) { |
fs->free_clust--; |
#if _USE_FSINFO |
fs->fsi_flag = 1; |
#endif |
} |
return ncl; /* Return new cluster number */ |
} |
#endif /* !_FS_READONLY */ |
/*-----------------------------------------------------------------------*/ |
/* Get sector# from cluster# */ |
/*-----------------------------------------------------------------------*/ |
static |
DWORD clust2sect ( /* !=0: sector number, 0: failed - invalid cluster# */ |
FATFS *fs, /* File system object */ |
DWORD clust /* Cluster# to be converted */ |
) |
{ |
clust -= 2; |
if (clust >= (fs->max_clust - 2)) return 0; /* Invalid cluster# */ |
return clust * fs->csize + fs->database; |
} |
/*-----------------------------------------------------------------------*/ |
/* Move directory pointer to next */ |
/*-----------------------------------------------------------------------*/ |
static |
BOOL next_dir_entry ( /* TRUE: successful, FALSE: could not move next */ |
DIR *dj /* Pointer to directory object */ |
) |
{ |
DWORD clust; |
WORD idx; |
idx = dj->index + 1; |
if ((idx & ((SS(dj->fs) - 1) / 32)) == 0) { /* Table sector changed? */ |
dj->sect++; /* Next sector */ |
if (dj->clust == 0) { /* In static table */ |
if (idx >= dj->fs->n_rootdir) return FALSE; /* Reached to end of table */ |
} else { /* In dynamic table */ |
if (((idx / (SS(dj->fs) / 32)) & (dj->fs->csize - 1)) == 0) { /* Cluster changed? */ |
clust = get_cluster(dj->fs, dj->clust); /* Get next cluster */ |
if (clust < 2 || clust >= dj->fs->max_clust) /* Reached to end of table */ |
return FALSE; |
dj->clust = clust; /* Initialize for new cluster */ |
dj->sect = clust2sect(dj->fs, clust); |
} |
} |
} |
dj->index = idx; /* Lower several bits of dj->index indicates offset in dj->sect */ |
return TRUE; |
} |
/*-----------------------------------------------------------------------*/ |
/* Get file status from directory entry */ |
/*-----------------------------------------------------------------------*/ |
#if _FS_MINIMIZE <= 1 |
static |
void get_fileinfo ( /* No return code */ |
FILINFO *finfo, /* Ptr to store the file information */ |
const BYTE *dir /* Ptr to the directory entry */ |
) |
{ |
BYTE n, c, a; |
char *p; |
p = &finfo->fname[0]; |
a = _USE_NTFLAG ? dir[DIR_NTres] : 0; /* NT flag */ |
for (n = 0; n < 8; n++) { /* Convert file name (body) */ |
c = dir[n]; |
if (c == ' ') break; |
if (c == 0x05) c = 0xE5; |
if (a & 0x08 && c >= 'A' && c <= 'Z') c += 0x20; |
*p++ = c; |
} |
if (dir[8] != ' ') { /* Convert file name (extension) */ |
*p++ = '.'; |
for (n = 8; n < 11; n++) { |
c = dir[n]; |
if (c == ' ') break; |
if (a & 0x10 && c >= 'A' && c <= 'Z') c += 0x20; |
*p++ = c; |
} |
} |
*p = '\0'; |
finfo->fattrib = dir[DIR_Attr]; /* Attribute */ |
finfo->fsize = LD_DWORD(&dir[DIR_FileSize]); /* Size */ |
finfo->fdate = LD_WORD(&dir[DIR_WrtDate]); /* Date */ |
finfo->ftime = LD_WORD(&dir[DIR_WrtTime]); /* Time */ |
} |
#endif /* _FS_MINIMIZE <= 1 */ |
/*-----------------------------------------------------------------------*/ |
/* Pick a paragraph and create the name in format of directory entry */ |
/*-----------------------------------------------------------------------*/ |
static |
char make_dirfile ( /* 1: error - detected an invalid format, '\0'or'/': next character */ |
const char **path, /* Pointer to the file path pointer */ |
char *dirname /* Pointer to directory name buffer {Name(8), Ext(3), NT flag(1)} */ |
) |
{ |
BYTE n, t, c, a, b; |
memset(dirname, ' ', 8+3); /* Fill buffer with spaces */ |
a = 0; b = 0x18; /* NT flag */ |
n = 0; t = 8; |
for (;;) { |
c = *(*path)++; |
if (c == '\0' || c == '/') { /* Reached to end of str or directory separator */ |
if (n == 0) break; |
dirname[11] = _USE_NTFLAG ? (a & b) : 0; |
return c; |
} |
if (c <= ' ' || c == 0x7F) break; /* Reject invisible chars */ |
if (c == '.') { |
if (!(a & 1) && n >= 1 && n <= 8) { /* Enter extension part */ |
n = 8; t = 11; continue; |
} |
break; |
} |
if (_USE_SJIS && |
((c >= 0x81 && c <= 0x9F) || /* Accept S-JIS code */ |
(c >= 0xE0 && c <= 0xFC))) { |
if (n == 0 && c == 0xE5) /* Change heading \xE5 to \x05 */ |
c = 0x05; |
a ^= 0x01; goto md_l2; |
} |
if (c == '"') break; /* Reject " */ |
if (c <= ')') goto md_l1; /* Accept ! # $ % & ' ( ) */ |
if (c <= ',') break; /* Reject * + , */ |
if (c <= '9') goto md_l1; /* Accept - 0-9 */ |
if (c <= '?') break; /* Reject : ; < = > ? */ |
if (!(a & 1)) { /* These checks are not applied to S-JIS 2nd byte */ |
if (c == '|') break; /* Reject | */ |
if (c >= '[' && c <= ']') break;/* Reject [ \ ] */ |
if (_USE_NTFLAG && c >= 'A' && c <= 'Z') |
(t == 8) ? (b &= 0xF7) : (b &= 0xEF); |
if (c >= 'a' && c <= 'z') { /* Convert to upper case */ |
c -= 0x20; |
if (_USE_NTFLAG) (t == 8) ? (a |= 0x08) : (a |= 0x10); |
} |
} |
md_l1: |
a &= 0xFE; |
md_l2: |
if (n >= t) break; |
dirname[n++] = c; |
} |
return 1; |
} |
/*-----------------------------------------------------------------------*/ |
/* Trace a file path */ |
/*-----------------------------------------------------------------------*/ |
static |
FRESULT trace_path ( /* FR_OK(0): successful, !=0: error code */ |
DIR *dj, /* Pointer to directory object to return last directory */ |
char *fn, /* Pointer to last segment name to return {file(8),ext(3),attr(1)} */ |
const char *path, /* Full-path string to trace a file or directory */ |
BYTE **dir /* Pointer to pointer to found entry to retutn */ |
) |
{ |
DWORD clust; |
char ds; |
BYTE *dptr = NULL; |
FATFS *fs = dj->fs; |
/* Initialize directory object */ |
clust = fs->dirbase; |
if (fs->fs_type == FS_FAT32) { |
dj->clust = dj->sclust = clust; |
dj->sect = clust2sect(fs, clust); |
} else { |
dj->clust = dj->sclust = 0; |
dj->sect = clust; |
} |
dj->index = 0; |
if (*path == '\0') { /* Null path means the root directory */ |
*dir = NULL; return FR_OK; |
} |
for (;;) { |
ds = make_dirfile(&path, fn); /* Get a paragraph into fn[] */ |
if (ds == 1) return FR_INVALID_NAME; |
for (;;) { |
if (!move_window(fs, dj->sect)) return FR_RW_ERROR; |
dptr = &fs->win[(dj->index & ((SS(fs) - 1) / 32)) * 32]; /* Pointer to the directory entry */ |
if (dptr[DIR_Name] == 0) /* Has it reached to end of dir? */ |
return !ds ? FR_NO_FILE : FR_NO_PATH; |
if (dptr[DIR_Name] != 0xE5 /* Matched? */ |
&& !(dptr[DIR_Attr] & AM_VOL) |
&& !memcmp(&dptr[DIR_Name], fn, 8+3) ) break; |
if (!next_dir_entry(dj)) /* Next directory pointer */ |
return !ds ? FR_NO_FILE : FR_NO_PATH; |
} |
if (!ds) { *dir = dptr; return FR_OK; } /* Matched with end of path */ |
if (!(dptr[DIR_Attr] & AM_DIR)) return FR_NO_PATH; /* Cannot trace because it is a file */ |
clust = ((DWORD)LD_WORD(&dptr[DIR_FstClusHI]) << 16) | LD_WORD(&dptr[DIR_FstClusLO]); /* Get cluster# of the directory */ |
dj->clust = dj->sclust = clust; /* Restart scanning at the new directory */ |
dj->sect = clust2sect(fs, clust); |
dj->index = 2; |
} |
} |
/*-----------------------------------------------------------------------*/ |
/* Reserve a directory entry */ |
/*-----------------------------------------------------------------------*/ |
#if !_FS_READONLY |
static |
FRESULT reserve_direntry ( /* FR_OK: successful, FR_DENIED: no free entry, FR_RW_ERROR: a disk error occured */ |
DIR *dj, /* Target directory to create new entry */ |
BYTE **dir /* Pointer to pointer to created entry to retutn */ |
) |
{ |
DWORD clust, sector; |
BYTE c, n, *dptr; |
FATFS *fs = dj->fs; |
/* Re-initialize directory object */ |
clust = dj->sclust; |
if (clust != 0) { /* Dyanmic directory table */ |
dj->clust = clust; |
dj->sect = clust2sect(fs, clust); |
} else { /* Static directory table */ |
dj->sect = fs->dirbase; |
} |
dj->index = 0; |
do { |
if (!move_window(fs, dj->sect)) return FR_RW_ERROR; |
dptr = &fs->win[(dj->index & ((SS(dj->fs) - 1) / 32)) * 32]; /* Pointer to the directory entry */ |
c = dptr[DIR_Name]; |
if (c == 0 || c == 0xE5) { /* Found an empty entry */ |
*dir = dptr; return FR_OK; |
} |
} while (next_dir_entry(dj)); /* Next directory pointer */ |
/* Reached to end of the directory table */ |
/* Abort when it is a static table or could not stretch dynamic table */ |
if (clust == 0 || !(clust = create_chain(fs, dj->clust))) return FR_DENIED; |
if (clust == 1 || !move_window(fs, 0)) return FR_RW_ERROR; |
/* Cleanup the expanded table */ |
fs->winsect = sector = clust2sect(fs, clust); |
memset(fs->win, 0, SS(fs)); |
for (n = fs->csize; n; n--) { |
if (disk_write(fs->drive, fs->win, sector, 1) != RES_OK) |
return FR_RW_ERROR; |
sector++; |
} |
fs->winflag = 1; |
*dir = fs->win; |
return FR_OK; |
} |
#endif /* !_FS_READONLY */ |
/*-----------------------------------------------------------------------*/ |
/* Load boot record and check if it is an FAT boot record */ |
/*-----------------------------------------------------------------------*/ |
static |
BYTE check_fs ( /* 0:The FAT boot record, 1:Valid boot record but not an FAT, 2:Not a boot record or error */ |
FATFS *fs, /* File system object */ |
DWORD sect /* Sector# (lba) to check if it is an FAT boot record or not */ |
) |
{ |
if (disk_read(fs->drive, fs->win, sect, 1) != RES_OK) /* Load boot record */ |
return 2; |
if (LD_WORD(&fs->win[BS_55AA]) != 0xAA55) /* Check record signature (always placed at offset 510 even if the sector size is >512) */ |
return 2; |
if (!memcmp(&fs->win[BS_FilSysType], "FAT", 3)) /* Check FAT signature */ |
return 0; |
if (!memcmp(&fs->win[BS_FilSysType32], "FAT32", 5) && !(fs->win[BPB_ExtFlags] & 0x80)) |
return 0; |
return 1; |
} |
/*-----------------------------------------------------------------------*/ |
/* Make sure that the file system is valid */ |
/*-----------------------------------------------------------------------*/ |
static |
FRESULT auto_mount ( /* FR_OK(0): successful, !=0: any error occured */ |
const char **path, /* Pointer to pointer to the path name (drive number) */ |
FATFS **rfs, /* Pointer to pointer to the found file system object */ |
BYTE chk_wp /* !=0: Check media write protection for write access */ |
) |
{ |
BYTE drv, fmt, *tbl; |
DSTATUS stat; |
DWORD bootsect, fatsize, totalsect, maxclust; |
const char *p = *path; |
FATFS *fs; |
/* Get drive number from the path name */ |
while (*p == ' ') p++; /* Strip leading spaces */ |
drv = p[0] - '0'; /* Is there a drive number? */ |
if (drv <= 9 && p[1] == ':') |
p += 2; /* Found a drive number, get and strip it */ |
else |
drv = 0; /* No drive number is given, use drive number 0 as default */ |
if (*p == '/') p++; /* Strip heading slash */ |
*path = p; /* Return pointer to the path name */ |
/* Check if the drive number is valid or not */ |
if (drv >= _DRIVES) return FR_INVALID_DRIVE; /* Is the drive number valid? */ |
*rfs = fs = FatFs[drv]; /* Returen pointer to the corresponding file system object */ |
if (!fs) return FR_NOT_ENABLED; /* Is the file system object registered? */ |
if (fs->fs_type) { /* If the logical drive has been mounted */ |
stat = disk_status(fs->drive); |
if (!(stat & STA_NOINIT)) { /* and physical drive is kept initialized (has not been changed), */ |
#if !_FS_READONLY |
if (chk_wp && (stat & STA_PROTECT)) /* Check write protection if needed */ |
return FR_WRITE_PROTECTED; |
#endif |
return FR_OK; /* The file system object is valid */ |
} |
} |
/* The logical drive must be re-mounted. Following code attempts to mount the logical drive */ |
memset(fs, 0, sizeof(FATFS)); /* Clean-up the file system object */ |
fs->drive = LD2PD(drv); /* Bind the logical drive and a physical drive */ |
stat = disk_initialize(fs->drive); /* Initialize low level disk I/O layer */ |
if (stat & STA_NOINIT) /* Check if the drive is ready */ |
return FR_NOT_READY; |
#if S_MAX_SIZ > 512 /* Get disk sector size if needed */ |
if (disk_ioctl(drv, GET_SECTOR_SIZE, &SS(fs)) != RES_OK || SS(fs) > S_MAX_SIZ) |
return FR_NO_FILESYSTEM; |
#endif |
#if !_FS_READONLY |
if (chk_wp && (stat & STA_PROTECT)) /* Check write protection if needed */ |
return FR_WRITE_PROTECTED; |
#endif |
/* Search FAT partition on the drive */ |
fmt = check_fs(fs, bootsect = 0); /* Check sector 0 as an SFD format */ |
if (fmt == 1) { /* Not an FAT boot record, it may be patitioned */ |
/* Check a partition listed in top of the partition table */ |
tbl = &fs->win[MBR_Table + LD2PT(drv) * 16]; /* Partition table */ |
if (tbl[4]) { /* Is the partition existing? */ |
bootsect = LD_DWORD(&tbl[8]); /* Partition offset in LBA */ |
fmt = check_fs(fs, bootsect); /* Check the partition */ |
} |
} |
if (fmt || LD_WORD(&fs->win[BPB_BytsPerSec]) != SS(fs)) /* No valid FAT patition is found */ |
return FR_NO_FILESYSTEM; |
/* Initialize the file system object */ |
fatsize = LD_WORD(&fs->win[BPB_FATSz16]); /* Number of sectors per FAT */ |
if (!fatsize) fatsize = LD_DWORD(&fs->win[BPB_FATSz32]); |
fs->sects_fat = fatsize; |
fs->n_fats = fs->win[BPB_NumFATs]; /* Number of FAT copies */ |
fatsize *= fs->n_fats; /* (Number of sectors in FAT area) */ |
fs->fatbase = bootsect + LD_WORD(&fs->win[BPB_RsvdSecCnt]); /* FAT start sector (lba) */ |
fs->csize = fs->win[BPB_SecPerClus]; /* Number of sectors per cluster */ |
fs->n_rootdir = LD_WORD(&fs->win[BPB_RootEntCnt]); /* Nmuber of root directory entries */ |
totalsect = LD_WORD(&fs->win[BPB_TotSec16]); /* Number of sectors on the file system */ |
if (!totalsect) totalsect = LD_DWORD(&fs->win[BPB_TotSec32]); |
fs->max_clust = maxclust = (totalsect /* max_clust = Last cluster# + 1 */ |
- LD_WORD(&fs->win[BPB_RsvdSecCnt]) - fatsize - fs->n_rootdir / (SS(fs)/32) |
) / fs->csize + 2; |
fmt = FS_FAT12; /* Determine the FAT sub type */ |
if (maxclust >= 0xFF7) fmt = FS_FAT16; |
if (maxclust >= 0xFFF7) fmt = FS_FAT32; |
if (fmt == FS_FAT32) |
fs->dirbase = LD_DWORD(&fs->win[BPB_RootClus]); /* Root directory start cluster */ |
else |
fs->dirbase = fs->fatbase + fatsize; /* Root directory start sector (lba) */ |
fs->database = fs->fatbase + fatsize + fs->n_rootdir / (SS(fs)/32); /* Data start sector (lba) */ |
#if !_FS_READONLY |
/* Initialize allocation information */ |
fs->free_clust = 0xFFFFFFFF; |
#if _USE_FSINFO |
/* Get fsinfo if needed */ |
if (fmt == FS_FAT32) { |
fs->fsi_sector = bootsect + LD_WORD(&fs->win[BPB_FSInfo]); |
if (disk_read(fs->drive, fs->win, fs->fsi_sector, 1) == RES_OK && |
LD_WORD(&fs->win[BS_55AA]) == 0xAA55 && |
LD_DWORD(&fs->win[FSI_LeadSig]) == 0x41615252 && |
LD_DWORD(&fs->win[FSI_StrucSig]) == 0x61417272) { |
fs->last_clust = LD_DWORD(&fs->win[FSI_Nxt_Free]); |
fs->free_clust = LD_DWORD(&fs->win[FSI_Free_Count]); |
} |
} |
#endif |
#endif |
fs->fs_type = fmt; /* FAT syb-type */ |
fs->id = ++fsid; /* File system mount ID */ |
return FR_OK; |
} |
/*-----------------------------------------------------------------------*/ |
/* Check if the file/dir object is valid or not */ |
/*-----------------------------------------------------------------------*/ |
static |
FRESULT validate ( /* FR_OK(0): The object is valid, !=0: Invalid */ |
const FATFS *fs, /* Pointer to the file system object */ |
WORD id /* Member id of the target object to be checked */ |
) |
{ |
if (!fs || !fs->fs_type || fs->id != id) |
return FR_INVALID_OBJECT; |
if (disk_status(fs->drive) & STA_NOINIT) |
return FR_NOT_READY; |
return FR_OK; |
} |
/*-------------------------------------------------------------------------- |
Public Functions |
--------------------------------------------------------------------------*/ |
/*-----------------------------------------------------------------------*/ |
/* Mount/Unmount a Locical Drive */ |
/*-----------------------------------------------------------------------*/ |
FRESULT f_mount ( |
BYTE drv, /* Logical drive number to be mounted/unmounted */ |
FATFS *fs /* Pointer to new file system object (NULL for unmount)*/ |
) |
{ |
if (drv >= _DRIVES) return FR_INVALID_DRIVE; |
if (FatFs[drv]) FatFs[drv]->fs_type = 0; /* Clear old object */ |
FatFs[drv] = fs; /* Register and clear new object */ |
if (fs) fs->fs_type = 0; |
return FR_OK; |
} |
/*-----------------------------------------------------------------------*/ |
/* Open or Create a File */ |
/*-----------------------------------------------------------------------*/ |
FRESULT f_open ( |
FIL *fp, /* Pointer to the blank file object */ |
const char *path, /* Pointer to the file name */ |
BYTE mode /* Access mode and file open mode flags */ |
) |
{ |
FRESULT res; |
DIR dj; |
BYTE *dir; |
char fn[8+3+1]; |
fp->fs = NULL; /* Clear file object */ |
#if !_FS_READONLY |
mode &= (FA_READ|FA_WRITE|FA_CREATE_ALWAYS|FA_OPEN_ALWAYS|FA_CREATE_NEW); |
res = auto_mount(&path, &dj.fs, (BYTE)(mode & (FA_WRITE|FA_CREATE_ALWAYS|FA_OPEN_ALWAYS|FA_CREATE_NEW))); |
#else |
mode &= FA_READ; |
res = auto_mount(&path, &dj.fs, 0); |
#endif |
if (res != FR_OK) return res; |
res = trace_path(&dj, fn, path, &dir); /* Trace the file path */ |
#if !_FS_READONLY |
/* Create or Open a file */ |
if (mode & (FA_CREATE_ALWAYS|FA_OPEN_ALWAYS|FA_CREATE_NEW)) { |
DWORD ps, rs; |
if (res != FR_OK) { /* No file, create new */ |
if (res != FR_NO_FILE) return res; |
res = reserve_direntry(&dj, &dir); |
if (res != FR_OK) return res; |
memset(dir, 0, 32); /* Initialize the new entry with open name */ |
memcpy(&dir[DIR_Name], fn, 8+3); |
dir[DIR_NTres] = fn[11]; |
mode |= FA_CREATE_ALWAYS; |
} |
else { /* Any object is already existing */ |
if (mode & FA_CREATE_NEW) /* Cannot create new */ |
return FR_EXIST; |
if (!dir || (dir[DIR_Attr] & (AM_RDO|AM_DIR))) /* Cannot overwrite it (R/O or DIR) */ |
return FR_DENIED; |
if (mode & FA_CREATE_ALWAYS) { /* Resize it to zero if needed */ |
rs = ((DWORD)LD_WORD(&dir[DIR_FstClusHI]) << 16) | LD_WORD(&dir[DIR_FstClusLO]); /* Get start cluster */ |
ST_WORD(&dir[DIR_FstClusHI], 0); /* cluster = 0 */ |
ST_WORD(&dir[DIR_FstClusLO], 0); |
ST_DWORD(&dir[DIR_FileSize], 0); /* size = 0 */ |
dj.fs->winflag = 1; |
ps = dj.fs->winsect; /* Remove the cluster chain */ |
if (!remove_chain(dj.fs, rs) || !move_window(dj.fs, ps)) |
return FR_RW_ERROR; |
dj.fs->last_clust = rs - 1; /* Reuse the cluster hole */ |
} |
} |
if (mode & FA_CREATE_ALWAYS) { |
dir[DIR_Attr] = 0; /* Reset attribute */ |
ps = get_fattime(); |
ST_DWORD(&dir[DIR_CrtTime], ps); /* Created time */ |
dj.fs->winflag = 1; |
mode |= FA__WRITTEN; /* Set file changed flag */ |
} |
} |
/* Open an existing file */ |
else { |
#endif /* !_FS_READONLY */ |
if (res != FR_OK) return res; /* Trace failed */ |
if (!dir || (dir[DIR_Attr] & AM_DIR)) /* It is a directory */ |
return FR_NO_FILE; |
#if !_FS_READONLY |
if ((mode & FA_WRITE) && (dir[DIR_Attr] & AM_RDO)) /* R/O violation */ |
return FR_DENIED; |
} |
fp->dir_sect = dj.fs->winsect; /* Pointer to the directory entry */ |
fp->dir_ptr = dir; |
#endif |
fp->flag = mode; /* File access mode */ |
fp->org_clust = /* File start cluster */ |
((DWORD)LD_WORD(&dir[DIR_FstClusHI]) << 16) | LD_WORD(&dir[DIR_FstClusLO]); |
fp->fsize = LD_DWORD(&dir[DIR_FileSize]); /* File size */ |
fp->fptr = 0; fp->csect = 255; /* File pointer */ |
fp->curr_sect = 0; |
fp->fs = dj.fs; fp->id = dj.fs->id; /* Owner file system object of the file */ |
return FR_OK; |
} |
/*-----------------------------------------------------------------------*/ |
/* Read File */ |
/*-----------------------------------------------------------------------*/ |
FRESULT f_read ( |
FIL *fp, /* Pointer to the file object */ |
void *buff, /* Pointer to data buffer */ |
UINT btr, /* Number of bytes to read */ |
UINT *br /* Pointer to number of bytes read */ |
) |
{ |
FRESULT res; |
DWORD clust, sect, remain; |
UINT rcnt, cc; |
BYTE *rbuff = buff; |
*br = 0; |
res = validate(fp->fs, fp->id); /* Check validity of the object */ |
if (res != FR_OK) return res; |
if (fp->flag & FA__ERROR) return FR_RW_ERROR; /* Check error flag */ |
if (!(fp->flag & FA_READ)) return FR_DENIED; /* Check access mode */ |
remain = fp->fsize - fp->fptr; |
if (btr > remain) btr = (UINT)remain; /* Truncate btr by remaining bytes */ |
for ( ; btr; /* Repeat until all data transferred */ |
rbuff += rcnt, fp->fptr += rcnt, *br += rcnt, btr -= rcnt) { |
if ((fp->fptr % SS(fp->fs)) == 0) { /* On the sector boundary? */ |
if (fp->csect >= fp->fs->csize) { /* On the cluster boundary? */ |
clust = (fp->fptr == 0) ? /* On the top of the file? */ |
fp->org_clust : get_cluster(fp->fs, fp->curr_clust); |
if (clust < 2 || clust >= fp->fs->max_clust) goto fr_error; |
fp->curr_clust = clust; /* Update current cluster */ |
fp->csect = 0; /* Reset sector address in the cluster */ |
} |
sect = clust2sect(fp->fs, fp->curr_clust) + fp->csect; /* Get current sector */ |
cc = btr / SS(fp->fs); /* When remaining bytes >= sector size, */ |
if (cc) { /* Read maximum contiguous sectors directly */ |
if (fp->csect + cc > fp->fs->csize) /* Clip at cluster boundary */ |
cc = fp->fs->csize - fp->csect; |
if (disk_read(fp->fs->drive, rbuff, sect, (BYTE)cc) != RES_OK) |
goto fr_error; |
fp->csect += (BYTE)cc; /* Next sector address in the cluster */ |
rcnt = SS(fp->fs) * cc; /* Number of bytes transferred */ |
continue; |
} |
if (sect != fp->curr_sect) { /* Is window offset changed? */ |
#if !_FS_READONLY |
if (fp->flag & FA__DIRTY) { /* Write back file I/O buffer if needed */ |
if (disk_write(fp->fs->drive, fp->buffer, fp->curr_sect, 1) != RES_OK) |
goto fr_error; |
fp->flag &= (BYTE)~FA__DIRTY; |
} |
#endif |
if (disk_read(fp->fs->drive, fp->buffer, sect, 1) != RES_OK) /* Fill file I/O buffer with file data */ |
goto fr_error; |
fp->curr_sect = sect; |
} |
fp->csect++; /* Next sector address in the cluster */ |
} |
rcnt = SS(fp->fs) - (fp->fptr % SS(fp->fs)); /* Get partial sector from file I/O buffer */ |
if (rcnt > btr) rcnt = btr; |
memcpy(rbuff, &fp->buffer[fp->fptr % SS(fp->fs)], rcnt); |
} |
return FR_OK; |
fr_error: /* Abort this file due to an unrecoverable error */ |
fp->flag |= FA__ERROR; |
return FR_RW_ERROR; |
} |
#if !_FS_READONLY |
/*-----------------------------------------------------------------------*/ |
/* Write File */ |
/*-----------------------------------------------------------------------*/ |
FRESULT f_write ( |
FIL *fp, /* Pointer to the file object */ |
const void *buff, /* Pointer to the data to be written */ |
UINT btw, /* Number of bytes to write */ |
UINT *bw /* Pointer to number of bytes written */ |
) |
{ |
FRESULT res; |
DWORD clust, sect; |
UINT wcnt, cc; |
const BYTE *wbuff = buff; |
*bw = 0; |
res = validate(fp->fs, fp->id); /* Check validity of the object */ |
if (res != FR_OK) return res; |
if (fp->flag & FA__ERROR) return FR_RW_ERROR; /* Check error flag */ |
if (!(fp->flag & FA_WRITE)) return FR_DENIED; /* Check access mode */ |
if (fp->fsize + btw < fp->fsize) return FR_OK; /* File size cannot reach 4GB */ |
for ( ; btw; /* Repeat until all data transferred */ |
wbuff += wcnt, fp->fptr += wcnt, *bw += wcnt, btw -= wcnt) { |
if ((fp->fptr % SS(fp->fs)) == 0) { /* On the sector boundary? */ |
if (fp->csect >= fp->fs->csize) { /* On the cluster boundary? */ |
if (fp->fptr == 0) { /* On the top of the file? */ |
clust = fp->org_clust; /* Follow from the origin */ |
if (clust == 0) /* When there is no cluster chain, */ |
fp->org_clust = clust = create_chain(fp->fs, 0); /* Create a new cluster chain */ |
} else { /* Middle or end of the file */ |
clust = create_chain(fp->fs, fp->curr_clust); /* Trace or streach cluster chain */ |
} |
if (clust == 0) break; /* Could not allocate a new cluster (disk full) */ |
if (clust == 1 || clust >= fp->fs->max_clust) goto fw_error; |
fp->curr_clust = clust; /* Update current cluster */ |
fp->csect = 0; /* Reset sector address in the cluster */ |
} |
sect = clust2sect(fp->fs, fp->curr_clust) + fp->csect; /* Get current sector */ |
cc = btw / SS(fp->fs); /* When remaining bytes >= sector size, */ |
if (cc) { /* Write maximum contiguous sectors directly */ |
if (fp->csect + cc > fp->fs->csize) /* Clip at cluster boundary */ |
cc = fp->fs->csize - fp->csect; |
if (disk_write(fp->fs->drive, wbuff, sect, (BYTE)cc) != RES_OK) |
goto fw_error; |
fp->csect += (BYTE)cc; /* Next sector address in the cluster */ |
wcnt = SS(fp->fs) * cc; /* Number of bytes transferred */ |
continue; |
} |
if (sect != fp->curr_sect) { /* Is window offset changed? */ |
if (fp->flag & FA__DIRTY) { /* Write back file I/O buffer if needed */ |
if (disk_write(fp->fs->drive, fp->buffer, fp->curr_sect, 1) != RES_OK) |
goto fw_error; |
fp->flag &= (BYTE)~FA__DIRTY; |
} |
if (fp->fptr < fp->fsize && /* Fill file I/O buffer with file data */ |
disk_read(fp->fs->drive, fp->buffer, sect, 1) != RES_OK) |
goto fw_error; |
fp->curr_sect = sect; |
} |
fp->csect++; /* Next sector address in the cluster */ |
} |
wcnt = SS(fp->fs) - (fp->fptr % SS(fp->fs)); /* Put partial sector into file I/O buffer */ |
if (wcnt > btw) wcnt = btw; |
memcpy(&fp->buffer[fp->fptr % SS(fp->fs)], wbuff, wcnt); |
fp->flag |= FA__DIRTY; |
} |
if (fp->fptr > fp->fsize) fp->fsize = fp->fptr; /* Update file size if needed */ |
fp->flag |= FA__WRITTEN; /* Set file changed flag */ |
return FR_OK; |
fw_error: /* Abort this file due to an unrecoverable error */ |
fp->flag |= FA__ERROR; |
return FR_RW_ERROR; |
} |
/*-----------------------------------------------------------------------*/ |
/* Synchronize the file object */ |
/*-----------------------------------------------------------------------*/ |
FRESULT f_sync ( |
FIL *fp /* Pointer to the file object */ |
) |
{ |
FRESULT res; |
DWORD tim; |
BYTE *dir; |
res = validate(fp->fs, fp->id); /* Check validity of the object */ |
if (res == FR_OK) { |
if (fp->flag & FA__WRITTEN) { /* Has the file been written? */ |
/* Write back data buffer if needed */ |
if (fp->flag & FA__DIRTY) { |
if (disk_write(fp->fs->drive, fp->buffer, fp->curr_sect, 1) != RES_OK) |
return FR_RW_ERROR; |
fp->flag &= (BYTE)~FA__DIRTY; |
} |
/* Update the directory entry */ |
if (!move_window(fp->fs, fp->dir_sect)) |
return FR_RW_ERROR; |
dir = fp->dir_ptr; |
dir[DIR_Attr] |= AM_ARC; /* Set archive bit */ |
ST_DWORD(&dir[DIR_FileSize], fp->fsize); /* Update file size */ |
ST_WORD(&dir[DIR_FstClusLO], fp->org_clust); /* Update start cluster */ |
ST_WORD(&dir[DIR_FstClusHI], fp->org_clust >> 16); |
tim = get_fattime(); /* Updated time */ |
ST_DWORD(&dir[DIR_WrtTime], tim); |
fp->flag &= (BYTE)~FA__WRITTEN; |
res = sync(fp->fs); |
} |
} |
return res; |
} |
#endif /* !_FS_READONLY */ |
/*-----------------------------------------------------------------------*/ |
/* Close File */ |
/*-----------------------------------------------------------------------*/ |
FRESULT f_close ( |
FIL *fp /* Pointer to the file object to be closed */ |
) |
{ |
FRESULT res; |
#if !_FS_READONLY |
res = f_sync(fp); |
#else |
res = validate(fp->fs, fp->id); |
#endif |
if (res == FR_OK) fp->fs = NULL; |
return res; |
} |
#if _FS_MINIMIZE <= 2 |
/*-----------------------------------------------------------------------*/ |
/* Seek File R/W Pointer */ |
/*-----------------------------------------------------------------------*/ |
FRESULT f_lseek ( |
FIL *fp, /* Pointer to the file object */ |
DWORD ofs /* File pointer from top of file */ |
) |
{ |
FRESULT res; |
DWORD clust, csize, nsect, ifptr; |
res = validate(fp->fs, fp->id); /* Check validity of the object */ |
if (res != FR_OK) return res; |
if (fp->flag & FA__ERROR) return FR_RW_ERROR; |
if (ofs > fp->fsize /* In read-only mode, clip offset with the file size */ |
#if !_FS_READONLY |
&& !(fp->flag & FA_WRITE) |
#endif |
) ofs = fp->fsize; |
ifptr = fp->fptr; |
fp->fptr = 0; fp->csect = 255; |
nsect = 0; |
if (ofs > 0) { |
csize = (DWORD)fp->fs->csize * SS(fp->fs); /* Cluster size (byte) */ |
if (ifptr > 0 && |
(ofs - 1) / csize >= (ifptr - 1) / csize) {/* When seek to same or following cluster, */ |
fp->fptr = (ifptr - 1) & ~(csize - 1); /* start from the current cluster */ |
ofs -= fp->fptr; |
clust = fp->curr_clust; |
} else { /* When seek to back cluster, */ |
clust = fp->org_clust; /* start from the first cluster */ |
#if !_FS_READONLY |
if (clust == 0) { /* If no cluster chain, create a new chain */ |
clust = create_chain(fp->fs, 0); |
if (clust == 1) goto fk_error; |
fp->org_clust = clust; |
} |
#endif |
fp->curr_clust = clust; |
} |
if (clust != 0) { |
while (ofs > csize) { /* Cluster following loop */ |
#if !_FS_READONLY |
if (fp->flag & FA_WRITE) { /* Check if in write mode or not */ |
clust = create_chain(fp->fs, clust); /* Force streached if in write mode */ |
if (clust == 0) { /* When disk gets full, clip file size */ |
ofs = csize; break; |
} |
} else |
#endif |
clust = get_cluster(fp->fs, clust); /* Follow cluster chain if not in write mode */ |
if (clust < 2 || clust >= fp->fs->max_clust) goto fk_error; |
fp->curr_clust = clust; |
fp->fptr += csize; |
ofs -= csize; |
} |
fp->fptr += ofs; |
fp->csect = (BYTE)(ofs / SS(fp->fs)); /* Sector offset in the cluster */ |
if (ofs & (SS(fp->fs) - 1)) { |
nsect = clust2sect(fp->fs, clust) + fp->csect; /* Current sector */ |
fp->csect++; |
} |
} |
} |
if (nsect && nsect != fp->curr_sect) { |
#if !_FS_READONLY |
if (fp->flag & FA__DIRTY) { /* Write-back dirty buffer if needed */ |
if (disk_write(fp->fs->drive, fp->buffer, fp->curr_sect, 1) != RES_OK) |
goto fk_error; |
fp->flag &= (BYTE)~FA__DIRTY; |
} |
#endif |
if (disk_read(fp->fs->drive, fp->buffer, nsect, 1) != RES_OK) |
goto fk_error; |
fp->curr_sect = nsect; |
} |
#if !_FS_READONLY |
if (fp->fptr > fp->fsize) { /* Set changed flag if the file was extended */ |
fp->fsize = fp->fptr; |
fp->flag |= FA__WRITTEN; |
} |
#endif |
return FR_OK; |
fk_error: /* Abort this file due to an unrecoverable error */ |
fp->flag |= FA__ERROR; |
return FR_RW_ERROR; |
} |
#if _FS_MINIMIZE <= 1 |
/*-----------------------------------------------------------------------*/ |
/* Create a directroy object */ |
/*-----------------------------------------------------------------------*/ |
FRESULT f_opendir ( |
DIR *dj, /* Pointer to directory object to create */ |
const char *path /* Pointer to the directory path */ |
) |
{ |
FRESULT res; |
BYTE *dir; |
char fn[8+3+1]; |
res = auto_mount(&path, &dj->fs, 0); |
if (res == FR_OK) { |
res = trace_path(dj, fn, path, &dir); /* Trace the directory path */ |
if (res == FR_OK) { /* Trace completed */ |
if (dir) { /* It is not the root dir */ |
if (dir[DIR_Attr] & AM_DIR) { /* The entry is a directory */ |
dj->clust = ((DWORD)LD_WORD(&dir[DIR_FstClusHI]) << 16) | LD_WORD(&dir[DIR_FstClusLO]); |
dj->sect = clust2sect(dj->fs, dj->clust); |
dj->index = 2; |
} else { /* The entry is not a directory */ |
res = FR_NO_FILE; |
} |
} |
dj->id = dj->fs->id; |
} |
} |
return res; |
} |
/*-----------------------------------------------------------------------*/ |
/* Read Directory Entry in Sequense */ |
/*-----------------------------------------------------------------------*/ |
FRESULT f_readdir ( |
DIR *dj, /* Pointer to the directory object */ |
FILINFO *finfo /* Pointer to file information to return */ |
) |
{ |
BYTE *dir, c, res; |
res = validate(dj->fs, dj->id); /* Check validity of the object */ |
if (res != FR_OK) return res; |
finfo->fname[0] = 0; |
while (dj->sect) { |
if (!move_window(dj->fs, dj->sect)) |
return FR_RW_ERROR; |
dir = &dj->fs->win[(dj->index & ((SS(dj->fs) - 1) >> 5)) * 32]; /* pointer to the directory entry */ |
c = dir[DIR_Name]; |
if (c == 0) break; /* Has it reached to end of dir? */ |
if (c != 0xE5 && !(dir[DIR_Attr] & AM_VOL)) /* Is it a valid entry? */ |
get_fileinfo(finfo, dir); |
if (!next_dir_entry(dj)) dj->sect = 0; /* Next entry */ |
if (finfo->fname[0]) break; /* Found valid entry */ |
} |
return FR_OK; |
} |
#if _FS_MINIMIZE == 0 |
/*-----------------------------------------------------------------------*/ |
/* Get File Status */ |
/*-----------------------------------------------------------------------*/ |
FRESULT f_stat ( |
const char *path, /* Pointer to the file path */ |
FILINFO *finfo /* Pointer to file information to return */ |
) |
{ |
FRESULT res; |
DIR dj; |
BYTE *dir; |
char fn[8+3+1]; |
res = auto_mount(&path, &dj.fs, 0); |
if (res == FR_OK) { |
res = trace_path(&dj, fn, path, &dir); /* Trace the file path */ |
if (res == FR_OK) { /* Trace completed */ |
if (dir) /* Found an object */ |
get_fileinfo(finfo, dir); |
else /* It is root dir */ |
res = FR_INVALID_NAME; |
} |
} |
return res; |
} |
#if !_FS_READONLY |
/*-----------------------------------------------------------------------*/ |
/* Truncate File */ |
/*-----------------------------------------------------------------------*/ |
FRESULT f_truncate ( |
FIL *fp /* Pointer to the file object */ |
) |
{ |
FRESULT res; |
DWORD ncl; |
res = validate(fp->fs, fp->id); /* Check validity of the object */ |
if (res != FR_OK) return res; |
if (fp->flag & FA__ERROR) return FR_RW_ERROR; /* Check error flag */ |
if (!(fp->flag & FA_WRITE)) return FR_DENIED; /* Check access mode */ |
if (fp->fsize > fp->fptr) { |
fp->fsize = fp->fptr; /* Set file size to current R/W point */ |
fp->flag |= FA__WRITTEN; |
if (fp->fptr == 0) { /* When set file size to zero, remove entire cluster chain */ |
if (!remove_chain(fp->fs, fp->org_clust)) goto ft_error; |
fp->org_clust = 0; |
} else { /* When truncate a part of the file, remove remaining clusters */ |
ncl = get_cluster(fp->fs, fp->curr_clust); |
if (ncl < 2) goto ft_error; |
if (ncl < fp->fs->max_clust) { |
if (!put_cluster(fp->fs, fp->curr_clust, 0x0FFFFFFF)) goto ft_error; |
if (!remove_chain(fp->fs, ncl)) goto ft_error; |
} |
} |
} |
return FR_OK; |
ft_error: /* Abort this file due to an unrecoverable error */ |
fp->flag |= FA__ERROR; |
return FR_RW_ERROR; |
} |
/*-----------------------------------------------------------------------*/ |
/* Get Number of Free Clusters */ |
/*-----------------------------------------------------------------------*/ |
FRESULT f_getfree ( |
const char *drv, /* Pointer to the logical drive number (root dir) */ |
DWORD *nclust, /* Pointer to the variable to return number of free clusters */ |
FATFS **fatfs /* Pointer to pointer to corresponding file system object to return */ |
) |
{ |
FRESULT res; |
DWORD n, clust, sect; |
BYTE fat, f, *p; |
/* Get drive number */ |
res = auto_mount(&drv, fatfs, 0); |
if (res != FR_OK) return res; |
/* If number of free cluster is valid, return it without cluster scan. */ |
if ((*fatfs)->free_clust <= (*fatfs)->max_clust - 2) { |
*nclust = (*fatfs)->free_clust; |
return FR_OK; |
} |
/* Get number of free clusters */ |
fat = (*fatfs)->fs_type; |
n = 0; |
if (fat == FS_FAT12) { |
clust = 2; |
do { |
if ((WORD)get_cluster(*fatfs, clust) == 0) n++; |
} while (++clust < (*fatfs)->max_clust); |
} else { |
clust = (*fatfs)->max_clust; |
sect = (*fatfs)->fatbase; |
f = 0; p = 0; |
do { |
if (!f) { |
if (!move_window(*fatfs, sect++)) return FR_RW_ERROR; |
p = (*fatfs)->win; |
} |
if (fat == FS_FAT16) { |
if (LD_WORD(p) == 0) n++; |
p += 2; f += 1; |
} else { |
if (LD_DWORD(p) == 0) n++; |
p += 4; f += 2; |
} |
} while (--clust); |
} |
(*fatfs)->free_clust = n; |
#if _USE_FSINFO |
if (fat == FS_FAT32) (*fatfs)->fsi_flag = 1; |
#endif |
*nclust = n; |
return FR_OK; |
} |
/*-----------------------------------------------------------------------*/ |
/* Delete a File or Directory */ |
/*-----------------------------------------------------------------------*/ |
FRESULT f_unlink ( |
const char *path /* Pointer to the file or directory path */ |
) |
{ |
FRESULT res; |
DIR dj; |
BYTE *dir, *sdir; |
DWORD dclust, dsect; |
char fn[8+3+1]; |
res = auto_mount(&path, &dj.fs, 1); |
if (res != FR_OK) return res; |
res = trace_path(&dj, fn, path, &dir); /* Trace the file path */ |
if (res != FR_OK) return res; /* Trace failed */ |
if (!dir) return FR_INVALID_NAME; /* It is the root directory */ |
if (dir[DIR_Attr] & AM_RDO) return FR_DENIED; /* It is a R/O object */ |
dsect = dj.fs->winsect; |
dclust = ((DWORD)LD_WORD(&dir[DIR_FstClusHI]) << 16) | LD_WORD(&dir[DIR_FstClusLO]); |
if (dir[DIR_Attr] & AM_DIR) { /* It is a sub-directory */ |
dj.clust = dclust; /* Check if the sub-dir is empty or not */ |
dj.sect = clust2sect(dj.fs, dclust); |
dj.index = 2; |
do { |
if (!move_window(dj.fs, dj.sect)) return FR_RW_ERROR; |
sdir = &dj.fs->win[(dj.index & ((SS(dj.fs) - 1) >> 5)) * 32]; |
if (sdir[DIR_Name] == 0) break; |
if (sdir[DIR_Name] != 0xE5 && !(sdir[DIR_Attr] & AM_VOL)) |
return FR_DENIED; /* The directory is not empty */ |
} while (next_dir_entry(&dj)); |
} |
if (!move_window(dj.fs, dsect)) return FR_RW_ERROR; /* Mark the directory entry 'deleted' */ |
dir[DIR_Name] = 0xE5; |
dj.fs->winflag = 1; |
if (!remove_chain(dj.fs, dclust)) return FR_RW_ERROR; /* Remove the cluster chain */ |
return sync(dj.fs); |
} |
/*-----------------------------------------------------------------------*/ |
/* Create a Directory */ |
/*-----------------------------------------------------------------------*/ |
FRESULT f_mkdir ( |
const char *path /* Pointer to the directory path */ |
) |
{ |
FRESULT res; |
DIR dj; |
BYTE *dir, *fw, n; |
char fn[8+3+1]; |
DWORD sect, dsect, dclust, pclust, tim; |
res = auto_mount(&path, &dj.fs, 1); |
if (res != FR_OK) return res; |
res = trace_path(&dj, fn, path, &dir); /* Trace the file path */ |
if (res == FR_OK) return FR_EXIST; /* Any file or directory is already existing */ |
if (res != FR_NO_FILE) return res; |
res = reserve_direntry(&dj, &dir); /* Reserve a directory entry */ |
if (res != FR_OK) return res; |
sect = dj.fs->winsect; |
dclust = create_chain(dj.fs, 0); /* Allocate a cluster for new directory table */ |
if (dclust == 1) return FR_RW_ERROR; |
dsect = clust2sect(dj.fs, dclust); |
if (!dsect) return FR_DENIED; |
if (!move_window(dj.fs, dsect)) return FR_RW_ERROR; |
fw = dj.fs->win; |
memset(fw, 0, SS(dj.fs)); /* Clear the new directory table */ |
for (n = 1; n < dj.fs->csize; n++) { |
if (disk_write(dj.fs->drive, fw, ++dsect, 1) != RES_OK) |
return FR_RW_ERROR; |
} |
memset(&fw[DIR_Name], ' ', 8+3); /* Create "." entry */ |
fw[DIR_Name] = '.'; |
fw[DIR_Attr] = AM_DIR; |
tim = get_fattime(); |
ST_DWORD(&fw[DIR_WrtTime], tim); |
memcpy(&fw[32], &fw[0], 32); fw[33] = '.'; /* Create ".." entry */ |
ST_WORD(&fw[ DIR_FstClusLO], dclust); |
ST_WORD(&fw[ DIR_FstClusHI], dclust >> 16); |
pclust = dj.sclust; |
if (dj.fs->fs_type == FS_FAT32 && pclust == dj.fs->dirbase) pclust = 0; |
ST_WORD(&fw[32+DIR_FstClusLO], pclust); |
ST_WORD(&fw[32+DIR_FstClusHI], pclust >> 16); |
dj.fs->winflag = 1; |
if (!move_window(dj.fs, sect)) return FR_RW_ERROR; |
memset(&dir[0], 0, 32); /* Initialize the new entry */ |
memcpy(&dir[DIR_Name], fn, 8+3); /* Name */ |
dir[DIR_NTres] = fn[11]; |
dir[DIR_Attr] = AM_DIR; /* Attribute */ |
ST_DWORD(&dir[DIR_WrtTime], tim); /* Crated time */ |
ST_WORD(&dir[DIR_FstClusLO], dclust); /* Table start cluster */ |
ST_WORD(&dir[DIR_FstClusHI], dclust >> 16); |
return sync(dj.fs); |
} |
/*-----------------------------------------------------------------------*/ |
/* Change File Attribute */ |
/*-----------------------------------------------------------------------*/ |
FRESULT f_chmod ( |
const char *path, /* Pointer to the file path */ |
BYTE value, /* Attribute bits */ |
BYTE mask /* Attribute mask to change */ |
) |
{ |
FRESULT res; |
DIR dj; |
BYTE *dir; |
char fn[8+3+1]; |
res = auto_mount(&path, &dj.fs, 1); |
if (res == FR_OK) { |
res = trace_path(&dj, fn, path, &dir); /* Trace the file path */ |
if (res == FR_OK) { /* Trace completed */ |
if (!dir) { |
res = FR_INVALID_NAME; /* Root directory */ |
} else { |
mask &= AM_RDO|AM_HID|AM_SYS|AM_ARC; /* Valid attribute mask */ |
dir[DIR_Attr] = (value & mask) | (dir[DIR_Attr] & (BYTE)~mask); /* Apply attribute change */ |
res = sync(dj.fs); |
} |
} |
} |
return res; |
} |
/*-----------------------------------------------------------------------*/ |
/* Change Timestamp */ |
/*-----------------------------------------------------------------------*/ |
FRESULT f_utime ( |
const char *path, /* Pointer to the file/directory name */ |
const FILINFO *finfo /* Pointer to the timestamp to be set */ |
) |
{ |
FRESULT res; |
DIR dj; |
BYTE *dir; |
char fn[8+3+1]; |
res = auto_mount(&path, &dj.fs, 1); |
if (res == FR_OK) { |
res = trace_path(&dj, fn, path, &dir); /* Trace the file path */ |
if (res == FR_OK) { /* Trace completed */ |
if (!dir) { |
res = FR_INVALID_NAME; /* Root directory */ |
} else { |
ST_WORD(&dir[DIR_WrtTime], finfo->ftime); |
ST_WORD(&dir[DIR_WrtDate], finfo->fdate); |
res = sync(dj.fs); |
} |
} |
} |
return res; |
} |
/*-----------------------------------------------------------------------*/ |
/* Rename File/Directory */ |
/*-----------------------------------------------------------------------*/ |
FRESULT f_rename ( |
const char *path_old, /* Pointer to the old name */ |
const char *path_new /* Pointer to the new name */ |
) |
{ |
FRESULT res; |
DIR dj; |
DWORD sect_old; |
BYTE *dir_old, *dir_new, direntry[32-11]; |
char fn[8+3+1]; |
res = auto_mount(&path_old, &dj.fs, 1); |
if (res != FR_OK) return res; |
res = trace_path(&dj, fn, path_old, &dir_old); /* Check old object */ |
if (res != FR_OK) return res; /* The old object is not found */ |
if (!dir_old) return FR_NO_FILE; |
sect_old = dj.fs->winsect; /* Save the object information */ |
memcpy(direntry, &dir_old[DIR_Attr], 32-11); |
res = trace_path(&dj, fn, path_new, &dir_new); /* Check new object */ |
if (res == FR_OK) return FR_EXIST; /* The new object name is already existing */ |
if (res != FR_NO_FILE) return res; /* Is there no old name? */ |
res = reserve_direntry(&dj, &dir_new); /* Reserve a directory entry */ |
if (res != FR_OK) return res; |
memcpy(&dir_new[DIR_Attr], direntry, 32-11); /* Create new entry */ |
memcpy(&dir_new[DIR_Name], fn, 8+3); |
dir_new[DIR_NTres] = fn[11]; |
dj.fs->winflag = 1; |
if (!move_window(dj.fs, sect_old)) return FR_RW_ERROR; /* Delete old entry */ |
dir_old[DIR_Name] = 0xE5; |
return sync(dj.fs); |
} |
#endif /* !_FS_READONLY */ |
#endif /* _FS_MINIMIZE == 0 */ |
#endif /* _FS_MINIMIZE <= 1 */ |
#endif /* _FS_MINIMIZE <= 2 */ |
#if _USE_MKFS && !_FS_READONLY |
/*-----------------------------------------------------------------------*/ |
/* Create File System on the Drive */ |
/*-----------------------------------------------------------------------*/ |
#define N_ROOTDIR 512 /* Multiple of 32 and <= 2048 */ |
#define N_FATS 1 /* 1 or 2 */ |
#define MAX_SECTOR 64000000UL /* Maximum partition size */ |
#define MIN_SECTOR 2000UL /* Minimum partition size */ |
FRESULT f_mkfs ( |
BYTE drv, /* Logical drive number */ |
BYTE partition, /* Partitioning rule 0:FDISK, 1:SFD */ |
WORD allocsize /* Allocation unit size [bytes] */ |
) |
{ |
BYTE fmt, m, *tbl; |
DWORD b_part, b_fat, b_dir, b_data; /* Area offset (LBA) */ |
DWORD n_part, n_rsv, n_fat, n_dir; /* Area size */ |
DWORD n_clust, n; |
FATFS *fs; |
DSTATUS stat; |
/* Check validity of the parameters */ |
if (drv >= _DRIVES) return FR_INVALID_DRIVE; |
if (partition >= 2) return FR_MKFS_ABORTED; |
for (n = 512; n <= 32768U && n != allocsize; n <<= 1); |
if (n != allocsize) return FR_MKFS_ABORTED; |
/* Check mounted drive and clear work area */ |
fs = FatFs[drv]; |
if (!fs) return FR_NOT_ENABLED; |
fs->fs_type = 0; |
drv = LD2PD(drv); |
/* Get disk statics */ |
stat = disk_initialize(drv); |
if (stat & STA_NOINIT) return FR_NOT_READY; |
if (stat & STA_PROTECT) return FR_WRITE_PROTECTED; |
if (disk_ioctl(drv, GET_SECTOR_COUNT, &n_part) != RES_OK || n_part < MIN_SECTOR) |
return FR_MKFS_ABORTED; |
if (n_part > MAX_SECTOR) n_part = MAX_SECTOR; |
b_part = (!partition) ? 63 : 0; /* Boot sector */ |
n_part -= b_part; |
#if S_MAX_SIZ > 512 /* Check disk sector size */ |
if (disk_ioctl(drv, GET_SECTOR_SIZE, &SS(fs)) != RES_OK |
|| SS(fs) > S_MAX_SIZ |
|| SS(fs) > allocsize) |
return FR_MKFS_ABORTED; |
#endif |
allocsize /= SS(fs); /* Number of sectors per cluster */ |
/* Pre-compute number of clusters and FAT type */ |
n_clust = n_part / allocsize; |
fmt = FS_FAT12; |
if (n_clust >= 0xFF5) fmt = FS_FAT16; |
if (n_clust >= 0xFFF5) fmt = FS_FAT32; |
/* Determine offset and size of FAT structure */ |
switch (fmt) { |
case FS_FAT12: |
n_fat = ((n_clust * 3 + 1) / 2 + 3 + SS(fs) - 1) / SS(fs); |
n_rsv = 1 + partition; |
n_dir = N_ROOTDIR * 32 / SS(fs); |
break; |
case FS_FAT16: |
n_fat = ((n_clust * 2) + 4 + SS(fs) - 1) / SS(fs); |
n_rsv = 1 + partition; |
n_dir = N_ROOTDIR * 32 / SS(fs); |
break; |
default: |
n_fat = ((n_clust * 4) + 8 + SS(fs) - 1) / SS(fs); |
n_rsv = 33 - partition; |
n_dir = 0; |
} |
b_fat = b_part + n_rsv; /* FATs start sector */ |
b_dir = b_fat + n_fat * N_FATS; /* Directory start sector */ |
b_data = b_dir + n_dir; /* Data start sector */ |
/* Align data start sector to erase block boundary (for flash memory media) */ |
if (disk_ioctl(drv, GET_BLOCK_SIZE, &n) != RES_OK) return FR_MKFS_ABORTED; |
n = (b_data + n - 1) & ~(n - 1); |
n_fat += (n - b_data) / N_FATS; |
/* b_dir and b_data are no longer used below */ |
/* Determine number of cluster and final check of validity of the FAT type */ |
n_clust = (n_part - n_rsv - n_fat * N_FATS - n_dir) / allocsize; |
if ( (fmt == FS_FAT16 && n_clust < 0xFF5) |
|| (fmt == FS_FAT32 && n_clust < 0xFFF5)) |
return FR_MKFS_ABORTED; |
/* Create partition table if needed */ |
if (!partition) { |
DWORD n_disk = b_part + n_part; |
tbl = &fs->win[MBR_Table]; |
ST_DWORD(&tbl[0], 0x00010180); /* Partition start in CHS */ |
if (n_disk < 63UL * 255 * 1024) { /* Partition end in CHS */ |
n_disk = n_disk / 63 / 255; |
tbl[7] = (BYTE)n_disk; |
tbl[6] = (BYTE)((n_disk >> 2) | 63); |
} else { |
ST_WORD(&tbl[6], 0xFFFF); |
} |
tbl[5] = 254; |
if (fmt != FS_FAT32) /* System ID */ |
tbl[4] = (n_part < 0x10000) ? 0x04 : 0x06; |
else |
tbl[4] = 0x0c; |
ST_DWORD(&tbl[8], 63); /* Partition start in LBA */ |
ST_DWORD(&tbl[12], n_part); /* Partition size in LBA */ |
ST_WORD(&tbl[64], 0xAA55); /* Signature */ |
if (disk_write(drv, fs->win, 0, 1) != RES_OK) |
return FR_RW_ERROR; |
} |
/* Create boot record */ |
tbl = fs->win; /* Clear buffer */ |
memset(tbl, 0, SS(fs)); |
ST_DWORD(&tbl[BS_jmpBoot], 0x90FEEB); /* Boot code (jmp $, nop) */ |
ST_WORD(&tbl[BPB_BytsPerSec], SS(fs)); /* Sector size */ |
tbl[BPB_SecPerClus] = (BYTE)allocsize; /* Sectors per cluster */ |
ST_WORD(&tbl[BPB_RsvdSecCnt], n_rsv); /* Reserved sectors */ |
tbl[BPB_NumFATs] = N_FATS; /* Number of FATs */ |
ST_WORD(&tbl[BPB_RootEntCnt], SS(fs) / 32 * n_dir); /* Number of rootdir entries */ |
if (n_part < 0x10000) { /* Number of total sectors */ |
ST_WORD(&tbl[BPB_TotSec16], n_part); |
} else { |
ST_DWORD(&tbl[BPB_TotSec32], n_part); |
} |
tbl[BPB_Media] = 0xF8; /* Media descripter */ |
ST_WORD(&tbl[BPB_SecPerTrk], 63); /* Number of sectors per track */ |
ST_WORD(&tbl[BPB_NumHeads], 255); /* Number of heads */ |
ST_DWORD(&tbl[BPB_HiddSec], b_part); /* Hidden sectors */ |
n = get_fattime(); /* Use current time as a VSN */ |
if (fmt != FS_FAT32) { |
ST_DWORD(&tbl[BS_VolID], n); /* Volume serial number */ |
ST_WORD(&tbl[BPB_FATSz16], n_fat); /* Number of secters per FAT */ |
tbl[BS_DrvNum] = 0x80; /* Drive number */ |
tbl[BS_BootSig] = 0x29; /* Extended boot signature */ |
memcpy(&tbl[BS_VolLab], "NO NAME FAT ", 19); /* Volume lavel, FAT signature */ |
} else { |
ST_DWORD(&tbl[BS_VolID32], n); /* Volume serial number */ |
ST_DWORD(&tbl[BPB_FATSz32], n_fat); /* Number of secters per FAT */ |
ST_DWORD(&tbl[BPB_RootClus], 2); /* Root directory cluster (2) */ |
ST_WORD(&tbl[BPB_FSInfo], 1); /* FSInfo record (bs+1) */ |
ST_WORD(&tbl[BPB_BkBootSec], 6); /* Backup boot record (bs+6) */ |
tbl[BS_DrvNum32] = 0x80; /* Drive number */ |
tbl[BS_BootSig32] = 0x29; /* Extended boot signature */ |
memcpy(&tbl[BS_VolLab32], "NO NAME FAT32 ", 19); /* Volume lavel, FAT signature */ |
} |
ST_WORD(&tbl[BS_55AA], 0xAA55); /* Signature */ |
if (disk_write(drv, tbl, b_part+0, 1) != RES_OK) |
return FR_RW_ERROR; |
if (fmt == FS_FAT32) |
disk_write(drv, tbl, b_part+6, 1); |
/* Initialize FAT area */ |
for (m = 0; m < N_FATS; m++) { |
memset(tbl, 0, SS(fs)); /* 1st sector of the FAT */ |
if (fmt != FS_FAT32) { |
n = (fmt == FS_FAT12) ? 0x00FFFFF8 : 0xFFFFFFF8; |
ST_DWORD(&tbl[0], n); /* Reserve cluster #0-1 (FAT12/16) */ |
} else { |
ST_DWORD(&tbl[0], 0xFFFFFFF8); /* Reserve cluster #0-1 (FAT32) */ |
ST_DWORD(&tbl[4], 0xFFFFFFFF); |
ST_DWORD(&tbl[8], 0x0FFFFFFF); /* Reserve cluster #2 for root dir */ |
} |
if (disk_write(drv, tbl, b_fat++, 1) != RES_OK) |
return FR_RW_ERROR; |
memset(tbl, 0, SS(fs)); /* Following FAT entries are filled by zero */ |
for (n = 1; n < n_fat; n++) { |
if (disk_write(drv, tbl, b_fat++, 1) != RES_OK) |
return FR_RW_ERROR; |
} |
} |
/* Initialize Root directory */ |
m = (BYTE)((fmt == FS_FAT32) ? allocsize : n_dir); |
do { |
if (disk_write(drv, tbl, b_fat++, 1) != RES_OK) |
return FR_RW_ERROR; |
} while (--m); |
/* Create FSInfo record if needed */ |
if (fmt == FS_FAT32) { |
ST_WORD(&tbl[BS_55AA], 0xAA55); |
ST_DWORD(&tbl[FSI_LeadSig], 0x41615252); |
ST_DWORD(&tbl[FSI_StrucSig], 0x61417272); |
ST_DWORD(&tbl[FSI_Free_Count], n_clust - 1); |
ST_DWORD(&tbl[FSI_Nxt_Free], 0xFFFFFFFF); |
disk_write(drv, tbl, b_part+1, 1); |
disk_write(drv, tbl, b_part+7, 1); |
} |
return (disk_ioctl(drv, CTRL_SYNC, NULL) == RES_OK) ? FR_OK : FR_RW_ERROR; |
} |
#endif /* _USE_MKFS && !_FS_READONLY */ |
#if _USE_STRFUNC >= 1 |
/*-----------------------------------------------------------------------*/ |
/* Get a string from the file */ |
/*-----------------------------------------------------------------------*/ |
char* fgets ( |
char* buff, /* Pointer to the string buffer to read */ |
int len, /* Size of string buffer */ |
FIL* fil /* Pointer to the file object */ |
) |
{ |
int i = 0; |
char *p = buff; |
UINT rc; |
while (i < len - 1) { /* Read bytes until buffer gets filled */ |
f_read(fil, p, 1, &rc); |
if (rc != 1) break; /* Break when no data to read */ |
#if _USE_STRFUNC >= 2 |
if (*p == '\r') continue; /* Strip '\r' */ |
#endif |
i++; |
if (*p++ == '\n') break; /* Break when reached end of line */ |
} |
*p = 0; |
return i ? buff : 0; /* When no data read (eof or error), return with error. */ |
} |
#if !_FS_READONLY |
#include <stdarg.h> |
/*-----------------------------------------------------------------------*/ |
/* Put a character to the file */ |
/*-----------------------------------------------------------------------*/ |
int fputc ( |
int chr, /* A character to be output */ |
FIL* fil /* Ponter to the file object */ |
) |
{ |
UINT bw; |
char c; |
#if _USE_STRFUNC >= 2 |
if (chr == '\n') fputc ('\r', fil); /* LF -> CRLF conversion */ |
#endif |
if (!fil) { /* Special value may be used to switch the destination to any other device */ |
/* put_console(chr); */ |
return chr; |
} |
c = (char)chr; |
f_write(fil, &c, 1, &bw); /* Write a byte to the file */ |
return bw ? chr : EOF; /* Return the resulut */ |
} |
/*-----------------------------------------------------------------------*/ |
/* Put a string to the file */ |
/*-----------------------------------------------------------------------*/ |
int fputs ( |
const char* str, /* Pointer to the string to be output */ |
FIL* fil /* Pointer to the file object */ |
) |
{ |
int n; |
for (n = 0; *str; str++, n++) { |
if (fputc(*str, fil) == EOF) return EOF; |
} |
return n; |
} |
/*-----------------------------------------------------------------------*/ |
/* Put a formatted string to the file */ |
/*-----------------------------------------------------------------------*/ |
int fprintf ( |
FIL* fil, /* Pointer to the file object */ |
const char* str, /* Pointer to the format string */ |
... /* Optional arguments... */ |
) |
{ |
va_list arp; |
UCHAR c, f, r; |
ULONG val; |
char s[16]; |
int i, w, res, cc; |
va_start(arp, str); |
for (cc = res = 0; cc != EOF; res += cc) { |
c = *str++; |
if (c == 0) break; /* End of string */ |
if (c != '%') { /* Non escape cahracter */ |
cc = fputc(c, fil); |
if (cc != EOF) cc = 1; |
continue; |
} |
w = f = 0; |
c = *str++; |
if (c == '0') { /* Flag: '0' padding */ |
f = 1; c = *str++; |
} |
while (c >= '0' && c <= '9') { /* Precision */ |
w = w * 10 + (c - '0'); |
c = *str++; |
} |
if (c == 'l') { /* Prefix: Size is long int */ |
f |= 2; c = *str++; |
} |
if (c == 's') { /* Type is string */ |
cc = fputs(va_arg(arp, char*), fil); |
continue; |
} |
if (c == 'c') { /* Type is character */ |
cc = fputc(va_arg(arp, char), fil); |
if (cc != EOF) cc = 1; |
continue; |
} |
r = 0; |
if (c == 'd') r = 10; /* Type is signed decimal */ |
if (c == 'u') r = 10; /* Type is unsigned decimal */ |
if (c == 'X') r = 16; /* Type is unsigned hexdecimal */ |
if (r == 0) break; /* Unknown type */ |
if (f & 2) { /* Get the value */ |
val = (ULONG)va_arg(arp, long); |
} else { |
val = (c == 'd') ? (ULONG)(long)va_arg(arp, int) : (ULONG)va_arg(arp, unsigned int); |
} |
/* Put numeral string */ |
if (c == 'd') { |
if (val >= 0x80000000) { |
val = 0 - val; |
f |= 4; |
} |
} |
i = sizeof(s) - 1; s[i] = 0; |
do { |
c = (UCHAR)(val % r + '0'); |
if (c > '9') c += 7; |
s[--i] = c; |
val /= r; |
} while (i && val); |
if (i && (f & 4)) s[--i] = '-'; |
w = sizeof(s) - 1 - w; |
while (i && i > w) s[--i] = (f & 1) ? '0' : ' '; |
cc = fputs(&s[i], fil); |
} |
va_end(arp); |
return (cc == EOF) ? cc : res; |
} |
#endif /* !_FS_READONLY */ |
#endif /* _USE_STRFUNC >= 1*/ |
/Designs/Data_loggers/DOGFINDER01A/SW/ATMEGA168/ff.h |
---|
0,0 → 1,339 |
/*--------------------------------------------------------------------------/ |
/ FatFs - FAT file system module include file R0.06 (C)ChaN, 2008 |
/---------------------------------------------------------------------------/ |
/ FatFs module is an experimenal project to implement FAT file system to |
/ cheap microcontrollers. This is a free software and is opened for education, |
/ research and development under license policy of following trems. |
/ |
/ Copyright (C) 2008, ChaN, all right reserved. |
/ |
/ * The FatFs module is a free software and there is no warranty. |
/ * You can use, modify and/or redistribute it for personal, non-profit or |
/ commercial use without any restriction under your responsibility. |
/ * Redistributions of source code must retain the above copyright notice. |
/ |
/---------------------------------------------------------------------------*/ |
#ifndef _FATFS |
#define _MCU_ENDIAN 0 |
/* The _MCU_ENDIAN defines which access method is used to the FAT structure. |
/ 1: Enable word access. |
/ 2: Disable word access and use byte-by-byte access instead. |
/ When the architectural byte order of the MCU is big-endian and/or address |
/ miss-aligned access results incorrect behavior, the _MCU_ENDIAN must be set to 2. |
/ If it is not the case, it can also be set to 1 for good code efficiency. */ |
#define _FS_READONLY 0 |
/* Setting _FS_READONLY to 1 defines read only configuration. This removes |
/ writing functions, f_write, f_sync, f_unlink, f_mkdir, f_chmod, f_rename, |
/ f_truncate and useless f_getfree. */ |
#define _FS_MINIMIZE 0 |
/* The _FS_MINIMIZE option defines minimization level to remove some functions. |
/ 0: Full function. |
/ 1: f_stat, f_getfree, f_unlink, f_mkdir, f_chmod, f_truncate and f_rename are removed. |
/ 2: f_opendir and f_readdir are removed in addition to level 1. |
/ 3: f_lseek is removed in addition to level 2. */ |
#define _USE_STRFUNC 0 |
/* To enable string functions, set _USE_STRFUNC to 1 or 2. */ |
#define _USE_MKFS 0 |
/* When _USE_MKFS is set to 1 and _FS_READONLY is set to 0, f_mkfs function is |
/ enabled. */ |
#define _DRIVES 2 |
/* Number of logical drives to be used. This affects the size of internal table. */ |
#define _MULTI_PARTITION 0 |
/* When _MULTI_PARTITION is set to 0, each logical drive is bound to same |
/ physical drive number and can mount only 1st primaly partition. When it is |
/ set to 1, each logical drive can mount a partition listed in Drives[]. */ |
#define _USE_FSINFO 0 |
/* To enable FSInfo support on FAT32 volume, set _USE_FSINFO to 1. */ |
#define _USE_SJIS 1 |
/* When _USE_SJIS is set to 1, Shift-JIS code transparency is enabled, otherwise |
/ only US-ASCII(7bit) code can be accepted as file/directory name. */ |
#define _USE_NTFLAG 1 |
/* When _USE_NTFLAG is set to 1, upper/lower case of the file name is preserved. |
/ Note that the files are always accessed in case insensitive. */ |
#include "integer.h" |
/* Definitions corresponds to multiple sector size (not tested) */ |
#define S_MAX_SIZ 512U /* Do not change */ |
#if S_MAX_SIZ > 512U |
#define SS(fs) ((fs)->s_size) |
#else |
#define SS(fs) 512U |
#endif |
/* File system object structure */ |
typedef struct _FATFS { |
WORD id; /* File system mount ID */ |
WORD n_rootdir; /* Number of root directory entries */ |
DWORD winsect; /* Current sector appearing in the win[] */ |
DWORD sects_fat; /* Sectors per fat */ |
DWORD max_clust; /* Maximum cluster# + 1 */ |
DWORD fatbase; /* FAT start sector */ |
DWORD dirbase; /* Root directory start sector (cluster# for FAT32) */ |
DWORD database; /* Data start sector */ |
#if !_FS_READONLY |
DWORD last_clust; /* Last allocated cluster */ |
DWORD free_clust; /* Number of free clusters */ |
#if _USE_FSINFO |
DWORD fsi_sector; /* fsinfo sector */ |
BYTE fsi_flag; /* fsinfo dirty flag (1:must be written back) */ |
BYTE pad2; |
#endif |
#endif |
BYTE fs_type; /* FAT sub type */ |
BYTE csize; /* Number of sectors per cluster */ |
#if S_MAX_SIZ > 512U |
WORD s_size; /* Sector size */ |
#endif |
BYTE n_fats; /* Number of FAT copies */ |
BYTE drive; /* Physical drive number */ |
BYTE winflag; /* win[] dirty flag (1:must be written back) */ |
BYTE pad1; |
BYTE win[S_MAX_SIZ]; /* Disk access window for Directory/FAT */ |
} FATFS; |
/* Directory object structure */ |
typedef struct _DIR { |
WORD id; /* Owner file system mount ID */ |
WORD index; /* Current index */ |
FATFS* fs; /* Pointer to the owner file system object */ |
DWORD sclust; /* Start cluster */ |
DWORD clust; /* Current cluster */ |
DWORD sect; /* Current sector */ |
} DIR; |
/* File object structure */ |
typedef struct _FIL { |
WORD id; /* Owner file system mount ID */ |
BYTE flag; /* File status flags */ |
BYTE csect; /* Sector address in the cluster */ |
FATFS* fs; /* Pointer to the owner file system object */ |
DWORD fptr; /* File R/W pointer */ |
DWORD fsize; /* File size */ |
DWORD org_clust; /* File start cluster */ |
DWORD curr_clust; /* Current cluster */ |
DWORD curr_sect; /* Current sector */ |
#if _FS_READONLY == 0 |
DWORD dir_sect; /* Sector containing the directory entry */ |
BYTE* dir_ptr; /* Ponter to the directory entry in the window */ |
#endif |
BYTE buffer[S_MAX_SIZ]; /* File R/W buffer */ |
} FIL; |
/* File status structure */ |
typedef struct _FILINFO { |
DWORD fsize; /* Size */ |
WORD fdate; /* Date */ |
WORD ftime; /* Time */ |
BYTE fattrib; /* Attribute */ |
char fname[8+1+3+1]; /* Name (8.3 format) */ |
} FILINFO; |
/* Definitions corresponds to multi partition */ |
#if _MULTI_PARTITION != 0 /* Multiple partition cfg */ |
typedef struct _PARTITION { |
BYTE pd; /* Physical drive # (0-255) */ |
BYTE pt; /* Partition # (0-3) */ |
} PARTITION; |
extern |
const PARTITION Drives[]; /* Logical drive# to physical location conversion table */ |
#define LD2PD(drv) (Drives[drv].pd) /* Get physical drive# */ |
#define LD2PT(drv) (Drives[drv].pt) /* Get partition# */ |
#else /* Single partition cfg */ |
#define LD2PD(drv) (drv) /* Physical drive# is equal to logical drive# */ |
#define LD2PT(drv) 0 /* Always mounts the 1st partition */ |
#endif |
/* File function return code (FRESULT) */ |
typedef enum { |
FR_OK = 0, /* 0 */ |
FR_NOT_READY, /* 1 */ |
FR_NO_FILE, /* 2 */ |
FR_NO_PATH, /* 3 */ |
FR_INVALID_NAME, /* 4 */ |
FR_INVALID_DRIVE, /* 5 */ |
FR_DENIED, /* 6 */ |
FR_EXIST, /* 7 */ |
FR_RW_ERROR, /* 8 */ |
FR_WRITE_PROTECTED, /* 9 */ |
FR_NOT_ENABLED, /* 10 */ |
FR_NO_FILESYSTEM, /* 11 */ |
FR_INVALID_OBJECT, /* 12 */ |
FR_MKFS_ABORTED /* 13 */ |
} FRESULT; |
/*-----------------------------------------------------*/ |
/* FatFs module application interface */ |
FRESULT f_mount (BYTE, FATFS*); /* Mount/Unmount a logical drive */ |
FRESULT f_open (FIL*, const char*, BYTE); /* Open or create a file */ |
FRESULT f_read (FIL*, void*, UINT, UINT*); /* Read data from a file */ |
FRESULT f_write (FIL*, const void*, UINT, UINT*); /* Write data to a file */ |
FRESULT f_lseek (FIL*, DWORD); /* Move file pointer of a file object */ |
FRESULT f_close (FIL*); /* Close an open file object */ |
FRESULT f_opendir (DIR*, const char*); /* Open an existing directory */ |
FRESULT f_readdir (DIR*, FILINFO*); /* Read a directory item */ |
FRESULT f_stat (const char*, FILINFO*); /* Get file status */ |
FRESULT f_getfree (const char*, DWORD*, FATFS**); /* Get number of free clusters on the drive */ |
FRESULT f_truncate (FIL*); /* Truncate file */ |
FRESULT f_sync (FIL*); /* Flush cached data of a writing file */ |
FRESULT f_unlink (const char*); /* Delete an existing file or directory */ |
FRESULT f_mkdir (const char*); /* Create a new directory */ |
FRESULT f_chmod (const char*, BYTE, BYTE); /* Change file/dir attriburte */ |
FRESULT f_utime (const char*, const FILINFO*); /* Change file/dir timestamp */ |
FRESULT f_rename (const char*, const char*); /* Rename/Move a file or directory */ |
FRESULT f_mkfs (BYTE, BYTE, WORD); /* Create a file system on the drive */ |
#if _USE_STRFUNC |
#define feof(fp) ((fp)->fptr == (fp)->fsize) |
#define EOF -1 |
int fputc (int, FIL*); /* Put a character to the file */ |
int fputs (const char*, FIL*); /* Put a string to the file */ |
int fprintf (FIL*, const char*, ...); /* Put a formatted string to the file */ |
char* fgets (char*, int, FIL*); /* Get a string from the file */ |
#endif |
/* User defined function to give a current time to fatfs module */ |
DWORD get_fattime (void); /* 31-25: Year(0-127 org.1980), 24-21: Month(1-12), 20-16: Day(1-31) */ |
/* 15-11: Hour(0-23), 10-5: Minute(0-59), 4-0: Second(0-29 *2) */ |
/* File access control and file status flags (FIL.flag) */ |
#define FA_READ 0x01 |
#define FA_OPEN_EXISTING 0x00 |
#if _FS_READONLY == 0 |
#define FA_WRITE 0x02 |
#define FA_CREATE_NEW 0x04 |
#define FA_CREATE_ALWAYS 0x08 |
#define FA_OPEN_ALWAYS 0x10 |
#define FA__WRITTEN 0x20 |
#define FA__DIRTY 0x40 |
#endif |
#define FA__ERROR 0x80 |
/* FAT sub type (FATFS.fs_type) */ |
#define FS_FAT12 1 |
#define FS_FAT16 2 |
#define FS_FAT32 3 |
/* File attribute bits for directory entry */ |
#define AM_RDO 0x01 /* Read only */ |
#define AM_HID 0x02 /* Hidden */ |
#define AM_SYS 0x04 /* System */ |
#define AM_VOL 0x08 /* Volume label */ |
#define AM_LFN 0x0F /* LFN entry */ |
#define AM_DIR 0x10 /* Directory */ |
#define AM_ARC 0x20 /* Archive */ |
/* Offset of FAT structure members */ |
#define BS_jmpBoot 0 |
#define BS_OEMName 3 |
#define BPB_BytsPerSec 11 |
#define BPB_SecPerClus 13 |
#define BPB_RsvdSecCnt 14 |
#define BPB_NumFATs 16 |
#define BPB_RootEntCnt 17 |
#define BPB_TotSec16 19 |
#define BPB_Media 21 |
#define BPB_FATSz16 22 |
#define BPB_SecPerTrk 24 |
#define BPB_NumHeads 26 |
#define BPB_HiddSec 28 |
#define BPB_TotSec32 32 |
#define BS_55AA 510 |
#define BS_DrvNum 36 |
#define BS_BootSig 38 |
#define BS_VolID 39 |
#define BS_VolLab 43 |
#define BS_FilSysType 54 |
#define BPB_FATSz32 36 |
#define BPB_ExtFlags 40 |
#define BPB_FSVer 42 |
#define BPB_RootClus 44 |
#define BPB_FSInfo 48 |
#define BPB_BkBootSec 50 |
#define BS_DrvNum32 64 |
#define BS_BootSig32 66 |
#define BS_VolID32 67 |
#define BS_VolLab32 71 |
#define BS_FilSysType32 82 |
#define FSI_LeadSig 0 |
#define FSI_StrucSig 484 |
#define FSI_Free_Count 488 |
#define FSI_Nxt_Free 492 |
#define MBR_Table 446 |
#define DIR_Name 0 |
#define DIR_Attr 11 |
#define DIR_NTres 12 |
#define DIR_CrtTime 14 |
#define DIR_CrtDate 16 |
#define DIR_FstClusHI 20 |
#define DIR_WrtTime 22 |
#define DIR_WrtDate 24 |
#define DIR_FstClusLO 26 |
#define DIR_FileSize 28 |
/* Multi-byte word access macros */ |
#if _MCU_ENDIAN == 1 /* Use word access */ |
#define LD_WORD(ptr) (WORD)(*(WORD*)(BYTE*)(ptr)) |
#define LD_DWORD(ptr) (DWORD)(*(DWORD*)(BYTE*)(ptr)) |
#define ST_WORD(ptr,val) *(WORD*)(BYTE*)(ptr)=(WORD)(val) |
#define ST_DWORD(ptr,val) *(DWORD*)(BYTE*)(ptr)=(DWORD)(val) |
#elif _MCU_ENDIAN == 2 /* Use byte-by-byte access */ |
#define LD_WORD(ptr) (WORD)(((WORD)*(volatile BYTE*)((ptr)+1)<<8)|(WORD)*(volatile BYTE*)(ptr)) |
#define LD_DWORD(ptr) (DWORD)(((DWORD)*(volatile BYTE*)((ptr)+3)<<24)|((DWORD)*(volatile BYTE*)((ptr)+2)<<16)|((WORD)*(volatile BYTE*)((ptr)+1)<<8)|*(volatile BYTE*)(ptr)) |
#define ST_WORD(ptr,val) *(volatile BYTE*)(ptr)=(BYTE)(val); *(volatile BYTE*)((ptr)+1)=(BYTE)((WORD)(val)>>8) |
#define ST_DWORD(ptr,val) *(volatile BYTE*)(ptr)=(BYTE)(val); *(volatile BYTE*)((ptr)+1)=(BYTE)((WORD)(val)>>8); *(volatile BYTE*)((ptr)+2)=(BYTE)((DWORD)(val)>>16); *(volatile BYTE*)((ptr)+3)=(BYTE)((DWORD)(val)>>24) |
#else |
#error Do not forget to set _MCU_ENDIAN properly! |
#endif |
#define _FATFS |
#endif /* _FATFS */ |
/Designs/Data_loggers/DOGFINDER01A/SW/ATMEGA168/glg.hex |
---|
0,0 → 1,573 |
:100000000C9441000C945E000C945E000C945E0015 |
:100010000C945E000C945E000C945E000C945E00E8 |
:100020000C945E000C945E000C945E000C94C00274 |
:100030000C945E000C945E000C945E000C945E00C8 |
:100040000C945E000C945E000C94B5000C945E0061 |
:100050000C945E000C9460000C945E000C945E00A6 |
:100060000C945E000C945E00244750524D430024D3 |
:100070004750474741002E6C6F6700244750524D50 |
:10008000430011241FBECFEFD4E0DEBFCDBF11E08F |
:10009000A0E0B1E0EAEAF3E202C005900D92A630DA |
:1000A000B107D9F714E0A6E0B1E001C01D92AF336B |
:1000B000B107E1F70E9435010C94D3110C940000B4 |
:1000C0001F920F920FB60F9211242F933F938F938D |
:1000D000209178003091790080917C00203D31059D |
:1000E00070F4809109018F3030F08091650181605A |
:1000F0008093650106C08F5F8093090102C0109252 |
:10010000090181E02C32380770F0809108018F30AE |
:1001100030F0809165018E7F8093650106C08F5F0E |
:100120008093080102C01092080130936701209368 |
:10013000660182E480937C0080917C00309302020F |
:100140002093010281E480937C008FED80937A00FC |
:100150008F913F912F910F900FBE0F901F90189588 |
:1001600060E070E081EA96E308951F920F920FB667 |
:100170000F9211248F939F93EF93FF939091C6005A |
:1001800080916A01863988F48F5F80936A0180913B |
:100190006801E82FF0E0E859FE4F93838F5F8639BE |
:1001A00008F080E08093680105C08091650182605D |
:1001B00080936501FF91EF919F918F910F900FBEFA |
:1001C0000F901F90189590E051E448E901C090E02D |
:1001D0008091650180FD46C03091690180916A017E |
:1001E000882311F420E013C0E32FF0E0E859FE4F1C |
:1001F0002381E32FEF5FF89480916A01815080930F |
:100200006A017894E63908F0E0E0E09369018091B2 |
:10021000650181FF14C0F8941092C1001092690129 |
:100220001092680110926A015093C4004093C1007B |
:10023000809165018D7F809365017894C8CF2223DA |
:1002400039F2992319F4243209F0C2CFE92FF0E0F2 |
:10025000ED5EFE4F20839F5F2A3029F0923508F033 |
:10026000B6CFB6CF90E0892F0895A2E0B0E0EBE3DF |
:10027000F1E00C94A1118DE085B98EE284B98FE391 |
:1002800088B917B88EEA8BB982E58AB980E58CBD4A |
:1002900081E08DBD83ED90E3909389008093880089 |
:1002A0008AE08093810082E080936F0082E187BDC5 |
:1002B00082E484BD81E480937C008FED80937A009A |
:1002C00078946FE172E080E00E942709EE24FF2419 |
:1002D00034E6832E77247A9423E0C22E95E0D92E3B |
:1002E0005E010894A11CB11C82E3982E1092C100FB |
:1002F0002998809212018091650180FF02C080924E |
:100300001201809112018823B1F7299A709212018B |
:100310008091650180FD05C080E00E943D0F81FF56 |
:1003200002C07092120180911201882389F791E036 |
:100330000EC0C5BCD0921201809112018823E1F752 |
:1003400015BCD0921201809112018823E1F79150DF |
:1003500080F7F8941092C100109269011092680120 |
:1003600010926A0181E48093C40088E98093C100FF |
:10037000809165018D7F80936501789402C0EE24A1 |
:10038000FF240E94E300882309F4B0CF2BE730E07C |
:10039000A3E1B1E0F9012F5F3F4F9491992329F038 |
:1003A0008C91981771F41196F5CFE3E1F1E082E0BA |
:1003B0009081913220F331969C32D1F78150C1F770 |
:1003C0007F01E114F104E9F2F70180818134C9F67B |
:1003D000E3E1F1E089E09081913208F4A6C0319622 |
:1003E0009C32C9F78150B9F77F01309709F49DC05D |
:1003F000848195819093140180931301828193816C |
:10040000909316018093150180819181909318013A |
:100410008093170166E770E089E191E00E9437114F |
:1004200042E163E171E083E092E00E947F09892B61 |
:1004300009F07DC040910D0250910E0260910F02B3 |
:100440007091100283E092E00E94E404892B09F08D |
:100450006EC092E00EC0C5BCD09212018091120114 |
:100460008823E1F715BCD0921201809112018823F4 |
:10047000E1F7915080F73FC02FE630E0A3E1B1E013 |
:10048000F9012F5F3F4F9491992389F08C91981730 |
:1004900009F064C01196F4CF1196F9012F5F3F4F18 |
:1004A0009491992321F08C919817B1F311C0042FE6 |
:1004B00010E09501A80163E171E083E092E00E9401 |
:1004C000B606892BF9F489819A8108171907D1F4A6 |
:1004D0008091650182FF0FC083E092E00E94510687 |
:1004E000892B11F096E024C0F894809165018B7FF0 |
:1004F0008093650178940E94E300482F882309F0D7 |
:10050000BBCF31C095E014C0C5BC90921201809160 |
:1005100012018823E1F715BC90921201809112011B |
:100520008823E1F7915080F7E1CE93E001C094E099 |
:100530001092C100299833E029E135BD20931201C2 |
:10054000809112018823E1F715BC2093120180915C |
:1005500012018823E1F7915081F7FFCF28E630E0C0 |
:10056000A3E1B1E09ACF1092C100299883E092E014 |
:100570000E94A806892B11F097E0DACF91E0D2CF44 |
:100580001F920F920FB60F9211242F938F939F9368 |
:1005900080911201882319F081508093120180917B |
:1005A000060190910701019690930701809306013F |
:1005B0008055964448F010920701109206018091F0 |
:1005C00065018460809365010E9417119F918F914E |
:1005D0002F910F900FBE0F901F901895FC01009760 |
:1005E00069F0808191818617970741F480E00E942D |
:1005F0003D0F282F30E02170307002C02CE030E039 |
:10060000C9010895A0E0B0E0E8E0F3E00C94A01187 |
:100610004B015C01C0910A01D0910B01CC80DD80BF |
:10062000EE80FF80C616D706E806F90609F44EC02C |
:100630008F8D8823A1F180E2682E712C6C0E7D1EB7 |
:1006400001E0A7019601B30180E00E94A30F892B6E |
:10065000D9F51F8E8C899D89A0E0B0E02885398569 |
:100660004A855B85820F931FA41FB51FC816D90644 |
:10067000EA06FB06A0F41E8D10C08C899D89A0E0BF |
:10068000B0E0C80ED91EEA1EFB1E01E0A7019601CC |
:10069000B30180E00E94A30F1150123070F7811453 |
:1006A0009104A104B10491F0BE01605E7F4F01E0AE |
:1006B000A501940180E00E94440F892B29F48C82CB |
:1006C0009D82AE82BF8202C080E001C081E0CDB7D2 |
:1006D000DEB7EEE00C94BC11A0E0B0E0E2E7F3E09E |
:1006E0000C94A011EC014B01E0900A01F0900B0179 |
:1006F000F701A084B184C284D384848D813021F039 |
:10070000823009F072C05AC08E01000F111F0C0F09 |
:100710001D1F16950795B801672F7727669580E00E |
:1007200090E06A0D7B1D8C1D9D1D0E940203882395 |
:1007300009F45BC0D801B17051E0652E712C6C22B8 |
:100740007D22C0FF0AC0F701EA0FFB1F80A18F7056 |
:10075000982D9295907F982B01C0982DAE0DBF1DBE |
:10076000FD0190A3E801219681E0F701878FBE018A |
:10077000672F7727669580E090E06A0D7B1D8C1DC2 |
:100780009D1D0E940203882381F1DE01B170611476 |
:10079000710439F034E0969487943A95E1F7982DF6 |
:1007A00008C0F701EA0FFB1F90A1907F892D8F7081 |
:1007B000982BAE0DBF1DFD0190A313C06D2F7727A1 |
:1007C00080E090E06A0D7B1D8C1D9D1D0E94020340 |
:1007D000882359F0CC0FDD1FD170CE0DDF1D99A2FB |
:1007E00088A281E0F701878F01C080E0CDB7DEB736 |
:1007F000EEE00C94BC11A0E0B0E0E1E0F4E00C9479 |
:10080000A3118C01E0900A01F0900B018230910558 |
:1008100008F467C0E7018E899F890817190708F057 |
:1008200060C0A884B984CA84DB848C8D813021F0B7 |
:10083000823009F056C040C0E801CC0FDD1FC00F68 |
:10084000D11FD695C795BE01672F7727669580E0A3 |
:1008500090E06A0D7B1D8C1D9D1D0E940203882364 |
:1008600009F43FC0FE01F170EE0DFF1D90A021962E |
:10087000BE01672F7727669580E090E06A0D7B1DAB |
:100880008C1D9D1D0E940203882359F1292D30E003 |
:10089000D170EC0EFD1EF70190A180E0282B392BC2 |
:1008A00000FF07C0F90194E0F695E7959A95E1F706 |
:1008B0001AC0F901FF7017C0612F772780E090E020 |
:1008C0006A0D7B1D8C1D9D1D0E940203882349F02B |
:1008D000000F111F1170E00EF11EE701E8A1F9A150 |
:1008E00002C0E1E0F0E0CF01CDB7DEB7EBE00C9461 |
:1008F000BF11A0E0B0E0EFE7F4E00C94A4117C019C |
:10090000C0900A01D0900B01F601A688B788009725 |
:1009100049F4008D118D0230110588F00A151B0570 |
:1009200070F40FC00E94FB039C018230910508F413 |
:1009300040C08A159B0508F441C0870102C001E050 |
:1009400010E0E8012196CA15DB0528F002301105F8 |
:1009500098F1C2E0D0E0CE010E94FB039C01009719 |
:1009600039F08130910551F1C017D10759F724C0F2 |
:100970001C2F0D2F6FEF7FEFCE010E946C03882399 |
:10098000C1F0E114F10431F0BE01C7010E946C0313 |
:10099000882379F0F601108F018F828D938DFFEF00 |
:1009A0008F3F9F0721F00197F601938F828F9E0161 |
:1009B00005C021E030E002C020E030E0C901CDB741 |
:1009C000DEB7EAE00C94C011A0E0B0E0EAEEF4E09B |
:1009D0000C94A011EC017A018B016C807D80688100 |
:1009E0007981C3010E94EE024C01009709F0D6C044 |
:1009F0008A8187FDD0C0AA84BB84CC84DD84AE14F8 |
:100A0000BF04C006D10610F481FF02C0570168017F |
:100A10001E821F821886198681E08B83A114B1047F |
:100A2000C104D10409F49DC06E857F8561157105EF |
:100A300071F480E090E00E947904BC01813091055E |
:100A400009F4A6C09F878E87009709F48AC0F30136 |
:100A5000858DE82EFF2400E010E0F9E0EE0CFF1C8D |
:100A6000001F111FFA95D1F7798B688BEA14FB04EC |
:100A70000C051D0558F58A8181FF04C0CB010E9439 |
:100A8000790403C0CB010E94FB03BC010097E1F095 |
:100A90008130910509F47CC0F30186899789681734 |
:100AA000790708F075C08E819F81A885B9858E0D64 |
:100AB0009F1DA01FB11F8E839F83A887B987AE1883 |
:100AC000BF08C00AD10AD0CF57016801D601C501BD |
:100AD0000197A109B109E9E0B695A7959795879582 |
:100AE000EA95D1F7F82E00910A0110910B0162509E |
:100AF0007040F8018689978902976817790728F06E |
:100B000020E030E040E050E014C080E090E0F801E8 |
:100B1000258D30E040E050E00E945B119B01AC016C |
:100B2000F80180899189A289B389280F391F4A1F4A |
:100B30005B1F2F0D311D411D511D2A8B3B8B4C8B93 |
:100B40005D8BF301858D8F198B838E819F81A885A5 |
:100B5000B9858A0D9B1DAC1DBD1D8E839F83A88703 |
:100B6000B9876A8161FF1AC02E813F814885598506 |
:100B70008A859B85AC85BD8582179307A407B50739 |
:100B800068F42A873B874C875D8760626A8306C06A |
:100B90008A8180688A8368E0862E912CC401CDB753 |
:100BA000DEB7EEE00C94BC11EF92FF920F931F930F |
:100BB000CF93DF938C01C0910A01D0910B01FC010E |
:100BC000E280F3800894E11CF11CC7018F709070E3 |
:100BD000892B09F05BC082859385A485B585019634 |
:100BE000A11DB11D82879387A487B5874085518554 |
:100BF0004115510539F48A819B81E816F90608F4FC |
:100C000045C049C08D8D90E001979701A4E03695CD |
:100C10002795AA95E1F782239323892BB9F5CA0179 |
:100C20000E94FB03BC0182309105A8F18E899F8947 |
:100C30006817790780F5F80171876087C0910A010C |
:100C4000D0910B01625070408E899F89029768177E |
:100C5000790728F020E030E040E050E012C080E06A |
:100C600090E02D8D30E040E050E00E945B119B0150 |
:100C7000AC0188899989AA89BB89280F391F4A1F25 |
:100C80005B1FF8012287338744875587F801F38279 |
:100C9000E28281E001C080E0CDB7DEB7E6E00C94EF |
:100CA000C411EF92FF920F931F93CF93DF93EC0148 |
:100CB000688179818C819D810E94EE027C01009780 |
:100CC00009F040C08A8185FF3DC06E897F89888D8B |
:100CD000998D0E940203882391F10A8D1B8DF801E2 |
:100CE0008385806283878A859B85AC85BD85848F5B |
:100CF000958FA68FB78F8E859F85938F828F0E9449 |
:100D0000B000F801668B778B808F918F8A818F7D01 |
:100D10008A83E0910A01F0910B0181E0878F60E006 |
:100D200070E080E090E00E940203882341F040E000 |
:100D300050E063E080E00E941F10892B19F0B8E0BA |
:100D4000EB2EF12CC701CDB7DEB7E6E00C94C41151 |
:100D5000CF93DF93EC010E9451069C01009711F4A0 |
:100D60001D821C82C901DF91CF910895A0E0B0E0FF |
:100D7000ECEBF6E00C949D11EC01162F072F7A0195 |
:100D80003901AC80BD80F9011182108268817981BE |
:100D9000C5010E94EE024C01009709F03BC18A8117 |
:100DA00087FD35C181FD04C036E0832E912C32C110 |
:100DB0002A853B854C855D85C701A0E0B0E0820FA8 |
:100DC000931FA41FB51F82179307A407B50708F444 |
:100DD00021C1812F902F9C016901412C22E0522ECC |
:100DE00033243394F8C02E813F8148855985DA0138 |
:100DF000C9019170A070B0700097A105B10509F00C |
:100E0000B1C08B8181508B83882349F02A893B892B |
:100E10004C895D892F5F3F4F4F4F5F4F51C0211568 |
:100E200031054105510569F46E857F8561157105B0 |
:100E300089F480E090E00E947904BC019F878E874E |
:100E400005C0888999890E947904BC0161157105E2 |
:100E500009F4C5C06130710509F4D6C0F501868971 |
:100E600097896817790708F0CFC0798B688B009154 |
:100E70000A0110910B0162507040F8018689978930 |
:100E800002976817790728F020E030E040E050E052 |
:100E900014C080E090E0F801258D30E040E050E0A3 |
:100EA0000E945B119B01AC01F80180899189A289A4 |
:100EB000B389280F391F4A1F5B1FF501858D8B836E |
:100EC0002A8B3B8B4C8B5D8B0F2D069561F16B81D3 |
:100ED000102F601708F4162F012FB60180E00E9432 |
:100EE000A30F892B09F090C08B818F5F811B8B83AF |
:100EF000812F90E001979C01442737FD4095542FA6 |
:100F00008C010F5F1F4F8A899B89AC89BD89820F35 |
:100F1000931FA41FB51F8A8B9B8BAC8BBD8B102F8F |
:100F20000027110F3EC02E813F81488559858A8553 |
:100F30009B85AC85BD85281739074A075B0790F06C |
:100F400060E070E080E090E00E940203882309F4F2 |
:100F50005BC08A899B89AC89BD89F50184839583AF |
:100F6000A683B7836A897B898C899D890E94020345 |
:100F7000882309F449C02E813F813170C201821B50 |
:100F8000930B87018E159F0508F48C01205E3F4F5F |
:100F90002A0D3B1DA801B601C9010E944B11F501A4 |
:100FA000378EC00ED11EC801A0E0B0E02E813F8177 |
:100FB00048855985280F391F4A1F5B1F2E833F83A1 |
:100FC00048875987F30180819181800F911F918318 |
:100FD0008083E01AF10AE114F10409F004CF2E81B4 |
:100FE0003F81488559858A859B85AC85BD8582175B |
:100FF0009307A407B50720F42A873B874C875D87B2 |
:101000008A8180628A8306C08A8180688A8388E0B8 |
:10101000882E912CC401CDB7DEB7E1E10C94B91153 |
:10102000A0E0B0E0E6E1F8E00C949E11EC01162F90 |
:10103000072F7A0139018C809D80F901118210827D |
:1010400068817981C4010E94EE025C01009709F079 |
:10105000F8C08A8187FDF2C080FD04C076E0A72E2B |
:10106000B12CEFC02A853B854C855D858E819F81A3 |
:10107000A885B985281B390B4A0B5B0BC701A0E07B |
:10108000B0E0281739074A075B0708F47901812F78 |
:10109000902F9C016901412C62E0562EC7C02E8121 |
:1010A0003F8148855985DA01C9019170A070B070FF |
:1010B0000097A105B10509F084C08B8181508B8315 |
:1010C000882349F02A893B894C895D892F5F3F4FEE |
:1010D0004F4F5F4F43C0211531054105510519F4AC |
:1010E0006E857F8505C0888999890E94FB03BC01B4 |
:1010F0006230710508F49FC0F401868997896817EA |
:10110000790708F098C0798B688B00910A011091DB |
:101110000B0162507040F801868997890297681721 |
:10112000790728F020E030E040E050E014C080E093 |
:1011300090E0F801258D30E040E050E00E945B1126 |
:101140009B01AC01F80180899189A289B389280F9C |
:10115000391F4A1F5B1FF401858D8B832A8B3B8BC4 |
:101160004C8B5D8B0F2D069561F16B81102F6017F5 |
:1011700008F4162F012FB60180E00E94440F892B3E |
:1011800009F059C08B818F5F811B8B83812F90E089 |
:1011900001979C01442737FD4095542F8C010F5F28 |
:1011A0001F4F8A899B89AC89BD89820F931FA41F19 |
:1011B000B51F8A8B9B8BAC8BBD8B102F0027110F1B |
:1011C0001BC06A897B898C899D890E9402038823C0 |
:1011D00091F18E819F8191709201281B390B8701BB |
:1011E0002E153F0508F489018096880D991DA801E8 |
:1011F000BC01C6010E944B11C00ED11EC801A0E067 |
:10120000B0E02E813F8148855985280F391F4A1F3C |
:101210005B1F2E833F8348875987F301808191812B |
:10122000800F911F91838083E01AF10AE114F10489 |
:1012300009F035CF06C08A8180688A8348E0A42EF1 |
:10124000B12CC501CDB7DEB7E0E10C94BA11CF9354 |
:10125000DF93FB01882319F025E030E01DC0A09149 |
:101260000A01B0910B0170930B0160930A01109772 |
:1012700041F080E292E0ED019C0119922150304052 |
:10128000E1F7309739F080E292E0DF01EC011D9246 |
:101290002197E9F720E030E0C901DF91CF9108956F |
:1012A0000F93CF93DF939B01AC01C0910A01D091C2 |
:1012B0000B01BE01605E7F4F01E080E00E94440FA1 |
:1012C000892BC1F4C25EDD4F88819981CE51D24015 |
:1012D00085559A4A79F443E050E060E071E0CE0130 |
:1012E0008A5A9F4F0E943E119C0180E0232B19F0E7 |
:1012F00081E001C082E0DF91CF910F910895ADE1CF |
:10130000B0E0E5E8F9E00C949C119D8F8C8F3B01D7 |
:1013100080900A0190900B01FC011582148203C099 |
:101320000894611C711CF30180818032C9F38F32F3 |
:1013300019F40894611C711C8114910409F417C1FB |
:10134000F42FFF71FB8F142F1E71F401848D8823FD |
:1013500059F080E00E943D0F80FD06C0112309F482 |
:10136000ABC382FD07C1A8C380E292E0F4019C01F7 |
:10137000119221503040E1F780E00E94600E80FF22 |
:1013800003C021E030E08BC3112311F082FDF2C0D5 |
:1013900060E070E080E090E00E945009813021F030 |
:1013A000EE24FF2487011EC082EE91E0880E991E74 |
:1013B000F40180812EE13EEF820E931E882309F412 |
:1013C000DCC086EE91E0880E991EF401E080F18089 |
:1013D000028113812AE13EEF820E931EC801B701FC |
:1013E0000E945009882309F0C8C0F40183A594A580 |
:1013F0008050924009F0C1C0F40186A997A9BC01B0 |
:1014000080E090E0611571058105910569F424E49F |
:1014100030E0820E931EF40160817181828193819C |
:101420002CEB3FEF820E931EF401758B648B20A989 |
:10143000268F30E040E050E00E945B115B016C01C0 |
:10144000F40186A597A5A0E0B0E0E80EF91E0A1FFA |
:101450001B1FE086F1860287138785A5858F21A94A |
:1014600032A93383228383A994A97C0100E010E090 |
:10147000E114F1040105110569F480E490E0880E9F |
:10148000991EF401E080F1800281138180EC9FEFCE |
:10149000880E991EF40186A597A5A0E0B0E0E81A91 |
:1014A000F90A0A0B1B0BEA18FB080C091D09A4E03A |
:1014B00036952795AA95E1F7C901A0E0B0E0E81AB2 |
:1014C000F90A0A0B1B0B258D30E040E050E0C80103 |
:1014D000B7010E947A112E5F3F4F4F4F5F4FF401CB |
:1014E000378B268B283FFFE03F07F0E04F07F0E007 |
:1014F0005F0710F461E006C0285F3F4F4040504056 |
:10150000E0F562E0F4012085318542855385D601FE |
:10151000C501820F931FA41FB51F84879587A687D7 |
:10152000B7878281938174E0969587957A95E1F7E4 |
:10153000A0E0B0E0820F931FA41FB51F8A0D9B1D72 |
:10154000AC1DBD1D808B918BA28BB38B648F8FEFF5 |
:101550009FEF938F828F80910C0190910D010196E6 |
:1015600090930D0180930C0191838083A5C22AE0A2 |
:1015700030E095C229E030E092C22BE030E08FC22B |
:101580002E010894411C511C92E0292E312C4BE075 |
:1015900050E060E270E0C2010E94541120E048E097 |
:1015A00090E038E102C028E04BE0F30111913F01E7 |
:1015B000112311F01F3249F4222309F4C7C0392343 |
:1015C0003C87113009F044C0C1C0113208F4BEC0DC |
:1015D0001F3709F4BBC01E3241F490FDB7C022236F |
:1015E00009F4B4C02930F8F2B1C0123209F4AEC027 |
:1015F0001A3220F11D3208F4A9C01A33F8F0103461 |
:1016000008F4A4C090FD1AC01C3709F49FC0812FB4 |
:101610008B55833008F49AC0865E8A3128F44830AE |
:1016200011F4377F01C03F7E812F81568A3130F41B |
:101630001052483011F4986001C09061241708F0EE |
:1016400085C09E7FF201E20FF11D10832F5FADCFA9 |
:101650006F89788D898D9A8D0E940203882331F4D9 |
:1016600090E09C01590128E030E084C02F85388942 |
:101670002F70307085E0220F331F8A95E1F7F60155 |
:10168000E20FF31F80A18823E1F0853EA1F000E284 |
:10169000A02EB12CA20EB31EAC0CBD1CF50183858F |
:1016A000082F83FD08C04BE050E0B201C5010E9445 |
:1016B0003E11009751F0CE010D960E94D40588236B |
:1016C00039F6112309F049C04FC0112319F420E065 |
:1016D00030E050C004FF41C0F501E28CF38CFE8A7B |
:1016E000ED8A00910A0110910B01B7016250704020 |
:1016F000F8018689978902976817790728F020E012 |
:1017000030E040E050E014C080E090E0F801258D2A |
:1017100030E040E050E00E945B119B01AC01F80119 |
:1017200080899189A289B389280F391F4A1F5B1FBD |
:10173000FC8AEB8A2F8B388F498F5A8F388A2F86F5 |
:1017400026CF20E030E0AA24BB2414C080E090E043 |
:101750009C01590124E030E00DC080E090E09C0144 |
:10176000590123E030E006C080E090E09C0159017F |
:1017700022E030E0FB8D4F2F50E0CA018C71907059 |
:10178000892B09F441C12115310509F4D6C0223055 |
:10179000310509F084C160900A0170900B010B893A |
:1017A0001C890115110551F11E8B0D8BB80162507A |
:1017B0007040F3018689978902976817790728F0A6 |
:1017C00020E030E040E050E014C080E090E0F30121 |
:1017D000258D30E040E050E00E945B119B01AC01A0 |
:1017E000F30180899189A289B389280F391F4A1F83 |
:1017F0005B1F2F8B388F498F5A8F09C0F301848567 |
:101800009585A685B7858F8B988FA98FBA8F188AF3 |
:101810001F86BDE0EB2EF12CEC0EFD1E6F89788D3E |
:10182000898D9A8D0E940203882309F433C1EF85C4 |
:10183000F889EF70F070A5E0EE0FFF1FAA95E1F7B1 |
:10184000B0965301AE0EBF1EB097E60DF71D80A1F6 |
:10185000882309F44CC1853E09F449C1C7010E949F |
:10186000D4058823D9F60115110509F410C18D8915 |
:101870009E890E9479048C01009709F408C1813087 |
:10188000910509F407C160E070E080E090E00E94FB |
:101890000203882309F4FEC0A0900A01B0900B0156 |
:1018A000B80162507040F5018689978902976817E0 |
:1018B000790720F0CC24DD24760114C080E090E08C |
:1018C000F501258D30E040E050E00E945B116B0196 |
:1018D0007C01F50180899189A289B389C80ED91E3E |
:1018E000EA1EFB1EF301C482D582E682F782E0E2A3 |
:1018F000AE2EB12CA60CB71C80E092E0F5019C0145 |
:10190000119221503040E1F7F301158D10C001E034 |
:10191000A7019601B50180E00E94A30F892B09F071 |
:10192000B9C00894C11CD11CE11CF11C1150112339 |
:1019300071F781E0F301878FDAC0F2FF03C027E07F |
:1019400030E0ADC0A114B10409F4A1C0F501838554 |
:10195000817109F09CC043FF42C0C28CD38C138EAE |
:10196000128E148E158E168E178E81E0F401878FDD |
:101970002480358046805780E0900A01F0900B016A |
:1019800086011CC0C8010E94FB033C018130910507 |
:1019900009F480C060E070E0C8010E946C038823F5 |
:1019A00009F478C0F701828D938DFFEF8F3F9F0779 |
:1019B00021F00196F701938F828F83010230110588 |
:1019C00008F472C0F7018689978908171907D0F2C1 |
:1019D0006BC00894C108D108F401D18EC08EFB8D74 |
:1019E000F3FF22C080E2F50183870E94B000F50179 |
:1019F000668B778B808F918F66877787808B918BB3 |
:101A000081E0F401878F10C02115310509F047C02E |
:101A1000A114B10409F441C0F501838584FD3DC0E2 |
:101A200041FF02C080FD33C0F40184819581A6810D |
:101A3000B781EC8DFD8D868B978BA08FB18FB38E88 |
:101A4000A28E2B8D2283F501828D938DEC8DFD8DE1 |
:101A500097878687F501848D958DA68DB78DEC8D42 |
:101A6000FD8D82879387A487B5871682178210869B |
:101A7000118681E0838395828482F4018081918143 |
:101A8000EC8DFD8D9183808320E030E008C026E05E |
:101A900030E005C028E030E002C022E030E0C901BB |
:101AA0006D96E2E10C94B811C201B1010E940203EB |
:101AB000882309F08ECFEECFC0900A01D0900B01A1 |
:101AC000F601848595851C8A1B8A1E8A1D8AA0E0E2 |
:101AD000B0E08F8B988FA98FBA8F188A1F86DA8A09 |
:101AE000C98AF3018081882309F04ACD2ACE80E299 |
:101AF000F50111928A95E9F7D501FE0131968BE047 |
:101B000001900D928150E1F78C85F5018487FB8D62 |
:101B1000F860FB8F64CFFC018AE080930F019FEF98 |
:101B20009EBD0DB407FEFDCF8EB58F3F29F4809189 |
:101B30000F018823A9F722C08E3F01F59FEF9EBDBC |
:101B40000DB407FEFDCF8EB580839EBD0DB407FE9C |
:101B5000FDCF8EB581836250704011F03296EFCF89 |
:101B60008FEF8EBD0DB407FEFDCF8EB58FEF8EBD0E |
:101B70000DB407FEFDCF8EB581E0089580E0089595 |
:101B8000FC0182E3809310018FEF8EBD0DB407FE40 |
:101B9000FDCF8EB59FEF9EBD0DB407FEFDCF8EB578 |
:101BA0008F3F31F0809110018823A9F790E02EC07B |
:101BB0006EBD0DB407FEFDCF6D3F11F491E026C060 |
:101BC00090E080818EBD0DB407FEFDCF81818EBD7A |
:101BD0000DB407FEFDCF915011F03296F2CF8FEF8A |
:101BE0008EBD0DB407FEFDCF8FEF8EBD0DB407FE89 |
:101BF000FDCF8FEF8EBD0DB407FEFDCF8EB590E00B |
:101C00008F71853009F091E081E09827892F089540 |
:101C1000282F82E3809310018FEF8EBD0DB407FE55 |
:101C2000FDCF8EB59FEF9EBD0DB407FEFDCF8EB5E7 |
:101C30008F3F31F0809110018823A9F78FEF08952D |
:101C40002EBD0DB407FEFDCF872F9927AA27BB27EE |
:101C50008EBD0DB407FEFDCFCB01AA27BB278EBDDD |
:101C60000DB407FEFDCFBB27A72F962F852F8EBD66 |
:101C70000DB407FEFDCF4EBD0DB407FEFDCF2034E1 |
:101C800011F485E905C0283411F487E801C080E02B |
:101C90008EBD0DB407FEFDCF2C3431F48FEF8EBD19 |
:101CA0000DB407FEFDCF8EB59AE02FEF2EBD0DB41B |
:101CB00007FEFDCF8EB587FF02C09150B9F708959A |
:101CC000A4E0B0E0E6E6FEE00C94A811882311F051 |
:101CD00081E0CFC08091040181FDC9C08AE09FEFFF |
:101CE0009EBD0DB407FEFDCF2EB58150C9F72A98D1 |
:101CF00040E050E060E070E080E40E94080E813037 |
:101D000009F0A0C084E680930F014AEA51E060E048 |
:101D100070E088E40E94080E813009F054C07E0112 |
:101D20000894E11CF11C87019FEF9E012B5F3F4F40 |
:101D30009EBD0DB407FEFDCF8EB5F80181938F01D6 |
:101D4000E217F307A9F78B81813009F07BC08C8102 |
:101D50008A3A09F077C040E050E060E070E087E741 |
:101D60000E94080E823048F440E050E060E070E4E9 |
:101D700089E60E94080E882321F080910F018823B4 |
:101D800051F780910F01882309F45CC040E050E0D6 |
:101D900060E070E08AE70E94080E882309F052C0D4 |
:101DA0009FEF9EBD0DB407FEFDCF8EB5F701819369 |
:101DB0007F01E017F107A9F7898186FD02C012E0D3 |
:101DC00042C016E040C040E050E060E070E087E7CD |
:101DD0000E94080E823058F440E050E060E070E06D |
:101DE00089E60E94080E823010F412E001C011E072 |
:101DF000123079F440E050E060E070E087E70E9444 |
:101E0000080E823078F440E050E060E070E089E64F |
:101E100005C040E050E060E070E081E40E94080E00 |
:101E2000882321F080910F01882311F780910F0101 |
:101E3000882341F040E052E060E070E080E50E94DD |
:101E4000080E811110E0109311012A9A8FEF8EBDB8 |
:101E50000DB407FEFDCF8EB5112321F08091040152 |
:101E60008E7F03C080910401816080930401809182 |
:101E700004012496E6E00C94C411882311F081E05B |
:101E800008958091040108950F93CF93DF93EB01A0 |
:101E9000882309F051C0002309F44EC08091040149 |
:101EA00080FF03C023E030E049C08091110182FD32 |
:101EB00007C069E0220F331F441F551F6A95D1F7F1 |
:101EC0002A98013089F4BA01A90181E50E94080E1F |
:101ED000882321F560E072E0CE010E948B0D00E0C6 |
:101EE0008823E1F401E01AC0BA01A90182E50E9449 |
:101EF000080E882399F460E072E0CE010E948B0DF9 |
:101F0000882329F0015019F0C050DE4FF4CF40E093 |
:101F100050E060E070E08CE40E94080E2A9A8FEF97 |
:101F20008EBD0DB407FEFDCF8EB520E030E000235E |
:101F300029F021E030E002C024E030E0C901DF9167 |
:101F4000CF910F910895CF92DF92EF92FF920F936E |
:101F5000CF93DF93EB0169017A01882309F064C014 |
:101F6000002309F461C08091040180FF03C023E0D5 |
:101F700030E05CC08091040182FF03C022E030E0C9 |
:101F800055C08091110182FD07C079E0CC0CDD1CA9 |
:101F9000EE1CFF1C7A95D1F72A98013069F4B7013D |
:101FA000A60188E50E94080E882381F56EEFCE0118 |
:101FB0000E94C00D00E027C081FF0EC040E050E04D |
:101FC00060E070E087E70E94080E402F50E060E07C |
:101FD00070E087E50E94080EB701A60189E50E941E |
:101FE000080E882399F46CEFCE010E94C00D88235F |
:101FF00029F0015019F0C050DE4FF5CF6DEF80E0B1 |
:1020000090E00E94C00D882309F401E02A9A8FEF26 |
:102010008EBD0DB407FEFDCF8EB520E030E000236D |
:1020200029F021E030E002C024E030E0C901DF9176 |
:10203000CF910F91FF90EF90DF90CF900895A0E1A6 |
:10204000B0E0E5E2F0E10C94AA118A01882319F0CE |
:1020500024E030E0E7C02A98633009F47FC06430A0 |
:1020600028F4613079F0623051F472C06B3009F4B9 |
:1020700096C06C3009F4AAC06A3009F486C024E026 |
:1020800030E0C6C040E050E060E070E089E40E94CB |
:10209000080E882309F0B7C060E170E0CE01019618 |
:1020A0000E948B0D882309F4AEC0898182958695A4 |
:1020B000869583707A8549858130B1F4872F90E0C9 |
:1020C0000196342F20E0820F931FA0E0B0E02AE0B9 |
:1020D000880F991FAA1FBB1F2A95D1F7F80180838B |
:1020E0009183A283B38392C04295469546954370EF |
:1020F000288530E0220F331F220F331F240F311D9C |
:102100002F5F3F4F8F8190E083709070982F8827CA |
:10211000990F990F280F391F40E050E08E818F7082 |
:102120006B85661F6627661F860F8E5F7370770F3D |
:10213000870F90E0099704C0220F331F441F551FDB |
:102140008A95D2F7F80120833183428353835EC09E |
:1021500080E092E0FA019183808358C082E380930B |
:1021600010018FEF8EBD0DB407FEFDCF8EB59FEF32 |
:102170009EBD0DB407FEFDCF8EB58F3F09F446C05E |
:10218000809110018823A1F73EC08091040180FD59 |
:1021900047C040E050E060E070E089E409C0809111 |
:1021A000040180FD3DC040E050E060E070E08AE462 |
:1021B0000E94080E882339F560E170E0C8010E9492 |
:1021C0008B0D20E030E0882319F51DC080910401BB |
:1021D00080FD26C040E050E060E070E08AE70E94A9 |
:1021E000080E882381F4F8019FEF98012D5F3F4F7F |
:1021F0009EBD0DB407FEFDCF8EB58083E217F307B9 |
:1022000029F03196F5CF21E030E002C020E030E047 |
:102210002A9A8FEF8EBD0DB407FEFDCF8EB502C09A |
:1022200023E030E0C9016096E4E00C94C61180918F |
:102230000F01882319F0815080930F0180911001C4 |
:10224000882319F081508093100190910E0183B181 |
:10225000817080930E01981749F48091040190FFDA |
:1022600002C0836001C08D7F809304010895FB014B |
:10227000DC0105900D920020E1F70895FB01DC01DF |
:1022800004C08D910190801921F441505040C8F74D |
:10229000881B990B0895FB01DC0102C001900D928F |
:1022A00041505040D8F70895DC0101C06D93415072 |
:1022B0005040E0F70895629FD001739FF001829F24 |
:1022C000E00DF11D649FE00DF11D929FF00D839FC5 |
:1022D000F00D749FF00D659FF00D9927729FB00D62 |
:1022E000E11DF91F639FB00DE11DF91FBD01CF0175 |
:1022F00011240895A1E21A2EAA1BBB1BFD010DC0DB |
:10230000AA1FBB1FEE1FFF1FA217B307E407F507A5 |
:1023100020F0A21BB30BE40BF50B661F771F881F81 |
:10232000991F1A9469F760957095809590959B0117 |
:10233000AC01BD01CF0108952F923F924F925F9261 |
:102340006F927F928F929F92AF92BF92CF92DF92C5 |
:10235000EF92FF920F931F93CF93DF93CDB7DEB72A |
:10236000CA1BDB0B0FB6F894DEBF0FBECDBF0994BE |
:102370002A88398848885F846E847D848C849B8415 |
:10238000AA84B984C884DF80EE80FD800C811B8123 |
:10239000AA81B981CE0FD11D0FB6F894DEBF0FBE52 |
:0A23A000CDBFED010895F894FFCFC2 |
:0623AA0046415400010051 |
:00000001FF |
/Designs/Data_loggers/DOGFINDER01A/SW/ATMEGA168/integer.h |
---|
0,0 → 1,23 |
#ifndef _INTEGER |
typedef int INT; |
typedef unsigned int UINT; |
typedef char CHAR; |
typedef unsigned char UCHAR; |
typedef unsigned char BYTE; |
typedef short SHORT; |
typedef unsigned short USHORT; |
typedef unsigned short WORD; |
typedef long LONG; |
typedef unsigned long ULONG; |
typedef unsigned long DWORD; |
typedef unsigned char BOOL; |
#define FALSE 0 |
#define TRUE 1 |
#define _INTEGER |
#endif |
/Designs/Data_loggers/DOGFINDER01A/SW/ATMEGA168/main.c |
---|
0,0 → 1,393 |
/*---------------------------------------------------------------*/ |
/* GPS data logger R0.02 (C)ChaN, 2008 */ |
/*---------------------------------------------------------------*/ |
#include <avr/io.h> |
#include <avr/pgmspace.h> |
#include <avr/interrupt.h> |
#include <string.h> |
#include "tff.h" |
#include "diskio.h" |
#define SYSCLK 10000000UL |
#define BEEP_ON() TCCR0B=0b011 |
#define BEEP_OFF() TCCR0B=0b000 |
#define GPS_ON() PORTB|=0x02 |
#define GPS_OFF() PORTB&=0xFD |
#define DELAY(dly) for(Timer=dly;Timer;) |
#define VTH_LOW (WORD)(8000UL*100/3838) |
#define VTH_HIGH (WORD)(11500UL*100/3838) |
#define POWER_check 0b01000000 | 1 |
#define ANALOG_IN1 0b01000000 | 2 |
FATFS fatfs; /* File system object for each logical drive */ |
FIL file1; /* File object */ |
BYTE Buff[82]; /* File/Console buffer */ |
uint16_t battery; // battery voltage |
uint16_t intensity; // radiation intensity |
volatile BYTE Timer; /* 100Hz decrement timer */ |
volatile BYTE Stat; /* Status */ |
typedef struct _fifo { |
uint8_t idx_w; |
uint8_t idx_r; |
uint8_t count; |
uint8_t buff[150]; |
} FIFO; |
volatile FIFO rxfifo; |
/*---------------------------------------------------------*/ |
/* ADC interrupt */ |
/*---------------------------------------------------------*/ |
ISR(ADC_vect) |
{ |
WORD n; |
static BYTE l, h; |
n = ADC; |
if(ADMUX == POWER_check) |
{ |
if (n < VTH_LOW) { |
if (l >= 15) { |
Stat |= 0x01; |
} |
else {l++;} |
} |
else {l = 0;} |
if (n > VTH_HIGH) { |
if (h >= 15) { |
Stat &= 0xFE; |
} |
else {h++;} |
} |
else {h = 0;} |
battery = n; |
ADMUX = ANALOG_IN1; |
} |
if(ADMUX == ANALOG_IN1) |
{ |
intensity = n; |
ADMUX = POWER_check; |
} |
//!!!! |
//Stat &= 0xFE; |
ADCSRA = _BV(ADEN)|_BV(ADSC)|_BV(ADIF)|_BV(ADIE)|0b111; |
} |
/*---------------------------------------------------------*/ |
/* 100Hz timer interrupt generated by OC1A */ |
/*---------------------------------------------------------*/ |
ISR(TIMER1_COMPA_vect) |
{ |
BYTE n; |
static WORD ivt_sync; |
n = Timer; |
if (n) Timer = n - 1; |
if (++ivt_sync >= 180 * 100) { |
ivt_sync = 0; |
Stat |= 4; |
} |
disk_timerproc(); /* Drive timer procedure of low level disk I/O module */ |
} |
/*---------------------------------------------------------*/ |
/* User Provided Timer Function for FatFs module */ |
/*---------------------------------------------------------*/ |
/* This is a real time clock service to be called from */ |
/* FatFs module. Any valid time must be returned even if */ |
/* the system does not support a real time clock. */ |
DWORD get_fattime () |
{ |
return ((2007UL - 1980) << 25) /* Fixed to 2007.5.1, 00:00:00 */ |
| ((5UL) << 21) |
| ((1UL) << 16) |
| (0 << 11) |
| (0 << 5) |
| (0 >> 1); |
} |
/*--------------------------------------------------------------------------*/ |
/* UART control */ |
static |
void uart_init (void) |
{ |
cli(); |
UCSR0B = 0; |
rxfifo.idx_r = 0; |
rxfifo.idx_w = 0; |
rxfifo.count = 0; |
UBRR0L = SYSCLK/16/9600; // Enable USRAT0 in N81,4800bps |
UCSR0B = _BV(RXCIE0)|_BV(RXEN0)|_BV(TXEN0); |
Stat &= 0xFD; // Clear overflow flag |
sei(); |
} |
static |
void uart_stop (void) |
{ |
UCSR0B = 0; |
} |
/* Get a received character */ |
static |
uint8_t uart_get () |
{ |
uint8_t d, i; |
i = rxfifo.idx_r; |
if (rxfifo.count == 0) return 0; |
d = rxfifo.buff[i++]; |
cli(); |
rxfifo.count--; |
sei(); |
if(i >= sizeof(rxfifo.buff)) |
i = 0; |
rxfifo.idx_r = i; |
return d; |
+ |
+/* USART0 RXC interrupt */ |
+ISR(USART_RX_vect) |
+{ |
+ uint8_t d, n, i; |
+ |
+ |
+ d = UDR0; |
+ n = rxfifo.count; |
+ if(n < sizeof(rxfifo.buff)) { |
+ rxfifo.count = ++n; |
+ i = rxfifo.idx_w; |
+ rxfifo.buff[i++] = d; |
+ if(i >= sizeof(rxfifo.buff)) |
+ i = 0; |
+ rxfifo.idx_w = i; |
+ } else { |
+ Stat |= 2; |
+ } |
+} |
+ |
+ |
+ |
+/*----------------------------------------------------*/ |
+/* Get a line received from GPS module */ |
+/*----------------------------------------------------*/ |
+ |
+static |
+BYTE get_line (void) // 0: Power fail occured, >0: Number of bytes received. |
+{ |
+ BYTE c, i = 0; |
+ |
+ |
+ for (;;) { |
+ if (Stat & 1) return 0; // When power fail is detected, return with zero. |
+ c = uart_get(); |
+ if (Stat & 2) { // When buffer overflow has occured, restert to receive line. |
+ uart_init(); |
+ i = 0; c = 0; |
+ } |
+ if (!c || (i == 0 && c != '$')) continue; |
+ Buff[i++] = c; |
+ if (c == '\n') break; |
+ if (i >= sizeof(Buff)) i = 0; |
+ } |
+ return i; |
+} |
+ |
+ |
+ |
+/*--------------------------------------------------------------------------*/ |
+/* Controls */ |
+ |
+static |
+void beep (BYTE len, BYTE cnt) |
+{ |
+ while (cnt--) { |
+ BEEP_ON(); |
+ DELAY(len); |
+ BEEP_OFF(); |
+ DELAY(len); |
+ } |
+} |
+ |
+ |
+ |
+ |
+/* Compare sentence header string */ |
+static |
+BYTE gp_comp (BYTE *str1, const prog_uint8_t *str2) |
+{ |
+ BYTE c; |
+ |
+ do { |
+ c = pgm_read_byte(str2++); |
+ } while (c && c == *str1++); |
+ return c; |
+} |
+ |
+/* Get a column item */ |
+static |
+BYTE* gp_col ( /* Returns pointer to the item (returns a NULL when not found) */ |
+ const BYTE* buf, /* Pointer to the sentence */ |
+ BYTE col /* Column number (0 is the 1st item) */ |
+) { |
+ BYTE c; |
+ |
+ |
+ while (col) { |
+ do { |
+ c = *buf++; |
+ if (c <= ' ') return NULL; |
+ } while (c != ','); |
+ col--; |
+ } |
+ return (BYTE*)buf; |
+} |
+ |
+ |
+ |
+static |
+void ioinit (void) |
+{ |
+ PORTB = 0b00001101; // Port B |
+ DDRB = 0b00101110; |
+ PORTC = 0b00111111; // Port C |
+ DDRC = 0b00000000; |
+ PORTD = 0b10101110; // Port D |
+ DDRD = 0b01010010; |
+ |
+ SPCR = 0b01010000; /* Initialize SPI port (Mode 0) */ |
+ SPSR = 0b00000001; |
+ |
+ OCR1A = SYSCLK/8/100-1; // Timer1: 100Hz interval (OC1A) |
+ TCCR1B = 0b00001010; |
+ TIMSK1 = _BV(OCIE1A); // Enable TC1.oca interrupt |
+ |
+ OCR0A = SYSCLK/64/4000/2-1; // Timer0: 4kHz sound (OC0A) |
+ TCCR0A = 0b01000010; |
+ |
+ ADMUX = POWER_check; // Select ADC input |
+ ADCSRA = _BV(ADEN)|_BV(ADSC)|_BV(ADIF)|_BV(ADIE)|0b111; |
+ |
+ sei(); |
+} |
+ |
+ |
+ |
+/*-----------------------------------------------------------------------*/ |
+/* Main */ |
+ |
+ |
+int main () |
+{ |
+ BYTE b, err, *p = NULL; |
+ WORD s; |
+ |
+ |
+ ioinit(); |
+ f_mount(0, &fatfs); /* Enable file I/O layer */ |
+ |
+ for (;;) { |
+ uart_stop(); |
+ GPS_OFF(); |
+ Timer = 100; |
+ do { |
+ if (Stat & 1) Timer = 100; |
+ } while (Timer); |
+ |
+ GPS_ON(); |
+ Timer = 255; |
+ do { |
+ if ((Stat & 1) || (disk_status(0) & STA_NODISK)) Timer = 255; |
+ } while (Timer); |
+ |
+ beep(5, 1); // Single beep. Start to get current time. |
+ uart_init(); |
+ do { // Wait for valid RMC sentence. |
+ b = get_line(); |
+ if (!b) break; |
+ if (gp_comp(Buff, PSTR("$GPRMC"))) continue; |
+ p = gp_col(Buff,2); |
+ } while (!p || *p != 'A'); |
+ if (!b) continue; |
+ p = gp_col(Buff,9); // Open log file with the name of current date (YYMMDD.log in UTC). |
+ |
+ if (!p) {err = 3; break;} |
+ |
+ memcpy(&Buff[0], p+4, 2); |
+ memcpy(&Buff[2], p+2, 2); |
+ memcpy(&Buff[4], p+0, 2); |
+ strcpy_P(&Buff[6], PSTR(".log")); |
+ if (f_open(&file1, Buff, FA_OPEN_ALWAYS | FA_WRITE) || f_lseek(&file1, file1.fsize)) { err = 4; break; } |
+ |
+ beep(5, 2); // Two beeps. Start logging. |
+ err = 0; |
+ while ((b = get_line()) > 0) { |
+ if ( !gp_comp(Buff, PSTR("$GPGGA")) // Which sentence is logged? |
+ || !gp_comp(Buff, PSTR("$GPRMC")) |
+ // || !gp_comp(Buff, PSTR("$GPGSA")) |
+ // || !gp_comp(Buff, PSTR("$GPGLL")) |
+ // || !gp_comp(Buff, PSTR("$GPGSV")) |
+ // || !gp_comp(Buff, PSTR("$GPZDA")) |
+ // || !gp_comp(Buff, PSTR("$GPVTG")) |
+ ) |
+ { |
+ if (f_write(&file1, Buff, b, &s) || b != s) { err = 5; break; }; |
+ } |
+ if ((Stat & 4) == 0) continue; |
+ if (f_sync(&file1)) { err = 6; break; };// Synchronize the file in interval of 300 sec. |
+ cli(); Stat &= 0xFB; sei(); // Clear sync request |
+ } |
+ if (err) break; |
+ |
+ // Turn-off GPS power and close the log file by power supply is discharged. |
+ uart_stop(); |
+ GPS_OFF(); |
+ if (f_close(&file1)) { err = 7; break; }; |
+ |
+ // When a long beep is sounded, the shutdoun process has been succeeded. |
+ beep(50, 1); |
+ } |
+ |
+ // Unrecoverble error. Enter shutdown state. |
+ uart_stop(); |
+ GPS_OFF(); |
+ beep(25, err); |
+ for (;;); |
+} |
+ |
+ |
/Designs/Data_loggers/DOGFINDER01A/SW/ATMEGA168/mmc.c |
---|
0,0 → 1,487 |
/*-----------------------------------------------------------------------*/ |
/* MMC/SDC (in SPI mode) control module (C)ChaN, 2006 */ |
/*-----------------------------------------------------------------------*/ |
/* Only rcvr_spi(), xmit_spi(), disk_timerproc(), disk_initialize () and */ |
/* some macros are platform dependent. */ |
/*-----------------------------------------------------------------------*/ |
#include <avr/io.h> |
#include "diskio.h" |
/* Definitions for MMC/SDC command */ |
#define CMD0 (0x40+0) /* GO_IDLE_STATE */ |
#define CMD1 (0x40+1) /* SEND_OP_COND */ |
#define CMD8 (0x40+8) /* SEND_IF_COND */ |
#define CMD9 (0x40+9) /* SEND_CSD */ |
#define CMD10 (0x40+10) /* SEND_CID */ |
#define CMD12 (0x40+12) /* STOP_TRANSMISSION */ |
#define CMD16 (0x40+16) /* SET_BLOCKLEN */ |
#define CMD17 (0x40+17) /* READ_SINGLE_BLOCK */ |
#define CMD18 (0x40+18) /* READ_MULTIPLE_BLOCK */ |
#define CMD23 (0x40+23) /* SET_BLOCK_COUNT */ |
#define CMD24 (0x40+24) /* WRITE_BLOCK */ |
#define CMD25 (0x40+25) /* WRITE_MULTIPLE_BLOCK */ |
#define CMD41 (0x40+41) /* SEND_OP_COND (ACMD) */ |
#define CMD55 (0x40+55) /* APP_CMD */ |
#define CMD58 (0x40+58) /* READ_OCR */ |
/* Control signals (Platform dependent) */ |
#define SELECT() PORTB &= ~_BV(PB2) /* MMC CS = L */ |
#define DESELECT() PORTB |= _BV(PB2) /* MMC CS = H */ |
#define SOCKPORT PINB /* Socket contact port */ |
#define SOCKINS 0x01 /* Card detect switch (PB0) */ |
/*-------------------------------------------------------------------------- |
Module Private Functions |
---------------------------------------------------------------------------*/ |
static volatile |
DSTATUS Stat = STA_NOINIT; /* Disk status */ |
static volatile |
BYTE Timer1, Timer2; /* 100Hz decrement timer */ |
static |
BYTE CardType; /* b0:MMC, b1:SDC, b2:Block addressing */ |
/*-----------------------------------------------------------------------*/ |
/* Transmit a byte to MMC via SPI (Platform dependent) */ |
/*-----------------------------------------------------------------------*/ |
#define xmit_spi(dat) SPDR=(dat); loop_until_bit_is_set(SPSR,SPIF) |
/*-----------------------------------------------------------------------*/ |
/* Receive a byte from MMC via SPI (Platform dependent) */ |
/*-----------------------------------------------------------------------*/ |
static |
BYTE rcvr_spi (void) |
{ |
SPDR = 0xFF; |
loop_until_bit_is_set(SPSR, SPIF); |
return SPDR; |
} |
/* Alternative macro to receive data fast */ |
#define rcvr_spi_m(dst) SPDR=0xFF; loop_until_bit_is_set(SPSR,SPIF); *(dst)=SPDR |
/*-----------------------------------------------------------------------*/ |
/* Wait for card ready */ |
/*-----------------------------------------------------------------------*/ |
static |
BYTE wait_ready (void) |
{ |
BYTE res; |
Timer2 = 50; /* Wait for ready in timeout of 500ms */ |
rcvr_spi(); |
do |
res = rcvr_spi(); |
while ((res != 0xFF) && Timer2); |
return res; |
} |
/*-----------------------------------------------------------------------*/ |
/* Receive a data packet from MMC */ |
/*-----------------------------------------------------------------------*/ |
static |
BOOL rcvr_datablock ( |
BYTE *buff, /* Data buffer to store received data */ |
UINT btr /* Byte count (must be even number) */ |
) |
{ |
BYTE token; |
Timer1 = 10; |
do { /* Wait for data packet in timeout of 100ms */ |
token = rcvr_spi(); |
} while ((token == 0xFF) && Timer1); |
if(token != 0xFE) return FALSE; /* If not valid data token, retutn with error */ |
do { /* Receive the data block into buffer */ |
rcvr_spi_m(buff++); |
rcvr_spi_m(buff++); |
} while (btr -= 2); |
rcvr_spi(); /* Discard CRC */ |
rcvr_spi(); |
return TRUE; /* Return with success */ |
} |
/*-----------------------------------------------------------------------*/ |
/* Send a data packet to MMC */ |
/*-----------------------------------------------------------------------*/ |
#if _READONLY == 0 |
static |
BOOL xmit_datablock ( |
const BYTE *buff, /* 512 byte data block to be transmitted */ |
BYTE token /* Data/Stop token */ |
) |
{ |
BYTE resp, wc; |
if (wait_ready() != 0xFF) return FALSE; |
xmit_spi(token); /* Xmit data token */ |
if (token != 0xFD) { /* Is data token */ |
wc = 0; |
do { /* Xmit the 512 byte data block to MMC */ |
xmit_spi(*buff++); |
xmit_spi(*buff++); |
} while (--wc); |
xmit_spi(0xFF); /* CRC (Dummy) */ |
xmit_spi(0xFF); |
resp = rcvr_spi(); /* Reveive data response */ |
if ((resp & 0x1F) != 0x05) /* If not accepted, return with error */ |
return FALSE; |
} |
return TRUE; |
} |
#endif /* _READONLY */ |
/*-----------------------------------------------------------------------*/ |
/* Send a command packet to MMC */ |
/*-----------------------------------------------------------------------*/ |
static |
BYTE send_cmd ( |
BYTE cmd, /* Command byte */ |
DWORD arg /* Argument */ |
) |
{ |
BYTE n, res; |
if (wait_ready() != 0xFF) return 0xFF; |
/* Send command packet */ |
xmit_spi(cmd); /* Command */ |
xmit_spi((BYTE)(arg >> 24)); /* Argument[31..24] */ |
xmit_spi((BYTE)(arg >> 16)); /* Argument[23..16] */ |
xmit_spi((BYTE)(arg >> 8)); /* Argument[15..8] */ |
xmit_spi((BYTE)arg); /* Argument[7..0] */ |
n = 0; |
if (cmd == CMD0) n = 0x95; /* CRC for CMD0(0) */ |
if (cmd == CMD8) n = 0x87; /* CRC for CMD8(0x1AA) */ |
xmit_spi(n); |
/* Receive command response */ |
if (cmd == CMD12) rcvr_spi(); /* Skip a stuff byte when stop reading */ |
n = 10; /* Wait for a valid response in timeout of 10 attempts */ |
do |
res = rcvr_spi(); |
while ((res & 0x80) && --n); |
return res; /* Return with the response value */ |
} |
/*-------------------------------------------------------------------------- |
Public Functions |
---------------------------------------------------------------------------*/ |
/*-----------------------------------------------------------------------*/ |
/* Initialize Disk Drive */ |
/*-----------------------------------------------------------------------*/ |
DSTATUS disk_initialize ( |
BYTE drv /* Physical drive nmuber (0) */ |
) |
{ |
BYTE n, ty, ocr[4]; |
if (drv) return STA_NOINIT; /* Supports only single drive */ |
if (Stat & STA_NODISK) return Stat; /* No card in the socket */ |
for (n = 10; n; n--) rcvr_spi(); /* 80 dummy clocks */ |
SELECT(); /* CS = L */ |
ty = 0; |
if (send_cmd(CMD0, 0) == 1) { /* Enter Idle state */ |
Timer1 = 100; /* Initialization timeout of 1000 msec */ |
if (send_cmd(CMD8, 0x1AA) == 1) { /* SDC Ver2+ */ |
for (n = 0; n < 4; n++) ocr[n] = rcvr_spi(); |
if (ocr[2] == 0x01 && ocr[3] == 0xAA) { /* The card can work at vdd range of 2.7-3.6V */ |
do { |
if (send_cmd(CMD55, 0) <= 1 && send_cmd(CMD41, 1UL << 30) == 0) break; /* ACMD41 with HCS bit */ |
} while (Timer1); |
if (Timer1 && send_cmd(CMD58, 0) == 0) { /* Check CCS bit */ |
for (n = 0; n < 4; n++) ocr[n] = rcvr_spi(); |
ty = (ocr[0] & 0x40) ? 6 : 2; |
} |
} |
} else { /* SDC Ver1 or MMC */ |
ty = (send_cmd(CMD55, 0) <= 1 && send_cmd(CMD41, 0) <= 1) ? 2 : 1; /* SDC : MMC */ |
do { |
if (ty == 2) { |
if (send_cmd(CMD55, 0) <= 1 && send_cmd(CMD41, 0) == 0) break; /* ACMD41 */ |
} else { |
if (send_cmd(CMD1, 0) == 0) break; /* CMD1 */ |
} |
} while (Timer1); |
if (!Timer1 || send_cmd(CMD16, 512) != 0) /* Select R/W block length */ |
ty = 0; |
} |
} |
CardType = ty; |
DESELECT(); /* CS = H */ |
rcvr_spi(); /* Idle (Release DO) */ |
if (ty) { /* Initialization succeded */ |
Stat &= ~STA_NOINIT; /* Clear STA_NOINIT */ |
} else { /* Initialization failed */ |
Stat |= STA_NOINIT; /* Set STA_NOINIT */ |
} |
return Stat; |
} |
/*-----------------------------------------------------------------------*/ |
/* Get Disk Status */ |
/*-----------------------------------------------------------------------*/ |
DSTATUS disk_status ( |
BYTE drv /* Physical drive nmuber (0) */ |
) |
{ |
if (drv) return STA_NOINIT; /* Supports only single drive */ |
return Stat; |
} |
/*-----------------------------------------------------------------------*/ |
/* Read Sector(s) */ |
/*-----------------------------------------------------------------------*/ |
DRESULT disk_read ( |
BYTE drv, /* Physical drive nmuber (0) */ |
BYTE *buff, /* Pointer to the data buffer to store read data */ |
DWORD sector, /* Start sector number (LBA) */ |
BYTE count /* Sector count (1..255) */ |
) |
{ |
if (drv || !count) return RES_PARERR; |
if (Stat & STA_NOINIT) return RES_NOTRDY; |
if (!(CardType & 4)) sector *= 512; /* Convert to byte address if needed */ |
SELECT(); /* CS = L */ |
if (count == 1) { /* Single block read */ |
if ((send_cmd(CMD17, sector) == 0) /* READ_SINGLE_BLOCK */ |
&& rcvr_datablock(buff, 512)) |
count = 0; |
} |
else { /* Multiple block read */ |
if (send_cmd(CMD18, sector) == 0) { /* READ_MULTIPLE_BLOCK */ |
do { |
if (!rcvr_datablock(buff, 512)) break; |
buff += 512; |
} while (--count); |
send_cmd(CMD12, 0); /* STOP_TRANSMISSION */ |
} |
} |
DESELECT(); /* CS = H */ |
rcvr_spi(); /* Idle (Release DO) */ |
return count ? RES_ERROR : RES_OK; |
} |
/*-----------------------------------------------------------------------*/ |
/* Write Sector(s) */ |
/*-----------------------------------------------------------------------*/ |
#if _READONLY == 0 |
DRESULT disk_write ( |
BYTE drv, /* Physical drive nmuber (0) */ |
const BYTE *buff, /* Pointer to the data to be written */ |
DWORD sector, /* Start sector number (LBA) */ |
BYTE count /* Sector count (1..255) */ |
) |
{ |
if (drv || !count) return RES_PARERR; |
if (Stat & STA_NOINIT) return RES_NOTRDY; |
if (Stat & STA_PROTECT) return RES_WRPRT; |
if (!(CardType & 4)) sector *= 512; /* Convert to byte address if needed */ |
SELECT(); /* CS = L */ |
if (count == 1) { /* Single block write */ |
if ((send_cmd(CMD24, sector) == 0) /* WRITE_BLOCK */ |
&& xmit_datablock(buff, 0xFE)) |
count = 0; |
} |
else { /* Multiple block write */ |
if (CardType & 2) { |
send_cmd(CMD55, 0); send_cmd(CMD23, count); /* ACMD23 */ |
} |
if (send_cmd(CMD25, sector) == 0) { /* WRITE_MULTIPLE_BLOCK */ |
do { |
if (!xmit_datablock(buff, 0xFC)) break; |
buff += 512; |
} while (--count); |
if (!xmit_datablock(0, 0xFD)) /* STOP_TRAN token */ |
count = 1; |
} |
} |
DESELECT(); /* CS = H */ |
rcvr_spi(); /* Idle (Release DO) */ |
return count ? RES_ERROR : RES_OK; |
} |
#endif /* _READONLY */ |
/*-----------------------------------------------------------------------*/ |
/* Miscellaneous Functions */ |
/*-----------------------------------------------------------------------*/ |
DRESULT disk_ioctl ( |
BYTE drv, /* Physical drive nmuber (0) */ |
BYTE ctrl, /* Control code */ |
void *buff /* Buffer to send/receive data block */ |
) |
{ |
DRESULT res; |
BYTE n, csd[16], *ptr = buff; |
WORD csize; |
if (drv) return RES_PARERR; |
SELECT(); /* CS = L */ |
res = RES_ERROR; |
switch (ctrl) { |
case GET_SECTOR_COUNT : /* Get number of sectors on the disk (DWORD) */ |
if ((send_cmd(CMD9, 0) == 0) && rcvr_datablock(csd, 16)) { |
if ((csd[0] >> 6) == 1) { /* SDC ver 2.00 */ |
csize = csd[9] + ((WORD)csd[8] << 8) + 1; |
*(DWORD*)buff = (DWORD)csize << 10; |
} else { /* MMC or SDC ver 1.XX */ |
n = (csd[5] & 15) + ((csd[10] & 128) >> 7) + ((csd[9] & 3) << 1) + 2; |
csize = (csd[8] >> 6) + ((WORD)csd[7] << 2) + ((WORD)(csd[6] & 3) << 10) + 1; |
*(DWORD*)buff = (DWORD)csize << (n - 9); |
} |
res = RES_OK; |
} |
break; |
case GET_SECTOR_SIZE : /* Get sectors on the disk (WORD) */ |
*(WORD*)buff = 512; |
res = RES_OK; |
break; |
case CTRL_SYNC : /* Make sure that data has been written */ |
if (wait_ready() == 0xFF) |
res = RES_OK; |
break; |
case MMC_GET_CSD : /* Receive CSD as a data block (16 bytes) */ |
if (Stat & STA_NOINIT) return RES_NOTRDY; |
if ((send_cmd(CMD9, 0) == 0) /* READ_CSD */ |
&& rcvr_datablock(ptr, 16)) |
res = RES_OK; |
break; |
case MMC_GET_CID : /* Receive CID as a data block (16 bytes) */ |
if (Stat & STA_NOINIT) return RES_NOTRDY; |
if ((send_cmd(CMD10, 0) == 0) /* READ_CID */ |
&& rcvr_datablock(ptr, 16)) |
res = RES_OK; |
break; |
case MMC_GET_OCR : /* Receive OCR as an R3 resp (4 bytes) */ |
if (Stat & STA_NOINIT) return RES_NOTRDY; |
if (send_cmd(CMD58, 0) == 0) { /* READ_OCR */ |
for (n = 0; n < 4; n++) |
*ptr++ = rcvr_spi(); |
res = RES_OK; |
} |
break; |
default: |
res = RES_PARERR; |
} |
DESELECT(); /* CS = H */ |
rcvr_spi(); /* Idle (Release DO) */ |
return res; |
} |
/*---------------------------------------*/ |
/* Device timer interrupt procedure */ |
/* This must be called in period of 10ms */ |
/* (Platform dependent) */ |
void disk_timerproc (void) |
{ |
static BYTE pv; |
BYTE n, s; |
n = Timer1; /* 100Hz decrement timer */ |
if (n) Timer1 = --n; |
n = Timer2; |
if (n) Timer2 = --n; |
n = pv; |
pv = SOCKPORT & (SOCKINS); /* Sample socket switch */ |
if (n == pv) { /* Have contacts stabled? */ |
s = Stat; |
if (pv & SOCKINS) /* INS = H (Socket empty) */ |
s |= (STA_NODISK | STA_NOINIT); |
else /* INS = L (Card inserted) */ |
s &= ~STA_NODISK; |
Stat = s; |
} |
} |
/Designs/Data_loggers/DOGFINDER01A/SW/ATMEGA168/tff.c |
---|
0,0 → 1,1580 |
/*--------------------------------------------------------------------------/ |
/ FatFs - Tiny FAT file system module R0.04b (C)ChaN, 2007 |
/---------------------------------------------------------------------------/ |
/ The FatFs module is an experimenal project to implement FAT file system to |
/ cheap microcontrollers. This is a free software and is opened for education, |
/ research and development under license policy of following trems. |
/ |
/ Copyright (C) 2007, ChaN, all right reserved. |
/ |
/ * The FatFs module is a free software and there is no warranty. |
/ * You can use, modify and/or redistribute it for personal, non-profit or |
/ profit use without any restriction under your responsibility. |
/ * Redistributions of source code must retain the above copyright notice. |
/ |
/---------------------------------------------------------------------------/ |
/ Feb 26, 2006 R0.00 Prototype. |
/ Apr 29, 2006 R0.01 First stable version. |
/ Jun 01, 2006 R0.02 Added FAT12 support. |
/ Removed unbuffered mode. |
/ Fixed a problem on small (<32M) patition. |
/ Jun 10, 2006 R0.02a Added a configuration option (_FS_MINIMUM). |
/ Sep 22, 2006 R0.03 Added f_rename(). |
/ Changed option _FS_MINIMUM to _FS_MINIMIZE. |
/ Dec 09, 2006 R0.03a Improved cluster scan algolithm to write files fast. |
/ Feb 04, 2007 R0.04 Added FAT32 supprt. |
/ Changed some interfaces incidental to FatFs. |
/ Changed f_mountdrv() to f_mount(). |
/ Apr 01, 2007 R0.04a Added a capability of extending file size to f_lseek(). |
/ Added minimization level 3. |
/ Fixed a problem in FAT32 support. |
/ xxx xx, 2007 R0.04b Added a configuration option _USE_NTFLAG. |
/ Added FSInfo support. |
/ Fixed some problems corresponds to FAT32 support. |
/ Fixed DBCS name can result FR_INVALID_NAME. |
/ Fixed short seek (<= csize) collapses the file object. |
/---------------------------------------------------------------------------*/ |
#include <string.h> |
#include "tff.h" /* Tiny-FatFs declarations */ |
#include "diskio.h" /* Include file for user provided disk functions */ |
static |
FATFS *FatFs; /* Pointer to the file system objects (logical drive) */ |
static |
WORD fsid; /* File system mount ID */ |
/*------------------------------------------------------------------------- |
Module Private Functions |
-------------------------------------------------------------------------*/ |
/*-----------------------------------------------------------------------*/ |
/* Change window offset */ |
/*-----------------------------------------------------------------------*/ |
static |
BOOL move_window ( /* TRUE: successful, FALSE: failed */ |
DWORD sector /* Sector number to make apperance in the FatFs->win */ |
) /* Move to zero only writes back dirty window */ |
{ |
DWORD wsect; |
FATFS *fs = FatFs; |
wsect = fs->winsect; |
if (wsect != sector) { /* Changed current window */ |
#if !_FS_READONLY |
BYTE n; |
if (fs->winflag) { /* Write back dirty window if needed */ |
if (disk_write(0, fs->win, wsect, 1) != RES_OK) |
return FALSE; |
fs->winflag = 0; |
if (wsect < (fs->fatbase + fs->sects_fat)) { /* In FAT area */ |
for (n = fs->n_fats; n >= 2; n--) { /* Refrect the change to all FAT copies */ |
wsect += fs->sects_fat; |
disk_write(0, fs->win, wsect, 1); |
} |
} |
} |
#endif |
if (sector) { |
if (disk_read(0, fs->win, sector, 1) != RES_OK) |
return FALSE; |
fs->winsect = sector; |
} |
} |
return TRUE; |
} |
/*-----------------------------------------------------------------------*/ |
/* Clean-up cached data */ |
/*-----------------------------------------------------------------------*/ |
#if !_FS_READONLY |
static |
FRESULT sync (void) /* FR_OK: successful, FR_RW_ERROR: failed */ |
{ |
FATFS *fs = FatFs; |
fs->winflag = 1; |
if (!move_window(0)) return FR_RW_ERROR; |
#if _USE_FSINFO |
if (fs->fs_type == FS_FAT32 && fs->fsi_flag) { /* Update FSInfo sector if needed */ |
fs->winsect = 0; |
memset(fs->win, 0, 512); |
ST_WORD(&fs->win[BS_55AA], 0xAA55); |
ST_DWORD(&fs->win[FSI_LeadSig], 0x41615252); |
ST_DWORD(&fs->win[FSI_StrucSig], 0x61417272); |
ST_DWORD(&fs->win[FSI_Free_Count], fs->free_clust); |
ST_DWORD(&fs->win[FSI_Nxt_Free], fs->last_clust); |
disk_write(0, fs->win, fs->fsi_sector, 1); |
fs->fsi_flag = 0; |
} |
#endif |
if (disk_ioctl(0, CTRL_SYNC, NULL) != RES_OK) return FR_RW_ERROR; |
return FR_OK; |
} |
#endif |
/*-----------------------------------------------------------------------*/ |
/* Get a cluster status */ |
/*-----------------------------------------------------------------------*/ |
static |
CLUST get_cluster ( /* 0,>=2: successful, 1: failed */ |
CLUST clust /* Cluster# to get the link information */ |
) |
{ |
WORD wc, bc; |
DWORD fatsect; |
FATFS *fs = FatFs; |
if (clust >= 2 && clust < fs->max_clust) { /* Valid cluster# */ |
fatsect = fs->fatbase; |
switch (fs->fs_type) { |
case FS_FAT12 : |
bc = (WORD)clust * 3 / 2; |
if (!move_window(fatsect + bc / 512)) break; |
wc = fs->win[bc % 512]; bc++; |
if (!move_window(fatsect + bc / 512)) break; |
wc |= (WORD)fs->win[bc % 512] << 8; |
return (clust & 1) ? (wc >> 4) : (wc & 0xFFF); |
case FS_FAT16 : |
if (!move_window(fatsect + clust / 256)) break; |
return LD_WORD(&fs->win[((WORD)clust * 2) % 512]); |
#if _FAT32 |
case FS_FAT32 : |
if (!move_window(fatsect + clust / 128)) break; |
return LD_DWORD(&fs->win[((WORD)clust * 4) % 512]) & 0x0FFFFFFF; |
#endif |
} |
} |
return 1; /* There is no cluster information, or an error occured */ |
} |
/*-----------------------------------------------------------------------*/ |
/* Change a cluster status */ |
/*-----------------------------------------------------------------------*/ |
#if !_FS_READONLY |
static |
BOOL put_cluster ( /* TRUE: successful, FALSE: failed */ |
CLUST clust, /* Cluster# to change */ |
CLUST val /* New value to mark the cluster */ |
) |
{ |
WORD bc; |
BYTE *p; |
DWORD fatsect; |
FATFS *fs = FatFs; |
fatsect = fs->fatbase; |
switch (fs->fs_type) { |
case FS_FAT12 : |
bc = (WORD)clust * 3 / 2; |
if (!move_window(fatsect + bc / 512)) return FALSE; |
p = &fs->win[bc % 512]; |
*p = (clust & 1) ? ((*p & 0x0F) | ((BYTE)val << 4)) : (BYTE)val; |
bc++; |
fs->winflag = 1; |
if (!move_window(fatsect + bc / 512)) return FALSE; |
p = &fs->win[bc % 512]; |
*p = (clust & 1) ? (BYTE)(val >> 4) : ((*p & 0xF0) | ((BYTE)(val >> 8) & 0x0F)); |
break; |
case FS_FAT16 : |
if (!move_window(fatsect + clust / 256)) return FALSE; |
ST_WORD(&fs->win[((WORD)clust * 2) % 512], (WORD)val); |
break; |
#if _FAT32 |
case FS_FAT32 : |
if (!move_window(fatsect + clust / 128)) return FALSE; |
ST_DWORD(&fs->win[((WORD)clust * 4) % 512], val); |
break; |
#endif |
default : |
return FALSE; |
} |
fs->winflag = 1; |
return TRUE; |
} |
#endif /* !_FS_READONLY */ |
/*-----------------------------------------------------------------------*/ |
/* Remove a cluster chain */ |
/*-----------------------------------------------------------------------*/ |
#if !_FS_READONLY |
static |
BOOL remove_chain ( /* TRUE: successful, FALSE: failed */ |
CLUST clust /* Cluster# to remove chain from */ |
) |
{ |
CLUST nxt; |
FATFS *fs = FatFs; |
while (clust >= 2 && clust < fs->max_clust) { |
nxt = get_cluster(clust); |
if (nxt == 1) return FALSE; |
if (!put_cluster(clust, 0)) return FALSE; |
if (fs->free_clust != (CLUST)0xFFFFFFFF) { |
fs->free_clust++; |
#if _USE_FSINFO |
fs->fsi_flag = 1; |
#endif |
} |
clust = nxt; |
} |
return TRUE; |
} |
#endif |
/*-----------------------------------------------------------------------*/ |
/* Stretch or create a cluster chain */ |
/*-----------------------------------------------------------------------*/ |
#if !_FS_READONLY |
static |
CLUST create_chain ( /* 0: no free cluster, 1: error, >=2: new cluster number */ |
CLUST clust /* Cluster# to stretch, 0 means create new */ |
) |
{ |
CLUST cstat, ncl, scl, mcl; |
FATFS *fs = FatFs; |
mcl = fs->max_clust; |
if (clust == 0) { /* Create new chain */ |
scl = fs->last_clust; /* Get last allocated cluster */ |
if (scl < 2 || scl >= mcl) scl = 1; |
} |
else { /* Stretch existing chain */ |
cstat = get_cluster(clust); /* Check the cluster status */ |
if (cstat < 2) return 1; /* It is an invalid cluster */ |
if (cstat < mcl) return cstat; /* It is already followed by next cluster */ |
scl = clust; |
} |
ncl = scl; /* Start cluster */ |
for (;;) { |
ncl++; /* Next cluster */ |
if (ncl >= mcl) { /* Wrap around */ |
ncl = 2; |
if (ncl > scl) return 0; /* No free custer */ |
} |
cstat = get_cluster(ncl); /* Get the cluster status */ |
if (cstat == 0) break; /* Found a free cluster */ |
if (cstat == 1) return 1; /* Any error occured */ |
if (ncl == scl) return 0; /* No free custer */ |
} |
if (!put_cluster(ncl, (CLUST)0x0FFFFFFF)) return 1; /* Mark the new cluster "in use" */ |
if (clust && !put_cluster(clust, ncl)) return 1; /* Link it to previous one if needed */ |
fs->last_clust = ncl; /* Update fsinfo */ |
if (fs->free_clust != (CLUST)0xFFFFFFFF) { |
fs->free_clust--; |
#if _USE_FSINFO |
fs->fsi_flag = 1; |
#endif |
} |
return ncl; /* Return new cluster number */ |
} |
#endif /* !_FS_READONLY */ |
/*-----------------------------------------------------------------------*/ |
/* Get sector# from cluster# */ |
/*-----------------------------------------------------------------------*/ |
static |
DWORD clust2sect ( /* !=0: sector number, 0: failed - invalid cluster# */ |
CLUST clust /* Cluster# to be converted */ |
) |
{ |
FATFS *fs = FatFs; |
clust -= 2; |
if (clust >= (fs->max_clust - 2)) return 0; /* Invalid cluster# */ |
return (DWORD)clust * fs->sects_clust + fs->database; |
} |
/*-----------------------------------------------------------------------*/ |
/* Move directory pointer to next */ |
/*-----------------------------------------------------------------------*/ |
static |
BOOL next_dir_entry ( /* TRUE: successful, FALSE: could not move next */ |
DIR *dirobj /* Pointer to directory object */ |
) |
{ |
CLUST clust; |
WORD idx; |
FATFS *fs = FatFs; |
idx = dirobj->index + 1; |
if ((idx & 15) == 0) { /* Table sector changed? */ |
dirobj->sect++; /* Next sector */ |
if (!dirobj->clust) { /* In static table */ |
if (idx >= fs->n_rootdir) return FALSE; /* Reached to end of table */ |
} else { /* In dynamic table */ |
if (((idx / 16) & (fs->sects_clust - 1)) == 0) { /* Cluster changed? */ |
clust = get_cluster(dirobj->clust); /* Get next cluster */ |
if (clust < 2 || clust >= fs->max_clust) /* Reached to end of table */ |
return FALSE; |
dirobj->clust = clust; /* Initialize for new cluster */ |
dirobj->sect = clust2sect(clust); |
} |
} |
} |
dirobj->index = idx; /* Lower 4 bit of dirobj->index indicates offset in dirobj->sect */ |
return TRUE; |
} |
/*-----------------------------------------------------------------------*/ |
/* Get file status from directory entry */ |
/*-----------------------------------------------------------------------*/ |
#if _FS_MINIMIZE <= 1 |
static |
void get_fileinfo ( /* No return code */ |
FILINFO *finfo, /* Ptr to store the File Information */ |
const BYTE *dir /* Ptr to the directory entry */ |
) |
{ |
BYTE n, c, a; |
char *p; |
p = &finfo->fname[0]; |
a = _USE_NTFLAG ? dir[DIR_NTres] : 0; /* NT flag */ |
for (n = 0; n < 8; n++) { /* Convert file name (body) */ |
c = dir[n]; |
if (c == ' ') break; |
if (c == 0x05) c = 0xE5; |
if (a & 0x08 && c >= 'A' && c <= 'Z') c += 0x20; |
*p++ = c; |
} |
if (dir[8] != ' ') { /* Convert file name (extension) */ |
*p++ = '.'; |
for (n = 8; n < 11; n++) { |
c = dir[n]; |
if (c == ' ') break; |
if (a & 0x10 && c >= 'A' && c <= 'Z') c += 0x20; |
*p++ = c; |
} |
} |
*p = '\0'; |
finfo->fattrib = dir[DIR_Attr]; /* Attribute */ |
finfo->fsize = LD_DWORD(&dir[DIR_FileSize]); /* Size */ |
finfo->fdate = LD_WORD(&dir[DIR_WrtDate]); /* Date */ |
finfo->ftime = LD_WORD(&dir[DIR_WrtTime]); /* Time */ |
} |
#endif /* _FS_MINIMIZE <= 1 */ |
/*-----------------------------------------------------------------------*/ |
/* Pick a paragraph and create the name in format of directory entry */ |
/*-----------------------------------------------------------------------*/ |
static |
char make_dirfile ( /* 1: error - detected an invalid format, '\0'or'/': next character */ |
const char **path, /* Pointer to the file path pointer */ |
char *dirname /* Pointer to directory name buffer {Name(8), Ext(3), NT flag(1)} */ |
) |
{ |
BYTE n, t, c, a, b; |
memset(dirname, ' ', 8+3); /* Fill buffer with spaces */ |
a = 0; b = 0x18; /* NT flag */ |
n = 0; t = 8; |
for (;;) { |
c = *(*path)++; |
if (c == '\0' || c == '/') { /* Reached to end of str or directory separator */ |
if (n == 0) break; |
dirname[11] = _USE_NTFLAG ? (a & b) : 0; |
return c; |
} |
if (c <= ' ' || c == 0x7F) break; /* Reject invisible chars */ |
if (c == '.') { |
if (!(a & 1) && n >= 1 && n <= 8) { /* Enter extension part */ |
n = 8; t = 11; continue; |
} |
break; |
} |
if (_USE_SJIS && |
((c >= 0x81 && c <= 0x9F) || /* Accept S-JIS code */ |
(c >= 0xE0 && c <= 0xFC))) { |
if (n == 0 && c == 0xE5) /* Change heading \xE5 to \x05 */ |
c = 0x05; |
a ^= 1; goto md_l2; |
} |
if (c == '"') break; /* Reject " */ |
if (c <= ')') goto md_l1; /* Accept ! # $ % & ' ( ) */ |
if (c <= ',') break; /* Reject * + , */ |
if (c <= '9') goto md_l1; /* Accept - 0-9 */ |
if (c <= '?') break; /* Reject : ; < = > ? */ |
if (!(a & 1)) { /* These checks are not applied to S-JIS 2nd byte */ |
if (c == '|') break; /* Reject | */ |
if (c >= '[' && c <= ']') break;/* Reject [ \ ] */ |
if (_USE_NTFLAG && c >= 'A' && c <= 'Z') |
(t == 8) ? (b &= ~0x08) : (b &= ~0x10); |
if (c >= 'a' && c <= 'z') { /* Convert to upper case */ |
c -= 0x20; |
if (_USE_NTFLAG) (t == 8) ? (a |= 0x08) : (a |= 0x10); |
} |
} |
md_l1: |
a &= ~1; |
md_l2: |
if (n >= t) break; |
dirname[n++] = c; |
} |
return 1; |
} |
/*-----------------------------------------------------------------------*/ |
/* Trace a file path */ |
/*-----------------------------------------------------------------------*/ |
static |
FRESULT trace_path ( /* FR_OK(0): successful, !=0: error code */ |
DIR *dirobj, /* Pointer to directory object to return last directory */ |
char *fn, /* Pointer to last segment name to return */ |
const char *path, /* Full-path string to trace a file or directory */ |
BYTE **dir /* Directory pointer in Win[] to retutn */ |
) |
{ |
CLUST clust; |
char ds; |
BYTE *dptr = NULL; |
FATFS *fs = FatFs; |
/* Initialize directory object */ |
clust = fs->dirbase; |
#if _FAT32 |
if (fs->fs_type == FS_FAT32) { |
dirobj->clust = dirobj->sclust = clust; |
dirobj->sect = clust2sect(clust); |
} else |
#endif |
{ |
dirobj->clust = dirobj->sclust = 0; |
dirobj->sect = clust; |
} |
dirobj->index = 0; |
dirobj->fs = fs; |
if (*path == '\0') { /* Null path means the root directory */ |
*dir = NULL; return FR_OK; |
} |
for (;;) { |
ds = make_dirfile(&path, fn); /* Get a paragraph into fn[] */ |
if (ds == 1) return FR_INVALID_NAME; |
for (;;) { |
if (!move_window(dirobj->sect)) return FR_RW_ERROR; |
dptr = &fs->win[(dirobj->index & 15) * 32]; /* Pointer to the directory entry */ |
if (dptr[DIR_Name] == 0) /* Has it reached to end of dir? */ |
return !ds ? FR_NO_FILE : FR_NO_PATH; |
if (dptr[DIR_Name] != 0xE5 /* Matched? */ |
&& !(dptr[DIR_Attr] & AM_VOL) |
&& !memcmp(&dptr[DIR_Name], fn, 8+3) ) break; |
if (!next_dir_entry(dirobj)) /* Next directory pointer */ |
return !ds ? FR_NO_FILE : FR_NO_PATH; |
} |
if (!ds) { *dir = dptr; return FR_OK; } /* Matched with end of path */ |
if (!(dptr[DIR_Attr] & AM_DIR)) return FR_NO_PATH; /* Cannot trace because it is a file */ |
clust = /* Get cluster# of the directory */ |
#if _FAT32 |
((DWORD)LD_WORD(&dptr[DIR_FstClusHI]) << 16) | |
#endif |
LD_WORD(&dptr[DIR_FstClusLO]); |
dirobj->clust = dirobj->sclust = clust; /* Restart scannig with the new directory */ |
dirobj->sect = clust2sect(clust); |
dirobj->index = 2; |
} |
} |
/*-----------------------------------------------------------------------*/ |
/* Reserve a directory entry */ |
/*-----------------------------------------------------------------------*/ |
#if !_FS_READONLY |
static |
FRESULT reserve_direntry ( /* FR_OK: successful, FR_DENIED: no free entry, FR_RW_ERROR: a disk error occured */ |
DIR *dirobj, /* Target directory to create new entry */ |
BYTE **dir /* Pointer to pointer to created entry to retutn */ |
) |
{ |
CLUST clust; |
DWORD sector; |
BYTE c, n, *dptr; |
FATFS *fs = FatFs; |
/* Re-initialize directory object */ |
clust = dirobj->sclust; |
if (clust) { /* Dyanmic directory table */ |
dirobj->clust = clust; |
dirobj->sect = clust2sect(clust); |
} else { /* Static directory table */ |
dirobj->sect = fs->dirbase; |
} |
dirobj->index = 0; |
do { |
if (!move_window(dirobj->sect)) return FR_RW_ERROR; |
dptr = &fs->win[(dirobj->index & 15) * 32]; /* Pointer to the directory entry */ |
c = dptr[DIR_Name]; |
if (c == 0 || c == 0xE5) { /* Found an empty entry! */ |
*dir = dptr; return FR_OK; |
} |
} while (next_dir_entry(dirobj)); /* Next directory pointer */ |
/* Reached to end of the directory table */ |
/* Abort when static table or could not stretch dynamic table */ |
if (!clust || !(clust = create_chain(dirobj->clust))) return FR_DENIED; |
if (clust == 1 || !move_window(0)) return FR_RW_ERROR; |
fs->winsect = sector = clust2sect(clust); /* Cleanup the expanded table */ |
memset(fs->win, 0, 512); |
for (n = fs->sects_clust; n; n--) { |
if (disk_write(0, fs->win, sector, 1) != RES_OK) |
return FR_RW_ERROR; |
sector++; |
} |
fs->winflag = 1; |
*dir = fs->win; |
return FR_OK; |
} |
#endif /* !_FS_READONLY */ |
/*-----------------------------------------------------------------------*/ |
/* Load boot record and check if it is a FAT boot record */ |
/*-----------------------------------------------------------------------*/ |
static |
BYTE check_fs ( /* 0:The FAT boot record, 1:Valid boot record but not an FAT, 2:Not a boot record or error */ |
DWORD sect /* Sector# to check if it is a FAT boot record or not */ |
) |
{ |
FATFS *fs = FatFs; |
if (disk_read(0, fs->win, sect, 1) != RES_OK) /* Load boot record */ |
return 2; |
if (LD_WORD(&fs->win[BS_55AA]) != 0xAA55) /* Check record signature */ |
return 2; |
if (!memcmp(&fs->win[BS_FilSysType], "FAT", 3)) /* Check FAT signature */ |
return 0; |
#if _FAT32 |
if (!memcmp(&fs->win[BS_FilSysType32], "FAT32", 5) && !(fs->win[BPB_ExtFlags] & 0x80)) |
return 0; |
#endif |
return 1; |
} |
/*-----------------------------------------------------------------------*/ |
/* Make sure that the file system is valid */ |
/*-----------------------------------------------------------------------*/ |
static |
FRESULT auto_mount ( /* FR_OK(0): successful, !=0: any error occured */ |
const char **path, /* Pointer to pointer to the path name (drive number) */ |
BYTE chk_wp /* !=0: Check media write protection for wrinting fuctions */ |
) |
{ |
BYTE fmt; |
DSTATUS stat; |
DWORD bootsect, fatsize, totalsect, maxclust; |
const char *p = *path; |
FATFS *fs = FatFs; |
while (*p == ' ') p++; /* Strip leading spaces */ |
if (*p == '/') p++; /* Strip heading slash */ |
*path = p; /* Return pointer to the path name */ |
/* Is the file system object registered? */ |
if (!fs) return FR_NOT_ENABLED; |
/* Chekck if the logical drive has been mounted or not */ |
if (fs->fs_type) { |
stat = disk_status(0); |
if (!(stat & STA_NOINIT)) { /* If the physical drive is kept initialized */ |
#if !_FS_READONLY |
if (chk_wp && (stat & STA_PROTECT)) /* Check write protection if needed */ |
return FR_WRITE_PROTECTED; |
#endif |
return FR_OK; /* The file system object is valid */ |
} |
} |
/* The logical drive has not been mounted, following code attempts to mount the logical drive */ |
memset(fs, 0, sizeof(FATFS)); /* Clean-up the file system object */ |
stat = disk_initialize(0); /* Initialize low level disk I/O layer */ |
if (stat & STA_NOINIT) /* Check if the drive is ready */ |
return FR_NOT_READY; |
#if !_FS_READONLY |
if (chk_wp && (stat & STA_PROTECT)) /* Check write protection if needed */ |
return FR_WRITE_PROTECTED; |
#endif |
/* Search FAT partition on the drive */ |
fmt = check_fs(bootsect = 0); /* Check sector 0 as an SFD format */ |
if (fmt == 1) { /* Not a FAT boot record, it may be patitioned */ |
/* Check a partition listed in top of the partition table */ |
if (fs->win[MBR_Table+4]) { /* Is the 1st partition existing? */ |
bootsect = LD_DWORD(&fs->win[MBR_Table+8]); /* Partition offset in LBA */ |
fmt = check_fs(bootsect); /* Check the partition */ |
} |
} |
if (fmt || LD_WORD(&fs->win[BPB_BytsPerSec]) != 512) /* No valid FAT patition is found */ |
return FR_NO_FILESYSTEM; |
/* Initialize the file system object */ |
fatsize = LD_WORD(&fs->win[BPB_FATSz16]); /* Number of sectors per FAT */ |
if (!fatsize) fatsize = LD_DWORD(&fs->win[BPB_FATSz32]); |
fs->sects_fat = (CLUST)fatsize; |
fs->n_fats = fs->win[BPB_NumFATs]; /* Number of FAT copies */ |
fatsize *= fs->n_fats; /* (Number of sectors in FAT area) */ |
fs->fatbase = bootsect + LD_WORD(&fs->win[BPB_RsvdSecCnt]); /* FAT start sector (lba) */ |
fs->sects_clust = fs->win[BPB_SecPerClus]; /* Number of sectors per cluster */ |
fs->n_rootdir = LD_WORD(&fs->win[BPB_RootEntCnt]); /* Nmuber of root directory entries */ |
totalsect = LD_WORD(&fs->win[BPB_TotSec16]); /* Number of sectors on the file system */ |
if (!totalsect) totalsect = LD_DWORD(&fs->win[BPB_TotSec32]); |
fs->max_clust = maxclust = (totalsect /* Last cluster# + 1 */ |
- LD_WORD(&fs->win[BPB_RsvdSecCnt]) - fatsize - fs->n_rootdir / 16 |
) / fs->sects_clust + 2; |
fmt = FS_FAT12; /* Determine the FAT sub type */ |
if (maxclust > 0xFF7) fmt = FS_FAT16; |
if (maxclust > 0xFFF7) |
#if !_FAT32 |
return FR_NO_FILESYSTEM; |
#else |
fmt = FS_FAT32; |
if (fmt == FS_FAT32) |
fs->dirbase = LD_DWORD(&fs->win[BPB_RootClus]); /* Root directory start cluster */ |
else |
#endif |
fs->dirbase = fs->fatbase + fatsize; /* Root directory start sector (lba) */ |
fs->database = fs->fatbase + fatsize + fs->n_rootdir / 16; /* Data start sector (lba) */ |
fs->fs_type = fmt; /* FAT sub-type */ |
#if !_FS_READONLY |
fs->free_clust = (CLUST)0xFFFFFFFF; |
#if _USE_FSINFO |
/* Load fsinfo sector if needed */ |
if (fmt == FS_FAT32) { |
fs->fsi_sector = bootsect + LD_WORD(&fs->win[BPB_FSInfo]); |
if (disk_read(0, fs->win, fs->fsi_sector, 1) == RES_OK && |
LD_WORD(&fs->win[BS_55AA]) == 0xAA55 && |
LD_DWORD(&fs->win[FSI_LeadSig]) == 0x41615252 && |
LD_DWORD(&fs->win[FSI_StrucSig]) == 0x61417272) { |
fs->last_clust = LD_DWORD(&fs->win[FSI_Nxt_Free]); |
fs->free_clust = LD_DWORD(&fs->win[FSI_Free_Count]); |
} |
} |
#endif |
#endif |
fs->id = ++fsid; /* File system mount ID */ |
return FR_OK; |
} |
/*-----------------------------------------------------------------------*/ |
/* Check if the file/dir object is valid or not */ |
/*-----------------------------------------------------------------------*/ |
static |
FRESULT validate ( /* FR_OK(0): The id is valid, !=0: Not valid */ |
const FATFS *fs, /* Pointer to the file system object */ |
WORD id /* id member of the target object to be checked */ |
) |
{ |
if (!fs || fs->id != id) |
return FR_INVALID_OBJECT; |
if (disk_status(0) & STA_NOINIT) |
return FR_NOT_READY; |
return FR_OK; |
} |
/*-------------------------------------------------------------------------- |
Public Functions |
--------------------------------------------------------------------------*/ |
/*-----------------------------------------------------------------------*/ |
/* Mount/Unmount a Locical Drive */ |
/*-----------------------------------------------------------------------*/ |
FRESULT f_mount ( |
BYTE drv, /* Logical drive number to be mounted/unmounted */ |
FATFS *fs /* Pointer to new file system object (NULL for unmount)*/ |
) |
{ |
FATFS *fsobj; |
if (drv) return FR_INVALID_DRIVE; |
fsobj = FatFs; |
FatFs = fs; |
if (fsobj) memset(fsobj, 0, sizeof(FATFS)); |
if (fs) memset(fs, 0, sizeof(FATFS)); |
return FR_OK; |
} |
/*-----------------------------------------------------------------------*/ |
/* Open or Create a File */ |
/*-----------------------------------------------------------------------*/ |
FRESULT f_open ( |
FIL *fp, /* Pointer to the blank file object */ |
const char *path, /* Pointer to the file name */ |
BYTE mode /* Access mode and file open mode flags */ |
) |
{ |
FRESULT res; |
BYTE *dir; |
DIR dirobj; |
char fn[8+3+1]; |
FATFS *fs = FatFs; |
fp->fs = NULL; |
#if !_FS_READONLY |
mode &= (FA_READ|FA_WRITE|FA_CREATE_ALWAYS|FA_OPEN_ALWAYS|FA_CREATE_NEW); |
res = auto_mount(&path, (BYTE)(mode & (FA_WRITE|FA_CREATE_ALWAYS|FA_OPEN_ALWAYS|FA_CREATE_NEW))); |
#else |
mode &= FA_READ; |
res = auto_mount(&path, 0); |
#endif |
if (res != FR_OK) return res; |
/* Trace the file path */ |
res = trace_path(&dirobj, fn, path, &dir); /* Trace the file path */ |
#if !_FS_READONLY |
/* Create or Open a File */ |
if (mode & (FA_CREATE_ALWAYS|FA_OPEN_ALWAYS|FA_CREATE_NEW)) { |
CLUST rs; |
DWORD dw; |
if (res != FR_OK) { /* No file, create new */ |
if (res != FR_NO_FILE) return res; |
res = reserve_direntry(&dirobj, &dir); |
if (res != FR_OK) return res; |
memset(dir, 0, 32); /* Initialize the new entry */ |
memcpy(&dir[DIR_Name], fn, 8+3); |
dir[DIR_NTres] = fn[11]; |
mode |= FA_CREATE_ALWAYS; |
} else { /* Any object is already existing */ |
if (mode & FA_CREATE_NEW) /* Cannot create new */ |
return FR_EXIST; |
if (dir == NULL || (dir[DIR_Attr] & (AM_RDO|AM_DIR))) /* Cannot overwrite (R/O or DIR) */ |
return FR_DENIED; |
if (mode & FA_CREATE_ALWAYS) { /* Resize it to zero */ |
#if _FAT32 |
rs = ((DWORD)LD_WORD(&dir[DIR_FstClusHI]) << 16) | LD_WORD(&dir[DIR_FstClusLO]); |
ST_WORD(&dir[DIR_FstClusHI], 0); |
#else |
rs = LD_WORD(&dir[DIR_FstClusLO]); |
#endif |
ST_WORD(&dir[DIR_FstClusLO], 0); /* cluster = 0 */ |
ST_DWORD(&dir[DIR_FileSize], 0); /* size = 0 */ |
fs->winflag = 1; |
dw = fs->winsect; /* Remove the cluster chain */ |
if (!remove_chain(rs) || !move_window(dw)) |
return FR_RW_ERROR; |
fs->last_clust = rs - 1; /* Reuse the cluster hole */ |
} |
} |
if (mode & FA_CREATE_ALWAYS) { |
dir[DIR_Attr] = AM_ARC; /* New attribute */ |
dw = get_fattime(); |
ST_DWORD(&dir[DIR_WrtTime], dw); /* Updated time */ |
ST_DWORD(&dir[DIR_CrtTime], dw); /* Created time */ |
fs->winflag = 1; |
} |
} |
/* Open a File */ |
else { |
#endif /* !_FS_READONLY */ |
if (res != FR_OK) return res; /* Trace failed */ |
if (dir == NULL || (dir[DIR_Attr] & AM_DIR)) /* It is a directory */ |
return FR_NO_FILE; |
#if !_FS_READONLY |
if ((mode & FA_WRITE) && (dir[DIR_Attr] & AM_RDO)) /* R/O violation */ |
return FR_DENIED; |
} |
fp->dir_sect = fs->winsect; /* Pointer to the directory entry */ |
fp->dir_ptr = dir; |
#endif |
fp->flag = mode; /* File access mode */ |
fp->org_clust = /* File start cluster */ |
#if _FAT32 |
((DWORD)LD_WORD(&dir[DIR_FstClusHI]) << 16) | |
#endif |
LD_WORD(&dir[DIR_FstClusLO]); |
fp->fsize = LD_DWORD(&dir[DIR_FileSize]); /* File size */ |
fp->fptr = 0; /* File ptr */ |
fp->sect_clust = 1; /* Sector counter */ |
fp->fs = fs; fp->id = fs->id; /* Owner file system object of the file */ |
return FR_OK; |
} |
/*-----------------------------------------------------------------------*/ |
/* Read File */ |
/*-----------------------------------------------------------------------*/ |
FRESULT f_read ( |
FIL *fp, /* Pointer to the file object */ |
void *buff, /* Pointer to data buffer */ |
WORD btr, /* Number of bytes to read */ |
WORD *br /* Pointer to number of bytes read */ |
) |
{ |
DWORD sect, remain; |
WORD rcnt; |
CLUST clust; |
BYTE cc, *rbuff = buff; |
FRESULT res; |
FATFS *fs = fp->fs; |
*br = 0; |
res = validate(fs, fp->id); /* Check validity of the object */ |
if (res) return res; |
if (fp->flag & FA__ERROR) return FR_RW_ERROR; /* Check error flag */ |
if (!(fp->flag & FA_READ)) return FR_DENIED; /* Check access mode */ |
remain = fp->fsize - fp->fptr; |
if (btr > remain) btr = (WORD)remain; /* Truncate read count by number of bytes left */ |
for ( ; btr; /* Repeat until all data transferred */ |
rbuff += rcnt, fp->fptr += rcnt, *br += rcnt, btr -= rcnt) { |
if ((fp->fptr % 512) == 0) { /* On the sector boundary */ |
if (--fp->sect_clust) { /* Decrement left sector counter */ |
sect = fp->curr_sect + 1; /* Get current sector */ |
} else { /* On the cluster boundary, get next cluster */ |
clust = (fp->fptr == 0) ? |
fp->org_clust : get_cluster(fp->curr_clust); |
if (clust < 2 || clust >= fs->max_clust) |
goto fr_error; |
fp->curr_clust = clust; /* Current cluster */ |
sect = clust2sect(clust); /* Get current sector */ |
fp->sect_clust = fs->sects_clust; /* Re-initialize the left sector counter */ |
} |
fp->curr_sect = sect; /* Update current sector */ |
cc = btr / 512; /* When left bytes >= 512, */ |
if (cc) { /* Read maximum contiguous sectors directly */ |
if (cc > fp->sect_clust) cc = fp->sect_clust; |
if (disk_read(0, rbuff, sect, cc) != RES_OK) |
goto fr_error; |
fp->sect_clust -= cc - 1; |
fp->curr_sect += cc - 1; |
rcnt = cc * 512; continue; |
} |
} |
if (!move_window(fp->curr_sect)) goto fr_error; /* Move sector window */ |
rcnt = 512 - (WORD)(fp->fptr % 512); /* Copy fractional bytes from sector window */ |
if (rcnt > btr) rcnt = btr; |
memcpy(rbuff, &fs->win[(WORD)fp->fptr % 512], rcnt); |
} |
return FR_OK; |
fr_error: /* Abort this function due to an unrecoverable error */ |
fp->flag |= FA__ERROR; |
return FR_RW_ERROR; |
} |
#if !_FS_READONLY |
/*-----------------------------------------------------------------------*/ |
/* Write File */ |
/*-----------------------------------------------------------------------*/ |
FRESULT f_write ( |
FIL *fp, /* Pointer to the file object */ |
const void *buff, /* Pointer to the data to be written */ |
WORD btw, /* Number of bytes to write */ |
WORD *bw /* Pointer to number of bytes written */ |
) |
{ |
DWORD sect; |
WORD wcnt; |
CLUST clust; |
BYTE cc; |
FRESULT res; |
const BYTE *wbuff = buff; |
FATFS *fs = fp->fs; |
*bw = 0; |
res = validate(fs, fp->id); /* Check validity of the object */ |
if (res) return res; |
if (fp->flag & FA__ERROR) return FR_RW_ERROR; /* Check error flag */ |
if (!(fp->flag & FA_WRITE)) return FR_DENIED; /* Check access mode */ |
if (fp->fsize + btw < fp->fsize) return FR_OK; /* File size cannot reach 4GB */ |
for ( ; btw; /* Repeat until all data transferred */ |
wbuff += wcnt, fp->fptr += wcnt, *bw += wcnt, btw -= wcnt) { |
if ((fp->fptr % 512) == 0) { /* On the sector boundary */ |
if (--(fp->sect_clust)) { /* Decrement left sector counter */ |
sect = fp->curr_sect + 1; /* Get current sector */ |
} else { /* On the cluster boundary, get next cluster */ |
if (fp->fptr == 0) { /* Is top of the file */ |
clust = fp->org_clust; |
if (clust == 0) /* No cluster is created yet */ |
fp->org_clust = clust = create_chain(0); /* Create a new cluster chain */ |
} else { /* Middle or end of file */ |
clust = create_chain(fp->curr_clust); /* Trace or streach cluster chain */ |
} |
if (clust == 0) break; /* Disk full */ |
if (clust == 1 || clust >= fs->max_clust) goto fw_error; |
fp->curr_clust = clust; /* Current cluster */ |
sect = clust2sect(clust); /* Get current sector */ |
fp->sect_clust = fs->sects_clust; /* Re-initialize the left sector counter */ |
} |
fp->curr_sect = sect; /* Update current sector */ |
cc = btw / 512; /* When left bytes >= 512, */ |
if (cc) { /* Write maximum contiguous sectors directly */ |
if (cc > fp->sect_clust) cc = fp->sect_clust; |
if (disk_write(0, wbuff, sect, cc) != RES_OK) |
goto fw_error; |
fp->sect_clust -= cc - 1; |
fp->curr_sect += cc - 1; |
wcnt = cc * 512; continue; |
} |
if (fp->fptr >= fp->fsize) { /* Flush R/W window if needed */ |
if (!move_window(0)) goto fw_error; |
fs->winsect = fp->curr_sect; |
} |
} |
if (!move_window(fp->curr_sect)) /* Move sector window */ |
goto fw_error; |
wcnt = 512 - (WORD)(fp->fptr % 512); /* Copy fractional bytes bytes to sector window */ |
if (wcnt > btw) wcnt = btw; |
memcpy(&fs->win[(WORD)fp->fptr % 512], wbuff, wcnt); |
fs->winflag = 1; |
} |
if (fp->fptr > fp->fsize) fp->fsize = fp->fptr; /* Update file size if needed */ |
fp->flag |= FA__WRITTEN; /* Set file changed flag */ |
return FR_OK; |
fw_error: /* Abort this function due to an unrecoverable error */ |
fp->flag |= FA__ERROR; |
return FR_RW_ERROR; |
} |
/*-----------------------------------------------------------------------*/ |
/* Synchronize between File and Disk */ |
/*-----------------------------------------------------------------------*/ |
FRESULT f_sync ( |
FIL *fp /* Pointer to the file object */ |
) |
{ |
DWORD tim; |
BYTE *dir; |
FRESULT res; |
FATFS *fs = fp->fs; |
res = validate(fs, fp->id); /* Check validity of the object */ |
if (res == FR_OK) { |
if (fp->flag & FA__WRITTEN) { /* Has the file been written? */ |
/* Update the directory entry */ |
if (!move_window(fp->dir_sect)) |
return FR_RW_ERROR; |
dir = fp->dir_ptr; |
dir[DIR_Attr] |= AM_ARC; /* Set archive bit */ |
ST_DWORD(&dir[DIR_FileSize], fp->fsize); /* Update file size */ |
ST_WORD(&dir[DIR_FstClusLO], fp->org_clust); /* Update start cluster */ |
#if _FAT32 |
ST_WORD(&dir[DIR_FstClusHI], fp->org_clust >> 16); |
#endif |
tim = get_fattime(); /* Updated time */ |
ST_DWORD(&dir[DIR_WrtTime], tim); |
fp->flag &= ~FA__WRITTEN; |
res = sync(); |
} |
} |
return res; |
} |
#endif /* !_FS_READONLY */ |
/*-----------------------------------------------------------------------*/ |
/* Close File */ |
/*-----------------------------------------------------------------------*/ |
FRESULT f_close ( |
FIL *fp /* Pointer to the file object to be closed */ |
) |
{ |
FRESULT res; |
#if !_FS_READONLY |
res = f_sync(fp); |
#else |
res = validate(fp->fs, fp->id); |
#endif |
if (res == FR_OK) |
fp->fs = NULL; |
return res; |
} |
#if _FS_MINIMIZE <= 2 |
/*-----------------------------------------------------------------------*/ |
/* Seek File Pointer */ |
/*-----------------------------------------------------------------------*/ |
FRESULT f_lseek ( |
FIL *fp, /* Pointer to the file object */ |
DWORD ofs /* File pointer from top of file */ |
) |
{ |
CLUST clust; |
DWORD csize; |
BYTE csect; |
FRESULT res; |
FATFS *fs = fp->fs; |
res = validate(fs, fp->id); /* Check validity of the object */ |
if (res) return res; |
if (fp->flag & FA__ERROR) return FR_RW_ERROR; |
#if !_FS_READONLY |
if (ofs > fp->fsize && !(fp->flag & FA_WRITE)) |
#else |
if (ofs > fp->fsize) |
#endif |
ofs = fp->fsize; |
fp->fptr = 0; fp->sect_clust = 1; /* Set file R/W pointer to top of the file */ |
/* Move file R/W pointer if needed */ |
if (ofs) { |
clust = fp->org_clust; /* Get start cluster */ |
#if !_FS_READONLY |
if (!clust) { /* If the file does not have a cluster chain, create new cluster chain */ |
clust = create_chain(0); |
if (clust == 1) goto fk_error; |
fp->org_clust = clust; |
} |
#endif |
if (clust) { /* If the file has a cluster chain, it can be followed */ |
csize = (DWORD)fs->sects_clust * 512; /* Cluster size in unit of byte */ |
for (;;) { /* Loop to skip leading clusters */ |
fp->curr_clust = clust; /* Update current cluster */ |
if (ofs <= csize) break; |
#if !_FS_READONLY |
if (fp->flag & FA_WRITE) /* Check if in write mode or not */ |
clust = create_chain(clust); /* Force streached if in write mode */ |
else |
#endif |
clust = get_cluster(clust); /* Only follow cluster chain if not in write mode */ |
if (clust == 0) { /* Stop if could not follow the cluster chain */ |
ofs = csize; break; |
} |
if (clust == 1 || clust >= fs->max_clust) goto fk_error; |
fp->fptr += csize; /* Update R/W pointer */ |
ofs -= csize; |
} |
csect = (BYTE)((ofs - 1) / 512); /* Sector offset in the cluster */ |
fp->curr_sect = clust2sect(clust) + csect; /* Current sector */ |
fp->sect_clust = fs->sects_clust - csect; /* Left sector counter in the cluster */ |
fp->fptr += ofs; /* Update file R/W pointer */ |
} |
} |
#if !_FS_READONLY |
if ((fp->flag & FA_WRITE) && fp->fptr > fp->fsize) { /* Set updated flag if in write mode */ |
fp->fsize = fp->fptr; |
fp->flag |= FA__WRITTEN; |
} |
#endif |
return FR_OK; |
fk_error: /* Abort this function due to an unrecoverable error */ |
fp->flag |= FA__ERROR; |
return FR_RW_ERROR; |
} |
#if _FS_MINIMIZE <= 1 |
/*-----------------------------------------------------------------------*/ |
/* Open a directroy */ |
/*-----------------------------------------------------------------------*/ |
FRESULT f_opendir ( |
DIR *dirobj, /* Pointer to directory object to create */ |
const char *path /* Pointer to the directory path */ |
) |
{ |
BYTE *dir; |
char fn[8+3+1]; |
FRESULT res; |
FATFS *fs = FatFs; |
res = auto_mount(&path, 0); |
if (res != FR_OK) return res; |
res = trace_path(dirobj, fn, path, &dir); /* Trace the directory path */ |
if (res == FR_OK) { /* Trace completed */ |
if (dir != NULL) { /* It is not the root dir */ |
if (dir[DIR_Attr] & AM_DIR) { /* The entry is a directory */ |
dirobj->clust = |
#if _FAT32 |
((DWORD)LD_WORD(&dir[DIR_FstClusHI]) << 16) | |
#endif |
LD_WORD(&dir[DIR_FstClusLO]); |
dirobj->sect = clust2sect(dirobj->clust); |
dirobj->index = 2; |
} else { /* The entry is not a directory */ |
res = FR_NO_FILE; |
} |
} |
dirobj->id = fs->id; |
} |
return res; |
} |
/*-----------------------------------------------------------------------*/ |
/* Read Directory Entry in Sequense */ |
/*-----------------------------------------------------------------------*/ |
FRESULT f_readdir ( |
DIR *dirobj, /* Pointer to the directory object */ |
FILINFO *finfo /* Pointer to file information to return */ |
) |
{ |
BYTE *dir, c; |
FRESULT res; |
FATFS *fs = dirobj->fs; |
res = validate(fs, dirobj->id); /* Check validity of the object */ |
if (res) return res; |
finfo->fname[0] = 0; |
while (dirobj->sect) { |
if (!move_window(dirobj->sect)) |
return FR_RW_ERROR; |
dir = &fs->win[(dirobj->index & 15) * 32]; /* pointer to the directory entry */ |
c = dir[DIR_Name]; |
if (c == 0) break; /* Has it reached to end of dir? */ |
if (c != 0xE5 && !(dir[DIR_Attr] & AM_VOL)) /* Is it a valid entry? */ |
get_fileinfo(finfo, dir); |
if (!next_dir_entry(dirobj)) dirobj->sect = 0; /* Next entry */ |
if (finfo->fname[0]) break; /* Found valid entry */ |
} |
return FR_OK; |
} |
#if _FS_MINIMIZE == 0 |
/*-----------------------------------------------------------------------*/ |
/* Get File Status */ |
/*-----------------------------------------------------------------------*/ |
FRESULT f_stat ( |
const char *path, /* Pointer to the file path */ |
FILINFO *finfo /* Pointer to file information to return */ |
) |
{ |
BYTE *dir; |
char fn[8+3+1]; |
FRESULT res; |
DIR dirobj; |
res = auto_mount(&path, 0); |
if (res != FR_OK) return res; |
res = trace_path(&dirobj, fn, path, &dir); /* Trace the file path */ |
if (res == FR_OK) { /* Trace completed */ |
if (dir) /* Found an object */ |
get_fileinfo(finfo, dir); |
else /* It is root dir */ |
res = FR_INVALID_NAME; |
} |
return res; |
} |
#if !_FS_READONLY |
/*-----------------------------------------------------------------------*/ |
/* Get Number of Free Clusters */ |
/*-----------------------------------------------------------------------*/ |
FRESULT f_getfree ( |
const char *drv, /* Logical drive number */ |
DWORD *nclust, /* Pointer to the double word to return number of free clusters */ |
FATFS **fatfs /* Pointer to pointer to the file system object to return */ |
) |
{ |
DWORD n, sect; |
CLUST clust; |
BYTE fat, f, *p; |
FRESULT res; |
FATFS *fs; |
/* Get drive number */ |
res = auto_mount(&drv, 0); |
if (res != FR_OK) return res; |
*fatfs = fs = FatFs; |
/* If number of free cluster is valid, return it without cluster scan. */ |
if (fs->free_clust <= fs->max_clust - 2) { |
*nclust = fs->free_clust; |
return FR_OK; |
} |
/* Count number of free clusters */ |
fat = fs->fs_type; |
n = 0; |
if (fat == FS_FAT12) { |
clust = 2; |
do { |
if ((WORD)get_cluster(clust) == 0) n++; |
} while (++clust < fs->max_clust); |
} else { |
clust = fs->max_clust; |
sect = fs->fatbase; |
f = 0; p = 0; |
do { |
if (!f) { |
if (!move_window(sect++)) return FR_RW_ERROR; |
p = fs->win; |
} |
if (!_FAT32 || fat == FS_FAT16) { |
if (LD_WORD(p) == 0) n++; |
p += 2; f += 1; |
} else { |
if (LD_DWORD(p) == 0) n++; |
p += 4; f += 2; |
} |
} while (--clust); |
} |
fs->free_clust = n; |
#if _USE_FSINFO |
if (fat == FS_FAT32) fs->fsi_flag = 1; |
#endif |
*nclust = n; |
return FR_OK; |
} |
/*-----------------------------------------------------------------------*/ |
/* Delete a File or a Directory */ |
/*-----------------------------------------------------------------------*/ |
FRESULT f_unlink ( |
const char *path /* Pointer to the file or directory path */ |
) |
{ |
BYTE *dir, *sdir; |
DWORD dsect; |
char fn[8+3+1]; |
CLUST dclust; |
FRESULT res; |
DIR dirobj; |
FATFS *fs = FatFs; |
res = auto_mount(&path, 1); |
if (res != FR_OK) return res; |
res = trace_path(&dirobj, fn, path, &dir); /* Trace the file path */ |
if (res != FR_OK) return res; /* Trace failed */ |
if (dir == NULL) return FR_INVALID_NAME; /* It is the root directory */ |
if (dir[DIR_Attr] & AM_RDO) return FR_DENIED; /* It is a R/O object */ |
dsect = fs->winsect; |
dclust = |
#if _FAT32 |
((DWORD)LD_WORD(&dir[DIR_FstClusHI]) << 16) | |
#endif |
LD_WORD(&dir[DIR_FstClusLO]); |
if (dir[DIR_Attr] & AM_DIR) { /* It is a sub-directory */ |
dirobj.clust = dclust; /* Check if the sub-dir is empty or not */ |
dirobj.sect = clust2sect(dclust); |
dirobj.index = 2; |
do { |
if (!move_window(dirobj.sect)) return FR_RW_ERROR; |
sdir = &fs->win[(dirobj.index & 15) * 32]; |
if (sdir[DIR_Name] == 0) break; |
if (sdir[DIR_Name] != 0xE5 && !(sdir[DIR_Attr] & AM_VOL)) |
return FR_DENIED; /* The directory is not empty */ |
} while (next_dir_entry(&dirobj)); |
} |
if (!move_window(dsect)) return FR_RW_ERROR; /* Mark the directory entry 'deleted' */ |
dir[DIR_Name] = 0xE5; |
fs->winflag = 1; |
if (!remove_chain(dclust)) return FR_RW_ERROR; /* Remove the cluster chain */ |
return sync(); |
} |
/*-----------------------------------------------------------------------*/ |
/* Create a Directory */ |
/*-----------------------------------------------------------------------*/ |
FRESULT f_mkdir ( |
const char *path /* Pointer to the directory path */ |
) |
{ |
BYTE *dir, *fw, n; |
char fn[8+3+1]; |
DWORD sect, dsect, tim; |
CLUST dclust, pclust; |
FRESULT res; |
DIR dirobj; |
FATFS *fs = FatFs; |
res = auto_mount(&path, 1); |
if (res != FR_OK) return res; |
res = trace_path(&dirobj, fn, path, &dir); /* Trace the file path */ |
if (res == FR_OK) return FR_EXIST; /* Any file or directory is already existing */ |
if (res != FR_NO_FILE) return res; |
res = reserve_direntry(&dirobj, &dir); /* Reserve a directory entry */ |
if (res != FR_OK) return res; |
sect = fs->winsect; |
dclust = create_chain(0); /* Allocate a cluster for new directory table */ |
if (dclust == 1) return FR_RW_ERROR; |
dsect = clust2sect(dclust); |
if (!dsect) return FR_DENIED; |
if (!move_window(dsect)) return FR_RW_ERROR; |
fw = fs->win; |
memset(fw, 0, 512); /* Clear the directory table */ |
for (n = 1; n < fs->sects_clust; n++) { |
if (disk_write(0, fw, ++dsect, 1) != RES_OK) |
return FR_RW_ERROR; |
} |
memset(&fw[DIR_Name], ' ', 8+3); /* Create "." entry */ |
fw[DIR_Name] = '.'; |
fw[DIR_Attr] = AM_DIR; |
tim = get_fattime(); |
ST_DWORD(&fw[DIR_WrtTime], tim); |
memcpy(&fw[32], &fw[0], 32); fw[33] = '.'; /* Create ".." entry */ |
pclust = dirobj.sclust; |
#if _FAT32 |
ST_WORD(&fw[ DIR_FstClusHI], dclust >> 16); |
if (fs->fs_type == FS_FAT32 && pclust == fs->dirbase) pclust = 0; |
ST_WORD(&fw[32+DIR_FstClusHI], pclust >> 16); |
#endif |
ST_WORD(&fw[ DIR_FstClusLO], dclust); |
ST_WORD(&fw[32+DIR_FstClusLO], pclust); |
fs->winflag = 1; |
if (!move_window(sect)) return FR_RW_ERROR; |
memset(&dir[0], 0, 32); /* Clean-up the new entry */ |
memcpy(&dir[DIR_Name], fn, 8+3); /* Name */ |
dir[DIR_NTres] = fn[11]; |
dir[DIR_Attr] = AM_DIR; /* Attribute */ |
ST_DWORD(&dir[DIR_WrtTime], tim); /* Crated time */ |
ST_WORD(&dir[DIR_FstClusLO], dclust); /* Table start cluster */ |
#if _FAT32 |
ST_WORD(&dir[DIR_FstClusHI], dclust >> 16); |
#endif |
return sync(); |
} |
/*-----------------------------------------------------------------------*/ |
/* Change File Attribute */ |
/*-----------------------------------------------------------------------*/ |
FRESULT f_chmod ( |
const char *path, /* Pointer to the file path */ |
BYTE value, /* Attribute bits */ |
BYTE mask /* Attribute mask to change */ |
) |
{ |
FRESULT res; |
BYTE *dir; |
DIR dirobj; |
char fn[8+3+1]; |
res = auto_mount(&path, 1); |
if (res == FR_OK) { |
res = trace_path(&dirobj, fn, path, &dir); /* Trace the file path */ |
if (res == FR_OK) { /* Trace completed */ |
if (dir == NULL) { |
res = FR_INVALID_NAME; |
} else { |
mask &= AM_RDO|AM_HID|AM_SYS|AM_ARC; /* Valid attribute mask */ |
dir[DIR_Attr] = (value & mask) | (dir[DIR_Attr] & (BYTE)~mask); /* Apply attribute change */ |
res = sync(); |
} |
} |
} |
return res; |
} |
/*-----------------------------------------------------------------------*/ |
/* Rename File/Directory */ |
/*-----------------------------------------------------------------------*/ |
FRESULT f_rename ( |
const char *path_old, /* Pointer to the old name */ |
const char *path_new /* Pointer to the new name */ |
) |
{ |
FRESULT res; |
DWORD sect_old; |
BYTE *dir_old, *dir_new, direntry[32-11]; |
DIR dirobj; |
char fn[8+3+1]; |
FATFS *fs = FatFs; |
res = auto_mount(&path_old, 1); |
if (res != FR_OK) return res; |
res = trace_path(&dirobj, fn, path_old, &dir_old); /* Check old object */ |
if (res != FR_OK) return res; /* The old object is not found */ |
if (!dir_old) return FR_NO_FILE; |
sect_old = fs->winsect; /* Save the object information */ |
memcpy(direntry, &dir_old[11], 32-11); |
res = trace_path(&dirobj, fn, path_new, &dir_new); /* Check new object */ |
if (res == FR_OK) return FR_EXIST; /* The new object name is already existing */ |
if (res != FR_NO_FILE) return res; /* Is there no old name? */ |
res = reserve_direntry(&dirobj, &dir_new); /* Reserve a directory entry */ |
if (res != FR_OK) return res; |
memcpy(&dir_new[DIR_Attr], direntry, 32-11); /* Create new entry */ |
memcpy(&dir_new[DIR_Name], fn, 8+3); |
dir_new[DIR_NTres] = fn[11]; |
fs->winflag = 1; |
if (!move_window(sect_old)) return FR_RW_ERROR; /* Remove old entry */ |
dir_old[DIR_Name] = 0xE5; |
return sync(); |
} |
#endif /* !_FS_READONLY */ |
#endif /* _FS_MINIMIZE == 0 */ |
#endif /* _FS_MINIMIZE <= 1 */ |
#endif /* _FS_MINIMIZE <= 2 */ |
/Designs/Data_loggers/DOGFINDER01A/SW/ATMEGA168/tff.h |
---|
0,0 → 1,289 |
/*--------------------------------------------------------------------------/ |
/ Tiny-FatFs - FAT file system module include file R0.04b (C)ChaN, 2007 |
/---------------------------------------------------------------------------/ |
/ FatFs module is an experimenal project to implement FAT file system to |
/ cheap microcontrollers. This is a free software and is opened for education, |
/ research and development under license policy of following trems. |
/ |
/ Copyright (C) 2007, ChaN, all right reserved. |
/ |
/ * The FatFs module is a free software and there is no warranty. |
/ * You can use, modify and/or redistribute it for personal, non-profit or |
/ profit use without any restriction under your responsibility. |
/ * Redistributions of source code must retain the above copyright notice. |
/ |
/---------------------------------------------------------------------------*/ |
#ifndef _FATFS |
#define _MCU_ENDIAN 1 |
/* The _MCU_ENDIAN defines which access method is used to the FAT structure. |
/ 1: Enable word access. |
/ 2: Disable word access and use byte-by-byte access instead. |
/ When the architectural byte order of the MCU is big-endian and/or address |
/ miss-aligned access is prohibited, the _MCU_ENDIAN must be set to 2. |
/ If it is not the case, it can be set to 1 for good code efficiency. */ |
#define _FS_READONLY 0 |
/* Setting _FS_READONLY to 1 defines read only configuration. This removes |
/ writing functions, f_write, f_sync, f_unlink, f_mkdir, f_chmod, f_rename |
/ and useless f_getfree. */ |
#define _FS_MINIMIZE 2 |
/* The _FS_MINIMIZE option defines minimization level to remove some functions. |
/ 0: Full function. |
/ 1: f_stat, f_getfree, f_unlink, f_mkdir, f_chmod and f_rename are removed. |
/ 2: f_opendir and f_readdir are removed in addition to level 1. |
/ 3: f_lseek is removed in addition to level 2. */ |
#define _FAT32 0 |
/* To support FAT32 in addition of FAT12/16, set _FAT32 to 1. */ |
#define _USE_FSINFO 0 |
/* To support FSInfo on FAT32 volume, set _USE_FSINFO to 1. */ |
#define _USE_SJIS 0 |
/* When _USE_SJIS is set to 1, Shift-JIS code transparency is enabled, otherwise |
/ only US-ASCII(7bit) code can be accepted as file/directory name. */ |
#define _USE_NTFLAG 1 |
/* When _USE_NTFLAG is set to 1, upper/lower case of the file name is preserved. */ |
#include "integer.h" |
/* Type definition for cluster number */ |
#if _FAT32 |
typedef DWORD CLUST; |
#else |
typedef WORD CLUST; |
#undef _USE_FSINFO |
#define _USE_FSINFO 0 |
#endif |
/* File system object structure */ |
typedef struct _FATFS { |
WORD id; /* File system mount ID */ |
WORD n_rootdir; /* Number of root directory entries */ |
DWORD winsect; /* Current sector appearing in the win[] */ |
DWORD fatbase; /* FAT start sector */ |
DWORD dirbase; /* Root directory start sector */ |
DWORD database; /* Data start sector */ |
CLUST sects_fat; /* Sectors per fat */ |
CLUST max_clust; /* Maximum cluster# + 1 */ |
#if !_FS_READONLY |
CLUST last_clust; /* Last allocated cluster */ |
CLUST free_clust; /* Number of free clusters */ |
#if _USE_FSINFO |
DWORD fsi_sector; /* fsinfo sector */ |
BYTE fsi_flag; /* fsinfo dirty flag (1:must be written back) */ |
BYTE pad1; |
#endif |
#endif |
BYTE fs_type; /* FAT sub type */ |
BYTE sects_clust; /* Sectors per cluster */ |
BYTE n_fats; /* Number of FAT copies */ |
BYTE winflag; /* win[] dirty flag (1:must be written back) */ |
BYTE win[512]; /* Disk access window for Directory/FAT/File */ |
} FATFS; |
/* Directory object structure */ |
typedef struct _DIR { |
WORD id; /* Owner file system mount ID */ |
WORD index; /* Current index */ |
FATFS* fs; /* Pointer to the owner file system object */ |
CLUST sclust; /* Start cluster */ |
CLUST clust; /* Current cluster */ |
DWORD sect; /* Current sector */ |
} DIR; |
/* File object structure */ |
typedef struct _FIL { |
WORD id; /* Owner file system mount ID */ |
BYTE flag; /* File status flags */ |
BYTE sect_clust; /* Left sectors in cluster */ |
FATFS* fs; /* Pointer to owner file system */ |
DWORD fptr; /* File R/W pointer */ |
DWORD fsize; /* File size */ |
CLUST org_clust; /* File start cluster */ |
CLUST curr_clust; /* Current cluster */ |
DWORD curr_sect; /* Current sector */ |
#if !_FS_READONLY |
DWORD dir_sect; /* Sector containing the directory entry */ |
BYTE* dir_ptr; /* Ponter to the directory entry in the window */ |
#endif |
} FIL; |
/* File status structure */ |
typedef struct _FILINFO { |
DWORD fsize; /* Size */ |
WORD fdate; /* Date */ |
WORD ftime; /* Time */ |
BYTE fattrib; /* Attribute */ |
char fname[8+1+3+1]; /* Name (8.3 format) */ |
} FILINFO; |
/* File function return code (FRESULT) */ |
typedef enum { |
FR_OK = 0, /* 0 */ |
FR_NOT_READY, /* 1 */ |
FR_NO_FILE, /* 2 */ |
FR_NO_PATH, /* 3 */ |
FR_INVALID_NAME, /* 4 */ |
FR_INVALID_DRIVE, /* 5 */ |
FR_DENIED, /* 6 */ |
FR_EXIST, /* 7 */ |
FR_RW_ERROR, /* 8 */ |
FR_WRITE_PROTECTED, /* 9 */ |
FR_NOT_ENABLED, /* 10 */ |
FR_NO_FILESYSTEM, /* 11 */ |
FR_INVALID_OBJECT /* 12 */ |
} FRESULT; |
/*-----------------------------------------------------*/ |
/* FatFs module application interface */ |
FRESULT f_mount (BYTE, FATFS*); /* Mount/Unmount a logical drive */ |
FRESULT f_open (FIL*, const char*, BYTE); /* Open or create a file */ |
FRESULT f_read (FIL*, void*, WORD, WORD*); /* Read data from a file */ |
FRESULT f_write (FIL*, const void*, WORD, WORD*); /* Write data to a file */ |
FRESULT f_lseek (FIL*, DWORD); /* Move file pointer of a file object */ |
FRESULT f_close (FIL*); /* Close an open file object */ |
FRESULT f_opendir (DIR*, const char*); /* Open an existing directory */ |
FRESULT f_readdir (DIR*, FILINFO*); /* Read a directory item */ |
FRESULT f_stat (const char*, FILINFO*); /* Get file status */ |
FRESULT f_getfree (const char*, DWORD*, FATFS**); /* Get number of free clusters on the drive */ |
FRESULT f_sync (FIL*); /* Flush cached data of a writing file */ |
FRESULT f_unlink (const char*); /* Delete an existing file or directory */ |
FRESULT f_mkdir (const char*); /* Create a new directory */ |
FRESULT f_chmod (const char*, BYTE, BYTE); /* Change file/dir attriburte */ |
FRESULT f_rename (const char*, const char*); /* Rename/Move a file or directory */ |
/* User defined function to give a current time to fatfs module */ |
DWORD get_fattime (void); /* 31-25: Year(0-127 +1980), 24-21: Month(1-12), 20-16: Day(1-31) */ |
/* 15-11: Hour(0-23), 10-5: Minute(0-59), 4-0: Second(0-29 *2) */ |
/* File access control and file status flags (FIL.flag) */ |
#define FA_READ 0x01 |
#define FA_OPEN_EXISTING 0x00 |
#if !_FS_READONLY |
#define FA_WRITE 0x02 |
#define FA_CREATE_NEW 0x04 |
#define FA_CREATE_ALWAYS 0x08 |
#define FA_OPEN_ALWAYS 0x10 |
#define FA__WRITTEN 0x20 |
#endif |
#define FA__ERROR 0x80 |
/* FAT sub type (FATFS.fs_type) */ |
#define FS_FAT12 1 |
#define FS_FAT16 2 |
#define FS_FAT32 3 |
/* File attribute bits for directory entry */ |
#define AM_RDO 0x01 /* Read only */ |
#define AM_HID 0x02 /* Hidden */ |
#define AM_SYS 0x04 /* System */ |
#define AM_VOL 0x08 /* Volume label */ |
#define AM_LFN 0x0F /* LFN entry */ |
#define AM_DIR 0x10 /* Directory */ |
#define AM_ARC 0x20 /* Archive */ |
/* Offset of FAT structure members */ |
#define BS_jmpBoot 0 |
#define BS_OEMName 3 |
#define BPB_BytsPerSec 11 |
#define BPB_SecPerClus 13 |
#define BPB_RsvdSecCnt 14 |
#define BPB_NumFATs 16 |
#define BPB_RootEntCnt 17 |
#define BPB_TotSec16 19 |
#define BPB_Media 21 |
#define BPB_FATSz16 22 |
#define BPB_SecPerTrk 24 |
#define BPB_NumHeads 26 |
#define BPB_HiddSec 28 |
#define BPB_TotSec32 32 |
#define BS_55AA 510 |
#define BS_DrvNum 36 |
#define BS_BootSig 38 |
#define BS_VolID 39 |
#define BS_VolLab 43 |
#define BS_FilSysType 54 |
#define BPB_FATSz32 36 |
#define BPB_ExtFlags 40 |
#define BPB_FSVer 42 |
#define BPB_RootClus 44 |
#define BPB_FSInfo 48 |
#define BPB_BkBootSec 50 |
#define BS_DrvNum32 64 |
#define BS_BootSig32 66 |
#define BS_VolID32 67 |
#define BS_VolLab32 71 |
#define BS_FilSysType32 82 |
#define FSI_LeadSig 0 |
#define FSI_StrucSig 484 |
#define FSI_Free_Count 488 |
#define FSI_Nxt_Free 492 |
#define MBR_Table 446 |
#define DIR_Name 0 |
#define DIR_Attr 11 |
#define DIR_NTres 12 |
#define DIR_CrtTime 14 |
#define DIR_CrtDate 16 |
#define DIR_FstClusHI 20 |
#define DIR_WrtTime 22 |
#define DIR_WrtDate 24 |
#define DIR_FstClusLO 26 |
#define DIR_FileSize 28 |
/* Multi-byte word access macros */ |
#if _MCU_ENDIAN == 1 /* Use word access */ |
#define LD_WORD(ptr) (WORD)(*(WORD*)(BYTE*)(ptr)) |
#define LD_DWORD(ptr) (DWORD)(*(DWORD*)(BYTE*)(ptr)) |
#define ST_WORD(ptr,val) *(WORD*)(BYTE*)(ptr)=(WORD)(val) |
#define ST_DWORD(ptr,val) *(DWORD*)(BYTE*)(ptr)=(DWORD)(val) |
#else |
#if _MCU_ENDIAN == 2 /* Use byte-by-byte access */ |
#define LD_WORD(ptr) (WORD)(((WORD)*(BYTE*)((ptr)+1)<<8)|(WORD)*(BYTE*)(ptr)) |
#define LD_DWORD(ptr) (DWORD)(((DWORD)*(BYTE*)((ptr)+3)<<24)|((DWORD)*(BYTE*)((ptr)+2)<<16)|((WORD)*(BYTE*)((ptr)+1)<<8)|*(BYTE*)(ptr)) |
#define ST_WORD(ptr,val) *(BYTE*)(ptr)=(BYTE)(val); *(BYTE*)((ptr)+1)=(BYTE)((WORD)(val)>>8) |
#define ST_DWORD(ptr,val) *(BYTE*)(ptr)=(BYTE)(val); *(BYTE*)((ptr)+1)=(BYTE)((WORD)(val)>>8); *(BYTE*)((ptr)+2)=(BYTE)((DWORD)(val)>>16); *(BYTE*)((ptr)+3)=(BYTE)((DWORD)(val)>>24) |
#else |
#error Do not forget to set _MCU_ENDIAN properly! |
#endif |
#endif |
#define _FATFS |
#endif /* _FATFS */ |
/Designs/Data_loggers/DOGFINDER01A/SW/ATMEGA168/tt.ini |
---|
0,0 → 1,0 |
bps=115200 |
/Designs/Data_loggers/DOGFINDER02A/PrjInfo.txt |
---|
0,0 → 1,17 |
// |
// Toto je popisný soubor pro popis obsahu adresáře (příklad) |
// |
[InfoShortDescription.en] |
Dog finder - Beacon tracker |
[InfoShortDescription.cs] |
Psí vyhledávač - majákový vysílač |
[InfoLongDescription.en] |
The coordinate of GPS receiver is transmitted by the RFM01S module to receiver station. |
[InfoLongDescription.cs] |
Zařízení vysílá pozici GPS přijímače na psím obojku. |
[End] |
/Designs/Data_loggers/DOGFINDER02A/PrjInfo.txt~ |
---|
0,0 → 1,18 |
// |
// Toto je popisný soubor pro popis obsahu adresáře (příklad) |
// |
[InfoShortDescription.en] |
Dog finder - Track Logger |
[InfoShortDescription.cs] |
Psí vyhledávač - záznamník trasy |
[InfoLongDescription.en] |
The track is logged in NMEA format on SD/MMC card. |
[InfoLongDescription.cs] |
Umožňuje zaznamanat trasu opakovaně utíkajícího psa. A tím nalézt zdroj problémů, například díru v plotě :) |
Trasa je zaznamenávána na SD/MMC kartu ve formátu NMEA. |
[End] |
/Designs/Data_loggers/DOGFINDER02A/SW/DOGFINDER_TX.c |
---|
0,0 → 1,192 |
/* mija 2008 |
demo for RFM02 - TX 868MHz |
CPU ATMEGA16 |
fcpu = 1MHz |
!! define PIN,PORT,DDR for IOpin !! |
tested with module RFM12B RX 9600 BW 134kHz |
*/ |
#define F_CPU 1000000UL |
#include <avr/io.h> |
#include <util/delay.h> |
#include "RFM02.h" |
//************************************************************************ |
#define SDI PB3 |
#define SDI_PORT PORTB |
#define SDI_DDR DDRB |
#define FSK PC1 |
#define FSK_PORT PORTC |
#define FSK_DDR DDRC |
+#define SCK PB5 |
+ #define SCK_PORT PORTB |
+ #define SCK_DDR DDRB |
+ |
+#define nIRQ PD2 // input for mega |
+ #define nIRQ_PORT PORTD |
+ #define nIRQ_DDR DDRD |
+ #define nIRQ_PIN PIND |
+ |
+#define nSEL PB2 |
+ #define nSEL_PORT PORTB |
+ #define nSEL_DDR DDRB |
+ |
+#define LED PC3 |
+ #define LED_PORT PORTC |
+ #define LED_DDR DDRC |
+ |
+// interni |
+#define SDI_H SDI_PORT |= _BV(SDI) |
+#define SDI_L SDI_PORT &= (~(_BV(SDI))) |
+#define SDI_INIT SDI_DDR |= _BV(SDI) |
+ |
+#define FSK_H FSK_PORT |= _BV(FSK) |
+#define FSK_L FSK_PORT &= (~(_BV(FSK))) |
+#define FSK_INIT FSK_DDR |= _BV(FSK) |
+ |
+#define SDO_INPUT (SDO_PIN & _BV(SDO)) |
+#define SDO_INIT SDO_DDR &= (~(_BV(SDO))) |
+ |
+#define SCK_H SCK_PORT |= _BV(SCK) |
+#define SCK_L SCK_PORT &= (~(_BV(SCK))) |
+#define SCK_INIT SCK_DDR |= _BV(SCK) |
+ |
+#define nIRQ_INPUT (nIRQ_PIN & _BV(nIRQ)) |
+#define nIRQ_INIT nIRQ_DDR &= (~(_BV(nIRQ))) |
+ |
+#define nSEL_H nSEL_PORT |= _BV(nSEL) |
+#define nSEL_L nSEL_PORT &= (~(_BV(nSEL))) |
+#define nSEL_INIT nSEL_DDR |= _BV(nSEL) |
+ |
+#define LED_H LED_PORT |= _BV(LED) |
+#define LED_L LED_PORT &= (~(_BV(LED))) |
+#define LED_INIT LED_DDR |= _BV(LED) |
+ |
+#define START_TX RF_WRITE_CMD(CMD_POWER|POWER_EX|POWER_ES|POWER_EA|POWER_DC) |
+#define STOP_TX RF_WRITE_CMD(CMD_POWER|POWER_DC) |
+ |
+//************************************************************************ |
+ |
+//uint8_t test[16]={0x30,0x31,0x32,0x33,0x34,0x35,0x36,0x37,0x38,0x39,0x3a,0x03b,0x3c,0x3d,0x3e,0x3f}; |
+uint8_t test[17]="\n\rATmega16\n\r ---"; |
+//uint8_t test[16]="0123456789abcdef"; |
+ |
+ |
+//************************************************************************ |
+ |
+void delay_ms(uint16_t time) |
+{ |
+ while(time--) _delay_ms(1); |
+} |
+ |
+void IO_INIT(void) |
+{ |
+ SDI_INIT; |
+ SCK_INIT; |
+ nIRQ_INIT; |
+ nSEL_INIT; |
+ FSK_INIT; |
+ LED_INIT; |
+} |
+ |
+void RF_INIT(void) |
+{ |
+ nSEL_H; |
+ SDI_H; |
+ SCK_L; |
+ nIRQ_INPUT; |
+ FSK_H; |
+} |
+ |
+void RF_WRITE_CMD(uint16_t cmd) |
+{ |
+ uint8_t i; |
+ |
+ SCK_L; |
+ nSEL_L; |
+ for (i=0;i<16;i++) |
+ { |
+ SCK_L; |
+ SCK_L; |
+ if (cmd & 0x8000) SDI_H; |
+ else SDI_L; |
+ SCK_H; |
+ SCK_H; |
+ cmd <<= 1; |
+ } |
+ SCK_L; |
+ nSEL_H; |
+} |
+ |
+void RF_WRITE_DATA(uint8_t data) |
+{ |
+ uint8_t i; |
+ |
+ for (i=0;i<8;i++) |
+ { |
+ while (nIRQ_INPUT); |
+ while (!nIRQ_INPUT); |
+ if (data & 0x80)FSK_H; |
+ else FSK_L; |
+ data <<= 1; |
+ } |
+} |
+ |
+int main() |
+{ |
+ uint8_t i,j,ChkSum; |
+ |
+ IO_INIT(); |
+ RF_INIT(); |
+ LED_H; |
+ delay_ms(100); |
+ |
+ RF_WRITE_CMD(CMD_STATUS); |
+ RF_WRITE_CMD(CMD_SETTING |BAND_868 |C_12pF |TX_DEV_90); |
+ RF_WRITE_CMD(CMD_FREQUENCY |FREQUENCY_868); |
+ RF_WRITE_CMD(0xD040); |
+ RF_WRITE_CMD(CMD_RATE |RATE_4800); |
+ RF_WRITE_CMD(CMD_BATTERY |TX_EBS); |
+ RF_WRITE_CMD(CMD_POWER |POWER_DC); |
+ RF_WRITE_CMD(POWER_OUT_0); |
+ |
+ j= 0; |
+ while (1) |
+ { |
+ LED_H; |
+ |
+ START_TX; |
+ ChkSum = 0; |
+ for (i=0;i<3;i++) RF_WRITE_DATA(0xAA); |
+ RF_WRITE_DATA(0x2D); |
+ RF_WRITE_DATA(0xD4); |
+ |
+ for (i=0;i<16;i++) |
+ { |
+ RF_WRITE_DATA(test[i]); |
+ ChkSum += test[i]; |
+ } |
+ RF_WRITE_DATA(ChkSum); |
+ RF_WRITE_DATA(0xAA); |
+ RF_WRITE_DATA(0xAA); |
+ STOP_TX; |
+ |
+ LED_L; |
+ delay_ms(500); |
+ j++; |
+ test[13]=(j/100)+0x30; |
+ test[14]=((j%100)/10)+0x30; |
+ test[15]=((j%100)%10)+0x30; |
+ } |
+ return 0; |
+} |
+ |
+ |
+ |
/Designs/Data_loggers/DOGFINDER02A/SW/DOGFINDER_TX.c~ |
---|
0,0 → 1,192 |
/* mija 2008 |
demo for RFM02 - TX 868MHz |
CPU ATMEGA16 |
fcpu = 1MHz |
!! define PIN,PORT,DDR for IOpin !! |
tested with module RFM12B RX 9600 BW 134kHz |
*/ |
#define F_CPU 1000000UL |
#include <avr/io.h> |
#include <util/delay.h> |
#include "RFM02.h" |
//************************************************************************ |
#define SDI PB3 |
#define SDI_PORT PORTB |
#define SDI_DDR DDRB |
#define FSK PC1 |
#define FSK_PORT PORTC |
#define FSK_DDR DDRC |
+#define SCK PB5 |
+ #define SCK_PORT PORTB |
+ #define SCK_DDR DDRB |
+ |
+#define nIRQ PD2 // input for mega |
+ #define nIRQ_PORT PORTD |
+ #define nIRQ_DDR DDRD |
+ #define nIRQ_PIN PIND |
+ |
+#define nSEL PB2 |
+ #define nSEL_PORT PORTB |
+ #define nSEL_DDR DDRB |
+ |
+#define LED PC3 |
+ #define LED_PORT PORTC |
+ #define LED_DDR DDRC |
+ |
+// interni |
+#define SDI_H SDI_PORT |= _BV(SDI) |
+#define SDI_L SDI_PORT &= (~(_BV(SDI))) |
+#define SDI_INIT SDI_DDR |= _BV(SDI) |
+ |
+#define FSK_H FSK_PORT |= _BV(FSK) |
+#define FSK_L FSK_PORT &= (~(_BV(FSK))) |
+#define FSK_INIT FSK_DDR |= _BV(FSK) |
+ |
+#define SDO_INPUT (SDO_PIN & _BV(SDO)) |
+#define SDO_INIT SDO_DDR &= (~(_BV(SDO))) |
+ |
+#define SCK_H SCK_PORT |= _BV(SCK) |
+#define SCK_L SCK_PORT &= (~(_BV(SCK))) |
+#define SCK_INIT SCK_DDR |= _BV(SCK) |
+ |
+#define nIRQ_INPUT (nIRQ_PIN & _BV(nIRQ)) |
+#define nIRQ_INIT nIRQ_DDR &= (~(_BV(nIRQ))) |
+ |
+#define nSEL_H nSEL_PORT |= _BV(nSEL) |
+#define nSEL_L nSEL_PORT &= (~(_BV(nSEL))) |
+#define nSEL_INIT nSEL_DDR |= _BV(nSEL) |
+ |
+#define LED_H LED_PORT |= _BV(LED) |
+#define LED_L LED_PORT &= (~(_BV(LED))) |
+#define LED_INIT LED_DDR |= _BV(LED) |
+ |
+#define START_TX RF_WRITE_CMD(CMD_POWER|POWER_EX|POWER_ES|POWER_EA|POWER_DC) |
+#define STOP_TX RF_WRITE_CMD(CMD_POWER|POWER_DC) |
+ |
+//************************************************************************ |
+ |
+//uint8_t test[16]={0x30,0x31,0x32,0x33,0x34,0x35,0x36,0x37,0x38,0x39,0x3a,0x03b,0x3c,0x3d,0x3e,0x3f}; |
+uint8_t test[17]="\n\rATmega16\n\r ---"; |
+//uint8_t test[16]="0123456789abcdef"; |
+ |
+ |
+//************************************************************************ |
+ |
+void delay_ms(uint16_t time) |
+{ |
+ while(time--) _delay_ms(1); |
+} |
+ |
+void IO_INIT(void) |
+{ |
+ SDI_INIT; |
+ SCK_INIT; |
+ nIRQ_INIT; |
+ nSEL_INIT; |
+ FSK_INIT; |
+ LED_INIT; |
+} |
+ |
+void RF_INIT(void) |
+{ |
+ nSEL_H; |
+ SDI_H; |
+ SCK_L; |
+ nIRQ_INPUT; |
+ FSK_H; |
+} |
+ |
+void RF_WRITE_CMD(uint16_t cmd) |
+{ |
+ uint8_t i; |
+ |
+ SCK_L; |
+ nSEL_L; |
+ for (i=0;i<16;i++) |
+ { |
+ SCK_L; |
+ SCK_L; |
+ if (cmd & 0x8000) SDI_H; |
+ else SDI_L; |
+ SCK_H; |
+ SCK_H; |
+ cmd <<= 1; |
+ } |
+ SCK_L; |
+ nSEL_H; |
+} |
+ |
+void RF_WRITE_DATA(uint8_t data) |
+{ |
+ uint8_t i; |
+ |
+ for (i=0;i<8;i++) |
+ { |
+ while (nIRQ_INPUT); |
+ while (!nIRQ_INPUT); |
+ if (data & 0x80)FSK_H; |
+ else FSK_L; |
+ data <<= 1; |
+ } |
+} |
+ |
+int main() |
+{ |
+ uint8_t i,j,ChkSum; |
+ |
+ IO_INIT(); |
+ RF_INIT(); |
+ LED_H; |
+ delay_ms(100); |
+ |
+ RF_WRITE_CMD(CMD_STATUS); |
+ RF_WRITE_CMD(CMD_SETTING |BAND_868 |C_12pF |TX_DEV_90); |
+ RF_WRITE_CMD(CMD_FREQUENCY |FREQUENCY_868); |
+ RF_WRITE_CMD(0xD040); |
+ RF_WRITE_CMD(CMD_RATE |RATE_9600); |
+ RF_WRITE_CMD(CMD_BATTERY |TX_EBS); |
+ RF_WRITE_CMD(CMD_POWER |POWER_DC); |
+ RF_WRITE_CMD(POWER_OUT_0); |
+ |
+ j= 0; |
+ while (1) |
+ { |
+ LED_H; |
+ |
+ START_TX; |
+ ChkSum = 0; |
+ for (i=0;i<3;i++) RF_WRITE_DATA(0xAA); |
+ RF_WRITE_DATA(0x2D); |
+ RF_WRITE_DATA(0xD4); |
+ |
+ for (i=0;i<16;i++) |
+ { |
+ RF_WRITE_DATA(test[i]); |
+ ChkSum += test[i]; |
+ } |
+ RF_WRITE_DATA(ChkSum); |
+ RF_WRITE_DATA(0xAA); |
+ RF_WRITE_DATA(0xAA); |
+ STOP_TX; |
+ |
+ LED_L; |
+ delay_ms(500); |
+ j++; |
+ test[13]=(j/100)+0x30; |
+ test[14]=((j%100)/10)+0x30; |
+ test[15]=((j%100)%10)+0x30; |
+ } |
+ return 0; |
+} |
+ |
+ |
+ |
/Designs/Data_loggers/DOGFINDER02A/SW/DOGFINDER_TX.hex |
---|
0,0 → 1,35 |
:1000000012C02CC02BC02AC029C028C027C026C0BF |
:1000100025C024C023C022C021C020C01FC01EC0D4 |
:100020001DC01CC01BC011241FBECFE5D4E0DEBF25 |
:10003000CDBF10E0A0E6B0E0E2EFF1E002C0059035 |
:100040000D92A237B107D9F710E0A2E7B0E001C0E6 |
:100050001D92A237B107E1F73ED0C9C0D1CF2AEF38 |
:1000600030E004C0F9013197F1F701970097D1F71B |
:100070000895BB9ABD9A8A98BA9AA19AA39A0895AC |
:10008000C29AC39AC59880B3A99A0895C598C29890 |
:1000900020E0C598C59897FF02C0C39A01C0C398D5 |
:1000A000C59AC59A2F5F203119F0880F991FF1CF9B |
:1000B000C598C29A089590E08299FECF829BFECFA8 |
:1000C00087FF02C0A99A01C0A9989F5F983011F0DC |
:1000D000880FF2CF0895EF92FF920F931F93CF9363 |
:1000E000DF93BB9ABD9A8A98BA9AA19AA39AC29AA8 |
:1000F000C39AC59880B3A99AAB9A24E630E04AEF38 |
:1001000050E003C0CA010197F1F7215030408FEF52 |
:100110002F3F3807B9F780E09CECB8DF82E790E921 |
:10012000B5DF80E496EAB2DF80E490EDAFDF87E4EC |
:1001300098ECACDF80E292ECA9DF81E090ECA6DFE6 |
:1001400080E090EBA3DF00E04AEFE42EF12CAB9AC5 |
:1001500089E390EC9BDF8AEAAEDF8AEAACDF8AEAC9 |
:10016000AADF8DE2A8DF84EDA6DFC0E6D0E010E0D4 |
:100170008881A1DF8991180F20E0C037D207C1F72D |
:10018000812F99DF8AEA97DF8AEA95DF81E090EC98 |
:100190007DDFAB9884EF91E003C0F7013197F1F771 |
:1001A00001972FEF8F3F9207C1F70F5F802F64E613 |
:1001B00012D0805D80936D00802F0DD0292F892F64 |
:1001C0006AE009D0805D80936E00822F04D0905D3C |
:1001D00090936F00BCCF991B79E004C0991F9617CC |
:1001E00008F0961B881F7A95C9F780950895F894B2 |
:0201F000FFCF3F |
:1001F2000A0D41546D65676131360A0D202D2D2D92 |
:020202000000FA |
:00000001FF |
/Designs/Data_loggers/DOGFINDER02A/SW/DOGFINDER_TX.map |
---|
0,0 → 1,363 |
Archive member included because of file (symbol) |
/usr/lib/gcc/avr/4.3.0/avr4/libgcc.a(_udivmodqi4.o) |
DOGFINDER_TX.o (__udivmodqi4) |
/usr/lib/gcc/avr/4.3.0/avr4/libgcc.a(_exit.o) |
/usr/lib/gcc/avr/4.3.0/../../../../avr/lib/avr4/crtm8.o (exit) |
/usr/lib/gcc/avr/4.3.0/avr4/libgcc.a(_copy_data.o) |
DOGFINDER_TX.o (__do_copy_data) |
/usr/lib/gcc/avr/4.3.0/avr4/libgcc.a(_clear_bss.o) |
DOGFINDER_TX.o (__do_clear_bss) |
Memory Configuration |
Name Origin Length Attributes |
text 0x00000000 0x00002000 xr |
data 0x00800060 0x0000ffa0 rw !x |
eeprom 0x00810000 0x00010000 rw !x |
fuse 0x00820000 0x00000400 rw !x |
lock 0x00830000 0x00000400 rw !x |
signature 0x00840000 0x00000400 rw !x |
*default* 0x00000000 0xffffffff |
Linker script and memory map |
LOAD /usr/lib/gcc/avr/4.3.0/../../../../avr/lib/avr4/crtm8.o |
LOAD DOGFINDER_TX.o |
LOAD /usr/lib/gcc/avr/4.3.0/avr4/libgcc.a |
LOAD /usr/lib/gcc/avr/4.3.0/../../../../avr/lib/avr4/libc.a |
LOAD /usr/lib/gcc/avr/4.3.0/avr4/libgcc.a |
.hash |
*(.hash) |
.dynsym |
*(.dynsym) |
.dynstr |
*(.dynstr) |
.gnu.version |
*(.gnu.version) |
.gnu.version_d |
*(.gnu.version_d) |
.gnu.version_r |
*(.gnu.version_r) |
.rel.init |
*(.rel.init) |
.rela.init |
*(.rela.init) |
.rel.text |
*(.rel.text) |
*(.rel.text.*) |
*(.rel.gnu.linkonce.t*) |
.rela.text |
*(.rela.text) |
*(.rela.text.*) |
*(.rela.gnu.linkonce.t*) |
.rel.fini |
*(.rel.fini) |
.rela.fini |
*(.rela.fini) |
.rel.rodata |
*(.rel.rodata) |
*(.rel.rodata.*) |
*(.rel.gnu.linkonce.r*) |
.rela.rodata |
*(.rela.rodata) |
*(.rela.rodata.*) |
*(.rela.gnu.linkonce.r*) |
.rel.data |
*(.rel.data) |
*(.rel.data.*) |
*(.rel.gnu.linkonce.d*) |
.rela.data |
*(.rela.data) |
*(.rela.data.*) |
*(.rela.gnu.linkonce.d*) |
.rel.ctors |
*(.rel.ctors) |
.rela.ctors |
*(.rela.ctors) |
.rel.dtors |
*(.rel.dtors) |
.rela.dtors |
*(.rela.dtors) |
.rel.got |
*(.rel.got) |
.rela.got |
*(.rela.got) |
.rel.bss |
*(.rel.bss) |
.rela.bss |
*(.rela.bss) |
.rel.plt |
*(.rel.plt) |
.rela.plt |
*(.rela.plt) |
.text 0x00000000 0x1f2 |
*(.vectors) |
.vectors 0x00000000 0x26 /usr/lib/gcc/avr/4.3.0/../../../../avr/lib/avr4/crtm8.o |
0x00000000 __vectors |
0x00000000 __vector_default |
*(.vectors) |
*(.progmem.gcc*) |
*(.progmem*) |
0x00000026 . = ALIGN (0x2) |
0x00000026 __trampolines_start = . |
*(.trampolines) |
.trampolines 0x00000026 0x0 linker stubs |
*(.trampolines*) |
0x00000026 __trampolines_end = . |
*(.jumptables) |
*(.jumptables*) |
*(.lowtext) |
*(.lowtext*) |
0x00000026 __ctors_start = . |
*(.ctors) |
0x00000026 __ctors_end = . |
0x00000026 __dtors_start = . |
*(.dtors) |
0x00000026 __dtors_end = . |
SORT(*)(.ctors) |
SORT(*)(.dtors) |
*(.init0) |
.init0 0x00000026 0x0 /usr/lib/gcc/avr/4.3.0/../../../../avr/lib/avr4/crtm8.o |
0x00000026 __init |
*(.init0) |
*(.init1) |
*(.init1) |
*(.init2) |
.init2 0x00000026 0xc /usr/lib/gcc/avr/4.3.0/../../../../avr/lib/avr4/crtm8.o |
*(.init2) |
*(.init3) |
*(.init3) |
*(.init4) |
.init4 0x00000032 0x16 /usr/lib/gcc/avr/4.3.0/avr4/libgcc.a(_copy_data.o) |
0x00000032 __do_copy_data |
.init4 0x00000048 0x10 /usr/lib/gcc/avr/4.3.0/avr4/libgcc.a(_clear_bss.o) |
0x00000048 __do_clear_bss |
*(.init4) |
*(.init5) |
*(.init5) |
*(.init6) |
*(.init6) |
*(.init7) |
*(.init7) |
*(.init8) |
*(.init8) |
*(.init9) |
.init9 0x00000058 0x4 /usr/lib/gcc/avr/4.3.0/../../../../avr/lib/avr4/crtm8.o |
*(.init9) |
*(.text) |
.text 0x0000005c 0x2 /usr/lib/gcc/avr/4.3.0/../../../../avr/lib/avr4/crtm8.o |
0x0000005c __vector_1 |
0x0000005c __vector_12 |
0x0000005c __bad_interrupt |
0x0000005c __vector_6 |
0x0000005c __vector_3 |
0x0000005c __vector_11 |
0x0000005c __vector_13 |
0x0000005c __vector_17 |
0x0000005c __vector_7 |
0x0000005c __vector_5 |
0x0000005c __vector_4 |
0x0000005c __vector_9 |
0x0000005c __vector_2 |
0x0000005c __vector_15 |
0x0000005c __vector_8 |
0x0000005c __vector_14 |
0x0000005c __vector_10 |
0x0000005c __vector_16 |
0x0000005c __vector_18 |
.text 0x0000005e 0x178 DOGFINDER_TX.o |
0x0000008c RF_WRITE_CMD |
0x000000d6 main |
0x0000005e delay_ms |
0x00000080 RF_INIT |
0x00000072 IO_INIT |
0x000000b6 RF_WRITE_DATA |
.text 0x000001d6 0x0 /usr/lib/gcc/avr/4.3.0/avr4/libgcc.a(_udivmodqi4.o) |
.text 0x000001d6 0x0 /usr/lib/gcc/avr/4.3.0/avr4/libgcc.a(_exit.o) |
.text 0x000001d6 0x0 /usr/lib/gcc/avr/4.3.0/avr4/libgcc.a(_copy_data.o) |
.text 0x000001d6 0x0 /usr/lib/gcc/avr/4.3.0/avr4/libgcc.a(_clear_bss.o) |
0x000001d6 . = ALIGN (0x2) |
*(.text.*) |
.text.libgcc 0x000001d6 0x18 /usr/lib/gcc/avr/4.3.0/avr4/libgcc.a(_udivmodqi4.o) |
0x000001d6 __udivmodqi4 |
.text.libgcc 0x000001ee 0x0 /usr/lib/gcc/avr/4.3.0/avr4/libgcc.a(_exit.o) |
.text.libgcc 0x000001ee 0x0 /usr/lib/gcc/avr/4.3.0/avr4/libgcc.a(_copy_data.o) |
.text.libgcc 0x000001ee 0x0 /usr/lib/gcc/avr/4.3.0/avr4/libgcc.a(_clear_bss.o) |
0x000001ee . = ALIGN (0x2) |
*(.fini9) |
.fini9 0x000001ee 0x0 /usr/lib/gcc/avr/4.3.0/avr4/libgcc.a(_exit.o) |
0x000001ee exit |
0x000001ee _exit |
*(.fini9) |
*(.fini8) |
*(.fini8) |
*(.fini7) |
*(.fini7) |
*(.fini6) |
*(.fini6) |
*(.fini5) |
*(.fini5) |
*(.fini4) |
*(.fini4) |
*(.fini3) |
*(.fini3) |
*(.fini2) |
*(.fini2) |
*(.fini1) |
*(.fini1) |
*(.fini0) |
.fini0 0x000001ee 0x4 /usr/lib/gcc/avr/4.3.0/avr4/libgcc.a(_exit.o) |
*(.fini0) |
0x000001f2 _etext = . |
.data 0x00800060 0x12 load address 0x000001f2 |
0x00800060 PROVIDE (__data_start, .) |
*(.data) |
.data 0x00800060 0x0 /usr/lib/gcc/avr/4.3.0/../../../../avr/lib/avr4/crtm8.o |
.data 0x00800060 0x11 DOGFINDER_TX.o |
0x00800060 test |
.data 0x00800071 0x0 /usr/lib/gcc/avr/4.3.0/avr4/libgcc.a(_udivmodqi4.o) |
.data 0x00800071 0x0 /usr/lib/gcc/avr/4.3.0/avr4/libgcc.a(_exit.o) |
.data 0x00800071 0x0 /usr/lib/gcc/avr/4.3.0/avr4/libgcc.a(_copy_data.o) |
.data 0x00800071 0x0 /usr/lib/gcc/avr/4.3.0/avr4/libgcc.a(_clear_bss.o) |
*(.data*) |
*(.rodata) |
*(.rodata*) |
*(.gnu.linkonce.d*) |
0x00800072 . = ALIGN (0x2) |
*fill* 0x00800071 0x1 00 |
0x00800072 _edata = . |
0x00800072 PROVIDE (__data_end, .) |
.bss 0x00800072 0x0 load address 0x00000204 |
0x00800072 PROVIDE (__bss_start, .) |
*(.bss) |
.bss 0x00800072 0x0 /usr/lib/gcc/avr/4.3.0/../../../../avr/lib/avr4/crtm8.o |
.bss 0x00800072 0x0 DOGFINDER_TX.o |
.bss 0x00800072 0x0 /usr/lib/gcc/avr/4.3.0/avr4/libgcc.a(_udivmodqi4.o) |
.bss 0x00800072 0x0 /usr/lib/gcc/avr/4.3.0/avr4/libgcc.a(_exit.o) |
.bss 0x00800072 0x0 /usr/lib/gcc/avr/4.3.0/avr4/libgcc.a(_copy_data.o) |
.bss 0x00800072 0x0 /usr/lib/gcc/avr/4.3.0/avr4/libgcc.a(_clear_bss.o) |
*(.bss*) |
*(COMMON) |
0x00800072 PROVIDE (__bss_end, .) |
0x000001f2 __data_load_start = LOADADDR (.data) |
0x00000204 __data_load_end = (__data_load_start + SIZEOF (.data)) |
.noinit 0x00800072 0x0 |
0x00800072 PROVIDE (__noinit_start, .) |
*(.noinit*) |
0x00800072 PROVIDE (__noinit_end, .) |
0x00800072 _end = . |
0x00800072 PROVIDE (__heap_start, .) |
.eeprom 0x00810000 0x0 |
*(.eeprom*) |
0x00810000 __eeprom_end = . |
.fuse |
*(.fuse) |
*(.lfuse) |
*(.hfuse) |
*(.efuse) |
.lock |
*(.lock*) |
.signature |
*(.signature*) |
.stab 0x00000000 0x1008 |
*(.stab) |
.stab 0x00000000 0x6b4 /usr/lib/gcc/avr/4.3.0/../../../../avr/lib/avr4/crtm8.o |
.stab 0x000006b4 0x954 DOGFINDER_TX.o |
0x960 (size before relaxing) |
.stabstr 0x00000000 0x88f |
*(.stabstr) |
.stabstr 0x00000000 0x88f /usr/lib/gcc/avr/4.3.0/../../../../avr/lib/avr4/crtm8.o |
.stab.excl |
*(.stab.excl) |
.stab.exclstr |
*(.stab.exclstr) |
.stab.index |
*(.stab.index) |
.stab.indexstr |
*(.stab.indexstr) |
.comment |
*(.comment) |
.debug |
*(.debug) |
.line |
*(.line) |
.debug_srcinfo |
*(.debug_srcinfo) |
.debug_sfnames |
*(.debug_sfnames) |
.debug_aranges |
*(.debug_aranges) |
.debug_pubnames |
*(.debug_pubnames) |
.debug_info |
*(.debug_info) |
*(.gnu.linkonce.wi.*) |
.debug_abbrev |
*(.debug_abbrev) |
.debug_line |
*(.debug_line) |
.debug_frame |
*(.debug_frame) |
.debug_str |
*(.debug_str) |
.debug_loc |
*(.debug_loc) |
.debug_macinfo |
*(.debug_macinfo) |
OUTPUT(DOGFINDER_TX.out elf32-avr) |
LOAD linker stubs |
/Designs/Data_loggers/DOGFINDER02A/SW/DOGFINDER_TX.o |
---|
Cannot display: file marked as a binary type. |
svn:mime-type = application/octet-stream |
Property changes: |
Added: svn:mime-type |
+application/octet-stream |
\ No newline at end of property |
/Designs/Data_loggers/DOGFINDER02A/SW/DOGFINDER_TX.out |
---|
Cannot display: file marked as a binary type. |
svn:mime-type = application/octet-stream |
Property changes: |
Added: svn:executable |
+* |
\ No newline at end of property |
Added: svn:mime-type |
+application/octet-stream |
\ No newline at end of property |
/Designs/Data_loggers/DOGFINDER02A/SW/Makefile |
---|
0,0 → 1,25 |
# makefile, written by kaklik |
MCU=atmega8 |
CC=avr-gcc |
OBJCOPY=avr-objcopy |
# optimize for size: |
CFLAGS=-g -mmcu=$(MCU) -Wall -Wstrict-prototypes -Os -mcall-prologues |
#------------------- |
all: DOGFINDER_TX.hex |
#------------------- |
help: |
@echo "Usage: make all|load|load_pre|rdfuses|wrfuse1mhz|wrfuse4mhz|wrfusecrystal" |
@echo "Warning: you will not be able to undo wrfusecrystal unless you connect an" |
@echo " external crystal! uC is dead after wrfusecrystal if you do not" |
@echo " have an external crystal." |
#------------------- |
DOGFINDER_TX.hex : DOGFINDER_TX.out |
$(OBJCOPY) -R .eeprom -O ihex DOGFINDER_TX.out DOGFINDER_TX.hex |
DOGFINDER_TX.out : DOGFINDER_TX.o |
$(CC) $(CFLAGS) -o DOGFINDER_TX.out -Wl,-Map,DOGFINDER_TX.map DOGFINDER_TX.o |
DOGFINDER_TX.o : DOGFINDER_TX.c |
$(CC) $(CFLAGS) -Os -c DOGFINDER_TX.c |
#------------------- |
clean: |
rm -f *.o *.map *.out *.hex |
#------------------- |
/Designs/Data_loggers/DOGFINDER02A/SW/Makefile~ |
---|
0,0 → 1,25 |
# makefile, written by kaklik |
MCU=atmega8 |
CC=avr-gcc |
OBJCOPY=avr-objcopy |
# optimize for size: |
CFLAGS=-g -mmcu=$(MCU) -Wall -Wstrict-prototypes -Os -mcall-prologues |
#------------------- |
all: DOGFINDER_TX.hex |
#------------------- |
help: |
@echo "Usage: make all|load|load_pre|rdfuses|wrfuse1mhz|wrfuse4mhz|wrfusecrystal" |
@echo "Warning: you will not be able to undo wrfusecrystal unless you connect an" |
@echo " external crystal! uC is dead after wrfusecrystal if you do not" |
@echo " have an external crystal." |
#------------------- |
DOGFINDER_TX.hex : DOGFINDER_TX.out |
$(OBJCOPY) -R .eeprom -O ihex DOGFINDER_TX.out DOGFINDER_TX.hex |
DOGFINDER_TX.out : DOGFINDER_TX.o |
$(CC) $(CFLAGS) -o DOGFINDER_TX.out -Wl,-Map,DOGFINDER_TX.map DOGFINDER_TX.o |
DOGFINDER_TX.o : DOGFINDER_TX.c |
$(CC) $(CFLAGS) -Os -c DOGFINDER_TX.c |
#------------------- |
clean: |
rm -f *.o *.map *.out *t.hex |
#------------------- |
/Designs/Data_loggers/DOGFINDER02A/SW/RFM02.h |
---|
0,0 → 1,82 |
/* mija 2008 |
defines for module RFM02 - TX 868MHz |
*/ |
#define CMD_SETTING 0x8000 // b1, b0, d2..d0, x3..x0, ms, m2..m0 |
#define CMD_POWER 0xC000 // a1, a0, ex, es, ea, eb, et, dc |
#define CMD_POWER_OUT 0xB000 // p2..p0 -3*Pmax dBm |
#define CMD_FREQUENCY 0xA000 // f11..f0 860+F*0.005 MHz 36..3903 |
#define CMD_RATE 0xC800 // r7..r0 BR=10M/29/(R+1) |
#define CMD_WAKE_UP 0xE000 // r4..r0, m7..m0 T=M*2^R [ms] |
#define CMD_SLEEP 0xC400 // s7..s0 S stop CLK |
#define CMD_BATTERY 0xC200 // dwc, ebs , t4..t0 |
#define CMD_STATUS 0xCC00 // for read status |
// CMD_SETTING |
#define BAND_315 0x0000 |
#define BAND_433 0x800 |
#define BAND_868 0x1000 |
#define BADN_915 0x1800 |
#define C_8_5pF 0x00 |
#define C_9pF 0x10 |
#define C_9_5pF 0x20 |
#define C_10pF 0x30 |
#define C_10_5pF 0x40 |
#define C_11pF 0x50 |
#define C_11_5pF 0x60 |
#define C_12pF 0x70 |
#define C_12_5pF 0x80 |
#define C_13pF 0x90 |
#define C_13_5pF 0xA0 |
#define C_14pF 0xB0 |
#define C_14_5pF 0xC0 |
#define C_15pF 0xD0 |
#define C_15_5pF 0xE0 |
#define C_16pF 0xF0 |
#define SETTING_MS 0x08 // modulation polarity |
#define TX_DEV_30 0x00 // select frequency deviation |
#define TX_DEV_60 0x01 |
#define TX_DEV_90 0x02 |
#define TX_DEV_120 0x03 |
#define TX_DEV_150 0x04 |
#define TX_DEV_180 0x05 |
#define TX_DEV_210 0x06 |
// CMD_POWER |
#define POWER_A1 0x80 // enable crystal and syntheesizer by sleep |
#define POWER_A0 0x40 // enable PA by sleep |
#define POWER_EX 0x20 // enable transmitter |
#define POWER_ES 0x10 // enable synthesizer |
#define POWER_EA 0x08 // enable PA (power amplifier) |
#define POWER_EB 0x04 // enable low battery detector |
#define POWER_ET 0x02 // enable wake up timer |
#define POWER_DC 0x01 // disable clock output of CLK pin |
// CMD_POWER_OUT |
#define POWER_OUT_0 0xB000 // -0dBm |
#define POWER_OUT_3 0xB100 // -3dBm |
#define POWER_OUT_6 0xB200 // -6dBm |
#define POWER_OUT_9 0xB300 // -9dBm |
#define POWER_OUT_12 0xB400 // -12dBm |
#define POWER_OUT_15 0xB500 // -15dBm |
#define POWER_OUT_18 0xB600 // -18dBm |
#define POWER_OUT_21 0xB700 // -21dBm |
// CMD_FREQUENCY |
#define FREQUENCY_867 0x578 |
#define FREQUENCY_868 0x640 |
#define FREQUENCY_869 0x708 |
// CMD_RATE |
#define RATE_2400 0x8F |
#define RATE_4800 0x47 |
#define RATE_9600 0x23 |
#define RATE_19200 0x11 |
#define RATE_38400 0x8 |
#define RATE_57600 0x5 |
#define RATE_115200 0x2 |
// CMD_BATTERY |
#define WAKE_UP_DWC 0x80 // disable wake-up timer periodical calibration |
#define TX_EBS 0x20 // enable TX bit synchronization function |
/Designs/Data_loggers/DOGFINDER02A/SW/TX_RFM02.c~ |
---|
0,0 → 1,199 |
/* mija 2008 |
demo for RFM02 - TX 868MHz |
CPU ATMEGA16 |
fcpu = 1MHz |
!! define PIN,PORT,DDR for IOpin !! |
tested with module RFM12B RX 9600 BW 134kHz |
*/ |
#include <avr/io.h> |
#include <util/delay.h> |
#include "RFM02.h" |
#define F_CPU 1000000UL |
//************************************************************************ |
#define SDI PB3 |
#define SDI_PORT PORTB |
#define SDI_DDR DDRB |
#define FSK PC1 |
#define FSK_PORT PORTC |
#define FSK_DDR DDRC |
#define SDO PB4 // input for mega |
#define SDO_PORT PORTB |
#define SDO_DDR DDRB |
#define SDO_PIN PINB |
#define SCK PB5 |
#define SCK_PORT PORTB |
#define SCK_DDR DDRB |
#define nIRQ PD2 // input for mega |
#define nIRQ_PORT PORTD |
#define nIRQ_DDR DDRD |
#define nIRQ_PIN PIND |
#define nSEL PB2 |
#define nSEL_PORT PORTB |
#define nSEL_DDR DDRB |
#define LED PC3 |
#define LED_PORT PORTC |
#define LED_DDR DDRC |
// interni |
#define SDI_H SDI_PORT |= _BV(SDI) |
#define SDI_L SDI_PORT &= (~(_BV(SDI))) |
#define SDI_INIT SDI_DDR |= _BV(SDI) |
#define FSK_H FSK_PORT |= _BV(FSK) |
#define FSK_L FSK_PORT &= (~(_BV(FSK))) |
#define FSK_INIT FSK_DDR |= _BV(FSK) |
#define SDO_INPUT (SDO_PIN & _BV(SDO)) |
#define SDO_INIT SDO_DDR &= (~(_BV(SDO))) |
#define SCK_H SCK_PORT |= _BV(SCK) |
#define SCK_L SCK_PORT &= (~(_BV(SCK))) |
#define SCK_INIT SCK_DDR |= _BV(SCK) |
#define nIRQ_INPUT (nIRQ_PIN & _BV(nIRQ)) |
#define nIRQ_INIT nIRQ_DDR &= (~(_BV(nIRQ))) |
#define nSEL_H nSEL_PORT |= _BV(nSEL) |
#define nSEL_L nSEL_PORT &= (~(_BV(nSEL))) |
#define nSEL_INIT nSEL_DDR |= _BV(nSEL) |
#define LED_H LED_PORT |= _BV(LED) |
#define LED_L LED_PORT &= (~(_BV(LED))) |
#define LED_INIT LED_DDR |= _BV(LED) |
#define START_TX RF_WRITE_CMD(CMD_POWER|POWER_EX|POWER_ES|POWER_EA|POWER_DC) |
#define STOP_TX RF_WRITE_CMD(CMD_POWER|POWER_DC) |
//************************************************************************ |
//uint8_t test[16]={0x30,0x31,0x32,0x33,0x34,0x35,0x36,0x37,0x38,0x39,0x3a,0x03b,0x3c,0x3d,0x3e,0x3f}; |
uint8_t test[17]="\n\rATmega16\n\r ---"; |
//uint8_t test[16]="0123456789abcdef"; |
//************************************************************************ |
void delay_ms(uint16_t time) |
{ |
while(time--) _delay_ms(1); |
} |
void IO_INIT(void) |
{ |
SDI_INIT; |
SDO_INIT; |
SCK_INIT; |
nIRQ_INIT; |
nSEL_INIT; |
FSK_INIT; |
LED_INIT; |
} |
void RF_INIT(void) |
{ |
nSEL_H; |
SDI_H; |
SCK_L; |
nIRQ_INPUT; |
SDO_INPUT; |
FSK_H; |
} |
void RF_WRITE_CMD(uint16_t cmd) |
{ |
uint8_t i; |
SCK_L; |
nSEL_L; |
for (i=0;i<16;i++) |
{ |
SCK_L; |
SCK_L; |
if (cmd & 0x8000) SDI_H; |
else SDI_L; |
SCK_H; |
SCK_H; |
cmd <<= 1; |
} |
SCK_L; |
nSEL_H; |
} |
void RF_WRITE_DATA(uint8_t data) |
{ |
uint8_t i; |
for (i=0;i<8;i++) |
{ |
while (nIRQ_INPUT); |
while (!nIRQ_INPUT); |
if (data & 0x80)FSK_H; |
else FSK_L; |
data <<= 1; |
} |
} |
int main() |
{ |
uint8_t i,j,ChkSum; |
IO_INIT(); |
RF_INIT(); |
LED_H; |
delay_ms(100); |
RF_WRITE_CMD(CMD_STATUS); |
RF_WRITE_CMD(CMD_SETTING |BAND_868 |C_12pF |TX_DEV_90); |
RF_WRITE_CMD(CMD_FREQUENCY |FREQUENCY_868); |
RF_WRITE_CMD(0xD040); |
RF_WRITE_CMD(CMD_RATE |RATE_19200); |
RF_WRITE_CMD(CMD_BATTERY |TX_EBS); |
RF_WRITE_CMD(CMD_POWER |POWER_DC); |
RF_WRITE_CMD(POWER_OUT_0); |
j= 0; |
while (1) |
{ |
LED_H; |
START_TX; |
ChkSum = 0; |
for (i=0;i<3;i++) RF_WRITE_DATA(0xAA); |
RF_WRITE_DATA(0x2D); |
RF_WRITE_DATA(0xD4); |
for (i=0;i<16;i++) |
{ |
RF_WRITE_DATA(test[i]); |
ChkSum += test[i]; |
} |
RF_WRITE_DATA(ChkSum); |
RF_WRITE_DATA(0xAA); |
RF_WRITE_DATA(0xAA); |
STOP_TX; |
LED_L; |
delay_ms(500); |
j++; |
test[13]=(j/100)+0x30; |
test[14]=((j%100)/10)+0x30; |
test[15]=((j%100)%10)+0x30; |
} |
return 0; |
} |
/Designs/Data_loggers/GMCOUNT/PrjInfo.txt |
---|
0,0 → 1,17 |
// |
// Toto je popisný soubor pro popis obsahu adresáře (příklad) |
// |
[InfoShortDescription.en] |
Some radioactivity intensimeter |
[InfoShortDescription.cs] |
Geiger-Müllerův počítač |
[InfoLongDescription.en] |
A counter is based on Geiger-Müller tube. Powered by internal Li-ion cell and voltage converter. It can log data in time domain and then it can send log to a computer. |
[InfoLongDescription.cs] |
Zaznamenává intenzity v průběhu času do paměti a následně je umožnoje uložit do počítače. Je napájen z integrované Li-ion baterie a vlastního měniče. |
[End] |
/Designs/Data_loggers/GMCOUNT/SW/GMC01A.c |
---|
0,0 → 1,551 |
#include <16F876A.h> |
#device adc=10 |
#FUSES NOWDT //No Watch Dog Timer |
#FUSES NOLVP,NOPROTECT,XT,NOBROWNOUT |
#use delay(clock=4000000) |
//#define EEPROM_SCL PIN_C3 |
//#define EEPROM_SDA PIN_C4 |
#use rs232(baud=9600,xmit=PIN_C6,disable_ints) |
//#use i2c(Master,Fast,sda=PIN_C4,scl=PIN_C3) |
#define LCD_RS PIN_C7 // rizeni registru LCD displeje <lcd.c> |
#define LCD_E PIN_B7 // enable LCD displeje <lcd.c> |
#define LCD_D0 PIN_B3 // data LCD <lcd.c> |
#define LCD_D1 PIN_B2 |
#define LCD_D2 PIN_B1 |
#define LCD_D3 PIN_B0 |
#define PWM_OUT PIN_C2 // kontrast LCD - menic |
#define LCD_ENABLE PIN_A1 |
#define GM_PIN PIN_A4 // vstup od GMT |
#define HV_ENABLE PIN_A3 // start 400V |
#define CHARGE PIN_A2 // nabijeni baterie |
#define KBD_K4 0 //tlacitko na PIN_B7 neexistuje <kbd.c> |
#define TL3 0x10 //tlacitko PIN_B4 -ostatni default, viz <kbd.c> |
#define TL2 0x20 //tlacitko PIN_B5 <kbd.c> |
#define TL1 0x40 //tlacitko PIN_B6 <kbd.c> |
#define KBD_CALMTIME 1 //x*40ms - doba na zakmity tlacitek <kbd.c> |
#define KEYDELAY 30 //x*40ms - doba podrzeni tlacitka do opakovani |
#define KEYREPEAT 6 //x*40ms - doba opakovani stiskleho tlacitka |
#define LOG_PERIOD 30 //perioda logovani v min |
#define TIME_TO_SLEEP 19 //x*16s - doba do uspani, pokud zadny stisk a HV nebezi |
#define MAX_EEPROM 255 //max velikost vnitrni ee pameti |
#define EE_LOG_SWITCH 1 //misto v ee, kam se uklada zpusob logovani |
#define EE_LOG_OFFSET 0 //misto v ee, kde je ulozen offset dalsiho volneho mista |
#define ECHO_MAX_CYCLE 700 //ryhlost hlavni smyèky za 40ms /cca 20kHz/ (700) |
#define ECHO_PIN1 PIN_C4 //piezo |
#define ECHO_PIN2 PIN_C5 //piezo |
#define TEST_V_BATT 0x0f //maska minut pro test baterie |
#define BATT_ENABLE 525 //1024/ADC*1.5+0.18 ADC=525 .. Ubat=3.1V; jeli Ubat nizsi pak sleep |
#include <lcd.c> |
#include <kbd.c> |
int8 ms7RTC,sRTC,mRTC,hRTC,dRTC,mdRTC,yRTC; //promenne RTC |
int1 vypocet,refresh,counters,sleep,log,piezo; //povoleni vypoctu,zobrazeni,citani,uspani,logovani,cvak pieza |
int16 avg,bkg,min,max,dif; //hlavni zobrazované promìnne |
int32 gmcount,mincount; //citac trubice GM,citac minut od startu |
int8 timer_n,timer_s; //citace pulzù do 40ms, v celych 40ms, v predchozi 40ms |
int32 gmcount_p; //pocet pulzu od zapnuti v predchozi cele minute |
int32 gmcount_sm; //pocet pulzu od zapnuti precteno v cele minute |
int8 s25tik,sTIK; //tiky pro casovani trubice 25tiku do sekundy, 60s do min |
int8 key_timer,save_key,keyp; //pomocny citac pro tlacitka,ulozeni stiskleho tlacitka,provedeni akce stiskleho tl. |
int8 menu_A,menu_B; //vektor pro pohyb v menu na LCD |
int8 log_interval; //minutovy citac do dalsiho logu |
int8 log_switch; //prepinac zpusobu logovani |
int8 ee_offset; //kam v ee ulozit dalsi zaznam |
int8 echo_switch,echo_tik; //povolení echa,poèet tiku za 40ms |
int16 echo_timer,echo_cycle; //èitaè rychlosti smyèky pro echo,cvaknuti v cyklu |
int8 pwm; //kontrast |
int8 tik_to_sleep; //casovac pro uspani |
float analog; //napeti baterie |
int1 test_batt; //test napeti baterie |
int1 test; //pokus |
int8 timertest; //pokus |
#priority timer2,timer1,rb |
#int_TIMER2 //nastaven presne na 40ms,cte casovac timer0 GMT |
TIMER2_isr() |
{ |
kbd_ticktimer(); |
if (key_timer) key_timer--; |
if (!counters) {set_timer0(0);s25TIK=0;sTIK=0;return;} |
if (echo_switch) echo_switch=2; |
timer_n=get_timer0(); |
s25TIK++; |
if (timer_n!=timer_s) //nastala zmena v citaci,pak proved pricteni puslu |
{ |
if (timer_n < timer_s) {timer_s=256-timer_s+timer_n;gmcount=gmcount+timer_s;} //test preteceni casovace |
else {timer_s=timer_n-timer_s;gmcount=gmcount+timer_s;} |
echo_tik=timer_s; |
timer_s=timer_n; |
if (menu_A==1 && menu_B==0) refresh=true; |
} |
else echo_tik=0; |
if (s25TIK==25) //cela sekunda |
{ |
s25TIK=0; |
sTIK++; |
if (menu_A==1 && menu_B==5) refresh=true; |
if (sTIK==60) //cela minuta |
{ |
sTIK=0; |
mincount++; |
vypocet=true; |
gmcount_sm=gmcount; |
} |
} |
} |
#int_RB |
RB_isr() |
{ |
kbd_pullkbd(); |
tik_to_sleep = TIME_TO_SLEEP; |
} |
int8 modulo(int8 h,int8 m) //pomocna fce pro modulo x |
{ |
if (h<m) return (h); |
return(h-m); |
} |
void clear_lcd() |
{ |
printf(lcd_putc,"\f"); |
} |
void set_date() //citac datumu |
{ |
dRTC++; |
switch (mdRTC) |
{ |
case 1: |
case 3: |
case 5: |
case 7: |
case 8: |
case 10: |
case 12: if(dRTC>=32) {dRTC=1;mdRTC++;if(mdRTC==13) {mdRTC =1;yRTC=modulo(yRTC++,100);}} break; |
case 4: |
case 6: |
case 9: |
case 11: if(dRTC>=31) {dRTC=1;mdRTC++;} break; |
case 2: if (dRTC >= 30) {dRTC=1;mdRTC++;break;} |
if (dRTC ==29) {if (!(yRTC & 0x03)) break;dRTC=1;mdRTC++;} |
} |
} |
#int_TIMER1 // RTC |
TIMER1_isr() |
{ |
sRTC=sRTC+16; |
if (sRTC >= 60) |
{ |
mRTC++;sRTC=modulo(sRTC,60); //1min |
if (mRTC>=60) {hRTC++;mRTC=0;} //1hod |
if ((mRTC & TEST_V_BATT) == TEST_V_BATT) test_batt=true; |
if (hRTC>=24) {hRTC=0;set_date();} //1den |
} |
refresh=true; |
if (tik_to_sleep) tik_to_sleep--; |
} |
void ee_head() //ulozeni hlavicky do ee cas,datum,zpusob logovani |
{ //v ee 100hhhhh /hodiny/,l0mmmmmm /log + minuty/,000ddddd /den/,yyyymmmm /rok-7,mesic/ |
int8 data; |
log=true; |
if (!log_switch) return; |
if (ee_offset>5) { |
data=read_eeprom(ee_offset-4); |
if (bit_test(data,7)) ee_offset=ee_offset-4; |
} |
if (ee_offset>=(MAX_EEPROM-5)) {log=false;return;} |
log_interval=0; |
data=hRTC; |
bit_set(data,7); |
write_eeprom(ee_offset++,data); |
data=mRTC; |
if (bit_test(log_switch,0)) bit_set(data,7); |
write_eeprom(ee_offset++,data); |
write_eeprom(ee_offset++,dRTC); |
data=((yRTC-7) << 4)|mdRTC; |
write_eeprom(ee_offset++,data); |
} |
void menu_proces(int8 key) //menu zobrazene na LCD pri citani |
{ |
switch (key) |
{ |
case TL1: menu_A=2;refresh=true;clear_lcd();return; |
case TL2: if (log) log=false; |
else ee_head(); |
break; |
case TL3: menu_B=modulo(++menu_B,6);break; |
} |
printf(lcd_putc,"\rdif=%lu ",dif); |
lcd_gotoxy(11,1); |
if (log) printf(lcd_putc,"L"); //pokud se loguje, zobraz L |
else printf(lcd_putc," "); |
if (bkg) printf(lcd_putc,"B"); //pokud jiz je BKG,zobraz B |
lcd_gotoxy(14,1); |
printf(lcd_putc,"%3u\n",(int8)(MAX_EEPROM-ee_offset)/2); //zbivajici misto v ee |
switch (menu_B) |
{ |
case 0: printf(lcd_putc,"n=%lu",gmcount);break; |
case 1: printf(lcd_putc,"min=%Lu",min);break; |
case 2: printf(lcd_putc,"max=%lu",max);break; |
case 3: printf(lcd_putc,"avg=%lu",avg);break; |
case 4: printf(lcd_putc,"bkg=%lu",bkg);break; |
case 5: printf(lcd_putc,"ontime=%lu:%02d ",mincount,sTIK);break; |
} |
} |
void send_data() //posle data z ee na rs232 9600 8N1 |
{ |
int8 i; |
int16 data; |
int8 *adr; |
for (i=2;i<ee_offset;i) |
{ |
adr=&data; |
*adr=read_eeprom(i++); |
if (bit_test(*adr,7)) //test, zda se nejedna o hlavicku v ee |
{ |
bit_clear(*adr,7); |
printf("\r\n%d:",*adr); |
*adr=read_eeprom(i++); |
printf("%02d ",(0x3f&*adr)); |
adr++;*adr=read_eeprom(i++); |
printf("%d/",*adr); |
*adr=read_eeprom(i++); |
printf("%02d/",*adr&0x0f); |
*adr=(*adr>>4)+7; |
printf("%02d ",*adr); |
adr--; |
if (bit_test(*adr,7)) printf("1min"); |
else {*adr=LOG_PERIOD;printf("%umin",*adr);} |
} |
else{ |
data=data<<8; |
*adr=read_eeprom(i++); |
printf("\r\n%lu",data); |
} |
} |
} |
void display(int8 key) //zobrazeni na LCD - zakladni menu |
{ |
int8 mon,year; //pomocne promenne |
if (key) clear_lcd(); |
keyp=0; |
refresh=false; |
if (menu_A>1) { //zmena pri stisku tl spolecna pro vetsinu menu_A |
if (key==TL3) {menu_A++;if (menu_A>11) menu_A=2;} //TL3 pak rolluj v menu_A |
if ( ( menu_A != 10 ) && ( menu_A != 6 ) && (menu_A != 11) ) |
{ |
if (key==TL1) |
{ |
if (counters) menu_A=1; |
else menu_A=0; |
key=0; |
} |
else printf(lcd_putc,"\r\nesc cr roll\r"); |
} |
} |
switch (menu_A) //hlavni menu |
{ |
case 0: min=0xffff; //zakladni menu po resetu, nastaveni promennych |
max=gmcount=gmcount_sm=gmcount_p=timer_s=timer_n=mincount=dif=avg=bkg=0; |
vypocet=sleep=counters=log=echo_switch=false; |
test_batt = true; |
log_switch=read_eeprom(EE_LOG_SWITCH); |
ee_offset=read_eeprom(EE_LOG_OFFSET); |
output_high(HV_ENABLE); |
printf(lcd_putc,"\r%d:%02d %d.%d.%02d \nmenu off start",hRTC,mRTC,dRTC,mdRTC,yRTC); |
switch (key) |
{ |
case TL1: menu_A=2;break; |
case TL2: menu_A=menu_B=0;sleep=true;break; |
case TL3: menu_A=1;menu_B=0; |
output_low(HV_ENABLE); |
printf(lcd_putc,"\fSTART HV 400V"); |
delay_ms(2000); |
counters=true; |
break; |
} |
if (key) {refresh=true;clear_lcd();} |
break; |
case 1: menu_proces(key);break; //skok na menu zobrazujici vypoctene a nacitane promenne |
case 3: if (key==TL2) {log_switch=modulo(++log_switch,3);write_eeprom(EE_LOG_SWITCH,log_switch);log=false;} |
switch (log_switch) |
{ |
case 0: printf(lcd_putc,"log \176 rs232");break; |
case 1: printf(lcd_putc,"log \176 eeprom 1m");break; |
case 2: mon=LOG_PERIOD;printf(lcd_putc,"log \176 eeprom %um",mon);break; |
//case 3: printf(lcd_putc,"log \176 off ");break; |
} |
break; |
case 9: printf(lcd_putc,"OFF (stand by)"); |
if (key==TL2) {menu_A=menu_B=0;sleep=true;output_high(HV_ENABLE);} |
break; |
case 8: if (key==TL2) if (echo_switch) echo_switch=0;else echo_switch=1; |
if (echo_switch) printf(lcd_putc,"echo on"); |
else printf(lcd_putc,"echo off"); |
break; |
case 4: if (key==TL2) send_data(); |
printf(lcd_putc,"send log \176 rs232"); |
break; |
case 5: if (key==TL2) {log=false;ee_offset=2;write_eeprom(EE_LOG_OFFSET,2);} |
printf(lcd_putc,"erase eeprom %3u",(int8)(MAX_EEPROM-ee_offset)/2); |
break; |
case 2: printf(lcd_putc,"STOP & clear"); |
if (key==TL2) {menu_A=0;menu_B=0;refresh=true;} |
break; |
case 7: printf(lcd_putc,"batterie "); |
//if (!input(CHARGE)) {printf(lcd_putc,"charge");break;} |
if ( key == TL2 || counters ) |
{ |
if ( !counters ) {output_low(HV_ENABLE);delay_ms(30);} |
analog = (float) (read_adc()); |
analog = 1024/analog*1.5 + 0.18; |
if ( !counters ) output_float(HV_ENABLE); |
printf(lcd_putc,"%1.2fV",analog); |
} |
break; |
case 6: if (key == TL2) {pwm++;if (pwm > 10) pwm --;} |
if (key == TL1) {pwm--;if (pwm < 2) pwm ++;} |
set_pwm1_duty(pwm); |
printf(lcd_putc,"contrast: %d\n - + roll",pwm); |
break; |
case 10: if (key==TL2) {set_timer1(0);sRTC=0;mRTC=modulo(++mRTC,60);} |
if (key==TL1) hRTC=modulo(++hRTC,24); |
printf(lcd_putc,"\rtime %2d:%02d\nhod min roll",hRTC,mRTC); |
break; |
case 11: if (key==TL1) {mon=mdRTC;year=yRTC;set_date();mdRTC=mon;year=yRTC;} |
if (key==TL2) {mon=dRTC;year=yRTC;dRTC=32;set_date();year=yRTC;} |
if (key==0x30) {mon=mdRTC;yRTC++;dRTC--;set_date();} |
printf(lcd_putc,"\rdate %2d.%02d.%02d\nday mon roll",dRTC,mdRTC,yRTC); |
break; |
} |
} |
void counters_fce() |
{ |
int8 *adr; |
if (vypocet) //1x za minutu se provede vypocet a log |
{ |
dif=gmcount_sm-gmcount_p; |
gmcount_p=gmcount_sm; |
avg=gmcount_sm/mincount; |
if (dif>max) max=dif; |
if (dif<min) min=dif; |
if (mincount==5) bkg=gmcount_sm/5; |
vypocet=false; |
refresh=true; |
if (log) |
{ |
//if (log_switch && (ee_offset>(MAX_EEPROM-2))) {log=false;return;} |
switch (log_switch) |
{ |
case 0: printf("\n\r%d:%02d %2d/%02d/%02d dif=%lu",hRTC,mRTC,dRTC,mdRTC,yRTC,dif);break; |
case 2: if (log_interval) break; |
case 1: adr=&dif;adr++;bit_clear(*adr,7); |
write_eeprom(ee_offset++,*adr); |
write_eeprom(ee_offset++,*(--adr)); |
write_eeprom(EE_LOG_OFFSET,ee_offset); |
if (ee_offset > (MAX_EEPROM-2)) log=false; |
break; |
} |
log_interval=modulo(++log_interval,LOG_PERIOD); |
} |
} |
} |
void echo_fce() |
{ |
int8 a,c; |
int16 b; |
if (!echo_tik || !counters) return; |
//if (echo_switch==2) {echo_switch=1;echo_cycle=ECHO_MAX_CYCLE/echo_tik;echo_timer=0;} |
if (echo_tik == 1) |
{ |
for (a=0;a<2;a++) {output_high(ECHO_PIN1);delay_us(160);output_low(ECHO_PIN1);delay_us(160);} |
echo_tik=0; |
} |
else /*if ((echo_timer == echo_cycle) || (!echo_timer))*/ |
{ |
echo_switch=1; |
c=echo_tik; |
if (echo_tik <40) {a=40/c;b=0;} |
if ((echo_tik >=40) && (echo_tik < 60)) {a=0;b=40000/c;} |
if (echo_tik >=60) {a=0;b=160;} |
while (echo_tik && (echo_switch==1) && !kbd_press()) |
{ |
echo_timer=0; |
output_high(ECHO_PIN1); |
delay_us(160); |
output_low(ECHO_PIN1); |
piezo=~piezo; |
delay_us(b); |
delay_ms(a); |
} |
//output_bit(ECHO_PIN2,piezo); |
} |
echo_timer++; |
} |
void pin_set_sleep() |
{ |
#use fast_IO(A) |
set_tris_A(0x15); |
output_A(0x2a); |
#use standard_IO(A) |
#use fast_IO(B) |
set_tris_B(0x70); |
output_B(0x8f); |
#use standard_IO(B) |
#use fast_IO(C) |
set_tris_C(0x2); |
output_C(0x84); |
#use standard_IO(C) |
} |
void sleep_fce() |
{ |
/*if (!input(CHARGE)) // pokud se nabiji, pak nespi |
{ |
printf(lcd_putc,"\fcharged batt"); |
tik_to_sleep = 0; |
while (!tik_to_sleep) if (input(CHARGE)) return; |
kbd_getc(); |
sleep = false; |
} |
else */ |
{ |
//setup_timer_0(RTCC_DIV_1|RTCC_INTERNAL); |
//setup_timer_1(T1_DISABLED); |
//setup_timer_2(T2_DIV_BY_16,249,10); |
counters=false; |
printf(lcd_putc,"\fchrrr"); |
delay_ms(1000); |
setup_adc_ports(ADC_OFF); |
setup_ccp1(CCP_OFF); |
//SET_TRIS_A(0xFF); |
//SET_TRIS_B(0xFF); |
//SET_TRIS_C(0xFF); |
pin_set_sleep(); |
do {sleep();delay_cycles(1);} while ( kbd_state!=0x20 /*&& input(CHARGE)*/ ); |
#use fast_IO(B) |
set_tris_B(0x70); |
output_B(0); |
#use standard_IO(B) |
setup_adc_ports(AN0); |
setup_adc(ADC_CLOCK_DIV_16); |
set_adc_channel(0); |
//setup_timer_0(RTCC_DIV_1|RTCC_EXT_L_TO_H); |
//setup_timer_2(T2_DIV_BY_16,249,10); |
//setup_ccp1(CCP_PWM); |
menu_A=menu_B=0; |
setup_ccp1(CCP_PWM); |
set_PWM1_duty(pwm); |
delay_ms(200); |
output_low(LCD_ENABLE); |
output_high(HV_ENABLE); |
lcd_init(); |
//printf(lcd_putc,"\fhello"); |
delay_ms(1000);kbd_getc(); |
keyp=0; |
sleep=false; |
refresh=true; |
} |
} |
void main() |
{ |
setup_adc_ports(AN0); |
setup_adc(ADC_CLOCK_DIV_16); |
set_adc_channel(0); |
setup_timer_0(RTCC_DIV_1|RTCC_EXT_L_TO_H); |
setup_timer_1(T1_EXTERNAL|T1_DIV_BY_8|T1_CLK_OUT); |
setup_timer_2(T2_DIV_BY_16,249,10); |
setup_ccp1(CCP_PWM); |
set_PWM1_duty(0x5); |
enable_interrupts(INT_TIMER2); |
enable_interrupts(INT_RB); |
enable_interrupts(INT_TIMER1); |
enable_interrupts(GLOBAL); |
output_low(LCD_ENABLE); |
KBD_init(); |
LCD_init(); |
pwm=5; |
sRTC=0; |
mRTC=0; |
hRTC=0; |
dRTC=18; |
mdRTC=10; |
yRTC=07; |
menu_A=menu_B=0; |
refresh=true; |
keyp=0; |
while (TRUE) |
{ |
if (refresh) display(keyp); //povoleni zobrazeni(menu + fce tlacitek) |
if (counters) { tik_to_sleep = TIME_TO_SLEEP;counters_fce();} //povoleni citacu,vypoctu a logovani |
else if (! tik_to_sleep) sleep = true; //necita a zadny stisk tlacitek do TIME_TO_SLEEP pak sleep |
if (echo_switch) echo_fce(); |
if (kbd_press()) //test stisku tlacitek,repeat, delay |
{ |
if (!save_key) {save_key=kbd_getc();keyp=save_key;refresh=true;key_timer=KEYDELAY;} //delay key |
if (!key_timer) {refresh=true;keyp=save_key;key_timer=KEYREPEAT;} //repeat key |
} |
else key_timer=save_key=keyp=0; |
//echo (piezo) |
if (test_batt && counters) //test napeti baterie |
{ |
if (read_adc() > BATT_ENABLE) |
{ |
printf(lcd_putc,"\flow batt"); |
delay_ms(2000); |
sleep = true; |
} |
test_batt=false; |
} |
if (sleep) sleep_fce(); //sleep |
//if (!timertest) {timertest=30;output_bit(PIN_C3,test);test=~test;} |
//timertest--; |
} |
} |
/Designs/Data_loggers/GMCOUNT/SW/GMC01A.hex |
---|
0,0 → 1,768 |
:1000000018308A0000280000FF00030E8301A100C1 |
:100010000A08A0008A010408A2007708A300780853 |
:10002000A4007908A5007A08A6007B08A70083131E |
:1000300083128C308400801C1F288C1842288C303E |
:100040008400001C25280C183F288B1D29280B181C |
:100050003C28220884002308F7002408F80025081B |
:10006000F9002608FA002708FB0020088A00210E64 |
:100070008300FF0E7F0E09008A110A12F32A8A11EB |
:100080000A12672B8A110A125F2A0A108A100A11B3 |
:10009000820728340C34013406340A108A100A11FD |
:1000A00082070C3400340A108A100A1182070D34BA |
:1000B0006434693466343D3425346C34753400342A |
:1000C0000A108A100A1182074C3400340A108A1070 |
:1000D0000A118207203400340A108A100A1182079C |
:1000E000423400340A108A100A1182076D346934D0 |
:1000F0006E343D3425344C34753400340A108A1083 |
:100100000A1182076D34613478343D3425346C34FF |
:10011000753400340A108A100A118207613476346B |
:1001200067343D3425346C34753400340A108A1039 |
:100130000A11820762346B3467343D3425346C34E1 |
:10014000753400340A108A100A1182076F346E3435 |
:10015000743469346D3465343D3425346C3475340D |
:100160003A342534303432346434203400340A10C4 |
:100170008A100A11820731346D3469346E340034C8 |
:100180000A108A100A1182070D340A346534733458 |
:1001900063342034203420346334723420342034E7 |
:1001A0002034203472346F346C346C340D340034A9 |
:1001B0000A108A100A11DF3E03188A0A82000D34E1 |
:1001C000253464343A3425343034323464342034C1 |
:1001D0002034253464342E34253464342E342534CC |
:1001E0003034323464340A346D3465346E347534EA |
:1001F000203420346F346634663420342034733431 |
:10020000743461347234743400340A148A100A115C |
:1002100082070C345334543441345234543420342F |
:100220004834563420343434303430345634003486 |
:100230000A148A100A1182076C346F346734203430 |
:100240007E342034723473343234333432340034F4 |
:100250000A148A100A1182076C346F346734203410 |
:100260007E34203465346534703472346F346D34C8 |
:10027000203431346D3400340A148A100A11820794 |
:100280006C346F34673420347E3420346534653404 |
:10029000703472346F346D342034253475346D34D9 |
:1002A00000340A148A100A1182074F344634463447 |
:1002B000203428347334743461346E34643420341C |
:1002C00062347934293400340A148A100A118207FE |
:1002D0006534633468346F34203420346F346E34C2 |
:1002E00000340A148A100A118207653463346834B2 |
:1002F0006F34203420346F346634663400340A148A |
:100300008A100A118207733465346E3464342034E1 |
:100310006C346F34673420347E3420347234733458 |
:1003200032343334323400340A148A100A1182070A |
:100330006534723461347334653420346534653423 |
:10034000703472346F346D34203425343334753462 |
:1003500000340A148A100A118207533454344F347B |
:10036000503420342634203463346C3465346134A2 |
:10037000723400340A148A100A118207623461341C |
:100380007434743465347234693465342034003420 |
:100390000A148A100A11820763346F346E3474347D |
:1003A00072346134733474343A3420342534643410 |
:1003B0000A3420342D342B3472346F346C346C3462 |
:1003C00000340A148A100A1182070D347434693417 |
:1003D0006D34653420342534323464343A34253471 |
:1003E0003034323464340A3468346F3464346D34F5 |
:1003F00069346E3472346F346C346C3400340A10E7 |
:100400008A140A1182070D346434613474346534FB |
:1004100020342534323464342E34253430343234AC |
:1004200064342E3425343034323464340A34643441 |
:10043000613479346D346F346E3472346F346C34AB |
:100440006C3400340A108A140A1182070A340D34FD |
:10045000253464343A34253430343234643420342E |
:100460002534323464342F34253430343234643417 |
:100470002F342534303432346434203464346934D5 |
:1004800066343D3425346C34753400340A108A14D3 |
:100490000A1182070C346334683472347234723453 |
:1004A00000340A108A140A1182070C346C346F3439 |
:1004B0007734203462346134743474340034AB08DB |
:1004C000031D6D2A0608FF3A7039AA00FF30AB0001 |
:1004D000AC08031D6D2A2A08AC002B0F702A712A64 |
:1004E000AB03AD08031D772AAE0803197B2A2D083C |
:1004F0000319AE03AD03D508031DD5033619842AAD |
:100500008101D301D401EF2ADD080319892A0230C1 |
:10051000DD000108C900D30A4A0849020319CC2AA0 |
:100520004A0849020318B22A4A08003C8316D1003F |
:100530000130D2000030031C0130D202831249087E |
:10054000831651078312CA00C10700300318013017 |
:10055000C207003003180130C30700300318013010 |
:10056000C407C22A4A084902CA00C107003003185A |
:100570000130C207003003180130C30700300318F0 |
:100580000130C4074A08DE004908CA00580BCB2ACC |
:10059000D9080319B614CD2ADE015308193C031DEE |
:1005A000EF2AD301D40A580BD92A5908053C03195C |
:1005B000B61454083C3C031DEF2AD4010130C50792 |
:1005C0000318C60A0319C70A0319C80A36144408CF |
:1005D000D2004308D1004208D0004108CF008C105F |
:1005E0008A110A1229280608FF3A70398316D100A9 |
:1005F00083122A08831651020319062B0130831235 |
:10060000AB00831651088312AA008316133083129D |
:10061000E4000B108A110A1229288316530852028B |
:100620000318152B5208F800182B53085202F80033 |
:1006300083120034B30A01303402F43E0318562BFF |
:100640000C3E572B33081F3C03183A2B0130B300E4 |
:10065000B40A34080D3C031D3A2B0130B4003508B0 |
:10066000B50A8316D100D2006430D30083120D2363 |
:100670007808B500562B33081E3C0318422B013076 |
:10068000B300B40A562B33081D3C03184B2B013022 |
:10069000B300B40A562B33081D3C031D562B3508F6 |
:1006A00003390319562B0130B300B40A00340A147D |
:1006B0008A140A118207222B432B222B3B2B222B3D |
:1006C0003B2B222B222B3B2B222B3B2B222B103084 |
:1006D000B00730083B3C0318882BB10A300883165A |
:1006E000D2003C30D30083120D237808B0003108CB |
:1006F0003B3C03187D2BB20AB10131080F390F3C86 |
:10070000031936173208173C0318882BB2011A2335 |
:10071000B614E408031DE4030C108A110A122928F8 |
:100720008316811383120608AA00AA01FF30AB00CA |
:10073000AC018A150A165028A73084000008031956 |
:10074000B02B0130F800F701F70BA42BF80BA32B0B |
:100750004A30F700F70BAA2B00000000800BA12BFA |
:10076000003483162D18B82B83128611BA2B8316EA |
:100770008312861583168611AD18C22B83120611BB |
:10078000C42B831683120615831606112D19CC2B44 |
:1007900083128610CE2B831683128614831686103E |
:1007A000AD19D62B83120610D82B8316831206148C |
:1007B0008316061083128617831686130000831291 |
:1007C000861383168613831200348316AB08031D29 |
:1007D000ED2B83128713EF2B831683128717A91330 |
:1007E000290883168700AC0E2C08AD008312B123B4 |
:1007F0008316AC0E2C08AD008312B1230D30F70028 |
:10080000F70B002C0034C8308316A70083129C23FA |
:100810008713A9132908831687008312861383166A |
:1008200086138312EA016A08023C031C232C02305F |
:100830008316A70083129C2303308316AD00831216 |
:10084000B123EA0A132C0D30F700F70B252C0230E8 |
:100850008316AD008312B1230D30F700F70B2E2C59 |
:10086000EA016A08023C031C472C6A084520EB0099 |
:100870008316AB0183126B088316AC008312E52349 |
:1008800002308316A70083129C23EA0A312C00341D |
:10089000013083162702A9002808023C031D522CB0 |
:1008A0004030A90729088038AA00AB012A08AC000B |
:1008B0008312E5230034831626080C3A83120319A9 |
:1008C000682C063A0319742C073A03197C2C832CE4 |
:1008D0008316AB010130AC008312E523023083168E |
:1008E000A70083129C23912C01308316A7000230AD |
:1008F000A80083124824912C01308316A700A80079 |
:1009000083124824912C831626081F3C031C8A2C32 |
:100910000730A6050130AB002608AC008312E523A2 |
:10092000912C0034EE016E084D20003803199E2CE6 |
:10093000EE0A8316A60083125B24932C00348316E0 |
:100940002508F80124020318A82C2408F700B42C69 |
:10095000F7010830A600A40DF70D2508770203184B |
:10096000F700F80DA60BAB2C831200342030701E5C |
:100970003030F1006F08F700EF1FC52CF709F70AB8 |
:100980007708EF002D30F100F0176F088316A400F0 |
:100990006430A50083129F247708EF003030780779 |
:1009A000F2006F088316A4000A30A50083129F246A |
:1009B00030307707F40030307807F3007108F70023 |
:1009C000F01DE42CF01F7011701AF12CF01F0C2D8B |
:1009D00070190C2D7708F200F0180C2D7708F30031 |
:1009E0000C2D30307202031D0C2D7708F2002030E0 |
:1009F000F100F01DFF2C7011F014F01FF0103030DA |
:100A00007302031D0C2D7708F3002030F200F01D57 |
:100A1000FF2CF010F01F7010701D132D710883163D |
:100A2000A60083125B24F01C1A2D72088316A60000 |
:100A300083125B24701C212D73088316A600831279 |
:100A40005B2474088316A60083125B240034040818 |
:100A5000F600700EF038F200F207E23EF300323E8C |
:100A6000F50070080F39F307F307F507E93EF400C6 |
:100A7000F407F4076F0E0F39F407F507F40DF50DC1 |
:100A8000F509F50D6F080F39F507F20D0730F10084 |
:100A90000A30F507F403031C492DF407F303031C84 |
:100AA0004D2DF307F203031C512DF207F103031C34 |
:100AB000552D713084000730760576138407753024 |
:100AC0000402031976170008F700031D6F2D761B2B |
:100AD0006F2D761A7D2DF6196F2D2030722DF6159B |
:100AE00076123030F707F0010408EF00770883161C |
:100AF000A60083125B246F088400840A761F5F2D92 |
:100B00000034780870088316A4006430A5008312AE |
:100B10009F247708F00078083030031D962DF11CD3 |
:100B20009F2DF1199F2D711A2030992DF1117112FD |
:100B30007114F80778088316A60083125B247008E6 |
:100B40008316A4000A30A50083129F247708F000C2 |
:100B500078083030031DB22DF119B82D711CB82D55 |
:100B6000711A2030F80778088316A60083125B24D8 |
:100B70003030F00770088316A60083125B2400341F |
:100B8000F701F801F901FA018316AE01AF01B001D6 |
:100B9000B1012D082C042B042A040319FF2D203049 |
:100BA000B2000310A60DA70DA80DA90DAE0DAF0D37 |
:100BB000B00DB10D2D083102031DE82D2C083002B7 |
:100BC000031DE82D2B082F02031DE82D2A082E02F5 |
:100BD000031CF92D2A08AE022B08031C2B0FAF02B1 |
:100BE0002C08031C2C0FB0022D08031C2D0FB10282 |
:100BF0000314F70DF80DF90DFA0DB20BD12D00000D |
:100C0000AE3084008312003404088316A0003B3009 |
:100C1000A5009A30A400CA30A300A2010A30A100A6 |
:100C20007208A9007108A8007008A70083126F0855 |
:100C30008316A6002508AD002408AC002308AB00ED |
:100C40002208AA008312C0250008EF00840A0008C9 |
:100C5000F000840A0008F100840A0008F200FD3068 |
:100C60008407F708031D4B2E83162108013A031D44 |
:100C70003B2E83124B2E200803194D2E0F392102D3 |
:100C80000319442E0318542EA01B542E201B4D2E46 |
:100C900020304E2E83128316A0013030F7077708DC |
:100CA000A60083125B2483162508A9002408A80047 |
:100CB0002308A7002208A600AD01AC01AB010A3051 |
:100CC000AA008312C0257A088316A5007908A4001B |
:100CD0007808A3007708A200A10B102E831200341D |
:100CE0000B088316A70083128B1329132908831678 |
:100CF0008700831207130830F8000000000000008E |
:100D0000F817932EF8138316A60C831203180717EF |
:100D1000031C07137817932E7813F80B832E00000B |
:100D20000000000007171C308400840B952E000083 |
:100D30000000F81B822E781B8C2E8316A71FA32E73 |
:100D400083128B178316831200342030741E3030C8 |
:100D50008316A0007308F700F31FB52EF709F70AF2 |
:100D60007708F3002D30A000F4177308A400643056 |
:100D7000A50083129F247708F3003030780783168C |
:100D8000A1007308A4000A30A50083129F2430300C |
:100D900077078316A30030307807A2002008F700F9 |
:100DA000F41DD42EF41F7411741AE12EF41FFC2EBE |
:100DB0007419FC2E7708A100F418FC2E7708A20005 |
:100DC000FC2E30302102031DFC2E7708A1002030BC |
:100DD000A000F41DEF2E7411F414F41FF410303041 |
:100DE0002202031DFC2E7708A2002030A100F41D72 |
:100DF000EF2EF410F41F7410741D032F2008A600AA |
:100E0000831270268316F41C0A2F2108A600831271 |
:100E100070268316741C112F2208A60083127026D8 |
:100E200083162308A60083127026003478087208FF |
:100E30008316A4006430A50083129F247708F20073 |
:100E400078083030031D2B2FF31C342FF319342F67 |
:100E5000731A20302E2FF31173127314F8077808C9 |
:100E60008316A6008312702672088316A4000A3027 |
:100E7000A50083129F247708F20078083030031D04 |
:100E8000472FF3194D2F731C4D2F731A2030F8077D |
:100E900078088316A600831270263030F207720895 |
:100EA0008316A600831270268A110A16042B0408E2 |
:100EB0008316A500720EF038A100A107E23EA20041 |
:100EC000323EA40072080F39A207A207A407E93E28 |
:100ED000A300A307A307710E0F39A307A407A30D4F |
:100EE000A40DA409A40D71080F39A407A10D0730A2 |
:100EF000A0000A30A407A303031C7A2FA307A203B0 |
:100F0000031C7E2FA207A103031C822FA107A003AD |
:100F1000031C862FA0308400073025052513840785 |
:100F2000A4300402031925170008F700031DA02FA1 |
:100F3000251BA02F251AAE2FA519A02F2030A32FD7 |
:100F4000A51525123030F707F2010408F1007708E3 |
:100F5000A60083127026710884008316840A251F58 |
:100F6000902F831200348E30F7006E08F8006D0861 |
:100F7000F900FA01F808031DC72F7908F800F901F4 |
:100F80000830F702F808031DC72FF701CF2F031011 |
:100F9000F81BCE2FF90DF80DF703C72FF81300003B |
:100FA0008A110A16DE2B83162608B63CA600FA0123 |
:100FB0002708AA00A7170310A70CA80CA90CFA0C65 |
:100FC000F90CF80CF70CA60BDB2FAA1FF22FF70970 |
:100FD000F809F909FA09F70A0319F80A0319F90ACD |
:100FE0000319FA0A83128A150A12FE2C2C08EA0049 |
:0C0FF000EA08031DAC016A08F800003498 |
:101000006D08403A03190B28603A03191228303A48 |
:101010000319C228D5280230D800B6148A119224A8 |
:101020008A15182A361E16283612C1283616DB08ED |
:101030000319C1285C08053C03182E2804305C0203 |
:10104000EF0003178D0083168C130C1483120C0809 |
:101050000313EE00EE1F2E280430DC025C08F93C7E |
:10106000031834283612C128DA013208EE00EE17D0 |
:101070005C08DC0AEF0003178D0003136E080317EA |
:101080008C0083168C130C15831203130B08F700C6 |
:101090008B138316031755308D00AA308D008C14E6 |
:1010A0008C1850280C117708831203138B04310815 |
:1010B000EE005B18EE175C08DC0AEF0003178D00EA |
:1010C00003136E0803178C0083168C130C15831200 |
:1010D00003130B08F7008B138316031755308D008D |
:1010E000AA308D008C148C1873280C117708831289 |
:1010F00003138B045C08DC0AEF0003178D00031355 |
:10110000330803178C0083168C130C1583120313FA |
:101110000B08F7008B138316031755308D00AA3088 |
:101120008D008C148C1892280C11770883120313ED |
:101130008B0407303502F700F70EF030F70577081B |
:101140003404EE005C08DC0AEF0003178D00031383 |
:101150006E0803178C0083168C130C15831203136F |
:101160000B08F7008B138316031755308D00AA3038 |
:101170008D008C148C18BA280C1177088312031375 |
:101180008B04D528D90AA8018B1BA8178B135908E3 |
:101190008316D2000630D3008A1183120D238A15DC |
:1011A000A81B8B177808D900D528EE016E088A1184 |
:1011B00053208A15EE0AF7008316A6008A118312BF |
:1011C0005B248A1505306E02031DD628103084007A |
:1011D0004008F0003F08EF008A1127258A150330E8 |
:1011E000EF0020308316A6008A1183125B248A1533 |
:1011F000EF0BF1280B308316A7000130A8008A11ED |
:10120000831248248A15361E1629EE016E088A11AB |
:1012100060208A15003803191529EE0A8316A600E6 |
:101220008A1183125B248A1506292629EE016E088D |
:101230008A1166208A15003803192629EE0A8316BA |
:10124000A6008A1183125B248A15172939083A04EB |
:1012500003193A29EE016E088A116C208A150038AC |
:1012600003193A29EE0A8316A6008A1183125B2419 |
:101270008A152B290E308316A7000130A8008A1189 |
:10128000831248248A155C08FF3CF7000310770C92 |
:10129000EF00F0001330F1008A1181258A150A3021 |
:1012A0008316A6008A1183125B248A155908FA3E18 |
:1012B0000318182A063E1B2A6E308316A6008A11D0 |
:1012C00083125B248A153D308316A6008A1183128F |
:1012D0005B248A15413084004408F2004308F10081 |
:1012E0004208F0004108EF008A1104268A15182AE6 |
:1012F000EE016E088A1172208A15EE0AF700831635 |
:10130000A6008A1183125B248A1504306E02031D25 |
:101310007929103084003C08F0003B08EF008A1166 |
:1013200027258A15182AEE016E088A117E208A1553 |
:10133000EE0AF7008316A6008A1183125B248A1531 |
:1013400004306E02031D9429103084003E08F00022 |
:101350003D08EF008A1127258A15182AEE016E082C |
:101360008A118A208A15EE0AF7008316A6008A11D0 |
:1013700083125B248A1504306E02031DAF291030DE |
:1013800084003808F0003708EF008A1127258A15F5 |
:10139000182AEE016E088A1196208A15EE0AF700C7 |
:1013A0008316A6008A1183125B248A1504306E020C |
:1013B000031DCA29103084003A08F0003908EF00F4 |
:1013C0008A1127258A15182AEE016E088A11A22093 |
:1013D0008A15EE0AF7008316A6008A1183125B2491 |
:1013E0008A1507306E02031DE52941308400480844 |
:1013F000F2004708F1004608F0004508EF008A11A6 |
:1014000004268A153A308316A6008A1183125B24BB |
:101410008A155408EF000130F0008A11B6248A15AD |
:1014200020308316A6008A1183125B248A15182A9D |
:101430008A110A16362E0A108A140A1182075C29AC |
:1014400078299329AE29C929E4296D080319FD2AB1 |
:101450008316A4007108031D2F2A8312FD2AA402FB |
:10146000031C392A7F30A407031C382A8312FD2A63 |
:10147000432A8130A40203183F2A8312FD2A031D48 |
:10148000432A8312FD2A2408F700F801F901FA0122 |
:10149000A30183126E088316A200A21783126F089D |
:1014A0008316A1007008A0001930A4007408A002DF |
:1014B00003186A2A0130A10203186A2AA20203183B |
:1014C0006A2AA30203186A2AA30AA20AA10A7408B4 |
:1014D000A0079C2A7308A1020318852A0130A202E2 |
:1014E0000318852AA3020318852AA30AA20A7308EF |
:1014F000A1077408A007031C9C2AA10A031D9C2AAB |
:10150000A20A031D9C2AA30A9C2A72088038A20200 |
:1015100003189B2A0130A30203189B2AA30A72080E |
:101520008038A2077308A107031C792AA20A031DA9 |
:10153000792AA30A792A7A14A40B9F2AAA2A0310CB |
:10154000A00DA10DA20DA30D0310FA0DF90DF80DBC |
:10155000A50D562A251CB22A0310F80CF90CFA0C1A |
:10156000A50CB62AF70BB62A8312FD2AA51BDF2A83 |
:101570000310A00DA10DA20DA30D7408A002031865 |
:10158000CB2A0130A1020318CB2AA2020318CB2ACE |
:10159000A302031CF02A7308A1020318D62A013003 |
:1015A000A2020318D62AA302031CF02A720880386C |
:1015B000A2020318DF2A0130A302031CF02AFA0A50 |
:1015C000031DF02AF90A031DF02AF80A031DF02A68 |
:1015D000F70A031DED2A8312FD2AF80CF90CFA0C08 |
:1015E00083126E088316A4007208A406A41FFA2AA8 |
:1015F000F817022BF813022B8312F701F801F901F7 |
:10160000FA018316000083128A110A16F72B83163B |
:1016100026080319782BAE002A080319782BAE0789 |
:101620000318192B7F30AE02031C782B0319782B7B |
:101630001D2B8130AE070318782B2E08F700F80118 |
:10164000F901FA012708B200B2172808B1002908E9 |
:10165000B0001830AE00AF01301C462B2D08FA0741 |
:10166000031C382BF90A031D382BF80A0319AF178E |
:101670002C08F907031C3F2BF80A0319AF172B0896 |
:10168000A800A8172808F8070318AF17AF0DF80C23 |
:10169000F90CFA0CB20CB10CB00C0310AE0B2B2BE6 |
:1016A0000130F7070318782BF81B5D2BB20DFA0DEC |
:1016B000F90DF80DF7030319782BB21F6E2BFA0AF8 |
:1016C000031D6E2BF90A031D6E2BF80A031D6E2BEA |
:1016D000F80CF90CFA0CF70A0319782B2708AF005D |
:1016E0002B08AF06AF1F762BF8177C2BF8137C2B3B |
:1016F000F701F801F901FA0100008312003480308B |
:10170000831C852B8316A50683128316AA01AB01C1 |
:101710002108A9002508A90620080319702CA80093 |
:10172000F70024080319792CA8020319162C031CAE |
:10173000D52B2508AE00AE172608AD002708AC0053 |
:10174000AB010310AE0CAD0CAC0CAB0CA80BA02B7A |
:10175000A91FAD2B2A148D2C2A1028102A16A3306D |
:101760008400A22C2A12A91BBF2B281CCA2BAE0C4A |
:10177000AD0CAC0CAB0CF70A0319882CCA2BAE1BB2 |
:10178000CD2B0310AB0DAC0DAD0DAE0DF703031952 |
:10179000882CBF2B2A17352C2A132108A900A11F3A |
:1017A000D32BAE17812CAE13812C2408A800F70090 |
:1017B0002008A8022108AE00AE172208AD002308B9 |
:1017C000AC00AB010310AE0CAD0CAC0CAB0CA80B19 |
:1017D000E12BA91FEE2BAA148D2CAA102810AA16F3 |
:1017E000A7308400A22CAA12A91B002C281C0B2CA9 |
:1017F000AE0CAD0CAC0CAB0CF70A0319882C0B2CFF |
:10180000AE1B0E2C0310AB0DAC0DAD0DAE0DF703E2 |
:101810000319882C002CAA17352CAA132508A90017 |
:10182000A51F142CAE17812CAE13812C2508AE00F9 |
:10183000AE172608AD002708AC00A91F232CAE1355 |
:101840002A158D2C2A11AB012810A3308400A22C5C |
:10185000A91B4B2C2108A900281C352CAE0CAD0C63 |
:10186000AC0CAB0CF70A0319882CAB1F462CAC0A46 |
:10187000031D462CAD0A031D462CAE0A031D462C43 |
:10188000AE0CAD0CAC0CF70A0319882C2A1BCC2B20 |
:10189000AA1B0D2C6A2C8030AE06AE1F532C8D2C4B |
:1018A0002508A900602C2108A900AE08031D602CA2 |
:1018B000AD08031D602CAC08031D602CF701812CC2 |
:1018C000AE1B6A2C0310AB0DAC0DAD0DAE0DF70BBE |
:1018D000602C882CA91F6E2CAE17812CAE13812C86 |
:1018E0002408F7002508AE002608AD002708AC0044 |
:1018F000812C2008F7002108AE002208AD00230843 |
:10190000AC002E08F8002D08F9002C08FA00C02CB5 |
:10191000F701F801F901FA01C02CAB01AC09AD09DE |
:10192000AE09AB09AB0A031D9B2CAC0A031D9B2C13 |
:10193000AD0A0319AE0A2A18AC2BAA18ED2B2A19E6 |
:10194000222C502C0008AC07031CAC2CAD0A031D44 |
:10195000AC2CAE0A0319281484030008AD07031C3D |
:10196000B42CAE0A0319281484030008801F803A9F |
:10197000AE07031828142A1AB22BAA1AF32B282C04 |
:10198000000083128A110A16392C04088316A0005D |
:101990007108A1000319ED2C7008A90083126F08CB |
:1019A0008316A80083126E088316A70083126D08A1 |
:1019B0008316A600AD01AC012030AB008230AA0036 |
:1019C000831207237A08F0007908EF007808EE0008 |
:1019D0007708ED008316A10BCC2C7008A9008312A8 |
:1019E0006F088316A80083126E088316A70083125F |
:1019F0006D088316A6008A118312D32F8A157A08E0 |
:101A0000F0007908EF007808EE007708ED00F01F8D |
:101A1000182D8316A003A0168312ED09EE09EF0915 |
:101A2000F009ED0A0319EE0A0319EF0A0319F00A87 |
:101A30003B308316A5009A30A400CA30A300A2014F |
:101A40000A30A10071080319A00A7008A9008312C6 |
:101A50006F088316A80083126E088316A7008312EE |
:101A60006D088316A6002508AD002408AC002308E5 |
:101A7000AB002208AA008A118312C0258A1500082B |
:101A8000ED00840A0008EE00840A0008EF00840AD2 |
:101A90000008F000FD308407F708031D662D710A69 |
:101AA00083162102031D562D8312662D200803196B |
:101AB000692D0F39210203195F2D0318A92DA01BD1 |
:101AC000A92D201B692D2030A12D831220308316D3 |
:101AD000A005A01E7B2DA0127108031DA00377088E |
:101AE000A0002D30A6008A1183125B248A1583166C |
:101AF0002008F700A00171082102031D8D2D770831 |
:101B0000A0002E30A6008A1183125B248A1583164A |
:101B10002008F7002030A00500303030A01EA12D95 |
:101B2000A0127108031DA0037708A0002D30A600A5 |
:101B30008A1183125B248A1583162008F700A001FE |
:101B40003030F7077708A6008A1183125B248A15C4 |
:101B500083162508A9002408A8002308A700220846 |
:101B6000A600AD01AC01AB010A30AA008A118312B4 |
:101B7000C0258A157A088316A5007908A40078087C |
:101B8000A3007708A200A10B252D83128A110A1643 |
:101B9000572C361C442F4B084F02BF005008C00082 |
:101BA0004C08031C4C0FC0025208CE005108CD0057 |
:101BB0005008CC004F08CB0052088316A9008312AE |
:101BC00051088316A800831250088316A7008312B9 |
:101BD0004F088316A600831248088316AD008312AF |
:101BE00047088316AC00831246088316AB008312A5 |
:101BF00045088316AA008A118312C0258A15780821 |
:101C0000B8007708B7003E084002031C112E031DE0 |
:101C10000D2E3F083D020318112E4008BE003F085C |
:101C2000BD0040083C02031C1F2E031D1B2E3B0859 |
:101C30003F0203181F2E4008BC003F08BB004508A8 |
:101C4000053C031D482EC608031D482EC708031D6A |
:101C5000482EC808031D482E52088316A900831277 |
:101C600051088316A800831250088316A700831218 |
:101C70004F088316A600AD01AC01AB010530AA00E8 |
:101C80008A118312C0258A157808BA007708B9002E |
:101C90003610B614361E442F5B080319562E023A2E |
:101CA0000319BF2E033A0319C22E322F0A308316AE |
:101CB000A6008A11831270268A150D308316A6009D |
:101CC0008A11831270268A153208F3001F30F4003F |
:101CD0008A11A5268A153A308316A6008A11831226 |
:101CE00070268A153108F3000130F4008A11A52608 |
:101CF0008A1520308316A6008A11831270268A1551 |
:101D00003308F3001130F4008A11A5268A152F300C |
:101D10008316A6008A11831270268A153408F300F0 |
:101D20000130F4008A11A5268A152F308316A600EB |
:101D30008A11831270268A153508F3000130F400E9 |
:101D40008A11A5268A151730EB006B088A1122220A |
:101D50008A15EB0AF7008316A6008A1183127026F3 |
:101D60008A151C306B02031DA52E1030840040081C |
:101D7000F2003F08F1008A1157278A15322FDA083E |
:101D8000031D322F3F30EA00EA0A6A0884008013FC |
:101D90005C08DC0AEB006A0884000008EC006B08B1 |
:101DA00003178D0003136C0803178C0083168C1324 |
:101DB0000C15831203130B08F7008B1383160317FC |
:101DC00055308D00AA308D008C148C18E52E0C1126 |
:101DD0007708831203138B045C08DC0AEB00EA0328 |
:101DE0006A0884000008EC006B0803178D000313D9 |
:101DF0006C0803178C0083168C130C1583120313C5 |
:101E00000B08F7008B138316031755308D00AA308B |
:101E10008D008C148C180A2F0C1177088312031371 |
:101E20008B0403178D0103135C0803178C008316C2 |
:101E30008C130C15831203130B08F7008B138316F6 |
:101E4000031755308D00AA308D008C148C18262F66 |
:101E50000C117708831203138B045C08FD3C031CF0 |
:101E60003612322FDA0AA8018B1BA8178B135A08D7 |
:101E70008316D2001E30D3008A1183120D238A15D7 |
:101E8000A81B8B177808DA008A150A167428F8013F |
:101E9000F901F701FA017108031D512F70080319A8 |
:101EA0006B2F1030F2000310EE0DEF0DF70DFA0D51 |
:101EB00071087A02031D5E2F70087702031C672FDA |
:101EC0007008F702031CFA037108FA020314F80DF4 |
:101ED000F90DF20B532F00008A110A16962E2B0FC4 |
:101EE000722F762F0030F800792F792F2A08F8000A |
:101EF000792F00341230EE02031C8C2F6E308400D8 |
:101F0000FC3080050310800C800C000803198C2F16 |
:0E1F10008A2F0000800B892F8A110A16CA2E14 |
:10200000EA08031906280A1292240A16D701B61004 |
:102010005808013C03183F286A08103C031D172884 |
:10202000D80A58080B3C031817280230D800580863 |
:102030000A3C03193F285808063C03193F28580852 |
:102040000B3C03193F286A08403C031D2F28361D0E |
:102050002C280130D8002D28D801EA013F28ED01B5 |
:102060006D080A12C0200A16003803193F28ED0A2D |
:102070008316A6000A1283125B240A163028580819 |
:10208000F43E0318362E0C3E392EFF30BC00BB0048 |
:10209000BA01B9013A08B8003908B7003808C000D9 |
:1020A0003708BF00C801C7014008C6003F08C50087 |
:1020B000C900CA00CE01CD01CC014A08CB004E08B0 |
:1020C000D2004D08D1004C08D0004B08CF00520878 |
:1020D000C4005108C3005008C2004F08C1004208A4 |
:1020E000BE004108BD00DD0136125D183616361AF5 |
:1020F0007B2836117C28361536198028B6118128A0 |
:10210000B615B619852836108628361436170130CC |
:1021100003178D0083168C130C1483120C08031301 |
:10212000DB0003178D0183168C130C1483120C082B |
:102130000313DC0083168511831285150D30831679 |
:10214000A6000A1283125B240A163208EF001F3021 |
:10215000F0000A12B6240A163A308316A6000A12B4 |
:1021600083125B240A163108EF000130F0000A12D6 |
:10217000B6240A1620308316A6000A1283125B24A6 |
:102180000A1620308316A6000A1283125B240A1650 |
:102190003308EF001F30F0000A12B6240A162E3062 |
:1021A0008316A6000A1283125B240A163408EF0075 |
:1021B0001F30F0000A12B6240A162E308316A6002D |
:1021C0000A1283125B240A163508EF000130F00072 |
:1021D0000A12B6240A160330ED0020308316A6003A |
:1021E0000A1283125B240A16ED0BED281430EE0060 |
:1021F0006E080A12D8200A16EE0AF7008316A60007 |
:102200000A1283125B240A1625306E02031DF82879 |
:102210006A08403A03191329603A03191629303A1B |
:1022200003191B293F290230D8003F29D901590839 |
:10223000D800B6153F290130D800D9018316851181 |
:1022400083128511ED016D080A1205210A16003866 |
:1022500003193229ED0A8316A6000A1283125B24A1 |
:102260000A1623290830ED00FA308316A7000A1257 |
:1022700083129C230A16ED0B342936153F29EA08F0 |
:1022800003194629B6140A1292240A16362E6A0831 |
:10229000ED000A128A1500280A168A116A08203CE5 |
:1022A000031D8229DB0AA8018B1BA8178B135B086F |
:1022B0008316D2000330D3000A1283120D230A16AC |
:1022C000A81B8B177808DB00013003178D00031360 |
:1022D0005B0803178C0083168C130C1583120313F1 |
:1022E0000B08F7008B138316031755308D00AA30A7 |
:1022F0008D008C148C187A290C1177088312031323 |
:102300008B0436125B0803198C29013A03199D29A5 |
:10231000033A0319AE29D029ED016D080A121821DC |
:102320000A16003803199C29ED0A8316A6000A1222 |
:1023300083125B240A168D29D029ED016D080A123B |
:1023400028210A1600380319AD29ED0A8316A600C4 |
:102350000A1283125B240A169E29D0291E30EB0034 |
:10236000ED016D080A123C210A16ED0AF7008316EA |
:10237000A6000A1283125B240A160D306D02031D9B |
:10238000B1296B08F0001B30F1000A1281250A16F2 |
:102390006D308316A6000A1283125B240A16D02918 |
:1023A000362EED016D080A1251210A160038031964 |
:1023B000E129ED0A8316A6000A1283125B240A168D |
:1023C000D2296A08203C031DED29D9015908D800FB |
:1023D000B6158316851183128515362E6A08203CA2 |
:1023E000031DF929DD080319F729DD01F929013059 |
:1023F000DD00DD0803190D2AED016D080A126421C4 |
:102400000A16003803190C2AED0A8316A6000A12D0 |
:1024100083125B240A16FD291D2AED016D080A129C |
:1024200071210A16003803191D2AED0A8316A60029 |
:102430000A1283125B240A160E2A362E6A08203CE2 |
:10244000031D462B0230ED005C086D020318462B7D |
:102450006E30F000700884006D08ED0AF20003177A |
:102460008D0083168C130C1483120C0880007008E6 |
:1024700084000008F100F11F1C2B700884008013F9 |
:10248000700884000008F1000D3083160313A600C5 |
:102490000A12831270260A160A308316A6000A1240 |
:1024A000831270260A167108F3001F30F4000A1216 |
:1024B000A5260A163A308316A6000A128312702641 |
:1024C0000A16700884006D08ED0AF20003178D00EB |
:1024D00083168C130C1483120C088000700884007F |
:1024E00000083F39F100F3000130F4000A12031331 |
:1024F000A5260A1620308316A6000A12831270261B |
:102500000A16F00A700884006D08ED0AF20003173D |
:102510008D0083168C130C1483120C088000700835 |
:1025200084000008F100F3001F30F4000A120313C6 |
:10253000A5260A162F308316A6000A1283127026CB |
:102540000A16700884006D08ED0AF20003178D006A |
:1025500083168C130C1483120C08800070088400FE |
:1025600000080F39F200F3000130F4000A120313DF |
:10257000A5260A162F308316A6000A12831270268B |
:102580000A1670088400000EF7000F30F705770870 |
:10259000073EF4007008840074088000700884000E |
:1025A0000008F100F3000130F4000A12A5260A1613 |
:1025B00020308316A6000A12831270260A16F00332 |
:1025C000700884000008F100F11FF72AF10171087A |
:1025D0000A12B7200A1600380319F62AF10A8316E0 |
:1025E000A6000A12831270260A16E72A1A2B700810 |
:1025F00084001E308000700884000008F100F200A2 |
:102600001B30F3000A12162F0A166D308316A6002F |
:102610000A12831270260A1669308316A6000A125F |
:10262000831270260A166E308316A6000A128312D1 |
:1026300070260A16452B031703136E08EF00EE01F0 |
:10264000700884006D08ED0AF20003178D008316F0 |
:102650008C130C1483120C0880000D3083160313A6 |
:10266000A6000A12831270260A160A308316A600E4 |
:102670000A12831270260A16103084006F08F200C6 |
:102680006E08F1000A1257270A16242AED016D0878 |
:102690000A127F210A1600380319562BED0A8316F9 |
:1026A000A6000A1283125B240A16472B362E6A08EC |
:1026B000203C031D772B36120230DC0003178D01FE |
:1026C0008C0083168C130C15831203130B08F70070 |
:1026D0008B138316031755308D00AA308D008C1490 |
:1026E0008C18702B0C117708831203138B045C0871 |
:1026F000FF3CF7000310770CEE00EF016F080A12A1 |
:1027000094210A16EF0AF7008316A6000A12831214 |
:102710005B240A160D306F02031D7E2B6E08F0003D |
:102720001330F1000A1281250A16362EED016D08CC |
:102730000A12A9210A1600380319A62BED0A8316DE |
:10274000A6000A1283125B240A16972B6A08203C03 |
:10275000031DAD2BD801D901B614362EED016D083D |
:102760000A12BA210A1600380319BE2BED0A831685 |
:10277000A6000A1283125B240A16AF2B6A08203CBB |
:102780000319C42B361D602C3619D12B83168511E5 |
:10279000831285111E308316A7000A1283129C2310 |
:1027A0000A161F151F19D22B1E08FA0083161E08C1 |
:1027B0008312ED001E08EE000A12B32F0A167A08E3 |
:1027C000E8007908E7007808E6007708E500F001FE |
:1027D000EF01EE018930ED006808F4006708F300AE |
:1027E0006608F2006508F1000A128A15252A0A1601 |
:1027F0008A117708ED007808EE007908EF007A0872 |
:10280000F0008316A90083126F088316A8008312B4 |
:102810006E088316A70083126D088316A600AD010B |
:10282000AC014030AB007F30AA000A128A15831237 |
:1028300007230A168A117708F1007808F200790850 |
:10284000F3007A08F400831074088316A300730859 |
:10285000A2007208A1007108A000EC30A70051305E |
:10286000A6003830A5007C30A4000A128A15831215 |
:102870007F2B0A168A117A08E8007908E7007808A1 |
:10288000E6007708E5003619482C83168515831273 |
:10289000893084006808F0006708EF006608EE00E1 |
:1028A0006508ED000230F1000A128A15C52C0A16DF |
:1028B0008A1156308316A6000A1283125B240A1668 |
:1028C000362E6A08203C031D6A2CE30A63080A3C82 |
:1028D000031CE3036A08403C031D732CE3036308F5 |
:1028E000013C0318E30A63089500ED016D080A1224 |
:1028F000C8210A16ED0AF7008316A6000A128312F1 |
:102900005B240A160A306D02031D762C6308EF0063 |
:102910001F30F0000A12B6240A160A308316A600E9 |
:102920000A1283125B240A1620308316A6000A12AC |
:1029300083125B240A162D308316A6000A12831216 |
:102940005B240A160530EE0020308316A6000A121A |
:1029500083125B240A16EE0BA42C2B308316A600E0 |
:102960000A1283125B240A160430EF00203083160B |
:10297000A6000A1283125B240A16EF0BB62C103045 |
:10298000F00070080A12C8210A16F00AF700831630 |
:10299000A6000A1283125B240A1614307002031D6B |
:1029A000C12C362E6A08203C031DEB2C8F018E01B2 |
:1029B000B001B10AA8018B1BA8178B13310883162D |
:1029C000D2003C30D3000A1283120D230A16A81B32 |
:1029D0008B177808B1006A08403C031D012DB20A2C |
:1029E000A8018B1BA8178B1332088316D20018304E |
:1029F000D3000A1283120D230A16A81B8B1778081E |
:102A0000B200ED016D080A12E1210A16ED0AF70085 |
:102A10008316A6000A1283125B240A1606306D0282 |
:102A2000031D022D3208EF001130F0000A12B62407 |
:102A30000A163A308316A6000A1283125B240A167D |
:102A40003108EF000130F0000A12B6240A160E30E9 |
:102A5000EE006E080A12E1210A16EE0AF70083164C |
:102A6000A6000A1283125B240A1612306E02031D9E |
:102A7000292D0330EF0020308316A6000A1283129E |
:102A80005B240A16EF0B3B2D6D308316A6000A124D |
:102A900083125B240A1669308316A6000A12831279 |
:102AA0005B240A166E308316A6000A1283125B247A |
:102AB0000A160330F00020308316A6000A12831293 |
:102AC0005B240A16F00B5B2D1530F10071080A1219 |
:102AD000E1210A16F10AF7008316A6000A128312F2 |
:102AE0005B240A1619307102031D662D362E6A0802 |
:102AF000403C031D8C2D3408EB003508EC00A80188 |
:102B00008B1BA8178B130A121A230A16A81B8B17E4 |
:102B10006B08B4003508EC006A08203C031DA12DA9 |
:102B20003308EB003508EC002030B300A8018B1B04 |
:102B3000A8178B130A121A230A16A81B8B1735081D |
:102B4000EC006A08303C031DB22D3408EB00B50AD6 |
:102B5000B303A8018B1BA8178B130A121A230A169A |
:102B6000A81B8B17ED016D080A12FF210A16ED0A4A |
:102B7000F7008316A6000A1283125B240A16063099 |
:102B80006D02031DB32D3308EF001130F0000A125F |
:102B9000B6240A162E308316A6000A1283125B246E |
:102BA0000A163408EF000130F0000A12B6240A16A3 |
:102BB0002E308316A6000A1283125B240A163508EB |
:102BC000EF000130F0000A12B6240A161330EE00AE |
:102BD0006E080A12FF210A16EE0AF7008316A600F5 |
:102BE0000A1283125B240A1617306E02031DE82DA9 |
:102BF0000330EF0020308316A6000A1283125B24F4 |
:102C00000A16EF0BFA2D6D308316A6000A128312F6 |
:102C10005B240A166F308316A6000A1283125B2407 |
:102C20000A166E308316A6000A1283125B240A1657 |
:102C30000330F00020308316A6000A1283125B24B2 |
:102C40000A16F00B1A2E1A30F10071080A12FF2131 |
:102C50000A16F10AF7008316A6000A1283125B24F3 |
:102C60000A161E307102031D252E362E8A150A16ED |
:102C70006D280A108A140A15820745284729962BC1 |
:102C80004E291E2A572B612CAE2BEE29D129D22C8E |
:102C9000772DDE08031D361DD72E5E0B6C2EEA0144 |
:102CA0006A08013C031C6A2E291229088316870032 |
:102CB000831207163530F700F70B5C2E291229080E |
:102CC00083168700831207123530F700F70B662E44 |
:102CD000EA0A502EDE01D42E0130DD005E08EB0042 |
:102CE0005E08273C031C832E28308316A400831221 |
:102CF0006B088316A5000A1283129F240A1678080F |
:102D0000EA00ED01EC015E08273C03189C2E5E08EA |
:102D10003B3C031C9C2EEA019C30EF004030EE004F |
:102D2000F1016B08F0000A128A15472F0A168A1162 |
:102D30007908ED007808EC005E083B3C0318A42EEF |
:102D4000EA01ED01A030EC00DE080319D42E5D0B82 |
:102D5000D42E0A128A156F270A168A11F808031D45 |
:102D6000D42EE001DF01291229088316870083127F |
:102D700007163530F700F70BBB2E291229088316EA |
:102D80008700831207122030B6066C08EE000A1284 |
:102D90008A157A2F0A168A116A088316A7000A1262 |
:102DA00083129C230A16A42EDF0A0319E00A8A154F |
:042DB0000A167E2859 |
:1030000084011F3083052913290883168700831242 |
:10301000071783161F149F141F159F1107309C005C |
:10302000FF308312A90083161F109F141F159F15D0 |
:103030001F1783121F179F1383169F1783121F14C6 |
:103040000030F8001F08C73978049F008316010874 |
:10305000C73928388100BF30831290004830F8000B |
:1030600006389200F930831692008312291129083C |
:1030700083168700831207110C30970005309500E6 |
:1030800083168C1483128B1583160C14C030831294 |
:103090008B0483168510831285100A128A11902BD7 |
:1030A0000A168A150A128A1103240A168A1505308F |
:1030B000E300B001B101B2011230B3000A30B40034 |
:1030C0000730B500D9015908D800B614D701B61C8D |
:1030D0006E285708EA008A1100288A15361D7628BE |
:1030E0001330E4000A12C92D0A167928E4080319DE |
:1030F000B615DD0803197F288A11492E8A150A1290 |
:103100006F270A16F80803199C28D608031D932870 |
:103110000A128A11F6270A168A157808D600D700EF |
:10312000B6141E30D500D508031D9B28B6145608CA |
:10313000D7000630D500A028D7015708D600D50003 |
:10314000361FDC28361DDC281F151F19A5281E0870 |
:10315000FA0083161E088312EA007A08EB00013C8D |
:103160000318DB28FF3A031DB9286A080D3C031831 |
:10317000DB28EA016A080A128A1151220A168A1506 |
:1031800000380319CD28EA0A8316A6000A128A110C |
:1031900083125B240A168A15BA280830EA00FA302E |
:1031A0008316A7000A128A1183129C230A168A1515 |
:1031B000EA0BCF28B6153613B61D75293611EA016C |
:1031C0006A080A128A1146220A168A15003803195B |
:1031D000F328EA0A8316A6000A128A1183125B24D6 |
:1031E0000A168A15E0280430EA00FA308316A70090 |
:1031F0000A128A1183129C230A168A15EA0BF528F3 |
:1032000083161F109F101F119F1183122915290863 |
:103210008316870083129701970115308316850066 |
:103220002A30831285007030831686008F30831217 |
:103230008600023083168700843083128700630083 |
:1032400000002A08203C031D1F29703083168600C9 |
:103250008312860183161F109F141F159F151F17B9 |
:1032600083121F179F1383169F1783121F1400309A |
:10327000F8001F08C73978049F00D9015908D80001 |
:103280002911290883168700831207110C30970033 |
:1032900063089500C8308316A7000A128A118312AA |
:1032A0009C230A168A1583168510831285108316AF |
:1032B0008511831285150A128A1103240A168A15AC |
:1032C0000430EA00FA308316A7000A128A1183122A |
:1032D0009C230A168A15EA0B62290A128A11F6271C |
:0E32E0000A168A15D701B611B61467286300C6 |
:02400E00393F38 |
:00000001FF |
;PIC16F876A |
/Designs/Data_loggers/GMCOUNT/SW |
---|
Property changes: |
Added: svn:ignore |
+*.err |
/Designs/Data_loggers/GMCOUNT/SCH/GMC01A.DSN |
---|
Cannot display: file marked as a binary type. |
svn:mime-type = application/octet-stream |
Property changes: |
Added: svn:mime-type |
+application/octet-stream |
\ No newline at end of property |
/Designs/Data_loggers/GMCOUNT/SCH/GMC01A.pdf |
---|
Cannot display: file marked as a binary type. |
svn:mime-type = application/octet-stream |
Property changes: |
Added: svn:mime-type |
+application/octet-stream |
\ No newline at end of property |
/Designs/Data_loggers/GMCOUNT/SCH/GMC01A_POWER.DSN |
---|
Cannot display: file marked as a binary type. |
svn:mime-type = application/octet-stream |
Property changes: |
Added: svn:mime-type |
+application/octet-stream |
\ No newline at end of property |
/Designs/Data_loggers/GMCOUNT/SCH/GMC01A_POWER.pdf |
---|
Cannot display: file marked as a binary type. |
svn:mime-type = application/octet-stream |
Property changes: |
Added: svn:mime-type |
+application/octet-stream |
\ No newline at end of property |
/Designs/Data_loggers/GMCOUNT/CAM_GMC01A/BOARD.PHO |
---|
0,0 → 1,86 |
* |
* |
G04 PADS Layout (Build Number 2007.42.1) generated Gerber (RS-274-X) file* |
G04 PC Version=2.1* |
* |
%IN "GMC01A.pcb"*% |
* |
%MOIN*% |
* |
%FSLAX35Y35*% |
* |
* |
* |
* |
G04 PC Standard Apertures* |
* |
* |
G04 Thermal Relief Aperture macro.* |
%AMTER* |
1,1,$1,0,0* |
1,0,$1-$2,0,0* |
21,0,$3,$4,0,0,45* |
21,0,$3,$4,0,0,135* |
% |
* |
* |
G04 Annular Aperture macro.* |
%AMANN* |
1,1,$1,0,0* |
1,0,$2,0,0* |
% |
* |
* |
G04 Odd Aperture macro.* |
%AMODD* |
1,1,$1,0,0* |
1,0,$1-0.005,0,0* |
% |
* |
* |
G04 PC Custom Aperture Macros* |
* |
* |
* |
* |
* |
* |
G04 PC Aperture Table* |
* |
%ADD025C,0.01*% |
* |
* |
* |
* |
G04 PC Copper Outlines (0)* |
G04 Layer Name GMC01A.pcb - dark (0)* |
%LPD*% |
* |
* |
G04 PC Area=Custom_Thermal* |
* |
G04 PC Custom Flashes* |
G04 Layer Name GMC01A.pcb - flashes* |
%LPD*% |
* |
* |
G04 PC Circuitry* |
G04 Layer Name GMC01A.pcb - circuitry* |
%LPD*% |
* |
G54D25* |
G01X108400Y330550D02* |
X145800D01* |
Y377750* |
X614200* |
Y330550* |
X651600* |
Y149450* |
X614200* |
Y102250* |
X145800* |
Y149450* |
X108400* |
Y330550* |
X0Y0D02* |
M02* |
/Designs/Data_loggers/GMCOUNT/CAM_GMC01A/BOARD_POWER.PHO |
---|
0,0 → 1,86 |
* |
* |
G04 PADS Layout (Build Number 2007.42.1) generated Gerber (RS-274-X) file* |
G04 PC Version=2.1* |
* |
%IN "GMC01A-POWER.pcb"*% |
* |
%MOIN*% |
* |
%FSLAX35Y35*% |
* |
* |
* |
* |
G04 PC Standard Apertures* |
* |
* |
G04 Thermal Relief Aperture macro.* |
%AMTER* |
1,1,$1,0,0* |
1,0,$1-$2,0,0* |
21,0,$3,$4,0,0,45* |
21,0,$3,$4,0,0,135* |
% |
* |
* |
G04 Annular Aperture macro.* |
%AMANN* |
1,1,$1,0,0* |
1,0,$2,0,0* |
% |
* |
* |
G04 Odd Aperture macro.* |
%AMODD* |
1,1,$1,0,0* |
1,0,$1-0.005,0,0* |
% |
* |
* |
G04 PC Custom Aperture Macros* |
* |
* |
* |
* |
* |
* |
G04 PC Aperture Table* |
* |
%ADD025C,0.01*% |
* |
* |
* |
* |
G04 PC Copper Outlines (0)* |
G04 Layer Name GMC01A-POWER.pcb - dark (0)* |
%LPD*% |
* |
* |
G04 PC Area=Custom_Thermal* |
* |
G04 PC Custom Flashes* |
G04 Layer Name GMC01A-POWER.pcb - flashes* |
%LPD*% |
* |
* |
G04 PC Circuitry* |
G04 Layer Name GMC01A-POWER.pcb - circuitry* |
%LPD*% |
* |
G54D25* |
G01X108400Y330550D02* |
X145800D01* |
Y377750* |
X614200* |
Y330550* |
X651600* |
Y149450* |
X614200* |
Y102250* |
X145800* |
Y149450* |
X108400* |
Y330550* |
X0Y0D02* |
M02* |
/Designs/Data_loggers/GMCOUNT/CAM_GMC01A/DRILL.DRL |
---|
0,0 → 1,107 |
% |
T1C.02F197S55 |
X036025Y035866 |
X044654Y035866 |
T2C.025F197S55 |
X05993Y017972 |
X06073Y017972 |
X06073Y018972 |
X05993Y018972 |
T3C.028F197S55 |
X039775Y035526 |
X040904Y035526 |
X040904Y036206 |
X039775Y036206 |
T4C.035F197S55 |
X020686Y035985 |
X023686Y035985 |
X021686Y035985 |
X025686Y035985 |
X024686Y035985 |
X029169Y035985 |
X030169Y035985 |
X031169Y035985 |
X030334Y034678 |
X031334Y034678 |
X031334Y031678 |
X030334Y031678 |
X033334Y031678 |
X032334Y031678 |
X036334Y031678 |
X035334Y031678 |
X034334Y031678 |
X034334Y034678 |
X035334Y034678 |
X036334Y034678 |
X032334Y034678 |
X033334Y034678 |
X035169Y035985 |
X033169Y035985 |
X034169Y035985 |
X032169Y035985 |
X037334Y034678 |
X038334Y034678 |
X039334Y034678 |
X040334Y034678 |
X041334Y034678 |
X037334Y031678 |
X038334Y031678 |
X041334Y031678 |
X040334Y031678 |
X039334Y031678 |
X045716Y031649 |
X044636Y031649 |
X043334Y031678 |
X042334Y031678 |
X043334Y034678 |
X042334Y034678 |
X05857Y029186 |
X05857Y028186 |
X063266Y027131 |
X063266Y028168 |
X06157Y028186 |
X06157Y029186 |
X063266Y029204 |
T5C.037F197S55 |
X028384Y030998 |
X026726Y031672 |
X024683Y031672 |
X026712Y032603 |
X026712Y034494 |
X023688Y035247 |
X029169Y035247 |
X029369Y033851 |
X02938Y031675 |
X0515Y01625 |
X041Y030998 |
X0515Y03175 |
X057792Y031743 |
X05825Y01625 |
T6C.04F139S55 |
X0254Y03025 |
X0264Y03025 |
X0274Y03025 |
X0284Y03025 |
X0294Y03025 |
X0304Y03025 |
X0354Y03025 |
X0364Y03025 |
X0374Y03025 |
X0384Y03025 |
X05273Y0179 |
X05276Y0179 |
T7C.09F066S55 |
X06183Y016072 |
X06183Y020872 |
T8C.102F069S658 |
X02325Y0179 |
X02325Y0301 |
X05275Y0179 |
T9C.102F069S658 |
X05275Y0301 |
T10C.12598F035S794 |
X016349Y013173 |
X016349Y034827 |
X059651Y034827 |
X059651Y013173 |
M30 |
/Designs/Data_loggers/GMCOUNT/CAM_GMC01A/DRILL_POWER.DRL |
---|
0,0 → 1,70 |
% |
T1C.001F0S0 |
X04875Y011477 |
X05075Y011477 |
T2C.035F197S55 |
X018253Y011606 |
X018253Y022426 |
X020622Y023691 |
X02617Y036282 |
X024179Y036245 |
X028201Y034994 |
X024179Y032745 |
X025078Y025094 |
X025133Y023691 |
X024122Y023691 |
X027037Y022232 |
X027037Y018732 |
X027037Y017446 |
X027037Y013946 |
X028704Y015714 |
X028704Y021314 |
X029935Y023558 |
X028633Y023691 |
X029935Y024558 |
X028578Y025094 |
X029935Y025558 |
X029935Y026558 |
X030169Y033864 |
X029169Y033864 |
X02967Y036282 |
X030618Y036282 |
X034118Y036282 |
X032994Y03503 |
X031701Y034994 |
X031169Y033864 |
X033169Y033864 |
X032169Y033864 |
X034169Y033864 |
X035169Y033864 |
X032935Y026558 |
X032935Y025558 |
X032935Y024558 |
X032935Y023558 |
X034304Y021314 |
X035541Y017863 |
X034304Y015714 |
X041169Y011481 |
X037106Y011484 |
X041169Y012861 |
X037106Y012864 |
X036494Y03503 |
X045111Y012861 |
X045111Y011481 |
X056704Y023072 |
T3C.037F197S55 |
X029654Y027934 |
X029648Y031689 |
X032331Y032983 |
X033173Y032253 |
X032336Y029016 |
X033177Y027388 |
T4C.04F139S55 |
X015509Y017863 |
X013509Y017863 |
T5C.12598F035S794 |
X016349Y013173 |
X016349Y034827 |
X059651Y034827 |
X059651Y013173 |
M30 |
/Designs/Data_loggers/GMCOUNT/CAM_GMC01A/V1.PHO |
---|
0,0 → 1,3243 |
* |
* |
G04 PADS Layout (Build Number 2007.42.1) generated Gerber (RS-274-X) file* |
G04 PC Version=2.1* |
* |
%IN "GMC01A.pcb"*% |
* |
%MOIN*% |
* |
%FSLAX35Y35*% |
* |
* |
* |
* |
G04 PC Standard Apertures* |
* |
* |
G04 Thermal Relief Aperture macro.* |
%AMTER* |
1,1,$1,0,0* |
1,0,$1-$2,0,0* |
21,0,$3,$4,0,0,45* |
21,0,$3,$4,0,0,135* |
% |
* |
* |
G04 Annular Aperture macro.* |
%AMANN* |
1,1,$1,0,0* |
1,0,$2,0,0* |
% |
* |
* |
G04 Odd Aperture macro.* |
%AMODD* |
1,1,$1,0,0* |
1,0,$1-0.005,0,0* |
% |
* |
* |
G04 PC Custom Aperture Macros* |
* |
* |
* |
* |
* |
* |
G04 PC Aperture Table* |
* |
%ADD010R,0.039X0.039*% |
%ADD011C,0.06*% |
%ADD012R,0.07X0.07*% |
%ADD013C,0.23622*% |
%ADD017C,0.02*% |
%ADD019C,0.03*% |
%ADD020C,0.012*% |
%ADD022C,0.055*% |
%ADD025C,0.01*% |
%ADD031C,0.07*% |
%ADD035C,0.065*% |
%ADD040R,0.06X0.06*% |
%ADD042C,0.045*% |
%ADD043R,0.055X0.055*% |
%ADD044R,0.04X0.04*% |
%ADD045R,0.065X0.065*% |
%ADD046C,0.14*% |
%ADD047C,0.177*% |
%ADD048C,0.018*% |
%ADD049C,0.035*% |
* |
* |
* |
* |
G04 PC Copper Outlines (0)* |
G04 Layer Name GMC01A.pcb - dark (0)* |
%LPD*% |
* |
* |
G04 PC Area=ANP000033* |
G75* |
G36* |
G01* |
X648600Y233045D02* |
X648454Y233399D01* |
X648100Y233545D01* |
X634401D01* |
X634047Y233692D01* |
X599850Y267889D01* |
X599703Y268243D01* |
Y332215D01* |
X599996Y332508D01* |
X610700D01* |
X611054Y332654D01* |
X611200Y333008D01* |
Y342519D01* |
X611003Y342917D01* |
X610568Y343001D01* |
X610237Y342707D01* |
X609741Y341483D01* |
X608331Y339250D01* |
X606549Y337301D01* |
X604450Y335698D01* |
X602101Y334491D01* |
X599575Y333720D01* |
X596953Y333407D01* |
X594316Y333563D01* |
X591749Y334183D01* |
X589332Y335247D01* |
X587142Y336723D01* |
X585247Y338562D01* |
X583707Y340708D01* |
X582571Y343092D01* |
X581875Y345639D01* |
X581640Y348270D01* |
X581875Y350901D01* |
X582571Y353448D01* |
X583707Y355832D01* |
X585247Y357978D01* |
X587142Y359817D01* |
X589332Y361293D01* |
X591749Y362357D01* |
X594316Y362977D01* |
X596953Y363133D01* |
X599575Y362820D01* |
X602101Y362049D01* |
X604450Y360842D01* |
X606549Y359239D01* |
X608331Y357290D01* |
X609741Y355057D01* |
X610237Y353833D01* |
X610568Y353539D01* |
X611003Y353623D01* |
X611200Y354021D01* |
Y374250D01* |
X611054Y374604D01* |
X610700Y374750D01* |
X304368D01* |
X304014Y374604D01* |
X303868Y374250D01* |
X304014Y373896D01* |
X311938Y365972D01* |
X312246Y365828D01* |
X313032Y365755D01* |
X314514Y365208D01* |
X315804Y364295D01* |
X316308Y363687D01* |
X316693Y363507D01* |
X317077Y363687D01* |
X317561Y364269D01* |
X318786Y365156D01* |
X320192Y365712D01* |
X321693Y365901D01* |
X323193Y365712D01* |
X324600Y365156D01* |
X325825Y364269D01* |
X326308Y363687D01* |
X326693Y363507D01* |
X327077Y363687D01* |
X327561Y364269D01* |
X328786Y365156D01* |
X330192Y365712D01* |
X331693Y365901D01* |
X333193Y365712D01* |
X334600Y365156D01* |
X335825Y364269D01* |
X336308Y363687D01* |
X336693Y363507D01* |
X337077Y363687D01* |
X337592Y364307D01* |
X338910Y365230D01* |
X340426Y365773D01* |
X342031Y365898D01* |
X343612Y365595D01* |
X345057Y364887D01* |
X346265Y363822D01* |
X347149Y362477D01* |
X347647Y360946D01* |
X347725Y359338D01* |
X347550Y358553D01* |
X347685Y358091D01* |
X352850Y352925D01* |
X353214Y352779D01* |
X353891Y352793D01* |
X355216Y352519D01* |
X356447Y351956D01* |
X357522Y351134D01* |
X357954Y350614D01* |
X358339Y350433D01* |
X358723Y350614D01* |
X359242Y351238D01* |
X360573Y352166D01* |
X362104Y352707D01* |
X363723Y352822D01* |
X365314Y352503D01* |
X366764Y351773D01* |
X367967Y350683D01* |
X368838Y349313D01* |
X369313Y347761D01* |
X369359Y346139D01* |
X368973Y344563D01* |
X368577Y343854D01* |
X368522Y343519D01* |
X368694Y343226D01* |
X369013Y343110D01* |
X377664D01* |
X377983Y343226D01* |
X378155Y343519D01* |
X378100Y343854D01* |
X377770Y344446D01* |
X377389Y345748D01* |
X377309Y347103D01* |
X377421Y347771D01* |
X377428Y347854D01* |
X377315Y348171D01* |
X377026Y348344D01* |
X376516Y348446D01* |
X375623Y348982D01* |
X374963Y349786D01* |
X374613Y350766D01* |
Y355760D01* |
X374494Y356083D01* |
X374194Y356253D01* |
X373668Y356340D01* |
X372740Y356865D01* |
X372050Y357678D01* |
X371682Y358680D01* |
Y365410D01* |
X372139Y366512D01* |
X372983Y367356D01* |
X374085Y367813D01* |
X379002D01* |
X379811Y367582D01* |
X380168Y367360D01* |
X380432Y367284D01* |
X380696Y367360D01* |
X381053Y367582D01* |
X381862Y367813D01* |
X386719D01* |
X387727Y367440D01* |
X388543Y366740D01* |
X388804Y366270D01* |
X388988Y366082D01* |
X389241Y366013D01* |
X394112D01* |
X394428Y366126D01* |
X395033Y366620D01* |
X396477Y367213D01* |
X398031Y367360D01* |
X399560Y367049D01* |
X400934Y366306D01* |
X402031Y365196D01* |
X402758Y363814D01* |
X402905Y363048D01* |
X403174Y362694D01* |
X403618D01* |
X403887Y363048D01* |
X404028Y363783D01* |
X404710Y365117D01* |
X405739Y366207D01* |
X407030Y366966D01* |
X408483Y367333D01* |
X409232Y367306D01* |
X409477Y367361D01* |
X409665Y367528D01* |
X409940Y367940D01* |
X410726Y368542D01* |
X411664Y368861D01* |
X416480D01* |
X417288Y368630D01* |
X417645Y368407D01* |
X417909Y368332D01* |
X418174Y368407D01* |
X418530Y368630D01* |
X419339Y368861D01* |
X424256D01* |
X425359Y368404D01* |
X426203Y367560D01* |
X426659Y366457D01* |
Y360261D01* |
X426497Y359206D01* |
X426659Y358151D01* |
Y356833D01* |
X426783Y356504D01* |
X427092Y356337D01* |
X427434Y356415D01* |
X427923Y356737D01* |
X429046Y357073D01* |
X441082D01* |
X442100Y356800D01* |
X443012Y356274D01* |
X447806Y351480D01* |
X448159Y351333D01* |
X449081D01* |
X449331Y351400D01* |
X449514Y351583D01* |
X449778Y352042D01* |
X450589Y352722D01* |
X451583Y353083D01* |
X457498D01* |
X457851Y353230D01* |
X457998Y353583D01* |
X457851Y353937D01* |
X457351Y354437D01* |
X456998Y354583D01* |
X451515D01* |
X450412Y355040D01* |
X449568Y355884D01* |
X449112Y356987D01* |
Y363680D01* |
X449568Y364783D01* |
X450412Y365627D01* |
X451515Y366083D01* |
X462708D01* |
X463811Y365627D01* |
X464655Y364783D01* |
X465112Y363680D01* |
Y358783D01* |
X465258Y358430D01* |
X465612Y358283D01* |
X468867D01* |
X469295Y358252D01* |
X469694Y358369D01* |
X469867Y358747D01* |
Y359880D01* |
X470323Y360983D01* |
X471167Y361827D01* |
X472270Y362283D01* |
X476397D01* |
X476750Y362430D01* |
X476897Y362783D01* |
Y363680D01* |
X477353Y364783D01* |
X478197Y365627D01* |
X479300Y366083D01* |
X490493D01* |
X491596Y365627D01* |
X492440Y364783D01* |
X492897Y363680D01* |
Y356987D01* |
X492440Y355884D01* |
X491596Y355040D01* |
X490493Y354583D01* |
X480155D01* |
X479868Y354493D01* |
X479685Y354255D01* |
X479489Y353826D01* |
X479435Y353491D01* |
X479607Y353199D01* |
X479926Y353083D01* |
X490493D01* |
X491596Y352627D01* |
X492440Y351783D01* |
X492897Y350680D01* |
Y343987D01* |
X492440Y342884D01* |
X491596Y342040D01* |
X490493Y341583D01* |
X479375D01* |
X478393Y341936D01* |
X477587Y342599D01* |
X477320Y343047D01* |
X477138Y343225D01* |
X476891Y343291D01* |
X476456D01* |
X475664Y343452D01* |
X475293Y343610D01* |
X475002Y343641D01* |
X474744Y343503D01* |
X470649Y339409D01* |
X470502Y339055D01* |
X470649Y338701D01* |
X471002Y338555D01* |
X529317D01* |
X547195D01* |
X548213Y338282D01* |
X549125Y337756D01* |
X553370Y333511D01* |
X553896Y332599D01* |
X554169Y331582D01* |
Y148629D01* |
X553893Y147607D01* |
X553362Y146692D01* |
X518287Y111892D01* |
X518139Y111539D01* |
X518285Y111184D01* |
X518639Y111037D01* |
X530766D01* |
X531120Y111184D01* |
X557902Y137966D01* |
X558048Y138319D01* |
Y155522D01* |
X558355Y156666D01* |
X558947Y157692D01* |
X571486Y170231D01* |
X571632Y170584D01* |
Y175360D01* |
X572089Y176462D01* |
X572933Y177306D01* |
X574035Y177763D01* |
X584095D01* |
X584449Y177909D01* |
X584595Y178263D01* |
Y178763D01* |
X584449Y179117D01* |
X584095Y179263D01* |
X574035D01* |
X572933Y179720D01* |
X572089Y180564D01* |
X571632Y181666D01* |
Y188360D01* |
X572089Y189462D01* |
X572933Y190306D01* |
X574035Y190763D01* |
X583909D01* |
X584263Y190909D01* |
X584409Y191263D01* |
X584345Y191928D01* |
Y196424D01* |
X584802Y197527D01* |
X585646Y198371D01* |
X586749Y198828D01* |
X593484D01* |
X594495Y198453D01* |
X594903Y198101D01* |
X595334Y197991D01* |
X595682Y198267D01* |
X596473Y199392D01* |
X598378Y201297D01* |
X598524Y201650D01* |
Y206451D01* |
X598351Y206829D01* |
X597953Y206946D01* |
X597443Y206910D01* |
X572797D01* |
X571881Y207155D01* |
X571060Y207629D01* |
X570096Y208594D01* |
X569742Y208740D01* |
X566923D01* |
X566569Y208594D01* |
X566423Y208240D01* |
Y200743D01* |
X565967Y199954D01* |
X565178Y199499D01* |
X561222D01* |
X560433Y199954D01* |
X559977Y200743D01* |
Y208241D01* |
X559839Y208586D01* |
X559501Y208741D01* |
X559301Y208750D01* |
X559025Y209040D01* |
Y229230D01* |
X558874Y229588D01* |
X558299Y230147D01* |
X558121Y230259D01* |
X557541Y230469D01* |
X556561Y231218D01* |
X555853Y232228D01* |
X555481Y233404D01* |
Y255612D01* |
X555754Y256629D01* |
X556281Y257541D01* |
X571316Y272576D01* |
X572509Y273162D01* |
X573168Y273246D01* |
X573511Y273451D01* |
X573764Y273759D01* |
X573900Y274101D01* |
Y294530D01* |
X573900D01* |
X573915Y313093D01* |
X573775Y313439D01* |
X573264Y313971D01* |
X572542Y315259D01* |
X572169Y316688D01* |
Y318253D01* |
X572635Y319839D01* |
X573529Y321230D01* |
X574778Y322313D01* |
X576282Y323000D01* |
X577919Y323235D01* |
X579555Y323000D01* |
X581060Y322313D01* |
X582309Y321230D01* |
X583203Y319839D01* |
X583669Y318253D01* |
Y316686D01* |
X583294Y315255D01* |
X582569Y313965D01* |
X582055Y313432D01* |
X581915Y313085D01* |
X581900Y294526D01* |
Y288348D01* |
X582062Y287980D01* |
X582443Y287850D01* |
X582703Y287862D01* |
X589300D01* |
X590403Y287405D01* |
X591247Y286561D01* |
X591703Y285458D01* |
Y278258D01* |
X591236Y277145D01* |
X590375Y276299D01* |
X589814Y276075D01* |
X589586Y275891D01* |
X589500Y275611D01* |
Y274101D01* |
X589635Y273759D01* |
X590028Y273341D01* |
X590450Y272276D01* |
Y266604D01* |
X590417Y266161D01* |
X590533Y265761D01* |
X590911Y265587D01* |
X594944D01* |
X596046Y265131D01* |
X596890Y264287D01* |
X597347Y263184D01* |
Y260924D01* |
X597573Y260506D01* |
X598047Y260466D01* |
X598597Y260705D01* |
X599788Y260841D01* |
X600968Y260622D01* |
X602031Y260066D01* |
X606347Y255803D01* |
X606699Y255658D01* |
X608241D01* |
X608534Y255365D01* |
Y253851D01* |
X608683Y253495D01* |
X631571Y230886D01* |
X632106Y229969D01* |
X632383Y228944D01* |
Y186885D01* |
X632110Y185867D01* |
X631584Y184955D01* |
X615512Y168884D01* |
X614600Y168357D01* |
X613583Y168085D01* |
X595093D01* |
X594750Y167949D01* |
X594333Y167557D01* |
X593268Y167135D01* |
X587595D01* |
X587085Y167178D01* |
X586662Y167054D01* |
X586247Y166672D01* |
X585196Y166263D01* |
X580453D01* |
X580100Y166117D01* |
X567195Y153212D01* |
X567048Y152858D01* |
Y135656D01* |
X566742Y134511D01* |
X566149Y133485D01* |
X538768Y106104D01* |
X538621Y105750D01* |
X538768Y105396D01* |
X539121Y105250D01* |
X610700D01* |
X611054Y105396D01* |
X611200Y105750D01* |
Y125979D01* |
X611003Y126377D01* |
X610568Y126461D01* |
X610237Y126167D01* |
X609741Y124943D01* |
X608331Y122710D01* |
X606549Y120761D01* |
X604450Y119158D01* |
X602101Y117951D01* |
X599575Y117180D01* |
X596953Y116867D01* |
X594316Y117023D01* |
X591749Y117643D01* |
X589332Y118707D01* |
X587142Y120183D01* |
X585247Y122022D01* |
X583707Y124168D01* |
X582571Y126552D01* |
X581875Y129099D01* |
X581640Y131730D01* |
X581875Y134361D01* |
X582571Y136908D01* |
X583707Y139292D01* |
X585247Y141438D01* |
X587142Y143277D01* |
X589332Y144753D01* |
X591749Y145817D01* |
X594316Y146437D01* |
X596953Y146593D01* |
X599575Y146280D01* |
X602101Y145509D01* |
X604450Y144302D01* |
X606549Y142699D01* |
X608331Y140750D01* |
X609741Y138517D01* |
X610237Y137293D01* |
X610568Y136999D01* |
X611003Y137083D01* |
X611200Y137481D01* |
Y150047D01* |
X611657Y151149D01* |
X612501Y151993D01* |
X613603Y152450D01* |
X648100D01* |
X648454Y152596D01* |
X648600Y152950D01* |
Y233045D01* |
G37* |
G74* |
* |
* |
G04 PC Copper Outlines (1)* |
G04 Layer Name GMC01A.pcb - dark (1)* |
%LPD*% |
* |
* |
G04 PC Area=ANP000029* |
G75* |
G36* |
G01* |
X300379Y111593D02* |
X300354Y112039D01* |
Y116078D01* |
X300276Y116345D01* |
X300068Y116529D01* |
X299553Y116774D01* |
X298773Y117607D01* |
X298354Y118669D01* |
Y125240D01* |
X298472Y126140D01* |
X298325Y126493D01* |
X297972Y126640D01* |
X291740D01* |
X290685Y126982D01* |
X289788Y127634D01* |
X289136Y128531D01* |
X288794Y129585D01* |
Y149375D01* |
X289007Y150219D01* |
X289214Y150602D01* |
X289274Y150840D01* |
X289214Y151077D01* |
X289007Y151460D01* |
X288794Y152305D01* |
Y154894D01* |
X289136Y155949D01* |
X289788Y156846D01* |
X290685Y157497D01* |
X291740Y157840D01* |
X297972D01* |
X298325Y157986D01* |
X298472Y158340D01* |
X298354Y159240D01* |
Y165691D01* |
X298620Y166555D01* |
X298874Y166928D01* |
X298961Y167209D01* |
X298814Y167563D01* |
X298461Y167709D01* |
X246475D01* |
X246092Y167531D01* |
X245140Y166396D01* |
X242892Y164469D01* |
X240359Y162936D01* |
X237609Y161836D01* |
X234717Y161200D01* |
X231760Y161045D01* |
X228817Y161375D01* |
X225968Y162182D01* |
X223289Y163442D01* |
X220851Y165124D01* |
X218721Y167181D01* |
X216956Y169558D01* |
X215602Y172192D01* |
X214697Y175011D01* |
X214264Y177941D01* |
X214316Y180901D01* |
X214851Y183814D01* |
X215854Y186600D01* |
X217298Y189185D01* |
X219146Y191499D01* |
X220246Y192490D01* |
X220411Y192861D01* |
Y286298D01* |
X220237Y286678D01* |
X219074Y287673D01* |
X217100Y290010D01* |
X215528Y292635D01* |
X214400Y295479D01* |
X213744Y298468D01* |
X213578Y301523D01* |
X213905Y304565D01* |
X214719Y307514D01* |
X215997Y310294D01* |
X217705Y312832D01* |
X219800Y315062D01* |
X222227Y316925D01* |
X224922Y318373D01* |
X227815Y319368D01* |
X230831Y319885D01* |
X232361Y319897D01* |
X232712Y320045D01* |
X232857Y320397D01* |
Y348157D01* |
X232718Y348502D01* |
X232430Y348828D01* |
X232043Y349011D01* |
X231160D01* |
X230818Y348875D01* |
X230400Y348483D01* |
X229335Y348061D01* |
X223066D01* |
X221963Y348518D01* |
X221119Y349362D01* |
X220663Y350464D01* |
Y355381D01* |
X220894Y356190D01* |
X221116Y356547D01* |
X221192Y356811D01* |
X221116Y357075D01* |
X220894Y357432D01* |
X220663Y358240D01* |
Y361292D01* |
X220516Y361645D01* |
X220163Y361792D01* |
X213196D01* |
X212842Y361645D01* |
X212696Y361292D01* |
X212857Y359854D01* |
Y359002D01* |
X212383Y357366D01* |
X211472Y355927D01* |
X210197Y354797D01* |
X208659Y354067D01* |
X206977Y353795D01* |
X205287Y354000D01* |
X203720Y354668D01* |
X202401Y355746D01* |
X201434Y357148D01* |
X200895Y358764D01* |
X200828Y360466D01* |
X201236Y362119D01* |
X202088Y363594D01* |
X202703Y364183D01* |
X202857Y364544D01* |
Y366332D01* |
X202886Y366820D01* |
X202765Y367212D01* |
X202390Y367381D01* |
X201170D01* |
X200817Y367234D01* |
X198496Y364913D01* |
X198349Y364560D01* |
Y176639D01* |
X198496Y176286D01* |
X263686Y111184D01* |
X264039Y111037D01* |
X299882D01* |
X300255Y111204D01* |
X300379Y111593D01* |
G37* |
G74* |
* |
* |
G04 PC Copper Outlines (2)* |
G04 Layer Name GMC01A.pcb - dark (2)* |
%LPD*% |
* |
* |
G04 PC Area=ANP000019* |
G75* |
G36* |
G01* |
X398255Y321331D02* |
X388422D01* |
X388068Y321184D01* |
X387922Y320831D01* |
X388031Y320519D01* |
X388452Y319991D01* |
X389038Y318773D01* |
X389339Y317455D01* |
Y316780D01* |
X389274Y315868D01* |
X389381Y315559D01* |
X391499Y312861D01* |
X391892Y312670D01* |
X397933D01* |
X398263Y312794D01* |
X398429Y313104D01* |
X398349Y313447D01* |
X397926Y314080D01* |
X397424Y315517D01* |
X397296Y317034D01* |
X397551Y318535D01* |
X398172Y319924D01* |
X398646Y320519D01* |
X398754Y320868D01* |
X398595Y321197D01* |
X398255Y321331D01* |
G37* |
G74* |
* |
* |
G04 PC Copper Outlines (3)* |
G04 Layer Name GMC01A.pcb - dark (3)* |
%LPD*% |
* |
* |
G04 PC Area=ANP000016* |
G75* |
G36* |
G01* |
X378185Y116925D02* |
X377843Y117208D01* |
X377351Y117946D01* |
X377094Y118796D01* |
Y125240D01* |
X377212Y126140D01* |
X377065Y126493D01* |
X376712Y126640D01* |
X370440D01* |
X369385Y126982D01* |
X368488Y127634D01* |
X367836Y128531D01* |
X367494Y129585D01* |
Y149375D01* |
X367707Y150219D01* |
X367914Y150602D01* |
X367974Y150840D01* |
X367914Y151077D01* |
X367707Y151460D01* |
X367494Y152305D01* |
Y154894D01* |
X367836Y155949D01* |
X368488Y156846D01* |
X369385Y157497D01* |
X370440Y157840D01* |
X376712D01* |
X377065Y157986D01* |
X377212Y158340D01* |
X377094Y159240D01* |
Y165691D01* |
X377360Y166555D01* |
X377614Y166928D01* |
X377701Y167209D01* |
X377554Y167563D01* |
X377201Y167709D01* |
X310247D01* |
X309917Y167584D01* |
X309751Y167272D01* |
X309834Y166928D01* |
X310088Y166555D01* |
X310354Y165691D01* |
Y159240D01* |
X310236Y158340D01* |
X310383Y157986D01* |
X310736Y157840D01* |
X317048D01* |
X318103Y157497D01* |
X319000Y156846D01* |
X319651Y155949D01* |
X319994Y154894D01* |
Y152305D01* |
X319781Y151460D01* |
X319574Y151077D01* |
X319514Y150840D01* |
X319574Y150602D01* |
X319781Y150219D01* |
X319994Y149375D01* |
Y129585D01* |
X319651Y128531D01* |
X319000Y127634D01* |
X318103Y126982D01* |
X317048Y126640D01* |
X310736D01* |
X310383Y126493D01* |
X310236Y126140D01* |
X310354Y125240D01* |
Y118796D01* |
X310097Y117946D01* |
X309605Y117208D01* |
X309262Y116925D01* |
X309081Y116539D01* |
X309227Y116186D01* |
X309581Y116039D01* |
X377867D01* |
X378232Y116197D01* |
X378366Y116571D01* |
X378185Y116925D01* |
G37* |
G74* |
* |
* |
G04 PC Copper Outlines (4)* |
G04 Layer Name GMC01A.pcb - dark (4)* |
%LPD*% |
* |
* |
G04 PC Area=ANP000013* |
G75* |
G36* |
G01* |
X456441Y167209D02* |
X456294Y167563D01* |
X455941Y167709D01* |
X388987D01* |
X388657Y167584D01* |
X388491Y167272D01* |
X388574Y166928D01* |
X388828Y166555D01* |
X389094Y165691D01* |
Y159240D01* |
X388976Y158340D01* |
X389123Y157986D01* |
X389476Y157840D01* |
X395748D01* |
X396803Y157497D01* |
X397700Y156846D01* |
X398351Y155949D01* |
X398694Y154894D01* |
Y152305D01* |
X398481Y151460D01* |
X398274Y151077D01* |
X398214Y150840D01* |
X398274Y150602D01* |
X398481Y150219D01* |
X398694Y149375D01* |
Y129585D01* |
X398351Y128531D01* |
X397700Y127634D01* |
X396803Y126982D01* |
X395748Y126640D01* |
X389476D01* |
X389123Y126493D01* |
X388976Y126140D01* |
X389094Y125240D01* |
Y120666D01* |
X389240Y120312D01* |
X389594Y120166D01* |
X455334D01* |
X455687Y120312D01* |
X455834Y120666D01* |
Y125240D01* |
X455952Y126140D01* |
X455805Y126493D01* |
X455452Y126640D01* |
X449140D01* |
X448085Y126982D01* |
X447188Y127634D01* |
X446536Y128531D01* |
X446194Y129585D01* |
Y149375D01* |
X446407Y150219D01* |
X446614Y150602D01* |
X446674Y150840D01* |
X446614Y151077D01* |
X446407Y151460D01* |
X446194Y152305D01* |
Y154894D01* |
X446536Y155949D01* |
X447188Y156846D01* |
X448085Y157497D01* |
X449140Y157840D01* |
X455452D01* |
X455805Y157986D01* |
X455952Y158340D01* |
X455834Y159240D01* |
Y165691D01* |
X456100Y166555D01* |
X456354Y166928D01* |
X456441Y167209D01* |
G37* |
G74* |
* |
* |
G04 PC Copper Outlines (5)* |
G04 Layer Name GMC01A.pcb - dark (5)* |
%LPD*% |
* |
* |
G04 PC Area=ANP000008* |
G75* |
G36* |
G01* |
X539291Y164859D02* |
X539157Y165199D01* |
X538827Y165357D01* |
X538477Y165248D01* |
X537401Y164379D01* |
X535009Y162994D01* |
X532431Y161992D01* |
X529731Y161398D01* |
X526971Y161226D01* |
X524218Y161480D01* |
X521536Y162153D01* |
X518990Y163230D01* |
X516639Y164685D01* |
X514539Y166484D01* |
X513640Y167534D01* |
X513260Y167709D01* |
X467727D01* |
X467397Y167584D01* |
X467231Y167272D01* |
X467314Y166928D01* |
X467568Y166555D01* |
X467834Y165691D01* |
Y159240D01* |
X467716Y158340D01* |
X467863Y157986D01* |
X468216Y157840D01* |
X474448D01* |
X475503Y157497D01* |
X476400Y156846D01* |
X477051Y155949D01* |
X477394Y154894D01* |
Y152305D01* |
X477181Y151460D01* |
X476974Y151077D01* |
X476914Y150840D01* |
X476974Y150602D01* |
X477181Y150219D01* |
X477394Y149375D01* |
Y129540D01* |
X476994Y128408D01* |
X476240Y127474D01* |
X475728Y127159D01* |
X475554Y126977D01* |
X475490Y126733D01* |
X475637Y126380D01* |
X475990Y126233D01* |
X506494Y126219D01* |
X506847Y126365D01* |
X539144Y158581D01* |
X539291Y158935D01* |
Y164859D01* |
G37* |
G74* |
* |
* |
G04 PC Copper Outlines (6)* |
G04 Layer Name GMC01A.pcb - dark (6)* |
%LPD*% |
* |
* |
G04 PC Area=ANP000003* |
G75* |
G36* |
G01* |
X578566Y256837D02* |
X578491Y257102D01* |
X578268Y257458D01* |
X578037Y258267D01* |
Y262587D01* |
X578070Y263030D01* |
X577954Y263430D01* |
X577576Y263604D01* |
X575576D01* |
X574852Y263787D01* |
X574523Y263965D01* |
X574213Y264019D01* |
X573932Y263878D01* |
X566565Y256512D01* |
X566419Y256158D01* |
X566565Y255805D01* |
X566919Y255658D01* |
X577739D01* |
X578027Y255750D01* |
X578210Y255991D01* |
X578491Y256573D01* |
X578566Y256837D01* |
G37* |
G74* |
* |
* |
G04 PC Copper Outlines (7)* |
G04 Layer Name GMC01A.pcb - dark (7)* |
%LPD*% |
* |
* |
G04 PC Area=ANP000000* |
G75* |
G36* |
G01* |
X624383Y226533D02* |
X624234Y226889D01* |
X609386Y241556D01* |
X609032Y241700D01* |
X608680Y241553D01* |
X608534Y241200D01* |
Y239042D01* |
X608681Y238688D01* |
X610502Y236867D01* |
X611028Y235955D01* |
X611301Y234938D01* |
Y194747D01* |
X611468Y194374D01* |
X612116Y193795D01* |
X613046Y192326D01* |
X613540Y190658D01* |
X613561Y188920D01* |
X613106Y187241D01* |
X612210Y185751D01* |
X610941Y184561D01* |
X609396Y183764D01* |
X607692Y183418D01* |
X605958Y183550D01* |
X605142Y183851D01* |
X604738Y183825D01* |
X604486Y183509D01* |
X604549Y183110D01* |
X605000Y182413D01* |
X605506Y180832D01* |
X605582Y179173D01* |
X605223Y177552D01* |
X604838Y176817D01* |
X604791Y176484D01* |
X604965Y176197D01* |
X605281Y176085D01* |
X611192D01* |
X611546Y176231D01* |
X624236Y188922D01* |
X624383Y189275D01* |
Y226533D01* |
G37* |
G74* |
* |
* |
G04 PC Copper Outlines (8)* |
G04 Layer Name GMC01A.pcb - dark (8)* |
%LPD*% |
* |
* |
G04 PC Area=CFC0* |
G75* |
G36* |
G01* |
X395194Y154340D02* |
X370994D01* |
Y152740D01* |
X395194D01* |
Y154340D01* |
G37* |
G74* |
* |
* |
G04 PC Copper Outlines (9)* |
G04 Layer Name GMC01A.pcb - dark (9)* |
%LPD*% |
* |
* |
G04 PC Area=CFC1* |
G75* |
G36* |
G01* |
X395194Y131740D02* |
X370994D01* |
Y130140D01* |
X395194D01* |
Y131740D01* |
G37* |
G74* |
* |
* |
G04 PC Copper Outlines (10)* |
G04 Layer Name GMC01A.pcb - dark (10)* |
%LPD*% |
* |
* |
G04 PC Area=CFC2* |
G75* |
G36* |
G01* |
X383994Y148940D02* |
X382094D01* |
Y125240D01* |
X383994D01* |
Y148940D01* |
G37* |
G74* |
* |
* |
G04 PC Copper Outlines (11)* |
G04 Layer Name GMC01A.pcb - dark (11)* |
%LPD*% |
* |
* |
G04 PC Area=CFC3* |
G75* |
G36* |
G01* |
X389694Y153740D02* |
X387694D01* |
Y135540D01* |
X389694D01* |
Y153740D01* |
G37* |
G74* |
* |
* |
G04 PC Copper Outlines (12)* |
G04 Layer Name GMC01A.pcb - dark (12)* |
%LPD*% |
* |
* |
G04 PC Area=CFC4* |
G75* |
G36* |
G01* |
X395194Y148940D02* |
X393294D01* |
Y130740D01* |
X395194D01* |
Y148940D01* |
G37* |
G74* |
* |
* |
G04 PC Copper Outlines (13)* |
G04 Layer Name GMC01A.pcb - dark (13)* |
%LPD*% |
* |
* |
G04 PC Area=CFC5* |
G75* |
G36* |
G01* |
X378494Y153740D02* |
X376494D01* |
Y135540D01* |
X378494D01* |
Y153740D01* |
G37* |
G74* |
* |
* |
G04 PC Copper Outlines (14)* |
G04 Layer Name GMC01A.pcb - dark (14)* |
%LPD*% |
* |
* |
G04 PC Area=CFC6* |
G75* |
G36* |
G01* |
X372894Y148940D02* |
X370994D01* |
Y130740D01* |
X372894D01* |
Y148940D01* |
G37* |
G74* |
* |
* |
G04 PC Copper Outlines (15)* |
G04 Layer Name GMC01A.pcb - dark (15)* |
%LPD*% |
* |
* |
G04 PC Area=CFC7* |
G75* |
G36* |
G01* |
X294194Y148940D02* |
X292294D01* |
Y130740D01* |
X294194D01* |
Y148940D01* |
G37* |
G74* |
* |
* |
G04 PC Copper Outlines (16)* |
G04 Layer Name GMC01A.pcb - dark (16)* |
%LPD*% |
* |
* |
G04 PC Area=CFC8* |
G75* |
G36* |
G01* |
X299794Y153740D02* |
X297794D01* |
Y135540D01* |
X299794D01* |
Y153740D01* |
G37* |
G74* |
* |
* |
G04 PC Copper Outlines (17)* |
G04 Layer Name GMC01A.pcb - dark (17)* |
%LPD*% |
* |
* |
G04 PC Area=CFC9* |
G75* |
G36* |
G01* |
X316494Y148940D02* |
X314594D01* |
Y130740D01* |
X316494D01* |
Y148940D01* |
G37* |
G74* |
* |
* |
G04 PC Copper Outlines (18)* |
G04 Layer Name GMC01A.pcb - dark (18)* |
%LPD*% |
* |
* |
G04 PC Area=CFC10* |
G75* |
G36* |
G01* |
X310994Y153740D02* |
X308994D01* |
Y135540D01* |
X310994D01* |
Y153740D01* |
G37* |
G74* |
* |
* |
G04 PC Copper Outlines (19)* |
G04 Layer Name GMC01A.pcb - dark (19)* |
%LPD*% |
* |
* |
G04 PC Area=CFC11* |
G75* |
G36* |
G01* |
X305394Y148940D02* |
X303394D01* |
Y125240D01* |
X305394D01* |
Y148940D01* |
G37* |
G74* |
* |
* |
G04 PC Copper Outlines (20)* |
G04 Layer Name GMC01A.pcb - dark (20)* |
%LPD*% |
* |
* |
G04 PC Area=CFC12* |
G75* |
G36* |
G01* |
X316494Y131740D02* |
X292294D01* |
Y130140D01* |
X316494D01* |
Y131740D01* |
G37* |
G74* |
* |
* |
G04 PC Copper Outlines (21)* |
G04 Layer Name GMC01A.pcb - dark (21)* |
%LPD*% |
* |
* |
G04 PC Area=CFC13* |
G75* |
G36* |
G01* |
X316494Y154340D02* |
X292294D01* |
Y152740D01* |
X316494D01* |
Y154340D01* |
G37* |
G74* |
* |
* |
G04 PC Copper Outlines (22)* |
G04 Layer Name GMC01A.pcb - dark (22)* |
%LPD*% |
* |
* |
G04 PC Area=CFC14* |
G75* |
G36* |
G01* |
X451594Y148940D02* |
X449694D01* |
Y130740D01* |
X451594D01* |
Y148940D01* |
G37* |
G74* |
* |
* |
G04 PC Copper Outlines (23)* |
G04 Layer Name GMC01A.pcb - dark (23)* |
%LPD*% |
* |
* |
G04 PC Area=CFC15* |
G75* |
G36* |
G01* |
X457194Y153740D02* |
X455194D01* |
Y135540D01* |
X457194D01* |
Y153740D01* |
G37* |
G74* |
* |
* |
G04 PC Copper Outlines (24)* |
G04 Layer Name GMC01A.pcb - dark (24)* |
%LPD*% |
* |
* |
G04 PC Area=CFC16* |
G75* |
G36* |
G01* |
X473894Y148940D02* |
X471994D01* |
Y130740D01* |
X473894D01* |
Y148940D01* |
G37* |
G74* |
* |
* |
G04 PC Copper Outlines (25)* |
G04 Layer Name GMC01A.pcb - dark (25)* |
%LPD*% |
* |
* |
G04 PC Area=CFC17* |
G75* |
G36* |
G01* |
X468394Y153740D02* |
X466394D01* |
Y135540D01* |
X468394D01* |
Y153740D01* |
G37* |
G74* |
* |
* |
G04 PC Copper Outlines (26)* |
G04 Layer Name GMC01A.pcb - dark (26)* |
%LPD*% |
* |
* |
G04 PC Area=CFC18* |
G75* |
G36* |
G01* |
X462794Y148940D02* |
X460794D01* |
Y125240D01* |
X462794D01* |
Y148940D01* |
G37* |
G74* |
* |
* |
G04 PC Copper Outlines (27)* |
G04 Layer Name GMC01A.pcb - dark (27)* |
%LPD*% |
* |
* |
G04 PC Area=CFC19* |
G75* |
G36* |
G01* |
X473894Y131740D02* |
X449694D01* |
Y130140D01* |
X473894D01* |
Y131740D01* |
G37* |
G74* |
* |
* |
G04 PC Copper Outlines (28)* |
G04 Layer Name GMC01A.pcb - dark (28)* |
%LPD*% |
* |
* |
G04 PC Area=CFC20* |
G75* |
G36* |
G01* |
X473894Y154340D02* |
X449694D01* |
Y152740D01* |
X473894D01* |
Y154340D01* |
G37* |
G74* |
* |
* |
G04 PC Copper Outlines (29)* |
G04 Layer Name GMC01A.pcb - dark (29)* |
%LPD*% |
* |
* |
G04 PC Area=CFC21* |
G75* |
G36* |
G01* |
X384094Y159240D02* |
X382094D01* |
Y154840D01* |
X384094D01* |
Y159240D01* |
G37* |
G74* |
* |
* |
G04 PC Copper Outlines (30)* |
G04 Layer Name GMC01A.pcb - dark (30)* |
%LPD*% |
* |
* |
G04 PC Area=CFC22* |
G75* |
G36* |
G01* |
X305394Y159540D02* |
X303394D01* |
Y154740D01* |
X305394D01* |
Y159540D01* |
G37* |
G74* |
* |
* |
G04 PC Copper Outlines (31)* |
G04 Layer Name GMC01A.pcb - dark (31)* |
%LPD*% |
* |
* |
G04 PC Area=CFC23* |
G75* |
G36* |
G01* |
X462794Y159240D02* |
X460794D01* |
Y154540D01* |
X462794D01* |
Y159240D01* |
G37* |
G74* |
* |
* |
G04 PC Copper Outlines (32)* |
G04 Layer Name GMC01A.pcb - dark (32)* |
%LPD*% |
* |
* |
G04 PC Area=Custom_Thermal* |
* |
G04 PC Custom Flashes* |
G04 Layer Name GMC01A.pcb - flashes* |
%LPD*% |
* |
* |
G04 PC Circuitry* |
G04 Layer Name GMC01A.pcb - circuitry* |
%LPD*% |
* |
G54D10* |
G01X376632Y361163D02* |
Y362863D01* |
X384232Y361163D02* |
Y362863D01* |
X379563Y353236D02* |
Y354936D01* |
X387163Y353236D02* |
Y354936D01* |
X421709Y363911D02* |
Y362211D01* |
X414109Y363911D02* |
Y362211D01* |
X421709Y356201D02* |
Y354501D01* |
X414109Y356201D02* |
Y354501D01* |
X589295Y193878D02* |
X590995D01* |
X589295Y186278D02* |
X590995D01* |
X590697Y260637D02* |
X592397D01* |
X590697Y253037D02* |
X592397D01* |
X582987Y260637D02* |
X584687D01* |
X582987Y253037D02* |
X584687D01* |
X589545Y179685D02* |
X590745D01* |
X589545Y172085D02* |
X590745D01* |
X225613Y360611D02* |
X226813D01* |
X225613Y353011D02* |
X226813D01* |
X585500Y269754D02* |
Y268554D01* |
X577900Y269754D02* |
Y268554D01* |
X623762Y273560D02* |
X622562D01* |
X623762Y281160D02* |
X622562D01* |
X392031Y304913D02* |
Y306613D01* |
X399631Y304913D02* |
Y306613D01* |
G54D11* |
X246857Y359854D03* |
X236857D03* |
X216857D03* |
X206857D03* |
X585703Y291862D03* |
X615703D03* |
Y281862D03* |
X301693Y359854D03* |
X311693D03* |
X321693D03* |
X331693D03* |
X341693D03* |
X351693D03* |
X313339Y346780D03* |
X323339D03* |
X333339D03* |
X343339D03* |
X353339D03* |
X363339D03* |
X373339D03* |
X383339D03* |
X393339D03* |
X403339D03* |
X413339D03* |
X423339D03* |
X433339D03* |
Y316780D03* |
X423339D03* |
X413339D03* |
X403339D03* |
X393339D03* |
X383339D03* |
X373339D03* |
X363339D03* |
X353339D03* |
X343339D03* |
X333339D03* |
X323339D03* |
X313339D03* |
X303339D03* |
G54D12* |
X254000Y302500D03* |
G54D13* |
X163490Y348270D03* |
Y131730D03* |
X596510Y348270D03* |
Y131730D03* |
G54D17* |
X304354Y122240D02* |
Y112039D01* |
X512755* |
X550169Y149159* |
Y331055* |
X383094Y122240D02* |
Y116166D01* |
X509729* |
X546593Y153343* |
X461834Y122240D02* |
X508354Y122218D01* |
X543291Y157068* |
X304354Y162240D02* |
X383094D01* |
X461834* |
X462094Y162500* |
X515000* |
X582500D02* |
X616517D01* |
X618301Y160716* |
X590145Y172085D02* |
X613056D01* |
X628383Y187411* |
X579632Y172013D02* |
X579704Y172085D01* |
X590145* |
X618301Y160716D02* |
X631964Y174379D01* |
Y230564* |
X590145Y179685D02* |
X590177Y179716D01* |
X599301* |
X590145Y179685D02* |
Y186278D01* |
X579632Y185013D02* |
Y190378D01* |
X583132Y193878* |
X590145* |
X579632Y185013D02* |
X581281D01* |
X607301Y179716D02* |
X618301Y190716D01* |
Y208716* |
X599301Y189716D02* |
Y196563D01* |
X602524Y199786* |
Y232484* |
X559481Y234020D02* |
Y255085D01* |
X573674Y269278* |
X577775* |
X577900Y269154* |
X571171Y253343D02* |
X578355Y260527D01* |
X583727* |
X583837Y260637* |
X602920Y238792D02* |
X607301Y234411D01* |
Y189716* |
X577900Y269154D02* |
Y294527D01* |
X577919Y317426* |
X585500Y269154D02* |
Y281658D01* |
X585703Y281862* |
X583837Y260637D02* |
X591547D01* |
X591553Y260643* |
X591547Y260637D02* |
X601891D01* |
X631964Y230564* |
X599646Y256799D02* |
X628383Y228413D01* |
Y187411* |
X623162Y273560D02* |
X625409Y271313D01* |
X632664* |
X585703Y291862D02* |
X591553Y286012D01* |
Y260643* |
X615703Y281862D02* |
X632481D01* |
X632664Y281679* |
X615703Y291862D02* |
X632481D01* |
X632664Y292045* |
X623162Y281160D02* |
Y281430D01* |
X623594Y281862* |
X632481* |
X632664Y281679* |
X254000Y302500D02* |
Y334912D01* |
X257500Y338412* |
X294473* |
X264000Y302500D02* |
X264061Y293859D01* |
X283840Y309979D02* |
X284000Y309819D01* |
Y302500* |
X246828Y316718D02* |
X246857D01* |
Y359854* |
X260192Y330506D02* |
Y313607D01* |
X263692Y310107* |
X266393* |
X274000Y302500* |
X260192Y330506D02* |
X263709Y333001D01* |
X318909* |
X325017Y339110* |
X464694* |
X474867Y349283* |
X267263Y316716D02* |
X274161Y323666D01* |
X299839* |
X303339Y320199* |
Y316780* |
X267121Y326028D02* |
X268049Y328607D01* |
X304190* |
X313339Y316780* |
X293803Y316747D02* |
X294000Y315747D01* |
Y302500* |
X303339Y316780D02* |
Y303161D01* |
X304000Y302500* |
X313339Y316780D02* |
X331292Y334555D01* |
X529317* |
X546669* |
X550169Y331055* |
X323339Y316780D02* |
X337069Y330153D01* |
X526531* |
X543361Y330186* |
X546593Y326686* |
Y153343* |
X333339Y316780D02* |
X341746Y325331D01* |
X539791* |
X543291Y321831* |
Y157068* |
X343339Y316780D02* |
Y313161D01* |
X354000Y302500* |
X353339Y316780D02* |
Y313161D01* |
X364000Y302500* |
X363339Y316780D02* |
Y313161D01* |
X374000Y302500* |
X373339Y316780D02* |
Y313161D01* |
X384000Y302500* |
X383339Y316780D02* |
X391363Y306554D01* |
X393339Y316780D02* |
X399631Y310487D01* |
Y305763* |
X403339Y316780D02* |
X410000Y310118D01* |
Y309979* |
X413339Y316780D02* |
X426152Y303967D01* |
X464006* |
X477539Y317500* |
X515000* |
X423339Y316780D02* |
X430538Y309581D01* |
X457160* |
Y316491* |
X433339Y316780D02* |
X446074D01* |
X446363Y316491* |
X553671Y323606D02* |
Y204631D01* |
X572420Y185882* |
X578763* |
X579632Y185013* |
X553671Y323606D02* |
Y324238D01* |
X553754Y324931* |
X582203Y324886* |
X585703Y321386* |
Y291862* |
X202055Y337278D02* |
Y176726D01* |
X216740Y162041* |
X304155* |
X304354Y162240* |
X202055Y337278D02* |
X216857Y352079D01* |
Y359854* |
X236857Y352972D02* |
Y318047D01* |
X245662Y309241* |
Y297359* |
X249162Y293859* |
X264061* |
X236857Y352972D02* |
Y318047D01* |
X245662Y309241* |
Y297359* |
X249162Y293859* |
X388531* |
X392031Y297359* |
Y305763* |
X236876Y352475D02* |
X237329D01* |
X226213Y353011D02* |
X236818D01* |
X236857Y352972* |
Y359854* |
X294473Y338412D02* |
X317463D01* |
X323339Y346780* |
X293692Y338510D02* |
Y338939D01* |
X294473Y338412* |
X291693Y352475D02* |
Y359854D01* |
X373339Y346780D02* |
Y362155D01* |
X376490* |
X376632Y362013* |
X393339Y346780D02* |
Y350849D01* |
X397749Y355260* |
X383339Y346780D02* |
Y361120D01* |
X384232Y362013* |
X387163Y354086D02* |
X393339Y347911D01* |
Y346780* |
X409043Y355260D02* |
X414018D01* |
X414109Y355351* |
X413339Y346780D02* |
Y354580D01* |
X414109Y355351* |
X403339Y346780D02* |
Y356355D01* |
X409043Y362060* |
X423339Y346780D02* |
X429632Y353073D01* |
X440556* |
X446295Y347333* |
X457112* |
X474867Y349283D02* |
X476859Y347291D01* |
X484854* |
X484897Y347333* |
X206857Y359854D02* |
Y366332D01* |
X226242* |
X206857Y359854D02* |
Y365792D01* |
X273941* |
X277441Y362292* |
Y348791* |
X280941Y345291* |
X301854* |
X303339Y346780* |
X226213Y360611D02* |
Y366303D01* |
X226242Y366332* |
X236857Y352972D02* |
Y359854D01* |
Y352972* |
X237329Y352475* |
X256857Y359854D02* |
Y355201D01* |
X267121Y344937* |
X301693Y359854D02* |
Y358425D01* |
X313339Y346780* |
X331693Y359854D02* |
X343339Y348208D01* |
Y346780* |
X321693Y359854D02* |
Y358425D01* |
X333339Y346780* |
X351693Y359854D02* |
X353995Y362155D01* |
X360249* |
X341693Y359854D02* |
Y358425D01* |
X353339Y346780* |
X360249Y362155D02* |
X376490D01* |
X376632Y362013* |
X360249Y362155D02* |
Y358660D01* |
X373339Y362155D02* |
Y354086D01* |
X379563* |
X373339Y362155D02* |
X376490D01* |
X376632Y362013* |
Y364788* |
X380132Y368288* |
X481397* |
X484897Y364788* |
Y360333* |
X384232Y362013D02* |
X397702D01* |
X397749Y362060* |
X421709Y355351D02* |
Y363061D01* |
Y368288* |
X446543* |
X481397* |
X484897Y364788* |
Y360333* |
X446543Y368288D02* |
Y358660D01* |
X457112Y360333D02* |
X464162Y353283D01* |
X466867* |
X474867Y357283D02* |
X477665Y360082D01* |
X484645* |
X484897Y360333* |
X550171* |
X553671Y356833* |
Y323606* |
G54D19* |
X193849Y366631D02* |
Y174566D01* |
X261970Y106537* |
X532838* |
X562548Y136248* |
Y154929* |
X579632Y172013* |
X193849Y366631D02* |
X199099Y371881D01* |
X299666* |
X311693Y359854* |
G54D20* |
X559481Y234020D02* |
X567581Y226135D01* |
X571621* |
X573721Y224035* |
Y216907* |
X571171D02* |
Y212610D01* |
X573271Y210510* |
X597443* |
X599543Y212610* |
Y229362* |
X578821Y216907D02* |
X578886D01* |
X570984Y244907D02* |
Y233708D01* |
X573084Y231608* |
X578821* |
Y216907* |
X571171Y244907D02* |
X570984D01* |
Y233708* |
X573084Y231608* |
X578821* |
Y231958* |
X586921* |
X589021Y234058* |
Y244907* |
X570984D02* |
Y233708D01* |
X573084Y231608* |
X578821* |
Y231958* |
X581371* |
Y244907* |
X568621D02* |
X571171D01* |
Y253343* |
X594113Y240895D02* |
Y244900D01* |
X594121Y244907* |
X594113Y240895D02* |
X602524Y232484D01* |
X583921Y244907D02* |
X586471D01* |
X591571D02* |
Y237334D01* |
X599543Y229362* |
X596671Y244907D02* |
X602786Y238792D01* |
X602920* |
X583837Y253037D02* |
Y256799D01* |
X599646* |
X583837Y253037D02* |
X583921Y252954D01* |
Y244907* |
X591547Y253037D02* |
X591571Y253014D01* |
Y244907* |
G54D22* |
X515000Y162500D03* |
X582500D03* |
X246828Y316718D03* |
X267263Y316716D03* |
X267121Y326028D03* |
X293803Y316747D03* |
X515000Y317500D03* |
X577919Y317426D03* |
X236876Y352475D03* |
X267121Y344937D03* |
X293692Y338510D03* |
X291693Y352475D03* |
X283840Y309979D03* |
X410000D03* |
G54D25* |
X360518Y179998D02* |
X360291Y180623D01* |
X359836Y181248* |
X359382Y181561* |
X358473* |
X358018Y181248* |
X357564Y180623* |
X357336Y179998* |
X357109Y179061* |
Y177498* |
X357336Y176561* |
X357564Y175936* |
X358018Y175311* |
X358473Y174998* |
X359382* |
X359836Y175311* |
X360291Y175936* |
X360518Y176561* |
Y177498* |
X359382D02* |
X360518D01* |
X362564Y181561D02* |
Y174998D01* |
Y181561D02* |
X364382Y174998D01* |
X366200Y181561D02* |
X364382Y174998D01* |
X366200Y181561D02* |
Y174998D01* |
X371655Y179998D02* |
X371427Y180623D01* |
X370973Y181248* |
X370518Y181561* |
X369609* |
X369155Y181248* |
X368700Y180623* |
X368473Y179998* |
X368245Y179061* |
Y177498* |
X368473Y176561* |
X368700Y175936* |
X369155Y175311* |
X369609Y174998* |
X370518* |
X370973Y175311* |
X371427Y175936* |
X371655Y176561* |
X375064Y181561D02* |
X374382Y181248D01* |
X373927Y180311* |
X373700Y178748* |
Y177811* |
X373927Y176248* |
X374382Y175311* |
X375064Y174998* |
X375518* |
X376200Y175311* |
X376655Y176248* |
X376882Y177811* |
Y178748* |
X376655Y180311* |
X376200Y181248* |
X375518Y181561* |
X375064* |
X378927Y180311D02* |
X379382Y180623D01* |
X380064Y181561* |
Y174998* |
X383927Y181561D02* |
X382109Y174998D01* |
X383927Y181561D02* |
X385745Y174998D01* |
X382791Y177186D02* |
X385064D01* |
X284976Y361642D02* |
X285430Y361955D01* |
X286112Y362892* |
Y356330* |
X262723Y361467D02* |
X263177Y361779D01* |
X263859Y362717* |
Y356154* |
X562177Y209199D02* |
X562632Y209511D01* |
X563314Y210449* |
X563314D02* |
Y203886D01* |
X370994Y154340D02* |
X395194D01* |
Y152740* |
X370994* |
Y154340* |
Y130140D02* |
X395194D01* |
Y131740* |
X370994* |
Y130140* |
X382094Y148940D02* |
X383994D01* |
Y125240* |
X382094* |
Y148940* |
X387694Y153740D02* |
X389694D01* |
Y135540* |
X387694* |
Y153740* |
X393294Y130740D02* |
X395194D01* |
Y148940* |
X393294* |
Y130740* |
X378494Y153740D02* |
X376494D01* |
Y135540* |
X378494* |
Y153740* |
X372894Y130740D02* |
X370994D01* |
Y148940* |
X372894* |
Y130740* |
X294194D02* |
X292294D01* |
Y148940* |
X294194* |
Y130740* |
X299794Y153740D02* |
X297794D01* |
Y135540* |
X299794* |
Y153740* |
X314594Y130740D02* |
X316494D01* |
Y148940* |
X314594* |
Y130740* |
X308994Y153740D02* |
X310994D01* |
Y135540* |
X308994* |
Y153740* |
X303394Y148940D02* |
X305394D01* |
Y125240* |
X303394* |
Y148940* |
X292294Y130140D02* |
X316494D01* |
Y131740* |
X292294* |
Y130140* |
Y154340D02* |
X316494D01* |
Y152740* |
X292294* |
Y154340* |
X451594Y130740D02* |
X449694D01* |
Y148940* |
X451594* |
Y130740* |
X457194Y153740D02* |
X455194D01* |
Y135540* |
X457194* |
Y153740* |
X471994Y130740D02* |
X473894D01* |
Y148940* |
X471994* |
Y130740* |
X466394Y153740D02* |
X468394D01* |
Y135540* |
X466394* |
Y153740* |
X460794Y148940D02* |
X462794D01* |
Y125240* |
X460794* |
Y148940* |
X449694Y130140D02* |
X473894D01* |
Y131740* |
X449694* |
Y130140* |
Y154340D02* |
X473894D01* |
Y152740* |
X449694* |
Y154340* |
X382094Y154840D02* |
X384094D01* |
Y159240* |
X382094* |
Y154840* |
X303394Y159540D02* |
X305394D01* |
Y154740* |
X303394* |
Y159540* |
X460794Y159240D02* |
X462794D01* |
Y154540* |
X460794* |
Y159240* |
X648600Y152950D02* |
Y233045D01* |
G75* |
G03X648100Y233545I-500J0D01* |
G01X634401* |
X634047Y233692D02* |
G03X634401Y233545I354J353D01* |
G01X634047Y233692D02* |
X599850Y267889D01* |
X599703Y268243D02* |
G03X599850Y267889I500J-0D01* |
G01X599703Y268243D02* |
Y332008D01* |
X600203Y332508D02* |
G03X599703Y332008I0J-500D01* |
G01X600203Y332508D02* |
X610700D01* |
G03X611200Y333008I-0J500* |
G01Y342519* |
G03X610237Y342707I-500J0* |
G01Y353833D02* |
G03Y342707I-13727J-5563D01* |
G01Y353833D02* |
G03X611200Y354021I463J188D01* |
G01Y374250* |
G03X610700Y374750I-500J-0* |
G01X304368* |
G03X304014Y373896I-0J-500* |
G01X311938Y365972* |
G03X312246Y365828I354J354* |
G01X316308Y363687D02* |
G03X312246Y365828I-4615J-3833D01* |
G01X316308Y363687D02* |
G03X317077I385J320D01* |
G01X326308D02* |
G03X317077I-4615J-3833D01* |
G01X326308D02* |
G03X327077I385J320D01* |
G01X336308D02* |
G03X327077I-4615J-3833D01* |
G01X336308D02* |
G03X337077I385J320D01* |
G01X347550Y358553D02* |
G03X337077Y363687I-5857J1301D01* |
G01X347550Y358553D02* |
G03X347685Y358091I488J-109D01* |
G01X352850Y352925* |
G03X353214Y352779I354J353* |
G01X357954Y350614D02* |
G03X353214Y352779I-4615J-3834D01* |
G01X357954Y350614D02* |
G03X358723I385J319D01* |
G01X368577Y343854D02* |
G03X358723Y350614I-5238J2926D01* |
G01X368577Y343854D02* |
G03X369013Y343110I436J-244D01* |
G01X377664* |
G03X378100Y343854I-0J500* |
G01X377421Y347771D02* |
G03X378100Y343854I5918J-991D01* |
G01X377421Y347772D02* |
G03X377026Y348344I-493J82D01* |
G01X374613Y351286D02* |
G03X377026Y348344I3000J0D01* |
G01X374613Y351286D02* |
Y355760D01* |
G03X374194Y356253I-500J-0* |
G01X371682Y359213D02* |
G03X374194Y356253I3000J0D01* |
G01X371682Y359213D02* |
Y364813D01* |
X374682Y367813D02* |
G03X371682Y364813I-0J-3000D01* |
G01X374682Y367813D02* |
X378582D01* |
X380168Y367360D02* |
G03X378582Y367813I-1586J-2547D01* |
G01X380168Y367360D02* |
G03X380696I264J424D01* |
G01X382282Y367813D02* |
G03X380696Y367360I-0J-3000D01* |
G01X382282Y367813D02* |
X386182D01* |
X388804Y366270D02* |
G03X386182Y367813I-2622J-1457D01* |
G01X388804Y366270D02* |
G03X389241Y366013I437J243D01* |
G01X394112* |
G03X394428Y366126I-0J500* |
G01X402905Y363048D02* |
G03X394428Y366126I-5156J-988D01* |
G01X402905Y363048D02* |
G03X403887I491J94D01* |
G01X409232Y367306D02* |
G03X403887Y363048I-189J-5246D01* |
G01X409232Y367306D02* |
G03X409665Y367528I18J500D01* |
G01X412159Y368861D02* |
G03X409665Y367528I0J-3000D01* |
G01X412159Y368861D02* |
X416059D01* |
X417645Y368407D02* |
G03X416059Y368861I-1586J-2546D01* |
G01X417645Y368407D02* |
G03X418174I264J425D01* |
G01X419759Y368861D02* |
G03X418174Y368407I0J-3000D01* |
G01X419759Y368861D02* |
X423659D01* |
X426659Y365861D02* |
G03X423659Y368861I-3000J-0D01* |
G01X426659Y365861D02* |
Y360261D01* |
X426520Y359356D02* |
G03X426659Y360261I-2861J905D01* |
G01X426520Y359356D02* |
G03Y359055I477J-150D01* |
G01X426659Y358151D02* |
G03X426520Y359055I-3000J-0D01* |
G01X426659Y358151D02* |
Y356833D01* |
G03X427434Y356415I500J-0* |
G01X429632Y357073D02* |
G03X427434Y356415I-0J-4000D01* |
G01X429632Y357073D02* |
X440556D01* |
X443384Y355901D02* |
G03X440556Y357073I-2828J-2828D01* |
G01X443384Y355901D02* |
X447806Y351480D01* |
G03X448159Y351333I353J353* |
G01X449081* |
G03X449514Y351583I-0J500* |
G01X452112Y353083D02* |
G03X449514Y351583I-0J-3000D01* |
G01X452112Y353083D02* |
X457498D01* |
G03X457851Y353937I-0J500* |
G01X457351Y354437* |
G03X456998Y354583I-353J-354* |
G01X452112* |
X449112Y357583D02* |
G03X452112Y354583I3000J0D01* |
G01X449112Y357583D02* |
Y363083D01* |
X452112Y366083D02* |
G03X449112Y363083I-0J-3000D01* |
G01X452112Y366083D02* |
X462112D01* |
X465112Y363083D02* |
G03X462112Y366083I-3000J0D01* |
G01X465112Y363083D02* |
Y358783D01* |
G03X465612Y358283I500J0* |
G01X468867* |
X469295Y358252D02* |
G03X468867Y358283I-428J-2969D01* |
G01X469295Y358252D02* |
G03X469867Y358747I72J495D01* |
G01Y359283* |
X472867Y362283D02* |
G03X469867Y359283I-0J-3000D01* |
G01X472867Y362283D02* |
X476397D01* |
G03X476897Y362783I-0J500* |
G01Y363083* |
X479897Y366083D02* |
G03X476897Y363083I-0J-3000D01* |
G01X479897Y366083D02* |
X489897D01* |
X492897Y363083D02* |
G03X489897Y366083I-3000J0D01* |
G01X492897Y363083D02* |
Y357583D01* |
X489897Y354583D02* |
G03X492897Y357583I-0J3000D01* |
G01X489897Y354583D02* |
X480155D01* |
G03X479685Y354255I-0J-500* |
G01X479489Y353826D02* |
G03X479685Y354255I-2622J1457D01* |
G01X479489Y353826D02* |
G03X479926Y353083I437J-243D01* |
G01X489897* |
X492897Y350083D02* |
G03X489897Y353083I-3000J0D01* |
G01X492897Y350083D02* |
Y344583D01* |
X489897Y341583D02* |
G03X492897Y344583I-0J3000D01* |
G01X489897Y341583D02* |
X479897D01* |
X477320Y343047D02* |
G03X479897Y341583I2577J1536D01* |
G01X477320Y343047D02* |
G03X476891Y343291I-429J-256D01* |
G01X476859* |
X475293Y343610D02* |
G03X476859Y343291I1566J3681D01* |
G01X475293Y343610D02* |
G03X474744Y343503I-196J-460D01* |
G01X470649Y339409* |
G03X471002Y338555I353J-354* |
G01X529317* |
X546669* |
X549497Y337383D02* |
G03X546669Y338555I-2828J-2828D01* |
G01X549497Y337383D02* |
X552997Y333883D01* |
X554169Y331055D02* |
G03X552997Y333883I-4000J0D01* |
G01X554169Y331055D02* |
Y149159D01* |
X552986Y146319D02* |
G03X554169Y149159I-2817J2840D01* |
G01X552986Y146319D02* |
X518287Y111892D01* |
G03X518639Y111037I352J-355* |
G01X530766* |
X530766D02* |
G03X531120Y111184I0J500D01* |
G01X557902Y137966* |
G03X558048Y138319I-354J353* |
G01Y154929* |
X559366Y158111D02* |
G03X558048Y154929I3182J-3182D01* |
G01X559366Y158111D02* |
X571486Y170231D01* |
G03X571632Y170584I-354J353* |
G01Y174763* |
X574632Y177763D02* |
G03X571632Y174763I0J-3000D01* |
G01X574632Y177763D02* |
X584095D01* |
G03X584595Y178263I0J500* |
G01Y178763* |
G03X584095Y179263I-500J-0* |
G01X574632* |
X571632Y182263D02* |
G03X574632Y179263I3000J0D01* |
G01X571632Y182263D02* |
Y187763D01* |
X574632Y190763D02* |
G03X571632Y187763I0J-3000D01* |
G01X574632Y190763D02* |
X583909D01* |
G03X584400Y191358I-0J500* |
G01X584345Y191928D02* |
G03X584400Y191358I3000J-0D01* |
G01X584345Y191928D02* |
Y195828D01* |
X587345Y198828D02* |
G03X584345Y195828I0J-3000D01* |
G01X587345Y198828D02* |
X592945D01* |
X594903Y198101D02* |
G03X592945Y198828I-1958J-2273D01* |
G01X594903Y198101D02* |
G03X595682Y198267I326J379D01* |
G01X596473Y199392D02* |
G03X595682Y198267I2828J-2829D01* |
G01X596473Y199392D02* |
X598378Y201297D01* |
G03X598524Y201650I-354J353* |
G01Y206451* |
G03X597953Y206946I-500J0* |
G01X597443Y206910D02* |
G03X597953Y206946I-0J3600D01* |
G01X597443Y206910D02* |
X573271D01* |
X570725Y207964D02* |
G03X573271Y206910I2546J2546D01* |
G01X570725Y207964D02* |
X570096Y208594D01* |
G03X569742Y208740I-354J-354* |
G01X566923* |
G03X566423Y208240I-0J-500* |
G01Y201199* |
X564723Y199499D02* |
G03X566423Y201199I-0J1700D01* |
G01X564723Y199499D02* |
X561677D01* |
X559977Y201199D02* |
G03X561677Y199499I1700J-0D01* |
G01X559977Y201199D02* |
Y208241D01* |
G03X559501Y208741I-500J0* |
G01X559025Y209240D02* |
G03X559501Y208741I500J0D01* |
G01X559025Y209240D02* |
Y229230D01* |
G03X558874Y229588I-500J-0* |
G01X558299Y230147* |
G03X558121Y230259I-349J-358* |
G01X555481Y234020D02* |
G03X558121Y230259I4000J0D01* |
G01X555481Y234020D02* |
Y255085D01* |
X556653Y257913D02* |
G03X555481Y255085I2828J-2828D01* |
G01X556653Y257913D02* |
X570846Y272106D01* |
X573168Y273246D02* |
G03X570846Y272106I506J-3968D01* |
G01X573168Y273246D02* |
G03X573511Y273451I-64J496D01* |
G01X573764Y273759D02* |
G03X573511Y273451I2186J-2055D01* |
G01X573764Y273759D02* |
G03X573900Y274101I-364J342D01* |
G01Y294527* |
Y294526* |
Y294530* |
X573900* |
X573915Y313092* |
Y313093* |
G03X573775Y313439I-500J-0* |
G01X582055Y313432D02* |
G03X573775Y313439I-4136J3994D01* |
G01X582055Y313432D02* |
G03X581915Y313085I360J-347D01* |
G01X581900Y294526* |
X581900* |
Y288348* |
G03X582443Y287850I500J0* |
G01X582703Y287862D02* |
G03X582443Y287850I0J-3000D01* |
G01X582703Y287862D02* |
X588703D01* |
X591703Y284862D02* |
G03X588703Y287862I-3000J-0D01* |
G01X591703Y284862D02* |
Y278862D01* |
X589814Y276075D02* |
G03X591703Y278862I-1111J2787D01* |
G01X589814Y276075D02* |
G03X589500Y275611I186J-464D01* |
G01Y274101* |
G03X589635Y273759I500J-0* |
G01X590450Y271704D02* |
G03X589635Y273759I-3000J-0D01* |
G01X590450Y271704D02* |
Y266604D01* |
X590417Y266161D02* |
G03X590450Y266604I-2967J443D01* |
G01X590417Y266161D02* |
G03X590911Y265587I494J-74D01* |
G01X594347* |
X597347Y262587D02* |
G03X594347Y265587I-3000J0D01* |
G01X597347Y262587D02* |
Y260924D01* |
G03X598047Y260466I500J-0* |
G01X602457Y259645D02* |
G03X598047Y260466I-2811J-2846D01* |
G01X602457Y259645D02* |
X606347Y255803D01* |
G03X606699Y255658I352J355* |
G01X608034* |
X608534Y255158D02* |
G03X608034Y255658I-500J0D01* |
G01X608534Y255158D02* |
Y253851D01* |
G03X608683Y253495I500J0* |
G01X631194Y231259* |
X632383Y228413D02* |
G03X631194Y231259I-4000J0D01* |
G01X632383Y228413D02* |
Y187411D01* |
X631211Y184583D02* |
G03X632383Y187411I-2828J2828D01* |
G01X631211Y184583D02* |
X615885Y169256D01* |
X613056Y168085D02* |
G03X615885Y169256I0J4000D01* |
G01X613056Y168085D02* |
X595093D01* |
G03X594750Y167949I-0J-500* |
G01X592695Y167135D02* |
G03X594750Y167949I0J3000D01* |
G01X592695Y167135D02* |
X587595D01* |
X587085Y167178D02* |
G03X587595Y167135I510J2957D01* |
G01X587085Y167178D02* |
G03X586662Y167054I-85J-492D01* |
G01X584632Y166263D02* |
G03X586662Y167054I0J3000D01* |
G01X584632Y166263D02* |
X580453D01* |
G03X580100Y166117I0J-500* |
G01X567195Y153212* |
G03X567048Y152858I353J-354* |
G01Y136248* |
X565730Y133066D02* |
G03X567048Y136248I-3182J3182D01* |
G01X565730Y133066D02* |
X538768Y106104D01* |
G03X539121Y105250I353J-354* |
G01X610700* |
G03X611200Y105750I-0J500* |
G01Y125979* |
G03X610237Y126167I-500J0* |
G01Y137293D02* |
G03Y126167I-13727J-5563D01* |
G01Y137293D02* |
G03X611200Y137481I463J188D01* |
G01Y149450* |
X614200Y152450D02* |
G03X611200Y149450I0J-3000D01* |
G01X614200Y152450D02* |
X648100D01* |
G03X648600Y152950I-0J500* |
G01X299882Y111037D02* |
G03X300379Y111593I-0J500D01* |
G01X300354Y112039D02* |
G03X300379Y111593I4000J0D01* |
G01X300354Y112039D02* |
Y116078D01* |
G03X300068Y116529I-500J-0* |
G01X298354Y119240D02* |
G03X300068Y116529I3000J-0D01* |
G01X298354Y119240D02* |
Y125240D01* |
X298455Y126011D02* |
G03X298354Y125240I2899J-771D01* |
G01X298455Y126011D02* |
G03X297972Y126640I-483J129D01* |
G01X292294* |
X288794Y130140D02* |
G03X292294Y126640I3500J-0D01* |
G01X288794Y130140D02* |
Y130740D01* |
Y148940* |
X289214Y150602D02* |
G03X288794Y148940I3080J-1662D01* |
G01X289214Y150602D02* |
G03Y151077I-440J238D01* |
G01X288794Y152740D02* |
G03X289214Y151077I3500J-0D01* |
G01X288794Y152740D02* |
Y154340D01* |
X292294Y157840D02* |
G03X288794Y154340I-0J-3500D01* |
G01X292294Y157840D02* |
X297972D01* |
G03X298455Y158468I-0J500* |
G01X298354Y159240D02* |
G03X298455Y158468I3000J-0D01* |
G01X298354Y159240D02* |
Y165240D01* |
X298874Y166928D02* |
G03X298354Y165240I2480J-1688D01* |
G01X298874Y166928D02* |
G03X298461Y167709I-413J281D01* |
G01X246475* |
G03X246092Y167531I-0J-500* |
G01X220246Y192490D02* |
G03X246092Y167531I12050J-13383D01* |
G01X220246Y192490D02* |
G03X220411Y192861I-335J371D01* |
G01Y286298* |
G03X220237Y286678I-500J0* |
G01X232361Y319897D02* |
G03X220237Y286678I149J-18876D01* |
G01X232361Y319897D02* |
G03X232857Y320397I-4J500D01* |
G01Y348157* |
G03X232718Y348502I-500J0* |
G01X232430Y348828D02* |
G03X232718Y348503I4446J3647D01* |
G01X232430Y348828D02* |
G03X232043Y349011I-387J-317D01* |
G01X231160* |
G03X230818Y348875I0J-500* |
G01X228763Y348061D02* |
G03X230818Y348875I-0J3000D01* |
G01X228763Y348061D02* |
X223663D01* |
X220663Y351061D02* |
G03X223663Y348061I3000J-0D01* |
G01X220663Y351061D02* |
Y354961D01* |
X221116Y356547D02* |
G03X220663Y354961I2547J-1586D01* |
G01X221116Y356547D02* |
G03Y357075I-424J264D01* |
G01X220663Y358661D02* |
G03X221116Y357075I3000J-0D01* |
G01X220663Y358661D02* |
Y361292D01* |
G03X220163Y361792I-500J-0* |
G01X213196* |
G03X212708Y361181I-0J-500* |
G01X202703Y364183D02* |
G03X212708Y361181I4154J-4329D01* |
G01X202703Y364183D02* |
G03X202857Y364544I-346J361D01* |
G01Y366332* |
X202886Y366820D02* |
G03X202857Y366332I3971J-488D01* |
G01X202886Y366820D02* |
G03X202390Y367381I-496J61D01* |
G01X201170* |
G03X200817Y367234I0J-500* |
G01X198496Y364913* |
G03X198349Y364560I353J-353* |
G01Y176639* |
G03X198496Y176286I500J0* |
G01X263686Y111184* |
G03X264039Y111037I353J353* |
G01X299882* |
X398646Y320519D02* |
G03X398255Y321331I-391J312D01* |
G01X388422* |
G03X388031Y320519I-0J-500* |
G01X389279Y315938D02* |
G03X388031Y320519I-5940J842D01* |
G01X389279Y315938D02* |
G03X389381Y315559I495J-70D01* |
G01X391499Y312861* |
G03X391892Y312670I393J309* |
G01X397933* |
G03X398349Y313447I0J500* |
G01X398646Y320519D02* |
G03X398349Y313447I4693J-3739D01* |
G01X377867Y116039D02* |
G03X378185Y116925I0J500D01* |
G01X377094Y119240D02* |
G03X378185Y116925I3000J-0D01* |
G01X377094Y119240D02* |
Y125240D01* |
X377195Y126011D02* |
G03X377094Y125240I2899J-771D01* |
G01X377195Y126011D02* |
G03X376712Y126640I-483J129D01* |
G01X370994* |
X367494Y130140D02* |
G03X370994Y126640I3500J-0D01* |
G01X367494Y130140D02* |
Y130740D01* |
Y148940* |
X367914Y150602D02* |
G03X367494Y148940I3080J-1662D01* |
G01X367914Y150602D02* |
G03Y151077I-440J238D01* |
G01X367494Y152740D02* |
G03X367914Y151077I3500J-0D01* |
G01X367494Y152740D02* |
Y154340D01* |
X370994Y157840D02* |
G03X367494Y154340I-0J-3500D01* |
G01X370994Y157840D02* |
X376712D01* |
G03X377195Y158468I-0J500* |
G01X377094Y159240D02* |
G03X377195Y158468I3000J-0D01* |
G01X377094Y159240D02* |
Y165240D01* |
X377614Y166928D02* |
G03X377094Y165240I2480J-1688D01* |
G01X377614Y166928D02* |
G03X377201Y167709I-413J281D01* |
G01X310247* |
G03X309834Y166928I0J-500* |
G01X310354Y165240D02* |
G03X309834Y166928I-3000J-0D01* |
G01X310354Y165240D02* |
Y159240D01* |
X310253Y158468D02* |
G03X310354Y159240I-2899J772D01* |
G01X310253Y158468D02* |
G03X310736Y157840I483J-128D01* |
G01X316494* |
X319994Y154340D02* |
G03X316494Y157840I-3500J-0D01* |
G01X319994Y154340D02* |
Y152740D01* |
X319574Y151077D02* |
G03X319994Y152740I-3080J1663D01* |
G01X319574Y151077D02* |
G03Y150602I440J-237D01* |
G01X319994Y148940D02* |
G03X319574Y150602I-3500J-0D01* |
G01X319994Y148940D02* |
Y131740D01* |
Y130740* |
Y130140* |
X316494Y126640D02* |
G03X319994Y130140I-0J3500D01* |
G01X316494Y126640D02* |
X310736D01* |
G03X310253Y126011I0J-500* |
G01X310354Y125240D02* |
G03X310253Y126011I-3000J-0D01* |
G01X310354Y125240D02* |
Y119240D01* |
X309262Y116925D02* |
G03X310354Y119240I-1908J2315D01* |
G01X309262Y116925D02* |
G03X309581Y116039I319J-386D01* |
G01X377867* |
X456354Y166928D02* |
G03X455941Y167709I-413J281D01* |
G01X388987* |
G03X388574Y166928I0J-500* |
G01X389094Y165240D02* |
G03X388574Y166928I-3000J-0D01* |
G01X389094Y165240D02* |
Y159240D01* |
X388993Y158468D02* |
G03X389094Y159240I-2899J772D01* |
G01X388993Y158468D02* |
G03X389476Y157840I483J-128D01* |
G01X395194* |
X398694Y154340D02* |
G03X395194Y157840I-3500J-0D01* |
G01X398694Y154340D02* |
Y152740D01* |
X398274Y151077D02* |
G03X398694Y152740I-3080J1663D01* |
G01X398274Y151077D02* |
G03Y150602I440J-237D01* |
G01X398694Y148940D02* |
G03X398274Y150602I-3500J-0D01* |
G01X398694Y148940D02* |
Y131740D01* |
Y130740* |
Y130140* |
X395194Y126640D02* |
G03X398694Y130140I-0J3500D01* |
G01X395194Y126640D02* |
X389476D01* |
G03X388993Y126011I0J-500* |
G01X389094Y125240D02* |
G03X388993Y126011I-3000J-0D01* |
G01X389094Y125240D02* |
Y120666D01* |
G03X389594Y120166I500J-0* |
G01X455334* |
G03X455834Y120666I-0J500* |
G01Y125240* |
X455935Y126011D02* |
G03X455834Y125240I2899J-771D01* |
G01X455935Y126011D02* |
G03X455452Y126640I-483J129D01* |
G01X449694* |
X446194Y130140D02* |
G03X449694Y126640I3500J-0D01* |
G01X446194Y130140D02* |
Y130740D01* |
Y148940* |
X446614Y150602D02* |
G03X446194Y148940I3080J-1662D01* |
G01X446614Y150602D02* |
G03Y151077I-440J238D01* |
G01X446194Y152740D02* |
G03X446614Y151077I3500J-0D01* |
G01X446194Y152740D02* |
Y154340D01* |
X449694Y157840D02* |
G03X446194Y154340I-0J-3500D01* |
G01X449694Y157840D02* |
X455452D01* |
G03X455935Y158468I-0J500* |
G01X455834Y159240D02* |
G03X455935Y158468I3000J-0D01* |
G01X455834Y159240D02* |
Y165240D01* |
X456354Y166928D02* |
G03X455834Y165240I2480J-1688D01* |
G01X539291Y158935D02* |
Y164859D01* |
G03X538477Y165248I-500J-0* |
G01X513640Y167534D02* |
G03X538477Y165248I13596J11644D01* |
G01X513640Y167534D02* |
G03X513260Y167709I-380J-325D01* |
G01X467727* |
G03X467314Y166928I0J-500* |
G01X467834Y165240D02* |
G03X467314Y166928I-3000J-0D01* |
G01X467834Y165240D02* |
Y159240D01* |
X467733Y158468D02* |
G03X467834Y159240I-2899J772D01* |
G01X467733Y158468D02* |
G03X468216Y157840I483J-128D01* |
G01X473894* |
X477394Y154340D02* |
G03X473894Y157840I-3500J-0D01* |
G01X477394Y154340D02* |
Y152740D01* |
X476974Y151077D02* |
G03X477394Y152740I-3080J1663D01* |
G01X476974Y151077D02* |
G03Y150602I440J-237D01* |
G01X477394Y148940D02* |
G03X476974Y150602I-3500J-0D01* |
G01X477394Y148940D02* |
Y131740D01* |
Y130740* |
Y130140* |
X475728Y127159D02* |
G03X477394Y130140I-1834J2981D01* |
G01X475728Y127159D02* |
G03X475990Y126233I262J-426D01* |
G01X506494Y126219* |
G03X506847Y126365I0J500* |
G01X539144Y158581* |
G03X539291Y158935I-353J354* |
G01X578491Y256573D02* |
G03Y257102I-425J264D01* |
G01X578037Y258687D02* |
G03X578491Y257102I3000J0D01* |
G01X578037Y258687D02* |
Y262587D01* |
X578070Y263030D02* |
G03X578037Y262587I2967J-443D01* |
G01X578070Y263030D02* |
G03X577576Y263604I-494J74D01* |
G01X575950* |
X574523Y263965D02* |
G03X575950Y263604I1427J2639D01* |
G01X574523Y263965D02* |
G03X573932Y263878I-238J-440D01* |
G01X566565Y256512* |
G03X566919Y255658I354J-354* |
G01X577739* |
G03X578210Y255991I0J500* |
G01X578491Y256573D02* |
G03X578210Y255991I2546J-1586D01* |
G01X624383Y189275D02* |
Y226533D01* |
G03X624234Y226889I-500J0* |
G01X609386Y241556* |
G03X608534Y241200I-352J-356* |
G01Y239042* |
G03X608681Y238688I500J-0* |
G01X610129Y237240* |
X611301Y234411D02* |
G03X610129Y237240I-4000J0D01* |
G01X611301Y234411D02* |
Y194747D01* |
G03X611468Y194374I500J0* |
G01X605142Y183851D02* |
G03X611468Y194374I2159J5865D01* |
G01X605142Y183851D02* |
G03X604549Y183110I-173J-469D01* |
G01X604838Y176817D02* |
G03X604549Y183110I-5537J2899D01* |
G01X604838Y176817D02* |
G03X605281Y176085I443J-232D01* |
G01X611192* |
G03X611546Y176231I0J500* |
G01X624236Y188922* |
G03X624383Y189275I-353J353* |
G01X372561Y366934D02* |
X375253Y364242D01* |
X380703Y366934D02* |
X378011Y364242D01* |
X372561Y357092D02* |
X375253Y359784D01* |
X578916Y256566D02* |
X581608Y259258D01* |
X466955Y167361D02* |
X463955Y164361D01* |
X456713Y167361D02* |
X459713Y164361D01* |
X388215Y167361D02* |
X385215Y164361D01* |
X377973Y167361D02* |
X380973Y164361D01* |
X309475Y167361D02* |
X306475Y164361D01* |
X299233Y167361D02* |
X302233Y164361D01* |
X596468Y264709D02* |
X593776Y262016D01* |
X572511Y180142D02* |
X575437Y183068D01* |
X572511Y189884D02* |
X575437Y186958D01* |
X470745Y361405D02* |
X473452Y358697D01* |
X492018Y365205D02* |
X489091Y362278D01* |
X492018Y355462D02* |
X489091Y358389D01* |
X477775Y365205D02* |
X480702Y362278D01* |
X595067Y197949D02* |
X592374Y195257D01* |
X585224Y197949D02* |
X587916Y195257D01* |
X417638Y367982D02* |
X420330Y365289D01* |
X425781Y367982D02* |
X423088Y365289D01* |
X375492Y349165D02* |
X378184Y351858D01* |
X241996Y287989D02* |
X522000D01* |
Y188001* |
X241996* |
Y287989* |
G54D31* |
X264000Y302500D03* |
X274000D03* |
X284000D03* |
X294000D03* |
X304000D03* |
X527300Y179300D03* |
Y179000D03* |
Y179300D03* |
X527600Y179000D03* |
X354000Y302500D03* |
X364000D03* |
X374000D03* |
X384000D03* |
X527800Y301200D03* |
X527800D03* |
G54D35* |
X599301Y179716D03* |
Y189716D03* |
X607301D03* |
Y179716D03* |
G54D40* |
X256857Y359854D03* |
X585703Y281862D03* |
X304354Y122240D03* |
Y162240D03* |
X383094Y122240D03* |
Y162240D03* |
X461834Y122240D03* |
Y162240D03* |
X291693Y359854D03* |
X303339Y346780D03* |
G54D42* |
X397749Y355260D03* |
Y362060D03* |
X409043D03* |
Y355260D03* |
G54D43* |
X581882Y172013D02* |
X577382D01* |
X581882Y185013D02* |
X577382D01* |
X482647Y360333D02* |
X487147D01* |
X482647Y347333D02* |
X487147D01* |
X459362D02* |
X454862D01* |
X459362Y360333D02* |
X454862D01* |
G54D44* |
X474867Y349283D03* |
Y357283D03* |
X466867Y353283D03* |
G54D45* |
X632664Y271563D02* |
Y271063D01* |
Y281429D02* |
Y281929D01* |
Y292295D02* |
Y291795D01* |
X457160Y316241D02* |
Y316741D01* |
X446363Y316241D02* |
Y316741D01* |
G54D46* |
X618301Y208716D03* |
Y160716D03* |
G54D47* |
X527500Y301000D03* |
Y179000D03* |
X232500D03* |
Y301000D03* |
G54D48* |
X563521Y214307D02* |
Y219507D01* |
X566071Y214307D02* |
Y219507D01* |
X568621Y214307D02* |
Y219507D01* |
X571171Y214307D02* |
Y219507D01* |
X573721Y214307D02* |
Y219507D01* |
X576271Y214307D02* |
Y219507D01* |
X578821Y214307D02* |
Y219507D01* |
X581371Y214307D02* |
Y219507D01* |
X583921Y214307D02* |
Y219507D01* |
X586471Y214307D02* |
Y219507D01* |
X589021Y214307D02* |
Y219507D01* |
X591571Y214307D02* |
Y219507D01* |
X594121Y214307D02* |
Y219507D01* |
X596671Y214307D02* |
Y219507D01* |
Y242307D02* |
Y247507D01* |
X594121Y242307D02* |
Y247507D01* |
X591571Y242307D02* |
Y247507D01* |
X589021Y242307D02* |
Y247507D01* |
X586471Y242307D02* |
Y247507D01* |
X583921Y242307D02* |
Y247507D01* |
X581371Y242307D02* |
Y247507D01* |
X578821Y242307D02* |
Y247507D01* |
X576271Y242307D02* |
Y247507D01* |
X573721Y242307D02* |
Y247507D01* |
X571171Y242307D02* |
Y247507D01* |
X568621Y242307D02* |
Y247507D01* |
X566071Y242307D02* |
Y247507D01* |
X563521Y242307D02* |
Y247507D01* |
G54D49* |
X360249Y358660D03* |
X446543D03* |
G74* |
X0Y0D02* |
M02* |
/Designs/Data_loggers/GMCOUNT/CAM_GMC01A/V1.pdf |
---|
0,0 → 1,616 |
+%âãÏÓ |
+0000000016 00000 n |
+0000000904 00000 n |
+0000001201 00000 n |
+0000001405 00000 n |
+0000001539 00000 n |
+0000001746 00000 n |
+0000002174 00000 n |
+0000002213 00000 n |
+0000002235 00000 n |
+0000006544 00000 n |
+0000006566 00000 n |
+0000010175 00000 n |
+0000010197 00000 n |
+0000014092 00000 n |
+0000014114 00000 n |
+0000017983 00000 n |
+0000018005 00000 n |
+0000022119 00000 n |
+0000022141 00000 n |
+0000025899 00000 n |
+0000025921 00000 n |
+0000029438 00000 n |
+0000029460 00000 n |
+0000032901 00000 n |
+0000050439 00000 n |
+0000053116 00000 n |
+0000000993 00000 n |
+0000001181 00000 n |
+stream |
+stream |
+»I÷u,¹sÆc:7È7{qÉÇÜåøéÐG ? ¿¦sÆæe3GµR\hÎe5ÜEîG6Ì~e¶5Þ|ÁQ`:rfÞ¥Õ6OõX5¦í³2M[çz7uæOà4ÓÕ¶Äåu\=AòJ0Ò®:ÍÕmWïûâÀý¶Í+£rÍîÚ·Ãkq¿Ó¶ZR7Ók;¨Þ¯V»íWWî²¹FyÔËsíòª*[}sºrê[PÔÚÎiÖ=¤ú"×ò®±XWJuò¬[JÕä¶;·ê®qy嵧lSó ¯¨+ë¼óKú¶u³¿LËíV'í+ÓrlO,lXêÀLq?x0 º~f§n^Ó±ìû¾dAµ±D+,ÛÄ+hÀìÍÎ<÷¶M¯Fs\G"¶=y[,ÇÜwÊ]«¾ùEéØmêÊ×rvnìîã¦[±]+ÉfUï»,·ÒÜoaWSåáé é4KӣݳÅßÉ£aµª´ B 3¤;jï Ǻ=ºâf*WC+/Û2ó°5ÊÅ7 |
+[w,}_N( ¶ÙÖë |
+ÝÓ®¦îYv4¥.nºaÐ2õH£6³ZéaV\ ËÝzd_DÙes4[ûI·[Ë°_e<@åжä*à w¾q¸bMxn§a»5ò¦^v:RÙ|SlÒýªÐáp=GRô8F¹3nÌ!eFy#ô ¶wk²ÌαqÙÝù$bl`K|;ÏG¶¼X®ò8E¹NÌKD]nÖÅæPÔ3sn»Íq@æ©"ü³/Ëm{e/íöOb#PaÓ¥Û²q ÌĶÀlm\êÖ8&ܸßäÛAK©¼Æ=;¹Ü½$ÁZþ@ R9ó«äÅÓ¢6)·«+f ñtc³r,ÎÃÓ6ÏèiÌÃ<0wsùàaaÇò2¹rظó2³;WO 2hKþæÌÌdÁ3¦ù |
+ÛÅyÚ¨øqu6mÌq©>ȱ$GfnXC»0mßÕ¿ÇxdTÙërÞÞdÊÌ1ë¬äÆÝ\椢l/Q0Ê'sðÃd%Á+ÌÁB:94ÊäÔP&s |
+»sbS°Ê)ÓBpu\y^íK&®\¹ÛÊÑÕ |
+U Ñ?¼G3*&ã'Åáb@(¿ZYY}ÆÍw»ìWþ×ÛÍcTpÎIߢõ |
+íaÍ`®½£Xx_ZÚÙ·å|"}#pùz/ÖrÉLï#NCøzJðËJ£9?¦)½1¤ûí7æäýR@¹×Ò+kÊÔá7ñoÝùm~s_ ³çÏv6´èÒÍM-ÐõGãÛhnµÄÈí_LÁnèÅÖ£ÇåPÁGߢº³· «éd®aí,É{~{ûa¯1BM>èg;Q8ïÊÖ |
+ÒQc¾)16ÿ]çдéÜ5ÿ`Ó]Ùe7õ´ä§ÜF6ºóí[<½¹i3-M¶G¤ |
+hÅÍ"Ú[ïæ*)®ÏÖíG*ö;Ù|Íù(Ìíf<9%þqø ìã |
+nì'/K;÷ ÑèÎ ³käuíìó1<ضµß>Pú0½kd OøæùöV(\%¾ut\ NÌgN<+Îqÿì¦àGcÛ±ÀòÀγbi.às«My9*wNæâÁ³xîõ¼¦:£vô4ñ[ ç¶çIoþÁ*gú§^`!k¾Ãßa%ld°h,Î=°Á ³áruHɹâÃLv)XüX_l¹¼)ÂÍøLVM&ÑÉQ¬½è-O{"c |
+ró8ã@&ÌXMY9éàÑ9ÚyÕÃxWÏöl.ksbµ;Üë=Ãäþ+E7»ú/¸Û28£ß¢Y6f1+f©`øR-F³Tk^ßRÍKÒ-Û$ªl>¢Rs¥RkÚoÈ*Íg®u«4¬UPégvÔlÜ**6ëµ¼@ÖkyÁ¬×òþ§^ãó²@ãÛ½¥\³río9xË5~É)×g-×G-×W©Öx֩μQù²2߸Çv9Þ¥·ð»ç6ï(%ß·ð¸ûÔ;NS,TÇPÅÌEvSÇÆÛÞ?ñý£Éö(~pf³ÄÏ°÷ççé֨㩣X2# ÆÑGqµ£ß¸zÊ;vÔï¾L»ß »¥gåpùpú%åºíòc¯W/ÅáõÎÓÀÛ®Þn¥+Þ¢°;Û¥öntAÀ 6'äùküBÜ!7ÇVåɸþáYåi¼ª<ÅÓ§lv!OCò$_yúq«Èó´#rõh÷(ò´X½µÈÓø"®:E(¸gbêÓwÕ'£÷\LW¯9ÞnÖU¿¹ |
+ywÃAn(ØPPÈùêÎéÕÂýEðR}B8¢Ú/.>Dõ{@>¦©ÛÕw£)Zg½Í<{qx3ö_;!¿jýÅ3nHÓi°àÆã2$:WÆiL[¿os%Äßâq÷#ïøãý8±ÀþTnñ«¡12#óFäóÔàèR!ÑÄT°MGå |
+QD;1íÌOwÉýÒÝÝÊmædê<ÏǼYü¹x\úöS;J®^ÂøÊà |
+stream |
+Úè²ì÷TEì÷Ä4»Þâû¨Nî~cÑ}ÀÅ£ßD÷åªQ½è"ÌèRïúÇõèMôózôDý:Z÷iÜ£Ö¶,}Ô=2k*'wXäuSz=uòéèkúuF÷9RtI¸ýîÓÓº\ü¬)àëô¨XV ù%NÝÆ£1ò PùìíËAÈ |
+¸¤Þ¢à^åå@DlÄi¤Y¸*¢`ÌÈ÷4'~.â©¿¤©oßM}$CG£F@Ó§ã%T\Ò#Þ%) |
+N |
+EnS^Ñ÷'gÒÌaÖÆ1ôä3HË~}8îbó9ôa̺ÃlÜWEÔ!1ÅtL#8È4RAÆtº=º-D«Î 3(ØX1Ó³.åpUDYÈI:'GN3xä©'ösêröÕßÌ$¢bcÅL#̺.ç{BÈbìí*t9]¯R%ö{ä¤x»]xÌr9Àâqb]Êáª!$²0 »]NÓÇå )(·8I2¯q=G嫧ÅëRWEÔ!1 ç¶ö\V h¤êý¯ã¶g©ÔrUÓâu)«Bά 595ßVPóe bÿës[A³TÊV@D9ÄƪÄiñº.'Ž!ô!·Òn+(í²@ª±ÿ¥ÜVPâ,¢¹ ÄiñºÃUmÁ |
+"Yçmy^V h¤òýÏý¶|ÝJ¹F+ ¢bc¯%÷Û |
+¸*¢3XA$9é¶ÁQN |
+VØÿ´n+H×F´"Ê!6VéºYÒº«BN |
+VÉTo+ä TýOé¶tÝJÏV@D9ÄsÝ,)ÝVÀUÁ |
+"YóôÛ |
+9 Õbÿz[ÁsÝJOV@ärr´çºYz[WE´+dUN^ë²ÅG¡ÊkyË |
+ò³WVà;VV©½.äøª®cÙKÎÞÑärR¶l+¼OC>r9afiÙ#gvä¤ýÇ#ÇÐèBb {6ÊÁþQa¶½µm7Â<Ã#è'faaÇÊÊ3°× _Q#Ä@ö²cÓår 1².M96ìär30ëRWEÔ!1½Úå÷¹@#ˤģfÔ¬ ¢b°±ÿ¬K9\Õ¢ dìu9z39!'N¯;ËQ»( D9Ä`Õbÿs¤s2jÈ^cïh¤J>F\*¦`(ØX1ÓrY¯h;Vp½ .Ç^u.ÐHÕ8-|*9+î3o+ «û_Û |
+j%²ÄHöúàrìÍír !'Nò.Ï|F[´"Ê!«û_Çm5Î Yb${ý|;rÆeFªÅiáÏ,ahDCV%ö¿µÛ |
+Z%Bâønòû4ʱ߫.ÐHõëféù¶âÞõ'Zå+fáo+è×BH¬ß`¤Û |
+9Fj\7K_·ô÷®hD.gD+`&¯Û |
+Æu+%F²3o+åÌ`ãºYF¿`´¸w£F+ ¢b°j±ÿ£ßV0®[ 8¿[Áì·r Ô¼nYn+9îÝLÑ |
+D"oË«æ³±]F¬Të«v_ÇÐÎ=¸eÉ5RÉ·Ú¥F;abËÜÞ^ÅóèÕÁ\Ýî4\.£&y VÔÕú"ëkvª-sÊæpC_P(ìòd¢#,³Õ¥9ñskKHbë¤iïÛ®´ì|3Ó²?bTDz" |