libmongocrypt-helper 1.6.1.0.1001 → 1.7.4.0.1000

Sign up to get free protection for your applications and to get access to all the features.
Files changed (991) hide show
  1. checksums.yaml +4 -4
  2. checksums.yaml.gz.sig +0 -0
  3. data/ext/libmongocrypt/extconf.rb +70 -0
  4. data/ext/libmongocrypt/libmongocrypt/CHANGELOG.md +164 -0
  5. data/ext/libmongocrypt/libmongocrypt/CMakeLists.txt +699 -0
  6. data/ext/libmongocrypt/libmongocrypt/CODEOWNERS +13 -0
  7. data/ext/libmongocrypt/libmongocrypt/LICENSE +201 -0
  8. data/ext/libmongocrypt/libmongocrypt/README.md +250 -0
  9. data/ext/libmongocrypt/libmongocrypt/VERSION_CURRENT +1 -0
  10. data/ext/libmongocrypt/libmongocrypt/bindings/cs/CMakeLists.txt +16 -0
  11. data/ext/libmongocrypt/libmongocrypt/bindings/cs/MongoDB.Libmongocrypt/AssemblyInfo.cs +4 -0
  12. data/ext/libmongocrypt/libmongocrypt/bindings/cs/MongoDB.Libmongocrypt/Binary.cs +131 -0
  13. data/ext/libmongocrypt/libmongocrypt/bindings/cs/MongoDB.Libmongocrypt/BinarySafeHandle.cs +60 -0
  14. data/ext/libmongocrypt/libmongocrypt/bindings/cs/MongoDB.Libmongocrypt/CheckableSafeHandle.cs +46 -0
  15. data/ext/libmongocrypt/libmongocrypt/bindings/cs/MongoDB.Libmongocrypt/CipherCallbacks.cs +168 -0
  16. data/ext/libmongocrypt/libmongocrypt/bindings/cs/MongoDB.Libmongocrypt/ContextSafeHandle.cs +48 -0
  17. data/ext/libmongocrypt/libmongocrypt/bindings/cs/MongoDB.Libmongocrypt/CryptClient.cs +238 -0
  18. data/ext/libmongocrypt/libmongocrypt/bindings/cs/MongoDB.Libmongocrypt/CryptClientFactory.cs +134 -0
  19. data/ext/libmongocrypt/libmongocrypt/bindings/cs/MongoDB.Libmongocrypt/CryptContext.cs +214 -0
  20. data/ext/libmongocrypt/libmongocrypt/bindings/cs/MongoDB.Libmongocrypt/CryptException.cs +37 -0
  21. data/ext/libmongocrypt/libmongocrypt/bindings/cs/MongoDB.Libmongocrypt/CryptOptions.cs +67 -0
  22. data/ext/libmongocrypt/libmongocrypt/bindings/cs/MongoDB.Libmongocrypt/HashCallback.cs +59 -0
  23. data/ext/libmongocrypt/libmongocrypt/bindings/cs/MongoDB.Libmongocrypt/HmacShaCallbacks.cs +96 -0
  24. data/ext/libmongocrypt/libmongocrypt/bindings/cs/MongoDB.Libmongocrypt/IStatus.cs +26 -0
  25. data/ext/libmongocrypt/libmongocrypt/bindings/cs/MongoDB.Libmongocrypt/KmsCredentials.cs +53 -0
  26. data/ext/libmongocrypt/libmongocrypt/bindings/cs/MongoDB.Libmongocrypt/KmsKeyId.cs +91 -0
  27. data/ext/libmongocrypt/libmongocrypt/bindings/cs/MongoDB.Libmongocrypt/KmsRequest.cs +125 -0
  28. data/ext/libmongocrypt/libmongocrypt/bindings/cs/MongoDB.Libmongocrypt/KmsRequestCollection.cs +60 -0
  29. data/ext/libmongocrypt/libmongocrypt/bindings/cs/MongoDB.Libmongocrypt/Library.cs +652 -0
  30. data/ext/libmongocrypt/libmongocrypt/bindings/cs/MongoDB.Libmongocrypt/LibraryLoader.cs +252 -0
  31. data/ext/libmongocrypt/libmongocrypt/bindings/cs/MongoDB.Libmongocrypt/LibraryLoadingException.cs +34 -0
  32. data/ext/libmongocrypt/libmongocrypt/bindings/cs/MongoDB.Libmongocrypt/License.txt +14 -0
  33. data/ext/libmongocrypt/libmongocrypt/bindings/cs/MongoDB.Libmongocrypt/LogLevel.cs +26 -0
  34. data/ext/libmongocrypt/libmongocrypt/bindings/cs/MongoDB.Libmongocrypt/MongoCryptSafeHandle.cs +48 -0
  35. data/ext/libmongocrypt/libmongocrypt/bindings/cs/MongoDB.Libmongocrypt/MongoDB.Libmongocrypt.csproj +106 -0
  36. data/ext/libmongocrypt/libmongocrypt/bindings/cs/MongoDB.Libmongocrypt/MongoDB.Libmongocrypt.ruleset +85 -0
  37. data/ext/libmongocrypt/libmongocrypt/bindings/cs/MongoDB.Libmongocrypt/MongoDB.Libmongocrypt.targets +21 -0
  38. data/ext/libmongocrypt/libmongocrypt/bindings/cs/MongoDB.Libmongocrypt/OperatingSystemHelper.cs +59 -0
  39. data/ext/libmongocrypt/libmongocrypt/bindings/cs/MongoDB.Libmongocrypt/Package.include.template.csproj +38 -0
  40. data/ext/libmongocrypt/libmongocrypt/bindings/cs/MongoDB.Libmongocrypt/PinnedBinary.cs +49 -0
  41. data/ext/libmongocrypt/libmongocrypt/bindings/cs/MongoDB.Libmongocrypt/SecureRandomCallback.cs +51 -0
  42. data/ext/libmongocrypt/libmongocrypt/bindings/cs/MongoDB.Libmongocrypt/SigningRSAESPKCSCallback.cs +74 -0
  43. data/ext/libmongocrypt/libmongocrypt/bindings/cs/MongoDB.Libmongocrypt/Status.cs +94 -0
  44. data/ext/libmongocrypt/libmongocrypt/bindings/cs/MongoDB.Libmongocrypt/StatusSafeHandle.cs +60 -0
  45. data/ext/libmongocrypt/libmongocrypt/bindings/cs/MongoDB.Libmongocrypt/StyleCop.ruleset +11 -0
  46. data/ext/libmongocrypt/libmongocrypt/bindings/cs/MongoDB.Libmongocrypt/stylecop.json +8 -0
  47. data/ext/libmongocrypt/libmongocrypt/bindings/cs/MongoDB.Libmongocrypt.Example/MongoDB.Libmongocrypt.Example.csproj +23 -0
  48. data/ext/libmongocrypt/libmongocrypt/bindings/cs/MongoDB.Libmongocrypt.Example/Package.include.template.csproj +11 -0
  49. data/ext/libmongocrypt/libmongocrypt/bindings/cs/MongoDB.Libmongocrypt.Example/Program.cs +442 -0
  50. data/ext/libmongocrypt/libmongocrypt/bindings/cs/MongoDB.Libmongocrypt.Test/BasicTests.cs +748 -0
  51. data/ext/libmongocrypt/libmongocrypt/bindings/cs/MongoDB.Libmongocrypt.Test/BsonUtil.cs +82 -0
  52. data/ext/libmongocrypt/libmongocrypt/bindings/cs/MongoDB.Libmongocrypt.Test/CallbackUtils.cs +37 -0
  53. data/ext/libmongocrypt/libmongocrypt/bindings/cs/MongoDB.Libmongocrypt.Test/CipherCallbacksTests.cs +46 -0
  54. data/ext/libmongocrypt/libmongocrypt/bindings/cs/MongoDB.Libmongocrypt.Test/HashCallbackTests.cs +37 -0
  55. data/ext/libmongocrypt/libmongocrypt/bindings/cs/MongoDB.Libmongocrypt.Test/HmacShaCallbacksTests.cs +37 -0
  56. data/ext/libmongocrypt/libmongocrypt/bindings/cs/MongoDB.Libmongocrypt.Test/MongoDB.Libmongocrypt.Test.csproj +35 -0
  57. data/ext/libmongocrypt/libmongocrypt/bindings/cs/MongoDB.Libmongocrypt.Test/Package.include.template.csproj +23 -0
  58. data/ext/libmongocrypt/libmongocrypt/bindings/cs/MongoDB.Libmongocrypt.Test/SigningRSAESPKCSCallbackTests.cs +64 -0
  59. data/ext/libmongocrypt/libmongocrypt/bindings/cs/MongoDB.Libmongocrypt.Test/test/example/collection-info.json +37 -0
  60. data/ext/libmongocrypt/libmongocrypt/bindings/cs/MongoDB.Libmongocrypt.Test/test/example/command-reply.json +13 -0
  61. data/ext/libmongocrypt/libmongocrypt/bindings/cs/MongoDB.Libmongocrypt.Test/test/example/encrypted-command-reply.json +16 -0
  62. data/ext/libmongocrypt/libmongocrypt/bindings/cs/MongoDB.Libmongocrypt.Test/test/example/encrypted-command.json +11 -0
  63. data/ext/libmongocrypt/libmongocrypt/bindings/cs/MongoDB.Libmongocrypt.Test/test/example/encrypted-value.json +6 -0
  64. data/ext/libmongocrypt/libmongocrypt/bindings/cs/MongoDB.Libmongocrypt.Test/test/example/key-document.json +36 -0
  65. data/ext/libmongocrypt/libmongocrypt/bindings/cs/MongoDB.Libmongocrypt.Test/test/example/key-filter.json +19 -0
  66. data/ext/libmongocrypt/libmongocrypt/bindings/cs/MongoDB.Libmongocrypt.Test/test/example/list-collections-filter.json +3 -0
  67. data/ext/libmongocrypt/libmongocrypt/bindings/cs/MongoDB.Libmongocrypt.Test/test/example/mongocryptd-command.json +22 -0
  68. data/ext/libmongocrypt/libmongocrypt/bindings/cs/MongoDB.Libmongocrypt.Test/xunit.runner.json +6 -0
  69. data/ext/libmongocrypt/libmongocrypt/bindings/cs/MongoDB.Libmongocrypt.Test32/BasicTests.cs +54 -0
  70. data/ext/libmongocrypt/libmongocrypt/bindings/cs/MongoDB.Libmongocrypt.Test32/MongoDB.Libmongocrypt.Test32.csproj +42 -0
  71. data/ext/libmongocrypt/libmongocrypt/bindings/cs/MongoDB.Libmongocrypt.Test32/Package.include.template.csproj +23 -0
  72. data/ext/libmongocrypt/libmongocrypt/bindings/cs/README.md +66 -0
  73. data/ext/libmongocrypt/libmongocrypt/bindings/cs/Scripts/build.cake +219 -0
  74. data/ext/libmongocrypt/libmongocrypt/bindings/cs/Scripts/build.ps1 +275 -0
  75. data/ext/libmongocrypt/libmongocrypt/bindings/cs/Scripts/build.sh +77 -0
  76. data/ext/libmongocrypt/libmongocrypt/bindings/java/mongocrypt/README.md +36 -0
  77. data/ext/libmongocrypt/libmongocrypt/bindings/java/mongocrypt/build.gradle.kts +339 -0
  78. data/ext/libmongocrypt/libmongocrypt/bindings/java/mongocrypt/gradle/wrapper/gradle-wrapper.jar +0 -0
  79. data/ext/libmongocrypt/libmongocrypt/bindings/java/mongocrypt/gradle/wrapper/gradle-wrapper.properties +5 -0
  80. data/ext/libmongocrypt/libmongocrypt/bindings/java/mongocrypt/gradlew +188 -0
  81. data/ext/libmongocrypt/libmongocrypt/bindings/java/mongocrypt/gradlew.bat +100 -0
  82. data/ext/libmongocrypt/libmongocrypt/bindings/java/mongocrypt/src/main/java/com/mongodb/crypt/capi/BinaryHolder.java +45 -0
  83. data/ext/libmongocrypt/libmongocrypt/bindings/java/mongocrypt/src/main/java/com/mongodb/crypt/capi/CAPI.java +1130 -0
  84. data/ext/libmongocrypt/libmongocrypt/bindings/java/mongocrypt/src/main/java/com/mongodb/crypt/capi/CAPIHelper.java +96 -0
  85. data/ext/libmongocrypt/libmongocrypt/bindings/java/mongocrypt/src/main/java/com/mongodb/crypt/capi/CipherCallback.java +66 -0
  86. data/ext/libmongocrypt/libmongocrypt/bindings/java/mongocrypt/src/main/java/com/mongodb/crypt/capi/DisposableMemory.java +31 -0
  87. data/ext/libmongocrypt/libmongocrypt/bindings/java/mongocrypt/src/main/java/com/mongodb/crypt/capi/JULLogger.java +130 -0
  88. data/ext/libmongocrypt/libmongocrypt/bindings/java/mongocrypt/src/main/java/com/mongodb/crypt/capi/Logger.java +144 -0
  89. data/ext/libmongocrypt/libmongocrypt/bindings/java/mongocrypt/src/main/java/com/mongodb/crypt/capi/Loggers.java +50 -0
  90. data/ext/libmongocrypt/libmongocrypt/bindings/java/mongocrypt/src/main/java/com/mongodb/crypt/capi/MacCallback.java +60 -0
  91. data/ext/libmongocrypt/libmongocrypt/bindings/java/mongocrypt/src/main/java/com/mongodb/crypt/capi/MessageDigestCallback.java +55 -0
  92. data/ext/libmongocrypt/libmongocrypt/bindings/java/mongocrypt/src/main/java/com/mongodb/crypt/capi/MongoAwsKmsProviderOptions.java +104 -0
  93. data/ext/libmongocrypt/libmongocrypt/bindings/java/mongocrypt/src/main/java/com/mongodb/crypt/capi/MongoCrypt.java +100 -0
  94. data/ext/libmongocrypt/libmongocrypt/bindings/java/mongocrypt/src/main/java/com/mongodb/crypt/capi/MongoCryptContext.java +137 -0
  95. data/ext/libmongocrypt/libmongocrypt/bindings/java/mongocrypt/src/main/java/com/mongodb/crypt/capi/MongoCryptContextImpl.java +164 -0
  96. data/ext/libmongocrypt/libmongocrypt/bindings/java/mongocrypt/src/main/java/com/mongodb/crypt/capi/MongoCryptException.java +67 -0
  97. data/ext/libmongocrypt/libmongocrypt/bindings/java/mongocrypt/src/main/java/com/mongodb/crypt/capi/MongoCryptImpl.java +408 -0
  98. data/ext/libmongocrypt/libmongocrypt/bindings/java/mongocrypt/src/main/java/com/mongodb/crypt/capi/MongoCryptOptions.java +284 -0
  99. data/ext/libmongocrypt/libmongocrypt/bindings/java/mongocrypt/src/main/java/com/mongodb/crypt/capi/MongoCrypts.java +38 -0
  100. data/ext/libmongocrypt/libmongocrypt/bindings/java/mongocrypt/src/main/java/com/mongodb/crypt/capi/MongoDataKeyOptions.java +125 -0
  101. data/ext/libmongocrypt/libmongocrypt/bindings/java/mongocrypt/src/main/java/com/mongodb/crypt/capi/MongoExplicitEncryptOptions.java +225 -0
  102. data/ext/libmongocrypt/libmongocrypt/bindings/java/mongocrypt/src/main/java/com/mongodb/crypt/capi/MongoKeyDecryptor.java +76 -0
  103. data/ext/libmongocrypt/libmongocrypt/bindings/java/mongocrypt/src/main/java/com/mongodb/crypt/capi/MongoKeyDecryptorImpl.java +105 -0
  104. data/ext/libmongocrypt/libmongocrypt/bindings/java/mongocrypt/src/main/java/com/mongodb/crypt/capi/MongoLocalKmsProviderOptions.java +83 -0
  105. data/ext/libmongocrypt/libmongocrypt/bindings/java/mongocrypt/src/main/java/com/mongodb/crypt/capi/MongoRewrapManyDataKeyOptions.java +104 -0
  106. data/ext/libmongocrypt/libmongocrypt/bindings/java/mongocrypt/src/main/java/com/mongodb/crypt/capi/SLF4JLogger.java +110 -0
  107. data/ext/libmongocrypt/libmongocrypt/bindings/java/mongocrypt/src/main/java/com/mongodb/crypt/capi/SecureRandomCallback.java +51 -0
  108. data/ext/libmongocrypt/libmongocrypt/bindings/java/mongocrypt/src/main/java/com/mongodb/crypt/capi/SigningRSAESPKCSCallback.java +76 -0
  109. data/ext/libmongocrypt/libmongocrypt/bindings/java/mongocrypt/src/main/java/com/mongodb/crypt/capi/package-info.java +18 -0
  110. data/ext/libmongocrypt/libmongocrypt/bindings/java/mongocrypt/src/test/java/com/mongodb/crypt/capi/MongoCryptTest.java +345 -0
  111. data/ext/libmongocrypt/libmongocrypt/bindings/java/mongocrypt/src/test/resources/collection-info.json +37 -0
  112. data/ext/libmongocrypt/libmongocrypt/bindings/java/mongocrypt/src/test/resources/command-reply.json +13 -0
  113. data/ext/libmongocrypt/libmongocrypt/bindings/java/mongocrypt/src/test/resources/command.json +6 -0
  114. data/ext/libmongocrypt/libmongocrypt/bindings/java/mongocrypt/src/test/resources/encrypted-command-reply.json +16 -0
  115. data/ext/libmongocrypt/libmongocrypt/bindings/java/mongocrypt/src/test/resources/encrypted-command.json +11 -0
  116. data/ext/libmongocrypt/libmongocrypt/bindings/java/mongocrypt/src/test/resources/encrypted-value.json +6 -0
  117. data/ext/libmongocrypt/libmongocrypt/bindings/java/mongocrypt/src/test/resources/fle2-find-range-explicit/int32/encrypted-payload.json +26 -0
  118. data/ext/libmongocrypt/libmongocrypt/bindings/java/mongocrypt/src/test/resources/fle2-find-range-explicit/int32/key-document.json +0 -0
  119. data/ext/libmongocrypt/libmongocrypt/bindings/java/mongocrypt/src/test/resources/fle2-find-range-explicit/int32/key-filter.json +19 -0
  120. data/ext/libmongocrypt/libmongocrypt/bindings/java/mongocrypt/src/test/resources/fle2-find-range-explicit/int32/rangeopts.json +11 -0
  121. data/ext/libmongocrypt/libmongocrypt/bindings/java/mongocrypt/src/test/resources/fle2-find-range-explicit/int32/value-to-encrypt.json +20 -0
  122. data/ext/libmongocrypt/libmongocrypt/bindings/java/mongocrypt/src/test/resources/json-schema.json +15 -0
  123. data/ext/libmongocrypt/libmongocrypt/bindings/java/mongocrypt/src/test/resources/key-document.json +36 -0
  124. data/ext/libmongocrypt/libmongocrypt/bindings/java/mongocrypt/src/test/resources/key-filter-keyAltName.json +14 -0
  125. data/ext/libmongocrypt/libmongocrypt/bindings/java/mongocrypt/src/test/resources/key-filter.json +19 -0
  126. data/ext/libmongocrypt/libmongocrypt/bindings/java/mongocrypt/src/test/resources/keys/ABCDEFAB123498761234123456789012-local-document.json +30 -0
  127. data/ext/libmongocrypt/libmongocrypt/bindings/java/mongocrypt/src/test/resources/kms-reply.txt +6 -0
  128. data/ext/libmongocrypt/libmongocrypt/bindings/java/mongocrypt/src/test/resources/list-collections-filter.json +3 -0
  129. data/ext/libmongocrypt/libmongocrypt/bindings/java/mongocrypt/src/test/resources/mongocryptd-command.json +22 -0
  130. data/ext/libmongocrypt/libmongocrypt/bindings/java/mongocrypt/src/test/resources/mongocryptd-reply.json +18 -0
  131. data/ext/libmongocrypt/libmongocrypt/bindings/node/CHANGELOG.md +81 -0
  132. data/ext/libmongocrypt/libmongocrypt/bindings/node/LICENSE +201 -0
  133. data/ext/libmongocrypt/libmongocrypt/bindings/node/README.md +773 -0
  134. data/ext/libmongocrypt/libmongocrypt/bindings/node/binding.gyp +79 -0
  135. data/ext/libmongocrypt/libmongocrypt/bindings/node/etc/README.hbs +44 -0
  136. data/ext/libmongocrypt/libmongocrypt/bindings/node/etc/build-static.sh +39 -0
  137. data/ext/libmongocrypt/libmongocrypt/bindings/node/index.d.ts +515 -0
  138. data/ext/libmongocrypt/libmongocrypt/bindings/node/lib/autoEncrypter.js +420 -0
  139. data/ext/libmongocrypt/libmongocrypt/bindings/node/lib/buffer_pool.js +123 -0
  140. data/ext/libmongocrypt/libmongocrypt/bindings/node/lib/clientEncryption.js +699 -0
  141. data/ext/libmongocrypt/libmongocrypt/bindings/node/lib/common.js +100 -0
  142. data/ext/libmongocrypt/libmongocrypt/bindings/node/lib/credentialsProvider.js +33 -0
  143. data/ext/libmongocrypt/libmongocrypt/bindings/node/lib/cryptoCallbacks.js +87 -0
  144. data/ext/libmongocrypt/libmongocrypt/bindings/node/lib/index.js +42 -0
  145. data/ext/libmongocrypt/libmongocrypt/bindings/node/lib/mongocryptdManager.js +66 -0
  146. data/ext/libmongocrypt/libmongocrypt/bindings/node/lib/stateMachine.js +487 -0
  147. data/ext/libmongocrypt/libmongocrypt/bindings/node/package-lock.json +16051 -0
  148. data/ext/libmongocrypt/libmongocrypt/bindings/node/package.json +81 -0
  149. data/ext/libmongocrypt/libmongocrypt/bindings/node/src/mongocrypt.cc +929 -0
  150. data/ext/libmongocrypt/libmongocrypt/bindings/node/src/mongocrypt.h +114 -0
  151. data/ext/libmongocrypt/libmongocrypt/bindings/node/test/autoEncrypter.test.js +953 -0
  152. data/ext/libmongocrypt/libmongocrypt/bindings/node/test/buffer_pool.test.js +91 -0
  153. data/ext/libmongocrypt/libmongocrypt/bindings/node/test/clientEncryption.test.js +701 -0
  154. data/ext/libmongocrypt/libmongocrypt/bindings/node/test/credentialsProvider.test.js +163 -0
  155. data/ext/libmongocrypt/libmongocrypt/bindings/node/test/cryptoCallbacks.test.js +284 -0
  156. data/ext/libmongocrypt/libmongocrypt/bindings/node/test/data/README.md +5 -0
  157. data/ext/libmongocrypt/libmongocrypt/bindings/node/test/data/cmd.json +6 -0
  158. data/ext/libmongocrypt/libmongocrypt/bindings/node/test/data/collection-info.json +37 -0
  159. data/ext/libmongocrypt/libmongocrypt/bindings/node/test/data/encrypted-document-nested.json +8 -0
  160. data/ext/libmongocrypt/libmongocrypt/bindings/node/test/data/encrypted-document.json +11 -0
  161. data/ext/libmongocrypt/libmongocrypt/bindings/node/test/data/encryptedFields.json +30 -0
  162. data/ext/libmongocrypt/libmongocrypt/bindings/node/test/data/key-document.json +32 -0
  163. data/ext/libmongocrypt/libmongocrypt/bindings/node/test/data/key1-document.json +30 -0
  164. data/ext/libmongocrypt/libmongocrypt/bindings/node/test/data/kms-decrypt-reply.txt +6 -0
  165. data/ext/libmongocrypt/libmongocrypt/bindings/node/test/data/kms-encrypt-reply.txt +7 -0
  166. data/ext/libmongocrypt/libmongocrypt/bindings/node/test/data/mongocryptd-reply.json +18 -0
  167. data/ext/libmongocrypt/libmongocrypt/bindings/node/test/mongocryptdManager.test.js +48 -0
  168. data/ext/libmongocrypt/libmongocrypt/bindings/node/test/release.test.js +59 -0
  169. data/ext/libmongocrypt/libmongocrypt/bindings/node/test/requirements.helper.js +29 -0
  170. data/ext/libmongocrypt/libmongocrypt/bindings/node/test/stateMachine.test.js +331 -0
  171. data/ext/libmongocrypt/libmongocrypt/bindings/node/test/tools/mongodb_reporter.js +325 -0
  172. data/ext/libmongocrypt/libmongocrypt/bindings/python/CHANGELOG.rst +121 -0
  173. data/ext/libmongocrypt/libmongocrypt/bindings/python/LICENSE +201 -0
  174. data/ext/libmongocrypt/libmongocrypt/bindings/python/README.rst +187 -0
  175. data/ext/libmongocrypt/libmongocrypt/bindings/python/RELEASE.rst +107 -0
  176. data/ext/libmongocrypt/libmongocrypt/bindings/python/build-manylinux-wheel.sh +16 -0
  177. data/ext/libmongocrypt/libmongocrypt/bindings/python/pymongocrypt/__init__.py +16 -0
  178. data/ext/libmongocrypt/libmongocrypt/bindings/python/pymongocrypt/auto_encrypter.py +61 -0
  179. data/ext/libmongocrypt/libmongocrypt/bindings/python/pymongocrypt/binary.py +94 -0
  180. data/ext/libmongocrypt/libmongocrypt/bindings/python/pymongocrypt/binding.py +1561 -0
  181. data/ext/libmongocrypt/libmongocrypt/bindings/python/pymongocrypt/compat.py +61 -0
  182. data/ext/libmongocrypt/libmongocrypt/bindings/python/pymongocrypt/credentials.py +136 -0
  183. data/ext/libmongocrypt/libmongocrypt/bindings/python/pymongocrypt/crypto.py +162 -0
  184. data/ext/libmongocrypt/libmongocrypt/bindings/python/pymongocrypt/errors.py +39 -0
  185. data/ext/libmongocrypt/libmongocrypt/bindings/python/pymongocrypt/explicit_encrypter.py +248 -0
  186. data/ext/libmongocrypt/libmongocrypt/bindings/python/pymongocrypt/mongocrypt.py +808 -0
  187. data/ext/libmongocrypt/libmongocrypt/bindings/python/pymongocrypt/state_machine.py +156 -0
  188. data/ext/libmongocrypt/libmongocrypt/bindings/python/pymongocrypt/version.py +17 -0
  189. data/ext/libmongocrypt/libmongocrypt/bindings/python/release.sh +92 -0
  190. data/ext/libmongocrypt/libmongocrypt/bindings/python/setup.py +84 -0
  191. data/ext/libmongocrypt/libmongocrypt/bindings/python/strip_header.py +51 -0
  192. data/ext/libmongocrypt/libmongocrypt/bindings/python/test/__init__.py +37 -0
  193. data/ext/libmongocrypt/libmongocrypt/bindings/python/test/data/collection-info.json +39 -0
  194. data/ext/libmongocrypt/libmongocrypt/bindings/python/test/data/command-reply.json +13 -0
  195. data/ext/libmongocrypt/libmongocrypt/bindings/python/test/data/command.json +6 -0
  196. data/ext/libmongocrypt/libmongocrypt/bindings/python/test/data/compact/success/cmd.json +1 -0
  197. data/ext/libmongocrypt/libmongocrypt/bindings/python/test/data/compact/success/encrypted-field-config-map.json +47 -0
  198. data/ext/libmongocrypt/libmongocrypt/bindings/python/test/data/compact/success/encrypted-payload.json +23 -0
  199. data/ext/libmongocrypt/libmongocrypt/bindings/python/test/data/encrypted-command-reply.json +16 -0
  200. data/ext/libmongocrypt/libmongocrypt/bindings/python/test/data/encrypted-command.json +13 -0
  201. data/ext/libmongocrypt/libmongocrypt/bindings/python/test/data/encrypted-field-config-map.json +48 -0
  202. data/ext/libmongocrypt/libmongocrypt/bindings/python/test/data/encrypted-value.json +6 -0
  203. data/ext/libmongocrypt/libmongocrypt/bindings/python/test/data/fle2-find-range-explicit/int32/encrypted-payload.json +26 -0
  204. data/ext/libmongocrypt/libmongocrypt/bindings/python/test/data/fle2-find-range-explicit/int32/rangeopts.json +11 -0
  205. data/ext/libmongocrypt/libmongocrypt/bindings/python/test/data/fle2-find-range-explicit/int32/value-to-encrypt.json +20 -0
  206. data/ext/libmongocrypt/libmongocrypt/bindings/python/test/data/key-document-azure.json +33 -0
  207. data/ext/libmongocrypt/libmongocrypt/bindings/python/test/data/key-document-gcp.json +35 -0
  208. data/ext/libmongocrypt/libmongocrypt/bindings/python/test/data/key-document.json +33 -0
  209. data/ext/libmongocrypt/libmongocrypt/bindings/python/test/data/key-filter.json +19 -0
  210. data/ext/libmongocrypt/libmongocrypt/bindings/python/test/data/keys/12345678123498761234123456789012-local-document.json +30 -0
  211. data/ext/libmongocrypt/libmongocrypt/bindings/python/test/data/keys/12345678123498761234123456789013-local-document.json +30 -0
  212. data/ext/libmongocrypt/libmongocrypt/bindings/python/test/data/keys/ABCDEFAB123498761234123456789012-local-document.json +30 -0
  213. data/ext/libmongocrypt/libmongocrypt/bindings/python/test/data/kms-encrypt-reply.txt +7 -0
  214. data/ext/libmongocrypt/libmongocrypt/bindings/python/test/data/kms-reply-azure.txt +6 -0
  215. data/ext/libmongocrypt/libmongocrypt/bindings/python/test/data/kms-reply-gcp.txt +6 -0
  216. data/ext/libmongocrypt/libmongocrypt/bindings/python/test/data/kms-reply.txt +6 -0
  217. data/ext/libmongocrypt/libmongocrypt/bindings/python/test/data/list-collections-filter.json +3 -0
  218. data/ext/libmongocrypt/libmongocrypt/bindings/python/test/data/mongocryptd-command.json +26 -0
  219. data/ext/libmongocrypt/libmongocrypt/bindings/python/test/data/mongocryptd-reply.json +20 -0
  220. data/ext/libmongocrypt/libmongocrypt/bindings/python/test/data/schema-map.json +40 -0
  221. data/ext/libmongocrypt/libmongocrypt/bindings/python/test/test_binding.py +71 -0
  222. data/ext/libmongocrypt/libmongocrypt/bindings/python/test/test_crypto.py +49 -0
  223. data/ext/libmongocrypt/libmongocrypt/bindings/python/test/test_mongocrypt.py +825 -0
  224. data/ext/libmongocrypt/libmongocrypt/bindings/python/test-requirements.txt +12 -0
  225. data/ext/libmongocrypt/libmongocrypt/cmake/FetchMongoC.cmake +20 -0
  226. data/ext/libmongocrypt/libmongocrypt/cmake/ImportBSON.cmake +209 -0
  227. data/ext/libmongocrypt/libmongocrypt/cmake/ImportDFP.cmake +70 -0
  228. data/ext/libmongocrypt/libmongocrypt/cmake/IntelDFP.cmake +409 -0
  229. data/ext/libmongocrypt/libmongocrypt/cmake/LTO.cmake +57 -0
  230. data/ext/libmongocrypt/libmongocrypt/cmake/MongoC-Warnings.cmake +74 -0
  231. data/ext/libmongocrypt/libmongocrypt/cmake/libmongocrypt-hidden-symbols.map +8 -0
  232. data/ext/libmongocrypt/libmongocrypt/cmake/libmongocrypt-hidden-symbols.txt +5 -0
  233. data/ext/libmongocrypt/libmongocrypt/cmake/libmongocrypt-static.pc.in +9 -0
  234. data/ext/libmongocrypt/libmongocrypt/cmake/libmongocrypt.pc.in +10 -0
  235. data/ext/libmongocrypt/libmongocrypt/cmake/ltocheck-lib.c +6 -0
  236. data/ext/libmongocrypt/libmongocrypt/cmake/ltocheck-main.c +9 -0
  237. data/ext/libmongocrypt/libmongocrypt/cmake/mongocrypt-config.cmake +42 -0
  238. data/ext/libmongocrypt/libmongocrypt/debian/build_snapshot.sh +79 -0
  239. data/ext/libmongocrypt/libmongocrypt/debian/changelog +105 -0
  240. data/ext/libmongocrypt/libmongocrypt/debian/compat +1 -0
  241. data/ext/libmongocrypt/libmongocrypt/debian/control +41 -0
  242. data/ext/libmongocrypt/libmongocrypt/debian/copyright +129 -0
  243. data/ext/libmongocrypt/libmongocrypt/debian/gbp.conf +23 -0
  244. data/ext/libmongocrypt/libmongocrypt/debian/libmongocrypt-dev.dirs +2 -0
  245. data/ext/libmongocrypt/libmongocrypt/debian/libmongocrypt-dev.install +5 -0
  246. data/ext/libmongocrypt/libmongocrypt/debian/libmongocrypt0.dirs +1 -0
  247. data/ext/libmongocrypt/libmongocrypt/debian/libmongocrypt0.install +1 -0
  248. data/ext/libmongocrypt/libmongocrypt/debian/rules +46 -0
  249. data/ext/libmongocrypt/libmongocrypt/debian/source/format +1 -0
  250. data/ext/libmongocrypt/libmongocrypt/debian/source/lintian-overrides +3 -0
  251. data/ext/libmongocrypt/libmongocrypt/debian/source/options +1 -0
  252. data/ext/libmongocrypt/libmongocrypt/debian/watch +3 -0
  253. data/ext/libmongocrypt/libmongocrypt/doc/Doxygen +2474 -0
  254. data/ext/libmongocrypt/libmongocrypt/etc/calc_release_version.py +265 -0
  255. data/ext/libmongocrypt/libmongocrypt/etc/debian/control +33 -0
  256. data/ext/libmongocrypt/libmongocrypt/etc/debian/rules +41 -0
  257. data/ext/libmongocrypt/libmongocrypt/etc/debian/source/format +1 -0
  258. data/ext/libmongocrypt/libmongocrypt/etc/fle2_aead_generate_tests.py +41 -0
  259. data/ext/libmongocrypt/libmongocrypt/etc/fle2_crypto.py +105 -0
  260. data/ext/libmongocrypt/libmongocrypt/etc/fle2_crypto_selftest.py +52 -0
  261. data/ext/libmongocrypt/libmongocrypt/etc/fle2_generate_tests.py +34 -0
  262. data/ext/libmongocrypt/libmongocrypt/etc/generate-kek-tests.py +69 -0
  263. data/ext/libmongocrypt/libmongocrypt/etc/generate-test-data.py +141 -0
  264. data/ext/libmongocrypt/libmongocrypt/etc/list-compile-files.py +20 -0
  265. data/ext/libmongocrypt/libmongocrypt/etc/mongo-inteldfp-MONGOCRYPT-571.patch +25 -0
  266. data/ext/libmongocrypt/libmongocrypt/etc/mongo-inteldfp-s390x.patch +134 -0
  267. data/ext/libmongocrypt/libmongocrypt/etc/packager.py +854 -0
  268. data/ext/libmongocrypt/libmongocrypt/etc/print-marking.py +36 -0
  269. data/ext/libmongocrypt/libmongocrypt/etc/repo_config.yaml +257 -0
  270. data/ext/libmongocrypt/libmongocrypt/etc/requirements.txt +2 -0
  271. data/ext/libmongocrypt/libmongocrypt/etc/rewrite.py +16 -0
  272. data/ext/libmongocrypt/libmongocrypt/etc/rpm/libmongocrypt.spec +67 -0
  273. data/ext/libmongocrypt/libmongocrypt/etc/rpm/tweak.awk +19 -0
  274. data/ext/libmongocrypt/libmongocrypt/integrating.md +251 -0
  275. data/ext/libmongocrypt/libmongocrypt/kms-message/CMakeLists.txt +305 -0
  276. data/ext/libmongocrypt/libmongocrypt/kms-message/COPYING +177 -0
  277. data/ext/libmongocrypt/libmongocrypt/kms-message/README.md +41 -0
  278. data/ext/libmongocrypt/libmongocrypt/kms-message/THIRD_PARTY_NOTICES +42 -0
  279. data/ext/libmongocrypt/libmongocrypt/kms-message/aws-sig-v4-test-suite/LICENSE +202 -0
  280. data/ext/libmongocrypt/libmongocrypt/kms-message/aws-sig-v4-test-suite/NOTICE +2 -0
  281. data/ext/libmongocrypt/libmongocrypt/kms-message/aws-sig-v4-test-suite/get-header-key-duplicate/get-header-key-duplicate.authz +1 -0
  282. data/ext/libmongocrypt/libmongocrypt/kms-message/aws-sig-v4-test-suite/get-header-key-duplicate/get-header-key-duplicate.creq +9 -0
  283. data/ext/libmongocrypt/libmongocrypt/kms-message/aws-sig-v4-test-suite/get-header-key-duplicate/get-header-key-duplicate.req +6 -0
  284. data/ext/libmongocrypt/libmongocrypt/kms-message/aws-sig-v4-test-suite/get-header-key-duplicate/get-header-key-duplicate.sreq +7 -0
  285. data/ext/libmongocrypt/libmongocrypt/kms-message/aws-sig-v4-test-suite/get-header-key-duplicate/get-header-key-duplicate.sts +4 -0
  286. data/ext/libmongocrypt/libmongocrypt/kms-message/aws-sig-v4-test-suite/get-header-value-multiline/get-header-value-multiline.authz +1 -0
  287. data/ext/libmongocrypt/libmongocrypt/kms-message/aws-sig-v4-test-suite/get-header-value-multiline/get-header-value-multiline.creq +9 -0
  288. data/ext/libmongocrypt/libmongocrypt/kms-message/aws-sig-v4-test-suite/get-header-value-multiline/get-header-value-multiline.req +6 -0
  289. data/ext/libmongocrypt/libmongocrypt/kms-message/aws-sig-v4-test-suite/get-header-value-multiline/get-header-value-multiline.sreq +7 -0
  290. data/ext/libmongocrypt/libmongocrypt/kms-message/aws-sig-v4-test-suite/get-header-value-multiline/get-header-value-multiline.sts +4 -0
  291. data/ext/libmongocrypt/libmongocrypt/kms-message/aws-sig-v4-test-suite/get-header-value-order/get-header-value-order.authz +1 -0
  292. data/ext/libmongocrypt/libmongocrypt/kms-message/aws-sig-v4-test-suite/get-header-value-order/get-header-value-order.creq +9 -0
  293. data/ext/libmongocrypt/libmongocrypt/kms-message/aws-sig-v4-test-suite/get-header-value-order/get-header-value-order.req +7 -0
  294. data/ext/libmongocrypt/libmongocrypt/kms-message/aws-sig-v4-test-suite/get-header-value-order/get-header-value-order.sreq +8 -0
  295. data/ext/libmongocrypt/libmongocrypt/kms-message/aws-sig-v4-test-suite/get-header-value-order/get-header-value-order.sts +4 -0
  296. data/ext/libmongocrypt/libmongocrypt/kms-message/aws-sig-v4-test-suite/get-header-value-trim/get-header-value-trim.authz +1 -0
  297. data/ext/libmongocrypt/libmongocrypt/kms-message/aws-sig-v4-test-suite/get-header-value-trim/get-header-value-trim.creq +10 -0
  298. data/ext/libmongocrypt/libmongocrypt/kms-message/aws-sig-v4-test-suite/get-header-value-trim/get-header-value-trim.req +5 -0
  299. data/ext/libmongocrypt/libmongocrypt/kms-message/aws-sig-v4-test-suite/get-header-value-trim/get-header-value-trim.sreq +6 -0
  300. data/ext/libmongocrypt/libmongocrypt/kms-message/aws-sig-v4-test-suite/get-header-value-trim/get-header-value-trim.sts +4 -0
  301. data/ext/libmongocrypt/libmongocrypt/kms-message/aws-sig-v4-test-suite/get-unreserved/get-unreserved.authz +1 -0
  302. data/ext/libmongocrypt/libmongocrypt/kms-message/aws-sig-v4-test-suite/get-unreserved/get-unreserved.creq +8 -0
  303. data/ext/libmongocrypt/libmongocrypt/kms-message/aws-sig-v4-test-suite/get-unreserved/get-unreserved.req +3 -0
  304. data/ext/libmongocrypt/libmongocrypt/kms-message/aws-sig-v4-test-suite/get-unreserved/get-unreserved.sreq +4 -0
  305. data/ext/libmongocrypt/libmongocrypt/kms-message/aws-sig-v4-test-suite/get-unreserved/get-unreserved.sts +4 -0
  306. data/ext/libmongocrypt/libmongocrypt/kms-message/aws-sig-v4-test-suite/get-utf8/get-utf8.authz +1 -0
  307. data/ext/libmongocrypt/libmongocrypt/kms-message/aws-sig-v4-test-suite/get-utf8/get-utf8.creq +8 -0
  308. data/ext/libmongocrypt/libmongocrypt/kms-message/aws-sig-v4-test-suite/get-utf8/get-utf8.req +3 -0
  309. data/ext/libmongocrypt/libmongocrypt/kms-message/aws-sig-v4-test-suite/get-utf8/get-utf8.sreq +4 -0
  310. data/ext/libmongocrypt/libmongocrypt/kms-message/aws-sig-v4-test-suite/get-utf8/get-utf8.sts +4 -0
  311. data/ext/libmongocrypt/libmongocrypt/kms-message/aws-sig-v4-test-suite/get-vanilla/get-vanilla.authz +1 -0
  312. data/ext/libmongocrypt/libmongocrypt/kms-message/aws-sig-v4-test-suite/get-vanilla/get-vanilla.creq +8 -0
  313. data/ext/libmongocrypt/libmongocrypt/kms-message/aws-sig-v4-test-suite/get-vanilla/get-vanilla.req +3 -0
  314. data/ext/libmongocrypt/libmongocrypt/kms-message/aws-sig-v4-test-suite/get-vanilla/get-vanilla.sreq +4 -0
  315. data/ext/libmongocrypt/libmongocrypt/kms-message/aws-sig-v4-test-suite/get-vanilla/get-vanilla.sts +4 -0
  316. data/ext/libmongocrypt/libmongocrypt/kms-message/aws-sig-v4-test-suite/get-vanilla-empty-query-key/get-vanilla-empty-query-key.authz +1 -0
  317. data/ext/libmongocrypt/libmongocrypt/kms-message/aws-sig-v4-test-suite/get-vanilla-empty-query-key/get-vanilla-empty-query-key.creq +8 -0
  318. data/ext/libmongocrypt/libmongocrypt/kms-message/aws-sig-v4-test-suite/get-vanilla-empty-query-key/get-vanilla-empty-query-key.req +3 -0
  319. data/ext/libmongocrypt/libmongocrypt/kms-message/aws-sig-v4-test-suite/get-vanilla-empty-query-key/get-vanilla-empty-query-key.sreq +4 -0
  320. data/ext/libmongocrypt/libmongocrypt/kms-message/aws-sig-v4-test-suite/get-vanilla-empty-query-key/get-vanilla-empty-query-key.sts +4 -0
  321. data/ext/libmongocrypt/libmongocrypt/kms-message/aws-sig-v4-test-suite/get-vanilla-query/get-vanilla-query.authz +1 -0
  322. data/ext/libmongocrypt/libmongocrypt/kms-message/aws-sig-v4-test-suite/get-vanilla-query/get-vanilla-query.creq +8 -0
  323. data/ext/libmongocrypt/libmongocrypt/kms-message/aws-sig-v4-test-suite/get-vanilla-query/get-vanilla-query.req +3 -0
  324. data/ext/libmongocrypt/libmongocrypt/kms-message/aws-sig-v4-test-suite/get-vanilla-query/get-vanilla-query.sreq +4 -0
  325. data/ext/libmongocrypt/libmongocrypt/kms-message/aws-sig-v4-test-suite/get-vanilla-query/get-vanilla-query.sts +4 -0
  326. data/ext/libmongocrypt/libmongocrypt/kms-message/aws-sig-v4-test-suite/get-vanilla-query-order-key/get-vanilla-query-order-key.authz +1 -0
  327. data/ext/libmongocrypt/libmongocrypt/kms-message/aws-sig-v4-test-suite/get-vanilla-query-order-key/get-vanilla-query-order-key.creq +8 -0
  328. data/ext/libmongocrypt/libmongocrypt/kms-message/aws-sig-v4-test-suite/get-vanilla-query-order-key/get-vanilla-query-order-key.req +3 -0
  329. data/ext/libmongocrypt/libmongocrypt/kms-message/aws-sig-v4-test-suite/get-vanilla-query-order-key/get-vanilla-query-order-key.sreq +4 -0
  330. data/ext/libmongocrypt/libmongocrypt/kms-message/aws-sig-v4-test-suite/get-vanilla-query-order-key/get-vanilla-query-order-key.sts +4 -0
  331. data/ext/libmongocrypt/libmongocrypt/kms-message/aws-sig-v4-test-suite/get-vanilla-query-order-key-case/get-vanilla-query-order-key-case.authz +1 -0
  332. data/ext/libmongocrypt/libmongocrypt/kms-message/aws-sig-v4-test-suite/get-vanilla-query-order-key-case/get-vanilla-query-order-key-case.creq +8 -0
  333. data/ext/libmongocrypt/libmongocrypt/kms-message/aws-sig-v4-test-suite/get-vanilla-query-order-key-case/get-vanilla-query-order-key-case.req +3 -0
  334. data/ext/libmongocrypt/libmongocrypt/kms-message/aws-sig-v4-test-suite/get-vanilla-query-order-key-case/get-vanilla-query-order-key-case.sreq +4 -0
  335. data/ext/libmongocrypt/libmongocrypt/kms-message/aws-sig-v4-test-suite/get-vanilla-query-order-key-case/get-vanilla-query-order-key-case.sts +4 -0
  336. data/ext/libmongocrypt/libmongocrypt/kms-message/aws-sig-v4-test-suite/get-vanilla-query-order-value/get-vanilla-query-order-value.authz +1 -0
  337. data/ext/libmongocrypt/libmongocrypt/kms-message/aws-sig-v4-test-suite/get-vanilla-query-order-value/get-vanilla-query-order-value.creq +8 -0
  338. data/ext/libmongocrypt/libmongocrypt/kms-message/aws-sig-v4-test-suite/get-vanilla-query-order-value/get-vanilla-query-order-value.req +3 -0
  339. data/ext/libmongocrypt/libmongocrypt/kms-message/aws-sig-v4-test-suite/get-vanilla-query-order-value/get-vanilla-query-order-value.sreq +4 -0
  340. data/ext/libmongocrypt/libmongocrypt/kms-message/aws-sig-v4-test-suite/get-vanilla-query-order-value/get-vanilla-query-order-value.sts +4 -0
  341. data/ext/libmongocrypt/libmongocrypt/kms-message/aws-sig-v4-test-suite/get-vanilla-query-unreserved/get-vanilla-query-unreserved.authz +1 -0
  342. data/ext/libmongocrypt/libmongocrypt/kms-message/aws-sig-v4-test-suite/get-vanilla-query-unreserved/get-vanilla-query-unreserved.creq +8 -0
  343. data/ext/libmongocrypt/libmongocrypt/kms-message/aws-sig-v4-test-suite/get-vanilla-query-unreserved/get-vanilla-query-unreserved.req +3 -0
  344. data/ext/libmongocrypt/libmongocrypt/kms-message/aws-sig-v4-test-suite/get-vanilla-query-unreserved/get-vanilla-query-unreserved.sreq +4 -0
  345. data/ext/libmongocrypt/libmongocrypt/kms-message/aws-sig-v4-test-suite/get-vanilla-query-unreserved/get-vanilla-query-unreserved.sts +4 -0
  346. data/ext/libmongocrypt/libmongocrypt/kms-message/aws-sig-v4-test-suite/get-vanilla-utf8-query/get-vanilla-utf8-query.authz +1 -0
  347. data/ext/libmongocrypt/libmongocrypt/kms-message/aws-sig-v4-test-suite/get-vanilla-utf8-query/get-vanilla-utf8-query.creq +8 -0
  348. data/ext/libmongocrypt/libmongocrypt/kms-message/aws-sig-v4-test-suite/get-vanilla-utf8-query/get-vanilla-utf8-query.req +3 -0
  349. data/ext/libmongocrypt/libmongocrypt/kms-message/aws-sig-v4-test-suite/get-vanilla-utf8-query/get-vanilla-utf8-query.sreq +4 -0
  350. data/ext/libmongocrypt/libmongocrypt/kms-message/aws-sig-v4-test-suite/get-vanilla-utf8-query/get-vanilla-utf8-query.sts +4 -0
  351. data/ext/libmongocrypt/libmongocrypt/kms-message/aws-sig-v4-test-suite/normalize-path/get-relative/get-relative.authz +1 -0
  352. data/ext/libmongocrypt/libmongocrypt/kms-message/aws-sig-v4-test-suite/normalize-path/get-relative/get-relative.creq +8 -0
  353. data/ext/libmongocrypt/libmongocrypt/kms-message/aws-sig-v4-test-suite/normalize-path/get-relative/get-relative.req +3 -0
  354. data/ext/libmongocrypt/libmongocrypt/kms-message/aws-sig-v4-test-suite/normalize-path/get-relative/get-relative.sreq +4 -0
  355. data/ext/libmongocrypt/libmongocrypt/kms-message/aws-sig-v4-test-suite/normalize-path/get-relative/get-relative.sts +4 -0
  356. data/ext/libmongocrypt/libmongocrypt/kms-message/aws-sig-v4-test-suite/normalize-path/get-relative-relative/get-relative-relative.authz +1 -0
  357. data/ext/libmongocrypt/libmongocrypt/kms-message/aws-sig-v4-test-suite/normalize-path/get-relative-relative/get-relative-relative.creq +8 -0
  358. data/ext/libmongocrypt/libmongocrypt/kms-message/aws-sig-v4-test-suite/normalize-path/get-relative-relative/get-relative-relative.req +3 -0
  359. data/ext/libmongocrypt/libmongocrypt/kms-message/aws-sig-v4-test-suite/normalize-path/get-relative-relative/get-relative-relative.sreq +4 -0
  360. data/ext/libmongocrypt/libmongocrypt/kms-message/aws-sig-v4-test-suite/normalize-path/get-relative-relative/get-relative-relative.sts +4 -0
  361. data/ext/libmongocrypt/libmongocrypt/kms-message/aws-sig-v4-test-suite/normalize-path/get-slash/get-slash.authz +1 -0
  362. data/ext/libmongocrypt/libmongocrypt/kms-message/aws-sig-v4-test-suite/normalize-path/get-slash/get-slash.creq +8 -0
  363. data/ext/libmongocrypt/libmongocrypt/kms-message/aws-sig-v4-test-suite/normalize-path/get-slash/get-slash.req +3 -0
  364. data/ext/libmongocrypt/libmongocrypt/kms-message/aws-sig-v4-test-suite/normalize-path/get-slash/get-slash.sreq +4 -0
  365. data/ext/libmongocrypt/libmongocrypt/kms-message/aws-sig-v4-test-suite/normalize-path/get-slash/get-slash.sts +4 -0
  366. data/ext/libmongocrypt/libmongocrypt/kms-message/aws-sig-v4-test-suite/normalize-path/get-slash-dot-slash/get-slash-dot-slash.authz +1 -0
  367. data/ext/libmongocrypt/libmongocrypt/kms-message/aws-sig-v4-test-suite/normalize-path/get-slash-dot-slash/get-slash-dot-slash.creq +8 -0
  368. data/ext/libmongocrypt/libmongocrypt/kms-message/aws-sig-v4-test-suite/normalize-path/get-slash-dot-slash/get-slash-dot-slash.req +3 -0
  369. data/ext/libmongocrypt/libmongocrypt/kms-message/aws-sig-v4-test-suite/normalize-path/get-slash-dot-slash/get-slash-dot-slash.sreq +4 -0
  370. data/ext/libmongocrypt/libmongocrypt/kms-message/aws-sig-v4-test-suite/normalize-path/get-slash-dot-slash/get-slash-dot-slash.sts +4 -0
  371. data/ext/libmongocrypt/libmongocrypt/kms-message/aws-sig-v4-test-suite/normalize-path/get-slash-pointless-dot/get-slash-pointless-dot.authz +1 -0
  372. data/ext/libmongocrypt/libmongocrypt/kms-message/aws-sig-v4-test-suite/normalize-path/get-slash-pointless-dot/get-slash-pointless-dot.creq +8 -0
  373. data/ext/libmongocrypt/libmongocrypt/kms-message/aws-sig-v4-test-suite/normalize-path/get-slash-pointless-dot/get-slash-pointless-dot.req +3 -0
  374. data/ext/libmongocrypt/libmongocrypt/kms-message/aws-sig-v4-test-suite/normalize-path/get-slash-pointless-dot/get-slash-pointless-dot.sreq +4 -0
  375. data/ext/libmongocrypt/libmongocrypt/kms-message/aws-sig-v4-test-suite/normalize-path/get-slash-pointless-dot/get-slash-pointless-dot.sts +4 -0
  376. data/ext/libmongocrypt/libmongocrypt/kms-message/aws-sig-v4-test-suite/normalize-path/get-slashes/get-slashes.authz +1 -0
  377. data/ext/libmongocrypt/libmongocrypt/kms-message/aws-sig-v4-test-suite/normalize-path/get-slashes/get-slashes.creq +8 -0
  378. data/ext/libmongocrypt/libmongocrypt/kms-message/aws-sig-v4-test-suite/normalize-path/get-slashes/get-slashes.req +3 -0
  379. data/ext/libmongocrypt/libmongocrypt/kms-message/aws-sig-v4-test-suite/normalize-path/get-slashes/get-slashes.sreq +4 -0
  380. data/ext/libmongocrypt/libmongocrypt/kms-message/aws-sig-v4-test-suite/normalize-path/get-slashes/get-slashes.sts +4 -0
  381. data/ext/libmongocrypt/libmongocrypt/kms-message/aws-sig-v4-test-suite/normalize-path/get-space/get-space.authz +1 -0
  382. data/ext/libmongocrypt/libmongocrypt/kms-message/aws-sig-v4-test-suite/normalize-path/get-space/get-space.creq +8 -0
  383. data/ext/libmongocrypt/libmongocrypt/kms-message/aws-sig-v4-test-suite/normalize-path/get-space/get-space.req +3 -0
  384. data/ext/libmongocrypt/libmongocrypt/kms-message/aws-sig-v4-test-suite/normalize-path/get-space/get-space.sreq +4 -0
  385. data/ext/libmongocrypt/libmongocrypt/kms-message/aws-sig-v4-test-suite/normalize-path/get-space/get-space.sts +4 -0
  386. data/ext/libmongocrypt/libmongocrypt/kms-message/aws-sig-v4-test-suite/normalize-path/normalize-path.txt +3 -0
  387. data/ext/libmongocrypt/libmongocrypt/kms-message/aws-sig-v4-test-suite/post-header-key-case/post-header-key-case.authz +1 -0
  388. data/ext/libmongocrypt/libmongocrypt/kms-message/aws-sig-v4-test-suite/post-header-key-case/post-header-key-case.creq +8 -0
  389. data/ext/libmongocrypt/libmongocrypt/kms-message/aws-sig-v4-test-suite/post-header-key-case/post-header-key-case.req +3 -0
  390. data/ext/libmongocrypt/libmongocrypt/kms-message/aws-sig-v4-test-suite/post-header-key-case/post-header-key-case.sreq +4 -0
  391. data/ext/libmongocrypt/libmongocrypt/kms-message/aws-sig-v4-test-suite/post-header-key-case/post-header-key-case.sts +4 -0
  392. data/ext/libmongocrypt/libmongocrypt/kms-message/aws-sig-v4-test-suite/post-header-key-sort/post-header-key-sort.authz +1 -0
  393. data/ext/libmongocrypt/libmongocrypt/kms-message/aws-sig-v4-test-suite/post-header-key-sort/post-header-key-sort.creq +9 -0
  394. data/ext/libmongocrypt/libmongocrypt/kms-message/aws-sig-v4-test-suite/post-header-key-sort/post-header-key-sort.req +4 -0
  395. data/ext/libmongocrypt/libmongocrypt/kms-message/aws-sig-v4-test-suite/post-header-key-sort/post-header-key-sort.sreq +5 -0
  396. data/ext/libmongocrypt/libmongocrypt/kms-message/aws-sig-v4-test-suite/post-header-key-sort/post-header-key-sort.sts +4 -0
  397. data/ext/libmongocrypt/libmongocrypt/kms-message/aws-sig-v4-test-suite/post-header-value-case/post-header-value-case.authz +1 -0
  398. data/ext/libmongocrypt/libmongocrypt/kms-message/aws-sig-v4-test-suite/post-header-value-case/post-header-value-case.creq +9 -0
  399. data/ext/libmongocrypt/libmongocrypt/kms-message/aws-sig-v4-test-suite/post-header-value-case/post-header-value-case.req +4 -0
  400. data/ext/libmongocrypt/libmongocrypt/kms-message/aws-sig-v4-test-suite/post-header-value-case/post-header-value-case.sreq +5 -0
  401. data/ext/libmongocrypt/libmongocrypt/kms-message/aws-sig-v4-test-suite/post-header-value-case/post-header-value-case.sts +4 -0
  402. data/ext/libmongocrypt/libmongocrypt/kms-message/aws-sig-v4-test-suite/post-sts-token/post-sts-header-after/post-sts-header-after.authz +1 -0
  403. data/ext/libmongocrypt/libmongocrypt/kms-message/aws-sig-v4-test-suite/post-sts-token/post-sts-header-after/post-sts-header-after.creq +8 -0
  404. data/ext/libmongocrypt/libmongocrypt/kms-message/aws-sig-v4-test-suite/post-sts-token/post-sts-header-after/post-sts-header-after.req +3 -0
  405. data/ext/libmongocrypt/libmongocrypt/kms-message/aws-sig-v4-test-suite/post-sts-token/post-sts-header-after/post-sts-header-after.sreq +5 -0
  406. data/ext/libmongocrypt/libmongocrypt/kms-message/aws-sig-v4-test-suite/post-sts-token/post-sts-header-after/post-sts-header-after.sts +4 -0
  407. data/ext/libmongocrypt/libmongocrypt/kms-message/aws-sig-v4-test-suite/post-sts-token/post-sts-header-before/post-sts-header-before.authz +1 -0
  408. data/ext/libmongocrypt/libmongocrypt/kms-message/aws-sig-v4-test-suite/post-sts-token/post-sts-header-before/post-sts-header-before.creq +9 -0
  409. data/ext/libmongocrypt/libmongocrypt/kms-message/aws-sig-v4-test-suite/post-sts-token/post-sts-header-before/post-sts-header-before.req +4 -0
  410. data/ext/libmongocrypt/libmongocrypt/kms-message/aws-sig-v4-test-suite/post-sts-token/post-sts-header-before/post-sts-header-before.sreq +5 -0
  411. data/ext/libmongocrypt/libmongocrypt/kms-message/aws-sig-v4-test-suite/post-sts-token/post-sts-header-before/post-sts-header-before.sts +4 -0
  412. data/ext/libmongocrypt/libmongocrypt/kms-message/aws-sig-v4-test-suite/post-sts-token/readme.txt +15 -0
  413. data/ext/libmongocrypt/libmongocrypt/kms-message/aws-sig-v4-test-suite/post-vanilla/post-vanilla.authz +1 -0
  414. data/ext/libmongocrypt/libmongocrypt/kms-message/aws-sig-v4-test-suite/post-vanilla/post-vanilla.creq +8 -0
  415. data/ext/libmongocrypt/libmongocrypt/kms-message/aws-sig-v4-test-suite/post-vanilla/post-vanilla.req +3 -0
  416. data/ext/libmongocrypt/libmongocrypt/kms-message/aws-sig-v4-test-suite/post-vanilla/post-vanilla.sreq +4 -0
  417. data/ext/libmongocrypt/libmongocrypt/kms-message/aws-sig-v4-test-suite/post-vanilla/post-vanilla.sts +4 -0
  418. data/ext/libmongocrypt/libmongocrypt/kms-message/aws-sig-v4-test-suite/post-vanilla-empty-query-value/post-vanilla-empty-query-value.authz +1 -0
  419. data/ext/libmongocrypt/libmongocrypt/kms-message/aws-sig-v4-test-suite/post-vanilla-empty-query-value/post-vanilla-empty-query-value.creq +8 -0
  420. data/ext/libmongocrypt/libmongocrypt/kms-message/aws-sig-v4-test-suite/post-vanilla-empty-query-value/post-vanilla-empty-query-value.req +3 -0
  421. data/ext/libmongocrypt/libmongocrypt/kms-message/aws-sig-v4-test-suite/post-vanilla-empty-query-value/post-vanilla-empty-query-value.sreq +4 -0
  422. data/ext/libmongocrypt/libmongocrypt/kms-message/aws-sig-v4-test-suite/post-vanilla-empty-query-value/post-vanilla-empty-query-value.sts +4 -0
  423. data/ext/libmongocrypt/libmongocrypt/kms-message/aws-sig-v4-test-suite/post-vanilla-query/post-vanilla-query.authz +1 -0
  424. data/ext/libmongocrypt/libmongocrypt/kms-message/aws-sig-v4-test-suite/post-vanilla-query/post-vanilla-query.creq +8 -0
  425. data/ext/libmongocrypt/libmongocrypt/kms-message/aws-sig-v4-test-suite/post-vanilla-query/post-vanilla-query.req +3 -0
  426. data/ext/libmongocrypt/libmongocrypt/kms-message/aws-sig-v4-test-suite/post-vanilla-query/post-vanilla-query.sreq +4 -0
  427. data/ext/libmongocrypt/libmongocrypt/kms-message/aws-sig-v4-test-suite/post-vanilla-query/post-vanilla-query.sts +4 -0
  428. data/ext/libmongocrypt/libmongocrypt/kms-message/aws-sig-v4-test-suite/post-x-www-form-urlencoded/post-x-www-form-urlencoded.authz +1 -0
  429. data/ext/libmongocrypt/libmongocrypt/kms-message/aws-sig-v4-test-suite/post-x-www-form-urlencoded/post-x-www-form-urlencoded.creq +9 -0
  430. data/ext/libmongocrypt/libmongocrypt/kms-message/aws-sig-v4-test-suite/post-x-www-form-urlencoded/post-x-www-form-urlencoded.req +6 -0
  431. data/ext/libmongocrypt/libmongocrypt/kms-message/aws-sig-v4-test-suite/post-x-www-form-urlencoded/post-x-www-form-urlencoded.sreq +7 -0
  432. data/ext/libmongocrypt/libmongocrypt/kms-message/aws-sig-v4-test-suite/post-x-www-form-urlencoded/post-x-www-form-urlencoded.sts +4 -0
  433. data/ext/libmongocrypt/libmongocrypt/kms-message/aws-sig-v4-test-suite/post-x-www-form-urlencoded-parameters/post-x-www-form-urlencoded-parameters.authz +1 -0
  434. data/ext/libmongocrypt/libmongocrypt/kms-message/aws-sig-v4-test-suite/post-x-www-form-urlencoded-parameters/post-x-www-form-urlencoded-parameters.creq +9 -0
  435. data/ext/libmongocrypt/libmongocrypt/kms-message/aws-sig-v4-test-suite/post-x-www-form-urlencoded-parameters/post-x-www-form-urlencoded-parameters.req +6 -0
  436. data/ext/libmongocrypt/libmongocrypt/kms-message/aws-sig-v4-test-suite/post-x-www-form-urlencoded-parameters/post-x-www-form-urlencoded-parameters.sreq +7 -0
  437. data/ext/libmongocrypt/libmongocrypt/kms-message/aws-sig-v4-test-suite/post-x-www-form-urlencoded-parameters/post-x-www-form-urlencoded-parameters.sts +4 -0
  438. data/ext/libmongocrypt/libmongocrypt/kms-message/cmake/kms_message-config.cmake +1 -0
  439. data/ext/libmongocrypt/libmongocrypt/kms-message/cmake/libkms_message.pc.in +9 -0
  440. data/ext/libmongocrypt/libmongocrypt/kms-message/src/hexlify.c +67 -0
  441. data/ext/libmongocrypt/libmongocrypt/kms-message/src/hexlify.h +24 -0
  442. data/ext/libmongocrypt/libmongocrypt/kms-message/src/kms_azure_request.c +219 -0
  443. data/ext/libmongocrypt/libmongocrypt/kms-message/src/kms_b64.c +654 -0
  444. data/ext/libmongocrypt/libmongocrypt/kms-message/src/kms_caller_identity_request.c +52 -0
  445. data/ext/libmongocrypt/libmongocrypt/kms-message/src/kms_crypto.h +70 -0
  446. data/ext/libmongocrypt/libmongocrypt/kms-message/src/kms_crypto_apple.c +159 -0
  447. data/ext/libmongocrypt/libmongocrypt/kms-message/src/kms_crypto_libcrypto.c +142 -0
  448. data/ext/libmongocrypt/libmongocrypt/kms-message/src/kms_crypto_none.c +65 -0
  449. data/ext/libmongocrypt/libmongocrypt/kms-message/src/kms_crypto_windows.c +268 -0
  450. data/ext/libmongocrypt/libmongocrypt/kms-message/src/kms_decrypt_request.c +72 -0
  451. data/ext/libmongocrypt/libmongocrypt/kms-message/src/kms_encrypt_request.c +73 -0
  452. data/ext/libmongocrypt/libmongocrypt/kms-message/src/kms_endian_private.h +165 -0
  453. data/ext/libmongocrypt/libmongocrypt/kms-message/src/kms_gcp_request.c +286 -0
  454. data/ext/libmongocrypt/libmongocrypt/kms-message/src/kms_kmip_item_type_private.h +59 -0
  455. data/ext/libmongocrypt/libmongocrypt/kms-message/src/kms_kmip_reader_writer.c +502 -0
  456. data/ext/libmongocrypt/libmongocrypt/kms-message/src/kms_kmip_reader_writer_private.h +150 -0
  457. data/ext/libmongocrypt/libmongocrypt/kms-message/src/kms_kmip_request.c +256 -0
  458. data/ext/libmongocrypt/libmongocrypt/kms-message/src/kms_kmip_response.c +323 -0
  459. data/ext/libmongocrypt/libmongocrypt/kms-message/src/kms_kmip_response_parser.c +148 -0
  460. data/ext/libmongocrypt/libmongocrypt/kms-message/src/kms_kmip_response_parser_private.h +55 -0
  461. data/ext/libmongocrypt/libmongocrypt/kms-message/src/kms_kmip_result_reason_private.h +77 -0
  462. data/ext/libmongocrypt/libmongocrypt/kms-message/src/kms_kmip_result_status_private.h +54 -0
  463. data/ext/libmongocrypt/libmongocrypt/kms-message/src/kms_kmip_tag_type_private.h +343 -0
  464. data/ext/libmongocrypt/libmongocrypt/kms-message/src/kms_kv_list.c +149 -0
  465. data/ext/libmongocrypt/libmongocrypt/kms-message/src/kms_kv_list.h +56 -0
  466. data/ext/libmongocrypt/libmongocrypt/kms-message/src/kms_message/kms_azure_request.h +110 -0
  467. data/ext/libmongocrypt/libmongocrypt/kms-message/src/kms_message/kms_b64.h +70 -0
  468. data/ext/libmongocrypt/libmongocrypt/kms-message/src/kms_message/kms_caller_identity_request.h +36 -0
  469. data/ext/libmongocrypt/libmongocrypt/kms-message/src/kms_message/kms_decrypt_request.h +37 -0
  470. data/ext/libmongocrypt/libmongocrypt/kms-message/src/kms_message/kms_encrypt_request.h +39 -0
  471. data/ext/libmongocrypt/libmongocrypt/kms-message/src/kms_message/kms_gcp_request.h +124 -0
  472. data/ext/libmongocrypt/libmongocrypt/kms-message/src/kms_message/kms_kmip_request.h +58 -0
  473. data/ext/libmongocrypt/libmongocrypt/kms-message/src/kms_message/kms_kmip_response.h +40 -0
  474. data/ext/libmongocrypt/libmongocrypt/kms-message/src/kms_message/kms_kmip_response_parser.h +26 -0
  475. data/ext/libmongocrypt/libmongocrypt/kms-message/src/kms_message/kms_message.h +34 -0
  476. data/ext/libmongocrypt/libmongocrypt/kms-message/src/kms_message/kms_message_defines.h +72 -0
  477. data/ext/libmongocrypt/libmongocrypt/kms-message/src/kms_message/kms_request.h +103 -0
  478. data/ext/libmongocrypt/libmongocrypt/kms-message/src/kms_message/kms_request_opt.h +80 -0
  479. data/ext/libmongocrypt/libmongocrypt/kms-message/src/kms_message/kms_response.h +43 -0
  480. data/ext/libmongocrypt/libmongocrypt/kms-message/src/kms_message/kms_response_parser.h +64 -0
  481. data/ext/libmongocrypt/libmongocrypt/kms-message/src/kms_message.c +47 -0
  482. data/ext/libmongocrypt/libmongocrypt/kms-message/src/kms_message_private.h +142 -0
  483. data/ext/libmongocrypt/libmongocrypt/kms-message/src/kms_port.c +33 -0
  484. data/ext/libmongocrypt/libmongocrypt/kms-message/src/kms_port.h +34 -0
  485. data/ext/libmongocrypt/libmongocrypt/kms-message/src/kms_request.c +925 -0
  486. data/ext/libmongocrypt/libmongocrypt/kms-message/src/kms_request_opt.c +88 -0
  487. data/ext/libmongocrypt/libmongocrypt/kms-message/src/kms_request_opt_private.h +32 -0
  488. data/ext/libmongocrypt/libmongocrypt/kms-message/src/kms_request_str.c +520 -0
  489. data/ext/libmongocrypt/libmongocrypt/kms-message/src/kms_request_str.h +89 -0
  490. data/ext/libmongocrypt/libmongocrypt/kms-message/src/kms_response.c +54 -0
  491. data/ext/libmongocrypt/libmongocrypt/kms-message/src/kms_response_parser.c +408 -0
  492. data/ext/libmongocrypt/libmongocrypt/kms-message/src/sort.c +74 -0
  493. data/ext/libmongocrypt/libmongocrypt/kms-message/src/sort.h +21 -0
  494. data/ext/libmongocrypt/libmongocrypt/kms-message/test/connection_close/connection_close.sreq +5 -0
  495. data/ext/libmongocrypt/libmongocrypt/kms-message/test/content_length/content_length.sreq +7 -0
  496. data/ext/libmongocrypt/libmongocrypt/kms-message/test/decrypt/decrypt.creq +11 -0
  497. data/ext/libmongocrypt/libmongocrypt/kms-message/test/decrypt/decrypt.sreq +9 -0
  498. data/ext/libmongocrypt/libmongocrypt/kms-message/test/encrypt/encrypt.creq +11 -0
  499. data/ext/libmongocrypt/libmongocrypt/kms-message/test/encrypt/encrypt.sreq +9 -0
  500. data/ext/libmongocrypt/libmongocrypt/kms-message/test/example-chunked-response.bin +20 -0
  501. data/ext/libmongocrypt/libmongocrypt/kms-message/test/example-multi-chunked-response.bin +22 -0
  502. data/ext/libmongocrypt/libmongocrypt/kms-message/test/example-response.bin +6 -0
  503. data/ext/libmongocrypt/libmongocrypt/kms-message/test/host/host.sreq +4 -0
  504. data/ext/libmongocrypt/libmongocrypt/kms-message/test/multibyte/multibyte.creq +10 -0
  505. data/ext/libmongocrypt/libmongocrypt/kms-message/test/multibyte/multibyte.sreq +8 -0
  506. data/ext/libmongocrypt/libmongocrypt/kms-message/test/test_kmip_reader_writer.c +485 -0
  507. data/ext/libmongocrypt/libmongocrypt/kms-message/test/test_kms_assert.h +147 -0
  508. data/ext/libmongocrypt/libmongocrypt/kms-message/test/test_kms_azure_online.c +260 -0
  509. data/ext/libmongocrypt/libmongocrypt/kms-message/test/test_kms_gcp_online.c +250 -0
  510. data/ext/libmongocrypt/libmongocrypt/kms-message/test/test_kms_kmip_request.c +223 -0
  511. data/ext/libmongocrypt/libmongocrypt/kms-message/test/test_kms_kmip_response.c +214 -0
  512. data/ext/libmongocrypt/libmongocrypt/kms-message/test/test_kms_kmip_response_parser.c +197 -0
  513. data/ext/libmongocrypt/libmongocrypt/kms-message/test/test_kms_online_util.c +120 -0
  514. data/ext/libmongocrypt/libmongocrypt/kms-message/test/test_kms_online_util.h +35 -0
  515. data/ext/libmongocrypt/libmongocrypt/kms-message/test/test_kms_request.c +1302 -0
  516. data/ext/libmongocrypt/libmongocrypt/kms-message/test/test_kms_util.c +92 -0
  517. data/ext/libmongocrypt/libmongocrypt/kms-message/test/test_kms_util.h +45 -0
  518. data/ext/libmongocrypt/libmongocrypt/kms-message/test/windows/dirent.h +1224 -0
  519. data/ext/libmongocrypt/libmongocrypt/src/crypto/cng.c +640 -0
  520. data/ext/libmongocrypt/libmongocrypt/src/crypto/commoncrypto.c +326 -0
  521. data/ext/libmongocrypt/libmongocrypt/src/crypto/libcrypto.c +341 -0
  522. data/ext/libmongocrypt/libmongocrypt/src/crypto/none.c +97 -0
  523. data/ext/libmongocrypt/libmongocrypt/src/csfle-markup.cpp +237 -0
  524. data/ext/libmongocrypt/libmongocrypt/src/mc-array-private.h +54 -0
  525. data/ext/libmongocrypt/libmongocrypt/src/mc-array.c +102 -0
  526. data/ext/libmongocrypt/libmongocrypt/src/mc-check-conversions-private.h +36 -0
  527. data/ext/libmongocrypt/libmongocrypt/src/mc-dec128.h +743 -0
  528. data/ext/libmongocrypt/libmongocrypt/src/mc-dec128.test.cpp +86 -0
  529. data/ext/libmongocrypt/libmongocrypt/src/mc-efc-private.h +48 -0
  530. data/ext/libmongocrypt/libmongocrypt/src/mc-efc.c +127 -0
  531. data/ext/libmongocrypt/libmongocrypt/src/mc-fle-blob-subtype-private.h +40 -0
  532. data/ext/libmongocrypt/libmongocrypt/src/mc-fle2-encryption-placeholder-private.h +152 -0
  533. data/ext/libmongocrypt/libmongocrypt/src/mc-fle2-encryption-placeholder.c +487 -0
  534. data/ext/libmongocrypt/libmongocrypt/src/mc-fle2-find-equality-payload-private.h +47 -0
  535. data/ext/libmongocrypt/libmongocrypt/src/mc-fle2-find-equality-payload.c +156 -0
  536. data/ext/libmongocrypt/libmongocrypt/src/mc-fle2-find-range-payload-private.h +95 -0
  537. data/ext/libmongocrypt/libmongocrypt/src/mc-fle2-find-range-payload.c +158 -0
  538. data/ext/libmongocrypt/libmongocrypt/src/mc-fle2-insert-update-payload-private.h +124 -0
  539. data/ext/libmongocrypt/libmongocrypt/src/mc-fle2-insert-update-payload.c +316 -0
  540. data/ext/libmongocrypt/libmongocrypt/src/mc-fle2-payload-iev-private.h +179 -0
  541. data/ext/libmongocrypt/libmongocrypt/src/mc-fle2-payload-iev.c +385 -0
  542. data/ext/libmongocrypt/libmongocrypt/src/mc-fle2-payload-uev-private.h +93 -0
  543. data/ext/libmongocrypt/libmongocrypt/src/mc-fle2-payload-uev.c +269 -0
  544. data/ext/libmongocrypt/libmongocrypt/src/mc-fle2-range-operator-private.h +29 -0
  545. data/ext/libmongocrypt/libmongocrypt/src/mc-fle2-rfds-private.h +91 -0
  546. data/ext/libmongocrypt/libmongocrypt/src/mc-fle2-rfds.c +658 -0
  547. data/ext/libmongocrypt/libmongocrypt/src/mc-optional-private.h +124 -0
  548. data/ext/libmongocrypt/libmongocrypt/src/mc-range-edge-generation-private.h +161 -0
  549. data/ext/libmongocrypt/libmongocrypt/src/mc-range-edge-generation.c +242 -0
  550. data/ext/libmongocrypt/libmongocrypt/src/mc-range-encoding-private.h +128 -0
  551. data/ext/libmongocrypt/libmongocrypt/src/mc-range-encoding.c +620 -0
  552. data/ext/libmongocrypt/libmongocrypt/src/mc-range-mincover-generator.template.h +308 -0
  553. data/ext/libmongocrypt/libmongocrypt/src/mc-range-mincover-private.h +112 -0
  554. data/ext/libmongocrypt/libmongocrypt/src/mc-range-mincover.c +341 -0
  555. data/ext/libmongocrypt/libmongocrypt/src/mc-rangeopts-private.h +99 -0
  556. data/ext/libmongocrypt/libmongocrypt/src/mc-rangeopts.c +382 -0
  557. data/ext/libmongocrypt/libmongocrypt/src/mc-reader-private.h +130 -0
  558. data/ext/libmongocrypt/libmongocrypt/src/mc-reader.c +235 -0
  559. data/ext/libmongocrypt/libmongocrypt/src/mc-tokens-private.h +118 -0
  560. data/ext/libmongocrypt/libmongocrypt/src/mc-tokens.c +151 -0
  561. data/ext/libmongocrypt/libmongocrypt/src/mlib/check.hpp +89 -0
  562. data/ext/libmongocrypt/libmongocrypt/src/mlib/endian.h +42 -0
  563. data/ext/libmongocrypt/libmongocrypt/src/mlib/error.h +59 -0
  564. data/ext/libmongocrypt/libmongocrypt/src/mlib/int128.h +685 -0
  565. data/ext/libmongocrypt/libmongocrypt/src/mlib/int128.test.c +3 -0
  566. data/ext/libmongocrypt/libmongocrypt/src/mlib/int128.test.cpp +407 -0
  567. data/ext/libmongocrypt/libmongocrypt/src/mlib/macros.h +53 -0
  568. data/ext/libmongocrypt/libmongocrypt/src/mlib/path.h +381 -0
  569. data/ext/libmongocrypt/libmongocrypt/src/mlib/path.test.c +93 -0
  570. data/ext/libmongocrypt/libmongocrypt/src/mlib/str.h +1028 -0
  571. data/ext/libmongocrypt/libmongocrypt/src/mlib/str.test.c +137 -0
  572. data/ext/libmongocrypt/libmongocrypt/src/mlib/thread.h +88 -0
  573. data/ext/libmongocrypt/libmongocrypt/src/mlib/user-check.h +4 -0
  574. data/ext/libmongocrypt/libmongocrypt/src/mlib/windows-lean.h +19 -0
  575. data/ext/libmongocrypt/libmongocrypt/src/mongo_crypt-v1.h +320 -0
  576. data/ext/libmongocrypt/libmongocrypt/src/mongocrypt-binary-private.h +34 -0
  577. data/ext/libmongocrypt/libmongocrypt/src/mongocrypt-binary.c +87 -0
  578. data/ext/libmongocrypt/libmongocrypt/src/mongocrypt-buffer-private.h +236 -0
  579. data/ext/libmongocrypt/libmongocrypt/src/mongocrypt-buffer.c +691 -0
  580. data/ext/libmongocrypt/libmongocrypt/src/mongocrypt-cache-collinfo-private.h +24 -0
  581. data/ext/libmongocrypt/libmongocrypt/src/mongocrypt-cache-collinfo.c +82 -0
  582. data/ext/libmongocrypt/libmongocrypt/src/mongocrypt-cache-key-private.h +55 -0
  583. data/ext/libmongocrypt/libmongocrypt/src/mongocrypt-cache-key.c +190 -0
  584. data/ext/libmongocrypt/libmongocrypt/src/mongocrypt-cache-oauth-private.h +46 -0
  585. data/ext/libmongocrypt/libmongocrypt/src/mongocrypt-cache-oauth.c +126 -0
  586. data/ext/libmongocrypt/libmongocrypt/src/mongocrypt-cache-private.h +96 -0
  587. data/ext/libmongocrypt/libmongocrypt/src/mongocrypt-cache.c +341 -0
  588. data/ext/libmongocrypt/libmongocrypt/src/mongocrypt-ciphertext-private.h +64 -0
  589. data/ext/libmongocrypt/libmongocrypt/src/mongocrypt-ciphertext.c +212 -0
  590. data/ext/libmongocrypt/libmongocrypt/src/mongocrypt-compat.h +44 -0
  591. data/ext/libmongocrypt/libmongocrypt/src/mongocrypt-config.h.in +87 -0
  592. data/ext/libmongocrypt/libmongocrypt/src/mongocrypt-crypto-private.h +303 -0
  593. data/ext/libmongocrypt/libmongocrypt/src/mongocrypt-crypto.c +1850 -0
  594. data/ext/libmongocrypt/libmongocrypt/src/mongocrypt-ctx-datakey.c +534 -0
  595. data/ext/libmongocrypt/libmongocrypt/src/mongocrypt-ctx-decrypt.c +773 -0
  596. data/ext/libmongocrypt/libmongocrypt/src/mongocrypt-ctx-encrypt.c +3005 -0
  597. data/ext/libmongocrypt/libmongocrypt/src/mongocrypt-ctx-private.h +269 -0
  598. data/ext/libmongocrypt/libmongocrypt/src/mongocrypt-ctx-rewrap-many-datakey.c +415 -0
  599. data/ext/libmongocrypt/libmongocrypt/src/mongocrypt-ctx.c +1283 -0
  600. data/ext/libmongocrypt/libmongocrypt/src/mongocrypt-dll-private.h +97 -0
  601. data/ext/libmongocrypt/libmongocrypt/src/mongocrypt-endian-private.h +168 -0
  602. data/ext/libmongocrypt/libmongocrypt/src/mongocrypt-endpoint-private.h +64 -0
  603. data/ext/libmongocrypt/libmongocrypt/src/mongocrypt-endpoint.c +212 -0
  604. data/ext/libmongocrypt/libmongocrypt/src/mongocrypt-kek-private.h +109 -0
  605. data/ext/libmongocrypt/libmongocrypt/src/mongocrypt-kek.c +325 -0
  606. data/ext/libmongocrypt/libmongocrypt/src/mongocrypt-key-broker-private.h +209 -0
  607. data/ext/libmongocrypt/libmongocrypt/src/mongocrypt-key-broker.c +1189 -0
  608. data/ext/libmongocrypt/libmongocrypt/src/mongocrypt-key-private.h +87 -0
  609. data/ext/libmongocrypt/libmongocrypt/src/mongocrypt-key.c +473 -0
  610. data/ext/libmongocrypt/libmongocrypt/src/mongocrypt-kms-ctx-private.h +154 -0
  611. data/ext/libmongocrypt/libmongocrypt/src/mongocrypt-kms-ctx.c +1785 -0
  612. data/ext/libmongocrypt/libmongocrypt/src/mongocrypt-log-private.h +111 -0
  613. data/ext/libmongocrypt/libmongocrypt/src/mongocrypt-log.c +123 -0
  614. data/ext/libmongocrypt/libmongocrypt/src/mongocrypt-marking-private.h +74 -0
  615. data/ext/libmongocrypt/libmongocrypt/src/mongocrypt-marking.c +1624 -0
  616. data/ext/libmongocrypt/libmongocrypt/src/mongocrypt-mutex-private.h +46 -0
  617. data/ext/libmongocrypt/libmongocrypt/src/mongocrypt-opts-private.h +231 -0
  618. data/ext/libmongocrypt/libmongocrypt/src/mongocrypt-opts.c +493 -0
  619. data/ext/libmongocrypt/libmongocrypt/src/mongocrypt-private.h +197 -0
  620. data/ext/libmongocrypt/libmongocrypt/src/mongocrypt-status-private.h +39 -0
  621. data/ext/libmongocrypt/libmongocrypt/src/mongocrypt-status.c +169 -0
  622. data/ext/libmongocrypt/libmongocrypt/src/mongocrypt-traverse-util-private.h +59 -0
  623. data/ext/libmongocrypt/libmongocrypt/src/mongocrypt-traverse-util.c +234 -0
  624. data/ext/libmongocrypt/libmongocrypt/src/mongocrypt-util-private.h +84 -0
  625. data/ext/libmongocrypt/libmongocrypt/src/mongocrypt-util.c +203 -0
  626. data/ext/libmongocrypt/libmongocrypt/src/mongocrypt.c +1605 -0
  627. data/ext/libmongocrypt/libmongocrypt/src/mongocrypt.h +1610 -0
  628. data/ext/libmongocrypt/libmongocrypt/src/os_posix/os_dll.c +132 -0
  629. data/ext/libmongocrypt/libmongocrypt/src/os_posix/os_mutex.c +57 -0
  630. data/ext/libmongocrypt/libmongocrypt/src/os_win/os_dll.c +92 -0
  631. data/ext/libmongocrypt/libmongocrypt/src/os_win/os_mutex.c +45 -0
  632. data/ext/libmongocrypt/libmongocrypt/test/crypt_shared-stub.cpp +155 -0
  633. data/ext/libmongocrypt/libmongocrypt/test/data/NIST-CAVP.cstructs +1350 -0
  634. data/ext/libmongocrypt/libmongocrypt/test/data/aes-ctr.cstructs +359 -0
  635. data/ext/libmongocrypt/libmongocrypt/test/data/cache-tests.json +197 -0
  636. data/ext/libmongocrypt/libmongocrypt/test/data/collection-info-no-schema.json +19 -0
  637. data/ext/libmongocrypt/libmongocrypt/test/data/collection-info-no-validator.json +13 -0
  638. data/ext/libmongocrypt/libmongocrypt/test/data/collection-info-view.json +11 -0
  639. data/ext/libmongocrypt/libmongocrypt/test/data/collinfo-siblings.json +40 -0
  640. data/ext/libmongocrypt/libmongocrypt/test/data/compact/missing-key-id/collinfo.json +21 -0
  641. data/ext/libmongocrypt/libmongocrypt/test/data/compact/no-fields/collinfo.json +10 -0
  642. data/ext/libmongocrypt/libmongocrypt/test/data/compact/no-fields/encrypted-payload.json +4 -0
  643. data/ext/libmongocrypt/libmongocrypt/test/data/compact/success/cmd.json +1 -0
  644. data/ext/libmongocrypt/libmongocrypt/test/data/compact/success/collinfo.json +49 -0
  645. data/ext/libmongocrypt/libmongocrypt/test/data/compact/success/encrypted-field-config-map.json +47 -0
  646. data/ext/libmongocrypt/libmongocrypt/test/data/compact/success/encrypted-payload.json +23 -0
  647. data/ext/libmongocrypt/libmongocrypt/test/data/compact/success/mongocryptd-reply.json +72 -0
  648. data/ext/libmongocrypt/libmongocrypt/test/data/dollardb/omitted/cmd-to-mongocryptd.json +34 -0
  649. data/ext/libmongocrypt/libmongocrypt/test/data/dollardb/omitted/cmd.json +6 -0
  650. data/ext/libmongocrypt/libmongocrypt/test/data/dollardb/omitted/collinfo.json +27 -0
  651. data/ext/libmongocrypt/libmongocrypt/test/data/dollardb/omitted/encrypted-payload.json +39 -0
  652. data/ext/libmongocrypt/libmongocrypt/test/data/dollardb/omitted/mongocryptd-reply.json +45 -0
  653. data/ext/libmongocrypt/libmongocrypt/test/data/dollardb/preserved/cmd-to-mongocryptd.json +34 -0
  654. data/ext/libmongocrypt/libmongocrypt/test/data/dollardb/preserved/cmd.json +7 -0
  655. data/ext/libmongocrypt/libmongocrypt/test/data/dollardb/preserved/collinfo.json +27 -0
  656. data/ext/libmongocrypt/libmongocrypt/test/data/dollardb/preserved/encrypted-payload.json +40 -0
  657. data/ext/libmongocrypt/libmongocrypt/test/data/dollardb/preserved/mongocryptd-reply.json +45 -0
  658. data/ext/libmongocrypt/libmongocrypt/test/data/dollardb/preserved_empty/cmd-to-mongocryptd.json +17 -0
  659. data/ext/libmongocrypt/libmongocrypt/test/data/dollardb/preserved_empty/cmd.json +7 -0
  660. data/ext/libmongocrypt/libmongocrypt/test/data/dollardb/preserved_empty/collinfo.json +10 -0
  661. data/ext/libmongocrypt/libmongocrypt/test/data/dollardb/preserved_empty/encrypted-payload.json +7 -0
  662. data/ext/libmongocrypt/libmongocrypt/test/data/dollardb/preserved_empty/mongocryptd-reply.json +23 -0
  663. data/ext/libmongocrypt/libmongocrypt/test/data/dollardb/preserved_fle1/cmd-to-mongocryptd.json +26 -0
  664. data/ext/libmongocrypt/libmongocrypt/test/data/dollardb/preserved_fle1/cmd.json +7 -0
  665. data/ext/libmongocrypt/libmongocrypt/test/data/dollardb/preserved_fle1/collinfo.json +25 -0
  666. data/ext/libmongocrypt/libmongocrypt/test/data/dollardb/preserved_fle1/encrypted-payload.json +14 -0
  667. data/ext/libmongocrypt/libmongocrypt/test/data/dollardb/preserved_fle1/mongocryptd-reply.json +15 -0
  668. data/ext/libmongocrypt/libmongocrypt/test/data/efc/efc-extraField.json +24 -0
  669. data/ext/libmongocrypt/libmongocrypt/test/data/efc/efc-missingKeyId.json +17 -0
  670. data/ext/libmongocrypt/libmongocrypt/test/data/efc/efc-oneField.json +23 -0
  671. data/ext/libmongocrypt/libmongocrypt/test/data/efc/efc-twoFields.json +39 -0
  672. data/ext/libmongocrypt/libmongocrypt/test/data/encrypted-cmd.json +11 -0
  673. data/ext/libmongocrypt/libmongocrypt/test/data/encrypted-field-config-map.json +48 -0
  674. data/ext/libmongocrypt/libmongocrypt/test/data/explicit-decryption-input.json +8 -0
  675. data/ext/libmongocrypt/libmongocrypt/test/data/find-with-encryptionInformation.json +16 -0
  676. data/ext/libmongocrypt/libmongocrypt/test/data/fle1-collMod/cmd-to-mongocryptd.json +12 -0
  677. data/ext/libmongocrypt/libmongocrypt/test/data/fle1-collMod/cmd.json +8 -0
  678. data/ext/libmongocrypt/libmongocrypt/test/data/fle1-collMod/insert/cmd.json +8 -0
  679. data/ext/libmongocrypt/libmongocrypt/test/data/fle1-collMod/insert/collinfo.json +9 -0
  680. data/ext/libmongocrypt/libmongocrypt/test/data/fle1-collMod/mongocryptd-reply.json +14 -0
  681. data/ext/libmongocrypt/libmongocrypt/test/data/fle1-create/old-mongocryptd/cmd.json +3 -0
  682. data/ext/libmongocrypt/libmongocrypt/test/data/fle1-create/old-mongocryptd/encrypted-payload.json +3 -0
  683. data/ext/libmongocrypt/libmongocrypt/test/data/fle1-create/old-mongocryptd/ismaster-to-mongocryptd.json +3 -0
  684. data/ext/libmongocrypt/libmongocrypt/test/data/fle1-create/old-mongocryptd/mongocryptd-ismaster.json +12 -0
  685. data/ext/libmongocrypt/libmongocrypt/test/data/fle1-create/with-cmd-schema/cmd-to-mongocryptd.json +20 -0
  686. data/ext/libmongocrypt/libmongocrypt/test/data/fle1-create/with-cmd-schema/cmd.json +12 -0
  687. data/ext/libmongocrypt/libmongocrypt/test/data/fle1-create/with-cmd-schema/encrypted-payload.json +12 -0
  688. data/ext/libmongocrypt/libmongocrypt/test/data/fle1-create/with-cmd-schema/ismaster-to-mongocryptd.json +3 -0
  689. data/ext/libmongocrypt/libmongocrypt/test/data/fle1-create/with-cmd-schema/mongocryptd-ismaster.json +12 -0
  690. data/ext/libmongocrypt/libmongocrypt/test/data/fle1-create/with-cmd-schema/mongocryptd-reply.json +9 -0
  691. data/ext/libmongocrypt/libmongocrypt/test/data/fle1-create/with-schema/cmd-to-mongocryptd.json +7 -0
  692. data/ext/libmongocrypt/libmongocrypt/test/data/fle1-create/with-schema/cmd.json +3 -0
  693. data/ext/libmongocrypt/libmongocrypt/test/data/fle1-create/with-schema/encrypted-payload.json +3 -0
  694. data/ext/libmongocrypt/libmongocrypt/test/data/fle1-create/with-schema/ismaster-to-mongocryptd.json +3 -0
  695. data/ext/libmongocrypt/libmongocrypt/test/data/fle1-create/with-schema/mongocryptd-ismaster.json +12 -0
  696. data/ext/libmongocrypt/libmongocrypt/test/data/fle1-create/with-schema/mongocryptd-reply.json +9 -0
  697. data/ext/libmongocrypt/libmongocrypt/test/data/fle1-create/with-schema/schema-map.json +5 -0
  698. data/ext/libmongocrypt/libmongocrypt/test/data/fle1-create/without-schema/cmd-to-mongocryptd.json +5 -0
  699. data/ext/libmongocrypt/libmongocrypt/test/data/fle1-create/without-schema/cmd.json +3 -0
  700. data/ext/libmongocrypt/libmongocrypt/test/data/fle1-create/without-schema/encrypted-payload.json +3 -0
  701. data/ext/libmongocrypt/libmongocrypt/test/data/fle1-create/without-schema/ismaster-to-mongocryptd.json +3 -0
  702. data/ext/libmongocrypt/libmongocrypt/test/data/fle1-create/without-schema/mongocryptd-ismaster.json +12 -0
  703. data/ext/libmongocrypt/libmongocrypt/test/data/fle1-create/without-schema/mongocryptd-reply.json +9 -0
  704. data/ext/libmongocrypt/libmongocrypt/test/data/fle1-explain/with-csfle/cmd.json +8 -0
  705. data/ext/libmongocrypt/libmongocrypt/test/data/fle1-explain/with-csfle/collinfo.json +7 -0
  706. data/ext/libmongocrypt/libmongocrypt/test/data/fle1-explain/with-csfle/encrypted-payload.json +8 -0
  707. data/ext/libmongocrypt/libmongocrypt/test/data/fle1-explain/with-mongocryptd/cmd-to-mongocryptd.json +10 -0
  708. data/ext/libmongocrypt/libmongocrypt/test/data/fle1-explain/with-mongocryptd/cmd.json +8 -0
  709. data/ext/libmongocrypt/libmongocrypt/test/data/fle1-explain/with-mongocryptd/collinfo.json +7 -0
  710. data/ext/libmongocrypt/libmongocrypt/test/data/fle1-explain/with-mongocryptd/encrypted-payload.json +8 -0
  711. data/ext/libmongocrypt/libmongocrypt/test/data/fle1-explain/with-mongocryptd/mongocryptd-reply.json +14 -0
  712. data/ext/libmongocrypt/libmongocrypt/test/data/fle2-aead.cstructs +109 -0
  713. data/ext/libmongocrypt/libmongocrypt/test/data/fle2-create/cmd-to-mongocryptd.json +14 -0
  714. data/ext/libmongocrypt/libmongocrypt/test/data/fle2-create/cmd.json +3 -0
  715. data/ext/libmongocrypt/libmongocrypt/test/data/fle2-create/encrypted-field-config-map.json +8 -0
  716. data/ext/libmongocrypt/libmongocrypt/test/data/fle2-create/encrypted-payload.json +3 -0
  717. data/ext/libmongocrypt/libmongocrypt/test/data/fle2-create/ismaster-to-mongocryptd.json +3 -0
  718. data/ext/libmongocrypt/libmongocrypt/test/data/fle2-create/mongocryptd-ismaster.json +12 -0
  719. data/ext/libmongocrypt/libmongocrypt/test/data/fle2-create/mongocryptd-reply.json +9 -0
  720. data/ext/libmongocrypt/libmongocrypt/test/data/fle2-decrypt-ieev/first-filter.json +21 -0
  721. data/ext/libmongocrypt/libmongocrypt/test/data/fle2-decrypt-ieev/second-filter.json +21 -0
  722. data/ext/libmongocrypt/libmongocrypt/test/data/fle2-delete/empty/cmd.json +6 -0
  723. data/ext/libmongocrypt/libmongocrypt/test/data/fle2-delete/empty/collinfo.json +49 -0
  724. data/ext/libmongocrypt/libmongocrypt/test/data/fle2-delete/empty/encrypted-field-config-map.json +47 -0
  725. data/ext/libmongocrypt/libmongocrypt/test/data/fle2-delete/empty/encrypted-payload.json +91 -0
  726. data/ext/libmongocrypt/libmongocrypt/test/data/fle2-delete/empty/mongocryptd-reply.json +66 -0
  727. data/ext/libmongocrypt/libmongocrypt/test/data/fle2-delete/success/cmd.json +6 -0
  728. data/ext/libmongocrypt/libmongocrypt/test/data/fle2-delete/success/collinfo.json +49 -0
  729. data/ext/libmongocrypt/libmongocrypt/test/data/fle2-delete/success/encrypted-field-config-map.json +47 -0
  730. data/ext/libmongocrypt/libmongocrypt/test/data/fle2-delete/success/encrypted-payload.json +98 -0
  731. data/ext/libmongocrypt/libmongocrypt/test/data/fle2-delete/success/mongocryptd-reply.json +72 -0
  732. data/ext/libmongocrypt/libmongocrypt/test/data/fle2-explain/with-csfle/cmd.json +8 -0
  733. data/ext/libmongocrypt/libmongocrypt/test/data/fle2-explain/with-csfle/collinfo.json +27 -0
  734. data/ext/libmongocrypt/libmongocrypt/test/data/fle2-explain/with-csfle/encrypted-payload.json +46 -0
  735. data/ext/libmongocrypt/libmongocrypt/test/data/fle2-explain/with-mongocryptd/cmd-to-mongocryptd.json +36 -0
  736. data/ext/libmongocrypt/libmongocrypt/test/data/fle2-explain/with-mongocryptd/cmd.json +8 -0
  737. data/ext/libmongocrypt/libmongocrypt/test/data/fle2-explain/with-mongocryptd/collinfo.json +27 -0
  738. data/ext/libmongocrypt/libmongocrypt/test/data/fle2-explain/with-mongocryptd/encrypted-payload.json +41 -0
  739. data/ext/libmongocrypt/libmongocrypt/test/data/fle2-explain/with-mongocryptd/mongocryptd-reply.json +47 -0
  740. data/ext/libmongocrypt/libmongocrypt/test/data/fle2-explicit/find-indexed-contentionFactor1.json +8 -0
  741. data/ext/libmongocrypt/libmongocrypt/test/data/fle2-explicit/find-indexed.json +8 -0
  742. data/ext/libmongocrypt/libmongocrypt/test/data/fle2-explicit/insert-indexed-contentionFactor1.json +8 -0
  743. data/ext/libmongocrypt/libmongocrypt/test/data/fle2-explicit/insert-indexed-same-user-and-index-key.json +8 -0
  744. data/ext/libmongocrypt/libmongocrypt/test/data/fle2-explicit/insert-indexed.json +8 -0
  745. data/ext/libmongocrypt/libmongocrypt/test/data/fle2-find-equality/cmd.json +6 -0
  746. data/ext/libmongocrypt/libmongocrypt/test/data/fle2-find-equality/encrypted-field-map.json +23 -0
  747. data/ext/libmongocrypt/libmongocrypt/test/data/fle2-find-equality/encrypted-payload.json +41 -0
  748. data/ext/libmongocrypt/libmongocrypt/test/data/fle2-find-equality/mongocryptd-reply.json +19 -0
  749. data/ext/libmongocrypt/libmongocrypt/test/data/fle2-find-explicit/cmd-to-mongocryptd.json +24 -0
  750. data/ext/libmongocrypt/libmongocrypt/test/data/fle2-find-explicit/cmd-to-mongod.json +24 -0
  751. data/ext/libmongocrypt/libmongocrypt/test/data/fle2-find-explicit/cmd.json +11 -0
  752. data/ext/libmongocrypt/libmongocrypt/test/data/fle2-find-explicit/reply-from-mongocryptd.json +27 -0
  753. data/ext/libmongocrypt/libmongocrypt/test/data/fle2-find-range/README.md +2 -0
  754. data/ext/libmongocrypt/libmongocrypt/test/data/fle2-find-range/date/cmd.json +10 -0
  755. data/ext/libmongocrypt/libmongocrypt/test/data/fle2-find-range/date/encrypted-field-map.json +28 -0
  756. data/ext/libmongocrypt/libmongocrypt/test/data/fle2-find-range/date/encrypted-payload.json +42 -0
  757. data/ext/libmongocrypt/libmongocrypt/test/data/fle2-find-range/date/mongocryptd-reply.json +50 -0
  758. data/ext/libmongocrypt/libmongocrypt/test/data/fle2-find-range/decimal128/cmd.json +6 -0
  759. data/ext/libmongocrypt/libmongocrypt/test/data/fle2-find-range/decimal128/encrypted-field-map.json +28 -0
  760. data/ext/libmongocrypt/libmongocrypt/test/data/fle2-find-range/decimal128/encrypted-payload.json +42 -0
  761. data/ext/libmongocrypt/libmongocrypt/test/data/fle2-find-range/decimal128/mongocryptd-reply.json +50 -0
  762. data/ext/libmongocrypt/libmongocrypt/test/data/fle2-find-range/decimal128-precision/cmd.json +6 -0
  763. data/ext/libmongocrypt/libmongocrypt/test/data/fle2-find-range/decimal128-precision/encrypted-field-map.json +31 -0
  764. data/ext/libmongocrypt/libmongocrypt/test/data/fle2-find-range/decimal128-precision/encrypted-payload.json +51 -0
  765. data/ext/libmongocrypt/libmongocrypt/test/data/fle2-find-range/decimal128-precision/mongocryptd-reply.json +59 -0
  766. data/ext/libmongocrypt/libmongocrypt/test/data/fle2-find-range/double/cmd.json +8 -0
  767. data/ext/libmongocrypt/libmongocrypt/test/data/fle2-find-range/double/encrypted-field-map.json +28 -0
  768. data/ext/libmongocrypt/libmongocrypt/test/data/fle2-find-range/double/encrypted-payload.json +42 -0
  769. data/ext/libmongocrypt/libmongocrypt/test/data/fle2-find-range/double/mongocryptd-reply.json +50 -0
  770. data/ext/libmongocrypt/libmongocrypt/test/data/fle2-find-range/double-precision/cmd.json +8 -0
  771. data/ext/libmongocrypt/libmongocrypt/test/data/fle2-find-range/double-precision/encrypted-field-map.json +31 -0
  772. data/ext/libmongocrypt/libmongocrypt/test/data/fle2-find-range/double-precision/encrypted-payload.json +45 -0
  773. data/ext/libmongocrypt/libmongocrypt/test/data/fle2-find-range/double-precision/mongocryptd-reply.json +53 -0
  774. data/ext/libmongocrypt/libmongocrypt/test/data/fle2-find-range/int32/cmd.json +8 -0
  775. data/ext/libmongocrypt/libmongocrypt/test/data/fle2-find-range/int32/encrypted-field-map.json +28 -0
  776. data/ext/libmongocrypt/libmongocrypt/test/data/fle2-find-range/int32/encrypted-payload.json +42 -0
  777. data/ext/libmongocrypt/libmongocrypt/test/data/fle2-find-range/int32/mongocryptd-reply.json +50 -0
  778. data/ext/libmongocrypt/libmongocrypt/test/data/fle2-find-range/int64/cmd.json +8 -0
  779. data/ext/libmongocrypt/libmongocrypt/test/data/fle2-find-range/int64/encrypted-field-map.json +28 -0
  780. data/ext/libmongocrypt/libmongocrypt/test/data/fle2-find-range/int64/encrypted-payload.json +42 -0
  781. data/ext/libmongocrypt/libmongocrypt/test/data/fle2-find-range/int64/mongocryptd-reply.json +50 -0
  782. data/ext/libmongocrypt/libmongocrypt/test/data/fle2-find-range-explicit/double/encrypted-payload.json +26 -0
  783. data/ext/libmongocrypt/libmongocrypt/test/data/fle2-find-range-explicit/double/rangeopts.json +5 -0
  784. data/ext/libmongocrypt/libmongocrypt/test/data/fle2-find-range-explicit/double/value-to-encrypt.json +20 -0
  785. data/ext/libmongocrypt/libmongocrypt/test/data/fle2-find-range-explicit/double-precision/encrypted-payload.json +26 -0
  786. data/ext/libmongocrypt/libmongocrypt/test/data/fle2-find-range-explicit/double-precision/rangeopts.json +14 -0
  787. data/ext/libmongocrypt/libmongocrypt/test/data/fle2-find-range-explicit/double-precision/value-to-encrypt.json +20 -0
  788. data/ext/libmongocrypt/libmongocrypt/test/data/fle2-find-range-explicit/int32/encrypted-payload.json +26 -0
  789. data/ext/libmongocrypt/libmongocrypt/test/data/fle2-find-range-explicit/int32/rangeopts.json +11 -0
  790. data/ext/libmongocrypt/libmongocrypt/test/data/fle2-find-range-explicit/int32/value-to-encrypt.json +20 -0
  791. data/ext/libmongocrypt/libmongocrypt/test/data/fle2-find-range-explicit/int32-nominmax/encrypted-payload.json +26 -0
  792. data/ext/libmongocrypt/libmongocrypt/test/data/fle2-find-range-explicit/int32-nominmax/rangeopts.json +5 -0
  793. data/ext/libmongocrypt/libmongocrypt/test/data/fle2-find-range-explicit/int32-nominmax/value-to-encrypt.json +20 -0
  794. data/ext/libmongocrypt/libmongocrypt/test/data/fle2-find-range-explicit/int32-openinterval/encrypted-payload.json +16 -0
  795. data/ext/libmongocrypt/libmongocrypt/test/data/fle2-find-range-explicit/int32-openinterval/rangeopts.json +11 -0
  796. data/ext/libmongocrypt/libmongocrypt/test/data/fle2-find-range-explicit/int32-openinterval/value-to-encrypt.json +13 -0
  797. data/ext/libmongocrypt/libmongocrypt/test/data/fle2-insert/cmd.json +9 -0
  798. data/ext/libmongocrypt/libmongocrypt/test/data/fle2-insert/encrypted-field-map.json +23 -0
  799. data/ext/libmongocrypt/libmongocrypt/test/data/fle2-insert/encrypted-payload.json +40 -0
  800. data/ext/libmongocrypt/libmongocrypt/test/data/fle2-insert/mongocryptd-reply.json +50 -0
  801. data/ext/libmongocrypt/libmongocrypt/test/data/fle2-insert-range/README.md +2 -0
  802. data/ext/libmongocrypt/libmongocrypt/test/data/fle2-insert-range/date/RNG_DATA.h +67 -0
  803. data/ext/libmongocrypt/libmongocrypt/test/data/fle2-insert-range/date/cmd.json +13 -0
  804. data/ext/libmongocrypt/libmongocrypt/test/data/fle2-insert-range/date/encrypted-field-map.json +28 -0
  805. data/ext/libmongocrypt/libmongocrypt/test/data/fle2-insert-range/date/encrypted-payload.json +45 -0
  806. data/ext/libmongocrypt/libmongocrypt/test/data/fle2-insert-range/date/mongocryptd-reply.json +53 -0
  807. data/ext/libmongocrypt/libmongocrypt/test/data/fle2-insert-range/decimal128/RNG_DATA.h +134 -0
  808. data/ext/libmongocrypt/libmongocrypt/test/data/fle2-insert-range/decimal128/cmd.json +9 -0
  809. data/ext/libmongocrypt/libmongocrypt/test/data/fle2-insert-range/decimal128/encrypted-field-map.json +28 -0
  810. data/ext/libmongocrypt/libmongocrypt/test/data/fle2-insert-range/decimal128/encrypted-payload.json +45 -0
  811. data/ext/libmongocrypt/libmongocrypt/test/data/fle2-insert-range/decimal128/mongocryptd-reply.json +53 -0
  812. data/ext/libmongocrypt/libmongocrypt/test/data/fle2-insert-range/decimal128-precision/RNG_DATA.h +73 -0
  813. data/ext/libmongocrypt/libmongocrypt/test/data/fle2-insert-range/decimal128-precision/cmd.json +9 -0
  814. data/ext/libmongocrypt/libmongocrypt/test/data/fle2-insert-range/decimal128-precision/encrypted-field-map.json +31 -0
  815. data/ext/libmongocrypt/libmongocrypt/test/data/fle2-insert-range/decimal128-precision/encrypted-payload.json +54 -0
  816. data/ext/libmongocrypt/libmongocrypt/test/data/fle2-insert-range/decimal128-precision/mongocryptd-reply.json +62 -0
  817. data/ext/libmongocrypt/libmongocrypt/test/data/fle2-insert-range/double/RNG_DATA.h +70 -0
  818. data/ext/libmongocrypt/libmongocrypt/test/data/fle2-insert-range/double/cmd.json +11 -0
  819. data/ext/libmongocrypt/libmongocrypt/test/data/fle2-insert-range/double/encrypted-field-map.json +28 -0
  820. data/ext/libmongocrypt/libmongocrypt/test/data/fle2-insert-range/double/encrypted-payload.json +45 -0
  821. data/ext/libmongocrypt/libmongocrypt/test/data/fle2-insert-range/double/mongocryptd-reply.json +53 -0
  822. data/ext/libmongocrypt/libmongocrypt/test/data/fle2-insert-range/double-precision/RNG_DATA.h +21 -0
  823. data/ext/libmongocrypt/libmongocrypt/test/data/fle2-insert-range/double-precision/cmd.json +11 -0
  824. data/ext/libmongocrypt/libmongocrypt/test/data/fle2-insert-range/double-precision/encrypted-field-map.json +31 -0
  825. data/ext/libmongocrypt/libmongocrypt/test/data/fle2-insert-range/double-precision/encrypted-payload.json +48 -0
  826. data/ext/libmongocrypt/libmongocrypt/test/data/fle2-insert-range/double-precision/mongocryptd-reply.json +56 -0
  827. data/ext/libmongocrypt/libmongocrypt/test/data/fle2-insert-range/int32/RNG_DATA.h +27 -0
  828. data/ext/libmongocrypt/libmongocrypt/test/data/fle2-insert-range/int32/cmd.json +11 -0
  829. data/ext/libmongocrypt/libmongocrypt/test/data/fle2-insert-range/int32/encrypted-field-map.json +28 -0
  830. data/ext/libmongocrypt/libmongocrypt/test/data/fle2-insert-range/int32/encrypted-payload.json +45 -0
  831. data/ext/libmongocrypt/libmongocrypt/test/data/fle2-insert-range/int32/mongocryptd-reply.json +53 -0
  832. data/ext/libmongocrypt/libmongocrypt/test/data/fle2-insert-range/int64/RNG_DATA.h +67 -0
  833. data/ext/libmongocrypt/libmongocrypt/test/data/fle2-insert-range/int64/cmd.json +11 -0
  834. data/ext/libmongocrypt/libmongocrypt/test/data/fle2-insert-range/int64/encrypted-field-map.json +28 -0
  835. data/ext/libmongocrypt/libmongocrypt/test/data/fle2-insert-range/int64/encrypted-payload.json +45 -0
  836. data/ext/libmongocrypt/libmongocrypt/test/data/fle2-insert-range/int64/mongocryptd-reply.json +53 -0
  837. data/ext/libmongocrypt/libmongocrypt/test/data/fle2-insert-range-explicit/double/RNG_DATA.h +70 -0
  838. data/ext/libmongocrypt/libmongocrypt/test/data/fle2-insert-range-explicit/double/encrypted-payload.json +8 -0
  839. data/ext/libmongocrypt/libmongocrypt/test/data/fle2-insert-range-explicit/double/rangeopts.json +5 -0
  840. data/ext/libmongocrypt/libmongocrypt/test/data/fle2-insert-range-explicit/double/value-to-encrypt.json +5 -0
  841. data/ext/libmongocrypt/libmongocrypt/test/data/fle2-insert-range-explicit/double-precision/RNG_DATA.h +21 -0
  842. data/ext/libmongocrypt/libmongocrypt/test/data/fle2-insert-range-explicit/double-precision/encrypted-payload.json +8 -0
  843. data/ext/libmongocrypt/libmongocrypt/test/data/fle2-insert-range-explicit/double-precision/rangeopts.json +14 -0
  844. data/ext/libmongocrypt/libmongocrypt/test/data/fle2-insert-range-explicit/double-precision/value-to-encrypt.json +5 -0
  845. data/ext/libmongocrypt/libmongocrypt/test/data/fle2-insert-range-explicit/int32/RNG_DATA.h +27 -0
  846. data/ext/libmongocrypt/libmongocrypt/test/data/fle2-insert-range-explicit/int32/encrypted-payload.json +8 -0
  847. data/ext/libmongocrypt/libmongocrypt/test/data/fle2-insert-range-explicit/int32/rangeopts.json +11 -0
  848. data/ext/libmongocrypt/libmongocrypt/test/data/fle2-insert-range-explicit/int32/value-to-encrypt.json +5 -0
  849. data/ext/libmongocrypt/libmongocrypt/test/data/fle2-insert-range-explicit/int32-nominmax/RNG_DATA.h +70 -0
  850. data/ext/libmongocrypt/libmongocrypt/test/data/fle2-insert-range-explicit/int32-nominmax/encrypted-payload.json +8 -0
  851. data/ext/libmongocrypt/libmongocrypt/test/data/fle2-insert-range-explicit/int32-nominmax/rangeopts.json +5 -0
  852. data/ext/libmongocrypt/libmongocrypt/test/data/fle2-insert-range-explicit/int32-nominmax/value-to-encrypt.json +5 -0
  853. data/ext/libmongocrypt/libmongocrypt/test/data/fle2-insert-range-explicit/sparsity-2/RNG_DATA.h +17 -0
  854. data/ext/libmongocrypt/libmongocrypt/test/data/fle2-insert-range-explicit/sparsity-2/encrypted-payload.json +8 -0
  855. data/ext/libmongocrypt/libmongocrypt/test/data/fle2-insert-range-explicit/sparsity-2/rangeopts.json +11 -0
  856. data/ext/libmongocrypt/libmongocrypt/test/data/fle2-insert-range-explicit/sparsity-2/value-to-encrypt.json +5 -0
  857. data/ext/libmongocrypt/libmongocrypt/test/data/fle2-insert-unindexed/cmd.json +9 -0
  858. data/ext/libmongocrypt/libmongocrypt/test/data/fle2-insert-unindexed/encrypted-field-map.json +23 -0
  859. data/ext/libmongocrypt/libmongocrypt/test/data/fle2-insert-unindexed/encrypted-payload.json +14 -0
  860. data/ext/libmongocrypt/libmongocrypt/test/data/fle2-insert-unindexed/mongocryptd-reply.json +46 -0
  861. data/ext/libmongocrypt/libmongocrypt/test/data/fle2.cstructs +33 -0
  862. data/ext/libmongocrypt/libmongocrypt/test/data/gcp-auth/decrypt-response.txt +5 -0
  863. data/ext/libmongocrypt/libmongocrypt/test/data/gcp-auth/encrypt-response.txt +5 -0
  864. data/ext/libmongocrypt/libmongocrypt/test/data/gcp-auth/oauth-response.txt +5 -0
  865. data/ext/libmongocrypt/libmongocrypt/test/data/kek-tests.json +169 -0
  866. data/ext/libmongocrypt/libmongocrypt/test/data/key-document-azure.json +33 -0
  867. data/ext/libmongocrypt/libmongocrypt/test/data/key-document-full.json +36 -0
  868. data/ext/libmongocrypt/libmongocrypt/test/data/key-document-gcp.json +35 -0
  869. data/ext/libmongocrypt/libmongocrypt/test/data/key-document-kmip.json +34 -0
  870. data/ext/libmongocrypt/libmongocrypt/test/data/key-document-local.json +18 -0
  871. data/ext/libmongocrypt/libmongocrypt/test/data/key-document-no-region.json +31 -0
  872. data/ext/libmongocrypt/libmongocrypt/test/data/key-document-with-alt-name-duplicate-id.json +36 -0
  873. data/ext/libmongocrypt/libmongocrypt/test/data/key-document-with-alt-name.json +33 -0
  874. data/ext/libmongocrypt/libmongocrypt/test/data/key-document-with-alt-name2.json +33 -0
  875. data/ext/libmongocrypt/libmongocrypt/test/data/keys/12345678123498761234123456789012-aws-decrypt-reply.txt +11 -0
  876. data/ext/libmongocrypt/libmongocrypt/test/data/keys/12345678123498761234123456789012-aws-document.json +32 -0
  877. data/ext/libmongocrypt/libmongocrypt/test/data/keys/12345678123498761234123456789012-key-material.txt +1 -0
  878. data/ext/libmongocrypt/libmongocrypt/test/data/keys/12345678123498761234123456789012-local-document.json +30 -0
  879. data/ext/libmongocrypt/libmongocrypt/test/data/keys/12345678123498761234123456789013-aws-decrypt-reply.txt +11 -0
  880. data/ext/libmongocrypt/libmongocrypt/test/data/keys/12345678123498761234123456789013-aws-document.json +32 -0
  881. data/ext/libmongocrypt/libmongocrypt/test/data/keys/12345678123498761234123456789013-key-material.txt +1 -0
  882. data/ext/libmongocrypt/libmongocrypt/test/data/keys/12345678123498761234123456789013-local-document.json +30 -0
  883. data/ext/libmongocrypt/libmongocrypt/test/data/keys/12345678123498761234123456789014-key-material.txt +1 -0
  884. data/ext/libmongocrypt/libmongocrypt/test/data/keys/12345678123498761234123456789014-local-document.json +30 -0
  885. data/ext/libmongocrypt/libmongocrypt/test/data/keys/ABCDEFAB123498761234123456789012-aws-decrypt-reply.txt +11 -0
  886. data/ext/libmongocrypt/libmongocrypt/test/data/keys/ABCDEFAB123498761234123456789012-aws-document.json +32 -0
  887. data/ext/libmongocrypt/libmongocrypt/test/data/keys/ABCDEFAB123498761234123456789012-key-material.txt +1 -0
  888. data/ext/libmongocrypt/libmongocrypt/test/data/keys/ABCDEFAB123498761234123456789012-local-document.json +30 -0
  889. data/ext/libmongocrypt/libmongocrypt/test/data/keys/README.md +21 -0
  890. data/ext/libmongocrypt/libmongocrypt/test/data/kms-encrypt-reply.txt +7 -0
  891. data/ext/libmongocrypt/libmongocrypt/test/data/kms-tests.json +297 -0
  892. data/ext/libmongocrypt/libmongocrypt/test/data/mongocryptd-cmd.json +26 -0
  893. data/ext/libmongocrypt/libmongocrypt/test/data/mongocryptd-reply-existing-ciphertext.json +24 -0
  894. data/ext/libmongocrypt/libmongocrypt/test/data/mongocryptd-reply-invalid.json +18 -0
  895. data/ext/libmongocrypt/libmongocrypt/test/data/mongocryptd-reply-key-alt-name.json +18 -0
  896. data/ext/libmongocrypt/libmongocrypt/test/data/mongocryptd-reply-key-alt-name2.json +18 -0
  897. data/ext/libmongocrypt/libmongocrypt/test/data/mongocryptd-reply-no-encryption-needed.json +7 -0
  898. data/ext/libmongocrypt/libmongocrypt/test/data/mongocryptd-reply-no-markings.json +7 -0
  899. data/ext/libmongocrypt/libmongocrypt/test/data/mongocryptd-reply-random.json +18 -0
  900. data/ext/libmongocrypt/libmongocrypt/test/data/range-edge-generation/edges_decimal128.cstruct +14527 -0
  901. data/ext/libmongocrypt/libmongocrypt/test/data/range-edge-generation/edges_double.cstruct +7959 -0
  902. data/ext/libmongocrypt/libmongocrypt/test/data/range-edge-generation/edges_int32.cstruct +6906 -0
  903. data/ext/libmongocrypt/libmongocrypt/test/data/range-edge-generation/edges_int64.cstruct +9429 -0
  904. data/ext/libmongocrypt/libmongocrypt/test/data/range-min-cover/mincover_decimal128.cstruct +4565 -0
  905. data/ext/libmongocrypt/libmongocrypt/test/data/range-min-cover/mincover_decimal128_precision.cstruct +312 -0
  906. data/ext/libmongocrypt/libmongocrypt/test/data/range-min-cover/mincover_double.cstruct +3277 -0
  907. data/ext/libmongocrypt/libmongocrypt/test/data/range-min-cover/mincover_double_precision.cstruct +369 -0
  908. data/ext/libmongocrypt/libmongocrypt/test/data/range-min-cover/mincover_int32.cstruct +4612 -0
  909. data/ext/libmongocrypt/libmongocrypt/test/data/range-min-cover/mincover_int64.cstruct +3398 -0
  910. data/ext/libmongocrypt/libmongocrypt/test/data/rmd/key-document-a.json +35 -0
  911. data/ext/libmongocrypt/libmongocrypt/test/data/rmd/key-document-b.json +37 -0
  912. data/ext/libmongocrypt/libmongocrypt/test/data/rmd/key-document-local.json +30 -0
  913. data/ext/libmongocrypt/libmongocrypt/test/data/rmd/kms-decrypt-reply-a.txt +6 -0
  914. data/ext/libmongocrypt/libmongocrypt/test/data/rmd/kms-decrypt-reply-b.txt +6 -0
  915. data/ext/libmongocrypt/libmongocrypt/test/data/rmd/kms-encrypt-reply-a.txt +7 -0
  916. data/ext/libmongocrypt/libmongocrypt/test/data/rmd/kms-encrypt-reply-b.txt +7 -0
  917. data/ext/libmongocrypt/libmongocrypt/test/data/schema-map.json +40 -0
  918. data/ext/libmongocrypt/libmongocrypt/test/data/schema.json +19 -0
  919. data/ext/libmongocrypt/libmongocrypt/test/example/README.md +5 -0
  920. data/ext/libmongocrypt/libmongocrypt/test/example/cmd.json +6 -0
  921. data/ext/libmongocrypt/libmongocrypt/test/example/collection-info.json +39 -0
  922. data/ext/libmongocrypt/libmongocrypt/test/example/encrypted-command.json +9 -0
  923. data/ext/libmongocrypt/libmongocrypt/test/example/key-document-custom-endpoint.json +34 -0
  924. data/ext/libmongocrypt/libmongocrypt/test/example/key-document.json +33 -0
  925. data/ext/libmongocrypt/libmongocrypt/test/example/kms-decrypt-reply.txt +6 -0
  926. data/ext/libmongocrypt/libmongocrypt/test/example/mongocryptd-reply.json +18 -0
  927. data/ext/libmongocrypt/libmongocrypt/test/example-no-bson.c +23 -0
  928. data/ext/libmongocrypt/libmongocrypt/test/example-state-machine.c +368 -0
  929. data/ext/libmongocrypt/libmongocrypt/test/fuzz_kms.c +42 -0
  930. data/ext/libmongocrypt/libmongocrypt/test/test-dll.cpp +22 -0
  931. data/ext/libmongocrypt/libmongocrypt/test/test-gcp-auth.c +312 -0
  932. data/ext/libmongocrypt/libmongocrypt/test/test-mc-efc.c +104 -0
  933. data/ext/libmongocrypt/libmongocrypt/test/test-mc-fle2-payload-iev.c +443 -0
  934. data/ext/libmongocrypt/libmongocrypt/test/test-mc-fle2-payload-iup.c +184 -0
  935. data/ext/libmongocrypt/libmongocrypt/test/test-mc-fle2-payload-uev.c +200 -0
  936. data/ext/libmongocrypt/libmongocrypt/test/test-mc-fle2-rfds.c +518 -0
  937. data/ext/libmongocrypt/libmongocrypt/test/test-mc-range-edge-generation.c +468 -0
  938. data/ext/libmongocrypt/libmongocrypt/test/test-mc-range-encoding.c +886 -0
  939. data/ext/libmongocrypt/libmongocrypt/test/test-mc-range-mincover.c +609 -0
  940. data/ext/libmongocrypt/libmongocrypt/test/test-mc-rangeopts.c +174 -0
  941. data/ext/libmongocrypt/libmongocrypt/test/test-mc-reader.c +251 -0
  942. data/ext/libmongocrypt/libmongocrypt/test/test-mc-tokens.c +245 -0
  943. data/ext/libmongocrypt/libmongocrypt/test/test-mongocrypt-assert-match-bson.c +1079 -0
  944. data/ext/libmongocrypt/libmongocrypt/test/test-mongocrypt-assert-match-bson.h +26 -0
  945. data/ext/libmongocrypt/libmongocrypt/test/test-mongocrypt-assert.h +218 -0
  946. data/ext/libmongocrypt/libmongocrypt/test/test-mongocrypt-buffer.c +266 -0
  947. data/ext/libmongocrypt/libmongocrypt/test/test-mongocrypt-cache-oauth.c +57 -0
  948. data/ext/libmongocrypt/libmongocrypt/test/test-mongocrypt-cache.c +264 -0
  949. data/ext/libmongocrypt/libmongocrypt/test/test-mongocrypt-ciphertext.c +259 -0
  950. data/ext/libmongocrypt/libmongocrypt/test/test-mongocrypt-compact.c +478 -0
  951. data/ext/libmongocrypt/libmongocrypt/test/test-mongocrypt-crypto-hooks.c +917 -0
  952. data/ext/libmongocrypt/libmongocrypt/test/test-mongocrypt-crypto-std-hooks.c +177 -0
  953. data/ext/libmongocrypt/libmongocrypt/test/test-mongocrypt-crypto-std-hooks.h +110 -0
  954. data/ext/libmongocrypt/libmongocrypt/test/test-mongocrypt-crypto.c +892 -0
  955. data/ext/libmongocrypt/libmongocrypt/test/test-mongocrypt-csfle-lib.c +208 -0
  956. data/ext/libmongocrypt/libmongocrypt/test/test-mongocrypt-ctx-decrypt.c +1134 -0
  957. data/ext/libmongocrypt/libmongocrypt/test/test-mongocrypt-ctx-encrypt.c +5096 -0
  958. data/ext/libmongocrypt/libmongocrypt/test/test-mongocrypt-ctx-rewrap-many-datakey.c +1061 -0
  959. data/ext/libmongocrypt/libmongocrypt/test/test-mongocrypt-ctx-setopt.c +1301 -0
  960. data/ext/libmongocrypt/libmongocrypt/test/test-mongocrypt-datakey.c +489 -0
  961. data/ext/libmongocrypt/libmongocrypt/test/test-mongocrypt-dll.c +48 -0
  962. data/ext/libmongocrypt/libmongocrypt/test/test-mongocrypt-endpoint.c +138 -0
  963. data/ext/libmongocrypt/libmongocrypt/test/test-mongocrypt-kek.c +104 -0
  964. data/ext/libmongocrypt/libmongocrypt/test/test-mongocrypt-key-broker.c +1174 -0
  965. data/ext/libmongocrypt/libmongocrypt/test/test-mongocrypt-key-cache.c +475 -0
  966. data/ext/libmongocrypt/libmongocrypt/test/test-mongocrypt-key.c +282 -0
  967. data/ext/libmongocrypt/libmongocrypt/test/test-mongocrypt-kms-ctx.c +561 -0
  968. data/ext/libmongocrypt/libmongocrypt/test/test-mongocrypt-kms-responses.c +206 -0
  969. data/ext/libmongocrypt/libmongocrypt/test/test-mongocrypt-local-kms.c +89 -0
  970. data/ext/libmongocrypt/libmongocrypt/test/test-mongocrypt-log.c +137 -0
  971. data/ext/libmongocrypt/libmongocrypt/test/test-mongocrypt-marking.c +738 -0
  972. data/ext/libmongocrypt/libmongocrypt/test/test-mongocrypt-status.c +88 -0
  973. data/ext/libmongocrypt/libmongocrypt/test/test-mongocrypt-traverse-util.c +548 -0
  974. data/ext/libmongocrypt/libmongocrypt/test/test-mongocrypt-util.c +105 -0
  975. data/ext/libmongocrypt/libmongocrypt/test/test-mongocrypt-util.h +42 -0
  976. data/ext/libmongocrypt/libmongocrypt/test/test-mongocrypt.c +1060 -0
  977. data/ext/libmongocrypt/libmongocrypt/test/test-mongocrypt.h +290 -0
  978. data/ext/libmongocrypt/libmongocrypt/test/util/HELP.autogen +102 -0
  979. data/ext/libmongocrypt/libmongocrypt/test/util/README.md +103 -0
  980. data/ext/libmongocrypt/libmongocrypt/test/util/csfle.c +612 -0
  981. data/ext/libmongocrypt/libmongocrypt/test/util/helpgen.py +7 -0
  982. data/ext/libmongocrypt/libmongocrypt/test/util/make_includes.py +845 -0
  983. data/ext/libmongocrypt/libmongocrypt/test/util/util.c +969 -0
  984. data/ext/libmongocrypt/libmongocrypt/test/util/util.h +96 -0
  985. data/ext/libmongocrypt/libmongocrypt/third-party/IntelRDFPMathLib20U2.tar.xz +0 -0
  986. data/lib/libmongocrypt_helper/version.rb +2 -2
  987. data/lib/libmongocrypt_helper.rb +15 -1
  988. data.tar.gz.sig +0 -0
  989. metadata +1019 -32
  990. metadata.gz.sig +0 -0
  991. data/so/libmongocrypt.so +0 -0
@@ -0,0 +1,3398 @@
1
+ // This code is GENERATED! Do not edit!
2
+ // clang-format off
3
+ {
4
+ .lowerBound = -100,
5
+ .includeLowerBound = true,
6
+ .upperBound = -100,
7
+ .includeUpperBound = true,
8
+ .sparsity = 1,
9
+ .min = { .set = true, .value = -1000000000000000 },
10
+ .max = { .set = true, .value = -1 },
11
+ .expectMincoverStrings = {
12
+ "11100011010111111010100100110001100111111110011100",
13
+ },
14
+ },
15
+ {
16
+ .lowerBound = -100,
17
+ .includeLowerBound = true,
18
+ .upperBound = -100,
19
+ .includeUpperBound = true,
20
+ .sparsity = 2,
21
+ .min = { .set = true, .value = -1000000000000000 },
22
+ .max = { .set = true, .value = -1 },
23
+ .expectMincoverStrings = {
24
+ "11100011010111111010100100110001100111111110011100",
25
+ },
26
+ },
27
+ {
28
+ .lowerBound = -100,
29
+ .includeLowerBound = true,
30
+ .upperBound = -100,
31
+ .includeUpperBound = true,
32
+ .sparsity = 1,
33
+ .min = { .set = true, .value = -1000000000000000 },
34
+ .max = { .set = true, .value = 0 },
35
+ .expectMincoverStrings = {
36
+ "11100011010111111010100100110001100111111110011100",
37
+ },
38
+ },
39
+ {
40
+ .lowerBound = -100,
41
+ .includeLowerBound = true,
42
+ .upperBound = -100,
43
+ .includeUpperBound = true,
44
+ .sparsity = 2,
45
+ .min = { .set = true, .value = -1000000000000000 },
46
+ .max = { .set = true, .value = 0 },
47
+ .expectMincoverStrings = {
48
+ "11100011010111111010100100110001100111111110011100",
49
+ },
50
+ },
51
+ {
52
+ .lowerBound = -100,
53
+ .includeLowerBound = true,
54
+ .upperBound = -100,
55
+ .includeUpperBound = true,
56
+ .sparsity = 1,
57
+ .min = { .set = true, .value = -1000000000000000 },
58
+ .max = { .set = true, .value = 1024 },
59
+ .expectMincoverStrings = {
60
+ "11100011010111111010100100110001100111111110011100",
61
+ },
62
+ },
63
+ {
64
+ .lowerBound = -100,
65
+ .includeLowerBound = true,
66
+ .upperBound = -100,
67
+ .includeUpperBound = true,
68
+ .sparsity = 2,
69
+ .min = { .set = true, .value = -1000000000000000 },
70
+ .max = { .set = true, .value = 1024 },
71
+ .expectMincoverStrings = {
72
+ "11100011010111111010100100110001100111111110011100",
73
+ },
74
+ },
75
+ {
76
+ .lowerBound = -100,
77
+ .includeLowerBound = true,
78
+ .upperBound = -100,
79
+ .includeUpperBound = true,
80
+ .sparsity = 1,
81
+ .min = { .set = true, .value = -1000000000000000 },
82
+ .max = { .set = true, .value = 8070450532247928832 },
83
+ .expectMincoverStrings = {
84
+ "000000000000011100011010111111010100100110001100111111110011100",
85
+ },
86
+ },
87
+ {
88
+ .lowerBound = -100,
89
+ .includeLowerBound = true,
90
+ .upperBound = -100,
91
+ .includeUpperBound = true,
92
+ .sparsity = 3,
93
+ .min = { .set = true, .value = -1000000000000000 },
94
+ .max = { .set = true, .value = 8070450532247928832 },
95
+ .expectMincoverStrings = {
96
+ "000000000000011100011010111111010100100110001100111111110011100",
97
+ },
98
+ },
99
+ {
100
+ .lowerBound = -100,
101
+ .includeLowerBound = true,
102
+ .upperBound = -1,
103
+ .includeUpperBound = true,
104
+ .sparsity = 1,
105
+ .min = { .set = true, .value = -1000000000000000 },
106
+ .max = { .set = true, .value = -1 },
107
+ .expectMincoverStrings = {
108
+ "111000110101111110101001001100011001111111100111",
109
+ "111000110101111110101001001100011001111111101",
110
+ "11100011010111111010100100110001100111111111",
111
+ },
112
+ },
113
+ {
114
+ .lowerBound = -100,
115
+ .includeLowerBound = true,
116
+ .upperBound = -1,
117
+ .includeUpperBound = true,
118
+ .sparsity = 2,
119
+ .min = { .set = true, .value = -1000000000000000 },
120
+ .max = { .set = true, .value = -1 },
121
+ .expectMincoverStrings = {
122
+ "111000110101111110101001001100011001111111100111",
123
+ "1110001101011111101010010011000110011111111010",
124
+ "1110001101011111101010010011000110011111111011",
125
+ "11100011010111111010100100110001100111111111",
126
+ },
127
+ },
128
+ {
129
+ .lowerBound = -100,
130
+ .includeLowerBound = true,
131
+ .upperBound = -1,
132
+ .includeUpperBound = true,
133
+ .sparsity = 3,
134
+ .min = { .set = true, .value = -1000000000000000 },
135
+ .max = { .set = true, .value = -1 },
136
+ .expectMincoverStrings = {
137
+ "111000110101111110101001001100011001111111100111",
138
+ "111000110101111110101001001100011001111111101",
139
+ "111000110101111110101001001100011001111111110",
140
+ "111000110101111110101001001100011001111111111",
141
+ },
142
+ },
143
+ {
144
+ .lowerBound = -100,
145
+ .includeLowerBound = true,
146
+ .upperBound = -1,
147
+ .includeUpperBound = true,
148
+ .sparsity = 4,
149
+ .min = { .set = true, .value = -1000000000000000 },
150
+ .max = { .set = true, .value = -1 },
151
+ .expectMincoverStrings = {
152
+ "111000110101111110101001001100011001111111100111",
153
+ "111000110101111110101001001100011001111111101000",
154
+ "111000110101111110101001001100011001111111101001",
155
+ "111000110101111110101001001100011001111111101010",
156
+ "111000110101111110101001001100011001111111101011",
157
+ "111000110101111110101001001100011001111111101100",
158
+ "111000110101111110101001001100011001111111101101",
159
+ "111000110101111110101001001100011001111111101110",
160
+ "111000110101111110101001001100011001111111101111",
161
+ "11100011010111111010100100110001100111111111",
162
+ },
163
+ },
164
+ {
165
+ .lowerBound = -100,
166
+ .includeLowerBound = true,
167
+ .upperBound = -1,
168
+ .includeUpperBound = true,
169
+ .sparsity = 1,
170
+ .min = { .set = true, .value = -1000000000000000 },
171
+ .max = { .set = true, .value = 0 },
172
+ .expectMincoverStrings = {
173
+ "111000110101111110101001001100011001111111100111",
174
+ "111000110101111110101001001100011001111111101",
175
+ "11100011010111111010100100110001100111111111",
176
+ },
177
+ },
178
+ {
179
+ .lowerBound = -100,
180
+ .includeLowerBound = true,
181
+ .upperBound = -1,
182
+ .includeUpperBound = true,
183
+ .sparsity = 2,
184
+ .min = { .set = true, .value = -1000000000000000 },
185
+ .max = { .set = true, .value = 0 },
186
+ .expectMincoverStrings = {
187
+ "111000110101111110101001001100011001111111100111",
188
+ "1110001101011111101010010011000110011111111010",
189
+ "1110001101011111101010010011000110011111111011",
190
+ "11100011010111111010100100110001100111111111",
191
+ },
192
+ },
193
+ {
194
+ .lowerBound = -100,
195
+ .includeLowerBound = true,
196
+ .upperBound = -1,
197
+ .includeUpperBound = true,
198
+ .sparsity = 3,
199
+ .min = { .set = true, .value = -1000000000000000 },
200
+ .max = { .set = true, .value = 0 },
201
+ .expectMincoverStrings = {
202
+ "111000110101111110101001001100011001111111100111",
203
+ "111000110101111110101001001100011001111111101",
204
+ "111000110101111110101001001100011001111111110",
205
+ "111000110101111110101001001100011001111111111",
206
+ },
207
+ },
208
+ {
209
+ .lowerBound = -100,
210
+ .includeLowerBound = true,
211
+ .upperBound = -1,
212
+ .includeUpperBound = true,
213
+ .sparsity = 4,
214
+ .min = { .set = true, .value = -1000000000000000 },
215
+ .max = { .set = true, .value = 0 },
216
+ .expectMincoverStrings = {
217
+ "111000110101111110101001001100011001111111100111",
218
+ "111000110101111110101001001100011001111111101000",
219
+ "111000110101111110101001001100011001111111101001",
220
+ "111000110101111110101001001100011001111111101010",
221
+ "111000110101111110101001001100011001111111101011",
222
+ "111000110101111110101001001100011001111111101100",
223
+ "111000110101111110101001001100011001111111101101",
224
+ "111000110101111110101001001100011001111111101110",
225
+ "111000110101111110101001001100011001111111101111",
226
+ "11100011010111111010100100110001100111111111",
227
+ },
228
+ },
229
+ {
230
+ .lowerBound = -100,
231
+ .includeLowerBound = true,
232
+ .upperBound = -1,
233
+ .includeUpperBound = true,
234
+ .sparsity = 1,
235
+ .min = { .set = true, .value = -1000000000000000 },
236
+ .max = { .set = true, .value = 1024 },
237
+ .expectMincoverStrings = {
238
+ "111000110101111110101001001100011001111111100111",
239
+ "111000110101111110101001001100011001111111101",
240
+ "11100011010111111010100100110001100111111111",
241
+ },
242
+ },
243
+ {
244
+ .lowerBound = -100,
245
+ .includeLowerBound = true,
246
+ .upperBound = -1,
247
+ .includeUpperBound = true,
248
+ .sparsity = 2,
249
+ .min = { .set = true, .value = -1000000000000000 },
250
+ .max = { .set = true, .value = 1024 },
251
+ .expectMincoverStrings = {
252
+ "111000110101111110101001001100011001111111100111",
253
+ "1110001101011111101010010011000110011111111010",
254
+ "1110001101011111101010010011000110011111111011",
255
+ "11100011010111111010100100110001100111111111",
256
+ },
257
+ },
258
+ {
259
+ .lowerBound = -100,
260
+ .includeLowerBound = true,
261
+ .upperBound = -1,
262
+ .includeUpperBound = true,
263
+ .sparsity = 3,
264
+ .min = { .set = true, .value = -1000000000000000 },
265
+ .max = { .set = true, .value = 1024 },
266
+ .expectMincoverStrings = {
267
+ "111000110101111110101001001100011001111111100111",
268
+ "111000110101111110101001001100011001111111101",
269
+ "111000110101111110101001001100011001111111110",
270
+ "111000110101111110101001001100011001111111111",
271
+ },
272
+ },
273
+ {
274
+ .lowerBound = -100,
275
+ .includeLowerBound = true,
276
+ .upperBound = -1,
277
+ .includeUpperBound = true,
278
+ .sparsity = 4,
279
+ .min = { .set = true, .value = -1000000000000000 },
280
+ .max = { .set = true, .value = 1024 },
281
+ .expectMincoverStrings = {
282
+ "111000110101111110101001001100011001111111100111",
283
+ "111000110101111110101001001100011001111111101000",
284
+ "111000110101111110101001001100011001111111101001",
285
+ "111000110101111110101001001100011001111111101010",
286
+ "111000110101111110101001001100011001111111101011",
287
+ "111000110101111110101001001100011001111111101100",
288
+ "111000110101111110101001001100011001111111101101",
289
+ "111000110101111110101001001100011001111111101110",
290
+ "111000110101111110101001001100011001111111101111",
291
+ "11100011010111111010100100110001100111111111",
292
+ },
293
+ },
294
+ {
295
+ .lowerBound = -100,
296
+ .includeLowerBound = true,
297
+ .upperBound = -1,
298
+ .includeUpperBound = true,
299
+ .sparsity = 1,
300
+ .min = { .set = true, .value = -1000000000000000 },
301
+ .max = { .set = true, .value = 8070450532247928832 },
302
+ .expectMincoverStrings = {
303
+ "0000000000000111000110101111110101001001100011001111111100111",
304
+ "0000000000000111000110101111110101001001100011001111111101",
305
+ "000000000000011100011010111111010100100110001100111111111",
306
+ },
307
+ },
308
+ {
309
+ .lowerBound = -100,
310
+ .includeLowerBound = true,
311
+ .upperBound = -1,
312
+ .includeUpperBound = true,
313
+ .sparsity = 2,
314
+ .min = { .set = true, .value = -1000000000000000 },
315
+ .max = { .set = true, .value = 8070450532247928832 },
316
+ .expectMincoverStrings = {
317
+ "00000000000001110001101011111101010010011000110011111111001110",
318
+ "00000000000001110001101011111101010010011000110011111111001111",
319
+ "0000000000000111000110101111110101001001100011001111111101",
320
+ "0000000000000111000110101111110101001001100011001111111110",
321
+ "0000000000000111000110101111110101001001100011001111111111",
322
+ },
323
+ },
324
+ {
325
+ .lowerBound = -100,
326
+ .includeLowerBound = true,
327
+ .upperBound = -1,
328
+ .includeUpperBound = true,
329
+ .sparsity = 3,
330
+ .min = { .set = true, .value = -1000000000000000 },
331
+ .max = { .set = true, .value = 8070450532247928832 },
332
+ .expectMincoverStrings = {
333
+ "000000000000011100011010111111010100100110001100111111110011100",
334
+ "000000000000011100011010111111010100100110001100111111110011101",
335
+ "000000000000011100011010111111010100100110001100111111110011110",
336
+ "000000000000011100011010111111010100100110001100111111110011111",
337
+ "000000000000011100011010111111010100100110001100111111110100",
338
+ "000000000000011100011010111111010100100110001100111111110101",
339
+ "000000000000011100011010111111010100100110001100111111110110",
340
+ "000000000000011100011010111111010100100110001100111111110111",
341
+ "000000000000011100011010111111010100100110001100111111111",
342
+ },
343
+ },
344
+ {
345
+ .lowerBound = -100,
346
+ .includeLowerBound = true,
347
+ .upperBound = 0,
348
+ .includeUpperBound = true,
349
+ .sparsity = 1,
350
+ .min = { .set = true, .value = -1000000000000000 },
351
+ .max = { .set = true, .value = 0 },
352
+ .expectMincoverStrings = {
353
+ "111000110101111110101001001100011001111111100111",
354
+ "111000110101111110101001001100011001111111101",
355
+ "11100011010111111010100100110001100111111111",
356
+ "11100011010111111010100100110001101000000000000000",
357
+ },
358
+ },
359
+ {
360
+ .lowerBound = -100,
361
+ .includeLowerBound = true,
362
+ .upperBound = 0,
363
+ .includeUpperBound = true,
364
+ .sparsity = 2,
365
+ .min = { .set = true, .value = -1000000000000000 },
366
+ .max = { .set = true, .value = 0 },
367
+ .expectMincoverStrings = {
368
+ "111000110101111110101001001100011001111111100111",
369
+ "1110001101011111101010010011000110011111111010",
370
+ "1110001101011111101010010011000110011111111011",
371
+ "11100011010111111010100100110001100111111111",
372
+ "11100011010111111010100100110001101000000000000000",
373
+ },
374
+ },
375
+ {
376
+ .lowerBound = -100,
377
+ .includeLowerBound = true,
378
+ .upperBound = 0,
379
+ .includeUpperBound = true,
380
+ .sparsity = 1,
381
+ .min = { .set = true, .value = -1000000000000000 },
382
+ .max = { .set = true, .value = 1024 },
383
+ .expectMincoverStrings = {
384
+ "111000110101111110101001001100011001111111100111",
385
+ "111000110101111110101001001100011001111111101",
386
+ "11100011010111111010100100110001100111111111",
387
+ "11100011010111111010100100110001101000000000000000",
388
+ },
389
+ },
390
+ {
391
+ .lowerBound = -100,
392
+ .includeLowerBound = true,
393
+ .upperBound = 0,
394
+ .includeUpperBound = true,
395
+ .sparsity = 2,
396
+ .min = { .set = true, .value = -1000000000000000 },
397
+ .max = { .set = true, .value = 1024 },
398
+ .expectMincoverStrings = {
399
+ "111000110101111110101001001100011001111111100111",
400
+ "1110001101011111101010010011000110011111111010",
401
+ "1110001101011111101010010011000110011111111011",
402
+ "11100011010111111010100100110001100111111111",
403
+ "11100011010111111010100100110001101000000000000000",
404
+ },
405
+ },
406
+ {
407
+ .lowerBound = -100,
408
+ .includeLowerBound = true,
409
+ .upperBound = 0,
410
+ .includeUpperBound = true,
411
+ .sparsity = 1,
412
+ .min = { .set = true, .value = -1000000000000000 },
413
+ .max = { .set = true, .value = 8070450532247928832 },
414
+ .expectMincoverStrings = {
415
+ "0000000000000111000110101111110101001001100011001111111100111",
416
+ "0000000000000111000110101111110101001001100011001111111101",
417
+ "000000000000011100011010111111010100100110001100111111111",
418
+ "000000000000011100011010111111010100100110001101000000000000000",
419
+ },
420
+ },
421
+ {
422
+ .lowerBound = -100,
423
+ .includeLowerBound = true,
424
+ .upperBound = 0,
425
+ .includeUpperBound = true,
426
+ .sparsity = 3,
427
+ .min = { .set = true, .value = -1000000000000000 },
428
+ .max = { .set = true, .value = 8070450532247928832 },
429
+ .expectMincoverStrings = {
430
+ "000000000000011100011010111111010100100110001100111111110011100",
431
+ "000000000000011100011010111111010100100110001100111111110011101",
432
+ "000000000000011100011010111111010100100110001100111111110011110",
433
+ "000000000000011100011010111111010100100110001100111111110011111",
434
+ "000000000000011100011010111111010100100110001100111111110100",
435
+ "000000000000011100011010111111010100100110001100111111110101",
436
+ "000000000000011100011010111111010100100110001100111111110110",
437
+ "000000000000011100011010111111010100100110001100111111110111",
438
+ "000000000000011100011010111111010100100110001100111111111",
439
+ "000000000000011100011010111111010100100110001101000000000000000",
440
+ },
441
+ },
442
+ {
443
+ .lowerBound = -100,
444
+ .includeLowerBound = true,
445
+ .upperBound = 823,
446
+ .includeUpperBound = true,
447
+ .sparsity = 1,
448
+ .min = { .set = true, .value = -1000000000000000 },
449
+ .max = { .set = true, .value = 1024 },
450
+ .expectMincoverStrings = {
451
+ "111000110101111110101001001100011001111111100111",
452
+ "111000110101111110101001001100011001111111101",
453
+ "11100011010111111010100100110001100111111111",
454
+ "11100011010111111010100100110001101000000",
455
+ "111000110101111110101001001100011010000010",
456
+ "111000110101111110101001001100011010000011000",
457
+ "1110001101011111101010010011000110100000110010",
458
+ "11100011010111111010100100110001101000001100110",
459
+ },
460
+ },
461
+ {
462
+ .lowerBound = -100,
463
+ .includeLowerBound = true,
464
+ .upperBound = 823,
465
+ .includeUpperBound = true,
466
+ .sparsity = 2,
467
+ .min = { .set = true, .value = -1000000000000000 },
468
+ .max = { .set = true, .value = 1024 },
469
+ .expectMincoverStrings = {
470
+ "111000110101111110101001001100011001111111100111",
471
+ "1110001101011111101010010011000110011111111010",
472
+ "1110001101011111101010010011000110011111111011",
473
+ "11100011010111111010100100110001100111111111",
474
+ "111000110101111110101001001100011010000000",
475
+ "111000110101111110101001001100011010000001",
476
+ "111000110101111110101001001100011010000010",
477
+ "1110001101011111101010010011000110100000110000",
478
+ "1110001101011111101010010011000110100000110001",
479
+ "1110001101011111101010010011000110100000110010",
480
+ "111000110101111110101001001100011010000011001100",
481
+ "111000110101111110101001001100011010000011001101",
482
+ },
483
+ },
484
+ {
485
+ .lowerBound = -100,
486
+ .includeLowerBound = true,
487
+ .upperBound = 823,
488
+ .includeUpperBound = true,
489
+ .sparsity = 3,
490
+ .min = { .set = true, .value = -1000000000000000 },
491
+ .max = { .set = true, .value = 1024 },
492
+ .expectMincoverStrings = {
493
+ "111000110101111110101001001100011001111111100111",
494
+ "111000110101111110101001001100011001111111101",
495
+ "111000110101111110101001001100011001111111110",
496
+ "111000110101111110101001001100011001111111111",
497
+ "111000110101111110101001001100011010000000",
498
+ "111000110101111110101001001100011010000001",
499
+ "111000110101111110101001001100011010000010",
500
+ "111000110101111110101001001100011010000011000",
501
+ "111000110101111110101001001100011010000011001000",
502
+ "111000110101111110101001001100011010000011001001",
503
+ "111000110101111110101001001100011010000011001010",
504
+ "111000110101111110101001001100011010000011001011",
505
+ "111000110101111110101001001100011010000011001100",
506
+ "111000110101111110101001001100011010000011001101",
507
+ },
508
+ },
509
+ {
510
+ .lowerBound = -100,
511
+ .includeLowerBound = true,
512
+ .upperBound = 823,
513
+ .includeUpperBound = true,
514
+ .sparsity = 4,
515
+ .min = { .set = true, .value = -1000000000000000 },
516
+ .max = { .set = true, .value = 1024 },
517
+ .expectMincoverStrings = {
518
+ "111000110101111110101001001100011001111111100111",
519
+ "111000110101111110101001001100011001111111101000",
520
+ "111000110101111110101001001100011001111111101001",
521
+ "111000110101111110101001001100011001111111101010",
522
+ "111000110101111110101001001100011001111111101011",
523
+ "111000110101111110101001001100011001111111101100",
524
+ "111000110101111110101001001100011001111111101101",
525
+ "111000110101111110101001001100011001111111101110",
526
+ "111000110101111110101001001100011001111111101111",
527
+ "11100011010111111010100100110001100111111111",
528
+ "11100011010111111010100100110001101000000000",
529
+ "11100011010111111010100100110001101000000001",
530
+ "11100011010111111010100100110001101000000010",
531
+ "11100011010111111010100100110001101000000011",
532
+ "11100011010111111010100100110001101000000100",
533
+ "11100011010111111010100100110001101000000101",
534
+ "11100011010111111010100100110001101000000110",
535
+ "11100011010111111010100100110001101000000111",
536
+ "11100011010111111010100100110001101000001000",
537
+ "11100011010111111010100100110001101000001001",
538
+ "11100011010111111010100100110001101000001010",
539
+ "11100011010111111010100100110001101000001011",
540
+ "111000110101111110101001001100011010000011000000",
541
+ "111000110101111110101001001100011010000011000001",
542
+ "111000110101111110101001001100011010000011000010",
543
+ "111000110101111110101001001100011010000011000011",
544
+ "111000110101111110101001001100011010000011000100",
545
+ "111000110101111110101001001100011010000011000101",
546
+ "111000110101111110101001001100011010000011000110",
547
+ "111000110101111110101001001100011010000011000111",
548
+ "111000110101111110101001001100011010000011001000",
549
+ "111000110101111110101001001100011010000011001001",
550
+ "111000110101111110101001001100011010000011001010",
551
+ "111000110101111110101001001100011010000011001011",
552
+ "111000110101111110101001001100011010000011001100",
553
+ "111000110101111110101001001100011010000011001101",
554
+ },
555
+ },
556
+ {
557
+ .lowerBound = -100,
558
+ .includeLowerBound = true,
559
+ .upperBound = 823,
560
+ .includeUpperBound = true,
561
+ .sparsity = 1,
562
+ .min = { .set = true, .value = -1000000000000000 },
563
+ .max = { .set = true, .value = 8070450532247928832 },
564
+ .expectMincoverStrings = {
565
+ "0000000000000111000110101111110101001001100011001111111100111",
566
+ "0000000000000111000110101111110101001001100011001111111101",
567
+ "000000000000011100011010111111010100100110001100111111111",
568
+ "000000000000011100011010111111010100100110001101000000",
569
+ "0000000000000111000110101111110101001001100011010000010",
570
+ "0000000000000111000110101111110101001001100011010000011000",
571
+ "00000000000001110001101011111101010010011000110100000110010",
572
+ "000000000000011100011010111111010100100110001101000001100110",
573
+ },
574
+ },
575
+ {
576
+ .lowerBound = -100,
577
+ .includeLowerBound = true,
578
+ .upperBound = 823,
579
+ .includeUpperBound = true,
580
+ .sparsity = 2,
581
+ .min = { .set = true, .value = -1000000000000000 },
582
+ .max = { .set = true, .value = 8070450532247928832 },
583
+ .expectMincoverStrings = {
584
+ "00000000000001110001101011111101010010011000110011111111001110",
585
+ "00000000000001110001101011111101010010011000110011111111001111",
586
+ "0000000000000111000110101111110101001001100011001111111101",
587
+ "0000000000000111000110101111110101001001100011001111111110",
588
+ "0000000000000111000110101111110101001001100011001111111111",
589
+ "000000000000011100011010111111010100100110001101000000",
590
+ "00000000000001110001101011111101010010011000110100000100",
591
+ "00000000000001110001101011111101010010011000110100000101",
592
+ "0000000000000111000110101111110101001001100011010000011000",
593
+ "000000000000011100011010111111010100100110001101000001100100",
594
+ "000000000000011100011010111111010100100110001101000001100101",
595
+ "000000000000011100011010111111010100100110001101000001100110",
596
+ },
597
+ },
598
+ {
599
+ .lowerBound = -100,
600
+ .includeLowerBound = true,
601
+ .upperBound = 823,
602
+ .includeUpperBound = true,
603
+ .sparsity = 3,
604
+ .min = { .set = true, .value = -1000000000000000 },
605
+ .max = { .set = true, .value = 8070450532247928832 },
606
+ .expectMincoverStrings = {
607
+ "000000000000011100011010111111010100100110001100111111110011100",
608
+ "000000000000011100011010111111010100100110001100111111110011101",
609
+ "000000000000011100011010111111010100100110001100111111110011110",
610
+ "000000000000011100011010111111010100100110001100111111110011111",
611
+ "000000000000011100011010111111010100100110001100111111110100",
612
+ "000000000000011100011010111111010100100110001100111111110101",
613
+ "000000000000011100011010111111010100100110001100111111110110",
614
+ "000000000000011100011010111111010100100110001100111111110111",
615
+ "000000000000011100011010111111010100100110001100111111111",
616
+ "000000000000011100011010111111010100100110001101000000",
617
+ "000000000000011100011010111111010100100110001101000001000",
618
+ "000000000000011100011010111111010100100110001101000001001",
619
+ "000000000000011100011010111111010100100110001101000001010",
620
+ "000000000000011100011010111111010100100110001101000001011",
621
+ "000000000000011100011010111111010100100110001101000001100000",
622
+ "000000000000011100011010111111010100100110001101000001100001",
623
+ "000000000000011100011010111111010100100110001101000001100010",
624
+ "000000000000011100011010111111010100100110001101000001100011",
625
+ "000000000000011100011010111111010100100110001101000001100100",
626
+ "000000000000011100011010111111010100100110001101000001100101",
627
+ "000000000000011100011010111111010100100110001101000001100110",
628
+ },
629
+ },
630
+ {
631
+ .lowerBound = -100,
632
+ .includeLowerBound = true,
633
+ .upperBound = 1024,
634
+ .includeUpperBound = true,
635
+ .sparsity = 1,
636
+ .min = { .set = true, .value = -1000000000000000 },
637
+ .max = { .set = true, .value = 1024 },
638
+ .expectMincoverStrings = {
639
+ "111000110101111110101001001100011001111111100111",
640
+ "111000110101111110101001001100011001111111101",
641
+ "11100011010111111010100100110001100111111111",
642
+ "1110001101011111101010010011000110100000",
643
+ "11100011010111111010100100110001101000010000000000",
644
+ },
645
+ },
646
+ {
647
+ .lowerBound = -100,
648
+ .includeLowerBound = true,
649
+ .upperBound = 1024,
650
+ .includeUpperBound = true,
651
+ .sparsity = 2,
652
+ .min = { .set = true, .value = -1000000000000000 },
653
+ .max = { .set = true, .value = 1024 },
654
+ .expectMincoverStrings = {
655
+ "111000110101111110101001001100011001111111100111",
656
+ "1110001101011111101010010011000110011111111010",
657
+ "1110001101011111101010010011000110011111111011",
658
+ "11100011010111111010100100110001100111111111",
659
+ "1110001101011111101010010011000110100000",
660
+ "11100011010111111010100100110001101000010000000000",
661
+ },
662
+ },
663
+ {
664
+ .lowerBound = -100,
665
+ .includeLowerBound = true,
666
+ .upperBound = 1024,
667
+ .includeUpperBound = true,
668
+ .sparsity = 1,
669
+ .min = { .set = true, .value = -1000000000000000 },
670
+ .max = { .set = true, .value = 8070450532247928832 },
671
+ .expectMincoverStrings = {
672
+ "0000000000000111000110101111110101001001100011001111111100111",
673
+ "0000000000000111000110101111110101001001100011001111111101",
674
+ "000000000000011100011010111111010100100110001100111111111",
675
+ "00000000000001110001101011111101010010011000110100000",
676
+ "000000000000011100011010111111010100100110001101000010000000000",
677
+ },
678
+ },
679
+ {
680
+ .lowerBound = -100,
681
+ .includeLowerBound = true,
682
+ .upperBound = 1024,
683
+ .includeUpperBound = true,
684
+ .sparsity = 3,
685
+ .min = { .set = true, .value = -1000000000000000 },
686
+ .max = { .set = true, .value = 8070450532247928832 },
687
+ .expectMincoverStrings = {
688
+ "000000000000011100011010111111010100100110001100111111110011100",
689
+ "000000000000011100011010111111010100100110001100111111110011101",
690
+ "000000000000011100011010111111010100100110001100111111110011110",
691
+ "000000000000011100011010111111010100100110001100111111110011111",
692
+ "000000000000011100011010111111010100100110001100111111110100",
693
+ "000000000000011100011010111111010100100110001100111111110101",
694
+ "000000000000011100011010111111010100100110001100111111110110",
695
+ "000000000000011100011010111111010100100110001100111111110111",
696
+ "000000000000011100011010111111010100100110001100111111111",
697
+ "000000000000011100011010111111010100100110001101000000",
698
+ "000000000000011100011010111111010100100110001101000001",
699
+ "000000000000011100011010111111010100100110001101000010000000000",
700
+ },
701
+ },
702
+ {
703
+ .lowerBound = -100,
704
+ .includeLowerBound = true,
705
+ .upperBound = 1879048192,
706
+ .includeUpperBound = true,
707
+ .sparsity = 1,
708
+ .min = { .set = true, .value = -1000000000000000 },
709
+ .max = { .set = true, .value = 8070450532247928832 },
710
+ .expectMincoverStrings = {
711
+ "0000000000000111000110101111110101001001100011001111111100111",
712
+ "0000000000000111000110101111110101001001100011001111111101",
713
+ "000000000000011100011010111111010100100110001100111111111",
714
+ "000000000000011100011010111111010100100110001101",
715
+ "00000000000001110001101011111101010010011000111",
716
+ "00000000000001110001101011111101010010011001",
717
+ "0000000000000111000110101111110101001001101",
718
+ "000000000000011100011010111111010100100111",
719
+ "000000000000011100011010111111010100101",
720
+ "00000000000001110001101011111101010011",
721
+ "000000000000011100011010111111010101",
722
+ "00000000000001110001101011111101011",
723
+ "000000000000011100011010111111011",
724
+ "00000000000001110001101011111110000",
725
+ "0000000000000111000110101111111000100",
726
+ "0000000000000111000110101111111000101000",
727
+ "00000000000001110001101011111110001010010",
728
+ "000000000000011100011010111111100010100110000",
729
+ "0000000000000111000110101111111000101001100010",
730
+ "000000000000011100011010111111100010100110001100",
731
+ "000000000000011100011010111111100010100110001101000000000000000",
732
+ },
733
+ },
734
+ {
735
+ .lowerBound = -100,
736
+ .includeLowerBound = true,
737
+ .upperBound = 1879048192,
738
+ .includeUpperBound = true,
739
+ .sparsity = 3,
740
+ .min = { .set = true, .value = -1000000000000000 },
741
+ .max = { .set = true, .value = 8070450532247928832 },
742
+ .expectMincoverStrings = {
743
+ "000000000000011100011010111111010100100110001100111111110011100",
744
+ "000000000000011100011010111111010100100110001100111111110011101",
745
+ "000000000000011100011010111111010100100110001100111111110011110",
746
+ "000000000000011100011010111111010100100110001100111111110011111",
747
+ "000000000000011100011010111111010100100110001100111111110100",
748
+ "000000000000011100011010111111010100100110001100111111110101",
749
+ "000000000000011100011010111111010100100110001100111111110110",
750
+ "000000000000011100011010111111010100100110001100111111110111",
751
+ "000000000000011100011010111111010100100110001100111111111",
752
+ "000000000000011100011010111111010100100110001101",
753
+ "000000000000011100011010111111010100100110001110",
754
+ "000000000000011100011010111111010100100110001111",
755
+ "000000000000011100011010111111010100100110010",
756
+ "000000000000011100011010111111010100100110011",
757
+ "000000000000011100011010111111010100100110100",
758
+ "000000000000011100011010111111010100100110101",
759
+ "000000000000011100011010111111010100100110110",
760
+ "000000000000011100011010111111010100100110111",
761
+ "000000000000011100011010111111010100100111",
762
+ "000000000000011100011010111111010100101",
763
+ "000000000000011100011010111111010100110",
764
+ "000000000000011100011010111111010100111",
765
+ "000000000000011100011010111111010101",
766
+ "000000000000011100011010111111010110",
767
+ "000000000000011100011010111111010111",
768
+ "000000000000011100011010111111011",
769
+ "000000000000011100011010111111100000",
770
+ "000000000000011100011010111111100001",
771
+ "000000000000011100011010111111100010000",
772
+ "000000000000011100011010111111100010001",
773
+ "000000000000011100011010111111100010010",
774
+ "000000000000011100011010111111100010011",
775
+ "000000000000011100011010111111100010100000",
776
+ "000000000000011100011010111111100010100001",
777
+ "000000000000011100011010111111100010100010",
778
+ "000000000000011100011010111111100010100011",
779
+ "000000000000011100011010111111100010100100",
780
+ "000000000000011100011010111111100010100101",
781
+ "000000000000011100011010111111100010100110000",
782
+ "000000000000011100011010111111100010100110001000",
783
+ "000000000000011100011010111111100010100110001001",
784
+ "000000000000011100011010111111100010100110001010",
785
+ "000000000000011100011010111111100010100110001011",
786
+ "000000000000011100011010111111100010100110001100",
787
+ "000000000000011100011010111111100010100110001101000000000000000",
788
+ },
789
+ },
790
+ {
791
+ .lowerBound = -1,
792
+ .includeLowerBound = true,
793
+ .upperBound = -1,
794
+ .includeUpperBound = true,
795
+ .sparsity = 1,
796
+ .min = { .set = true, .value = -1000000000000000 },
797
+ .max = { .set = true, .value = -1 },
798
+ .expectMincoverStrings = {
799
+ "11100011010111111010100100110001100111111111111111",
800
+ },
801
+ },
802
+ {
803
+ .lowerBound = -1,
804
+ .includeLowerBound = true,
805
+ .upperBound = -1,
806
+ .includeUpperBound = true,
807
+ .sparsity = 2,
808
+ .min = { .set = true, .value = -1000000000000000 },
809
+ .max = { .set = true, .value = -1 },
810
+ .expectMincoverStrings = {
811
+ "11100011010111111010100100110001100111111111111111",
812
+ },
813
+ },
814
+ {
815
+ .lowerBound = -1,
816
+ .includeLowerBound = true,
817
+ .upperBound = -1,
818
+ .includeUpperBound = true,
819
+ .sparsity = 1,
820
+ .min = { .set = true, .value = -1000000000000000 },
821
+ .max = { .set = true, .value = 0 },
822
+ .expectMincoverStrings = {
823
+ "11100011010111111010100100110001100111111111111111",
824
+ },
825
+ },
826
+ {
827
+ .lowerBound = -1,
828
+ .includeLowerBound = true,
829
+ .upperBound = -1,
830
+ .includeUpperBound = true,
831
+ .sparsity = 2,
832
+ .min = { .set = true, .value = -1000000000000000 },
833
+ .max = { .set = true, .value = 0 },
834
+ .expectMincoverStrings = {
835
+ "11100011010111111010100100110001100111111111111111",
836
+ },
837
+ },
838
+ {
839
+ .lowerBound = -1,
840
+ .includeLowerBound = true,
841
+ .upperBound = -1,
842
+ .includeUpperBound = true,
843
+ .sparsity = 1,
844
+ .min = { .set = true, .value = -1000000000000000 },
845
+ .max = { .set = true, .value = 1024 },
846
+ .expectMincoverStrings = {
847
+ "11100011010111111010100100110001100111111111111111",
848
+ },
849
+ },
850
+ {
851
+ .lowerBound = -1,
852
+ .includeLowerBound = true,
853
+ .upperBound = -1,
854
+ .includeUpperBound = true,
855
+ .sparsity = 2,
856
+ .min = { .set = true, .value = -1000000000000000 },
857
+ .max = { .set = true, .value = 1024 },
858
+ .expectMincoverStrings = {
859
+ "11100011010111111010100100110001100111111111111111",
860
+ },
861
+ },
862
+ {
863
+ .lowerBound = -1,
864
+ .includeLowerBound = true,
865
+ .upperBound = -1,
866
+ .includeUpperBound = true,
867
+ .sparsity = 1,
868
+ .min = { .set = true, .value = -1000000000000000 },
869
+ .max = { .set = true, .value = 8070450532247928832 },
870
+ .expectMincoverStrings = {
871
+ "000000000000011100011010111111010100100110001100111111111111111",
872
+ },
873
+ },
874
+ {
875
+ .lowerBound = -1,
876
+ .includeLowerBound = true,
877
+ .upperBound = -1,
878
+ .includeUpperBound = true,
879
+ .sparsity = 3,
880
+ .min = { .set = true, .value = -1000000000000000 },
881
+ .max = { .set = true, .value = 8070450532247928832 },
882
+ .expectMincoverStrings = {
883
+ "000000000000011100011010111111010100100110001100111111111111111",
884
+ },
885
+ },
886
+ {
887
+ .lowerBound = -1,
888
+ .includeLowerBound = true,
889
+ .upperBound = -1,
890
+ .includeUpperBound = true,
891
+ .sparsity = 1,
892
+ .min = { .set = true, .value = -1 },
893
+ .max = { .set = true, .value = 0 },
894
+ .expectMincoverStrings = {
895
+ "0",
896
+ },
897
+ },
898
+ {
899
+ .lowerBound = -1,
900
+ .includeLowerBound = true,
901
+ .upperBound = -1,
902
+ .includeUpperBound = true,
903
+ .sparsity = 1,
904
+ .min = { .set = true, .value = -1 },
905
+ .max = { .set = true, .value = 1024 },
906
+ .expectMincoverStrings = {
907
+ "00000000000",
908
+ },
909
+ },
910
+ {
911
+ .lowerBound = -1,
912
+ .includeLowerBound = true,
913
+ .upperBound = -1,
914
+ .includeUpperBound = true,
915
+ .sparsity = 1,
916
+ .min = { .set = true, .value = -1 },
917
+ .max = { .set = true, .value = 8070450532247928832 },
918
+ .expectMincoverStrings = {
919
+ "000000000000000000000000000000000000000000000000000000000000000",
920
+ },
921
+ },
922
+ {
923
+ .lowerBound = -1,
924
+ .includeLowerBound = true,
925
+ .upperBound = -1,
926
+ .includeUpperBound = true,
927
+ .sparsity = 3,
928
+ .min = { .set = true, .value = -1 },
929
+ .max = { .set = true, .value = 8070450532247928832 },
930
+ .expectMincoverStrings = {
931
+ "000000000000000000000000000000000000000000000000000000000000000",
932
+ },
933
+ },
934
+ {
935
+ .lowerBound = -1,
936
+ .includeLowerBound = true,
937
+ .upperBound = 0,
938
+ .includeUpperBound = true,
939
+ .sparsity = 1,
940
+ .min = { .set = true, .value = -1000000000000000 },
941
+ .max = { .set = true, .value = 0 },
942
+ .expectMincoverStrings = {
943
+ "11100011010111111010100100110001100111111111111111",
944
+ "11100011010111111010100100110001101000000000000000",
945
+ },
946
+ },
947
+ {
948
+ .lowerBound = -1,
949
+ .includeLowerBound = true,
950
+ .upperBound = 0,
951
+ .includeUpperBound = true,
952
+ .sparsity = 2,
953
+ .min = { .set = true, .value = -1000000000000000 },
954
+ .max = { .set = true, .value = 0 },
955
+ .expectMincoverStrings = {
956
+ "11100011010111111010100100110001100111111111111111",
957
+ "11100011010111111010100100110001101000000000000000",
958
+ },
959
+ },
960
+ {
961
+ .lowerBound = -1,
962
+ .includeLowerBound = true,
963
+ .upperBound = 0,
964
+ .includeUpperBound = true,
965
+ .sparsity = 1,
966
+ .min = { .set = true, .value = -1000000000000000 },
967
+ .max = { .set = true, .value = 1024 },
968
+ .expectMincoverStrings = {
969
+ "11100011010111111010100100110001100111111111111111",
970
+ "11100011010111111010100100110001101000000000000000",
971
+ },
972
+ },
973
+ {
974
+ .lowerBound = -1,
975
+ .includeLowerBound = true,
976
+ .upperBound = 0,
977
+ .includeUpperBound = true,
978
+ .sparsity = 2,
979
+ .min = { .set = true, .value = -1000000000000000 },
980
+ .max = { .set = true, .value = 1024 },
981
+ .expectMincoverStrings = {
982
+ "11100011010111111010100100110001100111111111111111",
983
+ "11100011010111111010100100110001101000000000000000",
984
+ },
985
+ },
986
+ {
987
+ .lowerBound = -1,
988
+ .includeLowerBound = true,
989
+ .upperBound = 0,
990
+ .includeUpperBound = true,
991
+ .sparsity = 1,
992
+ .min = { .set = true, .value = -1000000000000000 },
993
+ .max = { .set = true, .value = 8070450532247928832 },
994
+ .expectMincoverStrings = {
995
+ "000000000000011100011010111111010100100110001100111111111111111",
996
+ "000000000000011100011010111111010100100110001101000000000000000",
997
+ },
998
+ },
999
+ {
1000
+ .lowerBound = -1,
1001
+ .includeLowerBound = true,
1002
+ .upperBound = 0,
1003
+ .includeUpperBound = true,
1004
+ .sparsity = 3,
1005
+ .min = { .set = true, .value = -1000000000000000 },
1006
+ .max = { .set = true, .value = 8070450532247928832 },
1007
+ .expectMincoverStrings = {
1008
+ "000000000000011100011010111111010100100110001100111111111111111",
1009
+ "000000000000011100011010111111010100100110001101000000000000000",
1010
+ },
1011
+ },
1012
+ {
1013
+ .lowerBound = -1,
1014
+ .includeLowerBound = true,
1015
+ .upperBound = 0,
1016
+ .includeUpperBound = true,
1017
+ .sparsity = 1,
1018
+ .min = { .set = true, .value = -1 },
1019
+ .max = { .set = true, .value = 0 },
1020
+ .expectMincoverStrings = {
1021
+ "root",
1022
+ },
1023
+ },
1024
+ {
1025
+ .lowerBound = -1,
1026
+ .includeLowerBound = true,
1027
+ .upperBound = 0,
1028
+ .includeUpperBound = true,
1029
+ .sparsity = 2,
1030
+ .min = { .set = true, .value = -1 },
1031
+ .max = { .set = true, .value = 0 },
1032
+ .expectMincoverStrings = {
1033
+ "root",
1034
+ },
1035
+ },
1036
+ {
1037
+ .lowerBound = -1,
1038
+ .includeLowerBound = true,
1039
+ .upperBound = 0,
1040
+ .includeUpperBound = true,
1041
+ .sparsity = 3,
1042
+ .min = { .set = true, .value = -1 },
1043
+ .max = { .set = true, .value = 0 },
1044
+ .expectMincoverStrings = {
1045
+ "root",
1046
+ },
1047
+ },
1048
+ {
1049
+ .lowerBound = -1,
1050
+ .includeLowerBound = true,
1051
+ .upperBound = 0,
1052
+ .includeUpperBound = true,
1053
+ .sparsity = 4,
1054
+ .min = { .set = true, .value = -1 },
1055
+ .max = { .set = true, .value = 0 },
1056
+ .expectMincoverStrings = {
1057
+ "root",
1058
+ },
1059
+ },
1060
+ {
1061
+ .lowerBound = -1,
1062
+ .includeLowerBound = true,
1063
+ .upperBound = 0,
1064
+ .includeUpperBound = true,
1065
+ .sparsity = 1,
1066
+ .min = { .set = true, .value = -1 },
1067
+ .max = { .set = true, .value = 1024 },
1068
+ .expectMincoverStrings = {
1069
+ "0000000000",
1070
+ },
1071
+ },
1072
+ {
1073
+ .lowerBound = -1,
1074
+ .includeLowerBound = true,
1075
+ .upperBound = 0,
1076
+ .includeUpperBound = true,
1077
+ .sparsity = 2,
1078
+ .min = { .set = true, .value = -1 },
1079
+ .max = { .set = true, .value = 1024 },
1080
+ .expectMincoverStrings = {
1081
+ "0000000000",
1082
+ },
1083
+ },
1084
+ {
1085
+ .lowerBound = -1,
1086
+ .includeLowerBound = true,
1087
+ .upperBound = 0,
1088
+ .includeUpperBound = true,
1089
+ .sparsity = 1,
1090
+ .min = { .set = true, .value = -1 },
1091
+ .max = { .set = true, .value = 8070450532247928832 },
1092
+ .expectMincoverStrings = {
1093
+ "00000000000000000000000000000000000000000000000000000000000000",
1094
+ },
1095
+ },
1096
+ {
1097
+ .lowerBound = -1,
1098
+ .includeLowerBound = true,
1099
+ .upperBound = 0,
1100
+ .includeUpperBound = true,
1101
+ .sparsity = 2,
1102
+ .min = { .set = true, .value = -1 },
1103
+ .max = { .set = true, .value = 8070450532247928832 },
1104
+ .expectMincoverStrings = {
1105
+ "00000000000000000000000000000000000000000000000000000000000000",
1106
+ },
1107
+ },
1108
+ {
1109
+ .lowerBound = -1,
1110
+ .includeLowerBound = true,
1111
+ .upperBound = 0,
1112
+ .includeUpperBound = true,
1113
+ .sparsity = 3,
1114
+ .min = { .set = true, .value = -1 },
1115
+ .max = { .set = true, .value = 8070450532247928832 },
1116
+ .expectMincoverStrings = {
1117
+ "000000000000000000000000000000000000000000000000000000000000000",
1118
+ "000000000000000000000000000000000000000000000000000000000000001",
1119
+ },
1120
+ },
1121
+ {
1122
+ .lowerBound = -1,
1123
+ .includeLowerBound = true,
1124
+ .upperBound = 823,
1125
+ .includeUpperBound = true,
1126
+ .sparsity = 1,
1127
+ .min = { .set = true, .value = -1000000000000000 },
1128
+ .max = { .set = true, .value = 1024 },
1129
+ .expectMincoverStrings = {
1130
+ "11100011010111111010100100110001100111111111111111",
1131
+ "11100011010111111010100100110001101000000",
1132
+ "111000110101111110101001001100011010000010",
1133
+ "111000110101111110101001001100011010000011000",
1134
+ "1110001101011111101010010011000110100000110010",
1135
+ "11100011010111111010100100110001101000001100110",
1136
+ },
1137
+ },
1138
+ {
1139
+ .lowerBound = -1,
1140
+ .includeLowerBound = true,
1141
+ .upperBound = 823,
1142
+ .includeUpperBound = true,
1143
+ .sparsity = 2,
1144
+ .min = { .set = true, .value = -1000000000000000 },
1145
+ .max = { .set = true, .value = 1024 },
1146
+ .expectMincoverStrings = {
1147
+ "11100011010111111010100100110001100111111111111111",
1148
+ "111000110101111110101001001100011010000000",
1149
+ "111000110101111110101001001100011010000001",
1150
+ "111000110101111110101001001100011010000010",
1151
+ "1110001101011111101010010011000110100000110000",
1152
+ "1110001101011111101010010011000110100000110001",
1153
+ "1110001101011111101010010011000110100000110010",
1154
+ "111000110101111110101001001100011010000011001100",
1155
+ "111000110101111110101001001100011010000011001101",
1156
+ },
1157
+ },
1158
+ {
1159
+ .lowerBound = -1,
1160
+ .includeLowerBound = true,
1161
+ .upperBound = 823,
1162
+ .includeUpperBound = true,
1163
+ .sparsity = 1,
1164
+ .min = { .set = true, .value = -1000000000000000 },
1165
+ .max = { .set = true, .value = 8070450532247928832 },
1166
+ .expectMincoverStrings = {
1167
+ "000000000000011100011010111111010100100110001100111111111111111",
1168
+ "000000000000011100011010111111010100100110001101000000",
1169
+ "0000000000000111000110101111110101001001100011010000010",
1170
+ "0000000000000111000110101111110101001001100011010000011000",
1171
+ "00000000000001110001101011111101010010011000110100000110010",
1172
+ "000000000000011100011010111111010100100110001101000001100110",
1173
+ },
1174
+ },
1175
+ {
1176
+ .lowerBound = -1,
1177
+ .includeLowerBound = true,
1178
+ .upperBound = 823,
1179
+ .includeUpperBound = true,
1180
+ .sparsity = 3,
1181
+ .min = { .set = true, .value = -1000000000000000 },
1182
+ .max = { .set = true, .value = 8070450532247928832 },
1183
+ .expectMincoverStrings = {
1184
+ "000000000000011100011010111111010100100110001100111111111111111",
1185
+ "000000000000011100011010111111010100100110001101000000",
1186
+ "000000000000011100011010111111010100100110001101000001000",
1187
+ "000000000000011100011010111111010100100110001101000001001",
1188
+ "000000000000011100011010111111010100100110001101000001010",
1189
+ "000000000000011100011010111111010100100110001101000001011",
1190
+ "000000000000011100011010111111010100100110001101000001100000",
1191
+ "000000000000011100011010111111010100100110001101000001100001",
1192
+ "000000000000011100011010111111010100100110001101000001100010",
1193
+ "000000000000011100011010111111010100100110001101000001100011",
1194
+ "000000000000011100011010111111010100100110001101000001100100",
1195
+ "000000000000011100011010111111010100100110001101000001100101",
1196
+ "000000000000011100011010111111010100100110001101000001100110",
1197
+ },
1198
+ },
1199
+ {
1200
+ .lowerBound = -1,
1201
+ .includeLowerBound = true,
1202
+ .upperBound = 823,
1203
+ .includeUpperBound = true,
1204
+ .sparsity = 1,
1205
+ .min = { .set = true, .value = -1 },
1206
+ .max = { .set = true, .value = 1024 },
1207
+ .expectMincoverStrings = {
1208
+ "00",
1209
+ "010",
1210
+ "011000",
1211
+ "0110010",
1212
+ "01100110",
1213
+ "01100111000",
1214
+ },
1215
+ },
1216
+ {
1217
+ .lowerBound = -1,
1218
+ .includeLowerBound = true,
1219
+ .upperBound = 823,
1220
+ .includeUpperBound = true,
1221
+ .sparsity = 1,
1222
+ .min = { .set = true, .value = -1 },
1223
+ .max = { .set = true, .value = 8070450532247928832 },
1224
+ .expectMincoverStrings = {
1225
+ "000000000000000000000000000000000000000000000000000000",
1226
+ "0000000000000000000000000000000000000000000000000000010",
1227
+ "0000000000000000000000000000000000000000000000000000011000",
1228
+ "00000000000000000000000000000000000000000000000000000110010",
1229
+ "000000000000000000000000000000000000000000000000000001100110",
1230
+ "000000000000000000000000000000000000000000000000000001100111000",
1231
+ },
1232
+ },
1233
+ {
1234
+ .lowerBound = -1,
1235
+ .includeLowerBound = true,
1236
+ .upperBound = 823,
1237
+ .includeUpperBound = true,
1238
+ .sparsity = 3,
1239
+ .min = { .set = true, .value = -1 },
1240
+ .max = { .set = true, .value = 8070450532247928832 },
1241
+ .expectMincoverStrings = {
1242
+ "000000000000000000000000000000000000000000000000000000",
1243
+ "000000000000000000000000000000000000000000000000000001000",
1244
+ "000000000000000000000000000000000000000000000000000001001",
1245
+ "000000000000000000000000000000000000000000000000000001010",
1246
+ "000000000000000000000000000000000000000000000000000001011",
1247
+ "000000000000000000000000000000000000000000000000000001100000",
1248
+ "000000000000000000000000000000000000000000000000000001100001",
1249
+ "000000000000000000000000000000000000000000000000000001100010",
1250
+ "000000000000000000000000000000000000000000000000000001100011",
1251
+ "000000000000000000000000000000000000000000000000000001100100",
1252
+ "000000000000000000000000000000000000000000000000000001100101",
1253
+ "000000000000000000000000000000000000000000000000000001100110",
1254
+ "000000000000000000000000000000000000000000000000000001100111000",
1255
+ },
1256
+ },
1257
+ {
1258
+ .lowerBound = -1,
1259
+ .includeLowerBound = true,
1260
+ .upperBound = 1024,
1261
+ .includeUpperBound = true,
1262
+ .sparsity = 1,
1263
+ .min = { .set = true, .value = -1000000000000000 },
1264
+ .max = { .set = true, .value = 1024 },
1265
+ .expectMincoverStrings = {
1266
+ "11100011010111111010100100110001100111111111111111",
1267
+ "1110001101011111101010010011000110100000",
1268
+ "11100011010111111010100100110001101000010000000000",
1269
+ },
1270
+ },
1271
+ {
1272
+ .lowerBound = -1,
1273
+ .includeLowerBound = true,
1274
+ .upperBound = 1024,
1275
+ .includeUpperBound = true,
1276
+ .sparsity = 2,
1277
+ .min = { .set = true, .value = -1000000000000000 },
1278
+ .max = { .set = true, .value = 1024 },
1279
+ .expectMincoverStrings = {
1280
+ "11100011010111111010100100110001100111111111111111",
1281
+ "1110001101011111101010010011000110100000",
1282
+ "11100011010111111010100100110001101000010000000000",
1283
+ },
1284
+ },
1285
+ {
1286
+ .lowerBound = -1,
1287
+ .includeLowerBound = true,
1288
+ .upperBound = 1024,
1289
+ .includeUpperBound = true,
1290
+ .sparsity = 1,
1291
+ .min = { .set = true, .value = -1000000000000000 },
1292
+ .max = { .set = true, .value = 8070450532247928832 },
1293
+ .expectMincoverStrings = {
1294
+ "000000000000011100011010111111010100100110001100111111111111111",
1295
+ "00000000000001110001101011111101010010011000110100000",
1296
+ "000000000000011100011010111111010100100110001101000010000000000",
1297
+ },
1298
+ },
1299
+ {
1300
+ .lowerBound = -1,
1301
+ .includeLowerBound = true,
1302
+ .upperBound = 1024,
1303
+ .includeUpperBound = true,
1304
+ .sparsity = 3,
1305
+ .min = { .set = true, .value = -1000000000000000 },
1306
+ .max = { .set = true, .value = 8070450532247928832 },
1307
+ .expectMincoverStrings = {
1308
+ "000000000000011100011010111111010100100110001100111111111111111",
1309
+ "000000000000011100011010111111010100100110001101000000",
1310
+ "000000000000011100011010111111010100100110001101000001",
1311
+ "000000000000011100011010111111010100100110001101000010000000000",
1312
+ },
1313
+ },
1314
+ {
1315
+ .lowerBound = -1,
1316
+ .includeLowerBound = true,
1317
+ .upperBound = 1024,
1318
+ .includeUpperBound = true,
1319
+ .sparsity = 1,
1320
+ .min = { .set = true, .value = -1 },
1321
+ .max = { .set = true, .value = 1024 },
1322
+ .expectMincoverStrings = {
1323
+ "0",
1324
+ "1000000000",
1325
+ },
1326
+ },
1327
+ {
1328
+ .lowerBound = -1,
1329
+ .includeLowerBound = true,
1330
+ .upperBound = 1024,
1331
+ .includeUpperBound = true,
1332
+ .sparsity = 2,
1333
+ .min = { .set = true, .value = -1 },
1334
+ .max = { .set = true, .value = 1024 },
1335
+ .expectMincoverStrings = {
1336
+ "00",
1337
+ "01",
1338
+ "1000000000",
1339
+ },
1340
+ },
1341
+ {
1342
+ .lowerBound = -1,
1343
+ .includeLowerBound = true,
1344
+ .upperBound = 1024,
1345
+ .includeUpperBound = true,
1346
+ .sparsity = 1,
1347
+ .min = { .set = true, .value = -1 },
1348
+ .max = { .set = true, .value = 8070450532247928832 },
1349
+ .expectMincoverStrings = {
1350
+ "00000000000000000000000000000000000000000000000000000",
1351
+ "00000000000000000000000000000000000000000000000000001000000000",
1352
+ },
1353
+ },
1354
+ {
1355
+ .lowerBound = -1,
1356
+ .includeLowerBound = true,
1357
+ .upperBound = 1024,
1358
+ .includeUpperBound = true,
1359
+ .sparsity = 2,
1360
+ .min = { .set = true, .value = -1 },
1361
+ .max = { .set = true, .value = 8070450532247928832 },
1362
+ .expectMincoverStrings = {
1363
+ "000000000000000000000000000000000000000000000000000000",
1364
+ "000000000000000000000000000000000000000000000000000001",
1365
+ "00000000000000000000000000000000000000000000000000001000000000",
1366
+ },
1367
+ },
1368
+ {
1369
+ .lowerBound = -1,
1370
+ .includeLowerBound = true,
1371
+ .upperBound = 1024,
1372
+ .includeUpperBound = true,
1373
+ .sparsity = 3,
1374
+ .min = { .set = true, .value = -1 },
1375
+ .max = { .set = true, .value = 8070450532247928832 },
1376
+ .expectMincoverStrings = {
1377
+ "000000000000000000000000000000000000000000000000000000",
1378
+ "000000000000000000000000000000000000000000000000000001",
1379
+ "000000000000000000000000000000000000000000000000000010000000000",
1380
+ "000000000000000000000000000000000000000000000000000010000000001",
1381
+ },
1382
+ },
1383
+ {
1384
+ .lowerBound = -1,
1385
+ .includeLowerBound = true,
1386
+ .upperBound = 1879048192,
1387
+ .includeUpperBound = true,
1388
+ .sparsity = 1,
1389
+ .min = { .set = true, .value = -1000000000000000 },
1390
+ .max = { .set = true, .value = 8070450532247928832 },
1391
+ .expectMincoverStrings = {
1392
+ "000000000000011100011010111111010100100110001100111111111111111",
1393
+ "000000000000011100011010111111010100100110001101",
1394
+ "00000000000001110001101011111101010010011000111",
1395
+ "00000000000001110001101011111101010010011001",
1396
+ "0000000000000111000110101111110101001001101",
1397
+ "000000000000011100011010111111010100100111",
1398
+ "000000000000011100011010111111010100101",
1399
+ "00000000000001110001101011111101010011",
1400
+ "000000000000011100011010111111010101",
1401
+ "00000000000001110001101011111101011",
1402
+ "000000000000011100011010111111011",
1403
+ "00000000000001110001101011111110000",
1404
+ "0000000000000111000110101111111000100",
1405
+ "0000000000000111000110101111111000101000",
1406
+ "00000000000001110001101011111110001010010",
1407
+ "000000000000011100011010111111100010100110000",
1408
+ "0000000000000111000110101111111000101001100010",
1409
+ "000000000000011100011010111111100010100110001100",
1410
+ "000000000000011100011010111111100010100110001101000000000000000",
1411
+ },
1412
+ },
1413
+ {
1414
+ .lowerBound = -1,
1415
+ .includeLowerBound = true,
1416
+ .upperBound = 1879048192,
1417
+ .includeUpperBound = true,
1418
+ .sparsity = 3,
1419
+ .min = { .set = true, .value = -1000000000000000 },
1420
+ .max = { .set = true, .value = 8070450532247928832 },
1421
+ .expectMincoverStrings = {
1422
+ "000000000000011100011010111111010100100110001100111111111111111",
1423
+ "000000000000011100011010111111010100100110001101",
1424
+ "000000000000011100011010111111010100100110001110",
1425
+ "000000000000011100011010111111010100100110001111",
1426
+ "000000000000011100011010111111010100100110010",
1427
+ "000000000000011100011010111111010100100110011",
1428
+ "000000000000011100011010111111010100100110100",
1429
+ "000000000000011100011010111111010100100110101",
1430
+ "000000000000011100011010111111010100100110110",
1431
+ "000000000000011100011010111111010100100110111",
1432
+ "000000000000011100011010111111010100100111",
1433
+ "000000000000011100011010111111010100101",
1434
+ "000000000000011100011010111111010100110",
1435
+ "000000000000011100011010111111010100111",
1436
+ "000000000000011100011010111111010101",
1437
+ "000000000000011100011010111111010110",
1438
+ "000000000000011100011010111111010111",
1439
+ "000000000000011100011010111111011",
1440
+ "000000000000011100011010111111100000",
1441
+ "000000000000011100011010111111100001",
1442
+ "000000000000011100011010111111100010000",
1443
+ "000000000000011100011010111111100010001",
1444
+ "000000000000011100011010111111100010010",
1445
+ "000000000000011100011010111111100010011",
1446
+ "000000000000011100011010111111100010100000",
1447
+ "000000000000011100011010111111100010100001",
1448
+ "000000000000011100011010111111100010100010",
1449
+ "000000000000011100011010111111100010100011",
1450
+ "000000000000011100011010111111100010100100",
1451
+ "000000000000011100011010111111100010100101",
1452
+ "000000000000011100011010111111100010100110000",
1453
+ "000000000000011100011010111111100010100110001000",
1454
+ "000000000000011100011010111111100010100110001001",
1455
+ "000000000000011100011010111111100010100110001010",
1456
+ "000000000000011100011010111111100010100110001011",
1457
+ "000000000000011100011010111111100010100110001100",
1458
+ "000000000000011100011010111111100010100110001101000000000000000",
1459
+ },
1460
+ },
1461
+ {
1462
+ .lowerBound = -1,
1463
+ .includeLowerBound = true,
1464
+ .upperBound = 1879048192,
1465
+ .includeUpperBound = true,
1466
+ .sparsity = 1,
1467
+ .min = { .set = true, .value = -1 },
1468
+ .max = { .set = true, .value = 8070450532247928832 },
1469
+ .expectMincoverStrings = {
1470
+ "000000000000000000000000000000000",
1471
+ "0000000000000000000000000000000010",
1472
+ "00000000000000000000000000000000110",
1473
+ "00000000000000000000000000000000111000000000000000000000000000",
1474
+ },
1475
+ },
1476
+ {
1477
+ .lowerBound = -1,
1478
+ .includeLowerBound = true,
1479
+ .upperBound = 1879048192,
1480
+ .includeUpperBound = true,
1481
+ .sparsity = 2,
1482
+ .min = { .set = true, .value = -1 },
1483
+ .max = { .set = true, .value = 8070450532247928832 },
1484
+ .expectMincoverStrings = {
1485
+ "0000000000000000000000000000000000",
1486
+ "0000000000000000000000000000000001",
1487
+ "0000000000000000000000000000000010",
1488
+ "000000000000000000000000000000001100",
1489
+ "000000000000000000000000000000001101",
1490
+ "00000000000000000000000000000000111000000000000000000000000000",
1491
+ },
1492
+ },
1493
+ {
1494
+ .lowerBound = -1,
1495
+ .includeLowerBound = true,
1496
+ .upperBound = 1879048192,
1497
+ .includeUpperBound = true,
1498
+ .sparsity = 3,
1499
+ .min = { .set = true, .value = -1 },
1500
+ .max = { .set = true, .value = 8070450532247928832 },
1501
+ .expectMincoverStrings = {
1502
+ "000000000000000000000000000000000",
1503
+ "000000000000000000000000000000001000",
1504
+ "000000000000000000000000000000001001",
1505
+ "000000000000000000000000000000001010",
1506
+ "000000000000000000000000000000001011",
1507
+ "000000000000000000000000000000001100",
1508
+ "000000000000000000000000000000001101",
1509
+ "000000000000000000000000000000001110000000000000000000000000000",
1510
+ "000000000000000000000000000000001110000000000000000000000000001",
1511
+ },
1512
+ },
1513
+ {
1514
+ .lowerBound = 0,
1515
+ .includeLowerBound = true,
1516
+ .upperBound = 0,
1517
+ .includeUpperBound = true,
1518
+ .sparsity = 1,
1519
+ .min = { .set = true, .value = -1000000000000000 },
1520
+ .max = { .set = true, .value = 0 },
1521
+ .expectMincoverStrings = {
1522
+ "11100011010111111010100100110001101000000000000000",
1523
+ },
1524
+ },
1525
+ {
1526
+ .lowerBound = 0,
1527
+ .includeLowerBound = true,
1528
+ .upperBound = 0,
1529
+ .includeUpperBound = true,
1530
+ .sparsity = 2,
1531
+ .min = { .set = true, .value = -1000000000000000 },
1532
+ .max = { .set = true, .value = 0 },
1533
+ .expectMincoverStrings = {
1534
+ "11100011010111111010100100110001101000000000000000",
1535
+ },
1536
+ },
1537
+ {
1538
+ .lowerBound = 0,
1539
+ .includeLowerBound = true,
1540
+ .upperBound = 0,
1541
+ .includeUpperBound = true,
1542
+ .sparsity = 1,
1543
+ .min = { .set = true, .value = -1000000000000000 },
1544
+ .max = { .set = true, .value = 1024 },
1545
+ .expectMincoverStrings = {
1546
+ "11100011010111111010100100110001101000000000000000",
1547
+ },
1548
+ },
1549
+ {
1550
+ .lowerBound = 0,
1551
+ .includeLowerBound = true,
1552
+ .upperBound = 0,
1553
+ .includeUpperBound = true,
1554
+ .sparsity = 2,
1555
+ .min = { .set = true, .value = -1000000000000000 },
1556
+ .max = { .set = true, .value = 1024 },
1557
+ .expectMincoverStrings = {
1558
+ "11100011010111111010100100110001101000000000000000",
1559
+ },
1560
+ },
1561
+ {
1562
+ .lowerBound = 0,
1563
+ .includeLowerBound = true,
1564
+ .upperBound = 0,
1565
+ .includeUpperBound = true,
1566
+ .sparsity = 1,
1567
+ .min = { .set = true, .value = -1000000000000000 },
1568
+ .max = { .set = true, .value = 8070450532247928832 },
1569
+ .expectMincoverStrings = {
1570
+ "000000000000011100011010111111010100100110001101000000000000000",
1571
+ },
1572
+ },
1573
+ {
1574
+ .lowerBound = 0,
1575
+ .includeLowerBound = true,
1576
+ .upperBound = 0,
1577
+ .includeUpperBound = true,
1578
+ .sparsity = 3,
1579
+ .min = { .set = true, .value = -1000000000000000 },
1580
+ .max = { .set = true, .value = 8070450532247928832 },
1581
+ .expectMincoverStrings = {
1582
+ "000000000000011100011010111111010100100110001101000000000000000",
1583
+ },
1584
+ },
1585
+ {
1586
+ .lowerBound = 0,
1587
+ .includeLowerBound = true,
1588
+ .upperBound = 0,
1589
+ .includeUpperBound = true,
1590
+ .sparsity = 1,
1591
+ .min = { .set = true, .value = -1 },
1592
+ .max = { .set = true, .value = 0 },
1593
+ .expectMincoverStrings = {
1594
+ "1",
1595
+ },
1596
+ },
1597
+ {
1598
+ .lowerBound = 0,
1599
+ .includeLowerBound = true,
1600
+ .upperBound = 0,
1601
+ .includeUpperBound = true,
1602
+ .sparsity = 1,
1603
+ .min = { .set = true, .value = -1 },
1604
+ .max = { .set = true, .value = 1024 },
1605
+ .expectMincoverStrings = {
1606
+ "00000000001",
1607
+ },
1608
+ },
1609
+ {
1610
+ .lowerBound = 0,
1611
+ .includeLowerBound = true,
1612
+ .upperBound = 0,
1613
+ .includeUpperBound = true,
1614
+ .sparsity = 1,
1615
+ .min = { .set = true, .value = -1 },
1616
+ .max = { .set = true, .value = 8070450532247928832 },
1617
+ .expectMincoverStrings = {
1618
+ "000000000000000000000000000000000000000000000000000000000000001",
1619
+ },
1620
+ },
1621
+ {
1622
+ .lowerBound = 0,
1623
+ .includeLowerBound = true,
1624
+ .upperBound = 0,
1625
+ .includeUpperBound = true,
1626
+ .sparsity = 3,
1627
+ .min = { .set = true, .value = -1 },
1628
+ .max = { .set = true, .value = 8070450532247928832 },
1629
+ .expectMincoverStrings = {
1630
+ "000000000000000000000000000000000000000000000000000000000000001",
1631
+ },
1632
+ },
1633
+ {
1634
+ .lowerBound = 0,
1635
+ .includeLowerBound = true,
1636
+ .upperBound = 0,
1637
+ .includeUpperBound = true,
1638
+ .sparsity = 1,
1639
+ .min = { .set = true, .value = 0 },
1640
+ .max = { .set = true, .value = 1024 },
1641
+ .expectMincoverStrings = {
1642
+ "00000000000",
1643
+ },
1644
+ },
1645
+ {
1646
+ .lowerBound = 0,
1647
+ .includeLowerBound = true,
1648
+ .upperBound = 0,
1649
+ .includeUpperBound = true,
1650
+ .sparsity = 1,
1651
+ .min = { .set = true, .value = 0 },
1652
+ .max = { .set = true, .value = 8070450532247928832 },
1653
+ .expectMincoverStrings = {
1654
+ "000000000000000000000000000000000000000000000000000000000000000",
1655
+ },
1656
+ },
1657
+ {
1658
+ .lowerBound = 0,
1659
+ .includeLowerBound = true,
1660
+ .upperBound = 0,
1661
+ .includeUpperBound = true,
1662
+ .sparsity = 3,
1663
+ .min = { .set = true, .value = 0 },
1664
+ .max = { .set = true, .value = 8070450532247928832 },
1665
+ .expectMincoverStrings = {
1666
+ "000000000000000000000000000000000000000000000000000000000000000",
1667
+ },
1668
+ },
1669
+ {
1670
+ .lowerBound = 0,
1671
+ .includeLowerBound = true,
1672
+ .upperBound = 823,
1673
+ .includeUpperBound = true,
1674
+ .sparsity = 1,
1675
+ .min = { .set = true, .value = -1000000000000000 },
1676
+ .max = { .set = true, .value = 1024 },
1677
+ .expectMincoverStrings = {
1678
+ "11100011010111111010100100110001101000000",
1679
+ "111000110101111110101001001100011010000010",
1680
+ "111000110101111110101001001100011010000011000",
1681
+ "1110001101011111101010010011000110100000110010",
1682
+ "11100011010111111010100100110001101000001100110",
1683
+ },
1684
+ },
1685
+ {
1686
+ .lowerBound = 0,
1687
+ .includeLowerBound = true,
1688
+ .upperBound = 823,
1689
+ .includeUpperBound = true,
1690
+ .sparsity = 2,
1691
+ .min = { .set = true, .value = -1000000000000000 },
1692
+ .max = { .set = true, .value = 1024 },
1693
+ .expectMincoverStrings = {
1694
+ "111000110101111110101001001100011010000000",
1695
+ "111000110101111110101001001100011010000001",
1696
+ "111000110101111110101001001100011010000010",
1697
+ "1110001101011111101010010011000110100000110000",
1698
+ "1110001101011111101010010011000110100000110001",
1699
+ "1110001101011111101010010011000110100000110010",
1700
+ "111000110101111110101001001100011010000011001100",
1701
+ "111000110101111110101001001100011010000011001101",
1702
+ },
1703
+ },
1704
+ {
1705
+ .lowerBound = 0,
1706
+ .includeLowerBound = true,
1707
+ .upperBound = 823,
1708
+ .includeUpperBound = true,
1709
+ .sparsity = 3,
1710
+ .min = { .set = true, .value = -1000000000000000 },
1711
+ .max = { .set = true, .value = 1024 },
1712
+ .expectMincoverStrings = {
1713
+ "111000110101111110101001001100011010000000",
1714
+ "111000110101111110101001001100011010000001",
1715
+ "111000110101111110101001001100011010000010",
1716
+ "111000110101111110101001001100011010000011000",
1717
+ "111000110101111110101001001100011010000011001000",
1718
+ "111000110101111110101001001100011010000011001001",
1719
+ "111000110101111110101001001100011010000011001010",
1720
+ "111000110101111110101001001100011010000011001011",
1721
+ "111000110101111110101001001100011010000011001100",
1722
+ "111000110101111110101001001100011010000011001101",
1723
+ },
1724
+ },
1725
+ {
1726
+ .lowerBound = 0,
1727
+ .includeLowerBound = true,
1728
+ .upperBound = 823,
1729
+ .includeUpperBound = true,
1730
+ .sparsity = 4,
1731
+ .min = { .set = true, .value = -1000000000000000 },
1732
+ .max = { .set = true, .value = 1024 },
1733
+ .expectMincoverStrings = {
1734
+ "11100011010111111010100100110001101000000000",
1735
+ "11100011010111111010100100110001101000000001",
1736
+ "11100011010111111010100100110001101000000010",
1737
+ "11100011010111111010100100110001101000000011",
1738
+ "11100011010111111010100100110001101000000100",
1739
+ "11100011010111111010100100110001101000000101",
1740
+ "11100011010111111010100100110001101000000110",
1741
+ "11100011010111111010100100110001101000000111",
1742
+ "11100011010111111010100100110001101000001000",
1743
+ "11100011010111111010100100110001101000001001",
1744
+ "11100011010111111010100100110001101000001010",
1745
+ "11100011010111111010100100110001101000001011",
1746
+ "111000110101111110101001001100011010000011000000",
1747
+ "111000110101111110101001001100011010000011000001",
1748
+ "111000110101111110101001001100011010000011000010",
1749
+ "111000110101111110101001001100011010000011000011",
1750
+ "111000110101111110101001001100011010000011000100",
1751
+ "111000110101111110101001001100011010000011000101",
1752
+ "111000110101111110101001001100011010000011000110",
1753
+ "111000110101111110101001001100011010000011000111",
1754
+ "111000110101111110101001001100011010000011001000",
1755
+ "111000110101111110101001001100011010000011001001",
1756
+ "111000110101111110101001001100011010000011001010",
1757
+ "111000110101111110101001001100011010000011001011",
1758
+ "111000110101111110101001001100011010000011001100",
1759
+ "111000110101111110101001001100011010000011001101",
1760
+ },
1761
+ },
1762
+ {
1763
+ .lowerBound = 0,
1764
+ .includeLowerBound = true,
1765
+ .upperBound = 823,
1766
+ .includeUpperBound = true,
1767
+ .sparsity = 1,
1768
+ .min = { .set = true, .value = -1000000000000000 },
1769
+ .max = { .set = true, .value = 8070450532247928832 },
1770
+ .expectMincoverStrings = {
1771
+ "000000000000011100011010111111010100100110001101000000",
1772
+ "0000000000000111000110101111110101001001100011010000010",
1773
+ "0000000000000111000110101111110101001001100011010000011000",
1774
+ "00000000000001110001101011111101010010011000110100000110010",
1775
+ "000000000000011100011010111111010100100110001101000001100110",
1776
+ },
1777
+ },
1778
+ {
1779
+ .lowerBound = 0,
1780
+ .includeLowerBound = true,
1781
+ .upperBound = 823,
1782
+ .includeUpperBound = true,
1783
+ .sparsity = 2,
1784
+ .min = { .set = true, .value = -1000000000000000 },
1785
+ .max = { .set = true, .value = 8070450532247928832 },
1786
+ .expectMincoverStrings = {
1787
+ "000000000000011100011010111111010100100110001101000000",
1788
+ "00000000000001110001101011111101010010011000110100000100",
1789
+ "00000000000001110001101011111101010010011000110100000101",
1790
+ "0000000000000111000110101111110101001001100011010000011000",
1791
+ "000000000000011100011010111111010100100110001101000001100100",
1792
+ "000000000000011100011010111111010100100110001101000001100101",
1793
+ "000000000000011100011010111111010100100110001101000001100110",
1794
+ },
1795
+ },
1796
+ {
1797
+ .lowerBound = 0,
1798
+ .includeLowerBound = true,
1799
+ .upperBound = 823,
1800
+ .includeUpperBound = true,
1801
+ .sparsity = 3,
1802
+ .min = { .set = true, .value = -1000000000000000 },
1803
+ .max = { .set = true, .value = 8070450532247928832 },
1804
+ .expectMincoverStrings = {
1805
+ "000000000000011100011010111111010100100110001101000000",
1806
+ "000000000000011100011010111111010100100110001101000001000",
1807
+ "000000000000011100011010111111010100100110001101000001001",
1808
+ "000000000000011100011010111111010100100110001101000001010",
1809
+ "000000000000011100011010111111010100100110001101000001011",
1810
+ "000000000000011100011010111111010100100110001101000001100000",
1811
+ "000000000000011100011010111111010100100110001101000001100001",
1812
+ "000000000000011100011010111111010100100110001101000001100010",
1813
+ "000000000000011100011010111111010100100110001101000001100011",
1814
+ "000000000000011100011010111111010100100110001101000001100100",
1815
+ "000000000000011100011010111111010100100110001101000001100101",
1816
+ "000000000000011100011010111111010100100110001101000001100110",
1817
+ },
1818
+ },
1819
+ {
1820
+ .lowerBound = 0,
1821
+ .includeLowerBound = true,
1822
+ .upperBound = 823,
1823
+ .includeUpperBound = true,
1824
+ .sparsity = 4,
1825
+ .min = { .set = true, .value = -1000000000000000 },
1826
+ .max = { .set = true, .value = 8070450532247928832 },
1827
+ .expectMincoverStrings = {
1828
+ "00000000000001110001101011111101010010011000110100000000",
1829
+ "00000000000001110001101011111101010010011000110100000001",
1830
+ "00000000000001110001101011111101010010011000110100000010",
1831
+ "00000000000001110001101011111101010010011000110100000011",
1832
+ "00000000000001110001101011111101010010011000110100000100",
1833
+ "00000000000001110001101011111101010010011000110100000101",
1834
+ "000000000000011100011010111111010100100110001101000001100000",
1835
+ "000000000000011100011010111111010100100110001101000001100001",
1836
+ "000000000000011100011010111111010100100110001101000001100010",
1837
+ "000000000000011100011010111111010100100110001101000001100011",
1838
+ "000000000000011100011010111111010100100110001101000001100100",
1839
+ "000000000000011100011010111111010100100110001101000001100101",
1840
+ "000000000000011100011010111111010100100110001101000001100110",
1841
+ },
1842
+ },
1843
+ {
1844
+ .lowerBound = 0,
1845
+ .includeLowerBound = true,
1846
+ .upperBound = 823,
1847
+ .includeUpperBound = true,
1848
+ .sparsity = 1,
1849
+ .min = { .set = true, .value = -1 },
1850
+ .max = { .set = true, .value = 1024 },
1851
+ .expectMincoverStrings = {
1852
+ "00000000001",
1853
+ "0000000001",
1854
+ "000000001",
1855
+ "00000001",
1856
+ "0000001",
1857
+ "000001",
1858
+ "00001",
1859
+ "0001",
1860
+ "001",
1861
+ "010",
1862
+ "011000",
1863
+ "0110010",
1864
+ "01100110",
1865
+ "01100111000",
1866
+ },
1867
+ },
1868
+ {
1869
+ .lowerBound = 0,
1870
+ .includeLowerBound = true,
1871
+ .upperBound = 823,
1872
+ .includeUpperBound = true,
1873
+ .sparsity = 1,
1874
+ .min = { .set = true, .value = -1 },
1875
+ .max = { .set = true, .value = 8070450532247928832 },
1876
+ .expectMincoverStrings = {
1877
+ "000000000000000000000000000000000000000000000000000000000000001",
1878
+ "00000000000000000000000000000000000000000000000000000000000001",
1879
+ "0000000000000000000000000000000000000000000000000000000000001",
1880
+ "000000000000000000000000000000000000000000000000000000000001",
1881
+ "00000000000000000000000000000000000000000000000000000000001",
1882
+ "0000000000000000000000000000000000000000000000000000000001",
1883
+ "000000000000000000000000000000000000000000000000000000001",
1884
+ "00000000000000000000000000000000000000000000000000000001",
1885
+ "0000000000000000000000000000000000000000000000000000001",
1886
+ "0000000000000000000000000000000000000000000000000000010",
1887
+ "0000000000000000000000000000000000000000000000000000011000",
1888
+ "00000000000000000000000000000000000000000000000000000110010",
1889
+ "000000000000000000000000000000000000000000000000000001100110",
1890
+ "000000000000000000000000000000000000000000000000000001100111000",
1891
+ },
1892
+ },
1893
+ {
1894
+ .lowerBound = 0,
1895
+ .includeLowerBound = true,
1896
+ .upperBound = 823,
1897
+ .includeUpperBound = true,
1898
+ .sparsity = 3,
1899
+ .min = { .set = true, .value = -1 },
1900
+ .max = { .set = true, .value = 8070450532247928832 },
1901
+ .expectMincoverStrings = {
1902
+ "000000000000000000000000000000000000000000000000000000000000001",
1903
+ "000000000000000000000000000000000000000000000000000000000000010",
1904
+ "000000000000000000000000000000000000000000000000000000000000011",
1905
+ "000000000000000000000000000000000000000000000000000000000000100",
1906
+ "000000000000000000000000000000000000000000000000000000000000101",
1907
+ "000000000000000000000000000000000000000000000000000000000000110",
1908
+ "000000000000000000000000000000000000000000000000000000000000111",
1909
+ "000000000000000000000000000000000000000000000000000000000001",
1910
+ "000000000000000000000000000000000000000000000000000000000010",
1911
+ "000000000000000000000000000000000000000000000000000000000011",
1912
+ "000000000000000000000000000000000000000000000000000000000100",
1913
+ "000000000000000000000000000000000000000000000000000000000101",
1914
+ "000000000000000000000000000000000000000000000000000000000110",
1915
+ "000000000000000000000000000000000000000000000000000000000111",
1916
+ "000000000000000000000000000000000000000000000000000000001",
1917
+ "000000000000000000000000000000000000000000000000000000010",
1918
+ "000000000000000000000000000000000000000000000000000000011",
1919
+ "000000000000000000000000000000000000000000000000000000100",
1920
+ "000000000000000000000000000000000000000000000000000000101",
1921
+ "000000000000000000000000000000000000000000000000000000110",
1922
+ "000000000000000000000000000000000000000000000000000000111",
1923
+ "000000000000000000000000000000000000000000000000000001000",
1924
+ "000000000000000000000000000000000000000000000000000001001",
1925
+ "000000000000000000000000000000000000000000000000000001010",
1926
+ "000000000000000000000000000000000000000000000000000001011",
1927
+ "000000000000000000000000000000000000000000000000000001100000",
1928
+ "000000000000000000000000000000000000000000000000000001100001",
1929
+ "000000000000000000000000000000000000000000000000000001100010",
1930
+ "000000000000000000000000000000000000000000000000000001100011",
1931
+ "000000000000000000000000000000000000000000000000000001100100",
1932
+ "000000000000000000000000000000000000000000000000000001100101",
1933
+ "000000000000000000000000000000000000000000000000000001100110",
1934
+ "000000000000000000000000000000000000000000000000000001100111000",
1935
+ },
1936
+ },
1937
+ {
1938
+ .lowerBound = 0,
1939
+ .includeLowerBound = true,
1940
+ .upperBound = 823,
1941
+ .includeUpperBound = true,
1942
+ .sparsity = 1,
1943
+ .min = { .set = true, .value = 0 },
1944
+ .max = { .set = true, .value = 1024 },
1945
+ .expectMincoverStrings = {
1946
+ "00",
1947
+ "010",
1948
+ "011000",
1949
+ "0110010",
1950
+ "01100110",
1951
+ },
1952
+ },
1953
+ {
1954
+ .lowerBound = 0,
1955
+ .includeLowerBound = true,
1956
+ .upperBound = 823,
1957
+ .includeUpperBound = true,
1958
+ .sparsity = 2,
1959
+ .min = { .set = true, .value = 0 },
1960
+ .max = { .set = true, .value = 1024 },
1961
+ .expectMincoverStrings = {
1962
+ "00",
1963
+ "0100",
1964
+ "0101",
1965
+ "011000",
1966
+ "01100100",
1967
+ "01100101",
1968
+ "01100110",
1969
+ },
1970
+ },
1971
+ {
1972
+ .lowerBound = 0,
1973
+ .includeLowerBound = true,
1974
+ .upperBound = 823,
1975
+ .includeUpperBound = true,
1976
+ .sparsity = 3,
1977
+ .min = { .set = true, .value = 0 },
1978
+ .max = { .set = true, .value = 1024 },
1979
+ .expectMincoverStrings = {
1980
+ "000",
1981
+ "001",
1982
+ "010",
1983
+ "011000",
1984
+ "011001000",
1985
+ "011001001",
1986
+ "011001010",
1987
+ "011001011",
1988
+ "011001100",
1989
+ "011001101",
1990
+ },
1991
+ },
1992
+ {
1993
+ .lowerBound = 0,
1994
+ .includeLowerBound = true,
1995
+ .upperBound = 823,
1996
+ .includeUpperBound = true,
1997
+ .sparsity = 4,
1998
+ .min = { .set = true, .value = 0 },
1999
+ .max = { .set = true, .value = 1024 },
2000
+ .expectMincoverStrings = {
2001
+ "0000",
2002
+ "0001",
2003
+ "0010",
2004
+ "0011",
2005
+ "0100",
2006
+ "0101",
2007
+ "01100000",
2008
+ "01100001",
2009
+ "01100010",
2010
+ "01100011",
2011
+ "01100100",
2012
+ "01100101",
2013
+ "01100110",
2014
+ },
2015
+ },
2016
+ {
2017
+ .lowerBound = 0,
2018
+ .includeLowerBound = true,
2019
+ .upperBound = 823,
2020
+ .includeUpperBound = true,
2021
+ .sparsity = 1,
2022
+ .min = { .set = true, .value = 0 },
2023
+ .max = { .set = true, .value = 8070450532247928832 },
2024
+ .expectMincoverStrings = {
2025
+ "000000000000000000000000000000000000000000000000000000",
2026
+ "0000000000000000000000000000000000000000000000000000010",
2027
+ "0000000000000000000000000000000000000000000000000000011000",
2028
+ "00000000000000000000000000000000000000000000000000000110010",
2029
+ "000000000000000000000000000000000000000000000000000001100110",
2030
+ },
2031
+ },
2032
+ {
2033
+ .lowerBound = 0,
2034
+ .includeLowerBound = true,
2035
+ .upperBound = 823,
2036
+ .includeUpperBound = true,
2037
+ .sparsity = 2,
2038
+ .min = { .set = true, .value = 0 },
2039
+ .max = { .set = true, .value = 8070450532247928832 },
2040
+ .expectMincoverStrings = {
2041
+ "000000000000000000000000000000000000000000000000000000",
2042
+ "00000000000000000000000000000000000000000000000000000100",
2043
+ "00000000000000000000000000000000000000000000000000000101",
2044
+ "0000000000000000000000000000000000000000000000000000011000",
2045
+ "000000000000000000000000000000000000000000000000000001100100",
2046
+ "000000000000000000000000000000000000000000000000000001100101",
2047
+ "000000000000000000000000000000000000000000000000000001100110",
2048
+ },
2049
+ },
2050
+ {
2051
+ .lowerBound = 0,
2052
+ .includeLowerBound = true,
2053
+ .upperBound = 823,
2054
+ .includeUpperBound = true,
2055
+ .sparsity = 3,
2056
+ .min = { .set = true, .value = 0 },
2057
+ .max = { .set = true, .value = 8070450532247928832 },
2058
+ .expectMincoverStrings = {
2059
+ "000000000000000000000000000000000000000000000000000000",
2060
+ "000000000000000000000000000000000000000000000000000001000",
2061
+ "000000000000000000000000000000000000000000000000000001001",
2062
+ "000000000000000000000000000000000000000000000000000001010",
2063
+ "000000000000000000000000000000000000000000000000000001011",
2064
+ "000000000000000000000000000000000000000000000000000001100000",
2065
+ "000000000000000000000000000000000000000000000000000001100001",
2066
+ "000000000000000000000000000000000000000000000000000001100010",
2067
+ "000000000000000000000000000000000000000000000000000001100011",
2068
+ "000000000000000000000000000000000000000000000000000001100100",
2069
+ "000000000000000000000000000000000000000000000000000001100101",
2070
+ "000000000000000000000000000000000000000000000000000001100110",
2071
+ },
2072
+ },
2073
+ {
2074
+ .lowerBound = 0,
2075
+ .includeLowerBound = true,
2076
+ .upperBound = 823,
2077
+ .includeUpperBound = true,
2078
+ .sparsity = 4,
2079
+ .min = { .set = true, .value = 0 },
2080
+ .max = { .set = true, .value = 8070450532247928832 },
2081
+ .expectMincoverStrings = {
2082
+ "00000000000000000000000000000000000000000000000000000000",
2083
+ "00000000000000000000000000000000000000000000000000000001",
2084
+ "00000000000000000000000000000000000000000000000000000010",
2085
+ "00000000000000000000000000000000000000000000000000000011",
2086
+ "00000000000000000000000000000000000000000000000000000100",
2087
+ "00000000000000000000000000000000000000000000000000000101",
2088
+ "000000000000000000000000000000000000000000000000000001100000",
2089
+ "000000000000000000000000000000000000000000000000000001100001",
2090
+ "000000000000000000000000000000000000000000000000000001100010",
2091
+ "000000000000000000000000000000000000000000000000000001100011",
2092
+ "000000000000000000000000000000000000000000000000000001100100",
2093
+ "000000000000000000000000000000000000000000000000000001100101",
2094
+ "000000000000000000000000000000000000000000000000000001100110",
2095
+ },
2096
+ },
2097
+ {
2098
+ .lowerBound = 0,
2099
+ .includeLowerBound = true,
2100
+ .upperBound = 1024,
2101
+ .includeUpperBound = true,
2102
+ .sparsity = 1,
2103
+ .min = { .set = true, .value = -1000000000000000 },
2104
+ .max = { .set = true, .value = 1024 },
2105
+ .expectMincoverStrings = {
2106
+ "1110001101011111101010010011000110100000",
2107
+ "11100011010111111010100100110001101000010000000000",
2108
+ },
2109
+ },
2110
+ {
2111
+ .lowerBound = 0,
2112
+ .includeLowerBound = true,
2113
+ .upperBound = 1024,
2114
+ .includeUpperBound = true,
2115
+ .sparsity = 2,
2116
+ .min = { .set = true, .value = -1000000000000000 },
2117
+ .max = { .set = true, .value = 1024 },
2118
+ .expectMincoverStrings = {
2119
+ "1110001101011111101010010011000110100000",
2120
+ "11100011010111111010100100110001101000010000000000",
2121
+ },
2122
+ },
2123
+ {
2124
+ .lowerBound = 0,
2125
+ .includeLowerBound = true,
2126
+ .upperBound = 1024,
2127
+ .includeUpperBound = true,
2128
+ .sparsity = 1,
2129
+ .min = { .set = true, .value = -1000000000000000 },
2130
+ .max = { .set = true, .value = 8070450532247928832 },
2131
+ .expectMincoverStrings = {
2132
+ "00000000000001110001101011111101010010011000110100000",
2133
+ "000000000000011100011010111111010100100110001101000010000000000",
2134
+ },
2135
+ },
2136
+ {
2137
+ .lowerBound = 0,
2138
+ .includeLowerBound = true,
2139
+ .upperBound = 1024,
2140
+ .includeUpperBound = true,
2141
+ .sparsity = 3,
2142
+ .min = { .set = true, .value = -1000000000000000 },
2143
+ .max = { .set = true, .value = 8070450532247928832 },
2144
+ .expectMincoverStrings = {
2145
+ "000000000000011100011010111111010100100110001101000000",
2146
+ "000000000000011100011010111111010100100110001101000001",
2147
+ "000000000000011100011010111111010100100110001101000010000000000",
2148
+ },
2149
+ },
2150
+ {
2151
+ .lowerBound = 0,
2152
+ .includeLowerBound = true,
2153
+ .upperBound = 1024,
2154
+ .includeUpperBound = true,
2155
+ .sparsity = 1,
2156
+ .min = { .set = true, .value = -1 },
2157
+ .max = { .set = true, .value = 1024 },
2158
+ .expectMincoverStrings = {
2159
+ "00000000001",
2160
+ "0000000001",
2161
+ "000000001",
2162
+ "00000001",
2163
+ "0000001",
2164
+ "000001",
2165
+ "00001",
2166
+ "0001",
2167
+ "001",
2168
+ "01",
2169
+ "1000000000",
2170
+ },
2171
+ },
2172
+ {
2173
+ .lowerBound = 0,
2174
+ .includeLowerBound = true,
2175
+ .upperBound = 1024,
2176
+ .includeUpperBound = true,
2177
+ .sparsity = 1,
2178
+ .min = { .set = true, .value = -1 },
2179
+ .max = { .set = true, .value = 8070450532247928832 },
2180
+ .expectMincoverStrings = {
2181
+ "000000000000000000000000000000000000000000000000000000000000001",
2182
+ "00000000000000000000000000000000000000000000000000000000000001",
2183
+ "0000000000000000000000000000000000000000000000000000000000001",
2184
+ "000000000000000000000000000000000000000000000000000000000001",
2185
+ "00000000000000000000000000000000000000000000000000000000001",
2186
+ "0000000000000000000000000000000000000000000000000000000001",
2187
+ "000000000000000000000000000000000000000000000000000000001",
2188
+ "00000000000000000000000000000000000000000000000000000001",
2189
+ "0000000000000000000000000000000000000000000000000000001",
2190
+ "000000000000000000000000000000000000000000000000000001",
2191
+ "00000000000000000000000000000000000000000000000000001000000000",
2192
+ },
2193
+ },
2194
+ {
2195
+ .lowerBound = 0,
2196
+ .includeLowerBound = true,
2197
+ .upperBound = 1024,
2198
+ .includeUpperBound = true,
2199
+ .sparsity = 3,
2200
+ .min = { .set = true, .value = -1 },
2201
+ .max = { .set = true, .value = 8070450532247928832 },
2202
+ .expectMincoverStrings = {
2203
+ "000000000000000000000000000000000000000000000000000000000000001",
2204
+ "000000000000000000000000000000000000000000000000000000000000010",
2205
+ "000000000000000000000000000000000000000000000000000000000000011",
2206
+ "000000000000000000000000000000000000000000000000000000000000100",
2207
+ "000000000000000000000000000000000000000000000000000000000000101",
2208
+ "000000000000000000000000000000000000000000000000000000000000110",
2209
+ "000000000000000000000000000000000000000000000000000000000000111",
2210
+ "000000000000000000000000000000000000000000000000000000000001",
2211
+ "000000000000000000000000000000000000000000000000000000000010",
2212
+ "000000000000000000000000000000000000000000000000000000000011",
2213
+ "000000000000000000000000000000000000000000000000000000000100",
2214
+ "000000000000000000000000000000000000000000000000000000000101",
2215
+ "000000000000000000000000000000000000000000000000000000000110",
2216
+ "000000000000000000000000000000000000000000000000000000000111",
2217
+ "000000000000000000000000000000000000000000000000000000001",
2218
+ "000000000000000000000000000000000000000000000000000000010",
2219
+ "000000000000000000000000000000000000000000000000000000011",
2220
+ "000000000000000000000000000000000000000000000000000000100",
2221
+ "000000000000000000000000000000000000000000000000000000101",
2222
+ "000000000000000000000000000000000000000000000000000000110",
2223
+ "000000000000000000000000000000000000000000000000000000111",
2224
+ "000000000000000000000000000000000000000000000000000001",
2225
+ "000000000000000000000000000000000000000000000000000010000000000",
2226
+ "000000000000000000000000000000000000000000000000000010000000001",
2227
+ },
2228
+ },
2229
+ {
2230
+ .lowerBound = 0,
2231
+ .includeLowerBound = true,
2232
+ .upperBound = 1024,
2233
+ .includeUpperBound = true,
2234
+ .sparsity = 1,
2235
+ .min = { .set = true, .value = 0 },
2236
+ .max = { .set = true, .value = 1024 },
2237
+ .expectMincoverStrings = {
2238
+ "0",
2239
+ "10000000000",
2240
+ },
2241
+ },
2242
+ {
2243
+ .lowerBound = 0,
2244
+ .includeLowerBound = true,
2245
+ .upperBound = 1024,
2246
+ .includeUpperBound = true,
2247
+ .sparsity = 1,
2248
+ .min = { .set = true, .value = 0 },
2249
+ .max = { .set = true, .value = 8070450532247928832 },
2250
+ .expectMincoverStrings = {
2251
+ "00000000000000000000000000000000000000000000000000000",
2252
+ "000000000000000000000000000000000000000000000000000010000000000",
2253
+ },
2254
+ },
2255
+ {
2256
+ .lowerBound = 0,
2257
+ .includeLowerBound = true,
2258
+ .upperBound = 1024,
2259
+ .includeUpperBound = true,
2260
+ .sparsity = 3,
2261
+ .min = { .set = true, .value = 0 },
2262
+ .max = { .set = true, .value = 8070450532247928832 },
2263
+ .expectMincoverStrings = {
2264
+ "000000000000000000000000000000000000000000000000000000",
2265
+ "000000000000000000000000000000000000000000000000000001",
2266
+ "000000000000000000000000000000000000000000000000000010000000000",
2267
+ },
2268
+ },
2269
+ {
2270
+ .lowerBound = 0,
2271
+ .includeLowerBound = true,
2272
+ .upperBound = 1879048192,
2273
+ .includeUpperBound = true,
2274
+ .sparsity = 1,
2275
+ .min = { .set = true, .value = -1000000000000000 },
2276
+ .max = { .set = true, .value = 8070450532247928832 },
2277
+ .expectMincoverStrings = {
2278
+ "000000000000011100011010111111010100100110001101",
2279
+ "00000000000001110001101011111101010010011000111",
2280
+ "00000000000001110001101011111101010010011001",
2281
+ "0000000000000111000110101111110101001001101",
2282
+ "000000000000011100011010111111010100100111",
2283
+ "000000000000011100011010111111010100101",
2284
+ "00000000000001110001101011111101010011",
2285
+ "000000000000011100011010111111010101",
2286
+ "00000000000001110001101011111101011",
2287
+ "000000000000011100011010111111011",
2288
+ "00000000000001110001101011111110000",
2289
+ "0000000000000111000110101111111000100",
2290
+ "0000000000000111000110101111111000101000",
2291
+ "00000000000001110001101011111110001010010",
2292
+ "000000000000011100011010111111100010100110000",
2293
+ "0000000000000111000110101111111000101001100010",
2294
+ "000000000000011100011010111111100010100110001100",
2295
+ "000000000000011100011010111111100010100110001101000000000000000",
2296
+ },
2297
+ },
2298
+ {
2299
+ .lowerBound = 0,
2300
+ .includeLowerBound = true,
2301
+ .upperBound = 1879048192,
2302
+ .includeUpperBound = true,
2303
+ .sparsity = 3,
2304
+ .min = { .set = true, .value = -1000000000000000 },
2305
+ .max = { .set = true, .value = 8070450532247928832 },
2306
+ .expectMincoverStrings = {
2307
+ "000000000000011100011010111111010100100110001101",
2308
+ "000000000000011100011010111111010100100110001110",
2309
+ "000000000000011100011010111111010100100110001111",
2310
+ "000000000000011100011010111111010100100110010",
2311
+ "000000000000011100011010111111010100100110011",
2312
+ "000000000000011100011010111111010100100110100",
2313
+ "000000000000011100011010111111010100100110101",
2314
+ "000000000000011100011010111111010100100110110",
2315
+ "000000000000011100011010111111010100100110111",
2316
+ "000000000000011100011010111111010100100111",
2317
+ "000000000000011100011010111111010100101",
2318
+ "000000000000011100011010111111010100110",
2319
+ "000000000000011100011010111111010100111",
2320
+ "000000000000011100011010111111010101",
2321
+ "000000000000011100011010111111010110",
2322
+ "000000000000011100011010111111010111",
2323
+ "000000000000011100011010111111011",
2324
+ "000000000000011100011010111111100000",
2325
+ "000000000000011100011010111111100001",
2326
+ "000000000000011100011010111111100010000",
2327
+ "000000000000011100011010111111100010001",
2328
+ "000000000000011100011010111111100010010",
2329
+ "000000000000011100011010111111100010011",
2330
+ "000000000000011100011010111111100010100000",
2331
+ "000000000000011100011010111111100010100001",
2332
+ "000000000000011100011010111111100010100010",
2333
+ "000000000000011100011010111111100010100011",
2334
+ "000000000000011100011010111111100010100100",
2335
+ "000000000000011100011010111111100010100101",
2336
+ "000000000000011100011010111111100010100110000",
2337
+ "000000000000011100011010111111100010100110001000",
2338
+ "000000000000011100011010111111100010100110001001",
2339
+ "000000000000011100011010111111100010100110001010",
2340
+ "000000000000011100011010111111100010100110001011",
2341
+ "000000000000011100011010111111100010100110001100",
2342
+ "000000000000011100011010111111100010100110001101000000000000000",
2343
+ },
2344
+ },
2345
+ {
2346
+ .lowerBound = 0,
2347
+ .includeLowerBound = true,
2348
+ .upperBound = 1879048192,
2349
+ .includeUpperBound = true,
2350
+ .sparsity = 1,
2351
+ .min = { .set = true, .value = -1 },
2352
+ .max = { .set = true, .value = 8070450532247928832 },
2353
+ .expectMincoverStrings = {
2354
+ "000000000000000000000000000000000000000000000000000000000000001",
2355
+ "00000000000000000000000000000000000000000000000000000000000001",
2356
+ "0000000000000000000000000000000000000000000000000000000000001",
2357
+ "000000000000000000000000000000000000000000000000000000000001",
2358
+ "00000000000000000000000000000000000000000000000000000000001",
2359
+ "0000000000000000000000000000000000000000000000000000000001",
2360
+ "000000000000000000000000000000000000000000000000000000001",
2361
+ "00000000000000000000000000000000000000000000000000000001",
2362
+ "0000000000000000000000000000000000000000000000000000001",
2363
+ "000000000000000000000000000000000000000000000000000001",
2364
+ "00000000000000000000000000000000000000000000000000001",
2365
+ "0000000000000000000000000000000000000000000000000001",
2366
+ "000000000000000000000000000000000000000000000000001",
2367
+ "00000000000000000000000000000000000000000000000001",
2368
+ "0000000000000000000000000000000000000000000000001",
2369
+ "000000000000000000000000000000000000000000000001",
2370
+ "00000000000000000000000000000000000000000000001",
2371
+ "0000000000000000000000000000000000000000000001",
2372
+ "000000000000000000000000000000000000000000001",
2373
+ "00000000000000000000000000000000000000000001",
2374
+ "0000000000000000000000000000000000000000001",
2375
+ "000000000000000000000000000000000000000001",
2376
+ "00000000000000000000000000000000000000001",
2377
+ "0000000000000000000000000000000000000001",
2378
+ "000000000000000000000000000000000000001",
2379
+ "00000000000000000000000000000000000001",
2380
+ "0000000000000000000000000000000000001",
2381
+ "000000000000000000000000000000000001",
2382
+ "00000000000000000000000000000000001",
2383
+ "0000000000000000000000000000000001",
2384
+ "0000000000000000000000000000000010",
2385
+ "00000000000000000000000000000000110",
2386
+ "00000000000000000000000000000000111000000000000000000000000000",
2387
+ },
2388
+ },
2389
+ {
2390
+ .lowerBound = 0,
2391
+ .includeLowerBound = true,
2392
+ .upperBound = 1879048192,
2393
+ .includeUpperBound = true,
2394
+ .sparsity = 1,
2395
+ .min = { .set = true, .value = 0 },
2396
+ .max = { .set = true, .value = 8070450532247928832 },
2397
+ .expectMincoverStrings = {
2398
+ "000000000000000000000000000000000",
2399
+ "0000000000000000000000000000000010",
2400
+ "00000000000000000000000000000000110",
2401
+ "000000000000000000000000000000001110000000000000000000000000000",
2402
+ },
2403
+ },
2404
+ {
2405
+ .lowerBound = 0,
2406
+ .includeLowerBound = true,
2407
+ .upperBound = 1879048192,
2408
+ .includeUpperBound = true,
2409
+ .sparsity = 3,
2410
+ .min = { .set = true, .value = 0 },
2411
+ .max = { .set = true, .value = 8070450532247928832 },
2412
+ .expectMincoverStrings = {
2413
+ "000000000000000000000000000000000",
2414
+ "000000000000000000000000000000001000",
2415
+ "000000000000000000000000000000001001",
2416
+ "000000000000000000000000000000001010",
2417
+ "000000000000000000000000000000001011",
2418
+ "000000000000000000000000000000001100",
2419
+ "000000000000000000000000000000001101",
2420
+ "000000000000000000000000000000001110000000000000000000000000000",
2421
+ },
2422
+ },
2423
+ {
2424
+ .lowerBound = 823,
2425
+ .includeLowerBound = true,
2426
+ .upperBound = 823,
2427
+ .includeUpperBound = true,
2428
+ .sparsity = 1,
2429
+ .min = { .set = true, .value = -1000000000000000 },
2430
+ .max = { .set = true, .value = 1024 },
2431
+ .expectMincoverStrings = {
2432
+ "11100011010111111010100100110001101000001100110111",
2433
+ },
2434
+ },
2435
+ {
2436
+ .lowerBound = 823,
2437
+ .includeLowerBound = true,
2438
+ .upperBound = 823,
2439
+ .includeUpperBound = true,
2440
+ .sparsity = 2,
2441
+ .min = { .set = true, .value = -1000000000000000 },
2442
+ .max = { .set = true, .value = 1024 },
2443
+ .expectMincoverStrings = {
2444
+ "11100011010111111010100100110001101000001100110111",
2445
+ },
2446
+ },
2447
+ {
2448
+ .lowerBound = 823,
2449
+ .includeLowerBound = true,
2450
+ .upperBound = 823,
2451
+ .includeUpperBound = true,
2452
+ .sparsity = 1,
2453
+ .min = { .set = true, .value = -1000000000000000 },
2454
+ .max = { .set = true, .value = 8070450532247928832 },
2455
+ .expectMincoverStrings = {
2456
+ "000000000000011100011010111111010100100110001101000001100110111",
2457
+ },
2458
+ },
2459
+ {
2460
+ .lowerBound = 823,
2461
+ .includeLowerBound = true,
2462
+ .upperBound = 823,
2463
+ .includeUpperBound = true,
2464
+ .sparsity = 3,
2465
+ .min = { .set = true, .value = -1000000000000000 },
2466
+ .max = { .set = true, .value = 8070450532247928832 },
2467
+ .expectMincoverStrings = {
2468
+ "000000000000011100011010111111010100100110001101000001100110111",
2469
+ },
2470
+ },
2471
+ {
2472
+ .lowerBound = 823,
2473
+ .includeLowerBound = true,
2474
+ .upperBound = 823,
2475
+ .includeUpperBound = true,
2476
+ .sparsity = 1,
2477
+ .min = { .set = true, .value = -1 },
2478
+ .max = { .set = true, .value = 1024 },
2479
+ .expectMincoverStrings = {
2480
+ "01100111000",
2481
+ },
2482
+ },
2483
+ {
2484
+ .lowerBound = 823,
2485
+ .includeLowerBound = true,
2486
+ .upperBound = 823,
2487
+ .includeUpperBound = true,
2488
+ .sparsity = 1,
2489
+ .min = { .set = true, .value = -1 },
2490
+ .max = { .set = true, .value = 8070450532247928832 },
2491
+ .expectMincoverStrings = {
2492
+ "000000000000000000000000000000000000000000000000000001100111000",
2493
+ },
2494
+ },
2495
+ {
2496
+ .lowerBound = 823,
2497
+ .includeLowerBound = true,
2498
+ .upperBound = 823,
2499
+ .includeUpperBound = true,
2500
+ .sparsity = 3,
2501
+ .min = { .set = true, .value = -1 },
2502
+ .max = { .set = true, .value = 8070450532247928832 },
2503
+ .expectMincoverStrings = {
2504
+ "000000000000000000000000000000000000000000000000000001100111000",
2505
+ },
2506
+ },
2507
+ {
2508
+ .lowerBound = 823,
2509
+ .includeLowerBound = true,
2510
+ .upperBound = 823,
2511
+ .includeUpperBound = true,
2512
+ .sparsity = 1,
2513
+ .min = { .set = true, .value = 0 },
2514
+ .max = { .set = true, .value = 1024 },
2515
+ .expectMincoverStrings = {
2516
+ "01100110111",
2517
+ },
2518
+ },
2519
+ {
2520
+ .lowerBound = 823,
2521
+ .includeLowerBound = true,
2522
+ .upperBound = 823,
2523
+ .includeUpperBound = true,
2524
+ .sparsity = 1,
2525
+ .min = { .set = true, .value = 0 },
2526
+ .max = { .set = true, .value = 8070450532247928832 },
2527
+ .expectMincoverStrings = {
2528
+ "000000000000000000000000000000000000000000000000000001100110111",
2529
+ },
2530
+ },
2531
+ {
2532
+ .lowerBound = 823,
2533
+ .includeLowerBound = true,
2534
+ .upperBound = 823,
2535
+ .includeUpperBound = true,
2536
+ .sparsity = 3,
2537
+ .min = { .set = true, .value = 0 },
2538
+ .max = { .set = true, .value = 8070450532247928832 },
2539
+ .expectMincoverStrings = {
2540
+ "000000000000000000000000000000000000000000000000000001100110111",
2541
+ },
2542
+ },
2543
+ {
2544
+ .lowerBound = 823,
2545
+ .includeLowerBound = true,
2546
+ .upperBound = 1024,
2547
+ .includeUpperBound = true,
2548
+ .sparsity = 1,
2549
+ .min = { .set = true, .value = -1000000000000000 },
2550
+ .max = { .set = true, .value = 1024 },
2551
+ .expectMincoverStrings = {
2552
+ "11100011010111111010100100110001101000001100110111",
2553
+ "11100011010111111010100100110001101000001100111",
2554
+ "11100011010111111010100100110001101000001101",
2555
+ "1110001101011111101010010011000110100000111",
2556
+ "11100011010111111010100100110001101000010000000000",
2557
+ },
2558
+ },
2559
+ {
2560
+ .lowerBound = 823,
2561
+ .includeLowerBound = true,
2562
+ .upperBound = 1024,
2563
+ .includeUpperBound = true,
2564
+ .sparsity = 2,
2565
+ .min = { .set = true, .value = -1000000000000000 },
2566
+ .max = { .set = true, .value = 1024 },
2567
+ .expectMincoverStrings = {
2568
+ "11100011010111111010100100110001101000001100110111",
2569
+ "111000110101111110101001001100011010000011001110",
2570
+ "111000110101111110101001001100011010000011001111",
2571
+ "11100011010111111010100100110001101000001101",
2572
+ "11100011010111111010100100110001101000001110",
2573
+ "11100011010111111010100100110001101000001111",
2574
+ "11100011010111111010100100110001101000010000000000",
2575
+ },
2576
+ },
2577
+ {
2578
+ .lowerBound = 823,
2579
+ .includeLowerBound = true,
2580
+ .upperBound = 1024,
2581
+ .includeUpperBound = true,
2582
+ .sparsity = 1,
2583
+ .min = { .set = true, .value = -1000000000000000 },
2584
+ .max = { .set = true, .value = 8070450532247928832 },
2585
+ .expectMincoverStrings = {
2586
+ "000000000000011100011010111111010100100110001101000001100110111",
2587
+ "000000000000011100011010111111010100100110001101000001100111",
2588
+ "000000000000011100011010111111010100100110001101000001101",
2589
+ "00000000000001110001101011111101010010011000110100000111",
2590
+ "000000000000011100011010111111010100100110001101000010000000000",
2591
+ },
2592
+ },
2593
+ {
2594
+ .lowerBound = 823,
2595
+ .includeLowerBound = true,
2596
+ .upperBound = 1024,
2597
+ .includeUpperBound = true,
2598
+ .sparsity = 3,
2599
+ .min = { .set = true, .value = -1000000000000000 },
2600
+ .max = { .set = true, .value = 8070450532247928832 },
2601
+ .expectMincoverStrings = {
2602
+ "000000000000011100011010111111010100100110001101000001100110111",
2603
+ "000000000000011100011010111111010100100110001101000001100111",
2604
+ "000000000000011100011010111111010100100110001101000001101",
2605
+ "000000000000011100011010111111010100100110001101000001110",
2606
+ "000000000000011100011010111111010100100110001101000001111",
2607
+ "000000000000011100011010111111010100100110001101000010000000000",
2608
+ },
2609
+ },
2610
+ {
2611
+ .lowerBound = 823,
2612
+ .includeLowerBound = true,
2613
+ .upperBound = 1024,
2614
+ .includeUpperBound = true,
2615
+ .sparsity = 1,
2616
+ .min = { .set = true, .value = -1 },
2617
+ .max = { .set = true, .value = 1024 },
2618
+ .expectMincoverStrings = {
2619
+ "01100111",
2620
+ "01101",
2621
+ "0111",
2622
+ "1000000000",
2623
+ },
2624
+ },
2625
+ {
2626
+ .lowerBound = 823,
2627
+ .includeLowerBound = true,
2628
+ .upperBound = 1024,
2629
+ .includeUpperBound = true,
2630
+ .sparsity = 2,
2631
+ .min = { .set = true, .value = -1 },
2632
+ .max = { .set = true, .value = 1024 },
2633
+ .expectMincoverStrings = {
2634
+ "01100111",
2635
+ "011010",
2636
+ "011011",
2637
+ "0111",
2638
+ "1000000000",
2639
+ },
2640
+ },
2641
+ {
2642
+ .lowerBound = 823,
2643
+ .includeLowerBound = true,
2644
+ .upperBound = 1024,
2645
+ .includeUpperBound = true,
2646
+ .sparsity = 1,
2647
+ .min = { .set = true, .value = -1 },
2648
+ .max = { .set = true, .value = 8070450532247928832 },
2649
+ .expectMincoverStrings = {
2650
+ "000000000000000000000000000000000000000000000000000001100111",
2651
+ "000000000000000000000000000000000000000000000000000001101",
2652
+ "00000000000000000000000000000000000000000000000000000111",
2653
+ "00000000000000000000000000000000000000000000000000001000000000",
2654
+ },
2655
+ },
2656
+ {
2657
+ .lowerBound = 823,
2658
+ .includeLowerBound = true,
2659
+ .upperBound = 1024,
2660
+ .includeUpperBound = true,
2661
+ .sparsity = 2,
2662
+ .min = { .set = true, .value = -1 },
2663
+ .max = { .set = true, .value = 8070450532247928832 },
2664
+ .expectMincoverStrings = {
2665
+ "000000000000000000000000000000000000000000000000000001100111",
2666
+ "0000000000000000000000000000000000000000000000000000011010",
2667
+ "0000000000000000000000000000000000000000000000000000011011",
2668
+ "00000000000000000000000000000000000000000000000000000111",
2669
+ "00000000000000000000000000000000000000000000000000001000000000",
2670
+ },
2671
+ },
2672
+ {
2673
+ .lowerBound = 823,
2674
+ .includeLowerBound = true,
2675
+ .upperBound = 1024,
2676
+ .includeUpperBound = true,
2677
+ .sparsity = 3,
2678
+ .min = { .set = true, .value = -1 },
2679
+ .max = { .set = true, .value = 8070450532247928832 },
2680
+ .expectMincoverStrings = {
2681
+ "000000000000000000000000000000000000000000000000000001100111",
2682
+ "000000000000000000000000000000000000000000000000000001101",
2683
+ "000000000000000000000000000000000000000000000000000001110",
2684
+ "000000000000000000000000000000000000000000000000000001111",
2685
+ "000000000000000000000000000000000000000000000000000010000000000",
2686
+ "000000000000000000000000000000000000000000000000000010000000001",
2687
+ },
2688
+ },
2689
+ {
2690
+ .lowerBound = 823,
2691
+ .includeLowerBound = true,
2692
+ .upperBound = 1024,
2693
+ .includeUpperBound = true,
2694
+ .sparsity = 1,
2695
+ .min = { .set = true, .value = 0 },
2696
+ .max = { .set = true, .value = 1024 },
2697
+ .expectMincoverStrings = {
2698
+ "01100110111",
2699
+ "01100111",
2700
+ "01101",
2701
+ "0111",
2702
+ "10000000000",
2703
+ },
2704
+ },
2705
+ {
2706
+ .lowerBound = 823,
2707
+ .includeLowerBound = true,
2708
+ .upperBound = 1024,
2709
+ .includeUpperBound = true,
2710
+ .sparsity = 1,
2711
+ .min = { .set = true, .value = 0 },
2712
+ .max = { .set = true, .value = 8070450532247928832 },
2713
+ .expectMincoverStrings = {
2714
+ "000000000000000000000000000000000000000000000000000001100110111",
2715
+ "000000000000000000000000000000000000000000000000000001100111",
2716
+ "000000000000000000000000000000000000000000000000000001101",
2717
+ "00000000000000000000000000000000000000000000000000000111",
2718
+ "000000000000000000000000000000000000000000000000000010000000000",
2719
+ },
2720
+ },
2721
+ {
2722
+ .lowerBound = 823,
2723
+ .includeLowerBound = true,
2724
+ .upperBound = 1024,
2725
+ .includeUpperBound = true,
2726
+ .sparsity = 3,
2727
+ .min = { .set = true, .value = 0 },
2728
+ .max = { .set = true, .value = 8070450532247928832 },
2729
+ .expectMincoverStrings = {
2730
+ "000000000000000000000000000000000000000000000000000001100110111",
2731
+ "000000000000000000000000000000000000000000000000000001100111",
2732
+ "000000000000000000000000000000000000000000000000000001101",
2733
+ "000000000000000000000000000000000000000000000000000001110",
2734
+ "000000000000000000000000000000000000000000000000000001111",
2735
+ "000000000000000000000000000000000000000000000000000010000000000",
2736
+ },
2737
+ },
2738
+ {
2739
+ .lowerBound = 823,
2740
+ .includeLowerBound = true,
2741
+ .upperBound = 1879048192,
2742
+ .includeUpperBound = true,
2743
+ .sparsity = 1,
2744
+ .min = { .set = true, .value = -1000000000000000 },
2745
+ .max = { .set = true, .value = 8070450532247928832 },
2746
+ .expectMincoverStrings = {
2747
+ "000000000000011100011010111111010100100110001101000001100110111",
2748
+ "000000000000011100011010111111010100100110001101000001100111",
2749
+ "000000000000011100011010111111010100100110001101000001101",
2750
+ "00000000000001110001101011111101010010011000110100000111",
2751
+ "00000000000001110001101011111101010010011000110100001",
2752
+ "0000000000000111000110101111110101001001100011010001",
2753
+ "000000000000011100011010111111010100100110001101001",
2754
+ "00000000000001110001101011111101010010011000110101",
2755
+ "0000000000000111000110101111110101001001100011011",
2756
+ "00000000000001110001101011111101010010011000111",
2757
+ "00000000000001110001101011111101010010011001",
2758
+ "0000000000000111000110101111110101001001101",
2759
+ "000000000000011100011010111111010100100111",
2760
+ "000000000000011100011010111111010100101",
2761
+ "00000000000001110001101011111101010011",
2762
+ "000000000000011100011010111111010101",
2763
+ "00000000000001110001101011111101011",
2764
+ "000000000000011100011010111111011",
2765
+ "00000000000001110001101011111110000",
2766
+ "0000000000000111000110101111111000100",
2767
+ "0000000000000111000110101111111000101000",
2768
+ "00000000000001110001101011111110001010010",
2769
+ "000000000000011100011010111111100010100110000",
2770
+ "0000000000000111000110101111111000101001100010",
2771
+ "000000000000011100011010111111100010100110001100",
2772
+ "000000000000011100011010111111100010100110001101000000000000000",
2773
+ },
2774
+ },
2775
+ {
2776
+ .lowerBound = 823,
2777
+ .includeLowerBound = true,
2778
+ .upperBound = 1879048192,
2779
+ .includeUpperBound = true,
2780
+ .sparsity = 1,
2781
+ .min = { .set = true, .value = -1 },
2782
+ .max = { .set = true, .value = 8070450532247928832 },
2783
+ .expectMincoverStrings = {
2784
+ "000000000000000000000000000000000000000000000000000001100111",
2785
+ "000000000000000000000000000000000000000000000000000001101",
2786
+ "00000000000000000000000000000000000000000000000000000111",
2787
+ "00000000000000000000000000000000000000000000000000001",
2788
+ "0000000000000000000000000000000000000000000000000001",
2789
+ "000000000000000000000000000000000000000000000000001",
2790
+ "00000000000000000000000000000000000000000000000001",
2791
+ "0000000000000000000000000000000000000000000000001",
2792
+ "000000000000000000000000000000000000000000000001",
2793
+ "00000000000000000000000000000000000000000000001",
2794
+ "0000000000000000000000000000000000000000000001",
2795
+ "000000000000000000000000000000000000000000001",
2796
+ "00000000000000000000000000000000000000000001",
2797
+ "0000000000000000000000000000000000000000001",
2798
+ "000000000000000000000000000000000000000001",
2799
+ "00000000000000000000000000000000000000001",
2800
+ "0000000000000000000000000000000000000001",
2801
+ "000000000000000000000000000000000000001",
2802
+ "00000000000000000000000000000000000001",
2803
+ "0000000000000000000000000000000000001",
2804
+ "000000000000000000000000000000000001",
2805
+ "00000000000000000000000000000000001",
2806
+ "0000000000000000000000000000000001",
2807
+ "0000000000000000000000000000000010",
2808
+ "00000000000000000000000000000000110",
2809
+ "00000000000000000000000000000000111000000000000000000000000000",
2810
+ },
2811
+ },
2812
+ {
2813
+ .lowerBound = 823,
2814
+ .includeLowerBound = true,
2815
+ .upperBound = 1879048192,
2816
+ .includeUpperBound = true,
2817
+ .sparsity = 2,
2818
+ .min = { .set = true, .value = -1 },
2819
+ .max = { .set = true, .value = 8070450532247928832 },
2820
+ .expectMincoverStrings = {
2821
+ "000000000000000000000000000000000000000000000000000001100111",
2822
+ "0000000000000000000000000000000000000000000000000000011010",
2823
+ "0000000000000000000000000000000000000000000000000000011011",
2824
+ "00000000000000000000000000000000000000000000000000000111",
2825
+ "000000000000000000000000000000000000000000000000000010",
2826
+ "000000000000000000000000000000000000000000000000000011",
2827
+ "0000000000000000000000000000000000000000000000000001",
2828
+ "0000000000000000000000000000000000000000000000000010",
2829
+ "0000000000000000000000000000000000000000000000000011",
2830
+ "00000000000000000000000000000000000000000000000001",
2831
+ "00000000000000000000000000000000000000000000000010",
2832
+ "00000000000000000000000000000000000000000000000011",
2833
+ "000000000000000000000000000000000000000000000001",
2834
+ "000000000000000000000000000000000000000000000010",
2835
+ "000000000000000000000000000000000000000000000011",
2836
+ "0000000000000000000000000000000000000000000001",
2837
+ "0000000000000000000000000000000000000000000010",
2838
+ "0000000000000000000000000000000000000000000011",
2839
+ "00000000000000000000000000000000000000000001",
2840
+ "00000000000000000000000000000000000000000010",
2841
+ "00000000000000000000000000000000000000000011",
2842
+ "000000000000000000000000000000000000000001",
2843
+ "000000000000000000000000000000000000000010",
2844
+ "000000000000000000000000000000000000000011",
2845
+ "0000000000000000000000000000000000000001",
2846
+ "0000000000000000000000000000000000000010",
2847
+ "0000000000000000000000000000000000000011",
2848
+ "00000000000000000000000000000000000001",
2849
+ "00000000000000000000000000000000000010",
2850
+ "00000000000000000000000000000000000011",
2851
+ "000000000000000000000000000000000001",
2852
+ "000000000000000000000000000000000010",
2853
+ "000000000000000000000000000000000011",
2854
+ "0000000000000000000000000000000001",
2855
+ "0000000000000000000000000000000010",
2856
+ "000000000000000000000000000000001100",
2857
+ "000000000000000000000000000000001101",
2858
+ "00000000000000000000000000000000111000000000000000000000000000",
2859
+ },
2860
+ },
2861
+ {
2862
+ .lowerBound = 823,
2863
+ .includeLowerBound = true,
2864
+ .upperBound = 1879048192,
2865
+ .includeUpperBound = true,
2866
+ .sparsity = 1,
2867
+ .min = { .set = true, .value = 0 },
2868
+ .max = { .set = true, .value = 8070450532247928832 },
2869
+ .expectMincoverStrings = {
2870
+ "000000000000000000000000000000000000000000000000000001100110111",
2871
+ "000000000000000000000000000000000000000000000000000001100111",
2872
+ "000000000000000000000000000000000000000000000000000001101",
2873
+ "00000000000000000000000000000000000000000000000000000111",
2874
+ "00000000000000000000000000000000000000000000000000001",
2875
+ "0000000000000000000000000000000000000000000000000001",
2876
+ "000000000000000000000000000000000000000000000000001",
2877
+ "00000000000000000000000000000000000000000000000001",
2878
+ "0000000000000000000000000000000000000000000000001",
2879
+ "000000000000000000000000000000000000000000000001",
2880
+ "00000000000000000000000000000000000000000000001",
2881
+ "0000000000000000000000000000000000000000000001",
2882
+ "000000000000000000000000000000000000000000001",
2883
+ "00000000000000000000000000000000000000000001",
2884
+ "0000000000000000000000000000000000000000001",
2885
+ "000000000000000000000000000000000000000001",
2886
+ "00000000000000000000000000000000000000001",
2887
+ "0000000000000000000000000000000000000001",
2888
+ "000000000000000000000000000000000000001",
2889
+ "00000000000000000000000000000000000001",
2890
+ "0000000000000000000000000000000000001",
2891
+ "000000000000000000000000000000000001",
2892
+ "00000000000000000000000000000000001",
2893
+ "0000000000000000000000000000000001",
2894
+ "0000000000000000000000000000000010",
2895
+ "00000000000000000000000000000000110",
2896
+ "000000000000000000000000000000001110000000000000000000000000000",
2897
+ },
2898
+ },
2899
+ {
2900
+ .lowerBound = 1024,
2901
+ .includeLowerBound = true,
2902
+ .upperBound = 1024,
2903
+ .includeUpperBound = true,
2904
+ .sparsity = 1,
2905
+ .min = { .set = true, .value = -1000000000000000 },
2906
+ .max = { .set = true, .value = 1024 },
2907
+ .expectMincoverStrings = {
2908
+ "11100011010111111010100100110001101000010000000000",
2909
+ },
2910
+ },
2911
+ {
2912
+ .lowerBound = 1024,
2913
+ .includeLowerBound = true,
2914
+ .upperBound = 1024,
2915
+ .includeUpperBound = true,
2916
+ .sparsity = 2,
2917
+ .min = { .set = true, .value = -1000000000000000 },
2918
+ .max = { .set = true, .value = 1024 },
2919
+ .expectMincoverStrings = {
2920
+ "11100011010111111010100100110001101000010000000000",
2921
+ },
2922
+ },
2923
+ {
2924
+ .lowerBound = 1024,
2925
+ .includeLowerBound = true,
2926
+ .upperBound = 1024,
2927
+ .includeUpperBound = true,
2928
+ .sparsity = 1,
2929
+ .min = { .set = true, .value = -1000000000000000 },
2930
+ .max = { .set = true, .value = 8070450532247928832 },
2931
+ .expectMincoverStrings = {
2932
+ "000000000000011100011010111111010100100110001101000010000000000",
2933
+ },
2934
+ },
2935
+ {
2936
+ .lowerBound = 1024,
2937
+ .includeLowerBound = true,
2938
+ .upperBound = 1024,
2939
+ .includeUpperBound = true,
2940
+ .sparsity = 3,
2941
+ .min = { .set = true, .value = -1000000000000000 },
2942
+ .max = { .set = true, .value = 8070450532247928832 },
2943
+ .expectMincoverStrings = {
2944
+ "000000000000011100011010111111010100100110001101000010000000000",
2945
+ },
2946
+ },
2947
+ {
2948
+ .lowerBound = 1024,
2949
+ .includeLowerBound = true,
2950
+ .upperBound = 1024,
2951
+ .includeUpperBound = true,
2952
+ .sparsity = 1,
2953
+ .min = { .set = true, .value = -1 },
2954
+ .max = { .set = true, .value = 1024 },
2955
+ .expectMincoverStrings = {
2956
+ "10000000001",
2957
+ },
2958
+ },
2959
+ {
2960
+ .lowerBound = 1024,
2961
+ .includeLowerBound = true,
2962
+ .upperBound = 1024,
2963
+ .includeUpperBound = true,
2964
+ .sparsity = 1,
2965
+ .min = { .set = true, .value = -1 },
2966
+ .max = { .set = true, .value = 8070450532247928832 },
2967
+ .expectMincoverStrings = {
2968
+ "000000000000000000000000000000000000000000000000000010000000001",
2969
+ },
2970
+ },
2971
+ {
2972
+ .lowerBound = 1024,
2973
+ .includeLowerBound = true,
2974
+ .upperBound = 1024,
2975
+ .includeUpperBound = true,
2976
+ .sparsity = 3,
2977
+ .min = { .set = true, .value = -1 },
2978
+ .max = { .set = true, .value = 8070450532247928832 },
2979
+ .expectMincoverStrings = {
2980
+ "000000000000000000000000000000000000000000000000000010000000001",
2981
+ },
2982
+ },
2983
+ {
2984
+ .lowerBound = 1024,
2985
+ .includeLowerBound = true,
2986
+ .upperBound = 1024,
2987
+ .includeUpperBound = true,
2988
+ .sparsity = 1,
2989
+ .min = { .set = true, .value = 0 },
2990
+ .max = { .set = true, .value = 1024 },
2991
+ .expectMincoverStrings = {
2992
+ "10000000000",
2993
+ },
2994
+ },
2995
+ {
2996
+ .lowerBound = 1024,
2997
+ .includeLowerBound = true,
2998
+ .upperBound = 1024,
2999
+ .includeUpperBound = true,
3000
+ .sparsity = 1,
3001
+ .min = { .set = true, .value = 0 },
3002
+ .max = { .set = true, .value = 8070450532247928832 },
3003
+ .expectMincoverStrings = {
3004
+ "000000000000000000000000000000000000000000000000000010000000000",
3005
+ },
3006
+ },
3007
+ {
3008
+ .lowerBound = 1024,
3009
+ .includeLowerBound = true,
3010
+ .upperBound = 1024,
3011
+ .includeUpperBound = true,
3012
+ .sparsity = 3,
3013
+ .min = { .set = true, .value = 0 },
3014
+ .max = { .set = true, .value = 8070450532247928832 },
3015
+ .expectMincoverStrings = {
3016
+ "000000000000000000000000000000000000000000000000000010000000000",
3017
+ },
3018
+ },
3019
+ {
3020
+ .lowerBound = 1024,
3021
+ .includeLowerBound = true,
3022
+ .upperBound = 1024,
3023
+ .includeUpperBound = true,
3024
+ .sparsity = 1,
3025
+ .min = { .set = true, .value = 1024 },
3026
+ .max = { .set = true, .value = 8070450532247928832 },
3027
+ .expectMincoverStrings = {
3028
+ "000000000000000000000000000000000000000000000000000000000000000",
3029
+ },
3030
+ },
3031
+ {
3032
+ .lowerBound = 1024,
3033
+ .includeLowerBound = true,
3034
+ .upperBound = 1024,
3035
+ .includeUpperBound = true,
3036
+ .sparsity = 3,
3037
+ .min = { .set = true, .value = 1024 },
3038
+ .max = { .set = true, .value = 8070450532247928832 },
3039
+ .expectMincoverStrings = {
3040
+ "000000000000000000000000000000000000000000000000000000000000000",
3041
+ },
3042
+ },
3043
+ {
3044
+ .lowerBound = 1024,
3045
+ .includeLowerBound = true,
3046
+ .upperBound = 1879048192,
3047
+ .includeUpperBound = true,
3048
+ .sparsity = 1,
3049
+ .min = { .set = true, .value = -1000000000000000 },
3050
+ .max = { .set = true, .value = 8070450532247928832 },
3051
+ .expectMincoverStrings = {
3052
+ "00000000000001110001101011111101010010011000110100001",
3053
+ "0000000000000111000110101111110101001001100011010001",
3054
+ "000000000000011100011010111111010100100110001101001",
3055
+ "00000000000001110001101011111101010010011000110101",
3056
+ "0000000000000111000110101111110101001001100011011",
3057
+ "00000000000001110001101011111101010010011000111",
3058
+ "00000000000001110001101011111101010010011001",
3059
+ "0000000000000111000110101111110101001001101",
3060
+ "000000000000011100011010111111010100100111",
3061
+ "000000000000011100011010111111010100101",
3062
+ "00000000000001110001101011111101010011",
3063
+ "000000000000011100011010111111010101",
3064
+ "00000000000001110001101011111101011",
3065
+ "000000000000011100011010111111011",
3066
+ "00000000000001110001101011111110000",
3067
+ "0000000000000111000110101111111000100",
3068
+ "0000000000000111000110101111111000101000",
3069
+ "00000000000001110001101011111110001010010",
3070
+ "000000000000011100011010111111100010100110000",
3071
+ "0000000000000111000110101111111000101001100010",
3072
+ "000000000000011100011010111111100010100110001100",
3073
+ "000000000000011100011010111111100010100110001101000000000000000",
3074
+ },
3075
+ },
3076
+ {
3077
+ .lowerBound = 1024,
3078
+ .includeLowerBound = true,
3079
+ .upperBound = 1879048192,
3080
+ .includeUpperBound = true,
3081
+ .sparsity = 3,
3082
+ .min = { .set = true, .value = -1000000000000000 },
3083
+ .max = { .set = true, .value = 8070450532247928832 },
3084
+ .expectMincoverStrings = {
3085
+ "000000000000011100011010111111010100100110001101000010",
3086
+ "000000000000011100011010111111010100100110001101000011",
3087
+ "000000000000011100011010111111010100100110001101000100",
3088
+ "000000000000011100011010111111010100100110001101000101",
3089
+ "000000000000011100011010111111010100100110001101000110",
3090
+ "000000000000011100011010111111010100100110001101000111",
3091
+ "000000000000011100011010111111010100100110001101001",
3092
+ "000000000000011100011010111111010100100110001101010",
3093
+ "000000000000011100011010111111010100100110001101011",
3094
+ "000000000000011100011010111111010100100110001101100",
3095
+ "000000000000011100011010111111010100100110001101101",
3096
+ "000000000000011100011010111111010100100110001101110",
3097
+ "000000000000011100011010111111010100100110001101111",
3098
+ "000000000000011100011010111111010100100110001110",
3099
+ "000000000000011100011010111111010100100110001111",
3100
+ "000000000000011100011010111111010100100110010",
3101
+ "000000000000011100011010111111010100100110011",
3102
+ "000000000000011100011010111111010100100110100",
3103
+ "000000000000011100011010111111010100100110101",
3104
+ "000000000000011100011010111111010100100110110",
3105
+ "000000000000011100011010111111010100100110111",
3106
+ "000000000000011100011010111111010100100111",
3107
+ "000000000000011100011010111111010100101",
3108
+ "000000000000011100011010111111010100110",
3109
+ "000000000000011100011010111111010100111",
3110
+ "000000000000011100011010111111010101",
3111
+ "000000000000011100011010111111010110",
3112
+ "000000000000011100011010111111010111",
3113
+ "000000000000011100011010111111011",
3114
+ "000000000000011100011010111111100000",
3115
+ "000000000000011100011010111111100001",
3116
+ "000000000000011100011010111111100010000",
3117
+ "000000000000011100011010111111100010001",
3118
+ "000000000000011100011010111111100010010",
3119
+ "000000000000011100011010111111100010011",
3120
+ "000000000000011100011010111111100010100000",
3121
+ "000000000000011100011010111111100010100001",
3122
+ "000000000000011100011010111111100010100010",
3123
+ "000000000000011100011010111111100010100011",
3124
+ "000000000000011100011010111111100010100100",
3125
+ "000000000000011100011010111111100010100101",
3126
+ "000000000000011100011010111111100010100110000",
3127
+ "000000000000011100011010111111100010100110001000",
3128
+ "000000000000011100011010111111100010100110001001",
3129
+ "000000000000011100011010111111100010100110001010",
3130
+ "000000000000011100011010111111100010100110001011",
3131
+ "000000000000011100011010111111100010100110001100",
3132
+ "000000000000011100011010111111100010100110001101000000000000000",
3133
+ },
3134
+ },
3135
+ {
3136
+ .lowerBound = 1024,
3137
+ .includeLowerBound = true,
3138
+ .upperBound = 1879048192,
3139
+ .includeUpperBound = true,
3140
+ .sparsity = 1,
3141
+ .min = { .set = true, .value = -1 },
3142
+ .max = { .set = true, .value = 8070450532247928832 },
3143
+ .expectMincoverStrings = {
3144
+ "000000000000000000000000000000000000000000000000000010000000001",
3145
+ "00000000000000000000000000000000000000000000000000001000000001",
3146
+ "0000000000000000000000000000000000000000000000000000100000001",
3147
+ "000000000000000000000000000000000000000000000000000010000001",
3148
+ "00000000000000000000000000000000000000000000000000001000001",
3149
+ "0000000000000000000000000000000000000000000000000000100001",
3150
+ "000000000000000000000000000000000000000000000000000010001",
3151
+ "00000000000000000000000000000000000000000000000000001001",
3152
+ "0000000000000000000000000000000000000000000000000000101",
3153
+ "000000000000000000000000000000000000000000000000000011",
3154
+ "0000000000000000000000000000000000000000000000000001",
3155
+ "000000000000000000000000000000000000000000000000001",
3156
+ "00000000000000000000000000000000000000000000000001",
3157
+ "0000000000000000000000000000000000000000000000001",
3158
+ "000000000000000000000000000000000000000000000001",
3159
+ "00000000000000000000000000000000000000000000001",
3160
+ "0000000000000000000000000000000000000000000001",
3161
+ "000000000000000000000000000000000000000000001",
3162
+ "00000000000000000000000000000000000000000001",
3163
+ "0000000000000000000000000000000000000000001",
3164
+ "000000000000000000000000000000000000000001",
3165
+ "00000000000000000000000000000000000000001",
3166
+ "0000000000000000000000000000000000000001",
3167
+ "000000000000000000000000000000000000001",
3168
+ "00000000000000000000000000000000000001",
3169
+ "0000000000000000000000000000000000001",
3170
+ "000000000000000000000000000000000001",
3171
+ "00000000000000000000000000000000001",
3172
+ "0000000000000000000000000000000001",
3173
+ "0000000000000000000000000000000010",
3174
+ "00000000000000000000000000000000110",
3175
+ "00000000000000000000000000000000111000000000000000000000000000",
3176
+ },
3177
+ },
3178
+ {
3179
+ .lowerBound = 1024,
3180
+ .includeLowerBound = true,
3181
+ .upperBound = 1879048192,
3182
+ .includeUpperBound = true,
3183
+ .sparsity = 1,
3184
+ .min = { .set = true, .value = 0 },
3185
+ .max = { .set = true, .value = 8070450532247928832 },
3186
+ .expectMincoverStrings = {
3187
+ "00000000000000000000000000000000000000000000000000001",
3188
+ "0000000000000000000000000000000000000000000000000001",
3189
+ "000000000000000000000000000000000000000000000000001",
3190
+ "00000000000000000000000000000000000000000000000001",
3191
+ "0000000000000000000000000000000000000000000000001",
3192
+ "000000000000000000000000000000000000000000000001",
3193
+ "00000000000000000000000000000000000000000000001",
3194
+ "0000000000000000000000000000000000000000000001",
3195
+ "000000000000000000000000000000000000000000001",
3196
+ "00000000000000000000000000000000000000000001",
3197
+ "0000000000000000000000000000000000000000001",
3198
+ "000000000000000000000000000000000000000001",
3199
+ "00000000000000000000000000000000000000001",
3200
+ "0000000000000000000000000000000000000001",
3201
+ "000000000000000000000000000000000000001",
3202
+ "00000000000000000000000000000000000001",
3203
+ "0000000000000000000000000000000000001",
3204
+ "000000000000000000000000000000000001",
3205
+ "00000000000000000000000000000000001",
3206
+ "0000000000000000000000000000000001",
3207
+ "0000000000000000000000000000000010",
3208
+ "00000000000000000000000000000000110",
3209
+ "000000000000000000000000000000001110000000000000000000000000000",
3210
+ },
3211
+ },
3212
+ {
3213
+ .lowerBound = 1024,
3214
+ .includeLowerBound = true,
3215
+ .upperBound = 1879048192,
3216
+ .includeUpperBound = true,
3217
+ .sparsity = 1,
3218
+ .min = { .set = true, .value = 1024 },
3219
+ .max = { .set = true, .value = 8070450532247928832 },
3220
+ .expectMincoverStrings = {
3221
+ "000000000000000000000000000000000",
3222
+ "0000000000000000000000000000000010",
3223
+ "000000000000000000000000000000001100",
3224
+ "0000000000000000000000000000000011010",
3225
+ "00000000000000000000000000000000110110",
3226
+ "000000000000000000000000000000001101110",
3227
+ "0000000000000000000000000000000011011110",
3228
+ "00000000000000000000000000000000110111110",
3229
+ "000000000000000000000000000000001101111110",
3230
+ "0000000000000000000000000000000011011111110",
3231
+ "00000000000000000000000000000000110111111110",
3232
+ "000000000000000000000000000000001101111111110",
3233
+ "0000000000000000000000000000000011011111111110",
3234
+ "00000000000000000000000000000000110111111111110",
3235
+ "000000000000000000000000000000001101111111111110",
3236
+ "0000000000000000000000000000000011011111111111110",
3237
+ "00000000000000000000000000000000110111111111111110",
3238
+ "000000000000000000000000000000001101111111111111110",
3239
+ "0000000000000000000000000000000011011111111111111110",
3240
+ "00000000000000000000000000000000110111111111111111110",
3241
+ "000000000000000000000000000000001101111111111111111110000000000",
3242
+ },
3243
+ },
3244
+ {
3245
+ .lowerBound = 1024,
3246
+ .includeLowerBound = true,
3247
+ .upperBound = 1879048192,
3248
+ .includeUpperBound = true,
3249
+ .sparsity = 3,
3250
+ .min = { .set = true, .value = 1024 },
3251
+ .max = { .set = true, .value = 8070450532247928832 },
3252
+ .expectMincoverStrings = {
3253
+ "000000000000000000000000000000000",
3254
+ "000000000000000000000000000000001000",
3255
+ "000000000000000000000000000000001001",
3256
+ "000000000000000000000000000000001010",
3257
+ "000000000000000000000000000000001011",
3258
+ "000000000000000000000000000000001100",
3259
+ "000000000000000000000000000000001101000",
3260
+ "000000000000000000000000000000001101001",
3261
+ "000000000000000000000000000000001101010",
3262
+ "000000000000000000000000000000001101011",
3263
+ "000000000000000000000000000000001101100",
3264
+ "000000000000000000000000000000001101101",
3265
+ "000000000000000000000000000000001101110",
3266
+ "000000000000000000000000000000001101111000",
3267
+ "000000000000000000000000000000001101111001",
3268
+ "000000000000000000000000000000001101111010",
3269
+ "000000000000000000000000000000001101111011",
3270
+ "000000000000000000000000000000001101111100",
3271
+ "000000000000000000000000000000001101111101",
3272
+ "000000000000000000000000000000001101111110",
3273
+ "000000000000000000000000000000001101111111000",
3274
+ "000000000000000000000000000000001101111111001",
3275
+ "000000000000000000000000000000001101111111010",
3276
+ "000000000000000000000000000000001101111111011",
3277
+ "000000000000000000000000000000001101111111100",
3278
+ "000000000000000000000000000000001101111111101",
3279
+ "000000000000000000000000000000001101111111110",
3280
+ "000000000000000000000000000000001101111111111000",
3281
+ "000000000000000000000000000000001101111111111001",
3282
+ "000000000000000000000000000000001101111111111010",
3283
+ "000000000000000000000000000000001101111111111011",
3284
+ "000000000000000000000000000000001101111111111100",
3285
+ "000000000000000000000000000000001101111111111101",
3286
+ "000000000000000000000000000000001101111111111110",
3287
+ "000000000000000000000000000000001101111111111111000",
3288
+ "000000000000000000000000000000001101111111111111001",
3289
+ "000000000000000000000000000000001101111111111111010",
3290
+ "000000000000000000000000000000001101111111111111011",
3291
+ "000000000000000000000000000000001101111111111111100",
3292
+ "000000000000000000000000000000001101111111111111101",
3293
+ "000000000000000000000000000000001101111111111111110",
3294
+ "000000000000000000000000000000001101111111111111111000",
3295
+ "000000000000000000000000000000001101111111111111111001",
3296
+ "000000000000000000000000000000001101111111111111111010",
3297
+ "000000000000000000000000000000001101111111111111111011",
3298
+ "000000000000000000000000000000001101111111111111111100",
3299
+ "000000000000000000000000000000001101111111111111111101",
3300
+ "000000000000000000000000000000001101111111111111111110000000000",
3301
+ },
3302
+ },
3303
+ {
3304
+ .lowerBound = 1879048192,
3305
+ .includeLowerBound = true,
3306
+ .upperBound = 1879048192,
3307
+ .includeUpperBound = true,
3308
+ .sparsity = 1,
3309
+ .min = { .set = true, .value = -1000000000000000 },
3310
+ .max = { .set = true, .value = 8070450532247928832 },
3311
+ .expectMincoverStrings = {
3312
+ "000000000000011100011010111111100010100110001101000000000000000",
3313
+ },
3314
+ },
3315
+ {
3316
+ .lowerBound = 1879048192,
3317
+ .includeLowerBound = true,
3318
+ .upperBound = 1879048192,
3319
+ .includeUpperBound = true,
3320
+ .sparsity = 3,
3321
+ .min = { .set = true, .value = -1000000000000000 },
3322
+ .max = { .set = true, .value = 8070450532247928832 },
3323
+ .expectMincoverStrings = {
3324
+ "000000000000011100011010111111100010100110001101000000000000000",
3325
+ },
3326
+ },
3327
+ {
3328
+ .lowerBound = 1879048192,
3329
+ .includeLowerBound = true,
3330
+ .upperBound = 1879048192,
3331
+ .includeUpperBound = true,
3332
+ .sparsity = 1,
3333
+ .min = { .set = true, .value = -1 },
3334
+ .max = { .set = true, .value = 8070450532247928832 },
3335
+ .expectMincoverStrings = {
3336
+ "000000000000000000000000000000001110000000000000000000000000001",
3337
+ },
3338
+ },
3339
+ {
3340
+ .lowerBound = 1879048192,
3341
+ .includeLowerBound = true,
3342
+ .upperBound = 1879048192,
3343
+ .includeUpperBound = true,
3344
+ .sparsity = 3,
3345
+ .min = { .set = true, .value = -1 },
3346
+ .max = { .set = true, .value = 8070450532247928832 },
3347
+ .expectMincoverStrings = {
3348
+ "000000000000000000000000000000001110000000000000000000000000001",
3349
+ },
3350
+ },
3351
+ {
3352
+ .lowerBound = 1879048192,
3353
+ .includeLowerBound = true,
3354
+ .upperBound = 1879048192,
3355
+ .includeUpperBound = true,
3356
+ .sparsity = 1,
3357
+ .min = { .set = true, .value = 0 },
3358
+ .max = { .set = true, .value = 8070450532247928832 },
3359
+ .expectMincoverStrings = {
3360
+ "000000000000000000000000000000001110000000000000000000000000000",
3361
+ },
3362
+ },
3363
+ {
3364
+ .lowerBound = 1879048192,
3365
+ .includeLowerBound = true,
3366
+ .upperBound = 1879048192,
3367
+ .includeUpperBound = true,
3368
+ .sparsity = 3,
3369
+ .min = { .set = true, .value = 0 },
3370
+ .max = { .set = true, .value = 8070450532247928832 },
3371
+ .expectMincoverStrings = {
3372
+ "000000000000000000000000000000001110000000000000000000000000000",
3373
+ },
3374
+ },
3375
+ {
3376
+ .lowerBound = 1879048192,
3377
+ .includeLowerBound = true,
3378
+ .upperBound = 1879048192,
3379
+ .includeUpperBound = true,
3380
+ .sparsity = 1,
3381
+ .min = { .set = true, .value = 1024 },
3382
+ .max = { .set = true, .value = 8070450532247928832 },
3383
+ .expectMincoverStrings = {
3384
+ "000000000000000000000000000000001101111111111111111110000000000",
3385
+ },
3386
+ },
3387
+ {
3388
+ .lowerBound = 1879048192,
3389
+ .includeLowerBound = true,
3390
+ .upperBound = 1879048192,
3391
+ .includeUpperBound = true,
3392
+ .sparsity = 3,
3393
+ .min = { .set = true, .value = 1024 },
3394
+ .max = { .set = true, .value = 8070450532247928832 },
3395
+ .expectMincoverStrings = {
3396
+ "000000000000000000000000000000001101111111111111111110000000000",
3397
+ },
3398
+ },