From 6081edc9d08555364786407e7c0be116b1332080 Mon Sep 17 00:00:00 2001
From: "Stephan T. Lavavej" <stl@exchange.microsoft.com>
Date: Thu, 4 May 2017 01:43:58 +0000
Subject: [PATCH] [libcxx] [test] Strip trailing whitespace. NFC.

llvm-svn: 302105
---
 .../alg.random.shuffle/random_shuffle.cxx1z.pass.cpp        | 2 +-
 .../depr/depr.function.objects/depr.adaptors.cxx1z.pass.cpp | 6 +++---
 .../alg.remove/remove_copy_if.pass.cpp                      | 2 +-
 .../algorithms/alg.nonmodifying/alg.count/count_if.pass.cpp | 2 +-
 .../algorithms/alg.nonmodifying/alg.find/find_if.pass.cpp   | 2 +-
 .../alg.nonmodifying/alg.find/find_if_not.pass.cpp          | 2 +-
 .../containers/sequences/vector.bool/vector_bool.pass.cpp   | 2 +-
 .../test/std/language.support/support.types/byte.pass.cpp   | 2 +-
 .../support.types/byteops/lshift.assign.fail.cpp            | 2 +-
 .../support.types/byteops/lshift.assign.pass.cpp            | 4 ++--
 .../language.support/support.types/byteops/lshift.fail.cpp  | 2 +-
 .../language.support/support.types/byteops/lshift.pass.cpp  | 6 +++---
 .../support.types/byteops/rshift.assign.fail.cpp            | 2 +-
 .../support.types/byteops/rshift.assign.pass.cpp            | 2 +-
 .../language.support/support.types/byteops/rshift.fail.cpp  | 2 +-
 .../language.support/support.types/byteops/rshift.pass.cpp  | 6 +++---
 .../support.types/byteops/to_integer.fail.cpp               | 2 +-
 .../support.types/byteops/to_integer.pass.cpp               | 4 ++--
 libcxx/test/std/re/re.alg/re.alg.match/awk.pass.cpp         | 2 +-
 .../thread.lock/thread.lock.guard/mutex.pass.cpp            | 2 +-
 .../thread.lock/thread.lock.scoped/mutex.pass.cpp           | 2 +-
 .../util.smartptr.ownerless/owner_less.pass.cpp             | 2 +-
 .../optional.object/optional.object.ctor/copy.fail.cpp      | 4 ++--
 .../optional.object/optional.object.ctor/move.fail.cpp      | 4 ++--
 .../utilities/template.bitset/bitset.hash/bitset.pass.cpp   | 2 +-
 25 files changed, 35 insertions(+), 35 deletions(-)

diff --git a/libcxx/test/libcxx/algorithms/alg.modifying.operations/alg.random.shuffle/random_shuffle.cxx1z.pass.cpp b/libcxx/test/libcxx/algorithms/alg.modifying.operations/alg.random.shuffle/random_shuffle.cxx1z.pass.cpp
index 8214e1e20686..ef3ef7519d69 100644
--- a/libcxx/test/libcxx/algorithms/alg.modifying.operations/alg.random.shuffle/random_shuffle.cxx1z.pass.cpp
+++ b/libcxx/test/libcxx/algorithms/alg.modifying.operations/alg.random.shuffle/random_shuffle.cxx1z.pass.cpp
@@ -12,7 +12,7 @@
 // template <class RandomAccessIterator>
 //     void
 //     random_shuffle(RandomAccessIterator first, RandomAccessIterator last);
-// 
+//
 // template <class RandomAccessIterator, class RandomNumberGenerator>
 //     void
 //     random_shuffle(RandomAccessIterator first, RandomAccessIterator last,
diff --git a/libcxx/test/libcxx/depr/depr.function.objects/depr.adaptors.cxx1z.pass.cpp b/libcxx/test/libcxx/depr/depr.function.objects/depr.adaptors.cxx1z.pass.cpp
index 424fe52b3119..9b846939313b 100644
--- a/libcxx/test/libcxx/depr/depr.function.objects/depr.adaptors.cxx1z.pass.cpp
+++ b/libcxx/test/libcxx/depr/depr.function.objects/depr.adaptors.cxx1z.pass.cpp
@@ -34,14 +34,14 @@ int main()
 	typedef std::pointer_to_binary_function<int, int, int> PBF;
 	assert((std::ptr_fun<int, int>(identity)(4) == 4));
 	assert((std::ptr_fun<int, int, int>(sum)(4, 5) == 9));
-	
+
 	Foo f;
 	assert((std::mem_fn(&Foo::identity)(f, 5) == 5));
 	assert((std::mem_fn(&Foo::sum)(f, 5, 6) == 11));
-	
+
     typedef std::mem_fun_ref_t<int, Foo> MFR;
     typedef std::const_mem_fun_ref_t<int, Foo> CMFR;
-	
+
 	assert((std::mem_fun_ref(&Foo::zero)(f) == 0));
 	assert((std::mem_fun_ref(&Foo::identity)(f, 5) == 5));
 }
diff --git a/libcxx/test/std/algorithms/alg.modifying.operations/alg.remove/remove_copy_if.pass.cpp b/libcxx/test/std/algorithms/alg.modifying.operations/alg.remove/remove_copy_if.pass.cpp
index 1cf2d9e84562..8532998eb08d 100644
--- a/libcxx/test/std/algorithms/alg.modifying.operations/alg.remove/remove_copy_if.pass.cpp
+++ b/libcxx/test/std/algorithms/alg.modifying.operations/alg.remove/remove_copy_if.pass.cpp
@@ -30,7 +30,7 @@ test()
     int ia[] = {0, 1, 2, 3, 4, 2, 3, 4, 2};
     const unsigned sa = sizeof(ia)/sizeof(ia[0]);
     int ib[sa];
-    OutIter r = std::remove_copy_if(InIter(ia), InIter(ia+sa), 
+    OutIter r = std::remove_copy_if(InIter(ia), InIter(ia+sa),
                                     OutIter(ib), equalToTwo);
     assert(base(r) == ib + sa-3);
     assert(ib[0] == 0);
diff --git a/libcxx/test/std/algorithms/alg.nonmodifying/alg.count/count_if.pass.cpp b/libcxx/test/std/algorithms/alg.nonmodifying/alg.count/count_if.pass.cpp
index 0a05c6f659ca..ec0526c2dc5c 100644
--- a/libcxx/test/std/algorithms/alg.nonmodifying/alg.count/count_if.pass.cpp
+++ b/libcxx/test/std/algorithms/alg.nonmodifying/alg.count/count_if.pass.cpp
@@ -25,7 +25,7 @@ struct eq {
 	bool operator () (int v2) const { return v == v2; }
 	int v;
 	};
-	
+
 
 int main()
 {
diff --git a/libcxx/test/std/algorithms/alg.nonmodifying/alg.find/find_if.pass.cpp b/libcxx/test/std/algorithms/alg.nonmodifying/alg.find/find_if.pass.cpp
index c942d2e38a58..761d71bbf287 100644
--- a/libcxx/test/std/algorithms/alg.nonmodifying/alg.find/find_if.pass.cpp
+++ b/libcxx/test/std/algorithms/alg.nonmodifying/alg.find/find_if.pass.cpp
@@ -25,7 +25,7 @@ struct eq {
 	bool operator () (int v2) const { return v == v2; }
 	int v;
 	};
-	
+
 int main()
 {
     int ia[] = {0, 1, 2, 3, 4, 5};
diff --git a/libcxx/test/std/algorithms/alg.nonmodifying/alg.find/find_if_not.pass.cpp b/libcxx/test/std/algorithms/alg.nonmodifying/alg.find/find_if_not.pass.cpp
index e68344b4b259..2e52e260336d 100644
--- a/libcxx/test/std/algorithms/alg.nonmodifying/alg.find/find_if_not.pass.cpp
+++ b/libcxx/test/std/algorithms/alg.nonmodifying/alg.find/find_if_not.pass.cpp
@@ -25,7 +25,7 @@ struct ne {
 	bool operator () (int v2) const { return v != v2; }
 	int v;
 	};
-	
+
 
 int main()
 {
diff --git a/libcxx/test/std/containers/sequences/vector.bool/vector_bool.pass.cpp b/libcxx/test/std/containers/sequences/vector.bool/vector_bool.pass.cpp
index 64104a40ec74..89f5a6645d05 100644
--- a/libcxx/test/std/containers/sequences/vector.bool/vector_bool.pass.cpp
+++ b/libcxx/test/std/containers/sequences/vector.bool/vector_bool.pass.cpp
@@ -32,7 +32,7 @@ int main()
     static_assert((std::is_same<H::argument_type, T>::value), "" );
     static_assert((std::is_same<H::result_type, std::size_t>::value), "" );
     ASSERT_NOEXCEPT(H()(T()));
-    
+
     bool ba[] = {true, false, true, true, false};
     T vb(std::begin(ba), std::end(ba));
     H h;
diff --git a/libcxx/test/std/language.support/support.types/byte.pass.cpp b/libcxx/test/std/language.support/support.types/byte.pass.cpp
index aed44f91218f..66b2a553186d 100644
--- a/libcxx/test/std/language.support/support.types/byte.pass.cpp
+++ b/libcxx/test/std/language.support/support.types/byte.pass.cpp
@@ -13,7 +13,7 @@
 
 // XFAIL: c++98, c++03, c++11, c++14
 
-// std::byte is not an integer type, nor a character type. 
+// std::byte is not an integer type, nor a character type.
 // It is a distinct type for accessing the bits that ultimately make up object storage.
 
 static_assert( std::is_pod<std::byte>::value, "" );
diff --git a/libcxx/test/std/language.support/support.types/byteops/lshift.assign.fail.cpp b/libcxx/test/std/language.support/support.types/byteops/lshift.assign.fail.cpp
index 298edb22d249..8f6822932ac2 100644
--- a/libcxx/test/std/language.support/support.types/byteops/lshift.assign.fail.cpp
+++ b/libcxx/test/std/language.support/support.types/byteops/lshift.assign.fail.cpp
@@ -17,7 +17,7 @@
 
 // template <class IntegerType>
 //   constexpr byte& operator<<=(byte& b, IntegerType shift) noexcept;
-// This function shall not participate in overload resolution unless 
+// This function shall not participate in overload resolution unless
 //   is_integral_v<IntegerType> is true.
 
 
diff --git a/libcxx/test/std/language.support/support.types/byteops/lshift.assign.pass.cpp b/libcxx/test/std/language.support/support.types/byteops/lshift.assign.pass.cpp
index f7e0dee9c6bb..dad692e14a6b 100644
--- a/libcxx/test/std/language.support/support.types/byteops/lshift.assign.pass.cpp
+++ b/libcxx/test/std/language.support/support.types/byteops/lshift.assign.pass.cpp
@@ -17,7 +17,7 @@
 
 // template <class IntegerType>
 //   constexpr byte& operator<<=(byte& b, IntegerType shift) noexcept;
-// This function shall not participate in overload resolution unless 
+// This function shall not participate in overload resolution unless
 //   is_integral_v<IntegerType> is true.
 
 
@@ -32,7 +32,7 @@ int main () {
 	constexpr std::byte b3{3};
 
 	static_assert(noexcept(b <<= 2), "" );
-	
+
 	static_assert(std::to_integer<int>(test(b2)) ==  8, "" );
 	static_assert(std::to_integer<int>(test(b3)) == 12, "" );
 
diff --git a/libcxx/test/std/language.support/support.types/byteops/lshift.fail.cpp b/libcxx/test/std/language.support/support.types/byteops/lshift.fail.cpp
index c950329334be..6b1a68f83d25 100644
--- a/libcxx/test/std/language.support/support.types/byteops/lshift.fail.cpp
+++ b/libcxx/test/std/language.support/support.types/byteops/lshift.fail.cpp
@@ -17,7 +17,7 @@
 
 // template <class IntegerType>
 //    constexpr byte operator <<(byte b, IntegerType shift) noexcept;
-// These functions shall not participate in overload resolution unless 
+// These functions shall not participate in overload resolution unless
 //   is_integral_v<IntegerType> is true.
 
 int main () {
diff --git a/libcxx/test/std/language.support/support.types/byteops/lshift.pass.cpp b/libcxx/test/std/language.support/support.types/byteops/lshift.pass.cpp
index b4a8325199ff..39d659023ad8 100644
--- a/libcxx/test/std/language.support/support.types/byteops/lshift.pass.cpp
+++ b/libcxx/test/std/language.support/support.types/byteops/lshift.pass.cpp
@@ -17,17 +17,17 @@
 
 // template <class IntegerType>
 //    constexpr byte operator <<(byte b, IntegerType shift) noexcept;
-// These functions shall not participate in overload resolution unless 
+// These functions shall not participate in overload resolution unless
 //   is_integral_v<IntegerType> is true.
 
 int main () {
 	constexpr std::byte b1{1};
 	constexpr std::byte b3{3};
-	
+
 	static_assert(noexcept(b3 << 2), "" );
 
 	static_assert(std::to_integer<int>(b1 << 1) ==   2, "");
 	static_assert(std::to_integer<int>(b1 << 2) ==   4, "");
 	static_assert(std::to_integer<int>(b3 << 4) ==  48, "");
-	static_assert(std::to_integer<int>(b3 << 6) == 192, "");	
+	static_assert(std::to_integer<int>(b3 << 6) == 192, "");
 }
diff --git a/libcxx/test/std/language.support/support.types/byteops/rshift.assign.fail.cpp b/libcxx/test/std/language.support/support.types/byteops/rshift.assign.fail.cpp
index 3a0c218aff82..44992fa98c33 100644
--- a/libcxx/test/std/language.support/support.types/byteops/rshift.assign.fail.cpp
+++ b/libcxx/test/std/language.support/support.types/byteops/rshift.assign.fail.cpp
@@ -17,7 +17,7 @@
 
 // template <class IntegerType>
 //   constexpr byte operator>>(byte& b, IntegerType shift) noexcept;
-// This function shall not participate in overload resolution unless 
+// This function shall not participate in overload resolution unless
 //   is_integral_v<IntegerType> is true.
 
 
diff --git a/libcxx/test/std/language.support/support.types/byteops/rshift.assign.pass.cpp b/libcxx/test/std/language.support/support.types/byteops/rshift.assign.pass.cpp
index 5b970258f5e0..b7e9a24f20a1 100644
--- a/libcxx/test/std/language.support/support.types/byteops/rshift.assign.pass.cpp
+++ b/libcxx/test/std/language.support/support.types/byteops/rshift.assign.pass.cpp
@@ -17,7 +17,7 @@
 
 // template <class IntegerType>
 //   constexpr byte& operator>>=(byte& b, IntegerType shift) noexcept;
-// This function shall not participate in overload resolution unless 
+// This function shall not participate in overload resolution unless
 //   is_integral_v<IntegerType> is true.
 
 
diff --git a/libcxx/test/std/language.support/support.types/byteops/rshift.fail.cpp b/libcxx/test/std/language.support/support.types/byteops/rshift.fail.cpp
index 14e2fcfa1301..a0309539a7a6 100644
--- a/libcxx/test/std/language.support/support.types/byteops/rshift.fail.cpp
+++ b/libcxx/test/std/language.support/support.types/byteops/rshift.fail.cpp
@@ -17,7 +17,7 @@
 
 // template <class IntegerType>
 //    constexpr byte operator >>(byte b, IntegerType shift) noexcept;
-// These functions shall not participate in overload resolution unless 
+// These functions shall not participate in overload resolution unless
 //   is_integral_v<IntegerType> is true.
 
 int main () {
diff --git a/libcxx/test/std/language.support/support.types/byteops/rshift.pass.cpp b/libcxx/test/std/language.support/support.types/byteops/rshift.pass.cpp
index 5ff986a70ade..876732545ac8 100644
--- a/libcxx/test/std/language.support/support.types/byteops/rshift.pass.cpp
+++ b/libcxx/test/std/language.support/support.types/byteops/rshift.pass.cpp
@@ -17,7 +17,7 @@
 
 // template <class IntegerType>
 //    constexpr byte operator <<(byte b, IntegerType shift) noexcept;
-// These functions shall not participate in overload resolution unless 
+// These functions shall not participate in overload resolution unless
 //   is_integral_v<IntegerType> is true.
 
 
@@ -29,12 +29,12 @@ constexpr std::byte test(std::byte b) {
 int main () {
 	constexpr std::byte b100{100};
 	constexpr std::byte b115{115};
-	
+
 	static_assert(noexcept(b100 << 2), "" );
 
 	static_assert(std::to_integer<int>(b100 >> 1) ==  50, "");
 	static_assert(std::to_integer<int>(b100 >> 2) ==  25, "");
 	static_assert(std::to_integer<int>(b115 >> 3) ==  14, "");
-	static_assert(std::to_integer<int>(b115 >> 6) ==   1, "");	
+	static_assert(std::to_integer<int>(b115 >> 6) ==   1, "");
 
 }
diff --git a/libcxx/test/std/language.support/support.types/byteops/to_integer.fail.cpp b/libcxx/test/std/language.support/support.types/byteops/to_integer.fail.cpp
index 8832e506a118..426ceb7a67de 100644
--- a/libcxx/test/std/language.support/support.types/byteops/to_integer.fail.cpp
+++ b/libcxx/test/std/language.support/support.types/byteops/to_integer.fail.cpp
@@ -17,7 +17,7 @@
 
 // template <class IntegerType>
 //    constexpr IntegerType to_integer(byte b) noexcept;
-// This function shall not participate in overload resolution unless 
+// This function shall not participate in overload resolution unless
 //   is_integral_v<IntegerType> is true.
 
 int main () {
diff --git a/libcxx/test/std/language.support/support.types/byteops/to_integer.pass.cpp b/libcxx/test/std/language.support/support.types/byteops/to_integer.pass.cpp
index 4aca0be82deb..21dff0196a43 100644
--- a/libcxx/test/std/language.support/support.types/byteops/to_integer.pass.cpp
+++ b/libcxx/test/std/language.support/support.types/byteops/to_integer.pass.cpp
@@ -17,13 +17,13 @@
 
 // template <class IntegerType>
 //    constexpr IntegerType to_integer(byte b) noexcept;
-// This function shall not participate in overload resolution unless 
+// This function shall not participate in overload resolution unless
 //   is_integral_v<IntegerType> is true.
 
 int main () {
 	constexpr std::byte b1{1};
 	constexpr std::byte b3{3};
-	
+
 	static_assert(noexcept(std::to_integer<int>(b1)), "" );
 	static_assert(std::is_same<int, decltype(std::to_integer<int>(b1))>::value, "" );
 	static_assert(std::is_same<long, decltype(std::to_integer<long>(b1))>::value, "" );
diff --git a/libcxx/test/std/re/re.alg/re.alg.match/awk.pass.cpp b/libcxx/test/std/re/re.alg/re.alg.match/awk.pass.cpp
index 9bd213f96746..4fc1ea7fe959 100644
--- a/libcxx/test/std/re/re.alg/re.alg.match/awk.pass.cpp
+++ b/libcxx/test/std/re/re.alg/re.alg.match/awk.pass.cpp
@@ -620,7 +620,7 @@ int main()
     {
         std::cmatch m;
         const char s[] = "m";
-        assert(std::regex_match(s, m, 
+        assert(std::regex_match(s, m,
                       std::regex("[a[=M=]z]", std::regex_constants::awk)));
         assert(m.size() == 1);
         assert(!m.prefix().matched);
diff --git a/libcxx/test/std/thread/thread.mutex/thread.lock/thread.lock.guard/mutex.pass.cpp b/libcxx/test/std/thread/thread.mutex/thread.lock/thread.lock.guard/mutex.pass.cpp
index fffd087ee877..97f9d07c1512 100644
--- a/libcxx/test/std/thread/thread.mutex/thread.lock/thread.lock.guard/mutex.pass.cpp
+++ b/libcxx/test/std/thread/thread.mutex/thread.lock/thread.lock.guard/mutex.pass.cpp
@@ -52,7 +52,7 @@ int main()
     std::this_thread::sleep_for(ms(250));
     m.unlock();
     t.join();
-    
+
 #ifdef __cpp_deduction_guides
     std::lock_guard lg(m);
     static_assert((std::is_same<decltype(lg), std::lock_guard<decltype(m)>>::value), "" );
diff --git a/libcxx/test/std/thread/thread.mutex/thread.lock/thread.lock.scoped/mutex.pass.cpp b/libcxx/test/std/thread/thread.mutex/thread.lock/thread.lock.scoped/mutex.pass.cpp
index ef39bbcc5e88..cdf3ceeb615c 100644
--- a/libcxx/test/std/thread/thread.mutex/thread.lock/thread.lock.scoped/mutex.pass.cpp
+++ b/libcxx/test/std/thread/thread.mutex/thread.lock/thread.lock.scoped/mutex.pass.cpp
@@ -150,6 +150,6 @@ int main()
         std::scoped_lock sl{m1, m2, m3};
         static_assert((std::is_same<decltype(sl), std::scoped_lock<decltype(m1), decltype(m2), decltype(m3)>>::value), "" );
         }
-    } 
+    }
 #endif
 }
diff --git a/libcxx/test/std/utilities/memory/util.smartptr/util.smartptr.weak/util.smartptr.ownerless/owner_less.pass.cpp b/libcxx/test/std/utilities/memory/util.smartptr/util.smartptr.weak/util.smartptr.ownerless/owner_less.pass.cpp
index 7ab60da77c7d..501844a1d6ce 100644
--- a/libcxx/test/std/utilities/memory/util.smartptr/util.smartptr.weak/util.smartptr.ownerless/owner_less.pass.cpp
+++ b/libcxx/test/std/utilities/memory/util.smartptr/util.smartptr.weak/util.smartptr.ownerless/owner_less.pass.cpp
@@ -69,7 +69,7 @@ int main()
     static_assert((std::is_same<std::shared_ptr<int>, CS::first_argument_type>::value), "" );
     static_assert((std::is_same<std::shared_ptr<int>, CS::second_argument_type>::value), "" );
     static_assert((std::is_same<bool, CS::result_type>::value), "" );
-	
+
     assert(!cs(p1, p2));
     assert(!cs(p2, p1));
     assert(cs(p1 ,p3) || cs(p3, p1));
diff --git a/libcxx/test/std/utilities/optional/optional.object/optional.object.ctor/copy.fail.cpp b/libcxx/test/std/utilities/optional/optional.object/optional.object.ctor/copy.fail.cpp
index d9e5ca821e85..3224c1bac756 100644
--- a/libcxx/test/std/utilities/optional/optional.object/optional.object.ctor/copy.fail.cpp
+++ b/libcxx/test/std/utilities/optional/optional.object/optional.object.ctor/copy.fail.cpp
@@ -11,7 +11,7 @@
 // <optional>
 
 // constexpr optional(const optional<T>& rhs);
-//   If is_trivially_copy_constructible_v<T> is true, 
+//   If is_trivially_copy_constructible_v<T> is true,
 //    this constructor shall be a constexpr constructor.
 
 #include <optional>
@@ -26,7 +26,7 @@ struct S {
 	S(const S &rhs) : v_(rhs.v_) {}  // make it not trivially copyable
 	int v_;
 	};
-	
+
 
 int main()
 {
diff --git a/libcxx/test/std/utilities/optional/optional.object/optional.object.ctor/move.fail.cpp b/libcxx/test/std/utilities/optional/optional.object/optional.object.ctor/move.fail.cpp
index c7458d95abfd..fb2e139ad591 100644
--- a/libcxx/test/std/utilities/optional/optional.object/optional.object.ctor/move.fail.cpp
+++ b/libcxx/test/std/utilities/optional/optional.object/optional.object.ctor/move.fail.cpp
@@ -11,7 +11,7 @@
 // <optional>
 
 // constexpr optional(const optional<T>&& rhs);
-//   If is_trivially_move_constructible_v<T> is true, 
+//   If is_trivially_move_constructible_v<T> is true,
 //    this constructor shall be a constexpr constructor.
 
 #include <optional>
@@ -27,7 +27,7 @@ struct S {
 	constexpr S(const S &&rhs) : v_(rhs.v_) {} // not trivially moveable
 	int v_;
 	};
-	
+
 
 int main()
 {
diff --git a/libcxx/test/std/utilities/template.bitset/bitset.hash/bitset.pass.cpp b/libcxx/test/std/utilities/template.bitset/bitset.hash/bitset.pass.cpp
index 8eab082cf676..97ab0c44ccff 100644
--- a/libcxx/test/std/utilities/template.bitset/bitset.hash/bitset.pass.cpp
+++ b/libcxx/test/std/utilities/template.bitset/bitset.hash/bitset.pass.cpp
@@ -31,7 +31,7 @@ test()
     static_assert((std::is_same<typename H::argument_type, T>::value), "" );
     static_assert((std::is_same<typename H::result_type, std::size_t>::value), "" );
     ASSERT_NOEXCEPT(H()(T()));
-    
+
     H h;
     T bs(static_cast<unsigned long long>(N));
     const std::size_t result = h(bs);