aboutsummaryrefslogtreecommitdiffhomepage
path: root/tests/PathOpsIssue3651.cpp
diff options
context:
space:
mode:
authorGravatar caryclark <caryclark@google.com>2015-05-14 05:45:54 -0700
committerGravatar Commit bot <commit-bot@chromium.org>2015-05-14 05:45:54 -0700
commit182b499cd75c971f85cdf52c1827b3c220cc9011 (patch)
tree70d3a7884731de198bf99afb0914cb390639c420 /tests/PathOpsIssue3651.cpp
parenteea2ff72014d985166e8c2aab3537bd32591900a (diff)
look for deleted pts when detecting line/curve coincident edges
TBR=reed@google.com BUG=skia:3651 Review URL: https://codereview.chromium.org/1129863007
Diffstat (limited to 'tests/PathOpsIssue3651.cpp')
-rw-r--r--tests/PathOpsIssue3651.cpp187
1 files changed, 187 insertions, 0 deletions
diff --git a/tests/PathOpsIssue3651.cpp b/tests/PathOpsIssue3651.cpp
index 4e732a1f1e..583c38f75a 100644
--- a/tests/PathOpsIssue3651.cpp
+++ b/tests/PathOpsIssue3651.cpp
@@ -1360,12 +1360,199 @@ path.cubicTo(SkBits2Float(0x41dc0000), SkBits2Float(0x4380c393), SkBits2Float(0x
testPathOp(reporter, pathA, path, SkPathOp::kUnion_SkPathOp, filename);
}
+static void issue3651_7(skiatest::Reporter* reporter, const char* filename) {
+ SkPath path;
+path.moveTo(SkBits2Float(0x42886666), SkBits2Float(0x4295999a)); // 68.2f, 74.8f
+path.lineTo(SkBits2Float(0x42886666), SkBits2Float(0x4295999a)); // 68.2f, 74.8f
+path.cubicTo(SkBits2Float(0x4289ddde), SkBits2Float(0x4295999a), SkBits2Float(0x428b5555), SkBits2Float(0x4295ab91), SkBits2Float(0x428ccccd), SkBits2Float(0x4295999a)); // 68.9333f, 74.8f, 69.6667f, 74.8351f, 70.4f, 74.8f
+path.cubicTo(SkBits2Float(0x428e4444), SkBits2Float(0x429587a2), SkBits2Float(0x428fbbbc), SkBits2Float(0x42954339), SkBits2Float(0x42913333), SkBits2Float(0x42952dcf)); // 71.1333f, 74.7649f, 71.8667f, 74.6313f, 72.6f, 74.5895f
+path.cubicTo(SkBits2Float(0x4292aaab), SkBits2Float(0x42951865), SkBits2Float(0x42942222), SkBits2Float(0x42951dec), SkBits2Float(0x4295999a), SkBits2Float(0x4295191f)); // 73.3333f, 74.5476f, 74.0667f, 74.5584f, 74.8f, 74.5491f
+path.cubicTo(SkBits2Float(0x42971111), SkBits2Float(0x42951452), SkBits2Float(0x42988889), SkBits2Float(0x4294fb9a), SkBits2Float(0x429a0000), SkBits2Float(0x42951101)); // 75.5333f, 74.5397f, 76.2667f, 74.4914f, 77, 74.5332f
+path.cubicTo(SkBits2Float(0x429b7777), SkBits2Float(0x42952667), SkBits2Float(0x429ceeef), SkBits2Float(0x429582c2), SkBits2Float(0x429e6666), SkBits2Float(0x42959986)); // 77.7333f, 74.575f, 78.4667f, 74.7554f, 79.2f, 74.7999f
+path.cubicTo(SkBits2Float(0x429fddde), SkBits2Float(0x4295b04b), SkBits2Float(0x42a15555), SkBits2Float(0x42959996), SkBits2Float(0x42a2cccd), SkBits2Float(0x4295999a)); // 79.9333f, 74.8443f, 80.6667f, 74.8f, 81.4f, 74.8f
+path.cubicTo(SkBits2Float(0x42a44444), SkBits2Float(0x4295999d), SkBits2Float(0x42a5bbbc), SkBits2Float(0x42959e78), SkBits2Float(0x42a73333), SkBits2Float(0x4295999a)); // 82.1333f, 74.8f, 82.8667f, 74.8095f, 83.6f, 74.8f
+path.cubicTo(SkBits2Float(0x42a8aaab), SkBits2Float(0x429594bb), SkBits2Float(0x42aa2222), SkBits2Float(0x42957c62), SkBits2Float(0x42ab999a), SkBits2Float(0x42957c62)); // 84.3333f, 74.7905f, 85.0667f, 74.7429f, 85.8f, 74.7429f
+path.cubicTo(SkBits2Float(0x42ad1111), SkBits2Float(0x42957c62), SkBits2Float(0x42ae8889), SkBits2Float(0x429594bb), SkBits2Float(0x42b00000), SkBits2Float(0x4295999a)); // 86.5333f, 74.7429f, 87.2667f, 74.7905f, 88, 74.8f
+path.cubicTo(SkBits2Float(0x42b17777), SkBits2Float(0x42959e78), SkBits2Float(0x42b2eeef), SkBits2Float(0x4295ac2d), SkBits2Float(0x42b46666), SkBits2Float(0x4295999a)); // 88.7333f, 74.8095f, 89.4667f, 74.8363f, 90.2f, 74.8f
+path.cubicTo(SkBits2Float(0x42b5ddde), SkBits2Float(0x42958706), SkBits2Float(0x42b75555), SkBits2Float(0x42953b44), SkBits2Float(0x42b8cccd), SkBits2Float(0x42952a25)); // 90.9333f, 74.7637f, 91.6667f, 74.6158f, 92.4f, 74.5823f
+path.cubicTo(SkBits2Float(0x42ba4444), SkBits2Float(0x42951906), SkBits2Float(0x42bbbbbc), SkBits2Float(0x42952e4b), SkBits2Float(0x42bd3333), SkBits2Float(0x429532e0)); // 93.1333f, 74.5489f, 93.8667f, 74.5904f, 94.6f, 74.5994f
+path.cubicTo(SkBits2Float(0x42beaaab), SkBits2Float(0x42953775), SkBits2Float(0x42c02222), SkBits2Float(0x42954fda), SkBits2Float(0x42c1999a), SkBits2Float(0x429545a4)); // 95.3333f, 74.6083f, 96.0667f, 74.656f, 96.8f, 74.636f
+path.cubicTo(SkBits2Float(0x42c31111), SkBits2Float(0x42953b6d), SkBits2Float(0x42c48889), SkBits2Float(0x42950c1f), SkBits2Float(0x42c60000), SkBits2Float(0x4294f599)); // 97.5333f, 74.6161f, 98.2667f, 74.5237f, 99, 74.4797f
+path.cubicTo(SkBits2Float(0x42c77777), SkBits2Float(0x4294df14), SkBits2Float(0x42c8eeef), SkBits2Float(0x4294c8f4), SkBits2Float(0x42ca6666), SkBits2Float(0x4294be85)); // 99.7333f, 74.4357f, 100.467f, 74.3925f, 101.2f, 74.3721f
+path.cubicTo(SkBits2Float(0x42cbddde), SkBits2Float(0x4294b417), SkBits2Float(0x42cd5555), SkBits2Float(0x4294ba72), SkBits2Float(0x42cecccd), SkBits2Float(0x4294b703)); // 101.933f, 74.3517f, 102.667f, 74.3642f, 103.4f, 74.3574f
+path.cubicTo(SkBits2Float(0x42d04444), SkBits2Float(0x4294b395), SkBits2Float(0x42d1bbbc), SkBits2Float(0x4294b0ca), SkBits2Float(0x42d33333), SkBits2Float(0x4294a9ec)); // 104.133f, 74.3507f, 104.867f, 74.3453f, 105.6f, 74.3319f
+path.cubicTo(SkBits2Float(0x42d4aaab), SkBits2Float(0x4294a30e), SkBits2Float(0x42d62222), SkBits2Float(0x429493f5), SkBits2Float(0x42d7999a), SkBits2Float(0x42948dd1)); // 106.333f, 74.3185f, 107.067f, 74.289f, 107.8f, 74.277f
+path.cubicTo(SkBits2Float(0x42d91111), SkBits2Float(0x429487ae), SkBits2Float(0x42da8889), SkBits2Float(0x42947f24), SkBits2Float(0x42dc0000), SkBits2Float(0x42948517)); // 108.533f, 74.265f, 109.267f, 74.2483f, 110, 74.2599f
+path.cubicTo(SkBits2Float(0x42dd7777), SkBits2Float(0x42948b0a), SkBits2Float(0x42deeeef), SkBits2Float(0x42949db5), SkBits2Float(0x42e06666), SkBits2Float(0x4294b185)); // 110.733f, 74.2716f, 111.467f, 74.308f, 112.2f, 74.3467f
+path.cubicTo(SkBits2Float(0x42e1ddde), SkBits2Float(0x4294c556), SkBits2Float(0x42e35555), SkBits2Float(0x4294ed7d), SkBits2Float(0x42e4cccd), SkBits2Float(0x4294fbfa)); // 112.933f, 74.3854f, 113.667f, 74.4638f, 114.4f, 74.4921f
+path.cubicTo(SkBits2Float(0x42e64444), SkBits2Float(0x42950a77), SkBits2Float(0x42e7bbbc), SkBits2Float(0x42950d94), SkBits2Float(0x42e93333), SkBits2Float(0x42950875)); // 115.133f, 74.5204f, 115.867f, 74.5265f, 116.6f, 74.5165f
+path.cubicTo(SkBits2Float(0x42eaaaab), SkBits2Float(0x42950356), SkBits2Float(0x42ec2222), SkBits2Float(0x4294e77a), SkBits2Float(0x42ed999a), SkBits2Float(0x4294dd40)); // 117.333f, 74.5065f, 118.067f, 74.4521f, 118.8f, 74.4321f
+path.cubicTo(SkBits2Float(0x42ef1111), SkBits2Float(0x4294d305), SkBits2Float(0x42f08889), SkBits2Float(0x4294c50a), SkBits2Float(0x42f20000), SkBits2Float(0x4294cb18)); // 119.533f, 74.4121f, 120.267f, 74.3848f, 121, 74.3967f
+path.cubicTo(SkBits2Float(0x42f37777), SkBits2Float(0x4294d125), SkBits2Float(0x42f4eeef), SkBits2Float(0x4294ece7), SkBits2Float(0x42f66666), SkBits2Float(0x42950190)); // 121.733f, 74.4085f, 122.467f, 74.4627f, 123.2f, 74.5031f
+path.cubicTo(SkBits2Float(0x42f7ddde), SkBits2Float(0x42951638), SkBits2Float(0x42f95555), SkBits2Float(0x42953e63), SkBits2Float(0x42facccd), SkBits2Float(0x4295470b)); // 123.933f, 74.5434f, 124.667f, 74.6218f, 125.4f, 74.6388f
+path.cubicTo(SkBits2Float(0x42fc4444), SkBits2Float(0x42954fb3), SkBits2Float(0x42fdbbbc), SkBits2Float(0x4295478d), SkBits2Float(0x42ff3333), SkBits2Float(0x4295357f)); // 126.133f, 74.6557f, 126.867f, 74.6397f, 127.6f, 74.6045f
+path.cubicTo(SkBits2Float(0x43005555), SkBits2Float(0x42952371), SkBits2Float(0x43011111), SkBits2Float(0x4294fc35), SkBits2Float(0x4301cccd), SkBits2Float(0x4294dab7)); // 128.333f, 74.5692f, 129.067f, 74.4926f, 129.8f, 74.4272f
+path.cubicTo(SkBits2Float(0x43028889), SkBits2Float(0x4294b93a), SkBits2Float(0x43034444), SkBits2Float(0x429480ff), SkBits2Float(0x43040000), SkBits2Float(0x42946c8f)); // 130.533f, 74.3618f, 131.267f, 74.2519f, 132, 74.212f
+path.cubicTo(SkBits2Float(0x4304bbbc), SkBits2Float(0x4294581e), SkBits2Float(0x43057777), SkBits2Float(0x42945d0d), SkBits2Float(0x43063333), SkBits2Float(0x42946014)); // 132.733f, 74.1721f, 133.467f, 74.1817f, 134.2f, 74.1877f
+path.cubicTo(SkBits2Float(0x4306eeef), SkBits2Float(0x4294631a), SkBits2Float(0x4307aaab), SkBits2Float(0x42947340), SkBits2Float(0x43086666), SkBits2Float(0x42947eb7)); // 134.933f, 74.1936f, 135.667f, 74.2251f, 136.4f, 74.2475f
+path.cubicTo(SkBits2Float(0x43092222), SkBits2Float(0x42948a2d), SkBits2Float(0x4309ddde), SkBits2Float(0x42949abf), SkBits2Float(0x430a999a), SkBits2Float(0x4294a4db)); // 137.133f, 74.2699f, 137.867f, 74.3022f, 138.6f, 74.322f
+path.cubicTo(SkBits2Float(0x430b5555), SkBits2Float(0x4294aef8), SkBits2Float(0x430c1111), SkBits2Float(0x4294bfa8), SkBits2Float(0x430ccccd), SkBits2Float(0x4294bb61)); // 139.333f, 74.3417f, 140.067f, 74.3743f, 140.8f, 74.366f
+path.cubicTo(SkBits2Float(0x430d8889), SkBits2Float(0x4294b71a), SkBits2Float(0x430e4444), SkBits2Float(0x429490b9), SkBits2Float(0x430f0000), SkBits2Float(0x42948b32)); // 141.533f, 74.3576f, 142.267f, 74.2827f, 143, 74.2719f
+path.cubicTo(SkBits2Float(0x430fbbbc), SkBits2Float(0x429485ab), SkBits2Float(0x43107777), SkBits2Float(0x429483e4), SkBits2Float(0x43113333), SkBits2Float(0x42949a35)); // 143.733f, 74.2611f, 144.467f, 74.2576f, 145.2f, 74.3012f
+path.cubicTo(SkBits2Float(0x4311eeef), SkBits2Float(0x4294b086), SkBits2Float(0x4312aaab), SkBits2Float(0x4294f894), SkBits2Float(0x43136666), SkBits2Float(0x42951118)); // 145.933f, 74.3448f, 146.667f, 74.4855f, 147.4f, 74.5334f
+path.cubicTo(SkBits2Float(0x43142222), SkBits2Float(0x4295299b), SkBits2Float(0x4314ddde), SkBits2Float(0x4295342c), SkBits2Float(0x4315999a), SkBits2Float(0x42952d4a)); // 148.133f, 74.5813f, 148.867f, 74.6019f, 149.6f, 74.5885f
+path.cubicTo(SkBits2Float(0x43165555), SkBits2Float(0x42952668), SkBits2Float(0x43171111), SkBits2Float(0x4294f257), SkBits2Float(0x4317cccd), SkBits2Float(0x4294e7cf)); // 150.333f, 74.575f, 151.067f, 74.4733f, 151.8f, 74.4528f
+path.cubicTo(SkBits2Float(0x43188889), SkBits2Float(0x4294dd46), SkBits2Float(0x43194444), SkBits2Float(0x4294e9b3), SkBits2Float(0x431a0000), SkBits2Float(0x4294ee18)); // 152.533f, 74.4322f, 153.267f, 74.4564f, 154, 74.465f
+path.cubicTo(SkBits2Float(0x431abbbc), SkBits2Float(0x4294f27d), SkBits2Float(0x431b7777), SkBits2Float(0x42950422), SkBits2Float(0x431c3333), SkBits2Float(0x4295022c)); // 154.733f, 74.4736f, 155.467f, 74.5081f, 156.2f, 74.5042f
+path.cubicTo(SkBits2Float(0x431ceeef), SkBits2Float(0x42950035), SkBits2Float(0x431daaab), SkBits2Float(0x4294e324), SkBits2Float(0x431e6666), SkBits2Float(0x4294e250)); // 156.933f, 74.5004f, 157.667f, 74.4436f, 158.4f, 74.442f
+path.cubicTo(SkBits2Float(0x431f2222), SkBits2Float(0x4294e17c), SkBits2Float(0x431fddde), SkBits2Float(0x4294e5a1), SkBits2Float(0x4320999a), SkBits2Float(0x4294fd32)); // 159.133f, 74.4404f, 159.867f, 74.4485f, 160.6f, 74.4945f
+path.cubicTo(SkBits2Float(0x43215555), SkBits2Float(0x429514c4), SkBits2Float(0x43221111), SkBits2Float(0x42955c02), SkBits2Float(0x4322cccd), SkBits2Float(0x42956fb8)); // 161.333f, 74.5406f, 162.067f, 74.6797f, 162.8f, 74.7182f
+path.cubicTo(SkBits2Float(0x43238889), SkBits2Float(0x4295836e), SkBits2Float(0x43244444), SkBits2Float(0x429586fb), SkBits2Float(0x43250000), SkBits2Float(0x42957379)); // 163.533f, 74.7567f, 164.267f, 74.7636f, 165, 74.7255f
+path.cubicTo(SkBits2Float(0x4325bbbc), SkBits2Float(0x42955ff7), SkBits2Float(0x43267777), SkBits2Float(0x42950a52), SkBits2Float(0x43273333), SkBits2Float(0x4294faaa)); // 165.733f, 74.6874f, 166.467f, 74.5202f, 167.2f, 74.4896f
+path.cubicTo(SkBits2Float(0x4327eeef), SkBits2Float(0x4294eb03), SkBits2Float(0x4328aaab), SkBits2Float(0x4294fb0f), SkBits2Float(0x43296666), SkBits2Float(0x4295158c)); // 167.933f, 74.459f, 168.667f, 74.4903f, 169.4f, 74.5421f
+path.cubicTo(SkBits2Float(0x432a2222), SkBits2Float(0x4295300a), SkBits2Float(0x432addde), SkBits2Float(0x42958397), SkBits2Float(0x432b999a), SkBits2Float(0x4295999a)); // 170.133f, 74.5938f, 170.867f, 74.757f, 171.6f, 74.8f
+path.cubicTo(SkBits2Float(0x432c5555), SkBits2Float(0x4295af9c), SkBits2Float(0x432d1111), SkBits2Float(0x4295ace7), SkBits2Float(0x432dcccd), SkBits2Float(0x4295999a)); // 172.333f, 74.843f, 173.067f, 74.8377f, 173.8f, 74.8f
+path.cubicTo(SkBits2Float(0x432e8889), SkBits2Float(0x4295864c), SkBits2Float(0x432f4444), SkBits2Float(0x4295555a), SkBits2Float(0x43300000), SkBits2Float(0x429525c8)); // 174.533f, 74.7623f, 175.267f, 74.6667f, 176, 74.5738f
+path.cubicTo(SkBits2Float(0x4330bbbc), SkBits2Float(0x4294f636), SkBits2Float(0x43317777), SkBits2Float(0x42949a53), SkBits2Float(0x43323333), SkBits2Float(0x42947c2e)); // 176.733f, 74.4809f, 177.467f, 74.3014f, 178.2f, 74.2425f
+path.cubicTo(SkBits2Float(0x4332eeef), SkBits2Float(0x42945e0a), SkBits2Float(0x4333aaab), SkBits2Float(0x42946377), SkBits2Float(0x43346666), SkBits2Float(0x429470ec)); // 178.933f, 74.1837f, 179.667f, 74.1943f, 180.4f, 74.2206f
+path.cubicTo(SkBits2Float(0x43352222), SkBits2Float(0x42947e61), SkBits2Float(0x4335ddde), SkBits2Float(0x4294b4b7), SkBits2Float(0x4336999a), SkBits2Float(0x4294ccec)); // 181.133f, 74.2468f, 181.867f, 74.353f, 182.6f, 74.4002f
+path.cubicTo(SkBits2Float(0x43375555), SkBits2Float(0x4294e522), SkBits2Float(0x43381111), SkBits2Float(0x4294f1c6), SkBits2Float(0x4338cccd), SkBits2Float(0x4295022c)); // 183.333f, 74.4475f, 184.067f, 74.4722f, 184.8f, 74.5042f
+path.cubicTo(SkBits2Float(0x43398889), SkBits2Float(0x42951291), SkBits2Float(0x433a4444), SkBits2Float(0x42952241), SkBits2Float(0x433b0000), SkBits2Float(0x42952f4d)); // 185.533f, 74.5363f, 186.267f, 74.5669f, 187, 74.5924f
+path.cubicTo(SkBits2Float(0x433bbbbc), SkBits2Float(0x42953c5a), SkBits2Float(0x433c7777), SkBits2Float(0x42955a4b), SkBits2Float(0x433d3333), SkBits2Float(0x42955079)); // 187.733f, 74.6179f, 188.467f, 74.6764f, 189.2f, 74.6572f
+path.cubicTo(SkBits2Float(0x433deeef), SkBits2Float(0x429546a7), SkBits2Float(0x433eaaab), SkBits2Float(0x4294fc01), SkBits2Float(0x433f6666), SkBits2Float(0x4294f461)); // 189.933f, 74.638f, 190.667f, 74.4922f, 191.4f, 74.4773f
+path.cubicTo(SkBits2Float(0x43402222), SkBits2Float(0x4294ecc1), SkBits2Float(0x4340ddde), SkBits2Float(0x42950f1f), SkBits2Float(0x4341999a), SkBits2Float(0x429522bb)); // 192.133f, 74.4624f, 192.867f, 74.5295f, 193.6f, 74.5678f
+path.cubicTo(SkBits2Float(0x43425555), SkBits2Float(0x42953657), SkBits2Float(0x43431111), SkBits2Float(0x4295616b), SkBits2Float(0x4343cccd), SkBits2Float(0x42956a0b)); // 194.333f, 74.6061f, 195.067f, 74.6903f, 195.8f, 74.7071f
+path.cubicTo(SkBits2Float(0x43448889), SkBits2Float(0x429572ab), SkBits2Float(0x43454444), SkBits2Float(0x4295608a), SkBits2Float(0x43460000), SkBits2Float(0x4295567c)); // 196.533f, 74.724f, 197.267f, 74.6886f, 198, 74.6689f
+path.cubicTo(SkBits2Float(0x4346bbbc), SkBits2Float(0x42954c6e), SkBits2Float(0x43477777), SkBits2Float(0x42953beb), SkBits2Float(0x43483333), SkBits2Float(0x42952db8)); // 198.733f, 74.6493f, 199.467f, 74.617f, 200.2f, 74.5893f
+path.cubicTo(SkBits2Float(0x4348eeef), SkBits2Float(0x42951f85), SkBits2Float(0x4349aaab), SkBits2Float(0x42950a92), SkBits2Float(0x434a6666), SkBits2Float(0x4295014a)); // 200.933f, 74.5616f, 201.667f, 74.5206f, 202.4f, 74.5025f
+path.cubicTo(SkBits2Float(0x434b2222), SkBits2Float(0x4294f802), SkBits2Float(0x434bddde), SkBits2Float(0x4294f9c8), SkBits2Float(0x434c999a), SkBits2Float(0x4294f607)); // 203.133f, 74.4844f, 203.867f, 74.4879f, 204.6f, 74.4805f
+path.cubicTo(SkBits2Float(0x434d5555), SkBits2Float(0x4294f246), SkBits2Float(0x434e1111), SkBits2Float(0x4294f080), SkBits2Float(0x434ecccd), SkBits2Float(0x4294eac5)); // 205.333f, 74.4732f, 206.067f, 74.4697f, 206.8f, 74.4585f
+path.cubicTo(SkBits2Float(0x434f8889), SkBits2Float(0x4294e509), SkBits2Float(0x43504444), SkBits2Float(0x4294dd6d), SkBits2Float(0x43510000), SkBits2Float(0x4294d3a3)); // 207.533f, 74.4473f, 208.267f, 74.4325f, 209, 74.4134f
+path.cubicTo(SkBits2Float(0x4351bbbc), SkBits2Float(0x4294c9d9), SkBits2Float(0x43527777), SkBits2Float(0x4294b931), SkBits2Float(0x43533333), SkBits2Float(0x4294b007)); // 209.733f, 74.3942f, 210.467f, 74.3617f, 211.2f, 74.3438f
+path.cubicTo(SkBits2Float(0x4353eeef), SkBits2Float(0x4294a6dd), SkBits2Float(0x4354aaab), SkBits2Float(0x4294a02f), SkBits2Float(0x43556666), SkBits2Float(0x42949ca6)); // 211.933f, 74.3259f, 212.667f, 74.3129f, 213.4f, 74.306f
+path.cubicTo(SkBits2Float(0x43562222), SkBits2Float(0x4294991d), SkBits2Float(0x4356ddde), SkBits2Float(0x42949775), SkBits2Float(0x4357999a), SkBits2Float(0x42949ad1)); // 214.133f, 74.299f, 214.867f, 74.2958f, 215.6f, 74.3024f
+path.cubicTo(SkBits2Float(0x43585555), SkBits2Float(0x42949e2e), SkBits2Float(0x43591111), SkBits2Float(0x4294a9b4), SkBits2Float(0x4359cccd), SkBits2Float(0x4294b0d2)); // 216.333f, 74.3089f, 217.067f, 74.3315f, 217.8f, 74.3454f
+path.cubicTo(SkBits2Float(0x435a8889), SkBits2Float(0x4294b7ef), SkBits2Float(0x435b4444), SkBits2Float(0x4294d2c3), SkBits2Float(0x435c0000), SkBits2Float(0x4294c582)); // 218.533f, 74.3592f, 219.267f, 74.4116f, 220, 74.3858f
+path.cubicTo(SkBits2Float(0x435cbbbc), SkBits2Float(0x4294b841), SkBits2Float(0x435d7777), SkBits2Float(0x42947919), SkBits2Float(0x435e3333), SkBits2Float(0x4294614c)); // 220.733f, 74.3599f, 221.467f, 74.2365f, 222.2f, 74.19f
+path.cubicTo(SkBits2Float(0x435eeeef), SkBits2Float(0x4294497f), SkBits2Float(0x435faaab), SkBits2Float(0x42943521), SkBits2Float(0x43606666), SkBits2Float(0x429436b3)); // 222.933f, 74.1435f, 223.667f, 74.1038f, 224.4f, 74.1068f
+path.cubicTo(SkBits2Float(0x43612222), SkBits2Float(0x42943845), SkBits2Float(0x4361ddde), SkBits2Float(0x42945996), SkBits2Float(0x4362999a), SkBits2Float(0x42946aba)); // 225.133f, 74.1099f, 225.867f, 74.175f, 226.6f, 74.2085f
+path.cubicTo(SkBits2Float(0x43635555), SkBits2Float(0x42947bdd), SkBits2Float(0x43641111), SkBits2Float(0x4294973f), SkBits2Float(0x4364cccd), SkBits2Float(0x42949d88)); // 227.333f, 74.2419f, 228.067f, 74.2954f, 228.8f, 74.3077f
+path.cubicTo(SkBits2Float(0x43658889), SkBits2Float(0x4294a3d2), SkBits2Float(0x43664444), SkBits2Float(0x429495a6), SkBits2Float(0x43670000), SkBits2Float(0x42949071)); // 229.533f, 74.32f, 230.267f, 74.2923f, 231, 74.2821f
+path.cubicTo(SkBits2Float(0x4367bbbc), SkBits2Float(0x42948b3c), SkBits2Float(0x43687777), SkBits2Float(0x429480b0), SkBits2Float(0x43693333), SkBits2Float(0x42947e49)); // 231.733f, 74.2719f, 232.467f, 74.2513f, 233.2f, 74.2467f
+path.cubicTo(SkBits2Float(0x4369eeef), SkBits2Float(0x42947be3), SkBits2Float(0x436aaaab), SkBits2Float(0x42947a88), SkBits2Float(0x436b6666), SkBits2Float(0x4294820a)); // 233.933f, 74.242f, 234.667f, 74.2393f, 235.4f, 74.254f
+path.cubicTo(SkBits2Float(0x436c2222), SkBits2Float(0x4294898c), SkBits2Float(0x436cddde), SkBits2Float(0x42949eee), SkBits2Float(0x436d999a), SkBits2Float(0x4294ab53)); // 236.133f, 74.2686f, 236.867f, 74.3104f, 237.6f, 74.3346f
+path.cubicTo(SkBits2Float(0x436e5555), SkBits2Float(0x4294b7b8), SkBits2Float(0x436f1111), SkBits2Float(0x4294c2bb), SkBits2Float(0x436fcccd), SkBits2Float(0x4294cc67)); // 238.333f, 74.3588f, 239.067f, 74.3803f, 239.8f, 74.3992f
+path.cubicTo(SkBits2Float(0x43708889), SkBits2Float(0x4294d614), SkBits2Float(0x43714444), SkBits2Float(0x4294d5a0), SkBits2Float(0x43720000), SkBits2Float(0x4294e55e)); // 240.533f, 74.4181f, 241.267f, 74.4172f, 242, 74.448f
+path.cubicTo(SkBits2Float(0x4372bbbc), SkBits2Float(0x4294f51b), SkBits2Float(0x43737777), SkBits2Float(0x429516d0), SkBits2Float(0x43743333), SkBits2Float(0x42952ad9)); // 242.733f, 74.4787f, 243.467f, 74.5446f, 244.2f, 74.5837f
+path.cubicTo(SkBits2Float(0x4374eeef), SkBits2Float(0x42953ee1), SkBits2Float(0x4375aaab), SkBits2Float(0x42954f2d), SkBits2Float(0x43766666), SkBits2Float(0x42955d90)); // 244.933f, 74.6228f, 245.667f, 74.6546f, 246.4f, 74.6827f
+path.cubicTo(SkBits2Float(0x43772222), SkBits2Float(0x42956bf3), SkBits2Float(0x4377ddde), SkBits2Float(0x4295772b), SkBits2Float(0x4378999a), SkBits2Float(0x4295812d)); // 247.133f, 74.7108f, 247.867f, 74.7327f, 248.6f, 74.7523f
+path.cubicTo(SkBits2Float(0x43795555), SkBits2Float(0x42958b2e), SkBits2Float(0x437a1111), SkBits2Float(0x42959587), SkBits2Float(0x437acccd), SkBits2Float(0x4295999a)); // 249.333f, 74.7718f, 250.067f, 74.792f, 250.8f, 74.8f
+path.cubicTo(SkBits2Float(0x437b8889), SkBits2Float(0x42959dac), SkBits2Float(0x437c4444), SkBits2Float(0x4295999a), SkBits2Float(0x437d0000), SkBits2Float(0x4295999a)); // 251.533f, 74.808f, 252.267f, 74.8f, 253, 74.8f
+path.lineTo(SkBits2Float(0x437d0000), SkBits2Float(0x4295999a)); // 253, 74.8f
+path.lineTo(SkBits2Float(0x42886666), SkBits2Float(0x4295999a)); // 68.2f, 74.8f
+path.close();
+SkPath pathA = path;
+path.reset();
+
+path.moveTo(SkBits2Float(0x42886666), SkBits2Float(0x4295999a)); // 68.2f, 74.8f
+path.lineTo(SkBits2Float(0x42886666), SkBits2Float(0x4295999a)); // 68.2f, 74.8f
+path.cubicTo(SkBits2Float(0x4289ddde), SkBits2Float(0x4295999a), SkBits2Float(0x428b5555), SkBits2Float(0x429587a3), SkBits2Float(0x428ccccd), SkBits2Float(0x4295999a)); // 68.9333f, 74.8f, 69.6667f, 74.7649f, 70.4f, 74.8f
+path.cubicTo(SkBits2Float(0x428e4444), SkBits2Float(0x4295ab92), SkBits2Float(0x428fbbbc), SkBits2Float(0x4295effb), SkBits2Float(0x42913333), SkBits2Float(0x42960565)); // 71.1333f, 74.8351f, 71.8667f, 74.9687f, 72.6f, 75.0105f
+path.cubicTo(SkBits2Float(0x4292aaab), SkBits2Float(0x42961acf), SkBits2Float(0x42942222), SkBits2Float(0x42961548), SkBits2Float(0x4295999a), SkBits2Float(0x42961a15)); // 73.3333f, 75.0524f, 74.0667f, 75.0416f, 74.8f, 75.0509f
+path.cubicTo(SkBits2Float(0x42971111), SkBits2Float(0x42961ee2), SkBits2Float(0x42988889), SkBits2Float(0x4296379a), SkBits2Float(0x429a0000), SkBits2Float(0x42962233)); // 75.5333f, 75.0603f, 76.2667f, 75.1086f, 77, 75.0668f
+path.cubicTo(SkBits2Float(0x429b7777), SkBits2Float(0x42960ccd), SkBits2Float(0x429ceeef), SkBits2Float(0x4295b072), SkBits2Float(0x429e6666), SkBits2Float(0x429599ae)); // 77.7333f, 75.025f, 78.4667f, 74.8446f, 79.2f, 74.8002f
+path.cubicTo(SkBits2Float(0x429fddde), SkBits2Float(0x429582e9), SkBits2Float(0x42a15555), SkBits2Float(0x4295999e), SkBits2Float(0x42a2cccd), SkBits2Float(0x4295999a)); // 79.9333f, 74.7557f, 80.6667f, 74.8f, 81.4f, 74.8f
+path.cubicTo(SkBits2Float(0x42a44444), SkBits2Float(0x42959997), SkBits2Float(0x42a5bbbc), SkBits2Float(0x429594bc), SkBits2Float(0x42a73333), SkBits2Float(0x4295999a)); // 82.1333f, 74.8f, 82.8667f, 74.7905f, 83.6f, 74.8f
+path.cubicTo(SkBits2Float(0x42a8aaab), SkBits2Float(0x42959e79), SkBits2Float(0x42aa2222), SkBits2Float(0x4295b6d2), SkBits2Float(0x42ab999a), SkBits2Float(0x4295b6d2)); // 84.3333f, 74.8095f, 85.0667f, 74.8571f, 85.8f, 74.8571f
+path.cubicTo(SkBits2Float(0x42ad1111), SkBits2Float(0x4295b6d2), SkBits2Float(0x42ae8889), SkBits2Float(0x42959e79), SkBits2Float(0x42b00000), SkBits2Float(0x4295999a)); // 86.5333f, 74.8571f, 87.2667f, 74.8095f, 88, 74.8f
+path.cubicTo(SkBits2Float(0x42b17777), SkBits2Float(0x429594bc), SkBits2Float(0x42b2eeef), SkBits2Float(0x42958707), SkBits2Float(0x42b46666), SkBits2Float(0x4295999a)); // 88.7333f, 74.7905f, 89.4667f, 74.7637f, 90.2f, 74.8f
+path.cubicTo(SkBits2Float(0x42b5ddde), SkBits2Float(0x4295ac2e), SkBits2Float(0x42b75555), SkBits2Float(0x4295f7f0), SkBits2Float(0x42b8cccd), SkBits2Float(0x4296090f)); // 90.9333f, 74.8363f, 91.6667f, 74.9843f, 92.4f, 75.0177f
+path.cubicTo(SkBits2Float(0x42ba4444), SkBits2Float(0x42961a2e), SkBits2Float(0x42bbbbbc), SkBits2Float(0x429604e9), SkBits2Float(0x42bd3333), SkBits2Float(0x42960054)); // 93.1333f, 75.0511f, 93.8667f, 75.0096f, 94.6f, 75.0006f
+path.cubicTo(SkBits2Float(0x42beaaab), SkBits2Float(0x4295fbbf), SkBits2Float(0x42c02222), SkBits2Float(0x4295e35a), SkBits2Float(0x42c1999a), SkBits2Float(0x4295ed90)); // 95.3333f, 74.9917f, 96.0667f, 74.944f, 96.8f, 74.964f
+path.cubicTo(SkBits2Float(0x42c31111), SkBits2Float(0x4295f7c7), SkBits2Float(0x42c48889), SkBits2Float(0x42962715), SkBits2Float(0x42c60000), SkBits2Float(0x42963d9b)); // 97.5333f, 74.9839f, 98.2667f, 75.0763f, 99, 75.1203f
+path.cubicTo(SkBits2Float(0x42c77777), SkBits2Float(0x42965420), SkBits2Float(0x42c8eeef), SkBits2Float(0x42966a40), SkBits2Float(0x42ca6666), SkBits2Float(0x429674af)); // 99.7333f, 75.1643f, 100.467f, 75.2075f, 101.2f, 75.2279f
+path.cubicTo(SkBits2Float(0x42cbddde), SkBits2Float(0x42967f1d), SkBits2Float(0x42cd5555), SkBits2Float(0x429678c2), SkBits2Float(0x42cecccd), SkBits2Float(0x42967c31)); // 101.933f, 75.2483f, 102.667f, 75.2359f, 103.4f, 75.2426f
+path.cubicTo(SkBits2Float(0x42d04444), SkBits2Float(0x42967f9f), SkBits2Float(0x42d1bbbc), SkBits2Float(0x4296826a), SkBits2Float(0x42d33333), SkBits2Float(0x42968948)); // 104.133f, 75.2493f, 104.867f, 75.2547f, 105.6f, 75.2681f
+path.cubicTo(SkBits2Float(0x42d4aaab), SkBits2Float(0x42969026), SkBits2Float(0x42d62222), SkBits2Float(0x42969f3f), SkBits2Float(0x42d7999a), SkBits2Float(0x4296a563)); // 106.333f, 75.2815f, 107.067f, 75.311f, 107.8f, 75.323f
+path.cubicTo(SkBits2Float(0x42d91111), SkBits2Float(0x4296ab86), SkBits2Float(0x42da8889), SkBits2Float(0x4296b410), SkBits2Float(0x42dc0000), SkBits2Float(0x4296ae1d)); // 108.533f, 75.335f, 109.267f, 75.3517f, 110, 75.3401f
+path.cubicTo(SkBits2Float(0x42dd7777), SkBits2Float(0x4296a82a), SkBits2Float(0x42deeeef), SkBits2Float(0x4296957f), SkBits2Float(0x42e06666), SkBits2Float(0x429681af)); // 110.733f, 75.3284f, 111.467f, 75.292f, 112.2f, 75.2533f
+path.cubicTo(SkBits2Float(0x42e1ddde), SkBits2Float(0x42966dde), SkBits2Float(0x42e35555), SkBits2Float(0x429645b7), SkBits2Float(0x42e4cccd), SkBits2Float(0x4296373a)); // 112.933f, 75.2146f, 113.667f, 75.1362f, 114.4f, 75.1079f
+path.cubicTo(SkBits2Float(0x42e64444), SkBits2Float(0x429628bd), SkBits2Float(0x42e7bbbc), SkBits2Float(0x429625a0), SkBits2Float(0x42e93333), SkBits2Float(0x42962abf)); // 115.133f, 75.0796f, 115.867f, 75.0735f, 116.6f, 75.0835f
+path.cubicTo(SkBits2Float(0x42eaaaab), SkBits2Float(0x42962fde), SkBits2Float(0x42ec2222), SkBits2Float(0x42964bba), SkBits2Float(0x42ed999a), SkBits2Float(0x429655f4)); // 117.333f, 75.0935f, 118.067f, 75.1479f, 118.8f, 75.1679f
+path.cubicTo(SkBits2Float(0x42ef1111), SkBits2Float(0x4296602f), SkBits2Float(0x42f08889), SkBits2Float(0x42966e2a), SkBits2Float(0x42f20000), SkBits2Float(0x4296681c)); // 119.533f, 75.1879f, 120.267f, 75.2152f, 121, 75.2033f
+path.cubicTo(SkBits2Float(0x42f37777), SkBits2Float(0x4296620f), SkBits2Float(0x42f4eeef), SkBits2Float(0x4296464d), SkBits2Float(0x42f66666), SkBits2Float(0x429631a4)); // 121.733f, 75.1915f, 122.467f, 75.1373f, 123.2f, 75.097f
+path.cubicTo(SkBits2Float(0x42f7ddde), SkBits2Float(0x42961cfc), SkBits2Float(0x42f95555), SkBits2Float(0x4295f4d1), SkBits2Float(0x42facccd), SkBits2Float(0x4295ec29)); // 123.933f, 75.0566f, 124.667f, 74.9782f, 125.4f, 74.9613f
+path.cubicTo(SkBits2Float(0x42fc4444), SkBits2Float(0x4295e381), SkBits2Float(0x42fdbbbc), SkBits2Float(0x4295eba7), SkBits2Float(0x42ff3333), SkBits2Float(0x4295fdb5)); // 126.133f, 74.9443f, 126.867f, 74.9603f, 127.6f, 74.9955f
+path.cubicTo(SkBits2Float(0x43005555), SkBits2Float(0x42960fc3), SkBits2Float(0x43011111), SkBits2Float(0x429636ff), SkBits2Float(0x4301cccd), SkBits2Float(0x4296587d)); // 128.333f, 75.0308f, 129.067f, 75.1074f, 129.8f, 75.1728f
+path.cubicTo(SkBits2Float(0x43028889), SkBits2Float(0x429679fa), SkBits2Float(0x43034444), SkBits2Float(0x4296b235), SkBits2Float(0x43040000), SkBits2Float(0x4296c6a5)); // 130.533f, 75.2382f, 131.267f, 75.3481f, 132, 75.388f
+path.cubicTo(SkBits2Float(0x4304bbbc), SkBits2Float(0x4296db16), SkBits2Float(0x43057777), SkBits2Float(0x4296d627), SkBits2Float(0x43063333), SkBits2Float(0x4296d320)); // 132.733f, 75.4279f, 133.467f, 75.4183f, 134.2f, 75.4124f
+path.cubicTo(SkBits2Float(0x4306eeef), SkBits2Float(0x4296d01a), SkBits2Float(0x4307aaab), SkBits2Float(0x4296bff4), SkBits2Float(0x43086666), SkBits2Float(0x4296b47d)); // 134.933f, 75.4064f, 135.667f, 75.3749f, 136.4f, 75.3525f
+path.cubicTo(SkBits2Float(0x43092222), SkBits2Float(0x4296a907), SkBits2Float(0x4309ddde), SkBits2Float(0x42969875), SkBits2Float(0x430a999a), SkBits2Float(0x42968e59)); // 137.133f, 75.3301f, 137.867f, 75.2978f, 138.6f, 75.278f
+path.cubicTo(SkBits2Float(0x430b5555), SkBits2Float(0x4296843c), SkBits2Float(0x430c1111), SkBits2Float(0x4296738c), SkBits2Float(0x430ccccd), SkBits2Float(0x429677d3)); // 139.333f, 75.2583f, 140.067f, 75.2257f, 140.8f, 75.234f
+path.cubicTo(SkBits2Float(0x430d8889), SkBits2Float(0x42967c1a), SkBits2Float(0x430e4444), SkBits2Float(0x4296a27b), SkBits2Float(0x430f0000), SkBits2Float(0x4296a802)); // 141.533f, 75.2424f, 142.267f, 75.3173f, 143, 75.3281f
+path.cubicTo(SkBits2Float(0x430fbbbc), SkBits2Float(0x4296ad89), SkBits2Float(0x43107777), SkBits2Float(0x4296af50), SkBits2Float(0x43113333), SkBits2Float(0x429698ff)); // 143.733f, 75.3389f, 144.467f, 75.3424f, 145.2f, 75.2988f
+path.cubicTo(SkBits2Float(0x4311eeef), SkBits2Float(0x429682ae), SkBits2Float(0x4312aaab), SkBits2Float(0x42963aa0), SkBits2Float(0x43136666), SkBits2Float(0x4296221c)); // 145.933f, 75.2552f, 146.667f, 75.1145f, 147.4f, 75.0666f
+path.cubicTo(SkBits2Float(0x43142222), SkBits2Float(0x42960999), SkBits2Float(0x4314ddde), SkBits2Float(0x4295ff08), SkBits2Float(0x4315999a), SkBits2Float(0x429605ea)); // 148.133f, 75.0187f, 148.867f, 74.9981f, 149.6f, 75.0116f
+path.cubicTo(SkBits2Float(0x43165555), SkBits2Float(0x42960ccc), SkBits2Float(0x43171111), SkBits2Float(0x429640dd), SkBits2Float(0x4317cccd), SkBits2Float(0x42964b65)); // 150.333f, 75.025f, 151.067f, 75.1267f, 151.8f, 75.1473f
+path.cubicTo(SkBits2Float(0x43188889), SkBits2Float(0x429655ee), SkBits2Float(0x43194444), SkBits2Float(0x42964981), SkBits2Float(0x431a0000), SkBits2Float(0x4296451c)); // 152.533f, 75.1678f, 153.267f, 75.1436f, 154, 75.135f
+path.cubicTo(SkBits2Float(0x431abbbc), SkBits2Float(0x429640b7), SkBits2Float(0x431b7777), SkBits2Float(0x42962f12), SkBits2Float(0x431c3333), SkBits2Float(0x42963108)); // 154.733f, 75.1264f, 155.467f, 75.0919f, 156.2f, 75.0958f
+path.cubicTo(SkBits2Float(0x431ceeef), SkBits2Float(0x429632ff), SkBits2Float(0x431daaab), SkBits2Float(0x42965010), SkBits2Float(0x431e6666), SkBits2Float(0x429650e4)); // 156.933f, 75.0996f, 157.667f, 75.1564f, 158.4f, 75.158f
+path.cubicTo(SkBits2Float(0x431f2222), SkBits2Float(0x429651b8), SkBits2Float(0x431fddde), SkBits2Float(0x42964d93), SkBits2Float(0x4320999a), SkBits2Float(0x42963602)); // 159.133f, 75.1596f, 159.867f, 75.1515f, 160.6f, 75.1055f
+path.cubicTo(SkBits2Float(0x43215555), SkBits2Float(0x42961e70), SkBits2Float(0x43221111), SkBits2Float(0x4295d732), SkBits2Float(0x4322cccd), SkBits2Float(0x4295c37c)); // 161.333f, 75.0594f, 162.067f, 74.9203f, 162.8f, 74.8818f
+path.cubicTo(SkBits2Float(0x43238889), SkBits2Float(0x4295afc6), SkBits2Float(0x43244444), SkBits2Float(0x4295ac39), SkBits2Float(0x43250000), SkBits2Float(0x4295bfbb)); // 163.533f, 74.8433f, 164.267f, 74.8364f, 165, 74.8745f
+path.cubicTo(SkBits2Float(0x4325bbbc), SkBits2Float(0x4295d33d), SkBits2Float(0x43267777), SkBits2Float(0x429628e2), SkBits2Float(0x43273333), SkBits2Float(0x4296388a)); // 165.733f, 74.9126f, 166.467f, 75.0798f, 167.2f, 75.1104f
+path.cubicTo(SkBits2Float(0x4327eeef), SkBits2Float(0x42964831), SkBits2Float(0x4328aaab), SkBits2Float(0x42963825), SkBits2Float(0x43296666), SkBits2Float(0x42961da8)); // 167.933f, 75.141f, 168.667f, 75.1097f, 169.4f, 75.0579f
+path.cubicTo(SkBits2Float(0x432a2222), SkBits2Float(0x4296032a), SkBits2Float(0x432addde), SkBits2Float(0x4295af9d), SkBits2Float(0x432b999a), SkBits2Float(0x4295999a)); // 170.133f, 75.0062f, 170.867f, 74.843f, 171.6f, 74.8f
+path.cubicTo(SkBits2Float(0x432c5555), SkBits2Float(0x42958398), SkBits2Float(0x432d1111), SkBits2Float(0x4295864d), SkBits2Float(0x432dcccd), SkBits2Float(0x4295999a)); // 172.333f, 74.757f, 173.067f, 74.7623f, 173.8f, 74.8f
+path.cubicTo(SkBits2Float(0x432e8889), SkBits2Float(0x4295ace8), SkBits2Float(0x432f4444), SkBits2Float(0x4295ddda), SkBits2Float(0x43300000), SkBits2Float(0x42960d6c)); // 174.533f, 74.8377f, 175.267f, 74.9333f, 176, 75.0262f
+path.cubicTo(SkBits2Float(0x4330bbbc), SkBits2Float(0x42963cfe), SkBits2Float(0x43317777), SkBits2Float(0x429698e1), SkBits2Float(0x43323333), SkBits2Float(0x4296b706)); // 176.733f, 75.1191f, 177.467f, 75.2986f, 178.2f, 75.3575f
+path.cubicTo(SkBits2Float(0x4332eeef), SkBits2Float(0x4296d52a), SkBits2Float(0x4333aaab), SkBits2Float(0x4296cfbd), SkBits2Float(0x43346666), SkBits2Float(0x4296c248)); // 178.933f, 75.4163f, 179.667f, 75.4057f, 180.4f, 75.3795f
+path.cubicTo(SkBits2Float(0x43352222), SkBits2Float(0x4296b4d3), SkBits2Float(0x4335ddde), SkBits2Float(0x42967e7d), SkBits2Float(0x4336999a), SkBits2Float(0x42966648)); // 181.133f, 75.3532f, 181.867f, 75.247f, 182.6f, 75.1998f
+path.cubicTo(SkBits2Float(0x43375555), SkBits2Float(0x42964e12), SkBits2Float(0x43381111), SkBits2Float(0x4296416e), SkBits2Float(0x4338cccd), SkBits2Float(0x42963108)); // 183.333f, 75.1525f, 184.067f, 75.1278f, 184.8f, 75.0958f
+path.cubicTo(SkBits2Float(0x43398889), SkBits2Float(0x429620a3), SkBits2Float(0x433a4444), SkBits2Float(0x429610f3), SkBits2Float(0x433b0000), SkBits2Float(0x429603e7)); // 185.533f, 75.0637f, 186.267f, 75.0331f, 187, 75.0076f
+path.cubicTo(SkBits2Float(0x433bbbbc), SkBits2Float(0x4295f6da), SkBits2Float(0x433c7777), SkBits2Float(0x4295d8e9), SkBits2Float(0x433d3333), SkBits2Float(0x4295e2bb)); // 187.733f, 74.9821f, 188.467f, 74.9237f, 189.2f, 74.9428f
+path.cubicTo(SkBits2Float(0x433deeef), SkBits2Float(0x4295ec8d), SkBits2Float(0x433eaaab), SkBits2Float(0x42963733), SkBits2Float(0x433f6666), SkBits2Float(0x42963ed3)); // 189.933f, 74.962f, 190.667f, 75.1078f, 191.4f, 75.1227f
+path.cubicTo(SkBits2Float(0x43402222), SkBits2Float(0x42964673), SkBits2Float(0x4340ddde), SkBits2Float(0x42962415), SkBits2Float(0x4341999a), SkBits2Float(0x42961079)); // 192.133f, 75.1376f, 192.867f, 75.0705f, 193.6f, 75.0322f
+path.cubicTo(SkBits2Float(0x43425555), SkBits2Float(0x4295fcdd), SkBits2Float(0x43431111), SkBits2Float(0x4295d1c9), SkBits2Float(0x4343cccd), SkBits2Float(0x4295c929)); // 194.333f, 74.9939f, 195.067f, 74.9097f, 195.8f, 74.8929f
+path.cubicTo(SkBits2Float(0x43448889), SkBits2Float(0x4295c089), SkBits2Float(0x43454444), SkBits2Float(0x4295d2aa), SkBits2Float(0x43460000), SkBits2Float(0x4295dcb8)); // 196.533f, 74.876f, 197.267f, 74.9115f, 198, 74.9311f
+path.cubicTo(SkBits2Float(0x4346bbbc), SkBits2Float(0x4295e6c6), SkBits2Float(0x43477777), SkBits2Float(0x4295f749), SkBits2Float(0x43483333), SkBits2Float(0x4296057c)); // 198.733f, 74.9507f, 199.467f, 74.983f, 200.2f, 75.0107f
+path.cubicTo(SkBits2Float(0x4348eeef), SkBits2Float(0x429613af), SkBits2Float(0x4349aaab), SkBits2Float(0x429628a2), SkBits2Float(0x434a6666), SkBits2Float(0x429631ea)); // 200.933f, 75.0384f, 201.667f, 75.0794f, 202.4f, 75.0975f
+path.cubicTo(SkBits2Float(0x434b2222), SkBits2Float(0x42963b32), SkBits2Float(0x434bddde), SkBits2Float(0x4296396c), SkBits2Float(0x434c999a), SkBits2Float(0x42963d2d)); // 203.133f, 75.1156f, 203.867f, 75.1122f, 204.6f, 75.1195f
+path.cubicTo(SkBits2Float(0x434d5555), SkBits2Float(0x429640ee), SkBits2Float(0x434e1111), SkBits2Float(0x429642b4), SkBits2Float(0x434ecccd), SkBits2Float(0x4296486f)); // 205.333f, 75.1268f, 206.067f, 75.1303f, 206.8f, 75.1415f
+path.cubicTo(SkBits2Float(0x434f8889), SkBits2Float(0x42964e2b), SkBits2Float(0x43504444), SkBits2Float(0x429655c7), SkBits2Float(0x43510000), SkBits2Float(0x42965f91)); // 207.533f, 75.1527f, 208.267f, 75.1675f, 209, 75.1867f
+path.cubicTo(SkBits2Float(0x4351bbbc), SkBits2Float(0x4296695b), SkBits2Float(0x43527777), SkBits2Float(0x42967a03), SkBits2Float(0x43533333), SkBits2Float(0x4296832d)); // 209.733f, 75.2058f, 210.467f, 75.2383f, 211.2f, 75.2562f
+path.cubicTo(SkBits2Float(0x4353eeef), SkBits2Float(0x42968c57), SkBits2Float(0x4354aaab), SkBits2Float(0x42969305), SkBits2Float(0x43556666), SkBits2Float(0x4296968e)); // 211.933f, 75.2741f, 212.667f, 75.2871f, 213.4f, 75.2941f
+path.cubicTo(SkBits2Float(0x43562222), SkBits2Float(0x42969a17), SkBits2Float(0x4356ddde), SkBits2Float(0x42969bbf), SkBits2Float(0x4357999a), SkBits2Float(0x42969863)); // 214.133f, 75.301f, 214.867f, 75.3042f, 215.6f, 75.2976f
+path.cubicTo(SkBits2Float(0x43585555), SkBits2Float(0x42969506), SkBits2Float(0x43591111), SkBits2Float(0x42968980), SkBits2Float(0x4359cccd), SkBits2Float(0x42968262)); // 216.333f, 75.2911f, 217.067f, 75.2686f, 217.8f, 75.2547f
+path.cubicTo(SkBits2Float(0x435a8889), SkBits2Float(0x42967b45), SkBits2Float(0x435b4444), SkBits2Float(0x42966071), SkBits2Float(0x435c0000), SkBits2Float(0x42966db2)); // 218.533f, 75.2408f, 219.267f, 75.1884f, 220, 75.2142f
+path.cubicTo(SkBits2Float(0x435cbbbc), SkBits2Float(0x42967af3), SkBits2Float(0x435d7777), SkBits2Float(0x4296ba1b), SkBits2Float(0x435e3333), SkBits2Float(0x4296d1e8)); // 220.733f, 75.2401f, 221.467f, 75.3635f, 222.2f, 75.41f
+path.cubicTo(SkBits2Float(0x435eeeef), SkBits2Float(0x4296e9b5), SkBits2Float(0x435faaab), SkBits2Float(0x4296fe13), SkBits2Float(0x43606666), SkBits2Float(0x4296fc81)); // 222.933f, 75.4565f, 223.667f, 75.4962f, 224.4f, 75.4932f
+path.cubicTo(SkBits2Float(0x43612222), SkBits2Float(0x4296faef), SkBits2Float(0x4361ddde), SkBits2Float(0x4296d99e), SkBits2Float(0x4362999a), SkBits2Float(0x4296c87a)); // 225.133f, 75.4901f, 225.867f, 75.425f, 226.6f, 75.3916f
+path.cubicTo(SkBits2Float(0x43635555), SkBits2Float(0x4296b757), SkBits2Float(0x43641111), SkBits2Float(0x42969bf5), SkBits2Float(0x4364cccd), SkBits2Float(0x429695ac)); // 227.333f, 75.3581f, 228.067f, 75.3046f, 228.8f, 75.2923f
+path.cubicTo(SkBits2Float(0x43658889), SkBits2Float(0x42968f62), SkBits2Float(0x43664444), SkBits2Float(0x42969d8e), SkBits2Float(0x43670000), SkBits2Float(0x4296a2c3)); // 229.533f, 75.28f, 230.267f, 75.3077f, 231, 75.3179f
+path.cubicTo(SkBits2Float(0x4367bbbc), SkBits2Float(0x4296a7f8), SkBits2Float(0x43687777), SkBits2Float(0x4296b284), SkBits2Float(0x43693333), SkBits2Float(0x4296b4eb)); // 231.733f, 75.3281f, 232.467f, 75.3487f, 233.2f, 75.3534f
+path.cubicTo(SkBits2Float(0x4369eeef), SkBits2Float(0x4296b751), SkBits2Float(0x436aaaab), SkBits2Float(0x4296b8ac), SkBits2Float(0x436b6666), SkBits2Float(0x4296b12a)); // 233.933f, 75.358f, 234.667f, 75.3607f, 235.4f, 75.346f
+path.cubicTo(SkBits2Float(0x436c2222), SkBits2Float(0x4296a9a8), SkBits2Float(0x436cddde), SkBits2Float(0x42969446), SkBits2Float(0x436d999a), SkBits2Float(0x429687e1)); // 236.133f, 75.3314f, 236.867f, 75.2896f, 237.6f, 75.2654f
+path.cubicTo(SkBits2Float(0x436e5555), SkBits2Float(0x42967b7c), SkBits2Float(0x436f1111), SkBits2Float(0x42967079), SkBits2Float(0x436fcccd), SkBits2Float(0x429666cd)); // 238.333f, 75.2412f, 239.067f, 75.2197f, 239.8f, 75.2008f
+path.cubicTo(SkBits2Float(0x43708889), SkBits2Float(0x42965d20), SkBits2Float(0x43714444), SkBits2Float(0x42965d94), SkBits2Float(0x43720000), SkBits2Float(0x42964dd6)); // 240.533f, 75.1819f, 241.267f, 75.1828f, 242, 75.152f
+path.cubicTo(SkBits2Float(0x4372bbbc), SkBits2Float(0x42963e19), SkBits2Float(0x43737777), SkBits2Float(0x42961c64), SkBits2Float(0x43743333), SkBits2Float(0x4296085b)); // 242.733f, 75.1213f, 243.467f, 75.0555f, 244.2f, 75.0163f
+path.cubicTo(SkBits2Float(0x4374eeef), SkBits2Float(0x4295f453), SkBits2Float(0x4375aaab), SkBits2Float(0x4295e407), SkBits2Float(0x43766666), SkBits2Float(0x4295d5a4)); // 244.933f, 74.9772f, 245.667f, 74.9454f, 246.4f, 74.9173f
+path.cubicTo(SkBits2Float(0x43772222), SkBits2Float(0x4295c741), SkBits2Float(0x4377ddde), SkBits2Float(0x4295bc09), SkBits2Float(0x4378999a), SkBits2Float(0x4295b207)); // 247.133f, 74.8892f, 247.867f, 74.8673f, 248.6f, 74.8477f
+path.cubicTo(SkBits2Float(0x43795555), SkBits2Float(0x4295a806), SkBits2Float(0x437a1111), SkBits2Float(0x42959dad), SkBits2Float(0x437acccd), SkBits2Float(0x4295999a)); // 249.333f, 74.8282f, 250.067f, 74.808f, 250.8f, 74.8f
+path.cubicTo(SkBits2Float(0x437b8889), SkBits2Float(0x42959588), SkBits2Float(0x437c4444), SkBits2Float(0x4295999a), SkBits2Float(0x437d0000), SkBits2Float(0x4295999a)); // 251.533f, 74.7921f, 252.267f, 74.8f, 253, 74.8f
+path.lineTo(SkBits2Float(0x437d0000), SkBits2Float(0x4295999a)); // 253, 74.8f
+path.lineTo(SkBits2Float(0x42886666), SkBits2Float(0x4295999a)); // 68.2f, 74.8f
+path.close();
+ testPathOpCheck(reporter, pathA, path, SkPathOp::kUnion_SkPathOp, filename, FLAGS_runFail);
+}
+
static void (*skipTest)(skiatest::Reporter* , const char* filename) = 0;
static void (*firstTest)(skiatest::Reporter* , const char* filename) = 0;
static void (*stopTest)(skiatest::Reporter* , const char* filename) = 0;
static struct TestDesc tests[] = {
+ TEST(issue3651_7),
TEST(issue3651_6),
TEST(issue3651_5),
TEST(issue3651_4),