Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[DO-NOT-MERGE] testing the power of clang-19 #3

Closed
wants to merge 1 commit into from

Conversation

tchaikov
Copy link
Owner

@tchaikov tchaikov commented Jul 8, 2024

No description provided.

Signed-off-by: Kefu Chai <tchaikov@gmail.com>
@tchaikov
Copy link
Owner Author

tchaikov commented Jul 8, 2024

clang-format 17.0.5 found issues in the formatting in your code:

View the diff from clang-format:
diff --git a/include/fmt/base.h b/include/fmt/base.h
index 86a23c2..ceb9845 100644
--- a/include/fmt/base.h
+++ b/include/fmt/base.h
@@ -465,8 +465,8 @@ template <typename Char> FMT_CONSTEXPR auto length(const Char* s) -> size_t {
 }
 
 template <typename Char>
-FMT_CONSTEXPR auto compare(const Char* s1, const Char* s2,
-                           std::size_t n) -> int {
+FMT_CONSTEXPR auto compare(const Char* s1, const Char* s2, std::size_t n)
+    -> int {
   for (; n != 0; ++s1, ++s2, --n) {
     if (*s1 < *s2) return -1;
     if (*s1 > *s2) return 1;
@@ -2048,17 +2048,12 @@ FMT_EXPORT using format_args = basic_format_args<format_context>;
 #  define FMT_ENUM_UNDERLYING_TYPE(type) : type
 #endif
 namespace align {
-enum type FMT_ENUM_UNDERLYING_TYPE(unsigned char) {
-  none,
-  left,
-  right,
-  center,
-  numeric
-};
+enum type FMT_ENUM_UNDERLYING_TYPE(unsigned char){none, left, right, center,
+                                                  numeric};
 }
 using align_t = align::type;
 namespace sign {
-enum type FMT_ENUM_UNDERLYING_TYPE(unsigned char) { none, minus, plus, space };
+enum type FMT_ENUM_UNDERLYING_TYPE(unsigned char){none, minus, plus, space};
 }
 using sign_t = sign::type;
 
@@ -2330,9 +2325,10 @@ template <typename Char> struct dynamic_spec_id_handler {
 
 // Parses [integer | "{" [arg_id] "}"].
 template <typename Char>
-FMT_CONSTEXPR auto parse_dynamic_spec(
-    const Char* begin, const Char* end, int& value, arg_ref<Char>& ref,
-    basic_format_parse_context<Char>& ctx) -> const Char* {
+FMT_CONSTEXPR auto parse_dynamic_spec(const Char* begin, const Char* end,
+                                      int& value, arg_ref<Char>& ref,
+                                      basic_format_parse_context<Char>& ctx)
+    -> const Char* {
   FMT_ASSERT(begin != end, "");
   if ('0' <= *begin && *begin <= '9') {
     int val = parse_nonnegative_int(begin, end, -1);
@@ -2351,9 +2347,10 @@ FMT_CONSTEXPR auto parse_dynamic_spec(
 }
 
 template <typename Char>
-FMT_CONSTEXPR auto parse_precision(
-    const Char* begin, const Char* end, int& value, arg_ref<Char>& ref,
-    basic_format_parse_context<Char>& ctx) -> const Char* {
+FMT_CONSTEXPR auto parse_precision(const Char* begin, const Char* end,
+                                   int& value, arg_ref<Char>& ref,
+                                   basic_format_parse_context<Char>& ctx)
+    -> const Char* {
   ++begin;
   if (begin == end || *begin == '}') {
     report_error("invalid precision");
@@ -2645,8 +2642,8 @@ template <typename T> struct strip_named_arg<T, true> {
 
 template <typename T, typename ParseContext>
 FMT_VISIBILITY("hidden")  // Suppress an ld warning on macOS (#3769).
-FMT_CONSTEXPR
-    auto parse_format_specs(ParseContext& ctx) -> decltype(ctx.begin()) {
+FMT_CONSTEXPR auto parse_format_specs(ParseContext& ctx)
+    -> decltype(ctx.begin()) {
   using char_type = typename ParseContext::char_type;
   using context = buffered_context<char_type>;
   using mapped_type = conditional_t<
@@ -2744,8 +2741,8 @@ template <typename Char, typename... Args> class format_string_checker {
     on_format_specs(id, begin, begin);  // Call parse() on empty specs.
   }
 
-  FMT_CONSTEXPR auto on_format_specs(int id, const Char* begin,
-                                     const Char*) -> const Char* {
+  FMT_CONSTEXPR auto on_format_specs(int id, const Char* begin, const Char*)
+      -> const Char* {
     context_.advance_to(begin);
     // id >= 0 check is a workaround for gcc 10 bug (#2065).
     return id >= 0 && id < num_args ? parse_funcs_[id](context_) : begin;
@@ -2827,8 +2824,8 @@ template <typename T, typename Char, type TYPE> struct native_formatter {
   }
 
   template <typename FormatContext>
-  FMT_CONSTEXPR auto format(const T& val,
-                            FormatContext& ctx) const -> decltype(ctx.out());
+  FMT_CONSTEXPR auto format(const T& val, FormatContext& ctx) const
+      -> decltype(ctx.out());
 };
 }  // namespace detail
 
@@ -2903,8 +2900,8 @@ inline auto runtime(string_view s) -> runtime_format_string<> { return {{s}}; }
 template <typename OutputIt,
           FMT_ENABLE_IF(detail::is_output_iterator<remove_cvref_t<OutputIt>,
                                                    char>::value)>
-auto vformat_to(OutputIt&& out, string_view fmt,
-                format_args args) -> remove_cvref_t<OutputIt> {
+auto vformat_to(OutputIt&& out, string_view fmt, format_args args)
+    -> remove_cvref_t<OutputIt> {
   auto&& buf = detail::get_buffer<char>(out);
   detail::vformat_to(buf, fmt, args, {});
   return detail::get_iterator(buf, out);
@@ -2923,8 +2920,8 @@ auto vformat_to(OutputIt&& out, string_view fmt,
 template <typename OutputIt, typename... T,
           FMT_ENABLE_IF(detail::is_output_iterator<remove_cvref_t<OutputIt>,
                                                    char>::value)>
-FMT_INLINE auto format_to(OutputIt&& out, format_string<T...> fmt,
-                          T&&... args) -> remove_cvref_t<OutputIt> {
+FMT_INLINE auto format_to(OutputIt&& out, format_string<T...> fmt, T&&... args)
+    -> remove_cvref_t<OutputIt> {
   return vformat_to(FMT_FWD(out), fmt, fmt::make_format_args(args...));
 }
 
@@ -2937,8 +2934,8 @@ template <typename OutputIt> struct format_to_n_result {
 
 template <typename OutputIt, typename... T,
           FMT_ENABLE_IF(detail::is_output_iterator<OutputIt, char>::value)>
-auto vformat_to_n(OutputIt out, size_t n, string_view fmt,
-                  format_args args) -> format_to_n_result<OutputIt> {
+auto vformat_to_n(OutputIt out, size_t n, string_view fmt, format_args args)
+    -> format_to_n_result<OutputIt> {
   using traits = detail::fixed_buffer_traits;
   auto buf = detail::iterator_buffer<OutputIt, char, traits>(out, n);
   detail::vformat_to(buf, fmt, args, {});
@@ -2980,15 +2977,15 @@ struct format_to_result {
 };
 
 template <size_t N>
-auto vformat_to(char (&out)[N], string_view fmt,
-                format_args args) -> format_to_result<char*> {
+auto vformat_to(char (&out)[N], string_view fmt, format_args args)
+    -> format_to_result<char*> {
   auto result = vformat_to_n(out, N, fmt, args);
   return {result.out, result.size > N};
 }
 
 template <size_t N, typename... T>
-FMT_INLINE auto format_to(char (&out)[N], format_string<T...> fmt,
-                          T&&... args) -> format_to_result<char*> {
+FMT_INLINE auto format_to(char (&out)[N], format_string<T...> fmt, T&&... args)
+    -> format_to_result<char*> {
   auto result = fmt::format_to_n(out, N, fmt, static_cast<T&&>(args)...);
   return {result.out, result.size > N};
 }
diff --git a/include/fmt/chrono.h b/include/fmt/chrono.h
index 06fa241..c93123f 100644
--- a/include/fmt/chrono.h
+++ b/include/fmt/chrono.h
@@ -74,8 +74,8 @@ template <typename To, typename From,
           FMT_ENABLE_IF(!std::is_same<From, To>::value &&
                         std::numeric_limits<From>::is_signed ==
                             std::numeric_limits<To>::is_signed)>
-FMT_CONSTEXPR auto lossless_integral_conversion(const From from,
-                                                int& ec) -> To {
+FMT_CONSTEXPR auto lossless_integral_conversion(const From from, int& ec)
+    -> To {
   ec = 0;
   using F = std::numeric_limits<From>;
   using T = std::numeric_limits<To>;
@@ -102,8 +102,8 @@ template <typename To, typename From,
           FMT_ENABLE_IF(!std::is_same<From, To>::value &&
                         std::numeric_limits<From>::is_signed !=
                             std::numeric_limits<To>::is_signed)>
-FMT_CONSTEXPR auto lossless_integral_conversion(const From from,
-                                                int& ec) -> To {
+FMT_CONSTEXPR auto lossless_integral_conversion(const From from, int& ec)
+    -> To {
   ec = 0;
   using F = std::numeric_limits<From>;
   using T = std::numeric_limits<To>;
@@ -135,8 +135,8 @@ FMT_CONSTEXPR auto lossless_integral_conversion(const From from,
 
 template <typename To, typename From,
           FMT_ENABLE_IF(std::is_same<From, To>::value)>
-FMT_CONSTEXPR auto lossless_integral_conversion(const From from,
-                                                int& ec) -> To {
+FMT_CONSTEXPR auto lossless_integral_conversion(const From from, int& ec)
+    -> To {
   ec = 0;
   return from;
 }  // function
@@ -389,8 +389,8 @@ void write_codecvt(codecvt_result<CodeUnit>& out, string_view in_buf,
 }
 
 template <typename OutputIt>
-auto write_encoded_tm_str(OutputIt out, string_view in,
-                          const std::locale& loc) -> OutputIt {
+auto write_encoded_tm_str(OutputIt out, string_view in, const std::locale& loc)
+    -> OutputIt {
   if (detail::use_utf8() && loc != get_classic_locale()) {
     // char16_t and char32_t codecvts are broken in MSVC (linkage errors) and
     // gcc-4.
@@ -419,8 +419,8 @@ auto write_encoded_tm_str(OutputIt out, string_view in,
 
 template <typename Char, typename OutputIt,
           FMT_ENABLE_IF(!std::is_same<Char, char>::value)>
-auto write_tm_str(OutputIt out, string_view sv,
-                  const std::locale& loc) -> OutputIt {
+auto write_tm_str(OutputIt out, string_view sv, const std::locale& loc)
+    -> OutputIt {
   codecvt_result<Char> unit;
   write_codecvt(unit, sv, loc);
   return copy<Char>(unit.buf, unit.end, out);
@@ -428,8 +428,8 @@ auto write_tm_str(OutputIt out, string_view sv,
 
 template <typename Char, typename OutputIt,
           FMT_ENABLE_IF(std::is_same<Char, char>::value)>
-auto write_tm_str(OutputIt out, string_view sv,
-                  const std::locale& loc) -> OutputIt {
+auto write_tm_str(OutputIt out, string_view sv, const std::locale& loc)
+    -> OutputIt {
   return write_encoded_tm_str(out, sv, loc);
 }
 
@@ -497,8 +497,9 @@ auto fmt_duration_cast(std::chrono::duration<FromRep, FromPeriod> from) -> To {
 }
 
 template <typename Duration>
-auto to_time_t(std::chrono::time_point<std::chrono::system_clock, Duration>
-                   time_point) -> std::time_t {
+auto to_time_t(
+    std::chrono::time_point<std::chrono::system_clock, Duration> time_point)
+    -> std::time_t {
   // Cannot use std::chrono::system_clock::to_time_t since this would first
   // require a cast to std::chrono::system_clock::time_point, which could
   // overflow.
@@ -600,8 +601,9 @@ inline auto gmtime(std::time_t time) -> std::tm {
 }
 
 template <typename Duration>
-inline auto gmtime(std::chrono::time_point<std::chrono::system_clock, Duration>
-                       time_point) -> std::tm {
+inline auto gmtime(
+    std::chrono::time_point<std::chrono::system_clock, Duration> time_point)
+    -> std::tm {
   return gmtime(detail::to_time_t(time_point));
 }
 
@@ -2217,8 +2219,8 @@ struct formatter<year_month_day, Char> : private formatter<std::tm, Char> {
   }
 
   template <typename FormatContext>
-  auto format(year_month_day val,
-              FormatContext& ctx) const -> decltype(ctx.out()) {
+  auto format(year_month_day val, FormatContext& ctx) const
+      -> decltype(ctx.out()) {
     auto time = std::tm();
     time.tm_year = static_cast<int>(val.year()) - 1900;
     time.tm_mon = static_cast<int>(static_cast<unsigned>(val.month())) - 1;
@@ -2268,8 +2270,8 @@ struct formatter<std::chrono::duration<Rep, Period>, Char> {
   }
 
   template <typename FormatContext>
-  auto format(std::chrono::duration<Rep, Period> d,
-              FormatContext& ctx) const -> decltype(ctx.out()) {
+  auto format(std::chrono::duration<Rep, Period> d, FormatContext& ctx) const
+      -> decltype(ctx.out()) {
     auto specs = specs_;
     auto precision = specs.precision;
     specs.precision = -1;
@@ -2340,8 +2342,8 @@ struct formatter<std::chrono::local_time<Duration>, Char>
   }
 
   template <typename FormatContext>
-  auto format(std::chrono::local_time<Duration> val,
-              FormatContext& ctx) const -> decltype(ctx.out()) {
+  auto format(std::chrono::local_time<Duration> val, FormatContext& ctx) const
+      -> decltype(ctx.out()) {
     using period = typename Duration::period;
     if (period::num != 1 || period::den != 1 ||
         std::is_floating_point<typename Duration::rep>::value) {
@@ -2418,8 +2420,8 @@ template <typename Char> struct formatter<std::tm, Char> {
   }
 
   template <typename FormatContext>
-  auto format(const std::tm& tm,
-              FormatContext& ctx) const -> decltype(ctx.out()) {
+  auto format(const std::tm& tm, FormatContext& ctx) const
+      -> decltype(ctx.out()) {
     return do_format<FormatContext, std::chrono::seconds>(tm, ctx, nullptr);
   }
 };
diff --git a/include/fmt/color.h b/include/fmt/color.h
index 85add4d..f0e9dd9 100644
--- a/include/fmt/color.h
+++ b/include/fmt/color.h
@@ -155,7 +155,7 @@ enum class color : uint32_t {
   white_smoke = 0xF5F5F5,              // rgb(245,245,245)
   yellow = 0xFFFF00,                   // rgb(255,255,0)
   yellow_green = 0x9ACD32              // rgb(154,205,50)
-};  // enum class color
+};                                     // enum class color
 
 enum class terminal_color : uint8_t {
   black = 30,
@@ -257,8 +257,8 @@ class text_style {
     return *this;
   }
 
-  friend FMT_CONSTEXPR auto operator|(text_style lhs,
-                                      const text_style& rhs) -> text_style {
+  friend FMT_CONSTEXPR auto operator|(text_style lhs, const text_style& rhs)
+      -> text_style {
     return lhs |= rhs;
   }
 
@@ -322,8 +322,8 @@ FMT_CONSTEXPR inline auto bg(detail::color_type background) noexcept
   return text_style(false, background);
 }
 
-FMT_CONSTEXPR inline auto operator|(emphasis lhs,
-                                    emphasis rhs) noexcept -> text_style {
+FMT_CONSTEXPR inline auto operator|(emphasis lhs, emphasis rhs) noexcept
+    -> text_style {
   return text_style(lhs) | rhs;
 }
 
@@ -405,8 +405,8 @@ template <typename Char> struct ansi_color_escape {
     out[2] = static_cast<Char>('0' + c % 10);
     out[3] = static_cast<Char>(delimiter);
   }
-  static FMT_CONSTEXPR auto has_emphasis(emphasis em,
-                                         emphasis mask) noexcept -> bool {
+  static FMT_CONSTEXPR auto has_emphasis(emphasis em, emphasis mask) noexcept
+      -> bool {
     return static_cast<uint8_t>(em) & static_cast<uint8_t>(mask);
   }
 };
@@ -502,8 +502,8 @@ void print(const text_style& ts, format_string<T...> fmt, T&&... args) {
   return print(stdout, ts, fmt, std::forward<T>(args)...);
 }
 
-inline auto vformat(const text_style& ts, string_view fmt,
-                    format_args args) -> std::string {
+inline auto vformat(const text_style& ts, string_view fmt, format_args args)
+    -> std::string {
   auto buf = memory_buffer();
   detail::vformat_to(buf, ts, fmt, args);
   return fmt::to_string(buf);
@@ -522,8 +522,8 @@ inline auto vformat(const text_style& ts, string_view fmt,
  * ```
  */
 template <typename... T>
-inline auto format(const text_style& ts, format_string<T...> fmt,
-                   T&&... args) -> std::string {
+inline auto format(const text_style& ts, format_string<T...> fmt, T&&... args)
+    -> std::string {
   return fmt::vformat(ts, fmt, fmt::make_format_args(args...));
 }
 
@@ -557,8 +557,8 @@ inline auto format_to(OutputIt out, const text_style& ts,
 template <typename T, typename Char>
 struct formatter<detail::styled_arg<T>, Char> : formatter<T, Char> {
   template <typename FormatContext>
-  auto format(const detail::styled_arg<T>& arg,
-              FormatContext& ctx) const -> decltype(ctx.out()) {
+  auto format(const detail::styled_arg<T>& arg, FormatContext& ctx) const
+      -> decltype(ctx.out()) {
     const auto& ts = arg.style;
     const auto& value = arg.value;
     auto out = ctx.out();
diff --git a/include/fmt/compile.h b/include/fmt/compile.h
index 04a8844..b2afc2c 100644
--- a/include/fmt/compile.h
+++ b/include/fmt/compile.h
@@ -22,8 +22,8 @@ FMT_EXPORT class compiled_string {};
 namespace detail {
 
 template <typename T, typename InputIt>
-FMT_CONSTEXPR inline auto copy(InputIt begin, InputIt end,
-                               counting_iterator it) -> counting_iterator {
+FMT_CONSTEXPR inline auto copy(InputIt begin, InputIt end, counting_iterator it)
+    -> counting_iterator {
   return it + (end - begin);
 }
 
@@ -484,8 +484,8 @@ FMT_CONSTEXPR OutputIt format_to(OutputIt out, const S&, Args&&... args) {
 
 template <typename OutputIt, typename S, typename... Args,
           FMT_ENABLE_IF(detail::is_compiled_string<S>::value)>
-auto format_to_n(OutputIt out, size_t n, const S& fmt,
-                 Args&&... args) -> format_to_n_result<OutputIt> {
+auto format_to_n(OutputIt out, size_t n, const S& fmt, Args&&... args)
+    -> format_to_n_result<OutputIt> {
   using traits = detail::fixed_buffer_traits;
   auto buf = detail::iterator_buffer<OutputIt, char, traits>(out, n);
   fmt::format_to(std::back_inserter(buf), fmt, std::forward<Args>(args)...);
@@ -494,8 +494,8 @@ auto format_to_n(OutputIt out, size_t n, const S& fmt,
 
 template <typename S, typename... Args,
           FMT_ENABLE_IF(detail::is_compiled_string<S>::value)>
-FMT_CONSTEXPR20 auto formatted_size(const S& fmt,
-                                    const Args&... args) -> size_t {
+FMT_CONSTEXPR20 auto formatted_size(const S& fmt, const Args&... args)
+    -> size_t {
   return fmt::format_to(detail::counting_iterator(), fmt, args...).count();
 }
 
diff --git a/include/fmt/format-inl.h b/include/fmt/format-inl.h
index b55721a..a887483 100644
--- a/include/fmt/format-inl.h
+++ b/include/fmt/format-inl.h
@@ -149,8 +149,8 @@ FMT_API FMT_FUNC auto format_facet<std::locale>::do_put(
 }
 #endif
 
-FMT_FUNC auto vsystem_error(int error_code, string_view fmt,
-                            format_args args) -> std::system_error {
+FMT_FUNC auto vsystem_error(int error_code, string_view fmt, format_args args)
+    -> std::system_error {
   auto ec = std::error_code(error_code, std::generic_category());
   return std::system_error(ec, vformat(fmt, args));
 }
@@ -182,8 +182,8 @@ inline auto umul96_upper64(uint32_t x, uint64_t y) noexcept -> uint64_t {
 
 // Computes lower 128 bits of multiplication of a 64-bit unsigned integer and a
 // 128-bit unsigned integer.
-inline auto umul192_lower128(uint64_t x,
-                             uint128_fallback y) noexcept -> uint128_fallback {
+inline auto umul192_lower128(uint64_t x, uint128_fallback y) noexcept
+    -> uint128_fallback {
   uint64_t high = x * y.high();
   uint128_fallback high_low = umul128(x, y.low());
   return {high + high_low.high(), high_low.low()};
@@ -311,14 +311,15 @@ template <> struct cache_accessor<float> {
             static_cast<carrier_uint>(r) == 0};
   }
 
-  static auto compute_delta(const cache_entry_type& cache,
-                            int beta) noexcept -> uint32_t {
+  static auto compute_delta(const cache_entry_type& cache, int beta) noexcept
+      -> uint32_t {
     return static_cast<uint32_t>(cache >> (64 - 1 - beta));
   }
 
-  static auto compute_mul_parity(
-      carrier_uint two_f, const cache_entry_type& cache,
-      int beta) noexcept -> compute_mul_parity_result {
+  static auto compute_mul_parity(carrier_uint two_f,
+                                 const cache_entry_type& cache,
+                                 int beta) noexcept
+      -> compute_mul_parity_result {
     FMT_ASSERT(beta >= 1, "");
     FMT_ASSERT(beta < 64, "");
 
@@ -360,665 +361,665 @@ template <> struct cache_accessor<double> {
 
     static constexpr const uint128_fallback pow10_significands[] = {
 #if FMT_USE_FULL_CACHE_DRAGONBOX
-        {0xff77b1fcbebcdc4f, 0x25e8e89c13bb0f7b},
-        {0x9faacf3df73609b1, 0x77b191618c54e9ad},
-        {0xc795830d75038c1d, 0xd59df5b9ef6a2418},
-        {0xf97ae3d0d2446f25, 0x4b0573286b44ad1e},
-        {0x9becce62836ac577, 0x4ee367f9430aec33},
-        {0xc2e801fb244576d5, 0x229c41f793cda740},
-        {0xf3a20279ed56d48a, 0x6b43527578c11110},
-        {0x9845418c345644d6, 0x830a13896b78aaaa},
-        {0xbe5691ef416bd60c, 0x23cc986bc656d554},
-        {0xedec366b11c6cb8f, 0x2cbfbe86b7ec8aa9},
-        {0x94b3a202eb1c3f39, 0x7bf7d71432f3d6aa},
-        {0xb9e08a83a5e34f07, 0xdaf5ccd93fb0cc54},
-        {0xe858ad248f5c22c9, 0xd1b3400f8f9cff69},
-        {0x91376c36d99995be, 0x23100809b9c21fa2},
-        {0xb58547448ffffb2d, 0xabd40a0c2832a78b},
-        {0xe2e69915b3fff9f9, 0x16c90c8f323f516d},
-        {0x8dd01fad907ffc3b, 0xae3da7d97f6792e4},
-        {0xb1442798f49ffb4a, 0x99cd11cfdf41779d},
-        {0xdd95317f31c7fa1d, 0x40405643d711d584},
-        {0x8a7d3eef7f1cfc52, 0x482835ea666b2573},
-        {0xad1c8eab5ee43b66, 0xda3243650005eed0},
-        {0xd863b256369d4a40, 0x90bed43e40076a83},
-        {0x873e4f75e2224e68, 0x5a7744a6e804a292},
-        {0xa90de3535aaae202, 0x711515d0a205cb37},
-        {0xd3515c2831559a83, 0x0d5a5b44ca873e04},
-        {0x8412d9991ed58091, 0xe858790afe9486c3},
-        {0xa5178fff668ae0b6, 0x626e974dbe39a873},
-        {0xce5d73ff402d98e3, 0xfb0a3d212dc81290},
-        {0x80fa687f881c7f8e, 0x7ce66634bc9d0b9a},
-        {0xa139029f6a239f72, 0x1c1fffc1ebc44e81},
-        {0xc987434744ac874e, 0xa327ffb266b56221},
-        {0xfbe9141915d7a922, 0x4bf1ff9f0062baa9},
-        {0x9d71ac8fada6c9b5, 0x6f773fc3603db4aa},
-        {0xc4ce17b399107c22, 0xcb550fb4384d21d4},
-        {0xf6019da07f549b2b, 0x7e2a53a146606a49},
-        {0x99c102844f94e0fb, 0x2eda7444cbfc426e},
-        {0xc0314325637a1939, 0xfa911155fefb5309},
-        {0xf03d93eebc589f88, 0x793555ab7eba27cb},
-        {0x96267c7535b763b5, 0x4bc1558b2f3458df},
-        {0xbbb01b9283253ca2, 0x9eb1aaedfb016f17},
-        {0xea9c227723ee8bcb, 0x465e15a979c1cadd},
-        {0x92a1958a7675175f, 0x0bfacd89ec191eca},
-        {0xb749faed14125d36, 0xcef980ec671f667c},
-        {0xe51c79a85916f484, 0x82b7e12780e7401b},
-        {0x8f31cc0937ae58d2, 0xd1b2ecb8b0908811},
-        {0xb2fe3f0b8599ef07, 0x861fa7e6dcb4aa16},
-        {0xdfbdcece67006ac9, 0x67a791e093e1d49b},
-        {0x8bd6a141006042bd, 0xe0c8bb2c5c6d24e1},
-        {0xaecc49914078536d, 0x58fae9f773886e19},
-        {0xda7f5bf590966848, 0xaf39a475506a899f},
-        {0x888f99797a5e012d, 0x6d8406c952429604},
-        {0xaab37fd7d8f58178, 0xc8e5087ba6d33b84},
-        {0xd5605fcdcf32e1d6, 0xfb1e4a9a90880a65},
-        {0x855c3be0a17fcd26, 0x5cf2eea09a550680},
-        {0xa6b34ad8c9dfc06f, 0xf42faa48c0ea481f},
-        {0xd0601d8efc57b08b, 0xf13b94daf124da27},
-        {0x823c12795db6ce57, 0x76c53d08d6b70859},
-        {0xa2cb1717b52481ed, 0x54768c4b0c64ca6f},
-        {0xcb7ddcdda26da268, 0xa9942f5dcf7dfd0a},
-        {0xfe5d54150b090b02, 0xd3f93b35435d7c4d},
-        {0x9efa548d26e5a6e1, 0xc47bc5014a1a6db0},
-        {0xc6b8e9b0709f109a, 0x359ab6419ca1091c},
-        {0xf867241c8cc6d4c0, 0xc30163d203c94b63},
-        {0x9b407691d7fc44f8, 0x79e0de63425dcf1e},
-        {0xc21094364dfb5636, 0x985915fc12f542e5},
-        {0xf294b943e17a2bc4, 0x3e6f5b7b17b2939e},
-        {0x979cf3ca6cec5b5a, 0xa705992ceecf9c43},
-        {0xbd8430bd08277231, 0x50c6ff782a838354},
-        {0xece53cec4a314ebd, 0xa4f8bf5635246429},
-        {0x940f4613ae5ed136, 0x871b7795e136be9a},
-        {0xb913179899f68584, 0x28e2557b59846e40},
-        {0xe757dd7ec07426e5, 0x331aeada2fe589d0},
-        {0x9096ea6f3848984f, 0x3ff0d2c85def7622},
-        {0xb4bca50b065abe63, 0x0fed077a756b53aa},
-        {0xe1ebce4dc7f16dfb, 0xd3e8495912c62895},
-        {0x8d3360f09cf6e4bd, 0x64712dd7abbbd95d},
-        {0xb080392cc4349dec, 0xbd8d794d96aacfb4},
-        {0xdca04777f541c567, 0xecf0d7a0fc5583a1},
-        {0x89e42caaf9491b60, 0xf41686c49db57245},
-        {0xac5d37d5b79b6239, 0x311c2875c522ced6},
-        {0xd77485cb25823ac7, 0x7d633293366b828c},
-        {0x86a8d39ef77164bc, 0xae5dff9c02033198},
-        {0xa8530886b54dbdeb, 0xd9f57f830283fdfd},
-        {0xd267caa862a12d66, 0xd072df63c324fd7c},
-        {0x8380dea93da4bc60, 0x4247cb9e59f71e6e},
-        {0xa46116538d0deb78, 0x52d9be85f074e609},
-        {0xcd795be870516656, 0x67902e276c921f8c},
-        {0x806bd9714632dff6, 0x00ba1cd8a3db53b7},
-        {0xa086cfcd97bf97f3, 0x80e8a40eccd228a5},
-        {0xc8a883c0fdaf7df0, 0x6122cd128006b2ce},
-        {0xfad2a4b13d1b5d6c, 0x796b805720085f82},
-        {0x9cc3a6eec6311a63, 0xcbe3303674053bb1},
-        {0xc3f490aa77bd60fc, 0xbedbfc4411068a9d},
-        {0xf4f1b4d515acb93b, 0xee92fb5515482d45},
-        {0x991711052d8bf3c5, 0x751bdd152d4d1c4b},
-        {0xbf5cd54678eef0b6, 0xd262d45a78a0635e},
-        {0xef340a98172aace4, 0x86fb897116c87c35},
-        {0x9580869f0e7aac0e, 0xd45d35e6ae3d4da1},
-        {0xbae0a846d2195712, 0x8974836059cca10a},
-        {0xe998d258869facd7, 0x2bd1a438703fc94c},
-        {0x91ff83775423cc06, 0x7b6306a34627ddd0},
-        {0xb67f6455292cbf08, 0x1a3bc84c17b1d543},
-        {0xe41f3d6a7377eeca, 0x20caba5f1d9e4a94},
-        {0x8e938662882af53e, 0x547eb47b7282ee9d},
-        {0xb23867fb2a35b28d, 0xe99e619a4f23aa44},
-        {0xdec681f9f4c31f31, 0x6405fa00e2ec94d5},
-        {0x8b3c113c38f9f37e, 0xde83bc408dd3dd05},
-        {0xae0b158b4738705e, 0x9624ab50b148d446},
-        {0xd98ddaee19068c76, 0x3badd624dd9b0958},
-        {0x87f8a8d4cfa417c9, 0xe54ca5d70a80e5d7},
-        {0xa9f6d30a038d1dbc, 0x5e9fcf4ccd211f4d},
-        {0xd47487cc8470652b, 0x7647c32000696720},
-        {0x84c8d4dfd2c63f3b, 0x29ecd9f40041e074},
-        {0xa5fb0a17c777cf09, 0xf468107100525891},
-        {0xcf79cc9db955c2cc, 0x7182148d4066eeb5},
-        {0x81ac1fe293d599bf, 0xc6f14cd848405531},
-        {0xa21727db38cb002f, 0xb8ada00e5a506a7d},
-        {0xca9cf1d206fdc03b, 0xa6d90811f0e4851d},
-        {0xfd442e4688bd304a, 0x908f4a166d1da664},
-        {0x9e4a9cec15763e2e, 0x9a598e4e043287ff},
-        {0xc5dd44271ad3cdba, 0x40eff1e1853f29fe},
-        {0xf7549530e188c128, 0xd12bee59e68ef47d},
-        {0x9a94dd3e8cf578b9, 0x82bb74f8301958cf},
-        {0xc13a148e3032d6e7, 0xe36a52363c1faf02},
-        {0xf18899b1bc3f8ca1, 0xdc44e6c3cb279ac2},
-        {0x96f5600f15a7b7e5, 0x29ab103a5ef8c0ba},
-        {0xbcb2b812db11a5de, 0x7415d448f6b6f0e8},
-        {0xebdf661791d60f56, 0x111b495b3464ad22},
-        {0x936b9fcebb25c995, 0xcab10dd900beec35},
-        {0xb84687c269ef3bfb, 0x3d5d514f40eea743},
-        {0xe65829b3046b0afa, 0x0cb4a5a3112a5113},
-        {0x8ff71a0fe2c2e6dc, 0x47f0e785eaba72ac},
-        {0xb3f4e093db73a093, 0x59ed216765690f57},
-        {0xe0f218b8d25088b8, 0x306869c13ec3532d},
-        {0x8c974f7383725573, 0x1e414218c73a13fc},
-        {0xafbd2350644eeacf, 0xe5d1929ef90898fb},
-        {0xdbac6c247d62a583, 0xdf45f746b74abf3a},
-        {0x894bc396ce5da772, 0x6b8bba8c328eb784},
-        {0xab9eb47c81f5114f, 0x066ea92f3f326565},
-        {0xd686619ba27255a2, 0xc80a537b0efefebe},
-        {0x8613fd0145877585, 0xbd06742ce95f5f37},
-        {0xa798fc4196e952e7, 0x2c48113823b73705},
-        {0xd17f3b51fca3a7a0, 0xf75a15862ca504c6},
-        {0x82ef85133de648c4, 0x9a984d73dbe722fc},
-        {0xa3ab66580d5fdaf5, 0xc13e60d0d2e0ebbb},
-        {0xcc963fee10b7d1b3, 0x318df905079926a9},
-        {0xffbbcfe994e5c61f, 0xfdf17746497f7053},
-        {0x9fd561f1fd0f9bd3, 0xfeb6ea8bedefa634},
-        {0xc7caba6e7c5382c8, 0xfe64a52ee96b8fc1},
-        {0xf9bd690a1b68637b, 0x3dfdce7aa3c673b1},
-        {0x9c1661a651213e2d, 0x06bea10ca65c084f},
-        {0xc31bfa0fe5698db8, 0x486e494fcff30a63},
-        {0xf3e2f893dec3f126, 0x5a89dba3c3efccfb},
-        {0x986ddb5c6b3a76b7, 0xf89629465a75e01d},
-        {0xbe89523386091465, 0xf6bbb397f1135824},
-        {0xee2ba6c0678b597f, 0x746aa07ded582e2d},
-        {0x94db483840b717ef, 0xa8c2a44eb4571cdd},
-        {0xba121a4650e4ddeb, 0x92f34d62616ce414},
-        {0xe896a0d7e51e1566, 0x77b020baf9c81d18},
-        {0x915e2486ef32cd60, 0x0ace1474dc1d122f},
-        {0xb5b5ada8aaff80b8, 0x0d819992132456bb},
-        {0xe3231912d5bf60e6, 0x10e1fff697ed6c6a},
-        {0x8df5efabc5979c8f, 0xca8d3ffa1ef463c2},
-        {0xb1736b96b6fd83b3, 0xbd308ff8a6b17cb3},
-        {0xddd0467c64bce4a0, 0xac7cb3f6d05ddbdf},
-        {0x8aa22c0dbef60ee4, 0x6bcdf07a423aa96c},
-        {0xad4ab7112eb3929d, 0x86c16c98d2c953c7},
-        {0xd89d64d57a607744, 0xe871c7bf077ba8b8},
-        {0x87625f056c7c4a8b, 0x11471cd764ad4973},
-        {0xa93af6c6c79b5d2d, 0xd598e40d3dd89bd0},
-        {0xd389b47879823479, 0x4aff1d108d4ec2c4},
-        {0x843610cb4bf160cb, 0xcedf722a585139bb},
-        {0xa54394fe1eedb8fe, 0xc2974eb4ee658829},
-        {0xce947a3da6a9273e, 0x733d226229feea33},
-        {0x811ccc668829b887, 0x0806357d5a3f5260},
-        {0xa163ff802a3426a8, 0xca07c2dcb0cf26f8},
-        {0xc9bcff6034c13052, 0xfc89b393dd02f0b6},
-        {0xfc2c3f3841f17c67, 0xbbac2078d443ace3},
-        {0x9d9ba7832936edc0, 0xd54b944b84aa4c0e},
-        {0xc5029163f384a931, 0x0a9e795e65d4df12},
-        {0xf64335bcf065d37d, 0x4d4617b5ff4a16d6},
-        {0x99ea0196163fa42e, 0x504bced1bf8e4e46},
-        {0xc06481fb9bcf8d39, 0xe45ec2862f71e1d7},
-        {0xf07da27a82c37088, 0x5d767327bb4e5a4d},
-        {0x964e858c91ba2655, 0x3a6a07f8d510f870},
-        {0xbbe226efb628afea, 0x890489f70a55368c},
-        {0xeadab0aba3b2dbe5, 0x2b45ac74ccea842f},
-        {0x92c8ae6b464fc96f, 0x3b0b8bc90012929e},
-        {0xb77ada0617e3bbcb, 0x09ce6ebb40173745},
-        {0xe55990879ddcaabd, 0xcc420a6a101d0516},
-        {0x8f57fa54c2a9eab6, 0x9fa946824a12232e},
-        {0xb32df8e9f3546564, 0x47939822dc96abfa},
-        {0xdff9772470297ebd, 0x59787e2b93bc56f8},
-        {0x8bfbea76c619ef36, 0x57eb4edb3c55b65b},
-        {0xaefae51477a06b03, 0xede622920b6b23f2},
-        {0xdab99e59958885c4, 0xe95fab368e45ecee},
-        {0x88b402f7fd75539b, 0x11dbcb0218ebb415},
-        {0xaae103b5fcd2a881, 0xd652bdc29f26a11a},
-        {0xd59944a37c0752a2, 0x4be76d3346f04960},
-        {0x857fcae62d8493a5, 0x6f70a4400c562ddc},
-        {0xa6dfbd9fb8e5b88e, 0xcb4ccd500f6bb953},
-        {0xd097ad07a71f26b2, 0x7e2000a41346a7a8},
-        {0x825ecc24c873782f, 0x8ed400668c0c28c9},
-        {0xa2f67f2dfa90563b, 0x728900802f0f32fb},
-        {0xcbb41ef979346bca, 0x4f2b40a03ad2ffba},
-        {0xfea126b7d78186bc, 0xe2f610c84987bfa9},
-        {0x9f24b832e6b0f436, 0x0dd9ca7d2df4d7ca},
-        {0xc6ede63fa05d3143, 0x91503d1c79720dbc},
-        {0xf8a95fcf88747d94, 0x75a44c6397ce912b},
-        {0x9b69dbe1b548ce7c, 0xc986afbe3ee11abb},
-        {0xc24452da229b021b, 0xfbe85badce996169},
-        {0xf2d56790ab41c2a2, 0xfae27299423fb9c4},
-        {0x97c560ba6b0919a5, 0xdccd879fc967d41b},
-        {0xbdb6b8e905cb600f, 0x5400e987bbc1c921},
-        {0xed246723473e3813, 0x290123e9aab23b69},
-        {0x9436c0760c86e30b, 0xf9a0b6720aaf6522},
-        {0xb94470938fa89bce, 0xf808e40e8d5b3e6a},
-        {0xe7958cb87392c2c2, 0xb60b1d1230b20e05},
-        {0x90bd77f3483bb9b9, 0xb1c6f22b5e6f48c3},
-        {0xb4ecd5f01a4aa828, 0x1e38aeb6360b1af4},
-        {0xe2280b6c20dd5232, 0x25c6da63c38de1b1},
-        {0x8d590723948a535f, 0x579c487e5a38ad0f},
-        {0xb0af48ec79ace837, 0x2d835a9df0c6d852},
-        {0xdcdb1b2798182244, 0xf8e431456cf88e66},
-        {0x8a08f0f8bf0f156b, 0x1b8e9ecb641b5900},
-        {0xac8b2d36eed2dac5, 0xe272467e3d222f40},
-        {0xd7adf884aa879177, 0x5b0ed81dcc6abb10},
-        {0x86ccbb52ea94baea, 0x98e947129fc2b4ea},
-        {0xa87fea27a539e9a5, 0x3f2398d747b36225},
-        {0xd29fe4b18e88640e, 0x8eec7f0d19a03aae},
-        {0x83a3eeeef9153e89, 0x1953cf68300424ad},
-        {0xa48ceaaab75a8e2b, 0x5fa8c3423c052dd8},
-        {0xcdb02555653131b6, 0x3792f412cb06794e},
-        {0x808e17555f3ebf11, 0xe2bbd88bbee40bd1},
-        {0xa0b19d2ab70e6ed6, 0x5b6aceaeae9d0ec5},
-        {0xc8de047564d20a8b, 0xf245825a5a445276},
-        {0xfb158592be068d2e, 0xeed6e2f0f0d56713},
-        {0x9ced737bb6c4183d, 0x55464dd69685606c},
-        {0xc428d05aa4751e4c, 0xaa97e14c3c26b887},
-        {0xf53304714d9265df, 0xd53dd99f4b3066a9},
-        {0x993fe2c6d07b7fab, 0xe546a8038efe402a},
-        {0xbf8fdb78849a5f96, 0xde98520472bdd034},
-        {0xef73d256a5c0f77c, 0x963e66858f6d4441},
-        {0x95a8637627989aad, 0xdde7001379a44aa9},
-        {0xbb127c53b17ec159, 0x5560c018580d5d53},
-        {0xe9d71b689dde71af, 0xaab8f01e6e10b4a7},
-        {0x9226712162ab070d, 0xcab3961304ca70e9},
-        {0xb6b00d69bb55c8d1, 0x3d607b97c5fd0d23},
-        {0xe45c10c42a2b3b05, 0x8cb89a7db77c506b},
-        {0x8eb98a7a9a5b04e3, 0x77f3608e92adb243},
-        {0xb267ed1940f1c61c, 0x55f038b237591ed4},
-        {0xdf01e85f912e37a3, 0x6b6c46dec52f6689},
-        {0x8b61313bbabce2c6, 0x2323ac4b3b3da016},
-        {0xae397d8aa96c1b77, 0xabec975e0a0d081b},
-        {0xd9c7dced53c72255, 0x96e7bd358c904a22},
-        {0x881cea14545c7575, 0x7e50d64177da2e55},
-        {0xaa242499697392d2, 0xdde50bd1d5d0b9ea},
-        {0xd4ad2dbfc3d07787, 0x955e4ec64b44e865},
-        {0x84ec3c97da624ab4, 0xbd5af13bef0b113f},
-        {0xa6274bbdd0fadd61, 0xecb1ad8aeacdd58f},
-        {0xcfb11ead453994ba, 0x67de18eda5814af3},
-        {0x81ceb32c4b43fcf4, 0x80eacf948770ced8},
-        {0xa2425ff75e14fc31, 0xa1258379a94d028e},
-        {0xcad2f7f5359a3b3e, 0x096ee45813a04331},
-        {0xfd87b5f28300ca0d, 0x8bca9d6e188853fd},
-        {0x9e74d1b791e07e48, 0x775ea264cf55347e},
-        {0xc612062576589dda, 0x95364afe032a819e},
-        {0xf79687aed3eec551, 0x3a83ddbd83f52205},
-        {0x9abe14cd44753b52, 0xc4926a9672793543},
-        {0xc16d9a0095928a27, 0x75b7053c0f178294},
-        {0xf1c90080baf72cb1, 0x5324c68b12dd6339},
-        {0x971da05074da7bee, 0xd3f6fc16ebca5e04},
-        {0xbce5086492111aea, 0x88f4bb1ca6bcf585},
-        {0xec1e4a7db69561a5, 0x2b31e9e3d06c32e6},
-        {0x9392ee8e921d5d07, 0x3aff322e62439fd0},
-        {0xb877aa3236a4b449, 0x09befeb9fad487c3},
-        {0xe69594bec44de15b, 0x4c2ebe687989a9b4},
-        {0x901d7cf73ab0acd9, 0x0f9d37014bf60a11},
-        {0xb424dc35095cd80f, 0x538484c19ef38c95},
-        {0xe12e13424bb40e13, 0x2865a5f206b06fba},
-        {0x8cbccc096f5088cb, 0xf93f87b7442e45d4},
-        {0xafebff0bcb24aafe, 0xf78f69a51539d749},
-        {0xdbe6fecebdedd5be, 0xb573440e5a884d1c},
-        {0x89705f4136b4a597, 0x31680a88f8953031},
-        {0xabcc77118461cefc, 0xfdc20d2b36ba7c3e},
-        {0xd6bf94d5e57a42bc, 0x3d32907604691b4d},
-        {0x8637bd05af6c69b5, 0xa63f9a49c2c1b110},
-        {0xa7c5ac471b478423, 0x0fcf80dc33721d54},
-        {0xd1b71758e219652b, 0xd3c36113404ea4a9},
-        {0x83126e978d4fdf3b, 0x645a1cac083126ea},
-        {0xa3d70a3d70a3d70a, 0x3d70a3d70a3d70a4},
-        {0xcccccccccccccccc, 0xcccccccccccccccd},
-        {0x8000000000000000, 0x0000000000000000},
-        {0xa000000000000000, 0x0000000000000000},
-        {0xc800000000000000, 0x0000000000000000},
-        {0xfa00000000000000, 0x0000000000000000},
-        {0x9c40000000000000, 0x0000000000000000},
-        {0xc350000000000000, 0x0000000000000000},
-        {0xf424000000000000, 0x0000000000000000},
-        {0x9896800000000000, 0x0000000000000000},
-        {0xbebc200000000000, 0x0000000000000000},
-        {0xee6b280000000000, 0x0000000000000000},
-        {0x9502f90000000000, 0x0000000000000000},
-        {0xba43b74000000000, 0x0000000000000000},
-        {0xe8d4a51000000000, 0x0000000000000000},
-        {0x9184e72a00000000, 0x0000000000000000},
-        {0xb5e620f480000000, 0x0000000000000000},
-        {0xe35fa931a0000000, 0x0000000000000000},
-        {0x8e1bc9bf04000000, 0x0000000000000000},
-        {0xb1a2bc2ec5000000, 0x0000000000000000},
-        {0xde0b6b3a76400000, 0x0000000000000000},
-        {0x8ac7230489e80000, 0x0000000000000000},
-        {0xad78ebc5ac620000, 0x0000000000000000},
-        {0xd8d726b7177a8000, 0x0000000000000000},
-        {0x878678326eac9000, 0x0000000000000000},
-        {0xa968163f0a57b400, 0x0000000000000000},
-        {0xd3c21bcecceda100, 0x0000000000000000},
-        {0x84595161401484a0, 0x0000000000000000},
-        {0xa56fa5b99019a5c8, 0x0000000000000000},
-        {0xcecb8f27f4200f3a, 0x0000000000000000},
-        {0x813f3978f8940984, 0x4000000000000000},
-        {0xa18f07d736b90be5, 0x5000000000000000},
-        {0xc9f2c9cd04674ede, 0xa400000000000000},
-        {0xfc6f7c4045812296, 0x4d00000000000000},
-        {0x9dc5ada82b70b59d, 0xf020000000000000},
-        {0xc5371912364ce305, 0x6c28000000000000},
-        {0xf684df56c3e01bc6, 0xc732000000000000},
-        {0x9a130b963a6c115c, 0x3c7f400000000000},
-        {0xc097ce7bc90715b3, 0x4b9f100000000000},
-        {0xf0bdc21abb48db20, 0x1e86d40000000000},
-        {0x96769950b50d88f4, 0x1314448000000000},
-        {0xbc143fa4e250eb31, 0x17d955a000000000},
-        {0xeb194f8e1ae525fd, 0x5dcfab0800000000},
-        {0x92efd1b8d0cf37be, 0x5aa1cae500000000},
-        {0xb7abc627050305ad, 0xf14a3d9e40000000},
-        {0xe596b7b0c643c719, 0x6d9ccd05d0000000},
-        {0x8f7e32ce7bea5c6f, 0xe4820023a2000000},
-        {0xb35dbf821ae4f38b, 0xdda2802c8a800000},
-        {0xe0352f62a19e306e, 0xd50b2037ad200000},
-        {0x8c213d9da502de45, 0x4526f422cc340000},
-        {0xaf298d050e4395d6, 0x9670b12b7f410000},
-        {0xdaf3f04651d47b4c, 0x3c0cdd765f114000},
-        {0x88d8762bf324cd0f, 0xa5880a69fb6ac800},
-        {0xab0e93b6efee0053, 0x8eea0d047a457a00},
-        {0xd5d238a4abe98068, 0x72a4904598d6d880},
-        {0x85a36366eb71f041, 0x47a6da2b7f864750},
-        {0xa70c3c40a64e6c51, 0x999090b65f67d924},
-        {0xd0cf4b50cfe20765, 0xfff4b4e3f741cf6d},
-        {0x82818f1281ed449f, 0xbff8f10e7a8921a5},
-        {0xa321f2d7226895c7, 0xaff72d52192b6a0e},
-        {0xcbea6f8ceb02bb39, 0x9bf4f8a69f764491},
-        {0xfee50b7025c36a08, 0x02f236d04753d5b5},
-        {0x9f4f2726179a2245, 0x01d762422c946591},
-        {0xc722f0ef9d80aad6, 0x424d3ad2b7b97ef6},
-        {0xf8ebad2b84e0d58b, 0xd2e0898765a7deb3},
-        {0x9b934c3b330c8577, 0x63cc55f49f88eb30},
-        {0xc2781f49ffcfa6d5, 0x3cbf6b71c76b25fc},
-        {0xf316271c7fc3908a, 0x8bef464e3945ef7b},
-        {0x97edd871cfda3a56, 0x97758bf0e3cbb5ad},
-        {0xbde94e8e43d0c8ec, 0x3d52eeed1cbea318},
-        {0xed63a231d4c4fb27, 0x4ca7aaa863ee4bde},
-        {0x945e455f24fb1cf8, 0x8fe8caa93e74ef6b},
-        {0xb975d6b6ee39e436, 0xb3e2fd538e122b45},
-        {0xe7d34c64a9c85d44, 0x60dbbca87196b617},
-        {0x90e40fbeea1d3a4a, 0xbc8955e946fe31ce},
-        {0xb51d13aea4a488dd, 0x6babab6398bdbe42},
-        {0xe264589a4dcdab14, 0xc696963c7eed2dd2},
-        {0x8d7eb76070a08aec, 0xfc1e1de5cf543ca3},
-        {0xb0de65388cc8ada8, 0x3b25a55f43294bcc},
-        {0xdd15fe86affad912, 0x49ef0eb713f39ebf},
-        {0x8a2dbf142dfcc7ab, 0x6e3569326c784338},
-        {0xacb92ed9397bf996, 0x49c2c37f07965405},
-        {0xd7e77a8f87daf7fb, 0xdc33745ec97be907},
-        {0x86f0ac99b4e8dafd, 0x69a028bb3ded71a4},
-        {0xa8acd7c0222311bc, 0xc40832ea0d68ce0d},
-        {0xd2d80db02aabd62b, 0xf50a3fa490c30191},
-        {0x83c7088e1aab65db, 0x792667c6da79e0fb},
-        {0xa4b8cab1a1563f52, 0x577001b891185939},
-        {0xcde6fd5e09abcf26, 0xed4c0226b55e6f87},
-        {0x80b05e5ac60b6178, 0x544f8158315b05b5},
-        {0xa0dc75f1778e39d6, 0x696361ae3db1c722},
-        {0xc913936dd571c84c, 0x03bc3a19cd1e38ea},
-        {0xfb5878494ace3a5f, 0x04ab48a04065c724},
-        {0x9d174b2dcec0e47b, 0x62eb0d64283f9c77},
-        {0xc45d1df942711d9a, 0x3ba5d0bd324f8395},
-        {0xf5746577930d6500, 0xca8f44ec7ee3647a},
-        {0x9968bf6abbe85f20, 0x7e998b13cf4e1ecc},
-        {0xbfc2ef456ae276e8, 0x9e3fedd8c321a67f},
-        {0xefb3ab16c59b14a2, 0xc5cfe94ef3ea101f},
-        {0x95d04aee3b80ece5, 0xbba1f1d158724a13},
-        {0xbb445da9ca61281f, 0x2a8a6e45ae8edc98},
-        {0xea1575143cf97226, 0xf52d09d71a3293be},
-        {0x924d692ca61be758, 0x593c2626705f9c57},
-        {0xb6e0c377cfa2e12e, 0x6f8b2fb00c77836d},
-        {0xe498f455c38b997a, 0x0b6dfb9c0f956448},
-        {0x8edf98b59a373fec, 0x4724bd4189bd5ead},
-        {0xb2977ee300c50fe7, 0x58edec91ec2cb658},
-        {0xdf3d5e9bc0f653e1, 0x2f2967b66737e3ee},
-        {0x8b865b215899f46c, 0xbd79e0d20082ee75},
-        {0xae67f1e9aec07187, 0xecd8590680a3aa12},
-        {0xda01ee641a708de9, 0xe80e6f4820cc9496},
-        {0x884134fe908658b2, 0x3109058d147fdcde},
-        {0xaa51823e34a7eede, 0xbd4b46f0599fd416},
-        {0xd4e5e2cdc1d1ea96, 0x6c9e18ac7007c91b},
-        {0x850fadc09923329e, 0x03e2cf6bc604ddb1},
-        {0xa6539930bf6bff45, 0x84db8346b786151d},
-        {0xcfe87f7cef46ff16, 0xe612641865679a64},
-        {0x81f14fae158c5f6e, 0x4fcb7e8f3f60c07f},
-        {0xa26da3999aef7749, 0xe3be5e330f38f09e},
-        {0xcb090c8001ab551c, 0x5cadf5bfd3072cc6},
-        {0xfdcb4fa002162a63, 0x73d9732fc7c8f7f7},
-        {0x9e9f11c4014dda7e, 0x2867e7fddcdd9afb},
-        {0xc646d63501a1511d, 0xb281e1fd541501b9},
-        {0xf7d88bc24209a565, 0x1f225a7ca91a4227},
-        {0x9ae757596946075f, 0x3375788de9b06959},
-        {0xc1a12d2fc3978937, 0x0052d6b1641c83af},
-        {0xf209787bb47d6b84, 0xc0678c5dbd23a49b},
-        {0x9745eb4d50ce6332, 0xf840b7ba963646e1},
-        {0xbd176620a501fbff, 0xb650e5a93bc3d899},
-        {0xec5d3fa8ce427aff, 0xa3e51f138ab4cebf},
-        {0x93ba47c980e98cdf, 0xc66f336c36b10138},
-        {0xb8a8d9bbe123f017, 0xb80b0047445d4185},
-        {0xe6d3102ad96cec1d, 0xa60dc059157491e6},
-        {0x9043ea1ac7e41392, 0x87c89837ad68db30},
-        {0xb454e4a179dd1877, 0x29babe4598c311fc},
-        {0xe16a1dc9d8545e94, 0xf4296dd6fef3d67b},
-        {0x8ce2529e2734bb1d, 0x1899e4a65f58660d},
-        {0xb01ae745b101e9e4, 0x5ec05dcff72e7f90},
-        {0xdc21a1171d42645d, 0x76707543f4fa1f74},
-        {0x899504ae72497eba, 0x6a06494a791c53a9},
-        {0xabfa45da0edbde69, 0x0487db9d17636893},
-        {0xd6f8d7509292d603, 0x45a9d2845d3c42b7},
-        {0x865b86925b9bc5c2, 0x0b8a2392ba45a9b3},
-        {0xa7f26836f282b732, 0x8e6cac7768d7141f},
-        {0xd1ef0244af2364ff, 0x3207d795430cd927},
-        {0x8335616aed761f1f, 0x7f44e6bd49e807b9},
-        {0xa402b9c5a8d3a6e7, 0x5f16206c9c6209a7},
-        {0xcd036837130890a1, 0x36dba887c37a8c10},
-        {0x802221226be55a64, 0xc2494954da2c978a},
-        {0xa02aa96b06deb0fd, 0xf2db9baa10b7bd6d},
-        {0xc83553c5c8965d3d, 0x6f92829494e5acc8},
-        {0xfa42a8b73abbf48c, 0xcb772339ba1f17fa},
-        {0x9c69a97284b578d7, 0xff2a760414536efc},
-        {0xc38413cf25e2d70d, 0xfef5138519684abb},
-        {0xf46518c2ef5b8cd1, 0x7eb258665fc25d6a},
-        {0x98bf2f79d5993802, 0xef2f773ffbd97a62},
-        {0xbeeefb584aff8603, 0xaafb550ffacfd8fb},
-        {0xeeaaba2e5dbf6784, 0x95ba2a53f983cf39},
-        {0x952ab45cfa97a0b2, 0xdd945a747bf26184},
-        {0xba756174393d88df, 0x94f971119aeef9e5},
-        {0xe912b9d1478ceb17, 0x7a37cd5601aab85e},
-        {0x91abb422ccb812ee, 0xac62e055c10ab33b},
-        {0xb616a12b7fe617aa, 0x577b986b314d600a},
-        {0xe39c49765fdf9d94, 0xed5a7e85fda0b80c},
-        {0x8e41ade9fbebc27d, 0x14588f13be847308},
-        {0xb1d219647ae6b31c, 0x596eb2d8ae258fc9},
-        {0xde469fbd99a05fe3, 0x6fca5f8ed9aef3bc},
-        {0x8aec23d680043bee, 0x25de7bb9480d5855},
-        {0xada72ccc20054ae9, 0xaf561aa79a10ae6b},
-        {0xd910f7ff28069da4, 0x1b2ba1518094da05},
-        {0x87aa9aff79042286, 0x90fb44d2f05d0843},
-        {0xa99541bf57452b28, 0x353a1607ac744a54},
-        {0xd3fa922f2d1675f2, 0x42889b8997915ce9},
-        {0x847c9b5d7c2e09b7, 0x69956135febada12},
-        {0xa59bc234db398c25, 0x43fab9837e699096},
-        {0xcf02b2c21207ef2e, 0x94f967e45e03f4bc},
-        {0x8161afb94b44f57d, 0x1d1be0eebac278f6},
-        {0xa1ba1ba79e1632dc, 0x6462d92a69731733},
-        {0xca28a291859bbf93, 0x7d7b8f7503cfdcff},
-        {0xfcb2cb35e702af78, 0x5cda735244c3d43f},
-        {0x9defbf01b061adab, 0x3a0888136afa64a8},
-        {0xc56baec21c7a1916, 0x088aaa1845b8fdd1},
-        {0xf6c69a72a3989f5b, 0x8aad549e57273d46},
-        {0x9a3c2087a63f6399, 0x36ac54e2f678864c},
-        {0xc0cb28a98fcf3c7f, 0x84576a1bb416a7de},
-        {0xf0fdf2d3f3c30b9f, 0x656d44a2a11c51d6},
-        {0x969eb7c47859e743, 0x9f644ae5a4b1b326},
-        {0xbc4665b596706114, 0x873d5d9f0dde1fef},
-        {0xeb57ff22fc0c7959, 0xa90cb506d155a7eb},
-        {0x9316ff75dd87cbd8, 0x09a7f12442d588f3},
-        {0xb7dcbf5354e9bece, 0x0c11ed6d538aeb30},
-        {0xe5d3ef282a242e81, 0x8f1668c8a86da5fb},
-        {0x8fa475791a569d10, 0xf96e017d694487bd},
-        {0xb38d92d760ec4455, 0x37c981dcc395a9ad},
-        {0xe070f78d3927556a, 0x85bbe253f47b1418},
-        {0x8c469ab843b89562, 0x93956d7478ccec8f},
-        {0xaf58416654a6babb, 0x387ac8d1970027b3},
-        {0xdb2e51bfe9d0696a, 0x06997b05fcc0319f},
-        {0x88fcf317f22241e2, 0x441fece3bdf81f04},
-        {0xab3c2fddeeaad25a, 0xd527e81cad7626c4},
-        {0xd60b3bd56a5586f1, 0x8a71e223d8d3b075},
-        {0x85c7056562757456, 0xf6872d5667844e4a},
-        {0xa738c6bebb12d16c, 0xb428f8ac016561dc},
-        {0xd106f86e69d785c7, 0xe13336d701beba53},
-        {0x82a45b450226b39c, 0xecc0024661173474},
-        {0xa34d721642b06084, 0x27f002d7f95d0191},
-        {0xcc20ce9bd35c78a5, 0x31ec038df7b441f5},
-        {0xff290242c83396ce, 0x7e67047175a15272},
-        {0x9f79a169bd203e41, 0x0f0062c6e984d387},
-        {0xc75809c42c684dd1, 0x52c07b78a3e60869},
-        {0xf92e0c3537826145, 0xa7709a56ccdf8a83},
-        {0x9bbcc7a142b17ccb, 0x88a66076400bb692},
-        {0xc2abf989935ddbfe, 0x6acff893d00ea436},
-        {0xf356f7ebf83552fe, 0x0583f6b8c4124d44},
-        {0x98165af37b2153de, 0xc3727a337a8b704b},
-        {0xbe1bf1b059e9a8d6, 0x744f18c0592e4c5d},
-        {0xeda2ee1c7064130c, 0x1162def06f79df74},
-        {0x9485d4d1c63e8be7, 0x8addcb5645ac2ba9},
-        {0xb9a74a0637ce2ee1, 0x6d953e2bd7173693},
-        {0xe8111c87c5c1ba99, 0xc8fa8db6ccdd0438},
-        {0x910ab1d4db9914a0, 0x1d9c9892400a22a3},
-        {0xb54d5e4a127f59c8, 0x2503beb6d00cab4c},
-        {0xe2a0b5dc971f303a, 0x2e44ae64840fd61e},
-        {0x8da471a9de737e24, 0x5ceaecfed289e5d3},
-        {0xb10d8e1456105dad, 0x7425a83e872c5f48},
-        {0xdd50f1996b947518, 0xd12f124e28f7771a},
-        {0x8a5296ffe33cc92f, 0x82bd6b70d99aaa70},
-        {0xace73cbfdc0bfb7b, 0x636cc64d1001550c},
-        {0xd8210befd30efa5a, 0x3c47f7e05401aa4f},
-        {0x8714a775e3e95c78, 0x65acfaec34810a72},
-        {0xa8d9d1535ce3b396, 0x7f1839a741a14d0e},
-        {0xd31045a8341ca07c, 0x1ede48111209a051},
-        {0x83ea2b892091e44d, 0x934aed0aab460433},
-        {0xa4e4b66b68b65d60, 0xf81da84d56178540},
-        {0xce1de40642e3f4b9, 0x36251260ab9d668f},
-        {0x80d2ae83e9ce78f3, 0xc1d72b7c6b42601a},
-        {0xa1075a24e4421730, 0xb24cf65b8612f820},
-        {0xc94930ae1d529cfc, 0xdee033f26797b628},
-        {0xfb9b7cd9a4a7443c, 0x169840ef017da3b2},
-        {0x9d412e0806e88aa5, 0x8e1f289560ee864f},
-        {0xc491798a08a2ad4e, 0xf1a6f2bab92a27e3},
-        {0xf5b5d7ec8acb58a2, 0xae10af696774b1dc},
-        {0x9991a6f3d6bf1765, 0xacca6da1e0a8ef2a},
-        {0xbff610b0cc6edd3f, 0x17fd090a58d32af4},
-        {0xeff394dcff8a948e, 0xddfc4b4cef07f5b1},
-        {0x95f83d0a1fb69cd9, 0x4abdaf101564f98f},
-        {0xbb764c4ca7a4440f, 0x9d6d1ad41abe37f2},
-        {0xea53df5fd18d5513, 0x84c86189216dc5ee},
-        {0x92746b9be2f8552c, 0x32fd3cf5b4e49bb5},
-        {0xb7118682dbb66a77, 0x3fbc8c33221dc2a2},
-        {0xe4d5e82392a40515, 0x0fabaf3feaa5334b},
-        {0x8f05b1163ba6832d, 0x29cb4d87f2a7400f},
-        {0xb2c71d5bca9023f8, 0x743e20e9ef511013},
-        {0xdf78e4b2bd342cf6, 0x914da9246b255417},
-        {0x8bab8eefb6409c1a, 0x1ad089b6c2f7548f},
-        {0xae9672aba3d0c320, 0xa184ac2473b529b2},
-        {0xda3c0f568cc4f3e8, 0xc9e5d72d90a2741f},
-        {0x8865899617fb1871, 0x7e2fa67c7a658893},
-        {0xaa7eebfb9df9de8d, 0xddbb901b98feeab8},
-        {0xd51ea6fa85785631, 0x552a74227f3ea566},
-        {0x8533285c936b35de, 0xd53a88958f872760},
-        {0xa67ff273b8460356, 0x8a892abaf368f138},
-        {0xd01fef10a657842c, 0x2d2b7569b0432d86},
-        {0x8213f56a67f6b29b, 0x9c3b29620e29fc74},
-        {0xa298f2c501f45f42, 0x8349f3ba91b47b90},
-        {0xcb3f2f7642717713, 0x241c70a936219a74},
-        {0xfe0efb53d30dd4d7, 0xed238cd383aa0111},
-        {0x9ec95d1463e8a506, 0xf4363804324a40ab},
-        {0xc67bb4597ce2ce48, 0xb143c6053edcd0d6},
-        {0xf81aa16fdc1b81da, 0xdd94b7868e94050b},
-        {0x9b10a4e5e9913128, 0xca7cf2b4191c8327},
-        {0xc1d4ce1f63f57d72, 0xfd1c2f611f63a3f1},
-        {0xf24a01a73cf2dccf, 0xbc633b39673c8ced},
-        {0x976e41088617ca01, 0xd5be0503e085d814},
-        {0xbd49d14aa79dbc82, 0x4b2d8644d8a74e19},
-        {0xec9c459d51852ba2, 0xddf8e7d60ed1219f},
-        {0x93e1ab8252f33b45, 0xcabb90e5c942b504},
-        {0xb8da1662e7b00a17, 0x3d6a751f3b936244},
-        {0xe7109bfba19c0c9d, 0x0cc512670a783ad5},
-        {0x906a617d450187e2, 0x27fb2b80668b24c6},
-        {0xb484f9dc9641e9da, 0xb1f9f660802dedf7},
-        {0xe1a63853bbd26451, 0x5e7873f8a0396974},
-        {0x8d07e33455637eb2, 0xdb0b487b6423e1e9},
-        {0xb049dc016abc5e5f, 0x91ce1a9a3d2cda63},
-        {0xdc5c5301c56b75f7, 0x7641a140cc7810fc},
-        {0x89b9b3e11b6329ba, 0xa9e904c87fcb0a9e},
-        {0xac2820d9623bf429, 0x546345fa9fbdcd45},
-        {0xd732290fbacaf133, 0xa97c177947ad4096},
-        {0x867f59a9d4bed6c0, 0x49ed8eabcccc485e},
-        {0xa81f301449ee8c70, 0x5c68f256bfff5a75},
-        {0xd226fc195c6a2f8c, 0x73832eec6fff3112},
-        {0x83585d8fd9c25db7, 0xc831fd53c5ff7eac},
-        {0xa42e74f3d032f525, 0xba3e7ca8b77f5e56},
-        {0xcd3a1230c43fb26f, 0x28ce1bd2e55f35ec},
-        {0x80444b5e7aa7cf85, 0x7980d163cf5b81b4},
-        {0xa0555e361951c366, 0xd7e105bcc3326220},
-        {0xc86ab5c39fa63440, 0x8dd9472bf3fefaa8},
-        {0xfa856334878fc150, 0xb14f98f6f0feb952},
-        {0x9c935e00d4b9d8d2, 0x6ed1bf9a569f33d4},
-        {0xc3b8358109e84f07, 0x0a862f80ec4700c9},
-        {0xf4a642e14c6262c8, 0xcd27bb612758c0fb},
-        {0x98e7e9cccfbd7dbd, 0x8038d51cb897789d},
-        {0xbf21e44003acdd2c, 0xe0470a63e6bd56c4},
-        {0xeeea5d5004981478, 0x1858ccfce06cac75},
-        {0x95527a5202df0ccb, 0x0f37801e0c43ebc9},
-        {0xbaa718e68396cffd, 0xd30560258f54e6bb},
-        {0xe950df20247c83fd, 0x47c6b82ef32a206a},
-        {0x91d28b7416cdd27e, 0x4cdc331d57fa5442},
-        {0xb6472e511c81471d, 0xe0133fe4adf8e953},
-        {0xe3d8f9e563a198e5, 0x58180fddd97723a7},
-        {0x8e679c2f5e44ff8f, 0x570f09eaa7ea7649},
-        {0xb201833b35d63f73, 0x2cd2cc6551e513db},
-        {0xde81e40a034bcf4f, 0xf8077f7ea65e58d2},
-        {0x8b112e86420f6191, 0xfb04afaf27faf783},
-        {0xadd57a27d29339f6, 0x79c5db9af1f9b564},
-        {0xd94ad8b1c7380874, 0x18375281ae7822bd},
-        {0x87cec76f1c830548, 0x8f2293910d0b15b6},
-        {0xa9c2794ae3a3c69a, 0xb2eb3875504ddb23},
-        {0xd433179d9c8cb841, 0x5fa60692a46151ec},
-        {0x849feec281d7f328, 0xdbc7c41ba6bcd334},
-        {0xa5c7ea73224deff3, 0x12b9b522906c0801},
-        {0xcf39e50feae16bef, 0xd768226b34870a01},
-        {0x81842f29f2cce375, 0xe6a1158300d46641},
-        {0xa1e53af46f801c53, 0x60495ae3c1097fd1},
-        {0xca5e89b18b602368, 0x385bb19cb14bdfc5},
-        {0xfcf62c1dee382c42, 0x46729e03dd9ed7b6},
-        {0x9e19db92b4e31ba9, 0x6c07a2c26a8346d2},
-        {0xc5a05277621be293, 0xc7098b7305241886},
-        {0xf70867153aa2db38, 0xb8cbee4fc66d1ea8},
-        {0x9a65406d44a5c903, 0x737f74f1dc043329},
-        {0xc0fe908895cf3b44, 0x505f522e53053ff3},
-        {0xf13e34aabb430a15, 0x647726b9e7c68ff0},
-        {0x96c6e0eab509e64d, 0x5eca783430dc19f6},
-        {0xbc789925624c5fe0, 0xb67d16413d132073},
-        {0xeb96bf6ebadf77d8, 0xe41c5bd18c57e890},
-        {0x933e37a534cbaae7, 0x8e91b962f7b6f15a},
-        {0xb80dc58e81fe95a1, 0x723627bbb5a4adb1},
-        {0xe61136f2227e3b09, 0xcec3b1aaa30dd91d},
-        {0x8fcac257558ee4e6, 0x213a4f0aa5e8a7b2},
-        {0xb3bd72ed2af29e1f, 0xa988e2cd4f62d19e},
-        {0xe0accfa875af45a7, 0x93eb1b80a33b8606},
-        {0x8c6c01c9498d8b88, 0xbc72f130660533c4},
-        {0xaf87023b9bf0ee6a, 0xeb8fad7c7f8680b5},
-        {0xdb68c2ca82ed2a05, 0xa67398db9f6820e2},
+      {0xff77b1fcbebcdc4f, 0x25e8e89c13bb0f7b},
+      {0x9faacf3df73609b1, 0x77b191618c54e9ad},
+      {0xc795830d75038c1d, 0xd59df5b9ef6a2418},
+      {0xf97ae3d0d2446f25, 0x4b0573286b44ad1e},
+      {0x9becce62836ac577, 0x4ee367f9430aec33},
+      {0xc2e801fb244576d5, 0x229c41f793cda740},
+      {0xf3a20279ed56d48a, 0x6b43527578c11110},
+      {0x9845418c345644d6, 0x830a13896b78aaaa},
+      {0xbe5691ef416bd60c, 0x23cc986bc656d554},
+      {0xedec366b11c6cb8f, 0x2cbfbe86b7ec8aa9},
+      {0x94b3a202eb1c3f39, 0x7bf7d71432f3d6aa},
+      {0xb9e08a83a5e34f07, 0xdaf5ccd93fb0cc54},
+      {0xe858ad248f5c22c9, 0xd1b3400f8f9cff69},
+      {0x91376c36d99995be, 0x23100809b9c21fa2},
+      {0xb58547448ffffb2d, 0xabd40a0c2832a78b},
+      {0xe2e69915b3fff9f9, 0x16c90c8f323f516d},
+      {0x8dd01fad907ffc3b, 0xae3da7d97f6792e4},
+      {0xb1442798f49ffb4a, 0x99cd11cfdf41779d},
+      {0xdd95317f31c7fa1d, 0x40405643d711d584},
+      {0x8a7d3eef7f1cfc52, 0x482835ea666b2573},
+      {0xad1c8eab5ee43b66, 0xda3243650005eed0},
+      {0xd863b256369d4a40, 0x90bed43e40076a83},
+      {0x873e4f75e2224e68, 0x5a7744a6e804a292},
+      {0xa90de3535aaae202, 0x711515d0a205cb37},
+      {0xd3515c2831559a83, 0x0d5a5b44ca873e04},
+      {0x8412d9991ed58091, 0xe858790afe9486c3},
+      {0xa5178fff668ae0b6, 0x626e974dbe39a873},
+      {0xce5d73ff402d98e3, 0xfb0a3d212dc81290},
+      {0x80fa687f881c7f8e, 0x7ce66634bc9d0b9a},
+      {0xa139029f6a239f72, 0x1c1fffc1ebc44e81},
+      {0xc987434744ac874e, 0xa327ffb266b56221},
+      {0xfbe9141915d7a922, 0x4bf1ff9f0062baa9},
+      {0x9d71ac8fada6c9b5, 0x6f773fc3603db4aa},
+      {0xc4ce17b399107c22, 0xcb550fb4384d21d4},
+      {0xf6019da07f549b2b, 0x7e2a53a146606a49},
+      {0x99c102844f94e0fb, 0x2eda7444cbfc426e},
+      {0xc0314325637a1939, 0xfa911155fefb5309},
+      {0xf03d93eebc589f88, 0x793555ab7eba27cb},
+      {0x96267c7535b763b5, 0x4bc1558b2f3458df},
+      {0xbbb01b9283253ca2, 0x9eb1aaedfb016f17},
+      {0xea9c227723ee8bcb, 0x465e15a979c1cadd},
+      {0x92a1958a7675175f, 0x0bfacd89ec191eca},
+      {0xb749faed14125d36, 0xcef980ec671f667c},
+      {0xe51c79a85916f484, 0x82b7e12780e7401b},
+      {0x8f31cc0937ae58d2, 0xd1b2ecb8b0908811},
+      {0xb2fe3f0b8599ef07, 0x861fa7e6dcb4aa16},
+      {0xdfbdcece67006ac9, 0x67a791e093e1d49b},
+      {0x8bd6a141006042bd, 0xe0c8bb2c5c6d24e1},
+      {0xaecc49914078536d, 0x58fae9f773886e19},
+      {0xda7f5bf590966848, 0xaf39a475506a899f},
+      {0x888f99797a5e012d, 0x6d8406c952429604},
+      {0xaab37fd7d8f58178, 0xc8e5087ba6d33b84},
+      {0xd5605fcdcf32e1d6, 0xfb1e4a9a90880a65},
+      {0x855c3be0a17fcd26, 0x5cf2eea09a550680},
+      {0xa6b34ad8c9dfc06f, 0xf42faa48c0ea481f},
+      {0xd0601d8efc57b08b, 0xf13b94daf124da27},
+      {0x823c12795db6ce57, 0x76c53d08d6b70859},
+      {0xa2cb1717b52481ed, 0x54768c4b0c64ca6f},
+      {0xcb7ddcdda26da268, 0xa9942f5dcf7dfd0a},
+      {0xfe5d54150b090b02, 0xd3f93b35435d7c4d},
+      {0x9efa548d26e5a6e1, 0xc47bc5014a1a6db0},
+      {0xc6b8e9b0709f109a, 0x359ab6419ca1091c},
+      {0xf867241c8cc6d4c0, 0xc30163d203c94b63},
+      {0x9b407691d7fc44f8, 0x79e0de63425dcf1e},
+      {0xc21094364dfb5636, 0x985915fc12f542e5},
+      {0xf294b943e17a2bc4, 0x3e6f5b7b17b2939e},
+      {0x979cf3ca6cec5b5a, 0xa705992ceecf9c43},
+      {0xbd8430bd08277231, 0x50c6ff782a838354},
+      {0xece53cec4a314ebd, 0xa4f8bf5635246429},
+      {0x940f4613ae5ed136, 0x871b7795e136be9a},
+      {0xb913179899f68584, 0x28e2557b59846e40},
+      {0xe757dd7ec07426e5, 0x331aeada2fe589d0},
+      {0x9096ea6f3848984f, 0x3ff0d2c85def7622},
+      {0xb4bca50b065abe63, 0x0fed077a756b53aa},
+      {0xe1ebce4dc7f16dfb, 0xd3e8495912c62895},
+      {0x8d3360f09cf6e4bd, 0x64712dd7abbbd95d},
+      {0xb080392cc4349dec, 0xbd8d794d96aacfb4},
+      {0xdca04777f541c567, 0xecf0d7a0fc5583a1},
+      {0x89e42caaf9491b60, 0xf41686c49db57245},
+      {0xac5d37d5b79b6239, 0x311c2875c522ced6},
+      {0xd77485cb25823ac7, 0x7d633293366b828c},
+      {0x86a8d39ef77164bc, 0xae5dff9c02033198},
+      {0xa8530886b54dbdeb, 0xd9f57f830283fdfd},
+      {0xd267caa862a12d66, 0xd072df63c324fd7c},
+      {0x8380dea93da4bc60, 0x4247cb9e59f71e6e},
+      {0xa46116538d0deb78, 0x52d9be85f074e609},
+      {0xcd795be870516656, 0x67902e276c921f8c},
+      {0x806bd9714632dff6, 0x00ba1cd8a3db53b7},
+      {0xa086cfcd97bf97f3, 0x80e8a40eccd228a5},
+      {0xc8a883c0fdaf7df0, 0x6122cd128006b2ce},
+      {0xfad2a4b13d1b5d6c, 0x796b805720085f82},
+      {0x9cc3a6eec6311a63, 0xcbe3303674053bb1},
+      {0xc3f490aa77bd60fc, 0xbedbfc4411068a9d},
+      {0xf4f1b4d515acb93b, 0xee92fb5515482d45},
+      {0x991711052d8bf3c5, 0x751bdd152d4d1c4b},
+      {0xbf5cd54678eef0b6, 0xd262d45a78a0635e},
+      {0xef340a98172aace4, 0x86fb897116c87c35},
+      {0x9580869f0e7aac0e, 0xd45d35e6ae3d4da1},
+      {0xbae0a846d2195712, 0x8974836059cca10a},
+      {0xe998d258869facd7, 0x2bd1a438703fc94c},
+      {0x91ff83775423cc06, 0x7b6306a34627ddd0},
+      {0xb67f6455292cbf08, 0x1a3bc84c17b1d543},
+      {0xe41f3d6a7377eeca, 0x20caba5f1d9e4a94},
+      {0x8e938662882af53e, 0x547eb47b7282ee9d},
+      {0xb23867fb2a35b28d, 0xe99e619a4f23aa44},
+      {0xdec681f9f4c31f31, 0x6405fa00e2ec94d5},
+      {0x8b3c113c38f9f37e, 0xde83bc408dd3dd05},
+      {0xae0b158b4738705e, 0x9624ab50b148d446},
+      {0xd98ddaee19068c76, 0x3badd624dd9b0958},
+      {0x87f8a8d4cfa417c9, 0xe54ca5d70a80e5d7},
+      {0xa9f6d30a038d1dbc, 0x5e9fcf4ccd211f4d},
+      {0xd47487cc8470652b, 0x7647c32000696720},
+      {0x84c8d4dfd2c63f3b, 0x29ecd9f40041e074},
+      {0xa5fb0a17c777cf09, 0xf468107100525891},
+      {0xcf79cc9db955c2cc, 0x7182148d4066eeb5},
+      {0x81ac1fe293d599bf, 0xc6f14cd848405531},
+      {0xa21727db38cb002f, 0xb8ada00e5a506a7d},
+      {0xca9cf1d206fdc03b, 0xa6d90811f0e4851d},
+      {0xfd442e4688bd304a, 0x908f4a166d1da664},
+      {0x9e4a9cec15763e2e, 0x9a598e4e043287ff},
+      {0xc5dd44271ad3cdba, 0x40eff1e1853f29fe},
+      {0xf7549530e188c128, 0xd12bee59e68ef47d},
+      {0x9a94dd3e8cf578b9, 0x82bb74f8301958cf},
+      {0xc13a148e3032d6e7, 0xe36a52363c1faf02},
+      {0xf18899b1bc3f8ca1, 0xdc44e6c3cb279ac2},
+      {0x96f5600f15a7b7e5, 0x29ab103a5ef8c0ba},
+      {0xbcb2b812db11a5de, 0x7415d448f6b6f0e8},
+      {0xebdf661791d60f56, 0x111b495b3464ad22},
+      {0x936b9fcebb25c995, 0xcab10dd900beec35},
+      {0xb84687c269ef3bfb, 0x3d5d514f40eea743},
+      {0xe65829b3046b0afa, 0x0cb4a5a3112a5113},
+      {0x8ff71a0fe2c2e6dc, 0x47f0e785eaba72ac},
+      {0xb3f4e093db73a093, 0x59ed216765690f57},
+      {0xe0f218b8d25088b8, 0x306869c13ec3532d},
+      {0x8c974f7383725573, 0x1e414218c73a13fc},
+      {0xafbd2350644eeacf, 0xe5d1929ef90898fb},
+      {0xdbac6c247d62a583, 0xdf45f746b74abf3a},
+      {0x894bc396ce5da772, 0x6b8bba8c328eb784},
+      {0xab9eb47c81f5114f, 0x066ea92f3f326565},
+      {0xd686619ba27255a2, 0xc80a537b0efefebe},
+      {0x8613fd0145877585, 0xbd06742ce95f5f37},
+      {0xa798fc4196e952e7, 0x2c48113823b73705},
+      {0xd17f3b51fca3a7a0, 0xf75a15862ca504c6},
+      {0x82ef85133de648c4, 0x9a984d73dbe722fc},
+      {0xa3ab66580d5fdaf5, 0xc13e60d0d2e0ebbb},
+      {0xcc963fee10b7d1b3, 0x318df905079926a9},
+      {0xffbbcfe994e5c61f, 0xfdf17746497f7053},
+      {0x9fd561f1fd0f9bd3, 0xfeb6ea8bedefa634},
+      {0xc7caba6e7c5382c8, 0xfe64a52ee96b8fc1},
+      {0xf9bd690a1b68637b, 0x3dfdce7aa3c673b1},
+      {0x9c1661a651213e2d, 0x06bea10ca65c084f},
+      {0xc31bfa0fe5698db8, 0x486e494fcff30a63},
+      {0xf3e2f893dec3f126, 0x5a89dba3c3efccfb},
+      {0x986ddb5c6b3a76b7, 0xf89629465a75e01d},
+      {0xbe89523386091465, 0xf6bbb397f1135824},
+      {0xee2ba6c0678b597f, 0x746aa07ded582e2d},
+      {0x94db483840b717ef, 0xa8c2a44eb4571cdd},
+      {0xba121a4650e4ddeb, 0x92f34d62616ce414},
+      {0xe896a0d7e51e1566, 0x77b020baf9c81d18},
+      {0x915e2486ef32cd60, 0x0ace1474dc1d122f},
+      {0xb5b5ada8aaff80b8, 0x0d819992132456bb},
+      {0xe3231912d5bf60e6, 0x10e1fff697ed6c6a},
+      {0x8df5efabc5979c8f, 0xca8d3ffa1ef463c2},
+      {0xb1736b96b6fd83b3, 0xbd308ff8a6b17cb3},
+      {0xddd0467c64bce4a0, 0xac7cb3f6d05ddbdf},
+      {0x8aa22c0dbef60ee4, 0x6bcdf07a423aa96c},
+      {0xad4ab7112eb3929d, 0x86c16c98d2c953c7},
+      {0xd89d64d57a607744, 0xe871c7bf077ba8b8},
+      {0x87625f056c7c4a8b, 0x11471cd764ad4973},
+      {0xa93af6c6c79b5d2d, 0xd598e40d3dd89bd0},
+      {0xd389b47879823479, 0x4aff1d108d4ec2c4},
+      {0x843610cb4bf160cb, 0xcedf722a585139bb},
+      {0xa54394fe1eedb8fe, 0xc2974eb4ee658829},
+      {0xce947a3da6a9273e, 0x733d226229feea33},
+      {0x811ccc668829b887, 0x0806357d5a3f5260},
+      {0xa163ff802a3426a8, 0xca07c2dcb0cf26f8},
+      {0xc9bcff6034c13052, 0xfc89b393dd02f0b6},
+      {0xfc2c3f3841f17c67, 0xbbac2078d443ace3},
+      {0x9d9ba7832936edc0, 0xd54b944b84aa4c0e},
+      {0xc5029163f384a931, 0x0a9e795e65d4df12},
+      {0xf64335bcf065d37d, 0x4d4617b5ff4a16d6},
+      {0x99ea0196163fa42e, 0x504bced1bf8e4e46},
+      {0xc06481fb9bcf8d39, 0xe45ec2862f71e1d7},
+      {0xf07da27a82c37088, 0x5d767327bb4e5a4d},
+      {0x964e858c91ba2655, 0x3a6a07f8d510f870},
+      {0xbbe226efb628afea, 0x890489f70a55368c},
+      {0xeadab0aba3b2dbe5, 0x2b45ac74ccea842f},
+      {0x92c8ae6b464fc96f, 0x3b0b8bc90012929e},
+      {0xb77ada0617e3bbcb, 0x09ce6ebb40173745},
+      {0xe55990879ddcaabd, 0xcc420a6a101d0516},
+      {0x8f57fa54c2a9eab6, 0x9fa946824a12232e},
+      {0xb32df8e9f3546564, 0x47939822dc96abfa},
+      {0xdff9772470297ebd, 0x59787e2b93bc56f8},
+      {0x8bfbea76c619ef36, 0x57eb4edb3c55b65b},
+      {0xaefae51477a06b03, 0xede622920b6b23f2},
+      {0xdab99e59958885c4, 0xe95fab368e45ecee},
+      {0x88b402f7fd75539b, 0x11dbcb0218ebb415},
+      {0xaae103b5fcd2a881, 0xd652bdc29f26a11a},
+      {0xd59944a37c0752a2, 0x4be76d3346f04960},
+      {0x857fcae62d8493a5, 0x6f70a4400c562ddc},
+      {0xa6dfbd9fb8e5b88e, 0xcb4ccd500f6bb953},
+      {0xd097ad07a71f26b2, 0x7e2000a41346a7a8},
+      {0x825ecc24c873782f, 0x8ed400668c0c28c9},
+      {0xa2f67f2dfa90563b, 0x728900802f0f32fb},
+      {0xcbb41ef979346bca, 0x4f2b40a03ad2ffba},
+      {0xfea126b7d78186bc, 0xe2f610c84987bfa9},
+      {0x9f24b832e6b0f436, 0x0dd9ca7d2df4d7ca},
+      {0xc6ede63fa05d3143, 0x91503d1c79720dbc},
+      {0xf8a95fcf88747d94, 0x75a44c6397ce912b},
+      {0x9b69dbe1b548ce7c, 0xc986afbe3ee11abb},
+      {0xc24452da229b021b, 0xfbe85badce996169},
+      {0xf2d56790ab41c2a2, 0xfae27299423fb9c4},
+      {0x97c560ba6b0919a5, 0xdccd879fc967d41b},
+      {0xbdb6b8e905cb600f, 0x5400e987bbc1c921},
+      {0xed246723473e3813, 0x290123e9aab23b69},
+      {0x9436c0760c86e30b, 0xf9a0b6720aaf6522},
+      {0xb94470938fa89bce, 0xf808e40e8d5b3e6a},
+      {0xe7958cb87392c2c2, 0xb60b1d1230b20e05},
+      {0x90bd77f3483bb9b9, 0xb1c6f22b5e6f48c3},
+      {0xb4ecd5f01a4aa828, 0x1e38aeb6360b1af4},
+      {0xe2280b6c20dd5232, 0x25c6da63c38de1b1},
+      {0x8d590723948a535f, 0x579c487e5a38ad0f},
+      {0xb0af48ec79ace837, 0x2d835a9df0c6d852},
+      {0xdcdb1b2798182244, 0xf8e431456cf88e66},
+      {0x8a08f0f8bf0f156b, 0x1b8e9ecb641b5900},
+      {0xac8b2d36eed2dac5, 0xe272467e3d222f40},
+      {0xd7adf884aa879177, 0x5b0ed81dcc6abb10},
+      {0x86ccbb52ea94baea, 0x98e947129fc2b4ea},
+      {0xa87fea27a539e9a5, 0x3f2398d747b36225},
+      {0xd29fe4b18e88640e, 0x8eec7f0d19a03aae},
+      {0x83a3eeeef9153e89, 0x1953cf68300424ad},
+      {0xa48ceaaab75a8e2b, 0x5fa8c3423c052dd8},
+      {0xcdb02555653131b6, 0x3792f412cb06794e},
+      {0x808e17555f3ebf11, 0xe2bbd88bbee40bd1},
+      {0xa0b19d2ab70e6ed6, 0x5b6aceaeae9d0ec5},
+      {0xc8de047564d20a8b, 0xf245825a5a445276},
+      {0xfb158592be068d2e, 0xeed6e2f0f0d56713},
+      {0x9ced737bb6c4183d, 0x55464dd69685606c},
+      {0xc428d05aa4751e4c, 0xaa97e14c3c26b887},
+      {0xf53304714d9265df, 0xd53dd99f4b3066a9},
+      {0x993fe2c6d07b7fab, 0xe546a8038efe402a},
+      {0xbf8fdb78849a5f96, 0xde98520472bdd034},
+      {0xef73d256a5c0f77c, 0x963e66858f6d4441},
+      {0x95a8637627989aad, 0xdde7001379a44aa9},
+      {0xbb127c53b17ec159, 0x5560c018580d5d53},
+      {0xe9d71b689dde71af, 0xaab8f01e6e10b4a7},
+      {0x9226712162ab070d, 0xcab3961304ca70e9},
+      {0xb6b00d69bb55c8d1, 0x3d607b97c5fd0d23},
+      {0xe45c10c42a2b3b05, 0x8cb89a7db77c506b},
+      {0x8eb98a7a9a5b04e3, 0x77f3608e92adb243},
+      {0xb267ed1940f1c61c, 0x55f038b237591ed4},
+      {0xdf01e85f912e37a3, 0x6b6c46dec52f6689},
+      {0x8b61313bbabce2c6, 0x2323ac4b3b3da016},
+      {0xae397d8aa96c1b77, 0xabec975e0a0d081b},
+      {0xd9c7dced53c72255, 0x96e7bd358c904a22},
+      {0x881cea14545c7575, 0x7e50d64177da2e55},
+      {0xaa242499697392d2, 0xdde50bd1d5d0b9ea},
+      {0xd4ad2dbfc3d07787, 0x955e4ec64b44e865},
+      {0x84ec3c97da624ab4, 0xbd5af13bef0b113f},
+      {0xa6274bbdd0fadd61, 0xecb1ad8aeacdd58f},
+      {0xcfb11ead453994ba, 0x67de18eda5814af3},
+      {0x81ceb32c4b43fcf4, 0x80eacf948770ced8},
+      {0xa2425ff75e14fc31, 0xa1258379a94d028e},
+      {0xcad2f7f5359a3b3e, 0x096ee45813a04331},
+      {0xfd87b5f28300ca0d, 0x8bca9d6e188853fd},
+      {0x9e74d1b791e07e48, 0x775ea264cf55347e},
+      {0xc612062576589dda, 0x95364afe032a819e},
+      {0xf79687aed3eec551, 0x3a83ddbd83f52205},
+      {0x9abe14cd44753b52, 0xc4926a9672793543},
+      {0xc16d9a0095928a27, 0x75b7053c0f178294},
+      {0xf1c90080baf72cb1, 0x5324c68b12dd6339},
+      {0x971da05074da7bee, 0xd3f6fc16ebca5e04},
+      {0xbce5086492111aea, 0x88f4bb1ca6bcf585},
+      {0xec1e4a7db69561a5, 0x2b31e9e3d06c32e6},
+      {0x9392ee8e921d5d07, 0x3aff322e62439fd0},
+      {0xb877aa3236a4b449, 0x09befeb9fad487c3},
+      {0xe69594bec44de15b, 0x4c2ebe687989a9b4},
+      {0x901d7cf73ab0acd9, 0x0f9d37014bf60a11},
+      {0xb424dc35095cd80f, 0x538484c19ef38c95},
+      {0xe12e13424bb40e13, 0x2865a5f206b06fba},
+      {0x8cbccc096f5088cb, 0xf93f87b7442e45d4},
+      {0xafebff0bcb24aafe, 0xf78f69a51539d749},
+      {0xdbe6fecebdedd5be, 0xb573440e5a884d1c},
+      {0x89705f4136b4a597, 0x31680a88f8953031},
+      {0xabcc77118461cefc, 0xfdc20d2b36ba7c3e},
+      {0xd6bf94d5e57a42bc, 0x3d32907604691b4d},
+      {0x8637bd05af6c69b5, 0xa63f9a49c2c1b110},
+      {0xa7c5ac471b478423, 0x0fcf80dc33721d54},
+      {0xd1b71758e219652b, 0xd3c36113404ea4a9},
+      {0x83126e978d4fdf3b, 0x645a1cac083126ea},
+      {0xa3d70a3d70a3d70a, 0x3d70a3d70a3d70a4},
+      {0xcccccccccccccccc, 0xcccccccccccccccd},
+      {0x8000000000000000, 0x0000000000000000},
+      {0xa000000000000000, 0x0000000000000000},
+      {0xc800000000000000, 0x0000000000000000},
+      {0xfa00000000000000, 0x0000000000000000},
+      {0x9c40000000000000, 0x0000000000000000},
+      {0xc350000000000000, 0x0000000000000000},
+      {0xf424000000000000, 0x0000000000000000},
+      {0x9896800000000000, 0x0000000000000000},
+      {0xbebc200000000000, 0x0000000000000000},
+      {0xee6b280000000000, 0x0000000000000000},
+      {0x9502f90000000000, 0x0000000000000000},
+      {0xba43b74000000000, 0x0000000000000000},
+      {0xe8d4a51000000000, 0x0000000000000000},
+      {0x9184e72a00000000, 0x0000000000000000},
+      {0xb5e620f480000000, 0x0000000000000000},
+      {0xe35fa931a0000000, 0x0000000000000000},
+      {0x8e1bc9bf04000000, 0x0000000000000000},
+      {0xb1a2bc2ec5000000, 0x0000000000000000},
+      {0xde0b6b3a76400000, 0x0000000000000000},
+      {0x8ac7230489e80000, 0x0000000000000000},
+      {0xad78ebc5ac620000, 0x0000000000000000},
+      {0xd8d726b7177a8000, 0x0000000000000000},
+      {0x878678326eac9000, 0x0000000000000000},
+      {0xa968163f0a57b400, 0x0000000000000000},
+      {0xd3c21bcecceda100, 0x0000000000000000},
+      {0x84595161401484a0, 0x0000000000000000},
+      {0xa56fa5b99019a5c8, 0x0000000000000000},
+      {0xcecb8f27f4200f3a, 0x0000000000000000},
+      {0x813f3978f8940984, 0x4000000000000000},
+      {0xa18f07d736b90be5, 0x5000000000000000},
+      {0xc9f2c9cd04674ede, 0xa400000000000000},
+      {0xfc6f7c4045812296, 0x4d00000000000000},
+      {0x9dc5ada82b70b59d, 0xf020000000000000},
+      {0xc5371912364ce305, 0x6c28000000000000},
+      {0xf684df56c3e01bc6, 0xc732000000000000},
+      {0x9a130b963a6c115c, 0x3c7f400000000000},
+      {0xc097ce7bc90715b3, 0x4b9f100000000000},
+      {0xf0bdc21abb48db20, 0x1e86d40000000000},
+      {0x96769950b50d88f4, 0x1314448000000000},
+      {0xbc143fa4e250eb31, 0x17d955a000000000},
+      {0xeb194f8e1ae525fd, 0x5dcfab0800000000},
+      {0x92efd1b8d0cf37be, 0x5aa1cae500000000},
+      {0xb7abc627050305ad, 0xf14a3d9e40000000},
+      {0xe596b7b0c643c719, 0x6d9ccd05d0000000},
+      {0x8f7e32ce7bea5c6f, 0xe4820023a2000000},
+      {0xb35dbf821ae4f38b, 0xdda2802c8a800000},
+      {0xe0352f62a19e306e, 0xd50b2037ad200000},
+      {0x8c213d9da502de45, 0x4526f422cc340000},
+      {0xaf298d050e4395d6, 0x9670b12b7f410000},
+      {0xdaf3f04651d47b4c, 0x3c0cdd765f114000},
+      {0x88d8762bf324cd0f, 0xa5880a69fb6ac800},
+      {0xab0e93b6efee0053, 0x8eea0d047a457a00},
+      {0xd5d238a4abe98068, 0x72a4904598d6d880},
+      {0x85a36366eb71f041, 0x47a6da2b7f864750},
+      {0xa70c3c40a64e6c51, 0x999090b65f67d924},
+      {0xd0cf4b50cfe20765, 0xfff4b4e3f741cf6d},
+      {0x82818f1281ed449f, 0xbff8f10e7a8921a5},
+      {0xa321f2d7226895c7, 0xaff72d52192b6a0e},
+      {0xcbea6f8ceb02bb39, 0x9bf4f8a69f764491},
+      {0xfee50b7025c36a08, 0x02f236d04753d5b5},
+      {0x9f4f2726179a2245, 0x01d762422c946591},
+      {0xc722f0ef9d80aad6, 0x424d3ad2b7b97ef6},
+      {0xf8ebad2b84e0d58b, 0xd2e0898765a7deb3},
+      {0x9b934c3b330c8577, 0x63cc55f49f88eb30},
+      {0xc2781f49ffcfa6d5, 0x3cbf6b71c76b25fc},
+      {0xf316271c7fc3908a, 0x8bef464e3945ef7b},
+      {0x97edd871cfda3a56, 0x97758bf0e3cbb5ad},
+      {0xbde94e8e43d0c8ec, 0x3d52eeed1cbea318},
+      {0xed63a231d4c4fb27, 0x4ca7aaa863ee4bde},
+      {0x945e455f24fb1cf8, 0x8fe8caa93e74ef6b},
+      {0xb975d6b6ee39e436, 0xb3e2fd538e122b45},
+      {0xe7d34c64a9c85d44, 0x60dbbca87196b617},
+      {0x90e40fbeea1d3a4a, 0xbc8955e946fe31ce},
+      {0xb51d13aea4a488dd, 0x6babab6398bdbe42},
+      {0xe264589a4dcdab14, 0xc696963c7eed2dd2},
+      {0x8d7eb76070a08aec, 0xfc1e1de5cf543ca3},
+      {0xb0de65388cc8ada8, 0x3b25a55f43294bcc},
+      {0xdd15fe86affad912, 0x49ef0eb713f39ebf},
+      {0x8a2dbf142dfcc7ab, 0x6e3569326c784338},
+      {0xacb92ed9397bf996, 0x49c2c37f07965405},
+      {0xd7e77a8f87daf7fb, 0xdc33745ec97be907},
+      {0x86f0ac99b4e8dafd, 0x69a028bb3ded71a4},
+      {0xa8acd7c0222311bc, 0xc40832ea0d68ce0d},
+      {0xd2d80db02aabd62b, 0xf50a3fa490c30191},
+      {0x83c7088e1aab65db, 0x792667c6da79e0fb},
+      {0xa4b8cab1a1563f52, 0x577001b891185939},
+      {0xcde6fd5e09abcf26, 0xed4c0226b55e6f87},
+      {0x80b05e5ac60b6178, 0x544f8158315b05b5},
+      {0xa0dc75f1778e39d6, 0x696361ae3db1c722},
+      {0xc913936dd571c84c, 0x03bc3a19cd1e38ea},
+      {0xfb5878494ace3a5f, 0x04ab48a04065c724},
+      {0x9d174b2dcec0e47b, 0x62eb0d64283f9c77},
+      {0xc45d1df942711d9a, 0x3ba5d0bd324f8395},
+      {0xf5746577930d6500, 0xca8f44ec7ee3647a},
+      {0x9968bf6abbe85f20, 0x7e998b13cf4e1ecc},
+      {0xbfc2ef456ae276e8, 0x9e3fedd8c321a67f},
+      {0xefb3ab16c59b14a2, 0xc5cfe94ef3ea101f},
+      {0x95d04aee3b80ece5, 0xbba1f1d158724a13},
+      {0xbb445da9ca61281f, 0x2a8a6e45ae8edc98},
+      {0xea1575143cf97226, 0xf52d09d71a3293be},
+      {0x924d692ca61be758, 0x593c2626705f9c57},
+      {0xb6e0c377cfa2e12e, 0x6f8b2fb00c77836d},
+      {0xe498f455c38b997a, 0x0b6dfb9c0f956448},
+      {0x8edf98b59a373fec, 0x4724bd4189bd5ead},
+      {0xb2977ee300c50fe7, 0x58edec91ec2cb658},
+      {0xdf3d5e9bc0f653e1, 0x2f2967b66737e3ee},
+      {0x8b865b215899f46c, 0xbd79e0d20082ee75},
+      {0xae67f1e9aec07187, 0xecd8590680a3aa12},
+      {0xda01ee641a708de9, 0xe80e6f4820cc9496},
+      {0x884134fe908658b2, 0x3109058d147fdcde},
+      {0xaa51823e34a7eede, 0xbd4b46f0599fd416},
+      {0xd4e5e2cdc1d1ea96, 0x6c9e18ac7007c91b},
+      {0x850fadc09923329e, 0x03e2cf6bc604ddb1},
+      {0xa6539930bf6bff45, 0x84db8346b786151d},
+      {0xcfe87f7cef46ff16, 0xe612641865679a64},
+      {0x81f14fae158c5f6e, 0x4fcb7e8f3f60c07f},
+      {0xa26da3999aef7749, 0xe3be5e330f38f09e},
+      {0xcb090c8001ab551c, 0x5cadf5bfd3072cc6},
+      {0xfdcb4fa002162a63, 0x73d9732fc7c8f7f7},
+      {0x9e9f11c4014dda7e, 0x2867e7fddcdd9afb},
+      {0xc646d63501a1511d, 0xb281e1fd541501b9},
+      {0xf7d88bc24209a565, 0x1f225a7ca91a4227},
+      {0x9ae757596946075f, 0x3375788de9b06959},
+      {0xc1a12d2fc3978937, 0x0052d6b1641c83af},
+      {0xf209787bb47d6b84, 0xc0678c5dbd23a49b},
+      {0x9745eb4d50ce6332, 0xf840b7ba963646e1},
+      {0xbd176620a501fbff, 0xb650e5a93bc3d899},
+      {0xec5d3fa8ce427aff, 0xa3e51f138ab4cebf},
+      {0x93ba47c980e98cdf, 0xc66f336c36b10138},
+      {0xb8a8d9bbe123f017, 0xb80b0047445d4185},
+      {0xe6d3102ad96cec1d, 0xa60dc059157491e6},
+      {0x9043ea1ac7e41392, 0x87c89837ad68db30},
+      {0xb454e4a179dd1877, 0x29babe4598c311fc},
+      {0xe16a1dc9d8545e94, 0xf4296dd6fef3d67b},
+      {0x8ce2529e2734bb1d, 0x1899e4a65f58660d},
+      {0xb01ae745b101e9e4, 0x5ec05dcff72e7f90},
+      {0xdc21a1171d42645d, 0x76707543f4fa1f74},
+      {0x899504ae72497eba, 0x6a06494a791c53a9},
+      {0xabfa45da0edbde69, 0x0487db9d17636893},
+      {0xd6f8d7509292d603, 0x45a9d2845d3c42b7},
+      {0x865b86925b9bc5c2, 0x0b8a2392ba45a9b3},
+      {0xa7f26836f282b732, 0x8e6cac7768d7141f},
+      {0xd1ef0244af2364ff, 0x3207d795430cd927},
+      {0x8335616aed761f1f, 0x7f44e6bd49e807b9},
+      {0xa402b9c5a8d3a6e7, 0x5f16206c9c6209a7},
+      {0xcd036837130890a1, 0x36dba887c37a8c10},
+      {0x802221226be55a64, 0xc2494954da2c978a},
+      {0xa02aa96b06deb0fd, 0xf2db9baa10b7bd6d},
+      {0xc83553c5c8965d3d, 0x6f92829494e5acc8},
+      {0xfa42a8b73abbf48c, 0xcb772339ba1f17fa},
+      {0x9c69a97284b578d7, 0xff2a760414536efc},
+      {0xc38413cf25e2d70d, 0xfef5138519684abb},
+      {0xf46518c2ef5b8cd1, 0x7eb258665fc25d6a},
+      {0x98bf2f79d5993802, 0xef2f773ffbd97a62},
+      {0xbeeefb584aff8603, 0xaafb550ffacfd8fb},
+      {0xeeaaba2e5dbf6784, 0x95ba2a53f983cf39},
+      {0x952ab45cfa97a0b2, 0xdd945a747bf26184},
+      {0xba756174393d88df, 0x94f971119aeef9e5},
+      {0xe912b9d1478ceb17, 0x7a37cd5601aab85e},
+      {0x91abb422ccb812ee, 0xac62e055c10ab33b},
+      {0xb616a12b7fe617aa, 0x577b986b314d600a},
+      {0xe39c49765fdf9d94, 0xed5a7e85fda0b80c},
+      {0x8e41ade9fbebc27d, 0x14588f13be847308},
+      {0xb1d219647ae6b31c, 0x596eb2d8ae258fc9},
+      {0xde469fbd99a05fe3, 0x6fca5f8ed9aef3bc},
+      {0x8aec23d680043bee, 0x25de7bb9480d5855},
+      {0xada72ccc20054ae9, 0xaf561aa79a10ae6b},
+      {0xd910f7ff28069da4, 0x1b2ba1518094da05},
+      {0x87aa9aff79042286, 0x90fb44d2f05d0843},
+      {0xa99541bf57452b28, 0x353a1607ac744a54},
+      {0xd3fa922f2d1675f2, 0x42889b8997915ce9},
+      {0x847c9b5d7c2e09b7, 0x69956135febada12},
+      {0xa59bc234db398c25, 0x43fab9837e699096},
+      {0xcf02b2c21207ef2e, 0x94f967e45e03f4bc},
+      {0x8161afb94b44f57d, 0x1d1be0eebac278f6},
+      {0xa1ba1ba79e1632dc, 0x6462d92a69731733},
+      {0xca28a291859bbf93, 0x7d7b8f7503cfdcff},
+      {0xfcb2cb35e702af78, 0x5cda735244c3d43f},
+      {0x9defbf01b061adab, 0x3a0888136afa64a8},
+      {0xc56baec21c7a1916, 0x088aaa1845b8fdd1},
+      {0xf6c69a72a3989f5b, 0x8aad549e57273d46},
+      {0x9a3c2087a63f6399, 0x36ac54e2f678864c},
+      {0xc0cb28a98fcf3c7f, 0x84576a1bb416a7de},
+      {0xf0fdf2d3f3c30b9f, 0x656d44a2a11c51d6},
+      {0x969eb7c47859e743, 0x9f644ae5a4b1b326},
+      {0xbc4665b596706114, 0x873d5d9f0dde1fef},
+      {0xeb57ff22fc0c7959, 0xa90cb506d155a7eb},
+      {0x9316ff75dd87cbd8, 0x09a7f12442d588f3},
+      {0xb7dcbf5354e9bece, 0x0c11ed6d538aeb30},
+      {0xe5d3ef282a242e81, 0x8f1668c8a86da5fb},
+      {0x8fa475791a569d10, 0xf96e017d694487bd},
+      {0xb38d92d760ec4455, 0x37c981dcc395a9ad},
+      {0xe070f78d3927556a, 0x85bbe253f47b1418},
+      {0x8c469ab843b89562, 0x93956d7478ccec8f},
+      {0xaf58416654a6babb, 0x387ac8d1970027b3},
+      {0xdb2e51bfe9d0696a, 0x06997b05fcc0319f},
+      {0x88fcf317f22241e2, 0x441fece3bdf81f04},
+      {0xab3c2fddeeaad25a, 0xd527e81cad7626c4},
+      {0xd60b3bd56a5586f1, 0x8a71e223d8d3b075},
+      {0x85c7056562757456, 0xf6872d5667844e4a},
+      {0xa738c6bebb12d16c, 0xb428f8ac016561dc},
+      {0xd106f86e69d785c7, 0xe13336d701beba53},
+      {0x82a45b450226b39c, 0xecc0024661173474},
+      {0xa34d721642b06084, 0x27f002d7f95d0191},
+      {0xcc20ce9bd35c78a5, 0x31ec038df7b441f5},
+      {0xff290242c83396ce, 0x7e67047175a15272},
+      {0x9f79a169bd203e41, 0x0f0062c6e984d387},
+      {0xc75809c42c684dd1, 0x52c07b78a3e60869},
+      {0xf92e0c3537826145, 0xa7709a56ccdf8a83},
+      {0x9bbcc7a142b17ccb, 0x88a66076400bb692},
+      {0xc2abf989935ddbfe, 0x6acff893d00ea436},
+      {0xf356f7ebf83552fe, 0x0583f6b8c4124d44},
+      {0x98165af37b2153de, 0xc3727a337a8b704b},
+      {0xbe1bf1b059e9a8d6, 0x744f18c0592e4c5d},
+      {0xeda2ee1c7064130c, 0x1162def06f79df74},
+      {0x9485d4d1c63e8be7, 0x8addcb5645ac2ba9},
+      {0xb9a74a0637ce2ee1, 0x6d953e2bd7173693},
+      {0xe8111c87c5c1ba99, 0xc8fa8db6ccdd0438},
+      {0x910ab1d4db9914a0, 0x1d9c9892400a22a3},
+      {0xb54d5e4a127f59c8, 0x2503beb6d00cab4c},
+      {0xe2a0b5dc971f303a, 0x2e44ae64840fd61e},
+      {0x8da471a9de737e24, 0x5ceaecfed289e5d3},
+      {0xb10d8e1456105dad, 0x7425a83e872c5f48},
+      {0xdd50f1996b947518, 0xd12f124e28f7771a},
+      {0x8a5296ffe33cc92f, 0x82bd6b70d99aaa70},
+      {0xace73cbfdc0bfb7b, 0x636cc64d1001550c},
+      {0xd8210befd30efa5a, 0x3c47f7e05401aa4f},
+      {0x8714a775e3e95c78, 0x65acfaec34810a72},
+      {0xa8d9d1535ce3b396, 0x7f1839a741a14d0e},
+      {0xd31045a8341ca07c, 0x1ede48111209a051},
+      {0x83ea2b892091e44d, 0x934aed0aab460433},
+      {0xa4e4b66b68b65d60, 0xf81da84d56178540},
+      {0xce1de40642e3f4b9, 0x36251260ab9d668f},
+      {0x80d2ae83e9ce78f3, 0xc1d72b7c6b42601a},
+      {0xa1075a24e4421730, 0xb24cf65b8612f820},
+      {0xc94930ae1d529cfc, 0xdee033f26797b628},
+      {0xfb9b7cd9a4a7443c, 0x169840ef017da3b2},
+      {0x9d412e0806e88aa5, 0x8e1f289560ee864f},
+      {0xc491798a08a2ad4e, 0xf1a6f2bab92a27e3},
+      {0xf5b5d7ec8acb58a2, 0xae10af696774b1dc},
+      {0x9991a6f3d6bf1765, 0xacca6da1e0a8ef2a},
+      {0xbff610b0cc6edd3f, 0x17fd090a58d32af4},
+      {0xeff394dcff8a948e, 0xddfc4b4cef07f5b1},
+      {0x95f83d0a1fb69cd9, 0x4abdaf101564f98f},
+      {0xbb764c4ca7a4440f, 0x9d6d1ad41abe37f2},
+      {0xea53df5fd18d5513, 0x84c86189216dc5ee},
+      {0x92746b9be2f8552c, 0x32fd3cf5b4e49bb5},
+      {0xb7118682dbb66a77, 0x3fbc8c33221dc2a2},
+      {0xe4d5e82392a40515, 0x0fabaf3feaa5334b},
+      {0x8f05b1163ba6832d, 0x29cb4d87f2a7400f},
+      {0xb2c71d5bca9023f8, 0x743e20e9ef511013},
+      {0xdf78e4b2bd342cf6, 0x914da9246b255417},
+      {0x8bab8eefb6409c1a, 0x1ad089b6c2f7548f},
+      {0xae9672aba3d0c320, 0xa184ac2473b529b2},
+      {0xda3c0f568cc4f3e8, 0xc9e5d72d90a2741f},
+      {0x8865899617fb1871, 0x7e2fa67c7a658893},
+      {0xaa7eebfb9df9de8d, 0xddbb901b98feeab8},
+      {0xd51ea6fa85785631, 0x552a74227f3ea566},
+      {0x8533285c936b35de, 0xd53a88958f872760},
+      {0xa67ff273b8460356, 0x8a892abaf368f138},
+      {0xd01fef10a657842c, 0x2d2b7569b0432d86},
+      {0x8213f56a67f6b29b, 0x9c3b29620e29fc74},
+      {0xa298f2c501f45f42, 0x8349f3ba91b47b90},
+      {0xcb3f2f7642717713, 0x241c70a936219a74},
+      {0xfe0efb53d30dd4d7, 0xed238cd383aa0111},
+      {0x9ec95d1463e8a506, 0xf4363804324a40ab},
+      {0xc67bb4597ce2ce48, 0xb143c6053edcd0d6},
+      {0xf81aa16fdc1b81da, 0xdd94b7868e94050b},
+      {0x9b10a4e5e9913128, 0xca7cf2b4191c8327},
+      {0xc1d4ce1f63f57d72, 0xfd1c2f611f63a3f1},
+      {0xf24a01a73cf2dccf, 0xbc633b39673c8ced},
+      {0x976e41088617ca01, 0xd5be0503e085d814},
+      {0xbd49d14aa79dbc82, 0x4b2d8644d8a74e19},
+      {0xec9c459d51852ba2, 0xddf8e7d60ed1219f},
+      {0x93e1ab8252f33b45, 0xcabb90e5c942b504},
+      {0xb8da1662e7b00a17, 0x3d6a751f3b936244},
+      {0xe7109bfba19c0c9d, 0x0cc512670a783ad5},
+      {0x906a617d450187e2, 0x27fb2b80668b24c6},
+      {0xb484f9dc9641e9da, 0xb1f9f660802dedf7},
+      {0xe1a63853bbd26451, 0x5e7873f8a0396974},
+      {0x8d07e33455637eb2, 0xdb0b487b6423e1e9},
+      {0xb049dc016abc5e5f, 0x91ce1a9a3d2cda63},
+      {0xdc5c5301c56b75f7, 0x7641a140cc7810fc},
+      {0x89b9b3e11b6329ba, 0xa9e904c87fcb0a9e},
+      {0xac2820d9623bf429, 0x546345fa9fbdcd45},
+      {0xd732290fbacaf133, 0xa97c177947ad4096},
+      {0x867f59a9d4bed6c0, 0x49ed8eabcccc485e},
+      {0xa81f301449ee8c70, 0x5c68f256bfff5a75},
+      {0xd226fc195c6a2f8c, 0x73832eec6fff3112},
+      {0x83585d8fd9c25db7, 0xc831fd53c5ff7eac},
+      {0xa42e74f3d032f525, 0xba3e7ca8b77f5e56},
+      {0xcd3a1230c43fb26f, 0x28ce1bd2e55f35ec},
+      {0x80444b5e7aa7cf85, 0x7980d163cf5b81b4},
+      {0xa0555e361951c366, 0xd7e105bcc3326220},
+      {0xc86ab5c39fa63440, 0x8dd9472bf3fefaa8},
+      {0xfa856334878fc150, 0xb14f98f6f0feb952},
+      {0x9c935e00d4b9d8d2, 0x6ed1bf9a569f33d4},
+      {0xc3b8358109e84f07, 0x0a862f80ec4700c9},
+      {0xf4a642e14c6262c8, 0xcd27bb612758c0fb},
+      {0x98e7e9cccfbd7dbd, 0x8038d51cb897789d},
+      {0xbf21e44003acdd2c, 0xe0470a63e6bd56c4},
+      {0xeeea5d5004981478, 0x1858ccfce06cac75},
+      {0x95527a5202df0ccb, 0x0f37801e0c43ebc9},
+      {0xbaa718e68396cffd, 0xd30560258f54e6bb},
+      {0xe950df20247c83fd, 0x47c6b82ef32a206a},
+      {0x91d28b7416cdd27e, 0x4cdc331d57fa5442},
+      {0xb6472e511c81471d, 0xe0133fe4adf8e953},
+      {0xe3d8f9e563a198e5, 0x58180fddd97723a7},
+      {0x8e679c2f5e44ff8f, 0x570f09eaa7ea7649},
+      {0xb201833b35d63f73, 0x2cd2cc6551e513db},
+      {0xde81e40a034bcf4f, 0xf8077f7ea65e58d2},
+      {0x8b112e86420f6191, 0xfb04afaf27faf783},
+      {0xadd57a27d29339f6, 0x79c5db9af1f9b564},
+      {0xd94ad8b1c7380874, 0x18375281ae7822bd},
+      {0x87cec76f1c830548, 0x8f2293910d0b15b6},
+      {0xa9c2794ae3a3c69a, 0xb2eb3875504ddb23},
+      {0xd433179d9c8cb841, 0x5fa60692a46151ec},
+      {0x849feec281d7f328, 0xdbc7c41ba6bcd334},
+      {0xa5c7ea73224deff3, 0x12b9b522906c0801},
+      {0xcf39e50feae16bef, 0xd768226b34870a01},
+      {0x81842f29f2cce375, 0xe6a1158300d46641},
+      {0xa1e53af46f801c53, 0x60495ae3c1097fd1},
+      {0xca5e89b18b602368, 0x385bb19cb14bdfc5},
+      {0xfcf62c1dee382c42, 0x46729e03dd9ed7b6},
+      {0x9e19db92b4e31ba9, 0x6c07a2c26a8346d2},
+      {0xc5a05277621be293, 0xc7098b7305241886},
+      {0xf70867153aa2db38, 0xb8cbee4fc66d1ea8},
+      {0x9a65406d44a5c903, 0x737f74f1dc043329},
+      {0xc0fe908895cf3b44, 0x505f522e53053ff3},
+      {0xf13e34aabb430a15, 0x647726b9e7c68ff0},
+      {0x96c6e0eab509e64d, 0x5eca783430dc19f6},
+      {0xbc789925624c5fe0, 0xb67d16413d132073},
+      {0xeb96bf6ebadf77d8, 0xe41c5bd18c57e890},
+      {0x933e37a534cbaae7, 0x8e91b962f7b6f15a},
+      {0xb80dc58e81fe95a1, 0x723627bbb5a4adb1},
+      {0xe61136f2227e3b09, 0xcec3b1aaa30dd91d},
+      {0x8fcac257558ee4e6, 0x213a4f0aa5e8a7b2},
+      {0xb3bd72ed2af29e1f, 0xa988e2cd4f62d19e},
+      {0xe0accfa875af45a7, 0x93eb1b80a33b8606},
+      {0x8c6c01c9498d8b88, 0xbc72f130660533c4},
+      {0xaf87023b9bf0ee6a, 0xeb8fad7c7f8680b5},
+      {0xdb68c2ca82ed2a05, 0xa67398db9f6820e2},
 #else
-        {0xff77b1fcbebcdc4f, 0x25e8e89c13bb0f7b},
-        {0xce5d73ff402d98e3, 0xfb0a3d212dc81290},
-        {0xa6b34ad8c9dfc06f, 0xf42faa48c0ea481f},
-        {0x86a8d39ef77164bc, 0xae5dff9c02033198},
-        {0xd98ddaee19068c76, 0x3badd624dd9b0958},
-        {0xafbd2350644eeacf, 0xe5d1929ef90898fb},
-        {0x8df5efabc5979c8f, 0xca8d3ffa1ef463c2},
-        {0xe55990879ddcaabd, 0xcc420a6a101d0516},
-        {0xb94470938fa89bce, 0xf808e40e8d5b3e6a},
-        {0x95a8637627989aad, 0xdde7001379a44aa9},
-        {0xf1c90080baf72cb1, 0x5324c68b12dd6339},
-        {0xc350000000000000, 0x0000000000000000},
-        {0x9dc5ada82b70b59d, 0xf020000000000000},
-        {0xfee50b7025c36a08, 0x02f236d04753d5b5},
-        {0xcde6fd5e09abcf26, 0xed4c0226b55e6f87},
-        {0xa6539930bf6bff45, 0x84db8346b786151d},
-        {0x865b86925b9bc5c2, 0x0b8a2392ba45a9b3},
-        {0xd910f7ff28069da4, 0x1b2ba1518094da05},
-        {0xaf58416654a6babb, 0x387ac8d1970027b3},
-        {0x8da471a9de737e24, 0x5ceaecfed289e5d3},
-        {0xe4d5e82392a40515, 0x0fabaf3feaa5334b},
-        {0xb8da1662e7b00a17, 0x3d6a751f3b936244},
-        {0x95527a5202df0ccb, 0x0f37801e0c43ebc9},
-        {0xf13e34aabb430a15, 0x647726b9e7c68ff0}
+      {0xff77b1fcbebcdc4f, 0x25e8e89c13bb0f7b},
+      {0xce5d73ff402d98e3, 0xfb0a3d212dc81290},
+      {0xa6b34ad8c9dfc06f, 0xf42faa48c0ea481f},
+      {0x86a8d39ef77164bc, 0xae5dff9c02033198},
+      {0xd98ddaee19068c76, 0x3badd624dd9b0958},
+      {0xafbd2350644eeacf, 0xe5d1929ef90898fb},
+      {0x8df5efabc5979c8f, 0xca8d3ffa1ef463c2},
+      {0xe55990879ddcaabd, 0xcc420a6a101d0516},
+      {0xb94470938fa89bce, 0xf808e40e8d5b3e6a},
+      {0x95a8637627989aad, 0xdde7001379a44aa9},
+      {0xf1c90080baf72cb1, 0x5324c68b12dd6339},
+      {0xc350000000000000, 0x0000000000000000},
+      {0x9dc5ada82b70b59d, 0xf020000000000000},
+      {0xfee50b7025c36a08, 0x02f236d04753d5b5},
+      {0xcde6fd5e09abcf26, 0xed4c0226b55e6f87},
+      {0xa6539930bf6bff45, 0x84db8346b786151d},
+      {0x865b86925b9bc5c2, 0x0b8a2392ba45a9b3},
+      {0xd910f7ff28069da4, 0x1b2ba1518094da05},
+      {0xaf58416654a6babb, 0x387ac8d1970027b3},
+      {0x8da471a9de737e24, 0x5ceaecfed289e5d3},
+      {0xe4d5e82392a40515, 0x0fabaf3feaa5334b},
+      {0xb8da1662e7b00a17, 0x3d6a751f3b936244},
+      {0x95527a5202df0ccb, 0x0f37801e0c43ebc9},
+      {0xf13e34aabb430a15, 0x647726b9e7c68ff0}
 #endif
     };
 
@@ -1085,14 +1086,15 @@ template <> struct cache_accessor<double> {
     return {r.high(), r.low() == 0};
   }
 
-  static auto compute_delta(cache_entry_type const& cache,
-                            int beta) noexcept -> uint32_t {
+  static auto compute_delta(cache_entry_type const& cache, int beta) noexcept
+      -> uint32_t {
     return static_cast<uint32_t>(cache.high() >> (64 - 1 - beta));
   }
 
-  static auto compute_mul_parity(
-      carrier_uint two_f, const cache_entry_type& cache,
-      int beta) noexcept -> compute_mul_parity_result {
+  static auto compute_mul_parity(carrier_uint two_f,
+                                 const cache_entry_type& cache,
+                                 int beta) noexcept
+      -> compute_mul_parity_result {
     FMT_ASSERT(beta >= 1, "");
     FMT_ASSERT(beta < 64, "");
 
@@ -1375,8 +1377,8 @@ template <> struct formatter<detail::bigint> {
     return ctx.begin();
   }
 
-  auto format(const detail::bigint& n,
-              format_context& ctx) const -> format_context::iterator {
+  auto format(const detail::bigint& n, format_context& ctx) const
+      -> format_context::iterator {
     auto out = ctx.out();
     bool first = true;
     for (auto i = n.bigits_.size(); i > 0; --i) {
@@ -1740,8 +1742,8 @@ struct singleton {
 inline auto is_printable(uint16_t x, const singleton* singletons,
                          size_t singletons_size,
                          const unsigned char* singleton_lowers,
-                         const unsigned char* normal,
-                         size_t normal_size) -> bool {
+                         const unsigned char* normal, size_t normal_size)
+    -> bool {
   auto upper = x >> 8;
   auto lower_start = 0;
   for (size_t i = 0; i < singletons_size; ++i) {
diff --git a/include/fmt/format.h b/include/fmt/format.h
index 884c9c6..7c2a19b 100644
--- a/include/fmt/format.h
+++ b/include/fmt/format.h
@@ -358,16 +358,16 @@ class uint128_fallback {
     result += rhs;
     return result;
   }
-  friend auto operator*(const uint128_fallback& lhs,
-                        uint32_t rhs) -> uint128_fallback {
+  friend auto operator*(const uint128_fallback& lhs, uint32_t rhs)
+      -> uint128_fallback {
     FMT_ASSERT(lhs.hi_ == 0, "");
     uint64_t hi = (lhs.lo_ >> 32) * rhs;
     uint64_t lo = (lhs.lo_ & ~uint32_t()) * rhs;
     uint64_t new_lo = (hi << 32) + lo;
     return {(hi >> 32) + (new_lo < lo ? 1 : 0), new_lo};
   }
-  friend auto operator-(const uint128_fallback& lhs,
-                        uint64_t rhs) -> uint128_fallback {
+  friend auto operator-(const uint128_fallback& lhs, uint64_t rhs)
+      -> uint128_fallback {
     return {lhs.hi_ - (lhs.lo_ < rhs ? 1 : 0), lhs.lo_ - rhs};
   }
   FMT_CONSTEXPR auto operator>>(int shift) const -> uint128_fallback {
@@ -554,8 +554,9 @@ template <typename T> auto to_pointer(basic_appender<T> it, size_t n) -> T* {
 template <typename OutputIt,
           FMT_ENABLE_IF(is_back_insert_iterator<OutputIt>::value&&
                             is_contiguous<typename OutputIt::container>::value)>
-inline auto base_iterator(
-    OutputIt it, typename OutputIt::container_type::value_type*) -> OutputIt {
+inline auto base_iterator(OutputIt it,
+                          typename OutputIt::container_type::value_type*)
+    -> OutputIt {
   return it;
 }
 
@@ -567,8 +568,8 @@ constexpr auto base_iterator(Iterator, Iterator it) -> Iterator {
 // <algorithm> is spectacularly slow to compile in C++20 so use a simple fill_n
 // instead (#1998).
 template <typename OutputIt, typename Size, typename T>
-FMT_CONSTEXPR auto fill_n(OutputIt out, Size count,
-                          const T& value) -> OutputIt {
+FMT_CONSTEXPR auto fill_n(OutputIt out, Size count, const T& value)
+    -> OutputIt {
   for (Size i = 0; i < count; ++i) *out++ = value;
   return out;
 }
@@ -604,8 +605,8 @@ FMT_CONSTEXPR FMT_NOINLINE auto copy_noinline(InputIt begin, InputIt end,
  * occurs, this pointer will be a guess that depends on the particular
  * error, but it will always advance at least one byte.
  */
-FMT_CONSTEXPR inline auto utf8_decode(const char* s, uint32_t* c,
-                                      int* e) -> const char* {
+FMT_CONSTEXPR inline auto utf8_decode(const char* s, uint32_t* c, int* e)
+    -> const char* {
   constexpr const int masks[] = {0x00, 0x7f, 0x1f, 0x0f, 0x07};
   constexpr const uint32_t mins[] = {4194304, 0, 128, 2048, 65536};
   constexpr const int shiftc[] = {0, 18, 12, 6, 0};
@@ -1059,8 +1060,8 @@ template <typename Locale> class format_facet : public Locale::facet {
         grouping_(g.begin(), g.end()),
         decimal_point_(decimal_point) {}
 
-  auto put(appender out, loc_value val,
-           const format_specs& specs) const -> bool {
+  auto put(appender out, loc_value val, const format_specs& specs) const
+      -> bool {
     return do_put(out, val, specs);
   }
 };
@@ -1283,8 +1284,8 @@ template <typename Iterator> struct format_decimal_result {
 // buffer of specified size. The caller must ensure that the buffer is large
 // enough.
 template <typename Char, typename UInt>
-FMT_CONSTEXPR20 auto format_decimal(Char* out, UInt value,
-                                    int size) -> format_decimal_result<Char*> {
+FMT_CONSTEXPR20 auto format_decimal(Char* out, UInt value, int size)
+    -> format_decimal_result<Char*> {
   FMT_ASSERT(size >= count_digits(value), "invalid digit count");
   out += size;
   Char* end = out;
@@ -1481,8 +1482,8 @@ inline auto umul128_upper64(uint64_t x, uint64_t y) noexcept -> uint64_t {
 
 // Computes upper 128 bits of multiplication of a 64-bit unsigned integer and a
 // 128-bit unsigned integer.
-inline auto umul192_upper128(uint64_t x,
-                             uint128_fallback y) noexcept -> uint128_fallback {
+inline auto umul192_upper128(uint64_t x, uint128_fallback y) noexcept
+    -> uint128_fallback {
   uint128_fallback r = umul128(x, y.high());
   r += umul128_upper64(x, y.low());
   return r;
@@ -1690,8 +1691,8 @@ constexpr auto convert_float(T value) -> convert_float_result<T> {
 }
 
 template <typename Char, typename OutputIt>
-FMT_NOINLINE FMT_CONSTEXPR auto fill(OutputIt it, size_t n,
-                                     const fill_t& fill) -> OutputIt {
+FMT_NOINLINE FMT_CONSTEXPR auto fill(OutputIt it, size_t n, const fill_t& fill)
+    -> OutputIt {
   auto fill_size = fill.size();
   if (fill_size == 1) return detail::fill_n(it, n, fill.template get<Char>());
   if (const Char* data = fill.template data<Char>()) {
@@ -1740,8 +1741,8 @@ FMT_CONSTEXPR auto write_bytes(OutputIt out, string_view bytes,
 }
 
 template <typename Char, typename OutputIt, typename UIntPtr>
-auto write_ptr(OutputIt out, UIntPtr value,
-               const format_specs* specs) -> OutputIt {
+auto write_ptr(OutputIt out, UIntPtr value, const format_specs* specs)
+    -> OutputIt {
   int num_digits = count_digits<4>(value);
   auto size = to_unsigned(num_digits) + size_t(2);
   auto write = [=](reserve_iterator<OutputIt> it) {
@@ -1768,8 +1769,8 @@ template <typename Char> struct find_escape_result {
 };
 
 template <typename Char>
-auto find_escape(const Char* begin,
-                 const Char* end) -> find_escape_result<Char> {
+auto find_escape(const Char* begin, const Char* end)
+    -> find_escape_result<Char> {
   for (; begin != end; ++begin) {
     uint32_t cp = static_cast<unsigned_char<Char>>(*begin);
     if (const_check(sizeof(Char) == 1) && cp >= 0x80) continue;
@@ -1778,8 +1779,8 @@ auto find_escape(const Char* begin,
   return {begin, nullptr, 0};
 }
 
-inline auto find_escape(const char* begin,
-                        const char* end) -> find_escape_result<char> {
+inline auto find_escape(const char* begin, const char* end)
+    -> find_escape_result<char> {
   if (!use_utf8()) return find_escape<char>(begin, end);
   auto result = find_escape_result<char>{end, nullptr, 0};
   for_each_codepoint(string_view(begin, to_unsigned(end - begin)),
@@ -1828,8 +1829,8 @@ auto write_codepoint(OutputIt out, char prefix, uint32_t cp) -> OutputIt {
 }
 
 template <typename OutputIt, typename Char>
-auto write_escaped_cp(OutputIt out,
-                      const find_escape_result<Char>& escape) -> OutputIt {
+auto write_escaped_cp(OutputIt out, const find_escape_result<Char>& escape)
+    -> OutputIt {
   auto c = static_cast<Char>(escape.cp);
   switch (escape.cp) {
   case '\n':
@@ -1869,8 +1870,8 @@ auto write_escaped_cp(OutputIt out,
 }
 
 template <typename Char, typename OutputIt>
-auto write_escaped_string(OutputIt out,
-                          basic_string_view<Char> str) -> OutputIt {
+auto write_escaped_string(OutputIt out, basic_string_view<Char> str)
+    -> OutputIt {
   *out++ = static_cast<Char>('"');
   auto begin = str.begin(), end = str.end();
   do {
@@ -2043,8 +2044,8 @@ FMT_CONSTEXPR inline void prefix_append(unsigned& prefix, unsigned value) {
 // Writes a decimal integer with digit grouping.
 template <typename OutputIt, typename UInt, typename Char>
 auto write_int(OutputIt out, UInt value, unsigned prefix,
-               const format_specs& specs,
-               const digit_grouping<Char>& grouping) -> OutputIt {
+               const format_specs& specs, const digit_grouping<Char>& grouping)
+    -> OutputIt {
   static_assert(std::is_same<uint64_or_128_t<UInt>, UInt>::value, "");
   int num_digits = 0;
   auto buffer = memory_buffer();
@@ -2095,8 +2096,8 @@ auto write_int(OutputIt out, UInt value, unsigned prefix,
 FMT_API auto write_loc(appender out, loc_value value, const format_specs& specs,
                        locale_ref loc) -> bool;
 template <typename OutputIt>
-inline auto write_loc(OutputIt, loc_value, const format_specs&,
-                      locale_ref) -> bool {
+inline auto write_loc(OutputIt, loc_value, const format_specs&, locale_ref)
+    -> bool {
   return false;
 }
 
@@ -2144,8 +2145,8 @@ template <typename Char = char> struct loc_writer {
 
 template <typename Char, typename OutputIt, typename T>
 FMT_CONSTEXPR FMT_INLINE auto write_int(OutputIt out, write_int_arg<T> arg,
-                                        const format_specs& specs,
-                                        locale_ref) -> OutputIt {
+                                        const format_specs& specs, locale_ref)
+    -> OutputIt {
   static_assert(std::is_same<T, uint32_or_64_or_128_t<T>>::value, "");
   auto abs_value = arg.abs_value;
   auto prefix = arg.prefix;
@@ -2206,8 +2207,8 @@ template <typename Char, typename T,
                         !std::is_same<T, bool>::value &&
                         !std::is_same<T, Char>::value)>
 FMT_CONSTEXPR FMT_INLINE auto write(basic_appender<Char> out, T value,
-                                    const format_specs& specs,
-                                    locale_ref loc) -> basic_appender<Char> {
+                                    const format_specs& specs, locale_ref loc)
+    -> basic_appender<Char> {
   if (specs.localized && write_loc(out, value, specs, loc)) return out;
   return write_int_noinline<Char>(out, make_write_int_arg(value, specs.sign),
                                   specs, loc);
@@ -2219,8 +2220,8 @@ template <typename Char, typename OutputIt, typename T,
                         !std::is_same<T, Char>::value &&
                         !std::is_same<OutputIt, basic_appender<Char>>::value)>
 FMT_CONSTEXPR FMT_INLINE auto write(OutputIt out, T value,
-                                    const format_specs& specs,
-                                    locale_ref loc) -> OutputIt {
+                                    const format_specs& specs, locale_ref loc)
+    -> OutputIt {
   if (specs.localized && write_loc(out, value, specs, loc)) return out;
   return write_int<Char>(out, make_write_int_arg(value, specs.sign), specs,
                          loc);
@@ -2257,8 +2258,8 @@ class counting_iterator {
     return it;
   }
 
-  FMT_CONSTEXPR friend auto operator+(counting_iterator it,
-                                      difference_type n) -> counting_iterator {
+  FMT_CONSTEXPR friend auto operator+(counting_iterator it, difference_type n)
+      -> counting_iterator {
     it.count_ += static_cast<size_t>(n);
     return it;
   }
@@ -2415,8 +2416,8 @@ FMT_CONSTEXPR inline auto parse_float_type_spec(const format_specs& specs)
 
 template <typename Char, typename OutputIt>
 FMT_CONSTEXPR20 auto write_nonfinite(OutputIt out, bool isnan,
-                                     format_specs specs,
-                                     sign_t sign) -> OutputIt {
+                                     format_specs specs, sign_t sign)
+    -> OutputIt {
   auto str =
       isnan ? (specs.upper ? "NAN" : "nan") : (specs.upper ? "INF" : "inf");
   constexpr size_t str_size = 3;
@@ -2540,8 +2541,8 @@ template <typename Char, typename OutputIt, typename DecimalFP,
           typename Grouping = digit_grouping<Char>>
 FMT_CONSTEXPR20 auto do_write_float(OutputIt out, const DecimalFP& f,
                                     const format_specs& specs,
-                                    float_specs fspecs,
-                                    locale_ref loc) -> OutputIt {
+                                    float_specs fspecs, locale_ref loc)
+    -> OutputIt {
   auto significand = f.significand;
   int significand_size = get_significand_size(f);
   const Char zero = static_cast<Char>('0');
@@ -2852,8 +2853,8 @@ class bigint {
     return *this;
   }
 
-  friend FMT_CONSTEXPR20 auto compare(const bigint& lhs,
-                                      const bigint& rhs) -> int {
+  friend FMT_CONSTEXPR20 auto compare(const bigint& lhs, const bigint& rhs)
+      -> int {
     int num_lhs_bigits = lhs.num_bigits(), num_rhs_bigits = rhs.num_bigits();
     if (num_lhs_bigits != num_rhs_bigits)
       return num_lhs_bigits > num_rhs_bigits ? 1 : -1;
@@ -2871,8 +2872,8 @@ class bigint {
 
   // Returns compare(lhs1 + lhs2, rhs).
   friend FMT_CONSTEXPR20 auto add_compare(const bigint& lhs1,
-                                          const bigint& lhs2,
-                                          const bigint& rhs) -> int {
+                                          const bigint& lhs2, const bigint& rhs)
+      -> int {
     auto minimum = [](int a, int b) { return a < b ? a : b; };
     auto maximum = [](int a, int b) { return a > b ? a : b; };
     int max_lhs_bigits = maximum(lhs1.num_bigits(), lhs2.num_bigits());
@@ -3619,15 +3620,15 @@ inline auto write(OutputIt out, T value) -> OutputIt {
 }
 
 template <typename Char, typename OutputIt>
-auto write(OutputIt out, monostate, format_specs = {},
-           locale_ref = {}) -> OutputIt {
+auto write(OutputIt out, monostate, format_specs = {}, locale_ref = {})
+    -> OutputIt {
   FMT_ASSERT(false, "");
   return out;
 }
 
 template <typename Char, typename OutputIt>
-FMT_CONSTEXPR auto write(OutputIt out,
-                         basic_string_view<Char> value) -> OutputIt {
+FMT_CONSTEXPR auto write(OutputIt out, basic_string_view<Char> value)
+    -> OutputIt {
   auto it = reserve(out, value.size());
   it = copy_noinline<Char>(value.begin(), value.end(), it);
   return base_iterator(out, it);
@@ -3685,13 +3686,12 @@ auto write(OutputIt out, const T* value, const format_specs& specs = {},
 // A write overload that handles implicit conversions.
 template <typename Char, typename OutputIt, typename T,
           typename Context = basic_format_context<OutputIt, Char>>
-FMT_CONSTEXPR auto write(OutputIt out, const T& value)
-    -> enable_if_t<
-        std::is_class<T>::value && !has_to_string_view<T>::value &&
-            !is_floating_point<T>::value && !std::is_same<T, Char>::value &&
-            !std::is_same<T, remove_cvref_t<decltype(arg_mapper<Context>().map(
-                                 value))>>::value,
-        OutputIt> {
+FMT_CONSTEXPR auto write(OutputIt out, const T& value) -> enable_if_t<
+    std::is_class<T>::value && !has_to_string_view<T>::value &&
+        !is_floating_point<T>::value && !std::is_same<T, Char>::value &&
+        !std::is_same<T, remove_cvref_t<decltype(arg_mapper<Context>().map(
+                             value))>>::value,
+    OutputIt> {
   return write<Char>(out, arg_mapper<Context>().map(value));
 }
 
@@ -3884,8 +3884,8 @@ FMT_API auto vsystem_error(int error_code, string_view format_str,
  *       throw fmt::system_error(errno, "cannot open file '{}'", filename);
  */
 template <typename... T>
-auto system_error(int error_code, format_string<T...> fmt,
-                  T&&... args) -> std::system_error {
+auto system_error(int error_code, format_string<T...> fmt, T&&... args)
+    -> std::system_error {
   return vsystem_error(error_code, fmt, fmt::make_format_args(args...));
 }
 
@@ -4093,8 +4093,8 @@ template <typename T> struct formatter<group_digits_view<T>> : formatter<T> {
   }
 
   template <typename FormatContext>
-  auto format(group_digits_view<T> t,
-              FormatContext& ctx) const -> decltype(ctx.out()) {
+  auto format(group_digits_view<T> t, FormatContext& ctx) const
+      -> decltype(ctx.out()) {
     auto specs = specs_;
     detail::handle_dynamic_spec<detail::width_checker>(specs.width,
                                                        specs.width_ref, ctx);
@@ -4119,8 +4119,8 @@ struct formatter<nested_view<T, Char>, Char> {
     return ctx.begin();
   }
   template <typename FormatContext>
-  auto format(nested_view<T, Char> view,
-              FormatContext& ctx) const -> decltype(ctx.out()) {
+  auto format(nested_view<T, Char> view, FormatContext& ctx) const
+      -> decltype(ctx.out()) {
     return view.fmt->format(*view.value, ctx);
   }
 };
@@ -4253,8 +4253,8 @@ void vformat_to(buffer<Char>& buf, basic_string_view<Char> fmt,
           context.out(), context.args(), context.locale()}));
     }
 
-    auto on_format_specs(int id, const Char* begin,
-                         const Char* end) -> const Char* {
+    auto on_format_specs(int id, const Char* begin, const Char* end)
+        -> const Char* {
       auto arg = get_arg(context, id);
       // Not using a visitor for custom types gives better codegen.
       if (arg.format_custom(begin, parse_context, context))
@@ -4352,21 +4352,21 @@ FMT_API auto vformat(string_view fmt, format_args args) -> std::string;
  *     std::string message = fmt::format("The answer is {}.", 42);
  */
 template <typename... T>
-FMT_NODISCARD FMT_INLINE auto format(format_string<T...> fmt,
-                                     T&&... args) -> std::string {
+FMT_NODISCARD FMT_INLINE auto format(format_string<T...> fmt, T&&... args)
+    -> std::string {
   return vformat(fmt, fmt::make_format_args(args...));
 }
 
 template <typename Locale, FMT_ENABLE_IF(detail::is_locale<Locale>::value)>
-inline auto vformat(const Locale& loc, string_view fmt,
-                    format_args args) -> std::string {
+inline auto vformat(const Locale& loc, string_view fmt, format_args args)
+    -> std::string {
   return detail::vformat(loc, fmt, args);
 }
 
 template <typename Locale, typename... T,
           FMT_ENABLE_IF(detail::is_locale<Locale>::value)>
-inline auto format(const Locale& loc, format_string<T...> fmt,
-                   T&&... args) -> std::string {
+inline auto format(const Locale& loc, format_string<T...> fmt, T&&... args)
+    -> std::string {
   return fmt::vformat(loc, string_view(fmt), fmt::make_format_args(args...));
 }
 
diff --git a/include/fmt/ostream.h b/include/fmt/ostream.h
index b16fff3..98faef6 100644
--- a/include/fmt/ostream.h
+++ b/include/fmt/ostream.h
@@ -30,7 +30,7 @@ namespace detail {
 namespace {
 struct file_access_tag {};
 }  // namespace
-template <typename Tag, typename BufType, FILE* BufType::* FileMemberPtr>
+template <typename Tag, typename BufType, FILE* BufType::*FileMemberPtr>
 class file_access {
   friend auto get_file(BufType& obj) -> FILE* { return obj.*FileMemberPtr; }
 };
@@ -41,8 +41,8 @@ template class file_access<file_access_tag, std::filebuf,
 auto get_file(std::filebuf&) -> FILE*;
 #endif
 
-inline auto write_ostream_unicode(std::ostream& os,
-                                  fmt::string_view data) -> bool {
+inline auto write_ostream_unicode(std::ostream& os, fmt::string_view data)
+    -> bool {
   FILE* f = nullptr;
 #if FMT_MSC_VERSION && FMT_USE_RTTI
   if (auto* buf = dynamic_cast<std::filebuf*>(os.rdbuf()))
@@ -129,8 +129,8 @@ template <typename T, typename Char>
 struct formatter<detail::streamed_view<T>, Char>
     : basic_ostream_formatter<Char> {
   template <typename Context>
-  auto format(detail::streamed_view<T> view,
-              Context& ctx) const -> decltype(ctx.out()) {
+  auto format(detail::streamed_view<T> view, Context& ctx) const
+      -> decltype(ctx.out()) {
     return basic_ostream_formatter<Char>::format(view.value, ctx);
   }
 };
diff --git a/include/fmt/printf.h b/include/fmt/printf.h
index a5787da..072cc6b 100644
--- a/include/fmt/printf.h
+++ b/include/fmt/printf.h
@@ -218,8 +218,8 @@ class printf_width_handler {
 // Workaround for a bug with the XL compiler when initializing
 // printf_arg_formatter's base class.
 template <typename Char>
-auto make_arg_formatter(basic_appender<Char> iter,
-                        format_specs& s) -> arg_formatter<Char> {
+auto make_arg_formatter(basic_appender<Char> iter, format_specs& s)
+    -> arg_formatter<Char> {
   return {iter, s, locale_ref()};
 }
 
@@ -364,8 +364,8 @@ auto parse_header(const Char*& it, const Char* end, format_specs& specs,
   return arg_index;
 }
 
-inline auto parse_printf_presentation_type(char c, type t,
-                                           bool& upper) -> presentation_type {
+inline auto parse_printf_presentation_type(char c, type t, bool& upper)
+    -> presentation_type {
   using pt = presentation_type;
   constexpr auto integral_set = sint_set | uint_set | bool_set | char_set;
   switch (c) {
diff --git a/include/fmt/ranges.h b/include/fmt/ranges.h
index b31e7fa..f387903 100644
--- a/include/fmt/ranges.h
+++ b/include/fmt/ranges.h
@@ -172,12 +172,11 @@ template <typename T, typename C> class is_tuple_formattable_<T, C, true> {
   static auto all_true(...) -> std::false_type;
 
   template <size_t... Is>
-  static auto check(index_sequence<Is...>)
-      -> decltype(all_true(
-          index_sequence<Is...>{},
-          integer_sequence<
-              bool, (is_formattable<typename std::tuple_element<Is, T>::type,
-                                    C>::value)...>{}));
+  static auto check(index_sequence<Is...>) -> decltype(all_true(
+      index_sequence<Is...>{},
+      integer_sequence<bool,
+                       (is_formattable<typename std::tuple_element<Is, T>::type,
+                                       C>::value)...>{}));
 
  public:
   static constexpr const bool value =
@@ -337,8 +336,8 @@ struct formatter<Tuple, Char,
   }
 
   template <typename FormatContext>
-  auto format(const Tuple& value,
-              FormatContext& ctx) const -> decltype(ctx.out()) {
+  auto format(const Tuple& value, FormatContext& ctx) const
+      -> decltype(ctx.out()) {
     ctx.advance_to(detail::copy<Char>(opening_bracket_, ctx.out()));
     detail::for_each2(
         formatters_, value,
@@ -550,8 +549,8 @@ struct formatter<
   }
 
   template <typename FormatContext>
-  auto format(range_type& range,
-              FormatContext& ctx) const -> decltype(ctx.out()) {
+  auto format(range_type& range, FormatContext& ctx) const
+      -> decltype(ctx.out()) {
     return range_formatter_.format(range, ctx);
   }
 };
@@ -638,8 +637,8 @@ struct formatter<
   }
 
   template <typename FormatContext>
-  auto format(range_type& range,
-              FormatContext& ctx) const -> decltype(ctx.out()) {
+  auto format(range_type& range, FormatContext& ctx) const
+      -> decltype(ctx.out()) {
     auto out = ctx.out();
     if (detail::const_check(range_format_kind<R, Char>::value ==
                             range_format::debug_string))
@@ -687,8 +686,8 @@ struct formatter<join_view<It, Sentinel, Char>, Char> {
   }
 
   template <typename FormatContext>
-  auto format(view_ref& value,
-              FormatContext& ctx) const -> decltype(ctx.out()) {
+  auto format(view_ref& value, FormatContext& ctx) const
+      -> decltype(ctx.out()) {
     auto it = std::forward<view_ref>(value).begin;
     auto out = ctx.out();
     if (it == value.end) return out;
@@ -726,9 +725,9 @@ auto join(It begin, Sentinel end, string_view sep) -> join_view<It, Sentinel> {
  *     // Output: 01, 02, 03
  */
 template <typename Range>
-auto join(Range&& r,
-          string_view sep) -> join_view<decltype(detail::range_begin(r)),
-                                        decltype(detail::range_end(r))> {
+auto join(Range&& r, string_view sep)
+    -> join_view<decltype(detail::range_begin(r)),
+                 decltype(detail::range_end(r))> {
   return {detail::range_begin(r), detail::range_end(r), sep};
 }
 
@@ -857,8 +856,8 @@ FMT_BEGIN_EXPORT
  *     // Output: 1, a
  */
 template <typename... T>
-FMT_CONSTEXPR auto join(const std::tuple<T...>& tuple,
-                        string_view sep) -> tuple_join_view<char, T...> {
+FMT_CONSTEXPR auto join(const std::tuple<T...>& tuple, string_view sep)
+    -> tuple_join_view<char, T...> {
   return {tuple, sep};
 }
 
@@ -872,8 +871,8 @@ FMT_CONSTEXPR auto join(const std::tuple<T...>& tuple,
  *     // Output: "1, 2, 3"
  */
 template <typename T>
-auto join(std::initializer_list<T> list,
-          string_view sep) -> join_view<const T*, const T*> {
+auto join(std::initializer_list<T> list, string_view sep)
+    -> join_view<const T*, const T*> {
   return join(std::begin(list), std::end(list), sep);
 }
 
diff --git a/include/fmt/std.h b/include/fmt/std.h
index adace7f..fb43940 100644
--- a/include/fmt/std.h
+++ b/include/fmt/std.h
@@ -198,8 +198,8 @@ struct formatter<std::bitset<N>, Char> : nested_formatter<string_view> {
 
  public:
   template <typename FormatContext>
-  auto format(const std::bitset<N>& bs,
-              FormatContext& ctx) const -> decltype(ctx.out()) {
+  auto format(const std::bitset<N>& bs, FormatContext& ctx) const
+      -> decltype(ctx.out()) {
     return write_padded(ctx, writer{bs});
   }
 };
@@ -239,8 +239,8 @@ struct formatter<std::optional<T>, Char,
   }
 
   template <typename FormatContext>
-  auto format(const std::optional<T>& opt,
-              FormatContext& ctx) const -> decltype(ctx.out()) {
+  auto format(const std::optional<T>& opt, FormatContext& ctx) const
+      -> decltype(ctx.out()) {
     if (!opt) return detail::write<Char>(ctx.out(), none);
 
     auto out = ctx.out();
@@ -285,8 +285,8 @@ struct formatter<std::expected<T, E>, Char,
   }
 
   template <typename FormatContext>
-  auto format(const std::expected<T, E>& value,
-              FormatContext& ctx) const -> decltype(ctx.out()) {
+  auto format(const std::expected<T, E>& value, FormatContext& ctx) const
+      -> decltype(ctx.out()) {
     auto out = ctx.out();
 
     if (value.has_value()) {
@@ -312,8 +312,8 @@ template <> struct formatter<std::source_location> {
   }
 
   template <typename FormatContext>
-  auto format(const std::source_location& loc,
-              FormatContext& ctx) const -> decltype(ctx.out()) {
+  auto format(const std::source_location& loc, FormatContext& ctx) const
+      -> decltype(ctx.out()) {
     auto out = ctx.out();
     out = detail::write(out, loc.file_name());
     out = detail::write(out, ':');
@@ -371,8 +371,8 @@ template <typename Char> struct formatter<std::monostate, Char> {
   }
 
   template <typename FormatContext>
-  auto format(const std::monostate&,
-              FormatContext& ctx) const -> decltype(ctx.out()) {
+  auto format(const std::monostate&, FormatContext& ctx) const
+      -> decltype(ctx.out()) {
     return detail::write<Char>(ctx.out(), "monostate");
   }
 };
@@ -389,8 +389,8 @@ struct formatter<
   }
 
   template <typename FormatContext>
-  auto format(const Variant& value,
-              FormatContext& ctx) const -> decltype(ctx.out()) {
+  auto format(const Variant& value, FormatContext& ctx) const
+      -> decltype(ctx.out()) {
     auto out = ctx.out();
 
     out = detail::write<Char>(out, "variant(");
@@ -420,8 +420,8 @@ template <typename Char> struct formatter<std::error_code, Char> {
   }
 
   template <typename FormatContext>
-  FMT_CONSTEXPR auto format(const std::error_code& ec,
-                            FormatContext& ctx) const -> decltype(ctx.out()) {
+  FMT_CONSTEXPR auto format(const std::error_code& ec, FormatContext& ctx) const
+      -> decltype(ctx.out()) {
     auto out = ctx.out();
     out = detail::write_bytes<Char>(out, ec.category().name(), format_specs());
     out = detail::write<Char>(out, Char(':'));
@@ -512,8 +512,8 @@ struct formatter<std::type_info, Char  // DEPRECATED! Mixing code unit types.
   }
 
   template <typename Context>
-  auto format(const std::type_info& ti,
-              Context& ctx) const -> decltype(ctx.out()) {
+  auto format(const std::type_info& ti, Context& ctx) const
+      -> decltype(ctx.out()) {
     return detail::write_demangled_name<Char>(ctx.out(), ti);
   }
 };
@@ -541,8 +541,8 @@ struct formatter<
   }
 
   template <typename Context>
-  auto format(const std::exception& ex,
-              Context& ctx) const -> decltype(ctx.out()) {
+  auto format(const std::exception& ex, Context& ctx) const
+      -> decltype(ctx.out()) {
     auto out = ctx.out();
 #if FMT_USE_RTTI
     if (with_typename_) {
@@ -592,8 +592,8 @@ struct formatter<BitRef, Char,
                  enable_if_t<detail::is_bit_reference_like<BitRef>::value>>
     : formatter<bool, Char> {
   template <typename FormatContext>
-  FMT_CONSTEXPR auto format(const BitRef& v,
-                            FormatContext& ctx) const -> decltype(ctx.out()) {
+  FMT_CONSTEXPR auto format(const BitRef& v, FormatContext& ctx) const
+      -> decltype(ctx.out()) {
     return formatter<bool, Char>::format(v, ctx);
   }
 };
@@ -612,8 +612,8 @@ struct formatter<std::atomic<T>, Char,
                  enable_if_t<is_formattable<T, Char>::value>>
     : formatter<T, Char> {
   template <typename FormatContext>
-  auto format(const std::atomic<T>& v,
-              FormatContext& ctx) const -> decltype(ctx.out()) {
+  auto format(const std::atomic<T>& v, FormatContext& ctx) const
+      -> decltype(ctx.out()) {
     return formatter<T, Char>::format(v.load(), ctx);
   }
 };
@@ -623,8 +623,8 @@ FMT_EXPORT
 template <typename Char>
 struct formatter<std::atomic_flag, Char> : formatter<bool, Char> {
   template <typename FormatContext>
-  auto format(const std::atomic_flag& v,
-              FormatContext& ctx) const -> decltype(ctx.out()) {
+  auto format(const std::atomic_flag& v, FormatContext& ctx) const
+      -> decltype(ctx.out()) {
     return formatter<bool, Char>::format(v.test(), ctx);
   }
 };
@@ -638,8 +638,8 @@ template <typename T, typename Char> struct formatter<std::complex<T>, Char> {
   template <typename FormatContext, typename OutputIt>
   FMT_CONSTEXPR auto do_format(const std::complex<T>& c,
                                detail::dynamic_format_specs<Char>& specs,
-                               FormatContext& ctx,
-                               OutputIt out) const -> OutputIt {
+                               FormatContext& ctx, OutputIt out) const
+      -> OutputIt {
     if (c.real() != 0) {
       *out++ = Char('(');
       out = detail::write<Char>(out, c.real(), specs, ctx.locale());
@@ -665,8 +665,8 @@ template <typename T, typename Char> struct formatter<std::complex<T>, Char> {
   }
 
   template <typename FormatContext>
-  auto format(const std::complex<T>& c,
-              FormatContext& ctx) const -> decltype(ctx.out()) {
+  auto format(const std::complex<T>& c, FormatContext& ctx) const
+      -> decltype(ctx.out()) {
     auto specs = specs_;
     if (specs.width_ref.kind != detail::arg_id_kind::none ||
         specs.precision_ref.kind != detail::arg_id_kind::none) {
diff --git a/include/fmt/xchar.h b/include/fmt/xchar.h
index e7b2d64..b1f39ed 100644
--- a/include/fmt/xchar.h
+++ b/include/fmt/xchar.h
@@ -92,35 +92,35 @@ constexpr auto make_wformat_args(T&... args)
 
 inline namespace literals {
 #if FMT_USE_USER_DEFINED_LITERALS && !FMT_USE_NONTYPE_TEMPLATE_ARGS
-constexpr auto operator""_a(const wchar_t* s,
-                            size_t) -> detail::udl_arg<wchar_t> {
+constexpr auto operator""_a(const wchar_t* s, size_t)
+    -> detail::udl_arg<wchar_t> {
   return {s};
 }
 #endif
 }  // namespace literals
 
 template <typename It, typename Sentinel>
-auto join(It begin, Sentinel end,
-          wstring_view sep) -> join_view<It, Sentinel, wchar_t> {
+auto join(It begin, Sentinel end, wstring_view sep)
+    -> join_view<It, Sentinel, wchar_t> {
   return {begin, end, sep};
 }
 
 template <typename Range>
-auto join(Range&& range,
-          wstring_view sep) -> join_view<detail::iterator_t<Range>,
-                                         detail::sentinel_t<Range>, wchar_t> {
+auto join(Range&& range, wstring_view sep)
+    -> join_view<detail::iterator_t<Range>, detail::sentinel_t<Range>,
+                 wchar_t> {
   return join(std::begin(range), std::end(range), sep);
 }
 
 template <typename T>
-auto join(std::initializer_list<T> list,
-          wstring_view sep) -> join_view<const T*, const T*, wchar_t> {
+auto join(std::initializer_list<T> list, wstring_view sep)
+    -> join_view<const T*, const T*, wchar_t> {
   return join(std::begin(list), std::end(list), sep);
 }
 
 template <typename... T>
-auto join(const std::tuple<T...>& tuple,
-          basic_string_view<wchar_t> sep) -> tuple_join_view<wchar_t, T...> {
+auto join(const std::tuple<T...>& tuple, basic_string_view<wchar_t> sep)
+    -> tuple_join_view<wchar_t, T...> {
   return {tuple, sep};
 }
 
@@ -139,8 +139,8 @@ auto format(wformat_string<T...> fmt, T&&... args) -> std::wstring {
 }
 
 template <typename OutputIt, typename... T>
-auto format_to(OutputIt out, wformat_string<T...> fmt,
-               T&&... args) -> OutputIt {
+auto format_to(OutputIt out, wformat_string<T...> fmt, T&&... args)
+    -> OutputIt {
   return vformat_to(out, fmt::wstring_view(fmt),
                     fmt::make_wformat_args(args...));
 }
@@ -170,8 +170,8 @@ template <typename Locale, typename S, typename... T,
           typename Char = detail::format_string_char_t<S>,
           FMT_ENABLE_IF(detail::is_locale<Locale>::value&&
                             detail::is_exotic_char<Char>::value)>
-inline auto format(const Locale& loc, const S& format_str,
-                   T&&... args) -> std::basic_string<Char> {
+inline auto format(const Locale& loc, const S& format_str, T&&... args)
+    -> std::basic_string<Char> {
   return detail::vformat(
       loc, detail::to_string_view(format_str),
       fmt::make_format_args<buffered_context<Char>>(args...));
@@ -241,8 +241,8 @@ template <typename OutputIt, typename S, typename... T,
           typename Char = detail::format_string_char_t<S>,
           FMT_ENABLE_IF(detail::is_output_iterator<OutputIt, Char>::value&&
                             detail::is_exotic_char<Char>::value)>
-inline auto format_to_n(OutputIt out, size_t n, const S& fmt,
-                        T&&... args) -> format_to_n_result<OutputIt> {
+inline auto format_to_n(OutputIt out, size_t n, const S& fmt, T&&... args)
+    -> format_to_n_result<OutputIt> {
   return vformat_to_n(out, n, fmt::basic_string_view<Char>(fmt),
                       fmt::make_format_args<buffered_context<Char>>(args...));
 }
@@ -287,16 +287,16 @@ template <typename... T> void println(wformat_string<T...> fmt, T&&... args) {
   return print(L"{}\n", fmt::format(fmt, std::forward<T>(args)...));
 }
 
-inline auto vformat(const text_style& ts, wstring_view fmt,
-                    wformat_args args) -> std::wstring {
+inline auto vformat(const text_style& ts, wstring_view fmt, wformat_args args)
+    -> std::wstring {
   auto buf = wmemory_buffer();
   detail::vformat_to(buf, ts, fmt, args);
   return fmt::to_string(buf);
 }
 
 template <typename... T>
-inline auto format(const text_style& ts, wformat_string<T...> fmt,
-                   T&&... args) -> std::wstring {
+inline auto format(const text_style& ts, wformat_string<T...> fmt, T&&... args)
+    -> std::wstring {
   return fmt::vformat(ts, fmt, fmt::make_wformat_args(args...));
 }
 

@tchaikov tchaikov closed this Jul 12, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

1 participant