forked from golang/go
-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathp.go
More file actions
1011 lines (1008 loc) · 9.87 KB
/
Copy pathp.go
File metadata and controls
1011 lines (1008 loc) · 9.87 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
600
601
602
603
604
605
606
607
608
609
610
611
612
613
614
615
616
617
618
619
620
621
622
623
624
625
626
627
628
629
630
631
632
633
634
635
636
637
638
639
640
641
642
643
644
645
646
647
648
649
650
651
652
653
654
655
656
657
658
659
660
661
662
663
664
665
666
667
668
669
670
671
672
673
674
675
676
677
678
679
680
681
682
683
684
685
686
687
688
689
690
691
692
693
694
695
696
697
698
699
700
701
702
703
704
705
706
707
708
709
710
711
712
713
714
715
716
717
718
719
720
721
722
723
724
725
726
727
728
729
730
731
732
733
734
735
736
737
738
739
740
741
742
743
744
745
746
747
748
749
750
751
752
753
754
755
756
757
758
759
760
761
762
763
764
765
766
767
768
769
770
771
772
773
774
775
776
777
778
779
780
781
782
783
784
785
786
787
788
789
790
791
792
793
794
795
796
797
798
799
800
801
802
803
804
805
806
807
808
809
810
811
812
813
814
815
816
817
818
819
820
821
822
823
824
825
826
827
828
829
830
831
832
833
834
835
836
837
838
839
840
841
842
843
844
845
846
847
848
849
850
851
852
853
854
855
856
857
858
859
860
861
862
863
864
865
866
867
868
869
870
871
872
873
874
875
876
877
878
879
880
881
882
883
884
885
886
887
888
889
890
891
892
893
894
895
896
897
898
899
900
901
902
903
904
905
906
907
908
909
910
911
912
913
914
915
916
917
918
919
920
921
922
923
924
925
926
927
928
929
930
931
932
933
934
935
936
937
938
939
940
941
942
943
944
945
946
947
948
949
950
951
952
953
954
955
956
957
958
959
960
961
962
963
964
965
966
967
968
969
970
971
972
973
974
975
976
977
978
979
980
981
982
983
984
985
986
987
988
989
990
991
992
993
994
995
996
997
998
999
1000
// Copyright 2010 The Go Authors. All rights reserved.
// Use of this source code is governed by a BSD-style
// license that can be found in the LICENSE file.
package p
type T struct {
x1 int
x2 int
x3 int
x4 int
x5 int
x6 int
x7 int
x8 int
x9 int
x10 int
x11 int
x12 int
x13 int
x14 int
x15 int
x16 int
x17 int
x18 int
x19 int
x20 int
x21 int
x22 int
x23 int
x24 int
x25 int
x26 int
x27 int
x28 int
x29 int
x30 int
x31 int
x32 int
x33 int
x34 int
x35 int
x36 int
x37 int
x38 int
x39 int
x40 int
x41 int
x42 int
x43 int
x44 int
x45 int
x46 int
x47 int
x48 int
x49 int
x50 int
x51 int
x52 int
x53 int
x54 int
x55 int
x56 int
x57 int
x58 int
x59 int
x60 int
x61 int
x62 int
x63 int
x64 int
x65 int
x66 int
x67 int
x68 int
x69 int
x70 int
x71 int
x72 int
x73 int
x74 int
x75 int
x76 int
x77 int
x78 int
x79 int
x80 int
x81 int
x82 int
x83 int
x84 int
x85 int
x86 int
x87 int
x88 int
x89 int
x90 int
x91 int
x92 int
x93 int
x94 int
x95 int
x96 int
x97 int
x98 int
x99 int
x100 int
x101 int
x102 int
x103 int
x104 int
x105 int
x106 int
x107 int
x108 int
x109 int
x110 int
x111 int
x112 int
x113 int
x114 int
x115 int
x116 int
x117 int
x118 int
x119 int
x120 int
x121 int
x122 int
x123 int
x124 int
x125 int
x126 int
x127 int
x128 int
x129 int
x130 int
x131 int
x132 int
x133 int
x134 int
x135 int
x136 int
x137 int
x138 int
x139 int
x140 int
x141 int
x142 int
x143 int
x144 int
x145 int
x146 int
x147 int
x148 int
x149 int
x150 int
x151 int
x152 int
x153 int
x154 int
x155 int
x156 int
x157 int
x158 int
x159 int
x160 int
x161 int
x162 int
x163 int
x164 int
x165 int
x166 int
x167 int
x168 int
x169 int
x170 int
x171 int
x172 int
x173 int
x174 int
x175 int
x176 int
x177 int
x178 int
x179 int
x180 int
x181 int
x182 int
x183 int
x184 int
x185 int
x186 int
x187 int
x188 int
x189 int
x190 int
x191 int
x192 int
x193 int
x194 int
x195 int
x196 int
x197 int
x198 int
x199 int
x200 int
x201 int
x202 int
x203 int
x204 int
x205 int
x206 int
x207 int
x208 int
x209 int
x210 int
x211 int
x212 int
x213 int
x214 int
x215 int
x216 int
x217 int
x218 int
x219 int
x220 int
x221 int
x222 int
x223 int
x224 int
x225 int
x226 int
x227 int
x228 int
x229 int
x230 int
x231 int
x232 int
x233 int
x234 int
x235 int
x236 int
x237 int
x238 int
x239 int
x240 int
x241 int
x242 int
x243 int
x244 int
x245 int
x246 int
x247 int
x248 int
x249 int
x250 int
x251 int
x252 int
x253 int
x254 int
x255 int
x256 int
x257 int
x258 int
x259 int
x260 int
x261 int
x262 int
x263 int
x264 int
x265 int
x266 int
x267 int
x268 int
x269 int
x270 int
x271 int
x272 int
x273 int
x274 int
x275 int
x276 int
x277 int
x278 int
x279 int
x280 int
x281 int
x282 int
x283 int
x284 int
x285 int
x286 int
x287 int
x288 int
x289 int
x290 int
x291 int
x292 int
x293 int
x294 int
x295 int
x296 int
x297 int
x298 int
x299 int
x300 int
x301 int
x302 int
x303 int
x304 int
x305 int
x306 int
x307 int
x308 int
x309 int
x310 int
x311 int
x312 int
x313 int
x314 int
x315 int
x316 int
x317 int
x318 int
x319 int
x320 int
x321 int
x322 int
x323 int
x324 int
x325 int
x326 int
x327 int
x328 int
x329 int
x330 int
x331 int
x332 int
x333 int
x334 int
x335 int
x336 int
x337 int
x338 int
x339 int
x340 int
x341 int
x342 int
x343 int
x344 int
x345 int
x346 int
x347 int
x348 int
x349 int
x350 int
x351 int
x352 int
x353 int
x354 int
x355 int
x356 int
x357 int
x358 int
x359 int
x360 int
x361 int
x362 int
x363 int
x364 int
x365 int
x366 int
x367 int
x368 int
x369 int
x370 int
x371 int
x372 int
x373 int
x374 int
x375 int
x376 int
x377 int
x378 int
x379 int
x380 int
x381 int
x382 int
x383 int
x384 int
x385 int
x386 int
x387 int
x388 int
x389 int
x390 int
x391 int
x392 int
x393 int
x394 int
x395 int
x396 int
x397 int
x398 int
x399 int
x400 int
x401 int
x402 int
x403 int
x404 int
x405 int
x406 int
x407 int
x408 int
x409 int
x410 int
x411 int
x412 int
x413 int
x414 int
x415 int
x416 int
x417 int
x418 int
x419 int
x420 int
x421 int
x422 int
x423 int
x424 int
x425 int
x426 int
x427 int
x428 int
x429 int
x430 int
x431 int
x432 int
x433 int
x434 int
x435 int
x436 int
x437 int
x438 int
x439 int
x440 int
x441 int
x442 int
x443 int
x444 int
x445 int
x446 int
x447 int
x448 int
x449 int
x450 int
x451 int
x452 int
x453 int
x454 int
x455 int
x456 int
x457 int
x458 int
x459 int
x460 int
x461 int
x462 int
x463 int
x464 int
x465 int
x466 int
x467 int
x468 int
x469 int
x470 int
x471 int
x472 int
x473 int
x474 int
x475 int
x476 int
x477 int
x478 int
x479 int
x480 int
x481 int
x482 int
x483 int
x484 int
x485 int
x486 int
x487 int
x488 int
x489 int
x490 int
x491 int
x492 int
x493 int
x494 int
x495 int
x496 int
x497 int
x498 int
x499 int
x500 int
x501 int
x502 int
x503 int
x504 int
x505 int
x506 int
x507 int
x508 int
x509 int
x510 int
x511 int
x512 int
x513 int
x514 int
x515 int
x516 int
x517 int
x518 int
x519 int
x520 int
x521 int
x522 int
x523 int
x524 int
x525 int
x526 int
x527 int
x528 int
x529 int
x530 int
x531 int
x532 int
x533 int
x534 int
x535 int
x536 int
x537 int
x538 int
x539 int
x540 int
x541 int
x542 int
x543 int
x544 int
x545 int
x546 int
x547 int
x548 int
x549 int
x550 int
x551 int
x552 int
x553 int
x554 int
x555 int
x556 int
x557 int
x558 int
x559 int
x560 int
x561 int
x562 int
x563 int
x564 int
x565 int
x566 int
x567 int
x568 int
x569 int
x570 int
x571 int
x572 int
x573 int
x574 int
x575 int
x576 int
x577 int
x578 int
x579 int
x580 int
x581 int
x582 int
x583 int
x584 int
x585 int
x586 int
x587 int
x588 int
x589 int
x590 int
x591 int
x592 int
x593 int
x594 int
x595 int
x596 int
x597 int
x598 int
x599 int
x600 int
x601 int
x602 int
x603 int
x604 int
x605 int
x606 int
x607 int
x608 int
x609 int
x610 int
x611 int
x612 int
x613 int
x614 int
x615 int
x616 int
x617 int
x618 int
x619 int
x620 int
x621 int
x622 int
x623 int
x624 int
x625 int
x626 int
x627 int
x628 int
x629 int
x630 int
x631 int
x632 int
x633 int
x634 int
x635 int
x636 int
x637 int
x638 int
x639 int
x640 int
x641 int
x642 int
x643 int
x644 int
x645 int
x646 int
x647 int
x648 int
x649 int
x650 int
x651 int
x652 int
x653 int
x654 int
x655 int
x656 int
x657 int
x658 int
x659 int
x660 int
x661 int
x662 int
x663 int
x664 int
x665 int
x666 int
x667 int
x668 int
x669 int
x670 int
x671 int
x672 int
x673 int
x674 int
x675 int
x676 int
x677 int
x678 int
x679 int
x680 int
x681 int
x682 int
x683 int
x684 int
x685 int
x686 int
x687 int
x688 int
x689 int
x690 int
x691 int
x692 int
x693 int
x694 int
x695 int
x696 int
x697 int
x698 int
x699 int
x700 int
x701 int
x702 int
x703 int
x704 int
x705 int
x706 int
x707 int
x708 int
x709 int
x710 int
x711 int
x712 int
x713 int
x714 int
x715 int
x716 int
x717 int
x718 int
x719 int
x720 int
x721 int
x722 int
x723 int
x724 int
x725 int
x726 int
x727 int
x728 int
x729 int
x730 int
x731 int
x732 int
x733 int
x734 int
x735 int
x736 int
x737 int
x738 int
x739 int
x740 int
x741 int
x742 int
x743 int
x744 int
x745 int
x746 int
x747 int
x748 int
x749 int
x750 int
x751 int
x752 int
x753 int
x754 int
x755 int
x756 int
x757 int
x758 int
x759 int
x760 int
x761 int
x762 int
x763 int
x764 int
x765 int
x766 int
x767 int
x768 int
x769 int
x770 int
x771 int
x772 int
x773 int
x774 int
x775 int
x776 int
x777 int
x778 int
x779 int
x780 int
x781 int
x782 int
x783 int
x784 int
x785 int
x786 int
x787 int
x788 int
x789 int
x790 int
x791 int
x792 int
x793 int
x794 int
x795 int
x796 int
x797 int
x798 int
x799 int
x800 int
x801 int
x802 int
x803 int
x804 int
x805 int
x806 int
x807 int
x808 int
x809 int
x810 int
x811 int
x812 int
x813 int
x814 int
x815 int
x816 int
x817 int
x818 int
x819 int
x820 int
x821 int
x822 int
x823 int
x824 int
x825 int
x826 int
x827 int
x828 int
x829 int
x830 int
x831 int
x832 int
x833 int
x834 int
x835 int
x836 int
x837 int
x838 int
x839 int
x840 int
x841 int
x842 int
x843 int
x844 int
x845 int
x846 int
x847 int
x848 int
x849 int
x850 int
x851 int
x852 int
x853 int
x854 int
x855 int
x856 int
x857 int
x858 int
x859 int
x860 int
x861 int
x862 int
x863 int
x864 int
x865 int
x866 int
x867 int
x868 int
x869 int
x870 int
x871 int
x872 int
x873 int
x874 int
x875 int
x876 int
x877 int
x878 int
x879 int
x880 int
x881 int
x882 int
x883 int
x884 int
x885 int
x886 int
x887 int
x888 int
x889 int
x890 int
x891 int
x892 int
x893 int
x894 int
x895 int
x896 int
x897 int
x898 int
x899 int
x900 int
x901 int
x902 int
x903 int
x904 int
x905 int
x906 int
x907 int
x908 int
x909 int
x910 int
x911 int
x912 int
x913 int
x914 int
x915 int
x916 int
x917 int
x918 int
x919 int
x920 int
x921 int
x922 int
x923 int
x924 int
x925 int
x926 int
x927 int
x928 int
x929 int
x930 int
x931 int
x932 int
x933 int
x934 int
x935 int
x936 int
x937 int
x938 int
x939 int
x940 int
x941 int
x942 int
x943 int
x944 int
x945 int
x946 int
x947 int
x948 int
x949 int
x950 int
x951 int
x952 int
x953 int
x954 int
x955 int
x956 int
x957 int
x958 int
x959 int
x960 int
x961 int
x962 int
x963 int
x964 int
x965 int
x966 int
x967 int
x968 int
x969 int
x970 int
x971 int
x972 int
x973 int
x974 int
x975 int
x976 int
x977 int
x978 int
x979 int
x980 int
x981 int
x982 int
x983 int
x984 int
x985 int
x986 int
x987 int
x988 int
x989 int
x990 int
x991 int
x992 int
x993 int