v8/test/mjsunit/harmony/regexp-property-emoji-zwj-sequence-generated.js
Mathias Bynens b4d35d0241 Revert "Update RegExp sequence property support"
This reverts commit 1eecdf3450.

Reason for revert: unacceptable binary size increase (+65.5 KiB)
We’ll reland once we implement a more efficient way to store the
sequences.

Original change's description:
> Update RegExp sequence property support
>
> This patch aligns --harmony-regexp-sequence with the latest version of
> the corresponding TC39 and Unicode proposals.
>
> The list of supported properties has been changed:
>
> - https://github.com/tc39/proposal-regexp-unicode-sequence-properties#proposed-solution
> - https://unicode.org/reports/tr18/#Full_Properties
>
> Furthermore, the Unicode data now uses Unicode v13.0.0 instead of v12.0.0.
>
> Bug: v8:7467
> Change-Id: I1ac386d87af68d68e84e919cb5ffc1313443844a
> Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2497163
> Reviewed-by: Jakob Gruber <jgruber@chromium.org>
> Reviewed-by: Yang Guo <yangguo@chromium.org>
> Commit-Queue: Mathias Bynens <mathias@chromium.org>
> Cr-Commit-Position: refs/heads/master@{#70752}

TBR=yangguo@chromium.org,jgruber@chromium.org,mathias@chromium.org

# Not skipping CQ checks because original CL landed > 1 day ago.

Bug: v8:7467
Change-Id: I6721f4862827dc686d96d79498a1e8fdae4481d7
Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2505758
Reviewed-by: Mathias Bynens <mathias@chromium.org>
Commit-Queue: Mathias Bynens <mathias@chromium.org>
Cr-Commit-Position: refs/heads/master@{#70866}
2020-10-29 07:46:01 +00:00

916 lines
54 KiB
JavaScript

// Copyright 2019 the V8 project authors. All rights reserved.
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
// Flags: --harmony-regexp-sequence
// These tests have been generated by the script at
// https://gist.github.com/mathiasbynens/3b42c99a227521dabfe68d9e63f00f42.
// Do not modify this file directly!
const re = /\p{Emoji_ZWJ_Sequence}/u;
assertTrue(re.test('\u{1F468}\u200D\u2764\uFE0F\u200D\u{1F468}'));
assertTrue(re.test('\u{1F441}\uFE0F\u200D\u{1F5E8}\uFE0F'));
assertTrue(re.test('\u{1F468}\u200D\u{1F466}'));
assertTrue(re.test('\u{1F468}\u200D\u{1F466}\u200D\u{1F466}'));
assertTrue(re.test('\u{1F468}\u200D\u{1F467}'));
assertTrue(re.test('\u{1F468}\u200D\u{1F467}\u200D\u{1F466}'));
assertTrue(re.test('\u{1F468}\u200D\u{1F467}\u200D\u{1F467}'));
assertTrue(re.test('\u{1F468}\u200D\u{1F468}\u200D\u{1F466}'));
assertTrue(re.test('\u{1F468}\u200D\u{1F468}\u200D\u{1F466}\u200D\u{1F466}'));
assertTrue(re.test('\u{1F468}\u200D\u{1F468}\u200D\u{1F467}'));
assertTrue(re.test('\u{1F468}\u200D\u{1F468}\u200D\u{1F467}\u200D\u{1F466}'));
assertTrue(re.test('\u{1F468}\u200D\u{1F468}\u200D\u{1F467}\u200D\u{1F467}'));
assertTrue(re.test('\u{1F468}\u200D\u{1F469}\u200D\u{1F466}'));
assertTrue(re.test('\u{1F468}\u200D\u{1F469}\u200D\u{1F466}\u200D\u{1F466}'));
assertTrue(re.test('\u{1F468}\u200D\u{1F469}\u200D\u{1F467}'));
assertTrue(re.test('\u{1F468}\u200D\u{1F469}\u200D\u{1F467}\u200D\u{1F466}'));
assertTrue(re.test('\u{1F468}\u200D\u{1F469}\u200D\u{1F467}\u200D\u{1F467}'));
assertTrue(re.test('\u{1F468}\u{1F3FC}\u200D\u{1F91D}\u200D\u{1F468}\u{1F3FB}'));
assertTrue(re.test('\u{1F468}\u{1F3FD}\u200D\u{1F91D}\u200D\u{1F468}\u{1F3FB}'));
assertTrue(re.test('\u{1F468}\u{1F3FD}\u200D\u{1F91D}\u200D\u{1F468}\u{1F3FC}'));
assertTrue(re.test('\u{1F468}\u{1F3FE}\u200D\u{1F91D}\u200D\u{1F468}\u{1F3FB}'));
assertTrue(re.test('\u{1F468}\u{1F3FE}\u200D\u{1F91D}\u200D\u{1F468}\u{1F3FC}'));
assertTrue(re.test('\u{1F468}\u{1F3FE}\u200D\u{1F91D}\u200D\u{1F468}\u{1F3FD}'));
assertTrue(re.test('\u{1F468}\u{1F3FF}\u200D\u{1F91D}\u200D\u{1F468}\u{1F3FB}'));
assertTrue(re.test('\u{1F468}\u{1F3FF}\u200D\u{1F91D}\u200D\u{1F468}\u{1F3FC}'));
assertTrue(re.test('\u{1F468}\u{1F3FF}\u200D\u{1F91D}\u200D\u{1F468}\u{1F3FD}'));
assertTrue(re.test('\u{1F468}\u{1F3FF}\u200D\u{1F91D}\u200D\u{1F468}\u{1F3FE}'));
assertTrue(re.test('\u{1F469}\u200D\u2764\uFE0F\u200D\u{1F468}'));
assertTrue(re.test('\u{1F469}\u200D\u2764\uFE0F\u200D\u{1F469}'));
assertTrue(re.test('\u{1F469}\u200D\u2764\uFE0F\u200D\u{1F48B}\u200D\u{1F468}'));
assertTrue(re.test('\u{1F469}\u200D\u2764\uFE0F\u200D\u{1F48B}\u200D\u{1F469}'));
assertTrue(re.test('\u{1F469}\u200D\u{1F466}'));
assertTrue(re.test('\u{1F469}\u200D\u{1F466}\u200D\u{1F466}'));
assertTrue(re.test('\u{1F469}\u200D\u{1F467}'));
assertTrue(re.test('\u{1F469}\u200D\u{1F467}\u200D\u{1F466}'));
assertTrue(re.test('\u{1F469}\u200D\u{1F467}\u200D\u{1F467}'));
assertTrue(re.test('\u{1F469}\u200D\u{1F469}\u200D\u{1F466}'));
assertTrue(re.test('\u{1F469}\u200D\u{1F469}\u200D\u{1F466}\u200D\u{1F466}'));
assertTrue(re.test('\u{1F469}\u200D\u{1F469}\u200D\u{1F467}'));
assertTrue(re.test('\u{1F469}\u200D\u{1F469}\u200D\u{1F467}\u200D\u{1F466}'));
assertTrue(re.test('\u{1F469}\u200D\u{1F469}\u200D\u{1F467}\u200D\u{1F467}'));
assertTrue(re.test('\u{1F469}\u{1F3FB}\u200D\u{1F91D}\u200D\u{1F468}\u{1F3FC}'));
assertTrue(re.test('\u{1F469}\u{1F3FB}\u200D\u{1F91D}\u200D\u{1F468}\u{1F3FD}'));
assertTrue(re.test('\u{1F469}\u{1F3FB}\u200D\u{1F91D}\u200D\u{1F468}\u{1F3FE}'));
assertTrue(re.test('\u{1F469}\u{1F3FB}\u200D\u{1F91D}\u200D\u{1F468}\u{1F3FF}'));
assertTrue(re.test('\u{1F469}\u{1F3FC}\u200D\u{1F91D}\u200D\u{1F468}\u{1F3FB}'));
assertTrue(re.test('\u{1F469}\u{1F3FC}\u200D\u{1F91D}\u200D\u{1F468}\u{1F3FD}'));
assertTrue(re.test('\u{1F469}\u{1F3FC}\u200D\u{1F91D}\u200D\u{1F468}\u{1F3FE}'));
assertTrue(re.test('\u{1F469}\u{1F3FC}\u200D\u{1F91D}\u200D\u{1F468}\u{1F3FF}'));
assertTrue(re.test('\u{1F469}\u{1F3FC}\u200D\u{1F91D}\u200D\u{1F469}\u{1F3FB}'));
assertTrue(re.test('\u{1F469}\u{1F3FD}\u200D\u{1F91D}\u200D\u{1F468}\u{1F3FB}'));
assertTrue(re.test('\u{1F469}\u{1F3FD}\u200D\u{1F91D}\u200D\u{1F468}\u{1F3FC}'));
assertTrue(re.test('\u{1F469}\u{1F3FD}\u200D\u{1F91D}\u200D\u{1F468}\u{1F3FE}'));
assertTrue(re.test('\u{1F469}\u{1F3FD}\u200D\u{1F91D}\u200D\u{1F468}\u{1F3FF}'));
assertTrue(re.test('\u{1F469}\u{1F3FD}\u200D\u{1F91D}\u200D\u{1F469}\u{1F3FB}'));
assertTrue(re.test('\u{1F469}\u{1F3FD}\u200D\u{1F91D}\u200D\u{1F469}\u{1F3FC}'));
assertTrue(re.test('\u{1F469}\u{1F3FE}\u200D\u{1F91D}\u200D\u{1F468}\u{1F3FB}'));
assertTrue(re.test('\u{1F469}\u{1F3FE}\u200D\u{1F91D}\u200D\u{1F468}\u{1F3FC}'));
assertTrue(re.test('\u{1F469}\u{1F3FE}\u200D\u{1F91D}\u200D\u{1F468}\u{1F3FD}'));
assertTrue(re.test('\u{1F469}\u{1F3FE}\u200D\u{1F91D}\u200D\u{1F468}\u{1F3FF}'));
assertTrue(re.test('\u{1F469}\u{1F3FE}\u200D\u{1F91D}\u200D\u{1F469}\u{1F3FB}'));
assertTrue(re.test('\u{1F469}\u{1F3FE}\u200D\u{1F91D}\u200D\u{1F469}\u{1F3FC}'));
assertTrue(re.test('\u{1F469}\u{1F3FE}\u200D\u{1F91D}\u200D\u{1F469}\u{1F3FD}'));
assertTrue(re.test('\u{1F469}\u{1F3FF}\u200D\u{1F91D}\u200D\u{1F468}\u{1F3FB}'));
assertTrue(re.test('\u{1F469}\u{1F3FF}\u200D\u{1F91D}\u200D\u{1F468}\u{1F3FC}'));
assertTrue(re.test('\u{1F469}\u{1F3FF}\u200D\u{1F91D}\u200D\u{1F468}\u{1F3FD}'));
assertTrue(re.test('\u{1F469}\u{1F3FF}\u200D\u{1F91D}\u200D\u{1F468}\u{1F3FE}'));
assertTrue(re.test('\u{1F469}\u{1F3FF}\u200D\u{1F91D}\u200D\u{1F469}\u{1F3FB}'));
assertTrue(re.test('\u{1F469}\u{1F3FF}\u200D\u{1F91D}\u200D\u{1F469}\u{1F3FC}'));
assertTrue(re.test('\u{1F469}\u{1F3FF}\u200D\u{1F91D}\u200D\u{1F469}\u{1F3FD}'));
assertTrue(re.test('\u{1F469}\u{1F3FF}\u200D\u{1F91D}\u200D\u{1F469}\u{1F3FE}'));
assertTrue(re.test('\u{1F9D1}\u200D\u{1F91D}\u200D\u{1F9D1}'));
assertTrue(re.test('\u{1F9D1}\u{1F3FB}\u200D\u{1F91D}\u200D\u{1F9D1}\u{1F3FB}'));
assertTrue(re.test('\u{1F9D1}\u{1F3FC}\u200D\u{1F91D}\u200D\u{1F9D1}\u{1F3FB}'));
assertTrue(re.test('\u{1F9D1}\u{1F3FC}\u200D\u{1F91D}\u200D\u{1F9D1}\u{1F3FC}'));
assertTrue(re.test('\u{1F9D1}\u{1F3FD}\u200D\u{1F91D}\u200D\u{1F9D1}\u{1F3FB}'));
assertTrue(re.test('\u{1F9D1}\u{1F3FD}\u200D\u{1F91D}\u200D\u{1F9D1}\u{1F3FC}'));
assertTrue(re.test('\u{1F9D1}\u{1F3FD}\u200D\u{1F91D}\u200D\u{1F9D1}\u{1F3FD}'));
assertTrue(re.test('\u{1F9D1}\u{1F3FE}\u200D\u{1F91D}\u200D\u{1F9D1}\u{1F3FB}'));
assertTrue(re.test('\u{1F9D1}\u{1F3FE}\u200D\u{1F91D}\u200D\u{1F9D1}\u{1F3FC}'));
assertTrue(re.test('\u{1F9D1}\u{1F3FE}\u200D\u{1F91D}\u200D\u{1F9D1}\u{1F3FD}'));
assertTrue(re.test('\u{1F9D1}\u{1F3FE}\u200D\u{1F91D}\u200D\u{1F9D1}\u{1F3FE}'));
assertTrue(re.test('\u{1F9D1}\u{1F3FF}\u200D\u{1F91D}\u200D\u{1F9D1}\u{1F3FB}'));
assertTrue(re.test('\u{1F9D1}\u{1F3FF}\u200D\u{1F91D}\u200D\u{1F9D1}\u{1F3FC}'));
assertTrue(re.test('\u{1F9D1}\u{1F3FF}\u200D\u{1F91D}\u200D\u{1F9D1}\u{1F3FD}'));
assertTrue(re.test('\u{1F9D1}\u{1F3FF}\u200D\u{1F91D}\u200D\u{1F9D1}\u{1F3FE}'));
assertTrue(re.test('\u{1F9D1}\u{1F3FF}\u200D\u{1F91D}\u200D\u{1F9D1}\u{1F3FF}'));
assertTrue(re.test('\u{1F468}\u200D\u2695\uFE0F'));
assertTrue(re.test('\u{1F468}\u200D\u2696\uFE0F'));
assertTrue(re.test('\u{1F468}\u200D\u2708\uFE0F'));
assertTrue(re.test('\u{1F468}\u200D\u{1F33E}'));
assertTrue(re.test('\u{1F468}\u200D\u{1F373}'));
assertTrue(re.test('\u{1F468}\u200D\u{1F393}'));
assertTrue(re.test('\u{1F468}\u200D\u{1F3A4}'));
assertTrue(re.test('\u{1F468}\u200D\u{1F3A8}'));
assertTrue(re.test('\u{1F468}\u200D\u{1F3EB}'));
assertTrue(re.test('\u{1F468}\u200D\u{1F3ED}'));
assertTrue(re.test('\u{1F468}\u200D\u{1F4BB}'));
assertTrue(re.test('\u{1F468}\u200D\u{1F4BC}'));
assertTrue(re.test('\u{1F468}\u200D\u{1F527}'));
assertTrue(re.test('\u{1F468}\u200D\u{1F52C}'));
assertTrue(re.test('\u{1F468}\u200D\u{1F680}'));
assertTrue(re.test('\u{1F468}\u200D\u{1F692}'));
assertTrue(re.test('\u{1F468}\u200D\u{1F9AF}'));
assertTrue(re.test('\u{1F468}\u200D\u{1F9BC}'));
assertTrue(re.test('\u{1F468}\u200D\u{1F9BD}'));
assertTrue(re.test('\u{1F468}\u{1F3FB}\u200D\u2695\uFE0F'));
assertTrue(re.test('\u{1F468}\u{1F3FB}\u200D\u2696\uFE0F'));
assertTrue(re.test('\u{1F468}\u{1F3FB}\u200D\u2708\uFE0F'));
assertTrue(re.test('\u{1F468}\u{1F3FB}\u200D\u{1F33E}'));
assertTrue(re.test('\u{1F468}\u{1F3FB}\u200D\u{1F373}'));
assertTrue(re.test('\u{1F468}\u{1F3FB}\u200D\u{1F393}'));
assertTrue(re.test('\u{1F468}\u{1F3FB}\u200D\u{1F3A4}'));
assertTrue(re.test('\u{1F468}\u{1F3FB}\u200D\u{1F3A8}'));
assertTrue(re.test('\u{1F468}\u{1F3FB}\u200D\u{1F3EB}'));
assertTrue(re.test('\u{1F468}\u{1F3FB}\u200D\u{1F3ED}'));
assertTrue(re.test('\u{1F468}\u{1F3FB}\u200D\u{1F4BB}'));
assertTrue(re.test('\u{1F468}\u{1F3FB}\u200D\u{1F4BC}'));
assertTrue(re.test('\u{1F468}\u{1F3FB}\u200D\u{1F527}'));
assertTrue(re.test('\u{1F468}\u{1F3FB}\u200D\u{1F52C}'));
assertTrue(re.test('\u{1F468}\u{1F3FB}\u200D\u{1F680}'));
assertTrue(re.test('\u{1F468}\u{1F3FB}\u200D\u{1F692}'));
assertTrue(re.test('\u{1F468}\u{1F3FB}\u200D\u{1F9AF}'));
assertTrue(re.test('\u{1F468}\u{1F3FB}\u200D\u{1F9BC}'));
assertTrue(re.test('\u{1F468}\u{1F3FB}\u200D\u{1F9BD}'));
assertTrue(re.test('\u{1F468}\u{1F3FC}\u200D\u2695\uFE0F'));
assertTrue(re.test('\u{1F468}\u{1F3FC}\u200D\u2696\uFE0F'));
assertTrue(re.test('\u{1F468}\u{1F3FC}\u200D\u2708\uFE0F'));
assertTrue(re.test('\u{1F468}\u{1F3FC}\u200D\u{1F33E}'));
assertTrue(re.test('\u{1F468}\u{1F3FC}\u200D\u{1F373}'));
assertTrue(re.test('\u{1F468}\u{1F3FC}\u200D\u{1F393}'));
assertTrue(re.test('\u{1F468}\u{1F3FC}\u200D\u{1F3A4}'));
assertTrue(re.test('\u{1F468}\u{1F3FC}\u200D\u{1F3A8}'));
assertTrue(re.test('\u{1F468}\u{1F3FC}\u200D\u{1F3EB}'));
assertTrue(re.test('\u{1F468}\u{1F3FC}\u200D\u{1F3ED}'));
assertTrue(re.test('\u{1F468}\u{1F3FC}\u200D\u{1F4BB}'));
assertTrue(re.test('\u{1F468}\u{1F3FC}\u200D\u{1F4BC}'));
assertTrue(re.test('\u{1F468}\u{1F3FC}\u200D\u{1F527}'));
assertTrue(re.test('\u{1F468}\u{1F3FC}\u200D\u{1F52C}'));
assertTrue(re.test('\u{1F468}\u{1F3FC}\u200D\u{1F680}'));
assertTrue(re.test('\u{1F468}\u{1F3FC}\u200D\u{1F692}'));
assertTrue(re.test('\u{1F468}\u{1F3FC}\u200D\u{1F9AF}'));
assertTrue(re.test('\u{1F468}\u{1F3FC}\u200D\u{1F9BC}'));
assertTrue(re.test('\u{1F468}\u{1F3FC}\u200D\u{1F9BD}'));
assertTrue(re.test('\u{1F468}\u{1F3FD}\u200D\u2695\uFE0F'));
assertTrue(re.test('\u{1F468}\u{1F3FD}\u200D\u2696\uFE0F'));
assertTrue(re.test('\u{1F468}\u{1F3FD}\u200D\u2708\uFE0F'));
assertTrue(re.test('\u{1F468}\u{1F3FD}\u200D\u{1F33E}'));
assertTrue(re.test('\u{1F468}\u{1F3FD}\u200D\u{1F373}'));
assertTrue(re.test('\u{1F468}\u{1F3FD}\u200D\u{1F393}'));
assertTrue(re.test('\u{1F468}\u{1F3FD}\u200D\u{1F3A4}'));
assertTrue(re.test('\u{1F468}\u{1F3FD}\u200D\u{1F3A8}'));
assertTrue(re.test('\u{1F468}\u{1F3FD}\u200D\u{1F3EB}'));
assertTrue(re.test('\u{1F468}\u{1F3FD}\u200D\u{1F3ED}'));
assertTrue(re.test('\u{1F468}\u{1F3FD}\u200D\u{1F4BB}'));
assertTrue(re.test('\u{1F468}\u{1F3FD}\u200D\u{1F4BC}'));
assertTrue(re.test('\u{1F468}\u{1F3FD}\u200D\u{1F527}'));
assertTrue(re.test('\u{1F468}\u{1F3FD}\u200D\u{1F52C}'));
assertTrue(re.test('\u{1F468}\u{1F3FD}\u200D\u{1F680}'));
assertTrue(re.test('\u{1F468}\u{1F3FD}\u200D\u{1F692}'));
assertTrue(re.test('\u{1F468}\u{1F3FD}\u200D\u{1F9AF}'));
assertTrue(re.test('\u{1F468}\u{1F3FD}\u200D\u{1F9BC}'));
assertTrue(re.test('\u{1F468}\u{1F3FD}\u200D\u{1F9BD}'));
assertTrue(re.test('\u{1F468}\u{1F3FE}\u200D\u2695\uFE0F'));
assertTrue(re.test('\u{1F468}\u{1F3FE}\u200D\u2696\uFE0F'));
assertTrue(re.test('\u{1F468}\u{1F3FE}\u200D\u2708\uFE0F'));
assertTrue(re.test('\u{1F468}\u{1F3FE}\u200D\u{1F33E}'));
assertTrue(re.test('\u{1F468}\u{1F3FE}\u200D\u{1F373}'));
assertTrue(re.test('\u{1F468}\u{1F3FE}\u200D\u{1F393}'));
assertTrue(re.test('\u{1F468}\u{1F3FE}\u200D\u{1F3A4}'));
assertTrue(re.test('\u{1F468}\u{1F3FE}\u200D\u{1F3A8}'));
assertTrue(re.test('\u{1F468}\u{1F3FE}\u200D\u{1F3EB}'));
assertTrue(re.test('\u{1F468}\u{1F3FE}\u200D\u{1F3ED}'));
assertTrue(re.test('\u{1F468}\u{1F3FE}\u200D\u{1F4BB}'));
assertTrue(re.test('\u{1F468}\u{1F3FE}\u200D\u{1F4BC}'));
assertTrue(re.test('\u{1F468}\u{1F3FE}\u200D\u{1F527}'));
assertTrue(re.test('\u{1F468}\u{1F3FE}\u200D\u{1F52C}'));
assertTrue(re.test('\u{1F468}\u{1F3FE}\u200D\u{1F680}'));
assertTrue(re.test('\u{1F468}\u{1F3FE}\u200D\u{1F692}'));
assertTrue(re.test('\u{1F468}\u{1F3FE}\u200D\u{1F9AF}'));
assertTrue(re.test('\u{1F468}\u{1F3FE}\u200D\u{1F9BC}'));
assertTrue(re.test('\u{1F468}\u{1F3FE}\u200D\u{1F9BD}'));
assertTrue(re.test('\u{1F468}\u{1F3FF}\u200D\u2695\uFE0F'));
assertTrue(re.test('\u{1F468}\u{1F3FF}\u200D\u2696\uFE0F'));
assertTrue(re.test('\u{1F468}\u{1F3FF}\u200D\u2708\uFE0F'));
assertTrue(re.test('\u{1F468}\u{1F3FF}\u200D\u{1F33E}'));
assertTrue(re.test('\u{1F468}\u{1F3FF}\u200D\u{1F373}'));
assertTrue(re.test('\u{1F468}\u{1F3FF}\u200D\u{1F393}'));
assertTrue(re.test('\u{1F468}\u{1F3FF}\u200D\u{1F3A4}'));
assertTrue(re.test('\u{1F468}\u{1F3FF}\u200D\u{1F3A8}'));
assertTrue(re.test('\u{1F468}\u{1F3FF}\u200D\u{1F3EB}'));
assertTrue(re.test('\u{1F468}\u{1F3FF}\u200D\u{1F3ED}'));
assertTrue(re.test('\u{1F468}\u{1F3FF}\u200D\u{1F4BB}'));
assertTrue(re.test('\u{1F468}\u{1F3FF}\u200D\u{1F4BC}'));
assertTrue(re.test('\u{1F468}\u{1F3FF}\u200D\u{1F527}'));
assertTrue(re.test('\u{1F468}\u{1F3FF}\u200D\u{1F52C}'));
assertTrue(re.test('\u{1F468}\u{1F3FF}\u200D\u{1F680}'));
assertTrue(re.test('\u{1F468}\u{1F3FF}\u200D\u{1F692}'));
assertTrue(re.test('\u{1F468}\u{1F3FF}\u200D\u{1F9AF}'));
assertTrue(re.test('\u{1F468}\u{1F3FF}\u200D\u{1F9BC}'));
assertTrue(re.test('\u{1F468}\u{1F3FF}\u200D\u{1F9BD}'));
assertTrue(re.test('\u{1F469}\u200D\u2695\uFE0F'));
assertTrue(re.test('\u{1F469}\u200D\u2696\uFE0F'));
assertTrue(re.test('\u{1F469}\u200D\u2708\uFE0F'));
assertTrue(re.test('\u{1F469}\u200D\u{1F33E}'));
assertTrue(re.test('\u{1F469}\u200D\u{1F373}'));
assertTrue(re.test('\u{1F469}\u200D\u{1F393}'));
assertTrue(re.test('\u{1F469}\u200D\u{1F3A4}'));
assertTrue(re.test('\u{1F469}\u200D\u{1F3A8}'));
assertTrue(re.test('\u{1F469}\u200D\u{1F3EB}'));
assertTrue(re.test('\u{1F469}\u200D\u{1F3ED}'));
assertTrue(re.test('\u{1F469}\u200D\u{1F4BB}'));
assertTrue(re.test('\u{1F469}\u200D\u{1F4BC}'));
assertTrue(re.test('\u{1F469}\u200D\u{1F527}'));
assertTrue(re.test('\u{1F469}\u200D\u{1F52C}'));
assertTrue(re.test('\u{1F469}\u200D\u{1F680}'));
assertTrue(re.test('\u{1F469}\u200D\u{1F692}'));
assertTrue(re.test('\u{1F469}\u200D\u{1F9AF}'));
assertTrue(re.test('\u{1F469}\u200D\u{1F9BC}'));
assertTrue(re.test('\u{1F469}\u200D\u{1F9BD}'));
assertTrue(re.test('\u{1F469}\u{1F3FB}\u200D\u2695\uFE0F'));
assertTrue(re.test('\u{1F469}\u{1F3FB}\u200D\u2696\uFE0F'));
assertTrue(re.test('\u{1F469}\u{1F3FB}\u200D\u2708\uFE0F'));
assertTrue(re.test('\u{1F469}\u{1F3FB}\u200D\u{1F33E}'));
assertTrue(re.test('\u{1F469}\u{1F3FB}\u200D\u{1F373}'));
assertTrue(re.test('\u{1F469}\u{1F3FB}\u200D\u{1F393}'));
assertTrue(re.test('\u{1F469}\u{1F3FB}\u200D\u{1F3A4}'));
assertTrue(re.test('\u{1F469}\u{1F3FB}\u200D\u{1F3A8}'));
assertTrue(re.test('\u{1F469}\u{1F3FB}\u200D\u{1F3EB}'));
assertTrue(re.test('\u{1F469}\u{1F3FB}\u200D\u{1F3ED}'));
assertTrue(re.test('\u{1F469}\u{1F3FB}\u200D\u{1F4BB}'));
assertTrue(re.test('\u{1F469}\u{1F3FB}\u200D\u{1F4BC}'));
assertTrue(re.test('\u{1F469}\u{1F3FB}\u200D\u{1F527}'));
assertTrue(re.test('\u{1F469}\u{1F3FB}\u200D\u{1F52C}'));
assertTrue(re.test('\u{1F469}\u{1F3FB}\u200D\u{1F680}'));
assertTrue(re.test('\u{1F469}\u{1F3FB}\u200D\u{1F692}'));
assertTrue(re.test('\u{1F469}\u{1F3FB}\u200D\u{1F9AF}'));
assertTrue(re.test('\u{1F469}\u{1F3FB}\u200D\u{1F9BC}'));
assertTrue(re.test('\u{1F469}\u{1F3FB}\u200D\u{1F9BD}'));
assertTrue(re.test('\u{1F469}\u{1F3FC}\u200D\u2695\uFE0F'));
assertTrue(re.test('\u{1F469}\u{1F3FC}\u200D\u2696\uFE0F'));
assertTrue(re.test('\u{1F469}\u{1F3FC}\u200D\u2708\uFE0F'));
assertTrue(re.test('\u{1F469}\u{1F3FC}\u200D\u{1F33E}'));
assertTrue(re.test('\u{1F469}\u{1F3FC}\u200D\u{1F373}'));
assertTrue(re.test('\u{1F469}\u{1F3FC}\u200D\u{1F393}'));
assertTrue(re.test('\u{1F469}\u{1F3FC}\u200D\u{1F3A4}'));
assertTrue(re.test('\u{1F469}\u{1F3FC}\u200D\u{1F3A8}'));
assertTrue(re.test('\u{1F469}\u{1F3FC}\u200D\u{1F3EB}'));
assertTrue(re.test('\u{1F469}\u{1F3FC}\u200D\u{1F3ED}'));
assertTrue(re.test('\u{1F469}\u{1F3FC}\u200D\u{1F4BB}'));
assertTrue(re.test('\u{1F469}\u{1F3FC}\u200D\u{1F4BC}'));
assertTrue(re.test('\u{1F469}\u{1F3FC}\u200D\u{1F527}'));
assertTrue(re.test('\u{1F469}\u{1F3FC}\u200D\u{1F52C}'));
assertTrue(re.test('\u{1F469}\u{1F3FC}\u200D\u{1F680}'));
assertTrue(re.test('\u{1F469}\u{1F3FC}\u200D\u{1F692}'));
assertTrue(re.test('\u{1F469}\u{1F3FC}\u200D\u{1F9AF}'));
assertTrue(re.test('\u{1F469}\u{1F3FC}\u200D\u{1F9BC}'));
assertTrue(re.test('\u{1F469}\u{1F3FC}\u200D\u{1F9BD}'));
assertTrue(re.test('\u{1F469}\u{1F3FD}\u200D\u2695\uFE0F'));
assertTrue(re.test('\u{1F469}\u{1F3FD}\u200D\u2696\uFE0F'));
assertTrue(re.test('\u{1F469}\u{1F3FD}\u200D\u2708\uFE0F'));
assertTrue(re.test('\u{1F469}\u{1F3FD}\u200D\u{1F33E}'));
assertTrue(re.test('\u{1F469}\u{1F3FD}\u200D\u{1F373}'));
assertTrue(re.test('\u{1F469}\u{1F3FD}\u200D\u{1F393}'));
assertTrue(re.test('\u{1F469}\u{1F3FD}\u200D\u{1F3A4}'));
assertTrue(re.test('\u{1F469}\u{1F3FD}\u200D\u{1F3A8}'));
assertTrue(re.test('\u{1F469}\u{1F3FD}\u200D\u{1F3EB}'));
assertTrue(re.test('\u{1F469}\u{1F3FD}\u200D\u{1F3ED}'));
assertTrue(re.test('\u{1F469}\u{1F3FD}\u200D\u{1F4BB}'));
assertTrue(re.test('\u{1F469}\u{1F3FD}\u200D\u{1F4BC}'));
assertTrue(re.test('\u{1F469}\u{1F3FD}\u200D\u{1F527}'));
assertTrue(re.test('\u{1F469}\u{1F3FD}\u200D\u{1F52C}'));
assertTrue(re.test('\u{1F469}\u{1F3FD}\u200D\u{1F680}'));
assertTrue(re.test('\u{1F469}\u{1F3FD}\u200D\u{1F692}'));
assertTrue(re.test('\u{1F469}\u{1F3FD}\u200D\u{1F9AF}'));
assertTrue(re.test('\u{1F469}\u{1F3FD}\u200D\u{1F9BC}'));
assertTrue(re.test('\u{1F469}\u{1F3FD}\u200D\u{1F9BD}'));
assertTrue(re.test('\u{1F469}\u{1F3FE}\u200D\u2695\uFE0F'));
assertTrue(re.test('\u{1F469}\u{1F3FE}\u200D\u2696\uFE0F'));
assertTrue(re.test('\u{1F469}\u{1F3FE}\u200D\u2708\uFE0F'));
assertTrue(re.test('\u{1F469}\u{1F3FE}\u200D\u{1F33E}'));
assertTrue(re.test('\u{1F469}\u{1F3FE}\u200D\u{1F373}'));
assertTrue(re.test('\u{1F469}\u{1F3FE}\u200D\u{1F393}'));
assertTrue(re.test('\u{1F469}\u{1F3FE}\u200D\u{1F3A4}'));
assertTrue(re.test('\u{1F469}\u{1F3FE}\u200D\u{1F3A8}'));
assertTrue(re.test('\u{1F469}\u{1F3FE}\u200D\u{1F3EB}'));
assertTrue(re.test('\u{1F469}\u{1F3FE}\u200D\u{1F3ED}'));
assertTrue(re.test('\u{1F469}\u{1F3FE}\u200D\u{1F4BB}'));
assertTrue(re.test('\u{1F469}\u{1F3FE}\u200D\u{1F4BC}'));
assertTrue(re.test('\u{1F469}\u{1F3FE}\u200D\u{1F527}'));
assertTrue(re.test('\u{1F469}\u{1F3FE}\u200D\u{1F52C}'));
assertTrue(re.test('\u{1F469}\u{1F3FE}\u200D\u{1F680}'));
assertTrue(re.test('\u{1F469}\u{1F3FE}\u200D\u{1F692}'));
assertTrue(re.test('\u{1F469}\u{1F3FE}\u200D\u{1F9AF}'));
assertTrue(re.test('\u{1F469}\u{1F3FE}\u200D\u{1F9BC}'));
assertTrue(re.test('\u{1F469}\u{1F3FE}\u200D\u{1F9BD}'));
assertTrue(re.test('\u{1F469}\u{1F3FF}\u200D\u2695\uFE0F'));
assertTrue(re.test('\u{1F469}\u{1F3FF}\u200D\u2696\uFE0F'));
assertTrue(re.test('\u{1F469}\u{1F3FF}\u200D\u2708\uFE0F'));
assertTrue(re.test('\u{1F469}\u{1F3FF}\u200D\u{1F33E}'));
assertTrue(re.test('\u{1F469}\u{1F3FF}\u200D\u{1F373}'));
assertTrue(re.test('\u{1F469}\u{1F3FF}\u200D\u{1F393}'));
assertTrue(re.test('\u{1F469}\u{1F3FF}\u200D\u{1F3A4}'));
assertTrue(re.test('\u{1F469}\u{1F3FF}\u200D\u{1F3A8}'));
assertTrue(re.test('\u{1F469}\u{1F3FF}\u200D\u{1F3EB}'));
assertTrue(re.test('\u{1F469}\u{1F3FF}\u200D\u{1F3ED}'));
assertTrue(re.test('\u{1F469}\u{1F3FF}\u200D\u{1F4BB}'));
assertTrue(re.test('\u{1F469}\u{1F3FF}\u200D\u{1F4BC}'));
assertTrue(re.test('\u{1F469}\u{1F3FF}\u200D\u{1F527}'));
assertTrue(re.test('\u{1F469}\u{1F3FF}\u200D\u{1F52C}'));
assertTrue(re.test('\u{1F469}\u{1F3FF}\u200D\u{1F680}'));
assertTrue(re.test('\u{1F469}\u{1F3FF}\u200D\u{1F692}'));
assertTrue(re.test('\u{1F469}\u{1F3FF}\u200D\u{1F9AF}'));
assertTrue(re.test('\u{1F469}\u{1F3FF}\u200D\u{1F9BC}'));
assertTrue(re.test('\u{1F469}\u{1F3FF}\u200D\u{1F9BD}'));
assertTrue(re.test('\u26F9\u{1F3FB}\u200D\u2640\uFE0F'));
assertTrue(re.test('\u26F9\u{1F3FB}\u200D\u2642\uFE0F'));
assertTrue(re.test('\u26F9\u{1F3FC}\u200D\u2640\uFE0F'));
assertTrue(re.test('\u26F9\u{1F3FC}\u200D\u2642\uFE0F'));
assertTrue(re.test('\u26F9\u{1F3FD}\u200D\u2640\uFE0F'));
assertTrue(re.test('\u26F9\u{1F3FD}\u200D\u2642\uFE0F'));
assertTrue(re.test('\u26F9\u{1F3FE}\u200D\u2640\uFE0F'));
assertTrue(re.test('\u26F9\u{1F3FE}\u200D\u2642\uFE0F'));
assertTrue(re.test('\u26F9\u{1F3FF}\u200D\u2640\uFE0F'));
assertTrue(re.test('\u26F9\u{1F3FF}\u200D\u2642\uFE0F'));
assertTrue(re.test('\u26F9\uFE0F\u200D\u2640\uFE0F'));
assertTrue(re.test('\u26F9\uFE0F\u200D\u2642\uFE0F'));
assertTrue(re.test('\u{1F3C3}\u200D\u2640\uFE0F'));
assertTrue(re.test('\u{1F3C3}\u200D\u2642\uFE0F'));
assertTrue(re.test('\u{1F3C3}\u{1F3FB}\u200D\u2640\uFE0F'));
assertTrue(re.test('\u{1F3C3}\u{1F3FB}\u200D\u2642\uFE0F'));
assertTrue(re.test('\u{1F3C3}\u{1F3FC}\u200D\u2640\uFE0F'));
assertTrue(re.test('\u{1F3C3}\u{1F3FC}\u200D\u2642\uFE0F'));
assertTrue(re.test('\u{1F3C3}\u{1F3FD}\u200D\u2640\uFE0F'));
assertTrue(re.test('\u{1F3C3}\u{1F3FD}\u200D\u2642\uFE0F'));
assertTrue(re.test('\u{1F3C3}\u{1F3FE}\u200D\u2640\uFE0F'));
assertTrue(re.test('\u{1F3C3}\u{1F3FE}\u200D\u2642\uFE0F'));
assertTrue(re.test('\u{1F3C3}\u{1F3FF}\u200D\u2640\uFE0F'));
assertTrue(re.test('\u{1F3C3}\u{1F3FF}\u200D\u2642\uFE0F'));
assertTrue(re.test('\u{1F3C4}\u200D\u2640\uFE0F'));
assertTrue(re.test('\u{1F3C4}\u200D\u2642\uFE0F'));
assertTrue(re.test('\u{1F3C4}\u{1F3FB}\u200D\u2640\uFE0F'));
assertTrue(re.test('\u{1F3C4}\u{1F3FB}\u200D\u2642\uFE0F'));
assertTrue(re.test('\u{1F3C4}\u{1F3FC}\u200D\u2640\uFE0F'));
assertTrue(re.test('\u{1F3C4}\u{1F3FC}\u200D\u2642\uFE0F'));
assertTrue(re.test('\u{1F3C4}\u{1F3FD}\u200D\u2640\uFE0F'));
assertTrue(re.test('\u{1F3C4}\u{1F3FD}\u200D\u2642\uFE0F'));
assertTrue(re.test('\u{1F3C4}\u{1F3FE}\u200D\u2640\uFE0F'));
assertTrue(re.test('\u{1F3C4}\u{1F3FE}\u200D\u2642\uFE0F'));
assertTrue(re.test('\u{1F3C4}\u{1F3FF}\u200D\u2640\uFE0F'));
assertTrue(re.test('\u{1F3C4}\u{1F3FF}\u200D\u2642\uFE0F'));
assertTrue(re.test('\u{1F3CA}\u200D\u2640\uFE0F'));
assertTrue(re.test('\u{1F3CA}\u200D\u2642\uFE0F'));
assertTrue(re.test('\u{1F3CA}\u{1F3FB}\u200D\u2640\uFE0F'));
assertTrue(re.test('\u{1F3CA}\u{1F3FB}\u200D\u2642\uFE0F'));
assertTrue(re.test('\u{1F3CA}\u{1F3FC}\u200D\u2640\uFE0F'));
assertTrue(re.test('\u{1F3CA}\u{1F3FC}\u200D\u2642\uFE0F'));
assertTrue(re.test('\u{1F3CA}\u{1F3FD}\u200D\u2640\uFE0F'));
assertTrue(re.test('\u{1F3CA}\u{1F3FD}\u200D\u2642\uFE0F'));
assertTrue(re.test('\u{1F3CA}\u{1F3FE}\u200D\u2640\uFE0F'));
assertTrue(re.test('\u{1F3CA}\u{1F3FE}\u200D\u2642\uFE0F'));
assertTrue(re.test('\u{1F3CA}\u{1F3FF}\u200D\u2640\uFE0F'));
assertTrue(re.test('\u{1F3CA}\u{1F3FF}\u200D\u2642\uFE0F'));
assertTrue(re.test('\u{1F3CB}\u{1F3FB}\u200D\u2640\uFE0F'));
assertTrue(re.test('\u{1F3CB}\u{1F3FB}\u200D\u2642\uFE0F'));
assertTrue(re.test('\u{1F3CB}\u{1F3FC}\u200D\u2640\uFE0F'));
assertTrue(re.test('\u{1F3CB}\u{1F3FC}\u200D\u2642\uFE0F'));
assertTrue(re.test('\u{1F3CB}\u{1F3FD}\u200D\u2640\uFE0F'));
assertTrue(re.test('\u{1F3CB}\u{1F3FD}\u200D\u2642\uFE0F'));
assertTrue(re.test('\u{1F3CB}\u{1F3FE}\u200D\u2640\uFE0F'));
assertTrue(re.test('\u{1F3CB}\u{1F3FE}\u200D\u2642\uFE0F'));
assertTrue(re.test('\u{1F3CB}\u{1F3FF}\u200D\u2640\uFE0F'));
assertTrue(re.test('\u{1F3CB}\u{1F3FF}\u200D\u2642\uFE0F'));
assertTrue(re.test('\u{1F3CB}\uFE0F\u200D\u2640\uFE0F'));
assertTrue(re.test('\u{1F3CB}\uFE0F\u200D\u2642\uFE0F'));
assertTrue(re.test('\u{1F3CC}\u{1F3FB}\u200D\u2640\uFE0F'));
assertTrue(re.test('\u{1F3CC}\u{1F3FB}\u200D\u2642\uFE0F'));
assertTrue(re.test('\u{1F3CC}\u{1F3FC}\u200D\u2640\uFE0F'));
assertTrue(re.test('\u{1F3CC}\u{1F3FC}\u200D\u2642\uFE0F'));
assertTrue(re.test('\u{1F3CC}\u{1F3FD}\u200D\u2640\uFE0F'));
assertTrue(re.test('\u{1F3CC}\u{1F3FD}\u200D\u2642\uFE0F'));
assertTrue(re.test('\u{1F3CC}\u{1F3FE}\u200D\u2640\uFE0F'));
assertTrue(re.test('\u{1F3CC}\u{1F3FE}\u200D\u2642\uFE0F'));
assertTrue(re.test('\u{1F3CC}\u{1F3FF}\u200D\u2640\uFE0F'));
assertTrue(re.test('\u{1F3CC}\u{1F3FF}\u200D\u2642\uFE0F'));
assertTrue(re.test('\u{1F3CC}\uFE0F\u200D\u2640\uFE0F'));
assertTrue(re.test('\u{1F3CC}\uFE0F\u200D\u2642\uFE0F'));
assertTrue(re.test('\u{1F46E}\u200D\u2640\uFE0F'));
assertTrue(re.test('\u{1F46E}\u200D\u2642\uFE0F'));
assertTrue(re.test('\u{1F46E}\u{1F3FB}\u200D\u2640\uFE0F'));
assertTrue(re.test('\u{1F46E}\u{1F3FB}\u200D\u2642\uFE0F'));
assertTrue(re.test('\u{1F46E}\u{1F3FC}\u200D\u2640\uFE0F'));
assertTrue(re.test('\u{1F46E}\u{1F3FC}\u200D\u2642\uFE0F'));
assertTrue(re.test('\u{1F46E}\u{1F3FD}\u200D\u2640\uFE0F'));
assertTrue(re.test('\u{1F46E}\u{1F3FD}\u200D\u2642\uFE0F'));
assertTrue(re.test('\u{1F46E}\u{1F3FE}\u200D\u2640\uFE0F'));
assertTrue(re.test('\u{1F46E}\u{1F3FE}\u200D\u2642\uFE0F'));
assertTrue(re.test('\u{1F46E}\u{1F3FF}\u200D\u2640\uFE0F'));
assertTrue(re.test('\u{1F46E}\u{1F3FF}\u200D\u2642\uFE0F'));
assertTrue(re.test('\u{1F46F}\u200D\u2640\uFE0F'));
assertTrue(re.test('\u{1F46F}\u200D\u2642\uFE0F'));
assertTrue(re.test('\u{1F471}\u200D\u2640\uFE0F'));
assertTrue(re.test('\u{1F471}\u200D\u2642\uFE0F'));
assertTrue(re.test('\u{1F471}\u{1F3FB}\u200D\u2640\uFE0F'));
assertTrue(re.test('\u{1F471}\u{1F3FB}\u200D\u2642\uFE0F'));
assertTrue(re.test('\u{1F471}\u{1F3FC}\u200D\u2640\uFE0F'));
assertTrue(re.test('\u{1F471}\u{1F3FC}\u200D\u2642\uFE0F'));
assertTrue(re.test('\u{1F471}\u{1F3FD}\u200D\u2640\uFE0F'));
assertTrue(re.test('\u{1F471}\u{1F3FD}\u200D\u2642\uFE0F'));
assertTrue(re.test('\u{1F471}\u{1F3FE}\u200D\u2640\uFE0F'));
assertTrue(re.test('\u{1F471}\u{1F3FE}\u200D\u2642\uFE0F'));
assertTrue(re.test('\u{1F471}\u{1F3FF}\u200D\u2640\uFE0F'));
assertTrue(re.test('\u{1F471}\u{1F3FF}\u200D\u2642\uFE0F'));
assertTrue(re.test('\u{1F473}\u200D\u2640\uFE0F'));
assertTrue(re.test('\u{1F473}\u200D\u2642\uFE0F'));
assertTrue(re.test('\u{1F473}\u{1F3FB}\u200D\u2640\uFE0F'));
assertTrue(re.test('\u{1F473}\u{1F3FB}\u200D\u2642\uFE0F'));
assertTrue(re.test('\u{1F473}\u{1F3FC}\u200D\u2640\uFE0F'));
assertTrue(re.test('\u{1F473}\u{1F3FC}\u200D\u2642\uFE0F'));
assertTrue(re.test('\u{1F473}\u{1F3FD}\u200D\u2640\uFE0F'));
assertTrue(re.test('\u{1F473}\u{1F3FD}\u200D\u2642\uFE0F'));
assertTrue(re.test('\u{1F473}\u{1F3FE}\u200D\u2640\uFE0F'));
assertTrue(re.test('\u{1F473}\u{1F3FE}\u200D\u2642\uFE0F'));
assertTrue(re.test('\u{1F473}\u{1F3FF}\u200D\u2640\uFE0F'));
assertTrue(re.test('\u{1F473}\u{1F3FF}\u200D\u2642\uFE0F'));
assertTrue(re.test('\u{1F477}\u200D\u2640\uFE0F'));
assertTrue(re.test('\u{1F477}\u200D\u2642\uFE0F'));
assertTrue(re.test('\u{1F477}\u{1F3FB}\u200D\u2640\uFE0F'));
assertTrue(re.test('\u{1F477}\u{1F3FB}\u200D\u2642\uFE0F'));
assertTrue(re.test('\u{1F477}\u{1F3FC}\u200D\u2640\uFE0F'));
assertTrue(re.test('\u{1F477}\u{1F3FC}\u200D\u2642\uFE0F'));
assertTrue(re.test('\u{1F477}\u{1F3FD}\u200D\u2640\uFE0F'));
assertTrue(re.test('\u{1F477}\u{1F3FD}\u200D\u2642\uFE0F'));
assertTrue(re.test('\u{1F477}\u{1F3FE}\u200D\u2640\uFE0F'));
assertTrue(re.test('\u{1F477}\u{1F3FE}\u200D\u2642\uFE0F'));
assertTrue(re.test('\u{1F477}\u{1F3FF}\u200D\u2640\uFE0F'));
assertTrue(re.test('\u{1F477}\u{1F3FF}\u200D\u2642\uFE0F'));
assertTrue(re.test('\u{1F481}\u200D\u2640\uFE0F'));
assertTrue(re.test('\u{1F481}\u200D\u2642\uFE0F'));
assertTrue(re.test('\u{1F481}\u{1F3FB}\u200D\u2640\uFE0F'));
assertTrue(re.test('\u{1F481}\u{1F3FB}\u200D\u2642\uFE0F'));
assertTrue(re.test('\u{1F481}\u{1F3FC}\u200D\u2640\uFE0F'));
assertTrue(re.test('\u{1F481}\u{1F3FC}\u200D\u2642\uFE0F'));
assertTrue(re.test('\u{1F481}\u{1F3FD}\u200D\u2640\uFE0F'));
assertTrue(re.test('\u{1F481}\u{1F3FD}\u200D\u2642\uFE0F'));
assertTrue(re.test('\u{1F481}\u{1F3FE}\u200D\u2640\uFE0F'));
assertTrue(re.test('\u{1F481}\u{1F3FE}\u200D\u2642\uFE0F'));
assertTrue(re.test('\u{1F481}\u{1F3FF}\u200D\u2640\uFE0F'));
assertTrue(re.test('\u{1F481}\u{1F3FF}\u200D\u2642\uFE0F'));
assertTrue(re.test('\u{1F482}\u200D\u2640\uFE0F'));
assertTrue(re.test('\u{1F482}\u200D\u2642\uFE0F'));
assertTrue(re.test('\u{1F468}\u200D\u2764\uFE0F\u200D\u{1F48B}\u200D\u{1F468}'));
assertTrue(re.test('\u{1F482}\u{1F3FB}\u200D\u2642\uFE0F'));
assertTrue(re.test('\u{1F482}\u{1F3FC}\u200D\u2640\uFE0F'));
assertTrue(re.test('\u{1F482}\u{1F3FC}\u200D\u2642\uFE0F'));
assertTrue(re.test('\u{1F482}\u{1F3FD}\u200D\u2640\uFE0F'));
assertTrue(re.test('\u{1F482}\u{1F3FD}\u200D\u2642\uFE0F'));
assertTrue(re.test('\u{1F482}\u{1F3FE}\u200D\u2640\uFE0F'));
assertTrue(re.test('\u{1F482}\u{1F3FE}\u200D\u2642\uFE0F'));
assertTrue(re.test('\u{1F482}\u{1F3FF}\u200D\u2640\uFE0F'));
assertTrue(re.test('\u{1F482}\u{1F3FF}\u200D\u2642\uFE0F'));
assertTrue(re.test('\u{1F486}\u200D\u2640\uFE0F'));
assertTrue(re.test('\u{1F486}\u200D\u2642\uFE0F'));
assertTrue(re.test('\u{1F486}\u{1F3FB}\u200D\u2640\uFE0F'));
assertTrue(re.test('\u{1F486}\u{1F3FB}\u200D\u2642\uFE0F'));
assertTrue(re.test('\u{1F486}\u{1F3FC}\u200D\u2640\uFE0F'));
assertTrue(re.test('\u{1F486}\u{1F3FC}\u200D\u2642\uFE0F'));
assertTrue(re.test('\u{1F486}\u{1F3FD}\u200D\u2640\uFE0F'));
assertTrue(re.test('\u{1F486}\u{1F3FD}\u200D\u2642\uFE0F'));
assertTrue(re.test('\u{1F486}\u{1F3FE}\u200D\u2640\uFE0F'));
assertTrue(re.test('\u{1F486}\u{1F3FE}\u200D\u2642\uFE0F'));
assertTrue(re.test('\u{1F486}\u{1F3FF}\u200D\u2640\uFE0F'));
assertTrue(re.test('\u{1F486}\u{1F3FF}\u200D\u2642\uFE0F'));
assertTrue(re.test('\u{1F487}\u200D\u2640\uFE0F'));
assertTrue(re.test('\u{1F487}\u200D\u2642\uFE0F'));
assertTrue(re.test('\u{1F487}\u{1F3FB}\u200D\u2640\uFE0F'));
assertTrue(re.test('\u{1F487}\u{1F3FB}\u200D\u2642\uFE0F'));
assertTrue(re.test('\u{1F487}\u{1F3FC}\u200D\u2640\uFE0F'));
assertTrue(re.test('\u{1F487}\u{1F3FC}\u200D\u2642\uFE0F'));
assertTrue(re.test('\u{1F487}\u{1F3FD}\u200D\u2640\uFE0F'));
assertTrue(re.test('\u{1F487}\u{1F3FD}\u200D\u2642\uFE0F'));
assertTrue(re.test('\u{1F487}\u{1F3FE}\u200D\u2640\uFE0F'));
assertTrue(re.test('\u{1F487}\u{1F3FE}\u200D\u2642\uFE0F'));
assertTrue(re.test('\u{1F487}\u{1F3FF}\u200D\u2640\uFE0F'));
assertTrue(re.test('\u{1F487}\u{1F3FF}\u200D\u2642\uFE0F'));
assertTrue(re.test('\u{1F575}\u{1F3FB}\u200D\u2640\uFE0F'));
assertTrue(re.test('\u{1F575}\u{1F3FB}\u200D\u2642\uFE0F'));
assertTrue(re.test('\u{1F575}\u{1F3FC}\u200D\u2640\uFE0F'));
assertTrue(re.test('\u{1F575}\u{1F3FC}\u200D\u2642\uFE0F'));
assertTrue(re.test('\u{1F575}\u{1F3FD}\u200D\u2640\uFE0F'));
assertTrue(re.test('\u{1F575}\u{1F3FD}\u200D\u2642\uFE0F'));
assertTrue(re.test('\u{1F575}\u{1F3FE}\u200D\u2640\uFE0F'));
assertTrue(re.test('\u{1F575}\u{1F3FE}\u200D\u2642\uFE0F'));
assertTrue(re.test('\u{1F575}\u{1F3FF}\u200D\u2640\uFE0F'));
assertTrue(re.test('\u{1F575}\u{1F3FF}\u200D\u2642\uFE0F'));
assertTrue(re.test('\u{1F575}\uFE0F\u200D\u2640\uFE0F'));
assertTrue(re.test('\u{1F575}\uFE0F\u200D\u2642\uFE0F'));
assertTrue(re.test('\u{1F645}\u200D\u2640\uFE0F'));
assertTrue(re.test('\u{1F645}\u200D\u2642\uFE0F'));
assertTrue(re.test('\u{1F645}\u{1F3FB}\u200D\u2640\uFE0F'));
assertTrue(re.test('\u{1F645}\u{1F3FB}\u200D\u2642\uFE0F'));
assertTrue(re.test('\u{1F645}\u{1F3FC}\u200D\u2640\uFE0F'));
assertTrue(re.test('\u{1F645}\u{1F3FC}\u200D\u2642\uFE0F'));
assertTrue(re.test('\u{1F645}\u{1F3FD}\u200D\u2640\uFE0F'));
assertTrue(re.test('\u{1F645}\u{1F3FD}\u200D\u2642\uFE0F'));
assertTrue(re.test('\u{1F645}\u{1F3FE}\u200D\u2640\uFE0F'));
assertTrue(re.test('\u{1F645}\u{1F3FE}\u200D\u2642\uFE0F'));
assertTrue(re.test('\u{1F645}\u{1F3FF}\u200D\u2640\uFE0F'));
assertTrue(re.test('\u{1F645}\u{1F3FF}\u200D\u2642\uFE0F'));
assertTrue(re.test('\u{1F646}\u200D\u2640\uFE0F'));
assertTrue(re.test('\u{1F646}\u200D\u2642\uFE0F'));
assertTrue(re.test('\u{1F646}\u{1F3FB}\u200D\u2640\uFE0F'));
assertTrue(re.test('\u{1F646}\u{1F3FB}\u200D\u2642\uFE0F'));
assertTrue(re.test('\u{1F646}\u{1F3FC}\u200D\u2640\uFE0F'));
assertTrue(re.test('\u{1F646}\u{1F3FC}\u200D\u2642\uFE0F'));
assertTrue(re.test('\u{1F646}\u{1F3FD}\u200D\u2640\uFE0F'));
assertTrue(re.test('\u{1F646}\u{1F3FD}\u200D\u2642\uFE0F'));
assertTrue(re.test('\u{1F646}\u{1F3FE}\u200D\u2640\uFE0F'));
assertTrue(re.test('\u{1F646}\u{1F3FE}\u200D\u2642\uFE0F'));
assertTrue(re.test('\u{1F646}\u{1F3FF}\u200D\u2640\uFE0F'));
assertTrue(re.test('\u{1F646}\u{1F3FF}\u200D\u2642\uFE0F'));
assertTrue(re.test('\u{1F647}\u200D\u2640\uFE0F'));
assertTrue(re.test('\u{1F647}\u200D\u2642\uFE0F'));
assertTrue(re.test('\u{1F647}\u{1F3FB}\u200D\u2640\uFE0F'));
assertTrue(re.test('\u{1F647}\u{1F3FB}\u200D\u2642\uFE0F'));
assertTrue(re.test('\u{1F647}\u{1F3FC}\u200D\u2640\uFE0F'));
assertTrue(re.test('\u{1F647}\u{1F3FC}\u200D\u2642\uFE0F'));
assertTrue(re.test('\u{1F647}\u{1F3FD}\u200D\u2640\uFE0F'));
assertTrue(re.test('\u{1F647}\u{1F3FD}\u200D\u2642\uFE0F'));
assertTrue(re.test('\u{1F647}\u{1F3FE}\u200D\u2640\uFE0F'));
assertTrue(re.test('\u{1F647}\u{1F3FE}\u200D\u2642\uFE0F'));
assertTrue(re.test('\u{1F647}\u{1F3FF}\u200D\u2640\uFE0F'));
assertTrue(re.test('\u{1F647}\u{1F3FF}\u200D\u2642\uFE0F'));
assertTrue(re.test('\u{1F64B}\u200D\u2640\uFE0F'));
assertTrue(re.test('\u{1F64B}\u200D\u2642\uFE0F'));
assertTrue(re.test('\u{1F64B}\u{1F3FB}\u200D\u2640\uFE0F'));
assertTrue(re.test('\u{1F64B}\u{1F3FB}\u200D\u2642\uFE0F'));
assertTrue(re.test('\u{1F64B}\u{1F3FC}\u200D\u2640\uFE0F'));
assertTrue(re.test('\u{1F64B}\u{1F3FC}\u200D\u2642\uFE0F'));
assertTrue(re.test('\u{1F64B}\u{1F3FD}\u200D\u2640\uFE0F'));
assertTrue(re.test('\u{1F64B}\u{1F3FD}\u200D\u2642\uFE0F'));
assertTrue(re.test('\u{1F64B}\u{1F3FE}\u200D\u2640\uFE0F'));
assertTrue(re.test('\u{1F64B}\u{1F3FE}\u200D\u2642\uFE0F'));
assertTrue(re.test('\u{1F64B}\u{1F3FF}\u200D\u2640\uFE0F'));
assertTrue(re.test('\u{1F64B}\u{1F3FF}\u200D\u2642\uFE0F'));
assertTrue(re.test('\u{1F64D}\u200D\u2640\uFE0F'));
assertTrue(re.test('\u{1F64D}\u200D\u2642\uFE0F'));
assertTrue(re.test('\u{1F64D}\u{1F3FB}\u200D\u2640\uFE0F'));
assertTrue(re.test('\u{1F64D}\u{1F3FB}\u200D\u2642\uFE0F'));
assertTrue(re.test('\u{1F64D}\u{1F3FC}\u200D\u2640\uFE0F'));
assertTrue(re.test('\u{1F64D}\u{1F3FC}\u200D\u2642\uFE0F'));
assertTrue(re.test('\u{1F64D}\u{1F3FD}\u200D\u2640\uFE0F'));
assertTrue(re.test('\u{1F64D}\u{1F3FD}\u200D\u2642\uFE0F'));
assertTrue(re.test('\u{1F64D}\u{1F3FE}\u200D\u2640\uFE0F'));
assertTrue(re.test('\u{1F64D}\u{1F3FE}\u200D\u2642\uFE0F'));
assertTrue(re.test('\u{1F64D}\u{1F3FF}\u200D\u2640\uFE0F'));
assertTrue(re.test('\u{1F64D}\u{1F3FF}\u200D\u2642\uFE0F'));
assertTrue(re.test('\u{1F64E}\u200D\u2640\uFE0F'));
assertTrue(re.test('\u{1F64E}\u200D\u2642\uFE0F'));
assertTrue(re.test('\u{1F64E}\u{1F3FB}\u200D\u2640\uFE0F'));
assertTrue(re.test('\u{1F64E}\u{1F3FB}\u200D\u2642\uFE0F'));
assertTrue(re.test('\u{1F64E}\u{1F3FC}\u200D\u2640\uFE0F'));
assertTrue(re.test('\u{1F64E}\u{1F3FC}\u200D\u2642\uFE0F'));
assertTrue(re.test('\u{1F64E}\u{1F3FD}\u200D\u2640\uFE0F'));
assertTrue(re.test('\u{1F64E}\u{1F3FD}\u200D\u2642\uFE0F'));
assertTrue(re.test('\u{1F64E}\u{1F3FE}\u200D\u2640\uFE0F'));
assertTrue(re.test('\u{1F64E}\u{1F3FE}\u200D\u2642\uFE0F'));
assertTrue(re.test('\u{1F64E}\u{1F3FF}\u200D\u2640\uFE0F'));
assertTrue(re.test('\u{1F64E}\u{1F3FF}\u200D\u2642\uFE0F'));
assertTrue(re.test('\u{1F6A3}\u200D\u2640\uFE0F'));
assertTrue(re.test('\u{1F6A3}\u200D\u2642\uFE0F'));
assertTrue(re.test('\u{1F6A3}\u{1F3FB}\u200D\u2640\uFE0F'));
assertTrue(re.test('\u{1F6A3}\u{1F3FB}\u200D\u2642\uFE0F'));
assertTrue(re.test('\u{1F6A3}\u{1F3FC}\u200D\u2640\uFE0F'));
assertTrue(re.test('\u{1F6A3}\u{1F3FC}\u200D\u2642\uFE0F'));
assertTrue(re.test('\u{1F6A3}\u{1F3FD}\u200D\u2640\uFE0F'));
assertTrue(re.test('\u{1F6A3}\u{1F3FD}\u200D\u2642\uFE0F'));
assertTrue(re.test('\u{1F6A3}\u{1F3FE}\u200D\u2640\uFE0F'));
assertTrue(re.test('\u{1F6A3}\u{1F3FE}\u200D\u2642\uFE0F'));
assertTrue(re.test('\u{1F6A3}\u{1F3FF}\u200D\u2640\uFE0F'));
assertTrue(re.test('\u{1F6A3}\u{1F3FF}\u200D\u2642\uFE0F'));
assertTrue(re.test('\u{1F6B4}\u200D\u2640\uFE0F'));
assertTrue(re.test('\u{1F6B4}\u200D\u2642\uFE0F'));
assertTrue(re.test('\u{1F6B4}\u{1F3FB}\u200D\u2640\uFE0F'));
assertTrue(re.test('\u{1F6B4}\u{1F3FB}\u200D\u2642\uFE0F'));
assertTrue(re.test('\u{1F6B4}\u{1F3FC}\u200D\u2640\uFE0F'));
assertTrue(re.test('\u{1F6B4}\u{1F3FC}\u200D\u2642\uFE0F'));
assertTrue(re.test('\u{1F6B4}\u{1F3FD}\u200D\u2640\uFE0F'));
assertTrue(re.test('\u{1F6B4}\u{1F3FD}\u200D\u2642\uFE0F'));
assertTrue(re.test('\u{1F6B4}\u{1F3FE}\u200D\u2640\uFE0F'));
assertTrue(re.test('\u{1F6B4}\u{1F3FE}\u200D\u2642\uFE0F'));
assertTrue(re.test('\u{1F6B4}\u{1F3FF}\u200D\u2640\uFE0F'));
assertTrue(re.test('\u{1F6B4}\u{1F3FF}\u200D\u2642\uFE0F'));
assertTrue(re.test('\u{1F6B5}\u200D\u2640\uFE0F'));
assertTrue(re.test('\u{1F6B5}\u200D\u2642\uFE0F'));
assertTrue(re.test('\u{1F6B5}\u{1F3FB}\u200D\u2640\uFE0F'));
assertTrue(re.test('\u{1F6B5}\u{1F3FB}\u200D\u2642\uFE0F'));
assertTrue(re.test('\u{1F6B5}\u{1F3FC}\u200D\u2640\uFE0F'));
assertTrue(re.test('\u{1F6B5}\u{1F3FC}\u200D\u2642\uFE0F'));
assertTrue(re.test('\u{1F6B5}\u{1F3FD}\u200D\u2640\uFE0F'));
assertTrue(re.test('\u{1F6B5}\u{1F3FD}\u200D\u2642\uFE0F'));
assertTrue(re.test('\u{1F6B5}\u{1F3FE}\u200D\u2640\uFE0F'));
assertTrue(re.test('\u{1F6B5}\u{1F3FE}\u200D\u2642\uFE0F'));
assertTrue(re.test('\u{1F6B5}\u{1F3FF}\u200D\u2640\uFE0F'));
assertTrue(re.test('\u{1F6B5}\u{1F3FF}\u200D\u2642\uFE0F'));
assertTrue(re.test('\u{1F6B6}\u200D\u2640\uFE0F'));
assertTrue(re.test('\u{1F6B6}\u200D\u2642\uFE0F'));
assertTrue(re.test('\u{1F6B6}\u{1F3FB}\u200D\u2640\uFE0F'));
assertTrue(re.test('\u{1F6B6}\u{1F3FB}\u200D\u2642\uFE0F'));
assertTrue(re.test('\u{1F6B6}\u{1F3FC}\u200D\u2640\uFE0F'));
assertTrue(re.test('\u{1F6B6}\u{1F3FC}\u200D\u2642\uFE0F'));
assertTrue(re.test('\u{1F6B6}\u{1F3FD}\u200D\u2640\uFE0F'));
assertTrue(re.test('\u{1F6B6}\u{1F3FD}\u200D\u2642\uFE0F'));
assertTrue(re.test('\u{1F6B6}\u{1F3FE}\u200D\u2640\uFE0F'));
assertTrue(re.test('\u{1F6B6}\u{1F3FE}\u200D\u2642\uFE0F'));
assertTrue(re.test('\u{1F6B6}\u{1F3FF}\u200D\u2640\uFE0F'));
assertTrue(re.test('\u{1F6B6}\u{1F3FF}\u200D\u2642\uFE0F'));
assertTrue(re.test('\u{1F926}\u200D\u2640\uFE0F'));
assertTrue(re.test('\u{1F926}\u200D\u2642\uFE0F'));
assertTrue(re.test('\u{1F926}\u{1F3FB}\u200D\u2640\uFE0F'));
assertTrue(re.test('\u{1F926}\u{1F3FB}\u200D\u2642\uFE0F'));
assertTrue(re.test('\u{1F926}\u{1F3FC}\u200D\u2640\uFE0F'));
assertTrue(re.test('\u{1F926}\u{1F3FC}\u200D\u2642\uFE0F'));
assertTrue(re.test('\u{1F926}\u{1F3FD}\u200D\u2640\uFE0F'));
assertTrue(re.test('\u{1F926}\u{1F3FD}\u200D\u2642\uFE0F'));
assertTrue(re.test('\u{1F926}\u{1F3FE}\u200D\u2640\uFE0F'));
assertTrue(re.test('\u{1F926}\u{1F3FE}\u200D\u2642\uFE0F'));
assertTrue(re.test('\u{1F926}\u{1F3FF}\u200D\u2640\uFE0F'));
assertTrue(re.test('\u{1F926}\u{1F3FF}\u200D\u2642\uFE0F'));
assertTrue(re.test('\u{1F937}\u200D\u2640\uFE0F'));
assertTrue(re.test('\u{1F937}\u200D\u2642\uFE0F'));
assertTrue(re.test('\u{1F937}\u{1F3FB}\u200D\u2640\uFE0F'));
assertTrue(re.test('\u{1F937}\u{1F3FB}\u200D\u2642\uFE0F'));
assertTrue(re.test('\u{1F937}\u{1F3FC}\u200D\u2640\uFE0F'));
assertTrue(re.test('\u{1F937}\u{1F3FC}\u200D\u2642\uFE0F'));
assertTrue(re.test('\u{1F937}\u{1F3FD}\u200D\u2640\uFE0F'));
assertTrue(re.test('\u{1F937}\u{1F3FD}\u200D\u2642\uFE0F'));
assertTrue(re.test('\u{1F937}\u{1F3FE}\u200D\u2640\uFE0F'));
assertTrue(re.test('\u{1F937}\u{1F3FE}\u200D\u2642\uFE0F'));
assertTrue(re.test('\u{1F937}\u{1F3FF}\u200D\u2640\uFE0F'));
assertTrue(re.test('\u{1F937}\u{1F3FF}\u200D\u2642\uFE0F'));
assertTrue(re.test('\u{1F938}\u200D\u2640\uFE0F'));
assertTrue(re.test('\u{1F938}\u200D\u2642\uFE0F'));
assertTrue(re.test('\u{1F938}\u{1F3FB}\u200D\u2640\uFE0F'));
assertTrue(re.test('\u{1F938}\u{1F3FB}\u200D\u2642\uFE0F'));
assertTrue(re.test('\u{1F938}\u{1F3FC}\u200D\u2640\uFE0F'));
assertTrue(re.test('\u{1F938}\u{1F3FC}\u200D\u2642\uFE0F'));
assertTrue(re.test('\u{1F938}\u{1F3FD}\u200D\u2640\uFE0F'));
assertTrue(re.test('\u{1F938}\u{1F3FD}\u200D\u2642\uFE0F'));
assertTrue(re.test('\u{1F938}\u{1F3FE}\u200D\u2640\uFE0F'));
assertTrue(re.test('\u{1F938}\u{1F3FE}\u200D\u2642\uFE0F'));
assertTrue(re.test('\u{1F938}\u{1F3FF}\u200D\u2640\uFE0F'));
assertTrue(re.test('\u{1F938}\u{1F3FF}\u200D\u2642\uFE0F'));
assertTrue(re.test('\u{1F939}\u200D\u2640\uFE0F'));
assertTrue(re.test('\u{1F939}\u200D\u2642\uFE0F'));
assertTrue(re.test('\u{1F939}\u{1F3FB}\u200D\u2640\uFE0F'));
assertTrue(re.test('\u{1F939}\u{1F3FB}\u200D\u2642\uFE0F'));
assertTrue(re.test('\u{1F939}\u{1F3FC}\u200D\u2640\uFE0F'));
assertTrue(re.test('\u{1F939}\u{1F3FC}\u200D\u2642\uFE0F'));
assertTrue(re.test('\u{1F939}\u{1F3FD}\u200D\u2640\uFE0F'));
assertTrue(re.test('\u{1F939}\u{1F3FD}\u200D\u2642\uFE0F'));
assertTrue(re.test('\u{1F939}\u{1F3FE}\u200D\u2640\uFE0F'));
assertTrue(re.test('\u{1F939}\u{1F3FE}\u200D\u2642\uFE0F'));
assertTrue(re.test('\u{1F939}\u{1F3FF}\u200D\u2640\uFE0F'));
assertTrue(re.test('\u{1F939}\u{1F3FF}\u200D\u2642\uFE0F'));
assertTrue(re.test('\u{1F93C}\u200D\u2640\uFE0F'));
assertTrue(re.test('\u{1F93C}\u200D\u2642\uFE0F'));
assertTrue(re.test('\u{1F93D}\u200D\u2640\uFE0F'));
assertTrue(re.test('\u{1F93D}\u200D\u2642\uFE0F'));
assertTrue(re.test('\u{1F93D}\u{1F3FB}\u200D\u2640\uFE0F'));
assertTrue(re.test('\u{1F93D}\u{1F3FB}\u200D\u2642\uFE0F'));
assertTrue(re.test('\u{1F93D}\u{1F3FC}\u200D\u2640\uFE0F'));
assertTrue(re.test('\u{1F93D}\u{1F3FC}\u200D\u2642\uFE0F'));
assertTrue(re.test('\u{1F93D}\u{1F3FD}\u200D\u2640\uFE0F'));
assertTrue(re.test('\u{1F93D}\u{1F3FD}\u200D\u2642\uFE0F'));
assertTrue(re.test('\u{1F93D}\u{1F3FE}\u200D\u2640\uFE0F'));
assertTrue(re.test('\u{1F93D}\u{1F3FE}\u200D\u2642\uFE0F'));
assertTrue(re.test('\u{1F93D}\u{1F3FF}\u200D\u2640\uFE0F'));
assertTrue(re.test('\u{1F93D}\u{1F3FF}\u200D\u2642\uFE0F'));
assertTrue(re.test('\u{1F93E}\u200D\u2640\uFE0F'));
assertTrue(re.test('\u{1F93E}\u200D\u2642\uFE0F'));
assertTrue(re.test('\u{1F93E}\u{1F3FB}\u200D\u2640\uFE0F'));
assertTrue(re.test('\u{1F93E}\u{1F3FB}\u200D\u2642\uFE0F'));
assertTrue(re.test('\u{1F93E}\u{1F3FC}\u200D\u2640\uFE0F'));
assertTrue(re.test('\u{1F93E}\u{1F3FC}\u200D\u2642\uFE0F'));
assertTrue(re.test('\u{1F93E}\u{1F3FD}\u200D\u2640\uFE0F'));
assertTrue(re.test('\u{1F93E}\u{1F3FD}\u200D\u2642\uFE0F'));
assertTrue(re.test('\u{1F93E}\u{1F3FE}\u200D\u2640\uFE0F'));
assertTrue(re.test('\u{1F93E}\u{1F3FE}\u200D\u2642\uFE0F'));
assertTrue(re.test('\u{1F93E}\u{1F3FF}\u200D\u2640\uFE0F'));
assertTrue(re.test('\u{1F93E}\u{1F3FF}\u200D\u2642\uFE0F'));
assertTrue(re.test('\u{1F9B8}\u200D\u2640\uFE0F'));
assertTrue(re.test('\u{1F9B8}\u200D\u2642\uFE0F'));
assertTrue(re.test('\u{1F9B8}\u{1F3FB}\u200D\u2640\uFE0F'));
assertTrue(re.test('\u{1F9B8}\u{1F3FB}\u200D\u2642\uFE0F'));
assertTrue(re.test('\u{1F9B8}\u{1F3FC}\u200D\u2640\uFE0F'));
assertTrue(re.test('\u{1F9B8}\u{1F3FC}\u200D\u2642\uFE0F'));
assertTrue(re.test('\u{1F9B8}\u{1F3FD}\u200D\u2640\uFE0F'));
assertTrue(re.test('\u{1F9B8}\u{1F3FD}\u200D\u2642\uFE0F'));
assertTrue(re.test('\u{1F9B8}\u{1F3FE}\u200D\u2640\uFE0F'));
assertTrue(re.test('\u{1F9B8}\u{1F3FE}\u200D\u2642\uFE0F'));
assertTrue(re.test('\u{1F9B8}\u{1F3FF}\u200D\u2640\uFE0F'));
assertTrue(re.test('\u{1F9B8}\u{1F3FF}\u200D\u2642\uFE0F'));
assertTrue(re.test('\u{1F9B9}\u200D\u2640\uFE0F'));
assertTrue(re.test('\u{1F9B9}\u200D\u2642\uFE0F'));
assertTrue(re.test('\u{1F9B9}\u{1F3FB}\u200D\u2640\uFE0F'));
assertTrue(re.test('\u{1F9B9}\u{1F3FB}\u200D\u2642\uFE0F'));
assertTrue(re.test('\u{1F9B9}\u{1F3FC}\u200D\u2640\uFE0F'));
assertTrue(re.test('\u{1F9B9}\u{1F3FC}\u200D\u2642\uFE0F'));
assertTrue(re.test('\u{1F9B9}\u{1F3FD}\u200D\u2640\uFE0F'));
assertTrue(re.test('\u{1F9B9}\u{1F3FD}\u200D\u2642\uFE0F'));
assertTrue(re.test('\u{1F9B9}\u{1F3FE}\u200D\u2640\uFE0F'));
assertTrue(re.test('\u{1F9B9}\u{1F3FE}\u200D\u2642\uFE0F'));
assertTrue(re.test('\u{1F9B9}\u{1F3FF}\u200D\u2640\uFE0F'));
assertTrue(re.test('\u{1F9B9}\u{1F3FF}\u200D\u2642\uFE0F'));
assertTrue(re.test('\u{1F9CD}\u200D\u2640\uFE0F'));
assertTrue(re.test('\u{1F9CD}\u200D\u2642\uFE0F'));
assertTrue(re.test('\u{1F9CD}\u{1F3FB}\u200D\u2640\uFE0F'));
assertTrue(re.test('\u{1F9CD}\u{1F3FB}\u200D\u2642\uFE0F'));
assertTrue(re.test('\u{1F9CD}\u{1F3FC}\u200D\u2640\uFE0F'));
assertTrue(re.test('\u{1F9CD}\u{1F3FC}\u200D\u2642\uFE0F'));
assertTrue(re.test('\u{1F9CD}\u{1F3FD}\u200D\u2640\uFE0F'));
assertTrue(re.test('\u{1F9CD}\u{1F3FD}\u200D\u2642\uFE0F'));
assertTrue(re.test('\u{1F9CD}\u{1F3FE}\u200D\u2640\uFE0F'));
assertTrue(re.test('\u{1F9CD}\u{1F3FE}\u200D\u2642\uFE0F'));
assertTrue(re.test('\u{1F9CD}\u{1F3FF}\u200D\u2640\uFE0F'));
assertTrue(re.test('\u{1F9CD}\u{1F3FF}\u200D\u2642\uFE0F'));
assertTrue(re.test('\u{1F9CE}\u200D\u2640\uFE0F'));
assertTrue(re.test('\u{1F9CE}\u200D\u2642\uFE0F'));
assertTrue(re.test('\u{1F9CE}\u{1F3FB}\u200D\u2640\uFE0F'));
assertTrue(re.test('\u{1F9CE}\u{1F3FB}\u200D\u2642\uFE0F'));
assertTrue(re.test('\u{1F9CE}\u{1F3FC}\u200D\u2640\uFE0F'));
assertTrue(re.test('\u{1F9CE}\u{1F3FC}\u200D\u2642\uFE0F'));
assertTrue(re.test('\u{1F9CE}\u{1F3FD}\u200D\u2640\uFE0F'));
assertTrue(re.test('\u{1F9CE}\u{1F3FD}\u200D\u2642\uFE0F'));
assertTrue(re.test('\u{1F9CE}\u{1F3FE}\u200D\u2640\uFE0F'));
assertTrue(re.test('\u{1F9CE}\u{1F3FE}\u200D\u2642\uFE0F'));
assertTrue(re.test('\u{1F9CE}\u{1F3FF}\u200D\u2640\uFE0F'));
assertTrue(re.test('\u{1F9CE}\u{1F3FF}\u200D\u2642\uFE0F'));
assertTrue(re.test('\u{1F9CF}\u200D\u2640\uFE0F'));
assertTrue(re.test('\u{1F9CF}\u200D\u2642\uFE0F'));
assertTrue(re.test('\u{1F9CF}\u{1F3FB}\u200D\u2640\uFE0F'));
assertTrue(re.test('\u{1F9CF}\u{1F3FB}\u200D\u2642\uFE0F'));
assertTrue(re.test('\u{1F9CF}\u{1F3FC}\u200D\u2640\uFE0F'));
assertTrue(re.test('\u{1F9CF}\u{1F3FC}\u200D\u2642\uFE0F'));
assertTrue(re.test('\u{1F9CF}\u{1F3FD}\u200D\u2640\uFE0F'));
assertTrue(re.test('\u{1F9CF}\u{1F3FD}\u200D\u2642\uFE0F'));
assertTrue(re.test('\u{1F9CF}\u{1F3FE}\u200D\u2640\uFE0F'));
assertTrue(re.test('\u{1F9CF}\u{1F3FE}\u200D\u2642\uFE0F'));
assertTrue(re.test('\u{1F9CF}\u{1F3FF}\u200D\u2640\uFE0F'));
assertTrue(re.test('\u{1F9CF}\u{1F3FF}\u200D\u2642\uFE0F'));
assertTrue(re.test('\u{1F9D6}\u200D\u2640\uFE0F'));
assertTrue(re.test('\u{1F9D6}\u200D\u2642\uFE0F'));
assertTrue(re.test('\u{1F9D6}\u{1F3FB}\u200D\u2640\uFE0F'));
assertTrue(re.test('\u{1F9D6}\u{1F3FB}\u200D\u2642\uFE0F'));
assertTrue(re.test('\u{1F9D6}\u{1F3FC}\u200D\u2640\uFE0F'));
assertTrue(re.test('\u{1F9D6}\u{1F3FC}\u200D\u2642\uFE0F'));
assertTrue(re.test('\u{1F9D6}\u{1F3FD}\u200D\u2640\uFE0F'));
assertTrue(re.test('\u{1F9D6}\u{1F3FD}\u200D\u2642\uFE0F'));
assertTrue(re.test('\u{1F9D6}\u{1F3FE}\u200D\u2640\uFE0F'));
assertTrue(re.test('\u{1F9D6}\u{1F3FE}\u200D\u2642\uFE0F'));
assertTrue(re.test('\u{1F9D6}\u{1F3FF}\u200D\u2640\uFE0F'));
assertTrue(re.test('\u{1F9D6}\u{1F3FF}\u200D\u2642\uFE0F'));
assertTrue(re.test('\u{1F9D7}\u200D\u2640\uFE0F'));
assertTrue(re.test('\u{1F9D7}\u200D\u2642\uFE0F'));
assertTrue(re.test('\u{1F9D7}\u{1F3FB}\u200D\u2640\uFE0F'));
assertTrue(re.test('\u{1F9D7}\u{1F3FB}\u200D\u2642\uFE0F'));
assertTrue(re.test('\u{1F9D7}\u{1F3FC}\u200D\u2640\uFE0F'));
assertTrue(re.test('\u{1F9D7}\u{1F3FC}\u200D\u2642\uFE0F'));
assertTrue(re.test('\u{1F9D7}\u{1F3FD}\u200D\u2640\uFE0F'));
assertTrue(re.test('\u{1F9D7}\u{1F3FD}\u200D\u2642\uFE0F'));
assertTrue(re.test('\u{1F9D7}\u{1F3FE}\u200D\u2640\uFE0F'));
assertTrue(re.test('\u{1F9D7}\u{1F3FE}\u200D\u2642\uFE0F'));
assertTrue(re.test('\u{1F9D7}\u{1F3FF}\u200D\u2640\uFE0F'));
assertTrue(re.test('\u{1F9D7}\u{1F3FF}\u200D\u2642\uFE0F'));
assertTrue(re.test('\u{1F9D8}\u200D\u2640\uFE0F'));
assertTrue(re.test('\u{1F9D8}\u200D\u2642\uFE0F'));
assertTrue(re.test('\u{1F9D8}\u{1F3FB}\u200D\u2640\uFE0F'));
assertTrue(re.test('\u{1F9D8}\u{1F3FB}\u200D\u2642\uFE0F'));
assertTrue(re.test('\u{1F9D8}\u{1F3FC}\u200D\u2640\uFE0F'));
assertTrue(re.test('\u{1F9D8}\u{1F3FC}\u200D\u2642\uFE0F'));
assertTrue(re.test('\u{1F9D8}\u{1F3FD}\u200D\u2640\uFE0F'));
assertTrue(re.test('\u{1F9D8}\u{1F3FD}\u200D\u2642\uFE0F'));
assertTrue(re.test('\u{1F9D8}\u{1F3FE}\u200D\u2640\uFE0F'));
assertTrue(re.test('\u{1F9D8}\u{1F3FE}\u200D\u2642\uFE0F'));
assertTrue(re.test('\u{1F9D8}\u{1F3FF}\u200D\u2640\uFE0F'));
assertTrue(re.test('\u{1F9D8}\u{1F3FF}\u200D\u2642\uFE0F'));
assertTrue(re.test('\u{1F9D9}\u200D\u2640\uFE0F'));
assertTrue(re.test('\u{1F9D9}\u200D\u2642\uFE0F'));
assertTrue(re.test('\u{1F9D9}\u{1F3FB}\u200D\u2640\uFE0F'));
assertTrue(re.test('\u{1F9D9}\u{1F3FB}\u200D\u2642\uFE0F'));
assertTrue(re.test('\u{1F9D9}\u{1F3FC}\u200D\u2640\uFE0F'));
assertTrue(re.test('\u{1F9D9}\u{1F3FC}\u200D\u2642\uFE0F'));
assertTrue(re.test('\u{1F9D9}\u{1F3FD}\u200D\u2640\uFE0F'));
assertTrue(re.test('\u{1F9D9}\u{1F3FD}\u200D\u2642\uFE0F'));
assertTrue(re.test('\u{1F9D9}\u{1F3FE}\u200D\u2640\uFE0F'));
assertTrue(re.test('\u{1F9D9}\u{1F3FE}\u200D\u2642\uFE0F'));
assertTrue(re.test('\u{1F9D9}\u{1F3FF}\u200D\u2640\uFE0F'));
assertTrue(re.test('\u{1F9D9}\u{1F3FF}\u200D\u2642\uFE0F'));
assertTrue(re.test('\u{1F9DA}\u200D\u2640\uFE0F'));
assertTrue(re.test('\u{1F9DA}\u200D\u2642\uFE0F'));
assertTrue(re.test('\u{1F9DA}\u{1F3FB}\u200D\u2640\uFE0F'));
assertTrue(re.test('\u{1F9DA}\u{1F3FB}\u200D\u2642\uFE0F'));
assertTrue(re.test('\u{1F9DA}\u{1F3FC}\u200D\u2640\uFE0F'));
assertTrue(re.test('\u{1F9DA}\u{1F3FC}\u200D\u2642\uFE0F'));
assertTrue(re.test('\u{1F9DA}\u{1F3FD}\u200D\u2640\uFE0F'));
assertTrue(re.test('\u{1F9DA}\u{1F3FD}\u200D\u2642\uFE0F'));
assertTrue(re.test('\u{1F9DA}\u{1F3FE}\u200D\u2640\uFE0F'));
assertTrue(re.test('\u{1F9DA}\u{1F3FE}\u200D\u2642\uFE0F'));
assertTrue(re.test('\u{1F9DA}\u{1F3FF}\u200D\u2640\uFE0F'));
assertTrue(re.test('\u{1F9DA}\u{1F3FF}\u200D\u2642\uFE0F'));
assertTrue(re.test('\u{1F9DB}\u200D\u2640\uFE0F'));
assertTrue(re.test('\u{1F9DB}\u200D\u2642\uFE0F'));
assertTrue(re.test('\u{1F9DB}\u{1F3FB}\u200D\u2640\uFE0F'));
assertTrue(re.test('\u{1F9DB}\u{1F3FB}\u200D\u2642\uFE0F'));
assertTrue(re.test('\u{1F9DB}\u{1F3FC}\u200D\u2640\uFE0F'));
assertTrue(re.test('\u{1F9DB}\u{1F3FC}\u200D\u2642\uFE0F'));
assertTrue(re.test('\u{1F9DB}\u{1F3FD}\u200D\u2640\uFE0F'));
assertTrue(re.test('\u{1F9DB}\u{1F3FD}\u200D\u2642\uFE0F'));
assertTrue(re.test('\u{1F9DB}\u{1F3FE}\u200D\u2640\uFE0F'));
assertTrue(re.test('\u{1F9DB}\u{1F3FE}\u200D\u2642\uFE0F'));
assertTrue(re.test('\u{1F9DB}\u{1F3FF}\u200D\u2640\uFE0F'));
assertTrue(re.test('\u{1F9DB}\u{1F3FF}\u200D\u2642\uFE0F'));
assertTrue(re.test('\u{1F9DC}\u200D\u2640\uFE0F'));
assertTrue(re.test('\u{1F9DC}\u200D\u2642\uFE0F'));
assertTrue(re.test('\u{1F9DC}\u{1F3FB}\u200D\u2640\uFE0F'));
assertTrue(re.test('\u{1F9DC}\u{1F3FB}\u200D\u2642\uFE0F'));
assertTrue(re.test('\u{1F9DC}\u{1F3FC}\u200D\u2640\uFE0F'));
assertTrue(re.test('\u{1F9DC}\u{1F3FC}\u200D\u2642\uFE0F'));
assertTrue(re.test('\u{1F9DC}\u{1F3FD}\u200D\u2640\uFE0F'));
assertTrue(re.test('\u{1F9DC}\u{1F3FD}\u200D\u2642\uFE0F'));
assertTrue(re.test('\u{1F9DC}\u{1F3FE}\u200D\u2640\uFE0F'));
assertTrue(re.test('\u{1F9DC}\u{1F3FE}\u200D\u2642\uFE0F'));
assertTrue(re.test('\u{1F9DC}\u{1F3FF}\u200D\u2640\uFE0F'));
assertTrue(re.test('\u{1F9DC}\u{1F3FF}\u200D\u2642\uFE0F'));
assertTrue(re.test('\u{1F9DD}\u200D\u2640\uFE0F'));
assertTrue(re.test('\u{1F9DD}\u200D\u2642\uFE0F'));
assertTrue(re.test('\u{1F9DD}\u{1F3FB}\u200D\u2640\uFE0F'));
assertTrue(re.test('\u{1F9DD}\u{1F3FB}\u200D\u2642\uFE0F'));
assertTrue(re.test('\u{1F9DD}\u{1F3FC}\u200D\u2640\uFE0F'));
assertTrue(re.test('\u{1F9DD}\u{1F3FC}\u200D\u2642\uFE0F'));
assertTrue(re.test('\u{1F9DD}\u{1F3FD}\u200D\u2640\uFE0F'));
assertTrue(re.test('\u{1F9DD}\u{1F3FD}\u200D\u2642\uFE0F'));
assertTrue(re.test('\u{1F9DD}\u{1F3FE}\u200D\u2640\uFE0F'));
assertTrue(re.test('\u{1F9DD}\u{1F3FE}\u200D\u2642\uFE0F'));
assertTrue(re.test('\u{1F9DD}\u{1F3FF}\u200D\u2640\uFE0F'));
assertTrue(re.test('\u{1F9DD}\u{1F3FF}\u200D\u2642\uFE0F'));
assertTrue(re.test('\u{1F9DE}\u200D\u2640\uFE0F'));
assertTrue(re.test('\u{1F9DE}\u200D\u2642\uFE0F'));
assertTrue(re.test('\u{1F9DF}\u200D\u2640\uFE0F'));
assertTrue(re.test('\u{1F9DF}\u200D\u2642\uFE0F'));
assertTrue(re.test('\u{1F468}\u200D\u{1F9B0}'));
assertTrue(re.test('\u{1F468}\u200D\u{1F9B1}'));
assertTrue(re.test('\u{1F468}\u200D\u{1F9B2}'));
assertTrue(re.test('\u{1F468}\u200D\u{1F9B3}'));
assertTrue(re.test('\u{1F468}\u{1F3FB}\u200D\u{1F9B0}'));
assertTrue(re.test('\u{1F468}\u{1F3FB}\u200D\u{1F9B1}'));
assertTrue(re.test('\u{1F468}\u{1F3FB}\u200D\u{1F9B2}'));
assertTrue(re.test('\u{1F468}\u{1F3FB}\u200D\u{1F9B3}'));
assertTrue(re.test('\u{1F468}\u{1F3FC}\u200D\u{1F9B0}'));
assertTrue(re.test('\u{1F468}\u{1F3FC}\u200D\u{1F9B1}'));
assertTrue(re.test('\u{1F468}\u{1F3FC}\u200D\u{1F9B2}'));
assertTrue(re.test('\u{1F468}\u{1F3FC}\u200D\u{1F9B3}'));
assertTrue(re.test('\u{1F468}\u{1F3FD}\u200D\u{1F9B0}'));
assertTrue(re.test('\u{1F468}\u{1F3FD}\u200D\u{1F9B1}'));
assertTrue(re.test('\u{1F468}\u{1F3FD}\u200D\u{1F9B2}'));
assertTrue(re.test('\u{1F468}\u{1F3FD}\u200D\u{1F9B3}'));
assertTrue(re.test('\u{1F468}\u{1F3FE}\u200D\u{1F9B0}'));
assertTrue(re.test('\u{1F468}\u{1F3FE}\u200D\u{1F9B1}'));
assertTrue(re.test('\u{1F468}\u{1F3FE}\u200D\u{1F9B2}'));
assertTrue(re.test('\u{1F468}\u{1F3FE}\u200D\u{1F9B3}'));
assertTrue(re.test('\u{1F468}\u{1F3FF}\u200D\u{1F9B0}'));
assertTrue(re.test('\u{1F468}\u{1F3FF}\u200D\u{1F9B1}'));
assertTrue(re.test('\u{1F468}\u{1F3FF}\u200D\u{1F9B2}'));
assertTrue(re.test('\u{1F468}\u{1F3FF}\u200D\u{1F9B3}'));
assertTrue(re.test('\u{1F469}\u200D\u{1F9B0}'));
assertTrue(re.test('\u{1F469}\u200D\u{1F9B1}'));
assertTrue(re.test('\u{1F469}\u200D\u{1F9B2}'));
assertTrue(re.test('\u{1F469}\u200D\u{1F9B3}'));
assertTrue(re.test('\u{1F469}\u{1F3FB}\u200D\u{1F9B0}'));
assertTrue(re.test('\u{1F469}\u{1F3FB}\u200D\u{1F9B1}'));
assertTrue(re.test('\u{1F469}\u{1F3FB}\u200D\u{1F9B2}'));
assertTrue(re.test('\u{1F469}\u{1F3FB}\u200D\u{1F9B3}'));
assertTrue(re.test('\u{1F469}\u{1F3FC}\u200D\u{1F9B0}'));
assertTrue(re.test('\u{1F469}\u{1F3FC}\u200D\u{1F9B1}'));
assertTrue(re.test('\u{1F469}\u{1F3FC}\u200D\u{1F9B2}'));
assertTrue(re.test('\u{1F469}\u{1F3FC}\u200D\u{1F9B3}'));
assertTrue(re.test('\u{1F469}\u{1F3FD}\u200D\u{1F9B0}'));
assertTrue(re.test('\u{1F469}\u{1F3FD}\u200D\u{1F9B1}'));
assertTrue(re.test('\u{1F469}\u{1F3FD}\u200D\u{1F9B2}'));
assertTrue(re.test('\u{1F469}\u{1F3FD}\u200D\u{1F9B3}'));
assertTrue(re.test('\u{1F469}\u{1F3FE}\u200D\u{1F9B0}'));
assertTrue(re.test('\u{1F469}\u{1F3FE}\u200D\u{1F9B1}'));
assertTrue(re.test('\u{1F469}\u{1F3FE}\u200D\u{1F9B2}'));
assertTrue(re.test('\u{1F469}\u{1F3FE}\u200D\u{1F9B3}'));
assertTrue(re.test('\u{1F469}\u{1F3FF}\u200D\u{1F9B0}'));
assertTrue(re.test('\u{1F469}\u{1F3FF}\u200D\u{1F9B1}'));
assertTrue(re.test('\u{1F469}\u{1F3FF}\u200D\u{1F9B2}'));
assertTrue(re.test('\u{1F469}\u{1F3FF}\u200D\u{1F9B3}'));
assertTrue(re.test('\u{1F3F3}\uFE0F\u200D\u{1F308}'));
assertTrue(re.test('\u{1F3F4}\u200D\u2620\uFE0F'));
assertTrue(re.test('\u{1F415}\u200D\u{1F9BA}'));
assertTrue(re.test('\u{1F482}\u{1F3FB}\u200D\u2640\uFE0F'));