birdcage/docs/K60-refman-vectors/K60-reference-manual_page_524.svg
Ryan Malloy 5252d1d73c Add hardware reference docs (A3981, K60, RYS352A)
Allegro A3981 stepper motor driver: datasheet, KiCad symbols/footprint,
3D model (TSSOP-28). Two per G2 board, SPI-controlled, AUTO microstep.

NXP MK60DN512VLQ10 (Kinetis K60): datasheet and 1300-page reference
manual. Cortex-M4 96MHz MCU running the G2 firmware.

Reyax RYS352A GPS module: datasheet and PAIR command guide.
GPS receiver on the G2 board (used for auto-location/satellite lookup).

All extracted as markdown + page images + vector SVGs for LLM context.
Binary assets (PDFs, PNGs, SVGs, STEP, WRL) stored via git-lfs.
2026-02-14 18:36:42 -07:00

245 lines
40 KiB (Stored with Git LFS)
XML

<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape" version="1.1" width="612" height="777.60006" viewBox="0 0 612 777.60006">
<defs>
<clipPath id="clip_1">
<path transform="matrix(1,0,0,1,54,668.19998)" d="M.49 .49H100.310009V15.51H.49Z" clip-rule="evenodd"/>
</clipPath>
<clipPath id="clip_2">
<path transform="matrix(1,0,0,1,54,668.19998)" d="M101.29 .49H503.51V15.51H101.29Z" clip-rule="evenodd"/>
</clipPath>
<clipPath id="clip_3">
<path transform="matrix(1,0,0,1,54,684.19998)" d="M.245 .49H100.555V15.505H.245Z" clip-rule="evenodd"/>
</clipPath>
<clipPath id="clip_4">
<path transform="matrix(1,0,0,1,54,684.19998)" d="M101.04501 .49H503.755V15.505H101.04501Z" clip-rule="evenodd"/>
</clipPath>
<clipPath id="clip_5">
<path transform="matrix(1,0,0,1,54,668.19998)" d="M-.25 0-1.20866-1.91732H100.9V0 1.91732H.70866" clip-rule="evenodd"/>
</clipPath>
<clipPath id="clip_6">
<path transform="matrix(1,0,0,1,54,668.19998)" d="M100.8-.5H102.71732V16.5H100.8 98.88268V-.5" clip-rule="evenodd"/>
</clipPath>
<clipPath id="clip_7">
<path transform="matrix(1,0,0,1,54,668.19998)" d="M101.4 16V17.91732H-.5V16 14.08268H101.4" clip-rule="evenodd"/>
</clipPath>
<clipPath id="clip_8">
<path transform="matrix(1,0,0,1,54,668.19998)" d="M0 16-1.91732 17.91732V-1.20866L0-.25 1.91732 .70866V14.08268" clip-rule="evenodd"/>
</clipPath>
<clipPath id="clip_9">
<path transform="matrix(1,0,0,1,54,668.19998)" d="M100.7 0V-1.91732H505.20866L504.25 0 503.29136 1.91732H100.7" clip-rule="evenodd"/>
</clipPath>
<clipPath id="clip_10">
<path transform="matrix(1,0,0,1,54,668.19998)" d="M504-.25 505.91734-1.20866V17.91732L504 16 502.08268 14.08268V.70866" clip-rule="evenodd"/>
</clipPath>
<clipPath id="clip_11">
<path transform="matrix(1,0,0,1,54,668.19998)" d="M504.5 16V17.91732H100.2V16 14.08268H504.5" clip-rule="evenodd"/>
</clipPath>
<clipPath id="clip_12">
<path transform="matrix(1,0,0,1,54,684.19998)" d="M100.8-.6H102.46732V16H100.8 99.13268V-.6" clip-rule="evenodd"/>
</clipPath>
<clipPath id="clip_13">
<path transform="matrix(1,0,0,1,54,684.19998)" d="M100.9 15.75V17.41732H-.95866L-.125 15.75 .70866 14.08268H100.9" clip-rule="evenodd"/>
</clipPath>
<clipPath id="clip_14">
<path transform="matrix(1,0,0,1,54,684.19998)" d="M0 15.875-1.66732 16.70866V.4H0 1.66732V15.04134" clip-rule="evenodd"/>
</clipPath>
<clipPath id="clip_15">
<path transform="matrix(1,0,0,1,54,684.19998)" d="M504 .4H505.66734V16.70866L504 15.875 502.33268 15.04134V.4" clip-rule="evenodd"/>
</clipPath>
<clipPath id="clip_16">
<path transform="matrix(1,0,0,1,54,684.19998)" d="M504.125 15.75 504.95866 17.41732H100.7V15.75 14.08268H503.29136" clip-rule="evenodd"/>
</clipPath>
<clipPath id="clip_17">
<path transform="matrix(1,0,0,1,54,24.56929)" d="M0 0H504V8.50394H0Z" clip-rule="evenodd"/>
</clipPath>
<clipPath id="clip_18">
<path transform="matrix(1,0,0,1,54,748.55599)" d="M0 0V-1.61732H166.42002V0 1.61732H0" clip-rule="evenodd"/>
</clipPath>
<clipPath id="clip_19">
<path transform="matrix(1,0,0,1,54,748.55599)" d="M166.22 0V-1.61732H337.78V0 1.61732H166.22" clip-rule="evenodd"/>
</clipPath>
<clipPath id="clip_20">
<path transform="matrix(1,0,0,1,54,748.55599)" d="M337.58 0V-1.61732H504V0 1.61732H337.58" clip-rule="evenodd"/>
</clipPath>
</defs>
<text xml:space="preserve" transform="matrix(1 0 0 1 54 54)" font-size="14" font-family="TimesLTStd"><tspan y="11.85" x="31.5 38.5 48.006 61.222 65.884 69.776 73.668 79.884 83.384 90.384 97.384 102.046009 109.046009 112.938 116.83 122.276 125.776 129.668 136.668 140.168 144.06 151.06 157.276 163.492 167.384 171.276 178.276 185.276 188.776 195.776 202.776 209.776 216.776 223.776 230.776">b.Write 32-bits to location 0x2010 </tspan></text>
<text xml:space="preserve" transform="matrix(1 0 0 1 54 54)" font-size="14" font-family="ZapfDingbatsStd"><tspan y="11.85" x="234.276">&#x2192;</tspan></text>
<text xml:space="preserve" transform="matrix(1 0 0 1 54 54)" font-size="14" font-family="TimesLTStd"><tspan y="11.85" x="246.008 249.508 254.17 258.062 262.724 268.17 272.062 275.562 279.454 283.346 289.562 294.224 300.44 304.332 308.224 315.224 322.224 325.724 332.724 337.386 340.886 344.77799 351.77799 357.994 361.494 372.386 376.27799 383.27799 390.27799 394.93998 398.43998 402.33198 409.33198 416.33198 423.33198"> first iteration of the minor loop.</tspan><tspan y="36.25" x="32.283967 38.499967 48.005968 57.343969 63.559968 69.77597 76.77597 80.27597 87.27597 94.27597 98.16797 104.38397 107.88397 112.545978 117.20798 124.20798 135.09998 138.59998 142.49198 149.49198 155.70798 161.92398 165.81598 169.70798 176.70798 183.70798 187.20798 194.20798 201.20798 208.20798 215.20798 222.20798 229.20798 232.70798 236.20798 240.86998 247.08599 253.30199 260.302 263.802 270.802 277.802 281.694 287.91 291.41 296.072 300.73399 307.73399 318.62599 322.12599 326.01799 333.01799 339.23399 345.44999 349.34199 353.23399 360.23399 367.23399 370.73399 377.73399 384.73399 391.73399 398.73399 405.73399 412.73399 416.23399 419.73399 424.39598 430.61198 436.82798 443.82798 447.32798 454.32798 461.32798 465.21998 471.43598 474.93598 479.59797 484.25996 491.25996">c.Read byte from location 0x1014, read byte from location 0x1015, read byte from</tspan><tspan y="52.25" x="48.005987 55.005987 62.005987 69.00598 76.00598 83.00598 90.00598 93.50598 97.00598 101.667987 107.88399 114.09999 121.09999 124.59999 131.59999 138.59999 142.49199 148.708 152.208 156.87 161.532 168.532 179.424 182.924 189.924 196.924 203.924 210.924 217.924 224.924">0x1016, read byte from 0x1017.</tspan><tspan y="76.65" x="31.499985 38.499986 48.005987 61.221986 65.88399 69.775989 73.667987 79.88399 83.38399 90.38399 97.38399 102.04599 109.04599 112.93799 116.82999 122.275989 125.775989 129.66799 136.66799 140.16799 144.05998 151.05998 157.27599 163.49199 167.38399 171.27599 178.27599 185.27599 188.77599 195.77599 202.77599 209.77599 216.77599 223.77599 230.77599">d.Write 32-bits to location 0x2014 </tspan></text>
<text xml:space="preserve" transform="matrix(1 0 0 1 54 54)" font-size="14" font-family="ZapfDingbatsStd"><tspan y="76.65" x="234.27599">&#x2192;</tspan></text>
<text xml:space="preserve" transform="matrix(1 0 0 1 54 54)" font-size="14" font-family="TimesLTStd"><tspan y="76.65" x="246.00798 249.50798 254.95398 261.16999 267.386 274.386 281.386 288.386 291.886 295.77799 299.66999 305.886 310.54798 316.76399 320.65599 324.54798 331.54798 338.54798 342.04798 349.04798 353.70997 357.20997 361.10197 368.10197 374.31797 377.81797 388.70997 392.60197 399.60197 406.60197 411.26396 414.76396 418.65596 425.65596 432.65596 439.65596"> second iteration of the minor loop.</tspan><tspan y="101.05" x="32.283998 38.499998 48.005998 57.343999 63.559999 69.776 76.776 80.276 87.276 94.276 98.168 104.384 107.884 112.546009 117.20801 124.20801 135.1 138.6 142.492 149.492 155.70801 161.92401 165.81601 169.70801 176.70801 183.70801 187.20801 194.20801 201.20801 208.20801 215.20801 222.20801 229.20801 232.70801 236.20801 240.87001 247.08602 253.30202 260.302 263.802 270.802 277.802 281.694 287.91 291.41 296.072 300.73399 307.73399 318.62599 322.12599 326.01799 333.01799 339.23399 345.44999 349.34199 353.23399 360.23399 367.23399 370.73399 377.73399 384.73399 391.73399 398.73399 405.73399 412.73399 416.23399 419.73399 424.39598 430.61198 436.82798 443.82798 447.32798 454.32798 461.32798 465.21998 471.43598 474.93598 479.59797 484.25996 491.25996">e.Read byte from location 0x1018, read byte from location 0x1019, read byte from</tspan><tspan y="117.05" x="48.006017 55.006017 62.006017 69.00601 76.00601 83.00601 93.11401 96.61401 100.11401 104.77602 110.99202 117.20802 124.20802 127.70802 134.70803 141.70803 145.60002 151.81603 155.31603 159.97803 164.64003 171.64003 182.53203 186.03203 193.03203 200.03203 207.03203 214.03203 221.03203 230.37003">0x101A, read byte from 0x101B.</tspan><tspan y="141.45001" x="33.838018 38.500017 48.006017 61.222017 65.88402 69.77602 73.668018 79.88402 83.38402 90.38402 97.38402 102.04602 109.04602 112.93802 116.83002 122.27602 125.77602 129.66802 136.66802 140.16802 144.06002 151.06002 157.27602 163.49202 167.38402 171.27602 178.27602 185.27602 188.77602 195.77602 202.77602 209.77602 216.77602 223.77602 230.77602">f.Write 32-bits to location 0x2018 </tspan></text>
<text xml:space="preserve" transform="matrix(1 0 0 1 54 54)" font-size="14" font-family="ZapfDingbatsStd"><tspan y="141.45001" x="234.27602">&#x2192;</tspan></text>
<text xml:space="preserve" transform="matrix(1 0 0 1 54 54)" font-size="14" font-family="TimesLTStd"><tspan y="141.45001" x="246.00801 249.50801 253.40001 260.40003 264.29203 268.954 275.954 279.454 283.346 287.238 293.454 298.116 304.332 308.224 312.116 319.116 326.116 329.616 336.616 341.27799 344.77799 348.66999 355.66999 361.886 365.386 376.27799 380.16999 387.16999 394.16999 398.83198 402.33198 406.22398 413.22398 420.22398 427.22398"> third iteration of the minor loop.</tspan><tspan y="165.85" x="31.500061 38.50006 48.00606 57.344064 63.560064 69.77606 76.77606 80.27606 87.27606 94.27606 98.16806 104.38406 107.88406 112.54607 117.20807 124.20807 135.10007 138.60007 142.49207 149.49207 155.70807 161.92407 165.81607 169.70807 176.70807 183.70807 187.20807 194.20807 201.20807 208.20807 215.20807 222.20807 231.54607 235.04607 238.54607 243.20807 249.42407 255.64008 262.64009 266.14009 273.14009 280.14009 284.03208 290.24809 293.74809 298.41007 303.07206 310.07206 320.96406 324.46406 328.35606 335.35606 341.57206 347.78807 351.68006 355.57206 362.57206 369.57206 373.07206 380.07206 387.07206 394.07206 401.07206 408.07206 418.18006 421.68006 425.18006 429.84205 436.05805 442.27406 449.27406 452.77406 459.77406 466.77406 470.66606">g.Read byte from location 0x101C, read byte from location 0x101D, read byte</tspan><tspan y="181.85" x="48.006074 52.66807 57.33007 64.33007 75.22207 78.72207 85.72207 92.72207 99.72207 106.72207 113.72207 122.27607 125.77607 129.27606 133.93807 140.15407 146.37007 153.37007 156.87007 163.87007 170.87007 174.76207 180.97808 184.47808 189.14008 193.80208 200.80208 211.69408 215.19408 222.19408 229.19408 236.19408 243.19408 250.19408 257.9781">from 0x101E, read byte from 0x101F.</tspan><tspan y="206.25" x="31.500063 38.50006 48.00606 61.22206 65.88406 69.77606 73.66806 79.88406 83.38406 90.38406 97.38406 102.04607 109.04607 112.938068 116.83006 122.27606 125.77606 129.66806 136.66806 140.16806 144.06006 151.06006 157.27606 163.49207 167.38407 171.27606 178.27606 185.27606 188.77606 195.77606 202.77606 209.77606 216.77606 223.77606 233.11406">h.Write 32-bits to location 0x201C </tspan></text>
<text xml:space="preserve" transform="matrix(1 0 0 1 54 54)" font-size="14" font-family="ZapfDingbatsStd"><tspan y="206.25" x="236.61406">&#x2192;</tspan></text>
<text xml:space="preserve" transform="matrix(1 0 0 1 54 54)" font-size="14" font-family="TimesLTStd"><tspan y="206.25" x="248.34606 251.84606 255.73805 261.95405 267.40007 271.29206 274.79206 278.68406 282.57606 288.79206 293.45405 299.67005 303.56205 307.45405 314.45405 321.45405 324.95405 331.95405 336.61604 340.11604 344.00804 351.00804 357.22404 360.72404 371.61604 375.50804 382.50804 389.50804 394.17 397.67 401.562 408.562 415.562 422.562"> last iteration of the minor loop </tspan></text>
<text xml:space="preserve" transform="matrix(1 0 0 1 54 54)" font-size="14" font-family="ZapfDingbatsStd"><tspan y="206.25" x="426.06208">&#x2192;</tspan></text>
<text xml:space="preserve" transform="matrix(1 0 0 1 54 54)" font-size="14" font-family="TimesLTStd"><tspan y="206.25" x="437.79408 441.29408 452.18608 458.40208 462.29408 469.29408 473.95606 477.45606 481.34806 488.34806 495.34806"> major loop</tspan><tspan y="222.25" x="48.006074 54.222074 61.222074 72.114078 79.114078 83.00607 89.22208 93.114078 99.33008">complete.</tspan><tspan y="246.65" x=".5040817 7.5040819 14.504082 23.996083 30.212082 40.320085 52.766084 62.874086 66.374088 72.59009 79.59009 86.59009 90.482089 97.482089 103.69809 107.19809 117.30609 121.968097 125.86009 129.75209 135.9681 141.4141 145.30609 148.80609 157.36009 166.69809">14.eDMA engine writes: TCD</tspan></text>
<text xml:space="preserve" transform="matrix(1 0 0 1 54 54)" font-size="14" font-family="TimesLTStd" font-style="italic"><tspan y="246.65" x="176.80609">n</tspan></text>
<text xml:space="preserve" transform="matrix(1 0 0 1 54 54)" font-size="14" font-family="TimesLTStd"><tspan y="246.65" x="183.80608 190.80608 198.59008 208.69808 218.80608 228.91408 238.25208 241.75208 249.64807 253.14807 260.14808 267.14808 274.14808 281.14808 288.14808 295.14808 298.64808 302.14808 310.70207 320.04008">_SADDR = 0x1000, TCD</tspan></text>
<text xml:space="preserve" transform="matrix(1 0 0 1 54 54)" font-size="14" font-family="TimesLTStd" font-style="italic"><tspan y="246.65" x="330.14808">n</tspan></text>
<text xml:space="preserve" transform="matrix(1 0 0 1 54 54)" font-size="14" font-family="TimesLTStd"><tspan y="246.65" x="337.14808 344.14808 354.25608 364.36408 374.47209 384.58009 393.9181 397.4181 405.3141 408.8141 415.8141 422.8141 429.8141 436.8141 443.8141 450.8141">_DADDR = 0x2000,</tspan><tspan y="262.65" x="23.996094 32.550096 41.888097">TCD</tspan></text>
<text xml:space="preserve" transform="matrix(1 0 0 1 54 54)" font-size="14" font-family="TimesLTStd" font-style="italic"><tspan y="262.65" x="51.996095">n</tspan></text>
<text xml:space="preserve" transform="matrix(1 0 0 1 54 54)" font-size="14" font-family="TimesLTStd"><tspan y="262.65" x="58.996095 65.99609 75.33409 79.99609 88.550098 97.104099 106.44209 109.94209 117.83809 121.33809 128.33809 131.83809 136.50009 145.0541 154.39209">_CITER = 2 (TCD</tspan></text>
<text xml:space="preserve" transform="matrix(1 0 0 1 54 54)" font-size="14" font-family="TimesLTStd" font-style="italic"><tspan y="262.65" x="164.50009">n</tspan></text>
<text xml:space="preserve" transform="matrix(1 0 0 1 54 54)" font-size="14" font-family="TimesLTStd"><tspan y="262.65" x="171.50009 178.50009 187.83809 192.50009 201.0541 209.6081 218.94609 223.6081">_BITER).</tspan><tspan y="287.05" x=".5041046 7.5041048 14.504105 23.996106 30.212105 40.320108 52.766107 62.874109 66.37411 72.59011 79.59011 86.59011 90.48211 97.48211 103.69811 107.19811 117.306118 121.96812 125.860118 129.75212 135.96813 141.41413 145.30612 148.80612 157.36013 166.69812">15.eDMA engine writes: TCD</tspan></text>
<text xml:space="preserve" transform="matrix(1 0 0 1 54 54)" font-size="14" font-family="TimesLTStd" font-style="italic"><tspan y="287.05" x="176.80609">n</tspan></text>
<text xml:space="preserve" transform="matrix(1 0 0 1 54 54)" font-size="14" font-family="TimesLTStd"><tspan y="287.05" x="183.80609 190.80609 200.14409 207.92809 217.26609 221.92809 232.03609 241.37409 249.92809 254.59009 264.6981 273.25209 277.91407 281.41407 289.31007 292.81007 299.81007 303.31007 306.81007 315.36405 324.70207">_CSR[ACTIVE] = 0, TCD</tspan></text>
<text xml:space="preserve" transform="matrix(1 0 0 1 54 54)" font-size="14" font-family="TimesLTStd" font-style="italic"><tspan y="287.05" x="334.8101">n</tspan></text>
<text xml:space="preserve" transform="matrix(1 0 0 1 54 54)" font-size="14" font-family="TimesLTStd"><tspan y="287.05" x="341.8101 348.8101 358.1481 365.9321 375.2701 379.9321 390.0401 400.1481 410.2561 418.8101 423.47209 426.97209 434.86808 438.36808 445.36808 448.86808 452.36808 457.03007 467.13807 475.69206 480.35404 487.35404 492.01603 495.51603">_CSR[DONE] = 1, INT[n] =</tspan><tspan y="303.05" x="23.996125 30.996125">1.</tspan><tspan y="327.44999" x=".50411418 7.504114 14.504114 23.996115 32.550115 39.550115 45.766115 49.266115 55.482114 62.482114 68.69811 75.69811 82.69811 88.914119 92.806118 96.306118 100.96812 107.18412 111.07612 114.96812 119.63012 125.84612 131.29213">16.The channel retires </tspan></text>
<text xml:space="preserve" transform="matrix(1 0 0 1 54 54)" font-size="14" font-family="ZapfDingbatsStd"><tspan y="327.44999" x="134.79212">&#x2192;</tspan></text>
<text xml:space="preserve" transform="matrix(1 0 0 1 54 54)" font-size="14" font-family="TimesLTStd"><tspan y="327.44999" x="146.52411 150.02411 160.9161 167.13211 171.02411 178.02411 182.68611 186.18611 190.07811 197.07811 204.07811 211.07811 214.57811 220.79412 227.79412 238.68611 245.68611 249.57811 255.79412 259.68614 265.90214 269.40214 272.90214 281.45613 288.45613 294.67213 298.17213 304.38813 314.49613 326.94215 337.05015 340.55015 347.55015 354.55015 360.76615 366.21217 369.71217 373.60417 380.60417 384.49617 390.71217 394.21217 401.21217 405.87416 409.37416 414.82017 421.03617 425.69816 432.69816 436.59016 442.80616 449.02217 454.46818 457.96818 461.86018 468.86018 475.07618 478.57618 485.57618 491.79219 498.79219"> major loop complete. The eDMA goes idle or services the next</tspan><tspan y="343.44999" x="23.996117 30.212117 37.212118 43.428117 50.428117 57.428117 63.644117 67.53612">channel.</tspan></text>
<text xml:space="preserve" transform="matrix(1 0 0 1 54 447.99998)" font-size="15" font-family="HelveticaLTStd" font-weight="bold"><tspan y="11.89648" x="-.00388 8.336122 16.676123 20.846123 29.186123 33.356126 41.696126 45.866128">22.5.4.3</tspan></text>
<text xml:space="preserve" transform="matrix(1 0 0 1 122.3833 447.99998)" font-size="15" font-family="HelveticaLTStd" font-weight="bold"><tspan y="11.89648" x="-.00389 10.826111 19.166111 23.336112 32.50111 41.66611 45.836114 50.831113 59.996114 68.33611 72.50611 85.84111 95.00611 104.17111 113.33611 117.50611 126.67111 130.84111 135.8361 144.1761 152.5161 157.5111 166.67609 172.5111">Using the modulo feature</tspan></text>
<text xml:space="preserve" transform="matrix(1 0 0 1 54 54)" font-size="14" font-family="TimesLTStd"><tspan y="430.24998" x="-.00089 8.55311 15.55311 21.769112 25.269112 36.161115 43.161115 50.161115 57.161115 61.053117 68.053119 71.553119 76.21512 82.43112 88.647129 92.53912 99.53912 104.201129 110.41713 113.91713 120.91713 125.57913 129.07913 132.97113 139.97113 146.18714 149.68714 155.90314 166.01114 178.45714 188.56514 192.06514 199.06514 203.72714 210.72714 217.72714 221.61914 228.61914 234.83515 240.28115 243.78115 247.67314 254.67314 260.88914 264.38914 270.60514 277.60514 281.49714 285.38914 289.28114 293.17314 300.17314 303.67314 307.56513 314.56513 318.06513 321.95713 332.84913 339.84913 343.74113 349.95713 360.84913 367.06513 374.06513 377.95713 381.45713 387.67314 391.17314 397.38914 401.28114 405.9431 412.15913 419.15913 423.05113 429.26713 433.9291 437.4291 444.4291 450.6451 454.5371 460.7531 464.2531 471.2531 478.2531 484.46913 491.46913">The modulo feature of the eDMA provides the ability to implement a circular data queue</tspan><tspan y="446.24998" x="-.00088 3.8911205 10.891121 14.391121 24.499123 31.499123 35.391126 41.607126 48.607126 52.107126 55.999128 62.999128 69.215129 72.715129 78.161128 82.05312 88.26913 94.48513 97.98513 104.98513 109.64713 113.14713 117.03913 124.03913 130.25513 133.75513 140.75513 147.75513 153.97113 160.97113 167.18714 170.68714 174.57913 180.02513 183.52513 189.74114 193.24114 200.24114 207.24114 217.34914 223.56514 228.22714 231.72714 238.72714 243.38915 246.88915 253.88915 257.38917 260.88917 273.33518 283.44319 293.55119 297.05119 300.94319 306.3892 309.8892 316.1052 319.6052 326.6052 331.26719 338.26719 342.15919 346.05119 349.55119 354.21318 358.10517 364.32118 368.21318 375.21318 378.71318 383.37516 390.37516 395.03715 398.53715 402.42915 409.42915 415.64515 419.14515 424.59117 431.59117 438.59117 443.25315 449.46916 455.68516 459.18516 465.40116 472.40116">in which the size of the queue is a power of 2. MOD is a 5-bit field for the source and</tspan><tspan y="462.24998" x="-.00088 6.99912 13.21512 18.661122 22.553122 26.445122 33.44512 39.66112 43.553125 47.445127 54.445127 61.445127 64.94513 68.83713 75.83713 79.33713 83.229129 90.229129 96.44513 99.94513 108.49913 117.83713 127.94513 131.44513 134.94513 141.16114 148.16114 155.16114 158.66114 162.55313 166.44513 169.94513 175.39113 182.39113 188.60713 194.82314 198.71514 203.37714 207.26914 213.48514 218.93114 222.43114 232.53914 239.53914 243.43114 249.64714 256.64717 260.14717 264.03916 271.03916 281.14717 287.36317 292.02516 295.52516 301.74116 308.74116 315.74116 320.40315 326.61915 332.06517 337.51118 341.01118 348.01118 351.90318 355.79518 361.24119 364.74119 368.63319 375.63319 381.84919 386.51118 392.72718 403.61918 409.83518 416.83518 420.72718 424.22718 428.88917 433.55116 440.55116 451.44316 454.94316 458.83515 465.83515 472.05116 475.94316">destination in the TCD, and it specifies which lower address bits increment from their</tspan><tspan y="478.24998" x="-.00088 6.99912 11.66112 15.553121 22.55312 26.44512 33.44512 39.66112 43.553125 47.053125 54.053125 60.269124 64.161128 71.161128 77.37713 80.87713 87.09313 91.755138 95.64713 101.86314 106.52514 110.02514 113.91714 120.91714 127.13314 130.63315 136.84915 143.84915 150.84915 155.51116 161.72716 167.17316 172.61916 180.51515 187.51515 192.17716 196.83916 202.28516 208.50116 212.39316 215.89316 222.10916 228.32517 232.21717 238.43317 245.43317 249.32517 255.54117 259.43318 263.32518 270.32518 277.32518 280.82518 284.32518 294.43318 298.32518 302.21717 305.71717 312.71717 319.71717 326.71717 332.93318 337.59516 341.09516 347.31117 354.31117 361.31117 365.97315 372.18916 377.63517 383.08119 386.58119 393.58119 397.47319 401.36518 406.8112 410.3112 414.97319 421.18919 432.08119 438.29719 442.18919 449.18919 452.68919 456.58119 463.58119 469.79719 473.29719 478.7432 484.9592 495.8512">original value after the address+offset calculation. All upper address bits remain the same</tspan><tspan y="494.24998" x="-.00088 6.215121 11.661121 15.161121 19.053122 26.053122 29.553122 33.44512 40.44512 46.66112 50.16112 57.16112 61.82312 65.71512 72.71512 76.60712 83.60712 89.82312 93.71512 97.21512 104.21512 110.43112 114.32312 121.32312 127.53912 131.03913 134.53913 144.64713 148.14713 153.59313 159.80913 163.70113 167.59313 171.48513 178.48513 185.48513 188.98513 195.98513 200.64713 204.14713 211.14713 214.64713 219.30913 226.30913 230.97113 234.47113 238.36313 245.36313 249.25513 254.70113 258.2011 262.8631 266.7551 272.9711 276.8631 283.8631 287.3631 294.3631 298.2551 303.7011 309.9171 316.9171 320.8091 327.02513 332.47114 335.97114 339.86314 346.86314 353.07914 356.57914 367.47114 374.47114 381.47114 388.47114 392.36314 399.36314 402.86314 407.52513 413.74113 419.95713 423.84913 430.84913 435.5111 441.7271">as in the original value. A setting of 0 for this field disables the modulo feature.</tspan><tspan y="518.64999" x="-.00088 8.55312 15.55312 21.76912 25.26912 29.93112 36.93112 40.823125 44.715127 51.715127 61.823129 65.715129 72.715129 79.715129 83.215129 87.107128 93.32313 100.32313 104.215129 110.43113 113.93113 119.37713 126.37713 133.37714 143.48514 148.93114 152.43114 159.43114 166.43114 176.53914 180.03914 183.93114 190.93114 197.14714 200.64714 204.53914 209.20114 215.41715 222.41715 227.86315 232.52515 238.74115 243.40316 246.90316 253.11916 260.11915 267.11915 271.78114 277.99714 283.44316 288.88917 295.10517 300.55119 304.05119 310.26719 314.92918 321.14518 324.64518 330.0912 337.0912 343.3072 349.5232 353.4152 358.07719 361.96919 368.18519 375.18519 378.68519 385.68519 391.90119 397.3472 403.5632 410.5632 414.0632 421.0632 428.0632 431.5632 435.4552 442.4552 448.6712 452.1712 457.61723 463.83323 467.72523 471.61723 475.50923 482.50923">The following table shows how the transfer addresses are specified based on the setting</tspan><tspan y="534.6499" x="-.00088 6.99912 11.66112 15.16112 19.053122 26.053122 32.269124 35.769124 48.215127 58.323129 68.43113 71.93113 76.59313 80.48513 86.70113 90.59313 97.59313 101.09313 104.59313 114.70113 120.91714 125.57914 131.79514 135.29514 141.51114 145.01114 151.22714 155.11914 159.78115 165.99715 172.99715 176.88915 183.10515 187.76715 191.26715 198.26715 205.26715 209.92916 214.59116 220.80716 225.46916 228.96916 232.86116 238.30716 241.80716 248.02317 252.68517 258.90116 265.11717 269.00917 275.22517 282.22517 285.72517 295.83317 302.83317 309.04917 313.71116 319.92716 323.42716 327.31916 334.31916 340.53517 344.03517 350.25117 357.25117 364.25117 368.91316 375.12916 380.57518 386.02119 389.52119 399.62919 404.29118 410.50718 417.50718 422.9532 426.4532 430.34519 437.34519 440.84519 444.73719 451.73719">of the MOD field. Here a circular buffer is created where the address wraps to the</tspan><tspan y="550.6499" x="-.00085 6.99915 11.66115 15.55315 22.55315 26.44515 33.445154 39.66115 43.553155 47.053155 54.053155 60.269155 64.161159 71.161159 77.37716 80.87716 90.98516 97.98516 101.87716 105.76916 111.98516 115.48516 119.37716 126.37716 132.59316 136.09316 143.09316 150.09316 153.59316 160.59316 167.59316 174.59316 180.80916 185.47116 188.97116 195.18717 202.18717 209.18717 213.84917 220.06517 225.51117 230.95717 234.45717 241.45717 245.34917 249.24117 254.68717 258.18717 262.84916 269.84916 276.84916 283.84916 290.84916 297.84916 304.84916 311.84916 318.84916">original value while the 28 upper address bits (0x1234567</tspan></text>
<text xml:space="preserve" transform="matrix(1 0 0 1 54 54)" font-size="14" font-family="TimesLTStd" font-style="italic"><tspan y="550.6499" x="325.84916">x</tspan></text>
<text xml:space="preserve" transform="matrix(1 0 0 1 54 54)" font-size="14" font-family="TimesLTStd"><tspan y="550.6499" x="332.06517 336.72715 340.22715 344.88914 351.10514 354.99714 361.21315 365.10514 372.10514 375.60514 379.49714 386.49714 392.71315 396.60514 401.26713 404.76713 411.76713 416.4291 420.3211 427.3211 431.2131 438.2131 444.4291 448.3211 451.8211 458.8211 465.0371 468.9291 475.9291 482.1451 485.6451 489.1451 493.8071">) retain their original value. In</tspan><tspan y="566.6499" x="-.0008239746 3.8911765 10.891176 14.783176 20.229178 23.729178 29.945179 36.94518 43.16118 54.05318 61.05318 64.94518 71.16119 74.66119 78.553188 85.553188 91.76919 95.26919 100.71519 107.71519 114.71519 119.37719 125.59319 131.80919 135.30919 141.52519 148.52519 155.52519 160.1872 166.4032 171.8492 177.2952 180.7952 184.6872 190.1332 193.6332 199.0792 205.2952 209.1872 212.6872 216.5792 223.5792 227.0792 234.0792 241.0792 248.0792 255.0792 262.0792 269.0792 276.0792 283.0792 290.0792 297.0792 300.5792 304.0792 307.9712 314.9712 321.1872 324.6872 331.6872 336.34919 341.01118 346.45719 352.6732 356.5652 360.0652 363.95719 369.4032 372.9032 378.3492 384.56523 388.4572 391.9572 395.8492 402.8492 406.3492 413.3492 416.8492 423.8492 430.8492 434.7412 440.9572 446.40324 449.90324 456.11924 463.11924 470.11924 473.61924 477.51124 484.51124">this example the source address is set to 0x12345670, the offset is set to 4 bytes and the</tspan><tspan y="582.6499" x="-.0008239746 12.445177 22.553177 32.66118 36.16118 40.823179 44.71518 50.93118 54.82318 61.82318 65.32318 69.21518 74.66118 78.16118 83.60718 89.82318 93.71518 97.21518 101.10718 108.10718 111.60718 118.60718 122.10718 125.60718 131.82318 135.71518 139.60718 146.60718 156.71518 160.60718 167.60718 174.60718 178.10718 182.76918 189.76918 194.43119 197.93119 204.14719 207.64719">MOD field is set to 4, allowing for a 2</tspan></text>
<text xml:space="preserve" transform="matrix(1 0 0 1 54 54)" font-size="10.5" font-family="TimesLTStd"><tspan y="577.9832" x="214.64717">4</tspan></text>
<text xml:space="preserve" transform="matrix(1 0 0 1 54 54)" font-size="14" font-family="TimesLTStd"><tspan y="582.6499" x="219.89717 223.39717 230.39717 237.39717 241.28917 247.50518 251.00518 255.66718 262.66719 269.66719 274.32917 281.32917 288.32917 292.22117 298.43717 303.09916 306.59916 312.04518 315.93717 322.15318 328.36918 331.86918 338.86918 345.86918 352.08518 359.08518 365.30119"> byte (16-byte) size queue.</tspan></text>
<path transform="matrix(1,0,0,1,54,54)" d="M0 595.19998H504V662.19998H0Z" fill="#ffffff" fill-rule="evenodd"/>
<text xml:space="preserve" transform="matrix(1 0 0 1 202 649.19998)" font-size="12" font-family="HelveticaLTStd" font-weight="bold"><tspan y="10.11719" x="16.62523 23.95723 30.62923 37.96123 41.297235 47.969236 51.305238 57.977239 64.64924 68.64524 75.317249 81.98924 88.66124 100.99724 110.99324 118.32524 125.65724 132.98925 136.32524 143.65724 146.99324 153.66524 160.33724 167.00923 177.67723 185.00923 188.34523">Table 22-297.Modulo example</tspan></text>
<g clip-path="url(#clip_1)">
<path transform="matrix(1,0,0,1,54,668.19998)" d="M.5 .5H100.3V15.5H.5Z" fill="#ffffff" fill-rule="evenodd"/>
</g>
<text xml:space="preserve" transform="matrix(1 0 0 1 56.5 670.69998)" font-size="9" font-family="HelveticaLTStd" font-weight="bold"><tspan y="7.83789" x="12.645 18.144001 21.645 26.649003 32.148004 37.152006 40.149007 45.153009 48.654008 51.156007 57.654008 63.153009 71.15401 76.65301 81.657009">Transfer Number</tspan></text>
<g clip-path="url(#clip_2)">
<path transform="matrix(1,0,0,1,54,668.19998)" d="M101.3 .5H503.5V15.5H101.3Z" fill="#ffffff" fill-rule="evenodd"/>
</g>
<text xml:space="preserve" transform="matrix(1 0 0 1 157.3 670.69998)" font-size="9" font-family="HelveticaLTStd" font-weight="bold"><tspan y="7.83789" x="182.097 188.595 194.094 199.59299 203.094 208.09799 213.10199">Address</tspan></text>
<g clip-path="url(#clip_3)">
<path transform="matrix(1,0,0,1,54,684.19998)" d="M.25 .5H100.55V15.5H.25Z" fill="#ffffff" fill-rule="evenodd"/>
</g>
<text xml:space="preserve" transform="matrix(1 0 0 1 56.25 686.69998)" font-size="9" font-family="HelveticaLTStd"><tspan y="7.83789" x="45.64799">1</tspan></text>
<g clip-path="url(#clip_4)">
<path transform="matrix(1,0,0,1,54,684.19998)" d="M101.05 .5H503.75V15.5H101.05Z" fill="#ffffff" fill-rule="evenodd"/>
</g>
<text xml:space="preserve" transform="matrix(1 0 0 1 157.05 686.69998)" font-size="9" font-family="HelveticaLTStd"><tspan y="7.83789" x="174.582 179.586 184.086 189.09 194.094 199.09799 204.10199 209.10599 214.10999 219.11399">0x12345670</tspan></text>
<text xml:space="preserve" transform="matrix(1 0 0 1 54 705.19998)" font-size="9" font-family="HelveticaLTStd"><tspan y="7.83789" x="180.954 185.958 190.96199 196.46099 198.45899 203.46298 205.96498 210.96898 215.97298 220.97698 223.47898 225.47698 230.48097 235.48497 240.48897 244.98897 247.49097 252.49497 257.49897 260.00099 262.503 267.507 272.511 275.013 280.017 285.021 289.521 292.023 294.52503 300.02403 305.028 310.527 315.531 318.03303 320.53504">Table continues on the next page...</tspan></text>
<g clip-path="url(#clip_5)">
<path transform="matrix(1,0,0,1,54,668.19998)" stroke-width="1" stroke-linecap="round" stroke-miterlimit="10" stroke-linejoin="miter" fill="none" stroke="#000000" d="M-.5 0H100.9"/>
</g>
<g clip-path="url(#clip_6)">
<path transform="matrix(1,0,0,1,54,668.19998)" stroke-width="1" stroke-linecap="round" stroke-miterlimit="10" stroke-linejoin="miter" fill="none" stroke="#000000" d="M100.8-.5V16.5"/>
</g>
<g clip-path="url(#clip_7)">
<path transform="matrix(1,0,0,1,54,668.19998)" stroke-width="1" stroke-linecap="round" stroke-miterlimit="10" stroke-linejoin="miter" fill="none" stroke="#000000" d="M101.4 16H-.5"/>
</g>
<g clip-path="url(#clip_8)">
<path transform="matrix(1,0,0,1,54,668.19998)" stroke-width="1" stroke-linecap="round" stroke-miterlimit="10" stroke-linejoin="miter" fill="none" stroke="#000000" d="M0 16.5V-.5"/>
</g>
<g clip-path="url(#clip_9)">
<path transform="matrix(1,0,0,1,54,668.19998)" stroke-width="1" stroke-linecap="round" stroke-miterlimit="10" stroke-linejoin="miter" fill="none" stroke="#000000" d="M100.7 0H504.5"/>
</g>
<g clip-path="url(#clip_10)">
<path transform="matrix(1,0,0,1,54,668.19998)" stroke-width="1" stroke-linecap="round" stroke-miterlimit="10" stroke-linejoin="miter" fill="none" stroke="#000000" d="M504-.5V16.5"/>
</g>
<g clip-path="url(#clip_11)">
<path transform="matrix(1,0,0,1,54,668.19998)" stroke-width="1" stroke-linecap="round" stroke-miterlimit="10" stroke-linejoin="miter" fill="none" stroke="#000000" d="M504.5 16H100.2"/>
</g>
<g clip-path="url(#clip_12)">
<path transform="matrix(1,0,0,1,54,684.19998)" stroke-width=".5" stroke-linecap="round" stroke-miterlimit="10" stroke-linejoin="miter" fill="none" stroke="#000000" d="M100.8-.6V16"/>
</g>
<g clip-path="url(#clip_13)">
<path transform="matrix(1,0,0,1,54,684.19998)" stroke-width=".5" stroke-linecap="round" stroke-miterlimit="10" stroke-linejoin="miter" fill="none" stroke="#000000" d="M100.9 15.75H-.25"/>
</g>
<g clip-path="url(#clip_14)">
<path transform="matrix(1,0,0,1,54,684.19998)" stroke-width=".5" stroke-linecap="round" stroke-miterlimit="10" stroke-linejoin="miter" fill="none" stroke="#000000" d="M0 16V.4"/>
</g>
<g clip-path="url(#clip_15)">
<path transform="matrix(1,0,0,1,54,684.19998)" stroke-width=".5" stroke-linecap="round" stroke-miterlimit="10" stroke-linejoin="miter" fill="none" stroke="#000000" d="M504 .4V16"/>
</g>
<g clip-path="url(#clip_16)">
<path transform="matrix(1,0,0,1,54,684.19998)" stroke-width=".5" stroke-linecap="round" stroke-miterlimit="10" stroke-linejoin="miter" fill="none" stroke="#000000" d="M504.25 15.75H100.7"/>
</g>
<g clip-path="url(#clip_17)">
<path transform="matrix(1,0,0,1,54,24.56929)" d="M16-6.4 536.8 0V16H-6.4L16-6.4Z" fill="#666666"/>
<path transform="matrix(1,0,0,1,54,24.56929)" stroke-width=".8" stroke-linecap="butt" stroke-miterlimit="4" stroke-linejoin="miter" fill="none" stroke="#666666" d="M16-6.4 536.8 0V16H-6.4L16-6.4Z"/>
</g>
<text xml:space="preserve" transform="matrix(1 0 0 1 54 18)" font-size="9" font-family="HelveticaLTStd" font-weight="bold"><tspan y="25.87323" x="0 2.5020004 8.001 10.503 13.5 16.002 21.006 23.508002 26.010003 30.510003 35.514005 38.511007 41.013006 46.512006 52.011007 54.513006 59.517007 65.01601 70.51501 73.017009 75.519008 80.523 85.527 88.524 91.026 96.525 102.024 104.526 107.028 112.527 115.524 121.023 124.524 132.52501 137.529 140.526 143.028 148.527">Initialization/application information</tspan></text>
<text xml:space="preserve" transform="matrix(1 0 0 1 54 734.93869)" font-size="10" font-family="HelveticaLTStd" font-weight="bold"><tspan y="8.59766" x="130.006 137.226 142.786 148.346 151.12599 157.79599 163.90599 170.01599 173.346 179.456 185.01599 193.90599 196.68599 199.46599 205.02599 207.80599 215.02599 220.58599 223.91599 229.47599 233.36598 238.92598 245.03598 250.59598 256.15599 258.93598 267.26597 272.82597 278.93595 285.04594 290.60594 293.38594 296.16593 298.94593 306.16593 311.72593 317.28593 320.06593 322.84593 328.4059 331.1859 336.7459 342.8559 348.96589 351.74589 357.30589 362.86589 368.42588">K60 Sub-Family Reference Manual, Rev. 2 Jun 2012</tspan></text>
<text xml:space="preserve" transform="matrix(1 0 0 1 54 751.756)" font-size="9" font-family="HelveticaLTStd"><tspan y="7.83789" x="0 5.0040009 10.008001">524</tspan></text>
<text fill="#ff0000" xml:space="preserve" transform="matrix(1 0 0 1 220.32 751.756)" font-size="10" font-family="HelveticaLTStd" font-weight="bold"><tspan y="8.59766" x="58.45 65.12 69.01 74.57 77.35 80.13 89.02 91.799999 97.909999 103.46999 107.35999">Preliminary</tspan></text>
<text xml:space="preserve" transform="matrix(1 0 0 1 391.68 751.756)" font-size="9" font-family="HelveticaLTStd"><tspan y="7.83789" x="44.775 50.274003 53.271005 58.275007 63.279008 67.77901 72.27901 77.283008 79.281009 84.285 86.787 92.79 97.794 105.291 107.289 111.789 116.793 121.797 126.800998 131.805 136.305 138.80699 143.81099 146.80799 149.30998 151.81198 154.31398 159.31798 163.81798">Freescale Semiconductor, Inc.</tspan></text>
<text fill="#ff0000" xml:space="preserve" transform="matrix(1 0 0 1 54 763.756)" font-size="10" font-family="HelveticaLTStd" font-weight="bold"><tspan y="8.59766" x="180.87 188.65 194.20999 200.31999 205.87999 209.76999 215.32999 218.10999 220.88999 228.10999 234.21999 239.77999 242.55998 248.66999 254.22998 259.78999 265.34999 268.12998 270.90998 277.01997 280.34996 286.45994 290.34996 299.23997 304.79997 308.12995 310.90995 317.01994">General Business Information</tspan></text>
<g clip-path="url(#clip_18)">
<path transform="matrix(1,0,0,1,54,748.55599)" stroke-width=".4" stroke-linecap="round" stroke-miterlimit="10" stroke-linejoin="miter" fill="none" stroke="#000000" d="M0 0H166.42002"/>
</g>
<g clip-path="url(#clip_19)">
<path transform="matrix(1,0,0,1,54,748.55599)" stroke-width=".4" stroke-linecap="round" stroke-miterlimit="10" stroke-linejoin="miter" fill="none" stroke="#000000" d="M166.22 0H337.78"/>
</g>
<g clip-path="url(#clip_20)">
<path transform="matrix(1,0,0,1,54,748.55599)" stroke-width=".4" stroke-linecap="round" stroke-miterlimit="10" stroke-linejoin="miter" fill="none" stroke="#000000" d="M337.58 0H504"/>
</g>
<g transform="matrix(.26,0,0,.26,0,-.000019073487)">
<image id="image_21" width="288" height="154" xlink:href="data:image/png;base64,
iVBORw0KGgoAAAANSUhEUgAAASAAAACaCAIAAACGxwJwAAAACXBIWXMAAA7EAAAO
xAGVKw4bAAAM5klEQVR4nO2d22sd1xWHDYYaDC0uxaWUlogGAn4wCFroq/8E/wl+
aaFvAj009EBEm0JoSeKA01BTtQ5VLjg4luP2GFxfiyMaxfcYy0ZFvqqyghzZMr4o
RmW6rFMfjs6Z2bMv6zf7zMzvYz3r7Dlnf5rZa63Ze11CCIGxLvYACKkyFIwQIBSM
ECAUjBAgFIwQIBSMECAUjBAgFIwQIBSMECAUjBAgFIwQIBSMECAUjBAgFIwQIBSM
ECAUjBAgFIwQIBSMECAUjBAgFIwQIBSMECAUjBAgFIwQIBSMECAUjBAgFIwQIBSM
ECAUjBAgFIwQIBSMECAUjBAgFIwQIBSMECAYwW7vSaZH1OLaTsggnbh74vN//kkx
jl39qh0TM/eKuYi5+8udn3vki1OHT+/WismpnbPzI1HizsLOpYcnWlHMN2kPRrDP
tiXNdZoR3bHpkc///IM//PanWtH45N+dUYxjb5+81fmhv3z/teE//lglXh4dPH76
G5NfrOuHOHN505WZbTfnhhYW9zx6cr6AL9ZASQSTkLtiRKZHlg+u/+vvB0GCvXpo
5snT/0KvQG5ZXR+qKNhfmt+P7lVWXLg6MHN7x+LSOPTrzaI8gkksxftvJE+qzXXX
Pvg2SDCJj899iRv+4qOn4jBIsFf2bI1ukaVp8jy5slLQA3mLUgn2j03RHFsVTOLQ
rpdAgklcW3gMGv7oxGzvx2kJ9vdPvxldHvuQB8giNSuVYBKnBpOnhf4H+j/PBXsw
vmH0tZ+ABHv9yA3E2KfuPEz9OBXBdu0fiO6M392smIxI2QRrOVY8zwWTUMl2pM54
CVkp6Q5clnbiLUiwl0cHPz23Prot3iG3Mt1vu5cSCiZxcQdk2AY6BJPY+8ZWkGAS
sl5SHHjz0kLWB4ULNnb4u9ElCYyZ29i5VE7BJGTGF8lawf6z91s4wWS9pDXqufvL
hg8KFOx3H74UXY/+d6y0gjWLTdyvFUzi2Ds/AgkmcfbWksqouwpfuoId/tfG6G5o
xc25IZUvvJcyC9YsMHHfI9jywfUh2Q6zYCplsYmZe+ZPCRFs9yc/jG6FboAKZSUX
rLDEfY9gElfGNoMEawSXxVILX1qClT23kRpnLm9C5O5LLpjE8YEiEvdpgkkceGsL
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
M05lMSfBJN786EUK5kq9BROmhsJHaGjqDRest/Blxr4s5irYcF4TMOgnKjW1FywJ
Tdybm3oDBUstfJmxL4t5CGZuAkb8OGWHggUl7nObekMEMxS+zFiWxTwEM2c71H+Z
CkDBVvF1rHWaHkgwc+HLjE1ZzE+w4ewmYMUfpDJQsOe4J+6dCl+uguUWvszYlMW8
BctqAtb6KaoEBevA8QBom6Zeb8FsCl9mcsti3oINZ5ybrvIjVAwKthbrxH3rFCKQ
YJaFLzO5ZbEQwVKbgMPHXD0oWA8Wu2TbN/V6COZU+DJjLouFCDac1gSsMuaKQcHS
yEvc2zf1egjmWvgyYyiLBQo23NMErDjsykDBMshOKobkNnIF8yh8mZG1HE6wriZg
3ZFXAwqWQXbi3qmp10kw78KXmayyWLhgw2tfeVYfeQWgYNmkJe5dm3qdBBMTENch
K7rUspiKYJ1NwIjBlx0KZmRt4t6jqddesMDCl5nUspiKYMMdTcC48ZcXCpZHR+Le
o6nXXjBxAHodsroDCdbOdkDHX1IomAWrB0CnnkKkJZhK4ctMb1lMUbBWEzD6EsoI
RrCpoWdWaMWU8pFNfld06IOfHRj7hVaMTsx2hlbhy8zZW0udH7r76PvvHPy5Vhw9
vb2ASygdvK0TAoSCEQKEghEChIIRAoSCEQKEghEChIIRAoSCEQKEghEChIIRAoSC
EQKEghEChIIRAoSCEQKEghEChIIRAoSCEQKEghEChIIRAoSCEQKEghEChIIRAoSC
EQKEghEChIIRAoSCEQKEghEChIIRAoSCEQKEghEChIIRAoSCEQKEghEChIIRAuR/
5TMAQ7zJBDQAAAAASUVORK5CYII="/>
</g>
</svg>