about summary refs log tree commit diff
path: root/absl/numeric
diff options
context:
space:
mode:
Diffstat (limited to 'absl/numeric')
-rw-r--r--absl/numeric/BUILD.bazel1
-rw-r--r--absl/numeric/int128.cc5
-rw-r--r--absl/numeric/int128_test.cc73
-rw-r--r--absl/numeric/int128_test_unsigned_ostream_cases.inc880
4 files changed, 889 insertions, 70 deletions
diff --git a/absl/numeric/BUILD.bazel b/absl/numeric/BUILD.bazel
index c118d013c958..26d04774a23c 100644
--- a/absl/numeric/BUILD.bazel
+++ b/absl/numeric/BUILD.bazel
@@ -28,6 +28,7 @@ cc_test(
     size = "small",
     srcs = [
         "int128_test.cc",
+        "int128_test_unsigned_ostream_cases.inc",
     ],
     copts = ABSL_TEST_COPTS,
     deps = [
diff --git a/absl/numeric/int128.cc b/absl/numeric/int128.cc
index 5081def5e1b0..73a8f737af9f 100644
--- a/absl/numeric/int128.cc
+++ b/absl/numeric/int128.cc
@@ -192,9 +192,8 @@ std::ostream& operator<<(std::ostream& o, const uint128& b) {
       rep.append(width - rep.size(), o.fill());
     } else if (adjustfield == std::ios::internal &&
                (flags & std::ios::showbase) &&
-               (flags & std::ios::basefield) != std::ios::dec) {
-      size_t base_size = (flags & std::ios::basefield) == std::ios::hex ? 2 : 1;
-      rep.insert(base_size, width - rep.size(), o.fill());
+               (flags & std::ios::basefield) == std::ios::hex && b != 0) {
+      rep.insert(2, width - rep.size(), o.fill());
     } else {
       rep.insert(0, width - rep.size(), o.fill());
     }
diff --git a/absl/numeric/int128_test.cc b/absl/numeric/int128_test.cc
index 46d5546f9a3e..ce44cd4b93c1 100644
--- a/absl/numeric/int128_test.cc
+++ b/absl/numeric/int128_test.cc
@@ -428,79 +428,18 @@ TEST(Uint128, ConstexprTest) {
 }
 
 TEST(Uint128, OStream) {
-  struct {
+  struct StreamCase {
     absl::uint128 val;
     std::ios_base::fmtflags flags;
     std::streamsize width;
     char fill;
     const char* rep;
-  } cases[] = {
-      // zero with different bases
-      {absl::uint128(0), std::ios::dec, 0, '_', "0"},
-      {absl::uint128(0), std::ios::oct, 0, '_', "0"},
-      {absl::uint128(0), std::ios::hex, 0, '_', "0"},
-      // crossover between lo_ and hi_
-      {absl::MakeUint128(0, -1), std::ios::dec, 0, '_', "18446744073709551615"},
-      {absl::MakeUint128(0, -1), std::ios::oct, 0, '_',
-       "1777777777777777777777"},
-      {absl::MakeUint128(0, -1), std::ios::hex, 0, '_', "ffffffffffffffff"},
-      {absl::MakeUint128(1, 0), std::ios::dec, 0, '_', "18446744073709551616"},
-      {absl::MakeUint128(1, 0), std::ios::oct, 0, '_',
-       "2000000000000000000000"},
-      {absl::MakeUint128(1, 0), std::ios::hex, 0, '_', "10000000000000000"},
-      // just the top bit
-      {absl::MakeUint128(0x8000000000000000, 0), std::ios::dec, 0, '_',
-       "170141183460469231731687303715884105728"},
-      {absl::MakeUint128(0x8000000000000000, 0), std::ios::oct, 0, '_',
-       "2000000000000000000000000000000000000000000"},
-      {absl::MakeUint128(0x8000000000000000, 0), std::ios::hex, 0, '_',
-       "80000000000000000000000000000000"},
-      // maximum absl::uint128 value
-      {absl::MakeUint128(-1, -1), std::ios::dec, 0, '_',
-       "340282366920938463463374607431768211455"},
-      {absl::MakeUint128(-1, -1), std::ios::oct, 0, '_',
-       "3777777777777777777777777777777777777777777"},
-      {absl::MakeUint128(-1, -1), std::ios::hex, 0, '_',
-       "ffffffffffffffffffffffffffffffff"},
-      // uppercase
-      {absl::MakeUint128(-1, -1), std::ios::hex | std::ios::uppercase, 0, '_',
-       "FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF"},
-      // showbase
-      {absl::uint128(1), std::ios::dec | std::ios::showbase, 0, '_', "1"},
-      {absl::uint128(1), std::ios::oct | std::ios::showbase, 0, '_', "01"},
-      {absl::uint128(1), std::ios::hex | std::ios::showbase, 0, '_', "0x1"},
-      // showbase does nothing on zero
-      {absl::uint128(0), std::ios::dec | std::ios::showbase, 0, '_', "0"},
-      {absl::uint128(0), std::ios::oct | std::ios::showbase, 0, '_', "0"},
-      {absl::uint128(0), std::ios::hex | std::ios::showbase, 0, '_', "0"},
-      // showpos does nothing on unsigned types
-      {absl::uint128(1), std::ios::dec | std::ios::showpos, 0, '_', "1"},
-      // right adjustment
-      {absl::uint128(9), std::ios::dec, 6, '_', "_____9"},
-      {absl::uint128(12345), std::ios::dec, 6, '_', "_12345"},
-      {absl::uint128(31), std::ios::hex | std::ios::showbase, 6, '_', "__0x1f"},
-      {absl::uint128(7), std::ios::oct | std::ios::showbase, 6, '_', "____07"},
-      // left adjustment
-      {absl::uint128(9), std::ios::dec | std::ios::left, 6, '_', "9_____"},
-      {absl::uint128(12345), std::ios::dec | std::ios::left, 6, '_', "12345_"},
-      {absl::uint128(31), std::ios::hex | std::ios::left | std::ios::showbase,
-       6, '_', "0x1f__"},
-      {absl::uint128(7), std::ios::oct | std::ios::left | std::ios::showbase, 6,
-       '_', "07____"},
-      // internal adjustment
-      {absl::uint128(123),
-       std::ios::dec | std::ios::internal | std::ios::showbase, 6, '_',
-       "___123"},
-      {absl::uint128(31),
-       std::ios::hex | std::ios::internal | std::ios::showbase, 6, '_',
-       "0x__1f"},
-      {absl::uint128(7),
-       std::ios::oct | std::ios::internal | std::ios::showbase, 6, '_',
-       "0____7"},
-      {absl::uint128(34), std::ios::hex | std::ios::internal, 6, '_', "____22"},
-      {absl::uint128(9), std::ios::oct | std::ios::internal, 6, '_', "____11"},
   };
-  for (const auto& test_case : cases) {
+
+  std::vector<StreamCase> cases = {
+#include "absl/numeric/int128_test_unsigned_ostream_cases.inc"
+  };
+  for (const StreamCase& test_case : cases) {
     std::ostringstream os;
     os.flags(test_case.flags);
     os.width(test_case.width);
diff --git a/absl/numeric/int128_test_unsigned_ostream_cases.inc b/absl/numeric/int128_test_unsigned_ostream_cases.inc
new file mode 100644
index 000000000000..7d2fc77f1a91
--- /dev/null
+++ b/absl/numeric/int128_test_unsigned_ostream_cases.inc
@@ -0,0 +1,880 @@
+// A small set of cases created manually for values greater than 2^64.
+
+{absl::MakeUint128(1, 0), std::ios::dec, 0, '_', "18446744073709551616"},
+{absl::MakeUint128(1, 0), std::ios::oct, 0, '_', "2000000000000000000000"},
+{absl::MakeUint128(1, 0), std::ios::hex, 0, '_', "10000000000000000"},
+{absl::MakeUint128(0x8000000000000000, 0), std::ios::dec, 0, '_', "170141183460469231731687303715884105728"},
+{absl::MakeUint128(0x8000000000000000, 0), std::ios::oct, 0, '_', "2000000000000000000000000000000000000000000"},
+{absl::MakeUint128(0x8000000000000000, 0), std::ios::hex, 0, '_', "80000000000000000000000000000000"},
+{absl::MakeUint128(-1, -1), std::ios::dec, 0, '_', "340282366920938463463374607431768211455"},
+{absl::MakeUint128(-1, -1), std::ios::oct, 0, '_', "3777777777777777777777777777777777777777777"},
+{absl::MakeUint128(-1, -1), std::ios::hex, 0, '_', "ffffffffffffffffffffffffffffffff"},
+
+// An exhaustive set of formatting cases generated with select values that fit
+// into a uint64_t so they can be compared to what was output by the standard
+// implementation.
+
+{0, std::ios::dec | std::ios::left, 0, '_', "0"},
+{0, std::ios::dec | std::ios::left, 10, '_', "0_________"},
+{0, std::ios::dec | std::ios::left | std::ios::showpos, 0, '_', "0"},
+{0, std::ios::dec | std::ios::left | std::ios::showpos, 10, '_', "0_________"},
+{0, std::ios::dec | std::ios::left | std::ios::showbase, 0, '_', "0"},
+{0, std::ios::dec | std::ios::left | std::ios::showbase, 10, '_', "0_________"},
+{0, std::ios::dec | std::ios::left | std::ios::showbase | std::ios::showpos, 0, '_', "0"},
+{0, std::ios::dec | std::ios::left | std::ios::showbase | std::ios::showpos, 10, '_', "0_________"},
+{0, std::ios::dec | std::ios::left | std::ios::uppercase, 0, '_', "0"},
+{0, std::ios::dec | std::ios::left | std::ios::uppercase, 10, '_', "0_________"},
+{0, std::ios::dec | std::ios::left | std::ios::uppercase | std::ios::showpos, 0, '_', "0"},
+{0, std::ios::dec | std::ios::left | std::ios::uppercase | std::ios::showpos, 10, '_', "0_________"},
+{0, std::ios::dec | std::ios::left | std::ios::uppercase | std::ios::showbase, 0, '_', "0"},
+{0, std::ios::dec | std::ios::left | std::ios::uppercase | std::ios::showbase, 10, '_', "0_________"},
+{0, std::ios::dec | std::ios::left | std::ios::uppercase | std::ios::showbase | std::ios::showpos, 0, '_', "0"},
+{0, std::ios::dec | std::ios::left | std::ios::uppercase | std::ios::showbase | std::ios::showpos, 10, '_', "0_________"},
+{0, std::ios::dec | std::ios::internal, 0, '_', "0"},
+{0, std::ios::dec | std::ios::internal, 10, '_', "_________0"},
+{0, std::ios::dec | std::ios::internal | std::ios::showpos, 0, '_', "0"},
+{0, std::ios::dec | std::ios::internal | std::ios::showpos, 10, '_', "_________0"},
+{0, std::ios::dec | std::ios::internal | std::ios::showbase, 0, '_', "0"},
+{0, std::ios::dec | std::ios::internal | std::ios::showbase, 10, '_', "_________0"},
+{0, std::ios::dec | std::ios::internal | std::ios::showbase | std::ios::showpos, 0, '_', "0"},
+{0, std::ios::dec | std::ios::internal | std::ios::showbase | std::ios::showpos, 10, '_', "_________0"},
+{0, std::ios::dec | std::ios::internal | std::ios::uppercase, 0, '_', "0"},
+{0, std::ios::dec | std::ios::internal | std::ios::uppercase, 10, '_', "_________0"},
+{0, std::ios::dec | std::ios::internal | std::ios::uppercase | std::ios::showpos, 0, '_', "0"},
+{0, std::ios::dec | std::ios::internal | std::ios::uppercase | std::ios::showpos, 10, '_', "_________0"},
+{0, std::ios::dec | std::ios::internal | std::ios::uppercase | std::ios::showbase, 0, '_', "0"},
+{0, std::ios::dec | std::ios::internal | std::ios::uppercase | std::ios::showbase, 10, '_', "_________0"},
+{0, std::ios::dec | std::ios::internal | std::ios::uppercase | std::ios::showbase | std::ios::showpos, 0, '_', "0"},
+{0, std::ios::dec | std::ios::internal | std::ios::uppercase | std::ios::showbase | std::ios::showpos, 10, '_', "_________0"},
+{0, std::ios::dec | std::ios::right, 0, '_', "0"},
+{0, std::ios::dec | std::ios::right, 10, '_', "_________0"},
+{0, std::ios::dec | std::ios::right | std::ios::showpos, 0, '_', "0"},
+{0, std::ios::dec | std::ios::right | std::ios::showpos, 10, '_', "_________0"},
+{0, std::ios::dec | std::ios::right | std::ios::showbase, 0, '_', "0"},
+{0, std::ios::dec | std::ios::right | std::ios::showbase, 10, '_', "_________0"},
+{0, std::ios::dec | std::ios::right | std::ios::showbase | std::ios::showpos, 0, '_', "0"},
+{0, std::ios::dec | std::ios::right | std::ios::showbase | std::ios::showpos, 10, '_', "_________0"},
+{0, std::ios::dec | std::ios::right | std::ios::uppercase, 0, '_', "0"},
+{0, std::ios::dec | std::ios::right | std::ios::uppercase, 10, '_', "_________0"},
+{0, std::ios::dec | std::ios::right | std::ios::uppercase | std::ios::showpos, 0, '_', "0"},
+{0, std::ios::dec | std::ios::right | std::ios::uppercase | std::ios::showpos, 10, '_', "_________0"},
+{0, std::ios::dec | std::ios::right | std::ios::uppercase | std::ios::showbase, 0, '_', "0"},
+{0, std::ios::dec | std::ios::right | std::ios::uppercase | std::ios::showbase, 10, '_', "_________0"},
+{0, std::ios::dec | std::ios::right | std::ios::uppercase | std::ios::showbase | std::ios::showpos, 0, '_', "0"},
+{0, std::ios::dec | std::ios::right | std::ios::uppercase | std::ios::showbase | std::ios::showpos, 10, '_', "_________0"},
+{0, std::ios::oct | std::ios::left, 0, '_', "0"},
+{0, std::ios::oct | std::ios::left, 10, '_', "0_________"},
+{0, std::ios::oct | std::ios::left | std::ios::showpos, 0, '_', "0"},
+{0, std::ios::oct | std::ios::left | std::ios::showpos, 10, '_', "0_________"},
+{0, std::ios::oct | std::ios::left | std::ios::showbase, 0, '_', "0"},
+{0, std::ios::oct | std::ios::left | std::ios::showbase, 10, '_', "0_________"},
+{0, std::ios::oct | std::ios::left | std::ios::showbase | std::ios::showpos, 0, '_', "0"},
+{0, std::ios::oct | std::ios::left | std::ios::showbase | std::ios::showpos, 10, '_', "0_________"},
+{0, std::ios::oct | std::ios::left | std::ios::uppercase, 0, '_', "0"},
+{0, std::ios::oct | std::ios::left | std::ios::uppercase, 10, '_', "0_________"},
+{0, std::ios::oct | std::ios::left | std::ios::uppercase | std::ios::showpos, 0, '_', "0"},
+{0, std::ios::oct | std::ios::left | std::ios::uppercase | std::ios::showpos, 10, '_', "0_________"},
+{0, std::ios::oct | std::ios::left | std::ios::uppercase | std::ios::showbase, 0, '_', "0"},
+{0, std::ios::oct | std::ios::left | std::ios::uppercase | std::ios::showbase, 10, '_', "0_________"},
+{0, std::ios::oct | std::ios::left | std::ios::uppercase | std::ios::showbase | std::ios::showpos, 0, '_', "0"},
+{0, std::ios::oct | std::ios::left | std::ios::uppercase | std::ios::showbase | std::ios::showpos, 10, '_', "0_________"},
+{0, std::ios::oct | std::ios::internal, 0, '_', "0"},
+{0, std::ios::oct | std::ios::internal, 10, '_', "_________0"},
+{0, std::ios::oct | std::ios::internal | std::ios::showpos, 0, '_', "0"},
+{0, std::ios::oct | std::ios::internal | std::ios::showpos, 10, '_', "_________0"},
+{0, std::ios::oct | std::ios::internal | std::ios::showbase, 0, '_', "0"},
+{0, std::ios::oct | std::ios::internal | std::ios::showbase, 10, '_', "_________0"},
+{0, std::ios::oct | std::ios::internal | std::ios::showbase | std::ios::showpos, 0, '_', "0"},
+{0, std::ios::oct | std::ios::internal | std::ios::showbase | std::ios::showpos, 10, '_', "_________0"},
+{0, std::ios::oct | std::ios::internal | std::ios::uppercase, 0, '_', "0"},
+{0, std::ios::oct | std::ios::internal | std::ios::uppercase, 10, '_', "_________0"},
+{0, std::ios::oct | std::ios::internal | std::ios::uppercase | std::ios::showpos, 0, '_', "0"},
+{0, std::ios::oct | std::ios::internal | std::ios::uppercase | std::ios::showpos, 10, '_', "_________0"},
+{0, std::ios::oct | std::ios::internal | std::ios::uppercase | std::ios::showbase, 0, '_', "0"},
+{0, std::ios::oct | std::ios::internal | std::ios::uppercase | std::ios::showbase, 10, '_', "_________0"},
+{0, std::ios::oct | std::ios::internal | std::ios::uppercase | std::ios::showbase | std::ios::showpos, 0, '_', "0"},
+{0, std::ios::oct | std::ios::internal | std::ios::uppercase | std::ios::showbase | std::ios::showpos, 10, '_', "_________0"},
+{0, std::ios::oct | std::ios::right, 0, '_', "0"},
+{0, std::ios::oct | std::ios::right, 10, '_', "_________0"},
+{0, std::ios::oct | std::ios::right | std::ios::showpos, 0, '_', "0"},
+{0, std::ios::oct | std::ios::right | std::ios::showpos, 10, '_', "_________0"},
+{0, std::ios::oct | std::ios::right | std::ios::showbase, 0, '_', "0"},
+{0, std::ios::oct | std::ios::right | std::ios::showbase, 10, '_', "_________0"},
+{0, std::ios::oct | std::ios::right | std::ios::showbase | std::ios::showpos, 0, '_', "0"},
+{0, std::ios::oct | std::ios::right | std::ios::showbase | std::ios::showpos, 10, '_', "_________0"},
+{0, std::ios::oct | std::ios::right | std::ios::uppercase, 0, '_', "0"},
+{0, std::ios::oct | std::ios::right | std::ios::uppercase, 10, '_', "_________0"},
+{0, std::ios::oct | std::ios::right | std::ios::uppercase | std::ios::showpos, 0, '_', "0"},
+{0, std::ios::oct | std::ios::right | std::ios::uppercase | std::ios::showpos, 10, '_', "_________0"},
+{0, std::ios::oct | std::ios::right | std::ios::uppercase | std::ios::showbase, 0, '_', "0"},
+{0, std::ios::oct | std::ios::right | std::ios::uppercase | std::ios::showbase, 10, '_', "_________0"},
+{0, std::ios::oct | std::ios::right | std::ios::uppercase | std::ios::showbase | std::ios::showpos, 0, '_', "0"},
+{0, std::ios::oct | std::ios::right | std::ios::uppercase | std::ios::showbase | std::ios::showpos, 10, '_', "_________0"},
+{0, std::ios::hex | std::ios::left, 0, '_', "0"},
+{0, std::ios::hex | std::ios::left, 10, '_', "0_________"},
+{0, std::ios::hex | std::ios::left | std::ios::showpos, 0, '_', "0"},
+{0, std::ios::hex | std::ios::left | std::ios::showpos, 10, '_', "0_________"},
+{0, std::ios::hex | std::ios::left | std::ios::showbase, 0, '_', "0"},
+{0, std::ios::hex | std::ios::left | std::ios::showbase, 10, '_', "0_________"},
+{0, std::ios::hex | std::ios::left | std::ios::showbase | std::ios::showpos, 0, '_', "0"},
+{0, std::ios::hex | std::ios::left | std::ios::showbase | std::ios::showpos, 10, '_', "0_________"},
+{0, std::ios::hex | std::ios::left | std::ios::uppercase, 0, '_', "0"},
+{0, std::ios::hex | std::ios::left | std::ios::uppercase, 10, '_', "0_________"},
+{0, std::ios::hex | std::ios::left | std::ios::uppercase | std::ios::showpos, 0, '_', "0"},
+{0, std::ios::hex | std::ios::left | std::ios::uppercase | std::ios::showpos, 10, '_', "0_________"},
+{0, std::ios::hex | std::ios::left | std::ios::uppercase | std::ios::showbase, 0, '_', "0"},
+{0, std::ios::hex | std::ios::left | std::ios::uppercase | std::ios::showbase, 10, '_', "0_________"},
+{0, std::ios::hex | std::ios::left | std::ios::uppercase | std::ios::showbase | std::ios::showpos, 0, '_', "0"},
+{0, std::ios::hex | std::ios::left | std::ios::uppercase | std::ios::showbase | std::ios::showpos, 10, '_', "0_________"},
+{0, std::ios::hex | std::ios::internal, 0, '_', "0"},
+{0, std::ios::hex | std::ios::internal, 10, '_', "_________0"},
+{0, std::ios::hex | std::ios::internal | std::ios::showpos, 0, '_', "0"},
+{0, std::ios::hex | std::ios::internal | std::ios::showpos, 10, '_', "_________0"},
+{0, std::ios::hex | std::ios::internal | std::ios::showbase, 0, '_', "0"},
+{0, std::ios::hex | std::ios::internal | std::ios::showbase, 10, '_', "_________0"},
+{0, std::ios::hex | std::ios::internal | std::ios::showbase | std::ios::showpos, 0, '_', "0"},
+{0, std::ios::hex | std::ios::internal | std::ios::showbase | std::ios::showpos, 10, '_', "_________0"},
+{0, std::ios::hex | std::ios::internal | std::ios::uppercase, 0, '_', "0"},
+{0, std::ios::hex | std::ios::internal | std::ios::uppercase, 10, '_', "_________0"},
+{0, std::ios::hex | std::ios::internal | std::ios::uppercase | std::ios::showpos, 0, '_', "0"},
+{0, std::ios::hex | std::ios::internal | std::ios::uppercase | std::ios::showpos, 10, '_', "_________0"},
+{0, std::ios::hex | std::ios::internal | std::ios::uppercase | std::ios::showbase, 0, '_', "0"},
+{0, std::ios::hex | std::ios::internal | std::ios::uppercase | std::ios::showbase, 10, '_', "_________0"},
+{0, std::ios::hex | std::ios::internal | std::ios::uppercase | std::ios::showbase | std::ios::showpos, 0, '_', "0"},
+{0, std::ios::hex | std::ios::internal | std::ios::uppercase | std::ios::showbase | std::ios::showpos, 10, '_', "_________0"},
+{0, std::ios::hex | std::ios::right, 0, '_', "0"},
+{0, std::ios::hex | std::ios::right, 10, '_', "_________0"},
+{0, std::ios::hex | std::ios::right | std::ios::showpos, 0, '_', "0"},
+{0, std::ios::hex | std::ios::right | std::ios::showpos, 10, '_', "_________0"},
+{0, std::ios::hex | std::ios::right | std::ios::showbase, 0, '_', "0"},
+{0, std::ios::hex | std::ios::right | std::ios::showbase, 10, '_', "_________0"},
+{0, std::ios::hex | std::ios::right | std::ios::showbase | std::ios::showpos, 0, '_', "0"},
+{0, std::ios::hex | std::ios::right | std::ios::showbase | std::ios::showpos, 10, '_', "_________0"},
+{0, std::ios::hex | std::ios::right | std::ios::uppercase, 0, '_', "0"},
+{0, std::ios::hex | std::ios::right | std::ios::uppercase, 10, '_', "_________0"},
+{0, std::ios::hex | std::ios::right | std::ios::uppercase | std::ios::showpos, 0, '_', "0"},
+{0, std::ios::hex | std::ios::right | std::ios::uppercase | std::ios::showpos, 10, '_', "_________0"},
+{0, std::ios::hex | std::ios::right | std::ios::uppercase | std::ios::showbase, 0, '_', "0"},
+{0, std::ios::hex | std::ios::right | std::ios::uppercase | std::ios::showbase, 10, '_', "_________0"},
+{0, std::ios::hex | std::ios::right | std::ios::uppercase | std::ios::showbase | std::ios::showpos, 0, '_', "0"},
+{0, std::ios::hex | std::ios::right | std::ios::uppercase | std::ios::showbase | std::ios::showpos, 10, '_', "_________0"},
+{8, std::ios::dec | std::ios::left, 0, '_', "8"},
+{8, std::ios::dec | std::ios::left, 10, '_', "8_________"},
+{8, std::ios::dec | std::ios::left | std::ios::showpos, 0, '_', "8"},
+{8, std::ios::dec | std::ios::left | std::ios::showpos, 10, '_', "8_________"},
+{8, std::ios::dec | std::ios::left | std::ios::showbase, 0, '_', "8"},
+{8, std::ios::dec | std::ios::left | std::ios::showbase, 10, '_', "8_________"},
+{8, std::ios::dec | std::ios::left | std::ios::showbase | std::ios::showpos, 0, '_', "8"},
+{8, std::ios::dec | std::ios::left | std::ios::showbase | std::ios::showpos, 10, '_', "8_________"},
+{8, std::ios::dec | std::ios::left | std::ios::uppercase, 0, '_', "8"},
+{8, std::ios::dec | std::ios::left | std::ios::uppercase, 10, '_', "8_________"},
+{8, std::ios::dec | std::ios::left | std::ios::uppercase | std::ios::showpos, 0, '_', "8"},
+{8, std::ios::dec | std::ios::left | std::ios::uppercase | std::ios::showpos, 10, '_', "8_________"},
+{8, std::ios::dec | std::ios::left | std::ios::uppercase | std::ios::showbase, 0, '_', "8"},
+{8, std::ios::dec | std::ios::left | std::ios::uppercase | std::ios::showbase, 10, '_', "8_________"},
+{8, std::ios::dec | std::ios::left | std::ios::uppercase | std::ios::showbase | std::ios::showpos, 0, '_', "8"},
+{8, std::ios::dec | std::ios::left | std::ios::uppercase | std::ios::showbase | std::ios::showpos, 10, '_', "8_________"},
+{8, std::ios::dec | std::ios::internal, 0, '_', "8"},
+{8, std::ios::dec | std::ios::internal, 10, '_', "_________8"},
+{8, std::ios::dec | std::ios::internal | std::ios::showpos, 0, '_', "8"},
+{8, std::ios::dec | std::ios::internal | std::ios::showpos, 10, '_', "_________8"},
+{8, std::ios::dec | std::ios::internal | std::ios::showbase, 0, '_', "8"},
+{8, std::ios::dec | std::ios::internal | std::ios::showbase, 10, '_', "_________8"},
+{8, std::ios::dec | std::ios::internal | std::ios::showbase | std::ios::showpos, 0, '_', "8"},
+{8, std::ios::dec | std::ios::internal | std::ios::showbase | std::ios::showpos, 10, '_', "_________8"},
+{8, std::ios::dec | std::ios::internal | std::ios::uppercase, 0, '_', "8"},
+{8, std::ios::dec | std::ios::internal | std::ios::uppercase, 10, '_', "_________8"},
+{8, std::ios::dec | std::ios::internal | std::ios::uppercase | std::ios::showpos, 0, '_', "8"},
+{8, std::ios::dec | std::ios::internal | std::ios::uppercase | std::ios::showpos, 10, '_', "_________8"},
+{8, std::ios::dec | std::ios::internal | std::ios::uppercase | std::ios::showbase, 0, '_', "8"},
+{8, std::ios::dec | std::ios::internal | std::ios::uppercase | std::ios::showbase, 10, '_', "_________8"},
+{8, std::ios::dec | std::ios::internal | std::ios::uppercase | std::ios::showbase | std::ios::showpos, 0, '_', "8"},
+{8, std::ios::dec | std::ios::internal | std::ios::uppercase | std::ios::showbase | std::ios::showpos, 10, '_', "_________8"},
+{8, std::ios::dec | std::ios::right, 0, '_', "8"},
+{8, std::ios::dec | std::ios::right, 10, '_', "_________8"},
+{8, std::ios::dec | std::ios::right | std::ios::showpos, 0, '_', "8"},
+{8, std::ios::dec | std::ios::right | std::ios::showpos, 10, '_', "_________8"},
+{8, std::ios::dec | std::ios::right | std::ios::showbase, 0, '_', "8"},
+{8, std::ios::dec | std::ios::right | std::ios::showbase, 10, '_', "_________8"},
+{8, std::ios::dec | std::ios::right | std::ios::showbase | std::ios::showpos, 0, '_', "8"},
+{8, std::ios::dec | std::ios::right | std::ios::showbase | std::ios::showpos, 10, '_', "_________8"},
+{8, std::ios::dec | std::ios::right | std::ios::uppercase, 0, '_', "8"},
+{8, std::ios::dec | std::ios::right | std::ios::uppercase, 10, '_', "_________8"},
+{8, std::ios::dec | std::ios::right | std::ios::uppercase | std::ios::showpos, 0, '_', "8"},
+{8, std::ios::dec | std::ios::right | std::ios::uppercase | std::ios::showpos, 10, '_', "_________8"},
+{8, std::ios::dec | std::ios::right | std::ios::uppercase | std::ios::showbase, 0, '_', "8"},
+{8, std::ios::dec | std::ios::right | std::ios::uppercase | std::ios::showbase, 10, '_', "_________8"},
+{8, std::ios::dec | std::ios::right | std::ios::uppercase | std::ios::showbase | std::ios::showpos, 0, '_', "8"},
+{8, std::ios::dec | std::ios::right | std::ios::uppercase | std::ios::showbase | std::ios::showpos, 10, '_', "_________8"},
+{8, std::ios::oct | std::ios::left, 0, '_', "10"},
+{8, std::ios::oct | std::ios::left, 10, '_', "10________"},
+{8, std::ios::oct | std::ios::left | std::ios::showpos, 0, '_', "10"},
+{8, std::ios::oct | std::ios::left | std::ios::showpos, 10, '_', "10________"},
+{8, std::ios::oct | std::ios::left | std::ios::showbase, 0, '_', "010"},
+{8, std::ios::oct | std::ios::left | std::ios::showbase, 10, '_', "010_______"},
+{8, std::ios::oct | std::ios::left | std::ios::showbase | std::ios::showpos, 0, '_', "010"},
+{8, std::ios::oct | std::ios::left | std::ios::showbase | std::ios::showpos, 10, '_', "010_______"},
+{8, std::ios::oct | std::ios::left | std::ios::uppercase, 0, '_', "10"},
+{8, std::ios::oct | std::ios::left | std::ios::uppercase, 10, '_', "10________"},
+{8, std::ios::oct | std::ios::left | std::ios::uppercase | std::ios::showpos, 0, '_', "10"},
+{8, std::ios::oct | std::ios::left | std::ios::uppercase | std::ios::showpos, 10, '_', "10________"},
+{8, std::ios::oct | std::ios::left | std::ios::uppercase | std::ios::showbase, 0, '_', "010"},
+{8, std::ios::oct | std::ios::left | std::ios::uppercase | std::ios::showbase, 10, '_', "010_______"},
+{8, std::ios::oct | std::ios::left | std::ios::uppercase | std::ios::showbase | std::ios::showpos, 0, '_', "010"},
+{8, std::ios::oct | std::ios::left | std::ios::uppercase | std::ios::showbase | std::ios::showpos, 10, '_', "010_______"},
+{8, std::ios::oct | std::ios::internal, 0, '_', "10"},
+{8, std::ios::oct | std::ios::internal, 10, '_', "________10"},
+{8, std::ios::oct | std::ios::internal | std::ios::showpos, 0, '_', "10"},
+{8, std::ios::oct | std::ios::internal | std::ios::showpos, 10, '_', "________10"},
+{8, std::ios::oct | std::ios::internal | std::ios::showbase, 0, '_', "010"},
+{8, std::ios::oct | std::ios::internal | std::ios::showbase, 10, '_', "_______010"},
+{8, std::ios::oct | std::ios::internal | std::ios::showbase | std::ios::showpos, 0, '_', "010"},
+{8, std::ios::oct | std::ios::internal | std::ios::showbase | std::ios::showpos, 10, '_', "_______010"},
+{8, std::ios::oct | std::ios::internal | std::ios::uppercase, 0, '_', "10"},
+{8, std::ios::oct | std::ios::internal | std::ios::uppercase, 10, '_', "________10"},
+{8, std::ios::oct | std::ios::internal | std::ios::uppercase | std::ios::showpos, 0, '_', "10"},
+{8, std::ios::oct | std::ios::internal | std::ios::uppercase | std::ios::showpos, 10, '_', "________10"},
+{8, std::ios::oct | std::ios::internal | std::ios::uppercase | std::ios::showbase, 0, '_', "010"},
+{8, std::ios::oct | std::ios::internal | std::ios::uppercase | std::ios::showbase, 10, '_', "_______010"},
+{8, std::ios::oct | std::ios::internal | std::ios::uppercase | std::ios::showbase | std::ios::showpos, 0, '_', "010"},
+{8, std::ios::oct | std::ios::internal | std::ios::uppercase | std::ios::showbase | std::ios::showpos, 10, '_', "_______010"},
+{8, std::ios::oct | std::ios::right, 0, '_', "10"},
+{8, std::ios::oct | std::ios::right, 10, '_', "________10"},
+{8, std::ios::oct | std::ios::right | std::ios::showpos, 0, '_', "10"},
+{8, std::ios::oct | std::ios::right | std::ios::showpos, 10, '_', "________10"},
+{8, std::ios::oct | std::ios::right | std::ios::showbase, 0, '_', "010"},
+{8, std::ios::oct | std::ios::right | std::ios::showbase, 10, '_', "_______010"},
+{8, std::ios::oct | std::ios::right | std::ios::showbase | std::ios::showpos, 0, '_', "010"},
+{8, std::ios::oct | std::ios::right | std::ios::showbase | std::ios::showpos, 10, '_', "_______010"},
+{8, std::ios::oct | std::ios::right | std::ios::uppercase, 0, '_', "10"},
+{8, std::ios::oct | std::ios::right | std::ios::uppercase, 10, '_', "________10"},
+{8, std::ios::oct | std::ios::right | std::ios::uppercase | std::ios::showpos, 0, '_', "10"},
+{8, std::ios::oct | std::ios::right | std::ios::uppercase | std::ios::showpos, 10, '_', "________10"},
+{8, std::ios::oct | std::ios::right | std::ios::uppercase | std::ios::showbase, 0, '_', "010"},
+{8, std::ios::oct | std::ios::right | std::ios::uppercase | std::ios::showbase, 10, '_', "_______010"},
+{8, std::ios::oct | std::ios::right | std::ios::uppercase | std::ios::showbase | std::ios::showpos, 0, '_', "010"},
+{8, std::ios::oct | std::ios::right | std::ios::uppercase | std::ios::showbase | std::ios::showpos, 10, '_', "_______010"},
+{8, std::ios::hex | std::ios::left, 0, '_', "8"},
+{8, std::ios::hex | std::ios::left, 10, '_', "8_________"},
+{8, std::ios::hex | std::ios::left | std::ios::showpos, 0, '_', "8"},
+{8, std::ios::hex | std::ios::left | std::ios::showpos, 10, '_', "8_________"},
+{8, std::ios::hex | std::ios::left | std::ios::showbase, 0, '_', "0x8"},
+{8, std::ios::hex | std::ios::left | std::ios::showbase, 10, '_', "0x8_______"},
+{8, std::ios::hex | std::ios::left | std::ios::showbase | std::ios::showpos, 0, '_', "0x8"},
+{8, std::ios::hex | std::ios::left | std::ios::showbase | std::ios::showpos, 10, '_', "0x8_______"},
+{8, std::ios::hex | std::ios::left | std::ios::uppercase, 0, '_', "8"},
+{8, std::ios::hex | std::ios::left | std::ios::uppercase, 10, '_', "8_________"},
+{8, std::ios::hex | std::ios::left | std::ios::uppercase | std::ios::showpos, 0, '_', "8"},
+{8, std::ios::hex | std::ios::left | std::ios::uppercase | std::ios::showpos, 10, '_', "8_________"},
+{8, std::ios::hex | std::ios::left | std::ios::uppercase | std::ios::showbase, 0, '_', "0X8"},
+{8, std::ios::hex | std::ios::left | std::ios::uppercase | std::ios::showbase, 10, '_', "0X8_______"},
+{8, std::ios::hex | std::ios::left | std::ios::uppercase | std::ios::showbase | std::ios::showpos, 0, '_', "0X8"},
+{8, std::ios::hex | std::ios::left | std::ios::uppercase | std::ios::showbase | std::ios::showpos, 10, '_', "0X8_______"},
+{8, std::ios::hex | std::ios::internal, 0, '_', "8"},
+{8, std::ios::hex | std::ios::internal, 10, '_', "_________8"},
+{8, std::ios::hex | std::ios::internal | std::ios::showpos, 0, '_', "8"},
+{8, std::ios::hex | std::ios::internal | std::ios::showpos, 10, '_', "_________8"},
+{8, std::ios::hex | std::ios::internal | std::ios::showbase, 0, '_', "0x8"},
+{8, std::ios::hex | std::ios::internal | std::ios::showbase, 10, '_', "0x_______8"},
+{8, std::ios::hex | std::ios::internal | std::ios::showbase | std::ios::showpos, 0, '_', "0x8"},
+{8, std::ios::hex | std::ios::internal | std::ios::showbase | std::ios::showpos, 10, '_', "0x_______8"},
+{8, std::ios::hex | std::ios::internal | std::ios::uppercase, 0, '_', "8"},
+{8, std::ios::hex | std::ios::internal | std::ios::uppercase, 10, '_', "_________8"},
+{8, std::ios::hex | std::ios::internal | std::ios::uppercase | std::ios::showpos, 0, '_', "8"},
+{8, std::ios::hex | std::ios::internal | std::ios::uppercase | std::ios::showpos, 10, '_', "_________8"},
+{8, std::ios::hex | std::ios::internal | std::ios::uppercase | std::ios::showbase, 0, '_', "0X8"},
+{8, std::ios::hex | std::ios::internal | std::ios::uppercase | std::ios::showbase, 10, '_', "0X_______8"},
+{8, std::ios::hex | std::ios::internal | std::ios::uppercase | std::ios::showbase | std::ios::showpos, 0, '_', "0X8"},
+{8, std::ios::hex | std::ios::internal | std::ios::uppercase | std::ios::showbase | std::ios::showpos, 10, '_', "0X_______8"},
+{8, std::ios::hex | std::ios::right, 0, '_', "8"},
+{8, std::ios::hex | std::ios::right, 10, '_', "_________8"},
+{8, std::ios::hex | std::ios::right | std::ios::showpos, 0, '_', "8"},
+{8, std::ios::hex | std::ios::right | std::ios::showpos, 10, '_', "_________8"},
+{8, std::ios::hex | std::ios::right | std::ios::showbase, 0, '_', "0x8"},
+{8, std::ios::hex | std::ios::right | std::ios::showbase, 10, '_', "_______0x8"},
+{8, std::ios::hex | std::ios::right | std::ios::showbase | std::ios::showpos, 0, '_', "0x8"},
+{8, std::ios::hex | std::ios::right | std::ios::showbase | std::ios::showpos, 10, '_', "_______0x8"},
+{8, std::ios::hex | std::ios::right | std::ios::uppercase, 0, '_', "8"},
+{8, std::ios::hex | std::ios::right | std::ios::uppercase, 10, '_', "_________8"},
+{8, std::ios::hex | std::ios::right | std::ios::uppercase | std::ios::showpos, 0, '_', "8"},
+{8, std::ios::hex | std::ios::right | std::ios::uppercase | std::ios::showpos, 10, '_', "_________8"},
+{8, std::ios::hex | std::ios::right | std::ios::uppercase | std::ios::showbase, 0, '_', "0X8"},
+{8, std::ios::hex | std::ios::right | std::ios::uppercase | std::ios::showbase, 10, '_', "_______0X8"},
+{8, std::ios::hex | std::ios::right | std::ios::uppercase | std::ios::showbase | std::ios::showpos, 0, '_', "0X8"},
+{8, std::ios::hex | std::ios::right | std::ios::uppercase | std::ios::showbase | std::ios::showpos, 10, '_', "_______0X8"},
+{31, std::ios::dec | std::ios::left, 0, '_', "31"},
+{31, std::ios::dec | std::ios::left, 10, '_', "31________"},
+{31, std::ios::dec | std::ios::left | std::ios::showpos, 0, '_', "31"},
+{31, std::ios::dec | std::ios::left | std::ios::showpos, 10, '_', "31________"},
+{31, std::ios::dec | std::ios::left | std::ios::showbase, 0, '_', "31"},
+{31, std::ios::dec | std::ios::left | std::ios::showbase, 10, '_', "31________"},
+{31, std::ios::dec | std::ios::left | std::ios::showbase | std::ios::showpos, 0, '_', "31"},
+{31, std::ios::dec | std::ios::left | std::ios::showbase | std::ios::showpos, 10, '_', "31________"},
+{31, std::ios::dec | std::ios::left | std::ios::uppercase, 0, '_', "31"},
+{31, std::ios::dec | std::ios::left | std::ios::uppercase, 10, '_', "31________"},
+{31, std::ios::dec | std::ios::left | std::ios::uppercase | std::ios::showpos, 0, '_', "31"},
+{31, std::ios::dec | std::ios::left | std::ios::uppercase | std::ios::showpos, 10, '_', "31________"},
+{31, std::ios::dec | std::ios::left | std::ios::uppercase | std::ios::showbase, 0, '_', "31"},
+{31, std::ios::dec | std::ios::left | std::ios::uppercase | std::ios::showbase, 10, '_', "31________"},
+{31, std::ios::dec | std::ios::left | std::ios::uppercase | std::ios::showbase | std::ios::showpos, 0, '_', "31"},
+{31, std::ios::dec | std::ios::left | std::ios::uppercase | std::ios::showbase | std::ios::showpos, 10, '_', "31________"},
+{31, std::ios::dec | std::ios::internal, 0, '_', "31"},
+{31, std::ios::dec | std::ios::internal, 10, '_', "________31"},
+{31, std::ios::dec | std::ios::internal | std::ios::showpos, 0, '_', "31"},
+{31, std::ios::dec | std::ios::internal | std::ios::showpos, 10, '_', "________31"},
+{31, std::ios::dec | std::ios::internal | std::ios::showbase, 0, '_', "31"},
+{31, std::ios::dec | std::ios::internal | std::ios::showbase, 10, '_', "________31"},
+{31, std::ios::dec | std::ios::internal | std::ios::showbase | std::ios::showpos, 0, '_', "31"},
+{31, std::ios::dec | std::ios::internal | std::ios::showbase | std::ios::showpos, 10, '_', "________31"},
+{31, std::ios::dec | std::ios::internal | std::ios::uppercase, 0, '_', "31"},
+{31, std::ios::dec | std::ios::internal | std::ios::uppercase, 10, '_', "________31"},
+{31, std::ios::dec | std::ios::internal | std::ios::uppercase | std::ios::showpos, 0, '_', "31"},
+{31, std::ios::dec | std::ios::internal | std::ios::uppercase | std::ios::showpos, 10, '_', "________31"},
+{31, std::ios::dec | std::ios::internal | std::ios::uppercase | std::ios::showbase, 0, '_', "31"},
+{31, std::ios::dec | std::ios::internal | std::ios::uppercase | std::ios::showbase, 10, '_', "________31"},
+{31, std::ios::dec | std::ios::internal | std::ios::uppercase | std::ios::showbase | std::ios::showpos, 0, '_', "31"},
+{31, std::ios::dec | std::ios::internal | std::ios::uppercase | std::ios::showbase | std::ios::showpos, 10, '_', "________31"},
+{31, std::ios::dec | std::ios::right, 0, '_', "31"},
+{31, std::ios::dec | std::ios::right, 10, '_', "________31"},
+{31, std::ios::dec | std::ios::right | std::ios::showpos, 0, '_', "31"},
+{31, std::ios::dec | std::ios::right | std::ios::showpos, 10, '_', "________31"},
+{31, std::ios::dec | std::ios::right | std::ios::showbase, 0, '_', "31"},
+{31, std::ios::dec | std::ios::right | std::ios::showbase, 10, '_', "________31"},
+{31, std::ios::dec | std::ios::right | std::ios::showbase | std::ios::showpos, 0, '_', "31"},
+{31, std::ios::dec | std::ios::right | std::ios::showbase | std::ios::showpos, 10, '_', "________31"},
+{31, std::ios::dec | std::ios::right | std::ios::uppercase, 0, '_', "31"},
+{31, std::ios::dec | std::ios::right | std::ios::uppercase, 10, '_', "________31"},
+{31, std::ios::dec | std::ios::right | std::ios::uppercase | std::ios::showpos, 0, '_', "31"},
+{31, std::ios::dec | std::ios::right | std::ios::uppercase | std::ios::showpos, 10, '_', "________31"},
+{31, std::ios::dec | std::ios::right | std::ios::uppercase | std::ios::showbase, 0, '_', "31"},
+{31, std::ios::dec | std::ios::right | std::ios::uppercase | std::ios::showbase, 10, '_', "________31"},
+{31, std::ios::dec | std::ios::right | std::ios::uppercase | std::ios::showbase | std::ios::showpos, 0, '_', "31"},
+{31, std::ios::dec | std::ios::right | std::ios::uppercase | std::ios::showbase | std::ios::showpos, 10, '_', "________31"},
+{31, std::ios::oct | std::ios::left, 0, '_', "37"},
+{31, std::ios::oct | std::ios::left, 10, '_', "37________"},
+{31, std::ios::oct | std::ios::left | std::ios::showpos, 0, '_', "37"},
+{31, std::ios::oct | std::ios::left | std::ios::showpos, 10, '_', "37________"},
+{31, std::ios::oct | std::ios::left | std::ios::showbase, 0, '_', "037"},
+{31, std::ios::oct | std::ios::left | std::ios::showbase, 10, '_', "037_______"},
+{31, std::ios::oct | std::ios::left | std::ios::showbase | std::ios::showpos, 0, '_', "037"},
+{31, std::ios::oct | std::ios::left | std::ios::showbase | std::ios::showpos, 10, '_', "037_______"},
+{31, std::ios::oct | std::ios::left | std::ios::uppercase, 0, '_', "37"},
+{31, std::ios::oct | std::ios::left | std::ios::uppercase, 10, '_', "37________"},
+{31, std::ios::oct | std::ios::left | std::ios::uppercase | std::ios::showpos, 0, '_', "37"},
+{31, std::ios::oct | std::ios::left | std::ios::uppercase | std::ios::showpos, 10, '_', "37________"},
+{31, std::ios::oct | std::ios::left | std::ios::uppercase | std::ios::showbase, 0, '_', "037"},
+{31, std::ios::oct | std::ios::left | std::ios::uppercase | std::ios::showbase, 10, '_', "037_______"},
+{31, std::ios::oct | std::ios::left | std::ios::uppercase | std::ios::showbase | std::ios::showpos, 0, '_', "037"},
+{31, std::ios::oct | std::ios::left | std::ios::uppercase | std::ios::showbase | std::ios::showpos, 10, '_', "037_______"},
+{31, std::ios::oct | std::ios::internal, 0, '_', "37"},
+{31, std::ios::oct | std::ios::internal, 10, '_', "________37"},
+{31, std::ios::oct | std::ios::internal | std::ios::showpos, 0, '_', "37"},
+{31, std::ios::oct | std::ios::internal | std::ios::showpos, 10, '_', "________37"},
+{31, std::ios::oct | std::ios::internal | std::ios::showbase, 0, '_', "037"},
+{31, std::ios::oct | std::ios::internal | std::ios::showbase, 10, '_', "_______037"},
+{31, std::ios::oct | std::ios::internal | std::ios::showbase | std::ios::showpos, 0, '_', "037"},
+{31, std::ios::oct | std::ios::internal | std::ios::showbase | std::ios::showpos, 10, '_', "_______037"},
+{31, std::ios::oct | std::ios::internal | std::ios::uppercase, 0, '_', "37"},
+{31, std::ios::oct | std::ios::internal | std::ios::uppercase, 10, '_', "________37"},
+{31, std::ios::oct | std::ios::internal | std::ios::uppercase | std::ios::showpos, 0, '_', "37"},
+{31, std::ios::oct | std::ios::internal | std::ios::uppercase | std::ios::showpos, 10, '_', "________37"},
+{31, std::ios::oct | std::ios::internal | std::ios::uppercase | std::ios::showbase, 0, '_', "037"},
+{31, std::ios::oct | std::ios::internal | std::ios::uppercase | std::ios::showbase, 10, '_', "_______037"},
+{31, std::ios::oct | std::ios::internal | std::ios::uppercase | std::ios::showbase | std::ios::showpos, 0, '_', "037"},
+{31, std::ios::oct | std::ios::internal | std::ios::uppercase | std::ios::showbase | std::ios::showpos, 10, '_', "_______037"},
+{31, std::ios::oct | std::ios::right, 0, '_', "37"},
+{31, std::ios::oct | std::ios::right, 10, '_', "________37"},
+{31, std::ios::oct | std::ios::right | std::ios::showpos, 0, '_', "37"},
+{31, std::ios::oct | std::ios::right | std::ios::showpos, 10, '_', "________37"},
+{31, std::ios::oct | std::ios::right | std::ios::showbase, 0, '_', "037"},
+{31, std::ios::oct | std::ios::right | std::ios::showbase, 10, '_', "_______037"},
+{31, std::ios::oct | std::ios::right | std::ios::showbase | std::ios::showpos, 0, '_', "037"},
+{31, std::ios::oct | std::ios::right | std::ios::showbase | std::ios::showpos, 10, '_', "_______037"},
+{31, std::ios::oct | std::ios::right | std::ios::uppercase, 0, '_', "37"},
+{31, std::ios::oct | std::ios::right | std::ios::uppercase, 10, '_', "________37"},
+{31, std::ios::oct | std::ios::right | std::ios::uppercase | std::ios::showpos, 0, '_', "37"},
+{31, std::ios::oct | std::ios::right | std::ios::uppercase | std::ios::showpos, 10, '_', "________37"},
+{31, std::ios::oct | std::ios::right | std::ios::uppercase | std::ios::showbase, 0, '_', "037"},
+{31, std::ios::oct | std::ios::right | std::ios::uppercase | std::ios::showbase, 10, '_', "_______037"},
+{31, std::ios::oct | std::ios::right | std::ios::uppercase | std::ios::showbase | std::ios::showpos, 0, '_', "037"},
+{31, std::ios::oct | std::ios::right | std::ios::uppercase | std::ios::showbase | std::ios::showpos, 10, '_', "_______037"},
+{31, std::ios::hex | std::ios::left, 0, '_', "1f"},
+{31, std::ios::hex | std::ios::left, 10, '_', "1f________"},
+{31, std::ios::hex | std::ios::left | std::ios::showpos, 0, '_', "1f"},
+{31, std::ios::hex | std::ios::left | std::ios::showpos, 10, '_', "1f________"},
+{31, std::ios::hex | std::ios::left | std::ios::showbase, 0, '_', "0x1f"},
+{31, std::ios::hex | std::ios::left | std::ios::showbase, 10, '_', "0x1f______"},
+{31, std::ios::hex | std::ios::left | std::ios::showbase | std::ios::showpos, 0, '_', "0x1f"},
+{31, std::ios::hex | std::ios::left | std::ios::showbase | std::ios::showpos, 10, '_', "0x1f______"},
+{31, std::ios::hex | std::ios::left | std::ios::uppercase, 0, '_', "1F"},
+{31, std::ios::hex | std::ios::left | std::ios::uppercase, 10, '_', "1F________"},
+{31, std::ios::hex | std::ios::left | std::ios::uppercase | std::ios::showpos, 0, '_', "1F"},
+{31, std::ios::hex | std::ios::left | std::ios::uppercase | std::ios::showpos, 10, '_', "1F________"},
+{31, std::ios::hex | std::ios::left | std::ios::uppercase | std::ios::showbase, 0, '_', "0X1F"},
+{31, std::ios::hex | std::ios::left | std::ios::uppercase | std::ios::showbase, 10, '_', "0X1F______"},
+{31, std::ios::hex | std::ios::left | std::ios::uppercase | std::ios::showbase | std::ios::showpos, 0, '_', "0X1F"},
+{31, std::ios::hex | std::ios::left | std::ios::uppercase | std::ios::showbase | std::ios::showpos, 10, '_', "0X1F______"},
+{31, std::ios::hex | std::ios::internal, 0, '_', "1f"},
+{31, std::ios::hex | std::ios::internal, 10, '_', "________1f"},
+{31, std::ios::hex | std::ios::internal | std::ios::showpos, 0, '_', "1f"},
+{31, std::ios::hex | std::ios::internal | std::ios::showpos, 10, '_', "________1f"},
+{31, std::ios::hex | std::ios::internal | std::ios::showbase, 0, '_', "0x1f"},
+{31, std::ios::hex | std::ios::internal | std::ios::showbase, 10, '_', "0x______1f"},
+{31, std::ios::hex | std::ios::internal | std::ios::showbase | std::ios::showpos, 0, '_', "0x1f"},
+{31, std::ios::hex | std::ios::internal | std::ios::showbase | std::ios::showpos, 10, '_', "0x______1f"},
+{31, std::ios::hex | std::ios::internal | std::ios::uppercase, 0, '_', "1F"},
+{31, std::ios::hex | std::ios::internal | std::ios::uppercase, 10, '_', "________1F"},
+{31, std::ios::hex | std::ios::internal | std::ios::uppercase | std::ios::showpos, 0, '_', "1F"},
+{31, std::ios::hex | std::ios::internal | std::ios::uppercase | std::ios::showpos, 10, '_', "________1F"},
+{31, std::ios::hex | std::ios::internal | std::ios::uppercase | std::ios::showbase, 0, '_', "0X1F"},
+{31, std::ios::hex | std::ios::internal | std::ios::uppercase | std::ios::showbase, 10, '_', "0X______1F"},
+{31, std::ios::hex | std::ios::internal | std::ios::uppercase | std::ios::showbase | std::ios::showpos, 0, '_', "0X1F"},
+{31, std::ios::hex | std::ios::internal | std::ios::uppercase | std::ios::showbase | std::ios::showpos, 10, '_', "0X______1F"},
+{31, std::ios::hex | std::ios::right, 0, '_', "1f"},
+{31, std::ios::hex | std::ios::right, 10, '_', "________1f"},
+{31, std::ios::hex | std::ios::right | std::ios::showpos, 0, '_', "1f"},
+{31, std::ios::hex | std::ios::right | std::ios::showpos, 10, '_', "________1f"},
+{31, std::ios::hex | std::ios::right | std::ios::showbase, 0, '_', "0x1f"},
+{31, std::ios::hex | std::ios::right | std::ios::showbase, 10, '_', "______0x1f"},
+{31, std::ios::hex | std::ios::right | std::ios::showbase | std::ios::showpos, 0, '_', "0x1f"},
+{31, std::ios::hex | std::ios::right | std::ios::showbase | std::ios::showpos, 10, '_', "______0x1f"},
+{31, std::ios::hex | std::ios::right | std::ios::uppercase, 0, '_', "1F"},
+{31, std::ios::hex | std::ios::right | std::ios::uppercase, 10, '_', "________1F"},
+{31, std::ios::hex | std::ios::right | std::ios::uppercase | std::ios::showpos, 0, '_', "1F"},
+{31, std::ios::hex | std::ios::right | std::ios::uppercase | std::ios::showpos, 10, '_', "________1F"},
+{31, std::ios::hex | std::ios::right | std::ios::uppercase | std::ios::showbase, 0, '_', "0X1F"},
+{31, std::ios::hex | std::ios::right | std::ios::uppercase | std::ios::showbase, 10, '_', "______0X1F"},
+{31, std::ios::hex | std::ios::right | std::ios::uppercase | std::ios::showbase | std::ios::showpos, 0, '_', "0X1F"},
+{31, std::ios::hex | std::ios::right | std::ios::uppercase | std::ios::showbase | std::ios::showpos, 10, '_', "______0X1F"},
+{12345, std::ios::dec | std::ios::left, 0, '_', "12345"},
+{12345, std::ios::dec | std::ios::left, 10, '_', "12345_____"},
+{12345, std::ios::dec | std::ios::left | std::ios::showpos, 0, '_', "12345"},
+{12345, std::ios::dec | std::ios::left | std::ios::showpos, 10, '_', "12345_____"},
+{12345, std::ios::dec | std::ios::left | std::ios::showbase, 0, '_', "12345"},
+{12345, std::ios::dec | std::ios::left | std::ios::showbase, 10, '_', "12345_____"},
+{12345, std::ios::dec | std::ios::left | std::ios::showbase | std::ios::showpos, 0, '_', "12345"},
+{12345, std::ios::dec | std::ios::left | std::ios::showbase | std::ios::showpos, 10, '_', "12345_____"},
+{12345, std::ios::dec | std::ios::left | std::ios::uppercase, 0, '_', "12345"},
+{12345, std::ios::dec | std::ios::left | std::ios::uppercase, 10, '_', "12345_____"},
+{12345, std::ios::dec | std::ios::left | std::ios::uppercase | std::ios::showpos, 0, '_', "12345"},
+{12345, std::ios::dec | std::ios::left | std::ios::uppercase | std::ios::showpos, 10, '_', "12345_____"},
+{12345, std::ios::dec | std::ios::left | std::ios::uppercase | std::ios::showbase, 0, '_', "12345"},
+{12345, std::ios::dec | std::ios::left | std::ios::uppercase | std::ios::showbase, 10, '_', "12345_____"},
+{12345, std::ios::dec | std::ios::left | std::ios::uppercase | std::ios::showbase | std::ios::showpos, 0, '_', "12345"},
+{12345, std::ios::dec | std::ios::left | std::ios::uppercase | std::ios::showbase | std::ios::showpos, 10, '_', "12345_____"},
+{12345, std::ios::dec | std::ios::internal, 0, '_', "12345"},
+{12345, std::ios::dec | std::ios::internal, 10, '_', "_____12345"},
+{12345, std::ios::dec | std::ios::internal | std::ios::showpos, 0, '_', "12345"},
+{12345, std::ios::dec | std::ios::internal | std::ios::showpos, 10, '_', "_____12345"},
+{12345, std::ios::dec | std::ios::internal | std::ios::showbase, 0, '_', "12345"},
+{12345, std::ios::dec | std::ios::internal | std::ios::showbase, 10, '_', "_____12345"},
+{12345, std::ios::dec | std::ios::internal | std::ios::showbase | std::ios::showpos, 0, '_', "12345"},
+{12345, std::ios::dec | std::ios::internal | std::ios::showbase | std::ios::showpos, 10, '_', "_____12345"},
+{12345, std::ios::dec | std::ios::internal | std::ios::uppercase, 0, '_', "12345"},
+{12345, std::ios::dec | std::ios::internal | std::ios::uppercase, 10, '_', "_____12345"},
+{12345, std::ios::dec | std::ios::internal | std::ios::uppercase | std::ios::showpos, 0, '_', "12345"},
+{12345, std::ios::dec | std::ios::internal | std::ios::uppercase | std::ios::showpos, 10, '_', "_____12345"},
+{12345, std::ios::dec | std::ios::internal | std::ios::uppercase | std::ios::showbase, 0, '_', "12345"},
+{12345, std::ios::dec | std::ios::internal | std::ios::uppercase | std::ios::showbase, 10, '_', "_____12345"},
+{12345, std::ios::dec | std::ios::internal | std::ios::uppercase | std::ios::showbase | std::ios::showpos, 0, '_', "12345"},
+{12345, std::ios::dec | std::ios::internal | std::ios::uppercase | std::ios::showbase | std::ios::showpos, 10, '_', "_____12345"},
+{12345, std::ios::dec | std::ios::right, 0, '_', "12345"},
+{12345, std::ios::dec | std::ios::right, 10, '_', "_____12345"},
+{12345, std::ios::dec | std::ios::right | std::ios::showpos, 0, '_', "12345"},
+{12345, std::ios::dec | std::ios::right | std::ios::showpos, 10, '_', "_____12345"},
+{12345, std::ios::dec | std::ios::right | std::ios::showbase, 0, '_', "12345"},
+{12345, std::ios::dec | std::ios::right | std::ios::showbase, 10, '_', "_____12345"},
+{12345, std::ios::dec | std::ios::right | std::ios::showbase | std::ios::showpos, 0, '_', "12345"},
+{12345, std::ios::dec | std::ios::right | std::ios::showbase | std::ios::showpos, 10, '_', "_____12345"},
+{12345, std::ios::dec | std::ios::right | std::ios::uppercase, 0, '_', "12345"},
+{12345, std::ios::dec | std::ios::right | std::ios::uppercase, 10, '_', "_____12345"},
+{12345, std::ios::dec | std::ios::right | std::ios::uppercase | std::ios::showpos, 0, '_', "12345"},
+{12345, std::ios::dec | std::ios::right | std::ios::uppercase | std::ios::showpos, 10, '_', "_____12345"},
+{12345, std::ios::dec | std::ios::right | std::ios::uppercase | std::ios::showbase, 0, '_', "12345"},
+{12345, std::ios::dec | std::ios::right | std::ios::uppercase | std::ios::showbase, 10, '_', "_____12345"},
+{12345, std::ios::dec | std::ios::right | std::ios::uppercase | std::ios::showbase | std::ios::showpos, 0, '_', "12345"},
+{12345, std::ios::dec | std::ios::right | std::ios::uppercase | std::ios::showbase | std::ios::showpos, 10, '_', "_____12345"},
+{12345, std::ios::oct | std::ios::left, 0, '_', "30071"},
+{12345, std::ios::oct | std::ios::left, 10, '_', "30071_____"},
+{12345, std::ios::oct | std::ios::left | std::ios::showpos, 0, '_', "30071"},
+{12345, std::ios::oct | std::ios::left | std::ios::showpos, 10, '_', "30071_____"},
+{12345, std::ios::oct | std::ios::left | std::ios::showbase, 0, '_', "030071"},
+{12345, std::ios::oct | std::ios::left | std::ios::showbase, 10, '_', "030071____"},
+{12345, std::ios::oct | std::ios::left | std::ios::showbase | std::ios::showpos, 0, '_', "030071"},
+{12345, std::ios::oct | std::ios::left | std::ios::showbase | std::ios::showpos, 10, '_', "030071____"},
+{12345, std::ios::oct | std::ios::left | std::ios::uppercase, 0, '_', "30071"},
+{12345, std::ios::oct | std::ios::left | std::ios::uppercase, 10, '_', "30071_____"},
+{12345, std::ios::oct | std::ios::left | std::ios::uppercase | std::ios::showpos, 0, '_', "30071"},
+{12345, std::ios::oct | std::ios::left | std::ios::uppercase | std::ios::showpos, 10, '_', "30071_____"},
+{12345, std::ios::oct | std::ios::left | std::ios::uppercase | std::ios::showbase, 0, '_', "030071"},
+{12345, std::ios::oct | std::ios::left | std::ios::uppercase | std::ios::showbase, 10, '_', "030071____"},
+{12345, std::ios::oct | std::ios::left | std::ios::uppercase | std::ios::showbase | std::ios::showpos, 0, '_', "030071"},
+{12345, std::ios::oct | std::ios::left | std::ios::uppercase | std::ios::showbase | std::ios::showpos, 10, '_', "030071____"},
+{12345, std::ios::oct | std::ios::internal, 0, '_', "30071"},
+{12345, std::ios::oct | std::ios::internal, 10, '_', "_____30071"},
+{12345, std::ios::oct | std::ios::internal | std::ios::showpos, 0, '_', "30071"},
+{12345, std::ios::oct | std::ios::internal | std::ios::showpos, 10, '_', "_____30071"},
+{12345, std::ios::oct | std::ios::internal | std::ios::showbase, 0, '_', "030071"},
+{12345, std::ios::oct | std::ios::internal | std::ios::showbase, 10, '_', "____030071"},
+{12345, std::ios::oct | std::ios::internal | std::ios::showbase | std::ios::showpos, 0, '_', "030071"},
+{12345, std::ios::oct | std::ios::internal | std::ios::showbase | std::ios::showpos, 10, '_', "____030071"},
+{12345, std::ios::oct | std::ios::internal | std::ios::uppercase, 0, '_', "30071"},
+{12345, std::ios::oct | std::ios::internal | std::ios::uppercase, 10, '_', "_____30071"},
+{12345, std::ios::oct | std::ios::internal | std::ios::uppercase | std::ios::showpos, 0, '_', "30071"},
+{12345, std::ios::oct | std::ios::internal | std::ios::uppercase | std::ios::showpos, 10, '_', "_____30071"},
+{12345, std::ios::oct | std::ios::internal | std::ios::uppercase | std::ios::showbase, 0, '_', "030071"},
+{12345, std::ios::oct | std::ios::internal | std::ios::uppercase | std::ios::showbase, 10, '_', "____030071"},
+{12345, std::ios::oct | std::ios::internal | std::ios::uppercase | std::ios::showbase | std::ios::showpos, 0, '_', "030071"},
+{12345, std::ios::oct | std::ios::internal | std::ios::uppercase | std::ios::showbase | std::ios::showpos, 10, '_', "____030071"},
+{12345, std::ios::oct | std::ios::right, 0, '_', "30071"},
+{12345, std::ios::oct | std::ios::right, 10, '_', "_____30071"},
+{12345, std::ios::oct | std::ios::right | std::ios::showpos, 0, '_', "30071"},
+{12345, std::ios::oct | std::ios::right | std::ios::showpos, 10, '_', "_____30071"},
+{12345, std::ios::oct | std::ios::right | std::ios::showbase, 0, '_', "030071"},
+{12345, std::ios::oct | std::ios::right | std::ios::showbase, 10, '_', "____030071"},
+{12345, std::ios::oct | std::ios::right | std::ios::showbase | std::ios::showpos, 0, '_', "030071"},
+{12345, std::ios::oct | std::ios::right | std::ios::showbase | std::ios::showpos, 10, '_', "____030071"},
+{12345, std::ios::oct | std::ios::right | std::ios::uppercase, 0, '_', "30071"},
+{12345, std::ios::oct | std::ios::right | std::ios::uppercase, 10, '_', "_____30071"},
+{12345, std::ios::oct | std::ios::right | std::ios::uppercase | std::ios::showpos, 0, '_', "30071"},
+{12345, std::ios::oct | std::ios::right | std::ios::uppercase | std::ios::showpos, 10, '_', "_____30071"},
+{12345, std::ios::oct | std::ios::right | std::ios::uppercase | std::ios::showbase, 0, '_', "030071"},
+{12345, std::ios::oct | std::ios::right | std::ios::uppercase | std::ios::showbase, 10, '_', "____030071"},
+{12345, std::ios::oct | std::ios::right | std::ios::uppercase | std::ios::showbase | std::ios::showpos, 0, '_', "030071"},
+{12345, std::ios::oct | std::ios::right | std::ios::uppercase | std::ios::showbase | std::ios::showpos, 10, '_', "____030071"},
+{12345, std::ios::hex | std::ios::left, 0, '_', "3039"},
+{12345, std::ios::hex | std::ios::left, 10, '_', "3039______"},
+{12345, std::ios::hex | std::ios::left | std::ios::showpos, 0, '_', "3039"},
+{12345, std::ios::hex | std::ios::left | std::ios::showpos, 10, '_', "3039______"},
+{12345, std::ios::hex | std::ios::left | std::ios::showbase, 0, '_', "0x3039"},
+{12345, std::ios::hex | std::ios::left | std::ios::showbase, 10, '_', "0x3039____"},
+{12345, std::ios::hex | std::ios::left | std::ios::showbase | std::ios::showpos, 0, '_', "0x3039"},
+{12345, std::ios::hex | std::ios::left | std::ios::showbase | std::ios::showpos, 10, '_', "0x3039____"},
+{12345, std::ios::hex | std::ios::left | std::ios::uppercase, 0, '_', "3039"},
+{12345, std::ios::hex | std::ios::left | std::ios::uppercase, 10, '_', "3039______"},
+{12345, std::ios::hex | std::ios::left | std::ios::uppercase | std::ios::showpos, 0, '_', "3039"},
+{12345, std::ios::hex | std::ios::left | std::ios::uppercase | std::ios::showpos, 10, '_', "3039______"},
+{12345, std::ios::hex | std::ios::left | std::ios::uppercase | std::ios::showbase, 0, '_', "0X3039"},
+{12345, std::ios::hex | std::ios::left | std::ios::uppercase | std::ios::showbase, 10, '_', "0X3039____"},
+{12345, std::ios::hex | std::ios::left | std::ios::uppercase | std::ios::showbase | std::ios::showpos, 0, '_', "0X3039"},
+{12345, std::ios::hex | std::ios::left | std::ios::uppercase | std::ios::showbase | std::ios::showpos, 10, '_', "0X3039____"},
+{12345, std::ios::hex | std::ios::internal, 0, '_', "3039"},
+{12345, std::ios::hex | std::ios::internal, 10, '_', "______3039"},
+{12345, std::ios::hex | std::ios::internal | std::ios::showpos, 0, '_', "3039"},
+{12345, std::ios::hex | std::ios::internal | std::ios::showpos, 10, '_', "______3039"},
+{12345, std::ios::hex | std::ios::internal | std::ios::showbase, 0, '_', "0x3039"},
+{12345, std::ios::hex | std::ios::internal | std::ios::showbase, 10, '_', "0x____3039"},
+{12345, std::ios::hex | std::ios::internal | std::ios::showbase | std::ios::showpos, 0, '_', "0x3039"},
+{12345, std::ios::hex | std::ios::internal | std::ios::showbase | std::ios::showpos, 10, '_', "0x____3039"},
+{12345, std::ios::hex | std::ios::internal | std::ios::uppercase, 0, '_', "3039"},
+{12345, std::ios::hex | std::ios::internal | std::ios::uppercase, 10, '_', "______3039"},
+{12345, std::ios::hex | std::ios::internal | std::ios::uppercase | std::ios::showpos, 0, '_', "3039"},
+{12345, std::ios::hex | std::ios::internal | std::ios::uppercase | std::ios::showpos, 10, '_', "______3039"},
+{12345, std::ios::hex | std::ios::internal | std::ios::uppercase | std::ios::showbase, 0, '_', "0X3039"},
+{12345, std::ios::hex | std::ios::internal | std::ios::uppercase | std::ios::showbase, 10, '_', "0X____3039"},
+{12345, std::ios::hex | std::ios::internal | std::ios::uppercase | std::ios::showbase | std::ios::showpos, 0, '_', "0X3039"},
+{12345, std::ios::hex | std::ios::internal | std::ios::uppercase | std::ios::showbase | std::ios::showpos, 10, '_', "0X____3039"},
+{12345, std::ios::hex | std::ios::right, 0, '_', "3039"},
+{12345, std::ios::hex | std::ios::right, 10, '_', "______3039"},
+{12345, std::ios::hex | std::ios::right | std::ios::showpos, 0, '_', "3039"},
+{12345, std::ios::hex | std::ios::right | std::ios::showpos, 10, '_', "______3039"},
+{12345, std::ios::hex | std::ios::right | std::ios::showbase, 0, '_', "0x3039"},
+{12345, std::ios::hex | std::ios::right | std::ios::showbase, 10, '_', "____0x3039"},
+{12345, std::ios::hex | std::ios::right | std::ios::showbase | std::ios::showpos, 0, '_', "0x3039"},
+{12345, std::ios::hex | std::ios::right | std::ios::showbase | std::ios::showpos, 10, '_', "____0x3039"},
+{12345, std::ios::hex | std::ios::right | std::ios::uppercase, 0, '_', "3039"},
+{12345, std::ios::hex | std::ios::right | std::ios::uppercase, 10, '_', "______3039"},
+{12345, std::ios::hex | std::ios::right | std::ios::uppercase | std::ios::showpos, 0, '_', "3039"},
+{12345, std::ios::hex | std::ios::right | std::ios::uppercase | std::ios::showpos, 10, '_', "______3039"},
+{12345, std::ios::hex | std::ios::right | std::ios::uppercase | std::ios::showbase, 0, '_', "0X3039"},
+{12345, std::ios::hex | std::ios::right | std::ios::uppercase | std::ios::showbase, 10, '_', "____0X3039"},
+{12345, std::ios::hex | std::ios::right | std::ios::uppercase | std::ios::showbase | std::ios::showpos, 0, '_', "0X3039"},
+{12345, std::ios::hex | std::ios::right | std::ios::uppercase | std::ios::showbase | std::ios::showpos, 10, '_', "____0X3039"},
+{0x8000000000000000, std::ios::dec | std::ios::left, 0, '_', "9223372036854775808"},
+{0x8000000000000000, std::ios::dec | std::ios::left, 10, '_', "9223372036854775808"},
+{0x8000000000000000, std::ios::dec | std::ios::left | std::ios::showpos, 0, '_', "9223372036854775808"},
+{0x8000000000000000, std::ios::dec | std::ios::left | std::ios::showpos, 10, '_', "9223372036854775808"},
+{0x8000000000000000, std::ios::dec | std::ios::left | std::ios::showbase, 0, '_', "9223372036854775808"},
+{0x8000000000000000, std::ios::dec | std::ios::left | std::ios::showbase, 10, '_', "9223372036854775808"},
+{0x8000000000000000, std::ios::dec | std::ios::left | std::ios::showbase | std::ios::showpos, 0, '_', "9223372036854775808"},
+{0x8000000000000000, std::ios::dec | std::ios::left | std::ios::showbase | std::ios::showpos, 10, '_', "9223372036854775808"},
+{0x8000000000000000, std::ios::dec | std::ios::left | std::ios::uppercase, 0, '_', "9223372036854775808"},
+{0x8000000000000000, std::ios::dec | std::ios::left | std::ios::uppercase, 10, '_', "9223372036854775808"},
+{0x8000000000000000, std::ios::dec | std::ios::left | std::ios::uppercase | std::ios::showpos, 0, '_', "9223372036854775808"},
+{0x8000000000000000, std::ios::dec | std::ios::left | std::ios::uppercase | std::ios::showpos, 10, '_', "9223372036854775808"},
+{0x8000000000000000, std::ios::dec | std::ios::left | std::ios::uppercase | std::ios::showbase, 0, '_', "9223372036854775808"},
+{0x8000000000000000, std::ios::dec | std::ios::left | std::ios::uppercase | std::ios::showbase, 10, '_', "9223372036854775808"},
+{0x8000000000000000, std::ios::dec | std::ios::left | std::ios::uppercase | std::ios::showbase | std::ios::showpos, 0, '_', "9223372036854775808"},
+{0x8000000000000000, std::ios::dec | std::ios::left | std::ios::uppercase | std::ios::showbase | std::ios::showpos, 10, '_', "9223372036854775808"},
+{0x8000000000000000, std::ios::dec | std::ios::internal, 0, '_', "9223372036854775808"},
+{0x8000000000000000, std::ios::dec | std::ios::internal, 10, '_', "9223372036854775808"},
+{0x8000000000000000, std::ios::dec | std::ios::internal | std::ios::showpos, 0, '_', "9223372036854775808"},
+{0x8000000000000000, std::ios::dec | std::ios::internal | std::ios::showpos, 10, '_', "9223372036854775808"},
+{0x8000000000000000, std::ios::dec | std::ios::internal | std::ios::showbase, 0, '_', "9223372036854775808"},
+{0x8000000000000000, std::ios::dec | std::ios::internal | std::ios::showbase, 10, '_', "9223372036854775808"},
+{0x8000000000000000, std::ios::dec | std::ios::internal | std::ios::showbase | std::ios::showpos, 0, '_', "9223372036854775808"},
+{0x8000000000000000, std::ios::dec | std::ios::internal | std::ios::showbase | std::ios::showpos, 10, '_', "9223372036854775808"},
+{0x8000000000000000, std::ios::dec | std::ios::internal | std::ios::uppercase, 0, '_', "9223372036854775808"},
+{0x8000000000000000, std::ios::dec | std::ios::internal | std::ios::uppercase, 10, '_', "9223372036854775808"},
+{0x8000000000000000, std::ios::dec | std::ios::internal | std::ios::uppercase | std::ios::showpos, 0, '_', "9223372036854775808"},
+{0x8000000000000000, std::ios::dec | std::ios::internal | std::ios::uppercase | std::ios::showpos, 10, '_', "9223372036854775808"},
+{0x8000000000000000, std::ios::dec | std::ios::internal | std::ios::uppercase | std::ios::showbase, 0, '_', "9223372036854775808"},
+{0x8000000000000000, std::ios::dec | std::ios::internal | std::ios::uppercase | std::ios::showbase, 10, '_', "9223372036854775808"},
+{0x8000000000000000, std::ios::dec | std::ios::internal | std::ios::uppercase | std::ios::showbase | std::ios::showpos, 0, '_', "9223372036854775808"},
+{0x8000000000000000, std::ios::dec | std::ios::internal | std::ios::uppercase | std::ios::showbase | std::ios::showpos, 10, '_', "9223372036854775808"},
+{0x8000000000000000, std::ios::dec | std::ios::right, 0, '_', "9223372036854775808"},
+{0x8000000000000000, std::ios::dec | std::ios::right, 10, '_', "9223372036854775808"},
+{0x8000000000000000, std::ios::dec | std::ios::right | std::ios::showpos, 0, '_', "9223372036854775808"},
+{0x8000000000000000, std::ios::dec | std::ios::right | std::ios::showpos, 10, '_', "9223372036854775808"},
+{0x8000000000000000, std::ios::dec | std::ios::right | std::ios::showbase, 0, '_', "9223372036854775808"},
+{0x8000000000000000, std::ios::dec | std::ios::right | std::ios::showbase, 10, '_', "9223372036854775808"},
+{0x8000000000000000, std::ios::dec | std::ios::right | std::ios::showbase | std::ios::showpos, 0, '_', "9223372036854775808"},
+{0x8000000000000000, std::ios::dec | std::ios::right | std::ios::showbase | std::ios::showpos, 10, '_', "9223372036854775808"},
+{0x8000000000000000, std::ios::dec | std::ios::right | std::ios::uppercase, 0, '_', "9223372036854775808"},
+{0x8000000000000000, std::ios::dec | std::ios::right | std::ios::uppercase, 10, '_', "9223372036854775808"},
+{0x8000000000000000, std::ios::dec | std::ios::right | std::ios::uppercase | std::ios::showpos, 0, '_', "9223372036854775808"},
+{0x8000000000000000, std::ios::dec | std::ios::right | std::ios::uppercase | std::ios::showpos, 10, '_', "9223372036854775808"},
+{0x8000000000000000, std::ios::dec | std::ios::right | std::ios::uppercase | std::ios::showbase, 0, '_', "9223372036854775808"},
+{0x8000000000000000, std::ios::dec | std::ios::right | std::ios::uppercase | std::ios::showbase, 10, '_', "9223372036854775808"},
+{0x8000000000000000, std::ios::dec | std::ios::right | std::ios::uppercase | std::ios::showbase | std::ios::showpos, 0, '_', "9223372036854775808"},
+{0x8000000000000000, std::ios::dec | std::ios::right | std::ios::uppercase | std::ios::showbase | std::ios::showpos, 10, '_', "9223372036854775808"},
+{0x8000000000000000, std::ios::oct | std::ios::left, 0, '_', "1000000000000000000000"},
+{0x8000000000000000, std::ios::oct | std::ios::left, 10, '_', "1000000000000000000000"},
+{0x8000000000000000, std::ios::oct | std::ios::left | std::ios::showpos, 0, '_', "1000000000000000000000"},
+{0x8000000000000000, std::ios::oct | std::ios::left | std::ios::showpos, 10, '_', "1000000000000000000000"},
+{0x8000000000000000, std::ios::oct | std::ios::left | std::ios::showbase, 0, '_', "01000000000000000000000"},
+{0x8000000000000000, std::ios::oct | std::ios::left | std::ios::showbase, 10, '_', "01000000000000000000000"},
+{0x8000000000000000, std::ios::oct | std::ios::left | std::ios::showbase | std::ios::showpos, 0, '_', "01000000000000000000000"},
+{0x8000000000000000, std::ios::oct | std::ios::left | std::ios::showbase | std::ios::showpos, 10, '_', "01000000000000000000000"},
+{0x8000000000000000, std::ios::oct | std::ios::left | std::ios::uppercase, 0, '_', "1000000000000000000000"},
+{0x8000000000000000, std::ios::oct | std::ios::left | std::ios::uppercase, 10, '_', "1000000000000000000000"},
+{0x8000000000000000, std::ios::oct | std::ios::left | std::ios::uppercase | std::ios::showpos, 0, '_', "1000000000000000000000"},
+{0x8000000000000000, std::ios::oct | std::ios::left | std::ios::uppercase | std::ios::showpos, 10, '_', "1000000000000000000000"},
+{0x8000000000000000, std::ios::oct | std::ios::left | std::ios::uppercase | std::ios::showbase, 0, '_', "01000000000000000000000"},
+{0x8000000000000000, std::ios::oct | std::ios::left | std::ios::uppercase | std::ios::showbase, 10, '_', "01000000000000000000000"},
+{0x8000000000000000, std::ios::oct | std::ios::left | std::ios::uppercase | std::ios::showbase | std::ios::showpos, 0, '_', "01000000000000000000000"},
+{0x8000000000000000, std::ios::oct | std::ios::left | std::ios::uppercase | std::ios::showbase | std::ios::showpos, 10, '_', "01000000000000000000000"},
+{0x8000000000000000, std::ios::oct | std::ios::internal, 0, '_', "1000000000000000000000"},
+{0x8000000000000000, std::ios::oct | std::ios::internal, 10, '_', "1000000000000000000000"},
+{0x8000000000000000, std::ios::oct | std::ios::internal | std::ios::showpos, 0, '_', "1000000000000000000000"},
+{0x8000000000000000, std::ios::oct | std::ios::internal | std::ios::showpos, 10, '_', "1000000000000000000000"},
+{0x8000000000000000, std::ios::oct | std::ios::internal | std::ios::showbase, 0, '_', "01000000000000000000000"},
+{0x8000000000000000, std::ios::oct | std::ios::internal | std::ios::showbase, 10, '_', "01000000000000000000000"},
+{0x8000000000000000, std::ios::oct | std::ios::internal | std::ios::showbase | std::ios::showpos, 0, '_', "01000000000000000000000"},
+{0x8000000000000000, std::ios::oct | std::ios::internal | std::ios::showbase | std::ios::showpos, 10, '_', "01000000000000000000000"},
+{0x8000000000000000, std::ios::oct | std::ios::internal | std::ios::uppercase, 0, '_', "1000000000000000000000"},
+{0x8000000000000000, std::ios::oct | std::ios::internal | std::ios::uppercase, 10, '_', "1000000000000000000000"},
+{0x8000000000000000, std::ios::oct | std::ios::internal | std::ios::uppercase | std::ios::showpos, 0, '_', "1000000000000000000000"},
+{0x8000000000000000, std::ios::oct | std::ios::internal | std::ios::uppercase | std::ios::showpos, 10, '_', "1000000000000000000000"},
+{0x8000000000000000, std::ios::oct | std::ios::internal | std::ios::uppercase | std::ios::showbase, 0, '_', "01000000000000000000000"},
+{0x8000000000000000, std::ios::oct | std::ios::internal | std::ios::uppercase | std::ios::showbase, 10, '_', "01000000000000000000000"},
+{0x8000000000000000, std::ios::oct | std::ios::internal | std::ios::uppercase | std::ios::showbase | std::ios::showpos, 0, '_', "01000000000000000000000"},
+{0x8000000000000000, std::ios::oct | std::ios::internal | std::ios::uppercase | std::ios::showbase | std::ios::showpos, 10, '_', "01000000000000000000000"},
+{0x8000000000000000, std::ios::oct | std::ios::right, 0, '_', "1000000000000000000000"},
+{0x8000000000000000, std::ios::oct | std::ios::right, 10, '_', "1000000000000000000000"},
+{0x8000000000000000, std::ios::oct | std::ios::right | std::ios::showpos, 0, '_', "1000000000000000000000"},
+{0x8000000000000000, std::ios::oct | std::ios::right | std::ios::showpos, 10, '_', "1000000000000000000000"},
+{0x8000000000000000, std::ios::oct | std::ios::right | std::ios::showbase, 0, '_', "01000000000000000000000"},
+{0x8000000000000000, std::ios::oct | std::ios::right | std::ios::showbase, 10, '_', "01000000000000000000000"},
+{0x8000000000000000, std::ios::oct | std::ios::right | std::ios::showbase | std::ios::showpos, 0, '_', "01000000000000000000000"},
+{0x8000000000000000, std::ios::oct | std::ios::right | std::ios::showbase | std::ios::showpos, 10, '_', "01000000000000000000000"},
+{0x8000000000000000, std::ios::oct | std::ios::right | std::ios::uppercase, 0, '_', "1000000000000000000000"},
+{0x8000000000000000, std::ios::oct | std::ios::right | std::ios::uppercase, 10, '_', "1000000000000000000000"},
+{0x8000000000000000, std::ios::oct | std::ios::right | std::ios::uppercase | std::ios::showpos, 0, '_', "1000000000000000000000"},
+{0x8000000000000000, std::ios::oct | std::ios::right | std::ios::uppercase | std::ios::showpos, 10, '_', "1000000000000000000000"},
+{0x8000000000000000, std::ios::oct | std::ios::right | std::ios::uppercase | std::ios::showbase, 0, '_', "01000000000000000000000"},
+{0x8000000000000000, std::ios::oct | std::ios::right | std::ios::uppercase | std::ios::showbase, 10, '_', "01000000000000000000000"},
+{0x8000000000000000, std::ios::oct | std::ios::right | std::ios::uppercase | std::ios::showbase | std::ios::showpos, 0, '_', "01000000000000000000000"},
+{0x8000000000000000, std::ios::oct | std::ios::right | std::ios::uppercase | std::ios::showbase | std::ios::showpos, 10, '_', "01000000000000000000000"},
+{0x8000000000000000, std::ios::hex | std::ios::left, 0, '_', "8000000000000000"},
+{0x8000000000000000, std::ios::hex | std::ios::left, 10, '_', "8000000000000000"},
+{0x8000000000000000, std::ios::hex | std::ios::left | std::ios::showpos, 0, '_', "8000000000000000"},
+{0x8000000000000000, std::ios::hex | std::ios::left | std::ios::showpos, 10, '_', "8000000000000000"},
+{0x8000000000000000, std::ios::hex | std::ios::left | std::ios::showbase, 0, '_', "0x8000000000000000"},
+{0x8000000000000000, std::ios::hex | std::ios::left | std::ios::showbase, 10, '_', "0x8000000000000000"},
+{0x8000000000000000, std::ios::hex | std::ios::left | std::ios::showbase | std::ios::showpos, 0, '_', "0x8000000000000000"},
+{0x8000000000000000, std::ios::hex | std::ios::left | std::ios::showbase | std::ios::showpos, 10, '_', "0x8000000000000000"},
+{0x8000000000000000, std::ios::hex | std::ios::left | std::ios::uppercase, 0, '_', "8000000000000000"},
+{0x8000000000000000, std::ios::hex | std::ios::left | std::ios::uppercase, 10, '_', "8000000000000000"},
+{0x8000000000000000, std::ios::hex | std::ios::left | std::ios::uppercase | std::ios::showpos, 0, '_', "8000000000000000"},
+{0x8000000000000000, std::ios::hex | std::ios::left | std::ios::uppercase | std::ios::showpos, 10, '_', "8000000000000000"},
+{0x8000000000000000, std::ios::hex | std::ios::left | std::ios::uppercase | std::ios::showbase, 0, '_', "0X8000000000000000"},
+{0x8000000000000000, std::ios::hex | std::ios::left | std::ios::uppercase | std::ios::showbase, 10, '_', "0X8000000000000000"},
+{0x8000000000000000, std::ios::hex | std::ios::left | std::ios::uppercase | std::ios::showbase | std::ios::showpos, 0, '_', "0X8000000000000000"},
+{0x8000000000000000, std::ios::hex | std::ios::left | std::ios::uppercase | std::ios::showbase | std::ios::showpos, 10, '_', "0X8000000000000000"},
+{0x8000000000000000, std::ios::hex | std::ios::internal, 0, '_', "8000000000000000"},
+{0x8000000000000000, std::ios::hex | std::ios::internal, 10, '_', "8000000000000000"},
+{0x8000000000000000, std::ios::hex | std::ios::internal | std::ios::showpos, 0, '_', "8000000000000000"},
+{0x8000000000000000, std::ios::hex | std::ios::internal | std::ios::showpos, 10, '_', "8000000000000000"},
+{0x8000000000000000, std::ios::hex | std::ios::internal | std::ios::showbase, 0, '_', "0x8000000000000000"},
+{0x8000000000000000, std::ios::hex | std::ios::internal | std::ios::showbase, 10, '_', "0x8000000000000000"},
+{0x8000000000000000, std::ios::hex | std::ios::internal | std::ios::showbase | std::ios::showpos, 0, '_', "0x8000000000000000"},
+{0x8000000000000000, std::ios::hex | std::ios::internal | std::ios::showbase | std::ios::showpos, 10, '_', "0x8000000000000000"},
+{0x8000000000000000, std::ios::hex | std::ios::internal | std::ios::uppercase, 0, '_', "8000000000000000"},
+{0x8000000000000000, std::ios::hex | std::ios::internal | std::ios::uppercase, 10, '_', "8000000000000000"},
+{0x8000000000000000, std::ios::hex | std::ios::internal | std::ios::uppercase | std::ios::showpos, 0, '_', "8000000000000000"},
+{0x8000000000000000, std::ios::hex | std::ios::internal | std::ios::uppercase | std::ios::showpos, 10, '_', "8000000000000000"},
+{0x8000000000000000, std::ios::hex | std::ios::internal | std::ios::uppercase | std::ios::showbase, 0, '_', "0X8000000000000000"},
+{0x8000000000000000, std::ios::hex | std::ios::internal | std::ios::uppercase | std::ios::showbase, 10, '_', "0X8000000000000000"},
+{0x8000000000000000, std::ios::hex | std::ios::internal | std::ios::uppercase | std::ios::showbase | std::ios::showpos, 0, '_', "0X8000000000000000"},
+{0x8000000000000000, std::ios::hex | std::ios::internal | std::ios::uppercase | std::ios::showbase | std::ios::showpos, 10, '_', "0X8000000000000000"},
+{0x8000000000000000, std::ios::hex | std::ios::right, 0, '_', "8000000000000000"},
+{0x8000000000000000, std::ios::hex | std::ios::right, 10, '_', "8000000000000000"},
+{0x8000000000000000, std::ios::hex | std::ios::right | std::ios::showpos, 0, '_', "8000000000000000"},
+{0x8000000000000000, std::ios::hex | std::ios::right | std::ios::showpos, 10, '_', "8000000000000000"},
+{0x8000000000000000, std::ios::hex | std::ios::right | std::ios::showbase, 0, '_', "0x8000000000000000"},
+{0x8000000000000000, std::ios::hex | std::ios::right | std::ios::showbase, 10, '_', "0x8000000000000000"},
+{0x8000000000000000, std::ios::hex | std::ios::right | std::ios::showbase | std::ios::showpos, 0, '_', "0x8000000000000000"},
+{0x8000000000000000, std::ios::hex | std::ios::right | std::ios::showbase | std::ios::showpos, 10, '_', "0x8000000000000000"},
+{0x8000000000000000, std::ios::hex | std::ios::right | std::ios::uppercase, 0, '_', "8000000000000000"},
+{0x8000000000000000, std::ios::hex | std::ios::right | std::ios::uppercase, 10, '_', "8000000000000000"},
+{0x8000000000000000, std::ios::hex | std::ios::right | std::ios::uppercase | std::ios::showpos, 0, '_', "8000000000000000"},
+{0x8000000000000000, std::ios::hex | std::ios::right | std::ios::uppercase | std::ios::showpos, 10, '_', "8000000000000000"},
+{0x8000000000000000, std::ios::hex | std::ios::right | std::ios::uppercase | std::ios::showbase, 0, '_', "0X8000000000000000"},
+{0x8000000000000000, std::ios::hex | std::ios::right | std::ios::uppercase | std::ios::showbase, 10, '_', "0X8000000000000000"},
+{0x8000000000000000, std::ios::hex | std::ios::right | std::ios::uppercase | std::ios::showbase | std::ios::showpos, 0, '_', "0X8000000000000000"},
+{0x8000000000000000, std::ios::hex | std::ios::right | std::ios::uppercase | std::ios::showbase | std::ios::showpos, 10, '_', "0X8000000000000000"},
+{std::numeric_limits<uint64_t>::max(), std::ios::dec | std::ios::left, 0, '_', "18446744073709551615"},
+{std::numeric_limits<uint64_t>::max(), std::ios::dec | std::ios::left, 10, '_', "18446744073709551615"},
+{std::numeric_limits<uint64_t>::max(), std::ios::dec | std::ios::left | std::ios::showpos, 0, '_', "18446744073709551615"},
+{std::numeric_limits<uint64_t>::max(), std::ios::dec | std::ios::left | std::ios::showpos, 10, '_', "18446744073709551615"},
+{std::numeric_limits<uint64_t>::max(), std::ios::dec | std::ios::left | std::ios::showbase, 0, '_', "18446744073709551615"},
+{std::numeric_limits<uint64_t>::max(), std::ios::dec | std::ios::left | std::ios::showbase, 10, '_', "18446744073709551615"},
+{std::numeric_limits<uint64_t>::max(), std::ios::dec | std::ios::left | std::ios::showbase | std::ios::showpos, 0, '_', "18446744073709551615"},
+{std::numeric_limits<uint64_t>::max(), std::ios::dec | std::ios::left | std::ios::showbase | std::ios::showpos, 10, '_', "18446744073709551615"},
+{std::numeric_limits<uint64_t>::max(), std::ios::dec | std::ios::left | std::ios::uppercase, 0, '_', "18446744073709551615"},
+{std::numeric_limits<uint64_t>::max(), std::ios::dec | std::ios::left | std::ios::uppercase, 10, '_', "18446744073709551615"},
+{std::numeric_limits<uint64_t>::max(), std::ios::dec | std::ios::left | std::ios::uppercase | std::ios::showpos, 0, '_', "18446744073709551615"},
+{std::numeric_limits<uint64_t>::max(), std::ios::dec | std::ios::left | std::ios::uppercase | std::ios::showpos, 10, '_', "18446744073709551615"},
+{std::numeric_limits<uint64_t>::max(), std::ios::dec | std::ios::left | std::ios::uppercase | std::ios::showbase, 0, '_', "18446744073709551615"},
+{std::numeric_limits<uint64_t>::max(), std::ios::dec | std::ios::left | std::ios::uppercase | std::ios::showbase, 10, '_', "18446744073709551615"},
+{std::numeric_limits<uint64_t>::max(), std::ios::dec | std::ios::left | std::ios::uppercase | std::ios::showbase | std::ios::showpos, 0, '_', "18446744073709551615"},
+{std::numeric_limits<uint64_t>::max(), std::ios::dec | std::ios::left | std::ios::uppercase | std::ios::showbase | std::ios::showpos, 10, '_', "18446744073709551615"},
+{std::numeric_limits<uint64_t>::max(), std::ios::dec | std::ios::internal, 0, '_', "18446744073709551615"},
+{std::numeric_limits<uint64_t>::max(), std::ios::dec | std::ios::internal, 10, '_', "18446744073709551615"},
+{std::numeric_limits<uint64_t>::max(), std::ios::dec | std::ios::internal | std::ios::showpos, 0, '_', "18446744073709551615"},
+{std::numeric_limits<uint64_t>::max(), std::ios::dec | std::ios::internal | std::ios::showpos, 10, '_', "18446744073709551615"},
+{std::numeric_limits<uint64_t>::max(), std::ios::dec | std::ios::internal | std::ios::showbase, 0, '_', "18446744073709551615"},
+{std::numeric_limits<uint64_t>::max(), std::ios::dec | std::ios::internal | std::ios::showbase, 10, '_', "18446744073709551615"},
+{std::numeric_limits<uint64_t>::max(), std::ios::dec | std::ios::internal | std::ios::showbase | std::ios::showpos, 0, '_', "18446744073709551615"},
+{std::numeric_limits<uint64_t>::max(), std::ios::dec | std::ios::internal | std::ios::showbase | std::ios::showpos, 10, '_', "18446744073709551615"},
+{std::numeric_limits<uint64_t>::max(), std::ios::dec | std::ios::internal | std::ios::uppercase, 0, '_', "18446744073709551615"},
+{std::numeric_limits<uint64_t>::max(), std::ios::dec | std::ios::internal | std::ios::uppercase, 10, '_', "18446744073709551615"},
+{std::numeric_limits<uint64_t>::max(), std::ios::dec | std::ios::internal | std::ios::uppercase | std::ios::showpos, 0, '_', "18446744073709551615"},
+{std::numeric_limits<uint64_t>::max(), std::ios::dec | std::ios::internal | std::ios::uppercase | std::ios::showpos, 10, '_', "18446744073709551615"},
+{std::numeric_limits<uint64_t>::max(), std::ios::dec | std::ios::internal | std::ios::uppercase | std::ios::showbase, 0, '_', "18446744073709551615"},
+{std::numeric_limits<uint64_t>::max(), std::ios::dec | std::ios::internal | std::ios::uppercase | std::ios::showbase, 10, '_', "18446744073709551615"},
+{std::numeric_limits<uint64_t>::max(), std::ios::dec | std::ios::internal | std::ios::uppercase | std::ios::showbase | std::ios::showpos, 0, '_', "18446744073709551615"},
+{std::numeric_limits<uint64_t>::max(), std::ios::dec | std::ios::internal | std::ios::uppercase | std::ios::showbase | std::ios::showpos, 10, '_', "18446744073709551615"},
+{std::numeric_limits<uint64_t>::max(), std::ios::dec | std::ios::right, 0, '_', "18446744073709551615"},
+{std::numeric_limits<uint64_t>::max(), std::ios::dec | std::ios::right, 10, '_', "18446744073709551615"},
+{std::numeric_limits<uint64_t>::max(), std::ios::dec | std::ios::right | std::ios::showpos, 0, '_', "18446744073709551615"},
+{std::numeric_limits<uint64_t>::max(), std::ios::dec | std::ios::right | std::ios::showpos, 10, '_', "18446744073709551615"},
+{std::numeric_limits<uint64_t>::max(), std::ios::dec | std::ios::right | std::ios::showbase, 0, '_', "18446744073709551615"},
+{std::numeric_limits<uint64_t>::max(), std::ios::dec | std::ios::right | std::ios::showbase, 10, '_', "18446744073709551615"},
+{std::numeric_limits<uint64_t>::max(), std::ios::dec | std::ios::right | std::ios::showbase | std::ios::showpos, 0, '_', "18446744073709551615"},
+{std::numeric_limits<uint64_t>::max(), std::ios::dec | std::ios::right | std::ios::showbase | std::ios::showpos, 10, '_', "18446744073709551615"},
+{std::numeric_limits<uint64_t>::max(), std::ios::dec | std::ios::right | std::ios::uppercase, 0, '_', "18446744073709551615"},
+{std::numeric_limits<uint64_t>::max(), std::ios::dec | std::ios::right | std::ios::uppercase, 10, '_', "18446744073709551615"},
+{std::numeric_limits<uint64_t>::max(), std::ios::dec | std::ios::right | std::ios::uppercase | std::ios::showpos, 0, '_', "18446744073709551615"},
+{std::numeric_limits<uint64_t>::max(), std::ios::dec | std::ios::right | std::ios::uppercase | std::ios::showpos, 10, '_', "18446744073709551615"},
+{std::numeric_limits<uint64_t>::max(), std::ios::dec | std::ios::right | std::ios::uppercase | std::ios::showbase, 0, '_', "18446744073709551615"},
+{std::numeric_limits<uint64_t>::max(), std::ios::dec | std::ios::right | std::ios::uppercase | std::ios::showbase, 10, '_', "18446744073709551615"},
+{std::numeric_limits<uint64_t>::max(), std::ios::dec | std::ios::right | std::ios::uppercase | std::ios::showbase | std::ios::showpos, 0, '_', "18446744073709551615"},
+{std::numeric_limits<uint64_t>::max(), std::ios::dec | std::ios::right | std::ios::uppercase | std::ios::showbase | std::ios::showpos, 10, '_', "18446744073709551615"},
+{std::numeric_limits<uint64_t>::max(), std::ios::oct | std::ios::left, 0, '_', "1777777777777777777777"},
+{std::numeric_limits<uint64_t>::max(), std::ios::oct | std::ios::left, 10, '_', "1777777777777777777777"},
+{std::numeric_limits<uint64_t>::max(), std::ios::oct | std::ios::left | std::ios::showpos, 0, '_', "1777777777777777777777"},
+{std::numeric_limits<uint64_t>::max(), std::ios::oct | std::ios::left | std::ios::showpos, 10, '_', "1777777777777777777777"},
+{std::numeric_limits<uint64_t>::max(), std::ios::oct | std::ios::left | std::ios::showbase, 0, '_', "01777777777777777777777"},
+{std::numeric_limits<uint64_t>::max(), std::ios::oct | std::ios::left | std::ios::showbase, 10, '_', "01777777777777777777777"},
+{std::numeric_limits<uint64_t>::max(), std::ios::oct | std::ios::left | std::ios::showbase | std::ios::showpos, 0, '_', "01777777777777777777777"},
+{std::numeric_limits<uint64_t>::max(), std::ios::oct | std::ios::left | std::ios::showbase | std::ios::showpos, 10, '_', "01777777777777777777777"},
+{std::numeric_limits<uint64_t>::max(), std::ios::oct | std::ios::left | std::ios::uppercase, 0, '_', "1777777777777777777777"},
+{std::numeric_limits<uint64_t>::max(), std::ios::oct | std::ios::left | std::ios::uppercase, 10, '_', "1777777777777777777777"},
+{std::numeric_limits<uint64_t>::max(), std::ios::oct | std::ios::left | std::ios::uppercase | std::ios::showpos, 0, '_', "1777777777777777777777"},
+{std::numeric_limits<uint64_t>::max(), std::ios::oct | std::ios::left | std::ios::uppercase | std::ios::showpos, 10, '_', "1777777777777777777777"},
+{std::numeric_limits<uint64_t>::max(), std::ios::oct | std::ios::left | std::ios::uppercase | std::ios::showbase, 0, '_', "01777777777777777777777"},
+{std::numeric_limits<uint64_t>::max(), std::ios::oct | std::ios::left | std::ios::uppercase | std::ios::showbase, 10, '_', "01777777777777777777777"},
+{std::numeric_limits<uint64_t>::max(), std::ios::oct | std::ios::left | std::ios::uppercase | std::ios::showbase | std::ios::showpos, 0, '_', "01777777777777777777777"},
+{std::numeric_limits<uint64_t>::max(), std::ios::oct | std::ios::left | std::ios::uppercase | std::ios::showbase | std::ios::showpos, 10, '_', "01777777777777777777777"},
+{std::numeric_limits<uint64_t>::max(), std::ios::oct | std::ios::internal, 0, '_', "1777777777777777777777"},
+{std::numeric_limits<uint64_t>::max(), std::ios::oct | std::ios::internal, 10, '_', "1777777777777777777777"},
+{std::numeric_limits<uint64_t>::max(), std::ios::oct | std::ios::internal | std::ios::showpos, 0, '_', "1777777777777777777777"},
+{std::numeric_limits<uint64_t>::max(), std::ios::oct | std::ios::internal | std::ios::showpos, 10, '_', "1777777777777777777777"},
+{std::numeric_limits<uint64_t>::max(), std::ios::oct | std::ios::internal | std::ios::showbase, 0, '_', "01777777777777777777777"},
+{std::numeric_limits<uint64_t>::max(), std::ios::oct | std::ios::internal | std::ios::showbase, 10, '_', "01777777777777777777777"},
+{std::numeric_limits<uint64_t>::max(), std::ios::oct | std::ios::internal | std::ios::showbase | std::ios::showpos, 0, '_', "01777777777777777777777"},
+{std::numeric_limits<uint64_t>::max(), std::ios::oct | std::ios::internal | std::ios::showbase | std::ios::showpos, 10, '_', "01777777777777777777777"},
+{std::numeric_limits<uint64_t>::max(), std::ios::oct | std::ios::internal | std::ios::uppercase, 0, '_', "1777777777777777777777"},
+{std::numeric_limits<uint64_t>::max(), std::ios::oct | std::ios::internal | std::ios::uppercase, 10, '_', "1777777777777777777777"},
+{std::numeric_limits<uint64_t>::max(), std::ios::oct | std::ios::internal | std::ios::uppercase | std::ios::showpos, 0, '_', "1777777777777777777777"},
+{std::numeric_limits<uint64_t>::max(), std::ios::oct | std::ios::internal | std::ios::uppercase | std::ios::showpos, 10, '_', "1777777777777777777777"},
+{std::numeric_limits<uint64_t>::max(), std::ios::oct | std::ios::internal | std::ios::uppercase | std::ios::showbase, 0, '_', "01777777777777777777777"},
+{std::numeric_limits<uint64_t>::max(), std::ios::oct | std::ios::internal | std::ios::uppercase | std::ios::showbase, 10, '_', "01777777777777777777777"},
+{std::numeric_limits<uint64_t>::max(), std::ios::oct | std::ios::internal | std::ios::uppercase | std::ios::showbase | std::ios::showpos, 0, '_', "01777777777777777777777"},
+{std::numeric_limits<uint64_t>::max(), std::ios::oct | std::ios::internal | std::ios::uppercase | std::ios::showbase | std::ios::showpos, 10, '_', "01777777777777777777777"},
+{std::numeric_limits<uint64_t>::max(), std::ios::oct | std::ios::right, 0, '_', "1777777777777777777777"},
+{std::numeric_limits<uint64_t>::max(), std::ios::oct | std::ios::right, 10, '_', "1777777777777777777777"},
+{std::numeric_limits<uint64_t>::max(), std::ios::oct | std::ios::right | std::ios::showpos, 0, '_', "1777777777777777777777"},
+{std::numeric_limits<uint64_t>::max(), std::ios::oct | std::ios::right | std::ios::showpos, 10, '_', "1777777777777777777777"},
+{std::numeric_limits<uint64_t>::max(), std::ios::oct | std::ios::right | std::ios::showbase, 0, '_', "01777777777777777777777"},
+{std::numeric_limits<uint64_t>::max(), std::ios::oct | std::ios::right | std::ios::showbase, 10, '_', "01777777777777777777777"},
+{std::numeric_limits<uint64_t>::max(), std::ios::oct | std::ios::right | std::ios::showbase | std::ios::showpos, 0, '_', "01777777777777777777777"},
+{std::numeric_limits<uint64_t>::max(), std::ios::oct | std::ios::right | std::ios::showbase | std::ios::showpos, 10, '_', "01777777777777777777777"},
+{std::numeric_limits<uint64_t>::max(), std::ios::oct | std::ios::right | std::ios::uppercase, 0, '_', "1777777777777777777777"},
+{std::numeric_limits<uint64_t>::max(), std::ios::oct | std::ios::right | std::ios::uppercase, 10, '_', "1777777777777777777777"},
+{std::numeric_limits<uint64_t>::max(), std::ios::oct | std::ios::right | std::ios::uppercase | std::ios::showpos, 0, '_', "1777777777777777777777"},
+{std::numeric_limits<uint64_t>::max(), std::ios::oct | std::ios::right | std::ios::uppercase | std::ios::showpos, 10, '_', "1777777777777777777777"},
+{std::numeric_limits<uint64_t>::max(), std::ios::oct | std::ios::right | std::ios::uppercase | std::ios::showbase, 0, '_', "01777777777777777777777"},
+{std::numeric_limits<uint64_t>::max(), std::ios::oct | std::ios::right | std::ios::uppercase | std::ios::showbase, 10, '_', "01777777777777777777777"},
+{std::numeric_limits<uint64_t>::max(), std::ios::oct | std::ios::right | std::ios::uppercase | std::ios::showbase | std::ios::showpos, 0, '_', "01777777777777777777777"},
+{std::numeric_limits<uint64_t>::max(), std::ios::oct | std::ios::right | std::ios::uppercase | std::ios::showbase | std::ios::showpos, 10, '_', "01777777777777777777777"},
+{std::numeric_limits<uint64_t>::max(), std::ios::hex | std::ios::left, 0, '_', "ffffffffffffffff"},
+{std::numeric_limits<uint64_t>::max(), std::ios::hex | std::ios::left, 10, '_', "ffffffffffffffff"},
+{std::numeric_limits<uint64_t>::max(), std::ios::hex | std::ios::left | std::ios::showpos, 0, '_', "ffffffffffffffff"},
+{std::numeric_limits<uint64_t>::max(), std::ios::hex | std::ios::left | std::ios::showpos, 10, '_', "ffffffffffffffff"},
+{std::numeric_limits<uint64_t>::max(), std::ios::hex | std::ios::left | std::ios::showbase, 0, '_', "0xffffffffffffffff"},
+{std::numeric_limits<uint64_t>::max(), std::ios::hex | std::ios::left | std::ios::showbase, 10, '_', "0xffffffffffffffff"},
+{std::numeric_limits<uint64_t>::max(), std::ios::hex | std::ios::left | std::ios::showbase | std::ios::showpos, 0, '_', "0xffffffffffffffff"},
+{std::numeric_limits<uint64_t>::max(), std::ios::hex | std::ios::left | std::ios::showbase | std::ios::showpos, 10, '_', "0xffffffffffffffff"},
+{std::numeric_limits<uint64_t>::max(), std::ios::hex | std::ios::left | std::ios::uppercase, 0, '_', "FFFFFFFFFFFFFFFF"},
+{std::numeric_limits<uint64_t>::max(), std::ios::hex | std::ios::left | std::ios::uppercase, 10, '_', "FFFFFFFFFFFFFFFF"},
+{std::numeric_limits<uint64_t>::max(), std::ios::hex | std::ios::left | std::ios::uppercase | std::ios::showpos, 0, '_', "FFFFFFFFFFFFFFFF"},
+{std::numeric_limits<uint64_t>::max(), std::ios::hex | std::ios::left | std::ios::uppercase | std::ios::showpos, 10, '_', "FFFFFFFFFFFFFFFF"},
+{std::numeric_limits<uint64_t>::max(), std::ios::hex | std::ios::left | std::ios::uppercase | std::ios::showbase, 0, '_', "0XFFFFFFFFFFFFFFFF"},
+{std::numeric_limits<uint64_t>::max(), std::ios::hex | std::ios::left | std::ios::uppercase | std::ios::showbase, 10, '_', "0XFFFFFFFFFFFFFFFF"},
+{std::numeric_limits<uint64_t>::max(), std::ios::hex | std::ios::left | std::ios::uppercase | std::ios::showbase | std::ios::showpos, 0, '_', "0XFFFFFFFFFFFFFFFF"},
+{std::numeric_limits<uint64_t>::max(), std::ios::hex | std::ios::left | std::ios::uppercase | std::ios::showbase | std::ios::showpos, 10, '_', "0XFFFFFFFFFFFFFFFF"},
+{std::numeric_limits<uint64_t>::max(), std::ios::hex | std::ios::internal, 0, '_', "ffffffffffffffff"},
+{std::numeric_limits<uint64_t>::max(), std::ios::hex | std::ios::internal, 10, '_', "ffffffffffffffff"},
+{std::numeric_limits<uint64_t>::max(), std::ios::hex | std::ios::internal | std::ios::showpos, 0, '_', "ffffffffffffffff"},
+{std::numeric_limits<uint64_t>::max(), std::ios::hex | std::ios::internal | std::ios::showpos, 10, '_', "ffffffffffffffff"},
+{std::numeric_limits<uint64_t>::max(), std::ios::hex | std::ios::internal | std::ios::showbase, 0, '_', "0xffffffffffffffff"},
+{std::numeric_limits<uint64_t>::max(), std::ios::hex | std::ios::internal | std::ios::showbase, 10, '_', "0xffffffffffffffff"},
+{std::numeric_limits<uint64_t>::max(), std::ios::hex | std::ios::internal | std::ios::showbase | std::ios::showpos, 0, '_', "0xffffffffffffffff"},
+{std::numeric_limits<uint64_t>::max(), std::ios::hex | std::ios::internal | std::ios::showbase | std::ios::showpos, 10, '_', "0xffffffffffffffff"},
+{std::numeric_limits<uint64_t>::max(), std::ios::hex | std::ios::internal | std::ios::uppercase, 0, '_', "FFFFFFFFFFFFFFFF"},
+{std::numeric_limits<uint64_t>::max(), std::ios::hex | std::ios::internal | std::ios::uppercase, 10, '_', "FFFFFFFFFFFFFFFF"},
+{std::numeric_limits<uint64_t>::max(), std::ios::hex | std::ios::internal | std::ios::uppercase | std::ios::showpos, 0, '_', "FFFFFFFFFFFFFFFF"},
+{std::numeric_limits<uint64_t>::max(), std::ios::hex | std::ios::internal | std::ios::uppercase | std::ios::showpos, 10, '_', "FFFFFFFFFFFFFFFF"},
+{std::numeric_limits<uint64_t>::max(), std::ios::hex | std::ios::internal | std::ios::uppercase | std::ios::showbase, 0, '_', "0XFFFFFFFFFFFFFFFF"},
+{std::numeric_limits<uint64_t>::max(), std::ios::hex | std::ios::internal | std::ios::uppercase | std::ios::showbase, 10, '_', "0XFFFFFFFFFFFFFFFF"},
+{std::numeric_limits<uint64_t>::max(), std::ios::hex | std::ios::internal | std::ios::uppercase | std::ios::showbase | std::ios::showpos, 0, '_', "0XFFFFFFFFFFFFFFFF"},
+{std::numeric_limits<uint64_t>::max(), std::ios::hex | std::ios::internal | std::ios::uppercase | std::ios::showbase | std::ios::showpos, 10, '_', "0XFFFFFFFFFFFFFFFF"},
+{std::numeric_limits<uint64_t>::max(), std::ios::hex | std::ios::right, 0, '_', "ffffffffffffffff"},
+{std::numeric_limits<uint64_t>::max(), std::ios::hex | std::ios::right, 10, '_', "ffffffffffffffff"},
+{std::numeric_limits<uint64_t>::max(), std::ios::hex | std::ios::right | std::ios::showpos, 0, '_', "ffffffffffffffff"},
+{std::numeric_limits<uint64_t>::max(), std::ios::hex | std::ios::right | std::ios::showpos, 10, '_', "ffffffffffffffff"},
+{std::numeric_limits<uint64_t>::max(), std::ios::hex | std::ios::right | std::ios::showbase, 0, '_', "0xffffffffffffffff"},
+{std::numeric_limits<uint64_t>::max(), std::ios::hex | std::ios::right | std::ios::showbase, 10, '_', "0xffffffffffffffff"},
+{std::numeric_limits<uint64_t>::max(), std::ios::hex | std::ios::right | std::ios::showbase | std::ios::showpos, 0, '_', "0xffffffffffffffff"},
+{std::numeric_limits<uint64_t>::max(), std::ios::hex | std::ios::right | std::ios::showbase | std::ios::showpos, 10, '_', "0xffffffffffffffff"},
+{std::numeric_limits<uint64_t>::max(), std::ios::hex | std::ios::right | std::ios::uppercase, 0, '_', "FFFFFFFFFFFFFFFF"},
+{std::numeric_limits<uint64_t>::max(), std::ios::hex | std::ios::right | std::ios::uppercase, 10, '_', "FFFFFFFFFFFFFFFF"},
+{std::numeric_limits<uint64_t>::max(), std::ios::hex | std::ios::right | std::ios::uppercase | std::ios::showpos, 0, '_', "FFFFFFFFFFFFFFFF"},
+{std::numeric_limits<uint64_t>::max(), std::ios::hex | std::ios::right | std::ios::uppercase | std::ios::showpos, 10, '_', "FFFFFFFFFFFFFFFF"},
+{std::numeric_limits<uint64_t>::max(), std::ios::hex | std::ios::right | std::ios::uppercase | std::ios::showbase, 0, '_', "0XFFFFFFFFFFFFFFFF"},
+{std::numeric_limits<uint64_t>::max(), std::ios::hex | std::ios::right | std::ios::uppercase | std::ios::showbase, 10, '_', "0XFFFFFFFFFFFFFFFF"},
+{std::numeric_limits<uint64_t>::max(), std::ios::hex | std::ios::right | std::ios::uppercase | std::ios::showbase | std::ios::showpos, 0, '_', "0XFFFFFFFFFFFFFFFF"},
+{std::numeric_limits<uint64_t>::max(), std::ios::hex | std::ios::right | std::ios::uppercase | std::ios::showbase | std::ios::showpos, 10, '_', "0XFFFFFFFFFFFFFFFF"},