6 <meta name=
"viewport" content=
"width=device-width, initial-scale=1.0">
7 <title>Interactive BOM for KiCAD
</title>
8 <style type=
"text/css">
10 --pcb-edge-color: black;
12 --pad-color-highlight: #D04040;
13 --pin1-outline-color: #ffb629;
14 --pin1-outline-color-highlight: #b4ff03;
20 font-family: Verdana, sans-serif;
24 --pcb-edge-color: #eee;
26 --pin1-outline-color: #ffa800;
27 --pin1-outline-color-highlight: #ccff00;
28 background-color: #
252c30;
33 background-color: #eee;
34 border:
1px solid #
888;
39 text-decoration: none;
40 display: inline-block;
46 /* This will be inverted */
47 background-color: #c3b7b5;
51 background-color: #
0a0;
55 .dark button.depressed {
56 /* This will be inverted */
57 background-color: #b3b;
65 background-image: url(
"data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 8.47 8.47'%3E%3Crect transform='translate(0 -288.53)' ry='1.17' y='288.8' x='.27' height='7.94' width='7.94' fill='%23f9f9f9'/%3E%3Cg transform='translate(0 -288.53)'%3E%3Crect width='7.94' height='7.94' x='.27' y='288.8' ry='1.17' fill='none' stroke='%23000' stroke-width='.4' stroke-linejoin='round'/%3E%3Cpath d='M1.32 290.12h5.82M1.32 291.45h5.82' fill='none' stroke='%23000' stroke-width='.4'/%3E%3Cpath d='M4.37 292.5v4.23M.26 292.63H8.2' fill='none' stroke='%23000' stroke-width='.3'/%3E%3Ctext font-weight='700' font-size='3.17' font-family='sans-serif'%3E%3Ctspan x='1.35' y='295.73'%3EF%3C/tspan%3E%3Ctspan x='5.03' y='295.68'%3EB%3C/tspan%3E%3C/text%3E%3C/g%3E%3C/svg%3E%0A");
66 background-size:
32px
32px;
67 background-position:
5px
5px;
68 background-repeat: no-repeat;
72 background-image: url(
"data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 8.47 8.47'%3E%3Crect transform='translate(0 -288.53)' ry='1.17' y='288.8' x='.27' height='7.94' width='7.94' fill='%23f9f9f9'/%3E%3Cg transform='translate(0 -288.53)'%3E%3Crect width='7.94' height='7.94' x='.27' y='288.8' ry='1.17' fill='none' stroke='%23000' stroke-width='.4' stroke-linejoin='round'/%3E%3Cpath d='M1.06 290.12H3.7m-2.64 1.33H3.7m-2.64 1.32H3.7m-2.64 1.3H3.7m-2.64 1.33H3.7' fill='none' stroke='%23000' stroke-width='.4'/%3E%3Cpath d='M4.37 288.8v7.94m0-4.11h3.96' fill='none' stroke='%23000' stroke-width='.3'/%3E%3Ctext font-weight='700' font-size='3.17' font-family='sans-serif'%3E%3Ctspan x='5.11' y='291.96'%3EF%3C/tspan%3E%3Ctspan x='5.03' y='295.68'%3EB%3C/tspan%3E%3C/text%3E%3C/g%3E%3C/svg%3E%0A");
73 background-size:
32px
32px;
74 background-position:
5px
5px;
75 background-repeat: no-repeat;
79 background-image: url(
"data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 8.47 8.47'%3E%3Crect transform='translate(0 -288.53)' ry='1.17' y='288.8' x='.27' height='7.94' width='7.94' fill='%23f9f9f9'/%3E%3Cg transform='translate(0 -288.53)' fill='none' stroke='%23000' stroke-width='.4'%3E%3Crect width='7.94' height='7.94' x='.27' y='288.8' ry='1.17' stroke-linejoin='round'/%3E%3Cpath d='M1.59 290.12h5.29M1.59 291.45h5.33M1.59 292.75h5.33M1.59 294.09h5.33M1.59 295.41h5.33'/%3E%3C/g%3E%3C/svg%3E");
80 background-size:
32px
32px;
81 background-position:
5px
5px;
82 background-repeat: no-repeat;
86 background-image: url(
"data:image/svg+xml,%3Csvg height='48' viewBox='0 0 48 48' width='48' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M0 0h48v48h-48z' fill='none'/%3E%3Cpath d='M32 2h-24c-2.21 0-4 1.79-4 4v28h4v-28h24v-4zm6 8h-22c-2.21 0-4 1.79-4 4v28c0 2.21 1.79 4 4 4h22c2.21 0 4-1.79 4-4v-28c0-2.21-1.79-4-4-4zm0 32h-22v-28h22v28z'/%3E%3C/svg%3E");
87 background-position:
6px
6px;
88 background-repeat: no-repeat;
89 background-size:
26px
26px;
97 box-shadow: inset
0px
0px
5px #
6c6c6c;
100 textarea.clipboard-temp {
110 background: transparent;
115 border-top-left-radius:
6px;
116 border-bottom-left-radius:
6px;
124 border-top-right-radius:
6px;
125 border-bottom-right-radius:
6px;
132 .dark .button-container {
167 text-overflow: ellipsis;
171 border-collapse: collapse;
172 font-family: Consolas,
"DejaVu Sans Mono", Monaco, monospace;
180 border:
1px solid black;
182 word-wrap: break-word;
187 .dark .bom th, .dark .bom td {
188 border:
1px solid #
777;
192 background-color: #CCCCCC;
193 background-clip: padding-box;
197 background-color: #
3b4749;
200 .bom tr.highlighted:nth-child(n) {
201 background-color: #cfc;
204 .dark .bom tr.highlighted:nth-child(n) {
205 background-color: #
226022;
208 .bom tr:nth-child(even) {
209 background-color: #f2f2f2;
212 .dark .bom tr:nth-child(even) {
213 background-color: #
313b40;
217 transition: background-color
0.2s;
247 border-color: transparent transparent #
221 transparent;
248 transform-origin:
50%
85%;
249 transition: opacity
0.2s, transform
0.4s;
252 .dark .bom th .sortmark {
256 .bom th .sortmark.none {
260 .bom th .sortmark.desc {
261 transform: rotate(
180deg);
264 .bom th:hover .sortmark.none {
272 -moz-user-select: none;
275 .bom .bom-checkbox:before {
280 border-color: #
51829f transparent transparent transparent;
285 .bom .bom-checkbox:after {
286 content:
"Double click to set/unset all";
298 .bom .bom-checkbox:hover:before, .bom .bom-checkbox:hover:after {
300 transition: visibility
0.2s linear
1s;
304 -webkit-box-sizing: border-box;
305 -moz-box-sizing: border-box;
306 box-sizing: border-box;
309 background-color: inherit;
312 .split.split-horizontal, .gutter.gutter-horizontal {
318 background-color: #ddd;
319 background-repeat: no-repeat;
320 background-position:
50%;
321 transition: background-color
0.3s;
325 background-color: #
777;
328 .gutter.gutter-horizontal {
329 background-image: url('data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAUAAAAeCAYAAADkftS9AAAAIklEQVQoU2M4c+bMfxAGAgYYmwGrIIiDjrELjpo5aiZeMwF+yNnOs5KSvgAAAABJRU5ErkJggg==');
334 .gutter.gutter-vertical {
335 background-image: url('data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAB4AAAAFAQMAAABo7865AAAABlBMVEVHcEzMzMzyAv2sAAAAAXRSTlMAQObYZgAAABBJREFUeF5jOAMEEAIEEFwAn3kMwcB6I2AAAAAASUVORK5CYII=');
345 font-family: Consolas,
"DejaVu Sans Mono", Monaco, monospace;
347 box-sizing: border-box;
348 border:
1px solid #
888;
351 background-color: #eee;
352 transition: background-color
0.2s, border
0.2s;
353 background-image: url('data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/
9hAAABNklEQVQ4T8XSMUvDQBQH8P/LElFa/AIZHcTBQSz0I/gFstTBRR2KUC4ldDxw7h0Bl3RRUATxi4iiODgoiLNrbQYp5J6cpJJqomkX33Z37/
14d/dIa33MzDuYI4johOI4XhyNRteO46zNYjDzAxE1yBZprVeZ+QbAUhXEGJMA2Ox2u4+fQIa0mPmsCgCgJYQ4t7lfgF0opQYAdv9ABkKI/UnOFCClXKjX61cA1osQY8x9kiRNKeV7IWA3oyhaSdP0FkAtjxhj3hzH2RBCPOf3pzqYHCilfAAX+URm9oMguPzeWSGQvUcMYC8rOBJCHBRdqxTo9/vbRHRqi8bj8XKv1xvODbiuW2u32/bvf0SlDv4XYOY7z/Mavu+nM1+BmQ+NMc0wDF/LprP0DbTWW0T00ul0nn4b7Q87+X4Qmfiq2wAAAABJRU5ErkJggg==');
354 background-position:
10px
10px;
355 background-repeat: no-repeat;
359 background-color: #
111;
363 .searchbox::placeholder {
367 .dark .searchbox::placeholder {
372 width: calc(
60% -
64px);
376 width: calc(
40% -
10px);
379 input[type=text]:focus {
380 background-color: white;
381 border:
1px solid #
333;
384 .dark input[type=text]:focus {
385 background-color: #
333;
386 border:
1px solid #ccc;
390 background-color: #
5050ff;
396 .dark mark.highlight {
397 background-color: #
76a6da;
402 background-color: white;
405 background-image: url(
"data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='36' height='36' viewBox='0 0 20 20'%3E%3Cpath fill='none' d='M0 0h20v20H0V0z'/%3E%3Cpath d='M15.95 10.78c.03-.25.05-.51.05-.78s-.02-.53-.06-.78l1.69-1.32c.15-.12.19-.34.1-.51l-1.6-2.77c-.1-.18-.31-.24-.49-.18l-1.99.8c-.42-.32-.86-.58-1.35-.78L12 2.34c-.03-.2-.2-.34-.4-.34H8.4c-.2 0-.36.14-.39.34l-.3 2.12c-.49.2-.94.47-1.35.78l-1.99-.8c-.18-.07-.39 0-.49.18l-1.6 2.77c-.1.18-.06.39.1.51l1.69 1.32c-.04.25-.07.52-.07.78s.02.53.06.78L2.37 12.1c-.15.12-.19.34-.1.51l1.6 2.77c.1.18.31.24.49.18l1.99-.8c.42.32.86.58 1.35.78l.3 2.12c.04.2.2.34.4.34h3.2c.2 0 .37-.14.39-.34l.3-2.12c.49-.2.94-.47 1.35-.78l1.99.8c.18.07.39 0 .49-.18l1.6-2.77c.1-.18.06-.39-.1-.51l-1.67-1.32zM10 13c-1.65 0-3-1.35-3-3s1.35-3 3-3 3 1.35 3 3-1.35 3-3 3z'/%3E%3C/svg%3E%0A");
406 background-position: center;
407 background-repeat: no-repeat;
416 display: inline-block;
422 background-color: white;
425 box-shadow:
0px
8px
16px
0px rgba(
0,
0,
0,
0.2);
430 .dark .menu-content {
431 background-color: #
111;
434 .menu:hover .menu-content {
438 .menu:hover .menubtn {
439 background-color: #eee;
442 .dark .menu:hover .menubtn {}
445 display: inline-block;
447 border:
1px solid #ccc;
449 width: calc(
100% -
18px);
453 border-top:
1px solid #ccc;
461 font-family: Consolas,
"DejaVu Sans Mono", Monaco, monospace;
463 box-sizing: border-box;
464 border:
1px solid #
888;
467 background-color: #eee;
468 transition: background-color
0.2s, border
0.2s;
469 width: calc(
100% -
10px);
472 .dark .menu-textbox {
473 background-color: #
222;
478 transition: background-color
0.3s;
483 border-bottom:
2px solid black;
487 border-bottom:
2px solid #ccc;
494 ::-webkit-scrollbar {
498 ::-webkit-scrollbar-track {
502 ::-webkit-scrollbar-thumb {
507 ::-webkit-scrollbar-thumb:hover {
512 -webkit-appearance: none;
518 -webkit-transition:
.2s;
519 transition: opacity
.2s;
531 .slider::-webkit-slider-runnable-track {
532 -webkit-appearance: none;
540 .slider::-webkit-slider-thumb {
541 -webkit-appearance: none;
550 .dark .slider::-webkit-slider-thumb {
554 .slider::-moz-range-thumb {
562 .slider::-moz-range-track {
568 .dark .slider::-moz-range-thumb {
576 background: transparent;
577 border-color: transparent;
579 transition: opacity
.2s;
582 .slider::-ms-fill-lower {
588 .slider::-ms-fill-upper {
613 .dark .shameless-plug a {
618 <script type=
"text/javascript" >
619 ///////////////////////////////////////////////
623 https://github.com/nathancahill/Split.js
625 !function(e,t){
"object"==typeof exports&&
"undefined"!=typeof module?module.exports=t():
"function"==typeof define&&define.amd?define(t):e.Split=t()}(this,function(){
"use strict";var e=window,t=e.document,
n=
"addEventListener",
i=
"removeEventListener",
r=
"getBoundingClientRect",s=function(){return!
1},o=e.attachEvent&&!e[n],a=[
"",
"-webkit-",
"-moz-",
"-o-"].filter(function(e){var n=t.createElement(
"div");return n.style.
cssText=
"width:"+e+
"calc(9px)",!!n.style.length}).shift()+
"calc",l=function(e){return
"string"==typeof e||e instanceof String?t.querySelector(e):e};return function(u,c){function z(e,t,n){var i=A(y,t,n);Object.keys(i).forEach(function(t){return e.style[t]=i[t]})}function h(e,t){var n=B(y,t);Object.keys(n).forEach(function(t){return e.style[t]=n[t]})}function f(e){var t=E[this.a],n=E[this.b],i=t.size+n.size;t.size=e/this.size*i,n.size=i-e/this.size*i,z(t.element,t.size,this.aGutterSize),z(n.element,n.size,this.bGutterSize)}function m(e){var t;this.dragging&&((
t=
"touches"in e?e.touches[
0][b]-this.start:e[b]-this.start)<=E[this.a].minSize+M+this.aGutterSize?t=E[this.a].minSize+this.aGutterSize:t
>=this.size-(E[this.b].minSize+M+this.bGutterSize)&&(t=this.size-(E[this.b].minSize+this.bGutterSize)),f.call(this,t),c.onDrag&&c.onDrag())}function g(){var e=E[this.a].element,t=E[this.b].element;this.size=e[r]()[y]+t[r]()[y]+this.aGutterSize+this.bGutterSize,this.start=e[r]()[G]}function d(){var t=this,n=E[t.a].element,r=E[t.b].element;t.dragging&&c.onDragEnd&&c.onDragEnd(),t.dragging=!
1,e[i](
"mouseup",t.stop),e[i](
"touchend",t.stop),e[i](
"touchcancel",t.stop),t.parent[i](
"mousemove",t.move),t.parent[i](
"touchmove",t.move),delete t.stop,delete t.move,n[i](
"selectstart",s),n[i](
"dragstart",s),r[i](
"selectstart",s),r[i](
"dragstart",s),n.style.
userSelect=
"",n.style.
webkitUserSelect=
"",n.style.
MozUserSelect=
"",n.style.
pointerEvents=
"",r.style.
userSelect=
"",r.style.
webkitUserSelect=
"",r.style.
MozUserSelect=
"",r.style.
pointerEvents=
"",t.gutter.style.
cursor=
"",t.parent.style.
cursor=
""}function S(t){var i=this,r=E[i.a].element,o=E[i.b].element;!i.dragging&&c.onDragStart&&c.onDragStart(),t.preventDefault(),i.dragging=!
0,i.move=m.bind(i),i.stop=d.bind(i),e[n](
"mouseup",i.stop),e[n](
"touchend",i.stop),e[n](
"touchcancel",i.stop),i.parent[n](
"mousemove",i.move),i.parent[n](
"touchmove",i.move),r[n](
"selectstart",s),r[n](
"dragstart",s),o[n](
"selectstart",s),o[n](
"dragstart",s),r.style.
userSelect=
"none",r.style.
webkitUserSelect=
"none",r.style.
MozUserSelect=
"none",r.style.
pointerEvents=
"none",o.style.
userSelect=
"none",o.style.
webkitUserSelect=
"none",o.style.
MozUserSelect=
"none",o.style.
pointerEvents=
"none",i.gutter.style.cursor=j,i.parent.style.cursor=j,g.call(i)}function v(e){e.forEach(function(t,n){if(n
>0){var i=F[n-
1],r=E[i.a],s=E[i.b];r.size=e[n-
1],s.size=t,z(r.element,r.size,i.aGutterSize),z(s.element,s.size,i.bGutterSize)}})}function p(){F.forEach(function(e){e.parent.removeChild(e.gutter),E[e.a].element.style[y]=
"",E[e.b].element.style[y]=
""})}void
0===c&&(c={});var y,b,G,E,w=l(u[
0]).parentNode,D=e.getComputedStyle(w).flexDirection,U=c.sizes||u.map(function(){return
100/u.length}),k=void
0!==c.minSize?c.minSize:
100,x=Array.isArray(k)?k:u.map(function(){return k}),L=void
0!==c.gutterSize?c.gutterSize:
10,M=void
0!==c.snapOffset?c.snapOffset:
30,O=c.direction||
"horizontal",j=c.cursor||(
"horizontal"===O?
"ew-resize":
"ns-resize"),C=c.gutter||function(e,n){var i=t.createElement(
"div");return i.
className=
"gutter gutter-"+n,i},A=c.elementStyle||function(e,t,n){var i={};return
"string"==typeof t||t instanceof String?i[e]=t:i[e]=o?t+
"%":a+
"("+t+
"% - "+n+
"px)",i},B=c.gutterStyle||function(e,t){return n={},n[e]=t+
"px",n;var n};
"horizontal"===O?(
y=
"width",
"clientWidth",
b=
"clientX",
G=
"left",
"paddingLeft"):
"vertical"===O&&(
y=
"height",
"clientHeight",
b=
"clientY",
G=
"top",
"paddingTop");var F=[];return E=u.map(function(e,t){var i,s={element:l(e),size:U[t],minSize:x[t]};if(t
>0&&(i={a:t-
1,b:t,dragging:!
1,isFirst:
1===t,isLast:t===u.length-
1,direction:O,parent:w},i.aGutterSize=L,i.bGutterSize=L,i.isFirst&&(i.aGutterSize=L/
2),i.isLast&&(i.bGutterSize=L/
2),
"row-reverse"===D||
"column-reverse"===D)){var a=i.a;i.a=i.b,i.b=a}if(!o&&t
>0){var c=C(t,O);h(c,L),c[n](
"mousedown",S.bind(i)),c[n](
"touchstart",S.bind(i)),w.insertBefore(c,s.element),i.gutter=c}
0===t||t===u.length-
1?z(s.element,s.size,L/
2):z(s.element,s.size,L);var f=s.element[r]()[y];return f
<s.minSize&&(s.minSize=f),t
>0&&F.push(i),s}),o?{setSizes:v,destroy:p}:{setSizes:v,getSizes:function(){return E.map(function(e){return e.size})},collapse:function(e){if(e===F.length){var t=F[e-
1];g.call(t),o||f.call(t,t.size-t.bGutterSize)}else{var n=F[e];g.call(n),o||f.call(n,n.aGutterSize)}},destroy:p}}});
627 ///////////////////////////////////////////////
629 ///////////////////////////////////////////////
630 var config = {
"redraw_on_drag": true,
"highlight_pin1": false,
"extra_fields": [],
"dark_mode": false,
"bom_view":
"left-right",
"board_rotation":
0,
"checkboxes":
"Sourced,Placed",
"show_silkscreen": true,
"layer_view":
"FB"}
631 ///////////////////////////////////////////////
633 ///////////////////////////////////////////////
634 var pcbdata = {
"font_data": {
"*": {
"l": [[[
0.38095238095238093, -
1.0476190476190474], [
0.38095238095238093, -
0.8095238095238095]], [[
0.14285714285714285, -
0.9047619047619047], [
0.38095238095238093, -
0.8095238095238095], [
0.6190476190476191, -
0.9047619047619047]], [[
0.23809523809523808, -
0.6190476190476191], [
0.38095238095238093, -
0.8095238095238095], [
0.5238095238095237, -
0.6190476190476191]]],
"w":
0.7619047619047619},
"P": {
"l": [[[
0.23809523809523803, -
0.047619047619047616], [
0.23809523809523803, -
1.0476190476190474], [
0.619047619047619, -
1.0476190476190474], [
0.7142857142857142, -
1.0], [
0.7619047619047619, -
0.9523809523809523], [
0.8095238095238094, -
0.8571428571428571], [
0.8095238095238094, -
0.7142857142857142], [
0.7619047619047619, -
0.6190476190476191], [
0.7142857142857142, -
0.5714285714285714], [
0.619047619047619, -
0.5238095238095237], [
0.23809523809523803, -
0.5238095238095237]]],
"w":
1.0},
"H": {
"l": [[[
0.23809523809523803, -
0.047619047619047616], [
0.23809523809523803, -
1.0476190476190474]], [[
0.23809523809523803, -
0.5714285714285714], [
0.8095238095238094, -
0.5714285714285714]], [[
0.8095238095238094, -
0.047619047619047616], [
0.8095238095238094, -
1.0476190476190474]]],
"w":
1.0476190476190474},
"J": {
"l": [[[
0.5238095238095237, -
1.0476190476190474], [
0.5238095238095237, -
0.3333333333333333], [
0.47619047619047616, -
0.19047619047619047], [
0.38095238095238093, -
0.09523809523809523], [
0.23809523809523808, -
0.047619047619047616], [
0.14285714285714285, -
0.047619047619047616]]],
"w":
0.7619047619047619},
"-": {
"l": [[[
0.23809523809523814, -
0.42857142857142855], [
1.0, -
0.42857142857142855]]],
"w":
1.2380952380952381},
"N": {
"l": [[[
0.23809523809523803, -
0.047619047619047616], [
0.23809523809523803, -
1.0476190476190474], [
0.8095238095238094, -
0.047619047619047616], [
0.8095238095238094, -
1.0476190476190474]]],
"w":
1.0476190476190474},
"1": {
"l": [[[
0.7619047619047619, -
0.047619047619047616], [
0.19047619047619047, -
0.047619047619047616]], [[
0.47619047619047616, -
0.047619047619047616], [
0.47619047619047616, -
1.0476190476190474], [
0.38095238095238093, -
0.9047619047619047], [
0.2857142857142857, -
0.8095238095238095], [
0.19047619047619047, -
0.7619047619047619]]],
"w":
0.9523809523809523},
"0": {
"l": [[[
0.42857142857142855, -
1.0476190476190474], [
0.5238095238095237, -
1.0476190476190474], [
0.6190476190476191, -
1.0], [
0.6666666666666666, -
0.9523809523809523], [
0.7142857142857142, -
0.8571428571428571], [
0.7619047619047619, -
0.6666666666666666], [
0.7619047619047619, -
0.42857142857142855], [
0.7142857142857142, -
0.23809523809523808], [
0.6666666666666666, -
0.14285714285714285], [
0.6190476190476191, -
0.09523809523809523], [
0.5238095238095237, -
0.047619047619047616], [
0.42857142857142855, -
0.047619047619047616], [
0.3333333333333333, -
0.09523809523809523], [
0.2857142857142857, -
0.14285714285714285], [
0.23809523809523808, -
0.23809523809523808], [
0.19047619047619047, -
0.42857142857142855], [
0.19047619047619047, -
0.6666666666666666], [
0.23809523809523808, -
0.8571428571428571], [
0.2857142857142857, -
0.9523809523809523], [
0.3333333333333333, -
1.0], [
0.42857142857142855, -
1.0476190476190474]]],
"w":
0.9523809523809523},
"3": {
"l": [[[
0.14285714285714285, -
1.0476190476190474], [
0.7619047619047619, -
1.0476190476190474], [
0.42857142857142855, -
0.6666666666666666], [
0.5714285714285714, -
0.6666666666666666], [
0.6666666666666666, -
0.6190476190476191], [
0.7142857142857142, -
0.5714285714285714], [
0.7619047619047619, -
0.47619047619047616], [
0.7619047619047619, -
0.23809523809523808], [
0.7142857142857142, -
0.14285714285714285], [
0.6666666666666666, -
0.09523809523809523], [
0.5714285714285714, -
0.047619047619047616], [
0.2857142857142857, -
0.047619047619047616], [
0.19047619047619047, -
0.09523809523809523], [
0.14285714285714285, -
0.14285714285714285]]],
"w":
0.9523809523809523},
"2": {
"l": [[[
0.19047619047619047, -
0.9523809523809523], [
0.23809523809523808, -
1.0], [
0.3333333333333333, -
1.0476190476190474], [
0.5714285714285714, -
1.0476190476190474], [
0.6666666666666666, -
1.0], [
0.7142857142857142, -
0.9523809523809523], [
0.7619047619047619, -
0.8571428571428571], [
0.7619047619047619, -
0.7619047619047619], [
0.7142857142857142, -
0.6190476190476191], [
0.14285714285714285, -
0.047619047619047616], [
0.7619047619047619, -
0.047619047619047616]]],
"w":
0.9523809523809523},
"5": {
"l": [[[
0.7142857142857142, -
1.0476190476190474], [
0.23809523809523808, -
1.0476190476190474], [
0.19047619047619047, -
0.5714285714285714], [
0.23809523809523808, -
0.6190476190476191], [
0.3333333333333333, -
0.6666666666666666], [
0.5714285714285714, -
0.6666666666666666], [
0.6666666666666666, -
0.6190476190476191], [
0.7142857142857142, -
0.5714285714285714], [
0.7619047619047619, -
0.47619047619047616], [
0.7619047619047619, -
0.23809523809523808], [
0.7142857142857142, -
0.14285714285714285], [
0.6666666666666666, -
0.09523809523809523], [
0.5714285714285714, -
0.047619047619047616], [
0.3333333333333333, -
0.047619047619047616], [
0.23809523809523808, -
0.09523809523809523], [
0.19047619047619047, -
0.14285714285714285]]],
"w":
0.9523809523809523},
"4": {
"l": [[[
0.6666666666666666, -
0.7142857142857142], [
0.6666666666666666, -
0.047619047619047616]], [[
0.42857142857142855, -
1.0952380952380951], [
0.19047619047619047, -
0.38095238095238093], [
0.8095238095238095, -
0.38095238095238093]]],
"w":
0.9523809523809523},
"7": {
"l": [[[
0.14285714285714285, -
1.0476190476190474], [
0.8095238095238095, -
1.0476190476190474], [
0.38095238095238093, -
0.047619047619047616]]],
"w":
0.9523809523809523},
"6": {
"l": [[[
0.6666666666666666, -
1.0476190476190474], [
0.47619047619047616, -
1.0476190476190474], [
0.38095238095238093, -
1.0], [
0.3333333333333333, -
0.9523809523809523], [
0.23809523809523808, -
0.8095238095238095], [
0.19047619047619047, -
0.6190476190476191], [
0.19047619047619047, -
0.23809523809523808], [
0.23809523809523808, -
0.14285714285714285], [
0.2857142857142857, -
0.09523809523809523], [
0.38095238095238093, -
0.047619047619047616], [
0.5714285714285714, -
0.047619047619047616], [
0.6666666666666666, -
0.09523809523809523], [
0.7142857142857142, -
0.14285714285714285], [
0.7619047619047619, -
0.23809523809523808], [
0.7619047619047619, -
0.47619047619047616], [
0.7142857142857142, -
0.5714285714285714], [
0.6666666666666666, -
0.6190476190476191], [
0.5714285714285714, -
0.6666666666666666], [
0.38095238095238093, -
0.6666666666666666], [
0.2857142857142857, -
0.6190476190476191], [
0.23809523809523808, -
0.5714285714285714], [
0.19047619047619047, -
0.47619047619047616]]],
"w":
0.9523809523809523},
"9": {
"l": [[[
0.2857142857142857, -
0.047619047619047616], [
0.47619047619047616, -
0.047619047619047616], [
0.5714285714285714, -
0.09523809523809523], [
0.6190476190476191, -
0.14285714285714285], [
0.7142857142857142, -
0.2857142857142857], [
0.7619047619047619, -
0.47619047619047616], [
0.7619047619047619, -
0.8571428571428571], [
0.7142857142857142, -
0.9523809523809523], [
0.6666666666666666, -
1.0], [
0.5714285714285714, -
1.0476190476190474], [
0.38095238095238093, -
1.0476190476190474], [
0.2857142857142857, -
1.0], [
0.23809523809523808, -
0.9523809523809523], [
0.19047619047619047, -
0.8571428571428571], [
0.19047619047619047, -
0.6190476190476191], [
0.23809523809523808, -
0.5238095238095237], [
0.2857142857142857, -
0.47619047619047616], [
0.38095238095238093, -
0.42857142857142855], [
0.5714285714285714, -
0.42857142857142855], [
0.6666666666666666, -
0.47619047619047616], [
0.7142857142857142, -
0.5238095238095237], [
0.7619047619047619, -
0.6190476190476191]]],
"w":
0.9523809523809523},
"8": {
"l": [[[
0.38095238095238093, -
0.6190476190476191], [
0.2857142857142857, -
0.6666666666666666], [
0.23809523809523808, -
0.7142857142857142], [
0.19047619047619047, -
0.8095238095238095], [
0.19047619047619047, -
0.8571428571428571], [
0.23809523809523808, -
0.9523809523809523], [
0.2857142857142857, -
1.0], [
0.38095238095238093, -
1.0476190476190474], [
0.5714285714285714, -
1.0476190476190474], [
0.6666666666666666, -
1.0], [
0.7142857142857142, -
0.9523809523809523], [
0.7619047619047619, -
0.8571428571428571], [
0.7619047619047619, -
0.8095238095238095], [
0.7142857142857142, -
0.7142857142857142], [
0.6666666666666666, -
0.6666666666666666], [
0.5714285714285714, -
0.6190476190476191], [
0.38095238095238093, -
0.6190476190476191], [
0.2857142857142857, -
0.5714285714285714], [
0.23809523809523808, -
0.5238095238095237], [
0.19047619047619047, -
0.42857142857142855], [
0.19047619047619047, -
0.23809523809523808], [
0.23809523809523808, -
0.14285714285714285], [
0.2857142857142857, -
0.09523809523809523], [
0.38095238095238093, -
0.047619047619047616], [
0.5714285714285714, -
0.047619047619047616], [
0.6666666666666666, -
0.09523809523809523], [
0.7142857142857142, -
0.14285714285714285], [
0.7619047619047619, -
0.23809523809523808], [
0.7619047619047619, -
0.42857142857142855], [
0.7142857142857142, -
0.5238095238095237], [
0.6666666666666666, -
0.5714285714285714], [
0.5714285714285714, -
0.6190476190476191]]],
"w":
0.9523809523809523},
"R": {
"l": [[[
0.8095238095238094, -
0.047619047619047616], [
0.4761904761904761, -
0.5238095238095237]], [[
0.23809523809523803, -
0.047619047619047616], [
0.23809523809523803, -
1.0476190476190474], [
0.619047619047619, -
1.0476190476190474], [
0.7142857142857142, -
1.0], [
0.7619047619047619, -
0.9523809523809523], [
0.8095238095238094, -
0.8571428571428571], [
0.8095238095238094, -
0.7142857142857142], [
0.7619047619047619, -
0.6190476190476191], [
0.7142857142857142, -
0.5714285714285714], [
0.619047619047619, -
0.5238095238095237], [
0.23809523809523803, -
0.5238095238095237]]],
"w":
1.0},
"U": {
"l": [[[
0.23809523809523803, -
1.0476190476190474], [
0.23809523809523803, -
0.23809523809523808], [
0.28571428571428564, -
0.14285714285714285], [
0.33333333333333326, -
0.09523809523809523], [
0.4285714285714285, -
0.047619047619047616], [
0.619047619047619, -
0.047619047619047616], [
0.7142857142857142, -
0.09523809523809523], [
0.7619047619047619, -
0.14285714285714285], [
0.8095238095238094, -
0.23809523809523808], [
0.8095238095238094, -
1.0476190476190474]]],
"w":
1.0476190476190474}},
"modules": [{
"layer":
"F",
"center": [
110.22,
32.75],
"pads": [{
"layers": [
"F",
"B"],
"angle": -
0.0,
"pos": [
110.22,
32.75],
"drillsize": [
2.1999999999999997,
2.1999999999999997],
"shape":
"circle",
"offset": [
0.0,
0.0],
"drillshape":
"circle",
"pin1":
1,
"type":
"th",
"size": [
2.1999999999999997,
2.1999999999999997]}],
"drawings": [],
"ref":
"H3",
"bbox": {
"pos": [
107.74499899999999,
30.274998999999998],
"size": [
4.950002,
4.950002]}}, {
"layer":
"F",
"center": [
183.88,
32.75],
"pads": [{
"layers": [
"F",
"B"],
"angle": -
0.0,
"pos": [
183.88,
32.75],
"drillsize": [
2.1999999999999997,
2.1999999999999997],
"shape":
"circle",
"offset": [
0.0,
0.0],
"drillshape":
"circle",
"pin1":
1,
"type":
"th",
"size": [
2.1999999999999997,
2.1999999999999997]}],
"drawings": [],
"ref":
"H1",
"bbox": {
"pos": [
181.404999,
30.274998999999998],
"size": [
4.950002,
4.950002]}}, {
"layer":
"F",
"center": [
174.79,
61.112399999999994],
"pads": [{
"layers": [
"F",
"B"],
"angle": -
90.0,
"pos": [
174.79,
61.112399999999994],
"drillsize": [
1.016,
1.016],
"shape":
"circle",
"offset": [
0.0,
0.0],
"drillshape":
"circle",
"type":
"th",
"size": [
1.524,
1.524]}, {
"layers": [
"F",
"B"],
"angle": -
90.0,
"pos": [
174.79,
58.572399999999995],
"drillsize": [
1.016,
1.016],
"shape":
"circle",
"offset": [
0.0,
0.0],
"drillshape":
"circle",
"type":
"th",
"size": [
1.524,
1.524]}, {
"layers": [
"F",
"B"],
"angle": -
90.0,
"pos": [
174.79,
56.032399999999996],
"drillsize": [
1.016,
1.016],
"shape":
"circle",
"offset": [
0.0,
0.0],
"drillshape":
"circle",
"type":
"th",
"size": [
1.524,
1.524]}, {
"layers": [
"F",
"B"],
"angle": -
90.0,
"pos": [
174.79,
53.492399999999996],
"drillsize": [
1.016,
1.016],
"shape":
"circle",
"offset": [
0.0,
0.0],
"drillshape":
"circle",
"type":
"th",
"size": [
1.524,
1.524]}, {
"layers": [
"F",
"B"],
"angle": -
90.0,
"pos": [
174.79,
50.9524],
"drillsize": [
1.016,
1.016],
"shape":
"circle",
"offset": [
0.0,
0.0],
"drillshape":
"circle",
"type":
"th",
"size": [
1.524,
1.524]}, {
"layers": [
"F",
"B"],
"angle": -
90.0,
"pos": [
174.79,
48.4124],
"drillsize": [
1.016,
1.016],
"shape":
"circle",
"offset": [
0.0,
0.0],
"drillshape":
"circle",
"type":
"th",
"size": [
1.524,
1.524]}, {
"layers": [
"F",
"B"],
"angle": -
90.0,
"pos": [
174.79,
45.8724],
"drillsize": [
1.016,
1.016],
"shape":
"circle",
"offset": [
0.0,
0.0],
"drillshape":
"circle",
"type":
"th",
"size": [
1.524,
1.524]}, {
"layers": [
"F",
"B"],
"angle": -
90.0,
"pos": [
174.79,
43.3324],
"drillsize": [
1.016,
1.016],
"shape":
"circle",
"offset": [
0.0,
0.0],
"drillshape":
"circle",
"pin1":
1,
"type":
"th",
"size": [
1.524,
1.524]}],
"drawings": [],
"ref":
"J2",
"bbox": {
"pos": [
171.15779899999998,
40.843199],
"size": [
6.375401999999999,
21.869401999999997]}}, {
"layer":
"F",
"center": [
142.617,
61.112399999999994],
"pads": [{
"layers": [
"F",
"B"],
"angle": -
90.0,
"pos": [
142.617,
61.112399999999994],
"drillsize": [
1.016,
1.016],
"shape":
"circle",
"offset": [
0.0,
0.0],
"drillshape":
"circle",
"type":
"th",
"size": [
1.524,
1.524]}, {
"layers": [
"F",
"B"],
"angle": -
90.0,
"pos": [
142.617,
58.572399999999995],
"drillsize": [
1.016,
1.016],
"shape":
"circle",
"offset": [
0.0,
0.0],
"drillshape":
"circle",
"type":
"th",
"size": [
1.524,
1.524]}, {
"layers": [
"F",
"B"],
"angle": -
90.0,
"pos": [
142.617,
56.032399999999996],
"drillsize": [
1.016,
1.016],
"shape":
"circle",
"offset": [
0.0,
0.0],
"drillshape":
"circle",
"type":
"th",
"size": [
1.524,
1.524]}, {
"layers": [
"F",
"B"],
"angle": -
90.0,
"pos": [
142.617,
53.492399999999996],
"drillsize": [
1.016,
1.016],
"shape":
"circle",
"offset": [
0.0,
0.0],
"drillshape":
"circle",
"type":
"th",
"size": [
1.524,
1.524]}, {
"layers": [
"F",
"B"],
"angle": -
90.0,
"pos": [
142.617,
50.9524],
"drillsize": [
1.016,
1.016],
"shape":
"circle",
"offset": [
0.0,
0.0],
"drillshape":
"circle",
"type":
"th",
"size": [
1.524,
1.524]}, {
"layers": [
"F",
"B"],
"angle": -
90.0,
"pos": [
142.617,
48.4124],
"drillsize": [
1.016,
1.016],
"shape":
"circle",
"offset": [
0.0,
0.0],
"drillshape":
"circle",
"type":
"th",
"size": [
1.524,
1.524]}, {
"layers": [
"F",
"B"],
"angle": -
90.0,
"pos": [
142.617,
45.8724],
"drillsize": [
1.016,
1.016],
"shape":
"circle",
"offset": [
0.0,
0.0],
"drillshape":
"circle",
"type":
"th",
"size": [
1.524,
1.524]}, {
"layers": [
"F",
"B"],
"angle": -
90.0,
"pos": [
142.617,
43.3324],
"drillsize": [
1.016,
1.016],
"shape":
"circle",
"offset": [
0.0,
0.0],
"drillshape":
"circle",
"pin1":
1,
"type":
"th",
"size": [
1.524,
1.524]}],
"drawings": [],
"ref":
"J3",
"bbox": {
"pos": [
138.98479899999998,
40.843199],
"size": [
6.375401999999999,
21.869401999999997]}}, {
"layer":
"F",
"center": [
126.53,
61.112399999999994],
"pads": [{
"layers": [
"F",
"B"],
"angle": -
90.0,
"pos": [
126.53,
61.112399999999994],
"drillsize": [
1.016,
1.016],
"shape":
"circle",
"offset": [
0.0,
0.0],
"drillshape":
"circle",
"type":
"th",
"size": [
1.524,
1.524]}, {
"layers": [
"F",
"B"],
"angle": -
90.0,
"pos": [
126.53,
58.572399999999995],
"drillsize": [
1.016,
1.016],
"shape":
"circle",
"offset": [
0.0,
0.0],
"drillshape":
"circle",
"type":
"th",
"size": [
1.524,
1.524]}, {
"layers": [
"F",
"B"],
"angle": -
90.0,
"pos": [
126.53,
56.032399999999996],
"drillsize": [
1.016,
1.016],
"shape":
"circle",
"offset": [
0.0,
0.0],
"drillshape":
"circle",
"type":
"th",
"size": [
1.524,
1.524]}, {
"layers": [
"F",
"B"],
"angle": -
90.0,
"pos": [
126.53,
53.492399999999996],
"drillsize": [
1.016,
1.016],
"shape":
"circle",
"offset": [
0.0,
0.0],
"drillshape":
"circle",
"type":
"th",
"size": [
1.524,
1.524]}, {
"layers": [
"F",
"B"],
"angle": -
90.0,
"pos": [
126.53,
50.9524],
"drillsize": [
1.016,
1.016],
"shape":
"circle",
"offset": [
0.0,
0.0],
"drillshape":
"circle",
"type":
"th",
"size": [
1.524,
1.524]}, {
"layers": [
"F",
"B"],
"angle": -
90.0,
"pos": [
126.53,
48.4124],
"drillsize": [
1.016,
1.016],
"shape":
"circle",
"offset": [
0.0,
0.0],
"drillshape":
"circle",
"type":
"th",
"size": [
1.524,
1.524]}, {
"layers": [
"F",
"B"],
"angle": -
90.0,
"pos": [
126.53,
45.8724],
"drillsize": [
1.016,
1.016],
"shape":
"circle",
"offset": [
0.0,
0.0],
"drillshape":
"circle",
"type":
"th",
"size": [
1.524,
1.524]}, {
"layers": [
"F",
"B"],
"angle": -
90.0,
"pos": [
126.53,
43.3324],
"drillsize": [
1.016,
1.016],
"shape":
"circle",
"offset": [
0.0,
0.0],
"drillshape":
"circle",
"pin1":
1,
"type":
"th",
"size": [
1.524,
1.524]}],
"drawings": [],
"ref":
"J4",
"bbox": {
"pos": [
122.89779899999999,
40.843199],
"size": [
6.375401999999999,
21.869401999999997]}}, {
"layer":
"F",
"center": [
158.48,
61.112399999999994],
"pads": [{
"layers": [
"F",
"B"],
"angle": -
90.0,
"pos": [
158.48,
61.112399999999994],
"drillsize": [
1.016,
1.016],
"shape":
"circle",
"offset": [
0.0,
0.0],
"drillshape":
"circle",
"type":
"th",
"size": [
1.524,
1.524]}, {
"layers": [
"F",
"B"],
"angle": -
90.0,
"pos": [
158.48,
58.572399999999995],
"drillsize": [
1.016,
1.016],
"shape":
"circle",
"offset": [
0.0,
0.0],
"drillshape":
"circle",
"type":
"th",
"size": [
1.524,
1.524]}, {
"layers": [
"F",
"B"],
"angle": -
90.0,
"pos": [
158.48,
56.032399999999996],
"drillsize": [
1.016,
1.016],
"shape":
"circle",
"offset": [
0.0,
0.0],
"drillshape":
"circle",
"type":
"th",
"size": [
1.524,
1.524]}, {
"layers": [
"F",
"B"],
"angle": -
90.0,
"pos": [
158.48,
53.492399999999996],
"drillsize": [
1.016,
1.016],
"shape":
"circle",
"offset": [
0.0,
0.0],
"drillshape":
"circle",
"type":
"th",
"size": [
1.524,
1.524]}, {
"layers": [
"F",
"B"],
"angle": -
90.0,
"pos": [
158.48,
50.9524],
"drillsize": [
1.016,
1.016],
"shape":
"circle",
"offset": [
0.0,
0.0],
"drillshape":
"circle",
"type":
"th",
"size": [
1.524,
1.524]}, {
"layers": [
"F",
"B"],
"angle": -
90.0,
"pos": [
158.48,
48.4124],
"drillsize": [
1.016,
1.016],
"shape":
"circle",
"offset": [
0.0,
0.0],
"drillshape":
"circle",
"type":
"th",
"size": [
1.524,
1.524]}, {
"layers": [
"F",
"B"],
"angle": -
90.0,
"pos": [
158.48,
45.8724],
"drillsize": [
1.016,
1.016],
"shape":
"circle",
"offset": [
0.0,
0.0],
"drillshape":
"circle",
"type":
"th",
"size": [
1.524,
1.524]}, {
"layers": [
"F",
"B"],
"angle": -
90.0,
"pos": [
158.48,
43.3324],
"drillsize": [
1.016,
1.016],
"shape":
"circle",
"offset": [
0.0,
0.0],
"drillshape":
"circle",
"pin1":
1,
"type":
"th",
"size": [
1.524,
1.524]}],
"drawings": [],
"ref":
"J5",
"bbox": {
"pos": [
154.84779899999998,
40.843199],
"size": [
6.375401999999999,
21.869401999999997]}}, {
"layer":
"F",
"center": [
126.53,
83.972],
"pads": [{
"layers": [
"F",
"B"],
"angle": -
90.0,
"pos": [
126.53,
83.972],
"drillsize": [
1.016,
1.016],
"shape":
"circle",
"offset": [
0.0,
0.0],
"drillshape":
"circle",
"type":
"th",
"size": [
1.524,
1.524]}, {
"layers": [
"F",
"B"],
"angle": -
90.0,
"pos": [
126.53,
81.432],
"drillsize": [
1.016,
1.016],
"shape":
"circle",
"offset": [
0.0,
0.0],
"drillshape":
"circle",
"type":
"th",
"size": [
1.524,
1.524]}, {
"layers": [
"F",
"B"],
"angle": -
90.0,
"pos": [
126.53,
78.892],
"drillsize": [
1.016,
1.016],
"shape":
"circle",
"offset": [
0.0,
0.0],
"drillshape":
"circle",
"type":
"th",
"size": [
1.524,
1.524]}, {
"layers": [
"F",
"B"],
"angle": -
90.0,
"pos": [
126.53,
76.35199999999999],
"drillsize": [
1.016,
1.016],
"shape":
"circle",
"offset": [
0.0,
0.0],
"drillshape":
"circle",
"type":
"th",
"size": [
1.524,
1.524]}, {
"layers": [
"F",
"B"],
"angle": -
90.0,
"pos": [
126.53,
73.812],
"drillsize": [
1.016,
1.016],
"shape":
"circle",
"offset": [
0.0,
0.0],
"drillshape":
"circle",
"type":
"th",
"size": [
1.524,
1.524]}, {
"layers": [
"F",
"B"],
"angle": -
90.0,
"pos": [
126.53,
71.27199999999999],
"drillsize": [
1.016,
1.016],
"shape":
"circle",
"offset": [
0.0,
0.0],
"drillshape":
"circle",
"type":
"th",
"size": [
1.524,
1.524]}, {
"layers": [
"F",
"B"],
"angle": -
90.0,
"pos": [
126.53,
68.732],
"drillsize": [
1.016,
1.016],
"shape":
"circle",
"offset": [
0.0,
0.0],
"drillshape":
"circle",
"type":
"th",
"size": [
1.524,
1.524]}, {
"layers": [
"F",
"B"],
"angle": -
90.0,
"pos": [
126.53,
66.192],
"drillsize": [
1.016,
1.016],
"shape":
"circle",
"offset": [
0.0,
0.0],
"drillshape":
"circle",
"pin1":
1,
"type":
"th",
"size": [
1.524,
1.524]}],
"drawings": [],
"ref":
"J6",
"bbox": {
"pos": [
122.89779899999999,
63.702799],
"size": [
6.375401999999999,
21.869401999999997]}}, {
"layer":
"F",
"center": [
174.79,
83.972],
"pads": [{
"layers": [
"F",
"B"],
"angle": -
90.0,
"pos": [
174.79,
83.972],
"drillsize": [
1.016,
1.016],
"shape":
"circle",
"offset": [
0.0,
0.0],
"drillshape":
"circle",
"type":
"th",
"size": [
1.524,
1.524]}, {
"layers": [
"F",
"B"],
"angle": -
90.0,
"pos": [
174.79,
81.432],
"drillsize": [
1.016,
1.016],
"shape":
"circle",
"offset": [
0.0,
0.0],
"drillshape":
"circle",
"type":
"th",
"size": [
1.524,
1.524]}, {
"layers": [
"F",
"B"],
"angle": -
90.0,
"pos": [
174.79,
78.892],
"drillsize": [
1.016,
1.016],
"shape":
"circle",
"offset": [
0.0,
0.0],
"drillshape":
"circle",
"type":
"th",
"size": [
1.524,
1.524]}, {
"layers": [
"F",
"B"],
"angle": -
90.0,
"pos": [
174.79,
76.35199999999999],
"drillsize": [
1.016,
1.016],
"shape":
"circle",
"offset": [
0.0,
0.0],
"drillshape":
"circle",
"type":
"th",
"size": [
1.524,
1.524]}, {
"layers": [
"F",
"B"],
"angle": -
90.0,
"pos": [
174.79,
73.812],
"drillsize": [
1.016,
1.016],
"shape":
"circle",
"offset": [
0.0,
0.0],
"drillshape":
"circle",
"type":
"th",
"size": [
1.524,
1.524]}, {
"layers": [
"F",
"B"],
"angle": -
90.0,
"pos": [
174.79,
71.27199999999999],
"drillsize": [
1.016,
1.016],
"shape":
"circle",
"offset": [
0.0,
0.0],
"drillshape":
"circle",
"type":
"th",
"size": [
1.524,
1.524]}, {
"layers": [
"F",
"B"],
"angle": -
90.0,
"pos": [
174.79,
68.732],
"drillsize": [
1.016,
1.016],
"shape":
"circle",
"offset": [
0.0,
0.0],
"drillshape":
"circle",
"type":
"th",
"size": [
1.524,
1.524]}, {
"layers": [
"F",
"B"],
"angle": -
90.0,
"pos": [
174.79,
66.192],
"drillsize": [
1.016,
1.016],
"shape":
"circle",
"offset": [
0.0,
0.0],
"drillshape":
"circle",
"pin1":
1,
"type":
"th",
"size": [
1.524,
1.524]}],
"drawings": [],
"ref":
"J1",
"bbox": {
"pos": [
171.15779899999998,
63.702799],
"size": [
6.375401999999999,
21.869401999999997]}}, {
"layer":
"F",
"center": [
154.47,
128.422],
"pads": [{
"layers": [
"F",
"B"],
"angle": -
0.0,
"pos": [
154.47,
110.642],
"drillsize": [
1.1176,
1.1176],
"shape":
"circle",
"offset": [
0.0,
0.0],
"drillshape":
"circle",
"type":
"th",
"size": [
1.6764,
1.6764]}, {
"layers": [
"F",
"B"],
"angle": -
0.0,
"pos": [
154.47,
113.18199999999999],
"drillsize": [
1.1176,
1.1176],
"shape":
"circle",
"offset": [
0.0,
0.0],
"drillshape":
"circle",
"type":
"th",
"size": [
1.6764,
1.6764]}, {
"layers": [
"F",
"B"],
"angle": -
0.0,
"pos": [
154.47,
115.722],
"drillsize": [
1.1176,
1.1176],
"shape":
"circle",
"offset": [
0.0,
0.0],
"drillshape":
"circle",
"type":
"th",
"size": [
1.6764,
1.6764]}, {
"layers": [
"F",
"B"],
"angle": -
0.0,
"pos": [
154.47,
118.262],
"drillsize": [
1.1176,
1.1176],
"shape":
"circle",
"offset": [
0.0,
0.0],
"drillshape":
"circle",
"type":
"th",
"size": [
1.6764,
1.6764]}, {
"layers": [
"F",
"B"],
"angle": -
0.0,
"pos": [
154.47,
120.80199999999999],
"drillsize": [
1.1176,
1.1176],
"shape":
"circle",
"offset": [
0.0,
0.0],
"drillshape":
"circle",
"type":
"th",
"size": [
1.6764,
1.6764]}, {
"layers": [
"F",
"B"],
"angle": -
0.0,
"pos": [
154.47,
123.342],
"drillsize": [
1.1176,
1.1176],
"shape":
"circle",
"offset": [
0.0,
0.0],
"drillshape":
"circle",
"type":
"th",
"size": [
1.6764,
1.6764]}, {
"layers": [
"F",
"B"],
"angle": -
0.0,
"pos": [
154.47,
125.88199999999999],
"drillsize": [
1.1176,
1.1176],
"shape":
"circle",
"offset": [
0.0,
0.0],
"drillshape":
"circle",
"type":
"th",
"size": [
1.6764,
1.6764]}, {
"layers": [
"F",
"B"],
"angle": -
0.0,
"pos": [
154.47,
128.422],
"drillsize": [
1.1176,
1.1176],
"shape":
"circle",
"offset": [
0.0,
0.0],
"drillshape":
"circle",
"type":
"th",
"size": [
1.6764,
1.6764]}, {
"layers": [
"F",
"B"],
"angle": -
0.0,
"pos": [
146.85,
128.422],
"drillsize": [
1.1176,
1.1176],
"shape":
"circle",
"offset": [
0.0,
0.0],
"drillshape":
"circle",
"type":
"th",
"size": [
1.6764,
1.6764]}, {
"layers": [
"F",
"B"],
"angle": -
0.0,
"pos": [
146.85,
125.88199999999999],
"drillsize": [
1.1176,
1.1176],
"shape":
"circle",
"offset": [
0.0,
0.0],
"drillshape":
"circle",
"type":
"th",
"size": [
1.6764,
1.6764]}, {
"layers": [
"F",
"B"],
"angle": -
0.0,
"pos": [
146.85,
123.342],
"drillsize": [
1.1176,
1.1176],
"shape":
"circle",
"offset": [
0.0,
0.0],
"drillshape":
"circle",
"type":
"th",
"size": [
1.6764,
1.6764]}, {
"layers": [
"F",
"B"],
"angle": -
0.0,
"pos": [
146.85,
120.80199999999999],
"drillsize": [
1.1176,
1.1176],
"shape":
"circle",
"offset": [
0.0,
0.0],
"drillshape":
"circle",
"type":
"th",
"size": [
1.6764,
1.6764]}, {
"layers": [
"F",
"B"],
"angle": -
0.0,
"pos": [
146.85,
118.262],
"drillsize": [
1.1176,
1.1176],
"shape":
"circle",
"offset": [
0.0,
0.0],
"drillshape":
"circle",
"type":
"th",
"size": [
1.6764,
1.6764]}, {
"layers": [
"F",
"B"],
"angle": -
0.0,
"pos": [
146.85,
115.722],
"drillsize": [
1.1176,
1.1176],
"shape":
"circle",
"offset": [
0.0,
0.0],
"drillshape":
"circle",
"type":
"th",
"size": [
1.6764,
1.6764]}, {
"layers": [
"F",
"B"],
"angle": -
0.0,
"pos": [
146.85,
113.18199999999999],
"drillsize": [
1.1176,
1.1176],
"shape":
"circle",
"offset": [
0.0,
0.0],
"drillshape":
"circle",
"type":
"th",
"size": [
1.6764,
1.6764]}, {
"layers": [
"F",
"B"],
"angle": -
0.0,
"pos": [
146.85,
110.642],
"drillsize": [
1.1176,
1.1176],
"shape":
"rect",
"offset": [
0.0,
0.0],
"drillshape":
"circle",
"pin1":
1,
"type":
"th",
"size": [
1.6764,
1.6764]}],
"drawings": [],
"ref":
"U7",
"bbox": {
"pos": [
146.0118,
109.60059899999999],
"size": [
9.2964,
19.862802]}}, {
"layer":
"F",
"center": [
168.44,
128.422],
"pads": [{
"layers": [
"F",
"B"],
"angle": -
0.0,
"pos": [
168.44,
110.642],
"drillsize": [
1.1176,
1.1176],
"shape":
"circle",
"offset": [
0.0,
0.0],
"drillshape":
"circle",
"type":
"th",
"size": [
1.6764,
1.6764]}, {
"layers": [
"F",
"B"],
"angle": -
0.0,
"pos": [
168.44,
113.18199999999999],
"drillsize": [
1.1176,
1.1176],
"shape":
"circle",
"offset": [
0.0,
0.0],
"drillshape":
"circle",
"type":
"th",
"size": [
1.6764,
1.6764]}, {
"layers": [
"F",
"B"],
"angle": -
0.0,
"pos": [
168.44,
115.722],
"drillsize": [
1.1176,
1.1176],
"shape":
"circle",
"offset": [
0.0,
0.0],
"drillshape":
"circle",
"type":
"th",
"size": [
1.6764,
1.6764]}, {
"layers": [
"F",
"B"],
"angle": -
0.0,
"pos": [
168.44,
118.262],
"drillsize": [
1.1176,
1.1176],
"shape":
"circle",
"offset": [
0.0,
0.0],
"drillshape":
"circle",
"type":
"th",
"size": [
1.6764,
1.6764]}, {
"layers": [
"F",
"B"],
"angle": -
0.0,
"pos": [
168.44,
120.80199999999999],
"drillsize": [
1.1176,
1.1176],
"shape":
"circle",
"offset": [
0.0,
0.0],
"drillshape":
"circle",
"type":
"th",
"size": [
1.6764,
1.6764]}, {
"layers": [
"F",
"B"],
"angle": -
0.0,
"pos": [
168.44,
123.342],
"drillsize": [
1.1176,
1.1176],
"shape":
"circle",
"offset": [
0.0,
0.0],
"drillshape":
"circle",
"type":
"th",
"size": [
1.6764,
1.6764]}, {
"layers": [
"F",
"B"],
"angle": -
0.0,
"pos": [
168.44,
125.88199999999999],
"drillsize": [
1.1176,
1.1176],
"shape":
"circle",
"offset": [
0.0,
0.0],
"drillshape":
"circle",
"type":
"th",
"size": [
1.6764,
1.6764]}, {
"layers": [
"F",
"B"],
"angle": -
0.0,
"pos": [
168.44,
128.422],
"drillsize": [
1.1176,
1.1176],
"shape":
"circle",
"offset": [
0.0,
0.0],
"drillshape":
"circle",
"type":
"th",
"size": [
1.6764,
1.6764]}, {
"layers": [
"F",
"B"],
"angle": -
0.0,
"pos": [
160.82,
128.422],
"drillsize": [
1.1176,
1.1176],
"shape":
"circle",
"offset": [
0.0,
0.0],
"drillshape":
"circle",
"type":
"th",
"size": [
1.6764,
1.6764]}, {
"layers": [
"F",
"B"],
"angle": -
0.0,
"pos": [
160.82,
125.88199999999999],
"drillsize": [
1.1176,
1.1176],
"shape":
"circle",
"offset": [
0.0,
0.0],
"drillshape":
"circle",
"type":
"th",
"size": [
1.6764,
1.6764]}, {
"layers": [
"F",
"B"],
"angle": -
0.0,
"pos": [
160.82,
123.342],
"drillsize": [
1.1176,
1.1176],
"shape":
"circle",
"offset": [
0.0,
0.0],
"drillshape":
"circle",
"type":
"th",
"size": [
1.6764,
1.6764]}, {
"layers": [
"F",
"B"],
"angle": -
0.0,
"pos": [
160.82,
120.80199999999999],
"drillsize": [
1.1176,
1.1176],
"shape":
"circle",
"offset": [
0.0,
0.0],
"drillshape":
"circle",
"type":
"th",
"size": [
1.6764,
1.6764]}, {
"layers": [
"F",
"B"],
"angle": -
0.0,
"pos": [
160.82,
118.262],
"drillsize": [
1.1176,
1.1176],
"shape":
"circle",
"offset": [
0.0,
0.0],
"drillshape":
"circle",
"type":
"th",
"size": [
1.6764,
1.6764]}, {
"layers": [
"F",
"B"],
"angle": -
0.0,
"pos": [
160.82,
115.722],
"drillsize": [
1.1176,
1.1176],
"shape":
"circle",
"offset": [
0.0,
0.0],
"drillshape":
"circle",
"type":
"th",
"size": [
1.6764,
1.6764]}, {
"layers": [
"F",
"B"],
"angle": -
0.0,
"pos": [
160.82,
113.18199999999999],
"drillsize": [
1.1176,
1.1176],
"shape":
"circle",
"offset": [
0.0,
0.0],
"drillshape":
"circle",
"type":
"th",
"size": [
1.6764,
1.6764]}, {
"layers": [
"F",
"B"],
"angle": -
0.0,
"pos": [
160.82,
110.642],
"drillsize": [
1.1176,
1.1176],
"shape":
"rect",
"offset": [
0.0,
0.0],
"drillshape":
"circle",
"pin1":
1,
"type":
"th",
"size": [
1.6764,
1.6764]}],
"drawings": [],
"ref":
"U8",
"bbox": {
"pos": [
159.9818,
109.60059899999999],
"size": [
9.2964,
19.862802]}}, {
"layer":
"F",
"center": [
160.82,
83.972],
"pads": [{
"layers": [
"F",
"B"],
"angle": -
0.0,
"pos": [
160.82,
66.192],
"drillsize": [
1.1176,
1.1176],
"shape":
"circle",
"offset": [
0.0,
0.0],
"drillshape":
"circle",
"type":
"th",
"size": [
1.6764,
1.6764]}, {
"layers": [
"F",
"B"],
"angle": -
0.0,
"pos": [
160.82,
68.732],
"drillsize": [
1.1176,
1.1176],
"shape":
"circle",
"offset": [
0.0,
0.0],
"drillshape":
"circle",
"type":
"th",
"size": [
1.6764,
1.6764]}, {
"layers": [
"F",
"B"],
"angle": -
0.0,
"pos": [
160.82,
71.27199999999999],
"drillsize": [
1.1176,
1.1176],
"shape":
"circle",
"offset": [
0.0,
0.0],
"drillshape":
"circle",
"type":
"th",
"size": [
1.6764,
1.6764]}, {
"layers": [
"F",
"B"],
"angle": -
0.0,
"pos": [
160.82,
73.812],
"drillsize": [
1.1176,
1.1176],
"shape":
"circle",
"offset": [
0.0,
0.0],
"drillshape":
"circle",
"type":
"th",
"size": [
1.6764,
1.6764]}, {
"layers": [
"F",
"B"],
"angle": -
0.0,
"pos": [
160.82,
76.35199999999999],
"drillsize": [
1.1176,
1.1176],
"shape":
"circle",
"offset": [
0.0,
0.0],
"drillshape":
"circle",
"type":
"th",
"size": [
1.6764,
1.6764]}, {
"layers": [
"F",
"B"],
"angle": -
0.0,
"pos": [
160.82,
78.892],
"drillsize": [
1.1176,
1.1176],
"shape":
"circle",
"offset": [
0.0,
0.0],
"drillshape":
"circle",
"type":
"th",
"size": [
1.6764,
1.6764]}, {
"layers": [
"F",
"B"],
"angle": -
0.0,
"pos": [
160.82,
81.432],
"drillsize": [
1.1176,
1.1176],
"shape":
"circle",
"offset": [
0.0,
0.0],
"drillshape":
"circle",
"type":
"th",
"size": [
1.6764,
1.6764]}, {
"layers": [
"F",
"B"],
"angle": -
0.0,
"pos": [
160.82,
83.972],
"drillsize": [
1.1176,
1.1176],
"shape":
"circle",
"offset": [
0.0,
0.0],
"drillshape":
"circle",
"type":
"th",
"size": [
1.6764,
1.6764]}, {
"layers": [
"F",
"B"],
"angle": -
0.0,
"pos": [
153.2,
83.972],
"drillsize": [
1.1176,
1.1176],
"shape":
"circle",
"offset": [
0.0,
0.0],
"drillshape":
"circle",
"type":
"th",
"size": [
1.6764,
1.6764]}, {
"layers": [
"F",
"B"],
"angle": -
0.0,
"pos": [
153.2,
81.432],
"drillsize": [
1.1176,
1.1176],
"shape":
"circle",
"offset": [
0.0,
0.0],
"drillshape":
"circle",
"type":
"th",
"size": [
1.6764,
1.6764]}, {
"layers": [
"F",
"B"],
"angle": -
0.0,
"pos": [
153.2,
78.892],
"drillsize": [
1.1176,
1.1176],
"shape":
"circle",
"offset": [
0.0,
0.0],
"drillshape":
"circle",
"type":
"th",
"size": [
1.6764,
1.6764]}, {
"layers": [
"F",
"B"],
"angle": -
0.0,
"pos": [
153.2,
76.35199999999999],
"drillsize": [
1.1176,
1.1176],
"shape":
"circle",
"offset": [
0.0,
0.0],
"drillshape":
"circle",
"type":
"th",
"size": [
1.6764,
1.6764]}, {
"layers": [
"F",
"B"],
"angle": -
0.0,
"pos": [
153.2,
73.812],
"drillsize": [
1.1176,
1.1176],
"shape":
"circle",
"offset": [
0.0,
0.0],
"drillshape":
"circle",
"type":
"th",
"size": [
1.6764,
1.6764]}, {
"layers": [
"F",
"B"],
"angle": -
0.0,
"pos": [
153.2,
71.27199999999999],
"drillsize": [
1.1176,
1.1176],
"shape":
"circle",
"offset": [
0.0,
0.0],
"drillshape":
"circle",
"type":
"th",
"size": [
1.6764,
1.6764]}, {
"layers": [
"F",
"B"],
"angle": -
0.0,
"pos": [
153.2,
68.732],
"drillsize": [
1.1176,
1.1176],
"shape":
"circle",
"offset": [
0.0,
0.0],
"drillshape":
"circle",
"type":
"th",
"size": [
1.6764,
1.6764]}, {
"layers": [
"F",
"B"],
"angle": -
0.0,
"pos": [
153.2,
66.192],
"drillsize": [
1.1176,
1.1176],
"shape":
"rect",
"offset": [
0.0,
0.0],
"drillshape":
"circle",
"pin1":
1,
"type":
"th",
"size": [
1.6764,
1.6764]}],
"drawings": [],
"ref":
"U1",
"bbox": {
"pos": [
152.3618,
65.150599],
"size": [
9.2964,
19.862802]}}, {
"layer":
"F",
"center": [
140.5,
66.19239999999999],
"pads": [{
"layers": [
"F",
"B"],
"angle": -
180.0,
"pos": [
140.5,
83.9724],
"drillsize": [
1.1176,
1.1176],
"shape":
"circle",
"offset": [
0.0,
0.0],
"drillshape":
"circle",
"type":
"th",
"size": [
1.6764,
1.6764]}, {
"layers": [
"F",
"B"],
"angle": -
180.0,
"pos": [
140.5,
81.4324],
"drillsize": [
1.1176,
1.1176],
"shape":
"circle",
"offset": [
0.0,
0.0],
"drillshape":
"circle",
"type":
"th",
"size": [
1.6764,
1.6764]}, {
"layers": [
"F",
"B"],
"angle": -
180.0,
"pos": [
140.5,
78.8924],
"drillsize": [
1.1176,
1.1176],
"shape":
"circle",
"offset": [
0.0,
0.0],
"drillshape":
"circle",
"type":
"th",
"size": [
1.6764,
1.6764]}, {
"layers": [
"F",
"B"],
"angle": -
180.0,
"pos": [
140.5,
76.3524],
"drillsize": [
1.1176,
1.1176],
"shape":
"circle",
"offset": [
0.0,
0.0],
"drillshape":
"circle",
"type":
"th",
"size": [
1.6764,
1.6764]}, {
"layers": [
"F",
"B"],
"angle": -
180.0,
"pos": [
140.5,
73.8124],
"drillsize": [
1.1176,
1.1176],
"shape":
"circle",
"offset": [
0.0,
0.0],
"drillshape":
"circle",
"type":
"th",
"size": [
1.6764,
1.6764]}, {
"layers": [
"F",
"B"],
"angle": -
180.0,
"pos": [
140.5,
71.27239999999999],
"drillsize": [
1.1176,
1.1176],
"shape":
"circle",
"offset": [
0.0,
0.0],
"drillshape":
"circle",
"type":
"th",
"size": [
1.6764,
1.6764]}, {
"layers": [
"F",
"B"],
"angle": -
180.0,
"pos": [
140.5,
68.7324],
"drillsize": [
1.1176,
1.1176],
"shape":
"circle",
"offset": [
0.0,
0.0],
"drillshape":
"circle",
"type":
"th",
"size": [
1.6764,
1.6764]}, {
"layers": [
"F",
"B"],
"angle": -
180.0,
"pos": [
140.5,
66.19239999999999],
"drillsize": [
1.1176,
1.1176],
"shape":
"circle",
"offset": [
0.0,
0.0],
"drillshape":
"circle",
"type":
"th",
"size": [
1.6764,
1.6764]}, {
"layers": [
"F",
"B"],
"angle": -
180.0,
"pos": [
148.12,
66.19239999999999],
"drillsize": [
1.1176,
1.1176],
"shape":
"circle",
"offset": [
0.0,
0.0],
"drillshape":
"circle",
"type":
"th",
"size": [
1.6764,
1.6764]}, {
"layers": [
"F",
"B"],
"angle": -
180.0,
"pos": [
148.12,
68.7324],
"drillsize": [
1.1176,
1.1176],
"shape":
"circle",
"offset": [
0.0,
0.0],
"drillshape":
"circle",
"type":
"th",
"size": [
1.6764,
1.6764]}, {
"layers": [
"F",
"B"],
"angle": -
180.0,
"pos": [
148.12,
71.27239999999999],
"drillsize": [
1.1176,
1.1176],
"shape":
"circle",
"offset": [
0.0,
0.0],
"drillshape":
"circle",
"type":
"th",
"size": [
1.6764,
1.6764]}, {
"layers": [
"F",
"B"],
"angle": -
180.0,
"pos": [
148.12,
73.8124],
"drillsize": [
1.1176,
1.1176],
"shape":
"circle",
"offset": [
0.0,
0.0],
"drillshape":
"circle",
"type":
"th",
"size": [
1.6764,
1.6764]}, {
"layers": [
"F",
"B"],
"angle": -
180.0,
"pos": [
148.12,
76.3524],
"drillsize": [
1.1176,
1.1176],
"shape":
"circle",
"offset": [
0.0,
0.0],
"drillshape":
"circle",
"type":
"th",
"size": [
1.6764,
1.6764]}, {
"layers": [
"F",
"B"],
"angle": -
180.0,
"pos": [
148.12,
78.8924],
"drillsize": [
1.1176,
1.1176],
"shape":
"circle",
"offset": [
0.0,
0.0],
"drillshape":
"circle",
"type":
"th",
"size": [
1.6764,
1.6764]}, {
"layers": [
"F",
"B"],
"angle": -
180.0,
"pos": [
148.12,
81.4324],
"drillsize": [
1.1176,
1.1176],
"shape":
"circle",
"offset": [
0.0,
0.0],
"drillshape":
"circle",
"type":
"th",
"size": [
1.6764,
1.6764]}, {
"layers": [
"F",
"B"],
"angle": -
180.0,
"pos": [
148.12,
83.9724],
"drillsize": [
1.1176,
1.1176],
"shape":
"rect",
"offset": [
0.0,
0.0],
"drillshape":
"circle",
"pin1":
1,
"type":
"th",
"size": [
1.6764,
1.6764]}],
"drawings": [],
"ref":
"U2",
"bbox": {
"pos": [
139.6618,
65.150999],
"size": [
9.2964,
19.862802]}}, {
"layer":
"F",
"center": [
140.5,
106.832],
"pads": [{
"layers": [
"F",
"B"],
"angle": -
0.0,
"pos": [
140.5,
89.05199999999999],
"drillsize": [
1.1176,
1.1176],
"shape":
"circle",
"offset": [
0.0,
0.0],
"drillshape":
"circle",
"type":
"th",
"size": [
1.6764,
1.6764]}, {
"layers": [
"F",
"B"],
"angle": -
0.0,
"pos": [
140.5,
91.592],
"drillsize": [
1.1176,
1.1176],
"shape":
"circle",
"offset": [
0.0,
0.0],
"drillshape":
"circle",
"type":
"th",
"size": [
1.6764,
1.6764]}, {
"layers": [
"F",
"B"],
"angle": -
0.0,
"pos": [
140.5,
94.13199999999999],
"drillsize": [
1.1176,
1.1176],
"shape":
"circle",
"offset": [
0.0,
0.0],
"drillshape":
"circle",
"type":
"th",
"size": [
1.6764,
1.6764]}, {
"layers": [
"F",
"B"],
"angle": -
0.0,
"pos": [
140.5,
96.672],
"drillsize": [
1.1176,
1.1176],
"shape":
"circle",
"offset": [
0.0,
0.0],
"drillshape":
"circle",
"type":
"th",
"size": [
1.6764,
1.6764]}, {
"layers": [
"F",
"B"],
"angle": -
0.0,
"pos": [
140.5,
99.21199999999999],
"drillsize": [
1.1176,
1.1176],
"shape":
"circle",
"offset": [
0.0,
0.0],
"drillshape":
"circle",
"type":
"th",
"size": [
1.6764,
1.6764]}, {
"layers": [
"F",
"B"],
"angle": -
0.0,
"pos": [
140.5,
101.752],
"drillsize": [
1.1176,
1.1176],
"shape":
"circle",
"offset": [
0.0,
0.0],
"drillshape":
"circle",
"type":
"th",
"size": [
1.6764,
1.6764]}, {
"layers": [
"F",
"B"],
"angle": -
0.0,
"pos": [
140.5,
104.292],
"drillsize": [
1.1176,
1.1176],
"shape":
"circle",
"offset": [
0.0,
0.0],
"drillshape":
"circle",
"type":
"th",
"size": [
1.6764,
1.6764]}, {
"layers": [
"F",
"B"],
"angle": -
0.0,
"pos": [
140.5,
106.832],
"drillsize": [
1.1176,
1.1176],
"shape":
"circle",
"offset": [
0.0,
0.0],
"drillshape":
"circle",
"type":
"th",
"size": [
1.6764,
1.6764]}, {
"layers": [
"F",
"B"],
"angle": -
0.0,
"pos": [
132.88,
106.832],
"drillsize": [
1.1176,
1.1176],
"shape":
"circle",
"offset": [
0.0,
0.0],
"drillshape":
"circle",
"type":
"th",
"size": [
1.6764,
1.6764]}, {
"layers": [
"F",
"B"],
"angle": -
0.0,
"pos": [
132.88,
104.292],
"drillsize": [
1.1176,
1.1176],
"shape":
"circle",
"offset": [
0.0,
0.0],
"drillshape":
"circle",
"type":
"th",
"size": [
1.6764,
1.6764]}, {
"layers": [
"F",
"B"],
"angle": -
0.0,
"pos": [
132.88,
101.752],
"drillsize": [
1.1176,
1.1176],
"shape":
"circle",
"offset": [
0.0,
0.0],
"drillshape":
"circle",
"type":
"th",
"size": [
1.6764,
1.6764]}, {
"layers": [
"F",
"B"],
"angle": -
0.0,
"pos": [
132.88,
99.21199999999999],
"drillsize": [
1.1176,
1.1176],
"shape":
"circle",
"offset": [
0.0,
0.0],
"drillshape":
"circle",
"type":
"th",
"size": [
1.6764,
1.6764]}, {
"layers": [
"F",
"B"],
"angle": -
0.0,
"pos": [
132.88,
96.672],
"drillsize": [
1.1176,
1.1176],
"shape":
"circle",
"offset": [
0.0,
0.0],
"drillshape":
"circle",
"type":
"th",
"size": [
1.6764,
1.6764]}, {
"layers": [
"F",
"B"],
"angle": -
0.0,
"pos": [
132.88,
94.13199999999999],
"drillsize": [
1.1176,
1.1176],
"shape":
"circle",
"offset": [
0.0,
0.0],
"drillshape":
"circle",
"type":
"th",
"size": [
1.6764,
1.6764]}, {
"layers": [
"F",
"B"],
"angle": -
0.0,
"pos": [
132.88,
91.592],
"drillsize": [
1.1176,
1.1176],
"shape":
"circle",
"offset": [
0.0,
0.0],
"drillshape":
"circle",
"type":
"th",
"size": [
1.6764,
1.6764]}, {
"layers": [
"F",
"B"],
"angle": -
0.0,
"pos": [
132.88,
89.05199999999999],
"drillsize": [
1.1176,
1.1176],
"shape":
"rect",
"offset": [
0.0,
0.0],
"drillshape":
"circle",
"pin1":
1,
"type":
"th",
"size": [
1.6764,
1.6764]}],
"drawings": [],
"ref":
"U3",
"bbox": {
"pos": [
132.0418,
88.010599],
"size": [
9.2964,
19.862802]}}, {
"layer":
"F",
"center": [
140.5,
128.422],
"pads": [{
"layers": [
"F",
"B"],
"angle": -
0.0,
"pos": [
140.5,
110.642],
"drillsize": [
1.1176,
1.1176],
"shape":
"circle",
"offset": [
0.0,
0.0],
"drillshape":
"circle",
"type":
"th",
"size": [
1.6764,
1.6764]}, {
"layers": [
"F",
"B"],
"angle": -
0.0,
"pos": [
140.5,
113.18199999999999],
"drillsize": [
1.1176,
1.1176],
"shape":
"circle",
"offset": [
0.0,
0.0],
"drillshape":
"circle",
"type":
"th",
"size": [
1.6764,
1.6764]}, {
"layers": [
"F",
"B"],
"angle": -
0.0,
"pos": [
140.5,
115.722],
"drillsize": [
1.1176,
1.1176],
"shape":
"circle",
"offset": [
0.0,
0.0],
"drillshape":
"circle",
"type":
"th",
"size": [
1.6764,
1.6764]}, {
"layers": [
"F",
"B"],
"angle": -
0.0,
"pos": [
140.5,
118.262],
"drillsize": [
1.1176,
1.1176],
"shape":
"circle",
"offset": [
0.0,
0.0],
"drillshape":
"circle",
"type":
"th",
"size": [
1.6764,
1.6764]}, {
"layers": [
"F",
"B"],
"angle": -
0.0,
"pos": [
140.5,
120.80199999999999],
"drillsize": [
1.1176,
1.1176],
"shape":
"circle",
"offset": [
0.0,
0.0],
"drillshape":
"circle",
"type":
"th",
"size": [
1.6764,
1.6764]}, {
"layers": [
"F",
"B"],
"angle": -
0.0,
"pos": [
140.5,
123.342],
"drillsize": [
1.1176,
1.1176],
"shape":
"circle",
"offset": [
0.0,
0.0],
"drillshape":
"circle",
"type":
"th",
"size": [
1.6764,
1.6764]}, {
"layers": [
"F",
"B"],
"angle": -
0.0,
"pos": [
140.5,
125.88199999999999],
"drillsize": [
1.1176,
1.1176],
"shape":
"circle",
"offset": [
0.0,
0.0],
"drillshape":
"circle",
"type":
"th",
"size": [
1.6764,
1.6764]}, {
"layers": [
"F",
"B"],
"angle": -
0.0,
"pos": [
140.5,
128.422],
"drillsize": [
1.1176,
1.1176],
"shape":
"circle",
"offset": [
0.0,
0.0],
"drillshape":
"circle",
"type":
"th",
"size": [
1.6764,
1.6764]}, {
"layers": [
"F",
"B"],
"angle": -
0.0,
"pos": [
132.88,
128.422],
"drillsize": [
1.1176,
1.1176],
"shape":
"circle",
"offset": [
0.0,
0.0],
"drillshape":
"circle",
"type":
"th",
"size": [
1.6764,
1.6764]}, {
"layers": [
"F",
"B"],
"angle": -
0.0,
"pos": [
132.88,
125.88199999999999],
"drillsize": [
1.1176,
1.1176],
"shape":
"circle",
"offset": [
0.0,
0.0],
"drillshape":
"circle",
"type":
"th",
"size": [
1.6764,
1.6764]}, {
"layers": [
"F",
"B"],
"angle": -
0.0,
"pos": [
132.88,
123.342],
"drillsize": [
1.1176,
1.1176],
"shape":
"circle",
"offset": [
0.0,
0.0],
"drillshape":
"circle",
"type":
"th",
"size": [
1.6764,
1.6764]}, {
"layers": [
"F",
"B"],
"angle": -
0.0,
"pos": [
132.88,
120.80199999999999],
"drillsize": [
1.1176,
1.1176],
"shape":
"circle",
"offset": [
0.0,
0.0],
"drillshape":
"circle",
"type":
"th",
"size": [
1.6764,
1.6764]}, {
"layers": [
"F",
"B"],
"angle": -
0.0,
"pos": [
132.88,
118.262],
"drillsize": [
1.1176,
1.1176],
"shape":
"circle",
"offset": [
0.0,
0.0],
"drillshape":
"circle",
"type":
"th",
"size": [
1.6764,
1.6764]}, {
"layers": [
"F",
"B"],
"angle": -
0.0,
"pos": [
132.88,
115.722],
"drillsize": [
1.1176,
1.1176],
"shape":
"circle",
"offset": [
0.0,
0.0],
"drillshape":
"circle",
"type":
"th",
"size": [
1.6764,
1.6764]}, {
"layers": [
"F",
"B"],
"angle": -
0.0,
"pos": [
132.88,
113.18199999999999],
"drillsize": [
1.1176,
1.1176],
"shape":
"circle",
"offset": [
0.0,
0.0],
"drillshape":
"circle",
"type":
"th",
"size": [
1.6764,
1.6764]}, {
"layers": [
"F",
"B"],
"angle": -
0.0,
"pos": [
132.88,
110.642],
"drillsize": [
1.1176,
1.1176],
"shape":
"rect",
"offset": [
0.0,
0.0],
"drillshape":
"circle",
"pin1":
1,
"type":
"th",
"size": [
1.6764,
1.6764]}],
"drawings": [],
"ref":
"U4",
"bbox": {
"pos": [
132.0418,
109.60059899999999],
"size": [
9.2964,
19.862802]}}, {
"layer":
"F",
"center": [
154.47,
106.604],
"pads": [{
"layers": [
"F",
"B"],
"angle": -
0.0,
"pos": [
154.47,
88.824],
"drillsize": [
1.1176,
1.1176],
"shape":
"circle",
"offset": [
0.0,
0.0],
"drillshape":
"circle",
"type":
"th",
"size": [
1.6764,
1.6764]}, {
"layers": [
"F",
"B"],
"angle": -
0.0,
"pos": [
154.47,
91.36399999999999],
"drillsize": [
1.1176,
1.1176],
"shape":
"circle",
"offset": [
0.0,
0.0],
"drillshape":
"circle",
"type":
"th",
"size": [
1.6764,
1.6764]}, {
"layers": [
"F",
"B"],
"angle": -
0.0,
"pos": [
154.47,
93.904],
"drillsize": [
1.1176,
1.1176],
"shape":
"circle",
"offset": [
0.0,
0.0],
"drillshape":
"circle",
"type":
"th",
"size": [
1.6764,
1.6764]}, {
"layers": [
"F",
"B"],
"angle": -
0.0,
"pos": [
154.47,
96.444],
"drillsize": [
1.1176,
1.1176],
"shape":
"circle",
"offset": [
0.0,
0.0],
"drillshape":
"circle",
"type":
"th",
"size": [
1.6764,
1.6764]}, {
"layers": [
"F",
"B"],
"angle": -
0.0,
"pos": [
154.47,
98.984],
"drillsize": [
1.1176,
1.1176],
"shape":
"circle",
"offset": [
0.0,
0.0],
"drillshape":
"circle",
"type":
"th",
"size": [
1.6764,
1.6764]}, {
"layers": [
"F",
"B"],
"angle": -
0.0,
"pos": [
154.47,
101.524],
"drillsize": [
1.1176,
1.1176],
"shape":
"circle",
"offset": [
0.0,
0.0],
"drillshape":
"circle",
"type":
"th",
"size": [
1.6764,
1.6764]}, {
"layers": [
"F",
"B"],
"angle": -
0.0,
"pos": [
154.47,
104.064],
"drillsize": [
1.1176,
1.1176],
"shape":
"circle",
"offset": [
0.0,
0.0],
"drillshape":
"circle",
"type":
"th",
"size": [
1.6764,
1.6764]}, {
"layers": [
"F",
"B"],
"angle": -
0.0,
"pos": [
154.47,
106.604],
"drillsize": [
1.1176,
1.1176],
"shape":
"circle",
"offset": [
0.0,
0.0],
"drillshape":
"circle",
"type":
"th",
"size": [
1.6764,
1.6764]}, {
"layers": [
"F",
"B"],
"angle": -
0.0,
"pos": [
146.85,
106.604],
"drillsize": [
1.1176,
1.1176],
"shape":
"circle",
"offset": [
0.0,
0.0],
"drillshape":
"circle",
"type":
"th",
"size": [
1.6764,
1.6764]}, {
"layers": [
"F",
"B"],
"angle": -
0.0,
"pos": [
146.85,
104.064],
"drillsize": [
1.1176,
1.1176],
"shape":
"circle",
"offset": [
0.0,
0.0],
"drillshape":
"circle",
"type":
"th",
"size": [
1.6764,
1.6764]}, {
"layers": [
"F",
"B"],
"angle": -
0.0,
"pos": [
146.85,
101.524],
"drillsize": [
1.1176,
1.1176],
"shape":
"circle",
"offset": [
0.0,
0.0],
"drillshape":
"circle",
"type":
"th",
"size": [
1.6764,
1.6764]}, {
"layers": [
"F",
"B"],
"angle": -
0.0,
"pos": [
146.85,
98.984],
"drillsize": [
1.1176,
1.1176],
"shape":
"circle",
"offset": [
0.0,
0.0],
"drillshape":
"circle",
"type":
"th",
"size": [
1.6764,
1.6764]}, {
"layers": [
"F",
"B"],
"angle": -
0.0,
"pos": [
146.85,
96.444],
"drillsize": [
1.1176,
1.1176],
"shape":
"circle",
"offset": [
0.0,
0.0],
"drillshape":
"circle",
"type":
"th",
"size": [
1.6764,
1.6764]}, {
"layers": [
"F",
"B"],
"angle": -
0.0,
"pos": [
146.85,
93.904],
"drillsize": [
1.1176,
1.1176],
"shape":
"circle",
"offset": [
0.0,
0.0],
"drillshape":
"circle",
"type":
"th",
"size": [
1.6764,
1.6764]}, {
"layers": [
"F",
"B"],
"angle": -
0.0,
"pos": [
146.85,
91.36399999999999],
"drillsize": [
1.1176,
1.1176],
"shape":
"circle",
"offset": [
0.0,
0.0],
"drillshape":
"circle",
"type":
"th",
"size": [
1.6764,
1.6764]}, {
"layers": [
"F",
"B"],
"angle": -
0.0,
"pos": [
146.85,
88.824],
"drillsize": [
1.1176,
1.1176],
"shape":
"rect",
"offset": [
0.0,
0.0],
"drillshape":
"circle",
"pin1":
1,
"type":
"th",
"size": [
1.6764,
1.6764]}],
"drawings": [],
"ref":
"U5",
"bbox": {
"pos": [
146.0118,
87.78259899999999],
"size": [
9.2964,
19.862802]}}, {
"layer":
"F",
"center": [
168.44,
106.832],
"pads": [{
"layers": [
"F",
"B"],
"angle": -
0.0,
"pos": [
168.44,
89.05199999999999],
"drillsize": [
1.1176,
1.1176],
"shape":
"circle",
"offset": [
0.0,
0.0],
"drillshape":
"circle",
"type":
"th",
"size": [
1.6764,
1.6764]}, {
"layers": [
"F",
"B"],
"angle": -
0.0,
"pos": [
168.44,
91.592],
"drillsize": [
1.1176,
1.1176],
"shape":
"circle",
"offset": [
0.0,
0.0],
"drillshape":
"circle",
"type":
"th",
"size": [
1.6764,
1.6764]}, {
"layers": [
"F",
"B"],
"angle": -
0.0,
"pos": [
168.44,
94.13199999999999],
"drillsize": [
1.1176,
1.1176],
"shape":
"circle",
"offset": [
0.0,
0.0],
"drillshape":
"circle",
"type":
"th",
"size": [
1.6764,
1.6764]}, {
"layers": [
"F",
"B"],
"angle": -
0.0,
"pos": [
168.44,
96.672],
"drillsize": [
1.1176,
1.1176],
"shape":
"circle",
"offset": [
0.0,
0.0],
"drillshape":
"circle",
"type":
"th",
"size": [
1.6764,
1.6764]}, {
"layers": [
"F",
"B"],
"angle": -
0.0,
"pos": [
168.44,
99.21199999999999],
"drillsize": [
1.1176,
1.1176],
"shape":
"circle",
"offset": [
0.0,
0.0],
"drillshape":
"circle",
"type":
"th",
"size": [
1.6764,
1.6764]}, {
"layers": [
"F",
"B"],
"angle": -
0.0,
"pos": [
168.44,
101.752],
"drillsize": [
1.1176,
1.1176],
"shape":
"circle",
"offset": [
0.0,
0.0],
"drillshape":
"circle",
"type":
"th",
"size": [
1.6764,
1.6764]}, {
"layers": [
"F",
"B"],
"angle": -
0.0,
"pos": [
168.44,
104.292],
"drillsize": [
1.1176,
1.1176],
"shape":
"circle",
"offset": [
0.0,
0.0],
"drillshape":
"circle",
"type":
"th",
"size": [
1.6764,
1.6764]}, {
"layers": [
"F",
"B"],
"angle": -
0.0,
"pos": [
168.44,
106.832],
"drillsize": [
1.1176,
1.1176],
"shape":
"circle",
"offset": [
0.0,
0.0],
"drillshape":
"circle",
"type":
"th",
"size": [
1.6764,
1.6764]}, {
"layers": [
"F",
"B"],
"angle": -
0.0,
"pos": [
160.82,
106.832],
"drillsize": [
1.1176,
1.1176],
"shape":
"circle",
"offset": [
0.0,
0.0],
"drillshape":
"circle",
"type":
"th",
"size": [
1.6764,
1.6764]}, {
"layers": [
"F",
"B"],
"angle": -
0.0,
"pos": [
160.82,
104.292],
"drillsize": [
1.1176,
1.1176],
"shape":
"circle",
"offset": [
0.0,
0.0],
"drillshape":
"circle",
"type":
"th",
"size": [
1.6764,
1.6764]}, {
"layers": [
"F",
"B"],
"angle": -
0.0,
"pos": [
160.82,
101.752],
"drillsize": [
1.1176,
1.1176],
"shape":
"circle",
"offset": [
0.0,
0.0],
"drillshape":
"circle",
"type":
"th",
"size": [
1.6764,
1.6764]}, {
"layers": [
"F",
"B"],
"angle": -
0.0,
"pos": [
160.82,
99.21199999999999],
"drillsize": [
1.1176,
1.1176],
"shape":
"circle",
"offset": [
0.0,
0.0],
"drillshape":
"circle",
"type":
"th",
"size": [
1.6764,
1.6764]}, {
"layers": [
"F",
"B"],
"angle": -
0.0,
"pos": [
160.82,
96.672],
"drillsize": [
1.1176,
1.1176],
"shape":
"circle",
"offset": [
0.0,
0.0],
"drillshape":
"circle",
"type":
"th",
"size": [
1.6764,
1.6764]}, {
"layers": [
"F",
"B"],
"angle": -
0.0,
"pos": [
160.82,
94.13199999999999],
"drillsize": [
1.1176,
1.1176],
"shape":
"circle",
"offset": [
0.0,
0.0],
"drillshape":
"circle",
"type":
"th",
"size": [
1.6764,
1.6764]}, {
"layers": [
"F",
"B"],
"angle": -
0.0,
"pos": [
160.82,
91.592],
"drillsize": [
1.1176,
1.1176],
"shape":
"circle",
"offset": [
0.0,
0.0],
"drillshape":
"circle",
"type":
"th",
"size": [
1.6764,
1.6764]}, {
"layers": [
"F",
"B"],
"angle": -
0.0,
"pos": [
160.82,
89.05199999999999],
"drillsize": [
1.1176,
1.1176],
"shape":
"rect",
"offset": [
0.0,
0.0],
"drillshape":
"circle",
"pin1":
1,
"type":
"th",
"size": [
1.6764,
1.6764]}],
"drawings": [],
"ref":
"U6",
"bbox": {
"pos": [
159.9818,
88.010599],
"size": [
9.2964,
19.862802]}}, {
"layer":
"F",
"center": [
139.43,
134.35],
"pads": [{
"layers": [
"F",
"B"],
"angle": -
0.0,
"pos": [
159.75,
134.35],
"drillsize": [
0.8099999999999999,
0.8099999999999999],
"shape":
"circle",
"offset": [
0.0,
0.0],
"drillshape":
"circle",
"type":
"th",
"size": [
1.8099999999999998,
1.8099999999999998]}, {
"layers": [
"F",
"B"],
"angle": -
0.0,
"pos": [
157.20999999999998,
134.35],
"drillsize": [
0.8099999999999999,
0.8099999999999999],
"shape":
"circle",
"offset": [
0.0,
0.0],
"drillshape":
"circle",
"type":
"th",
"size": [
1.8099999999999998,
1.8099999999999998]}, {
"layers": [
"F",
"B"],
"angle": -
0.0,
"pos": [
154.67,
134.35],
"drillsize": [
0.8099999999999999,
0.8099999999999999],
"shape":
"circle",
"offset": [
0.0,
0.0],
"drillshape":
"circle",
"type":
"th",
"size": [
1.8099999999999998,
1.8099999999999998]}, {
"layers": [
"F",
"B"],
"angle": -
0.0,
"pos": [
152.13,
134.35],
"drillsize": [
0.8099999999999999,
0.8099999999999999],
"shape":
"circle",
"offset": [
0.0,
0.0],
"drillshape":
"circle",
"type":
"th",
"size": [
1.8099999999999998,
1.8099999999999998]}, {
"layers": [
"F",
"B"],
"angle": -
0.0,
"pos": [
149.59,
134.35],
"drillsize": [
0.8099999999999999,
0.8099999999999999],
"shape":
"circle",
"offset": [
0.0,
0.0],
"drillshape":
"circle",
"type":
"th",
"size": [
1.8099999999999998,
1.8099999999999998]}, {
"layers": [
"F",
"B"],
"angle": -
0.0,
"pos": [
147.04999999999998,
134.35],
"drillsize": [
0.8099999999999999,
0.8099999999999999],
"shape":
"circle",
"offset": [
0.0,
0.0],
"drillshape":
"circle",
"type":
"th",
"size": [
1.8099999999999998,
1.8099999999999998]}, {
"layers": [
"F",
"B"],
"angle": -
0.0,
"pos": [
144.51,
134.35],
"drillsize": [
0.8099999999999999,
0.8099999999999999],
"shape":
"circle",
"offset": [
0.0,
0.0],
"drillshape":
"circle",
"type":
"th",
"size": [
1.8099999999999998,
1.8099999999999998]}, {
"layers": [
"F",
"B"],
"angle": -
0.0,
"pos": [
141.97,
134.35],
"drillsize": [
0.8099999999999999,
0.8099999999999999],
"shape":
"circle",
"offset": [
0.0,
0.0],
"drillshape":
"circle",
"type":
"th",
"size": [
1.8099999999999998,
1.8099999999999998]}, {
"layers": [
"F",
"B"],
"angle": -
0.0,
"pos": [
139.43,
134.35],
"drillsize": [
0.8099999999999999,
0.8099999999999999],
"shape":
"rect",
"offset": [
0.0,
0.0],
"drillshape":
"circle",
"pin1":
1,
"type":
"th",
"size": [
1.8099999999999998,
1.8099999999999998]}],
"drawings": [],
"ref":
"RN1",
"bbox": {
"pos": [
137.914999,
132.824999],
"size": [
23.360001999999998,
3.0500019999999997]}}, {
"layer":
"F",
"center": [
134.35,
61.942899999999995],
"pads": [{
"layers": [
"F",
"B"],
"angle": -
90.0,
"pos": [
134.35,
41.6229],
"drillsize": [
0.8099999999999999,
0.8099999999999999],
"shape":
"circle",
"offset": [
0.0,
0.0],
"drillshape":
"circle",
"type":
"th",
"size": [
1.8099999999999998,
1.8099999999999998]}, {
"layers": [
"F",
"B"],
"angle": -
90.0,
"pos": [
134.35,
44.1629],
"drillsize": [
0.8099999999999999,
0.8099999999999999],
"shape":
"circle",
"offset": [
0.0,
0.0],
"drillshape":
"circle",
"type":
"th",
"size": [
1.8099999999999998,
1.8099999999999998]}, {
"layers": [
"F",
"B"],
"angle": -
90.0,
"pos": [
134.35,
46.7029],
"drillsize": [
0.8099999999999999,
0.8099999999999999],
"shape":
"circle",
"offset": [
0.0,
0.0],
"drillshape":
"circle",
"type":
"th",
"size": [
1.8099999999999998,
1.8099999999999998]}, {
"layers": [
"F",
"B"],
"angle": -
90.0,
"pos": [
134.35,
49.2429],
"drillsize": [
0.8099999999999999,
0.8099999999999999],
"shape":
"circle",
"offset": [
0.0,
0.0],
"drillshape":
"circle",
"type":
"th",
"size": [
1.8099999999999998,
1.8099999999999998]}, {
"layers": [
"F",
"B"],
"angle": -
90.0,
"pos": [
134.35,
51.7829],
"drillsize": [
0.8099999999999999,
0.8099999999999999],
"shape":
"circle",
"offset": [
0.0,
0.0],
"drillshape":
"circle",
"type":
"th",
"size": [
1.8099999999999998,
1.8099999999999998]}, {
"layers": [
"F",
"B"],
"angle": -
90.0,
"pos": [
134.35,
54.3229],
"drillsize": [
0.8099999999999999,
0.8099999999999999],
"shape":
"circle",
"offset": [
0.0,
0.0],
"drillshape":
"circle",
"type":
"th",
"size": [
1.8099999999999998,
1.8099999999999998]}, {
"layers": [
"F",
"B"],
"angle": -
90.0,
"pos": [
134.35,
56.862899999999996],
"drillsize": [
0.8099999999999999,
0.8099999999999999],
"shape":
"circle",
"offset": [
0.0,
0.0],
"drillshape":
"circle",
"type":
"th",
"size": [
1.8099999999999998,
1.8099999999999998]}, {
"layers": [
"F",
"B"],
"angle": -
90.0,
"pos": [
134.35,
59.402899999999995],
"drillsize": [
0.8099999999999999,
0.8099999999999999],
"shape":
"circle",
"offset": [
0.0,
0.0],
"drillshape":
"circle",
"type":
"th",
"size": [
1.8099999999999998,
1.8099999999999998]}, {
"layers": [
"F",
"B"],
"angle": -
90.0,
"pos": [
134.35,
61.942899999999995],
"drillsize": [
0.8099999999999999,
0.8099999999999999],
"shape":
"rect",
"offset": [
0.0,
0.0],
"drillshape":
"circle",
"pin1":
1,
"type":
"th",
"size": [
1.8099999999999998,
1.8099999999999998]}],
"drawings": [],
"ref":
"RN2",
"bbox": {
"pos": [
132.824999,
40.097899],
"size": [
3.0500019999999997,
23.360001999999998]}}, {
"layer":
"F",
"center": [
149.59,
61.942899999999995],
"pads": [{
"layers": [
"F",
"B"],
"angle": -
90.0,
"pos": [
149.59,
41.6229],
"drillsize": [
0.8099999999999999,
0.8099999999999999],
"shape":
"circle",
"offset": [
0.0,
0.0],
"drillshape":
"circle",
"type":
"th",
"size": [
1.8099999999999998,
1.8099999999999998]}, {
"layers": [
"F",
"B"],
"angle": -
90.0,
"pos": [
149.59,
44.1629],
"drillsize": [
0.8099999999999999,
0.8099999999999999],
"shape":
"circle",
"offset": [
0.0,
0.0],
"drillshape":
"circle",
"type":
"th",
"size": [
1.8099999999999998,
1.8099999999999998]}, {
"layers": [
"F",
"B"],
"angle": -
90.0,
"pos": [
149.59,
46.7029],
"drillsize": [
0.8099999999999999,
0.8099999999999999],
"shape":
"circle",
"offset": [
0.0,
0.0],
"drillshape":
"circle",
"type":
"th",
"size": [
1.8099999999999998,
1.8099999999999998]}, {
"layers": [
"F",
"B"],
"angle": -
90.0,
"pos": [
149.59,
49.2429],
"drillsize": [
0.8099999999999999,
0.8099999999999999],
"shape":
"circle",
"offset": [
0.0,
0.0],
"drillshape":
"circle",
"type":
"th",
"size": [
1.8099999999999998,
1.8099999999999998]}, {
"layers": [
"F",
"B"],
"angle": -
90.0,
"pos": [
149.59,
51.7829],
"drillsize": [
0.8099999999999999,
0.8099999999999999],
"shape":
"circle",
"offset": [
0.0,
0.0],
"drillshape":
"circle",
"type":
"th",
"size": [
1.8099999999999998,
1.8099999999999998]}, {
"layers": [
"F",
"B"],
"angle": -
90.0,
"pos": [
149.59,
54.3229],
"drillsize": [
0.8099999999999999,
0.8099999999999999],
"shape":
"circle",
"offset": [
0.0,
0.0],
"drillshape":
"circle",
"type":
"th",
"size": [
1.8099999999999998,
1.8099999999999998]}, {
"layers": [
"F",
"B"],
"angle": -
90.0,
"pos": [
149.59,
56.862899999999996],
"drillsize": [
0.8099999999999999,
0.8099999999999999],
"shape":
"circle",
"offset": [
0.0,
0.0],
"drillshape":
"circle",
"type":
"th",
"size": [
1.8099999999999998,
1.8099999999999998]}, {
"layers": [
"F",
"B"],
"angle": -
90.0,
"pos": [
149.59,
59.402899999999995],
"drillsize": [
0.8099999999999999,
0.8099999999999999],
"shape":
"circle",
"offset": [
0.0,
0.0],
"drillshape":
"circle",
"type":
"th",
"size": [
1.8099999999999998,
1.8099999999999998]}, {
"layers": [
"F",
"B"],
"angle": -
90.0,
"pos": [
149.59,
61.942899999999995],
"drillsize": [
0.8099999999999999,
0.8099999999999999],
"shape":
"rect",
"offset": [
0.0,
0.0],
"drillshape":
"circle",
"pin1":
1,
"type":
"th",
"size": [
1.8099999999999998,
1.8099999999999998]}],
"drawings": [],
"ref":
"RN3",
"bbox": {
"pos": [
148.064999,
40.097899],
"size": [
3.0500019999999997,
23.360001999999998]}}, {
"layer":
"F",
"center": [
139.43,
140.7],
"pads": [{
"layers": [
"F",
"B"],
"angle": -
0.0,
"pos": [
159.75,
140.7],
"drillsize": [
0.8099999999999999,
0.8099999999999999],
"shape":
"circle",
"offset": [
0.0,
0.0],
"drillshape":
"circle",
"type":
"th",
"size": [
1.8099999999999998,
1.8099999999999998]}, {
"layers": [
"F",
"B"],
"angle": -
0.0,
"pos": [
157.20999999999998,
140.7],
"drillsize": [
0.8099999999999999,
0.8099999999999999],
"shape":
"circle",
"offset": [
0.0,
0.0],
"drillshape":
"circle",
"type":
"th",
"size": [
1.8099999999999998,
1.8099999999999998]}, {
"layers": [
"F",
"B"],
"angle": -
0.0,
"pos": [
154.67,
140.7],
"drillsize": [
0.8099999999999999,
0.8099999999999999],
"shape":
"circle",
"offset": [
0.0,
0.0],
"drillshape":
"circle",
"type":
"th",
"size": [
1.8099999999999998,
1.8099999999999998]}, {
"layers": [
"F",
"B"],
"angle": -
0.0,
"pos": [
152.13,
140.7],
"drillsize": [
0.8099999999999999,
0.8099999999999999],
"shape":
"circle",
"offset": [
0.0,
0.0],
"drillshape":
"circle",
"type":
"th",
"size": [
1.8099999999999998,
1.8099999999999998]}, {
"layers": [
"F",
"B"],
"angle": -
0.0,
"pos": [
149.59,
140.7],
"drillsize": [
0.8099999999999999,
0.8099999999999999],
"shape":
"circle",
"offset": [
0.0,
0.0],
"drillshape":
"circle",
"type":
"th",
"size": [
1.8099999999999998,
1.8099999999999998]}, {
"layers": [
"F",
"B"],
"angle": -
0.0,
"pos": [
147.04999999999998,
140.7],
"drillsize": [
0.8099999999999999,
0.8099999999999999],
"shape":
"circle",
"offset": [
0.0,
0.0],
"drillshape":
"circle",
"type":
"th",
"size": [
1.8099999999999998,
1.8099999999999998]}, {
"layers": [
"F",
"B"],
"angle": -
0.0,
"pos": [
144.51,
140.7],
"drillsize": [
0.8099999999999999,
0.8099999999999999],
"shape":
"circle",
"offset": [
0.0,
0.0],
"drillshape":
"circle",
"type":
"th",
"size": [
1.8099999999999998,
1.8099999999999998]}, {
"layers": [
"F",
"B"],
"angle": -
0.0,
"pos": [
141.97,
140.7],
"drillsize": [
0.8099999999999999,
0.8099999999999999],
"shape":
"circle",
"offset": [
0.0,
0.0],
"drillshape":
"circle",
"type":
"th",
"size": [
1.8099999999999998,
1.8099999999999998]}, {
"layers": [
"F",
"B"],
"angle": -
0.0,
"pos": [
139.43,
140.7],
"drillsize": [
0.8099999999999999,
0.8099999999999999],
"shape":
"rect",
"offset": [
0.0,
0.0],
"drillshape":
"circle",
"pin1":
1,
"type":
"th",
"size": [
1.8099999999999998,
1.8099999999999998]}],
"drawings": [],
"ref":
"RN5",
"bbox": {
"pos": [
137.914999,
139.17499899999999],
"size": [
23.360001999999998,
3.0500019999999997]}}, {
"layer":
"F",
"center": [
139.43,
147.04999999999998],
"pads": [{
"layers": [
"F",
"B"],
"angle": -
0.0,
"pos": [
159.75,
147.04999999999998],
"drillsize": [
0.8099999999999999,
0.8099999999999999],
"shape":
"circle",
"offset": [
0.0,
0.0],
"drillshape":
"circle",
"type":
"th",
"size": [
1.8099999999999998,
1.8099999999999998]}, {
"layers": [
"F",
"B"],
"angle": -
0.0,
"pos": [
157.20999999999998,
147.04999999999998],
"drillsize": [
0.8099999999999999,
0.8099999999999999],
"shape":
"circle",
"offset": [
0.0,
0.0],
"drillshape":
"circle",
"type":
"th",
"size": [
1.8099999999999998,
1.8099999999999998]}, {
"layers": [
"F",
"B"],
"angle": -
0.0,
"pos": [
154.67,
147.04999999999998],
"drillsize": [
0.8099999999999999,
0.8099999999999999],
"shape":
"circle",
"offset": [
0.0,
0.0],
"drillshape":
"circle",
"type":
"th",
"size": [
1.8099999999999998,
1.8099999999999998]}, {
"layers": [
"F",
"B"],
"angle": -
0.0,
"pos": [
152.13,
147.04999999999998],
"drillsize": [
0.8099999999999999,
0.8099999999999999],
"shape":
"circle",
"offset": [
0.0,
0.0],
"drillshape":
"circle",
"type":
"th",
"size": [
1.8099999999999998,
1.8099999999999998]}, {
"layers": [
"F",
"B"],
"angle": -
0.0,
"pos": [
149.59,
147.04999999999998],
"drillsize": [
0.8099999999999999,
0.8099999999999999],
"shape":
"circle",
"offset": [
0.0,
0.0],
"drillshape":
"circle",
"type":
"th",
"size": [
1.8099999999999998,
1.8099999999999998]}, {
"layers": [
"F",
"B"],
"angle": -
0.0,
"pos": [
147.04999999999998,
147.04999999999998],
"drillsize": [
0.8099999999999999,
0.8099999999999999],
"shape":
"circle",
"offset": [
0.0,
0.0],
"drillshape":
"circle",
"type":
"th",
"size": [
1.8099999999999998,
1.8099999999999998]}, {
"layers": [
"F",
"B"],
"angle": -
0.0,
"pos": [
144.51,
147.04999999999998],
"drillsize": [
0.8099999999999999,
0.8099999999999999],
"shape":
"circle",
"offset": [
0.0,
0.0],
"drillshape":
"circle",
"type":
"th",
"size": [
1.8099999999999998,
1.8099999999999998]}, {
"layers": [
"F",
"B"],
"angle": -
0.0,
"pos": [
141.97,
147.04999999999998],
"drillsize": [
0.8099999999999999,
0.8099999999999999],
"shape":
"circle",
"offset": [
0.0,
0.0],
"drillshape":
"circle",
"type":
"th",
"size": [
1.8099999999999998,
1.8099999999999998]}, {
"layers": [
"F",
"B"],
"angle": -
0.0,
"pos": [
139.43,
147.04999999999998],
"drillsize": [
0.8099999999999999,
0.8099999999999999],
"shape":
"rect",
"offset": [
0.0,
0.0],
"drillshape":
"circle",
"pin1":
1,
"type":
"th",
"size": [
1.8099999999999998,
1.8099999999999998]}],
"drawings": [],
"ref":
"RN6",
"bbox": {
"pos": [
137.914999,
145.52499899999998],
"size": [
23.360001999999998,
3.0500019999999997]}}, {
"layer":
"F",
"center": [
166.1,
61.942899999999995],
"pads": [{
"layers": [
"F",
"B"],
"angle": -
90.0,
"pos": [
166.1,
41.6229],
"drillsize": [
0.8099999999999999,
0.8099999999999999],
"shape":
"circle",
"offset": [
0.0,
0.0],
"drillshape":
"circle",
"type":
"th",
"size": [
1.8099999999999998,
1.8099999999999998]}, {
"layers": [
"F",
"B"],
"angle": -
90.0,
"pos": [
166.1,
44.1629],
"drillsize": [
0.8099999999999999,
0.8099999999999999],
"shape":
"circle",
"offset": [
0.0,
0.0],
"drillshape":
"circle",
"type":
"th",
"size": [
1.8099999999999998,
1.8099999999999998]}, {
"layers": [
"F",
"B"],
"angle": -
90.0,
"pos": [
166.1,
46.7029],
"drillsize": [
0.8099999999999999,
0.8099999999999999],
"shape":
"circle",
"offset": [
0.0,
0.0],
"drillshape":
"circle",
"type":
"th",
"size": [
1.8099999999999998,
1.8099999999999998]}, {
"layers": [
"F",
"B"],
"angle": -
90.0,
"pos": [
166.1,
49.2429],
"drillsize": [
0.8099999999999999,
0.8099999999999999],
"shape":
"circle",
"offset": [
0.0,
0.0],
"drillshape":
"circle",
"type":
"th",
"size": [
1.8099999999999998,
1.8099999999999998]}, {
"layers": [
"F",
"B"],
"angle": -
90.0,
"pos": [
166.1,
51.7829],
"drillsize": [
0.8099999999999999,
0.8099999999999999],
"shape":
"circle",
"offset": [
0.0,
0.0],
"drillshape":
"circle",
"type":
"th",
"size": [
1.8099999999999998,
1.8099999999999998]}, {
"layers": [
"F",
"B"],
"angle": -
90.0,
"pos": [
166.1,
54.3229],
"drillsize": [
0.8099999999999999,
0.8099999999999999],
"shape":
"circle",
"offset": [
0.0,
0.0],
"drillshape":
"circle",
"type":
"th",
"size": [
1.8099999999999998,
1.8099999999999998]}, {
"layers": [
"F",
"B"],
"angle": -
90.0,
"pos": [
166.1,
56.862899999999996],
"drillsize": [
0.8099999999999999,
0.8099999999999999],
"shape":
"circle",
"offset": [
0.0,
0.0],
"drillshape":
"circle",
"type":
"th",
"size": [
1.8099999999999998,
1.8099999999999998]}, {
"layers": [
"F",
"B"],
"angle": -
90.0,
"pos": [
166.1,
59.402899999999995],
"drillsize": [
0.8099999999999999,
0.8099999999999999],
"shape":
"circle",
"offset": [
0.0,
0.0],
"drillshape":
"circle",
"type":
"th",
"size": [
1.8099999999999998,
1.8099999999999998]}, {
"layers": [
"F",
"B"],
"angle": -
90.0,
"pos": [
166.1,
61.942899999999995],
"drillsize": [
0.8099999999999999,
0.8099999999999999],
"shape":
"rect",
"offset": [
0.0,
0.0],
"drillshape":
"circle",
"pin1":
1,
"type":
"th",
"size": [
1.8099999999999998,
1.8099999999999998]}],
"drawings": [],
"ref":
"RN4",
"bbox": {
"pos": [
164.574999,
40.097899],
"size": [
3.0500019999999997,
23.360001999999998]}}, {
"layer":
"F",
"center": [
173.51999999999998,
89.05199999999999],
"pads": [{
"layers": [
"F",
"B"],
"angle": -
0.0,
"pos": [
176.06,
144.932],
"drillsize": [
1.016,
1.016],
"shape":
"oval",
"offset": [
0.0,
0.0],
"drillshape":
"circle",
"type":
"th",
"size": [
1.7271999999999998,
1.7271999999999998]}, {
"layers": [
"F",
"B"],
"angle": -
0.0,
"pos": [
173.51999999999998,
144.932],
"drillsize": [
1.016,
1.016],
"shape":
"oval",
"offset": [
0.0,
0.0],
"drillshape":
"circle",
"type":
"th",
"size": [
1.7271999999999998,
1.7271999999999998]}, {
"layers": [
"F",
"B"],
"angle": -
0.0,
"pos": [
176.06,
142.392],
"drillsize": [
1.016,
1.016],
"shape":
"oval",
"offset": [
0.0,
0.0],
"drillshape":
"circle",
"type":
"th",
"size": [
1.7271999999999998,
1.7271999999999998]}, {
"layers": [
"F",
"B"],
"angle": -
0.0,
"pos": [
173.51999999999998,
142.392],
"drillsize": [
1.016,
1.016],
"shape":
"oval",
"offset": [
0.0,
0.0],
"drillshape":
"circle",
"type":
"th",
"size": [
1.7271999999999998,
1.7271999999999998]}, {
"layers": [
"F",
"B"],
"angle": -
0.0,
"pos": [
176.06,
139.852],
"drillsize": [
1.016,
1.016],
"shape":
"oval",
"offset": [
0.0,
0.0],
"drillshape":
"circle",
"type":
"th",
"size": [
1.7271999999999998,
1.7271999999999998]}, {
"layers": [
"F",
"B"],
"angle": -
0.0,
"pos": [
173.51999999999998,
139.852],
"drillsize": [
1.016,
1.016],
"shape":
"oval",
"offset": [
0.0,
0.0],
"drillshape":
"circle",
"type":
"th",
"size": [
1.7271999999999998,
1.7271999999999998]}, {
"layers": [
"F",
"B"],
"angle": -
0.0,
"pos": [
176.06,
137.31199999999998],
"drillsize": [
1.016,
1.016],
"shape":
"oval",
"offset": [
0.0,
0.0],
"drillshape":
"circle",
"type":
"th",
"size": [
1.7271999999999998,
1.7271999999999998]}, {
"layers": [
"F",
"B"],
"angle": -
0.0,
"pos": [
173.51999999999998,
137.31199999999998],
"drillsize": [
1.016,
1.016],
"shape":
"oval",
"offset": [
0.0,
0.0],
"drillshape":
"circle",
"type":
"th",
"size": [
1.7271999999999998,
1.7271999999999998]}, {
"layers": [
"F",
"B"],
"angle": -
0.0,
"pos": [
176.06,
134.772],
"drillsize": [
1.016,
1.016],
"shape":
"oval",
"offset": [
0.0,
0.0],
"drillshape":
"circle",
"type":
"th",
"size": [
1.7271999999999998,
1.7271999999999998]}, {
"layers": [
"F",
"B"],
"angle": -
0.0,
"pos": [
173.51999999999998,
134.772],
"drillsize": [
1.016,
1.016],
"shape":
"oval",
"offset": [
0.0,
0.0],
"drillshape":
"circle",
"type":
"th",
"size": [
1.7271999999999998,
1.7271999999999998]}, {
"layers": [
"F",
"B"],
"angle": -
0.0,
"pos": [
176.06,
132.232],
"drillsize": [
1.016,
1.016],
"shape":
"oval",
"offset": [
0.0,
0.0],
"drillshape":
"circle",
"type":
"th",
"size": [
1.7271999999999998,
1.7271999999999998]}, {
"layers": [
"F",
"B"],
"angle": -
0.0,
"pos": [
173.51999999999998,
132.232],
"drillsize": [
1.016,
1.016],
"shape":
"oval",
"offset": [
0.0,
0.0],
"drillshape":
"circle",
"type":
"th",
"size": [
1.7271999999999998,
1.7271999999999998]}, {
"layers": [
"F",
"B"],
"angle": -
0.0,
"pos": [
176.06,
129.692],
"drillsize": [
1.016,
1.016],
"shape":
"oval",
"offset": [
0.0,
0.0],
"drillshape":
"circle",
"type":
"th",
"size": [
1.7271999999999998,
1.7271999999999998]}, {
"layers": [
"F",
"B"],
"angle": -
0.0,
"pos": [
173.51999999999998,
129.692],
"drillsize": [
1.016,
1.016],
"shape":
"oval",
"offset": [
0.0,
0.0],
"drillshape":
"circle",
"type":
"th",
"size": [
1.7271999999999998,
1.7271999999999998]}, {
"layers": [
"F",
"B"],
"angle": -
0.0,
"pos": [
176.06,
127.152],
"drillsize": [
1.016,
1.016],
"shape":
"oval",
"offset": [
0.0,
0.0],
"drillshape":
"circle",
"type":
"th",
"size": [
1.7271999999999998,
1.7271999999999998]}, {
"layers": [
"F",
"B"],
"angle": -
0.0,
"pos": [
173.51999999999998,
127.152],
"drillsize": [
1.016,
1.016],
"shape":
"oval",
"offset": [
0.0,
0.0],
"drillshape":
"circle",
"type":
"th",
"size": [
1.7271999999999998,
1.7271999999999998]}, {
"layers": [
"F",
"B"],
"angle": -
0.0,
"pos": [
176.06,
124.612],
"drillsize": [
1.016,
1.016],
"shape":
"oval",
"offset": [
0.0,
0.0],
"drillshape":
"circle",
"type":
"th",
"size": [
1.7271999999999998,
1.7271999999999998]}, {
"layers": [
"F",
"B"],
"angle": -
0.0,
"pos": [
173.51999999999998,
124.612],
"drillsize": [
1.016,
1.016],
"shape":
"oval",
"offset": [
0.0,
0.0],
"drillshape":
"circle",
"type":
"th",
"size": [
1.7271999999999998,
1.7271999999999998]}, {
"layers": [
"F",
"B"],
"angle": -
0.0,
"pos": [
176.06,
122.07199999999999],
"drillsize": [
1.016,
1.016],
"shape":
"oval",
"offset": [
0.0,
0.0],
"drillshape":
"circle",
"type":
"th",
"size": [
1.7271999999999998,
1.7271999999999998]}, {
"layers": [
"F",
"B"],
"angle": -
0.0,
"pos": [
173.51999999999998,
122.07199999999999],
"drillsize": [
1.016,
1.016],
"shape":
"oval",
"offset": [
0.0,
0.0],
"drillshape":
"circle",
"type":
"th",
"size": [
1.7271999999999998,
1.7271999999999998]}, {
"layers": [
"F",
"B"],
"angle": -
0.0,
"pos": [
176.06,
119.532],
"drillsize": [
1.016,
1.016],
"shape":
"oval",
"offset": [
0.0,
0.0],
"drillshape":
"circle",
"type":
"th",
"size": [
1.7271999999999998,
1.7271999999999998]}, {
"layers": [
"F",
"B"],
"angle": -
0.0,
"pos": [
173.51999999999998,
119.532],
"drillsize": [
1.016,
1.016],
"shape":
"oval",
"offset": [
0.0,
0.0],
"drillshape":
"circle",
"type":
"th",
"size": [
1.7271999999999998,
1.7271999999999998]}, {
"layers": [
"F",
"B"],
"angle": -
0.0,
"pos": [
176.06,
116.99199999999999],
"drillsize": [
1.016,
1.016],
"shape":
"oval",
"offset": [
0.0,
0.0],
"drillshape":
"circle",
"type":
"th",
"size": [
1.7271999999999998,
1.7271999999999998]}, {
"layers": [
"F",
"B"],
"angle": -
0.0,
"pos": [
173.51999999999998,
116.99199999999999],
"drillsize": [
1.016,
1.016],
"shape":
"oval",
"offset": [
0.0,
0.0],
"drillshape":
"circle",
"type":
"th",
"size": [
1.7271999999999998,
1.7271999999999998]}, {
"layers": [
"F",
"B"],
"angle": -
0.0,
"pos": [
176.06,
114.452],
"drillsize": [
1.016,
1.016],
"shape":
"oval",
"offset": [
0.0,
0.0],
"drillshape":
"circle",
"type":
"th",
"size": [
1.7271999999999998,
1.7271999999999998]}, {
"layers": [
"F",
"B"],
"angle": -
0.0,
"pos": [
173.51999999999998,
114.452],
"drillsize": [
1.016,
1.016],
"shape":
"oval",
"offset": [
0.0,
0.0],
"drillshape":
"circle",
"type":
"th",
"size": [
1.7271999999999998,
1.7271999999999998]}, {
"layers": [
"F",
"B"],
"angle": -
0.0,
"pos": [
176.06,
111.91199999999999],
"drillsize": [
1.016,
1.016],
"shape":
"oval",
"offset": [
0.0,
0.0],
"drillshape":
"circle",
"type":
"th",
"size": [
1.7271999999999998,
1.7271999999999998]}, {
"layers": [
"F",
"B"],
"angle": -
0.0,
"pos": [
173.51999999999998,
111.91199999999999],
"drillsize": [
1.016,
1.016],
"shape":
"oval",
"offset": [
0.0,
0.0],
"drillshape":
"circle",
"type":
"th",
"size": [
1.7271999999999998,
1.7271999999999998]}, {
"layers": [
"F",
"B"],
"angle": -
0.0,
"pos": [
176.06,
109.372],
"drillsize": [
1.016,
1.016],
"shape":
"oval",
"offset": [
0.0,
0.0],
"drillshape":
"circle",
"type":
"th",
"size": [
1.7271999999999998,
1.7271999999999998]}, {
"layers": [
"F",
"B"],
"angle": -
0.0,
"pos": [
173.51999999999998,
109.372],
"drillsize": [
1.016,
1.016],
"shape":
"oval",
"offset": [
0.0,
0.0],
"drillshape":
"circle",
"type":
"th",
"size": [
1.7271999999999998,
1.7271999999999998]}, {
"layers": [
"F",
"B"],
"angle": -
0.0,
"pos": [
176.06,
106.832],
"drillsize": [
1.016,
1.016],
"shape":
"oval",
"offset": [
0.0,
0.0],
"drillshape":
"circle",
"type":
"th",
"size": [
1.7271999999999998,
1.7271999999999998]}, {
"layers": [
"F",
"B"],
"angle": -
0.0,
"pos": [
173.51999999999998,
106.832],
"drillsize": [
1.016,
1.016],
"shape":
"oval",
"offset": [
0.0,
0.0],
"drillshape":
"circle",
"type":
"th",
"size": [
1.7271999999999998,
1.7271999999999998]}, {
"layers": [
"F",
"B"],
"angle": -
0.0,
"pos": [
176.06,
104.292],
"drillsize": [
1.016,
1.016],
"shape":
"oval",
"offset": [
0.0,
0.0],
"drillshape":
"circle",
"type":
"th",
"size": [
1.7271999999999998,
1.7271999999999998]}, {
"layers": [
"F",
"B"],
"angle": -
0.0,
"pos": [
173.51999999999998,
104.292],
"drillsize": [
1.016,
1.016],
"shape":
"oval",
"offset": [
0.0,
0.0],
"drillshape":
"circle",
"type":
"th",
"size": [
1.7271999999999998,
1.7271999999999998]}, {
"layers": [
"F",
"B"],
"angle": -
0.0,
"pos": [
176.06,
101.752],
"drillsize": [
1.016,
1.016],
"shape":
"oval",
"offset": [
0.0,
0.0],
"drillshape":
"circle",
"type":
"th",
"size": [
1.7271999999999998,
1.7271999999999998]}, {
"layers": [
"F",
"B"],
"angle": -
0.0,
"pos": [
173.51999999999998,
101.752],
"drillsize": [
1.016,
1.016],
"shape":
"oval",
"offset": [
0.0,
0.0],
"drillshape":
"circle",
"type":
"th",
"size": [
1.7271999999999998,
1.7271999999999998]}, {
"layers": [
"F",
"B"],
"angle": -
0.0,
"pos": [
176.06,
99.21199999999999],
"drillsize": [
1.016,
1.016],
"shape":
"oval",
"offset": [
0.0,
0.0],
"drillshape":
"circle",
"type":
"th",
"size": [
1.7271999999999998,
1.7271999999999998]}, {
"layers": [
"F",
"B"],
"angle": -
0.0,
"pos": [
173.51999999999998,
99.21199999999999],
"drillsize": [
1.016,
1.016],
"shape":
"oval",
"offset": [
0.0,
0.0],
"drillshape":
"circle",
"type":
"th",
"size": [
1.7271999999999998,
1.7271999999999998]}, {
"layers": [
"F",
"B"],
"angle": -
0.0,
"pos": [
176.06,
96.672],
"drillsize": [
1.016,
1.016],
"shape":
"oval",
"offset": [
0.0,
0.0],
"drillshape":
"circle",
"type":
"th",
"size": [
1.7271999999999998,
1.7271999999999998]}, {
"layers": [
"F",
"B"],
"angle": -
0.0,
"pos": [
173.51999999999998,
96.672],
"drillsize": [
1.016,
1.016],
"shape":
"oval",
"offset": [
0.0,
0.0],
"drillshape":
"circle",
"type":
"th",
"size": [
1.7271999999999998,
1.7271999999999998]}, {
"layers": [
"F",
"B"],
"angle": -
0.0,
"pos": [
176.06,
94.13199999999999],
"drillsize": [
1.016,
1.016],
"shape":
"oval",
"offset": [
0.0,
0.0],
"drillshape":
"circle",
"type":
"th",
"size": [
1.7271999999999998,
1.7271999999999998]}, {
"layers": [
"F",
"B"],
"angle": -
0.0,
"pos": [
173.51999999999998,
94.13199999999999],
"drillsize": [
1.016,
1.016],
"shape":
"oval",
"offset": [
0.0,
0.0],
"drillshape":
"circle",
"type":
"th",
"size": [
1.7271999999999998,
1.7271999999999998]}, {
"layers": [
"F",
"B"],
"angle": -
0.0,
"pos": [
176.06,
91.592],
"drillsize": [
1.016,
1.016],
"shape":
"oval",
"offset": [
0.0,
0.0],
"drillshape":
"circle",
"type":
"th",
"size": [
1.7271999999999998,
1.7271999999999998]}, {
"layers": [
"F",
"B"],
"angle": -
0.0,
"pos": [
173.51999999999998,
91.592],
"drillsize": [
1.016,
1.016],
"shape":
"oval",
"offset": [
0.0,
0.0],
"drillshape":
"circle",
"type":
"th",
"size": [
1.7271999999999998,
1.7271999999999998]}, {
"layers": [
"F",
"B"],
"angle": -
0.0,
"pos": [
176.06,
89.05199999999999],
"drillsize": [
1.016,
1.016],
"shape":
"oval",
"offset": [
0.0,
0.0],
"drillshape":
"circle",
"type":
"th",
"size": [
1.7271999999999998,
1.7271999999999998]}, {
"layers": [
"F",
"B"],
"angle": -
0.0,
"pos": [
173.51999999999998,
89.05199999999999],
"drillsize": [
1.016,
1.016],
"shape":
"rect",
"offset": [
0.0,
0.0],
"drillshape":
"circle",
"pin1":
1,
"type":
"th",
"size": [
1.7271999999999998,
1.7271999999999998]}],
"drawings": [],
"ref":
"P8",
"bbox": {
"pos": [
171.74499899999998,
87.27699899999999],
"size": [
6.100002,
59.450002]}}, {
"layer":
"F",
"center": [
125.25999999999999,
89.05199999999999],
"pads": [{
"layers": [
"F",
"B"],
"angle": -
0.0,
"pos": [
127.8,
144.932],
"drillsize": [
1.016,
1.016],
"shape":
"oval",
"offset": [
0.0,
0.0],
"drillshape":
"circle",
"type":
"th",
"size": [
1.7271999999999998,
1.7271999999999998]}, {
"layers": [
"F",
"B"],
"angle": -
0.0,
"pos": [
125.25999999999999,
144.932],
"drillsize": [
1.016,
1.016],
"shape":
"oval",
"offset": [
0.0,
0.0],
"drillshape":
"circle",
"type":
"th",
"size": [
1.7271999999999998,
1.7271999999999998]}, {
"layers": [
"F",
"B"],
"angle": -
0.0,
"pos": [
127.8,
142.392],
"drillsize": [
1.016,
1.016],
"shape":
"oval",
"offset": [
0.0,
0.0],
"drillshape":
"circle",
"type":
"th",
"size": [
1.7271999999999998,
1.7271999999999998]}, {
"layers": [
"F",
"B"],
"angle": -
0.0,
"pos": [
125.25999999999999,
142.392],
"drillsize": [
1.016,
1.016],
"shape":
"oval",
"offset": [
0.0,
0.0],
"drillshape":
"circle",
"type":
"th",
"size": [
1.7271999999999998,
1.7271999999999998]}, {
"layers": [
"F",
"B"],
"angle": -
0.0,
"pos": [
127.8,
139.852],
"drillsize": [
1.016,
1.016],
"shape":
"oval",
"offset": [
0.0,
0.0],
"drillshape":
"circle",
"type":
"th",
"size": [
1.7271999999999998,
1.7271999999999998]}, {
"layers": [
"F",
"B"],
"angle": -
0.0,
"pos": [
125.25999999999999,
139.852],
"drillsize": [
1.016,
1.016],
"shape":
"oval",
"offset": [
0.0,
0.0],
"drillshape":
"circle",
"type":
"th",
"size": [
1.7271999999999998,
1.7271999999999998]}, {
"layers": [
"F",
"B"],
"angle": -
0.0,
"pos": [
127.8,
137.31199999999998],
"drillsize": [
1.016,
1.016],
"shape":
"oval",
"offset": [
0.0,
0.0],
"drillshape":
"circle",
"type":
"th",
"size": [
1.7271999999999998,
1.7271999999999998]}, {
"layers": [
"F",
"B"],
"angle": -
0.0,
"pos": [
125.25999999999999,
137.31199999999998],
"drillsize": [
1.016,
1.016],
"shape":
"oval",
"offset": [
0.0,
0.0],
"drillshape":
"circle",
"type":
"th",
"size": [
1.7271999999999998,
1.7271999999999998]}, {
"layers": [
"F",
"B"],
"angle": -
0.0,
"pos": [
127.8,
134.772],
"drillsize": [
1.016,
1.016],
"shape":
"oval",
"offset": [
0.0,
0.0],
"drillshape":
"circle",
"type":
"th",
"size": [
1.7271999999999998,
1.7271999999999998]}, {
"layers": [
"F",
"B"],
"angle": -
0.0,
"pos": [
125.25999999999999,
134.772],
"drillsize": [
1.016,
1.016],
"shape":
"oval",
"offset": [
0.0,
0.0],
"drillshape":
"circle",
"type":
"th",
"size": [
1.7271999999999998,
1.7271999999999998]}, {
"layers": [
"F",
"B"],
"angle": -
0.0,
"pos": [
127.8,
132.232],
"drillsize": [
1.016,
1.016],
"shape":
"oval",
"offset": [
0.0,
0.0],
"drillshape":
"circle",
"type":
"th",
"size": [
1.7271999999999998,
1.7271999999999998]}, {
"layers": [
"F",
"B"],
"angle": -
0.0,
"pos": [
125.25999999999999,
132.232],
"drillsize": [
1.016,
1.016],
"shape":
"oval",
"offset": [
0.0,
0.0],
"drillshape":
"circle",
"type":
"th",
"size": [
1.7271999999999998,
1.7271999999999998]}, {
"layers": [
"F",
"B"],
"angle": -
0.0,
"pos": [
127.8,
129.692],
"drillsize": [
1.016,
1.016],
"shape":
"oval",
"offset": [
0.0,
0.0],
"drillshape":
"circle",
"type":
"th",
"size": [
1.7271999999999998,
1.7271999999999998]}, {
"layers": [
"F",
"B"],
"angle": -
0.0,
"pos": [
125.25999999999999,
129.692],
"drillsize": [
1.016,
1.016],
"shape":
"oval",
"offset": [
0.0,
0.0],
"drillshape":
"circle",
"type":
"th",
"size": [
1.7271999999999998,
1.7271999999999998]}, {
"layers": [
"F",
"B"],
"angle": -
0.0,
"pos": [
127.8,
127.152],
"drillsize": [
1.016,
1.016],
"shape":
"oval",
"offset": [
0.0,
0.0],
"drillshape":
"circle",
"type":
"th",
"size": [
1.7271999999999998,
1.7271999999999998]}, {
"layers": [
"F",
"B"],
"angle": -
0.0,
"pos": [
125.25999999999999,
127.152],
"drillsize": [
1.016,
1.016],
"shape":
"oval",
"offset": [
0.0,
0.0],
"drillshape":
"circle",
"type":
"th",
"size": [
1.7271999999999998,
1.7271999999999998]}, {
"layers": [
"F",
"B"],
"angle": -
0.0,
"pos": [
127.8,
124.612],
"drillsize": [
1.016,
1.016],
"shape":
"oval",
"offset": [
0.0,
0.0],
"drillshape":
"circle",
"type":
"th",
"size": [
1.7271999999999998,
1.7271999999999998]}, {
"layers": [
"F",
"B"],
"angle": -
0.0,
"pos": [
125.25999999999999,
124.612],
"drillsize": [
1.016,
1.016],
"shape":
"oval",
"offset": [
0.0,
0.0],
"drillshape":
"circle",
"type":
"th",
"size": [
1.7271999999999998,
1.7271999999999998]}, {
"layers": [
"F",
"B"],
"angle": -
0.0,
"pos": [
127.8,
122.07199999999999],
"drillsize": [
1.016,
1.016],
"shape":
"oval",
"offset": [
0.0,
0.0],
"drillshape":
"circle",
"type":
"th",
"size": [
1.7271999999999998,
1.7271999999999998]}, {
"layers": [
"F",
"B"],
"angle": -
0.0,
"pos": [
125.25999999999999,
122.07199999999999],
"drillsize": [
1.016,
1.016],
"shape":
"oval",
"offset": [
0.0,
0.0],
"drillshape":
"circle",
"type":
"th",
"size": [
1.7271999999999998,
1.7271999999999998]}, {
"layers": [
"F",
"B"],
"angle": -
0.0,
"pos": [
127.8,
119.532],
"drillsize": [
1.016,
1.016],
"shape":
"oval",
"offset": [
0.0,
0.0],
"drillshape":
"circle",
"type":
"th",
"size": [
1.7271999999999998,
1.7271999999999998]}, {
"layers": [
"F",
"B"],
"angle": -
0.0,
"pos": [
125.25999999999999,
119.532],
"drillsize": [
1.016,
1.016],
"shape":
"oval",
"offset": [
0.0,
0.0],
"drillshape":
"circle",
"type":
"th",
"size": [
1.7271999999999998,
1.7271999999999998]}, {
"layers": [
"F",
"B"],
"angle": -
0.0,
"pos": [
127.8,
116.99199999999999],
"drillsize": [
1.016,
1.016],
"shape":
"oval",
"offset": [
0.0,
0.0],
"drillshape":
"circle",
"type":
"th",
"size": [
1.7271999999999998,
1.7271999999999998]}, {
"layers": [
"F",
"B"],
"angle": -
0.0,
"pos": [
125.25999999999999,
116.99199999999999],
"drillsize": [
1.016,
1.016],
"shape":
"oval",
"offset": [
0.0,
0.0],
"drillshape":
"circle",
"type":
"th",
"size": [
1.7271999999999998,
1.7271999999999998]}, {
"layers": [
"F",
"B"],
"angle": -
0.0,
"pos": [
127.8,
114.452],
"drillsize": [
1.016,
1.016],
"shape":
"oval",
"offset": [
0.0,
0.0],
"drillshape":
"circle",
"type":
"th",
"size": [
1.7271999999999998,
1.7271999999999998]}, {
"layers": [
"F",
"B"],
"angle": -
0.0,
"pos": [
125.25999999999999,
114.452],
"drillsize": [
1.016,
1.016],
"shape":
"oval",
"offset": [
0.0,
0.0],
"drillshape":
"circle",
"type":
"th",
"size": [
1.7271999999999998,
1.7271999999999998]}, {
"layers": [
"F",
"B"],
"angle": -
0.0,
"pos": [
127.8,
111.91199999999999],
"drillsize": [
1.016,
1.016],
"shape":
"oval",
"offset": [
0.0,
0.0],
"drillshape":
"circle",
"type":
"th",
"size": [
1.7271999999999998,
1.7271999999999998]}, {
"layers": [
"F",
"B"],
"angle": -
0.0,
"pos": [
125.25999999999999,
111.91199999999999],
"drillsize": [
1.016,
1.016],
"shape":
"oval",
"offset": [
0.0,
0.0],
"drillshape":
"circle",
"type":
"th",
"size": [
1.7271999999999998,
1.7271999999999998]}, {
"layers": [
"F",
"B"],
"angle": -
0.0,
"pos": [
127.8,
109.372],
"drillsize": [
1.016,
1.016],
"shape":
"oval",
"offset": [
0.0,
0.0],
"drillshape":
"circle",
"type":
"th",
"size": [
1.7271999999999998,
1.7271999999999998]}, {
"layers": [
"F",
"B"],
"angle": -
0.0,
"pos": [
125.25999999999999,
109.372],
"drillsize": [
1.016,
1.016],
"shape":
"oval",
"offset": [
0.0,
0.0],
"drillshape":
"circle",
"type":
"th",
"size": [
1.7271999999999998,
1.7271999999999998]}, {
"layers": [
"F",
"B"],
"angle": -
0.0,
"pos": [
127.8,
106.832],
"drillsize": [
1.016,
1.016],
"shape":
"oval",
"offset": [
0.0,
0.0],
"drillshape":
"circle",
"type":
"th",
"size": [
1.7271999999999998,
1.7271999999999998]}, {
"layers": [
"F",
"B"],
"angle": -
0.0,
"pos": [
125.25999999999999,
106.832],
"drillsize": [
1.016,
1.016],
"shape":
"oval",
"offset": [
0.0,
0.0],
"drillshape":
"circle",
"type":
"th",
"size": [
1.7271999999999998,
1.7271999999999998]}, {
"layers": [
"F",
"B"],
"angle": -
0.0,
"pos": [
127.8,
104.292],
"drillsize": [
1.016,
1.016],
"shape":
"oval",
"offset": [
0.0,
0.0],
"drillshape":
"circle",
"type":
"th",
"size": [
1.7271999999999998,
1.7271999999999998]}, {
"layers": [
"F",
"B"],
"angle": -
0.0,
"pos": [
125.25999999999999,
104.292],
"drillsize": [
1.016,
1.016],
"shape":
"oval",
"offset": [
0.0,
0.0],
"drillshape":
"circle",
"type":
"th",
"size": [
1.7271999999999998,
1.7271999999999998]}, {
"layers": [
"F",
"B"],
"angle": -
0.0,
"pos": [
127.8,
101.752],
"drillsize": [
1.016,
1.016],
"shape":
"oval",
"offset": [
0.0,
0.0],
"drillshape":
"circle",
"type":
"th",
"size": [
1.7271999999999998,
1.7271999999999998]}, {
"layers": [
"F",
"B"],
"angle": -
0.0,
"pos": [
125.25999999999999,
101.752],
"drillsize": [
1.016,
1.016],
"shape":
"oval",
"offset": [
0.0,
0.0],
"drillshape":
"circle",
"type":
"th",
"size": [
1.7271999999999998,
1.7271999999999998]}, {
"layers": [
"F",
"B"],
"angle": -
0.0,
"pos": [
127.8,
99.21199999999999],
"drillsize": [
1.016,
1.016],
"shape":
"oval",
"offset": [
0.0,
0.0],
"drillshape":
"circle",
"type":
"th",
"size": [
1.7271999999999998,
1.7271999999999998]}, {
"layers": [
"F",
"B"],
"angle": -
0.0,
"pos": [
125.25999999999999,
99.21199999999999],
"drillsize": [
1.016,
1.016],
"shape":
"oval",
"offset": [
0.0,
0.0],
"drillshape":
"circle",
"type":
"th",
"size": [
1.7271999999999998,
1.7271999999999998]}, {
"layers": [
"F",
"B"],
"angle": -
0.0,
"pos": [
127.8,
96.672],
"drillsize": [
1.016,
1.016],
"shape":
"oval",
"offset": [
0.0,
0.0],
"drillshape":
"circle",
"type":
"th",
"size": [
1.7271999999999998,
1.7271999999999998]}, {
"layers": [
"F",
"B"],
"angle": -
0.0,
"pos": [
125.25999999999999,
96.672],
"drillsize": [
1.016,
1.016],
"shape":
"oval",
"offset": [
0.0,
0.0],
"drillshape":
"circle",
"type":
"th",
"size": [
1.7271999999999998,
1.7271999999999998]}, {
"layers": [
"F",
"B"],
"angle": -
0.0,
"pos": [
127.8,
94.13199999999999],
"drillsize": [
1.016,
1.016],
"shape":
"oval",
"offset": [
0.0,
0.0],
"drillshape":
"circle",
"type":
"th",
"size": [
1.7271999999999998,
1.7271999999999998]}, {
"layers": [
"F",
"B"],
"angle": -
0.0,
"pos": [
125.25999999999999,
94.13199999999999],
"drillsize": [
1.016,
1.016],
"shape":
"oval",
"offset": [
0.0,
0.0],
"drillshape":
"circle",
"type":
"th",
"size": [
1.7271999999999998,
1.7271999999999998]}, {
"layers": [
"F",
"B"],
"angle": -
0.0,
"pos": [
127.8,
91.592],
"drillsize": [
1.016,
1.016],
"shape":
"oval",
"offset": [
0.0,
0.0],
"drillshape":
"circle",
"type":
"th",
"size": [
1.7271999999999998,
1.7271999999999998]}, {
"layers": [
"F",
"B"],
"angle": -
0.0,
"pos": [
125.25999999999999,
91.592],
"drillsize": [
1.016,
1.016],
"shape":
"oval",
"offset": [
0.0,
0.0],
"drillshape":
"circle",
"type":
"th",
"size": [
1.7271999999999998,
1.7271999999999998]}, {
"layers": [
"F",
"B"],
"angle": -
0.0,
"pos": [
127.8,
89.05199999999999],
"drillsize": [
1.016,
1.016],
"shape":
"oval",
"offset": [
0.0,
0.0],
"drillshape":
"circle",
"type":
"th",
"size": [
1.7271999999999998,
1.7271999999999998]}, {
"layers": [
"F",
"B"],
"angle": -
0.0,
"pos": [
125.25999999999999,
89.05199999999999],
"drillsize": [
1.016,
1.016],
"shape":
"rect",
"offset": [
0.0,
0.0],
"drillshape":
"circle",
"pin1":
1,
"type":
"th",
"size": [
1.7271999999999998,
1.7271999999999998]}],
"drawings": [],
"ref":
"P9",
"bbox": {
"pos": [
123.48499899999999,
87.27699899999999],
"size": [
6.100002,
59.450002]}}, {
"layer":
"F",
"center": [
110.22,
150.85999999999999],
"pads": [{
"layers": [
"F",
"B"],
"angle": -
0.0,
"pos": [
110.22,
150.85999999999999],
"drillsize": [
2.1999999999999997,
2.1999999999999997],
"shape":
"circle",
"offset": [
0.0,
0.0],
"drillshape":
"circle",
"pin1":
1,
"type":
"th",
"size": [
2.1999999999999997,
2.1999999999999997]}],
"drawings": [],
"ref":
"H2",
"bbox": {
"pos": [
107.74499899999999,
148.384999],
"size": [
4.950002,
4.950002]}}, {
"layer":
"F",
"center": [
183.88,
150.85999999999999],
"pads": [{
"layers": [
"F",
"B"],
"angle": -
0.0,
"pos": [
183.88,
150.85999999999999],
"drillsize": [
2.1999999999999997,
2.1999999999999997],
"shape":
"circle",
"offset": [
0.0,
0.0],
"drillshape":
"circle",
"pin1":
1,
"type":
"th",
"size": [
2.1999999999999997,
2.1999999999999997]}],
"drawings": [],
"ref":
"H4",
"bbox": {
"pos": [
181.404999,
148.384999],
"size": [
4.950002,
4.950002]}}],
"edges": [{
"start": [
106.41,
154.67],
"end": [
187.69,
154.67],
"type":
"segment",
"width":
0.0025399999999999997}, {
"start": [
106.41,
28.939999999999998],
"end": [
106.41,
154.67],
"type":
"segment",
"width":
0.0025399999999999997}, {
"start": [
110.22,
28.939999999999998],
"end": [
106.41,
28.939999999999998],
"type":
"segment",
"width":
0.0025399999999999997}, {
"start": [
187.69,
28.939999999999998],
"end": [
110.22,
28.939999999999998],
"type":
"segment",
"width":
0.0025399999999999997}, {
"start": [
187.69,
154.67],
"end": [
187.69,
28.939999999999998],
"type":
"segment",
"width":
0.0025399999999999997}],
"bom": {
"both": [[
6,
"74166",
"NEW-DIP254P762X508-16", [[
"U3",
12], [
"U4",
13], [
"U5",
14], [
"U6",
15], [
"U7",
8], [
"U8",
9]], []], [
2,
"4504",
"NEW-DIP254P762X508-16", [[
"U1",
10], [
"U2",
11]], []], [
6,
"4609X-101-103LF",
"USE-SIP-9_P2.54mm", [[
"RN1",
16], [
"RN2",
17], [
"RN3",
18], [
"RN4",
21], [
"RN5",
19], [
"RN6",
20]], []], [
6,
"640456-8",
"NEW-640456-8", [[
"J1",
7], [
"J2",
2], [
"J3",
3], [
"J4",
4], [
"J5",
5], [
"J6",
6]], []], [
2,
"BeagleBone_Black_Header",
"Socket_BeagleBone_Black", [[
"P8",
22], [
"P9",
23]], []]],
"B": [],
"F": [[
6,
"74166",
"NEW-DIP254P762X508-16", [[
"U3",
12], [
"U4",
13], [
"U5",
14], [
"U6",
15], [
"U7",
8], [
"U8",
9]], []], [
2,
"4504",
"NEW-DIP254P762X508-16", [[
"U1",
10], [
"U2",
11]], []], [
6,
"4609X-101-103LF",
"USE-SIP-9_P2.54mm", [[
"RN1",
16], [
"RN2",
17], [
"RN3",
18], [
"RN4",
21], [
"RN5",
19], [
"RN6",
20]], []], [
6,
"640456-8",
"NEW-640456-8", [[
"J1",
7], [
"J2",
2], [
"J3",
3], [
"J4",
4], [
"J5",
5], [
"J6",
6]], []], [
2,
"BeagleBone_Black_Header",
"Socket_BeagleBone_Black", [[
"P8",
22], [
"P9",
23]], []]]},
"silkscreen": {
"B": [{
"start": [
174.79,
41.300399999999996],
"radius":
0.381,
"type":
"circle",
"width":
0.15239999999999998}, {
"start": [
142.617,
41.300399999999996],
"radius":
0.381,
"type":
"circle",
"width":
0.15239999999999998}, {
"start": [
126.53,
41.300399999999996],
"radius":
0.381,
"type":
"circle",
"width":
0.15239999999999998}, {
"start": [
158.48,
41.300399999999996],
"radius":
0.381,
"type":
"circle",
"width":
0.15239999999999998}, {
"start": [
126.53,
64.16],
"radius":
0.381,
"type":
"circle",
"width":
0.15239999999999998}, {
"start": [
174.79,
64.16],
"radius":
0.381,
"type":
"circle",
"width":
0.15239999999999998}],
"F": [{
"width":
1.0,
"angle":
0.0,
"attr": [],
"horiz_justify":
0,
"text":
"H3",
"thickness":
0.15,
"pos": [
110.22,
29.549999999999997],
"height":
1.0}, {
"width":
1.0,
"angle":
0.0,
"attr": [],
"horiz_justify":
0,
"text":
"H1",
"thickness":
0.15,
"pos": [
183.88,
29.549999999999997],
"height":
1.0}, {
"width":
1.0,
"angle":
90.0,
"attr": [],
"horiz_justify":
0,
"text":
"J2",
"thickness":
0.15,
"pos": [
174.79,
52.2224],
"height":
1.0}, {
"width":
1.0,
"angle":
90.0,
"attr": [],
"horiz_justify":
0,
"text":
"640456-8",
"thickness":
0.15,
"pos": [
174.79,
52.2224],
"height":
1.0}, {
"start": [
174.79,
41.300399999999996],
"radius":
0.381,
"type":
"circle",
"width":
0.15239999999999998}, {
"start": [
171.361,
62.5094],
"end": [
177.32999999999998,
62.5094],
"type":
"segment",
"width":
0.15239999999999998}, {
"start": [
171.361,
41.9354],
"end": [
171.361,
62.5094],
"type":
"segment",
"width":
0.15239999999999998}, {
"start": [
177.32999999999998,
41.9354],
"end": [
171.361,
41.9354],
"type":
"segment",
"width":
0.15239999999999998}, {
"start": [
177.32999999999998,
62.5094],
"end": [
177.32999999999998,
41.9354],
"type":
"segment",
"width":
0.15239999999999998}, {
"width":
1.0,
"angle":
90.0,
"attr": [],
"horiz_justify":
0,
"text":
"*",
"thickness":
0.15,
"pos": [
174.79,
61.112399999999994],
"height":
1.0}, {
"width":
1.0,
"angle":
90.0,
"attr": [],
"horiz_justify":
0,
"text":
"J3",
"thickness":
0.15,
"pos": [
142.617,
52.2224],
"height":
1.0}, {
"width":
1.0,
"angle":
90.0,
"attr": [],
"horiz_justify":
0,
"text":
"640456-8",
"thickness":
0.15,
"pos": [
142.617,
52.2224],
"height":
1.0}, {
"start": [
142.617,
41.300399999999996],
"radius":
0.381,
"type":
"circle",
"width":
0.15239999999999998}, {
"start": [
139.188,
62.5094],
"end": [
145.15699999999998,
62.5094],
"type":
"segment",
"width":
0.15239999999999998}, {
"start": [
139.188,
41.9354],
"end": [
139.188,
62.5094],
"type":
"segment",
"width":
0.15239999999999998}, {
"start": [
145.15699999999998,
41.9354],
"end": [
139.188,
41.9354],
"type":
"segment",
"width":
0.15239999999999998}, {
"start": [
145.15699999999998,
62.5094],
"end": [
145.15699999999998,
41.9354],
"type":
"segment",
"width":
0.15239999999999998}, {
"width":
1.0,
"angle":
90.0,
"attr": [],
"horiz_justify":
0,
"text":
"*",
"thickness":
0.15,
"pos": [
142.617,
61.112399999999994],
"height":
1.0}, {
"width":
1.0,
"angle":
90.0,
"attr": [],
"horiz_justify":
0,
"text":
"J4",
"thickness":
0.15,
"pos": [
126.53,
52.2224],
"height":
1.0}, {
"width":
1.0,
"angle":
90.0,
"attr": [],
"horiz_justify":
0,
"text":
"640456-8",
"thickness":
0.15,
"pos": [
126.53,
52.2224],
"height":
1.0}, {
"start": [
126.53,
41.300399999999996],
"radius":
0.381,
"type":
"circle",
"width":
0.15239999999999998}, {
"start": [
123.101,
62.5094],
"end": [
129.07,
62.5094],
"type":
"segment",
"width":
0.15239999999999998}, {
"start": [
123.101,
41.9354],
"end": [
123.101,
62.5094],
"type":
"segment",
"width":
0.15239999999999998}, {
"start": [
129.07,
41.9354],
"end": [
123.101,
41.9354],
"type":
"segment",
"width":
0.15239999999999998}, {
"start": [
129.07,
62.5094],
"end": [
129.07,
41.9354],
"type":
"segment",
"width":
0.15239999999999998}, {
"width":
1.0,
"angle":
90.0,
"attr": [],
"horiz_justify":
0,
"text":
"*",
"thickness":
0.15,
"pos": [
126.53,
61.112399999999994],
"height":
1.0}, {
"width":
1.0,
"angle":
90.0,
"attr": [],
"horiz_justify":
0,
"text":
"J5",
"thickness":
0.15,
"pos": [
158.48,
52.2224],
"height":
1.0}, {
"width":
1.0,
"angle":
90.0,
"attr": [],
"horiz_justify":
0,
"text":
"640456-8",
"thickness":
0.15,
"pos": [
158.48,
52.2224],
"height":
1.0}, {
"start": [
158.48,
41.300399999999996],
"radius":
0.381,
"type":
"circle",
"width":
0.15239999999999998}, {
"start": [
155.051,
62.5094],
"end": [
161.01999999999998,
62.5094],
"type":
"segment",
"width":
0.15239999999999998}, {
"start": [
155.051,
41.9354],
"end": [
155.051,
62.5094],
"type":
"segment",
"width":
0.15239999999999998}, {
"start": [
161.01999999999998,
41.9354],
"end": [
155.051,
41.9354],
"type":
"segment",
"width":
0.15239999999999998}, {
"start": [
161.01999999999998,
62.5094],
"end": [
161.01999999999998,
41.9354],
"type":
"segment",
"width":
0.15239999999999998}, {
"width":
1.0,
"angle":
90.0,
"attr": [],
"horiz_justify":
0,
"text":
"*",
"thickness":
0.15,
"pos": [
158.48,
61.112399999999994],
"height":
1.0}, {
"width":
1.0,
"angle":
90.0,
"attr": [],
"horiz_justify":
0,
"text":
"J6",
"thickness":
0.15,
"pos": [
126.53,
75.082],
"height":
1.0}, {
"width":
1.0,
"angle":
90.0,
"attr": [],
"horiz_justify":
0,
"text":
"640456-8",
"thickness":
0.15,
"pos": [
126.53,
75.082],
"height":
1.0}, {
"start": [
126.53,
64.16],
"radius":
0.381,
"type":
"circle",
"width":
0.15239999999999998}, {
"start": [
123.101,
85.369],
"end": [
129.07,
85.369],
"type":
"segment",
"width":
0.15239999999999998}, {
"start": [
123.101,
64.795],
"end": [
123.101,
85.369],
"type":
"segment",
"width":
0.15239999999999998}, {
"start": [
129.07,
64.795],
"end": [
123.101,
64.795],
"type":
"segment",
"width":
0.15239999999999998}, {
"start": [
129.07,
85.369],
"end": [
129.07,
64.795],
"type":
"segment",
"width":
0.15239999999999998}, {
"width":
1.0,
"angle":
90.0,
"attr": [],
"horiz_justify":
0,
"text":
"*",
"thickness":
0.15,
"pos": [
126.53,
83.972],
"height":
1.0}, {
"width":
1.0,
"angle":
90.0,
"attr": [],
"horiz_justify":
0,
"text":
"J1",
"thickness":
0.15,
"pos": [
174.79,
75.082],
"height":
1.0}, {
"width":
1.0,
"angle":
90.0,
"attr": [],
"horiz_justify":
0,
"text":
"640456-8",
"thickness":
0.15,
"pos": [
174.79,
75.082],
"height":
1.0}, {
"start": [
174.79,
64.16],
"radius":
0.381,
"type":
"circle",
"width":
0.15239999999999998}, {
"start": [
171.361,
85.369],
"end": [
177.32999999999998,
85.369],
"type":
"segment",
"width":
0.15239999999999998}, {
"start": [
171.361,
64.795],
"end": [
171.361,
85.369],
"type":
"segment",
"width":
0.15239999999999998}, {
"start": [
177.32999999999998,
64.795],
"end": [
171.361,
64.795],
"type":
"segment",
"width":
0.15239999999999998}, {
"start": [
177.32999999999998,
85.369],
"end": [
177.32999999999998,
64.795],
"type":
"segment",
"width":
0.15239999999999998}, {
"width":
1.0,
"angle":
90.0,
"attr": [],
"horiz_justify":
0,
"text":
"*",
"thickness":
0.15,
"pos": [
174.79,
83.972],
"height":
1.0}, {
"width":
1.64228,
"angle":
0.0,
"attr": [],
"horiz_justify":
0,
"text":
"U7",
"thickness":
0.049999999999999996,
"pos": [
149.89165,
108.09909999999999],
"height":
1.64228}, {
"width":
1.6410799999999999,
"angle":
0.0,
"attr": [],
"horiz_justify":
0,
"text":
"74166",
"thickness":
0.049999999999999996,
"pos": [
150.14914,
131.14159],
"height":
1.6410799999999999}, {
"width":
0.09999999999999999,
"endangle":
180.0,
"start": [
150.66,
109.6768],
"radius":
0.30479999999999996,
"startangle":
0.0,
"type":
"arc"}, {
"start": [
150.3552,
109.6768],
"end": [
148.17079999999999,
109.6768],
"type":
"segment",
"width":
0.15239999999999998}, {
"start": [
150.9648,
109.6768],
"end": [
150.3552,
109.6768],
"type":
"segment",
"width":
0.15239999999999998}, {
"start": [
153.581,
109.6768],
"end": [
150.9648,
109.6768],
"type":
"segment",
"width":
0.15239999999999998}, {
"start": [
147.739,
129.3872],
"end": [
153.581,
129.3872],
"type":
"segment",
"width":
0.15239999999999998}, {
"width":
1.64228,
"angle":
0.0,
"attr": [],
"horiz_justify":
0,
"text":
"U8",
"thickness":
0.049999999999999996,
"pos": [
163.86165,
108.09909999999999],
"height":
1.64228}, {
"width":
1.6410799999999999,
"angle":
0.0,
"attr": [],
"horiz_justify":
0,
"text":
"74166",
"thickness":
0.049999999999999996,
"pos": [
164.11914,
131.14159],
"height":
1.6410799999999999}, {
"width":
0.09999999999999999,
"endangle":
180.0,
"start": [
164.63,
109.6768],
"radius":
0.30479999999999996,
"startangle":
0.0,
"type":
"arc"}, {
"start": [
164.3252,
109.6768],
"end": [
162.14079999999998,
109.6768],
"type":
"segment",
"width":
0.15239999999999998}, {
"start": [
164.9348,
109.6768],
"end": [
164.3252,
109.6768],
"type":
"segment",
"width":
0.15239999999999998}, {
"start": [
167.551,
109.6768],
"end": [
164.9348,
109.6768],
"type":
"segment",
"width":
0.15239999999999998}, {
"start": [
161.709,
129.3872],
"end": [
167.551,
129.3872],
"type":
"segment",
"width":
0.15239999999999998}, {
"width":
1.64228,
"angle":
0.0,
"attr": [],
"horiz_justify":
0,
"text":
"U1",
"thickness":
0.049999999999999996,
"pos": [
156.24165,
63.6491],
"height":
1.64228}, {
"width":
1.6410799999999999,
"angle":
0.0,
"attr": [],
"horiz_justify":
0,
"text":
"4504",
"thickness":
0.049999999999999996,
"pos": [
156.49913999999998,
86.69158999999999],
"height":
1.6410799999999999}, {
"width":
0.09999999999999999,
"endangle":
180.0,
"start": [
157.01,
65.2268],
"radius":
0.30479999999999996,
"startangle":
0.0,
"type":
"arc"}, {
"start": [
156.7052,
65.2268],
"end": [
154.52079999999998,
65.2268],
"type":
"segment",
"width":
0.15239999999999998}, {
"start": [
157.3148,
65.2268],
"end": [
156.7052,
65.2268],
"type":
"segment",
"width":
0.15239999999999998}, {
"start": [
159.93099999999998,
65.2268],
"end": [
157.3148,
65.2268],
"type":
"segment",
"width":
0.15239999999999998}, {
"start": [
154.089,
84.93719999999999],
"end": [
159.93099999999998,
84.93719999999999],
"type":
"segment",
"width":
0.15239999999999998}, {
"width":
1.64228,
"angle":
0.0,
"attr": [],
"horiz_justify":
0,
"text":
"U2",
"thickness":
0.049999999999999996,
"pos": [
145.07835,
86.5153],
"height":
1.64228}, {
"width":
1.6410799999999999,
"angle":
0.0,
"attr": [],
"horiz_justify":
0,
"text":
"4504",
"thickness":
0.049999999999999996,
"pos": [
144.82085999999998,
63.472809999999996],
"height":
1.6410799999999999}, {
"width":
0.09999999999999999,
"endangle":
0.0,
"start": [
144.31,
84.93759999999999],
"radius":
0.30479999999999996,
"startangle": -
180.0,
"type":
"arc"}, {
"start": [
144.6148,
84.93759999999999],
"end": [
146.79919999999998,
84.93759999999999],
"type":
"segment",
"width":
0.15239999999999998}, {
"start": [
144.0052,
84.93759999999999],
"end": [
144.6148,
84.93759999999999],
"type":
"segment",
"width":
0.15239999999999998}, {
"start": [
141.38899999999998,
84.93759999999999],
"end": [
144.0052,
84.93759999999999],
"type":
"segment",
"width":
0.15239999999999998}, {
"start": [
147.231,
65.2272],
"end": [
141.38899999999998,
65.2272],
"type":
"segment",
"width":
0.15239999999999998}, {
"width":
1.64228,
"angle":
0.0,
"attr": [],
"horiz_justify":
0,
"text":
"U3",
"thickness":
0.049999999999999996,
"pos": [
135.92165,
86.50909999999999],
"height":
1.64228}, {
"width":
1.6410799999999999,
"angle":
0.0,
"attr": [],
"horiz_justify":
0,
"text":
"74166",
"thickness":
0.049999999999999996,
"pos": [
136.17914,
109.55158999999999],
"height":
1.6410799999999999}, {
"width":
0.09999999999999999,
"endangle":
180.0,
"start": [
136.69,
88.0868],
"radius":
0.30479999999999996,
"startangle":
0.0,
"type":
"arc"}, {
"start": [
136.3852,
88.0868],
"end": [
134.2008,
88.0868],
"type":
"segment",
"width":
0.15239999999999998}, {
"start": [
136.9948,
88.0868],
"end": [
136.3852,
88.0868],
"type":
"segment",
"width":
0.15239999999999998}, {
"start": [
139.611,
88.0868],
"end": [
136.9948,
88.0868],
"type":
"segment",
"width":
0.15239999999999998}, {
"start": [
133.769,
107.79719999999999],
"end": [
139.611,
107.79719999999999],
"type":
"segment",
"width":
0.15239999999999998}, {
"width":
1.64228,
"angle":
0.0,
"attr": [],
"horiz_justify":
0,
"text":
"U4",
"thickness":
0.049999999999999996,
"pos": [
135.92165,
108.09909999999999],
"height":
1.64228}, {
"width":
1.6410799999999999,
"angle":
0.0,
"attr": [],
"horiz_justify":
0,
"text":
"74166",
"thickness":
0.049999999999999996,
"pos": [
136.17914,
131.14159],
"height":
1.6410799999999999}, {
"width":
0.09999999999999999,
"endangle":
180.0,
"start": [
136.69,
109.6768],
"radius":
0.30479999999999996,
"startangle":
0.0,
"type":
"arc"}, {
"start": [
136.3852,
109.6768],
"end": [
134.2008,
109.6768],
"type":
"segment",
"width":
0.15239999999999998}, {
"start": [
136.9948,
109.6768],
"end": [
136.3852,
109.6768],
"type":
"segment",
"width":
0.15239999999999998}, {
"start": [
139.611,
109.6768],
"end": [
136.9948,
109.6768],
"type":
"segment",
"width":
0.15239999999999998}, {
"start": [
133.769,
129.3872],
"end": [
139.611,
129.3872],
"type":
"segment",
"width":
0.15239999999999998}, {
"width":
1.64228,
"angle":
0.0,
"attr": [],
"horiz_justify":
0,
"text":
"U5",
"thickness":
0.049999999999999996,
"pos": [
149.89165,
86.2811],
"height":
1.64228}, {
"width":
1.6410799999999999,
"angle":
0.0,
"attr": [],
"horiz_justify":
0,
"text":
"74166",
"thickness":
0.049999999999999996,
"pos": [
150.14914,
109.32359],
"height":
1.6410799999999999}, {
"width":
0.09999999999999999,
"endangle":
180.0,
"start": [
150.66,
87.8588],
"radius":
0.30479999999999996,
"startangle":
0.0,
"type":
"arc"}, {
"start": [
150.3552,
87.8588],
"end": [
148.17079999999999,
87.8588],
"type":
"segment",
"width":
0.15239999999999998}, {
"start": [
150.9648,
87.8588],
"end": [
150.3552,
87.8588],
"type":
"segment",
"width":
0.15239999999999998}, {
"start": [
153.581,
87.8588],
"end": [
150.9648,
87.8588],
"type":
"segment",
"width":
0.15239999999999998}, {
"start": [
147.739,
107.5692],
"end": [
153.581,
107.5692],
"type":
"segment",
"width":
0.15239999999999998}, {
"width":
1.64228,
"angle":
0.0,
"attr": [],
"horiz_justify":
0,
"text":
"U6",
"thickness":
0.049999999999999996,
"pos": [
163.86165,
86.50909999999999],
"height":
1.64228}, {
"width":
1.6410799999999999,
"angle":
0.0,
"attr": [],
"horiz_justify":
0,
"text":
"74166",
"thickness":
0.049999999999999996,
"pos": [
164.11914,
109.55158999999999],
"height":
1.6410799999999999}, {
"width":
0.09999999999999999,
"endangle":
180.0,
"start": [
164.63,
88.0868],
"radius":
0.30479999999999996,
"startangle":
0.0,
"type":
"arc"}, {
"start": [
164.3252,
88.0868],
"end": [
162.14079999999998,
88.0868],
"type":
"segment",
"width":
0.15239999999999998}, {
"start": [
164.9348,
88.0868],
"end": [
164.3252,
88.0868],
"type":
"segment",
"width":
0.15239999999999998}, {
"start": [
167.551,
88.0868],
"end": [
164.9348,
88.0868],
"type":
"segment",
"width":
0.15239999999999998}, {
"start": [
161.709,
107.79719999999999],
"end": [
167.551,
107.79719999999999],
"type":
"segment",
"width":
0.15239999999999998}, {
"width":
1.0,
"angle":
0.0,
"attr": [],
"horiz_justify":
0,
"text":
"RN1",
"thickness":
0.15,
"pos": [
149.73,
132.15],
"height":
1.0}, {
"start": [
138.03,
135.75],
"end": [
138.53,
135.75],
"type":
"segment",
"width":
0.09999999999999999}, {
"start": [
138.03,
132.95],
"end": [
138.03,
135.75],
"type":
"segment",
"width":
0.09999999999999999}, {
"start": [
138.53,
132.95],
"end": [
138.03,
132.95],
"type":
"segment",
"width":
0.09999999999999999}, {
"start": [
161.13,
132.95],
"end": [
160.63,
132.95],
"type":
"segment",
"width":
0.09999999999999999}, {
"start": [
161.13,
132.95],
"end": [
161.13,
133.45],
"type":
"segment",
"width":
0.09999999999999999}, {
"start": [
161.13,
135.75],
"end": [
161.13,
135.25],
"type":
"segment",
"width":
0.09999999999999999}, {
"start": [
161.13,
135.75],
"end": [
160.63,
135.75],
"type":
"segment",
"width":
0.09999999999999999}, {
"width":
1.0,
"angle":
90.0,
"attr": [],
"horiz_justify":
0,
"text":
"RN2",
"thickness":
0.15,
"pos": [
132.15,
51.6429],
"height":
1.0}, {
"start": [
135.75,
63.3429],
"end": [
135.75,
62.8429],
"type":
"segment",
"width":
0.09999999999999999}, {
"start": [
132.95,
63.3429],
"end": [
135.75,
63.3429],
"type":
"segment",
"width":
0.09999999999999999}, {
"start": [
132.95,
62.8429],
"end": [
132.95,
63.3429],
"type":
"segment",
"width":
0.09999999999999999}, {
"start": [
132.95,
40.2429],
"end": [
132.95,
40.7429],
"type":
"segment",
"width":
0.09999999999999999}, {
"start": [
132.95,
40.2429],
"end": [
133.45,
40.2429],
"type":
"segment",
"width":
0.09999999999999999}, {
"start": [
135.75,
40.2429],
"end": [
135.25,
40.2429],
"type":
"segment",
"width":
0.09999999999999999}, {
"start": [
135.75,
40.2429],
"end": [
135.75,
40.7429],
"type":
"segment",
"width":
0.09999999999999999}, {
"width":
1.0,
"angle":
90.0,
"attr": [],
"horiz_justify":
0,
"text":
"RN3",
"thickness":
0.15,
"pos": [
147.39,
51.6429],
"height":
1.0}, {
"start": [
150.98999999999998,
63.3429],
"end": [
150.98999999999998,
62.8429],
"type":
"segment",
"width":
0.09999999999999999}, {
"start": [
148.19,
63.3429],
"end": [
150.98999999999998,
63.3429],
"type":
"segment",
"width":
0.09999999999999999}, {
"start": [
148.19,
62.8429],
"end": [
148.19,
63.3429],
"type":
"segment",
"width":
0.09999999999999999}, {
"start": [
148.19,
40.2429],
"end": [
148.19,
40.7429],
"type":
"segment",
"width":
0.09999999999999999}, {
"start": [
148.19,
40.2429],
"end": [
148.69,
40.2429],
"type":
"segment",
"width":
0.09999999999999999}, {
"start": [
150.98999999999998,
40.2429],
"end": [
150.48999999999998,
40.2429],
"type":
"segment",
"width":
0.09999999999999999}, {
"start": [
150.98999999999998,
40.2429],
"end": [
150.98999999999998,
40.7429],
"type":
"segment",
"width":
0.09999999999999999}, {
"width":
1.0,
"angle":
0.0,
"attr": [],
"horiz_justify":
0,
"text":
"RN5",
"thickness":
0.15,
"pos": [
149.73,
138.5],
"height":
1.0}, {
"start": [
138.03,
142.1],
"end": [
138.53,
142.1],
"type":
"segment",
"width":
0.09999999999999999}, {
"start": [
138.03,
139.29999999999998],
"end": [
138.03,
142.1],
"type":
"segment",
"width":
0.09999999999999999}, {
"start": [
138.53,
139.29999999999998],
"end": [
138.03,
139.29999999999998],
"type":
"segment",
"width":
0.09999999999999999}, {
"start": [
161.13,
139.29999999999998],
"end": [
160.63,
139.29999999999998],
"type":
"segment",
"width":
0.09999999999999999}, {
"start": [
161.13,
139.29999999999998],
"end": [
161.13,
139.79999999999998],
"type":
"segment",
"width":
0.09999999999999999}, {
"start": [
161.13,
142.1],
"end": [
161.13,
141.6],
"type":
"segment",
"width":
0.09999999999999999}, {
"start": [
161.13,
142.1],
"end": [
160.63,
142.1],
"type":
"segment",
"width":
0.09999999999999999}, {
"width":
1.0,
"angle":
0.0,
"attr": [],
"horiz_justify":
0,
"text":
"RN6",
"thickness":
0.15,
"pos": [
149.73,
144.85],
"height":
1.0}, {
"start": [
138.03,
148.45],
"end": [
138.53,
148.45],
"type":
"segment",
"width":
0.09999999999999999}, {
"start": [
138.03,
145.65],
"end": [
138.03,
148.45],
"type":
"segment",
"width":
0.09999999999999999}, {
"start": [
138.53,
145.65],
"end": [
138.03,
145.65],
"type":
"segment",
"width":
0.09999999999999999}, {
"start": [
161.13,
145.65],
"end": [
160.63,
145.65],
"type":
"segment",
"width":
0.09999999999999999}, {
"start": [
161.13,
145.65],
"end": [
161.13,
146.15],
"type":
"segment",
"width":
0.09999999999999999}, {
"start": [
161.13,
148.45],
"end": [
161.13,
147.95],
"type":
"segment",
"width":
0.09999999999999999}, {
"start": [
161.13,
148.45],
"end": [
160.63,
148.45],
"type":
"segment",
"width":
0.09999999999999999}, {
"width":
1.0,
"angle":
90.0,
"attr": [],
"horiz_justify":
0,
"text":
"RN4",
"thickness":
0.15,
"pos": [
163.9,
51.6429],
"height":
1.0}, {
"start": [
167.5,
63.3429],
"end": [
167.5,
62.8429],
"type":
"segment",
"width":
0.09999999999999999}, {
"start": [
164.7,
63.3429],
"end": [
167.5,
63.3429],
"type":
"segment",
"width":
0.09999999999999999}, {
"start": [
164.7,
62.8429],
"end": [
164.7,
63.3429],
"type":
"segment",
"width":
0.09999999999999999}, {
"start": [
164.7,
40.2429],
"end": [
164.7,
40.7429],
"type":
"segment",
"width":
0.09999999999999999}, {
"start": [
164.7,
40.2429],
"end": [
165.2,
40.2429],
"type":
"segment",
"width":
0.09999999999999999}, {
"start": [
167.5,
40.2429],
"end": [
167.0,
40.2429],
"type":
"segment",
"width":
0.09999999999999999}, {
"start": [
167.5,
40.2429],
"end": [
167.5,
40.7429],
"type":
"segment",
"width":
0.09999999999999999}, {
"width":
1.0,
"angle":
0.0,
"attr": [],
"horiz_justify":
0,
"text":
"P8",
"thickness":
0.15,
"pos": [
173.51999999999998,
83.952],
"height":
1.0}, {
"start": [
171.97,
87.502],
"end": [
171.97,
89.05199999999999],
"type":
"segment",
"width":
0.15}, {
"start": [
174.79,
90.322],
"end": [
172.25,
90.322],
"type":
"segment",
"width":
0.15}, {
"start": [
174.79,
87.782],
"end": [
174.79,
90.322],
"type":
"segment",
"width":
0.15}, {
"start": [
173.51999999999998,
87.502],
"end": [
171.97,
87.502],
"type":
"segment",
"width":
0.15}, {
"start": [
177.32999999999998,
87.782],
"end": [
174.79,
87.782],
"type":
"segment",
"width":
0.15}, {
"start": [
177.32999999999998,
146.202],
"end": [
172.25,
146.202],
"type":
"segment",
"width":
0.15}, {
"start": [
172.25,
146.202],
"end": [
172.25,
90.322],
"type":
"segment",
"width":
0.15}, {
"start": [
177.32999999999998,
146.202],
"end": [
177.32999999999998,
87.782],
"type":
"segment",
"width":
0.15}, {
"width":
1.0,
"angle":
0.0,
"attr": [],
"horiz_justify":
0,
"text":
"P9",
"thickness":
0.15,
"pos": [
125.25999999999999,
83.952],
"height":
1.0}, {
"start": [
123.71,
87.502],
"end": [
123.71,
89.05199999999999],
"type":
"segment",
"width":
0.15}, {
"start": [
126.53,
90.322],
"end": [
123.99,
90.322],
"type":
"segment",
"width":
0.15}, {
"start": [
126.53,
87.782],
"end": [
126.53,
90.322],
"type":
"segment",
"width":
0.15}, {
"start": [
125.25999999999999,
87.502],
"end": [
123.71,
87.502],
"type":
"segment",
"width":
0.15}, {
"start": [
129.07,
87.782],
"end": [
126.53,
87.782],
"type":
"segment",
"width":
0.15}, {
"start": [
129.07,
146.202],
"end": [
123.99,
146.202],
"type":
"segment",
"width":
0.15}, {
"start": [
123.99,
146.202],
"end": [
123.99,
90.322],
"type":
"segment",
"width":
0.15}, {
"start": [
129.07,
146.202],
"end": [
129.07,
87.782],
"type":
"segment",
"width":
0.15}, {
"width":
1.0,
"angle":
0.0,
"attr": [],
"horiz_justify":
0,
"text":
"H2",
"thickness":
0.15,
"pos": [
110.22,
147.66],
"height":
1.0}, {
"width":
1.0,
"angle":
0.0,
"attr": [],
"horiz_justify":
0,
"text":
"H4",
"thickness":
0.15,
"pos": [
183.88,
147.66],
"height":
1.0}]},
"edges_bbox": {
"minx":
106.408729,
"miny":
28.938729,
"maxx":
187.691271,
"maxy":
154.671271},
"metadata": {
"date":
"2018-12-28 11:01:41",
"company":
"",
"revision":
"",
"title":
"bbb-bort"}}
635 ///////////////////////////////////////////////
637 ///////////////////////////////////////////////
638 /* Utility functions */
640 var storagePrefix = 'KiCad_HTML_BOM__' + pcbdata.metadata.title + '__' +
641 pcbdata.metadata.revision + '__';
644 function initStorage(key) {
646 window.localStorage.getItem(
"blank");
647 storage = window.localStorage;
649 // localStorage not available
653 window.sessionStorage.getItem(
"blank");
654 storage = window.sessionStorage;
656 // sessionStorage also not available
661 function readStorage(key) {
663 return storage.getItem(storagePrefix + '#' + key);
669 function writeStorage(key, value) {
671 storage.setItem(storagePrefix + '#' + key, value);
675 function fancyDblClickHandler(el, onsingle, ondouble) {
677 if (el.getAttribute(
"data-dblclick") == null) {
678 el.setAttribute(
"data-dblclick",
1);
679 setTimeout(function() {
680 if (el.getAttribute(
"data-dblclick") ==
1) {
683 el.removeAttribute(
"data-dblclick");
686 el.removeAttribute(
"data-dblclick");
692 function smoothScrollToRow(rowid) {
693 document.getElementById(rowid).scrollIntoView({
700 function focusInputField(input) {
701 input.scrollIntoView(false);
706 function copyToClipboard() {
708 for (var node of bomhead.childNodes[
0].childNodes) {
709 if (node.firstChild) {
710 text = text + node.firstChild.nodeValue;
712 if (node != bomhead.childNodes[
0].lastChild) {
717 for (var row of bombody.childNodes) {
718 for (var cell of row.childNodes) {
719 for (var node of cell.childNodes) {
720 if (node.nodeName ==
"INPUT") {
724 } else if (node.nodeName ==
"MARK") {
725 text = text + node.firstChild.nodeValue;
727 text = text + node.nodeValue;
730 if (cell != row.lastChild) {
736 var textArea = document.createElement(
"textarea");
737 textArea.classList.add('clipboard-temp');
738 textArea.value = text;
740 document.body.appendChild(textArea);
745 if (document.execCommand('copy')) {
746 console.log('Bom copied to clipboard.');
749 console.log('Can not copy to clipboard.');
752 document.body.removeChild(textArea);
755 function removeGutterNode(node) {
756 for (var i =
0; i < node.childNodes.length; i++) {
757 if (node.childNodes[i].classList &&
758 node.childNodes[i].classList.contains(
"gutter")) {
759 node.removeChild(node.childNodes[i]);
765 function cleanGutters() {
766 removeGutterNode(document.getElementById(
"bot"));
767 removeGutterNode(document.getElementById(
"canvasdiv"));
772 giga: [
"G",
"g",
"giga",
"Giga",
"GIGA"],
773 mega: [
"M",
"mega",
"Mega",
"MEGA"],
774 kilo: [
"K",
"k",
"kilo",
"Kilo",
"KILO"],
775 milli: [
"m",
"milli",
"Milli",
"MILLI"],
776 micro: [
"U",
"u",
"micro",
"Micro",
"MICRO",
"μ",
"µ"], // different utf8 μ
777 nano: [
"N",
"n",
"nano",
"Nano",
"NANO"],
778 pico: [
"P",
"p",
"pico",
"Pico",
"PICO"],
780 unitsShort: [
"R",
"r",
"Ω",
"F",
"f",
"H",
"h"],
782 "OHM",
"Ohm",
"ohm",
"ohms",
783 "FARAD",
"Farad",
"farad",
784 "HENRY",
"Henry",
"henry"
786 getMultiplier: function(s) {
787 if (this.prefixes.giga.includes(s)) return
1e9;
788 if (this.prefixes.mega.includes(s)) return
1e6;
789 if (this.prefixes.kilo.includes(s)) return
1e3;
790 if (this.prefixes.milli.includes(s)) return
1e-3;
791 if (this.prefixes.micro.includes(s)) return
1e-6;
792 if (this.prefixes.nano.includes(s)) return
1e-9;
793 if (this.prefixes.pico.includes(s)) return
1e-12;
799 function initUtils() {
800 var allPrefixes = units.prefixes.giga
801 .concat(units.prefixes.mega)
802 .concat(units.prefixes.kilo)
803 .concat(units.prefixes.milli)
804 .concat(units.prefixes.micro)
805 .concat(units.prefixes.nano)
806 .concat(units.prefixes.pico);
807 var allUnits = units.unitsShort.concat(units.unitsLong);
808 units.valueRegex = new RegExp(
"^([0-9\.]+)" +
809 "\\s*(" + allPrefixes.join(
"|") +
")?" +
810 "(" + allUnits.join(
"|") +
")?" +
812 units.valueAltRegex = new RegExp(
"^([0-9]*)" +
813 "(" + units.unitsShort.join(
"|") +
")?" +
814 "([GgMmKkUuNnPp])?" +
817 for (var bomtable of Object.values(pcbdata.bom)) {
818 for (var row of bomtable) {
819 row.push(parseValue(row[
1], row[
3][
0][
0]));
824 function parseValue(val, ref) {
825 var inferUnit = (unit, ref) =
> {
827 unit = unit.toLowerCase();
828 if (unit == 'Ω' || unit ==
"ohm" || unit ==
"ohms") {
833 ref = /^([a-z]+)\d+$/i.exec(ref);
835 ref = ref[
1].toLowerCase();
836 if (ref ==
"c") unit = 'f';
837 else if (ref ==
"l") unit = 'h';
838 else if (ref ==
"r" || ref ==
"rv") unit = 'r';
844 val = val.replace(/,/g,
"");
845 var match = units.valueRegex.exec(val);
848 val = parseFloat(match[
1]);
850 val = val * units.getMultiplier(match[
2]);
852 unit = inferUnit(match[
3], ref);
853 if (!unit) return null;
860 match = units.valueAltRegex.exec(val);
861 if (match && (match[
1] || match[
4])) {
862 val = parseFloat(match[
1] +
"." + match[
4]);
864 val = val * units.getMultiplier(match[
3]);
866 unit = inferUnit(match[
2], ref);
867 if (!unit) return null;
877 function valueCompare(a, b, stra, strb) {
878 if (a === null && b === null) {
879 // Failed to parse both values, compare them as strings.
880 if (stra != strb) return stra
> strb ?
1 : -
1;
882 } else if (a === null) {
884 } else if (b === null) {
887 if (a.unit != b.unit) return a.unit
> b.unit ?
1 : -
1;
888 else if (a.val != b.val) return a.val
> b.val ?
1 : -
1;
889 else if (a.extra != b.extra) return a.extra
> b.extra ?
1 : -
1;
894 ///////////////////////////////////////////////
896 ///////////////////////////////////////////////
897 /* PCB rendering code */
899 var redrawOnDrag = true;
900 var boardRotation =
0;
902 function deg2rad(deg) {
903 return deg * Math.PI /
180;
906 function calcFontPoint(linepoint, text, offsetx, offsety, tilt) {
908 linepoint[
0] * text.width + offsetx,
909 linepoint[
1] * text.height + offsety
911 // Adding half a line height here is technically a bug
912 // but pcbnew currently does the same, text is slightly shifted.
913 point[
0] -= (point[
1] + text.height *
0.5) * tilt;
917 function drawtext(ctx, text, color, flip) {
919 ctx.translate(...text.pos);
920 var angle = -text.angle;
921 if (text.attr.includes(
"mirrored")) {
926 if (text.attr.includes(
"italic")) {
929 var interline = (text.height *
1.5 + text.thickness) /
2;
930 var txt = text.text.split(
"\n");
931 // KiCad ignores last empty line.
932 if (txt[txt.length-
1] == '') txt.pop();
933 ctx.rotate(deg2rad(angle));
934 ctx.fillStyle = color;
935 ctx.strokeStyle = color;
936 ctx.lineCap =
"round";
937 ctx.lineWidth = text.thickness;
939 var offsety = (-(txt.length -
1) + i *
2) * interline + text.height /
2;
941 for (var c of txt[i]) {
942 lineWidth += pcbdata.font_data[c].w * text.width;
945 switch (text.horiz_justify) {
947 // Justify left, do nothing
951 offsetx -= lineWidth /
2;
955 offsetx -= lineWidth;
958 for (var c of txt[i]) {
959 for (var line of pcbdata.font_data[c].l) {
960 // Drawing each segment separately instead of
961 // polyline because round line caps don't work in joints
962 for (var i =
0; i < line.length -
1; i++) {
964 ctx.moveTo(...calcFontPoint(line[i], text, offsetx, offsety, tilt));
965 ctx.lineTo(...calcFontPoint(line[i +
1], text, offsetx, offsety, tilt));
969 offsetx += pcbdata.font_data[c].w * text.width;
975 function drawedge(ctx, scalefactor, edge, color) {
976 ctx.strokeStyle = color;
977 ctx.lineWidth = Math.max(
1 / scalefactor, edge.width);
978 ctx.lineCap =
"round";
979 if (edge.type ==
"segment") {
981 ctx.moveTo(...edge.start);
982 ctx.lineTo(...edge.end);
985 if (edge.type ==
"arc") {
990 deg2rad(edge.startangle),
991 deg2rad(edge.endangle));
994 if (edge.type ==
"circle") {
1005 function drawRoundRect(ctx, color, size, radius, ctxmethod) {
1007 ctx.strokeStyle = color;
1008 var x = size[
0] * -
0.5;
1009 var y = size[
1] * -
0.5;
1010 var width = size[
0];
1011 var height = size[
1];
1013 ctx.arcTo(x, y + height, x + width, y + height, radius);
1014 ctx.arcTo(x + width, y + height, x + width, y, radius);
1015 ctx.arcTo(x + width, y, x, y, radius);
1016 ctx.arcTo(x, y, x, y + height, radius);
1021 function drawOblong(ctx, color, size, ctxmethod) {
1022 drawRoundRect(ctx, color, size, Math.min(size[
0], size[
1]) /
2, ctxmethod);
1025 function drawPolygons(ctx, color, polygons, ctxmethod) {
1026 ctx.fillStyle = color;
1027 for (var polygon of polygons) {
1029 for (var vertex of polygon) {
1030 ctx.lineTo(...vertex)
1037 function drawPolygonShape(ctx, shape, color) {
1039 ctx.translate(...shape.pos);
1040 ctx.rotate(deg2rad(-shape.angle));
1041 drawPolygons(ctx, color, shape.polygons, ctx.fill.bind(ctx));
1045 function drawDrawing(ctx, layer, scalefactor, drawing, color) {
1046 if ([
"segment",
"arc",
"circle"].includes(drawing.type)) {
1047 drawedge(ctx, scalefactor, drawing, color);
1048 } else if (drawing.type ==
"polygon") {
1049 drawPolygonShape(ctx, drawing, color);
1051 drawtext(ctx, drawing, color, layer ==
"B");
1055 function drawCircle(ctx, radius, ctxmethod) {
1057 ctx.arc(
0,
0, radius,
0,
2 * Math.PI);
1062 function drawPad(ctx, pad, color, outline) {
1064 ctx.translate(...pad.pos);
1065 ctx.rotate(deg2rad(pad.angle));
1067 ctx.translate(...pad.offset);
1069 ctx.fillStyle = color;
1070 ctx.strokeStyle = color;
1071 var ctxmethod = outline ? ctx.stroke.bind(ctx) : ctx.fill.bind(ctx);
1072 if (pad.shape ==
"rect") {
1073 var rect = [...pad.size.map(c =
> -c *
0.5), ...pad.size];
1075 ctx.strokeRect(...rect);
1077 ctx.fillRect(...rect);
1079 } else if (pad.shape ==
"oval") {
1080 drawOblong(ctx, color, pad.size, ctxmethod);
1081 } else if (pad.shape ==
"circle") {
1082 drawCircle(ctx, pad.size[
0] /
2, ctxmethod);
1083 } else if (pad.shape ==
"roundrect") {
1084 drawRoundRect(ctx, color, pad.size, pad.radius, ctxmethod);
1085 } else if (pad.shape ==
"custom") {
1086 drawPolygons(ctx, color, pad.polygons, ctxmethod);
1088 if (pad.type ==
"th" && !outline) {
1089 ctx.fillStyle =
"#CCCCCC";
1090 if (pad.drillshape ==
"oblong") {
1091 drawOblong(ctx,
"#CCCCCC", pad.drillsize, ctxmethod);
1093 drawCircle(ctx, pad.drillsize[
0] /
2, ctxmethod);
1099 function drawModule(ctx, layer, scalefactor, module, padcolor, outlinecolor, highlight) {
1101 // draw bounding box
1102 if (module.layer == layer) {
1104 ctx.globalAlpha =
0.2;
1105 ctx.translate(...module.bbox.pos);
1106 ctx.fillStyle = padcolor;
1109 ...module.bbox.size);
1110 ctx.globalAlpha =
1;
1111 ctx.strokeStyle = padcolor;
1114 ...module.bbox.size);
1119 for (var drawing of module.drawings) {
1120 if (drawing.layer == layer) {
1121 drawDrawing(ctx, layer, scalefactor, drawing.drawing, padcolor);
1125 for (var pad of module.pads) {
1126 if (pad.layers.includes(layer)) {
1127 drawPad(ctx, pad, padcolor, false);
1128 if (pad.pin1 && highlightpin1) {
1129 drawPad(ctx, pad, outlinecolor, true);
1135 function drawEdges(canvas, scalefactor) {
1136 var ctx = canvas.getContext(
"2d");
1137 var edgecolor = getComputedStyle(topmostdiv).getPropertyValue('--pcb-edge-color');
1138 for (var edge of pcbdata.edges) {
1139 drawedge(ctx, scalefactor, edge, edgecolor);
1143 function drawModules(canvas, layer, scalefactor, highlightedModules) {
1144 var ctx = canvas.getContext(
"2d");
1145 ctx.lineWidth =
3 / scalefactor;
1146 var style = getComputedStyle(topmostdiv);
1147 var padcolor = style.getPropertyValue('--pad-color');
1148 var outlinecolor = style.getPropertyValue('--pin1-outline-color');
1149 if (highlightedModules.length
> 0) {
1150 padcolor = style.getPropertyValue('--pad-color-highlight');
1151 outlinecolor = style.getPropertyValue('--pin1-outline-color-highlight');
1153 for (var i =
0; i < pcbdata.modules.length; i++) {
1154 var mod = pcbdata.modules[i];
1155 var highlight = highlightedModules.includes(i);
1156 if (highlightedModules.length ==
0 || highlight) {
1157 drawModule(ctx, layer, scalefactor, mod, padcolor, outlinecolor, highlight);
1162 function drawSilkscreen(canvas, layer, scalefactor) {
1163 var ctx = canvas.getContext(
"2d");
1164 for (var d of pcbdata.silkscreen[layer]) {
1165 if ([
"segment",
"arc",
"circle"].includes(d.type)) {
1166 drawedge(ctx, scalefactor, d,
"#aa4");
1167 } else if (d.type ==
"polygon") {
1168 drawPolygonShape(ctx, d,
"#4aa");
1170 drawtext(ctx, d,
"#4aa", layer ==
"B");
1175 function clearCanvas(canvas) {
1176 var ctx = canvas.getContext(
"2d");
1178 ctx.setTransform(
1,
0,
0,
1,
0,
0);
1179 ctx.clearRect(
0,
0, canvas.width, canvas.height);
1183 function drawHighlightsOnLayer(canvasdict) {
1184 clearCanvas(canvasdict.highlight);
1185 drawModules(canvasdict.highlight, canvasdict.layer,
1186 canvasdict.transform.s, highlightedModules);
1189 function drawHighlights() {
1190 drawHighlightsOnLayer(allcanvas.front);
1191 drawHighlightsOnLayer(allcanvas.back);
1194 function drawBackground(canvasdict) {
1195 clearCanvas(canvasdict.bg);
1196 clearCanvas(canvasdict.silk);
1197 drawEdges(canvasdict.bg, canvasdict.transform.s);
1198 drawModules(canvasdict.bg, canvasdict.layer, canvasdict.transform.s, []);
1199 drawSilkscreen(canvasdict.silk, canvasdict.layer, canvasdict.transform.s);
1202 function prepareCanvas(canvas, flip, transform) {
1203 var ctx = canvas.getContext(
"2d");
1204 ctx.setTransform(
1,
0,
0,
1,
0,
0);
1205 var fontsize =
1.55;
1206 ctx.scale(transform.zoom, transform.zoom);
1207 ctx.translate(transform.panx, transform.pany);
1211 ctx.translate(transform.x, transform.y);
1212 ctx.rotate(deg2rad(boardRotation));
1213 ctx.scale(transform.s, transform.s);
1216 function prepareLayer(canvasdict) {
1217 var flip = (canvasdict.layer ==
"B");
1218 for (var c of [
"bg",
"silk",
"highlight"]) {
1219 prepareCanvas(canvasdict[c], flip, canvasdict.transform);
1223 function rotateVector(v, angle) {
1224 angle = deg2rad(angle);
1226 v[
0] * Math.cos(angle) - v[
1] * Math.sin(angle),
1227 v[
0] * Math.sin(angle) + v[
1] * Math.cos(angle)
1231 function applyRotation(bbox) {
1233 [bbox.minx, bbox.miny],
1234 [bbox.minx, bbox.maxy],
1235 [bbox.maxx, bbox.miny],
1236 [bbox.maxx, bbox.maxy],
1238 corners = corners.map((v) =
> rotateVector(v, boardRotation));
1240 minx: corners.reduce((a, v) =
> Math.min(a, v[
0]), Infinity),
1241 miny: corners.reduce((a, v) =
> Math.min(a, v[
1]), Infinity),
1242 maxx: corners.reduce((a, v) =
> Math.max(a, v[
0]), -Infinity),
1243 maxy: corners.reduce((a, v) =
> Math.max(a, v[
1]), -Infinity),
1247 function recalcLayerScale(canvasdict) {
1251 } [canvasdict.layer];
1252 var width = document.getElementById(canvasdivid).clientWidth *
2;
1253 var height = document.getElementById(canvasdivid).clientHeight *
2;
1254 var bbox = applyRotation(pcbdata.edges_bbox);
1255 var scalefactor =
0.98 * Math.min(
1256 width / (bbox.maxx - bbox.minx),
1257 height / (bbox.maxy - bbox.miny)
1259 if (scalefactor <
0.1) {
1262 canvasdict.transform.s = scalefactor;
1263 var flip = (canvasdict.layer ==
"B");
1265 canvasdict.transform.x = -((bbox.maxx + bbox.minx) * scalefactor + width) *
0.5;
1267 canvasdict.transform.x = -((bbox.maxx + bbox.minx) * scalefactor - width) *
0.5;
1269 canvasdict.transform.y = -((bbox.maxy + bbox.miny) * scalefactor - height) *
0.5;
1270 for (var c of [
"bg",
"silk",
"highlight"]) {
1271 canvas = canvasdict[c];
1272 canvas.width = width;
1273 canvas.height = height;
1274 canvas.style.width = (width /
2) +
"px";
1275 canvas.style.height = (height /
2) +
"px";
1277 console.log(
"Scale factor " + canvasdivid +
": ", canvasdict.transform);
1280 function redrawCanvas(layerdict) {
1281 prepareLayer(layerdict);
1282 drawBackground(layerdict);
1283 drawHighlightsOnLayer(layerdict);
1286 function resizeCanvas(layerdict) {
1287 recalcLayerScale(layerdict);
1288 redrawCanvas(layerdict);
1291 function resizeAll() {
1292 resizeCanvas(allcanvas.front);
1293 resizeCanvas(allcanvas.back);
1296 function bboxScan(layer, x, y) {
1298 for (var i =
0; i < pcbdata.modules.length; i++) {
1299 var module = pcbdata.modules[i];
1300 if (module.layer == layer) {
1301 var b = module.bbox;
1302 if (b.pos[
0] <= x && b.pos[
0] + b.size[
0]
>= x &&
1303 b.pos[
1] <= y && b.pos[
1] + b.size[
1]
>= y) {
1311 function handleMouseDown(e, layerdict) {
1316 e.stopPropagation();
1317 layerdict.transform.mousestartx = e.offsetX;
1318 layerdict.transform.mousestarty = e.offsetY;
1319 layerdict.transform.mousedownx = e.offsetX;
1320 layerdict.transform.mousedowny = e.offsetY;
1321 layerdict.transform.mousedown = true;
1324 function handleMouseClick(e, layerdict) {
1327 var t = layerdict.transform;
1328 if (layerdict.layer ==
"B") {
1329 x = (
2 * x / t.zoom - t.panx + t.x) / -t.s;
1331 x = (
2 * x / t.zoom - t.panx - t.x) / t.s;
1333 y = (
2 * y / t.zoom - t.y - t.pany) / t.s;
1334 var v = rotateVector([x, y], -boardRotation);
1335 var modules = bboxScan(layerdict.layer, v[
0], v[
1]);
1336 if (modules.length
> 0) {
1337 modulesClicked(modules);
1342 function handleMouseUp(e, layerdict) {
1344 e.stopPropagation();
1346 layerdict.transform.mousedown &&
1347 layerdict.transform.mousedownx == e.offsetX &&
1348 layerdict.transform.mousedowny == e.offsetY) {
1349 // This is just a click
1350 handleMouseClick(e, layerdict);
1351 layerdict.transform.mousedown = false;
1355 // Reset pan and zoom on right click.
1356 layerdict.transform.panx =
0;
1357 layerdict.transform.pany =
0;
1358 layerdict.transform.zoom =
1;
1359 redrawCanvas(layerdict);
1360 } else if (!redrawOnDrag) {
1361 redrawCanvas(layerdict);
1363 layerdict.transform.mousedown = false;
1366 function handleMouseMove(e, layerdict) {
1367 if (!layerdict.transform.mousedown) {
1371 e.stopPropagation();
1372 var dx = e.offsetX - layerdict.transform.mousestartx;
1373 var dy = e.offsetY - layerdict.transform.mousestarty;
1374 layerdict.transform.panx +=
2 * dx / layerdict.transform.zoom;
1375 layerdict.transform.pany +=
2 * dy / layerdict.transform.zoom;
1376 layerdict.transform.mousestartx = e.offsetX;
1377 layerdict.transform.mousestarty = e.offsetY;
1379 redrawCanvas(layerdict);
1383 function handleMouseWheel(e, layerdict) {
1385 e.stopPropagation();
1386 var t = layerdict.transform;
1387 var wheeldelta = e.deltaY;
1388 if (e.deltaMode ==
1) {
1389 // FF only, scroll by lines
1391 } else if (e.deltaMode ==
2) {
1394 var m = Math.pow(
1.1, -wheeldelta /
40);
1395 // Limit amount of zoom per tick.
1398 } else if (m <
0.5) {
1402 var zoomd = (
1 - m) / t.zoom;
1403 t.panx +=
2 * e.offsetX * zoomd;
1404 t.pany +=
2 * e.offsetY * zoomd;
1405 redrawCanvas(layerdict);
1406 console.log(layerdict.transform.zoom);
1409 function addMouseHandlers(div, layerdict) {
1410 div.onmousedown = function(e) {
1411 handleMouseDown(e, layerdict);
1413 div.onmousemove = function(e) {
1414 handleMouseMove(e, layerdict);
1416 div.onmouseup = function(e) {
1417 handleMouseUp(e, layerdict);
1419 div.onmouseout = function(e) {
1420 handleMouseUp(e, layerdict);
1422 div.onwheel = function(e) {
1423 handleMouseWheel(e, layerdict);
1425 for (var element of [div, layerdict.bg, layerdict.silk, layerdict.highlight]) {
1426 element.addEventListener(
"contextmenu", function(e) {
1432 function setRedrawOnDrag(value) {
1433 redrawOnDrag = value;
1434 writeStorage(
"redrawOnDrag", value);
1437 function setBoardRotation(value) {
1438 boardRotation = value *
5;
1439 writeStorage(
"boardRotation", boardRotation);
1440 document.getElementById(
"rotationDegree").textContent = boardRotation;
1444 function initRender() {
1458 bg: document.getElementById(
"F_bg"),
1459 silk: document.getElementById(
"F_slk"),
1460 highlight: document.getElementById(
"F_hl"),
1475 bg: document.getElementById(
"B_bg"),
1476 silk: document.getElementById(
"B_slk"),
1477 highlight: document.getElementById(
"B_hl"),
1481 addMouseHandlers(document.getElementById(
"frontcanvas"), allcanvas.front);
1482 addMouseHandlers(document.getElementById(
"backcanvas"), allcanvas.back);
1485 ///////////////////////////////////////////////
1487 ///////////////////////////////////////////////
1488 /* DOM manipulation and misc code */
1492 var canvaslayout =
"default";
1493 var bomlayout =
"default";
1494 var bomSortFunction = null;
1495 var currentSortColumn = null;
1496 var currentSortOrder = null;
1497 var currentHighlightedRowId;
1498 var highlightHandlers = [];
1499 var highlightedModules = [];
1500 var checkboxes = [];
1501 var bomCheckboxes =
"";
1502 var highlightpin1 = false;
1505 function dbg(html) {
1506 dbgdiv.innerHTML = html;
1509 function setDarkMode(value) {
1511 topmostdiv.classList.add(
"dark");
1513 topmostdiv.classList.remove(
"dark");
1515 writeStorage(
"darkmode", value);
1516 redrawCanvas(allcanvas.front);
1517 redrawCanvas(allcanvas.back);
1520 function setHighlightPin1(value) {
1521 writeStorage(
"highlightpin1", value);
1522 highlightpin1 = value;
1523 redrawCanvas(allcanvas.front);
1524 redrawCanvas(allcanvas.back);
1527 function getStoredCheckboxRefs(checkbox) {
1528 function convert(ref) {
1529 var intref = parseInt(ref);
1530 if (isNaN(intref)) {
1531 for (var i =
0; i < pcbdata.modules.length; i++) {
1532 if (pcbdata.modules[i].ref == ref) {
1541 var existingRefs = readStorage(
"checkbox_" + checkbox);
1542 if (!existingRefs) {
1545 return new Set(existingRefs.split(
",").map(r =
> convert(r)));
1549 function getCheckboxState(checkbox, references) {
1550 var storedRefsSet = getStoredCheckboxRefs(checkbox);
1551 var currentRefsSet = new Set(references.map(r =
> r[
1]));
1552 // Get difference of current - stored
1553 var difference = new Set(currentRefsSet);
1554 for (ref of storedRefsSet) {
1555 difference.delete(ref);
1557 if (difference.size ==
0) {
1558 // All the current refs are stored
1560 } else if (difference.size == currentRefsSet.size) {
1561 // None of the current refs are stored
1564 // Some of the refs are stored
1565 return
"indeterminate";
1569 function setBomCheckboxState(checkbox, element, references) {
1570 var state = getCheckboxState(checkbox, references);
1571 element.checked = (state ==
"checked");
1572 element.indeterminate = (state ==
"indeterminate");
1575 function createCheckboxChangeHandler(checkbox, references) {
1577 refsSet = getStoredCheckboxRefs(checkbox);
1580 for (var ref of references) {
1581 refsSet.add(ref[
1]);
1584 // checkbox unticked
1585 for (var ref of references) {
1586 refsSet.delete(ref[
1]);
1589 writeStorage(
"checkbox_" + checkbox, [...refsSet].join(
","));
1593 function createRowHighlightHandler(rowid, refs) {
1595 if (currentHighlightedRowId) {
1596 if (currentHighlightedRowId == rowid) {
1599 document.getElementById(currentHighlightedRowId).classList.remove(
"highlighted");
1601 document.getElementById(rowid).classList.add(
"highlighted");
1602 currentHighlightedRowId = rowid;
1603 highlightedModules = refs.map(r =
> r[
1]);
1608 function entryMatches(entry) {
1610 for (var ref of entry[
3]) {
1611 if (ref[
0].toLowerCase().indexOf(filter)
>=
0) {
1616 if (entry[
1].toLowerCase().indexOf(filter)
>=
0) {
1620 if (entry[
2].toLowerCase().indexOf(filter)
>=
0) {
1626 function findRefInEntry(entry) {
1627 return entry[
3].filter(r =
> r[
0].toLowerCase() == reflookup);
1630 function highlightFilter(s) {
1634 var parts = s.toLowerCase().split(filter);
1635 if (parts.length ==
1) {
1640 for (var i in parts) {
1642 r += '
<mark class=
"highlight">' +
1643 s.substring(pos, pos + filter.length) +
1645 pos += filter.length;
1647 r += s.substring(pos, pos + parts[i].length);
1648 pos += parts[i].length;
1653 function checkboxSetUnsetAllHandler(checkboxname) {
1655 var checkboxnum =
0;
1656 while (checkboxnum < checkboxes.length &&
1657 checkboxes[checkboxnum].toLowerCase() != checkboxname.toLowerCase()) {
1660 if (checkboxnum
>= checkboxes.length) {
1666 for (row of bombody.childNodes) {
1667 checkbox = row.childNodes[checkboxnum +
1].childNodes[
0];
1668 if (!checkbox.checked || checkbox.indeterminate) {
1673 for (row of bombody.childNodes) {
1674 checkbox = row.childNodes[checkboxnum +
1].childNodes[
0];
1675 checkbox.checked = !allset;
1676 checkbox.indeterminate = false;
1677 checkbox.onchange();
1682 function createColumnHeader(name, cls, comparator) {
1683 var th = document.createElement(
"TH");
1684 th.innerHTML = name;
1685 th.classList.add(cls);
1686 th.style.cursor =
"pointer";
1687 var span = document.createElement(
"SPAN");
1688 span.classList.add(
"sortmark");
1689 span.classList.add(
"none");
1690 th.appendChild(span);
1691 th.onclick = function() {
1692 if (currentSortColumn && this !== currentSortColumn) {
1693 // Currently sorted by another column
1694 currentSortColumn.childNodes[
1].classList.remove(currentSortOrder);
1695 currentSortColumn.childNodes[
1].classList.add(
"none");
1696 currentSortColumn = null;
1697 currentSortOrder = null;
1699 if (currentSortColumn && this === currentSortColumn) {
1700 // Already sorted by this column
1701 if (currentSortOrder ==
"asc") {
1702 // Sort by this column, descending order
1703 bomSortFunction = function(a, b) {
1704 return -comparator(a, b);
1706 currentSortColumn.childNodes[
1].classList.remove(
"asc");
1707 currentSortColumn.childNodes[
1].classList.add(
"desc");
1708 currentSortOrder =
"desc";
1711 bomSortFunction = null;
1712 currentSortColumn.childNodes[
1].classList.remove(
"desc");
1713 currentSortColumn.childNodes[
1].classList.add(
"none");
1714 currentSortColumn = null;
1715 currentSortOrder = null;
1718 // Sort by this column, ascending order
1719 bomSortFunction = comparator;
1720 currentSortColumn = this;
1721 currentSortColumn.childNodes[
1].classList.remove(
"none");
1722 currentSortColumn.childNodes[
1].classList.add(
"asc");
1723 currentSortOrder =
"asc";
1730 function populateBomHeader() {
1731 while (bomhead.firstChild) {
1732 bomhead.removeChild(bomhead.firstChild);
1734 var tr = document.createElement(
"TR");
1735 var th = document.createElement(
"TH");
1736 th.classList.add(
"numCol");
1738 checkboxes = bomCheckboxes.split(
",").filter((e) =
> e);
1739 var checkboxCompareClosure = function(checkbox) {
1741 var stateA = getCheckboxState(checkbox, a[
3]);
1742 var stateB = getCheckboxState(checkbox, b[
3]);
1743 if (stateA
> stateB) return -
1;
1744 if (stateA < stateB) return
1;
1748 for (var checkbox of checkboxes) {
1749 th = createColumnHeader(
1750 checkbox,
"bom-checkbox", checkboxCompareClosure(checkbox));
1751 th.onclick = fancyDblClickHandler(
1752 th, th.onclick.bind(th), checkboxSetUnsetAllHandler(checkbox));
1755 tr.appendChild(createColumnHeader(
"References",
"References", (a, b) =
> {
1757 while (i < a[
3].length && i < b[
3].length) {
1758 if (a[
3][i] != b[
3][i]) return a[
3][i]
> b[
3][i] ?
1 : -
1;
1761 return a[
3].length - b[
3].length;
1764 if (config.extra_fields.length
> 0) {
1765 var extraFieldCompareClosure = function(fieldIndex) {
1767 var fa = a[
4][fieldIndex];
1768 var fb = b[
4][fieldIndex];
1769 if (fa != fb) return fa
> fb ?
1 : -
1;
1773 for (var i in config.extra_fields) {
1774 tr.appendChild(createColumnHeader(
1775 config.extra_fields[i],
"extra", extraFieldCompareClosure(i)));
1778 tr.appendChild(createColumnHeader(
"Value",
"Value", (a, b) =
> {
1779 return valueCompare(a[
5], b[
5], a[
1], b[
1]);
1781 tr.appendChild(createColumnHeader(
"Footprint",
"Footprint", (a, b) =
> {
1782 if (a[
2] != b[
2]) return a[
2]
> b[
2] ?
1 : -
1;
1785 tr.appendChild(createColumnHeader(
"Quantity",
"Quantity", (a, b) =
> {
1786 return a[
3].length - b[
3].length;
1788 bomhead.appendChild(tr);
1791 function populateBomBody() {
1792 while (bom.firstChild) {
1793 bom.removeChild(bom.firstChild);
1795 highlightHandlers = [];
1796 currentHighlightedRowId = null;
1798 switch (canvaslayout) {
1800 bomtable = pcbdata.bom.F;
1803 bomtable = pcbdata.bom.both;
1806 bomtable = pcbdata.bom.B;
1809 if (bomSortFunction) {
1810 bomtable = bomtable.slice().sort(bomSortFunction);
1812 for (var i in bomtable) {
1813 var bomentry = bomtable[i];
1814 if (filter && !entryMatches(bomentry)) {
1817 var references = bomentry[
3];
1819 references = findRefInEntry(bomentry);
1820 if (references.length ==
0) {
1824 var tr = document.createElement(
"TR");
1825 var td = document.createElement(
"TD");
1826 var rownum = +i +
1;
1827 tr.id =
"bomrow" + rownum;
1828 td.textContent = rownum;
1831 for (var checkbox of checkboxes) {
1833 td = document.createElement(
"TD");
1834 var input = document.createElement(
"input");
1835 input.type =
"checkbox";
1836 input.onchange = createCheckboxChangeHandler(checkbox, references);
1837 setBomCheckboxState(checkbox, input, references);
1838 td.appendChild(input);
1843 td = document.createElement(
"TD");
1844 td.innerHTML = highlightFilter(references.map(r =
> r[
0]).join(
", "));
1847 for (var i in config.extra_fields) {
1848 td = document.createElement(
"TD");
1849 td.innerHTML = highlightFilter(bomentry[
4][i]);
1853 td = document.createElement(
"TD");
1854 td.innerHTML = highlightFilter(bomentry[
1]);
1857 td = document.createElement(
"TD");
1858 td.innerHTML = highlightFilter(bomentry[
2]);
1861 td = document.createElement(
"TD");
1862 td.textContent = bomentry[
3].length;
1864 bom.appendChild(tr);
1865 var handler = createRowHighlightHandler(tr.id, references);
1866 tr.onmousemove = handler;
1867 highlightHandlers.push({
1872 if ((filter || reflookup) && first) {
1879 function highlightPreviousRow() {
1880 if (!currentHighlightedRowId) {
1881 highlightHandlers[highlightHandlers.length -
1].handler();
1883 if (highlightHandlers.length
> 1 &&
1884 highlightHandlers[
0].id == currentHighlightedRowId) {
1885 highlightHandlers[highlightHandlers.length -
1].handler();
1887 for (var i =
0; i < highlightHandlers.length -
1; i++) {
1888 if (highlightHandlers[i +
1].id == currentHighlightedRowId) {
1889 highlightHandlers[i].handler();
1895 smoothScrollToRow(currentHighlightedRowId);
1898 function highlightNextRow() {
1899 if (!currentHighlightedRowId) {
1900 highlightHandlers[
0].handler();
1902 if (highlightHandlers.length
> 1 &&
1903 highlightHandlers[highlightHandlers.length -
1].id == currentHighlightedRowId) {
1904 highlightHandlers[
0].handler();
1906 for (var i =
1; i < highlightHandlers.length; i++) {
1907 if (highlightHandlers[i -
1].id == currentHighlightedRowId) {
1908 highlightHandlers[i].handler();
1914 smoothScrollToRow(currentHighlightedRowId);
1917 function populateBomTable() {
1918 populateBomHeader();
1922 function modulesClicked(moduleIndexes) {
1923 var lastClickedIndex = moduleIndexes.indexOf(lastClicked);
1924 var index = moduleIndexes[(lastClickedIndex +
1) % moduleIndexes.length];
1925 for (var handler of highlightHandlers) {
1926 if (handler.refs.map(r =
> r[
1]).indexOf(index)
>=
0) {
1927 lastClicked = index;
1929 smoothScrollToRow(currentHighlightedRowId);
1935 function updateFilter(input) {
1936 filter = input.toLowerCase();
1940 function updateRefLookup(input) {
1941 reflookup = input.toLowerCase();
1945 function silkscreenVisible(visible) {
1947 allcanvas.front.silk.style.display =
"";
1948 allcanvas.back.silk.style.display =
"";
1949 writeStorage(
"silkscreenVisible", true);
1951 allcanvas.front.silk.style.display =
"none";
1952 allcanvas.back.silk.style.display =
"none";
1953 writeStorage(
"silkscreenVisible", false);
1957 function changeCanvasLayout(layout) {
1958 document.getElementById(
"fl-btn").classList.remove(
"depressed");
1959 document.getElementById(
"fb-btn").classList.remove(
"depressed");
1960 document.getElementById(
"bl-btn").classList.remove(
"depressed");
1963 document.getElementById(
"fl-btn").classList.add(
"depressed");
1964 if (bomlayout !=
"bom-only") {
1965 canvassplit.collapse(
1);
1969 document.getElementById(
"bl-btn").classList.add(
"depressed");
1970 if (bomlayout !=
"bom-only") {
1971 canvassplit.collapse(
0);
1975 document.getElementById(
"fb-btn").classList.add(
"depressed");
1976 if (bomlayout !=
"bom-only") {
1977 canvassplit.setSizes([
50,
50]);
1980 canvaslayout = layout;
1981 writeStorage(
"canvaslayout", layout);
1986 function populateMetadata() {
1987 document.getElementById(
"title").innerHTML = pcbdata.metadata.title;
1988 document.getElementById(
"revision").innerHTML =
"Rev: " + pcbdata.metadata.revision;
1989 document.getElementById(
"company").innerHTML = pcbdata.metadata.company;
1990 document.getElementById(
"filedate").innerHTML = pcbdata.metadata.date;
1991 if (pcbdata.metadata.title !=
"") {
1992 document.title = pcbdata.metadata.title +
" BOM";
1996 function changeBomLayout(layout) {
1997 document.getElementById(
"bom-btn").classList.remove(
"depressed");
1998 document.getElementById(
"lr-btn").classList.remove(
"depressed");
1999 document.getElementById(
"tb-btn").classList.remove(
"depressed");
2002 document.getElementById(
"bom-btn").classList.add(
"depressed");
2006 canvassplit.destroy();
2009 document.getElementById(
"frontcanvas").style.display =
"none";
2010 document.getElementById(
"backcanvas").style.display =
"none";
2011 document.getElementById(
"bot").style.height =
"";
2014 document.getElementById(
"tb-btn").classList.add(
"depressed");
2015 document.getElementById(
"frontcanvas").style.display =
"";
2016 document.getElementById(
"backcanvas").style.display =
"";
2017 document.getElementById(
"bot").style.height =
"calc(100% - 80px)";
2018 document.getElementById(
"bomdiv").classList.remove(
"split-horizontal");
2019 document.getElementById(
"canvasdiv").classList.remove(
"split-horizontal");
2020 document.getElementById(
"frontcanvas").classList.add(
"split-horizontal");
2021 document.getElementById(
"backcanvas").classList.add(
"split-horizontal");
2025 canvassplit.destroy();
2028 bomsplit = Split(['#bomdiv', '#canvasdiv'], {
2030 onDragEnd: resizeAll,
2031 direction:
"vertical",
2034 canvassplit = Split(['#frontcanvas', '#backcanvas'], {
2037 onDragEnd: resizeAll
2041 document.getElementById(
"lr-btn").classList.add(
"depressed");
2042 document.getElementById(
"frontcanvas").style.display =
"";
2043 document.getElementById(
"backcanvas").style.display =
"";
2044 document.getElementById(
"bot").style.height =
"calc(100% - 80px)";
2045 document.getElementById(
"bomdiv").classList.add(
"split-horizontal");
2046 document.getElementById(
"canvasdiv").classList.add(
"split-horizontal");
2047 document.getElementById(
"frontcanvas").classList.remove(
"split-horizontal");
2048 document.getElementById(
"backcanvas").classList.remove(
"split-horizontal");
2052 canvassplit.destroy();
2055 bomsplit = Split(['#bomdiv', '#canvasdiv'], {
2057 onDragEnd: resizeAll,
2060 canvassplit = Split(['#frontcanvas', '#backcanvas'], {
2063 direction:
"vertical",
2064 onDragEnd: resizeAll
2068 writeStorage(
"bomlayout", layout);
2069 changeCanvasLayout(canvaslayout);
2072 function focusFilterField() {
2073 focusInputField(document.getElementById(
"filter"));
2076 function focusRefLookupField() {
2077 focusInputField(document.getElementById(
"reflookup"));
2080 function toggleBomCheckbox(bomrowid, checkboxnum) {
2081 if (!bomrowid || checkboxnum
> checkboxes.length) {
2084 var bomrow = document.getElementById(bomrowid);
2085 var checkbox = bomrow.childNodes[checkboxnum].childNodes[
0];
2086 checkbox.checked = !checkbox.checked;
2087 checkbox.indeterminate = false;
2088 checkbox.onchange();
2091 function checkBomCheckbox(bomrowid, checkboxname) {
2092 var checkboxnum =
0;
2093 while (checkboxnum < checkboxes.length &&
2094 checkboxes[checkboxnum].toLowerCase() != checkboxname.toLowerCase()) {
2097 if (!bomrowid || checkboxnum
>= checkboxes.length) {
2100 var bomrow = document.getElementById(bomrowid);
2101 var checkbox = bomrow.childNodes[checkboxnum +
1].childNodes[
0];
2102 checkbox.checked = true;
2103 checkbox.indeterminate = false;
2104 checkbox.onchange();
2107 function setBomCheckboxes(value) {
2108 bomCheckboxes = value;
2109 writeStorage(
"bomCheckboxes", value);
2113 document.onkeydown = function(e) {
2116 if (document.activeElement.type ==
"text") {
2119 if (currentHighlightedRowId !== null) {
2120 checkBomCheckbox(currentHighlightedRowId,
"placed");
2126 highlightPreviousRow();
2143 focusRefLookupField();
2147 changeBomLayout(
"bom-only");
2151 changeBomLayout(
"left-right");
2155 changeBomLayout(
"top-bottom");
2159 changeCanvasLayout(
"F");
2163 changeCanvasLayout(
"FB");
2167 changeCanvasLayout(
"B");
2173 if (e.key
>= '
1' && e.key <= '
9') {
2174 toggleBomCheckbox(currentHighlightedRowId, parseInt(e.key));
2179 function initDefaults() {
2180 bomlayout = readStorage(
"bomlayout");
2181 if (bomlayout === null) {
2182 bomlayout = config.bom_view;
2184 if (!['bom-only', 'left-right', 'top-bottom'].includes(bomlayout)) {
2185 bomlayout = config.bom_view;
2187 canvaslayout = readStorage(
"canvaslayout");
2188 if (canvaslayout === null) {
2189 canvaslayout = config.layer_view;
2191 bomCheckboxes = readStorage(
"bomCheckboxes");
2192 if (bomCheckboxes === null) {
2193 bomCheckboxes = config.checkboxes;
2195 document.getElementById(
"bomCheckboxes").value = bomCheckboxes;
2197 var b = readStorage(
"silkscreenVisible");
2199 b = config.show_silkscreen;
2201 document.getElementById(
"silkscreenCheckbox").checked = b;
2202 silkscreenVisible(b);
2204 b = readStorage(
"redrawOnDrag");
2206 b = config.redraw_on_drag;
2208 document.getElementById(
"dragCheckbox").checked = b;
2211 b = readStorage(
"darkmode");
2213 b = config.dark_mode;
2215 document.getElementById(
"darkmodeCheckbox").checked = b;
2218 b = readStorage(
"highlightpin1");
2220 b = config.highlight_pin1;
2222 document.getElementById(
"highlightpin1Checkbox").checked = b;
2223 setHighlightPin1(b);
2225 boardRotation = readStorage(
"boardRotation");
2226 if (boardRotation === null) {
2227 boardRotation = config.board_rotation *
5;
2229 boardRotation = parseInt(boardRotation);
2231 document.getElementById(
"boardRotation").value = boardRotation /
5;
2232 document.getElementById(
"rotationDegree").textContent = boardRotation;
2235 window.onload = function(e) {
2242 dbgdiv = document.getElementById(
"dbg");
2243 bom = document.getElementById(
"bombody");
2244 bomhead = document.getElementById(
"bomhead");
2248 changeBomLayout(bomlayout);
2251 window.onresize = resizeAll;
2252 window.matchMedia(
"print").addListener(resizeAll);
2254 ///////////////////////////////////////////////
2260 <div id=
"topmostdiv" style=
"width: 100%; height: 100%">
2262 <div style=
"float: right;">
2263 <div class=
"hideonprint menu" style=
"float: right; margin: 10px; top: 8px;">
2264 <button class=
"menubtn"></button>
2265 <div class=
"menu-content">
2266 <label class=
"menu-label menu-label-top">
2267 <input id=
"darkmodeCheckbox" type=
"checkbox" onchange=
"setDarkMode(this.checked)">
2270 <label class=
"menu-label">
2271 <input id=
"silkscreenCheckbox" type=
"checkbox" checked
onchange=
"silkscreenVisible(this.checked)">
2274 <label class=
"menu-label">
2275 <input id=
"highlightpin1Checkbox" type=
"checkbox" onchange=
"setHighlightPin1(this.checked)">
2278 <label class=
"menu-label">
2279 <input id=
"dragCheckbox" type=
"checkbox" checked
onchange=
"setRedrawOnDrag(this.checked)">
2280 Continuous redraw on drag
2282 <label class=
"menu-label">
2283 <span>Board rotation
</span>
2284 <span style=
"float: right"><span id=
"rotationDegree">0</span>°</span>
2285 <input id=
"boardRotation" type=
"range" min=
"-36" max=
"36" value=
"0" class=
"slider" oninput=
"setBoardRotation(this.value)">
2287 <label class=
"menu-label">
2288 <div style=
"margin-left: 5px">Bom checkboxes
</div>
2289 <input id=
"bomCheckboxes" class=
"menu-textbox" type=text
2290 oninput=
"setBomCheckboxes(this.value)">
2292 <label class=
"menu-label">
2293 <span class=
"shameless-plug">
2294 <span>Created using
</span>
2295 <a target=
"blank" href=
"https://github.com/openscopeproject/InteractiveHtmlBom">InteractiveHtmlBom
</a>
2300 <div class=
"button-container hideonprint"
2301 style=
"float: right; margin: 10px; position: relative; top: 8px">
2302 <button id=
"fl-btn" class=
"left-most-button" onclick=
"changeCanvasLayout('F')"
2303 title=
"Front only">F
2305 <button id=
"fb-btn" class=
"middle-button" onclick=
"changeCanvasLayout('FB')"
2306 title=
"Front and Back">FB
2308 <button id=
"bl-btn" class=
"right-most-button" onclick=
"changeCanvasLayout('B')"
2312 <div class=
"button-container hideonprint"
2313 style=
"float: right; margin: 10px; position: relative; top: 8px">
2314 <button id=
"bom-btn" class=
"left-most-button" onclick=
"changeBomLayout('bom-only')"
2315 title=
"BOM only"></button>
2316 <button id=
"lr-btn" class=
"middle-button" onclick=
"changeBomLayout('left-right')"
2317 title=
"BOM left, drawings right"></button>
2318 <button id=
"tb-btn" class=
"right-most-button" onclick=
"changeBomLayout('top-bottom')"
2319 title=
"BOM top, drawings bot"></button>
2322 <div id=
"fileinfodiv" style=
"overflow: auto;">
2323 <table class=
"fileinfo">
2326 <td id=
"title" class=
"title" style=
"width: 70%">
2329 <td id=
"revision" class=
"title" style=
"width: 30%">
2345 <div id=
"bot" class=
"split" style=
"height: calc(100% - 80px)">
2346 <div id=
"bomdiv" class=
"split split-horizontal">
2347 <div style=
"width: 100%">
2348 <input id=
"reflookup" class=
"searchbox reflookup hideonprint" type=
"text" placeholder=
"Ref lookup"
2349 oninput=
"updateRefLookup(this.value)">
2350 <input id=
"filter" class=
"searchbox filter hideonprint" type=
"text" placeholder=
"Filter"
2351 oninput=
"updateFilter(this.value)">
2352 <div class=
"button-container hideonprint" style=
"float: left">
2353 <button id=
"copy" title=
"Copy bom table to clipboard"
2354 onclick=
"copyToClipboard()"></button>
2357 <div id=
"dbg"></div>
2359 <thead id=
"bomhead">
2361 <tbody id=
"bombody">
2365 <div id=
"canvasdiv" class=
"split split-horizontal">
2366 <div id=
"frontcanvas" class=
"split" style=
"overflow: hidden">
2367 <div style=
"position: relative; width: 100%; height: 100%;">
2368 <canvas id=
"F_bg" style=
"position: absolute; left: 0; top: 0; z-index: 0;"></canvas>
2369 <canvas id=
"F_slk" style=
"position: absolute; left: 0; top: 0; z-index: 1;"></canvas>
2370 <canvas id=
"F_hl" style=
"position: absolute; left: 0; top: 0; z-index: 2;"></canvas>
2373 <div id=
"backcanvas" class=
"split" style=
"overflow: hidden">
2374 <div style=
"position: relative; width: 100%; height: 100%;">
2375 <canvas id=
"B_bg" style=
"position: absolute; left: 0; top: 0; z-index: 0;"></canvas>
2376 <canvas id=
"B_slk" style=
"position: absolute; left: 0; top: 0; z-index: 1;"></canvas>
2377 <canvas id=
"B_hl" style=
"position: absolute; left: 0; top: 0; z-index: 2;"></canvas>