<html>
<head>
<div height="0" hidden="true">

Skia UnitTests: --match PathOpsSimplify$ --resourcePath resources/ SK_DEBUG

Skia UnitTests: --match Simplify$ --resourcePath resources\ SK_DEBUG

<div id="simplifyTest_1">
seg=1 {{{95.9684143f, 119.751823f}, {97.2032471f, 113.040466f}, {102.896156f, 108.083267f}}}
seg=2 {{{102.896156f, 108.083267f}, {102.896736f, 108.082771f}}}
seg=3 {{{102.896736f, 108.082771f}, {106.944885f, 104.564941f}, {113.029114f, 102.892998f}}}
seg=4 {{{113.029114f, 102.892998f}, {113.169701f, 102.868301f}}}
seg=5 {{{113.169701f, 102.868301f}, {122.958702f, 102.087303f}}}
seg=6 {{{122.958702f, 102.087303f}, {123.637985f, 102.405312f}}}
seg=7 {{{123.637985f, 102.405312f}, {125.172699f, 104.575714f}, {123.387383f, 106.91227f}}}
seg=8 {{{123.387383f, 106.91227f}, {122.784996f, 106.452003f}}}
seg=9 {{{122.784996f, 106.452003f}, {123.388428f, 106.910896f}}}
seg=10 {{{123.388428f, 106.910896f}, {123.365623f, 106.94088f}, {123.320007f, 107.000946f}}}
seg=11 {{{123.320007f, 107.000946f}, {117.109985f, 115.177612f}, {108.73912f, 118.758026f}}}
seg=12 {{{108.73912f, 118.758026f}, {108.557755f, 118.810059f}}}
seg=13 {{{108.557755f, 118.810059f}, {96.8307571f, 120.638062f}}}
seg=14 {{{96.8307571f, 120.638062f}, {95.9684143f, 119.751823f}}}
seg=15 {{{97.4595795f, 120.026184f}, {96.7139969f, 119.889008f}}}
seg=16 {{{96.7139969f, 119.889008f}, {96.5972366f, 119.139954f}}}
seg=17 {{{96.5972366f, 119.139954f}, {108.324234f, 117.311951f}}}
seg=18 {{{108.324234f, 117.311951f}, {108.440994f, 118.061005f}}}
seg=19 {{{108.440994f, 118.061005f}, {108.142868f, 117.363983f}}}
seg=20 {{{108.142868f, 117.363983f}, {116.14502f, 113.941284f}, {122.112564f, 106.083923f}}}
seg=21 {{{122.112564f, 106.083923f}, {122.158455f, 106.023499f}, {122.181564f, 105.993111f}}}
seg=22 {{{122.181564f, 105.993111f}, {122.18261f, 105.991737f}}}
seg=23 {{{122.18261f, 105.991737f}, {123.291138f, 104.540924f}, {122.400009f, 103.280693f}}}
seg=24 {{{122.400009f, 103.280693f}, {123.018997f, 102.843002f}}}
seg=25 {{{123.018997f, 102.843002f}, {123.079292f, 103.598701f}}}
seg=26 {{{123.079292f, 103.598701f}, {113.290291f, 104.3797f}}}
seg=27 {{{113.290291f, 104.3797f}, {113.229996f, 103.624001f}}}
seg=28 {{{113.229996f, 103.624001f}, {113.430878f, 104.355003f}}}
seg=29 {{{113.430878f, 104.355003f}, {107.679138f, 105.935608f}, {103.891258f, 109.227226f}}}
seg=30 {{{103.891258f, 109.227226f}, {103.393997f, 108.654999f}}}
seg=31 {{{103.393997f, 108.654999f}, {103.891838f, 109.22673f}}}
seg=32 {{{103.891838f, 109.22673f}, {98.5984497f, 113.835938f}, {97.4595795f, 120.026184f}}}
debugShowQuadLineIntersection wtTs[0]=1 {{{95.9684143,119.751823}, {97.2032471,113.040466}, {102.896156,108.083267}}} {{102.896156,108.083267}} wnTs[0]=0 {{{102.896156,108.083267}, {102.896736,108.082771}}}
debugShowQuadLineIntersection no intersect {{{95.9684143,119.751823}, {97.2032471,113.040466}, {102.896156,108.083267}}} {{{108.557755,118.810059}, {96.8307571,120.638062}}}
debugShowQuadLineIntersection wtTs[0]=0 {{{95.9684143,119.751823}, {97.2032471,113.040466}, {102.896156,108.083267}}} {{95.9684143,119.751823}} wnTs[0]=1 {{{96.8307571,120.638062}, {95.9684143,119.751823}}}
debugShowQuadLineIntersection wtTs[0]=0 {{{102.896736,108.082771}, {106.944885,104.564941}, {113.029114,102.892998}}} {{102.896736,108.082771}} wnTs[0]=1 {{{102.896156,108.083267}, {102.896736,108.082771}}}
debugShowQuadLineIntersection wtTs[0]=1 {{{102.896736,108.082771}, {106.944885,104.564941}, {113.029114,102.892998}}} {{113.029114,102.892998}} wnTs[0]=0 {{{113.029114,102.892998}, {113.169701,102.868301}}}
debugShowQuadIntersection no intersect {{{102.896736,108.082771}, {106.944885,104.564941}, {113.029114,102.892998}}} {{{123.320007,107.000946}, {117.109985,115.177612}, {108.73912,118.758026}}}
debugShowLineIntersection wtTs[0]=1 {{{113.029114,102.892998}, {113.169701,102.868301}}} {{113.169701,102.868301}} wnTs[0]=0 {{{113.169701,102.868301}, {122.958702,102.087303}}}
debugShowLineIntersection wtTs[0]=1 {{{113.169701,102.868301}, {122.958702,102.087303}}} {{122.958702,102.087303}} wnTs[0]=0 {{{122.958702,102.087303}, {123.637985,102.405312}}}
debugShowQuadLineIntersection wtTs[0]=0 {{{123.637985,102.405312}, {125.172699,104.575714}, {123.387383,106.91227}}} {{123.637985,102.405312}} wnTs[0]=1 {{{122.958702,102.087303}, {123.637985,102.405312}}}
debugShowQuadLineIntersection wtTs[0]=1 {{{123.637985,102.405312}, {125.172699,104.575714}, {123.387383,106.91227}}} {{123.387383,106.91227}} wnTs[0]=0 {{{123.387383,106.91227}, {122.784996,106.452003}}}
debugShowQuadLineIntersection no intersect {{{123.637985,102.405312}, {125.172699,104.575714}, {123.387383,106.91227}}} {{{122.784996,106.452003}, {123.388428,106.910896}}}
debugShowQuadIntersection wtTs[0]=0.999952051 {{{123.637985,102.405312}, {125.172699,104.575714}, {123.387383,106.91227}}} {{123.38755,106.912048}} wnTs[0]=0.0189869 {{{123.388428,106.910896}, {123.365623,106.94088}, {123.320007,107.000946}}}
SkOpSegment::addT insert t=0.999952051 segID=7 spanID=65
SkOpSegment::addT insert t=0.0189869068 segID=10 spanID=66
debugShowLineIntersection wtTs[0]=1 {{{123.387383,106.91227}, {122.784996,106.452003}}} {{122.784996,106.452003}} wnTs[0]=0 {{{122.784996,106.452003}, {123.388428,106.910896}}}
debugShowQuadLineIntersection no intersect {{{123.388428,106.910896}, {123.365623,106.94088}, {123.320007,107.000946}}} {{{123.387383,106.91227}, {122.784996,106.452003}}}
debugShowQuadLineIntersection wtTs[0]=0 {{{123.388428,106.910896}, {123.365623,106.94088}, {123.320007,107.000946}}} {{123.388428,106.910896}} wnTs[0]=1 {{{122.784996,106.452003}, {123.388428,106.910896}}}
debugShowQuadIntersection wtTs[0]=1 {{{123.388428,106.910896}, {123.365623,106.94088}, {123.320007,107.000946}}} {{123.320007,107.000946}} wnTs[0]=0 {{{123.320007,107.000946}, {117.109985,115.177612}, {108.73912,118.758026}}}
debugShowQuadLineIntersection wtTs[0]=1 {{{123.320007,107.000946}, {117.109985,115.177612}, {108.73912,118.758026}}} {{108.73912,118.758026}} wnTs[0]=0 {{{108.73912,118.758026}, {108.557755,118.810059}}}
debugShowLineIntersection wtTs[0]=1 {{{108.73912,118.758026}, {108.557755,118.810059}}} {{108.557755,118.810059}} wnTs[0]=0 {{{108.557755,118.810059}, {96.8307571,120.638062}}}
debugShowLineIntersection wtTs[0]=1 {{{108.557755,118.810059}, {96.8307571,120.638062}}} {{96.8307571,120.638062}} wnTs[0]=0 {{{96.8307571,120.638062}, {95.9684143,119.751823}}}
debugShowQuadLineIntersection no intersect {{{95.9684143,119.751823}, {97.2032471,113.040466}, {102.896156,108.083267}}} {{{96.7139969,119.889008}, {96.5972366,119.139954}}}
debugShowQuadLineIntersection no intersect {{{95.9684143,119.751823}, {97.2032471,113.040466}, {102.896156,108.083267}}} {{{96.5972366,119.139954}, {108.324234,117.311951}}}
debugShowQuadIntersection no intersect {{{95.9684143,119.751823}, {97.2032471,113.040466}, {102.896156,108.083267}}} {{{103.891838,109.22673}, {98.5984497,113.835938}, {97.4595795,120.026184}}}
debugShowQuadIntersection no intersect {{{102.896736,108.082771}, {106.944885,104.564941}, {113.029114,102.892998}}} {{{108.142868,117.363983}, {116.14502,113.941284}, {122.112564,106.083923}}}
debugShowQuadIntersection no intersect {{{102.896736,108.082771}, {106.944885,104.564941}, {113.029114,102.892998}}} {{{113.430878,104.355003}, {107.679138,105.935608}, {103.891258,109.227226}}}
debugShowLineIntersection no intersect {{{113.169701,102.868301}, {122.958702,102.087303}}} {{{122.400009,103.280693}, {123.018997,102.843002}}}
debugShowQuadIntersection no intersect {{{123.320007,107.000946}, {117.109985,115.177612}, {108.73912,118.758026}}} {{{108.142868,117.363983}, {116.14502,113.941284}, {122.112564,106.083923}}}
debugShowQuadIntersection no intersect {{{123.320007,107.000946}, {117.109985,115.177612}, {108.73912,118.758026}}} {{{113.430878,104.355003}, {107.679138,105.935608}, {103.891258,109.227226}}}
debugShowLineIntersection no intersect {{{108.557755,118.810059}, {96.8307571,120.638062}}} {{{97.4595795,120.026184}, {96.7139969,119.889008}}}
debugShowLineIntersection no intersect {{{108.557755,118.810059}, {96.8307571,120.638062}}} {{{96.5972366,119.139954}, {108.324234,117.311951}}}
debugShowQuadLineIntersection no intersect {{{103.891838,109.22673}, {98.5984497,113.835938}, {97.4595795,120.026184}}} {{{108.557755,118.810059}, {96.8307571,120.638062}}}
debugShowLineIntersection no intersect {{{96.8307571,120.638062}, {95.9684143,119.751823}}} {{{97.4595795,120.026184}, {96.7139969,119.889008}}}
debugShowLineIntersection no intersect {{{96.8307571,120.638062}, {95.9684143,119.751823}}} {{{96.7139969,119.889008}, {96.5972366,119.139954}}}
debugShowLineIntersection wtTs[0]=1 {{{97.4595795,120.026184}, {96.7139969,119.889008}}} {{96.7139969,119.889008}} wnTs[0]=0 {{{96.7139969,119.889008}, {96.5972366,119.139954}}}
debugShowQuadLineIntersection wtTs[0]=1 {{{103.891838,109.22673}, {98.5984497,113.835938}, {97.4595795,120.026184}}} {{97.4595795,120.026184}} wnTs[0]=0 {{{97.4595795,120.026184}, {96.7139969,119.889008}}}
debugShowLineIntersection wtTs[0]=1 {{{96.7139969,119.889008}, {96.5972366,119.139954}}} {{96.5972366,119.139954}} wnTs[0]=0 {{{96.5972366,119.139954}, {108.324234,117.311951}}}
debugShowLineIntersection wtTs[0]=1 {{{96.5972366,119.139954}, {108.324234,117.311951}}} {{108.324234,117.311951}} wnTs[0]=0 {{{108.324234,117.311951}, {108.440994,118.061005}}}
debugShowLineIntersection no intersect {{{96.5972366,119.139954}, {108.324234,117.311951}}} {{{108.440994,118.061005}, {108.142868,117.363983}}}
debugShowQuadLineIntersection wtTs[0]=0.00542932628 {{{108.142868,117.363983}, {116.14502,113.941284}, {122.112564,106.083923}}} {{108.229698,117.326683}} wnTs[0]=0.991939 {{{96.5972366,119.139954}, {108.324234,117.311951}}}
SkOpSegment::addT insert t=0.991938827 segID=17 spanID=67
SkOpSegment::addT insert t=0.00542932628 segID=20 spanID=68
debugShowQuadLineIntersection wtTs[0]=0.913746799 {{{103.891838,109.22673}, {98.5984497,113.835938}, {97.4595795,120.026184}}} {{97.6869507,118.970093}} wnTs[0]=0.0929235 {{{96.5972366,119.139954}, {108.324234,117.311951}}}
SkOpSegment::addT insert t=0.0929234671 segID=17 spanID=69
SkOpSegment::addT insert t=0.913746799 segID=32 spanID=70
debugShowLineIntersection wtTs[0]=1 {{{108.324234,117.311951}, {108.440994,118.061005}}} {{108.440994,118.061005}} wnTs[0]=0 {{{108.440994,118.061005}, {108.142868,117.363983}}}
debugShowQuadLineIntersection no intersect {{{108.142868,117.363983}, {116.14502,113.941284}, {122.112564,106.083923}}} {{{108.324234,117.311951}, {108.440994,118.061005}}}
debugShowQuadLineIntersection wtTs[0]=0 {{{108.142868,117.363983}, {116.14502,113.941284}, {122.112564,106.083923}}} {{108.142868,117.363983}} wnTs[0]=1 {{{108.440994,118.061005}, {108.142868,117.363983}}}
debugShowQuadIntersection wtTs[0]=1 {{{108.142868,117.363983}, {116.14502,113.941284}, {122.112564,106.083923}}} {{122.112564,106.083923}} wnTs[0]=0 {{{122.112564,106.083923}, {122.158455,106.023499}, {122.181564,105.993111}}}
debugShowQuadIntersection no intersect {{{108.142868,117.363983}, {116.14502,113.941284}, {122.112564,106.083923}}} {{{113.430878,104.355003}, {107.679138,105.935608}, {103.891258,109.227226}}}
debugShowQuadLineIntersection wtTs[0]=1 {{{122.112564,106.083923}, {122.158455,106.023499}, {122.181564,105.993111}}} {{122.181564,105.993111}} wnTs[0]=0 {{{122.181564,105.993111}, {122.18261,105.991737}}}
debugShowQuadLineIntersection wtTs[0]=0 {{{122.18261,105.991737}, {123.291138,104.540924}, {122.400009,103.280693}}} {{122.18261,105.991737}} wnTs[0]=1 {{{122.181564,105.993111}, {122.18261,105.991737}}}
debugShowQuadLineIntersection wtTs[0]=1 {{{122.18261,105.991737}, {123.291138,104.540924}, {122.400009,103.280693}}} {{122.400009,103.280693}} wnTs[0]=0 {{{122.400009,103.280693}, {123.018997,102.843002}}}
debugShowQuadLineIntersection wtTs[0]=0.860440414 {{{122.18261,105.991737}, {123.291138,104.540924}, {122.400009,103.280693}}} {{122.609795,103.636162}} wnTs[0]=0.0479619 {{{123.079292,103.598701}, {113.290291,104.3797}}}
SkOpSegment::addT insert t=0.860440414 segID=23 spanID=71
SkOpSegment::addT insert t=0.0479619043 segID=26 spanID=72
debugShowLineIntersection wtTs[0]=1 {{{122.400009,103.280693}, {123.018997,102.843002}}} {{123.018997,102.843002}} wnTs[0]=0 {{{123.018997,102.843002}, {123.079292,103.598701}}}
debugShowLineIntersection wtTs[0]=1 {{{123.018997,102.843002}, {123.079292,103.598701}}} {{123.079292,103.598701}} wnTs[0]=0 {{{123.079292,103.598701}, {113.290291,104.3797}}}
debugShowLineIntersection wtTs[0]=1 {{{123.079292,103.598701}, {113.290291,104.3797}}} {{113.290291,104.3797}} wnTs[0]=0 {{{113.290291,104.3797}, {113.229996,103.624001}}}
debugShowLineIntersection no intersect {{{123.079292,103.598701}, {113.290291,104.3797}}} {{{113.229996,103.624001}, {113.430878,104.355003}}}
debugShowQuadLineIntersection wtTs[0]=0.00597885639 {{{113.430878,104.355003}, {107.679138,105.935608}, {103.891258,109.227226}}} {{113.362167,104.373962}} wnTs[0]=0.992657 {{{123.079292,103.598701}, {113.290291,104.3797}}}
SkOpSegment::addT insert t=0.992657126 segID=26 spanID=73
SkOpSegment::addT insert t=0.00597885639 segID=29 spanID=74
debugShowLineIntersection wtTs[0]=1 {{{113.290291,104.3797}, {113.229996,103.624001}}} {{113.229996,103.624001}} wnTs[0]=0 {{{113.229996,103.624001}, {113.430878,104.355003}}}
debugShowQuadLineIntersection no intersect {{{113.430878,104.355003}, {107.679138,105.935608}, {103.891258,109.227226}}} {{{113.290291,104.3797}, {113.229996,103.624001}}}
debugShowQuadLineIntersection wtTs[0]=0 {{{113.430878,104.355003}, {107.679138,105.935608}, {103.891258,109.227226}}} {{113.430878,104.355003}} wnTs[0]=1 {{{113.229996,103.624001}, {113.430878,104.355003}}}
debugShowQuadLineIntersection wtTs[0]=1 {{{113.430878,104.355003}, {107.679138,105.935608}, {103.891258,109.227226}}} {{103.891258,109.227226}} wnTs[0]=0 {{{103.891258,109.227226}, {103.393997,108.654999}}}
debugShowQuadLineIntersection wtTs[0]=0.999923983 {{{113.430878,104.355003}, {107.679138,105.935608}, {103.891258,109.227226}}} {{103.891838,109.22673}} wnTs[0]=1 {{{103.393997,108.654999}, {103.891838,109.22673}}}
SkOpSegment::addT insert t=0.999923983 segID=29 spanID=75
debugShowQuadIntersection wtTs[0]=0.999923983 {{{113.430878,104.355003}, {107.679138,105.935608}, {103.891258,109.227226}}} {{103.89183,109.226723}} wtTs[1]=1 {{103.891266,109.227234}} wnTs[0]=0 {{{103.891838,109.22673}, {98.5984497,113.835938}, {97.4595795,120.026184}}} wnTs[1]=5.43505489e-05
SkOpSegment::addT insert t=5.43505489e-05 segID=32 spanID=76
debugShowLineIntersection wtTs[0]=1 {{{103.891258,109.227226}, {103.393997,108.654999}}} {{103.393997,108.654999}} wnTs[0]=0 {{{103.393997,108.654999}, {103.891838,109.22673}}}
debugShowQuadLineIntersection no intersect {{{103.891838,109.22673}, {98.5984497,113.835938}, {97.4595795,120.026184}}} {{{103.891258,109.227226}, {103.393997,108.654999}}}
debugShowQuadLineIntersection wtTs[0]=0 {{{103.891838,109.22673}, {98.5984497,113.835938}, {97.4595795,120.026184}}} {{103.891838,109.22673}} wnTs[0]=1 {{{103.393997,108.654999}, {103.891838,109.22673}}}
-----------------------x--------------00:  coinSeg/Span/PtT=32/63/63 endSpan=76 oppSeg/Span/PtT=29/75/75 oppEndSpan=58 MissingCoin
01:  coinSeg/Span/PtT=29/75/75 endSpan=58 oppSeg/Span/PtT=32/63/63 oppEndSpan=76 MissingCoin
02:  coinSeg/Span/PtT=32/63/63 endSpan=76 oppSeg/Span/PtT=29/75/75 oppEndSpan=58 MissingCoin
03:  coinSeg/Span/PtT=29/75/75 endSpan=58 oppSeg/Span/PtT=32/63/63 oppEndSpan=76 MissingCoin
SkOpSegment::debugShowActiveSpans id=1 (95.9684143,119.751823 97.2032471,113.040466 102.896156,108.083267) t=0 tEnd=1 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=2 (102.896156,108.083267 102.896736,108.082771) t=0 tEnd=1 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=3 (102.896736,108.082771 106.944885,104.564941 113.029114,102.892998) t=0 tEnd=1 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=4 (113.029114,102.892998 113.169701,102.868301) t=0 tEnd=1 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=5 (113.169701,102.868301 122.958702,102.087303) t=0 tEnd=1 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=6 (122.958702,102.087303 123.637985,102.405312) t=0 tEnd=1 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=7 (123.637985,102.405312 125.172625,104.575609 123.38755,106.912048) t=0 tEnd=0.999952051 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=7 (123.38755,106.912048 123.387466,106.912159 123.387383,106.91227) t=0.999952051 tEnd=1 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=8 (123.387383,106.91227 122.784996,106.452003) t=0 tEnd=1 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=9 (122.784996,106.452003 123.388428,106.910896) t=0 tEnd=1 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=10 (123.388428,106.910896 123.387993,106.911467 123.38755,106.912048) t=0 tEnd=0.0189869068 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=10 (123.38755,106.912048 123.365603,106.940906 123.320007,107.000946) t=0.0189869068 tEnd=1 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=11 (123.320007,107.000946 117.109985,115.177612 108.73912,118.758026) t=0 tEnd=1 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=12 (108.73912,118.758026 108.557755,118.810059) t=0 tEnd=1 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=13 (108.557755,118.810059 96.8307571,120.638062) t=0 tEnd=1 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=14 (96.8307571,120.638062 95.9684143,119.751823) t=0 tEnd=1 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=15 (97.4595795,120.026184 96.7139969,119.889008) t=0 tEnd=1 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=16 (96.7139969,119.889008 96.5972366,119.139954) t=0 tEnd=1 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=17 (96.5972366,119.139954 97.6869507,118.970093) t=0 tEnd=0.0929234671 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=17 (97.6869507,118.970093 108.229698,117.326683) t=0.0929234671 tEnd=0.991938827 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=17 (108.229698,117.326683 108.324234,117.311951) t=0.991938827 tEnd=1 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=18 (108.324234,117.311951 108.440994,118.061005) t=0 tEnd=1 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=19 (108.440994,118.061005 108.142868,117.363983) t=0 tEnd=1 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=20 (108.142868,117.363983 108.185051,117.34594 108.229698,117.326683) t=0 tEnd=0.00542932628 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=20 (108.229698,117.326683 116.177424,113.898617 122.112564,106.083923) t=0.00542932628 tEnd=1 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=21 (122.112564,106.083923 122.158455,106.023499 122.181564,105.993111) t=0 tEnd=1 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=22 (122.181564,105.993111 122.18261,105.991737) t=0 tEnd=1 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=23 (122.18261,105.991737 123.136432,104.743399 122.609795,103.636162) t=0 tEnd=0.860440414 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=23 (122.609795,103.636162 122.524376,103.456572 122.400009,103.280693) t=0.860440414 tEnd=1 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=24 (122.400009,103.280693 123.018997,102.843002) t=0 tEnd=1 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=25 (123.018997,102.843002 123.079292,103.598701) t=0 tEnd=1 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=26 (123.079292,103.598701 122.609795,103.636162) t=0 tEnd=0.0479619043 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=26 (122.609795,103.636162 113.362167,104.373962) t=0.0479619043 tEnd=0.992657126 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=26 (113.362167,104.373962 113.290291,104.3797) t=0.992657126 tEnd=1 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=27 (113.290291,104.3797 113.229996,103.624001) t=0 tEnd=1 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=28 (113.229996,103.624001 113.430878,104.355003) t=0 tEnd=1 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=29 (113.430878,104.355003 113.395068,104.364844 113.362167,104.373962) t=0 tEnd=0.00597885639 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=29 (113.362167,104.373962 107.656922,105.955165 103.89183,109.226723) t=0.00597885639 tEnd=0.999923983 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=29 (103.89183,109.226723 103.891544,109.226974 103.891258,109.227226) t=0.999923983 tEnd=1 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=30 (103.891258,109.227226 103.393997,108.654999) t=0 tEnd=1 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=31 (103.393997,108.654999 103.891838,109.22673) t=0 tEnd=1 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=32 (103.891838,109.22673 103.891552,109.226982 103.891266,109.227234) t=0 tEnd=5.43505489e-05 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=32 (103.891266,109.227234 99.0549405,113.438713 97.6869507,118.970093) t=5.43505489e-05 tEnd=0.913746799 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=32 (97.6869507,118.970093 97.5578058,119.492282 97.4595795,120.026184) t=0.913746799 tEnd=1 windSum=? windValue=1
-----------------------x--------------00:  coinSeg/Span/PtT=32/63/63 endSpan=76 oppSeg/Span/PtT=29/75/75 oppEndSpan=58 MissingCoin
01:  coinSeg/Span/PtT=29/75/75 endSpan=58 oppSeg/Span/PtT=32/63/63 oppEndSpan=76 MissingCoin
02:  coinSeg/Span/PtT=32/63/63 endSpan=76 oppSeg/Span/PtT=29/75/75 oppEndSpan=58 MissingCoin
03:  coinSeg/Span/PtT=29/75/75 endSpan=58 oppSeg/Span/PtT=32/63/63 oppEndSpan=76 MissingCoin
SkOpSegment::debugShowActiveSpans id=1 (95.9684143,119.751823 97.2032471,113.040466 102.896156,108.083267) t=0 tEnd=1 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=2 (102.896156,108.083267 102.896736,108.082771) t=0 tEnd=1 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=3 (102.896736,108.082771 106.944885,104.564941 113.029114,102.892998) t=0 tEnd=1 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=4 (113.029114,102.892998 113.169701,102.868301) t=0 tEnd=1 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=5 (113.169701,102.868301 122.958702,102.087303) t=0 tEnd=1 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=6 (122.958702,102.087303 123.637985,102.405312) t=0 tEnd=1 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=7 (123.637985,102.405312 125.172625,104.575609 123.38755,106.912048) t=0 tEnd=0.999952051 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=7 (123.38755,106.912048 123.387466,106.912159 123.387383,106.91227) t=0.999952051 tEnd=1 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=8 (123.387383,106.91227 122.784996,106.452003) t=0 tEnd=1 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=9 (122.784996,106.452003 123.388428,106.910896) t=0 tEnd=1 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=10 (123.388428,106.910896 123.387993,106.911467 123.38755,106.912048) t=0 tEnd=0.0189869068 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=10 (123.38755,106.912048 123.365603,106.940906 123.320007,107.000946) t=0.0189869068 tEnd=1 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=11 (123.320007,107.000946 117.109985,115.177612 108.73912,118.758026) t=0 tEnd=1 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=12 (108.73912,118.758026 108.557755,118.810059) t=0 tEnd=1 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=13 (108.557755,118.810059 96.8307571,120.638062) t=0 tEnd=1 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=14 (96.8307571,120.638062 95.9684143,119.751823) t=0 tEnd=1 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=15 (97.4595795,120.026184 96.7139969,119.889008) t=0 tEnd=1 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=16 (96.7139969,119.889008 96.5972366,119.139954) t=0 tEnd=1 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=17 (96.5972366,119.139954 97.6869507,118.970093) t=0 tEnd=0.0929234671 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=17 (97.6869507,118.970093 108.229698,117.326683) t=0.0929234671 tEnd=0.991938827 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=17 (108.229698,117.326683 108.324234,117.311951) t=0.991938827 tEnd=1 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=18 (108.324234,117.311951 108.440994,118.061005) t=0 tEnd=1 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=19 (108.440994,118.061005 108.142868,117.363983) t=0 tEnd=1 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=20 (108.142868,117.363983 108.185051,117.34594 108.229698,117.326683) t=0 tEnd=0.00542932628 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=20 (108.229698,117.326683 116.177424,113.898617 122.112564,106.083923) t=0.00542932628 tEnd=1 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=21 (122.112564,106.083923 122.158455,106.023499 122.181564,105.993111) t=0 tEnd=1 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=22 (122.181564,105.993111 122.18261,105.991737) t=0 tEnd=1 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=23 (122.18261,105.991737 123.136432,104.743399 122.609795,103.636162) t=0 tEnd=0.860440414 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=23 (122.609795,103.636162 122.524376,103.456572 122.400009,103.280693) t=0.860440414 tEnd=1 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=24 (122.400009,103.280693 123.018997,102.843002) t=0 tEnd=1 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=25 (123.018997,102.843002 123.079292,103.598701) t=0 tEnd=1 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=26 (123.079292,103.598701 122.609795,103.636162) t=0 tEnd=0.0479619043 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=26 (122.609795,103.636162 113.362167,104.373962) t=0.0479619043 tEnd=0.992657126 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=26 (113.362167,104.373962 113.290291,104.3797) t=0.992657126 tEnd=1 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=27 (113.290291,104.3797 113.229996,103.624001) t=0 tEnd=1 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=28 (113.229996,103.624001 113.430878,104.355003) t=0 tEnd=1 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=29 (113.430878,104.355003 113.395068,104.364844 113.362167,104.373962) t=0 tEnd=0.00597885639 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=29 (113.362167,104.373962 107.656922,105.955165 103.89183,109.226723) t=0.00597885639 tEnd=0.999923983 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=29 (103.89183,109.226723 103.891544,109.226974 103.891258,109.227226) t=0.999923983 tEnd=1 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=30 (103.891258,109.227226 103.393997,108.654999) t=0 tEnd=1 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=31 (103.393997,108.654999 103.891838,109.22673) t=0 tEnd=1 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=32 (103.891838,109.22673 103.891552,109.226982 103.891266,109.227234) t=0 tEnd=5.43505489e-05 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=32 (103.891266,109.227234 99.0549405,113.438713 97.6869507,118.970093) t=5.43505489e-05 tEnd=0.913746799 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=32 (97.6869507,118.970093 97.5578058,119.492282 97.4595795,120.026184) t=0.913746799 tEnd=1 windSum=? windValue=1
-----------------------x--------------00:  coinSeg/Span/PtT=32/63/63 endSpan=76 oppSeg/Span/PtT=29/75/75 oppEndSpan=58 MissingCoin
01:  coinSeg/Span/PtT=29/75/75 endSpan=58 oppSeg/Span/PtT=32/63/63 oppEndSpan=76 MissingCoin
02:  coinSeg/Span/PtT=32/63/63 endSpan=76 oppSeg/Span/PtT=29/75/75 oppEndSpan=58 MissingCoin
03:  coinSeg/Span/PtT=29/75/75 endSpan=58 oppSeg/Span/PtT=32/63/63 oppEndSpan=76 MissingCoin
SkOpSegment::debugShowActiveSpans id=1 (95.9684143,119.751823 97.2032471,113.040466 102.896156,108.083267) t=0 tEnd=1 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=2 (102.896156,108.083267 102.896736,108.082771) t=0 tEnd=1 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=3 (102.896736,108.082771 106.944885,104.564941 113.029114,102.892998) t=0 tEnd=1 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=4 (113.029114,102.892998 113.169701,102.868301) t=0 tEnd=1 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=5 (113.169701,102.868301 122.958702,102.087303) t=0 tEnd=1 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=6 (122.958702,102.087303 123.637985,102.405312) t=0 tEnd=1 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=7 (123.637985,102.405312 125.172625,104.575609 123.38755,106.912048) t=0 tEnd=0.999952051 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=7 (123.38755,106.912048 123.387466,106.912159 123.387383,106.91227) t=0.999952051 tEnd=1 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=8 (123.387383,106.91227 122.784996,106.452003) t=0 tEnd=1 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=9 (122.784996,106.452003 123.388428,106.910896) t=0 tEnd=1 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=10 (123.388428,106.910896 123.387993,106.911467 123.38755,106.912048) t=0 tEnd=0.0189869068 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=10 (123.38755,106.912048 123.365603,106.940906 123.320007,107.000946) t=0.0189869068 tEnd=1 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=11 (123.320007,107.000946 117.109985,115.177612 108.73912,118.758026) t=0 tEnd=1 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=12 (108.73912,118.758026 108.557755,118.810059) t=0 tEnd=1 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=13 (108.557755,118.810059 96.8307571,120.638062) t=0 tEnd=1 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=14 (96.8307571,120.638062 95.9684143,119.751823) t=0 tEnd=1 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=15 (97.4595795,120.026184 96.7139969,119.889008) t=0 tEnd=1 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=16 (96.7139969,119.889008 96.5972366,119.139954) t=0 tEnd=1 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=17 (96.5972366,119.139954 97.6869507,118.970093) t=0 tEnd=0.0929234671 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=17 (97.6869507,118.970093 108.229698,117.326683) t=0.0929234671 tEnd=0.991938827 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=17 (108.229698,117.326683 108.324234,117.311951) t=0.991938827 tEnd=1 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=18 (108.324234,117.311951 108.440994,118.061005) t=0 tEnd=1 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=19 (108.440994,118.061005 108.142868,117.363983) t=0 tEnd=1 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=20 (108.142868,117.363983 108.185051,117.34594 108.229698,117.326683) t=0 tEnd=0.00542932628 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=20 (108.229698,117.326683 116.177424,113.898617 122.112564,106.083923) t=0.00542932628 tEnd=1 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=21 (122.112564,106.083923 122.158455,106.023499 122.181564,105.993111) t=0 tEnd=1 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=22 (122.181564,105.993111 122.18261,105.991737) t=0 tEnd=1 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=23 (122.18261,105.991737 123.136432,104.743399 122.609795,103.636162) t=0 tEnd=0.860440414 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=23 (122.609795,103.636162 122.524376,103.456572 122.400009,103.280693) t=0.860440414 tEnd=1 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=24 (122.400009,103.280693 123.018997,102.843002) t=0 tEnd=1 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=25 (123.018997,102.843002 123.079292,103.598701) t=0 tEnd=1 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=26 (123.079292,103.598701 122.609795,103.636162) t=0 tEnd=0.0479619043 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=26 (122.609795,103.636162 113.362167,104.373962) t=0.0479619043 tEnd=0.992657126 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=26 (113.362167,104.373962 113.290291,104.3797) t=0.992657126 tEnd=1 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=27 (113.290291,104.3797 113.229996,103.624001) t=0 tEnd=1 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=28 (113.229996,103.624001 113.430878,104.355003) t=0 tEnd=1 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=29 (113.430878,104.355003 113.395068,104.364844 113.362167,104.373962) t=0 tEnd=0.00597885639 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=29 (113.362167,104.373962 107.656922,105.955165 103.89183,109.226723) t=0.00597885639 tEnd=0.999923983 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=29 (103.89183,109.226723 103.891544,109.226974 103.891258,109.227226) t=0.999923983 tEnd=1 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=30 (103.891258,109.227226 103.393997,108.654999) t=0 tEnd=1 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=31 (103.393997,108.654999 103.891838,109.22673) t=0 tEnd=1 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=32 (103.891838,109.22673 103.891552,109.226982 103.891266,109.227234) t=0 tEnd=5.43505489e-05 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=32 (103.891266,109.227234 99.0549405,113.438713 97.6869507,118.970093) t=5.43505489e-05 tEnd=0.913746799 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=32 (97.6869507,118.970093 97.5578058,119.492282 97.4595795,120.026184) t=0.913746799 tEnd=1 windSum=? windValue=1
-----------------------x--------------00:  coinSeg/Span/PtT=32/63/63 endSpan=76 oppSeg/Span/PtT=29/75/75 oppEndSpan=58 MissingCoin
01:  coinSeg/Span/PtT=29/75/75 endSpan=58 oppSeg/Span/PtT=32/63/63 oppEndSpan=76 MissingCoin
02:  coinSeg/Span/PtT=32/63/63 endSpan=76 oppSeg/Span/PtT=29/75/75 oppEndSpan=58 MissingCoin
03:  coinSeg/Span/PtT=29/75/75 endSpan=58 oppSeg/Span/PtT=32/63/63 oppEndSpan=76 MissingCoin
SkOpSegment::debugShowActiveSpans id=1 (95.9684143,119.751823 97.2032471,113.040466 102.896156,108.083267) t=0 tEnd=1 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=2 (102.896156,108.083267 102.896736,108.082771) t=0 tEnd=1 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=3 (102.896736,108.082771 106.944885,104.564941 113.029114,102.892998) t=0 tEnd=1 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=4 (113.029114,102.892998 113.169701,102.868301) t=0 tEnd=1 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=5 (113.169701,102.868301 122.958702,102.087303) t=0 tEnd=1 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=6 (122.958702,102.087303 123.637985,102.405312) t=0 tEnd=1 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=7 (123.637985,102.405312 125.172625,104.575609 123.38755,106.912048) t=0 tEnd=0.999952051 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=7 (123.38755,106.912048 123.387466,106.912159 123.387383,106.91227) t=0.999952051 tEnd=1 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=8 (123.387383,106.91227 122.784996,106.452003) t=0 tEnd=1 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=9 (122.784996,106.452003 123.388428,106.910896) t=0 tEnd=1 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=10 (123.388428,106.910896 123.387993,106.911467 123.38755,106.912048) t=0 tEnd=0.0189869068 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=10 (123.38755,106.912048 123.365603,106.940906 123.320007,107.000946) t=0.0189869068 tEnd=1 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=11 (123.320007,107.000946 117.109985,115.177612 108.73912,118.758026) t=0 tEnd=1 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=12 (108.73912,118.758026 108.557755,118.810059) t=0 tEnd=1 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=13 (108.557755,118.810059 96.8307571,120.638062) t=0 tEnd=1 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=14 (96.8307571,120.638062 95.9684143,119.751823) t=0 tEnd=1 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=15 (97.4595795,120.026184 96.7139969,119.889008) t=0 tEnd=1 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=16 (96.7139969,119.889008 96.5972366,119.139954) t=0 tEnd=1 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=17 (96.5972366,119.139954 97.6869507,118.970093) t=0 tEnd=0.0929234671 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=17 (97.6869507,118.970093 108.229698,117.326683) t=0.0929234671 tEnd=0.991938827 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=17 (108.229698,117.326683 108.324234,117.311951) t=0.991938827 tEnd=1 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=18 (108.324234,117.311951 108.440994,118.061005) t=0 tEnd=1 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=19 (108.440994,118.061005 108.142868,117.363983) t=0 tEnd=1 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=20 (108.142868,117.363983 108.185051,117.34594 108.229698,117.326683) t=0 tEnd=0.00542932628 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=20 (108.229698,117.326683 116.177424,113.898617 122.112564,106.083923) t=0.00542932628 tEnd=1 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=21 (122.112564,106.083923 122.158455,106.023499 122.181564,105.993111) t=0 tEnd=1 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=22 (122.181564,105.993111 122.18261,105.991737) t=0 tEnd=1 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=23 (122.18261,105.991737 123.136432,104.743399 122.609795,103.636162) t=0 tEnd=0.860440414 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=23 (122.609795,103.636162 122.524376,103.456572 122.400009,103.280693) t=0.860440414 tEnd=1 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=24 (122.400009,103.280693 123.018997,102.843002) t=0 tEnd=1 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=25 (123.018997,102.843002 123.079292,103.598701) t=0 tEnd=1 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=26 (123.079292,103.598701 122.609795,103.636162) t=0 tEnd=0.0479619043 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=26 (122.609795,103.636162 113.362167,104.373962) t=0.0479619043 tEnd=0.992657126 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=26 (113.362167,104.373962 113.290291,104.3797) t=0.992657126 tEnd=1 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=27 (113.290291,104.3797 113.229996,103.624001) t=0 tEnd=1 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=28 (113.229996,103.624001 113.430878,104.355003) t=0 tEnd=1 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=29 (113.430878,104.355003 113.395068,104.364844 113.362167,104.373962) t=0 tEnd=0.00597885639 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=29 (113.362167,104.373962 107.656922,105.955165 103.89183,109.226723) t=0.00597885639 tEnd=0.999923983 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=29 (103.89183,109.226723 103.891544,109.226974 103.891258,109.227226) t=0.999923983 tEnd=1 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=30 (103.891258,109.227226 103.393997,108.654999) t=0 tEnd=1 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=31 (103.393997,108.654999 103.891838,109.22673) t=0 tEnd=1 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=32 (103.891838,109.22673 103.891552,109.226982 103.891266,109.227234) t=0 tEnd=5.43505489e-05 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=32 (103.891266,109.227234 99.0549405,113.438713 97.6869507,118.970093) t=5.43505489e-05 tEnd=0.913746799 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=32 (97.6869507,118.970093 97.5578058,119.492282 97.4595795,120.026184) t=0.913746799 tEnd=1 windSum=? windValue=1
-----------------------x--------------00:  coinSeg/Span/PtT=32/63/63 endSpan=76 oppSeg/Span/PtT=29/75/75 oppEndSpan=58 MissingCoin
01:  coinSeg/Span/PtT=29/75/75 endSpan=58 oppSeg/Span/PtT=32/63/63 oppEndSpan=76 MissingCoin
02:  coinSeg/Span/PtT=32/63/63 endSpan=76 oppSeg/Span/PtT=29/75/75 oppEndSpan=58 MissingCoin
03:  coinSeg/Span/PtT=29/75/75 endSpan=58 oppSeg/Span/PtT=32/63/63 oppEndSpan=76 MissingCoin
SkOpSegment::debugShowActiveSpans id=1 (95.9684143,119.751823 97.2032471,113.040466 102.896156,108.083267) t=0 tEnd=1 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=2 (102.896156,108.083267 102.896736,108.082771) t=0 tEnd=1 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=3 (102.896736,108.082771 106.944885,104.564941 113.029114,102.892998) t=0 tEnd=1 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=4 (113.029114,102.892998 113.169701,102.868301) t=0 tEnd=1 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=5 (113.169701,102.868301 122.958702,102.087303) t=0 tEnd=1 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=6 (122.958702,102.087303 123.637985,102.405312) t=0 tEnd=1 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=7 (123.637985,102.405312 125.172625,104.575609 123.38755,106.912048) t=0 tEnd=0.999952051 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=7 (123.38755,106.912048 123.387466,106.912159 123.387383,106.91227) t=0.999952051 tEnd=1 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=8 (123.387383,106.91227 122.784996,106.452003) t=0 tEnd=1 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=9 (122.784996,106.452003 123.388428,106.910896) t=0 tEnd=1 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=10 (123.388428,106.910896 123.387993,106.911467 123.38755,106.912048) t=0 tEnd=0.0189869068 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=10 (123.38755,106.912048 123.365603,106.940906 123.320007,107.000946) t=0.0189869068 tEnd=1 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=11 (123.320007,107.000946 117.109985,115.177612 108.73912,118.758026) t=0 tEnd=1 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=12 (108.73912,118.758026 108.557755,118.810059) t=0 tEnd=1 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=13 (108.557755,118.810059 96.8307571,120.638062) t=0 tEnd=1 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=14 (96.8307571,120.638062 95.9684143,119.751823) t=0 tEnd=1 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=15 (97.4595795,120.026184 96.7139969,119.889008) t=0 tEnd=1 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=16 (96.7139969,119.889008 96.5972366,119.139954) t=0 tEnd=1 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=17 (96.5972366,119.139954 97.6869507,118.970093) t=0 tEnd=0.0929234671 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=17 (97.6869507,118.970093 108.229698,117.326683) t=0.0929234671 tEnd=0.991938827 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=17 (108.229698,117.326683 108.324234,117.311951) t=0.991938827 tEnd=1 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=18 (108.324234,117.311951 108.440994,118.061005) t=0 tEnd=1 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=19 (108.440994,118.061005 108.142868,117.363983) t=0 tEnd=1 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=20 (108.142868,117.363983 108.185051,117.34594 108.229698,117.326683) t=0 tEnd=0.00542932628 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=20 (108.229698,117.326683 116.177424,113.898617 122.112564,106.083923) t=0.00542932628 tEnd=1 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=21 (122.112564,106.083923 122.158455,106.023499 122.181564,105.993111) t=0 tEnd=1 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=22 (122.181564,105.993111 122.18261,105.991737) t=0 tEnd=1 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=23 (122.18261,105.991737 123.136432,104.743399 122.609795,103.636162) t=0 tEnd=0.860440414 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=23 (122.609795,103.636162 122.524376,103.456572 122.400009,103.280693) t=0.860440414 tEnd=1 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=24 (122.400009,103.280693 123.018997,102.843002) t=0 tEnd=1 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=25 (123.018997,102.843002 123.079292,103.598701) t=0 tEnd=1 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=26 (123.079292,103.598701 122.609795,103.636162) t=0 tEnd=0.0479619043 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=26 (122.609795,103.636162 113.362167,104.373962) t=0.0479619043 tEnd=0.992657126 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=26 (113.362167,104.373962 113.290291,104.3797) t=0.992657126 tEnd=1 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=27 (113.290291,104.3797 113.229996,103.624001) t=0 tEnd=1 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=28 (113.229996,103.624001 113.430878,104.355003) t=0 tEnd=1 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=29 (113.430878,104.355003 113.395068,104.364844 113.362167,104.373962) t=0 tEnd=0.00597885639 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=29 (113.362167,104.373962 107.656922,105.955165 103.89183,109.226723) t=0.00597885639 tEnd=0.999923983 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=29 (103.89183,109.226723 103.891544,109.226974 103.891258,109.227226) t=0.999923983 tEnd=1 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=30 (103.891258,109.227226 103.393997,108.654999) t=0 tEnd=1 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=31 (103.393997,108.654999 103.891838,109.22673) t=0 tEnd=1 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=32 (103.891838,109.22673 103.891552,109.226982 103.891266,109.227234) t=0 tEnd=5.43505489e-05 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=32 (103.891266,109.227234 99.0549405,113.438713 97.6869507,118.970093) t=5.43505489e-05 tEnd=0.913746799 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=32 (97.6869507,118.970093 97.5578058,119.492282 97.4595795,120.026184) t=0.913746799 tEnd=1 windSum=? windValue=1
-----------------------x--------------00:  coinSeg/Span/PtT=32/63/63 endSpan=76 oppSeg/Span/PtT=29/75/75 oppEndSpan=58 MissingCoin
01:  coinSeg/Span/PtT=29/75/75 endSpan=58 oppSeg/Span/PtT=32/63/63 oppEndSpan=76 MissingCoin
02:  coinSeg/Span/PtT=32/63/63 endSpan=76 oppSeg/Span/PtT=29/75/75 oppEndSpan=58 MissingCoin
03:  coinSeg/Span/PtT=29/75/75 endSpan=58 oppSeg/Span/PtT=32/63/63 oppEndSpan=76 MissingCoin
SkOpSegment::debugShowActiveSpans id=1 (95.9684143,119.751823 97.2032471,113.040466 102.896156,108.083267) t=0 tEnd=1 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=2 (102.896156,108.083267 102.896736,108.082771) t=0 tEnd=1 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=3 (102.896736,108.082771 106.944885,104.564941 113.029114,102.892998) t=0 tEnd=1 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=4 (113.029114,102.892998 113.169701,102.868301) t=0 tEnd=1 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=5 (113.169701,102.868301 122.958702,102.087303) t=0 tEnd=1 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=6 (122.958702,102.087303 123.637985,102.405312) t=0 tEnd=1 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=7 (123.637985,102.405312 125.172625,104.575609 123.38755,106.912048) t=0 tEnd=0.999952051 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=7 (123.38755,106.912048 123.387466,106.912159 123.387383,106.91227) t=0.999952051 tEnd=1 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=8 (123.387383,106.91227 122.784996,106.452003) t=0 tEnd=1 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=9 (122.784996,106.452003 123.388428,106.910896) t=0 tEnd=1 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=10 (123.388428,106.910896 123.387993,106.911467 123.38755,106.912048) t=0 tEnd=0.0189869068 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=10 (123.38755,106.912048 123.365603,106.940906 123.320007,107.000946) t=0.0189869068 tEnd=1 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=11 (123.320007,107.000946 117.109985,115.177612 108.73912,118.758026) t=0 tEnd=1 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=12 (108.73912,118.758026 108.557755,118.810059) t=0 tEnd=1 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=13 (108.557755,118.810059 96.8307571,120.638062) t=0 tEnd=1 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=14 (96.8307571,120.638062 95.9684143,119.751823) t=0 tEnd=1 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=15 (97.4595795,120.026184 96.7139969,119.889008) t=0 tEnd=1 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=16 (96.7139969,119.889008 96.5972366,119.139954) t=0 tEnd=1 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=17 (96.5972366,119.139954 97.6869507,118.970093) t=0 tEnd=0.0929234671 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=17 (97.6869507,118.970093 108.229698,117.326683) t=0.0929234671 tEnd=0.991938827 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=17 (108.229698,117.326683 108.324234,117.311951) t=0.991938827 tEnd=1 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=18 (108.324234,117.311951 108.440994,118.061005) t=0 tEnd=1 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=19 (108.440994,118.061005 108.142868,117.363983) t=0 tEnd=1 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=20 (108.142868,117.363983 108.185051,117.34594 108.229698,117.326683) t=0 tEnd=0.00542932628 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=20 (108.229698,117.326683 116.177424,113.898617 122.112564,106.083923) t=0.00542932628 tEnd=1 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=21 (122.112564,106.083923 122.158455,106.023499 122.181564,105.993111) t=0 tEnd=1 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=22 (122.181564,105.993111 122.18261,105.991737) t=0 tEnd=1 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=23 (122.18261,105.991737 123.136432,104.743399 122.609795,103.636162) t=0 tEnd=0.860440414 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=23 (122.609795,103.636162 122.524376,103.456572 122.400009,103.280693) t=0.860440414 tEnd=1 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=24 (122.400009,103.280693 123.018997,102.843002) t=0 tEnd=1 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=25 (123.018997,102.843002 123.079292,103.598701) t=0 tEnd=1 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=26 (123.079292,103.598701 122.609795,103.636162) t=0 tEnd=0.0479619043 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=26 (122.609795,103.636162 113.362167,104.373962) t=0.0479619043 tEnd=0.992657126 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=26 (113.362167,104.373962 113.290291,104.3797) t=0.992657126 tEnd=1 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=27 (113.290291,104.3797 113.229996,103.624001) t=0 tEnd=1 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=28 (113.229996,103.624001 113.430878,104.355003) t=0 tEnd=1 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=29 (113.430878,104.355003 113.395068,104.364844 113.362167,104.373962) t=0 tEnd=0.00597885639 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=29 (113.362167,104.373962 107.656922,105.955165 103.89183,109.226723) t=0.00597885639 tEnd=0.999923983 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=29 (103.89183,109.226723 103.891544,109.226974 103.891258,109.227226) t=0.999923983 tEnd=1 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=30 (103.891258,109.227226 103.393997,108.654999) t=0 tEnd=1 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=31 (103.393997,108.654999 103.891838,109.22673) t=0 tEnd=1 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=32 (103.891838,109.22673 103.891552,109.226982 103.891266,109.227234) t=0 tEnd=5.43505489e-05 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=32 (103.891266,109.227234 99.0549405,113.438713 97.6869507,118.970093) t=5.43505489e-05 tEnd=0.913746799 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=32 (97.6869507,118.970093 97.5578058,119.492282 97.4595795,120.026184) t=0.913746799 tEnd=1 windSum=? windValue=1
-----------------------x--------------00:  coinSeg/Span/PtT=32/63/63 endSpan=76 oppSeg/Span/PtT=29/75/75 oppEndSpan=58 MissingCoin
01:  coinSeg/Span/PtT=29/75/75 endSpan=58 oppSeg/Span/PtT=32/63/63 oppEndSpan=76 MissingCoin
02:  coinSeg/Span/PtT=32/63/63 endSpan=76 oppSeg/Span/PtT=29/75/75 oppEndSpan=58 MissingCoin
03:  coinSeg/Span/PtT=29/75/75 endSpan=58 oppSeg/Span/PtT=32/63/63 oppEndSpan=76 MissingCoin
SkOpSegment::debugShowActiveSpans id=1 (95.9684143,119.751823 97.2032471,113.040466 102.896156,108.083267) t=0 tEnd=1 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=2 (102.896156,108.083267 102.896736,108.082771) t=0 tEnd=1 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=3 (102.896736,108.082771 106.944885,104.564941 113.029114,102.892998) t=0 tEnd=1 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=4 (113.029114,102.892998 113.169701,102.868301) t=0 tEnd=1 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=5 (113.169701,102.868301 122.958702,102.087303) t=0 tEnd=1 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=6 (122.958702,102.087303 123.637985,102.405312) t=0 tEnd=1 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=7 (123.637985,102.405312 125.172625,104.575609 123.38755,106.912048) t=0 tEnd=0.999952051 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=7 (123.38755,106.912048 123.387466,106.912159 123.387383,106.91227) t=0.999952051 tEnd=1 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=8 (123.387383,106.91227 122.784996,106.452003) t=0 tEnd=1 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=9 (122.784996,106.452003 123.388428,106.910896) t=0 tEnd=1 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=10 (123.388428,106.910896 123.387993,106.911467 123.38755,106.912048) t=0 tEnd=0.0189869068 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=10 (123.38755,106.912048 123.365603,106.940906 123.320007,107.000946) t=0.0189869068 tEnd=1 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=11 (123.320007,107.000946 117.109985,115.177612 108.73912,118.758026) t=0 tEnd=1 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=12 (108.73912,118.758026 108.557755,118.810059) t=0 tEnd=1 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=13 (108.557755,118.810059 96.8307571,120.638062) t=0 tEnd=1 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=14 (96.8307571,120.638062 95.9684143,119.751823) t=0 tEnd=1 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=15 (97.4595795,120.026184 96.7139969,119.889008) t=0 tEnd=1 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=16 (96.7139969,119.889008 96.5972366,119.139954) t=0 tEnd=1 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=17 (96.5972366,119.139954 97.6869507,118.970093) t=0 tEnd=0.0929234671 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=17 (97.6869507,118.970093 108.229698,117.326683) t=0.0929234671 tEnd=0.991938827 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=17 (108.229698,117.326683 108.324234,117.311951) t=0.991938827 tEnd=1 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=18 (108.324234,117.311951 108.440994,118.061005) t=0 tEnd=1 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=19 (108.440994,118.061005 108.142868,117.363983) t=0 tEnd=1 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=20 (108.142868,117.363983 108.185051,117.34594 108.229698,117.326683) t=0 tEnd=0.00542932628 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=20 (108.229698,117.326683 116.177424,113.898617 122.112564,106.083923) t=0.00542932628 tEnd=1 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=21 (122.112564,106.083923 122.158455,106.023499 122.181564,105.993111) t=0 tEnd=1 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=22 (122.181564,105.993111 122.18261,105.991737) t=0 tEnd=1 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=23 (122.18261,105.991737 123.136432,104.743399 122.609795,103.636162) t=0 tEnd=0.860440414 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=23 (122.609795,103.636162 122.524376,103.456572 122.400009,103.280693) t=0.860440414 tEnd=1 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=24 (122.400009,103.280693 123.018997,102.843002) t=0 tEnd=1 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=25 (123.018997,102.843002 123.079292,103.598701) t=0 tEnd=1 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=26 (123.079292,103.598701 122.609795,103.636162) t=0 tEnd=0.0479619043 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=26 (122.609795,103.636162 113.362167,104.373962) t=0.0479619043 tEnd=0.992657126 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=26 (113.362167,104.373962 113.290291,104.3797) t=0.992657126 tEnd=1 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=27 (113.290291,104.3797 113.229996,103.624001) t=0 tEnd=1 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=28 (113.229996,103.624001 113.430878,104.355003) t=0 tEnd=1 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=29 (113.430878,104.355003 113.395068,104.364844 113.362167,104.373962) t=0 tEnd=0.00597885639 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=29 (113.362167,104.373962 107.656922,105.955165 103.89183,109.226723) t=0.00597885639 tEnd=0.999923983 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=29 (103.89183,109.226723 103.891544,109.226974 103.891258,109.227226) t=0.999923983 tEnd=1 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=30 (103.891258,109.227226 103.393997,108.654999) t=0 tEnd=1 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=31 (103.393997,108.654999 103.891838,109.22673) t=0 tEnd=1 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=32 (103.891838,109.22673 103.891552,109.226982 103.891266,109.227234) t=0 tEnd=5.43505489e-05 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=32 (103.891266,109.227234 99.0549405,113.438713 97.6869507,118.970093) t=5.43505489e-05 tEnd=0.913746799 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=32 (97.6869507,118.970093 97.5578058,119.492282 97.4595795,120.026184) t=0.913746799 tEnd=1 windSum=? windValue=1
-----------------------x--------------00:  coinSeg/Span/PtT=32/63/63 endSpan=76 oppSeg/Span/PtT=29/75/75 oppEndSpan=58 MissingCoin
01:  coinSeg/Span/PtT=29/75/75 endSpan=58 oppSeg/Span/PtT=32/63/63 oppEndSpan=76 MissingCoin
02:  coinSeg/Span/PtT=32/63/63 endSpan=76 oppSeg/Span/PtT=29/75/75 oppEndSpan=58 MissingCoin
03:  coinSeg/Span/PtT=29/75/75 endSpan=58 oppSeg/Span/PtT=32/63/63 oppEndSpan=76 MissingCoin
SkOpSegment::debugShowActiveSpans id=1 (95.9684143,119.751823 97.2032471,113.040466 102.896156,108.083267) t=0 tEnd=1 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=2 (102.896156,108.083267 102.896736,108.082771) t=0 tEnd=1 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=3 (102.896736,108.082771 106.944885,104.564941 113.029114,102.892998) t=0 tEnd=1 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=4 (113.029114,102.892998 113.169701,102.868301) t=0 tEnd=1 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=5 (113.169701,102.868301 122.958702,102.087303) t=0 tEnd=1 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=6 (122.958702,102.087303 123.637985,102.405312) t=0 tEnd=1 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=7 (123.637985,102.405312 125.172625,104.575609 123.38755,106.912048) t=0 tEnd=0.999952051 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=7 (123.38755,106.912048 123.387466,106.912159 123.387383,106.91227) t=0.999952051 tEnd=1 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=8 (123.387383,106.91227 122.784996,106.452003) t=0 tEnd=1 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=9 (122.784996,106.452003 123.388428,106.910896) t=0 tEnd=1 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=10 (123.388428,106.910896 123.387993,106.911467 123.38755,106.912048) t=0 tEnd=0.0189869068 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=10 (123.38755,106.912048 123.365603,106.940906 123.320007,107.000946) t=0.0189869068 tEnd=1 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=11 (123.320007,107.000946 117.109985,115.177612 108.73912,118.758026) t=0 tEnd=1 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=12 (108.73912,118.758026 108.557755,118.810059) t=0 tEnd=1 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=13 (108.557755,118.810059 96.8307571,120.638062) t=0 tEnd=1 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=14 (96.8307571,120.638062 95.9684143,119.751823) t=0 tEnd=1 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=15 (97.4595795,120.026184 96.7139969,119.889008) t=0 tEnd=1 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=16 (96.7139969,119.889008 96.5972366,119.139954) t=0 tEnd=1 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=17 (96.5972366,119.139954 97.6869507,118.970093) t=0 tEnd=0.0929234671 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=17 (97.6869507,118.970093 108.229698,117.326683) t=0.0929234671 tEnd=0.991938827 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=17 (108.229698,117.326683 108.324234,117.311951) t=0.991938827 tEnd=1 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=18 (108.324234,117.311951 108.440994,118.061005) t=0 tEnd=1 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=19 (108.440994,118.061005 108.142868,117.363983) t=0 tEnd=1 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=20 (108.142868,117.363983 108.185051,117.34594 108.229698,117.326683) t=0 tEnd=0.00542932628 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=20 (108.229698,117.326683 116.177424,113.898617 122.112564,106.083923) t=0.00542932628 tEnd=1 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=21 (122.112564,106.083923 122.158455,106.023499 122.181564,105.993111) t=0 tEnd=1 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=22 (122.181564,105.993111 122.18261,105.991737) t=0 tEnd=1 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=23 (122.18261,105.991737 123.136432,104.743399 122.609795,103.636162) t=0 tEnd=0.860440414 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=23 (122.609795,103.636162 122.524376,103.456572 122.400009,103.280693) t=0.860440414 tEnd=1 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=24 (122.400009,103.280693 123.018997,102.843002) t=0 tEnd=1 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=25 (123.018997,102.843002 123.079292,103.598701) t=0 tEnd=1 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=26 (123.079292,103.598701 122.609795,103.636162) t=0 tEnd=0.0479619043 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=26 (122.609795,103.636162 113.362167,104.373962) t=0.0479619043 tEnd=0.992657126 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=26 (113.362167,104.373962 113.290291,104.3797) t=0.992657126 tEnd=1 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=27 (113.290291,104.3797 113.229996,103.624001) t=0 tEnd=1 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=28 (113.229996,103.624001 113.430878,104.355003) t=0 tEnd=1 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=29 (113.430878,104.355003 113.395068,104.364844 113.362167,104.373962) t=0 tEnd=0.00597885639 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=29 (113.362167,104.373962 107.656922,105.955165 103.89183,109.226723) t=0.00597885639 tEnd=0.999923983 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=29 (103.89183,109.226723 103.891544,109.226974 103.891258,109.227226) t=0.999923983 tEnd=1 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=30 (103.891258,109.227226 103.393997,108.654999) t=0 tEnd=1 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=31 (103.393997,108.654999 103.891838,109.22673) t=0 tEnd=1 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=32 (103.891838,109.22673 103.891552,109.226982 103.891266,109.227234) t=0 tEnd=5.43505489e-05 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=32 (103.891266,109.227234 99.0549405,113.438713 97.6869507,118.970093) t=5.43505489e-05 tEnd=0.913746799 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=32 (97.6869507,118.970093 97.5578058,119.492282 97.4595795,120.026184) t=0.913746799 tEnd=1 windSum=? windValue=1
-----------------------x--------------00:  coinSeg/Span/PtT=32/63/63 endSpan=76 oppSeg/Span/PtT=29/75/75 oppEndSpan=58 MissingCoin
01:  coinSeg/Span/PtT=29/75/75 endSpan=58 oppSeg/Span/PtT=32/63/63 oppEndSpan=76 MissingCoin
02:  coinSeg/Span/PtT=32/63/63 endSpan=76 oppSeg/Span/PtT=29/75/75 oppEndSpan=58 MissingCoin
03:  coinSeg/Span/PtT=29/75/75 endSpan=58 oppSeg/Span/PtT=32/63/63 oppEndSpan=76 MissingCoin
SkOpSegment::debugShowActiveSpans id=1 (95.9684143,119.751823 97.2032471,113.040466 102.896156,108.083267) t=0 tEnd=1 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=2 (102.896156,108.083267 102.896736,108.082771) t=0 tEnd=1 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=3 (102.896736,108.082771 106.944885,104.564941 113.029114,102.892998) t=0 tEnd=1 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=4 (113.029114,102.892998 113.169701,102.868301) t=0 tEnd=1 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=5 (113.169701,102.868301 122.958702,102.087303) t=0 tEnd=1 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=6 (122.958702,102.087303 123.637985,102.405312) t=0 tEnd=1 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=7 (123.637985,102.405312 125.172625,104.575609 123.38755,106.912048) t=0 tEnd=0.999952051 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=7 (123.38755,106.912048 123.387466,106.912159 123.387383,106.91227) t=0.999952051 tEnd=1 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=8 (123.387383,106.91227 122.784996,106.452003) t=0 tEnd=1 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=9 (122.784996,106.452003 123.388428,106.910896) t=0 tEnd=1 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=10 (123.388428,106.910896 123.387993,106.911467 123.38755,106.912048) t=0 tEnd=0.0189869068 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=10 (123.38755,106.912048 123.365603,106.940906 123.320007,107.000946) t=0.0189869068 tEnd=1 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=11 (123.320007,107.000946 117.109985,115.177612 108.73912,118.758026) t=0 tEnd=1 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=12 (108.73912,118.758026 108.557755,118.810059) t=0 tEnd=1 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=13 (108.557755,118.810059 96.8307571,120.638062) t=0 tEnd=1 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=14 (96.8307571,120.638062 95.9684143,119.751823) t=0 tEnd=1 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=15 (97.4595795,120.026184 96.7139969,119.889008) t=0 tEnd=1 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=16 (96.7139969,119.889008 96.5972366,119.139954) t=0 tEnd=1 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=17 (96.5972366,119.139954 97.6869507,118.970093) t=0 tEnd=0.0929234671 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=17 (97.6869507,118.970093 108.229698,117.326683) t=0.0929234671 tEnd=0.991938827 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=17 (108.229698,117.326683 108.324234,117.311951) t=0.991938827 tEnd=1 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=18 (108.324234,117.311951 108.440994,118.061005) t=0 tEnd=1 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=19 (108.440994,118.061005 108.142868,117.363983) t=0 tEnd=1 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=20 (108.142868,117.363983 108.185051,117.34594 108.229698,117.326683) t=0 tEnd=0.00542932628 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=20 (108.229698,117.326683 116.177424,113.898617 122.112564,106.083923) t=0.00542932628 tEnd=1 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=21 (122.112564,106.083923 122.158455,106.023499 122.181564,105.993111) t=0 tEnd=1 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=22 (122.181564,105.993111 122.18261,105.991737) t=0 tEnd=1 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=23 (122.18261,105.991737 123.136432,104.743399 122.609795,103.636162) t=0 tEnd=0.860440414 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=23 (122.609795,103.636162 122.524376,103.456572 122.400009,103.280693) t=0.860440414 tEnd=1 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=24 (122.400009,103.280693 123.018997,102.843002) t=0 tEnd=1 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=25 (123.018997,102.843002 123.079292,103.598701) t=0 tEnd=1 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=26 (123.079292,103.598701 122.609795,103.636162) t=0 tEnd=0.0479619043 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=26 (122.609795,103.636162 113.362167,104.373962) t=0.0479619043 tEnd=0.992657126 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=26 (113.362167,104.373962 113.290291,104.3797) t=0.992657126 tEnd=1 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=27 (113.290291,104.3797 113.229996,103.624001) t=0 tEnd=1 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=28 (113.229996,103.624001 113.430878,104.355003) t=0 tEnd=1 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=29 (113.430878,104.355003 113.395068,104.364844 113.362167,104.373962) t=0 tEnd=0.00597885639 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=29 (113.362167,104.373962 107.656922,105.955165 103.89183,109.226723) t=0.00597885639 tEnd=0.999923983 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=29 (103.89183,109.226723 103.891544,109.226974 103.891258,109.227226) t=0.999923983 tEnd=1 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=30 (103.891258,109.227226 103.393997,108.654999) t=0 tEnd=1 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=31 (103.393997,108.654999 103.891838,109.22673) t=0 tEnd=1 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=32 (103.891838,109.22673 103.891552,109.226982 103.891266,109.227234) t=0 tEnd=5.43505489e-05 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=32 (103.891266,109.227234 99.0549405,113.438713 97.6869507,118.970093) t=5.43505489e-05 tEnd=0.913746799 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=32 (97.6869507,118.970093 97.5578058,119.492282 97.4595795,120.026184) t=0.913746799 tEnd=1 windSum=? windValue=1
SkOpSegment::missingCoincidence coinSpan=63 endSpan=76 oppSpan=75 oppEndSpan=58
-----------------xx--x----------------00:  coinSeg/Span/PtT=32/63/63 endSpan=76 Fail
01:  seg/base=32/63 seg/base=29/75 MarkCoinStart
02:  seg/base=32/76 seg/base=29/58 MarkCoinEnd
SkOpSegment::debugShowActiveSpans id=1 (95.9684143,119.751823 97.2032471,113.040466 102.896156,108.083267) t=0 tEnd=1 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=2 (102.896156,108.083267 102.896736,108.082771) t=0 tEnd=1 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=3 (102.896736,108.082771 106.944885,104.564941 113.029114,102.892998) t=0 tEnd=1 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=4 (113.029114,102.892998 113.169701,102.868301) t=0 tEnd=1 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=5 (113.169701,102.868301 122.958702,102.087303) t=0 tEnd=1 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=6 (122.958702,102.087303 123.637985,102.405312) t=0 tEnd=1 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=7 (123.637985,102.405312 125.172625,104.575609 123.38755,106.912048) t=0 tEnd=0.999952051 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=7 (123.38755,106.912048 123.387466,106.912159 123.387383,106.91227) t=0.999952051 tEnd=1 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=8 (123.387383,106.91227 122.784996,106.452003) t=0 tEnd=1 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=9 (122.784996,106.452003 123.388428,106.910896) t=0 tEnd=1 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=10 (123.388428,106.910896 123.387993,106.911467 123.38755,106.912048) t=0 tEnd=0.0189869068 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=10 (123.38755,106.912048 123.365603,106.940906 123.320007,107.000946) t=0.0189869068 tEnd=1 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=11 (123.320007,107.000946 117.109985,115.177612 108.73912,118.758026) t=0 tEnd=1 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=12 (108.73912,118.758026 108.557755,118.810059) t=0 tEnd=1 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=13 (108.557755,118.810059 96.8307571,120.638062) t=0 tEnd=1 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=14 (96.8307571,120.638062 95.9684143,119.751823) t=0 tEnd=1 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=15 (97.4595795,120.026184 96.7139969,119.889008) t=0 tEnd=1 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=16 (96.7139969,119.889008 96.5972366,119.139954) t=0 tEnd=1 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=17 (96.5972366,119.139954 97.6869507,118.970093) t=0 tEnd=0.0929234671 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=17 (97.6869507,118.970093 108.229698,117.326683) t=0.0929234671 tEnd=0.991938827 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=17 (108.229698,117.326683 108.324234,117.311951) t=0.991938827 tEnd=1 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=18 (108.324234,117.311951 108.440994,118.061005) t=0 tEnd=1 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=19 (108.440994,118.061005 108.142868,117.363983) t=0 tEnd=1 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=20 (108.142868,117.363983 108.185051,117.34594 108.229698,117.326683) t=0 tEnd=0.00542932628 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=20 (108.229698,117.326683 116.177424,113.898617 122.112564,106.083923) t=0.00542932628 tEnd=1 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=21 (122.112564,106.083923 122.158455,106.023499 122.181564,105.993111) t=0 tEnd=1 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=22 (122.181564,105.993111 122.18261,105.991737) t=0 tEnd=1 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=23 (122.18261,105.991737 123.136432,104.743399 122.609795,103.636162) t=0 tEnd=0.860440414 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=23 (122.609795,103.636162 122.524376,103.456572 122.400009,103.280693) t=0.860440414 tEnd=1 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=24 (122.400009,103.280693 123.018997,102.843002) t=0 tEnd=1 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=25 (123.018997,102.843002 123.079292,103.598701) t=0 tEnd=1 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=26 (123.079292,103.598701 122.609795,103.636162) t=0 tEnd=0.0479619043 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=26 (122.609795,103.636162 113.362167,104.373962) t=0.0479619043 tEnd=0.992657126 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=26 (113.362167,104.373962 113.290291,104.3797) t=0.992657126 tEnd=1 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=27 (113.290291,104.3797 113.229996,103.624001) t=0 tEnd=1 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=28 (113.229996,103.624001 113.430878,104.355003) t=0 tEnd=1 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=29 (113.430878,104.355003 113.395068,104.364844 113.362167,104.373962) t=0 tEnd=0.00597885639 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=29 (113.362167,104.373962 107.656922,105.955165 103.89183,109.226723) t=0.00597885639 tEnd=0.999923983 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=29 (103.89183,109.226723 103.891544,109.226974 103.891258,109.227226) t=0.999923983 tEnd=1 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=30 (103.891258,109.227226 103.393997,108.654999) t=0 tEnd=1 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=31 (103.393997,108.654999 103.891838,109.22673) t=0 tEnd=1 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=32 (103.891838,109.22673 103.891552,109.226982 103.891266,109.227234) t=0 tEnd=5.43505489e-05 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=32 (103.891266,109.227234 99.0549405,113.438713 97.6869507,118.970093) t=5.43505489e-05 tEnd=0.913746799 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=32 (97.6869507,118.970093 97.5578058,119.492282 97.4595795,120.026184) t=0.913746799 tEnd=1 windSum=? windValue=1
-----------------xx--x----------------00:  coinSeg/Span/PtT=32/63/63 endSpan=76 Fail
01:  seg/base=32/63 seg/base=29/75 MarkCoinStart
02:  seg/base=32/76 seg/base=29/58 MarkCoinEnd
SkOpSegment::debugShowActiveSpans id=1 (95.9684143,119.751823 97.2032471,113.040466 102.896156,108.083267) t=0 tEnd=1 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=2 (102.896156,108.083267 102.896736,108.082771) t=0 tEnd=1 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=3 (102.896736,108.082771 106.944885,104.564941 113.029114,102.892998) t=0 tEnd=1 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=4 (113.029114,102.892998 113.169701,102.868301) t=0 tEnd=1 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=5 (113.169701,102.868301 122.958702,102.087303) t=0 tEnd=1 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=6 (122.958702,102.087303 123.637985,102.405312) t=0 tEnd=1 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=7 (123.637985,102.405312 125.172625,104.575609 123.38755,106.912048) t=0 tEnd=0.999952051 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=7 (123.38755,106.912048 123.387466,106.912159 123.387383,106.91227) t=0.999952051 tEnd=1 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=8 (123.387383,106.91227 122.784996,106.452003) t=0 tEnd=1 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=9 (122.784996,106.452003 123.388428,106.910896) t=0 tEnd=1 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=10 (123.388428,106.910896 123.387993,106.911467 123.38755,106.912048) t=0 tEnd=0.0189869068 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=10 (123.38755,106.912048 123.365603,106.940906 123.320007,107.000946) t=0.0189869068 tEnd=1 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=11 (123.320007,107.000946 117.109985,115.177612 108.73912,118.758026) t=0 tEnd=1 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=12 (108.73912,118.758026 108.557755,118.810059) t=0 tEnd=1 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=13 (108.557755,118.810059 96.8307571,120.638062) t=0 tEnd=1 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=14 (96.8307571,120.638062 95.9684143,119.751823) t=0 tEnd=1 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=15 (97.4595795,120.026184 96.7139969,119.889008) t=0 tEnd=1 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=16 (96.7139969,119.889008 96.5972366,119.139954) t=0 tEnd=1 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=17 (96.5972366,119.139954 97.6869507,118.970093) t=0 tEnd=0.0929234671 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=17 (97.6869507,118.970093 108.229698,117.326683) t=0.0929234671 tEnd=0.991938827 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=17 (108.229698,117.326683 108.324234,117.311951) t=0.991938827 tEnd=1 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=18 (108.324234,117.311951 108.440994,118.061005) t=0 tEnd=1 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=19 (108.440994,118.061005 108.142868,117.363983) t=0 tEnd=1 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=20 (108.142868,117.363983 108.185051,117.34594 108.229698,117.326683) t=0 tEnd=0.00542932628 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=20 (108.229698,117.326683 116.177424,113.898617 122.112564,106.083923) t=0.00542932628 tEnd=1 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=21 (122.112564,106.083923 122.158455,106.023499 122.181564,105.993111) t=0 tEnd=1 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=22 (122.181564,105.993111 122.18261,105.991737) t=0 tEnd=1 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=23 (122.18261,105.991737 123.136432,104.743399 122.609795,103.636162) t=0 tEnd=0.860440414 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=23 (122.609795,103.636162 122.524376,103.456572 122.400009,103.280693) t=0.860440414 tEnd=1 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=24 (122.400009,103.280693 123.018997,102.843002) t=0 tEnd=1 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=25 (123.018997,102.843002 123.079292,103.598701) t=0 tEnd=1 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=26 (123.079292,103.598701 122.609795,103.636162) t=0 tEnd=0.0479619043 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=26 (122.609795,103.636162 113.362167,104.373962) t=0.0479619043 tEnd=0.992657126 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=26 (113.362167,104.373962 113.290291,104.3797) t=0.992657126 tEnd=1 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=27 (113.290291,104.3797 113.229996,103.624001) t=0 tEnd=1 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=28 (113.229996,103.624001 113.430878,104.355003) t=0 tEnd=1 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=29 (113.430878,104.355003 113.395068,104.364844 113.362167,104.373962) t=0 tEnd=0.00597885639 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=29 (113.362167,104.373962 107.656922,105.955165 103.89183,109.226723) t=0.00597885639 tEnd=0.999923983 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=29 (103.89183,109.226723 103.891544,109.226974 103.891258,109.227226) t=0.999923983 tEnd=1 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=30 (103.891258,109.227226 103.393997,108.654999) t=0 tEnd=1 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=31 (103.393997,108.654999 103.891838,109.22673) t=0 tEnd=1 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=32 (103.891838,109.22673 103.891552,109.226982 103.891266,109.227234) t=0 tEnd=5.43505489e-05 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=32 (103.891266,109.227234 99.0549405,113.438713 97.6869507,118.970093) t=5.43505489e-05 tEnd=0.913746799 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=32 (97.6869507,118.970093 97.5578058,119.492282 97.4595795,120.026184) t=0.913746799 tEnd=1 windSum=? windValue=1
-----------------xx--x----------------00:  coinSeg/Span/PtT=32/63/63 endSpan=76 Fail
01:  seg/base=32/63 seg/base=29/75 MarkCoinStart
02:  seg/base=32/76 seg/base=29/58 MarkCoinEnd
SkOpSegment::debugShowActiveSpans id=1 (95.9684143,119.751823 97.2032471,113.040466 102.896156,108.083267) t=0 tEnd=1 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=2 (102.896156,108.083267 102.896736,108.082771) t=0 tEnd=1 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=3 (102.896736,108.082771 106.944885,104.564941 113.029114,102.892998) t=0 tEnd=1 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=4 (113.029114,102.892998 113.169701,102.868301) t=0 tEnd=1 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=5 (113.169701,102.868301 122.958702,102.087303) t=0 tEnd=1 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=6 (122.958702,102.087303 123.637985,102.405312) t=0 tEnd=1 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=7 (123.637985,102.405312 125.172625,104.575609 123.38755,106.912048) t=0 tEnd=0.999952051 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=7 (123.38755,106.912048 123.387466,106.912159 123.387383,106.91227) t=0.999952051 tEnd=1 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=8 (123.387383,106.91227 122.784996,106.452003) t=0 tEnd=1 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=9 (122.784996,106.452003 123.388428,106.910896) t=0 tEnd=1 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=10 (123.388428,106.910896 123.387993,106.911467 123.38755,106.912048) t=0 tEnd=0.0189869068 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=10 (123.38755,106.912048 123.365603,106.940906 123.320007,107.000946) t=0.0189869068 tEnd=1 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=11 (123.320007,107.000946 117.109985,115.177612 108.73912,118.758026) t=0 tEnd=1 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=12 (108.73912,118.758026 108.557755,118.810059) t=0 tEnd=1 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=13 (108.557755,118.810059 96.8307571,120.638062) t=0 tEnd=1 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=14 (96.8307571,120.638062 95.9684143,119.751823) t=0 tEnd=1 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=15 (97.4595795,120.026184 96.7139969,119.889008) t=0 tEnd=1 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=16 (96.7139969,119.889008 96.5972366,119.139954) t=0 tEnd=1 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=17 (96.5972366,119.139954 97.6869507,118.970093) t=0 tEnd=0.0929234671 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=17 (97.6869507,118.970093 108.229698,117.326683) t=0.0929234671 tEnd=0.991938827 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=17 (108.229698,117.326683 108.324234,117.311951) t=0.991938827 tEnd=1 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=18 (108.324234,117.311951 108.440994,118.061005) t=0 tEnd=1 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=19 (108.440994,118.061005 108.142868,117.363983) t=0 tEnd=1 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=20 (108.142868,117.363983 108.185051,117.34594 108.229698,117.326683) t=0 tEnd=0.00542932628 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=20 (108.229698,117.326683 116.177424,113.898617 122.112564,106.083923) t=0.00542932628 tEnd=1 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=21 (122.112564,106.083923 122.158455,106.023499 122.181564,105.993111) t=0 tEnd=1 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=22 (122.181564,105.993111 122.18261,105.991737) t=0 tEnd=1 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=23 (122.18261,105.991737 123.136432,104.743399 122.609795,103.636162) t=0 tEnd=0.860440414 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=23 (122.609795,103.636162 122.524376,103.456572 122.400009,103.280693) t=0.860440414 tEnd=1 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=24 (122.400009,103.280693 123.018997,102.843002) t=0 tEnd=1 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=25 (123.018997,102.843002 123.079292,103.598701) t=0 tEnd=1 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=26 (123.079292,103.598701 122.609795,103.636162) t=0 tEnd=0.0479619043 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=26 (122.609795,103.636162 113.362167,104.373962) t=0.0479619043 tEnd=0.992657126 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=26 (113.362167,104.373962 113.290291,104.3797) t=0.992657126 tEnd=1 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=27 (113.290291,104.3797 113.229996,103.624001) t=0 tEnd=1 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=28 (113.229996,103.624001 113.430878,104.355003) t=0 tEnd=1 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=29 (113.430878,104.355003 113.395068,104.364844 113.362167,104.373962) t=0 tEnd=0.00597885639 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=29 (113.362167,104.373962 107.656922,105.955165 103.89183,109.226723) t=0.00597885639 tEnd=0.999923983 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=29 (103.89183,109.226723 103.891544,109.226974 103.891258,109.227226) t=0.999923983 tEnd=1 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=30 (103.891258,109.227226 103.393997,108.654999) t=0 tEnd=1 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=31 (103.393997,108.654999 103.891838,109.22673) t=0 tEnd=1 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=32 (103.891838,109.22673 103.891552,109.226982 103.891266,109.227234) t=0 tEnd=5.43505489e-05 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=32 (103.891266,109.227234 99.0549405,113.438713 97.6869507,118.970093) t=5.43505489e-05 tEnd=0.913746799 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=32 (97.6869507,118.970093 97.5578058,119.492282 97.4595795,120.026184) t=0.913746799 tEnd=1 windSum=? windValue=1
-----------------x--------------------00:  coinSeg/Span/PtT=32/63/63 endSpan=76 Fail
SkOpSegment::debugShowActiveSpans id=1 (95.9684143,119.751823 97.2032471,113.040466 102.896156,108.083267) t=0 tEnd=1 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=2 (102.896156,108.083267 102.896736,108.082771) t=0 tEnd=1 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=3 (102.896736,108.082771 106.944885,104.564941 113.029114,102.892998) t=0 tEnd=1 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=4 (113.029114,102.892998 113.169701,102.868301) t=0 tEnd=1 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=5 (113.169701,102.868301 122.958702,102.087303) t=0 tEnd=1 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=6 (122.958702,102.087303 123.637985,102.405312) t=0 tEnd=1 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=7 (123.637985,102.405312 125.172625,104.575609 123.38755,106.912048) t=0 tEnd=0.999952051 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=7 (123.38755,106.912048 123.387466,106.912159 123.387383,106.91227) t=0.999952051 tEnd=1 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=8 (123.387383,106.91227 122.784996,106.452003) t=0 tEnd=1 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=9 (122.784996,106.452003 123.388428,106.910896) t=0 tEnd=1 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=10 (123.388428,106.910896 123.387993,106.911467 123.38755,106.912048) t=0 tEnd=0.0189869068 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=10 (123.38755,106.912048 123.365603,106.940906 123.320007,107.000946) t=0.0189869068 tEnd=1 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=11 (123.320007,107.000946 117.109985,115.177612 108.73912,118.758026) t=0 tEnd=1 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=12 (108.73912,118.758026 108.557755,118.810059) t=0 tEnd=1 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=13 (108.557755,118.810059 96.8307571,120.638062) t=0 tEnd=1 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=14 (96.8307571,120.638062 95.9684143,119.751823) t=0 tEnd=1 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=15 (97.4595795,120.026184 96.7139969,119.889008) t=0 tEnd=1 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=16 (96.7139969,119.889008 96.5972366,119.139954) t=0 tEnd=1 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=17 (96.5972366,119.139954 97.6869507,118.970093) t=0 tEnd=0.0929234671 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=17 (97.6869507,118.970093 108.229698,117.326683) t=0.0929234671 tEnd=0.991938827 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=17 (108.229698,117.326683 108.324234,117.311951) t=0.991938827 tEnd=1 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=18 (108.324234,117.311951 108.440994,118.061005) t=0 tEnd=1 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=19 (108.440994,118.061005 108.142868,117.363983) t=0 tEnd=1 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=20 (108.142868,117.363983 108.185051,117.34594 108.229698,117.326683) t=0 tEnd=0.00542932628 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=20 (108.229698,117.326683 116.177424,113.898617 122.112564,106.083923) t=0.00542932628 tEnd=1 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=21 (122.112564,106.083923 122.158455,106.023499 122.181564,105.993111) t=0 tEnd=1 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=22 (122.181564,105.993111 122.18261,105.991737) t=0 tEnd=1 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=23 (122.18261,105.991737 123.136432,104.743399 122.609795,103.636162) t=0 tEnd=0.860440414 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=23 (122.609795,103.636162 122.524376,103.456572 122.400009,103.280693) t=0.860440414 tEnd=1 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=24 (122.400009,103.280693 123.018997,102.843002) t=0 tEnd=1 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=25 (123.018997,102.843002 123.079292,103.598701) t=0 tEnd=1 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=26 (123.079292,103.598701 122.609795,103.636162) t=0 tEnd=0.0479619043 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=26 (122.609795,103.636162 113.362167,104.373962) t=0.0479619043 tEnd=0.992657126 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=26 (113.362167,104.373962 113.290291,104.3797) t=0.992657126 tEnd=1 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=27 (113.290291,104.3797 113.229996,103.624001) t=0 tEnd=1 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=28 (113.229996,103.624001 113.430878,104.355003) t=0 tEnd=1 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=29 (113.430878,104.355003 113.395068,104.364844 113.362167,104.373962) t=0 tEnd=0.00597885639 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=29 (113.362167,104.373962 107.656922,105.955165 103.89183,109.226723) t=0.00597885639 tEnd=0.999923983 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=29 (103.89183,109.226723 103.891544,109.226974 103.891258,109.227226) t=0.999923983 tEnd=1 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=30 (103.891258,109.227226 103.393997,108.654999) t=0 tEnd=1 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=31 (103.393997,108.654999 103.891838,109.22673) t=0 tEnd=1 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=32 (103.891838,109.22673 103.891552,109.226982 103.891266,109.227234) t=0 tEnd=5.43505489e-05 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=32 (103.891266,109.227234 99.0549405,113.438713 97.6869507,118.970093) t=5.43505489e-05 tEnd=0.913746799 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=32 (97.6869507,118.970093 97.5578058,119.492282 97.4595795,120.026184) t=0.913746799 tEnd=1 windSum=? windValue=1
--------------------------------------SkOpSegment::debugShowActiveSpans id=1 (95.9684143,119.751823 97.2032471,113.040466 102.896156,108.083267) t=0 tEnd=1 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=2 (102.896156,108.083267 102.896736,108.082771) t=0 tEnd=1 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=3 (102.896736,108.082771 106.944885,104.564941 113.029114,102.892998) t=0 tEnd=1 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=4 (113.029114,102.892998 113.169701,102.868301) t=0 tEnd=1 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=5 (113.169701,102.868301 122.958702,102.087303) t=0 tEnd=1 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=6 (122.958702,102.087303 123.637985,102.405312) t=0 tEnd=1 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=7 (123.637985,102.405312 125.172625,104.575609 123.38755,106.912048) t=0 tEnd=0.999952051 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=7 (123.38755,106.912048 123.387466,106.912159 123.387383,106.91227) t=0.999952051 tEnd=1 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=8 (123.387383,106.91227 122.784996,106.452003) t=0 tEnd=1 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=9 (122.784996,106.452003 123.388428,106.910896) t=0 tEnd=1 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=10 (123.388428,106.910896 123.387993,106.911467 123.38755,106.912048) t=0 tEnd=0.0189869068 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=10 (123.38755,106.912048 123.365603,106.940906 123.320007,107.000946) t=0.0189869068 tEnd=1 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=11 (123.320007,107.000946 117.109985,115.177612 108.73912,118.758026) t=0 tEnd=1 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=12 (108.73912,118.758026 108.557755,118.810059) t=0 tEnd=1 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=13 (108.557755,118.810059 96.8307571,120.638062) t=0 tEnd=1 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=14 (96.8307571,120.638062 95.9684143,119.751823) t=0 tEnd=1 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=15 (97.4595795,120.026184 96.7139969,119.889008) t=0 tEnd=1 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=16 (96.7139969,119.889008 96.5972366,119.139954) t=0 tEnd=1 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=17 (96.5972366,119.139954 97.6869507,118.970093) t=0 tEnd=0.0929234671 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=17 (97.6869507,118.970093 108.229698,117.326683) t=0.0929234671 tEnd=0.991938827 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=17 (108.229698,117.326683 108.324234,117.311951) t=0.991938827 tEnd=1 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=18 (108.324234,117.311951 108.440994,118.061005) t=0 tEnd=1 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=19 (108.440994,118.061005 108.142868,117.363983) t=0 tEnd=1 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=20 (108.142868,117.363983 108.185051,117.34594 108.229698,117.326683) t=0 tEnd=0.00542932628 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=20 (108.229698,117.326683 116.177424,113.898617 122.112564,106.083923) t=0.00542932628 tEnd=1 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=21 (122.112564,106.083923 122.158455,106.023499 122.181564,105.993111) t=0 tEnd=1 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=22 (122.181564,105.993111 122.18261,105.991737) t=0 tEnd=1 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=23 (122.18261,105.991737 123.136432,104.743399 122.609795,103.636162) t=0 tEnd=0.860440414 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=23 (122.609795,103.636162 122.524376,103.456572 122.400009,103.280693) t=0.860440414 tEnd=1 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=24 (122.400009,103.280693 123.018997,102.843002) t=0 tEnd=1 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=25 (123.018997,102.843002 123.079292,103.598701) t=0 tEnd=1 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=26 (123.079292,103.598701 122.609795,103.636162) t=0 tEnd=0.0479619043 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=26 (122.609795,103.636162 113.362167,104.373962) t=0.0479619043 tEnd=0.992657126 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=26 (113.362167,104.373962 113.290291,104.3797) t=0.992657126 tEnd=1 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=27 (113.290291,104.3797 113.229996,103.624001) t=0 tEnd=1 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=28 (113.229996,103.624001 113.430878,104.355003) t=0 tEnd=1 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=29 (113.430878,104.355003 113.395068,104.364844 113.362167,104.373962) t=0 tEnd=0.00597885639 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=29 (113.362167,104.373962 107.656922,105.955165 103.89183,109.226723) t=0.00597885639 tEnd=0.999923983 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=29 (103.89183,109.226723 103.891544,109.226974 103.891258,109.227226) t=0.999923983 tEnd=1 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=30 (103.891258,109.227226 103.393997,108.654999) t=0 tEnd=1 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=31 (103.393997,108.654999 103.891838,109.22673) t=0 tEnd=1 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=32 (103.891838,109.22673 103.891552,109.226982 103.891266,109.227234) t=0 tEnd=5.43505489e-05 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=32 (103.891266,109.227234 99.0549405,113.438713 97.6869507,118.970093) t=5.43505489e-05 tEnd=0.913746799 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=32 (97.6869507,118.970093 97.5578058,119.492282 97.4595795,120.026184) t=0.913746799 tEnd=1 windSum=? windValue=1
SkOpSegment::markDone id=29 (113.430878,104.355003 107.679138,105.935608 103.891258,109.227226) t=0.999923983 [75] (103.89183,109.226723) tEnd=1 newWindSum=? newOppSum=? oppSum=? windSum=? windValue=0 oppValue=0
--------------------------------------SkOpSegment::debugShowActiveSpans id=1 (95.9684143,119.751823 97.2032471,113.040466 102.896156,108.083267) t=0 tEnd=1 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=2 (102.896156,108.083267 102.896736,108.082771) t=0 tEnd=1 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=3 (102.896736,108.082771 106.944885,104.564941 113.029114,102.892998) t=0 tEnd=1 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=4 (113.029114,102.892998 113.169701,102.868301) t=0 tEnd=1 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=5 (113.169701,102.868301 122.958702,102.087303) t=0 tEnd=1 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=6 (122.958702,102.087303 123.637985,102.405312) t=0 tEnd=1 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=7 (123.637985,102.405312 125.172625,104.575609 123.38755,106.912048) t=0 tEnd=0.999952051 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=7 (123.38755,106.912048 123.387466,106.912159 123.387383,106.91227) t=0.999952051 tEnd=1 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=8 (123.387383,106.91227 122.784996,106.452003) t=0 tEnd=1 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=9 (122.784996,106.452003 123.388428,106.910896) t=0 tEnd=1 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=10 (123.388428,106.910896 123.387993,106.911467 123.38755,106.912048) t=0 tEnd=0.0189869068 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=10 (123.38755,106.912048 123.365603,106.940906 123.320007,107.000946) t=0.0189869068 tEnd=1 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=11 (123.320007,107.000946 117.109985,115.177612 108.73912,118.758026) t=0 tEnd=1 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=12 (108.73912,118.758026 108.557755,118.810059) t=0 tEnd=1 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=13 (108.557755,118.810059 96.8307571,120.638062) t=0 tEnd=1 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=14 (96.8307571,120.638062 95.9684143,119.751823) t=0 tEnd=1 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=15 (97.4595795,120.026184 96.7139969,119.889008) t=0 tEnd=1 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=16 (96.7139969,119.889008 96.5972366,119.139954) t=0 tEnd=1 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=17 (96.5972366,119.139954 97.6869507,118.970093) t=0 tEnd=0.0929234671 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=17 (97.6869507,118.970093 108.229698,117.326683) t=0.0929234671 tEnd=0.991938827 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=17 (108.229698,117.326683 108.324234,117.311951) t=0.991938827 tEnd=1 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=18 (108.324234,117.311951 108.440994,118.061005) t=0 tEnd=1 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=19 (108.440994,118.061005 108.142868,117.363983) t=0 tEnd=1 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=20 (108.142868,117.363983 108.185051,117.34594 108.229698,117.326683) t=0 tEnd=0.00542932628 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=20 (108.229698,117.326683 116.177424,113.898617 122.112564,106.083923) t=0.00542932628 tEnd=1 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=21 (122.112564,106.083923 122.158455,106.023499 122.181564,105.993111) t=0 tEnd=1 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=22 (122.181564,105.993111 122.18261,105.991737) t=0 tEnd=1 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=23 (122.18261,105.991737 123.136432,104.743399 122.609795,103.636162) t=0 tEnd=0.860440414 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=23 (122.609795,103.636162 122.524376,103.456572 122.400009,103.280693) t=0.860440414 tEnd=1 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=24 (122.400009,103.280693 123.018997,102.843002) t=0 tEnd=1 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=25 (123.018997,102.843002 123.079292,103.598701) t=0 tEnd=1 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=26 (123.079292,103.598701 122.609795,103.636162) t=0 tEnd=0.0479619043 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=26 (122.609795,103.636162 113.362167,104.373962) t=0.0479619043 tEnd=0.992657126 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=26 (113.362167,104.373962 113.290291,104.3797) t=0.992657126 tEnd=1 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=27 (113.290291,104.3797 113.229996,103.624001) t=0 tEnd=1 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=28 (113.229996,103.624001 113.430878,104.355003) t=0 tEnd=1 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=29 (113.430878,104.355003 113.395068,104.364844 113.362167,104.373962) t=0 tEnd=0.00597885639 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=29 (113.362167,104.373962 107.656922,105.955165 103.89183,109.226723) t=0.00597885639 tEnd=0.999923983 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=30 (103.891258,109.227226 103.393997,108.654999) t=0 tEnd=1 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=31 (103.393997,108.654999 103.891838,109.22673) t=0 tEnd=1 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=32 (103.891838,109.22673 103.891552,109.226982 103.891266,109.227234) t=0 tEnd=5.43505489e-05 windSum=? windValue=2
SkOpSegment::debugShowActiveSpans id=32 (103.891266,109.227234 99.0549405,113.438713 97.6869507,118.970093) t=5.43505489e-05 tEnd=0.913746799 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=32 (97.6869507,118.970093 97.5578058,119.492282 97.4595795,120.026184) t=0.913746799 tEnd=1 windSum=? windValue=1
--------------------------------------SkOpSegment::debugShowActiveSpans id=1 (95.9684143,119.751823 97.2032471,113.040466 102.896156,108.083267) t=0 tEnd=1 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=2 (102.896156,108.083267 102.896736,108.082771) t=0 tEnd=1 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=3 (102.896736,108.082771 106.944885,104.564941 113.029114,102.892998) t=0 tEnd=1 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=4 (113.029114,102.892998 113.169701,102.868301) t=0 tEnd=1 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=5 (113.169701,102.868301 122.958702,102.087303) t=0 tEnd=1 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=6 (122.958702,102.087303 123.637985,102.405312) t=0 tEnd=1 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=7 (123.637985,102.405312 125.172625,104.575609 123.38755,106.912048) t=0 tEnd=0.999952051 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=7 (123.38755,106.912048 123.387466,106.912159 123.387383,106.91227) t=0.999952051 tEnd=1 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=8 (123.387383,106.91227 122.784996,106.452003) t=0 tEnd=1 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=9 (122.784996,106.452003 123.388428,106.910896) t=0 tEnd=1 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=10 (123.388428,106.910896 123.387993,106.911467 123.38755,106.912048) t=0 tEnd=0.0189869068 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=10 (123.38755,106.912048 123.365603,106.940906 123.320007,107.000946) t=0.0189869068 tEnd=1 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=11 (123.320007,107.000946 117.109985,115.177612 108.73912,118.758026) t=0 tEnd=1 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=12 (108.73912,118.758026 108.557755,118.810059) t=0 tEnd=1 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=13 (108.557755,118.810059 96.8307571,120.638062) t=0 tEnd=1 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=14 (96.8307571,120.638062 95.9684143,119.751823) t=0 tEnd=1 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=15 (97.4595795,120.026184 96.7139969,119.889008) t=0 tEnd=1 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=16 (96.7139969,119.889008 96.5972366,119.139954) t=0 tEnd=1 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=17 (96.5972366,119.139954 97.6869507,118.970093) t=0 tEnd=0.0929234671 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=17 (97.6869507,118.970093 108.229698,117.326683) t=0.0929234671 tEnd=0.991938827 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=17 (108.229698,117.326683 108.324234,117.311951) t=0.991938827 tEnd=1 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=18 (108.324234,117.311951 108.440994,118.061005) t=0 tEnd=1 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=19 (108.440994,118.061005 108.142868,117.363983) t=0 tEnd=1 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=20 (108.142868,117.363983 108.185051,117.34594 108.229698,117.326683) t=0 tEnd=0.00542932628 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=20 (108.229698,117.326683 116.177424,113.898617 122.112564,106.083923) t=0.00542932628 tEnd=1 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=21 (122.112564,106.083923 122.158455,106.023499 122.181564,105.993111) t=0 tEnd=1 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=22 (122.181564,105.993111 122.18261,105.991737) t=0 tEnd=1 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=23 (122.18261,105.991737 123.136432,104.743399 122.609795,103.636162) t=0 tEnd=0.860440414 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=23 (122.609795,103.636162 122.524376,103.456572 122.400009,103.280693) t=0.860440414 tEnd=1 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=24 (122.400009,103.280693 123.018997,102.843002) t=0 tEnd=1 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=25 (123.018997,102.843002 123.079292,103.598701) t=0 tEnd=1 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=26 (123.079292,103.598701 122.609795,103.636162) t=0 tEnd=0.0479619043 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=26 (122.609795,103.636162 113.362167,104.373962) t=0.0479619043 tEnd=0.992657126 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=26 (113.362167,104.373962 113.290291,104.3797) t=0.992657126 tEnd=1 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=27 (113.290291,104.3797 113.229996,103.624001) t=0 tEnd=1 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=28 (113.229996,103.624001 113.430878,104.355003) t=0 tEnd=1 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=29 (113.430878,104.355003 113.395068,104.364844 113.362167,104.373962) t=0 tEnd=0.00597885639 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=29 (113.362167,104.373962 107.656922,105.955165 103.89183,109.226723) t=0.00597885639 tEnd=0.999923983 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=30 (103.891258,109.227226 103.393997,108.654999) t=0 tEnd=1 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=31 (103.393997,108.654999 103.891838,109.22673) t=0 tEnd=1 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=32 (103.891838,109.22673 103.891552,109.226982 103.891266,109.227234) t=0 tEnd=5.43505489e-05 windSum=? windValue=2
SkOpSegment::debugShowActiveSpans id=32 (103.891266,109.227234 99.0549405,113.438713 97.6869507,118.970093) t=5.43505489e-05 tEnd=0.913746799 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=32 (97.6869507,118.970093 97.5578058,119.492282 97.4595795,120.026184) t=0.913746799 tEnd=1 windSum=? windValue=1
SkOpSegment::sortAngles [7] tStart=0.999952051 [65]
SkOpAngle::after [7/1] 5/5 tStart=0.999952051 tEnd=0 < [10/3] 5/5 tStart=0.0189869068 tEnd=0 < [7/2] 21/21 tStart=0.999952051 tEnd=1  T 12
SkOpAngle::afterPart {{{123.38755,106.912048}, {125.172625,104.575609}, {123.637985,102.405312}}} id=7
SkOpAngle::afterPart {{{123.38755,106.912048}, {123.388428,106.910896}, {123.388428,106.910896}}} id=10
SkOpAngle::afterPart {{{123.38755,106.912048}, {123.387383,106.91227}, {123.387383,106.91227}}} id=7
SkOpAngle::after [7/1] 5/5 tStart=0.999952051 tEnd=0 < [10/4] 21/21 tStart=0.0189869068 tEnd=1 < [10/3] 5/5 tStart=0.0189869068 tEnd=0  F 5
SkOpAngle::afterPart {{{123.38755,106.912048}, {125.172625,104.575609}, {123.637985,102.405312}}} id=7
SkOpAngle::afterPart {{{123.38755,106.912048}, {123.365603,106.940906}, {123.320007,107.000946}}} id=10
SkOpAngle::afterPart {{{123.38755,106.912048}, {123.388428,106.910896}, {123.388428,106.910896}}} id=10
SkOpAngle::after [10/3] 5/5 tStart=0.0189869068 tEnd=0 < [10/4] 21/21 tStart=0.0189869068 tEnd=1 < [7/2] 21/21 tStart=0.999952051 tEnd=1  T 11
SkOpAngle::afterPart {{{123.38755,106.912048}, {123.388428,106.910896}, {123.388428,106.910896}}} id=10
SkOpAngle::afterPart {{{123.38755,106.912048}, {123.365603,106.940906}, {123.320007,107.000946}}} id=10
SkOpAngle::afterPart {{{123.38755,106.912048}, {123.387383,106.91227}, {123.387383,106.91227}}} id=7
SkOpSegment::sortAngles [10] tStart=0.0189869068 [66]
SkOpSegment::sortAngles [17] tStart=0.0929234671 [69]
SkOpAngle::after [17/5] 17/17 tStart=0.0929234671 tEnd=0 < [32/25] 5/5 tStart=0.913746799 tEnd=5.43505489e-05 < [17/6] 1/1 tStart=0.0929234671 tEnd=0.991938827  F 4
SkOpAngle::afterPart {{{97.6869507,118.970093}, {96.5972366,119.139954}}} id=17
SkOpAngle::afterPart {{{97.6869507,118.970093}, {99.0549405,113.438713}, {103.891266,109.227234}}} id=32
SkOpAngle::afterPart {{{97.6869507,118.970093}, {108.229698,117.326683}}} id=17
SkOpAngle::after [17/5] 17/17 tStart=0.0929234671 tEnd=0 < [32/26] 21/21 tStart=0.913746799 tEnd=1 < [17/6] 1/1 tStart=0.0929234671 tEnd=0.991938827  T 4
SkOpAngle::afterPart {{{97.6869507,118.970093}, {96.5972366,119.139954}}} id=17
SkOpAngle::afterPart {{{97.6869507,118.970093}, {97.5578058,119.492282}, {97.4595795,120.026184}}} id=32
SkOpAngle::afterPart {{{97.6869507,118.970093}, {108.229698,117.326683}}} id=17
SkOpSegment::sortAngles [17] tStart=0.991938827 [67]
SkOpAngle::after [17/7] 17/17 tStart=0.991938827 tEnd=0.0929234671 < [20/9] 17/17 tStart=0.00542932628 tEnd=0 < [17/8] 1/1 tStart=0.991938827 tEnd=1  T 12
SkOpAngle::afterPart {{{108.229698,117.326683}, {97.6869507,118.970093}}} id=17
SkOpAngle::afterPart {{{108.229698,117.326683}, {108.185051,117.34594}, {108.142868,117.363983}}} id=20
SkOpAngle::afterPart {{{108.229698,117.326683}, {108.324234,117.311951}}} id=17
SkOpAngle::after [17/7] 17/17 tStart=0.991938827 tEnd=0.0929234671 < [20/10] 1/1 tStart=0.00542932628 tEnd=1 < [20/9] 17/17 tStart=0.00542932628 tEnd=0  F 5
SkOpAngle::afterPart {{{108.229698,117.326683}, {97.6869507,118.970093}}} id=17
SkOpAngle::afterPart {{{108.229698,117.326683}, {116.177424,113.898617}, {122.112564,106.083923}}} id=20
SkOpAngle::afterPart {{{108.229698,117.326683}, {108.185051,117.34594}, {108.142868,117.363983}}} id=20
SkOpAngle::after [20/9] 17/17 tStart=0.00542932628 tEnd=0 < [20/10] 1/1 tStart=0.00542932628 tEnd=1 < [17/8] 1/1 tStart=0.991938827 tEnd=1  F 11
SkOpAngle::afterPart {{{108.229698,117.326683}, {108.185051,117.34594}, {108.142868,117.363983}}} id=20
SkOpAngle::afterPart {{{108.229698,117.326683}, {116.177424,113.898617}, {122.112564,106.083923}}} id=20
SkOpAngle::afterPart {{{108.229698,117.326683}, {108.324234,117.311951}}} id=17
SkOpAngle::after [17/8] 1/1 tStart=0.991938827 tEnd=1 < [20/10] 1/1 tStart=0.00542932628 tEnd=1 < [17/7] 17/17 tStart=0.991938827 tEnd=0.0929234671  T 12
SkOpAngle::afterPart {{{108.229698,117.326683}, {108.324234,117.311951}}} id=17
SkOpAngle::afterPart {{{108.229698,117.326683}, {116.177424,113.898617}, {122.112564,106.083923}}} id=20
SkOpAngle::afterPart {{{108.229698,117.326683}, {97.6869507,118.970093}}} id=17
SkOpSegment::sortAngles [20] tStart=0.00542932628 [68]
SkOpSegment::sortAngles [23] tStart=0.860440414 [71]
SkOpAngle::after [23/11] 25/21 tStart=0.860440414 tEnd=0 < [26/13] 1/1 tStart=0.0479619043 tEnd=0 < [23/12] 9/9 tStart=0.860440414 tEnd=1  T 4
SkOpAngle::afterPart {{{122.609795,103.636162}, {123.136432,104.743399}, {122.18261,105.991737}}} id=23
SkOpAngle::afterPart {{{122.609795,103.636162}, {123.079292,103.598701}}} id=26
SkOpAngle::afterPart {{{122.609795,103.636162}, {122.524376,103.456572}, {122.400009,103.280693}}} id=23
SkOpAngle::after [23/11] 25/21 tStart=0.860440414 tEnd=0 < [26/14] 17/17 tStart=0.0479619043 tEnd=0.992657126 < [26/13] 1/1 tStart=0.0479619043 tEnd=0  F 4
SkOpAngle::afterPart {{{122.609795,103.636162}, {123.136432,104.743399}, {122.18261,105.991737}}} id=23
SkOpAngle::afterPart {{{122.609795,103.636162}, {113.362167,104.373962}}} id=26
SkOpAngle::afterPart {{{122.609795,103.636162}, {123.079292,103.598701}}} id=26
SkOpAngle::after [26/13] 1/1 tStart=0.0479619043 tEnd=0 < [26/14] 17/17 tStart=0.0479619043 tEnd=0.992657126 < [23/12] 9/9 tStart=0.860440414 tEnd=1  F 4
SkOpAngle::afterPart {{{122.609795,103.636162}, {123.079292,103.598701}}} id=26
SkOpAngle::afterPart {{{122.609795,103.636162}, {113.362167,104.373962}}} id=26
SkOpAngle::afterPart {{{122.609795,103.636162}, {122.524376,103.456572}, {122.400009,103.280693}}} id=23
SkOpAngle::after [23/12] 9/9 tStart=0.860440414 tEnd=1 < [26/14] 17/17 tStart=0.0479619043 tEnd=0.992657126 < [23/11] 25/21 tStart=0.860440414 tEnd=0  T 4
SkOpAngle::afterPart {{{122.609795,103.636162}, {122.524376,103.456572}, {122.400009,103.280693}}} id=23
SkOpAngle::afterPart {{{122.609795,103.636162}, {113.362167,104.373962}}} id=26
SkOpAngle::afterPart {{{122.609795,103.636162}, {123.136432,104.743399}, {122.18261,105.991737}}} id=23
SkOpSegment::sortAngles [26] tStart=0.0479619043 [72]
SkOpSegment::sortAngles [26] tStart=0.992657126 [73]
SkOpAngle::after [26/15] 1/1 tStart=0.992657126 tEnd=0.0479619043 < [29/17] 1/1 tStart=0.00597885639 tEnd=0 < [26/16] 17/17 tStart=0.992657126 tEnd=1  T 12
SkOpAngle::afterPart {{{113.362167,104.373962}, {122.609795,103.636162}}} id=26
SkOpAngle::afterPart {{{113.362167,104.373962}, {113.395068,104.364844}, {113.430878,104.355003}}} id=29
SkOpAngle::afterPart {{{113.362167,104.373962}, {113.290291,104.3797}}} id=26
SkOpAngle::after [26/15] 1/1 tStart=0.992657126 tEnd=0.0479619043 < [29/18] 17/17 tStart=0.00597885639 tEnd=0.999923983 < [29/17] 1/1 tStart=0.00597885639 tEnd=0  F 5
SkOpAngle::afterPart {{{113.362167,104.373962}, {122.609795,103.636162}}} id=26
SkOpAngle::afterPart {{{113.362167,104.373962}, {107.656922,105.955165}, {103.89183,109.226723}}} id=29
SkOpAngle::afterPart {{{113.362167,104.373962}, {113.395068,104.364844}, {113.430878,104.355003}}} id=29
SkOpAngle::after [29/17] 1/1 tStart=0.00597885639 tEnd=0 < [29/18] 17/17 tStart=0.00597885639 tEnd=0.999923983 < [26/16] 17/17 tStart=0.992657126 tEnd=1  F 11
SkOpAngle::afterPart {{{113.362167,104.373962}, {113.395068,104.364844}, {113.430878,104.355003}}} id=29
SkOpAngle::afterPart {{{113.362167,104.373962}, {107.656922,105.955165}, {103.89183,109.226723}}} id=29
SkOpAngle::afterPart {{{113.362167,104.373962}, {113.290291,104.3797}}} id=26
SkOpAngle::after [26/16] 17/17 tStart=0.992657126 tEnd=1 < [29/18] 17/17 tStart=0.00597885639 tEnd=0.999923983 < [26/15] 1/1 tStart=0.992657126 tEnd=0.0479619043  T 12
SkOpAngle::afterPart {{{113.362167,104.373962}, {113.290291,104.3797}}} id=26
SkOpAngle::afterPart {{{113.362167,104.373962}, {107.656922,105.955165}, {103.89183,109.226723}}} id=29
SkOpAngle::afterPart {{{113.362167,104.373962}, {122.609795,103.636162}}} id=26
SkOpSegment::sortAngles [29] tStart=0.00597885639 [74]
SkOpSegment::sortAngles [29] tStart=0.999923983 [75]
SkOpAngle::after [29/19] 1/1 tStart=0.999923983 tEnd=0.00597885639 < [31/21] 9/9 tStart=1 tEnd=0 < [32/22] 17/17 tStart=0 tEnd=5.43505489e-05  T 4
SkOpAngle::afterPart {{{103.891838,109.22673}, {107.65693,105.955173}, {113.362175,104.37397}}} id=29
SkOpAngle::afterPart {{{103.891838,109.22673}, {103.393997,108.654999}}} id=31
SkOpAngle::afterPart {{{103.891838,109.22673}, {103.891266,109.227234}, {103.891266,109.227234}}} id=32
SkOpSegment::sortAngles [30] tStart=0 [59]
SkOpAngle::after [30/20] 9/9 tStart=0 tEnd=1 < [32/24] 17/21 tStart=5.43505489e-05 tEnd=0.913746799 < [32/23] 1/1 tStart=5.43505489e-05 tEnd=0  T 4
SkOpAngle::afterPart {{{103.891266,109.227234}, {103.394005,108.655006}}} id=30
SkOpAngle::afterPart {{{103.891266,109.227234}, {99.0549405,113.438713}, {97.6869507,118.970093}}} id=32
SkOpAngle::afterPart {{{103.891266,109.227234}, {103.891838,109.22673}, {103.891838,109.22673}}} id=32
SkOpSegment::sortAngles [31] tStart=1 [62]
SkOpSegment::sortAngles [32] tStart=0 [63]
SkOpSegment::sortAngles [32] tStart=5.43505489e-05 [76]
SkOpSegment::sortAngles [32] tStart=0.913746799 [70]
coinSpan - id=32 t=0 tEnd=5.43505489e-05
coinSpan + id=29 t=0.999923983 tEnd=1
SkOpSegment::debugShowActiveSpans id=1 (95.9684143,119.751823 97.2032471,113.040466 102.896156,108.083267) t=0 tEnd=1 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=2 (102.896156,108.083267 102.896736,108.082771) t=0 tEnd=1 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=3 (102.896736,108.082771 106.944885,104.564941 113.029114,102.892998) t=0 tEnd=1 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=4 (113.029114,102.892998 113.169701,102.868301) t=0 tEnd=1 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=5 (113.169701,102.868301 122.958702,102.087303) t=0 tEnd=1 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=6 (122.958702,102.087303 123.637985,102.405312) t=0 tEnd=1 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=7 (123.637985,102.405312 125.172625,104.575609 123.38755,106.912048) t=0 tEnd=0.999952051 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=7 (123.38755,106.912048 123.387466,106.912159 123.387383,106.91227) t=0.999952051 tEnd=1 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=8 (123.387383,106.91227 122.784996,106.452003) t=0 tEnd=1 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=9 (122.784996,106.452003 123.388428,106.910896) t=0 tEnd=1 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=10 (123.388428,106.910896 123.387993,106.911467 123.38755,106.912048) t=0 tEnd=0.0189869068 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=10 (123.38755,106.912048 123.365603,106.940906 123.320007,107.000946) t=0.0189869068 tEnd=1 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=11 (123.320007,107.000946 117.109985,115.177612 108.73912,118.758026) t=0 tEnd=1 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=12 (108.73912,118.758026 108.557755,118.810059) t=0 tEnd=1 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=13 (108.557755,118.810059 96.8307571,120.638062) t=0 tEnd=1 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=14 (96.8307571,120.638062 95.9684143,119.751823) t=0 tEnd=1 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=15 (97.4595795,120.026184 96.7139969,119.889008) t=0 tEnd=1 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=16 (96.7139969,119.889008 96.5972366,119.139954) t=0 tEnd=1 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=17 (96.5972366,119.139954 97.6869507,118.970093) t=0 tEnd=0.0929234671 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=17 (97.6869507,118.970093 108.229698,117.326683) t=0.0929234671 tEnd=0.991938827 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=17 (108.229698,117.326683 108.324234,117.311951) t=0.991938827 tEnd=1 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=18 (108.324234,117.311951 108.440994,118.061005) t=0 tEnd=1 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=19 (108.440994,118.061005 108.142868,117.363983) t=0 tEnd=1 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=20 (108.142868,117.363983 108.185051,117.34594 108.229698,117.326683) t=0 tEnd=0.00542932628 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=20 (108.229698,117.326683 116.177424,113.898617 122.112564,106.083923) t=0.00542932628 tEnd=1 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=21 (122.112564,106.083923 122.158455,106.023499 122.181564,105.993111) t=0 tEnd=1 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=22 (122.181564,105.993111 122.18261,105.991737) t=0 tEnd=1 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=23 (122.18261,105.991737 123.136432,104.743399 122.609795,103.636162) t=0 tEnd=0.860440414 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=23 (122.609795,103.636162 122.524376,103.456572 122.400009,103.280693) t=0.860440414 tEnd=1 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=24 (122.400009,103.280693 123.018997,102.843002) t=0 tEnd=1 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=25 (123.018997,102.843002 123.079292,103.598701) t=0 tEnd=1 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=26 (123.079292,103.598701 122.609795,103.636162) t=0 tEnd=0.0479619043 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=26 (122.609795,103.636162 113.362167,104.373962) t=0.0479619043 tEnd=0.992657126 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=26 (113.362167,104.373962 113.290291,104.3797) t=0.992657126 tEnd=1 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=27 (113.290291,104.3797 113.229996,103.624001) t=0 tEnd=1 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=28 (113.229996,103.624001 113.430878,104.355003) t=0 tEnd=1 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=29 (113.430878,104.355003 113.395068,104.364844 113.362167,104.373962) t=0 tEnd=0.00597885639 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=29 (113.362167,104.373962 107.656922,105.955165 103.89183,109.226723) t=0.00597885639 tEnd=0.999923983 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=30 (103.891258,109.227226 103.393997,108.654999) t=0 tEnd=1 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=31 (103.393997,108.654999 103.891838,109.22673) t=0 tEnd=1 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=32 (103.891838,109.22673 103.891552,109.226982 103.891266,109.227234) t=0 tEnd=5.43505489e-05 windSum=? windValue=2
SkOpSegment::debugShowActiveSpans id=32 (103.891266,109.227234 99.0549405,113.438713 97.6869507,118.970093) t=5.43505489e-05 tEnd=0.913746799 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=32 (97.6869507,118.970093 97.5578058,119.492282 97.4595795,120.026184) t=0.913746799 tEnd=1 windSum=? windValue=1
SkOpSpan::sortableTop dir=kLeft seg=1 t=0.5 pt=(98.3177643,113.479004)
SkOpSpan::sortableTop [0] valid=1 operand=0 span=1 ccw=1 seg=1 {{{95.9684143f, 119.751823f}, {97.2032471f, 113.040466f}, {102.896156f, 108.083267f}}} t=0.5 pt=(98.3177643,113.479004) slope=(3.463871,-5.83427811)
SkOpSegment::markWinding id=1 (95.9684143,119.751823 97.2032471,113.040466 102.896156,108.083267) t=0 [1] (95.9684143,119.751823) tEnd=1 newWindSum=-1 newOppSum=0 oppSum=0 windSum=-1 windValue=1 oppValue=0
SkOpSegment::markWinding id=2 (102.896156,108.083267 102.896736,108.082771) t=0 [3] (102.896156,108.083267) tEnd=1 newWindSum=-1 newOppSum=0 oppSum=? windSum=? windValue=1 oppValue=0
SkOpSegment::markWinding id=3 (102.896736,108.082771 106.944885,104.564941 113.029114,102.892998) t=0 [5] (102.896736,108.082771) tEnd=1 newWindSum=-1 newOppSum=0 oppSum=? windSum=? windValue=1 oppValue=0
SkOpSegment::markWinding id=4 (113.029114,102.892998 113.169701,102.868301) t=0 [7] (113.029114,102.892998) tEnd=1 newWindSum=-1 newOppSum=0 oppSum=? windSum=? windValue=1 oppValue=0
SkOpSegment::markWinding id=5 (113.169701,102.868301 122.958702,102.087303) t=0 [9] (113.169701,102.868301) tEnd=1 newWindSum=-1 newOppSum=0 oppSum=? windSum=? windValue=1 oppValue=0
SkOpSegment::markWinding id=6 (122.958702,102.087303 123.637985,102.405312) t=0 [11] (122.958702,102.087303) tEnd=1 newWindSum=-1 newOppSum=0 oppSum=? windSum=? windValue=1 oppValue=0
SkOpSegment::markWinding id=7 (123.637985,102.405312 125.172699,104.575714 123.387383,106.91227) t=0 [13] (123.637985,102.405312) tEnd=0.999952051 newWindSum=-1 newOppSum=0 oppSum=? windSum=? windValue=1 oppValue=0
SkOpSegment::markWinding id=1 (95.9684143,119.751823 97.2032471,113.040466 102.896156,108.083267) t=0 [1] (95.9684143,119.751823) tEnd=1 newWindSum=-1 newOppSum=0 oppSum=0 windSum=-1 windValue=1 oppValue=0
SkOpSegment::markWinding id=14 (96.8307571,120.638062 95.9684143,119.751823) t=0 [27] (96.8307571,120.638062) tEnd=1 newWindSum=-1 newOppSum=0 oppSum=? windSum=? windValue=1 oppValue=0
SkOpSegment::markWinding id=13 (108.557755,118.810059 96.8307571,120.638062) t=0 [25] (108.557755,118.810059) tEnd=1 newWindSum=-1 newOppSum=0 oppSum=? windSum=? windValue=1 oppValue=0
SkOpSegment::markWinding id=12 (108.73912,118.758026 108.557755,118.810059) t=0 [23] (108.73912,118.758026) tEnd=1 newWindSum=-1 newOppSum=0 oppSum=? windSum=? windValue=1 oppValue=0
SkOpSegment::markWinding id=11 (123.320007,107.000946 117.109985,115.177612 108.73912,118.758026) t=0 [21] (123.320007,107.000946) tEnd=1 newWindSum=-1 newOppSum=0 oppSum=? windSum=? windValue=1 oppValue=0
SkOpSegment::markWinding id=10 (123.388428,106.910896 123.365623,106.94088 123.320007,107.000946) t=0.0189869068 [66] (123.38755,106.912048) tEnd=1 newWindSum=-1 newOppSum=0 oppSum=? windSum=? windValue=1 oppValue=0
SkOpSegment::findNextWinding simple
SkOpSegment::markDone id=1 (95.9684143,119.751823 97.2032471,113.040466 102.896156,108.083267) t=0 [1] (95.9684143,119.751823) tEnd=1 newWindSum=-1 newOppSum=0 oppSum=0 windSum=-1 windValue=1 oppValue=0
bridgeWinding current id=1 from=(102.896156,108.083267) to=(95.9684143,119.751823)
path.moveTo(102.896156,108.083267);
path.quadTo(97.2032471,113.040466, 95.9684143,119.751823);
SkOpSegment::findNextWinding simple
SkOpSegment::markDone id=14 (96.8307571,120.638062 95.9684143,119.751823) t=0 [27] (96.8307571,120.638062) tEnd=1 newWindSum=-1 newOppSum=0 oppSum=0 windSum=-1 windValue=1 oppValue=0
bridgeWinding current id=14 from=(95.9684143,119.751823) to=(96.8307571,120.638062)
SkOpSegment::findNextWinding simple
SkOpSegment::markDone id=13 (108.557755,118.810059 96.8307571,120.638062) t=0 [25] (108.557755,118.810059) tEnd=1 newWindSum=-1 newOppSum=0 oppSum=0 windSum=-1 windValue=1 oppValue=0
bridgeWinding current id=13 from=(96.8307571,120.638062) to=(108.557755,118.810059)
path.lineTo(96.8307571,120.638062);
SkOpSegment::findNextWinding simple
SkOpSegment::markDone id=12 (108.73912,118.758026 108.557755,118.810059) t=0 [23] (108.73912,118.758026) tEnd=1 newWindSum=-1 newOppSum=0 oppSum=0 windSum=-1 windValue=1 oppValue=0
bridgeWinding current id=12 from=(108.557755,118.810059) to=(108.73912,118.758026)
path.lineTo(108.557755,118.810059);
SkOpSegment::findNextWinding simple
SkOpSegment::markDone id=11 (123.320007,107.000946 117.109985,115.177612 108.73912,118.758026) t=0 [21] (123.320007,107.000946) tEnd=1 newWindSum=-1 newOppSum=0 oppSum=0 windSum=-1 windValue=1 oppValue=0
bridgeWinding current id=11 from=(108.73912,118.758026) to=(123.320007,107.000946)
path.lineTo(108.73912,118.758026);
path.quadTo(117.109985,115.177612, 123.320007,107.000946);
SkOpSegment::markWinding id=7 (123.637985,102.405312 125.172699,104.575714 123.387383,106.91227) t=0.999952051 [65] (123.38755,106.912048) tEnd=1 newWindSum=1 windSum=? windValue=1
SkOpSegment::markWinding id=8 (123.387383,106.91227 122.784996,106.452003) t=0 [15] (123.387383,106.91227) tEnd=1 newWindSum=1 windSum=? windValue=1
SkOpSegment::markWinding id=9 (122.784996,106.452003 123.388428,106.910896) t=0 [17] (122.784996,106.452003) tEnd=1 newWindSum=1 windSum=? windValue=1
SkOpSegment::markWinding id=10 (123.388428,106.910896 123.365623,106.94088 123.320007,107.000946) t=0 [19] (123.388428,106.910896) tEnd=0.0189869068 newWindSum=1 windSum=? windValue=1
SkOpSegment::markAngle last seg=10 span=66 windSum=-1
SkOpSegment::findNextWinding
SkOpAngle::dumpOne [10/4] next=7/2 sect=21/21  s=0.0189869068 [66] e=1 [20] sgn=-1 windVal=1 windSum=-1 oppVal=0 oppSum=0
SkOpAngle::dumpOne [7/2] next=7/1 sect=21/21  s=0.999952051 [65] e=1 [14] sgn=-1 windVal=1 windSum=1
SkOpAngle::dumpOne [7/1] next=10/3 sect=5/5  s=0.999952051 [65] e=0 [13] sgn=1 windVal=1 windSum=-1 oppVal=0 oppSum=0
SkOpAngle::dumpOne [10/3] next=10/4 sect=5/5  s=0.0189869068 [66] e=0 [19] sgn=1 windVal=1 windSum=1
SkOpSegment::findNextWinding chase.append segment=10 span=66 windSum=-1
SkOpSegment::markDone id=10 (123.388428,106.910896 123.365623,106.94088 123.320007,107.000946) t=0.0189869068 [66] (123.38755,106.912048) tEnd=1 newWindSum=-1 newOppSum=0 oppSum=0 windSum=-1 windValue=1 oppValue=0
SkOpSegment::findNextWinding from:[10] to:[7] start=6169336 end=6162888
bridgeWinding current id=10 from=(123.320007,107.000946) to=(123.38755,106.912048)
path.quadTo(123.365601,106.940903, 123.38755,106.912048);
SkOpSegment::findNextWinding simple
SkOpSegment::markDone id=7 (123.637985,102.405312 125.172699,104.575714 123.387383,106.91227) t=0.999952051 [65] (123.38755,106.912048) tEnd=1 newWindSum=1 newOppSum=? oppSum=? windSum=1 windValue=1 oppValue=0
bridgeWinding current id=7 from=(123.38755,106.912048) to=(123.387383,106.91227)
SkOpSegment::findNextWinding simple
SkOpSegment::markDone id=8 (123.387383,106.91227 122.784996,106.452003) t=0 [15] (123.387383,106.91227) tEnd=1 newWindSum=1 newOppSum=? oppSum=? windSum=1 windValue=1 oppValue=0
bridgeWinding current id=8 from=(123.387383,106.91227) to=(122.784996,106.452003)
path.lineTo(123.387383,106.91227);
SkOpSegment::findNextWinding simple
SkOpSegment::markDone id=9 (122.784996,106.452003 123.388428,106.910896) t=0 [17] (122.784996,106.452003) tEnd=1 newWindSum=1 newOppSum=? oppSum=? windSum=1 windValue=1 oppValue=0
bridgeWinding current id=9 from=(122.784996,106.452003) to=(123.388428,106.910896)
path.lineTo(122.784996,106.452003);
SkOpSegment::findNextWinding
SkOpAngle::dumpOne [10/3] next=10/4 sect=5/5  s=0.0189869068 [66] e=0 [19] sgn=1 windVal=1 windSum=1
SkOpAngle::dumpOne [10/4] next=7/2 sect=21/21  s=0.0189869068 [66] e=1 [20] sgn=-1 windVal=1 windSum=-1 oppVal=0 oppSum=0 done
SkOpAngle::dumpOne [7/2] next=7/1 sect=21/21  s=0.999952051 [65] e=1 [14] sgn=-1 windVal=1 windSum=1 done
SkOpAngle::dumpOne [7/1] next=10/3 sect=5/5  s=0.999952051 [65] e=0 [13] sgn=1 windVal=1 windSum=-1 oppVal=0 oppSum=0
SkOpSegment::markDone id=7 (123.637985,102.405312 125.172699,104.575714 123.387383,106.91227) t=0 [13] (123.637985,102.405312) tEnd=0.999952051 newWindSum=-1 newOppSum=0 oppSum=0 windSum=-1 windValue=1 oppValue=0
SkOpSegment::markDone id=6 (122.958702,102.087303 123.637985,102.405312) t=0 [11] (122.958702,102.087303) tEnd=1 newWindSum=-1 newOppSum=0 oppSum=0 windSum=-1 windValue=1 oppValue=0
SkOpSegment::markDone id=5 (113.169701,102.868301 122.958702,102.087303) t=0 [9] (113.169701,102.868301) tEnd=1 newWindSum=-1 newOppSum=0 oppSum=0 windSum=-1 windValue=1 oppValue=0
SkOpSegment::markDone id=4 (113.029114,102.892998 113.169701,102.868301) t=0 [7] (113.029114,102.892998) tEnd=1 newWindSum=-1 newOppSum=0 oppSum=0 windSum=-1 windValue=1 oppValue=0
SkOpSegment::markDone id=3 (102.896736,108.082771 106.944885,104.564941 113.029114,102.892998) t=0 [5] (102.896736,108.082771) tEnd=1 newWindSum=-1 newOppSum=0 oppSum=0 windSum=-1 windValue=1 oppValue=0
SkOpSegment::markDone id=2 (102.896156,108.083267 102.896736,108.082771) t=0 [3] (102.896156,108.083267) tEnd=1 newWindSum=-1 newOppSum=0 oppSum=0 windSum=-1 windValue=1 oppValue=0
SkOpSegment::markDone id=10 (123.388428,106.910896 123.365623,106.94088 123.320007,107.000946) t=0 [19] (123.388428,106.910896) tEnd=0.0189869068 newWindSum=1 newOppSum=? oppSum=? windSum=1 windValue=1 oppValue=0
SkOpSegment::findNextWinding from:[10] to:[10] start=6169448 end=6163608
bridgeWinding current id=10 from=(123.388428,106.910896) to=(123.38755,106.912048)
path.lineTo(123.388428,106.910896);
path.lineTo(123.38755,106.912048);
SkOpSegment::debugShowActiveSpans id=15 (97.4595795,120.026184 96.7139969,119.889008) t=0 tEnd=1 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=16 (96.7139969,119.889008 96.5972366,119.139954) t=0 tEnd=1 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=17 (96.5972366,119.139954 97.6869507,118.970093) t=0 tEnd=0.0929234671 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=17 (97.6869507,118.970093 108.229698,117.326683) t=0.0929234671 tEnd=0.991938827 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=17 (108.229698,117.326683 108.324234,117.311951) t=0.991938827 tEnd=1 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=18 (108.324234,117.311951 108.440994,118.061005) t=0 tEnd=1 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=19 (108.440994,118.061005 108.142868,117.363983) t=0 tEnd=1 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=20 (108.142868,117.363983 108.185051,117.34594 108.229698,117.326683) t=0 tEnd=0.00542932628 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=20 (108.229698,117.326683 116.177424,113.898617 122.112564,106.083923) t=0.00542932628 tEnd=1 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=21 (122.112564,106.083923 122.158455,106.023499 122.181564,105.993111) t=0 tEnd=1 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=22 (122.181564,105.993111 122.18261,105.991737) t=0 tEnd=1 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=23 (122.18261,105.991737 123.136432,104.743399 122.609795,103.636162) t=0 tEnd=0.860440414 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=23 (122.609795,103.636162 122.524376,103.456572 122.400009,103.280693) t=0.860440414 tEnd=1 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=24 (122.400009,103.280693 123.018997,102.843002) t=0 tEnd=1 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=25 (123.018997,102.843002 123.079292,103.598701) t=0 tEnd=1 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=26 (123.079292,103.598701 122.609795,103.636162) t=0 tEnd=0.0479619043 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=26 (122.609795,103.636162 113.362167,104.373962) t=0.0479619043 tEnd=0.992657126 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=26 (113.362167,104.373962 113.290291,104.3797) t=0.992657126 tEnd=1 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=27 (113.290291,104.3797 113.229996,103.624001) t=0 tEnd=1 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=28 (113.229996,103.624001 113.430878,104.355003) t=0 tEnd=1 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=29 (113.430878,104.355003 113.395068,104.364844 113.362167,104.373962) t=0 tEnd=0.00597885639 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=29 (113.362167,104.373962 107.656922,105.955165 103.89183,109.226723) t=0.00597885639 tEnd=0.999923983 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=30 (103.891258,109.227226 103.393997,108.654999) t=0 tEnd=1 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=31 (103.393997,108.654999 103.891838,109.22673) t=0 tEnd=1 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=32 (103.891838,109.22673 103.891552,109.226982 103.891266,109.227234) t=0 tEnd=5.43505489e-05 windSum=? windValue=2
SkOpSegment::debugShowActiveSpans id=32 (103.891266,109.227234 99.0549405,113.438713 97.6869507,118.970093) t=5.43505489e-05 tEnd=0.913746799 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=32 (97.6869507,118.970093 97.5578058,119.492282 97.4595795,120.026184) t=0.913746799 tEnd=1 windSum=? windValue=1
SkOpSpan::sortableTop dir=kTop seg=15 t=0.5 pt=(97.086792,119.957596)
SkOpSpan::sortableTop [0] valid=1 operand=0 span=1 ccw=1 seg=1 {{{95.9684143f, 119.751823f}, {97.2032471f, 113.040466f}, {102.896156f, 108.083267f}}} t=0.295365035 pt=(97.086792,115.940254) slope=(2.55159268,-6.19324017)
SkOpSpan::sortableTop [1] valid=1 operand=0 span=33 ccw=1 seg=17 {{{96.5972366f, 119.139954f}, {108.324234f, 117.311951f}}} t=0.0417460108 pt=(97.086792,119.063644) slope=(11.7269974,-1.82800293)
SkOpSpan::sortableTop [2] valid=1 operand=0 span=29 ccw=0 seg=15 {{{97.4595795f, 120.026184f}, {96.7139969f, 119.889008f}}} t=0.5 pt=(97.086792,119.957596) slope=(-0.745582581,-0.137176514)
SkOpSegment::markWinding id=17 (96.5972366,119.139954 108.324234,117.311951) t=0 [33] (96.5972366,119.139954) tEnd=0.0929234671 newWindSum=-2 newOppSum=0 oppSum=0 windSum=-2 windValue=1 oppValue=0
SkOpSegment::markWinding id=17 (96.5972366,119.139954 108.324234,117.311951) t=0 [33] (96.5972366,119.139954) tEnd=0.0929234671 newWindSum=-2 newOppSum=0 oppSum=0 windSum=-2 windValue=1 oppValue=0
SkOpSegment::markWinding id=16 (96.7139969,119.889008 96.5972366,119.139954) t=0 [31] (96.7139969,119.889008) tEnd=1 newWindSum=-2 newOppSum=0 oppSum=? windSum=? windValue=1 oppValue=0
SkOpSegment::markWinding id=15 (97.4595795,120.026184 96.7139969,119.889008) t=0 [29] (97.4595795,120.026184) tEnd=1 newWindSum=-2 newOppSum=0 oppSum=? windSum=? windValue=1 oppValue=0
SkOpSegment::markWinding id=32 (103.891838,109.22673 98.5984497,113.835938 97.4595795,120.026184) t=0.913746799 [70] (97.6869507,118.970093) tEnd=1 newWindSum=-2 newOppSum=0 oppSum=? windSum=? windValue=1 oppValue=0
SkOpSegment::markDone id=15 (97.4595795,120.026184 96.7139969,119.889008) t=0 [29] (97.4595795,120.026184) tEnd=1 newWindSum=-2 newOppSum=0 oppSum=0 windSum=-2 windValue=1 oppValue=0
SkOpSegment::markDone id=32 (103.891838,109.22673 98.5984497,113.835938 97.4595795,120.026184) t=0.913746799 [70] (97.6869507,118.970093) tEnd=1 newWindSum=-2 newOppSum=0 oppSum=0 windSum=-2 windValue=1 oppValue=0
bridgeWinding chase.append id=32 windSum=-2
SkOpSegment::debugShowActiveSpans id=16 (96.7139969,119.889008 96.5972366,119.139954) t=0 tEnd=1 windSum=-2 oppSum=0 windValue=1 oppValue=0
SkOpSegment::debugShowActiveSpans id=17 (96.5972366,119.139954 97.6869507,118.970093) t=0 tEnd=0.0929234671 windSum=-2 oppSum=0 windValue=1 oppValue=0
SkOpSegment::debugShowActiveSpans id=17 (97.6869507,118.970093 108.229698,117.326683) t=0.0929234671 tEnd=0.991938827 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=17 (108.229698,117.326683 108.324234,117.311951) t=0.991938827 tEnd=1 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=18 (108.324234,117.311951 108.440994,118.061005) t=0 tEnd=1 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=19 (108.440994,118.061005 108.142868,117.363983) t=0 tEnd=1 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=20 (108.142868,117.363983 108.185051,117.34594 108.229698,117.326683) t=0 tEnd=0.00542932628 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=20 (108.229698,117.326683 116.177424,113.898617 122.112564,106.083923) t=0.00542932628 tEnd=1 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=21 (122.112564,106.083923 122.158455,106.023499 122.181564,105.993111) t=0 tEnd=1 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=22 (122.181564,105.993111 122.18261,105.991737) t=0 tEnd=1 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=23 (122.18261,105.991737 123.136432,104.743399 122.609795,103.636162) t=0 tEnd=0.860440414 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=23 (122.609795,103.636162 122.524376,103.456572 122.400009,103.280693) t=0.860440414 tEnd=1 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=24 (122.400009,103.280693 123.018997,102.843002) t=0 tEnd=1 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=25 (123.018997,102.843002 123.079292,103.598701) t=0 tEnd=1 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=26 (123.079292,103.598701 122.609795,103.636162) t=0 tEnd=0.0479619043 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=26 (122.609795,103.636162 113.362167,104.373962) t=0.0479619043 tEnd=0.992657126 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=26 (113.362167,104.373962 113.290291,104.3797) t=0.992657126 tEnd=1 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=27 (113.290291,104.3797 113.229996,103.624001) t=0 tEnd=1 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=28 (113.229996,103.624001 113.430878,104.355003) t=0 tEnd=1 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=29 (113.430878,104.355003 113.395068,104.364844 113.362167,104.373962) t=0 tEnd=0.00597885639 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=29 (113.362167,104.373962 107.656922,105.955165 103.89183,109.226723) t=0.00597885639 tEnd=0.999923983 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=30 (103.891258,109.227226 103.393997,108.654999) t=0 tEnd=1 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=31 (103.393997,108.654999 103.891838,109.22673) t=0 tEnd=1 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=32 (103.891838,109.22673 103.891552,109.226982 103.891266,109.227234) t=0 tEnd=5.43505489e-05 windSum=? windValue=2
SkOpSegment::debugShowActiveSpans id=32 (103.891266,109.227234 99.0549405,113.438713 97.6869507,118.970093) t=5.43505489e-05 tEnd=0.913746799 windSum=? windValue=1
SkOpSegment::markDone id=17 (96.5972366,119.139954 108.324234,117.311951) t=0 [33] (96.5972366,119.139954) tEnd=0.0929234671 newWindSum=-2 newOppSum=0 oppSum=0 windSum=-2 windValue=1 oppValue=0
SkOpSegment::markDone id=16 (96.7139969,119.889008 96.5972366,119.139954) t=0 [31] (96.7139969,119.889008) tEnd=1 newWindSum=-2 newOppSum=0 oppSum=0 windSum=-2 windValue=1 oppValue=0
SkOpSegment::markWinding id=17 (96.5972366,119.139954 108.324234,117.311951) t=0.0929234671 [69] (97.6869507,118.970093) tEnd=0.991938827 newWindSum=-1 windSum=? windValue=1
SkOpSegment::markAngle last seg=17 span=67 windSum=?
SkOpSegment::markWinding id=32 (103.891838,109.22673 98.5984497,113.835938 97.4595795,120.026184) t=5.43505489e-05 [76] (103.891266,109.227234) tEnd=0.913746799 newWindSum=-1 windSum=? windValue=1
SkOpSegment::markAngle last seg=32 span=76 windSum=-1
SkOpSegment::debugShowActiveSpans id=17 (97.6869507,118.970093 108.229698,117.326683) t=0.0929234671 tEnd=0.991938827 windSum=-1 windValue=1
SkOpSegment::debugShowActiveSpans id=17 (108.229698,117.326683 108.324234,117.311951) t=0.991938827 tEnd=1 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=18 (108.324234,117.311951 108.440994,118.061005) t=0 tEnd=1 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=19 (108.440994,118.061005 108.142868,117.363983) t=0 tEnd=1 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=20 (108.142868,117.363983 108.185051,117.34594 108.229698,117.326683) t=0 tEnd=0.00542932628 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=20 (108.229698,117.326683 116.177424,113.898617 122.112564,106.083923) t=0.00542932628 tEnd=1 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=21 (122.112564,106.083923 122.158455,106.023499 122.181564,105.993111) t=0 tEnd=1 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=22 (122.181564,105.993111 122.18261,105.991737) t=0 tEnd=1 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=23 (122.18261,105.991737 123.136432,104.743399 122.609795,103.636162) t=0 tEnd=0.860440414 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=23 (122.609795,103.636162 122.524376,103.456572 122.400009,103.280693) t=0.860440414 tEnd=1 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=24 (122.400009,103.280693 123.018997,102.843002) t=0 tEnd=1 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=25 (123.018997,102.843002 123.079292,103.598701) t=0 tEnd=1 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=26 (123.079292,103.598701 122.609795,103.636162) t=0 tEnd=0.0479619043 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=26 (122.609795,103.636162 113.362167,104.373962) t=0.0479619043 tEnd=0.992657126 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=26 (113.362167,104.373962 113.290291,104.3797) t=0.992657126 tEnd=1 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=27 (113.290291,104.3797 113.229996,103.624001) t=0 tEnd=1 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=28 (113.229996,103.624001 113.430878,104.355003) t=0 tEnd=1 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=29 (113.430878,104.355003 113.395068,104.364844 113.362167,104.373962) t=0 tEnd=0.00597885639 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=29 (113.362167,104.373962 107.656922,105.955165 103.89183,109.226723) t=0.00597885639 tEnd=0.999923983 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=30 (103.891258,109.227226 103.393997,108.654999) t=0 tEnd=1 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=31 (103.393997,108.654999 103.891838,109.22673) t=0 tEnd=1 windSum=? windValue=1
SkOpSegment::debugShowActiveSpans id=32 (103.891838,109.22673 103.891552,109.226982 103.891266,109.227234) t=0 tEnd=5.43505489e-05 windSum=? windValue=2
SkOpSegment::debugShowActiveSpans id=32 (103.891266,109.227234 99.0549405,113.438713 97.6869507,118.970093) t=5.43505489e-05 tEnd=0.913746799 windSum=-1 windValue=1
SkOpSegment::markWinding id=20 (108.142868,117.363983 116.14502,113.941284 122.112564,106.083923) t=0 [39] (108.142868,117.363983) tEnd=0.00542932628 newWindSum=-2 windSum=? windValue=1
SkOpSegment::markWinding id=19 (108.440994,118.061005 108.142868,117.363983) t=0 [37] (108.440994,118.061005) tEnd=1 newWindSum=-2 windSum=? windValue=1
SkOpSegment::markWinding id=18 (108.324234,117.311951 108.440994,118.061005) t=0 [35] (108.324234,117.311951) tEnd=1 newWindSum=-2 windSum=? windValue=1
SkOpSegment::markWinding id=17 (96.5972366,119.139954 108.324234,117.311951) t=0.991938827 [67] (108.229698,117.326683) tEnd=1 newWindSum=-2 windSum=? windValue=1
SkOpSegment::markAngle last seg=17 span=67 windSum=-2
SkOpSegment::markWinding id=20 (108.142868,117.363983 116.14502,113.941284 122.112564,106.083923) t=0.00542932628 [68] (108.229698,117.326683) tEnd=1 newWindSum=-1 windSum=? windValue=1
SkOpSegment::markWinding id=21 (122.112564,106.083923 122.158455,106.023499 122.181564,105.993111) t=0 [41] (122.112564,106.083923) tEnd=1 newWindSum=-1 windSum=? windValue=1
SkOpSegment::markWinding id=22 (122.181564,105.993111 122.18261,105.991737) t=0 [43] (122.181564,105.993111) tEnd=1 newWindSum=-1 windSum=? windValue=1
SkOpSegment::markWinding id=23 (122.18261,105.991737 123.291138,104.540924 122.400009,103.280693) t=0 [45] (122.18261,105.991737) tEnd=0.860440414 newWindSum=-1 windSum=? windValue=1
SkOpSegment::markAngle last seg=23 span=71 windSum=?
SkOpSegment::findNextWinding
SkOpAngle::dumpOne [17/7] next=20/9 sect=17/17  s=0.991938827 [67] e=0.0929234671 [69] sgn=1 windVal=1 windSum=-1
SkOpAngle::dumpOne [20/9] next=17/8 sect=17/17  s=0.00542932628 [68] e=0 [39] sgn=1 windVal=1 windSum=-2
SkOpAngle::dumpOne [17/8] next=20/10 sect=1/1  s=0.991938827 [67] e=1 [34] sgn=-1 windVal=1 windSum=-2
SkOpAngle::dumpOne [20/10] next=17/7 sect=1/1  s=0.00542932628 [68] e=1 [40] sgn=-1 windVal=1 windSum=-1
SkOpSegment::markDone id=20 (108.142868,117.363983 116.14502,113.941284 122.112564,106.083923) t=0 [39] (108.142868,117.363983) tEnd=0.00542932628 newWindSum=-2 newOppSum=? oppSum=? windSum=-2 windValue=1 oppValue=0
SkOpSegment::markDone id=19 (108.440994,118.061005 108.142868,117.363983) t=0 [37] (108.440994,118.061005) tEnd=1 newWindSum=-2 newOppSum=? oppSum=? windSum=-2 windValue=1 oppValue=0
SkOpSegment::markDone id=18 (108.324234,117.311951 108.440994,118.061005) t=0 [35] (108.324234,117.311951) tEnd=1 newWindSum=-2 newOppSum=? oppSum=? windSum=-2 windValue=1 oppValue=0
SkOpSegment::markDone id=17 (96.5972366,119.139954 108.324234,117.311951) t=0.991938827 [67] (108.229698,117.326683) tEnd=1 newWindSum=-2 newOppSum=? oppSum=? windSum=-2 windValue=1 oppValue=0
SkOpSegment::findNextWinding chase.append segment=17 span=67 windSum=-2
SkOpSegment::findNextWinding chase.append segment=23 span=71 windSum=-2147483647
SkOpSegment::markDone id=17 (96.5972366,119.139954 108.324234,117.311951) t=0.0929234671 [69] (97.6869507,118.970093) tEnd=0.991938827 newWindSum=-1 newOppSum=? oppSum=? windSum=-1 windValue=1 oppValue=0
SkOpSegment::findNextWinding from:[17] to:[20] start=6169672 end=6166328
bridgeWinding current id=17 from=(97.6869507,118.970093) to=(108.229698,117.326683)
SkOpSegment::findNextWinding simple
SkOpSegment::markDone id=20 (108.142868,117.363983 116.14502,113.941284 122.112564,106.083923) t=0.00542932628 [68] (108.229698,117.326683) tEnd=1 newWindSum=-1 newOppSum=? oppSum=? windSum=-1 windValue=1 oppValue=0
bridgeWinding current id=20 from=(108.229698,117.326683) to=(122.112564,106.083923)
path.moveTo(97.6869507,118.970093);
path.lineTo(108.229698,117.326683);
path.quadTo(116.177422,113.898621, 122.112564,106.083923);
SkOpSegment::findNextWinding simple
SkOpSegment::markDone id=21 (122.112564,106.083923 122.158455,106.023499 122.181564,105.993111) t=0 [41] (122.112564,106.083923) tEnd=1 newWindSum=-1 newOppSum=? oppSum=? windSum=-1 windValue=1 oppValue=0
bridgeWinding current id=21 from=(122.112564,106.083923) to=(122.181564,105.993111)
path.quadTo(122.158455,106.023499, 122.181564,105.993111);
SkOpSegment::findNextWinding simple
SkOpSegment::markDone id=22 (122.181564,105.993111 122.18261,105.991737) t=0 [43] (122.181564,105.993111) tEnd=1 newWindSum=-1 newOppSum=? oppSum=? windSum=-1 windValue=1 oppValue=0
bridgeWinding current id=22 from=(122.181564,105.993111) to=(122.18261,105.991737)
SkOpSegment::markWinding id=26 (123.079292,103.598701 113.290291,104.3797) t=0 [51] (123.079292,103.598701) tEnd=0.0479619043 newWindSum=-2 windSum=? windValue=1
SkOpSegment::markWinding id=25 (123.018997,102.843002 123.079292,103.598701) t=0 [49] (123.018997,102.843002) tEnd=1 newWindSum=-2 windSum=? windValue=1
SkOpSegment::markWinding id=24 (122.400009,103.280693 123.018997,102.843002) t=0 [47] (122.400009,103.280693) tEnd=1 newWindSum=-2 windSum=? windValue=1
SkOpSegment::markWinding id=23 (122.18261,105.991737 123.291138,104.540924 122.400009,103.280693) t=0.860440414 [71] (122.609795,103.636162) tEnd=1 newWindSum=-2 windSum=? windValue=1
SkOpSegment::markAngle last seg=23 span=71 windSum=-2
SkOpSegment::markWinding id=26 (123.079292,103.598701 113.290291,104.3797) t=0.0479619043 [72] (122.609795,103.636162) tEnd=0.992657126 newWindSum=-1 windSum=? windValue=1
SkOpSegment::markAngle last seg=26 span=73 windSum=?
SkOpSegment::findNextWinding
SkOpAngle::dumpOne [23/11] next=26/13 sect=25/21  s=0.860440414 [71] e=0 [45] sgn=1 windVal=1 windSum=-1
SkOpAngle::dumpOne [26/13] next=23/12 sect=1/1  s=0.0479619043 [72] e=0 [51] sgn=1 windVal=1 windSum=-2
SkOpAngle::dumpOne [23/12] next=26/14 sect=9/9  s=0.860440414 [71] e=1 [46] sgn=-1 windVal=1 windSum=-2
SkOpAngle::dumpOne [26/14] next=23/11 sect=17/17  s=0.0479619043 [72] e=0.992657126 [73] sgn=-1 windVal=1 windSum=-1
SkOpSegment::markDone id=26 (123.079292,103.598701 113.290291,104.3797) t=0 [51] (123.079292,103.598701) tEnd=0.0479619043 newWindSum=-2 newOppSum=? oppSum=? windSum=-2 windValue=1 oppValue=0
SkOpSegment::markDone id=25 (123.018997,102.843002 123.079292,103.598701) t=0 [49] (123.018997,102.843002) tEnd=1 newWindSum=-2 newOppSum=? oppSum=? windSum=-2 windValue=1 oppValue=0
SkOpSegment::markDone id=24 (122.400009,103.280693 123.018997,102.843002) t=0 [47] (122.400009,103.280693) tEnd=1 newWindSum=-2 newOppSum=? oppSum=? windSum=-2 windValue=1 oppValue=0
SkOpSegment::markDone id=23 (122.18261,105.991737 123.291138,104.540924 122.400009,103.280693) t=0.860440414 [71] (122.609795,103.636162) tEnd=1 newWindSum=-2 newOppSum=? oppSum=? windSum=-2 windValue=1 oppValue=0
SkOpSegment::findNextWinding chase.append segment=26 span=73 windSum=-2147483647
SkOpSegment::markDone id=23 (122.18261,105.991737 123.291138,104.540924 122.400009,103.280693) t=0 [45] (122.18261,105.991737) tEnd=0.860440414 newWindSum=-1 newOppSum=? oppSum=? windSum=-1 windValue=1 oppValue=0
SkOpSegment::findNextWinding from:[23] to:[26] start=6170120 end=6170232
bridgeWinding current id=23 from=(122.18261,105.991737) to=(122.609795,103.636162)
path.lineTo(122.18261,105.991737);
path.quadTo(123.136429,104.743401, 122.609795,103.636162);
SkOpSegment::markWinding id=29 (113.430878,104.355003 107.679138,105.935608 103.891258,109.227226) t=0 [57] (113.430878,104.355003) tEnd=0.00597885639 newWindSum=-2 windSum=? windValue=1
SkOpSegment::markWinding id=28 (113.229996,103.624001 113.430878,104.355003) t=0 [55] (113.229996,103.624001) tEnd=1 newWindSum=-2 windSum=? windValue=1
SkOpSegment::markWinding id=27 (113.290291,104.3797 113.229996,103.624001) t=0 [53] (113.290291,104.3797) tEnd=1 newWindSum=-2 windSum=? windValue=1
SkOpSegment::markWinding id=26 (123.079292,103.598701 113.290291,104.3797) t=0.992657126 [73] (113.362167,104.373962) tEnd=1 newWindSum=-2 windSum=? windValue=1
SkOpSegment::markAngle last seg=26 span=73 windSum=-2
SkOpSegment::markWinding id=29 (113.430878,104.355003 107.679138,105.935608 103.891258,109.227226) t=0.00597885639 [74] (113.362167,104.373962) tEnd=0.999923983 newWindSum=-1 windSum=? windValue=1
SkOpSegment::markAngle last seg=29 span=75 windSum=?
SkOpSegment::findNextWinding
SkOpAngle::dumpOne [26/15] next=29/17 sect=1/1  s=0.992657126 [73] e=0.0479619043 [72] sgn=1 windVal=1 windSum=-1
SkOpAngle::dumpOne [29/17] next=26/16 sect=1/1  s=0.00597885639 [74] e=0 [57] sgn=1 windVal=1 windSum=-2
SkOpAngle::dumpOne [26/16] next=29/18 sect=17/17  s=0.992657126 [73] e=1 [52] sgn=-1 windVal=1 windSum=-2
SkOpAngle::dumpOne [29/18] next=26/15 sect=17/17  s=0.00597885639 [74] e=0.999923983 [75] sgn=-1 windVal=1 windSum=-1
SkOpSegment::markDone id=29 (113.430878,104.355003 107.679138,105.935608 103.891258,109.227226) t=0 [57] (113.430878,104.355003) tEnd=0.00597885639 newWindSum=-2 newOppSum=? oppSum=? windSum=-2 windValue=1 oppValue=0
SkOpSegment::markDone id=28 (113.229996,103.624001 113.430878,104.355003) t=0 [55] (113.229996,103.624001) tEnd=1 newWindSum=-2 newOppSum=? oppSum=? windSum=-2 windValue=1 oppValue=0
SkOpSegment::markDone id=27 (113.290291,104.3797 113.229996,103.624001) t=0 [53] (113.290291,104.3797) tEnd=1 newWindSum=-2 newOppSum=? oppSum=? windSum=-2 windValue=1 oppValue=0
SkOpSegment::markDone id=26 (123.079292,103.598701 113.290291,104.3797) t=0.992657126 [73] (113.362167,104.373962) tEnd=1 newWindSum=-2 newOppSum=? oppSum=? windSum=-2 windValue=1 oppValue=0
SkOpSegment::findNextWinding chase.append segment=29 span=75 windSum=-2147483647
SkOpSegment::markDone id=26 (123.079292,103.598701 113.290291,104.3797) t=0.0479619043 [72] (122.609795,103.636162) tEnd=0.992657126 newWindSum=-1 newOppSum=? oppSum=? windSum=-1 windValue=1 oppValue=0
SkOpSegment::findNextWinding from:[26] to:[29] start=6170344 end=6170456
bridgeWinding current id=26 from=(122.609795,103.636162) to=(113.362167,104.373962)
SkOpSegment::markWinding id=31 (103.393997,108.654999 103.891838,109.22673) t=0 [61] (103.393997,108.654999) tEnd=1 newWindSum=-2 windSum=? windValue=1
SkOpSegment::markWinding id=30 (103.891258,109.227226 103.393997,108.654999) t=0 [59] (103.891258,109.227226) tEnd=1 newWindSum=-2 windSum=? windValue=1
SkOpSegment::markAngle last seg=30 span=59 windSum=-2
SkOpSegment::markWinding id=32 (103.891838,109.22673 98.5984497,113.835938 97.4595795,120.026184) t=0 [63] (103.891838,109.22673) tEnd=5.43505489e-05 newWindSum=-2 windSum=? windValue=2
SkOpSegment::markAngle last seg=32 span=76 windSum=-1
SkOpSegment::findNextWinding
SkOpAngle::dumpOne [29/19] next=31/21 sect=1/1  s=0.999923983 [75] e=0.00597885639 [74] sgn=1 windVal=1 windSum=-1
SkOpAngle::dumpOne [31/21] next=32/22 sect=9/9  s=1 [62] e=0 [61] sgn=1 windVal=1 windSum=-2
SkOpAngle::dumpOne [32/22] next=29/19 sect=17/17  s=0 [63] e=5.43505489e-05 [76] sgn=-1 windVal=2 windSum=-2
SkOpSegment::markDone id=31 (103.393997,108.654999 103.891838,109.22673) t=0 [61] (103.393997,108.654999) tEnd=1 newWindSum=-2 newOppSum=? oppSum=? windSum=-2 windValue=1 oppValue=0
SkOpSegment::markDone id=30 (103.891258,109.227226 103.393997,108.654999) t=0 [59] (103.891258,109.227226) tEnd=1 newWindSum=-2 newOppSum=? oppSum=? windSum=-2 windValue=1 oppValue=0
SkOpSegment::findNextWinding chase.append segment=30 span=59 windSum=-2
SkOpSegment::findNextWinding chase.append segment=32 span=76 windSum=-1
SkOpSegment::markDone id=29 (113.430878,104.355003 107.679138,105.935608 103.891258,109.227226) t=0.00597885639 [74] (113.362167,104.373962) tEnd=0.999923983 newWindSum=-1 newOppSum=? oppSum=? windSum=-1 windValue=1 oppValue=0
SkOpSegment::findNextWinding from:[29] to:[32] start=6169096 end=6170568
bridgeWinding current id=29 from=(113.362167,104.373962) to=(103.89183,109.226723)
path.lineTo(113.362167,104.373962);
path.quadTo(107.656921,105.955162, 103.89183,109.226723);
SkOpSegment::findNextWinding
SkOpAngle::dumpOne [32/23] next=30/20 sect=1/1  s=5.43505489e-05 [76] e=0 [63] sgn=1 windVal=2 windSum=-2
SkOpAngle::dumpOne [30/20] next=32/24 sect=9/9  s=0 [59] e=1 [60] sgn=-1 windVal=1 windSum=-2 done
SkOpAngle::dumpOne [32/24] next=32/23 sect=17/21  s=5.43505489e-05 [76] e=0.913746799 [70] sgn=-1 windVal=1 windSum=-1
SkOpSegment::markDone id=32 (103.891838,109.22673 98.5984497,113.835938 97.4595795,120.026184) t=0 [63] (103.891838,109.22673) tEnd=5.43505489e-05 newWindSum=-2 newOppSum=? oppSum=? windSum=-2 windValue=2 oppValue=0
SkOpSegment::findNextWinding from:[32] to:[32] start=6170568 end=6169896
bridgeWinding current id=32 from=(103.891838,109.22673) to=(103.891266,109.227234)
SkOpSegment::findNextWinding
SkOpAngle::dumpOne [32/25] next=17/5 sect=5/5  s=0.913746799 [70] e=5.43505489e-05 [76] sgn=1 windVal=1 windSum=-1
SkOpAngle::dumpOne [17/5] next=32/26 sect=17/17  s=0.0929234671 [69] e=0 [33] sgn=1 windVal=1 windSum=-2 oppVal=0 oppSum=0 done
SkOpAngle::dumpOne [32/26] next=17/6 sect=21/21  s=0.913746799 [70] e=1 [64] sgn=-1 windVal=1 windSum=-2 oppVal=0 oppSum=0 done
SkOpAngle::dumpOne [17/6] next=32/25 sect=1/1  s=0.0929234671 [69] e=0.991938827 [67] sgn=-1 windVal=1 windSum=-1 done
SkOpSegment::markDone id=32 (103.891838,109.22673 98.5984497,113.835938 97.4595795,120.026184) t=5.43505489e-05 [76] (103.891266,109.227234) tEnd=0.913746799 newWindSum=-1 newOppSum=? oppSum=? windSum=-1 windValue=1 oppValue=0
SkOpSegment::findNextWinding from:[32] to:[17] start=6169784 end=6169560
bridgeWinding current id=32 from=(103.891266,109.227234) to=(97.6869507,118.970093)
path.lineTo(103.891266,109.227234);
path.quadTo(99.0549393,113.438713, 97.6869507,118.970093);
path.close();
</div>

</div>

<script type="text/javascript">

    var testDivs = [
        simplifyTest_1,
    ];

var decimal_places = 3; // make this 3 to show more precision

var tests = [];
var testLines = [];
var testTitles = [];
var testIndex = 0;
var ctx;

var xmin, xmax, focusXmin, focusXmax;
var ymin, ymax, focusYmin, focusYmax;
var scale;
var mouseX, mouseY;
var srcLeft, srcTop;
var screenWidth, screenHeight;
var drawnPts, drawnLines, drawnQuads, drawnConics, drawnCubics;
var curveT = 0;

var pt_labels = 2;
var collect_bounds = false;
var control_lines = 0;
var curve_t = false;
var debug_xy = 1;
var focus_enabled = false;
var focus_on_selection = false;
var step_limit = 0;
var draw_active = false;
var draw_add = false;
var draw_angle = 0;
var draw_coincidence = false;
var draw_deriviatives = 0;
var draw_hints = false;
var draw_id = false;
var draw_intersection = 0;
var draw_intersectT = false;
var draw_legend = true;
var draw_log = false;
var draw_mark = false;
var draw_midpoint = false;
var draw_op = 0;
var draw_sequence = false;
var draw_sort = 0;
var draw_top = false;
var draw_path = 3;
var draw_computed = 0;
var retina_scale = !!window.devicePixelRatio;

var activeCount = 0;
var addCount = 0;
var angleCount = 0;
var coinCount = 0;
var opCount = 0;
var sectCount = 0;
var sortCount = 0;
var topCount = 0;
var markCount = 0;
var activeMax = 0;
var addMax = 0;
var angleMax = 0;
var coinMax = 0;
var sectMax = 0;
var sectMax2 = 0;
var sortMax = 0;
var topMax = 0;
var markMax = 0;
var opMax = 0;
var stepMax = 0;
var lastIndex = 0;
var hasPath = false;
var hasAlignedPath = false;
var hasComputedPath = false;
var angleBetween = false;
var afterIndex = 0;

var firstActiveSpan = -1;
var logStart = -1;
var logRange = 0;

var SPAN_ID = 0;
var SPAN_X1 = SPAN_ID + 1;
var SPAN_Y1 = SPAN_X1 + 1;
var SPAN_X2 = SPAN_Y1 + 1;
var SPAN_Y2 = SPAN_X2 + 1;

var SPAN_L_TX = SPAN_Y2 + 1;
var SPAN_L_TY = SPAN_L_TX + 1;
var SPAN_L_OTHER = SPAN_L_TY + 1;
var SPAN_L_OTHERT = SPAN_L_OTHER + 1;
var SPAN_L_OTHERI = SPAN_L_OTHERT + 1;
var SPAN_L_SUM = SPAN_L_OTHERI + 1;
var SPAN_L_VAL = SPAN_L_SUM + 1;
var SPAN_L_OPP = SPAN_L_VAL + 1;

var SPAN_X3 = SPAN_Y2 + 1;
var SPAN_Y3 = SPAN_X3 + 1;

var SPAN_Q_TX = SPAN_Y3 + 1;
var SPAN_Q_TY = SPAN_Q_TX + 1;
var SPAN_Q_OTHER = SPAN_Q_TY + 1;
var SPAN_Q_OTHERT = SPAN_Q_OTHER + 1;
var SPAN_Q_OTHERI = SPAN_Q_OTHERT + 1;
var SPAN_Q_SUM = SPAN_Q_OTHERI + 1;
var SPAN_Q_VAL = SPAN_Q_SUM + 1;
var SPAN_Q_OPP = SPAN_Q_VAL + 1;

var SPAN_K_W = SPAN_Y3 + 1;
var SPAN_K_TX = SPAN_K_W + 1;
var SPAN_K_TY = SPAN_K_TX + 1;
var SPAN_K_OTHER = SPAN_K_TY + 1;
var SPAN_K_OTHERT = SPAN_K_OTHER + 1;
var SPAN_K_OTHERI = SPAN_K_OTHERT + 1;
var SPAN_K_SUM = SPAN_K_OTHERI + 1;
var SPAN_K_VAL = SPAN_K_SUM + 1;
var SPAN_K_OPP = SPAN_K_VAL + 1;

var SPAN_X4 = SPAN_Y3 + 1;
var SPAN_Y4 = SPAN_X4 + 1;

var SPAN_C_TX = SPAN_Y4 + 1;
var SPAN_C_TY = SPAN_C_TX + 1;
var SPAN_C_OTHER = SPAN_C_TY + 1;
var SPAN_C_OTHERT = SPAN_C_OTHER + 1;
var SPAN_C_OTHERI = SPAN_C_OTHERT + 1;
var SPAN_C_SUM = SPAN_C_OTHERI + 1;
var SPAN_C_VAL = SPAN_C_SUM + 1;
var SPAN_C_OPP = SPAN_C_VAL + 1;

var ACTIVE_LINE_SPAN =        1;
var ACTIVE_QUAD_SPAN =        ACTIVE_LINE_SPAN + 1;
var ACTIVE_CONIC_SPAN =       ACTIVE_QUAD_SPAN + 1;
var ACTIVE_CUBIC_SPAN =       ACTIVE_CONIC_SPAN + 1;

var ADD_MOVETO =              ACTIVE_CUBIC_SPAN + 1;
var ADD_LINETO =              ADD_MOVETO + 1;
var ADD_QUADTO =              ADD_LINETO + 1;
var ADD_CONICTO =             ADD_QUADTO + 1;
var ADD_CUBICTO =             ADD_CONICTO + 1;
var ADD_CLOSE =               ADD_CUBICTO + 1;
var ADD_FILL =                ADD_CLOSE + 1;

var PATH_LINE =               ADD_FILL + 1;
var PATH_QUAD =               PATH_LINE + 1;
var PATH_CONIC =              PATH_QUAD + 1;
var PATH_CUBIC =              PATH_CONIC + 1;

var INTERSECT_LINE =          PATH_CUBIC + 1;
var INTERSECT_LINE_2 =        INTERSECT_LINE + 1;
var INTERSECT_LINE_NO =       INTERSECT_LINE_2 + 1;
var INTERSECT_QUAD_LINE =     INTERSECT_LINE_NO + 1;
var INTERSECT_QUAD_LINE_2 =   INTERSECT_QUAD_LINE + 1;
var INTERSECT_QUAD_LINE_NO =  INTERSECT_QUAD_LINE_2 + 1;
var INTERSECT_QUAD =          INTERSECT_QUAD_LINE_NO + 1;
var INTERSECT_QUAD_2 =        INTERSECT_QUAD + 1;
var INTERSECT_QUAD_NO =       INTERSECT_QUAD_2 + 1;
var INTERSECT_CONIC_LINE =    INTERSECT_QUAD_NO + 1;
var INTERSECT_CONIC_LINE_2 =  INTERSECT_CONIC_LINE + 1;
var INTERSECT_CONIC_LINE_NO = INTERSECT_CONIC_LINE_2 + 1;
var INTERSECT_CONIC_QUAD =    INTERSECT_CONIC_LINE_NO + 1;
var INTERSECT_CONIC_QUAD_2 =  INTERSECT_CONIC_QUAD + 1;
var INTERSECT_CONIC_QUAD_3 =  INTERSECT_CONIC_QUAD_2 + 1;
var INTERSECT_CONIC_QUAD_4 =  INTERSECT_CONIC_QUAD_3 + 1;
var INTERSECT_CONIC_QUAD_NO = INTERSECT_CONIC_QUAD_4 + 1;
var INTERSECT_CONIC =         INTERSECT_CONIC_QUAD_NO + 1;
var INTERSECT_CONIC_2 =       INTERSECT_CONIC + 1;
var INTERSECT_CONIC_NO =      INTERSECT_CONIC_2 + 1;
var INTERSECT_SELF_CUBIC =    INTERSECT_CONIC_NO + 1;
var INTERSECT_SELF_CUBIC_NO = INTERSECT_SELF_CUBIC + 1;
var INTERSECT_CUBIC_LINE =    INTERSECT_SELF_CUBIC_NO + 1;
var INTERSECT_CUBIC_LINE_2 =  INTERSECT_CUBIC_LINE + 1;
var INTERSECT_CUBIC_LINE_3 =  INTERSECT_CUBIC_LINE_2 + 1;
var INTERSECT_CUBIC_LINE_NO = INTERSECT_CUBIC_LINE_3 + 1;
var INTERSECT_CUBIC_QUAD =    INTERSECT_CUBIC_LINE_NO + 1;
var INTERSECT_CUBIC_QUAD_2 =  INTERSECT_CUBIC_QUAD + 1;
var INTERSECT_CUBIC_QUAD_3 =  INTERSECT_CUBIC_QUAD_2 + 1;
var INTERSECT_CUBIC_QUAD_4 =  INTERSECT_CUBIC_QUAD_3 + 1;
var INTERSECT_CUBIC_QUAD_NO = INTERSECT_CUBIC_QUAD_4 + 1;
var INTERSECT_CUBIC =         INTERSECT_CUBIC_QUAD_NO + 1;
var INTERSECT_CUBIC_2 =       INTERSECT_CUBIC + 1;
var INTERSECT_CUBIC_3 =       INTERSECT_CUBIC_2 + 1;
var INTERSECT_CUBIC_4 =       INTERSECT_CUBIC_3 + 1;
// FIXME: add cubic 5- 9
var INTERSECT_CUBIC_NO =      INTERSECT_CUBIC_4 + 1;

var SORT_UNARY =              INTERSECT_CUBIC_NO + 1;
var SORT_BINARY =             SORT_UNARY + 1;

var OP_DIFFERENCE =           SORT_BINARY + 1;
var OP_INTERSECT =            OP_DIFFERENCE + 1;
var OP_UNION =                OP_INTERSECT + 1;
var OP_XOR =                  OP_UNION + 1;

var MARK_LINE =               OP_XOR + 1;
var MARK_QUAD =               MARK_LINE + 1;
var MARK_CONIC =              MARK_QUAD + 1;
var MARK_CUBIC =              MARK_CONIC + 1;
var MARK_DONE_LINE =          MARK_CUBIC + 1;
var MARK_DONE_QUAD =          MARK_DONE_LINE + 1;
var MARK_DONE_CONIC =         MARK_DONE_QUAD + 1;
var MARK_DONE_CUBIC =         MARK_DONE_CONIC + 1;
var MARK_UNSORTABLE_LINE =    MARK_DONE_CUBIC + 1;
var MARK_UNSORTABLE_QUAD =    MARK_UNSORTABLE_LINE + 1;
var MARK_UNSORTABLE_CONIC =   MARK_UNSORTABLE_QUAD + 1;
var MARK_UNSORTABLE_CUBIC =   MARK_UNSORTABLE_CONIC + 1;
var MARK_SIMPLE_LINE =        MARK_UNSORTABLE_CUBIC + 1;
var MARK_SIMPLE_QUAD =        MARK_SIMPLE_LINE + 1;
var MARK_SIMPLE_CONIC =       MARK_SIMPLE_QUAD + 1;
var MARK_SIMPLE_CUBIC =       MARK_SIMPLE_CONIC + 1;
var MARK_SIMPLE_DONE_LINE =   MARK_SIMPLE_CUBIC + 1;
var MARK_SIMPLE_DONE_QUAD =   MARK_SIMPLE_DONE_LINE + 1;
var MARK_SIMPLE_DONE_CONIC =  MARK_SIMPLE_DONE_QUAD + 1;
var MARK_SIMPLE_DONE_CUBIC =  MARK_SIMPLE_DONE_CONIC + 1;
var MARK_DONE_UNARY_LINE =    MARK_SIMPLE_DONE_CUBIC + 1;
var MARK_DONE_UNARY_QUAD =    MARK_DONE_UNARY_LINE + 1;
var MARK_DONE_UNARY_CONIC =   MARK_DONE_UNARY_QUAD + 1;
var MARK_DONE_UNARY_CUBIC =   MARK_DONE_UNARY_CONIC + 1;
var MARK_ANGLE_LAST =         MARK_DONE_UNARY_CUBIC + 1;

var COMPUTED_SET_1 =          MARK_ANGLE_LAST + 1;
var COMPUTED_SET_2 =          COMPUTED_SET_1 + 1;

var ANGLE_AFTER =             COMPUTED_SET_2 + 1;
var ANGLE_AFTERPART =         ANGLE_AFTER + 1;

var ACTIVE_OP =               ANGLE_AFTERPART + 1;

var COIN_MAIN_SPAN =          ACTIVE_OP + 1;
var COIN_OPP_SPAN =           COIN_MAIN_SPAN + 1;

var FRAG_TYPE_LAST =          COIN_OPP_SPAN;

var REC_TYPE_UNKNOWN = -1;
var REC_TYPE_PATH = 0;
var REC_TYPE_PATH2 = 1;
var REC_TYPE_SECT = 2;
var REC_TYPE_ACTIVE = 3;
var REC_TYPE_ADD = 4;
var REC_TYPE_SORT = 5;
var REC_TYPE_OP = 6;
var REC_TYPE_MARK = 7;
var REC_TYPE_COMPUTED = 8;
var REC_TYPE_COIN = 9;
var REC_TYPE_ANGLE = 10;
var REC_TYPE_ACTIVE_OP = 11;
var REC_TYPE_AFTERPART = 12;
var REC_TYPE_TOP = 13;
var REC_TYPE_COINCIDENCE = 14;
var REC_TYPE_ALIGNED = 15;
var REC_TYPE_LAST = REC_TYPE_ALIGNED;

function strs_to_nums(strs) {
    var result = [];
    for (var idx = 1; idx < strs.length; ++idx) {
        var str = strs[idx];
        var num = parseFloat(str);
        if (isNaN(num)) {
            result.push(str);
        } else {
            result.push(num);
        }
    }
    return result;
}

function filter_str_by(id, str, regex, array) {
    if (regex.test(str)) {
        var strs = regex.exec(str);
        var result = strs_to_nums(strs);
        array.push(id);
        array.push(result);
        return true;
    }
    return false;
}

function construct_regexp2(pattern) {
    var escape = pattern.replace(/[-/\\^$*+?.()|[\]{}]/g, '\\$&');
    escape = escape.replace(/UNSORTABLE/g, "\\*\\*\\* UNSORTABLE \\*\\*\\*");
    escape = escape.replace(/CUBIC_VAL/g, "\\(P_VAL P_VAL P_VAL P_VAL\\)");
    escape = escape.replace(/CONIC_VAL/g, "\\(P_VAL P_VAL P_VAL W_VAL\\)");
    escape = escape.replace(/QUAD_VAL/g, "\\(P_VAL P_VAL P_VAL\\)");
    escape = escape.replace(/LINE_VAL/g, "\\(P_VAL P_VAL\\)");
    escape = escape.replace(/FILL_TYPE/g, "SkPath::k[a-zA-Z]+_FillType");
    escape = escape.replace(/PTR_VAL/g, "0x[0-9A-F]+");
    escape = escape.replace(/PT_VAL/g, "\\(P_VAL\\)");
    escape = escape.replace(/P_VAL/g, "(-?\\d+\\.?\\d*(?:e-?\\d+)?)[Ff]?, ?(-?\\d+\\.?\\d*(?:e-?\\d+)?)[Ff]?");
    escape = escape.replace(/T_VAL/g, "(-?\\d+\\.?\\d*(?:e-?\\d+)?)");
    escape = escape.replace(/W_VAL/g, "(-?\\d+\\.?\\d*(?:e-?\\d+)?)[Ff]?");
    escape = escape.replace(/PATH/g, "pathB?");
    escape = escape.replace(/IDX/g, "(-?\\d+)");
    escape = escape.replace(/NUM/g, "(-?\\d+)");
    escape = escape.replace(/OPT/g, "(\\?|-?\\d+)");
    return new RegExp(escape, 'i');
}

function construct_regexp2c(pattern) {
    var escape = pattern.replace(/[-/\\^$*+?.()|[\]{}]/g, '\\$&');
    escape = escape.replace(/UNSORTABLE/g, "\\*\\*\\* UNSORTABLE \\*\\*\\*");
    escape = escape.replace(/CUBIC_VAL/g, "(?:\\$\\d = )?\\{\\{\\{P_VAL\\}, \\{P_VAL\\}, \\{P_VAL\\}, \\{P_VAL\\}\\}\\}");
    escape = escape.replace(/CONIC_VAL/g, "(?:\\$\\d = )?\\{\\{\\{\\{P_VAL\\}, \\{P_VAL\\}, \\{P_VAL\\}\\}\\}, W_VAL\\}");
    escape = escape.replace(/QUAD_VAL/g, "(?:\\$\\d = )?\\{\\{\\{P_VAL\\}, \\{P_VAL\\}, \\{P_VAL\\}\\}\\}");
    escape = escape.replace(/LINE_VAL/g, "(?:\\$\\d = )?\\{\\{\\{P_VAL\\}, \\{P_VAL\\}\\}\\}");
    escape = escape.replace(/FILL_TYPE/g, "SkPath::k[a-zA-Z]+_FillType");
    escape = escape.replace(/PTR_VAL/g, "0x[0-9A-F]+");
    escape = escape.replace(/PT_VAL/g, "\\{\\{P_VAL\\}\\}");
    escape = escape.replace(/P_VAL/g, "(?:f?[xX] = )?(-?\\d+\\.?\\d*(?:e-?\\d+)?)[Ff]?, *(?: f?[yY] = )?(-?\\d+\\.?\\d*(?:e-?\\d+)?)[Ff]?");
    escape = escape.replace(/T_VAL/g, "(-?\\d+\\.?\\d*(?:e-?\\d+)?)");
    escape = escape.replace(/W_VAL/g, "(-?\\d+\\.?\\d*(?:e-?\\d+)?)[Ff]?");
    escape = escape.replace(/OPER/g, "[a-z]+");
    escape = escape.replace(/PATH/g, "pathB?");
    escape = escape.replace(/T_F/g, "([TF])");
    escape = escape.replace(/IDX/g, "(-?\\d+)");
    escape = escape.replace(/NUM/g, "(-?\\d+)");
    escape = escape.replace(/OPT/g, "(\\?|-?\\d+)");
    return new RegExp(escape, 'i');
}

function match_regexp(str, lineNo, array, id, pattern) {
    var regex = construct_regexp2(pattern);
    if (filter_str_by(id, str, regex, array)) {
        return true;
    }
    regex = construct_regexp2c(pattern);
    return filter_str_by(id, str, regex, array);
}

function endsWith(str, suffix) {
    return str.indexOf(suffix, str.length - suffix.length) !== -1;
}

function parse_all(test) {
    var lines = test.match(/[^\r\n]+/g);
    var records = []; // a rec can be the original paths, a set of intersections, a set of active spans, a sort, or a path add
    var record = [];
    var recType = REC_TYPE_UNKNOWN;
    var lastLineNo;
    var moveX, moveY;
    for (var lineNo = 0; lineNo < lines.length; ++lineNo) {
        var line = lines[lineNo];
        if (line.length == 0) {
            continue;
        }
        var opStart = "SkOpSegment::";
        if (line.lastIndexOf(opStart, 0) === 0) {
            line = line.substr(opStart.length);
        }
        var angleStart = "SkOpAngle::";
        if (line.lastIndexOf(angleStart, 0) === 0) {
            line = line.substr(angleStart.length);
        }
        var coinStart = "SkOpCoincidence::";
        if (line.lastIndexOf(coinStart, 0) === 0) {
            line = line.substr(coinStart.length);
        }
        var type = line.lastIndexOf("debugShowActiveSpans", 0) === 0 ? REC_TYPE_ACTIVE
                : line.lastIndexOf("debugShowCoincidence", 0) === 0 ? REC_TYPE_COINCIDENCE
                : line.lastIndexOf("((SkOpSegment*)", 0) === 0 ? REC_TYPE_PATH2
                : line.lastIndexOf("debugShowTs", 0) === 0 ? REC_TYPE_COIN
                : line.lastIndexOf("afterPart", 0) === 0 ? REC_TYPE_AFTERPART
                : line.lastIndexOf("debugShow", 0) === 0 ? REC_TYPE_SECT
                : line.lastIndexOf("activeOp", 0) === 0 ? REC_TYPE_ACTIVE_OP
                : line.lastIndexOf("computed", 0) === 0 ? REC_TYPE_COMPUTED
                : line.lastIndexOf("debugOne", 0) === 0 ? REC_TYPE_SORT
                : line.lastIndexOf("aligned=", 0) === 0 ? REC_TYPE_ALIGNED
                : line.lastIndexOf("dumpOne", 0) === 0 ? REC_TYPE_SORT
                : line.lastIndexOf("findTop", 0) === 0 ? REC_TYPE_TOP
                : line.lastIndexOf("pathB.", 0) === 0 ? REC_TYPE_ADD
                : line.lastIndexOf("path.", 0) === 0 ? REC_TYPE_ADD
                : line.lastIndexOf("after", 0) === 0 ? REC_TYPE_ANGLE
                : line.lastIndexOf("mark", 0) === 0 ? REC_TYPE_MARK
                : line.lastIndexOf("  {{", 0) === 0 ? REC_TYPE_COMPUTED
                : line.lastIndexOf("seg=", 0) === 0 ? REC_TYPE_PATH
                : line.lastIndexOf("op", 0) === 0 ? REC_TYPE_OP
                : line.lastIndexOf("$", 0) === 0 ? REC_TYPE_PATH
                : REC_TYPE_UNKNOWN;
        if (recType != type || recType == REC_TYPE_ADD || recType == REC_TYPE_SECT
                || recType == REC_TYPE_ACTIVE_OP || recType == REC_TYPE_ANGLE) {
            if (recType != REC_TYPE_UNKNOWN) {
                records.push(recType);
                records.push(lastLineNo);
                records.push(record);
            }
            record = [];
            recType = type;
            lastLineNo = lineNo;
        }
        var found = false;
        switch (recType) {
            case REC_TYPE_ACTIVE:
                found = match_regexp(line, lineNo, record, ACTIVE_LINE_SPAN, "debugShowActiveSpans" +
" id=IDX LINE_VAL t=T_VAL tEnd=T_VAL windSum=OPT windValue=IDX"
                ) || match_regexp(line, lineNo, record, ACTIVE_QUAD_SPAN, "debugShowActiveSpans" +
" id=IDX QUAD_VAL t=T_VAL tEnd=T_VAL windSum=OPT windValue=IDX"
                ) || match_regexp(line, lineNo, record, ACTIVE_CONIC_SPAN, "debugShowActiveSpans" +
" id=IDX CONIC_VAL t=T_VAL tEnd=T_VAL windSum=OPT windValue=IDX"
                ) || match_regexp(line, lineNo, record, ACTIVE_CUBIC_SPAN, "debugShowActiveSpans" +
" id=IDX CUBIC_VAL t=T_VAL tEnd=T_VAL windSum=OPT windValue=IDX"
                ) || match_regexp(line, lineNo, record, ACTIVE_LINE_SPAN, "debugShowActiveSpans" +
" id=IDX LINE_VAL t=T_VAL tEnd=T_VAL windSum=OPT oppSum=OPT windValue=IDX oppValue=NUM"
                ) || match_regexp(line, lineNo, record, ACTIVE_QUAD_SPAN, "debugShowActiveSpans" +
" id=IDX QUAD_VAL t=T_VAL tEnd=T_VAL windSum=OPT oppSum=OPT windValue=IDX oppValue=NUM"
                ) || match_regexp(line, lineNo, record, ACTIVE_CONIC_SPAN, "debugShowActiveSpans" +
" id=IDX CONIC_VAL t=T_VAL tEnd=T_VAL windSum=OPT oppSum=OPT windValue=IDX oppValue=NUM"
                ) || match_regexp(line, lineNo, record, ACTIVE_CUBIC_SPAN, "debugShowActiveSpans" +
" id=IDX CUBIC_VAL t=T_VAL tEnd=T_VAL windSum=OPT oppSum=OPT windValue=IDX oppValue=NUM"
                );
                break;
            case REC_TYPE_ACTIVE_OP:
                found = match_regexp(line, lineNo, record, ACTIVE_OP, "activeOp" +
" id=IDX t=T_VAL tEnd=T_VAL op=OPER miFrom=NUM miTo=NUM suFrom=NUM suTo=NUM result=IDX"
                );
                break;
            case REC_TYPE_ADD:
                if (match_regexp(line, lineNo, record, ADD_MOVETO, "PATH.moveTo(P_VAL);")) {
                    moveX = record[1][0];
                    moveY = record[1][1];
                    found = true;
                } else if (match_regexp(line, lineNo, record, ADD_LINETO, "PATH.lineTo(P_VAL);")) {
                    record[1].unshift(moveY);
                    record[1].unshift(moveX);
                    moveX = record[1][2];
                    moveY = record[1][3];
                    found = true;
                } else if (match_regexp(line, lineNo, record, ADD_QUADTO, "PATH.quadTo(P_VAL, P_VAL);")) {
                    record[1].unshift(moveY);
                    record[1].unshift(moveX);
                    moveX = record[1][4];
                    moveY = record[1][5];
                    found = true;
                } else if (match_regexp(line, lineNo, record, ADD_CONICTO, "PATH.conicTo(P_VAL, P_VAL, T_VAL);")) {
                    record[1].unshift(moveY);
                    record[1].unshift(moveX);
                    moveX = record[1][4];
                    moveY = record[1][5];
                    found = true;
                } else if (match_regexp(line, lineNo, record, ADD_CUBICTO, "PATH.cubicTo(P_VAL, P_VAL, P_VAL);")) {
                    record[1].unshift(moveY);
                    record[1].unshift(moveX);
                    moveX = record[1][6];
                    moveY = record[1][7];
                    found = true;
                } else if (match_regexp(line, lineNo, record, ADD_FILL, "PATH.setFillType(FILL_TYPE);")) {
                    found = true;
                } else {
                    found = match_regexp(line, lineNo, record, ADD_CLOSE, "PATH.close();");
                }
                break;
            case REC_TYPE_AFTERPART:
                found = match_regexp(line, lineNo, record, PATH_LINE, "afterPart LINE_VAL")
                    || match_regexp(line, lineNo, record, PATH_QUAD, "afterPart QUAD_VAL")
                    || match_regexp(line, lineNo, record, PATH_CONIC, "afterPart CONIC_VAL")
                    || match_regexp(line, lineNo, record, PATH_CUBIC, "afterPart CUBIC_VAL")
                break;
            case REC_TYPE_ALIGNED:
                found = match_regexp(line, lineNo, record, PATH_LINE, "aligned=IDX LINE_VAL"
                ) || match_regexp(line, lineNo, record, PATH_QUAD, "aligned=IDX QUAD_VAL"
                ) || match_regexp(line, lineNo, record, PATH_CONIC, "aligned=IDX CONIC_VAL"
                ) || match_regexp(line, lineNo, record, PATH_CUBIC, "aligned=IDX CUBIC_VAL"
                );
                break;
            case REC_TYPE_ANGLE:
                found = match_regexp(line, lineNo, record, ANGLE_AFTER, "after " +
"[IDX/IDX] NUM/NUM tStart=T_VAL tEnd=T_VAL < [IDX/IDX] NUM/NUM tStart=T_VAL tEnd=T_VAL < [IDX/IDX] NUM/NUM tStart=T_VAL tEnd=T_VAL  T_F IDX");
                break;
            case REC_TYPE_COIN:
                found = true;
                break;
            case REC_TYPE_COINCIDENCE:
                found = match_regexp(line, lineNo, record, COIN_MAIN_SPAN, "debugShowCoincidence" +
" + id=IDX t=T_VAL tEnd=T_VAL"
                ) || match_regexp(line, lineNo, record, COIN_OPP_SPAN, "debugShowCoincidence" +
" - id=IDX t=T_VAL tEnd=T_VAL"
                );
                break;
            case REC_TYPE_COMPUTED:
                found = line ==  "computed quadratics given"
                  || match_regexp(line, lineNo, record, COMPUTED_SET_1, "computed quadratics set 1"
                ) || match_regexp(line, lineNo, record, COMPUTED_SET_2, "computed quadratics set 2"
                ) || match_regexp(line, lineNo, record, PATH_QUAD, "  QUAD_VAL,"
                ) || match_regexp(line, lineNo, record, PATH_CONIC, "  CONIC_VAL,"
                ) || match_regexp(line, lineNo, record, PATH_CUBIC, "  CUBIC_VAL,"
                );
                break;
            case REC_TYPE_PATH:
                found = match_regexp(line, lineNo, record, PATH_LINE, "seg=IDX LINE_VAL"
                ) || match_regexp(line, lineNo, record, PATH_QUAD, "seg=IDX QUAD_VAL"
                ) || match_regexp(line, lineNo, record, PATH_CONIC, "seg=IDX CONIC_VAL"
                ) || match_regexp(line, lineNo, record, PATH_CUBIC, "seg=IDX CUBIC_VAL"
                );
                break;
            case REC_TYPE_PATH2:
                found = match_regexp(line, lineNo, record, PATH_LINE, "((SkOpSegment*) PTR_VAL) [IDX] {LINE_VAL}"
                ) || match_regexp(line, lineNo, record, PATH_QUAD, "((SkOpSegment*) PTR_VAL) [IDX] {QUAD_VAL}"
                ) || match_regexp(line, lineNo, record, PATH_CONIC, "((SkOpSegment*) PTR_VAL) [IDX] {CONIC_VAL}"
                ) || match_regexp(line, lineNo, record, PATH_CUBIC, "((SkOpSegment*) PTR_VAL) [IDX] {CUBIC_VAL}"
                );
                break;
            case REC_TYPE_SECT:
                found = match_regexp(line, lineNo, record, INTERSECT_LINE, "debugShowLineIntersection" +
" wtTs[0]=T_VAL LINE_VAL PT_VAL wnTs[0]=T_VAL LINE_VAL"
                ) || match_regexp(line, lineNo, record, INTERSECT_LINE_2, "debugShowLineIntersection" +
" wtTs[0]=T_VAL LINE_VAL PT_VAL wtTs[1]=T_VAL PT_VAL wnTs[0]=T_VAL LINE_VAL wnTs[1]=T_VAL"
                ) || match_regexp(line, lineNo, record, INTERSECT_LINE_NO, "debugShowLineIntersection" +
" no intersect LINE_VAL LINE_VAL"
                ) || match_regexp(line, lineNo, record, INTERSECT_QUAD_LINE, "debugShowQuadLineIntersection" +
" wtTs[0]=T_VAL QUAD_VAL PT_VAL wnTs[0]=T_VAL LINE_VAL"
                ) || match_regexp(line, lineNo, record, INTERSECT_QUAD_LINE_2, "debugShowQuadLineIntersection" +
" wtTs[0]=T_VAL QUAD_VAL PT_VAL wtTs[1]=T_VAL PT_VAL wnTs[0]=T_VAL LINE_VAL wnTs[1]=T_VAL"
                ) || match_regexp(line, lineNo, record, INTERSECT_QUAD_LINE_NO, "debugShowQuadLineIntersection" +
" no intersect QUAD_VAL LINE_VAL"
                ) || match_regexp(line, lineNo, record, INTERSECT_QUAD, "debugShowQuadIntersection" +
" wtTs[0]=T_VAL QUAD_VAL PT_VAL wnTs[0]=T_VAL QUAD_VAL"
                ) || match_regexp(line, lineNo, record, INTERSECT_QUAD_2, "debugShowQuadIntersection" +
" wtTs[0]=T_VAL QUAD_VAL PT_VAL wtTs[1]=T_VAL PT_VAL wnTs[0]=T_VAL QUAD_VAL wnTs[1]=T_VAL"
                ) || match_regexp(line, lineNo, record, INTERSECT_QUAD_NO, "debugShowQuadIntersection" +
" no intersect QUAD_VAL QUAD_VAL"

                ) || match_regexp(line, lineNo, record, INTERSECT_CONIC_LINE, "debugShowConicLineIntersection" +
" wtTs[0]=T_VAL CONIC_VAL PT_VAL wnTs[0]=T_VAL LINE_VAL"
                ) || match_regexp(line, lineNo, record, INTERSECT_CONIC_LINE_2, "debugShowConicLineIntersection" +
" wtTs[0]=T_VAL CONIC_VAL PT_VAL wtTs[1]=T_VAL PT_VAL wnTs[0]=T_VAL LINE_VAL wnTs[1]=T_VAL"
                ) || match_regexp(line, lineNo, record, INTERSECT_CONIC_LINE_NO, "debugShowConicLineIntersection" +
" no intersect CONIC_VAL LINE_VAL"

                ) || match_regexp(line, lineNo, record, INTERSECT_CONIC_QUAD, "debugShowConicQuadIntersection" +
" wtTs[0]=T_VAL CONIC_VAL PT_VAL wnTs[0]=T_VAL QUAD_VAL"
                ) || match_regexp(line, lineNo, record, INTERSECT_CONIC_QUAD_2, "debugShowConicQuadIntersection" +
" wtTs[0]=T_VAL CONIC_VAL PT_VAL wtTs[1]=T_VAL PT_VAL wnTs[0]=T_VAL QUAD_VAL wnTs[1]=T_VAL"
                ) || match_regexp(line, lineNo, record, INTERSECT_CONIC_QUAD_3, "debugShowConicQuadIntersection" +
" wtTs[0]=T_VAL CONIC_VAL PT_VAL wtTs[1]=T_VAL PT_VAL wtTs[2]=T_VAL PT_VAL wnTs[0]=T_VAL QUAD_VAL wnTs[1]=T_VAL wnTs[2]=T_VAL"
                ) || match_regexp(line, lineNo, record, INTERSECT_CONIC_QUAD_4, "debugShowConicQuadIntersection" +
" wtTs[0]=T_VAL CONIC_VAL PT_VAL wtTs[1]=T_VAL PT_VAL wtTs[2]=T_VAL PT_VAL wtTs[3]=T_VAL PT_VAL wnTs[0]=T_VAL QUAD_VAL wnTs[1]=T_VAL wnTs[2]=T_VAL wnTs[3]=T_VAL"
                ) || match_regexp(line, lineNo, record, INTERSECT_CONIC_QUAD_NO, "debugShowConicQuadIntersection" +
" no intersect CONIC_VAL QUAD_VAL"

                ) || match_regexp(line, lineNo, record, INTERSECT_CONIC, "debugShowConicIntersection" +
" wtTs[0]=T_VAL CONIC_VAL PT_VAL wnTs[0]=T_VAL CONIC_VAL"
                ) || match_regexp(line, lineNo, record, INTERSECT_CONIC_2, "debugShowConicIntersection" +
" wtTs[0]=T_VAL CONIC_VAL PT_VAL wtTs[1]=T_VAL PT_VAL wnTs[0]=T_VAL CONIC_VAL wnTs[1]=T_VAL"
                ) || match_regexp(line, lineNo, record, INTERSECT_CONIC_NO, "debugShowConicIntersection" +
" no intersect CONIC_VAL CONIC_VAL"
                ) || match_regexp(line, lineNo, record, INTERSECT_CUBIC_LINE, "debugShowCubicLineIntersection" +
" wtTs[0]=T_VAL CUBIC_VAL PT_VAL wnTs[0]=T_VAL LINE_VAL"
                ) || match_regexp(line, lineNo, record, INTERSECT_CUBIC_LINE_2, "debugShowCubicLineIntersection" +
" wtTs[0]=T_VAL CUBIC_VAL PT_VAL wtTs[1]=T_VAL PT_VAL wnTs[0]=T_VAL LINE_VAL wnTs[1]=T_VAL"
                ) || match_regexp(line, lineNo, record, INTERSECT_CUBIC_LINE_3, "debugShowCubicLineIntersection" +
" wtTs[0]=T_VAL CUBIC_VAL PT_VAL wtTs[1]=T_VAL PT_VAL wtTs[2]=T_VAL PT_VAL wnTs[0]=T_VAL LINE_VAL wnTs[1]=T_VAL wnTs[2]=T_VAL"
                ) || match_regexp(line, lineNo, record, INTERSECT_CUBIC_LINE_NO, "debugShowCubicLineIntersection" +
" no intersect CUBIC_VAL LINE_VAL"
                ) || match_regexp(line, lineNo, record, INTERSECT_CUBIC_QUAD, "debugShowCubicQuadIntersection" +
" wtTs[0]=T_VAL CUBIC_VAL PT_VAL wnTs[0]=T_VAL QUAD_VAL"
                ) || match_regexp(line, lineNo, record, INTERSECT_CUBIC_QUAD_2, "debugShowCubicQuadIntersection" +
" wtTs[0]=T_VAL CUBIC_VAL PT_VAL wtTs[1]=T_VAL PT_VAL wnTs[0]=T_VAL QUAD_VAL wnTs[1]=T_VAL"
                ) || match_regexp(line, lineNo, record, INTERSECT_CUBIC_QUAD_3, "debugShowCubicQuadIntersection" +
" wtTs[0]=T_VAL CUBIC_VAL PT_VAL wtTs[1]=T_VAL PT_VAL wtTs[2]=T_VAL PT_VAL wnTs[0]=T_VAL QUAD_VAL wnTs[1]=T_VAL wnTs[2]=T_VAL"
                ) || match_regexp(line, lineNo, record, INTERSECT_CUBIC_QUAD_4, "debugShowCubicQuadIntersection" +
" wtTs[0]=T_VAL CUBIC_VAL PT_VAL wtTs[1]=T_VAL PT_VAL wtTs[2]=T_VAL wtTs[3]=T_VAL PT_VAL wnTs[0]=T_VAL QUAD_VAL wnTs[1]=T_VAL wnTs[2]=T_VAL wnTs[3]=T_VAL"
                ) || match_regexp(line, lineNo, record, INTERSECT_CUBIC_QUAD_NO, "debugShowCubicQuadIntersection" +
" no intersect CUBIC_VAL QUAD_VAL"
                ) || match_regexp(line, lineNo, record, INTERSECT_CUBIC, "debugShowCubicIntersection" +
" wtTs[0]=T_VAL CUBIC_VAL PT_VAL wnTs[0]=T_VAL CUBIC_VAL"
                ) || match_regexp(line, lineNo, record, INTERSECT_CUBIC_2, "debugShowCubicIntersection" +
" wtTs[0]=T_VAL CUBIC_VAL PT_VAL wtTs[1]=T_VAL PT_VAL wnTs[0]=T_VAL CUBIC_VAL wnTs[1]=T_VAL"
                ) || match_regexp(line, lineNo, record, INTERSECT_CUBIC_3, "debugShowCubicIntersection" +
" wtTs[0]=T_VAL CUBIC_VAL PT_VAL wtTs[1]=T_VAL PT_VAL wtTs[2]=T_VAL PT_VAL wnTs[0]=T_VAL CUBIC_VAL wnTs[1]=T_VAL wnTs[2]=T_VAL"
                ) || match_regexp(line, lineNo, record, INTERSECT_CUBIC_4, "debugShowCubicIntersection" +
" wtTs[0]=T_VAL CUBIC_VAL PT_VAL wtTs[1]=T_VAL PT_VAL wtTs[2]=T_VAL PT_VAL wtTs[3]=T_VAL PT_VAL wnTs[0]=T_VAL CUBIC_VAL wnTs[1]=T_VAL wnTs[2]=T_VAL wnTs[3]=T_VAL"
                ) || match_regexp(line, lineNo, record, INTERSECT_CUBIC_NO, "debugShowCubicIntersection" +
" no intersect CUBIC_VAL CUBIC_VAL"
                ) || match_regexp(line, lineNo, record, INTERSECT_SELF_CUBIC, "debugShowCubicIntersection" +
" wtTs[0]=T_VAL CUBIC_VAL PT_VAL wtTs[1]=T_VAL"
                ) || match_regexp(line, lineNo, record, INTERSECT_SELF_CUBIC_NO, "debugShowCubicIntersection" +
" no self intersect CUBIC_VAL"
                );
                break;
            case REC_TYPE_SORT:
                var hasDone = / done/.test(line);
                var hasUnorderable = / unorderable/.test(line);
                var hasSmall = / small/.test(line);
                var hasTiny = / tiny/.test(line);
                var hasOperand = / operand/.test(line);
                var hasStop = / stop/.test(line);
                line.replace(/[ a-z]+$/, "");
                found = match_regexp(line, lineNo, record, SORT_UNARY, "debugOne" +
" [IDX/IDX] next=IDX/IDX sect=IDX/IDX  s=T_VAL [IDX] e=T_VAL [IDX] sgn=NUM windVal=IDX windSum=OPT"
                ) || match_regexp(line, lineNo, record, SORT_BINARY, "debugOne" +
" [IDX/IDX] next=IDX/IDX sect=IDX/IDX  s=T_VAL [IDX] e=T_VAL [IDX] sgn=NUM windVal=IDX windSum=OPT oppVal=IDX oppSum=OPT"
                ) || match_regexp(line, lineNo, record, SORT_UNARY, "dumpOne" +
" [IDX/IDX] next=IDX/IDX sect=NUM/NUM  s=T_VAL [IDX] e=T_VAL [IDX] sgn=NUM windVal=IDX windSum=OPT"
                ) || match_regexp(line, lineNo, record, SORT_BINARY, "dumpOne" +
" [IDX/IDX] next=IDX/IDX sect=NUM/NUM  s=T_VAL [IDX] e=T_VAL [IDX] sgn=NUM windVal=IDX windSum=OPT oppVal=IDX oppSum=OPT"
                );
                if (found) {
                    record[1].push(hasDone);
                    record[1].push(hasUnorderable);
                    record[1].push(hasSmall);
                    record[1].push(hasTiny);
                    record[1].push(hasOperand);
                    record[1].push(hasStop);
                }
                break;
            case REC_TYPE_TOP:
                found = match_regexp(line, lineNo, record, ACTIVE_OP, "findTop" +
" id=IDX s=T_VAL e=T_VAL cw=NUM swap=NUM inflections=NUM monotonic=NUM"
                ) || match_regexp(line, lineNo, record, ACTIVE_OP, "findTop" +
" id=IDX s=T_VAL e=T_VAL (-) cw=NUM swap=NUM inflections=NUM monotonic=NUM"
                ) || match_regexp(line, lineNo, record, ACTIVE_OP, "findTop" +
" id=IDX s=T_VAL e=T_VAL (+) cw=NUM swap=NUM inflections=NUM monotonic=NUM"
                );
                break;
            case REC_TYPE_MARK:
                found = match_regexp(line, lineNo, record, MARK_LINE, "markWinding" +
" id=IDX LINE_VAL t=T_VAL [IDX] PT_VAL tEnd=T_VAL newWindSum=NUM newOppSum=OPT oppSum=OPT windSum=OPT windValue=IDX"
                ) || match_regexp(line, lineNo, record, MARK_QUAD, "markWinding" +
" id=IDX QUAD_VAL t=T_VAL [IDX] PT_VAL tEnd=T_VAL newWindSum=NUM newOppSum=OPT oppSum=OPT windSum=OPT windValue=IDX"
                ) || match_regexp(line, lineNo, record, MARK_CONIC, "markWinding" +
" id=IDX CONIC_VAL t=T_VAL [IDX] PT_VAL tEnd=T_VAL newWindSum=NUM newOppSum=OPT oppSum=OPT windSum=OPT windValue=IDX"
                ) || match_regexp(line, lineNo, record, MARK_CUBIC, "markWinding" +
" id=IDX CUBIC_VAL t=T_VAL [IDX] PT_VAL tEnd=T_VAL newWindSum=NUM newOppSum=OPT oppSum=OPT windSum=OPT windValue=IDX"
                ) || match_regexp(line, lineNo, record, MARK_DONE_LINE, "markDone" +
" id=IDX LINE_VAL t=T_VAL [IDX] PT_VAL tEnd=T_VAL newWindSum=OPT newOppSum=OPT oppSum=OPT windSum=OPT windValue=IDX oppValue=OPT"
                ) || match_regexp(line, lineNo, record, MARK_DONE_QUAD, "markDone" +
" id=IDX QUAD_VAL t=T_VAL [IDX] PT_VAL tEnd=T_VAL newWindSum=OPT newOppSum=OPT oppSum=OPT windSum=OPT windValue=IDX oppValue=OPT"
                ) || match_regexp(line, lineNo, record, MARK_DONE_CONIC, "markDone" +
" id=IDX CONIC_VAL t=T_VAL [IDX] PT_VAL tEnd=T_VAL newWindSum=OPT newOppSum=OPT oppSum=OPT windSum=OPT windValue=IDX oppValue=OPT"
                ) || match_regexp(line, lineNo, record, MARK_DONE_CUBIC, "markDone" +
" id=IDX CUBIC_VAL t=T_VAL [IDX] PT_VAL tEnd=T_VAL newWindSum=OPT newOppSum=OPT oppSum=OPT windSum=OPT windValue=IDX oppValue=OPT"
                ) || match_regexp(line, lineNo, record, MARK_SIMPLE_LINE, "markWinding" +
" id=IDX LINE_VAL t=T_VAL [IDX] PT_VAL tEnd=T_VAL newWindSum=NUM windSum=OPT windValue=IDX"
                ) || match_regexp(line, lineNo, record, MARK_SIMPLE_QUAD, "markWinding" +
" id=IDX QUAD_VAL t=T_VAL [IDX] PT_VAL tEnd=T_VAL newWindSum=NUM windSum=OPT windValue=IDX"
                ) || match_regexp(line, lineNo, record, MARK_SIMPLE_CONIC, "markWinding" +
" id=IDX CONIC_VAL t=T_VAL [IDX] PT_VAL tEnd=T_VAL newWindSum=NUM windSum=OPT windValue=IDX"
                ) || match_regexp(line, lineNo, record, MARK_SIMPLE_CUBIC, "markWinding" +
" id=IDX CUBIC_VAL t=T_VAL [IDX] PT_VAL tEnd=T_VAL newWindSum=NUM windSum=OPT windValue=IDX"
                ) || match_regexp(line, lineNo, record, MARK_ANGLE_LAST, "markAngle" +
" last segment=IDX span=IDX"
                ) || match_regexp(line, lineNo, record, MARK_ANGLE_LAST, "markAngle" +
" last seg=IDX span=IDX"
                ) || match_regexp(line, lineNo, record, MARK_ANGLE_LAST, "markAngle" +
" last segment=IDX span=IDX windSum=OPT"
                ) || match_regexp(line, lineNo, record, MARK_ANGLE_LAST, "markAngle" +
" last seg=IDX span=IDX windSum=OPT"
                );
                break;
            case REC_TYPE_OP:
                if (line.lastIndexOf("oppSign oppSign=", 0) === 0
                        || line.lastIndexOf("operator<", 0) === 0) {
                    found = true;
                    break;
                }
                found = match_regexp(line, lineNo, record, OP_DIFFERENCE, "op diff"
                ) || match_regexp(line, lineNo, record, OP_INTERSECT, "op intersect"
                ) || match_regexp(line, lineNo, record, OP_INTERSECT, "op sect"
                ) || match_regexp(line, lineNo, record, OP_UNION, "op union"
                ) || match_regexp(line, lineNo, record, OP_XOR, "op xor"
                );
                break;
            case REC_TYPE_UNKNOWN:
                found = true;
                break;
        }
        if (!found) {
            console.log(line + " [" + lineNo + "] of type " + type + " not found");
        }
    }
    if (recType != REC_TYPE_UNKNOWN) {
        records.push(recType);
        records.push(lastLineNo);
        records.push(record);
    }
    if (records.length >= 1) {
        tests[testIndex] = records;
        testLines[testIndex] = lines;
    }
}

function init(test) {
    var canvas = document.getElementById('canvas');
    if (!canvas.getContext) return;
    ctx = canvas.getContext('2d');
    var resScale = retina_scale && window.devicePixelRatio ? window.devicePixelRatio : 1;
    var unscaledWidth = window.innerWidth - 20;
    var unscaledHeight = window.innerHeight - 20;
    screenWidth = unscaledWidth;
    screenHeight = unscaledHeight;
    canvas.width = unscaledWidth * resScale;
    canvas.height = unscaledHeight * resScale;
    canvas.style.width = unscaledWidth + 'px';
    canvas.style.height = unscaledHeight + 'px';
    if (resScale != 1) {
        ctx.scale(resScale, resScale);
    }
    xmin = Infinity;
    xmax = -Infinity;
    ymin = Infinity;
    ymax = -Infinity;
    hasPath = hasAlignedPath = hasComputedPath = false;
    firstActiveSpan = -1;
    for (var tIndex = 0; tIndex < test.length; tIndex += 3) {
        var recType = test[tIndex];
        if (!typeof recType == 'number' || recType < REC_TYPE_UNKNOWN || recType > REC_TYPE_LAST) {
            console.log("unknown rec type: " + recType);
            throw "stop execution";
        }
        var records = test[tIndex + 2];
        for (var recordIndex = 0; recordIndex < records.length; recordIndex += 2) {
            var fragType = records[recordIndex];
            if (!typeof fragType == 'number' || fragType < 1 || fragType > FRAG_TYPE_LAST) {
                console.log("unknown in range frag type: " + fragType);
                throw "stop execution";
            }
            var frags = records[recordIndex + 1];
            var first = 0;
            var last = -1;
            var first2 = 0;
            var last2 = 0;
            switch (recType) {
                case REC_TYPE_ALIGNED:
                    hasAlignedPath = true;
                case REC_TYPE_COMPUTED:
                    if (fragType == COMPUTED_SET_1 || fragType == COMPUTED_SET_2) {
                        break;
                    }
                    if (REC_TYPE_COMPUTED == recType) {
                        hasComputedPath = true;
                    }
                case REC_TYPE_PATH:
                    first = 1;
                    switch (fragType) {
                        case PATH_LINE:
                            last = 5;
                            break;
                        case PATH_CONIC:
                        case PATH_QUAD:
                            last = 7;
                            break;
                        case PATH_CUBIC:
                            last = 9;
                            break;
                        default:
                            console.log("unknown " + (recType == REC_TYPE_PATH ? "REC_TYPE_PATH"
                                    : "REC_TYPE_COMPUTED") + " frag type:" + fragType);
                            throw "stop execution";
                    }
                    if (recType == REC_TYPE_PATH) {
                        hasPath = true;
                    }
                    break;
                case REC_TYPE_PATH2:
                    first = 1;
                    switch (fragType) {
                        case PATH_LINE:
                            last = 5;
                            break;
                        case PATH_CONIC:
                        case PATH_QUAD:
                            last = 7;
                            break;
                        case PATH_CUBIC:
                            last = 9;
                            break;
                        default:
                            console.log("unknown " + (recType == REC_TYPE_PATH2 ? "REC_TYPE_PATH2"
                                    : "REC_TYPE_COMPUTED") + " frag type:" + fragType);
                            throw "stop execution";
                    }
                    if (recType == REC_TYPE_PATH2) {
                        hasPath = true;
                    }
                    break;
                case REC_TYPE_ACTIVE:
                    if (firstActiveSpan < 0) {
                        firstActiveSpan = tIndex;
                    }
                    first = 1;
                    switch (fragType) {
                        case ACTIVE_LINE_SPAN:
                            last = 5;
                            break;
                        case ACTIVE_CONIC_SPAN:
                        case ACTIVE_QUAD_SPAN:
                            last = 7;
                            break;
                        case ACTIVE_CUBIC_SPAN:
                            last = 9;
                            break;
                        default:
                            console.log("unknown REC_TYPE_ACTIVE frag type: " + fragType);
                            throw "stop execution";
                    }
                    break;
                case REC_TYPE_ADD:
                    switch (fragType) {
                        case ADD_MOVETO:
                            break;
                        case ADD_LINETO:
                            last = 4;
                            break;
                        case ADD_CONICTO:
                        case ADD_QUADTO:
                            last = 6;
                            break;
                        case ADD_CUBICTO:
                            last = 8;
                            break;
                        case ADD_CLOSE:
                        case ADD_FILL:
                            break;
                        default:
                            console.log("unknown REC_TYPE_ADD frag type: " + fragType);
                            throw "stop execution";
                    }
                    break;
                case REC_TYPE_AFTERPART:
                    switch (fragType) {
                        case PATH_LINE:
                            last = 4;
                            break;
                        case PATH_CONIC:
                        case PATH_QUAD:
                            last = 6;
                            break;
                        case PATH_CUBIC:
                            last = 8;
                            break;
                        default:
                            console.log("unknown REC_TYPE_ACTIVEPART frag type: " + fragType);
                            throw "stop execution";
                    }
                    break;
                case REC_TYPE_SECT:
                    switch (fragType) {
                        case INTERSECT_LINE:
                            first = 1; last = 5; first2 = 8; last2 = 12;
                            break;
                        case INTERSECT_LINE_2:
                            first = 1; last = 5; first2 = 11; last2 = 15;
                            break;
                        case INTERSECT_LINE_NO:
                            first = 0; last = 4; first2 = 4; last2 = 8;
                            break;
                        case INTERSECT_CONIC_LINE:
                            first = 1; last = 7; first2 = 11; last2 = 15;
                            break;
                        case INTERSECT_QUAD_LINE:
                            first = 1; last = 7; first2 = 10; last2 = 14;
                            break;
                        case INTERSECT_CONIC_LINE_2:
                            first = 1; last = 7; first2 = 14; last2 = 18;
                            break;
                        case INTERSECT_QUAD_LINE_2:
                            first = 1; last = 7; first2 = 13; last2 = 17;
                            break;
                        case INTERSECT_CONIC_LINE_NO:
                            first = 0; last = 6; first2 = 7; last2 = 11;
                            break;
                        case INTERSECT_QUAD_LINE_NO:
                            first = 0; last = 6; first2 = 6; last2 = 10;
                            break;
                        case INTERSECT_CONIC:
                            first = 1; last = 7; first2 = 11; last2 = 17;
                            break;
                        case INTERSECT_QUAD:
                            first = 1; last = 7; first2 = 10; last2 = 16;
                            break;
                        case INTERSECT_CONIC_2:
                            first = 1; last = 7; first2 = 14; last2 = 20;
                            break;
                        case INTERSECT_QUAD_2:
                            first = 1; last = 7; first2 = 13; last2 = 19;
                            break;
                        case INTERSECT_CONIC_NO:
                            first = 0; last = 6; first2 = 7; last2 = 13;
                            break;
                        case INTERSECT_QUAD_NO:
                            first = 0; last = 6; first2 = 6; last2 = 12;
                            break;
                        case INTERSECT_SELF_CUBIC:
                            first = 1; last = 9;
                            break;
                        case INTERSECT_SELF_CUBIC_NO:
                            first = 0; last = 8;
                            break;
                        case INTERSECT_CUBIC_LINE:
                            first = 1; last = 9; first2 = 12; last2 = 16;
                            break;
                        case INTERSECT_CUBIC_LINE_2:
                            first = 1; last = 9; first2 = 15; last2 = 19;
                            break;
                        case INTERSECT_CUBIC_LINE_3:
                            first = 1; last = 9; first2 = 18; last2 = 22;
                            break;
                        case INTERSECT_CUBIC_LINE_NO:
                            first = 0; last = 8; first2 = 8; last2 = 12;
                            break;
                        case INTERSECT_CONIC_QUAD:
                            first = 1; last = 7; first2 = 11; last2 = 17;
                            break;
                        case INTERSECT_CONIC_QUAD_2:
                            first = 1; last = 7; first2 = 14; last2 = 20;
                            break;
                        case INTERSECT_CONIC_QUAD_3:
                            first = 1; last = 7; first2 = 17; last2 = 23;
                            break;
                        case INTERSECT_CONIC_QUAD_4:
                            first = 1; last = 7; first2 = 20; last2 = 26;
                            break;
                        case INTERSECT_CONIC_QUAD_NO:
                            first = 0; last = 6; first2 = 7; last2 = 13;
                            break;
                        case INTERSECT_CUBIC_QUAD:
                            first = 1; last = 9; first2 = 12; last2 = 18;
                            break;
                        case INTERSECT_CUBIC_QUAD_2:
                            first = 1; last = 9; first2 = 15; last2 = 21;
                            break;
                        case INTERSECT_CUBIC_QUAD_3:
                            first = 1; last = 9; first2 = 18; last2 = 24;
                            break;
                        case INTERSECT_CUBIC_QUAD_4:
                            first = 1; last = 9; first2 = 21; last2 = 27;
                            break;
                        case INTERSECT_CUBIC_QUAD_NO:
                            first = 0; last = 8; first2 = 8; last2 = 14;
                            break;
                        case INTERSECT_CUBIC:
                            first = 1; last = 9; first2 = 12; last2 = 20;
                            break;
                        case INTERSECT_CUBIC_2:
                            first = 1; last = 9; first2 = 15; last2 = 23;
                            break;
                        case INTERSECT_CUBIC_3:
                            first = 1; last = 9; first2 = 18; last2 = 26;
                            break;
                        case INTERSECT_CUBIC_4:
                            first = 1; last = 9; first2 = 21; last2 = 29;
                            break;
                        case INTERSECT_CUBIC_NO:
                            first = 0; last = 8; first2 = 8; last2 = 16;
                            break;
                        default:
                            console.log("unknown REC_TYPE_SECT frag type: " + fragType);
                            throw "stop execution";
                    }
                    break;
                default:
                    continue;
            }
            for (var idx = first; idx < last; idx += 2) {
                xmin = Math.min(xmin, frags[idx]);
                xmax = Math.max(xmax, frags[idx]);
                ymin = Math.min(ymin, frags[idx + 1]);
                ymax = Math.max(ymax, frags[idx + 1]);
            }
            for (var idx = first2; idx < last2; idx += 2) {
                xmin = Math.min(xmin, frags[idx]);
                xmax = Math.max(xmax, frags[idx]);
                ymin = Math.min(ymin, frags[idx + 1]);
                ymax = Math.max(ymax, frags[idx + 1]);
            }
        }
    }
    var angleBounds = [Infinity, Infinity, -Infinity, -Infinity];
    for (var tIndex = 0; tIndex < test.length; tIndex += 3) {
        var recType = test[tIndex];
        var records = test[tIndex + 2];
        for (var recordIndex = 0; recordIndex < records.length; recordIndex += 2) {
            var fragType = records[recordIndex];
            var frags = records[recordIndex + 1];
            switch (recType) {
                case REC_TYPE_ACTIVE_OP:
                    if (!draw_op) {
                        break;
                    }
                    {
                        var curve = curvePartialByID(test, frags[0], frags[1], frags[2]);
                        curve_extremes(curve, angleBounds);
                    }
                    break;
                case REC_TYPE_ANGLE:
                    if (!draw_angle) {
                        break;
                    }
                    {
                        var curve = curvePartialByID(test, frags[0], frags[4], frags[5]);
                        curve_extremes(curve, angleBounds);
                        curve = curvePartialByID(test, frags[6], frags[10], frags[11]);
                        curve_extremes(curve, angleBounds);
                        curve = curvePartialByID(test, frags[12], frags[16], frags[17]);
                    }
                    break;
                case REC_TYPE_COINCIDENCE:
                    if (!draw_coincidence) {
                        break;
                    }
                    {
                        var curve = curvePartialByID(test, frags[0], frags[1], frags[2]);
                        curve_extremes(curve, angleBounds);
                    }
                    break;
                case REC_TYPE_SORT:
                    if (!draw_sort) {
                        break;
                    }
                    if (fragType == SORT_UNARY || fragType == SORT_BINARY) {
                        var curve = curvePartialByID(test, frags[0], frags[6], frags[8]);
                        curve_extremes(curve, angleBounds);
                    }
                    break;
                case REC_TYPE_TOP:
                    if (!draw_top) {
                        break;
                    }
                    {
                        var curve = curvePartialByID(test, frags[0], frags[1], frags[2]);
                        curve_extremes(curve, angleBounds);
                    }
                    break;
            }
        }
    }
    xmin = Math.min(xmin, angleBounds[0]);
    ymin = Math.min(ymin, angleBounds[1]);
    xmax = Math.max(xmax, angleBounds[2]);
    ymax = Math.max(ymax, angleBounds[3]);
    setScale(xmin, xmax, ymin, ymax);
    if (hasPath == false && hasComputedPath == true && !draw_computed) {
        draw_computed = 7; // show quadratics, conics, and cubics
    }
    if (hasPath == true && hasComputedPath == false && draw_computed) {
        draw_computed = 0;
    }
}

function curveByIDMatch(test, id, recMatch) {
    var tIndex = -3;
    while ((tIndex += 3) < test.length) {
        var recType = test[tIndex];
        if (recType == REC_TYPE_OP) {
            continue;
        }
        if (recType != recMatch) {
            return [];
        }
        var records = test[tIndex + 2];
        for (var recordIndex = 0; recordIndex < records.length; recordIndex += 2) {
            var fragType = records[recordIndex];
            var frags = records[recordIndex + 1];
            if (frags[0] == id) {
                switch (fragType) {
                    case PATH_LINE:
                        return [frags[1], frags[2], frags[3], frags[4]];
                    case PATH_QUAD:
                        return [frags[1], frags[2], frags[3], frags[4],
                                frags[5], frags[6]];
                    case PATH_CONIC:
                        return [frags[1], frags[2], frags[3], frags[4],
                                frags[5], frags[6], frags[7]];
                    case PATH_CUBIC:
                        return [frags[1], frags[2], frags[3], frags[4],
                                frags[5], frags[6], frags[7], frags[8]];
                }
            }
        }
    }
    return [];
}

function curveByID(test, id) {
    var result = draw_path >= 4 ? curveByIDMatch(test, id, REC_TYPE_ALIGNED) : [];
    if (!result.length) {
        result = curveByIDMatch(test, id, REC_TYPE_PATH);
    }
    return result;
}

function curvePartialByIDMatch(test, id, t0, t1, recMatch) {
    var tIndex = -3;
    while ((tIndex += 3) < test.length) {
        var recType = test[tIndex];
        if (recType == REC_TYPE_OP) {
            continue;
        }
        if (recType != recMatch) {
            return [];
        }
        var records = test[tIndex + 2];
        for (var recordIndex = 0; recordIndex < records.length; recordIndex += 2) {
            var fragType = records[recordIndex];
            var frags = records[recordIndex + 1];
            if (frags[0] == id) {
                switch (fragType) {
                    case PATH_LINE:
                        return linePartial(frags[1], frags[2], frags[3], frags[4], t0, t1);
                    case PATH_QUAD:
                        return quadPartial(frags[1], frags[2], frags[3], frags[4],
                                frags[5], frags[6], t0, t1);
                    case PATH_CONIC:
                        return conicPartial(frags[1], frags[2], frags[3], frags[4],
                                frags[5], frags[6], frags[7], t0, t1);
                    case PATH_CUBIC:
                        return cubicPartial(frags[1], frags[2], frags[3], frags[4],
                                frags[5], frags[6], frags[7], frags[8], t0, t1);
                }
            }
        }
    }
    return [];
}

function curvePartialByID(test, id, t0, t1) {
    var result = draw_path >= 4 ? curvePartialByIDMatch(test, id, t0, t1, REC_TYPE_ALIGNED) : [];
    if (!result.length) {
        result = curvePartialByIDMatch(test, id, t0, t1, REC_TYPE_PATH);
    }
    return result;
}

function idByCurveIDMatch(test, frag, type, recMatch) {
    var tIndex = 0;
    while (tIndex < test.length) {
        var recType = test[tIndex];
        if (recType != recMatch) {
            ++tIndex;
            continue;
        }
        var records = test[tIndex + 2];
        for (var recordIndex = 0; recordIndex < records.length; recordIndex += 2) {
            var fragType = records[recordIndex];
            var frags = records[recordIndex + 1];
            if (frag.length != frags.length - 1) {
                continue;
            }
            switch (fragType) {
                case PATH_LINE:
                    if (frag[0] != frags[1] || frag[1] != frags[2]
                            || frag[2] != frags[3] || frag[3] != frags[4]) {
                        continue;
                    }
                    return frags[0];
                case PATH_QUAD:
                    if (frag[0] != frags[1] || frag[1] != frags[2]
                            || frag[2] != frags[3] || frag[3] != frags[4]
                            || frag[4] != frags[5] || frag[5] != frags[6]) {
                        continue;
                    }
                    return frags[0];
                case PATH_CONIC:
                    if (frag[0] != frags[1] || frag[1] != frags[2]
                            || frag[2] != frags[3] || frag[3] != frags[4]
                            || frag[4] != frags[5] || frag[5] != frags[6]
                            || frag[6] != frags[7]) {
                        continue;
                    }
                    return frags[0];
                case PATH_CUBIC:
                    if (frag[0] != frags[1] || frag[1] != frags[2]
                            || frag[2] != frags[3] || frag[3] != frags[4]
                            || frag[4] != frags[5] || frag[5] != frags[6]
                            || frag[6] != frags[7] || frag[7] != frags[8]) {
                        continue;
                    }
                    return frags[0];
            }
        }
        ++tIndex;
    }
    return -1;
}

function idByCurve(test, frag, type) {
    var result = draw_path >= 4 ? idByCurveIDMatch(test, frag, type, REC_TYPE_ALIGNED) : [];
    if (!result.length) {
        result = idByCurveIDMatch(test, frag, type, REC_TYPE_PATH);
    }
    return result;
}

function curve_extremes(curve, bounds) {
    var length = curve.length == 7 ? 6 : curve.length;
    for (var index = 0; index < length; index += 2) {
        var x = curve[index];
        var y = curve[index + 1];
        bounds[0] = Math.min(bounds[0], x);
        bounds[1] = Math.min(bounds[1], y);
        bounds[2] = Math.max(bounds[2], x);
        bounds[3] = Math.max(bounds[3], y);
    }
}

function setScale(x0, x1, y0, y1) {
    var srcWidth = x1 - x0;
    var srcHeight = y1 - y0;
    var usableWidth = screenWidth;
    var xDigits = Math.ceil(Math.log(Math.abs(xmax)) / Math.log(10));
    var yDigits = Math.ceil(Math.log(Math.abs(ymax)) / Math.log(10));
    usableWidth -= (xDigits + yDigits) * 10;
    usableWidth -= decimal_places * 10;
    if (draw_legend) {
        usableWidth -= 40;
    }
    var hscale = usableWidth / srcWidth;
    var vscale = screenHeight / srcHeight;
    scale = Math.min(hscale, vscale);
    var invScale = 1 / scale;
    var sxmin = x0 - invScale * 5;
    var symin = y0 - invScale * 10;
    var sxmax = x1 + invScale * (6 * decimal_places + 10);
    var symax = y1 + invScale * 10;
    srcWidth = sxmax - sxmin;
    srcHeight = symax - symin;
    hscale = usableWidth / srcWidth;
    vscale = screenHeight / srcHeight;
    scale = Math.min(hscale, vscale);
    srcLeft = sxmin;
    srcTop = symin;
}

function drawArc(curve, op, from, to) {
    var type = PATH_LINE + (curve.length / 2 - 2);
    var pt = pointAtT(curve, type, op ? 0.4 : 0.6);
    var dy = pt.y - curve[1];
    var dx = pt.x - curve[0];
    var dist = Math.sqrt(dy * dy + dx * dx);
    var _dist = dist * scale;
    var angle = Math.atan2(dy, dx);
    var _px = (curve[0] - srcLeft) * scale;
    var _py = (curve[1] - srcTop) * scale;
    var divisor = 4;
    var endDist;
    do {
        var ends = [];
        for (var index = -1; index <= 1; index += 2) {
            var px = Math.cos(index * Math.PI / divisor);
            var py = Math.sin(index * Math.PI / divisor);
            ends.push(px);
            ends.push(py);
        }
        var endDx = (ends[2] - ends[0]) * scale * dist;
        var endDy = (ends[3] - ends[1]) * scale * dist;
        endDist = Math.sqrt(endDx * endDx + endDy * endDy);
        if (endDist < 100) {
            break;
        }
        divisor *= 2;
    } while (true);
    if (endDist < 30) {
        return;
    }
    if (op) {
        divisor *= 2;
    }
    ctx.strokeStyle = op ? "rgba(210,0,45, 0.4)" : "rgba(90,90,90, 0.5)";
    ctx.beginPath();
    ctx.arc(_px, _py, _dist, angle - Math.PI / divisor, angle + Math.PI / divisor, false);
    ctx.stroke();
    var saveAlign = ctx.textAlign;
    var saveStyle = ctx.fillStyle;
    var saveFont = ctx.font;
    ctx.textAlign = "center";
    ctx.fillStyle = "black";
    ctx.font = "normal 24px Arial";
    divisor *= 0.8;
    for (var index = -1; index <= 1; index += 2) {
        var px = curve[0] + Math.cos(angle + index * Math.PI / divisor) * dist;
        var py = curve[1] + Math.sin(angle + index * Math.PI / divisor) * dist;
        var _px = (px - srcLeft) * scale;
        var _py = (py - srcTop) * scale;
        ctx.fillText(index < 0 ? to.toString() : from.toString(), _px, _py + 8);
    }
    ctx.textAlign = saveAlign;
    ctx.fillStyle = saveStyle;
    ctx.font = saveFont;
}

function drawPoint(px, py, end) {
    var length = drawnPts.length == 7 ? 6 : drawnPts.length;
    for (var pts = 0; pts < length; pts += 2) {
        var x = drawnPts[pts];
        var y = drawnPts[pts + 1];
        if (px == x && py == y) {
            return;
        }
    }
    drawnPts.push(px);
    drawnPts.push(py);
    var label = px.toFixed(decimal_places) + ", " + py.toFixed(decimal_places);
    var _px = (px - srcLeft) * scale;
    var _py = (py - srcTop) * scale;
    ctx.beginPath();
    ctx.arc(_px, _py, 3, 0, Math.PI*2, true);
    ctx.closePath();
    if (end) {
        ctx.fill();
    } else {
        ctx.stroke();
    }
    if (debug_xy) {
        ctx.textAlign = "left";
        ctx.fillText(label, _px + 5, _py);
    }
}

function coordCount(curveType) {
    switch (curveType) {
        case PATH_LINE:
            return 4;
        case PATH_QUAD:
            return 6;
        case PATH_CONIC:
            return 6;
        case PATH_CUBIC:
            return 8;
    }
    return -1;
}

function drawPoints(ptArray, curveType, drawControls) {
    var count = coordCount(curveType);
    for (var idx = 0; idx < count; idx += 2) {
        if (!drawControls && idx != 0 && idx != count - 2) {
            continue;
        }
        drawPoint(ptArray[idx], ptArray[idx + 1], idx == 0 || idx == count - 2);
    }
}

function drawControlLines(curve, curveType, drawEnd) {
    if (curveType == PATH_LINE) {
        return;
    }
    ctx.strokeStyle = "rgba(0,0,0, 0.3)";
    drawLine(curve[0], curve[1], curve[2], curve[3]);
    drawLine(curve[2], curve[3], curve[4], curve[5]);
    if (curveType == PATH_CUBIC) {
        drawLine(curve[4], curve[5], curve[6], curve[7]);
        if (drawEnd > 1) {
            drawLine(curve[6], curve[7], curve[0], curve[1]);
            if (drawEnd > 2) {
                drawLine(curve[0], curve[1], curve[4], curve[5]);
                drawLine(curve[6], curve[7], curve[2], curve[3]);
            }
        }
    } else if (drawEnd > 1) {
        drawLine(curve[4], curve[5], curve[0], curve[1]);
    }
}

function pointAtT(curve, curveType, t) {
    var xy = {};
    switch (curveType) {
        case PATH_LINE:
            var a = 1 - t;
            var b = t;
            xy.x = a * curve[0] + b * curve[2];
            xy.y = a * curve[1] + b * curve[3];
            break;
        case PATH_QUAD:
            var one_t = 1 - t;
            var a = one_t * one_t;
            var b = 2 * one_t * t;
            var c = t * t;
            xy.x = a * curve[0] + b * curve[2] + c * curve[4];
            xy.y = a * curve[1] + b * curve[3] + c * curve[5];
            break;
        case PATH_CONIC:
            var one_t = 1 - t;
            var a = one_t * one_t;
            var b = 2 * one_t * t;
            var c = t * t;
            xy.x = a * curve[0] + b * curve[2] * curve[6] + c * curve[4];
            xy.y = a * curve[1] + b * curve[3] * curve[6] + c * curve[5];
            var d = a + b * curve[6] + c;
            xy.x /= d;
            xy.y /= d;
            break;
        case PATH_CUBIC:
            var one_t = 1 - t;
            var one_t2 = one_t * one_t;
            var a = one_t2 * one_t;
            var b = 3 * one_t2 * t;
            var t2 = t * t;
            var c = 3 * one_t * t2;
            var d = t2 * t;
            xy.x = a * curve[0] + b * curve[2] + c * curve[4] + d * curve[6];
            xy.y = a * curve[1] + b * curve[3] + c * curve[5] + d * curve[7];
            break;
    }
    return xy;
}

function drawPointAtT(curve, curveType) {
    var x, y;
    var xy = pointAtT(curve, curveType, curveT);
    drawPoint(xy.x, xy.y, true);
    if (!draw_intersectT) {
        return;
    }
    ctx.fillStyle = "red";
    drawTAtPointUp(xy.x, xy.y, curveT);
}

function drawTAtPointUp(px, py, t) {
    var label = t.toFixed(decimal_places);
    var _px = (px - srcLeft)* scale;
    var _py = (py - srcTop) * scale;
    ctx.fillText(label, _px + 5, _py - 10);
}

function drawTAtPointDown(px, py, t) {
    var label = t.toFixed(decimal_places);
    var _px = (px - srcLeft)* scale;
    var _py = (py - srcTop) * scale;
    ctx.fillText(label, _px + 5, _py + 10);
}

function alreadyDrawnLine(x1, y1, x2, y2) {
    if (collect_bounds) {
        if (focus_enabled) {
            focusXmin = Math.min(focusXmin, x1, x2);
            focusYmin = Math.min(focusYmin, y1, y2);
            focusXmax = Math.max(focusXmax, x1, x2);
            focusYmax = Math.max(focusYmax, y1, y2);
        }
        return true;
    }
    for (var pts = 0; pts < drawnLines.length; pts += 4) {
        if (x1 == drawnLines[pts] && y1 == drawnLines[pts + 1]
                && x2 == drawnLines[pts + 2] && y2 == drawnLines[pts + 3]) {
            return true;
        }
    }
    drawnLines.push(x1);
    drawnLines.push(y1);
    drawnLines.push(x2);
    drawnLines.push(y2);
    return false;
}

function drawLine(x1, y1, x2, y2) {
    if (alreadyDrawnLine(x1, y1, x2, y2)) {
        return;
    }
    ctx.beginPath();
    ctx.moveTo((x1 - srcLeft) * scale,
            (y1 - srcTop) * scale);
    ctx.lineTo((x2 - srcLeft) * scale,
            (y2 - srcTop) * scale);
    ctx.stroke();
}

function linePartial(x1, y1, x2, y2, t1, t2) {
    var dx = x1 - x2;
    var dy = y1 - y2;
    var array = [
        x1 - t1 * dx,
        y1 - t1 * dy,
        x1 - t2 * dx,
        y1 - t2 * dy
    ];
    return array;
}

function drawLinePartial(x1, y1, x2, y2, t1, t2) {
    var a = linePartial(x1, y1, x2, y2, t1, t2);
    var ax = a[0];
    var ay = a[1];
    var bx = a[2];
    var by = a[3];
    if (alreadyDrawnLine(ax, ay, bx, by)) {
        return;
    }
    ctx.beginPath();
    ctx.moveTo((ax - srcLeft) * scale,
            (ay - srcTop) * scale);
    ctx.lineTo((bx - srcLeft) * scale,
            (by - srcTop) * scale);
    ctx.stroke();
}

function alreadyDrawnQuad(x1, y1, x2, y2, x3, y3) {
    if (collect_bounds) {
        if (focus_enabled) {
            focusXmin = Math.min(focusXmin, x1, x2, x3);
            focusYmin = Math.min(focusYmin, y1, y2, y3);
            focusXmax = Math.max(focusXmax, x1, x2, x3);
            focusYmax = Math.max(focusYmax, y1, y2, y3);
        }
        return true;
    }
    for (var pts = 0; pts < drawnQuads.length; pts += 6) {
        if (x1 == drawnQuads[pts] && y1 == drawnQuads[pts + 1]
                && x2 == drawnQuads[pts + 2] && y2 == drawnQuads[pts + 3]
                && x3 == drawnQuads[pts + 4] && y3 == drawnQuads[pts + 5]) {
            return true;
        }
    }
    drawnQuads.push(x1);
    drawnQuads.push(y1);
    drawnQuads.push(x2);
    drawnQuads.push(y2);
    drawnQuads.push(x3);
    drawnQuads.push(y3);
    return false;
}

function drawQuad(x1, y1, x2, y2, x3, y3) {
    if (alreadyDrawnQuad(x1, y1, x2, y2, x3, y3)) {
        return;
    }
    ctx.beginPath();
    ctx.moveTo((x1 - srcLeft) * scale,
            (y1 - srcTop) * scale);
    ctx.quadraticCurveTo((x2 - srcLeft) * scale,
            (y2 - srcTop) * scale,
            (x3 - srcLeft) * scale,
            (y3 - srcTop) * scale);
    ctx.stroke();
}

function interp(A, B, t) {
    return A + (B - A) * t;
}

function interp_quad_coords(x1, x2, x3, t)
{
    var ab = interp(x1, x2, t);
    var bc = interp(x2, x3, t);
    var abc = interp(ab, bc, t);
    return abc;
}

function quadPartial(x1, y1, x2, y2, x3, y3, t1, t2) {
    var ax = interp_quad_coords(x1, x2, x3, t1);
    var ay = interp_quad_coords(y1, y2, y3, t1);
    var dx = interp_quad_coords(x1, x2, x3, (t1 + t2) / 2);
    var dy = interp_quad_coords(y1, y2, y3, (t1 + t2) / 2);
    var cx = interp_quad_coords(x1, x2, x3, t2);
    var cy = interp_quad_coords(y1, y2, y3, t2);
    var bx = 2*dx - (ax + cx)/2;
    var by = 2*dy - (ay + cy)/2;
    var array = [
        ax, ay, bx, by, cx, cy
    ];
    return array;
}

function drawQuadPartial(x1, y1, x2, y2, x3, y3, t1, t2) {
    var a = quadPartial(x1, y1, x2, y2, x3, y3, t1, t2);
    var ax = a[0];
    var ay = a[1];
    var bx = a[2];
    var by = a[3];
    var cx = a[4];
    var cy = a[5];
    if (alreadyDrawnQuad(ax, ay, bx, by, cx, cy)) {
        return;
    }
    ctx.beginPath();
    ctx.moveTo((ax - srcLeft) * scale,
            (ay - srcTop) * scale);
    ctx.quadraticCurveTo((bx - srcLeft) * scale,
            (by - srcTop) * scale,
            (cx - srcLeft) * scale,
            (cy - srcTop) * scale);
    ctx.stroke();
}

function alreadyDrawnConic(x1, y1, x2, y2, x3, y3, w) {
    if (collect_bounds) {
        if (focus_enabled) {
            focusXmin = Math.min(focusXmin, x1, x2, x3);
            focusYmin = Math.min(focusYmin, y1, y2, y3);
            focusXmax = Math.max(focusXmax, x1, x2, x3);
            focusYmax = Math.max(focusYmax, y1, y2, y3);
        }
        return true;
    }
    for (var pts = 0; pts < drawnConics.length; pts += 8) {
        if (x1 == drawnConics[pts] && y1 == drawnCubics[pts + 1]
                && x2 == drawnCubics[pts + 2] && y2 == drawnCubics[pts + 3]
                && x3 == drawnCubics[pts + 4] && y3 == drawnCubics[pts + 5]
                && w == drawnCubics[pts + 6]) {
            return true;
        }
    }
    drawnConics.push(x1);
    drawnConics.push(y1);
    drawnConics.push(x2);
    drawnConics.push(y2);
    drawnConics.push(x3);
    drawnConics.push(y3);
    drawnCubics.push(w);
    return false;
}

var kMaxConicToQuadPOW2 = 5;

function computeQuadPOW2(curve, tol) {
    var a = curve[6] - 1;
    var k = a / (4 * (2 + a));
    var x = k * (curve[0] - 2 * curve[2] + curve[4]);
    var y = k * (curve[1] - 2 * curve[3] + curve[5]);

    var error = Math.sqrt(x * x + y * y);
    var pow2;
    for (pow2 = 0; pow2 < kMaxConicToQuadPOW2; ++pow2) {
        if (error <= tol) {
            break;
        }
        error *= 0.25;
    }
    return pow2;
}

function subdivide_w_value(w) {
    return Math.sqrt(0.5 + w * 0.5);
}

function chop(curve, part1, part2) {
    var w = curve[6];
    var scale = 1 / (1 + w);
    part1[0] = curve[0];
    part1[1] = curve[1];
    part1[2] = (curve[0] + curve[2] * w) * scale;
    part1[3] = (curve[1] + curve[3] * w) * scale;
    part1[4] = part2[0] = (curve[0] + (curve[2] * w) * 2 + curve[4]) * scale * 0.5;
    part1[5] = part2[1] = (curve[1] + (curve[3] * w) * 2 + curve[5]) * scale * 0.5;
    part2[2] = (curve[2] * w + curve[4]) * scale;
    part2[3] = (curve[3] * w + curve[5]) * scale;
    part2[4] = curve[4];
    part2[5] = curve[5];
    part1[6] = part2[6] = subdivide_w_value(w);
}

function subdivide(curve, level, pts) {
    if (0 == level) {
        pts.push(curve[2]);
        pts.push(curve[3]);
        pts.push(curve[4]);
        pts.push(curve[5]);
    } else {
        var part1 = [], part2 = [];
        chop(curve, part1, part2);
        --level;
        subdivide(part1, level, pts);
        subdivide(part2, level, pts);
    }
}

function chopIntoQuadsPOW2(curve, pow2, pts) {
    subdivide(curve, pow2, pts);
    return 1 << pow2;
}

function drawConicWithQuads(x1, y1, x2, y2, x3, y3, w) {
    if (alreadyDrawnConic(x1, y1, x2, y2, x3, y3, w)) {
        return;
    }
    ctx.beginPath();
    ctx.moveTo((x1 - srcLeft) * scale,
            (y1 - srcTop) * scale);
    var tol = 1 / scale;
    var curve = [x1, y1, x2, y2, x3, y3, w];
    var pow2 = computeQuadPOW2(curve, tol);
    var pts = [];
    chopIntoQuadsPOW2(curve, pow2, pts);
    for (var i = 0; i < pts.length; i += 4) {
        ctx.quadraticCurveTo(
            (pts[i + 0] - srcLeft) * scale, (pts[i + 1] - srcTop) * scale,
            (pts[i + 2] - srcLeft) * scale, (pts[i + 3] - srcTop) * scale);
    }
    ctx.stroke();
}

function conic_eval_numerator(x1, x2, x3, w, t) {
    var src2w = x2 * w;
    var C = x1;
    var A = x3 - 2 * src2w + C;
    var B = 2 * (src2w - C);
    return (A * t + B) * t + C;
}


function conic_eval_denominator(w, t) {
    var B = 2 * (w - 1);
    var C = 1;
    var A = -B;
    return (A * t + B) * t + C;
}

function conicPartial(x1, y1, x2, y2, x3, y3, w, t1, t2) {
    var ax = conic_eval_numerator(x1, x2, x3, w, t1);
    var ay = conic_eval_numerator(y1, y2, y3, w, t1);
    var az = conic_eval_denominator(w, t1);
    var midT = (t1 + t2) / 2;
    var dx = conic_eval_numerator(x1, x2, x3, w, midT);
    var dy = conic_eval_numerator(y1, y2, y3, w, midT);
    var dz = conic_eval_denominator(w, midT);
    var cx = conic_eval_numerator(x1, x2, x3, w, t2);
    var cy = conic_eval_numerator(y1, y2, y3, w, t2);
    var cz = conic_eval_denominator(w, t2);
    var bx = 2 * dx - (ax + cx) / 2;
    var by = 2 * dy - (ay + cy) / 2;
    var bz = 2 * dz - (az + cz) / 2;
    var dt = t2 - t1;
    var dt_1 = 1 - dt;
    var array = [
        ax / az, ay / az, bx / bz, by / bz, cx / cz, cy / cz, 0
    ];
    var dMidAC = { x:(array[0] + array[4]) / 2, y:(array[1] + array[5]) / 2 };
    var dMid = { x:dx / dz, y:dy / dz };
    var dWNumer = { x:dMidAC.x - dMid.x, y:dMidAC.y - dMid.y };
    var dWDenom = { x:dMid.x - array[2], y:dMid.y - array[3] };
    var partW = Math.sqrt(dWNumer.x * dWNumer.x + dWNumer.y * dWNumer.y)
                / Math.sqrt(dWDenom.x * dWDenom.x + dWDenom.y * dWDenom.y);
    array[6] = partW;
    return array;
}

function drawConicPartial(x1, y1, x2, y2, x3, y3, w, t1, t2) {
    var a = conicPartial(x1, y1, x2, y2, x3, y3, w, t1, t2);
    var ax = a[0];
    var ay = a[1];
    var bx = a[2];
    var by = a[3];
    var cx = a[4];
    var cy = a[5];
    var w_ = a[6];
    drawConicWithQuads(ax, ay, bx, by, cx, cy, w_);
}

function alreadyDrawnCubic(x1, y1, x2, y2, x3, y3, x4, y4) {
    if (collect_bounds) {
        if (focus_enabled) {
            focusXmin = Math.min(focusXmin, x1, x2, x3, x4);
            focusYmin = Math.min(focusYmin, y1, y2, y3, y4);
            focusXmax = Math.max(focusXmax, x1, x2, x3, x4);
            focusYmax = Math.max(focusYmax, y1, y2, y3, y4);
        }
        return true;
    }
    for (var pts = 0; pts < drawnCubics.length; pts += 8) {
        if (x1 == drawnCubics[pts] && y1 == drawnCubics[pts + 1]
                && x2 == drawnCubics[pts + 2] && y2 == drawnCubics[pts + 3]
                && x3 == drawnCubics[pts + 4] && y3 == drawnCubics[pts + 5]
                && x4 == drawnCubics[pts + 6] && y4 == drawnCubics[pts + 7]) {
            return true;
        }
    }
    drawnCubics.push(x1);
    drawnCubics.push(y1);
    drawnCubics.push(x2);
    drawnCubics.push(y2);
    drawnCubics.push(x3);
    drawnCubics.push(y3);
    drawnCubics.push(x4);
    drawnCubics.push(y4);
    return false;
}

function drawCubic(x1, y1, x2, y2, x3, y3, x4, y4) {
    if (alreadyDrawnCubic(x1, y1, x2, y2, x3, y3, x4, y4)) {
        return;
    }
    ctx.beginPath();
    ctx.moveTo((x1 - srcLeft) * scale,
            (y1 - srcTop) * scale);
    ctx.bezierCurveTo((x2 - srcLeft) * scale,
            (y2 - srcTop) * scale,
            (x3 - srcLeft) * scale,
            (y3 - srcTop) * scale,
            (x4 - srcLeft) * scale,
            (y4 - srcTop) * scale);
    ctx.stroke();
}

function interp_cubic_coords(x1, x2, x3, x4, t)
{
    var ab = interp(x1, x2, t);
    var bc = interp(x2, x3, t);
    var cd = interp(x3, x4, t);
    var abc = interp(ab, bc, t);
    var bcd = interp(bc, cd, t);
    var abcd = interp(abc, bcd, t);
    return abcd;
}

function cubicPartial(x1, y1, x2, y2, x3, y3, x4, y4, t1, t2) {
    var ax = interp_cubic_coords(x1, x2, x3, x4, t1);
    var ay = interp_cubic_coords(y1, y2, y3, y4, t1);
    var ex = interp_cubic_coords(x1, x2, x3, x4, (t1*2+t2)/3);
    var ey = interp_cubic_coords(y1, y2, y3, y4, (t1*2+t2)/3);
    var fx = interp_cubic_coords(x1, x2, x3, x4, (t1+t2*2)/3);
    var fy = interp_cubic_coords(y1, y2, y3, y4, (t1+t2*2)/3);
    var dx = interp_cubic_coords(x1, x2, x3, x4, t2);
    var dy = interp_cubic_coords(y1, y2, y3, y4, t2);
    var mx = ex * 27 - ax * 8 - dx;
    var my = ey * 27 - ay * 8 - dy;
    var nx = fx * 27 - ax - dx * 8;
    var ny = fy * 27 - ay - dy * 8;
    var bx = (mx * 2 - nx) / 18;
    var by = (my * 2 - ny) / 18;
    var cx = (nx * 2 - mx) / 18;
    var cy = (ny * 2 - my) / 18;
    var array = [
        ax, ay, bx, by, cx, cy, dx, dy
    ];
    return array;
}

function drawCubicPartial(x1, y1, x2, y2, x3, y3, x4, y4, t1, t2) {
    var a = cubicPartial(x1, y1, x2, y2, x3, y3, x4, y4, t1, t2);
    var ax = a[0];
    var ay = a[1];
    var bx = a[2];
    var by = a[3];
    var cx = a[4];
    var cy = a[5];
    var dx = a[6];
    var dy = a[7];
    if (alreadyDrawnCubic(ax, ay, bx, by, cx, cy, dx, dy)) {
        return;
    }
    ctx.beginPath();
    ctx.moveTo((ax - srcLeft) * scale,
            (ay - srcTop) * scale);
    ctx.bezierCurveTo((bx - srcLeft) * scale,
            (by - srcTop) * scale,
            (cx - srcLeft) * scale,
            (cy - srcTop) * scale,
            (dx - srcLeft) * scale,
            (dy - srcTop) * scale);
    ctx.stroke();
}

function drawCurve(c) {
    switch (c.length) {
        case 4:
            drawLine(c[0], c[1], c[2], c[3]);
            break;
        case 6:
            drawQuad(c[0], c[1], c[2], c[3], c[4], c[5]);
            break;
        case 7:
            drawConicWithQuads(c[0], c[1], c[2], c[3], c[4], c[5], c[6]);
            break;
        case 8:
            drawCubic(c[0], c[1], c[2], c[3], c[4], c[5], c[6], c[7]);
            break;
    }
}

function boundsWidth(pts) {
    var min = pts[0];
    var max = pts[0];
    var length = pts.length == 7 ? 6 : pts.length;
    for (var idx = 2; idx < length; idx += 2) {
        min = Math.min(min, pts[idx]);
        max = Math.max(max, pts[idx]);
    }
    return max - min;
}

function boundsHeight(pts) {
    var min = pts[1];
    var max = pts[1];
    var length = pts.length == 7 ? 6 : pts.length;
    for (var idx = 3; idx < length; idx += 2) {
        min = Math.min(min, pts[idx]);
        max = Math.max(max, pts[idx]);
    }
    return max - min;
}

function tangent(pts) {
    var dx = pts[2] - pts[0];
    var dy = pts[3] - pts[1];
    if (dx == 0 && dy == 0 && pts.length > 4) {
        dx = pts[4] - pts[0];
        dy = pts[5] - pts[1];
        if (dx == 0 && dy == 0 && pts.length == 8) {
            dx = pts[6] - pts[0];
            dy = pts[7] - pts[1];
        }
    }
    return Math.atan2(-dy, dx);
}

function hodograph(cubic) {
    var hodo = [];
    hodo[0] = 3 * (cubic[2] - cubic[0]);
    hodo[1] = 3 * (cubic[3] - cubic[1]);
    hodo[2] = 3 * (cubic[4] - cubic[2]);
    hodo[3] = 3 * (cubic[5] - cubic[3]);
    hodo[4] = 3 * (cubic[6] - cubic[4]);
    hodo[5] = 3 * (cubic[7] - cubic[5]);
    return hodo;
}

function hodograph2(cubic) {
    var quad = hodograph(cubic);
    var hodo = [];
    hodo[0] = 2 * (quad[2] - quad[0]);
    hodo[1] = 2 * (quad[3] - quad[1]);
    hodo[2] = 2 * (quad[4] - quad[2]);
    hodo[3] = 2 * (quad[5] - quad[3]);
    return hodo;
}

function quadraticRootsReal(A, B, C, s) {
    if (A == 0) {
        if (B == 0) {
            s[0] = 0;
            return C == 0;
        }
        s[0] = -C / B;
        return 1;
    }
    /* normal form: x^2 + px + q = 0 */
    var p = B / (2 * A);
    var q = C / A;
    var p2 = p * p;
    if (p2 < q) {
        return 0;
    }
    var sqrt_D = 0;
    if (p2 > q) {
        sqrt_D = sqrt(p2 - q);
    }
    s[0] = sqrt_D - p;
    s[1] = -sqrt_D - p;
    return 1 + s[0] != s[1];
}

function add_valid_ts(s, realRoots, t) {
    var foundRoots = 0;
    for (var index = 0; index < realRoots; ++index) {
        var tValue = s[index];
        if (tValue >= 0 && tValue <= 1) {
            for (var idx2 = 0; idx2 < foundRoots; ++idx2) {
                if (t[idx2] != tValue) {
                    t[foundRoots++] = tValue;
                }
            }
        }
    }
    return foundRoots;
}

function quadraticRootsValidT(a, b, c, t) {
    var s = [];
    var realRoots = quadraticRootsReal(A, B, C, s);
    var foundRoots = add_valid_ts(s, realRoots, t);
    return foundRoots != 0;
}

function find_cubic_inflections(cubic, tValues) {
    var Ax = src[2] - src[0];
    var Ay = src[3] - src[1];
    var Bx = src[4] - 2 * src[2] + src[0];
    var By = src[5] - 2 * src[3] + src[1];
    var Cx = src[6] + 3 * (src[2] - src[4]) - src[0];
    var Cy = src[7] + 3 * (src[3] - src[5]) - src[1];
    return quadraticRootsValidT(Bx * Cy - By * Cx, (Ax * Cy - Ay * Cx),
            Ax * By - Ay * Bx, tValues);
}

function dxy_at_t(curve, type, t) {
    var dxy = {};
    if (type == PATH_QUAD) {
        var a = t - 1;
        var b = 1 - 2 * t;
        var c = t;
        dxy.x = a * curve[0] + b * curve[2] + c * curve[4];
        dxy.y = a * curve[1] + b * curve[3] + c * curve[5];
    } else if (type == PATH_CONIC) {
        var p20x = curve[4] - curve[0];
        var p20y = curve[5] - curve[1];
        var p10xw = (curve[2] - curve[0]) * curve[6];
        var p10yw = (curve[3] - curve[1]) * curve[6];
        var coeff0x = curve[6] * p20x - p20x;
        var coeff0y = curve[6] * p20y - p20y;
        var coeff1x = p20x - 2 * p10xw;
        var coeff1y = p20y - 2 * p10yw;
        dxy.x = t * (t * coeff0x + coeff1x) + p10xw;
        dxy.y = t * (t * coeff0y + coeff1y) + p10yw;
    } else if (type == PATH_CUBIC) {
        var one_t = 1 - t;
        var a = curve[0];
        var b = curve[2];
        var c = curve[4];
        var d = curve[6];
        dxy.x = 3 * ((b - a) * one_t * one_t + 2 * (c - b) * t * one_t + (d - c) * t * t);
        a = curve[1];
        b = curve[3];
        c = curve[5];
        d = curve[7];
        dxy.y = 3 * ((b - a) * one_t * one_t + 2 * (c - b) * t * one_t + (d - c) * t * t);
    }
    return dxy;
}

function drawLabel(num, px, py) {
    ctx.beginPath();
    ctx.arc(px, py, 8, 0, Math.PI*2, true);
    ctx.closePath();
    ctx.strokeStyle = "rgba(0,0,0, 0.4)";
    ctx.lineWidth = num == 0 || num == 3 ? 2 : 1;
    ctx.stroke();
    ctx.fillStyle = "black";
    ctx.font = "normal 10px Arial";
  //  ctx.rotate(0.001);
    ctx.fillText(num, px - 2, py + 3);
  //  ctx.rotate(-0.001);
}

function drawLabelX(ymin, num, loc) {
    var px = (loc - srcLeft) * scale;
    var py = (ymin - srcTop) * scale - 20;
    drawLabel(num, px, py);
}

function drawLabelY(xmin, num, loc) {
    var px = (xmin - srcLeft) * scale - 20;
    var py = (loc - srcTop) * scale;
    drawLabel(num, px, py);
}

function drawHodoOrigin(hx, hy, hMinX, hMinY, hMaxX, hMaxY) {
    ctx.beginPath();
    ctx.moveTo(hx, hy - 100);
    ctx.lineTo(hx, hy);
    ctx.strokeStyle = hMinY < 0 ? "green" : "blue";
    ctx.stroke();
    ctx.beginPath();
    ctx.moveTo(hx, hy);
    ctx.lineTo(hx, hy + 100);
    ctx.strokeStyle = hMaxY > 0 ? "green" : "blue";
    ctx.stroke();
    ctx.beginPath();
    ctx.moveTo(hx - 100, hy);
    ctx.lineTo(hx, hy);
    ctx.strokeStyle = hMinX < 0 ? "green" : "blue";
    ctx.stroke();
    ctx.beginPath();
    ctx.moveTo(hx, hy);
    ctx.lineTo(hx + 100, hy);
    ctx.strokeStyle = hMaxX > 0 ? "green" : "blue";
    ctx.stroke();
}

function scalexy(x, y, mag) {
    var length = Math.sqrt(x * x + y * y);
    return mag / length;
}

function drawArrow(x, y, dx, dy, s) {
    var dscale = scalexy(dx, dy, 1 / scale * 100 * s);
    dx *= dscale;
    dy *= dscale;
    ctx.beginPath();
    ctx.moveTo((x - srcLeft) * scale, (y - srcTop) * scale);
    x += dx;
    y += dy;
    ctx.lineTo((x - srcLeft) * scale, (y - srcTop) * scale);
    dx /= 10;
    dy /= 10;
    ctx.lineTo((x - dy - srcLeft) * scale, (y + dx - srcTop) * scale);
    ctx.lineTo((x + dx * 2 - srcLeft) * scale, (y + dy * 2 - srcTop) * scale);
    ctx.lineTo((x + dy - srcLeft) * scale, (y - dx - srcTop) * scale);
    ctx.lineTo((x - srcLeft) * scale, (y - srcTop) * scale);
    ctx.strokeStyle = "rgba(0,75,0, 0.4)";
    ctx.stroke();
}

function x_at_t(curve, t) {
    var one_t = 1 - t;
    if (curve.length == 4) {
        return one_t * curve[0] + t * curve[2];
    }
    var one_t2 = one_t * one_t;
    var t2 = t * t;
    if (curve.length == 6) {
        return one_t2 * curve[0] + 2 * one_t * t * curve[2] + t2 * curve[4];
    }
    if (curve.length == 7) {
        return (one_t2 * curve[0] + 2 * one_t * t * curve[2] * curve[6] + t2 * curve[4])
                / (one_t2 +2 * one_t * t * curve[6] + t2);
    }
    var a = one_t2 * one_t;
    var b = 3 * one_t2 * t;
    var c = 3 * one_t * t2;
    var d = t2 * t;
    return a * curve[0] + b * curve[2] + c * curve[4] + d * curve[6];
}

function y_at_t(curve, t) {
    var one_t = 1 - t;
    if (curve.length == 4) {
        return one_t * curve[1] + t * curve[3];
    }
    var one_t2 = one_t * one_t;
    var t2 = t * t;
    if (curve.length == 6) {
        return one_t2 * curve[1] + 2 * one_t * t * curve[3] + t2 * curve[5];
    }
    if (curve.length == 7) {
        return (one_t2 * curve[1] + 2 * one_t * t * curve[3] * curve[6] + t2 * curve[5])
                / (one_t2 +2 * one_t * t * curve[6] + t2);
    }
    var a = one_t2 * one_t;
    var b = 3 * one_t2 * t;
    var c = 3 * one_t * t2;
    var d = t2 * t;
    return a * curve[1] + b * curve[3] + c * curve[5] + d * curve[7];
}

function drawOrder(curve, label) {
    var px = x_at_t(curve, 0.75);
    var py = y_at_t(curve, 0.75);
    var _px = (px - srcLeft) * scale;
    var _py = (py - srcTop) * scale;
    ctx.beginPath();
    ctx.arc(_px, _py, 15, 0, Math.PI * 2, true);
    ctx.closePath();
    ctx.fillStyle = "white";
    ctx.fill();
    if (label == 'L') {
        ctx.strokeStyle = "rgba(255,0,0, 1)";
        ctx.fillStyle = "rgba(255,0,0, 1)";
    } else {
        ctx.strokeStyle = "rgba(0,0,255, 1)";
        ctx.fillStyle = "rgba(0,0,255, 1)";
    }
    ctx.stroke();
    ctx.font = "normal 16px Arial";
    ctx.textAlign = "center";
    ctx.fillText(label, _px, _py + 5);
    ctx.font = "normal 10px Arial";
}

function drawID(curve, id) {
    var px = x_at_t(curve, 0.5);
    var py = y_at_t(curve, 0.5);
    var _px = (px - srcLeft) * scale;
    var _py = (py - srcTop) * scale;
    draw_id_at(id, _px, _py);
}

function draw_id_at(id, _px, _py) {
    ctx.beginPath();
    ctx.arc(_px, _py, 15, 0, Math.PI * 2, true);
    ctx.closePath();
    ctx.fillStyle = "white";
    ctx.fill();
    ctx.strokeStyle = "rgba(127,127,0, 1)";
    ctx.fillStyle = "rgba(127,127,0, 1)";
    ctx.stroke();
    ctx.font = "normal 16px Arial";
    ctx.textAlign = "center";
    ctx.fillText(id, _px, _py + 5);
    ctx.font = "normal 10px Arial";
}

function drawLinePartialID(id, x1, y1, x2, y2, t1, t2) {
    var curve = [x1, y1, x2, y2];
    drawCurvePartialID(id, curve, t1, t2);
}

function drawLineID(id, x1, y1, x2, y2) {
    drawLinePartialID(id, x1, y1, x2, y2, 0, 1);
}

function drawQuadPartialID(id, x1, y1, x2, y2, x3, y3, t1, t2) {
    var curve = [x1, y1, x2, y2, x3, y3];
    drawCurvePartialID(id, curve, t1, t2);
}

function drawQuadID(id, x1, y1, x2, y2, x3, y3) {
    drawQuadPartialID(id, x1, y1, x2, y2, x3, y3, 0, 1);
}

function drawConicPartialID(id, x1, y1, x2, y2, x3, y3, w, t1, t2) {
    var curve = [x1, y1, x2, y2, x3, y3, w];
    drawCurvePartialID(id, curve, t1, t2);
}

function drawConicID(id, x1, y1, x2, y2, x3, y3, w) {
    drawConicPartialID(id, x1, y1, x2, y2, x3, y3, w, 0, 1);
}

function drawCubicPartialID(id, x1, y1, x2, y2, x3, y3, x4, y4, t1, t2) {
    var curve = [x1, y1, x2, y2, x3, y3, x4, y4];
    drawCurvePartialID(id, curve, t1, t2);
}

function drawCubicID(id, x1, y1, x2, y2, x3, y3, x4, y4) {
    drawCubicPartialID(id, x1, y1, x2, y2, x3, y3, x4, y4, 0, 1);
}

function  drawCurvePartialID(id, curve, t1, t2) {
    var px = x_at_t(curve, (t1 + t2) / 2);
    var py = y_at_t(curve, (t1 + t2) / 2);
    var _px = (px - srcLeft) * scale;
    var _py = (py - srcTop) * scale;
    draw_id_at(id, _px, _py);
}

function drawCurveSpecials(test, curve, type) {
    if (pt_labels) {
        drawPoints(curve, type, pt_labels == 2);
    }
    if (control_lines != 0) {
        drawControlLines(curve, type, control_lines);
    }
    if (curve_t) {
        drawPointAtT(curve, type);
    }
    if (draw_midpoint) {
        var mid = pointAtT(curve, type, 0.5);
        drawPoint(mid.x, mid.y, true);
    }
    if (draw_id) {
        var id = idByCurve(test, curve, type);
        if (id >= 0) {
            drawID(curve, id);
        }
    }
    if (type == PATH_LINE) {
        return;
    }
    if (draw_deriviatives > 0) {
        var d = dxy_at_t(curve, type, 0);
        drawArrow(curve[0], curve[1], d.x, d.y, 1);
        if (draw_deriviatives == 2) {
            d = dxy_at_t(curve, type, 1);
            if (type == PATH_CUBIC) {
                drawArrow(curve[6], curve[7], d.x, d.y, 1);
            } else {
                drawArrow(curve[4], curve[5], d.x, d.y, 1);
            }
        }
        if (draw_midpoint) {
            var mid = pointAtT(curve, type, 0.5);
            d = dxy_at_t(curve, type, 0.5);
            drawArrow(mid.x, mid.y, d.x, d.y, 1);
        }
    }
    if (type != PATH_CUBIC) {
        return;
    }
    if (draw_sequence) {
        var ymin = Math.min(curve[1], curve[3], curve[5], curve[7]);
        for (var i = 0; i < 8; i+= 2) {
            drawLabelX(ymin, i >> 1, curve[i]);
        }
        var xmin = Math.min(curve[0], curve[2], curve[4], curve[6]);
        for (var i = 1; i < 8; i+= 2) {
            drawLabelY(xmin, i >> 1, curve[i]);
        }
    }
}

function logCurves(test) {
    for (curves in test) {
        var curve = test[curves];
        dumpCurve(curve);
    }
}

function curveToString(curve) {
    var str = "{{";
    var length = curve.length == 7 ? 6 : curve.length;
    if (curve.length == 7) {
        str += "{";
    }
    for (i = 0; i < length; i += 2) {
        str += curve[i].toFixed(decimal_places) + "," + curve[i + 1].toFixed(decimal_places);
        if (i < curve.length - 2) {
            str += "}, {";
        }
    }
    str += "}";
    if (curve.length == 7) {
        str += "}, " + curve[6].toFixed(decimal_places);
    }
    str += "}";
    return str;
}

function dumpCurve(curve) {
    console.log(curveToString(curve));
}

function draw(test, lines, title) {
    ctx.fillStyle = "rgba(0,0,0, 0.1)";
    ctx.font = "normal 50px Arial";
    ctx.textAlign = "left";
    ctx.fillText(title, 50, 50);
    ctx.font = "normal 10px Arial";
    ctx.lineWidth = "1.001"; "0.999";
    var secondPath = test.length;
    var closeCount = 0;
    logStart = -1;
    logRange = 0;
    // find last active rec type at this step
    var curType = test[0];
    var curStep = 0;
    var hasOp = false;
    var lastActive = 0;
    var lastAdd = 0;
    var lastCoin = 0;
    var lastSect = 0;
    var lastSort = 0;
    var lastMark = 0;
    var lastTop = 0;
    activeCount = 0;
    addCount = 0;
    angleCount = 0;
    opCount = 0;
    sectCount = 0;
    sortCount = 0;
    topCount = 0;
    markCount = 0;
    activeMax = 0;
    addMax = 0;
    angleMax = 0;
    coinMax = 0;
    opMax = 0;
    sectMax = 0;
    sectMax2 = 0;
    sortMax = 0;
    topMax = 0;
    markMax = 0;
    lastIndex = test.length - 3;
    for (var tIndex = 0; tIndex < test.length; tIndex += 3) {
        var recType = test[tIndex];
        if (!typeof recType == 'number' || recType < REC_TYPE_UNKNOWN || recType > REC_TYPE_LAST) {
            console.log("unknown rec type: " + recType);
            throw "stop execution";
        }
   //     if (curType == recType && curType != REC_TYPE_ADD) {
   //         continue;
   //     }
        var inStepRange = step_limit == 0 || curStep < step_limit;
        curType = recType;
        if (recType == REC_TYPE_OP) {
            hasOp = true;
            continue;
        }
        if (recType == REC_TYPE_UNKNOWN) {
            // these types do not advance step
            continue;
        }
        var bumpStep = false;
        var records = test[tIndex + 2];
        var fragType = records[0];
        if (recType == REC_TYPE_ADD) {
            if (records.length != 2) {
                console.log("expect only two elements: " + records.length);
                throw "stop execution";
            }
            if (fragType == ADD_MOVETO || fragType == ADD_CLOSE) {
                continue;
            }
            ++addMax;
            if (!draw_add || !inStepRange) {
                continue;
            }
            lastAdd = tIndex;
            ++addCount;
            bumpStep = true;
        }
        if (recType == REC_TYPE_PATH && hasOp) {
            secondPath = tIndex;
        }
        if (recType == REC_TYPE_PATH2 && hasOp) {
            secondPath = tIndex;
        }
        if (recType == REC_TYPE_ACTIVE) {
            ++activeMax;
            if (!draw_active || !inStepRange) {
                continue;
            }
            lastActive = tIndex;
            ++activeCount;
            bumpStep = true;
        }
        if (recType == REC_TYPE_ACTIVE_OP) {
            ++opMax;
            if (!draw_op || !inStepRange) {
                continue;
            }
            lastOp = tIndex;
            ++opCount;
            bumpStep = true;
        }
        if (recType == REC_TYPE_AFTERPART) {
            if (draw_angle != 3 || !inStepRange) {
                continue;
            }
            lastAngle = tIndex;
            ++angleCount;
            bumpStep = true;
        }
        if (recType == REC_TYPE_ANGLE) {
            ++angleMax;
            if (draw_angle == 0 || draw_angle == 3 || !inStepRange) {
                continue;
            }
            lastAngle = tIndex;
            ++angleCount;
            bumpStep = true;
        }
        if (recType == REC_TYPE_COINCIDENCE) {
            ++coinMax;
            if (!draw_coincidence || !inStepRange) {
                continue;
            }
            lastCoin = tIndex;
            ++coinCount;
            bumpStep = true;
        }
        if (recType == REC_TYPE_SECT) {
            if (records.length != 2) {
                console.log("expect only two elements: " + records.length);
                throw "stop execution";
            }
            ++sectMax;
            var sectBump = 1;
            switch (fragType) {
                case INTERSECT_LINE:
                case INTERSECT_QUAD_LINE:
                case INTERSECT_QUAD:
                case INTERSECT_CONIC_LINE:
                case INTERSECT_CONIC_QUAD:
                case INTERSECT_CONIC:
                case INTERSECT_SELF_CUBIC:
                case INTERSECT_CUBIC_LINE:
                case INTERSECT_CUBIC_QUAD:
                case INTERSECT_CUBIC:
                    sectBump = 1;
                    break;
                case INTERSECT_LINE_2:
                case INTERSECT_QUAD_LINE_2:
                case INTERSECT_QUAD_2:
                case INTERSECT_CONIC_LINE_2:
                case INTERSECT_CONIC_QUAD_2:
                case INTERSECT_CONIC_2:
                case INTERSECT_CUBIC_LINE_2:
                case INTERSECT_CUBIC_QUAD_2:
                case INTERSECT_CUBIC_2:
                    sectBump = 2;
                    break;
                case INTERSECT_LINE_NO:
                case INTERSECT_QUAD_LINE_NO:
                case INTERSECT_QUAD_NO:
                case INTERSECT_CONIC_LINE_NO:
                case INTERSECT_CONIC_QUAD_NO:
                case INTERSECT_CONIC_NO:
                case INTERSECT_SELF_CUBIC_NO:
                case INTERSECT_CUBIC_LINE_NO:
                case INTERSECT_CUBIC_QUAD_NO:
                case INTERSECT_CUBIC_NO:
                    sectBump = 0;
                    break;
                case INTERSECT_CONIC_QUAD_3:
                case INTERSECT_CUBIC_LINE_3:
                case INTERSECT_CUBIC_QUAD_3:
                case INTERSECT_CUBIC_3:
                    sectBump = 3;
                    break;
                case INTERSECT_CONIC_QUAD_4:
                case INTERSECT_CUBIC_QUAD_4:
                case INTERSECT_CUBIC_4:
                    sectBump = 4;
                    break;
                default:
                    console.log("missing case " + records.length);
                    throw "stop execution";
            }
            sectMax2 += sectBump;
            if (draw_intersection <= 1 || !inStepRange) {
                continue;
            }
            lastSect = tIndex;
            sectCount += sectBump;
            bumpStep = true;
        }
        if (recType == REC_TYPE_SORT) {
            ++sortMax;
            if (!draw_sort || !inStepRange) {
                continue;
            }
            lastSort = tIndex;
            ++sortCount;
            bumpStep = true;
        }
        if (recType == REC_TYPE_TOP) {
            ++topMax;
            if (!draw_top || !inStepRange) {
                continue;
            }
            lastTop = tIndex;
            ++topCount;
            bumpStep = true;
        }
        if (recType == REC_TYPE_MARK) {
            ++markMax;
            if (!draw_mark || !inStepRange) {
                continue;
            }
            lastMark = tIndex;
            ++markCount;
            bumpStep = true;
        }
        if (bumpStep) {
            lastIndex = tIndex;
            logStart = test[tIndex + 1];
            logRange = records.length / 2;
            ++curStep;
        }
    }
    stepMax = (draw_add ? addMax : 0)
            + (draw_active ? activeMax : 0)
            + (draw_angle ? angleMax : 0)
            + (draw_coincidence ? coinMax : 0)
            + (draw_op ? opMax : 0)
            + (draw_sort ? sortMax : 0)
            + (draw_top ? topMax : 0)
            + (draw_mark ? markMax : 0)
            + (draw_intersection == 2 ? sectMax : draw_intersection == 3 ? sectMax2 : 0);
    if (stepMax == 0) {
        stepMax = addMax + activeMax + angleMax + coinMax + opMax + sortMax + topMax + markMax;
    }
    drawnPts = [];
    drawnLines = [];
    drawnQuads = [];
    drawnConics = [];
    drawnCubics = [];
    focusXmin = focusYmin = Infinity;
    focusXmax = focusYmax = -Infinity;
    var pathIndex = 0;
    var opLetter = 'S';
    for (var tIndex = lastIndex; tIndex >= 0; tIndex -= 3) {
        var recType = test[tIndex];
        var records = test[tIndex + 2];
        for (var recordIndex = 0; recordIndex < records.length; recordIndex += 2) {
            var fragType = records[recordIndex];
            if (!typeof fragType == 'number' || fragType < 1 || fragType > FRAG_TYPE_LAST) {
                console.log("unknown in range frag type: " + fragType);
                throw "stop execution";
            }
            var frags = records[recordIndex + 1];
            focus_enabled = false;
            switch (recType) {
                case REC_TYPE_COMPUTED:
                    if (draw_computed == 0) {
                        continue;
                    }
                    ctx.lineWidth = 1;
                    ctx.strokeStyle = pathIndex == 0 ? "black" : "red";
                    ctx.fillStyle = "blue";
                    var drawThis = false;
                    switch (fragType) {
                        case PATH_QUAD:
                            if ((draw_computed & 0x9) == 1 || ((draw_computed & 8) != 0
                                    && (draw_computed & 7) == pathIndex)) {
                                drawQuad(frags[0], frags[1], frags[2], frags[3],
                                        frags[4], frags[5]);
                                drawThis = true;
                            }
                            break;
                        case PATH_CONIC:
                            if ((draw_computed & 0xA) == 2 || ((draw_computed & 8) != 0
                                    && (draw_computed & 7) == pathIndex)) {
                                drawConicWithQuads(frags[0], frags[1], frags[2], frags[3],
                                        frags[4], frags[5], frags[6]);
                                drawThis = true;
                            }
                            break;
                        case PATH_CUBIC:
                            if ((draw_computed & 0xC) == 4 || ((draw_computed & 8) != 0
                                     && (draw_computed & 7) == pathIndex)) {
                                drawCubic(frags[0], frags[1], frags[2], frags[3],
                                        frags[4], frags[5], frags[6], frags[7]);
                                drawThis = true;
                            }
                            ++pathIndex;
                            break;
                        case COMPUTED_SET_1:
                            pathIndex = 0;
                            break;
                        case COMPUTED_SET_2:
                            pathIndex = 1;
                            break;
                        default:
                            console.log("unknown REC_TYPE_COMPUTED frag type: " + fragType);
                            throw "stop execution";
                    }
                    if (!drawThis || collect_bounds) {
                        break;
                    }
                    drawCurveSpecials(test, frags, fragType);
                    break;
                case REC_TYPE_ALIGNED:
                    if (draw_path < 4) {
                        continue;
                    }
                case REC_TYPE_PATH:
                case REC_TYPE_PATH2:
                    if (REC_TYPE_ALIGNED != recType && draw_path >= 4) {
                        continue;
                    }
                    if (!draw_path) {
                        continue;
                    }
                    var firstPath = tIndex < secondPath;
                    if ((draw_path & (firstPath ? 1 : 2)) == 0) {
                        continue;
                    }
                    ctx.lineWidth = 1;
                    ctx.strokeStyle = firstPath ? "black" : "red";
                    ctx.fillStyle = "blue";
                    var frags2 = [];
                    switch (fragType) {
                        case PATH_LINE:
                            for (var i = 0; i < 4; ++ i) { frags2[i] = frags[i + 1]; }
                            drawLine(frags2[0], frags2[1], frags2[2], frags2[3]);
                            break;
                        case PATH_QUAD:
                            for (var i = 0; i < 6; ++ i) { frags2[i] = frags[i + 1]; }
                            drawQuad(frags2[0], frags2[1], frags2[2], frags2[3],
                                    frags2[4], frags2[5]);
                            break;
                        case PATH_CONIC:
                            for (var i = 0; i < 7; ++ i) { frags2[i] = frags[i + 1]; }
                            drawConicWithQuads(frags2[0], frags2[1], frags2[2], frags2[3],
                                    frags2[4], frags2[5], frags2[6]);
                            break;
                        case PATH_CUBIC:
                            for (var i = 0; i < 8; ++ i) { frags2[i] = frags[i + 1]; }
                            drawCubic(frags2[0], frags2[1], frags2[2], frags2[3],
                                    frags2[4], frags2[5], frags2[6], frags2[7]);
                            break;
                        default:
                            console.log("unknown " + recType + " frag type: " + fragType);
                            throw "stop execution";
                    }
                    if (collect_bounds) {
                        break;
                    }
                    drawCurveSpecials(test, frags2, fragType);
                    break;
                case REC_TYPE_OP:
                    switch (fragType) {
                        case OP_INTERSECT: opLetter = 'I'; break;
                        case OP_DIFFERENCE: opLetter = 'D'; break;
                        case OP_UNION: opLetter = 'U'; break;
                        case OP_XOR: opLetter = 'X'; break;
                        default:
                            console.log("unknown REC_TYPE_OP frag type: " + fragType);
                            throw "stop execution";
                    }
                    break;
                case REC_TYPE_ACTIVE:
                    if (!draw_active || (step_limit > 0 && tIndex < lastActive)) {
                        continue;
                    }
                    var x1 = frags[SPAN_X1];
                    var y1 = frags[SPAN_Y1];
                    var x2 = frags[SPAN_X2];
                    var y2 = frags[SPAN_Y2];
                    var x3, y3, x3, y4, w;
                    ctx.lineWidth = 3;
                    ctx.strokeStyle = "rgba(0,0,255, 0.3)";
                    focus_enabled = true;
                    switch (fragType) {
                        case ACTIVE_LINE_SPAN:
                            drawLine(x1, y1, x2, y2);
                            if (draw_id) {
                                drawLineID(frags[0], x1, y1, x2, y2);
                            }
                            if (pt_labels) {
                                var curve = [x1, y1, x2, y2];
                                ctx.fillStyle = "blue";
                                drawPoints(curve, PATH_LINE, pt_labels == 2);
                            }
                             break;
                        case ACTIVE_QUAD_SPAN:
                            x3 = frags[SPAN_X3];
                            y3 = frags[SPAN_Y3];
                            drawQuad(x1, y1, x2, y2, x3, y3);
                            if (draw_id) {
                                drawQuadID(frags[0], x1, y1, x2, y2, x3, y3);
                            }
                            if (pt_labels) {
                                var curve = [x1, y1, x2, y2, x3, y3];
                                ctx.fillStyle = "blue";
                                drawPoints(curve, PATH_QUAD, pt_labels == 2);
                            }
                            break;
                        case ACTIVE_CONIC_SPAN:
                            x3 = frags[SPAN_X3];
                            y3 = frags[SPAN_Y3];
                            w = frags[SPAN_K_W];
                            drawConicWithQuads(x1, y1, x2, y2, x3, y3, w);
                            if (draw_id) {
                                drawConicID(frags[0], x1, y1, x2, y2, x3, y3, w);
                            }
                            if (pt_labels) {
                                var curve = [x1, y1, x2, y2, x3, y3, w];
                                ctx.fillStyle = "blue";
                                drawPoints(curve, PATH_CONIC, pt_labels == 2);
                            }
                            break;
                        case ACTIVE_CUBIC_SPAN:
                            x3 = frags[SPAN_X3];
                            y3 = frags[SPAN_Y3];
                            x4 = frags[SPAN_X4];
                            y4 = frags[SPAN_Y4];
                            drawCubic(x1, y1, x2, y2, x3, y3, x4, y4);
                            if (draw_id) {
                                drawCubicID(frags[0], x1, y1, x2, y2, x3, y3, x4, y4);
                            }
                            if (pt_labels) {
                                var curve = [x1, y1, x2, y2, x3, y3, x4, y4];
                                ctx.fillStyle = "blue";
                                drawPoints(curve, PATH_CUBIC, pt_labels == 2);
                            }
                            break;
                        default:
                            console.log("unknown REC_TYPE_ACTIVE frag type: " + fragType);
                            throw "stop execution";
                    }
                    break;
                case REC_TYPE_ACTIVE_OP:
                    if (!draw_op || (step_limit > 0 && tIndex < lastOp)) {
                        continue;
                    }
                    focus_enabled = true;
                    ctx.lineWidth = 3;
                    var activeSpan = frags[7] == "1";
                    ctx.strokeStyle = activeSpan ? "rgba(45,160,0, 0.3)" : "rgba(255,45,0, 0.5)";
                    var curve = curvePartialByID(test, frags[0], frags[1], frags[2]);
                    drawCurve(curve);
                    if (draw_op > 1) {
                        drawArc(curve, false, frags[3], frags[4]);
                        drawArc(curve, true, frags[5], frags[6]);
                    }
                    break;
                case REC_TYPE_ADD:
                    if (!draw_add) {
                        continue;
                    }
                    ctx.lineWidth = 3;
                    ctx.strokeStyle = closeCount == 0 ? "rgba(0,0,255, 0.3)"
                            : closeCount == 1 ? "rgba(0,127,0, 0.3)"
                            : closeCount == 2 ? "rgba(0,127,127, 0.3)"
                            : closeCount == 3 ? "rgba(127,127,0, 0.3)"
                            : "rgba(127,0,127, 0.3)";
                    focus_enabled = true;
                    switch (fragType) {
                        case ADD_MOVETO:
                            break;
                        case ADD_LINETO:
                            if (step_limit == 0 || tIndex >= lastAdd) {
                                drawLine(frags[0], frags[1], frags[2], frags[3]);
                            }
                            break;
                        case ADD_QUADTO:
                            if (step_limit == 0 || tIndex >= lastAdd) {
                                drawQuad(frags[0], frags[1], frags[2], frags[3], frags[4], frags[5]);
                            }
                            break;
                        case ADD_CONICTO:
                            if (step_limit == 0 || tIndex >= lastAdd) {
                                drawConicWithQuads(frags[0], frags[1], frags[2], frags[3],
                                        frags[4], frags[5], frags[6]);
                            }
                            break;
                        case ADD_CUBICTO:
                            if (step_limit == 0 || tIndex >= lastAdd) {
                                drawCubic(frags[0], frags[1], frags[2], frags[3],
                                        frags[4], frags[5], frags[6], frags[7]);
                            }
                            break;
                        case ADD_CLOSE:
                            ++closeCount;
                            break;
                        case ADD_FILL:
                            break;
                        default:
                            console.log("unknown REC_TYPE_ADD frag type: " + fragType);
                            throw "stop execution";
                    }
                    break;
                case REC_TYPE_ANGLE:
                    angleBetween = frags[18] == "T";
                    afterIndex = 0;
                    if (draw_angle == 0 || draw_angle == 3 || (step_limit > 0 && tIndex < lastAngle)) {
                        continue;
                    }
                    focus_enabled = true;
                    ctx.lineWidth = 3;
                    ctx.strokeStyle = "rgba(127,45,127, 0.3)";
                    var leftCurve = curvePartialByID(test, frags[0], frags[4], frags[5]);
                    var midCurve = curvePartialByID(test, frags[6], frags[10], frags[11]);
                    var rightCurve = curvePartialByID(test, frags[12], frags[16], frags[17]);
                    drawCurve(leftCurve);
                    drawCurve(rightCurve);
                    ctx.strokeStyle = angleBetween ? "rgba(0,160,45, 0.3)" : "rgba(255,0,45, 0.5)";
                    drawCurve(midCurve);
                    if (draw_angle > 1) {
                        drawOrder(leftCurve, 'L');
                        drawOrder(rightCurve, 'R');
                    }
                    break;
                case REC_TYPE_AFTERPART:
                    if (draw_angle != 3 || (step_limit > 0 && tIndex < lastAngle)) {
                        continue;
                    }
                    ctx.strokeStyle = afterIndex == 0 ? "rgba(255,0,0, 1.0)"
                            : (afterIndex == 1) == angleBetween ? "rgba(0,128,0, 1.0)"
                            :  "rgba(0,0,255, 1.0)";
                    switch (fragType) {
                        case PATH_LINE:
                            drawLine(frags[0], frags[1], frags[2], frags[3]);
                            break;
                        case PATH_QUAD:
                            drawQuad(frags[0], frags[1], frags[2], frags[3],
                                     frags[4], frags[5]);
                            break;
                        case PATH_CONIC:
                            drawConicWithQuads(frags[0], frags[1], frags[2], frags[3],
                                     frags[4], frags[5], frags[6]);
                            break;
                        case PATH_CUBIC:
                            drawCubic(frags[0], frags[1], frags[2], frags[3],
                                     frags[4], frags[5], frags[6], frags[7]);
                            break;
                        default:
                            console.log("unknown REC_TYPE_AFTERPART frag type: " + fragType);
                            throw "stop execution";
                    }
                    ++afterIndex;
                    break;
                case REC_TYPE_COINCIDENCE:
                    if (!draw_coincidence || (step_limit > 0 && tIndex < lastCoin)) {
                        continue;
                    }
                    focus_enabled = true;
                    ctx.lineWidth = 3;
                    ctx.strokeStyle = "rgba(127,45,63, 0.3)";
                    var curve = curvePartialByID(test, frags[0], frags[1], frags[2]);
                    drawCurve(curve);
                    break;
                case REC_TYPE_SECT:
                    if (!draw_intersection) {
                        continue;
                    }
                    if (draw_intersection != 1 && (step_limit > 0 && tIndex < lastSect)) {
                        continue;
                    }
                    // draw_intersection == 1 : show all
                    // draw_intersection == 2 : step == 0 ? show all : show intersection line #step
                    // draw_intersection == 3 : step == 0 ? show all : show intersection #step
                    ctx.lineWidth = 1;
                    ctx.strokeStyle = "rgba(0,0,255, 0.3)";
                    ctx.fillStyle = "blue";
                    focus_enabled = true;
                    var f = [];
                    var c1s;
                    var c1l;
                    var c2s;
                    var c2l;
                    switch (fragType) {
                        case INTERSECT_LINE:
                            f.push(5, 6, 0, 7);
                            c1s = 1; c1l = 4; c2s = 8; c2l = 4;
                            break;
                        case INTERSECT_LINE_2:
                            f.push(5, 6, 0, 10);
                            f.push(8, 9, 7, 15);
                            c1s = 1; c1l = 4; c2s = 11; c2l = 4;
                            break;
                        case INTERSECT_LINE_NO:
                            c1s = 0; c1l = 4; c2s = 4; c2l = 4;
                            break;
                        case INTERSECT_QUAD_LINE:
                            f.push(7, 8, 0, 9);
                            c1s = 1; c1l = 6; c2s = 10; c2l = 4;
                            break;
                        case INTERSECT_QUAD_LINE_2:
                            f.push(7, 8, 0, 12);
                            f.push(10, 11, 9, 17);
                            c1s = 1; c1l = 6; c2s = 13; c2l = 4;
                            break;
                        case INTERSECT_QUAD_LINE_NO:
                            c1s = 0; c1l = 6; c2s = 6; c2l = 4;
                            break;
                        case INTERSECT_QUAD:
                            f.push(7, 8, 0, 9);
                            c1s = 1; c1l = 6; c2s = 10; c2l = 6;
                            break;
                        case INTERSECT_QUAD_2:
                            f.push(7, 8, 0, 12);
                            f.push(10, 11, 9, 19);
                            c1s = 1; c1l = 6; c2s = 13; c2l = 6;
                            break;
                        case INTERSECT_QUAD_NO:
                            c1s = 0; c1l = 6; c2s = 6; c2l = 6;
                            break;
                        case INTERSECT_CONIC_LINE:
                            f.push(8, 9, 0, 10);
                            c1s = 1; c1l = 7; c2s = 11; c2l = 4;
                            break;
                        case INTERSECT_CONIC_LINE_2:
                            f.push(8, 9, 0, 12);
                            f.push(11, 12, 10, 18);
                            c1s = 1; c1l = 7; c2s = 14; c2l = 4;
                            break;
                        case INTERSECT_CONIC_LINE_NO:
                            c1s = 0; c1l = 7; c2s = 7; c2l = 4;
                            break;
                        case INTERSECT_CONIC_QUAD:
                            f.push(8, 9, 0, 10);
                            c1s = 1; c1l = 7; c2s = 11; c2l = 6;
                            break;
                        case INTERSECT_CONIC_QUAD_2:
                            f.push(8, 9, 0, 12);
                            f.push(11, 12, 10, 18);
                            c1s = 1; c1l = 7; c2s = 14; c2l = 6;
                            break;
                        case INTERSECT_CONIC_QUAD_3:
                            f.push(8, 9, 0, 15);
                            f.push(11, 12, 10, 21);
                            f.push(14, 15, 13, 22);
                            c1s = 1; c1l = 7; c2s = 17; c2l = 6;
                            break;
                        case INTERSECT_CONIC_QUAD_4:
                            f.push(8, 9, 0, 18);
                            f.push(11, 12, 10, 24);
                            f.push(14, 15, 13, 25);
                            f.push(17, 18, 16, 26);
                            c1s = 1; c1l = 7; c2s = 20; c2l = 6;
                            break;
                        case INTERSECT_CONIC_QUAD_NO:
                            c1s = 0; c1l = 7; c2s = 7; c2l = 6;
                            break;
                        case INTERSECT_CONIC:
                            f.push(8, 9, 0, 10);
                            c1s = 1; c1l = 7; c2s = 11; c2l = 7;
                            break;
                        case INTERSECT_CONIC_2:
                            f.push(8, 9, 0, 13);
                            f.push(11, 12, 10, 21);
                            c1s = 1; c1l = 7; c2s = 14; c2l = 7;
                            break;
                        case INTERSECT_CONIC_NO:
                            c1s = 0; c1l = 7; c2s = 7; c2l = 7;
                            break;
                        case INTERSECT_SELF_CUBIC:
                            f.push(9, 10, 0, 11);
                            c1s = 1; c1l = 8; c2s = 0; c2l = 0;
                            break;
                        case INTERSECT_SELF_CUBIC_NO:
                            c1s = 0; c1l = 8; c2s = 0; c2l = 0;
                            break;
                        case INTERSECT_CUBIC_LINE:
                            f.push(9, 10, 0, 11);
                            c1s = 1; c1l = 8; c2s = 12; c2l = 4;
                            break;
                        case INTERSECT_CUBIC_LINE_2:
                            f.push(9, 10, 0, 14);
                            f.push(12, 13, 11, 19);
                            c1s = 1; c1l = 8; c2s = 15; c2l = 4;
                            break;
                        case INTERSECT_CUBIC_LINE_3:
                            f.push(9, 10, 0, 17);
                            f.push(12, 13, 11, 22);
                            f.push(15, 16, 14, 23);
                            c1s = 1; c1l = 8; c2s = 18; c2l = 4;
                            break;
                        case INTERSECT_CUBIC_QUAD_NO:
                            c1s = 0; c1l = 8; c2s = 8; c2l = 6;
                            break;
                        case INTERSECT_CUBIC_QUAD:
                            f.push(9, 10, 0, 11);
                            c1s = 1; c1l = 8; c2s = 12; c2l = 6;
                            break;
                        case INTERSECT_CUBIC_QUAD_2:
                            f.push(9, 10, 0, 14);
                            f.push(12, 13, 11, 21);
                            c1s = 1; c1l = 8; c2s = 15; c2l = 6;
                            break;
                        case INTERSECT_CUBIC_QUAD_3:
                            f.push(9, 10, 0, 17);
                            f.push(12, 13, 11, 24);
                            f.push(15, 16, 14, 25);
                            c1s = 1; c1l = 8; c2s = 18; c2l = 6;
                            break;
                        case INTERSECT_CUBIC_QUAD_4:
                            f.push(9, 10, 0, 20);
                            f.push(12, 13, 11, 27);
                            f.push(15, 16, 14, 28);
                            f.push(18, 19, 17, 29);
                            c1s = 1; c1l = 8; c2s = 21; c2l = 6;
                            break;
                        case INTERSECT_CUBIC_LINE_NO:
                            c1s = 0; c1l = 8; c2s = 8; c2l = 4;
                            break;
                        case INTERSECT_CUBIC:
                            f.push(9, 10, 0, 11);
                            c1s = 1; c1l = 8; c2s = 12; c2l = 8;
                            break;
                        case INTERSECT_CUBIC_2:
                            f.push(9, 10, 0, 14);
                            f.push(12, 13, 11, 23);
                            c1s = 1; c1l = 8; c2s = 15; c2l = 8;
                            break;
                        case INTERSECT_CUBIC_3:
                            f.push(9, 10, 0, 17);
                            f.push(12, 13, 11, 26);
                            f.push(15, 16, 14, 27);
                            c1s = 1; c1l = 8; c2s = 18; c2l = 8;
                            break;
                        case INTERSECT_CUBIC_4:
                            f.push(9, 10, 0, 20);
                            f.push(12, 13, 11, 29);
                            f.push(15, 16, 14, 30);
                            f.push(18, 19, 17, 31);
                            c1s = 1; c1l = 8; c2s = 21; c2l = 8;
                            break;
                        case INTERSECT_CUBIC_NO:
                            c1s = 0; c1l = 8; c2s = 8; c2l = 8;
                            break;
                        default:
                            console.log("unknown REC_TYPE_SECT frag type: " + fragType);
                            throw "stop execution";
                    }
                    if (draw_intersection != 1) {
                        var id = -1;
                        var curve;
                        switch (c1l) {
                            case 4:
                                drawLine(frags[c1s], frags[c1s + 1], frags[c1s + 2], frags[c1s + 3]);
                                if (draw_id) {
                                    curve = [frags[c1s], frags[c1s + 1], frags[c1s + 2], frags[c1s + 3]];
                                    id = idByCurve(test, curve, PATH_LINE);
                                }
                                break;
                            case 6:
                                drawQuad(frags[c1s], frags[c1s + 1], frags[c1s + 2], frags[c1s + 3],
                                        frags[c1s + 4], frags[c1s + 5]);
                                if (draw_id) {
                                    curve = [frags[c1s], frags[c1s + 1], frags[c1s + 2], frags[c1s + 3],
                                            frags[c1s + 4], frags[c1s + 5]];
                                    id = idByCurve(test, curve, PATH_QUAD);
                                }
                                break;
                            case 7:
                                drawConicWithQuads(frags[c1s], frags[c1s + 1], frags[c1s + 2], frags[c1s + 3],
                                        frags[c1s + 4], frags[c1s + 5], frags[c1s + 6]);
                                if (draw_id) {
                                    curve = [frags[c1s], frags[c1s + 1], frags[c1s + 2], frags[c1s + 3],
                                            frags[c1s + 4], frags[c1s + 5], frags[c1s + 6]];
                                    id = idByCurve(test, curve, PATH_CONIC);
                                }
                                break;
                            case 8:
                                drawCubic(frags[c1s], frags[c1s + 1], frags[c1s + 2], frags[c1s + 3],
                                        frags[c1s + 4], frags[c1s + 5], frags[c1s + 6], frags[c1s + 7]);
                                if (draw_id) {
                                    curve = [frags[c1s], frags[c1s + 1], frags[c1s + 2], frags[c1s + 3],
                                            frags[c1s + 4], frags[c1s + 5], frags[c1s + 6], frags[c1s + 7]];
                                    id = idByCurve(test, curve, PATH_CUBIC);
                                }
                                break;
                        }
                        if (id >= 0) {
                            drawID(curve, id);
                        }
                        id = -1;
                        switch (c2l) {
                            case 0:
                                break;
                            case 4:
                                drawLine(frags[c2s], frags[c2s + 1], frags[c2s + 2], frags[c2s + 3]);
                                if (draw_id) {
                                    curve = [frags[c2s], frags[c2s + 1], frags[c2s + 2], frags[c2s + 3]];
                                    id = idByCurve(test, curve, PATH_LINE);
                                }
                                break;
                            case 6:
                                drawQuad(frags[c2s], frags[c2s + 1], frags[c2s + 2], frags[c2s + 3],
                                        frags[c2s + 4], frags[c2s + 5]);
                                if (draw_id) {
                                    curve = [frags[c2s], frags[c2s + 1], frags[c2s + 2], frags[c2s + 3],
                                            frags[c2s + 4], frags[c2s + 5]];
                                    id = idByCurve(test, curve, PATH_QUAD);
                                }
                                break;
                            case 7:
                                drawConicWithQuads(frags[c2s], frags[c2s + 1], frags[c2s + 2], frags[c2s + 3],
                                        frags[c2s + 4], frags[c2s + 5], frags[c2s + 6]);
                                if (draw_id) {
                                    curve = [frags[c2s], frags[c2s + 1], frags[c2s + 2], frags[c2s + 3],
                                            frags[c2s + 4], frags[c2s + 5], frags[c2s + 6]];
                                    id = idByCurve(test, curve, PATH_CONIC);
                                }
                                break;
                            case 8:
                                drawCubic(frags[c2s], frags[c2s + 1], frags[c2s + 2], frags[c2s + 3],
                                        frags[c2s + 4], frags[c2s + 5], frags[c2s + 6], frags[c2s + 7]);
                                if (draw_id) {
                                    curve = [frags[c2s], frags[c2s + 1], frags[c2s + 2], frags[c2s + 3],
                                            frags[c2s + 4], frags[c2s + 5], frags[c2s + 6], frags[c2s + 7]];
                                    id = idByCurve(test, curve, PATH_CUBIC);
                                }
                                break;
                        }
                        if (id >= 0) {
                            drawID(curve, id);
                        }
                    }
                    if (collect_bounds) {
                        break;
                    }
                    if (draw_intersection != 3 || step_limit == 0 || tIndex >= lastSect) {
                        for (var idx = 0; idx < f.length; idx += 4) {
                            drawPoint(frags[f[idx]], frags[f[idx + 1]], true);
                        }
                    }
                    if (!draw_intersectT) {
                        break;
                    }
                    ctx.fillStyle = "red";
                    if (draw_intersection != 3 || step_limit == 0 || tIndex >= lastSect) {
                        for (var idx = 0; idx < f.length; idx += 4) {
                            drawTAtPointUp(frags[f[idx]], frags[f[idx + 1]], frags[f[idx + 2]]);
                            drawTAtPointDown(frags[f[idx]], frags[f[idx + 1]], frags[f[idx + 3]]);
                        }
                    }
                    break;
                case REC_TYPE_SORT:
                    if (!draw_sort || (step_limit > 0 && tIndex < lastSort)) {
                        continue;
                    }
                    ctx.lineWidth = 3;
                    ctx.strokeStyle = "rgba(127,127,0, 0.5)";
                    focus_enabled = true;
                    switch (fragType) {
                        case SORT_UNARY:
                        case SORT_BINARY:
                            var curve = curvePartialByID(test, frags[0], frags[6], frags[8]);
                            drawCurve(curve);
                            break;
                        default:
                            console.log("unknown REC_TYPE_SORT frag type: " + fragType);
                            throw "stop execution";
                    }
                    break;
                case REC_TYPE_TOP:
                    if (!draw_top || (step_limit > 0 && tIndex < lastTop)) {
                        continue;
                    }
                    ctx.lineWidth = 3;
                    ctx.strokeStyle = "rgba(127,127,0, 0.5)";
                    focus_enabled = true;
                    {
                        var curve = curvePartialByID(test, frags[0], frags[1], frags[2]);
                        drawCurve(curve);
                        var type = PATH_LINE + (curve.length / 2 - 2);
                        var mid = pointAtT(curve, type, 0.5);
                        var d = dxy_at_t(curve, type, 0.5);
                        drawArrow(mid.x, mid.y, d.x, d.y, 0.3);
                    }
                    break;
                case REC_TYPE_MARK:
                    if (!draw_mark || (step_limit > 0 && tIndex < lastMark)) {
                        continue;
                    }
                    ctx.lineWidth = 3;
                    ctx.strokeStyle = fragType >= MARK_DONE_LINE ?
                            "rgba(127,0,127, 0.5)" : "rgba(127,127,0, 0.5)";
                    focus_enabled = true;
                    switch (fragType) {
                        case MARK_LINE:
                        case MARK_DONE_LINE:
                        case MARK_UNSORTABLE_LINE:
                        case MARK_SIMPLE_LINE:
                        case MARK_SIMPLE_DONE_LINE:
                        case MARK_DONE_UNARY_LINE:
                            drawLinePartial(frags[1], frags[2], frags[3], frags[4],
                                frags[5], frags[9]);
                            if (draw_id) {
                                drawLinePartialID(frags[0], frags[1], frags[2], frags[3], frags[4],
                                frags[5], frags[9]);
                            }
                            break;
                        case MARK_QUAD:
                        case MARK_DONE_QUAD:
                        case MARK_UNSORTABLE_QUAD:
                        case MARK_SIMPLE_QUAD:
                        case MARK_SIMPLE_DONE_QUAD:
                        case MARK_DONE_UNARY_QUAD:
                            drawQuadPartial(frags[1], frags[2], frags[3], frags[4],
                                frags[5], frags[6], frags[7], frags[11]);
                            if (draw_id) {
                                drawQuadPartialID(frags[0], frags[1], frags[2], frags[3], frags[4],
                                frags[5], frags[6], frags[7], frags[11]);
                            }
                            break;
                        case MARK_CUBIC:
                        case MARK_DONE_CUBIC:
                        case MARK_UNSORTABLE_CUBIC:
                        case MARK_SIMPLE_CUBIC:
                        case MARK_SIMPLE_DONE_CUBIC:
                        case MARK_DONE_UNARY_CUBIC:
                            drawCubicPartial(frags[1], frags[2], frags[3], frags[4],
                                frags[5], frags[6], frags[7], frags[8], frags[9], frags[13]);
                            if (draw_id) {
                                drawCubicPartialID(frags[0], frags[1], frags[2], frags[3], frags[4],
                                frags[5], frags[6], frags[7], frags[8], frags[9], frags[13]);
                            }
                            break;
                        case MARK_ANGLE_LAST:
                            // FIXME: ignored for now
                            break;
                        default:
                            console.log("unknown REC_TYPE_MARK frag type: " + fragType);
                            throw "stop execution";
                    }
                    break;
                default:
                    continue;
            }
        }
        switch (recType) {
            case REC_TYPE_SORT:
                if (!draw_sort || (step_limit > 0 && tIndex < lastSort)) {
                    break;
                }
                var angles = []; // use tangent lines to describe arcs
                var windFrom = [];
                var windTo = [];
                var opp = [];
                var minXY = Number.MAX_VALUE;
                var partial;
                focus_enabled = true;
                var someUnsortable = false;
                for (var recordIndex = 0; recordIndex < records.length; recordIndex += 2) {
                    var fragType = records[recordIndex];
                    var frags = records[recordIndex + 1];
                    var unsortable = (fragType == SORT_UNARY && frags[14]) ||
                            (fragType == SORT_BINARY && frags[16]);
                    someUnsortable |= unsortable;
                    switch (fragType) {
                        case SORT_UNARY:
                        case SORT_BINARY:
                            partial = curvePartialByID(test, frags[0], frags[6], frags[8]);
                            break;
                        default:
                            console.log("unknown REC_TYPE_SORT frag type: " + fragType);
                            throw "stop execution";
                    }
                    var dx = boundsWidth(partial);
                    var dy = boundsHeight(partial);
                    minXY = Math.min(minXY, dx * dx + dy * dy);
                    if (collect_bounds) {
                        continue;
                    }
                    angles.push(tangent(partial));
                    var from = frags[12];
                    var to = frags[12];
                    var sgn = frags[10];
                    if (sgn < 0) {
                        from -= frags[11];
                    } else if (sgn > 0) {
                        to -= frags[11];
                    }
                    windFrom.push(from + (unsortable ? "!" : ""));
                    windTo.push(to + (unsortable ? "!" : ""));
                    opp.push(fragType == SORT_BINARY);
                    if (draw_sort == 1) {
                        drawOrder(partial, frags[12]);
                    } else {
                        drawOrder(partial, (recordIndex / 2) + 1);
                    }
                }
                var radius = Math.sqrt(minXY) / 2 * scale;
                radius = Math.min(50, radius);
                var scaledRadius = radius / scale;
                var centerX = partial[0];
                var centerY = partial[1];
                if (collect_bounds) {
                    if (focus_enabled) {
                        focusXmin = Math.min(focusXmin, centerX - scaledRadius);
                        focusYmin = Math.min(focusYmin, centerY - scaledRadius);
                        focusXmax = Math.max(focusXmax, centerX + scaledRadius);
                        focusYmax = Math.max(focusYmax, centerY + scaledRadius);
                    }
                    break;
                }
                break;
            default:
                break;
        }
    }
    if (collect_bounds) {
        return;
    }
    if (draw_log && logStart >= 0) {
        ctx.font = "normal 10px Arial";
        ctx.textAlign = "left";
        ctx.beginPath();
        var top = screenHeight - 20 - (logRange + 2) * 10;
        ctx.rect(50, top, screenWidth - 100, (logRange + 2) * 10);
        ctx.fillStyle = "white";
        ctx.fill();
        ctx.fillStyle = "rgba(0,0,0, 0.5)";
        if (logStart > 0) {
            ctx.fillText(lines[logStart - 1], 50, top + 8);
        }
        ctx.fillStyle = "black";
        for (var idx = 0; idx < logRange; ++idx) {
            ctx.fillText(lines[logStart + idx], 50, top + 18 + 10 * idx);
        }
        ctx.fillStyle = "rgba(0,0,0, 0.5)";
        if (logStart + logRange < lines.length) {
            ctx.fillText(lines[logStart + logRange], 50, top + 18 + 10 * logRange);
        }
    }
    if (draw_legend) {
        var pos = 0;
        var drawSomething = draw_add | draw_active | draw_angle | draw_coincidence | draw_sort | draw_mark;
   //     drawBox(pos++, "yellow", "black", opLetter, true, '');
        drawBox(pos++, "rgba(0,0,255, 0.3)", "black", draw_intersection > 1 ? sectCount : sectMax2, draw_intersection, intersectionKey);
        drawBox(pos++, "rgba(0,0,255, 0.3)", "black", draw_add ? addCount : addMax, draw_add, addKey);
        drawBox(pos++, "rgba(0,0,255, 0.3)", "black", draw_active ? activeCount : activeMax, draw_active, activeKey);
        drawBox(pos++, "rgba(127,127,0, 0.3)", "black", draw_angle ? angleCount : angleMax, draw_angle, angleKey);
        drawBox(pos++, "rgba(127,127,0, 0.3)", "black", draw_coincidence ? coinCount : coinMax, draw_coincidence, coincidenceKey);
        drawBox(pos++, "rgba(127,127,0, 0.3)", "black", draw_op ? opCount : opMax, draw_op, opKey);
        drawBox(pos++, "rgba(127,127,0, 0.3)", "black", draw_sort ? sortCount : sortMax, draw_sort, sortKey);
        drawBox(pos++, "rgba(127,127,0, 0.3)", "black", draw_top ? topCount : topMax, draw_top, topKey);
        drawBox(pos++, "rgba(127,0,127, 0.3)", "black", draw_mark ? markCount : markMax, draw_mark, markKey);
        drawBox(pos++, "black", "white",
                (new Array('P', 'P1', 'P2', 'P', 'p', 'p1', 'p2'))[draw_path], draw_path != 0, pathKey);
        drawBox(pos++, "rgba(0,63,0, 0.7)", "white",
                (new Array('Q', 'Q', 'C', 'QC', 'Qc', 'Cq'))[draw_computed],
                draw_computed != 0, computedKey);
        drawBox(pos++, "green", "black", step_limit, drawSomething, '');
        drawBox(pos++, "green", "black", stepMax, drawSomething, '');
        drawBox(pos++, "rgba(255,0,0, 0.6)", "black", lastIndex, drawSomething & draw_log, '');
        drawBox(pos++, "rgba(255,0,0, 0.6)", "black", test.length - 1, drawSomething & draw_log, '');
        if (curve_t) {
            drawCurveTControl();
        }
        ctx.font = "normal 20px Arial";
        ctx.fillStyle = "rgba(0,0,0, 0.3)";
        ctx.textAlign = "right";
        ctx.fillText(scale.toFixed(decimal_places) + 'x' , screenWidth - 10, screenHeight - 5);
    }
    if (draw_hints) {
        ctx.font = "normal 10px Arial";
        ctx.fillStyle = "rgba(0,0,0, 0.5)";
        ctx.textAlign = "right";
        var y = 4;
        ctx.fillText("control lines : " +  controlLinesKey, ctx.screenWidthwidth - 10, pos * 50 + y++ * 10);
        ctx.fillText("curve t : " +  curveTKey, screenWidth - 10, pos * 50 + y++ * 10);
        ctx.fillText("deriviatives : " +  deriviativesKey, screenWidth - 10, pos * 50 + y++ * 10);
        ctx.fillText("intersect t : " +  intersectTKey, screenWidth - 10, pos * 50 + y++ * 10);
        ctx.fillText("log : " +  logKey, screenWidth - 10, pos * 50 + y++ * 10);
        ctx.fillText("log curve : " +  logCurvesKey, screenWidth - 10, pos * 50 + y++ * 10);
        ctx.fillText("mid point : " +  midpointKey, screenWidth - 10, pos * 50 + y++ * 10);
        ctx.fillText("points : " +  ptsKey, screenWidth - 10, pos * 50 + y++ * 10);
        ctx.fillText("sequence : " +  sequenceKey, screenWidth - 10, pos * 50 + y++ * 10);
        ctx.fillText("xy : " +  xyKey, screenWidth - 10, pos * 50 + y++ * 10);
    }
}

function drawBox(y, backC, foreC, str, enable, label) {
    ctx.beginPath();
    ctx.fillStyle = backC;
    ctx.rect(screenWidth - 40, y * 50 + 10, 40, 30);
    ctx.fill();
    ctx.font = "normal 16px Arial";
    ctx.fillStyle = foreC;
    ctx.textAlign = "center";
    ctx.fillText(str, screenWidth - 20, y * 50 + 32);
    if (!enable) {
        ctx.fillStyle = "rgba(255,255,255, 0.5)";
        ctx.fill();
    }
    if (label != '') {
        ctx.font = "normal 9px Arial";
        ctx.fillStyle = "black";
        ctx.fillText(label, screenWidth - 47, y * 50 + 40);
    }
}

function drawCurveTControl() {
    ctx.lineWidth = 2;
    ctx.strokeStyle = "rgba(0,0,0, 0.3)";
    ctx.beginPath();
    ctx.rect(screenWidth - 80, 40, 28, screenHeight - 80);
    ctx.stroke();
    var ty = 40 + curveT * (screenHeight - 80);
    ctx.beginPath();
    ctx.moveTo(screenWidth - 80, ty);
    ctx.lineTo(screenWidth - 85, ty - 5);
    ctx.lineTo(screenWidth - 85, ty + 5);
    ctx.lineTo(screenWidth - 80, ty);
    ctx.fillStyle = "rgba(0,0,0, 0.6)";
    ctx.fill();
    var num = curveT.toFixed(decimal_places);
    ctx.font = "normal 10px Arial";
    ctx.textAlign = "left";
    ctx.fillText(num, screenWidth - 78, ty);
}

function ptInTControl() {
    var e = window.event;
    var tgt = e.target || e.srcElement;
    var left = tgt.offsetLeft;
    var top = tgt.offsetTop;
    var x = (e.clientX - left);
    var y = (e.clientY - top);
    if (x < screenWidth - 80 || x > screenWidth - 50) {
        return false;
    }
    if (y < 40 || y > screenHeight - 80) {
        return false;
    }
    curveT = (y - 40) / (screenHeight - 120);
    if (curveT < 0 || curveT > 1) {
        throw "stop execution";
    }
    return true;
}

function drawTop() {
    if (tests[testIndex] == null) {
        var str = testDivs[testIndex].textContent;
        parse_all(str);
        var title = testDivs[testIndex].id.toString();
        testTitles[testIndex] = title;
    }
    init(tests[testIndex]);
    redraw();
}

function redraw() {
    if (focus_on_selection) {
        collect_bounds = true;
        draw(tests[testIndex], testLines[testIndex], testTitles[testIndex]);
        collect_bounds = false;
        if (focusXmin < focusXmax && focusYmin < focusYmax) {
            setScale(focusXmin, focusXmax, focusYmin, focusYmax);
        }
    }
    ctx.beginPath();
    ctx.fillStyle = "white";
    ctx.rect(0, 0, screenWidth, screenHeight);
    ctx.fill();
    draw(tests[testIndex], testLines[testIndex], testTitles[testIndex]);
}

function dumpCurvePartial(test, id, t0, t1) {
    var curve = curveByID(test, id);
    var name = ["line", "quad", "cubic"][curve.length / 2 - 2];
    console.log("id=" + id + " " + name + "=" +  curveToString(curve)
        + " t0=" + t0 + " t1=" + t1
        + " partial=" + curveToString(curvePartialByID(test, id, t0, t1)));
}

function dumpAngleTest(test, id, t0, t1) {
    var curve = curveByID(test, id);
    console.log("    { {" + curveToString(curve) + "}, "
            + curve.length / 2 + ", " + t0 + ", " + t1 + ", {} }, //");
}

function dumpLogToConsole() {
    if (logStart < 0) {
        return;
    }
    var test = tests[testIndex];
    var recType = REC_TYPE_UNKNOWN;
    var records;
    for (var index = 0; index < test.length; index += 3) {
        var lastLineNo = test[index + 1];
        if (lastLineNo >= logStart && lastLineNo < logStart + logRange) {
            recType = test[index];
            records = test[index + 2];
            break;
        }
    }
    if (recType == REC_TYPE_UNKNOWN) {
        return;
    }
    var lines = testLines[testIndex];
    for (var idx = 0; idx < logRange; ++idx) {
        var line = lines[logStart + idx];
        console.log(line);
        for (var recordIndex = 0; recordIndex < records.length; recordIndex += 2) {
            var fragType = records[recordIndex];
            var frags = records[recordIndex + 1];
            if (recType == REC_TYPE_ANGLE && fragType == ANGLE_AFTER) {
                dumpCurvePartial(test, frags[0], frags[4], frags[5]);
                dumpCurvePartial(test, frags[6], frags[10], frags[11]);
                dumpCurvePartial(test, frags[12], frags[16], frags[17]);
                console.log("\nstatic IntersectData intersectDataSet[] = { //");
                dumpAngleTest(test, frags[0], frags[4], frags[5]);
                dumpAngleTest(test, frags[6], frags[10], frags[11]);
                dumpAngleTest(test, frags[12], frags[16], frags[17]);
                console.log("}; //");
            }
        }
    }
}

var activeKey = 'a';
var pathKey = 'b';
var pathBackKey = 'B';
var centerKey = 'c';
var coincidenceKey = 'C';
var addKey = 'd';
var deriviativesKey = 'f';
var angleKey = 'g';
var angleBackKey = 'G';
var intersectionKey = 'i';
var intersectionBackKey = 'I';
var sequenceKey = 'j';
var midpointKey = 'k';
var logKey = 'l';
var logToConsoleKey = 'L';
var markKey = 'm';
var sortKey = 'o';
var opKey = 'p';
var opBackKey = 'P';
var computedKey = 'q';
var computedBackKey = 'Q';
var stepKey = 's';
var stepBackKey = 'S';
var intersectTKey = 't';
var topKey = 'T';
var curveTKey = 'u';
var controlLinesBackKey = 'V';
var controlLinesKey = 'v';
var ptsKey = 'x';
var xyKey = 'y';
var logCurvesKey = 'z';
var focusKey = '`';
var idKey = '.';
var retinaKey = '\\';

function doKeyPress(evt) {
    var char = String.fromCharCode(evt.charCode);
    var focusWasOn = false;
    switch (char) {
    case '0':
    case '1':
    case '2':
    case '3':
    case '4':
    case '5':
    case '6':
    case '7':
    case '8':
    case '9':
        decimal_places = char - '0';
        redraw();
        break;
    case activeKey:
        draw_active ^= true;
        redraw();
        break;
    case addKey:
        draw_add ^= true;
        redraw();
        break;
    case angleKey:
        draw_angle = (draw_angle + 1) % 4;
        redraw();
        break;
    case angleBackKey:
        draw_angle = (draw_angle + 2) % 3;
        redraw();
        break;
    case centerKey:
        setScale(xmin, xmax, ymin, ymax);
        redraw();
        break;
    case coincidenceKey:
        draw_coincidence ^= true;
        redraw();
        break;
    case controlLinesBackKey:
        control_lines = (control_lines + 3) % 4;
        redraw();
        break;
    case controlLinesKey:
        control_lines = (control_lines + 1) % 4;
        redraw();
        break;
    case computedBackKey:
        draw_computed = (draw_computed + 5) % 6;
        redraw();
        break;
    case computedKey:
        draw_computed = (draw_computed + 1) % 6;
        redraw();
        break;
    case curveTKey:
        curve_t ^= true;
        if (curve_t) {
            draw_legend = true;
        }
        redraw();
        break;
    case deriviativesKey:
        draw_deriviatives = (draw_deriviatives + 1) % 3;
        redraw();
        break;
    case focusKey:
        focus_on_selection ^= true;
        setScale(xmin, xmax, ymin, ymax);
        redraw();
        break;
    case idKey:
        draw_id ^= true;
        redraw();
        break;
    case intersectionBackKey:
        draw_intersection = (draw_intersection + 3) % 4;
        redraw();
        break;
    case intersectionKey:
        draw_intersection = (draw_intersection + 1) % 4;
        redraw();
        break;
    case intersectTKey:
        draw_intersectT ^= true;
        redraw();
        break;
    case logCurvesKey:
        logCurves(tests[testIndex]);
        break;
    case logKey:
        draw_log ^= true;
        redraw();
        break;
    case logToConsoleKey:
        if (draw_log) {
            dumpLogToConsole();
        }
        break;
    case markKey:
        draw_mark ^= true;
        redraw();
        break;
    case midpointKey:
        draw_midpoint ^= true;
        redraw();
        break;
    case opKey:
        draw_op = (draw_op + 1) % 3;
        redraw();
        break;
    case opBackKey:
        draw_op = (draw_op + 2) % 3;
        redraw();
        break;
    case pathKey:
        draw_path = (draw_path + 1) % (4 + (hasAlignedPath ? 3 : 0));
        redraw();
        break;
    case pathBackKey:
        draw_path = (draw_path + 3 + (hasAlignedPath ? 3 : 0)) % (4 + (hasAlignedPath ? 3 : 0));
        redraw();
        break;
    case ptsKey:
        pt_labels = (pt_labels + 1) % 3;
        redraw();
        break;
    case retinaKey:
        retina_scale ^= true;
        drawTop();
        break;
    case sequenceKey:
        draw_sequence ^= true;
        redraw();
        break;
    case sortKey:
        draw_sort = (draw_sort + 1) % 3;
        drawTop();
        break;
    case stepKey:
        step_limit++;
        if (step_limit > stepMax) {
            step_limit = stepMax;
        }
        redraw();
        break;
    case stepBackKey:
        step_limit--;
        if (step_limit < 0) {
            step_limit = 0;
        }
        redraw();
        break;
    case topKey:
        draw_top ^= true;
        redraw();
        break;
    case xyKey:
        debug_xy = (debug_xy + 1) % 3;
        redraw();
        break;
    case '-':
        focusWasOn = focus_on_selection;
        if (focusWasOn) {
            focus_on_selection = false;
            scale /= 1.2;
        } else {
            scale /= 2;
            calcLeftTop();
        }
        redraw();
        focus_on_selection = focusWasOn;
        break;
    case '=':
    case '+':
        focusWasOn = focus_on_selection;
        if (focusWasOn) {
            focus_on_selection = false;
            scale *= 1.2;
        } else {
            scale *= 2;
            calcLeftTop();
        }
        redraw();
        focus_on_selection = focusWasOn;
        break;
    case '?':
        draw_hints ^= true;
        if (draw_hints && !draw_legend) {
            draw_legend = true;
        }
        redraw();
        break;
    case '/':
        draw_legend ^= true;
        redraw();
        break;
    }
}

function doKeyDown(evt) {
    var char = evt.keyCode;
    var preventDefault = false;
    switch (char) {
    case 37: // left arrow
        if (evt.shiftKey) {
            testIndex -= 9;
        }
        if (--testIndex < 0)
            testIndex = tests.length - 1;
        drawTop();
        preventDefault = true;
        break;
    case 39: // right arrow
        if (evt.shiftKey) {
            testIndex += 9;
        }
        if (++testIndex >= tests.length)
            testIndex = 0;
        drawTop();
        preventDefault = true;
        break;
    }
    if (preventDefault) {
          evt.preventDefault();
          return false;
    }
    return true;
}

(function() {
    var hidden = "hidden";

    // Standards:
    if (hidden in document)
        document.addEventListener("visibilitychange", onchange);
    else if ((hidden = "mozHidden") in document)
        document.addEventListener("mozvisibilitychange", onchange);
    else if ((hidden = "webkitHidden") in document)
        document.addEventListener("webkitvisibilitychange", onchange);
    else if ((hidden = "msHidden") in document)
        document.addEventListener("msvisibilitychange", onchange);
    // IE 9 and lower:
    else if ('onfocusin' in document)
        document.onfocusin = document.onfocusout = onchange;
    // All others:
    else
        window.onpageshow = window.onpagehide
            = window.onfocus = window.onblur = onchange;

    function onchange (evt) {
        var v = 'visible', h = 'hidden',
            evtMap = {
                focus:v, focusin:v, pageshow:v, blur:h, focusout:h, pagehide:h
            };

        evt = evt || window.event;
        if (evt.type in evtMap)
            document.body.className = evtMap[evt.type];
        else
            document.body.className = this[hidden] ? "hidden" : "visible";
    }
})();

function calcXY() {
    var e = window.event;
    var tgt = e.target || e.srcElement;
    var left = tgt.offsetLeft;
    var top = tgt.offsetTop;
    mouseX = (e.clientX - left) / scale + srcLeft;
    mouseY = (e.clientY - top) / scale + srcTop;
}

function calcLeftTop() {
    srcLeft = mouseX - screenWidth / 2 / scale;
    srcTop = mouseY - screenHeight / 2 / scale;
}

var disableClick = false;

function handleMouseClick() {
    if (disableClick) {
        return;
    }
    if (!curve_t || !ptInTControl()) {
        calcXY();
        calcLeftTop();
    }
    redraw();
//    if (!curve_t || !ptInTControl()) {
//        mouseX = screenWidth / 2 / scale + srcLeft;
//        mouseY = screenHeight / 2 / scale + srcTop;
//    }
}

function handleMouseOver() {
    calcXY();
    if (debug_xy != 2) {
        return;
    }
    var num = mouseX.toFixed(decimal_places) + ", " + mouseY.toFixed(decimal_places);
    ctx.beginPath();
    ctx.rect(300,100,num.length * 6,10);
    ctx.fillStyle="white";
    ctx.fill();
    ctx.font = "normal 10px Arial";
    ctx.fillStyle="black";
    ctx.textAlign = "left";
    ctx.fillText(num, 300, 108);
}

function start() {
    for (var i = 0; i < testDivs.length; ++i) {
        tests[i] = null;
    }
    testIndex = 0;
    drawTop();
    window.addEventListener('keypress', doKeyPress, true);
    window.addEventListener('keydown', doKeyDown, true);
    window.onresize = function() {
        drawTop();
    }
    /*
    window.onpagehide = function() {
        disableClick = true;
    }
    */
    window.onpageshow = function () {
        disableClick = false;
    }
}

</script>
</head>

<body onLoad="start();">
<canvas id="canvas" width="750" height="500"
    onmousemove="handleMouseOver()"
    onclick="handleMouseClick()"
    ></canvas >
</body>
</html>
