Compare commits

...

164 Commits

Author SHA1 Message Date
cd1b1bd039 Update ci.yml 2025-06-09 03:08:24 +03:00
849e8e91fc Merge pull request #56 from grafikrobot/modular
Add modular library level build file.
2025-05-02 19:15:21 +03:00
cd44c911d7 Move project global include to target local include. 2025-04-07 20:56:59 -05:00
b64ec9dbc7 Sync from upstream. 2025-04-04 21:39:18 -05:00
d899a718f1 Merge pull request #44 from marcoffee/fix-e129-e193
Fix references to parameters e129 and e193
2024-12-28 16:37:31 +02:00
918ff83c02 Update ci.yml 2024-12-28 16:09:52 +02:00
f9ada379f2 Apply Node20 workaround 2024-12-28 15:35:54 +02:00
910e57e789 Update ci.yml 2024-12-28 15:33:59 +02:00
0d2a85b3de Move inter-lib dependencies to a project variable and into the build targets. 2024-07-23 22:34:22 -05:00
c62822b6b5 Update copyright dates. 2024-07-20 22:52:03 -05:00
d5e87381fe Bump B2 require to 5.2 2024-06-14 11:33:56 -05:00
4cef4160fa Add requires-b2 check to top-level build file. 2024-05-05 09:00:01 -05:00
bf702eb1fd Merge branch 'boostorg:develop' into modular 2024-02-04 12:21:04 -06:00
c4ea7e40d3 Update test/CMakeLists.txt 2024-02-04 19:09:41 +02:00
fb8ebc8b42 Merge branch 'modular-location-independent' of https://github.com/grafikrobot/boostorg.preprocessor into feature/pr-57 2024-02-04 19:07:42 +02:00
3f3f1e070a Disable __VA_OPT__ for Clang 8 as well 2024-02-04 18:48:22 +02:00
ec8d33c4a0 Update ci.yml 2024-02-04 18:21:57 +02:00
a3d0db9305 Avoid references to root project. 2024-02-04 09:56:35 -06:00
a475d97e89 Add modular library level build file. 2024-02-04 09:47:19 -06:00
667e87b339 Change C test names to not conflict with the C++ ones 2022-08-16 20:59:52 +03:00
e919b652af Disable __VA_OPT__ on g++ 8/9 in c++2a mode, as vaopt.cpp fails 2022-08-16 19:09:04 +03:00
108a948323 Add .github/workflows 2022-08-16 11:31:06 +03:00
eacc296fa5 Merge branch 'master' into develop 2022-08-16 11:27:43 +03:00
f29be910a0 Fix references to parameters e129 and e193 2022-02-07 09:55:43 -03:00
d4e82d7d3f Merge branch 'develop' 2021-06-27 13:24:38 -04:00
69614bb1da Fix CMake tests in .travis.yml 2021-06-10 16:37:10 +03:00
24abbdc906 Update CMakeLists.txt 2021-06-10 02:09:03 +03:00
45178c3cc5 Merge branch 'master' into develop 2021-06-10 02:07:17 +03:00
93b896c932 Corrected cmake tests 2021-05-29 08:59:36 -04:00
229f654b59 Merge branch 'develop' 2021-02-15 16:07:36 -05:00
aa8f347df2 Treat nvcc compiling in cuda mode with _MSC_VER defined as if it is the VC++ default preprocessor as far as variadic macro support is concerned. 2021-02-11 23:38:30 -05:00
d8471d6526 Merge pull request #36 from sdarwin/drone
Drone config
2021-01-13 12:42:59 -05:00
bee33b0117 add drone config [ci skip] 2021-01-13 17:09:26 +00:00
b49e14231f Merge branch 'develop' 2020-12-29 16:26:32 -05:00
5289c50299 Update meta information 2020-12-28 10:15:43 -05:00
5e17804af2 Merge branch 'develop' 2020-10-25 06:16:15 -04:00
15dcb92ebf Revert "Chyange number of jobs to use $nproc"
This reverts commit 112673238a.
2020-10-25 06:15:04 -04:00
ae5e475169 Merge branch 'develop' 2020-10-24 20:35:07 -04:00
112673238a Chyange number of jobs to use $nproc 2020-10-24 20:33:54 -04:00
bff73def85 Remove preprocessor limits CI testing 2020-09-25 12:47:54 -04:00
5e2770334d Address model for msvc-10 and msvc-11 must be only 32-bit in appveyor.yml 2020-09-25 11:18:29 -04:00
e4186a6df1 Updated appveyor tests 2020-09-22 19:33:56 -04:00
4a274cbe86 Corrected msvc-14.0 setup 2020-09-22 13:24:12 -04:00
7bed5072e4 Update on config.hpp so we are not redefining a defined macro. 2020-09-22 00:30:33 -04:00
b3f95b899f More individual travis ci preprocessor limits tests. 2020-09-21 18:39:06 -04:00
8f937e431e More individual appveyor preprocessor limits tests. 2020-09-20 17:26:49 -04:00
879e876d45 Add address-model for limits build in Travis CI 2020-09-20 06:15:41 -04:00
1a2e813fcb Corrected Travis CI syntax 2020-09-20 05:38:29 -04:00
5a30bc472d Updated Appveyor setup. 2020-09-20 00:52:01 -04:00
d12d2d9a3a Updated .yml files 2020-09-19 23:02:30 -04:00
2ab48feed5 Corrected syntax 2020-09-19 19:46:58 -04:00
6ec9072f27 Update yml to handle Boost Build bug with explicit alias when not invoking b2 from the test directory. 2020-09-19 17:46:22 -04:00
cac5e3e2ef Rearrangement of links and better explanation of variadic macro support. 2020-09-19 09:14:26 -04:00
4b1d674a17 Updated title page specifying assumption of variadic macro support. 2020-09-19 07:59:43 -04:00
9fcd0a289a Upgrade docs to say that variadic macros must be supported by the compiler. 2020-09-19 02:24:44 -04:00
5fd12d32d4 Assume variadic macro support. 2020-09-17 18:25:36 -04:00
8288ce7575 Updated limitations docs. 2020-09-14 18:26:49 -04:00
ae836b12e4 Updated appveyor which protects b2 parameter by putting it within quote marks. 2020-09-14 15:43:10 -04:00
fe22f14954 Fixed check by not omitting the 0 check. 2020-09-04 17:38:08 -04:00
322e4266fb Reinstalled Intel on Windows fix fgor 17.0 on up. 2020-09-02 04:14:49 -04:00
f74e04f827 Fixed tests for non-strict compilers. 2020-09-02 01:37:00 -04:00
1ace1d3806 Fixed syntax error of a missing #endif 2020-09-01 21:08:13 -04:00
ed066d3c81 Further separation to strict and non-strict implementations in variadic implementations. 2020-09-01 19:31:41 -04:00
96e994a25a Further separation to strict and non-strict implementations in tuple implementations. 2020-09-01 19:19:23 -04:00
ac553f44fb Further separation to strict and non-strict implementations in seq implementations. 2020-09-01 16:03:28 -04:00
b93e99332b Further separation to strict and non-strict implementations in logical and repetition implementations. 2020-09-01 08:30:03 -04:00
001d109eab Further separation to strict and non-strict implementations in list implementations. 2020-09-01 02:50:29 -04:00
fedfdc2f32 Further separation to strict and non-strict implementations. 2020-09-01 00:35:19 -04:00
775f9eb24e Further separation to strict and non-strict implementations. 2020-08-31 21:08:44 -04:00
9b8138324f Changed separation to strict and non-strict implementations and include only the header files needed by either. 2020-08-31 16:51:00 -04:00
158fc13f01 Changed separation to strict and non-strict implementations and include only the header files needed by either. 2020-08-31 16:38:03 -04:00
721ef44e79 Revert arithmetic changes to original for msvc default preprocessor. 2020-08-31 10:55:17 -04:00
c1eb9292d7 Removed BOOST_PP_CAT workaround for Intel compiler on Windows for version 18.0 and above, as it was causing a failure in preprocessor tests. 2020-08-30 15:07:31 -04:00
d49db1ef09 Testing preprocessor limits in CI 2020-08-28 14:37:49 -04:00
92ac085edf Updated for new VC++ preprocessor, explicit tests, address model, and cxxstd. 2020-08-28 01:00:37 -04:00
fe67cda385 Create explicit tests for the limitation tests. 2020-08-28 00:59:47 -04:00
a1303d0763 Fixed erroneous extra #endif 2020-08-27 01:35:33 -04:00
5c83504677 Merge branch 'develop' into expand_number
# Conflicts:
#	include/boost/preprocessor/variadic/size.hpp
#	test/seq.cxx
#	test/variadic.cxx
2020-08-27 00:46:34 -04:00
b0a0bb281c Reinstituted a test. 2020-08-26 21:51:08 -04:00
661aa5c36e Cleanmer variadic size implementation. 2020-08-26 21:49:21 -04:00
a9ed92efbd Updates for empty variadic data. 2020-08-26 17:47:07 -04:00
f977ee0cd9 Updated the docs for limitations. 2020-08-23 20:12:06 -04:00
5d70c1fc7b Corrected limit. Added BOOST_PP_IS_STANDARD macro. Updated variadic tests. 2020-08-23 20:08:38 -04:00
1cf82f9928 Separate variadic and tuple limits so that variadic limits can be greater. 2020-08-17 21:22:13 -04:00
59cdb3e5db Updated limits and corrected deduce_r. 2020-08-16 11:20:25 -04:00
2c20e742a1 Merge branch 'develop' into master 2020-08-14 19:42:33 -04:00
4afae94309 Updated tests for clang 2020-08-14 19:38:55 -04:00
44a4e07994 Fix non-variadic tuple elem access. 2020-08-13 01:38:33 -04:00
3f43be5b55 Limited fold_left invocations. 2020-08-12 12:32:57 -04:00
d86d461aa7 Corrected seq's fold_left. 2020-08-11 22:13:23 -04:00
45565b6dc3 Updated tests for VC++ deficiencies. 2020-08-11 10:26:13 -04:00
1fe79acc20 Updated list tests 2020-08-10 21:11:57 -04:00
ff9d451901 Added selection tests. 2020-08-09 11:09:50 -04:00
e7b1f71c7e Updated tests and doc fix. 2020-08-08 11:30:37 -04:00
e44c47c9c3 Merge pull request #32 from jwakely/develop
Fix invalid XHTML document
2020-08-05 09:33:41 -04:00
0e1a2fecb1 Fix invalid XHTML document 2020-08-05 10:40:01 +01:00
c5fe11a649 Updated comparisons for 1024 maximum. 2020-08-01 17:57:02 -04:00
ee0c4135c3 Updated arithmetic tests for 1024 max. 2020-07-31 23:41:43 -04:00
2fb4b3de1b Iteration limit to 1024. 2020-07-28 20:36:00 -04:00
585fad5198 Fix dec limits. Allow 1024 in number and seq limits. 2020-07-28 01:39:40 -04:00
21f796567e Add 1024 limit for all related number functionality 2020-07-27 20:59:29 -04:00
905520aaf8 Added 1024 as maximum number 2020-07-27 07:54:05 -04:00
ea15d11d2f Updated iteration tests for 512 maximum 2020-07-25 12:43:39 -04:00
42a283d112 Repetition tests when exceeding the 256 minimum number of repetitions 2020-07-19 17:30:40 -04:00
aba61d6018 Rename to all lower case. 2020-07-14 17:52:41 -04:00
572f3f4d4a Fixed syntax error. 2020-07-14 17:39:48 -04:00
6272649c8f Allow macro to be passed only tuple, without the tuple size, when variadics are used. 2020-07-14 17:34:17 -04:00
efe8cb6242 Updated list tests 2020-07-12 19:06:21 -04:00
a03dd0419e Fix syntax error 2020-07-12 19:05:57 -04:00
9ba4469131 Fixed size implementation. 2020-07-11 13:51:08 -04:00
7e3516eb8f Revert "Revert to original size implementation now that 'while' has been expanded by one iteration."
This reverts commit 7e30c606b7.
2020-07-11 13:46:35 -04:00
7e30c606b7 Revert to original size implementation now that 'while' has been expanded by one iteration. 2020-07-11 11:05:21 -04:00
28a0c21651 Maximum for loop 2020-07-11 05:04:00 -04:00
0fbfe9c981 Increased while loops by one to encompass maximum numbers. 2020-07-10 23:06:27 -04:00
c8e005f696 Corrected fold_left to allow for maximum tests. 2020-07-10 12:19:38 -04:00
74f652c85f Updated size. 2020-07-08 22:04:07 -04:00
b9424eac02 Revert back to original reverse implementation 2020-07-07 20:23:58 -04:00
f10c669bab Add more large list tests 2020-07-07 19:13:37 -04:00
0fd6b84304 Add extra iteration for fold_left and fold_right to cover maximum operations. 2020-07-07 19:13:05 -04:00
db21240060 Split reverse for seq seize greater than 256 2020-07-05 13:13:06 -04:00
14a263bf9d Updated to not do duplicate dec 2020-07-05 10:57:18 -04:00
5c7ae49828 Updated doc doe BOOST_PP_OVERLOAD. 2020-07-03 14:18:44 -04:00
bb9d4273d4 Updated seq tests 2020-07-02 18:39:04 -04:00
110ddaca75 Updated tests. 2020-07-02 15:07:17 -04:00
5e74d9f12e Added config.hpp back. 2020-07-02 12:13:22 -04:00
1b5c17f75b Updated header includes 2020-07-02 11:36:36 -04:00
15d0d66a75 Updated limit implementation. 2020-07-02 11:24:15 -04:00
e231fe7ad9 Updated docs for the the fact that in C++20 mode when __VA_OPT__ is supported variadic data passed some of the variadic macros can be empty. 2020-06-30 14:50:47 -04:00
a037024cec Updated Travis CI clang 9 and 10 configurations 2020-06-30 13:32:30 -04:00
57c160f921 Updated travis CI tests 2020-06-30 10:55:50 -04:00
3ac4c915a3 In C++20 variadic data can be empty. This means that BOOST_PP_VARIADIC_SIZE now returns 0 for empty data instead of 1, and that conversions to and from empty variadic data and lists or arrays, which can be empty, work properly. 2020-06-29 21:57:23 -04:00
47b430e3d5 Updated limits need undefs. Break reverse into two eequal parts. Updated seq tests. 2020-06-28 12:52:41 -04:00
59048974ba When the tuple limit is not 256, use previous implementation 2020-06-13 13:19:21 -04:00
62da4cc84b Updated tests. 2020-06-13 04:01:22 -04:00
b72dcd7958 Fixed array functionality for large arrays. 2020-06-11 20:44:39 -04:00
cf34b5c21b Simplified functionality 2020-06-11 08:23:22 -04:00
1347313cae Added copyright 2020-06-11 08:22:46 -04:00
31704b522a Added copyrights 2020-06-11 08:22:00 -04:00
f16f7721b5 Corrected syntax errors 2020-06-11 08:20:53 -04:00
43f02f9405 Simplified multiplication 2020-06-10 11:05:43 -04:00
e8bbb16f57 Use detail check for number 1 rather than empty implementation. 2020-06-10 10:44:35 -04:00
25aaea0136 Updated arithmetic. 2020-06-10 09:59:30 -04:00
13c9669410 Updated arithmetic implementations to deal with corner cases whichy run out of WHILE loops. 2020-06-09 20:54:12 -04:00
d41d1dda97 Updated multiplication and subtraction to check for maximum/minimum numbers. 2020-06-07 15:49:53 -04:00
c07bb185c1 Updated BOOST_PP_ADD implementation checking for the maximum number. 2020-06-07 05:36:32 -04:00
43caf4d41e Added macros for testing miniumum (0) andf maximum numbers. 2020-06-06 16:12:56 -04:00
a6c5cd5bcf Update test and jamfile 2020-06-04 21:52:46 -04:00
05b3defe2f Update arithmetic tests 2020-05-29 21:35:40 -04:00
d49211a963 Only allow limits to be used by strictly conforming compilers. 2020-05-29 21:35:08 -04:00
7541c351ce Update variadics test. 2020-05-29 13:12:53 -04:00
b68a2409ad Fix syntax errors. 2020-05-29 13:11:46 -04:00
0999dfe1d5 Update default list size from 255 to 256. 2020-05-29 13:11:04 -04:00
a7560df684 Adding limits for repetition and seq. 2020-05-19 15:35:54 -04:00
efa576203b Testing of numbers up to 512 2020-05-09 17:03:48 -04:00
fd3b57b15a Added arithmetic testing for numbers up to 512. Corrected seq macro which does not expect a number above 256. 2020-05-04 18:44:20 -04:00
c859da1fc9 Fixed some syntax errors and updated a test to asccount for numbers being more than 256. 2020-05-04 00:34:09 -04:00
efea46b2fb Allow iteration limits to be configured 2020-05-03 22:31:58 -04:00
b95d91ee71 Use a separate BOOST_PP_LIMIT_VARIADIC for variadic elements 2020-05-03 14:35:41 -04:00
9bf0043260 Updates for tuple elements of more than 64 elements 2020-05-02 21:59:30 -04:00
533d636ece Implement tuple limits for TUPLE functionality. Add updated copyright for changed files. 2020-05-01 14:38:32 -04:00
0dcaaac66f Changed directory structure so that all limits implementations are in their own relative "limits" subdirectory. 2020-04-30 10:24:33 -04:00
3b6102cd03 Added ability to change the number of tuple elements. A number of small fixes. 2020-04-30 09:06:06 -04:00
82addd1b28 Support for expanded numbers up to 512, as well as expanded while iterationms up to 512. 2020-04-29 06:38:10 -04:00
ffb26db146 Not going to test msvc-9,0 anymore. It is just too old and I can not test it locally. 2020-04-26 09:38:05 -04:00
341 changed files with 112390 additions and 2226 deletions

52
.drone.star Normal file
View File

@ -0,0 +1,52 @@
# Use, modification, and distribution are
# subject to the Boost Software License, Version 1.0. (See accompanying
# file LICENSE.txt)
#
# Copyright Rene Rivera 2020.
# For Drone CI we use the Starlark scripting language to reduce duplication.
# As the yaml syntax for Drone CI is rather limited.
#
#
globalenv={}
linuxglobalimage="cppalliance/droneubuntu1604:1"
windowsglobalimage="cppalliance/dronevs2019"
def main(ctx):
return [
linux_cxx("TOOLSET=gcc COMPILER=g++ CXXSTD=03,11 Job 0", "g++", packages="", buildtype="boost", buildscript="drone", image=linuxglobalimage, environment={'TOOLSET': 'gcc', 'COMPILER': 'g++', 'CXXSTD': '03,11', 'DRONE_JOB_UUID': 'b6589fc6ab'}, globalenv=globalenv),
linux_cxx("TOOLSET=gcc COMPILER=g++-4.4 CXXSTD=98 Job 1", "g++", packages="g++-4.4", buildtype="boost", buildscript="drone", image=linuxglobalimage, environment={'TOOLSET': 'gcc', 'COMPILER': 'g++-4.4', 'CXXSTD': '98', 'DRONE_JOB_UUID': '356a192b79'}, globalenv=globalenv),
linux_cxx("TOOLSET=gcc COMPILER=g++-4.6 CXXSTD=03,0x Job 2", "g++", packages="g++-4.6", buildtype="boost", buildscript="drone", image=linuxglobalimage, environment={'TOOLSET': 'gcc', 'COMPILER': 'g++-4.6', 'CXXSTD': '03,0x', 'DRONE_JOB_UUID': 'da4b9237ba'}, globalenv=globalenv),
linux_cxx("TOOLSET=gcc COMPILER=g++-4.7 CXXSTD=03,11 Job 3", "g++-4.7", packages="g++-4.7", buildtype="boost", buildscript="drone", image=linuxglobalimage, environment={'TOOLSET': 'gcc', 'COMPILER': 'g++-4.7', 'CXXSTD': '03,11', 'DRONE_JOB_UUID': '77de68daec'}, globalenv=globalenv),
linux_cxx("TOOLSET=gcc COMPILER=g++-4.8 CXXSTD=03,11 Job 4", "g++-4.8", packages="g++-4.8", buildtype="boost", buildscript="drone", image=linuxglobalimage, environment={'TOOLSET': 'gcc', 'COMPILER': 'g++-4.8', 'CXXSTD': '03,11', 'DRONE_JOB_UUID': '1b64538924'}, globalenv=globalenv),
linux_cxx("TOOLSET=gcc COMPILER=g++-4.9 CXXSTD=03,11 Job 5", "g++-4.9", packages="g++-4.9", buildtype="boost", buildscript="drone", image=linuxglobalimage, environment={'TOOLSET': 'gcc', 'COMPILER': 'g++-4.9', 'CXXSTD': '03,11', 'DRONE_JOB_UUID': 'ac3478d69a'}, globalenv=globalenv),
linux_cxx("TOOLSET=gcc COMPILER=g++-5 CXXSTD=03,11,14,1z Job 6", "g++-5", packages="g++-5", buildtype="boost", buildscript="drone", image=linuxglobalimage, environment={'TOOLSET': 'gcc', 'COMPILER': 'g++-5', 'CXXSTD': '03,11,14,1z', 'DRONE_JOB_UUID': 'c1dfd96eea'}, globalenv=globalenv),
linux_cxx("TOOLSET=gcc COMPILER=g++-6 CXXSTD=03,11,14,1z Job 7", "g++-6", packages="g++-6", buildtype="boost", buildscript="drone", image=linuxglobalimage, environment={'TOOLSET': 'gcc', 'COMPILER': 'g++-6', 'CXXSTD': '03,11,14,1z', 'DRONE_JOB_UUID': '902ba3cda1'}, globalenv=globalenv),
linux_cxx("TOOLSET=gcc COMPILER=g++-7 CXXSTD=03,11,14,17 Job 8", "g++-7", packages="g++-7", buildtype="boost", buildscript="drone", image="cppalliance/droneubuntu1404:1", environment={'TOOLSET': 'gcc', 'COMPILER': 'g++-7', 'CXXSTD': '03,11,14,17', 'DRONE_JOB_UUID': 'fe5dbbcea5'}, globalenv=globalenv),
linux_cxx("TOOLSET=gcc COMPILER=g++-8 CXXSTD=03,11,14,17 Job 9", "g++-8", packages="g++-8", buildtype="boost", buildscript="drone", image=linuxglobalimage, environment={'TOOLSET': 'gcc', 'COMPILER': 'g++-8', 'CXXSTD': '03,11,14,17', 'DRONE_JOB_UUID': '0ade7c2cf9'}, globalenv=globalenv),
linux_cxx("TOOLSET=gcc COMPILER=g++-9 CXXSTD=03,11,14,17 Job 10", "g++-9", packages="g++-9", buildtype="boost", buildscript="drone", image=linuxglobalimage, environment={'TOOLSET': 'gcc', 'COMPILER': 'g++-9', 'CXXSTD': '03,11,14,17', 'DRONE_JOB_UUID': 'b1d5781111'}, globalenv=globalenv),
linux_cxx("TOOLSET=gcc COMPILER=g++-10 CXXSTD=03,11,14,1 Job 11", "g++-10", packages="g++-10", buildtype="boost", buildscript="drone", image="cppalliance/droneubuntu1804:1", environment={'TOOLSET': 'gcc', 'COMPILER': 'g++-10', 'CXXSTD': '03,11,14,17,2a', 'DRONE_JOB_UUID': '17ba079149'}, globalenv=globalenv),
linux_cxx("TOOLSET=clang COMPILER=clang++ CXXSTD=03,11 Job 12", "clang++", packages="", buildtype="boost", buildscript="drone", image=linuxglobalimage, environment={'TOOLSET': 'clang', 'COMPILER': 'clang++', 'CXXSTD': '03,11', 'DRONE_JOB_UUID': '7b52009b64'}, globalenv=globalenv),
linux_cxx("TOOLSET=clang COMPILER=/usr/bin/clang++ CXXST Job 13", "/usr/bin/clang++", packages="clang-3.3", buildtype="boost", buildscript="drone", image="cppalliance/droneubuntu1404:1", environment={'TOOLSET': 'clang', 'COMPILER': '/usr/bin/clang++', 'CXXSTD': '03,11', 'DRONE_JOB_UUID': 'bd307a3ec3'}, globalenv=globalenv),
linux_cxx("TOOLSET=clang COMPILER=/usr/bin/clang++ CXXST Job 14", "/usr/bin/clang++", packages="clang-3.4", buildtype="boost", buildscript="drone", image="cppalliance/droneubuntu1404:1", environment={'TOOLSET': 'clang', 'COMPILER': '/usr/bin/clang++', 'CXXSTD': '03,11', 'DRONE_JOB_UUID': 'fa35e19212'}, globalenv=globalenv),
linux_cxx("TOOLSET=clang COMPILER=clang++-3.5 CXXSTD=03, Job 15", "clang++", packages="clang-3.5", buildtype="boost", buildscript="drone", image=linuxglobalimage, environment={'TOOLSET': 'clang', 'COMPILER': 'clang++-3.5', 'CXXSTD': '03,11,14,1z', 'DRONE_JOB_UUID': 'f1abd67035'}, globalenv=globalenv),
linux_cxx("TOOLSET=clang COMPILER=clang++-3.6 CXXSTD=03, Job 16", "clang++", packages="clang-3.6", buildtype="boost", buildscript="drone", image=linuxglobalimage, environment={'TOOLSET': 'clang', 'COMPILER': 'clang++-3.6', 'CXXSTD': '03,11,14,1z', 'DRONE_JOB_UUID': '1574bddb75'}, globalenv=globalenv),
linux_cxx("TOOLSET=clang COMPILER=clang++-3.7 CXXSTD=03, Job 17", "clang++", packages="clang-3.7", buildtype="boost", buildscript="drone", image=linuxglobalimage, environment={'TOOLSET': 'clang', 'COMPILER': 'clang++-3.7', 'CXXSTD': '03,11,14,1z', 'DRONE_JOB_UUID': '0716d9708d'}, globalenv=globalenv),
linux_cxx("TOOLSET=clang COMPILER=clang++-3.8 CXXSTD=03, Job 18", "clang++-3.8", packages="clang-3.8", buildtype="boost", buildscript="drone", image=linuxglobalimage, environment={'TOOLSET': 'clang', 'COMPILER': 'clang++-3.8', 'CXXSTD': '03,11,14,1z', 'DRONE_JOB_UUID': '9e6a55b6b4'}, globalenv=globalenv),
linux_cxx("TOOLSET=clang COMPILER=clang++-3.9 CXXSTD=03, Job 19", "clang++-3.9", packages="clang-3.9", buildtype="boost", buildscript="drone", image=linuxglobalimage, environment={'TOOLSET': 'clang', 'COMPILER': 'clang++-3.9', 'CXXSTD': '03,11,14,1z', 'DRONE_JOB_UUID': 'b3f0c7f6bb'}, globalenv=globalenv),
linux_cxx("TOOLSET=clang COMPILER=clang++-4.0 CXXSTD=03, Job 20", "clang++-4.0", packages="clang-4.0", buildtype="boost", buildscript="drone", image=linuxglobalimage, environment={'TOOLSET': 'clang', 'COMPILER': 'clang++-4.0', 'CXXSTD': '03,11,14,1z', 'DRONE_JOB_UUID': '91032ad7bb'}, globalenv=globalenv),
linux_cxx("TOOLSET=clang COMPILER=clang++-5.0 CXXSTD=03, Job 21", "clang++-5.0", packages="clang-5.0", buildtype="boost", buildscript="drone", image=linuxglobalimage, environment={'TOOLSET': 'clang', 'COMPILER': 'clang++-5.0', 'CXXSTD': '03,11,14,1z', 'DRONE_JOB_UUID': '472b07b9fc'}, globalenv=globalenv),
linux_cxx("TOOLSET=clang COMPILER=clang++-6.0 CXXSTD=03, Job 22", "clang++-6.0", packages="clang-6.0", buildtype="boost", buildscript="drone", image=linuxglobalimage, environment={'TOOLSET': 'clang', 'COMPILER': 'clang++-6.0', 'CXXSTD': '03,11,14,17', 'DRONE_JOB_UUID': '12c6fc06c9'}, globalenv=globalenv),
linux_cxx("TOOLSET=clang COMPILER=clang++-7 CXXSTD=03,11 Job 23", "clang++-7", packages="clang-7", llvm_os="xenial", llvm_ver="7", buildtype="boost", buildscript="drone", image=linuxglobalimage, environment={'TOOLSET': 'clang', 'COMPILER': 'clang++-7', 'CXXSTD': '03,11,14,17', 'DRONE_JOB_UUID': 'd435a6cdd7'}, globalenv=globalenv),
linux_cxx("TOOLSET=clang COMPILER=clang++-8 CXXSTD=03,11 Job 24", "clang++-8", packages="clang-8", llvm_os="xenial", llvm_ver="8", buildtype="boost", buildscript="drone", image=linuxglobalimage, environment={'TOOLSET': 'clang', 'COMPILER': 'clang++-8', 'CXXSTD': '03,11,14,17', 'DRONE_JOB_UUID': '4d134bc072'}, globalenv=globalenv),
linux_cxx("TOOLSET=clang COMPILER=clang++-9 CXXSTD=03,11 Job 25", "clang++-9", packages="clang-9", llvm_os="xenial", llvm_ver="9", buildtype="boost", buildscript="drone", image=linuxglobalimage, environment={'TOOLSET': 'clang', 'COMPILER': 'clang++-9', 'CXXSTD': '03,11,14,17,2a', 'DRONE_JOB_UUID': 'f6e1126ced'}, globalenv=globalenv),
linux_cxx("TOOLSET=clang COMPILER=clang++-10 CXXSTD=03,1 Job 26", "clang++-10", packages="clang-10", llvm_os="xenial", llvm_ver="10", buildtype="boost", buildscript="drone", image=linuxglobalimage, environment={'TOOLSET': 'clang', 'COMPILER': 'clang++-10', 'CXXSTD': '03,11,14,17,2a', 'DRONE_JOB_UUID': '887309d048'}, globalenv=globalenv),
linux_cxx("TOOLSET=clang COMPILER=clang++-libc++ CXXSTD= Job 27", "clang++-libc++", packages="libc++-dev", buildtype="boost", buildscript="drone", image="cppalliance/droneubuntu1404:1", environment={'TOOLSET': 'clang', 'COMPILER': 'clang++-libc++', 'CXXSTD': '03,11,14,1z', 'DRONE_JOB_UUID': 'bc33ea4e26'}, globalenv=globalenv),
osx_cxx("TOOLSET=clang COMPILER=clang++ CXXSTD=03,11,1 Job 28", "clang++", packages="", buildtype="boost", buildscript="drone", environment={'TOOLSET': 'clang', 'COMPILER': 'clang++', 'CXXSTD': '03,11,14,1z', 'DRONE_JOB_UUID': '0a57cb53ba'}, globalenv=globalenv),
linux_cxx("CMAKE_TEST=1 Job 29", "g++", packages="", buildtype="cmake-test-script", buildscript="drone", image=linuxglobalimage, environment={'CMAKE_TEST': '1', 'DRONE_JOB_UUID': '7719a1c782'}, globalenv=globalenv),
linux_cxx("CMAKE_SUBDIR_TEST=1 Job 30", "g++", packages="", buildtype="cmake-subdir-script", buildscript="drone", image=linuxglobalimage, environment={'CMAKE_SUBDIR_TEST': '1', 'DRONE_JOB_UUID': '22d200f867'}, globalenv=globalenv),
linux_cxx("CMAKE_INSTALL_TEST=1 Job 31", "g++", packages="", buildtype="cmake-install-script", buildscript="drone", image=linuxglobalimage, environment={'CMAKE_INSTALL_TEST': '1', 'DRONE_JOB_UUID': '632667547e'}, globalenv=globalenv),
]
# from https://github.com/boostorg/boost-ci
load("@boost_ci//ci/drone/:functions.star", "linux_cxx","windows_cxx","osx_cxx","freebsd_cxx")

88
.drone/drone.sh Executable file
View File

@ -0,0 +1,88 @@
#!/bin/bash
set -ex
export TRAVIS_BUILD_DIR=$(pwd)
export DRONE_BUILD_DIR=$(pwd)
export TRAVIS_BRANCH=$DRONE_BRANCH
export VCS_COMMIT_ID=$DRONE_COMMIT
export GIT_COMMIT=$DRONE_COMMIT
export REPO_NAME=$DRONE_REPO
export PATH=~/.local/bin:/usr/local/bin:$PATH
if [ "$DRONE_JOB_BUILDTYPE" == "boost" ]; then
echo '==================================> INSTALL'
BOOST_BRANCH=develop && [ "$TRAVIS_BRANCH" == "master" ] && BOOST_BRANCH=master || true
cd ..
git clone -b $BOOST_BRANCH --depth 1 https://github.com/boostorg/boost.git boost-root
cd boost-root
git submodule update --init tools/boostdep
cp -r $TRAVIS_BUILD_DIR/* libs/preprocessor
python tools/boostdep/depinst/depinst.py preprocessor
./bootstrap.sh
./b2 headers
echo '==================================> SCRIPT'
echo "using $TOOLSET : : $COMPILER ;" > ~/user-config.jam
./b2 libs/preprocessor/test -j 3 toolset=$TOOLSET cxxstd=$CXXSTD $ADDRMD
elif [ "$DRONE_JOB_BUILDTYPE" == "cmake-install-script" ]; then
echo '==================================> INSTALL'
BOOST_BRANCH=develop && [ "$TRAVIS_BRANCH" == "master" ] && BOOST_BRANCH=master || true
cd ..
git clone -b $BOOST_BRANCH --depth 1 https://github.com/boostorg/boost.git boost-root
cd boost-root
git submodule update --init tools/boostdep
cp -r $TRAVIS_BUILD_DIR/* libs/preprocessor
python tools/boostdep/depinst/depinst.py preprocessor
./bootstrap.sh
./b2 headers
echo '==================================> SCRIPT'
mkdir __build__ && cd __build__
cmake -DBOOST_ENABLE_CMAKE=1 -DBoost_VERBOSE=1 -DBOOST_INCLUDE_LIBRARIES=preprocessor -DCMAKE_INSTALL_PREFIX=~/.local ..
cmake --build . --target install
cd ../libs/preprocessor/test/cmake_install_test && mkdir __build__ && cd __build__
cmake -DCMAKE_INSTALL_PREFIX=~/.local ..
cmake --build .
cmake --build . --target check
elif [ "$DRONE_JOB_BUILDTYPE" == "cmake-subdir-script" ]; then
echo '==================================> INSTALL'
true
echo '==================================> SCRIPT'
cd test/cmake_subdir_test && mkdir __build__ && cd __build__
cmake ..
cmake --build .
cmake --build . --target check
elif [ "$DRONE_JOB_BUILDTYPE" == "cmake-test-script" ]; then
echo '==================================> INSTALL'
BOOST_BRANCH=develop && [ "$TRAVIS_BRANCH" == "master" ] && BOOST_BRANCH=master || true
cd ..
git clone -b $BOOST_BRANCH --depth 1 https://github.com/boostorg/boost.git boost-root
cd boost-root
git submodule update --init tools/boostdep
cp -r $TRAVIS_BUILD_DIR/* libs/preprocessor
python tools/boostdep/depinst/depinst.py preprocessor
./bootstrap.sh
./b2 headers
echo '==================================> SCRIPT'
mkdir __build__ && cd __build__
cmake -DBOOST_ENABLE_CMAKE=1 -DBoost_VERBOSE=1 -DBOOST_INCLUDE_LIBRARIES=preprocessor ..
ctest --output-on-failure -R boost_preprocessor
fi

643
.github/workflows/ci.yml vendored Normal file
View File

@ -0,0 +1,643 @@
name: CI
on:
pull_request:
push:
branches:
- master
- develop
- feature/**
env:
UBSAN_OPTIONS: print_stacktrace=1
jobs:
posix:
strategy:
fail-fast: false
matrix:
include:
- toolset: gcc-4.8
cxxstd: "03,11"
container: ubuntu:18.04
os: ubuntu-latest
install: g++-4.8
- toolset: gcc-5
cxxstd: "03,11,14,1z"
container: ubuntu:18.04
os: ubuntu-latest
install: g++-5
- toolset: gcc-6
cxxstd: "03,11,14,1z"
container: ubuntu:18.04
os: ubuntu-latest
install: g++-6
- toolset: gcc-7
cxxstd: "03,11,14,17"
container: ubuntu:18.04
os: ubuntu-latest
install: g++-7
- toolset: gcc-8
cxxstd: "03,11,14,17,2a"
container: ubuntu:18.04
os: ubuntu-latest
install: g++-8
- toolset: gcc-9
cxxstd: "03,11,14,17,2a"
container: ubuntu:20.04
os: ubuntu-latest
- toolset: gcc-10
cxxstd: "03,11,14,17,2a"
container: ubuntu:20.04
os: ubuntu-latest
install: g++-10
- toolset: gcc-11
cxxstd: "03,11,14,17,2a"
os: ubuntu-22.04
install: g++-11
- toolset: gcc-12
cxxstd: "03,11,14,17,20,2b"
os: ubuntu-22.04
install: g++-12
- toolset: gcc-13
cxxstd: "03,11,14,17,20,2b"
container: ubuntu:24.04
os: ubuntu-latest
install: g++-13
- toolset: gcc-14
cxxstd: "03,11,14,17,20,2b"
container: ubuntu:24.04
os: ubuntu-latest
install: g++-14
- toolset: clang
compiler: clang++-3.9
cxxstd: "03,11,14"
container: ubuntu:18.04
os: ubuntu-latest
install: clang-3.9
- toolset: clang
compiler: clang++-4.0
cxxstd: "03,11,14"
container: ubuntu:18.04
os: ubuntu-latest
install: clang-4.0
- toolset: clang
compiler: clang++-5.0
cxxstd: "03,11,14,1z"
container: ubuntu:18.04
os: ubuntu-latest
install: clang-5.0
- toolset: clang
compiler: clang++-6.0
cxxstd: "03,11,14,17"
container: ubuntu:20.04
os: ubuntu-latest
install: clang-6.0
- toolset: clang
compiler: clang++-7
cxxstd: "03,11,14,17"
container: ubuntu:20.04
os: ubuntu-latest
install: clang-7
- toolset: clang
compiler: clang++-8
cxxstd: "03,11,14,17,2a"
container: ubuntu:20.04
os: ubuntu-latest
install: clang-8
- toolset: clang
compiler: clang++-9
cxxstd: "03,11,14,17,2a"
container: ubuntu:20.04
os: ubuntu-latest
install: clang-9
- toolset: clang
compiler: clang++-10
cxxstd: "03,11,14,17,2a"
container: ubuntu:20.04
os: ubuntu-latest
install: clang-10
- toolset: clang
compiler: clang++-11
cxxstd: "03,11,14,17,2a"
container: ubuntu:20.04
os: ubuntu-latest
install: clang-11
- toolset: clang
compiler: clang++-12
cxxstd: "03,11,14,17,2a"
container: ubuntu:20.04
os: ubuntu-latest
install: clang-12
- toolset: clang
compiler: clang++-13
cxxstd: "03,11,14,17,20,2b"
container: ubuntu:22.04
os: ubuntu-latest
install: clang-13
- toolset: clang
compiler: clang++-14
cxxstd: "03,11,14,17,20,2b"
container: ubuntu:22.04
os: ubuntu-latest
install: clang-14
- toolset: clang
compiler: clang++-15
cxxstd: "03,11,14,17,20,2b"
container: ubuntu:22.04
os: ubuntu-latest
install: clang-15
- toolset: clang
compiler: clang++-16
cxxstd: "03,11,14,17,20,2b"
container: ubuntu:24.04
os: ubuntu-latest
install: clang-16
- toolset: clang
compiler: clang++-17
cxxstd: "03,11,14,17,20,2b"
container: ubuntu:24.04
os: ubuntu-latest
install: clang-17
- toolset: clang
compiler: clang++-18
cxxstd: "03,11,14,17,20,2b"
container: ubuntu:24.04
os: ubuntu-latest
install: clang-18
- toolset: clang
cxxstd: "03,11,14,17,20,2b"
os: macos-13
- toolset: clang
cxxstd: "03,11,14,17,20,2b"
os: macos-14
- toolset: clang
cxxstd: "03,11,14,17,20,2b"
os: macos-15
runs-on: ${{matrix.os}}
container:
image: ${{matrix.container}}
volumes:
- /node20217:/node20217:rw,rshared
- ${{ startsWith(matrix.container, 'ubuntu:1') && '/node20217:/__e/node20:ro,rshared' || ' ' }}
defaults:
run:
shell: bash
steps:
- name: Setup container environment
if: matrix.container
run: |
apt-get update
apt-get -y install sudo python3 git g++ curl xz-utils
- name: Install nodejs20glibc2.17
if: ${{ startsWith( matrix.container, 'ubuntu:1' ) }}
run: |
curl -LO https://archives.boost.io/misc/node/node-v20.9.0-linux-x64-glibc-217.tar.xz
tar -xf node-v20.9.0-linux-x64-glibc-217.tar.xz --strip-components 1 -C /node20217
ldd /__e/node20/bin/node
- uses: actions/checkout@v4
- name: Install packages
if: matrix.install
run: |
sudo apt-get update
sudo apt-get -y install ${{matrix.install}}
- name: Setup Boost
run: |
echo GITHUB_REPOSITORY: $GITHUB_REPOSITORY
LIBRARY=${GITHUB_REPOSITORY#*/}
echo LIBRARY: $LIBRARY
echo "LIBRARY=$LIBRARY" >> $GITHUB_ENV
echo GITHUB_BASE_REF: $GITHUB_BASE_REF
echo GITHUB_REF: $GITHUB_REF
REF=${GITHUB_BASE_REF:-$GITHUB_REF}
REF=${REF#refs/heads/}
echo REF: $REF
BOOST_BRANCH=develop && [ "$REF" == "master" ] && BOOST_BRANCH=master || true
echo BOOST_BRANCH: $BOOST_BRANCH
cd ..
git clone -b $BOOST_BRANCH --depth 1 https://github.com/boostorg/boost.git boost-root
cd boost-root
cp -r $GITHUB_WORKSPACE/* libs/$LIBRARY
git submodule update --init tools/boostdep
python3 tools/boostdep/depinst/depinst.py --git_args "--jobs 3" $LIBRARY
./bootstrap.sh
./b2 -d0 headers
- name: Create user-config.jam
if: matrix.compiler
run: |
echo "using ${{matrix.toolset}} : : ${{matrix.compiler}} ;" > ~/user-config.jam
- name: Run tests
run: |
cd ../boost-root
./b2 -j3 libs/$LIBRARY/test toolset=${{matrix.toolset}} cxxstd=${{matrix.cxxstd}} variant=debug,release
windows:
strategy:
fail-fast: false
matrix:
include:
- toolset: msvc-14.0
cxxstd: "14,latest"
addrmd: 32,64
os: windows-2019
- toolset: msvc-14.2
cxxstd: "14,17,20,latest"
addrmd: 32,64
os: windows-2019
- toolset: msvc-14.3
cxxstd: "14,17,20,latest"
addrmd: 32,64
os: windows-2022
- toolset: clang-win
cxxstd: "14,17,latest"
addrmd: 32,64
os: windows-2022
- toolset: gcc
cxxstd: "03,11,14,17,2a"
addrmd: 64
os: windows-2022
runs-on: ${{matrix.os}}
steps:
- uses: actions/checkout@v4
- name: Setup Boost
shell: cmd
run: |
echo GITHUB_REPOSITORY: %GITHUB_REPOSITORY%
for /f %%i in ("%GITHUB_REPOSITORY%") do set LIBRARY=%%~nxi
echo LIBRARY: %LIBRARY%
echo LIBRARY=%LIBRARY%>>%GITHUB_ENV%
echo GITHUB_BASE_REF: %GITHUB_BASE_REF%
echo GITHUB_REF: %GITHUB_REF%
if "%GITHUB_BASE_REF%" == "" set GITHUB_BASE_REF=%GITHUB_REF%
set BOOST_BRANCH=develop
for /f %%i in ("%GITHUB_BASE_REF%") do if "%%~nxi" == "master" set BOOST_BRANCH=master
echo BOOST_BRANCH: %BOOST_BRANCH%
cd ..
git clone -b %BOOST_BRANCH% --depth 1 https://github.com/boostorg/boost.git boost-root
cd boost-root
xcopy /s /e /q %GITHUB_WORKSPACE% libs\%LIBRARY%\
git submodule update --init tools/boostdep
python tools/boostdep/depinst/depinst.py --git_args "--jobs 3" %LIBRARY%
cmd /c bootstrap
b2 -d0 headers
- name: Run tests
shell: cmd
run: |
cd ../boost-root
b2 -j3 libs/%LIBRARY%/test toolset=${{matrix.toolset}} cxxstd=${{matrix.cxxstd}} address-model=${{matrix.addrmd}} variant=debug,release embed-manifest-via=linker
posix-cmake-subdir:
strategy:
fail-fast: false
matrix:
include:
- os: ubuntu-22.04
- os: ubuntu-24.04
- os: macos-13
- os: macos-14
- os: macos-15
runs-on: ${{matrix.os}}
steps:
- uses: actions/checkout@v4
- name: Install packages
if: matrix.install
run: sudo apt-get -y install ${{matrix.install}}
- name: Setup Boost
run: |
echo GITHUB_REPOSITORY: $GITHUB_REPOSITORY
LIBRARY=${GITHUB_REPOSITORY#*/}
echo LIBRARY: $LIBRARY
echo "LIBRARY=$LIBRARY" >> $GITHUB_ENV
echo GITHUB_BASE_REF: $GITHUB_BASE_REF
echo GITHUB_REF: $GITHUB_REF
REF=${GITHUB_BASE_REF:-$GITHUB_REF}
REF=${REF#refs/heads/}
echo REF: $REF
BOOST_BRANCH=develop && [ "$REF" == "master" ] && BOOST_BRANCH=master || true
echo BOOST_BRANCH: $BOOST_BRANCH
cd ..
git clone -b $BOOST_BRANCH --depth 1 https://github.com/boostorg/boost.git boost-root
cd boost-root
cp -r $GITHUB_WORKSPACE/* libs/$LIBRARY
git submodule update --init tools/boostdep
python tools/boostdep/depinst/depinst.py --git_args "--jobs 3" $LIBRARY
- name: Use library with add_subdirectory
run: |
cd ../boost-root/libs/$LIBRARY/test/cmake_subdir_test
mkdir __build__ && cd __build__
cmake ..
cmake --build .
ctest --output-on-failure --no-tests=error
posix-cmake-install:
strategy:
fail-fast: false
matrix:
include:
- os: ubuntu-22.04
- os: ubuntu-24.04
- os: macos-13
- os: macos-14
- os: macos-15
runs-on: ${{matrix.os}}
steps:
- uses: actions/checkout@v4
- name: Install packages
if: matrix.install
run: sudo apt-get -y install ${{matrix.install}}
- name: Setup Boost
run: |
echo GITHUB_REPOSITORY: $GITHUB_REPOSITORY
LIBRARY=${GITHUB_REPOSITORY#*/}
echo LIBRARY: $LIBRARY
echo "LIBRARY=$LIBRARY" >> $GITHUB_ENV
echo GITHUB_BASE_REF: $GITHUB_BASE_REF
echo GITHUB_REF: $GITHUB_REF
REF=${GITHUB_BASE_REF:-$GITHUB_REF}
REF=${REF#refs/heads/}
echo REF: $REF
BOOST_BRANCH=develop && [ "$REF" == "master" ] && BOOST_BRANCH=master || true
echo BOOST_BRANCH: $BOOST_BRANCH
cd ..
git clone -b $BOOST_BRANCH --depth 1 https://github.com/boostorg/boost.git boost-root
cd boost-root
cp -r $GITHUB_WORKSPACE/* libs/$LIBRARY
git submodule update --init tools/boostdep
python tools/boostdep/depinst/depinst.py --git_args "--jobs 3" $LIBRARY
- name: Configure
run: |
cd ../boost-root
mkdir __build__ && cd __build__
cmake -DBOOST_INCLUDE_LIBRARIES=$LIBRARY -DCMAKE_INSTALL_PREFIX=~/.local ..
- name: Install
run: |
cd ../boost-root/__build__
cmake --build . --target install
- name: Use the installed library
run: |
cd ../boost-root/libs/$LIBRARY/test/cmake_install_test && mkdir __build__ && cd __build__
cmake -DCMAKE_INSTALL_PREFIX=~/.local ..
cmake --build .
ctest --output-on-failure --no-tests=error
posix-cmake-test:
strategy:
fail-fast: false
matrix:
include:
- os: ubuntu-22.04
- os: ubuntu-24.04
- os: macos-13
- os: macos-14
- os: macos-15
runs-on: ${{matrix.os}}
steps:
- uses: actions/checkout@v4
- name: Install packages
if: matrix.install
run: sudo apt-get -y install ${{matrix.install}}
- name: Setup Boost
run: |
echo GITHUB_REPOSITORY: $GITHUB_REPOSITORY
LIBRARY=${GITHUB_REPOSITORY#*/}
echo LIBRARY: $LIBRARY
echo "LIBRARY=$LIBRARY" >> $GITHUB_ENV
echo GITHUB_BASE_REF: $GITHUB_BASE_REF
echo GITHUB_REF: $GITHUB_REF
REF=${GITHUB_BASE_REF:-$GITHUB_REF}
REF=${REF#refs/heads/}
echo REF: $REF
BOOST_BRANCH=develop && [ "$REF" == "master" ] && BOOST_BRANCH=master || true
echo BOOST_BRANCH: $BOOST_BRANCH
cd ..
git clone -b $BOOST_BRANCH --depth 1 https://github.com/boostorg/boost.git boost-root
cd boost-root
cp -r $GITHUB_WORKSPACE/* libs/$LIBRARY
git submodule update --init tools/boostdep
python tools/boostdep/depinst/depinst.py --git_args "--jobs 3" $LIBRARY
- name: Configure
run: |
cd ../boost-root
mkdir __build__ && cd __build__
cmake -DBOOST_INCLUDE_LIBRARIES=$LIBRARY -DBUILD_TESTING=ON ..
- name: Build tests
run: |
cd ../boost-root/__build__
cmake --build . --target tests
- name: Run tests
run: |
cd ../boost-root/__build__
ctest --output-on-failure --no-tests=error
windows-cmake-subdir:
strategy:
fail-fast: false
matrix:
include:
- os: windows-2022
- os: windows-2025
runs-on: ${{matrix.os}}
steps:
- uses: actions/checkout@v4
- name: Setup Boost
shell: cmd
run: |
echo GITHUB_REPOSITORY: %GITHUB_REPOSITORY%
for /f %%i in ("%GITHUB_REPOSITORY%") do set LIBRARY=%%~nxi
echo LIBRARY: %LIBRARY%
echo LIBRARY=%LIBRARY%>>%GITHUB_ENV%
echo GITHUB_BASE_REF: %GITHUB_BASE_REF%
echo GITHUB_REF: %GITHUB_REF%
if "%GITHUB_BASE_REF%" == "" set GITHUB_BASE_REF=%GITHUB_REF%
set BOOST_BRANCH=develop
for /f %%i in ("%GITHUB_BASE_REF%") do if "%%~nxi" == "master" set BOOST_BRANCH=master
echo BOOST_BRANCH: %BOOST_BRANCH%
cd ..
git clone -b %BOOST_BRANCH% --depth 1 https://github.com/boostorg/boost.git boost-root
cd boost-root
xcopy /s /e /q %GITHUB_WORKSPACE% libs\%LIBRARY%\
git submodule update --init tools/boostdep
python tools/boostdep/depinst/depinst.py --git_args "--jobs 3" %LIBRARY%
- name: Use library with add_subdirectory (Debug)
shell: cmd
run: |
cd ../boost-root/libs/%LIBRARY%/test/cmake_subdir_test
mkdir __build__ && cd __build__
cmake ..
cmake --build . --config Debug
ctest --output-on-failure --no-tests=error -C Debug
- name: Use library with add_subdirectory (Release)
shell: cmd
run: |
cd ../boost-root/libs/%LIBRARY%/test/cmake_subdir_test/__build__
cmake --build . --config Release
ctest --output-on-failure --no-tests=error -C Release
windows-cmake-install:
strategy:
fail-fast: false
matrix:
include:
- os: windows-2022
- os: windows-2025
runs-on: ${{matrix.os}}
steps:
- uses: actions/checkout@v4
- name: Setup Boost
shell: cmd
run: |
echo GITHUB_REPOSITORY: %GITHUB_REPOSITORY%
for /f %%i in ("%GITHUB_REPOSITORY%") do set LIBRARY=%%~nxi
echo LIBRARY: %LIBRARY%
echo LIBRARY=%LIBRARY%>>%GITHUB_ENV%
echo GITHUB_BASE_REF: %GITHUB_BASE_REF%
echo GITHUB_REF: %GITHUB_REF%
if "%GITHUB_BASE_REF%" == "" set GITHUB_BASE_REF=%GITHUB_REF%
set BOOST_BRANCH=develop
for /f %%i in ("%GITHUB_BASE_REF%") do if "%%~nxi" == "master" set BOOST_BRANCH=master
echo BOOST_BRANCH: %BOOST_BRANCH%
cd ..
git clone -b %BOOST_BRANCH% --depth 1 https://github.com/boostorg/boost.git boost-root
cd boost-root
xcopy /s /e /q %GITHUB_WORKSPACE% libs\%LIBRARY%\
git submodule update --init tools/boostdep
python tools/boostdep/depinst/depinst.py --git_args "--jobs 3" %LIBRARY%
- name: Configure
shell: cmd
run: |
cd ../boost-root
mkdir __build__ && cd __build__
cmake -DBOOST_INCLUDE_LIBRARIES=%LIBRARY% -DCMAKE_INSTALL_PREFIX=C:/cmake-prefix ..
- name: Install (Debug)
shell: cmd
run: |
cd ../boost-root/__build__
cmake --build . --target install --config Debug
- name: Install (Release)
shell: cmd
run: |
cd ../boost-root/__build__
cmake --build . --target install --config Release
- name: Use the installed library (Debug)
shell: cmd
run: |
cd ../boost-root/libs/%LIBRARY%/test/cmake_install_test && mkdir __build__ && cd __build__
cmake -DCMAKE_INSTALL_PREFIX=C:/cmake-prefix ..
cmake --build . --config Debug
ctest --output-on-failure --no-tests=error -C Debug
- name: Use the installed library (Release)
shell: cmd
run: |
cd ../boost-root/libs/%LIBRARY%/test/cmake_install_test/__build__
cmake --build . --config Release
ctest --output-on-failure --no-tests=error -C Release
windows-cmake-test:
strategy:
fail-fast: false
matrix:
include:
- os: windows-2022
- os: windows-2025
runs-on: ${{matrix.os}}
steps:
- uses: actions/checkout@v4
- name: Setup Boost
shell: cmd
run: |
echo GITHUB_REPOSITORY: %GITHUB_REPOSITORY%
for /f %%i in ("%GITHUB_REPOSITORY%") do set LIBRARY=%%~nxi
echo LIBRARY: %LIBRARY%
echo LIBRARY=%LIBRARY%>>%GITHUB_ENV%
echo GITHUB_BASE_REF: %GITHUB_BASE_REF%
echo GITHUB_REF: %GITHUB_REF%
if "%GITHUB_BASE_REF%" == "" set GITHUB_BASE_REF=%GITHUB_REF%
set BOOST_BRANCH=develop
for /f %%i in ("%GITHUB_BASE_REF%") do if "%%~nxi" == "master" set BOOST_BRANCH=master
echo BOOST_BRANCH: %BOOST_BRANCH%
cd ..
git clone -b %BOOST_BRANCH% --depth 1 https://github.com/boostorg/boost.git boost-root
cd boost-root
xcopy /s /e /q %GITHUB_WORKSPACE% libs\%LIBRARY%\
git submodule update --init tools/boostdep
python tools/boostdep/depinst/depinst.py --git_args "--jobs 3" %LIBRARY%
- name: Configure
shell: cmd
run: |
cd ../boost-root
mkdir __build__ && cd __build__
cmake -DBOOST_INCLUDE_LIBRARIES=%LIBRARY% -DBUILD_TESTING=ON ..
- name: Build tests (Debug)
shell: cmd
run: |
cd ../boost-root/__build__
cmake --build . --target tests --config Debug
- name: Run tests (Debug)
shell: cmd
run: |
cd ../boost-root/__build__
ctest --output-on-failure --no-tests=error -C Debug
- name: Build tests (Release)
shell: cmd
run: |
cd ../boost-root/__build__
cmake --build . --target tests --config Release
- name: Run tests (Release)
shell: cmd
run: |
cd ../boost-root/__build__
ctest --output-on-failure --no-tests=error -C Release

View File

@ -108,7 +108,7 @@ matrix:
- os: linux
compiler: g++-8
env: TOOLSET=gcc COMPILER=g++-8 CXXSTD=03,11,14,17,2a
env: TOOLSET=gcc COMPILER=g++-8 CXXSTD=03,11,14,17
addons:
apt:
packages:
@ -118,7 +118,7 @@ matrix:
- os: linux
compiler: g++-9
env: TOOLSET=gcc COMPILER=g++-9 CXXSTD=03,11,14,17,2a
env: TOOLSET=gcc COMPILER=g++-9 CXXSTD=03,11,14,17
addons:
apt:
packages:
@ -126,6 +126,17 @@ matrix:
sources:
- ubuntu-toolchain-r-test
- os: linux
dist: bionic
compiler: g++-10
env: TOOLSET=gcc COMPILER=g++-10 CXXSTD=03,11,14,17,2a
addons:
apt:
packages:
- g++-10
sources:
- ubuntu-toolchain-r-test
- os: linux
compiler: clang++
env: TOOLSET=clang COMPILER=clang++ CXXSTD=03,11
@ -220,7 +231,7 @@ matrix:
- os: linux
compiler: clang++-6.0
env: TOOLSET=clang COMPILER=clang++-6.0 CXXSTD=03,11,14,17,2a
env: TOOLSET=clang COMPILER=clang++-6.0 CXXSTD=03,11,14,17
addons:
apt:
packages:
@ -230,7 +241,7 @@ matrix:
- os: linux
compiler: clang++-7
env: TOOLSET=clang COMPILER=clang++-7 CXXSTD=03,11,14,17,2a
env: TOOLSET=clang COMPILER=clang++-7 CXXSTD=03,11,14,17
addons:
apt:
packages:
@ -241,7 +252,7 @@ matrix:
- os: linux
compiler: clang++-8
env: TOOLSET=clang COMPILER=clang++-8 CXXSTD=03,11,14,17,2a
env: TOOLSET=clang COMPILER=clang++-8 CXXSTD=03,11,14,17
addons:
apt:
packages:
@ -262,6 +273,18 @@ matrix:
- sourceline: 'deb https://apt.llvm.org/xenial/ llvm-toolchain-xenial-9 main'
key_url: 'https://apt.llvm.org/llvm-snapshot.gpg.key'
- os: linux
compiler: clang++-10
env: TOOLSET=clang COMPILER=clang++-10 CXXSTD=03,11,14,17,2a
addons:
apt:
packages:
- clang-10
sources:
- ubuntu-toolchain-r-test
- sourceline: 'deb https://apt.llvm.org/xenial/ llvm-toolchain-xenial-10 main'
key_url: 'https://apt.llvm.org/llvm-snapshot.gpg.key'
- os: linux
dist: trusty
compiler: clang++-libc++
@ -279,8 +302,9 @@ matrix:
env: CMAKE_TEST=1
script:
- mkdir __build__ && cd __build__
- cmake -DBOOST_ENABLE_CMAKE=1 -DBoost_VERBOSE=1 -DBOOST_INCLUDE_LIBRARIES=preprocessor ..
- ctest --output-on-failure -R boost_preprocessor
- cmake -DBUILD_TESTING=ON -DBOOST_INCLUDE_LIBRARIES=preprocessor ..
- cmake --build . --target tests
- ctest --output-on-failure
- os: linux
env: CMAKE_SUBDIR_TEST=1
@ -294,8 +318,9 @@ matrix:
- os: linux
env: CMAKE_INSTALL_TEST=1
script:
- pip install --user cmake
- mkdir __build__ && cd __build__
- cmake -DBOOST_ENABLE_CMAKE=1 -DBoost_VERBOSE=1 -DBOOST_INCLUDE_LIBRARIES=preprocessor -DCMAKE_INSTALL_PREFIX=~/.local ..
- cmake -DBOOST_INCLUDE_LIBRARIES=preprocessor -DCMAKE_INSTALL_PREFIX=~/.local ..
- cmake --build . --target install
- cd ../libs/preprocessor/test/cmake_install_test && mkdir __build__ && cd __build__
- cmake -DCMAKE_INSTALL_PREFIX=~/.local ..
@ -316,7 +341,7 @@ install:
script:
- |-
echo "using $TOOLSET : : $COMPILER ;" > ~/user-config.jam
- ./b2 -j 3 libs/preprocessor/test toolset=$TOOLSET cxxstd=$CXXSTD
- ./b2 libs/preprocessor/test -j 3 toolset=$TOOLSET cxxstd=$CXXSTD $ADDRMD
notifications:
email:

View File

@ -11,13 +11,6 @@ add_library(Boost::preprocessor ALIAS boost_preprocessor)
target_include_directories(boost_preprocessor INTERFACE include)
if(BOOST_SUPERPROJECT_VERSION)
include(BoostInstall)
boost_install(TARGETS boost_preprocessor HEADER_DIRECTORY include/)
endif()
if(BUILD_TESTING)
add_subdirectory(test)

View File

@ -23,11 +23,30 @@ branches:
environment:
matrix:
- APPVEYOR_BUILD_WORKER_IMAGE: Visual Studio 2015
TOOLSET: msvc-9.0,msvc-10.0,msvc-11.0,msvc-12.0,msvc-14.0
TOOLSET: msvc-10.0
ADDRMD: 32
- APPVEYOR_BUILD_WORKER_IMAGE: Visual Studio 2015
TOOLSET: msvc-11.0
ADDRMD: 32
- APPVEYOR_BUILD_WORKER_IMAGE: Visual Studio 2015
TOOLSET: msvc-12.0
ADDRMD: 32,64
- APPVEYOR_BUILD_WORKER_IMAGE: Visual Studio 2015
TOOLSET: msvc-14.0
ADDRMD: 32,64
- APPVEYOR_BUILD_WORKER_IMAGE: Visual Studio 2017
TOOLSET: msvc-14.1
ADDRMD: 32,64
CXXSTD: 14,17,latest
- APPVEYOR_BUILD_WORKER_IMAGE: Visual Studio 2019
TOOLSET: msvc-14.2
ADDRMD: 32,64
CXXSTD: 14,17,latest
- APPVEYOR_BUILD_WORKER_IMAGE: Visual Studio 2019
TOOLSET: msvc-14.2
ADDRMD: 32,64
CXXSTD: 14,17,latest
PREPROCESSOR: /Zc:preprocessor
matrix:
exclude:
@ -35,6 +54,8 @@ matrix:
APPVEYOR_BUILD_WORKER_IMAGE: Visual Studio 2015
- configuration: cmake_test
APPVEYOR_BUILD_WORKER_IMAGE: Visual Studio 2017
- configuration: cmake_test
APPVEYOR_BUILD_WORKER_IMAGE: Visual Studio 2019
build: off
@ -44,7 +65,11 @@ install:
- cd ..
- git clone -b %BOOST_BRANCH% --depth 1 https://github.com/boostorg/boost.git boost-root
- cd boost-root
- git submodule update --init tools/build
- git submodule update --init libs/config
- git submodule update --init tools/boostdep
- git submodule update --init tools/boost_install
- git submodule update --init libs/headers
- xcopy /s /e /q %APPVEYOR_BUILD_FOLDER% libs\preprocessor\
- python tools/boostdep/depinst/depinst.py preprocessor
@ -57,7 +82,10 @@ for:
test_script:
- bootstrap
- b2 -d0 headers
- b2 -j3 libs/preprocessor/test toolset=%TOOLSET%
- if not "%CXXSTD%" == "" set CXXSTD=cxxstd=%CXXSTD%
- if not "%ADDRMD%" == "" set ADDRMD=address-model=%ADDRMD%
- if not "%PREPROCESSOR%" == "" set PREPROCESSOR=cflags="%PREPROCESSOR%"
- b2 libs/preprocessor/test -j3 toolset=%TOOLSET% %CXXSTD% %ADDRMD% %PREPROCESSOR% variant=debug,release
-
matrix:

18
build.jam Normal file
View File

@ -0,0 +1,18 @@
# Copyright René Ferdinand Rivera Morell 2023-2024
# Distributed under the Boost Software License, Version 1.0.
# (See accompanying file LICENSE_1_0.txt or copy at
# http://www.boost.org/LICENSE_1_0.txt)
require-b2 5.2 ;
project /boost/preprocessor
;
explicit
[ alias boost_preprocessor : : :
: <include>include <library>$(boost_dependencies) ]
[ alias all : boost_preprocessor test ]
;
call-if : boost-library preprocessor
;

View File

@ -35,7 +35,7 @@ blockquote.epigraph {
dd {
margin-bottom: 0.5em }
/* Uncomment (& remove this text!) to get bold-faced definition list terms
/* Uncomment (and remove this text!) to get bold-faced definition list terms
dt {
font-weight: bold }
*/

View File

@ -1,6 +1,8 @@
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<meta content="text/html; charset=windows-1252" http-equiv="content-type">
<meta content="text/html; charset=windows-1252"
http-equiv="content-type">
<title>contents.html</title>
<link rel="stylesheet" type="text/css" href="styles.css">
<style>
@ -8,27 +10,24 @@
</style>
</head>
<body>
<h4><a href="AppendixA-AnIntroductiontoPreprocessorMetaprogramming.html"
target="_top">Introduction</a></h4>
<h4><a href="index.html" target="_top">Introduction</a></h4>
<h4><a
href="AppendixA-AnIntroductiontoPreprocessorMetaprogramming.html"
target="_top">Basic Intro</a></h4>
<a href="topics.html"> </a>
<h4><a href="topics.html">Topics</a></h4>
<a href="topics.html">
</a>
<h4><a href="topics.html"></a><a href="terms.html">Terminology</a></h4>
<a href="terms.html">
</a>
<h4><a href="terms.html"></a><a href="data.html">Data Types</a></h4>
<a href="data.html">
</a>
<h4><a href="data.html"></a><a href="ref.html">Reference</a></h4>
<a href="ref.html">
</a>
<h4><a href="ref.html"></a><a href="headers.html">Headers</a></h4>
<a href="headers.html">
</a>
<h4><a href="headers.html"></a><a href="examples.html">Examples</a></h4>
<a href="examples.html">
</a>
<h4><a href="examples.html"></a><a href="miscellanea.html">Miscellanea</a></h4>
<a href="topics.html"> </a>
<h4><a href="terms.html">Terminology</a></h4>
<a href="terms.html"> </a>
<h4><a href="data.html">Data Types</a></h4>
<a href="data.html"> </a>
<h4><a href="ref.html">Reference</a></h4>
<a href="ref.html"> </a>
<h4><a href="headers.html">Headers</a></h4>
<a href="headers.html"> </a>
<h4><a href="examples.html">Examples</a></h4>
<a href="examples.html"> </a>
<h4><a href="miscellanea.html">Miscellanea</a></h4>
<a href="miscellanea.html">
<!--
<EFBFBD> Copyright Housemarque Oy 2002<30> Copyright Paul Mensonides 2002

View File

@ -24,11 +24,9 @@
0 size. The notation for an empty array is '(0,())'.<br>
<br>
<span style="font-style: italic;"> </span></div>
<div>With variadic macro support a <i>tuple </i>has all of the
<div>A <i>tuple </i>has all of the
functionality as an <i>array</i>, knows its own size, and is easier
syntactically to use. Because of that an <i>array</i> should be used, as
opposed to a <i>tuple</i>, only if your compiler does not support
variadic macros. The only advantage an <i>array </i>has over a <i>tuple
syntactically to use. The only advantage an <i>array </i>has over a <i>tuple
</i>is that an <i>array </i>can be empty while a <i>tuple </i>always
has at least one element and therefore can never have a size of 0.<br>
<br>

View File

@ -15,10 +15,8 @@
A <i>tuple </i>cannot be empty. The notation '()' as a <i>tuple </i>is
a single element <i>tuple </i>of size 1, where the element is empty. </div>
<div> <i>Tuples</i> are fast and easy to use.&nbsp; With variadic macro
support it is not necessary to know the size of a <i>tuple; </i>without
variadic macro support&nbsp;all access to <i>tuples</i> requires
knowledge of its size. Use a <i>tuple </i>instead of an <i>array</i> if
your compiler supports variadic macros, since a <i>tuple </i>has all of
support it is not necessary to know the size of a <i>tuple</i>.
Use a <i>tuple </i>instead of an <i>array</i>, since a <i>tuple </i>has all of
the functionality as an <i>array </i>and is easier syntactically to use.
The only functionality an <i>array </i>has which a <i>tuple </i>does
not have is that an <i>array </i>can be empty whereas a <i>tuple </i>cannot

View File

@ -1,32 +1,35 @@
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<title>config/config.hpp</title>
<link rel="stylesheet" type="text/css" href="../../styles.css">
</head>
<body>
<div style="margin-left: 0px;">
The <b>config/config.hpp</b>
header defines internal configuration macros as well as a macro for determining variadic macro support. The file
is automatically included whenever any Boost PP macros are used. The end-user can manually
include it in order to use the BOOST_PP_VARIADICS macro, but normally should never have to do so. </div>
<h4>
Usage
</h4>
<div class="code">
#include <b>&lt;boost/preprocessor/config/config.hpp&gt;</b>
</div>
<h4>
Contents
</h4>
<ul>
<li><a href="../../ref/variadics.html">BOOST_PP_VARIADICS</a></li></ul>
<hr size="1">
<div style="margin-left: 0px;"><i><EFBFBD> Copyright Edward Diener 2011,2014</i>
</div>
<div style="margin-left: 0px;">
<p><small>Distributed under the Boost Software License, Version 1.0. (See
accompanying file <a href="../../../../../LICENSE_1_0.txt">LICENSE_1_0.txt</a> or
copy at <a href="http://www.boost.org/LICENSE_1_0.txt">www.boost.org/LICENSE_1_0.txt</a>)</small></p>
</div>
</body>
<head>
<meta http-equiv="content-type" content="text/html; charset=windows-1252">
<title>config/config.hpp</title>
<link rel="stylesheet" type="text/css" href="../../styles.css">
</head>
<body>
<div style="margin-left: 0px;"> The <b>config/config.hpp</b>
header defines internal configuration macros as well as a macro
for determining whether the compiler's preprocessor conforms to
the standard. The file is automatically included whenever any
Boost PP macros are used.The end-user can manually include it
in order to use the BOOST_PP_IS_STANDARD macro, but normally
should never have to do so.</div>
<h4> Usage </h4>
<div class="code"> #include <b>&lt;boost/preprocessor/config/config.hpp&gt;</b>
</div>
<h4> Contents </h4>
<ul>
<li><a href="../../ref/is_standard.html">BOOST_PP_IS_STANDARD</a><br>
</li>
</ul>
<hr size="1">
<div style="margin-left: 0px;"><i><EFBFBD> Copyright Edward Diener
2011,2014,2020</i> </div>
<div style="margin-left: 0px;">
<p><small>Distributed under the Boost Software License, Version
1.0. (See accompanying file <a
href="../../../../../LICENSE_1_0.txt">LICENSE_1_0.txt</a> or
copy at <a href="http://www.boost.org/LICENSE_1_0.txt">www.boost.org/LICENSE_1_0.txt</a>)</small></p>
</div>
</body>
</html>

View File

@ -110,6 +110,7 @@
<li><a href="ref/is_begin_parens.html">IS_BEGIN_PARENS</a> <a href="topics/variadic_macros.html#VNotation">(v)</a></li>
<li><a href="ref/is_iterating.html">IS_ITERATING</a></li>
<li><a href="ref/is_selfish.html">IS_SELFISH</a></li>
<li><a href="ref/is_standard.html">IS_STANDARD</a></li>
<li><a href="ref/iterate.html">ITERATE</a></li>
<li><a href="ref/iteration.html">ITERATION</a></li>
<li><a href="ref/iteration_depth.html">ITERATION_DEPTH</a></li>

View File

@ -1,37 +1,52 @@
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<title>BOOST_PP_ARRAY_ENUM</title>
<link rel="stylesheet" type="text/css" href="../styles.css">
</head>
<body>
<div style="margin-left: 0px;"> The <b>BOOST_PP_ARRAY_ENUM</b> macro converts an <i>array</i> to its comma-separated elements. The comma-separated elements are in the form of <i>variadic data</i>.<br>
</div>
<h4> Usage </h4>
<div class="code"> <b>BOOST_PP_ARRAY_ENUM</b>(<i>array</i>) </div>
<h4> Arguments </h4>
<dl>
<dt>array</dt>
<dd> The <i>array</i> whose elements are to be converted. </dd>
</dl>
<h4> Remarks </h4>
<div> This macro expands to a comma-separated list of the elements in <i>array</i>.&nbsp;
For example, <b>BOOST_PP_ARRAY_ENUM</b>((3,(<i>x,</i><i>y,</i><i>z</i>)))
expands to...
<div> <i>x</i>, <i>y</i>, <i>z</i> </div>
</div>
<h4> Requirements </h4>
<div> <b>Header:</b> &nbsp;<a href="../headers/array/enum.html">&lt;boost/preprocessor/array/enum.hpp&gt;</a>
</div>
<h4> Sample Code </h4>
<div>
<pre>#include &lt;<a href="../headers/array/enum.html">boost/preprocessor/array/enum.hpp</a>&gt;<br><br>#define ARRAY (5,(B,O,O,S,T))<br><br><a href="array_enum.html">BOOST_PP_ARRAY_ENUM</a>(ARRAY) // expands to B, O, O, S, T<br></pre>
</div>
<hr size="1">
<div style="margin-left: 0px;"> <i></i><i><EFBFBD> Copyright Edward Diener 2011</i> </div>
<div style="margin-left: 0px;">
<p><small>Distributed under the Boost Software License, Version 1.0.
(See accompanying file <a href="../../../../LICENSE_1_0.txt">LICENSE_1_0.txt</a>
or copy at <a href="http://www.boost.org/LICENSE_1_0.txt">www.boost.org/LICENSE_1_0.txt</a>)</small></p>
</div>
</body>
<head>
<meta http-equiv="content-type" content="text/html; charset=windows-1252">
<title>BOOST_PP_ARRAY_ENUM</title>
<link rel="stylesheet" type="text/css" href="../styles.css">
</head>
<body>
<div style="margin-left: 0px;"> The <b>BOOST_PP_ARRAY_ENUM</b>
macro converts an <i>array</i> to its comma-separated elements.
The comma-separated elements are in the form of <i>variadic data</i>.<br>
</div>
<h4> Usage </h4>
<div class="code"> <b>BOOST_PP_ARRAY_ENUM</b>(<i>array</i>) </div>
<h4> Arguments </h4>
<dl>
<dt>array</dt>
<dd> The <i>array</i> whose elements are to be converted. </dd>
</dl>
<h4> Remarks </h4>
<div> This macro expands to a comma-separated list of the elements
in <i>array</i>.&nbsp;
For example, <b>BOOST_PP_ARRAY_ENUM</b>((3,(<i>x,</i><i>y,</i><i>z</i>)))
expands
to...
<div> <i>x</i>, <i>y</i>, <i>z<br>
</i> </div>
</div>
<p>&nbsp;&nbsp;&nbsp; In <a
href="file:///E:/Programming/VersionControl/modular-boost/libs/preprocessor/doc/topics/variadic_macros.html#C20_Support_For_Variadic_Macros">C++
20</a> mode if the array is empty the resulting <i>variadic</i>
<i>data</i> will be empty.</p>
<h4> </h4>
<h4>Requirements </h4>
<div> <b>Header:</b> &nbsp;<a href="../headers/array/enum.html">&lt;boost/preprocessor/array/enum.hpp&gt;</a>
</div>
<h4> Sample Code </h4>
<div>
<pre>#include &lt;<a href="../headers/array/enum.html">boost/preprocessor/array/enum.hpp</a>&gt;<br><br>#define ARRAY (5,(B,O,O,S,T))<br><br><a href="array_enum.html">BOOST_PP_ARRAY_ENUM</a>(ARRAY) // expands to B, O, O, S, T<br></pre>
</div>
<hr size="1">
<div style="margin-left: 0px;"> <i></i><i><EFBFBD> Copyright Edward Diener
2011</i> </div>
<div style="margin-left: 0px;">
<p><small>Distributed under the Boost Software License, Version
1.0.
(See accompanying file <a href="../../../../LICENSE_1_0.txt">LICENSE_1_0.txt</a>
or copy at <a href="http://www.boost.org/LICENSE_1_0.txt">www.boost.org/LICENSE_1_0.txt</a>)</small></p>
</div>
</body>
</html>

44
doc/ref/is_standard.html Normal file
View File

@ -0,0 +1,44 @@
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<meta http-equiv="content-type" content="text/html; charset=windows-1252">
<title>BOOST_PP_IS_STANDARD</title>
<link rel="stylesheet" type="text/css" href="../styles.css">
</head>
<body>
<div style="margin-left: 0px;"> The <b>BOOST_PP_IS_STANDARD </b>macro
specifies whether the compiler's preprocessor is a standard
conforming one or not.<br>
</div>
<h4>Usage</h4>
<div class="code"><b>BOOST_PP_IS_STANDARD()</b><br>
</div>
<b>Remarks</b>
<div> The macro is a <i>function-like</i> macro taking no
parameters. It is used to check if the compiler's preprocessor is
standard conforming. One use for the end-user is to see if <a
href="../topics/limitations.html">limitations</a> can be
changed, since changes will only take affect for standard
conforming preprocessors. The macro expands to 1 if
the compiler's preprocessor is standard conforming and 0 if it is
not.</div>
<b>Requirements</b>
<div> <b>Header:</b> &nbsp;<a
href="../headers/config/variadics.html">&lt;boost/preprocessor/config/config.hpp&gt;</a>
</div>
<h4>Sample Code</h4>
<div>
<pre>// Beginning of source file<br><br>#include &lt;<a href="../headers/config/variadics.html">boost/preprocessor/config/config.hpp</a>&gt;<br><br>#if <a href="variadics.html">BOOST_PP_IS_STANDARD()</a><br>#define BOOST_PP_LIMIT_MAG 512<br>#endif<br><br>#include &lt;boost/preprocessor/arithmetic.hpp&gt; // etc.<br></pre>
</div>
<hr size="1">
<div style="margin-left: 0px;"> <i><EFBFBD> Copyright Edward Diener 2020</i>
</div>
<div style="margin-left: 0px;">
<p><small>Distributed under the Boost Software License, Version
1.0.
(See accompanying file <a href="../../../../LICENSE_1_0.txt">LICENSE_1_0.txt</a>
or copy at <a href="http://www.boost.org/LICENSE_1_0.txt">www.boost.org/LICENSE_1_0.txt</a>)</small></p>
</div>
</body>
</html>

View File

@ -1,34 +1,45 @@
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<title>BOOST_PP_LIMIT_FOR</title>
<link rel="stylesheet" type="text/css" href="../styles.css">
</head>
<body>
<div style="margin-left: 0px;">
The <b>BOOST_PP_LIMIT_FOR</b> macro defines the maximum number of <b>BOOST_PP_FOR</b> repetitions.
</div>
<h4>Usage</h4>
<div class="code">
<b>BOOST_PP_LIMIT_FOR</b>
</div>
<h4>Remarks</h4>
<div>
This macro currently expands to <i>256</i>.
</div>
<h4>Requirements</h4>
<div>
<b>Header:</b> &nbsp;<a href="../headers/config/limits.html">&lt;boost/preprocessor/config/limits.hpp&gt;</a>
</div>
<hr size="1">
<div style="margin-left: 0px;">
<i><EFBFBD> Copyright <a href="http://www.housemarque.com" target="_top">Housemarque Oy</a> 2002</i>
</br><i><EFBFBD> Copyright Paul Mensonides 2002</i>
</div>
<div style="margin-left: 0px;">
<p><small>Distributed under the Boost Software License, Version 1.0. (See
accompanying file <a href="../../../../LICENSE_1_0.txt">LICENSE_1_0.txt</a> or
copy at <a href=
"http://www.boost.org/LICENSE_1_0.txt">www.boost.org/LICENSE_1_0.txt</a>)</small></p>
</div>
</body>
<head>
<meta http-equiv="content-type" content="text/html;
charset=windows-1252">
<title>BOOST_PP_LIMIT_FOR</title>
<link rel="stylesheet" type="text/css" href="../styles.css">
</head>
<body>
<div style="margin-left: 0px;"> The <b>BOOST_PP_LIMIT_FOR</b> macro
defines the maximum number of <b>BOOST_PP_FOR</b> repetitions. </div>
<h4>Usage</h4>
<div class="code"> <b>BOOST_PP_LIMIT_FOR</b> </div>
<h4>Remarks</h4>
<div>This macro expands by default to <i>256</i>. For a C++
standard conforming preprocessor, the end-user can change this to
512 or 1024 by defining this macro to either value before
including any library headers, as long as the end-user also
defines the <a
href="file:///E:/Programming/VersionControl/modular-boost/libs/preprocessor/doc/ref/limit_mag.html">BOOST_PP_LIMIT_MAG</a>
macro to be equal to or greater than this value.</div>
<h4>Requirements</h4>
<div> <b>Header:</b> &nbsp;<a href="../headers/config/limits.html">&lt;boost/preprocessor/config/limits.hpp&gt;</a>
</div>
<b>See also<br>
</b>
<ul>
<li><a href="../topics/limitations.html">Limitations</a></li>
<li><a href="../ref/is_standard.html">BOOST_PP_IS_STANDARD</a><br>
</li>
</ul>
<br>
<hr size="1">
<div style="margin-left: 0px;"> <i><EFBFBD> Copyright <a
href="http://www.housemarque.com" target="_top">Housemarque Oy</a>
2002</i> <br>
<i><EFBFBD> Copyright Paul Mensonides 2002</i> </div>
<div style="margin-left: 0px;">
<p><small>Distributed under the Boost Software License, Version
1.0. (See accompanying file <a
href="../../../../LICENSE_1_0.txt">LICENSE_1_0.txt</a> or
copy at <a href="http://www.boost.org/LICENSE_1_0.txt">www.boost.org/LICENSE_1_0.txt</a>)</small></p>
</div>
</body>
</html>

View File

@ -1,34 +1,46 @@
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<title>BOOST_PP_LIMIT_ITERATION</title>
<link rel="stylesheet" type="text/css" href="../styles.css">
</head>
<body>
<div style="margin-left: 0px;">
The <b>BOOST_PP_LIMIT_ITERATION</b> macro defines the maximum number of <i>local</i> and <i>file</i> iterations.
</div>
<h4>Usage</h4>
<div class="code">
<b>BOOST_PP_LIMIT_ITERATION</b>
</div>
<h4>Remarks</h4>
<div>
This macro currently expands to <i>256</i>.
</div>
<h4>Requirements</h4>
<div>
<b>Header:</b> &nbsp;<a href="../headers/config/limits.html">&lt;boost/preprocessor/config/limits.hpp&gt;</a>
</div>
<hr size="1">
<div style="margin-left: 0px;">
<i><EFBFBD> Copyright <a href="http://www.housemarque.com" target="_top">Housemarque Oy</a> 2002</i>
</br><i><EFBFBD> Copyright Paul Mensonides 2002</i>
</div>
<div style="margin-left: 0px;">
<p><small>Distributed under the Boost Software License, Version 1.0. (See
accompanying file <a href="../../../../LICENSE_1_0.txt">LICENSE_1_0.txt</a> or
copy at <a href=
"http://www.boost.org/LICENSE_1_0.txt">www.boost.org/LICENSE_1_0.txt</a>)</small></p>
</div>
</body>
<head>
<meta http-equiv="content-type" content="text/html;
charset=windows-1252">
<title>BOOST_PP_LIMIT_ITERATION</title>
<link rel="stylesheet" type="text/css" href="../styles.css">
</head>
<body>
<div style="margin-left: 0px;"> The <b>BOOST_PP_LIMIT_ITERATION</b>
macro defines the maximum number of <i>local</i> and <i>file</i>
iterations. </div>
<h4>Usage</h4>
<div class="code"> <b>BOOST_PP_LIMIT_ITERATION</b> </div>
<h4>Remarks</h4>
<div> This macro expands by default to <i>256</i>. For a C++
standard conforming preprocessor, the end-user can change this to
512 or 1024 by defining this macro to either value before
including any library headers, as long as the end-user also
defines the <a href="../ref/limit_mag.html">BOOST_PP_LIMIT_MAG</a>
macro to be equal to or greater than this value. <br>
</div>
<h4>Requirements</h4>
<div> <b>Header:</b> &nbsp;<a href="../headers/config/limits.html">&lt;boost/preprocessor/config/limits.hpp&gt;</a>
</div>
<b>See also<br>
</b>
<ul>
<li><a href="../topics/limitations.html">Limitations</a></li>
<li><a href="../ref/is_standard.html">BOOST_PP_IS_STANDARD</a><br>
</li>
</ul>
<br>
<hr size="1">
<div style="margin-left: 0px;"> <i><EFBFBD> Copyright <a
href="http://www.housemarque.com" target="_top">Housemarque Oy</a>
2002</i> <br>
<i><EFBFBD> Copyright Paul Mensonides 2002</i> </div>
<div style="margin-left: 0px;">
<p><small>Distributed under the Boost Software License, Version
1.0. (See accompanying file <a
href="../../../../LICENSE_1_0.txt">LICENSE_1_0.txt</a> or
copy at <a href="http://www.boost.org/LICENSE_1_0.txt">www.boost.org/LICENSE_1_0.txt</a>)</small></p>
</div>
</body>
</html>

View File

@ -1,34 +1,42 @@
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<title>BOOST_PP_LIMIT_MAG</title>
<link rel="stylesheet" type="text/css" href="../styles.css">
</head>
<body>
<div style="margin-left: 0px;">
The <b>BOOST_PP_LIMIT_MAG</b> macro defines the maximum input and result magnitudes of arithmetic.
</div>
<h4>Usage</h4>
<div class="code">
<b>BOOST_PP_LIMIT_MAG</b>
</div>
<h4>Remarks</h4>
<div>
This macro currently expands to <i>256</i>.
</div>
<h4>Requirements</h4>
<div>
<b>Header:</b> &nbsp;<a href="../headers/config/limits.html">&lt;boost/preprocessor/config/limits.hpp&gt;</a>
</div>
<hr size="1">
<div style="margin-left: 0px;">
<i><EFBFBD> Copyright <a href="http://www.housemarque.com" target="_top">Housemarque Oy</a> 2002</i>
</br><i><EFBFBD> Copyright Paul Mensonides 2002</i>
</div>
<div style="margin-left: 0px;">
<p><small>Distributed under the Boost Software License, Version 1.0. (See
accompanying file <a href="../../../../LICENSE_1_0.txt">LICENSE_1_0.txt</a> or
copy at <a href=
"http://www.boost.org/LICENSE_1_0.txt">www.boost.org/LICENSE_1_0.txt</a>)</small></p>
</div>
</body>
<head>
<meta http-equiv="content-type" content="text/html;
charset=windows-1252">
<title>BOOST_PP_LIMIT_MAG</title>
<link rel="stylesheet" type="text/css" href="../styles.css">
</head>
<body>
<div style="margin-left: 0px;"> The <b>BOOST_PP_LIMIT_MAG</b> macro
defines the maximum input and result magnitudes of arithmetic. </div>
<h4>Usage</h4>
<div class="code"> <b>BOOST_PP_LIMIT_MAG</b> </div>
<h4>Remarks</h4>
<div> This macro expands by default to <i>256</i>. For a C++
standard conforming preprocessor, the end-user can change this to
512 or 1024 by defining this macro to either value before
including any library headers.</div>
<h4>Requirements</h4>
<div> <b>Header:</b> &nbsp;<a href="../headers/config/limits.html">&lt;boost/preprocessor/config/limits.hpp&gt;</a>
</div>
<b>See also<br>
</b>
<ul>
<li><a href="../topics/limitations.html">Limitations</a></li>
<li><a href="../ref/is_standard.html">BOOST_PP_IS_STANDARD</a><br>
</li>
</ul>
<br>
<hr size="1">
<div style="margin-left: 0px;"> <i><EFBFBD> Copyright <a
href="http://www.housemarque.com" target="_top">Housemarque Oy</a>
2002</i> <br>
<i><EFBFBD> Copyright Paul Mensonides 2002</i> </div>
<div style="margin-left: 0px;">
<p><small>Distributed under the Boost Software License, Version
1.0. (See accompanying file <a
href="../../../../LICENSE_1_0.txt">LICENSE_1_0.txt</a> or
copy at <a href="http://www.boost.org/LICENSE_1_0.txt">www.boost.org/LICENSE_1_0.txt</a>)</small></p>
</div>
</body>
</html>

View File

@ -1,39 +1,62 @@
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<meta content="text/html; charset=windows-1252" http-equiv="content-type">
<meta content="text/html; charset=windows-1252"
http-equiv="content-type">
<title>BOOST_PP_LIMIT_REPEAT</title>
<link rel="stylesheet" type="text/css" href="../styles.css">
</head>
<body>
<div style="margin-left: 0px;"> The <b>BOOST_PP_LIMIT_REPEAT</b> macro
defines the maximum number of repetitions supported by each <b>BOOST_PP_REPEAT</b>
dimension. </div>
<div style="margin-left: 0px;"> The <b>BOOST_PP_LIMIT_REPEAT</b>
macro defines the maximum number of repetitions supported by each
<b>BOOST_PP_REPEAT</b> dimension. </div>
<h4>Usage</h4>
<div class="code"> <b>BOOST_PP_LIMIT_REPEAT</b> </div>
<h4>Remarks</h4>
<div> This macro current expands to <i>256</i>.<br>
<div>This macro expands by default to <i>256</i>. For a C++
standard conforming preprocessor, the end-user can change this to
512 or 1024 by defining this macro to either value before
including any library headers, as long as the end-user also
defines the <a
href="file:///E:/Programming/VersionControl/modular-boost/libs/preprocessor/doc/ref/limit_mag.html">BOOST_PP_LIMIT_MAG</a>
macro to be equal to or greater than this value. <br>
<br>
NOTE: for the current latest versions of Microsoft's VC++ compiler there
is a nested macro limit of 256. This means in actuality that the number of
repetitions using VC++ is actually less than 256 depending on the
repetition macro being used. For the BOOST_PP_REPEAT macro this limit
appears to be 252 while for the BOOST_PP_ENUM... series of macros this
limit appears to be around 230, before the VC++ compiler gives a "C1009:
compiler limit : macros nested too deeply" error. This is a compiler
limitation of VC++ which may vary depending on the specific repetition
macro being used, and therefore is not a problem the preprocessor library
can solve.</div>
NOTE: for the current latest versions of default preprocessor for
Microsoft's VC++ compiler there is a nested macro limit of 256.
This means in actuality that the number of repetitions using VC++
is actually less than 256 depending on the repetition macro being
used. For the BOOST_PP_REPEAT macro this limit appears to be 252
while for the BOOST_PP_ENUM... series of macros this limit appears
to be around 230, before the VC++ compiler gives a "C1009:
compiler limit : macros nested too deeply" error. This is a
compiler limitation of VC++ which may vary depending on the
specific repetition macro being used, and therefore is not a
problem the preprocessor library can solve. This limitation of the
default preprocessor for VC++ does not exist for the new standard
conforming preprocessor for VC++ in Visual Studio 2019 invoked
with the<code> /Zc:preprocessor</code> switch.<br>
</div>
<h4>Requirements</h4>
<div> <b>Header:</b> &nbsp;<a href="../headers/config/limits.html">&lt;boost/preprocessor/config/limits.hpp&gt;</a>
</div>
<b>See also<br>
</b>
<ul>
<li><a href="../topics/limitations.html">Limitations</a></li>
<li><a href="../ref/is_standard.html">BOOST_PP_IS_STANDARD</a><br>
</li>
</ul>
<br>
<hr size="1">
<div style="margin-left: 0px;"> <i><EFBFBD> Copyright <a href="http://www.housemarque.com"
target="_top">Housemarque Oy</a> 2002</i> <br>
<div style="margin-left: 0px;"> <i><EFBFBD> Copyright <a
href="http://www.housemarque.com" target="_top">Housemarque Oy</a>
2002</i> <br>
<i><EFBFBD> Copyright Paul Mensonides 2002</i> </div>
<div style="margin-left: 0px;">
<p><small>Distributed under the Boost Software License, Version 1.0. (See
accompanying file <a href="../../../../LICENSE_1_0.txt">LICENSE_1_0.txt</a>
or copy at <a href="http://www.boost.org/LICENSE_1_0.txt">www.boost.org/LICENSE_1_0.txt</a>)</small></p>
<p><small>Distributed under the Boost Software License, Version
1.0. (See accompanying file <a
href="../../../../LICENSE_1_0.txt">LICENSE_1_0.txt</a> or
copy at <a href="http://www.boost.org/LICENSE_1_0.txt">www.boost.org/LICENSE_1_0.txt</a>)</small></p>
</div>
</body>
</html>

View File

@ -1,41 +1,44 @@
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<title>BOOST_PP_LIMIT_SEQ</title>
<link rel="stylesheet" type="text/css" href="../styles.css">
</head>
<body>
<div style="margin-left: 0px;">
The <b>BOOST_PP_LIMIT_SEQ</b> macro defines the maximum <i>seq</i> size
supported by the library.
</div>
<h4>
Usage
</h4>
<div class="code">
<b>BOOST_PP_LIMIT_SEQ</b>
</div>
<h4>
Remarks
</h4>
<div>
This macro currently expands to <i>256</i>.
</div>
<h4>
Requirements
</h4>
<div>
<b>Header:</b> &nbsp;<a href="../headers/config/limits.html">&lt;boost/preprocessor/config/limits.hpp&gt;</a>
</div>
<hr size="1">
<div style="margin-left: 0px;">
<i><EFBFBD> Copyright <a href="http://www.housemarque.com" target="_top">Housemarque Oy</a> 2002</i>
</br><i><EFBFBD> Copyright Paul Mensonides 2002</i>
</div>
<div style="margin-left: 0px;">
<p><small>Distributed under the Boost Software License, Version 1.0. (See
accompanying file <a href="../../../../LICENSE_1_0.txt">LICENSE_1_0.txt</a> or
copy at <a href=
"http://www.boost.org/LICENSE_1_0.txt">www.boost.org/LICENSE_1_0.txt</a>)</small></p>
</div>
</body>
<head>
<meta http-equiv="content-type" content="text/html;
charset=windows-1252">
<title>BOOST_PP_LIMIT_SEQ</title>
<link rel="stylesheet" type="text/css" href="../styles.css">
</head>
<body>
<div style="margin-left: 0px;"> The <b>BOOST_PP_LIMIT_SEQ</b> macro
defines the maximum <i>seq</i> size supported by the library. </div>
<h4> Usage </h4>
<div class="code"> <b>BOOST_PP_LIMIT_SEQ</b> </div>
<h4> Remarks </h4>
<div>This macro expands by default to 256. For a C++ standard
conforming preprocessor, the macro actually expands to the value
of the <a href="../ref/limit_mag.html">BOOST_PP_LIMIT_MAG</a>
macro, but can be set to a lower value than BOOST_PP_LIMIT_MAG if
desired, but never to a higher value.<br>
</div>
<h4> Requirements </h4>
<div> <b>Header:</b> &nbsp;<a href="../headers/config/limits.html">&lt;boost/preprocessor/config/limits.hpp&gt;</a>
</div>
<b>See also<br>
</b>
<ul>
<li><a href="../topics/limitations.html">Limitations</a></li>
<li><a href="../ref/is_standard.html">BOOST_PP_IS_STANDARD</a><br>
</li>
</ul>
<br>
<hr size="1">
<div style="margin-left: 0px;"> <i><EFBFBD> Copyright <a
href="http://www.housemarque.com" target="_top">Housemarque Oy</a>
2002</i> <br>
<i><EFBFBD> Copyright Paul Mensonides 2002</i> </div>
<div style="margin-left: 0px;">
<p><small>Distributed under the Boost Software License, Version
1.0. (See accompanying file <a
href="../../../../LICENSE_1_0.txt">LICENSE_1_0.txt</a> or
copy at <a href="http://www.boost.org/LICENSE_1_0.txt">www.boost.org/LICENSE_1_0.txt</a>)</small></p>
</div>
</body>
</html>

View File

@ -1,33 +1,47 @@
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<head>
<meta http-equiv="content-type" content="text/html;
charset=windows-1252">
<title>BOOST_PP_LIMIT_TUPLE</title>
<link rel="stylesheet" type="text/css" href="../styles.css">
</head>
<body>
<div style="margin-left: 0px;">
The <b>BOOST_PP_LIMIT_TUPLE</b> macro defines the maximum <i>tuple</i> size supported by the library.
</div>
<h4>Usage</h4>
<div class="code">
<b>BOOST_PP_LIMIT_TUPLE</b>
</div>
<h4>Remarks</h4>
<div>
This macro currently expands to <i>64</i>.
</div>
<h4>Requirements</h4>
<div>
<b>Header:</b> &nbsp;<a href="../headers/config/limits.html">&lt;boost/preprocessor/config/limits.hpp&gt;</a>
</div>
<hr size="1">
<div style="margin-left: 0px;">
<i><EFBFBD> Copyright <a href="http://www.housemarque.com" target="_top">Housemarque Oy</a> 2002</i>
<br><i><EFBFBD> Copyright Paul Mensonides 2002</i>
</div>
<div style="margin-left: 0px;">
<p><small>Distributed under the Boost Software License, Version 1.0. (See
accompanying file <a href="../../../../LICENSE_1_0.txt">LICENSE_1_0.txt</a> or
copy at <a href="http://www.boost.org/LICENSE_1_0.txt">www.boost.org/LICENSE_1_0.txt</a>)</small></p>
</div>
</body>
</html>
<link rel="stylesheet" type="text/css" href="../styles.css">
</head>
<body>
<div style="margin-left: 0px;"> The <b>BOOST_PP_LIMIT_TUPLE</b>
macro defines the maximum <i>tuple/array</i> size supported by
the library. </div>
<h4>Usage</h4>
<div class="code"> <b>BOOST_PP_LIMIT_TUPLE</b> </div>
<h4>Remarks</h4>
<div> This macro expands by default to <i>64</i>. For a C++
standard conforming preprocessor, the end-user can change this to
128 or 256 by defining this macro to either value before including
any library headers. If the end-user changes the value of the
macro the <a href="../ref/limit_variadic.html">BOOST_PP_LIMIT_VARIADIC</a>
macro is changed to the same value unless the end-user has changed
BOOST_PP_LIMIT_VARIADIC to a higher value.<br>
</div>
<h4>Requirements</h4>
<div> <b>Header:</b> &nbsp;<a href="../headers/config/limits.html">&lt;boost/preprocessor/config/limits.hpp&gt;</a>
</div>
<b>See also<br>
</b>
<ul>
<li><a href="../topics/limitations.html">Limitations</a></li>
<li><a href="../ref/is_standard.html">BOOST_PP_IS_STANDARD</a><br>
</li>
</ul>
<br>
<hr size="1">
<div style="margin-left: 0px;"> <i><EFBFBD> Copyright <a
href="http://www.housemarque.com" target="_top">Housemarque Oy</a>
2002</i> <br>
<i><EFBFBD> Copyright Paul Mensonides 2002</i> </div>
<div style="margin-left: 0px;">
<p><small>Distributed under the Boost Software License, Version
1.0. (See accompanying file <a
href="../../../../LICENSE_1_0.txt">LICENSE_1_0.txt</a> or
copy at <a href="http://www.boost.org/LICENSE_1_0.txt">www.boost.org/LICENSE_1_0.txt</a>)</small></p>
</div>
</body>
</html>

View File

@ -1,24 +1,43 @@
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<title>BOOST_PP_LIMIT_VARIADIC</title>
<link rel="stylesheet" type="text/css" href="../styles.css">
</head>
<body>
<div style="margin-left: 0px;"> The <b>BOOST_PP_LIMIT_VARIADIC</b> macro
defines the maximum <i>variadic data</i> size&nbsp;supported by the library. </div>
<h4>Usage</h4>
<div class="code"> <b>BOOST_PP_LIMIT_VARIADIC</b> </div>
<h4>Remarks</h4>
<div> This macro currently expands to <i>64</i>. </div>
<h4>Requirements</h4>
<div> <b>Header:</b> &nbsp;<a href="../headers/config/limits.html">&lt;boost/preprocessor/config/limits.hpp&gt;</a>
</div>
<hr size="1">
<div style="margin-left: 0px;"> <i></i><i><EFBFBD> Copyright Edward Diener 2011</i> </div>
<div style="margin-left: 0px;">
<p><small>Distributed under the Boost Software License, Version 1.0.
(See accompanying file <a href="../../../../LICENSE_1_0.txt">LICENSE_1_0.txt</a>
or copy at <a href="http://www.boost.org/LICENSE_1_0.txt">www.boost.org/LICENSE_1_0.txt</a>)</small></p>
</div>
</body>
</html>
<head>
<meta http-equiv="content-type" content="text/html;
charset=windows-1252">
<title>BOOST_PP_LIMIT_VARIADIC</title>
<link rel="stylesheet" type="text/css" href="../styles.css">
</head>
<body>
<div style="margin-left: 0px;"> The <b>BOOST_PP_LIMIT_VARIADIC</b>
macro defines the maximum <i>variadic data</i>
size&nbsp;supported by the library. </div>
<h4>Usage</h4>
<div class="code"> <b>BOOST_PP_LIMIT_VARIADIC</b> </div>
<h4>Remarks</h4>
<div>This macro expands by default to <i>64</i>. For a C++ standard
conforming preprocessor, the end-user can change this to 128 or
256 by defining this macro to either value before including any
library headers. This value can never be less than the value of <a
href="../ref/limit_tuple.html">BOOST_PP_LIMIT_TUPLE</a>.<br>
</div>
<h4>Requirements</h4>
<div> <b>Header:</b> &nbsp;<a href="../headers/config/limits.html">&lt;boost/preprocessor/config/limits.hpp&gt;</a>
</div>
<b>See also<br>
</b>
<ul>
<li><a href="../topics/limitations.html">Limitations</a></li>
<li><a href="../ref/is_standard.html">BOOST_PP_IS_STANDARD</a><br>
</li>
</ul>
<br>
<hr size="1">
<div style="margin-left: 0px;"> <i><EFBFBD> Copyright Edward Diener 2011</i>
</div>
<div style="margin-left: 0px;">
<p><small>Distributed under the Boost Software License, Version
1.0. (See accompanying file <a
href="../../../../LICENSE_1_0.txt">LICENSE_1_0.txt</a> or
copy at <a href="http://www.boost.org/LICENSE_1_0.txt">www.boost.org/LICENSE_1_0.txt</a>)</small></p>
</div>
</body>
</html>

View File

@ -1,34 +1,35 @@
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<title>BOOST_PP_LIMIT_WHILE</title>
<link rel="stylesheet" type="text/css" href="../styles.css">
</head>
<body>
<div style="margin-left: 0px;">
The <b>BOOST_PP_LIMIT_WHILE</b> macro defines the maximum number of <b>BOOST_PP_WHILE</b> iterations.
</div>
<h4>Usage</h4>
<div class="code">
<b>BOOST_PP_LIMIT_WHILE</b>
</div>
<h4>Remarks</h4>
<div>
This macro currently expands to <i>256</i>.
</div>
<h4>Requirements</h4>
<div>
<b>Header:</b> &nbsp;<a href="../headers/config/limits.html">&lt;boost/preprocessor/config/limits.hpp&gt;</a>
</div>
<hr size="1">
<div style="margin-left: 0px;">
<i><EFBFBD> Copyright <a href="http://www.housemarque.com" target="_top">Housemarque Oy</a> 2002</i>
</br><i><EFBFBD> Copyright Paul Mensonides 2002</i>
</div>
<div style="margin-left: 0px;">
<p><small>Distributed under the Boost Software License, Version 1.0. (See
accompanying file <a href="../../../../LICENSE_1_0.txt">LICENSE_1_0.txt</a> or
copy at <a href=
"http://www.boost.org/LICENSE_1_0.txt">www.boost.org/LICENSE_1_0.txt</a>)</small></p>
</div>
</body>
<head>
<meta http-equiv="content-type" content="text/html; charset=windows-1252">
<title>BOOST_PP_LIMIT_WHILE</title>
<link rel="stylesheet" type="text/css" href="../styles.css">
</head>
<body>
<div style="margin-left: 0px;"> The <b>BOOST_PP_LIMIT_WHILE</b>
macro defines the maximum number of <b>BOOST_PP_WHILE</b>
iterations. </div>
<h4>Usage</h4>
<div class="code"> <b>BOOST_PP_LIMIT_WHILE</b> </div>
<h4>Remarks</h4>
<div>This macro expands by default to <i>256</i>. The macro
actually expands to the value of the <a
href="file:///E:/Programming/VersionControl/modular-boost/libs/preprocessor/doc/ref/limit_mag.html">BOOST_PP_LIMIT_MAG</a>
macro and can not be changed.</div>
<h4>Requirements</h4>
<div> <b>Header:</b> &nbsp;<a href="../headers/config/limits.html">&lt;boost/preprocessor/config/limits.hpp&gt;</a>
</div>
<hr size="1">
<div style="margin-left: 0px;"> <i><EFBFBD> Copyright <a
href="http://www.housemarque.com" target="_top">Housemarque Oy</a>
2002</i> <br>
<i><EFBFBD> Copyright Paul Mensonides 2002</i> </div>
<div style="margin-left: 0px;">
<p><small>Distributed under the Boost Software License, Version
1.0. (See accompanying file <a
href="../../../../LICENSE_1_0.txt">LICENSE_1_0.txt</a> or
copy at <a href="http://www.boost.org/LICENSE_1_0.txt">www.boost.org/LICENSE_1_0.txt</a>)</small></p>
</div>
</body>
</html>

View File

@ -1,62 +1,62 @@
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<title>BOOST_PP_LIST_ENUM</title>
<link rel="stylesheet" type="text/css" href="../styles.css">
</head>
<body>
<div style="margin-left: 0px;">
The <b>BOOST_PP_LIST_ENUM</b> macro converts a <i>list</i> to a comma-separated list.
</div>
<h4>Usage</h4>
<div class="code">
<b>BOOST_PP_LIST_ENUM</b>(<i>list</i>)
</div>
<h4>Arguments</h4>
<dl>
<dt>list</dt>
<dd>
The <i>list</i> to be converted.
</dd>
</dl>
<h4>Remarks</h4>
<div>
If <i>list</i> is, for example, (<i>a</i>, (<i>b</i>, (<i>c</i>, <b>BOOST_PP_NIL</b>))),
this macro will produce:
<div>
<i>a</i>, <i>b</i>, <i>c</i>
</div>
</div>
<div>
Previously, this macro could not be used inside <b>BOOST_PP_FOR</b>.&nbsp;
There is no longer any such restriction.&nbsp;
It is more efficient, however, to use <b>BOOST_PP_LIST_ENUM_R</b> in such a situation.
</div>
<h4>See Also</h4>
<ul>
<li><a href="list_enum_r.html">BOOST_PP_LIST_ENUM_R</a></li>
</ul>
<h4>Requirements</h4>
<div>
<b>Header:</b> &nbsp;<a href="../headers/list/enum.html">&lt;boost/preprocessor/list/enum.hpp&gt;</a>
</div>
<h4>Sample Code</h4>
<div><pre>
#include &lt;<a href="../headers/list/enum.html">boost/preprocessor/list/enum.hpp</a>&gt;
<head>
<meta http-equiv="content-type" content="text/html; charset=windows-1252">
<title>BOOST_PP_LIST_ENUM</title>
<link rel="stylesheet" type="text/css" href="../styles.css">
</head>
<body>
<div style="margin-left: 0px;"> The <b>BOOST_PP_LIST_ENUM</b> macro
converts a <i>list</i> to a comma-separated list. </div>
<h4>Usage</h4>
<div class="code"> <b>BOOST_PP_LIST_ENUM</b>(<i>list</i>) </div>
<h4>Arguments</h4>
<dl>
<dt>list</dt>
<dd> The <i>list</i> to be converted. </dd>
</dl>
<h4>Remarks</h4>
<div> If <i>list</i> is, for example, (<i>a</i>, (<i>b</i>, (<i>c</i>,
<b>BOOST_PP_NIL</b>))), this macro will produce:
<div> <i>a</i>, <i>b</i>, <i>c</i> </div>
</div>
<div> Previously, this macro could not be used inside <b>BOOST_PP_FOR</b>.&nbsp;
There is no longer any such restriction.&nbsp; It is more
efficient, however, to use <b>BOOST_PP_LIST_ENUM_R</b> in such a
situation.<br>
<br>
In <a
href="file:///E:/Programming/VersionControl/modular-boost/libs/preprocessor/doc/topics/variadic_macros.html#C20_Support_For_Variadic_Macros">C++
20</a> mode if the list is empty the resulting <i>variadic</i>
<i>data</i> will be empty.</div>
<h4>See Also</h4>
<ul>
<li><a href="list_enum_r.html">BOOST_PP_LIST_ENUM_R</a></li>
</ul>
<h4>Requirements</h4>
<div> <b>Header:</b> &nbsp;<a href="../headers/list/enum.html">&lt;boost/preprocessor/list/enum.hpp&gt;</a>
</div>
<h4>Sample Code</h4>
<div>
<pre>#include &lt;<a href="../headers/list/enum.html">boost/preprocessor/list/enum.hpp</a>&gt;
#define LIST (w, (x, (y, (z, <a href="nil.html">BOOST_PP_NIL</a>))))
<a href="list_enum.html">BOOST_PP_LIST_ENUM</a>(LIST) // expands to w, x, y, z
</pre></div>
<hr size="1">
<div style="margin-left: 0px;">
<i><EFBFBD> Copyright <a href="http://www.housemarque.com" target="_top">Housemarque Oy</a> 2002</i>
</br><i><EFBFBD> Copyright Paul Mensonides 2002</i>
</div>
<div style="margin-left: 0px;">
<p><small>Distributed under the Boost Software License, Version 1.0. (See
accompanying file <a href="../../../../LICENSE_1_0.txt">LICENSE_1_0.txt</a> or
copy at <a href=
"http://www.boost.org/LICENSE_1_0.txt">www.boost.org/LICENSE_1_0.txt</a>)</small></p>
</div>
</body>
</pre>
</div>
<hr size="1">
<div style="margin-left: 0px;"> <i><EFBFBD> Copyright <a
href="http://www.housemarque.com" target="_top">Housemarque Oy</a>
2002</i> <br>
<i><EFBFBD> Copyright Paul Mensonides 2002</i> </div>
<div style="margin-left: 0px;">
<p><small>Distributed under the Boost Software License, Version
1.0. (See accompanying file <a
href="../../../../LICENSE_1_0.txt">LICENSE_1_0.txt</a> or
copy at <a href="http://www.boost.org/LICENSE_1_0.txt">www.boost.org/LICENSE_1_0.txt</a>)</small></p>
</div>
</body>
</html>

View File

@ -31,6 +31,12 @@
<i>a</i>, <i>b</i>, <i>c</i>
</div>
</div>
<div>
In <a
href="file:///E:/Programming/VersionControl/modular-boost/libs/preprocessor/doc/topics/variadic_macros.html#C20_Support_For_Variadic_Macros">C++
20</a> mode if the list is empty the resulting <i>variadic</i>
<i>data</i> will be empty.
</div>
<h4>See Also</h4>
<ul>
<li><a href="list_enum.html">BOOST_PP_LIST_ENUM</a></li>

View File

@ -1,17 +1,19 @@
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<meta content="text/html; charset=windows-1252" http-equiv="content-type">
<meta content="text/html; charset=windows-1252"
http-equiv="content-type">
<title>BOOST_PP_OVERLOAD</title>
<link rel="stylesheet" type="text/css" href="../styles.css">
<link rel="stylesheet" type="text/css" href="../styles.css">
</head>
<body>
<div style="margin-left: 0px;"> The <b>BOOST_PP_OVERLOAD</b> variadic
macro expands to the name of a non-variadic macro having a given number of
parameters.<br>
<div style="margin-left: 0px;"> The <b>BOOST_PP_OVERLOAD</b>
variadic macro expands to the name of a non-variadic macro having
a given number of parameters.<br>
</div>
<h4>Usage</h4>
<div class="code"> <b>BOOST_PP_OVERLOAD</b>(<i>prefix</i>,...) <a href="../topics/variadic_macros.html#VNotation"
target="_self"><sup>(v)</sup></a><br>
<div class="code"> <b>BOOST_PP_OVERLOAD</b>(<i>prefix</i>,...) <a
href="../topics/variadic_macros.html#VNotation" target="_self"><sup>(v)</sup></a><br>
</div>
<h4>Arguments</h4>
<dl>
@ -20,39 +22,43 @@
<dd> The prefix of the non-variadic macro name. </dd>
<dt>...<br>
</dt>
<dd><i> Variadic data</i>. The number of variadic data
elements, as determined by BOOST_PP_VARIADIC_SIZE, is appended to the
<dd><i> Variadic data</i>. The number of variadic data elements,
as determined by BOOST_PP_VARIADIC_SIZE, is appended to the
prefix to form the output non-variadic macro name.<br>
</dd>
</dl>
<h4>Remarks</h4>
<div> This macro creates a macro name which depends on the number of
elements of variadic data. It should be used in the form of <br>
BOOST_PP_OVERLOAD(MACRO_NAME_,__VA_ARGS__)(__VA_ARGS__) in order to
call a non-variadic macro taking a given number of variadic data
elements as non-variadic arguments. In this way one can invoke a
variadic macro with a variable number of parameters which calls one of
a series of non-variadic macros doing very similar things.
BOOST_PP_OVERLOAD(MACRO_NAME_,__VA_ARGS__)(__VA_ARGS__) in order
to call a non-variadic macro taking a given number of variadic
data elements as non-variadic arguments. In this way one can
invoke a variadic macro with a variable number of parameters which
calls one of a series of non-variadic macros doing very similar
things.<br>
<br>
In <a
href="file:///E:/Programming/VersionControl/modular-boost/libs/preprocessor/doc/topics/variadic_macros.html#C20_Support_For_Variadic_Macros">C++
20</a> mode the <i>variadic</i> <i>data</i> can be empty and
the given number of parameters will be 0.<br>
</div>
<b>Requirements</b>
<div> <b>Header:</b> &nbsp;<a href="../headers/facilities/overload.html">&lt;boost/preprocessor/facilities/overload.hpp&gt;</a>
<div> <b>Header:</b> &nbsp;<a
href="../headers/facilities/overload.html">&lt;boost/preprocessor/facilities/overload.hpp&gt;</a>
</div>
<h4>Sample Code</h4>
<div>
<pre>#include &lt;<a href="../headers/facilities/overload.html">boost/preprocessor/facilities/overload.hpp</a>&gt;<br>#include <<a
href="../headers/cat.html">boost/preprocessor/cat.hpp</a>><br>#include <<a href="../headers/facilities/empty.html">boost/preprocessor/facilities/empty.hpp</a>><br>#include <<a
href="../headers/arithmetic/add.html">boost/preprocessor/arithmetic/add.hpp</a>><br><br>#define MACRO_1(number) MACRO_2(number,10)<br>#define MACRO_2(number1,number2) <a
href="add.html">BOOST_PP_ADD</a>(number1,number2)<br><br>#if !BOOST_PP_VARIADICS_MSVC<br><br>#define MACRO_ADD_NUMBERS(...) <a
href="overload.html">BOOST_PP_OVERLOAD</a>(MACRO_,__VA_ARGS__)(__VA_ARGS__)<br><br>#else<br><br>// or for Visual C++<br><br>#define MACRO_ADD_NUMBERS(...) \<br> <a
href="cat.html">BOOST_PP_CAT</a>(<a href="overload.html">BOOST_PP_OVERLOAD</a>(MACRO_,__VA_ARGS__)(__VA_ARGS__),<a
href="empty.html">BOOST_PP_EMPTY</a>())<br><br>#endif<br><br>MACRO_ADD_NUMBERS(5) // output is 15<br>MACRO_ADD_NUMBERS(3,6) // output is 9</pre>
</div>
<hr size="1">
<div style="margin-left: 0px;"> <i></i><i><EFBFBD> Copyright Edward Diener 2011,2013,2016</i> </div>
<div style="margin-left: 0px;">
<p><small>Distributed under the Boost Software License, Version 1.0.
(See accompanying file <a href="../../../../LICENSE_1_0.txt">LICENSE_1_0.txt</a>
or copy at <a href="http://www.boost.org/LICENSE_1_0.txt">www.boost.org/LICENSE_1_0.txt</a>)</small></p>
</div>
</body></html>
<pre>#include &lt;<a href="../headers/facilities/overload.html">boost/preprocessor/facilities/overload.hpp</a>&gt;<br>#include &lt;<a href="../headers/cat.html">boost/preprocessor/cat.hpp</a>&gt;<br>#include &lt;<a href="../headers/facilities/empty.html">boost/preprocessor/facilities/empty.hpp</a>&gt;<br>#include &lt;<a href="../headers/arithmetic/add.html">boost/preprocessor/arithmetic/add.hpp</a>&gt;<br><br>#define MACRO_1(number) MACRO_2(number,10)<br>#define MACRO_2(number1,number2) <a href="add.html">BOOST_PP_ADD</a>(number1,number2)<br><br>#if !BOOST_PP_VARIADICS_MSVC<br><br>#define MACRO_ADD_NUMBERS(...) <a href="overload.html">BOOST_PP_OVERLOAD</a>(MACRO_,__VA_ARGS__)(__VA_ARGS__)<br><br>#else<br><br>// or for Visual C++'s default preprocessor<br><br>#define MACRO_ADD_NUMBERS(...) \<br> <a href="cat.html">BOOST_PP_CAT</a>(<a href="overload.html">BOOST_PP_OVERLOAD</a>(MACRO_,__VA_ARGS__)(__VA_ARGS__),<a href="empty.html">BOOST_PP_EMPTY</a>())<br><br>#endif<br><br>MACRO_ADD_NUMBERS(5) // output is 15<br>MACRO_ADD_NUMBERS(3,6) // output is 9</pre>
</div>
<hr size="1">
<div style="margin-left: 0px;"> <i></i><i><EFBFBD> Copyright Edward Diener
2011,2013,2016</i> </div>
<div style="margin-left: 0px;">
<p><small>Distributed under the Boost Software License, Version
1.0.
(See accompanying file <a href="../../../../LICENSE_1_0.txt">LICENSE_1_0.txt</a>
or copy at <a href="http://www.boost.org/LICENSE_1_0.txt">www.boost.org/LICENSE_1_0.txt</a>)</small></p>
</div>
</body>
</html>

View File

@ -1,58 +1,64 @@
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<meta http-equiv="content-type" content="text/html; charset=windows-1252">
<title>BOOST_PP_TUPLE_EAT</title>
<link rel="stylesheet" type="text/css" href="../styles.css">
<link rel="stylesheet" type="text/css" href="../styles.css">
</head>
<body>
<div style="margin-left: 0px;">
The <b>BOOST_PP_TUPLE_EAT</b> macro expands to a macro that eats a <i>tuple</i>.
</div>
<h4>Usage</h4>
<div class="code">
<b>BOOST_PP_TUPLE_EAT</b>(<i>size</i>)<br>
<br>
or<br>
<br>
<b>BOOST_PP_TUPLE_EAT</b>(<i>size</i>) <a href="../topics/variadic_macros.html#VNotation" target="_self"><sup>(v)</sup></a><b></b><br>
</div>
<h4>Arguments</h4>
<dl>
<dt>size</dt>
<dd>
The size of the <i>tuple</i> to be eaten.&nbsp;
Valid <i>tuple</i> sizes range from <i>1</i> to <b>BOOST_PP_LIMIT_TUPLE</b>.
</dd>
</dl>
<h4>Remarks</h4>
<div>
The <i>size</i> argument must be the actual size of the <i>tuple</i> in the non-variadic version. <br>
<br>For the variadic version <a href="../topics/variadic_macros.html#VNotation" target="_self"><sup>(v)</sup></a>&nbsp;the
size may be left out
completely so that the macro can be invoked as BOOST_PP_TUPLE_EAT(); you may get a warning from some compilers, but the
functionality will still work. If you specify a size in the variadic
version, it will be ignored, but the warning from some compilers will
not occur.<br>
</div>
<h4>See Also</h4>
<ul>
<li><a href="limit_tuple.html">BOOST_PP_LIMIT_TUPLE</a></li>
</ul>
<h4>Requirements</h4>
<div>
<b>Header:</b> &nbsp;<a href="../headers/tuple/eat.html">&lt;boost/preprocessor/tuple/eat.hpp&gt;</a>
</div>
<h4>Sample Code</h4>
<div><pre>#include &lt;<a href="../headers/control/if.html">boost/preprocessor/control/if.hpp</a>&gt;<br>#include &lt;<a href="../headers/tuple/eat.html">boost/preprocessor/tuple/eat.hpp</a>&gt;<br><br>#define OP(a, b) (a b)<br><br>#define MACRO(n) <a href="if.html">BOOST_PP_IF</a>(n, OP, <a href="tuple_eat.html">BOOST_PP_TUPLE_EAT</a>(2))(1, 2)<br><br>// or for the variadic version <a href="../topics/variadic_macros.html#VNotation" target="_self"><sup>(v)</sup></a><br><br>#define MACRO(n) <a href="if.html">BOOST_PP_IF</a>(n, OP, <a href="tuple_eat.html">BOOST_PP_TUPLE_EAT</a>())(1, 2)<br><br>MACRO(0) // expands to nothing<br>MACRO(1) // expands to (1, 2)<br></pre></div>
<hr size="1">
<div style="margin-left: 0px;">
<i><EFBFBD> Copyright <a href="http://www.housemarque.com" target="_top">Housemarque Oy</a> 2002</i>
<br><i><EFBFBD> Copyright Paul Mensonides 2002<br>
</i><i><EFBFBD> Copyright Edward Diener 2011,2013</i><br>
</div>
<div style="margin-left: 0px;">
<p><small>Distributed under the Boost Software License, Version 1.0. (See
accompanying file <a href="../../../../LICENSE_1_0.txt">LICENSE_1_0.txt</a> or
copy at <a href="http://www.boost.org/LICENSE_1_0.txt">www.boost.org/LICENSE_1_0.txt</a>)</small></p>
</div>
<div style="margin-left: 0px;"> The <b>BOOST_PP_TUPLE_EAT</b> macro
expands to a macro that eats a <i>tuple</i>. </div>
<h4>Usage</h4>
<div class="code"> <b>BOOST_PP_TUPLE_EAT</b>() <a
href="file:///E:/Programming/VersionControl/modular-boost/libs/preprocessor/doc/topics/variadic_macros.html#VNotation"
target="_self"><sup>(v)</sup></a><br>
<br>
or<br>
<br>
<b>BOOST_PP_TUPLE_EAT</b>(<i>size</i>) <a
href="../topics/variadic_macros.html#VNotation" target="_self"><sup>(v)</sup></a><b></b><br>
</div>
<h4>Arguments</h4>
<dl>
<dt>size</dt>
<dd> The size of the <i>tuple</i> to be eaten.&nbsp; The argument
is ignored.<br>
</dd>
</dl>
<h4>Remarks</h4>
<div>The
size may be left out
completely so that the macro can be invoked as
BOOST_PP_TUPLE_EAT(); you may get a warning from some compilers,
but the
functionality will still work. If you specify a size, it will be
ignored, but the warning from some compilers will
not occur.<br>
</div>
<h4>See Also</h4>
<ul>
<li><a href="limit_tuple.html">BOOST_PP_LIMIT_TUPLE</a></li>
</ul>
<h4>Requirements</h4>
<div> <b>Header:</b> &nbsp;<a href="../headers/tuple/eat.html">&lt;boost/preprocessor/tuple/eat.hpp&gt;</a>
</div>
<h4>Sample Code</h4>
<div>
<pre>#include &lt;<a href="../headers/control/if.html">boost/preprocessor/control/if.hpp</a>&gt;<br>#include &lt;<a href="../headers/tuple/eat.html">boost/preprocessor/tuple/eat.hpp</a>&gt;<br><br>#define OP(a, b) (a b)<br>#define MACRO(n) <a href="if.html">BOOST_PP_IF</a>(n, OP, <a href="tuple_eat.html">BOOST_PP_TUPLE_EAT</a>())(1, 2)<br><br>MACRO(0) // expands to nothing<br>MACRO(1) // expands to (1, 2)<br></pre>
</div>
<hr size="1">
<div style="margin-left: 0px;"> <i><EFBFBD> Copyright <a
href="http://www.housemarque.com" target="_top">Housemarque Oy</a>
2002</i> <br>
<i><EFBFBD> Copyright Paul Mensonides 2002<br>
</i><i><EFBFBD> Copyright Edward Diener 2011,2013,2020</i><br>
</div>
<div style="margin-left: 0px;">
<p><small>Distributed under the Boost Software License, Version
1.0. (See accompanying file <a
href="../../../../LICENSE_1_0.txt">LICENSE_1_0.txt</a> or
copy at <a href="http://www.boost.org/LICENSE_1_0.txt">www.boost.org/LICENSE_1_0.txt</a>)</small></p>
</div>
</body>
</html>
</html>

View File

@ -1,65 +1,64 @@
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<meta http-equiv="content-type" content="text/html; charset=windows-1252">
<title>BOOST_PP_TUPLE_ELEM</title>
<link rel="stylesheet" type="text/css" href="../styles.css">
<link rel="stylesheet" type="text/css" href="../styles.css">
</head>
<body>
<div style="margin-left: 0px;">
The <b>BOOST_PP_TUPLE_ELEM</b> macro extracts an element from a <i>tuple</i>.
</div>
<h4>Usage</h4>
<div class="code">
<b>BOOST_PP_TUPLE_ELEM</b>(<i>size</i>, <i>i</i>, <i>tuple</i>)<sup></sup><br>
<br>
or<br>
<br>
<b>BOOST_PP_TUPLE_ELEM</b>(<i>...</i>) <a href="../topics/variadic_macros.html#VNotation" target="_self"><sup>(v)</sup></a><b></b><br>
</div>
<h4>Arguments</h4>
<dl>
<dt>size</dt>
<dd>
The size of the <i>tuple</i>.&nbsp;
Valid <i>tuple</i> sizes range from <i>1</i> to <b>BOOST_PP_LIMIT_TUPLE</b>.&nbsp;
</dd>
<dt>i</dt>
<dd>
The zero-based index into the <i>tuple</i> of the element to be extracted.&nbsp;
Valid values range from <i>0</i> to <i>size</i> - <i>1</i>.
</dd>
<dt>tuple</dt>
<dd>
The <i>tuple</i> from which an element is to be extracted.
</dd>
</dl>
<h4>Remarks</h4>
<div>
The <i>size</i> argument must be the actual size of the <i>tuple</i>,
and <i>i</i> must be less than the size of the <i>tuple</i>. <br>
<br>You can
invoke the variadic version as BOOST_PP_TUPLE_ELEM(<i>i</i>,<i>tuple</i>) or
BOOST_PP_TUPLE_ELEM(<i>size</i>,<i>i</i>,<i>tuple</i>).
</div>
<h4>See Also</h4>
<ul>
<li><a href="limit_tuple.html">BOOST_PP_LIMIT_TUPLE</a></li>
</ul>
<h4>Requirements</h4>
<div>
<b>Header:</b> &nbsp;<a href="../headers/tuple/elem.html">&lt;boost/preprocessor/tuple/elem.hpp&gt;</a>
</div>
<h4>Sample Code</h4>
<div><pre>#include &lt;<a href="../headers/tuple/elem.html">boost/preprocessor/tuple/elem.hpp</a>&gt;<br><br>#define TUPLE (a, b, c, d)<br><br><a href="tuple_elem.html">BOOST_PP_TUPLE_ELEM</a>(4, 0, TUPLE) // expands to a<br><a href="tuple_elem.html">BOOST_PP_TUPLE_ELEM</a>(4, 3, TUPLE) // expands to d<br><br>// or for the variadic version <a href="../topics/variadic_macros.html#VNotation" target="_self"><sup>(v)</sup></a><br><br><a href="tuple_elem.html">BOOST_PP_TUPLE_ELEM</a>(0, TUPLE) // expands to a in the variadic version<br><a href="tuple_elem.html">BOOST_PP_TUPLE_ELEM</a>(3, TUPLE) // expands to d in the variadic version<br></pre></div>
<hr size="1">
<div style="margin-left: 0px;">
<i><EFBFBD> Copyright <a href="http://www.housemarque.com" target="_top">Housemarque Oy</a> 2002</i>
<br><i><EFBFBD> Copyright Paul Mensonides 2002<br>
</i><i><EFBFBD> Copyright Edward Diener 2011,2013</i><br>
</div>
<div style="margin-left: 0px;">
<p><small>Distributed under the Boost Software License, Version 1.0. (See
accompanying file <a href="../../../../LICENSE_1_0.txt">LICENSE_1_0.txt</a> or
copy at <a href="http://www.boost.org/LICENSE_1_0.txt">www.boost.org/LICENSE_1_0.txt</a>)</small></p>
</div>
<div style="margin-left: 0px;"> The <b>BOOST_PP_TUPLE_ELEM</b>
macro extracts an element from a <i>tuple</i>. </div>
<h4>Usage</h4>
<div class="code"> <b>BOOST_PP_TUPLE_ELEM</b>(<i>i</i>, <i>tuple</i>)
<a
href="file:///E:/Programming/VersionControl/modular-boost/libs/preprocessor/doc/topics/variadic_macros.html#VNotation"
target="_self"><sup>(v)</sup></a><br>
<br>
or<br>
<br>
<b>BOOST_PP_TUPLE_ELEM</b>(<i>size</i>, <i>i</i>, <i>tuple</i>)
<a href="../topics/variadic_macros.html#VNotation" target="_self"><sup>(v)</sup></a><br>
</div>
<h4>Arguments</h4>
<dl>
<dt>size</dt>
<dd> The size of the <i>tuple</i>.&nbsp; The size is ignored.<br>
</dd>
<dt>i</dt>
<dd> The zero-based index into the <i>tuple</i> of the element to
be extracted.&nbsp; Valid values range from <i>0</i> to <i>size</i>
- <i>1</i>. </dd>
<dt>tuple</dt>
<dd> The <i>tuple</i> from which an element is to be extracted. </dd>
</dl>
<h4>Remarks</h4>
<div>You can invoke the variadic macro as BOOST_PP_TUPLE_ELEM(<i>i</i>,<i>tuple</i>),
or BOOST_PP_TUPLE_ELEM(<i>size</i>,<i>i</i>,<i>tuple</i>) for
backward compatibility. </div>
<h4>See Also</h4>
<ul>
<li><a href="limit_tuple.html">BOOST_PP_LIMIT_TUPLE</a></li>
</ul>
<h4>Requirements</h4>
<div> <b>Header:</b> &nbsp;<a href="../headers/tuple/elem.html">&lt;boost/preprocessor/tuple/elem.hpp&gt;</a>
</div>
<h4>Sample Code</h4>
<div>
<pre>#include &lt;<a href="../headers/tuple/elem.html">boost/preprocessor/tuple/elem.hpp</a>&gt;<br><br>#define TUPLE (a, b, c, d)<br><br><a href="tuple_elem.html">BOOST_PP_TUPLE_ELEM</a>(0, TUPLE) // expands to a in the variadic version<br><a href="tuple_elem.html">BOOST_PP_TUPLE_ELEM</a>(3, TUPLE) // expands to d in the variadic version<br></pre>
</div>
<hr size="1">
<div style="margin-left: 0px;"> <i><EFBFBD> Copyright <a
href="http://www.housemarque.com" target="_top">Housemarque Oy</a>
2002</i> <br>
<i><EFBFBD> Copyright Paul Mensonides 2002<br>
</i><i><EFBFBD> Copyright Edward Diener 2011,2013,2020</i><br>
</div>
<div style="margin-left: 0px;">
<p><small>Distributed under the Boost Software License, Version
1.0. (See accompanying file <a
href="../../../../LICENSE_1_0.txt">LICENSE_1_0.txt</a> or
copy at <a href="http://www.boost.org/LICENSE_1_0.txt">www.boost.org/LICENSE_1_0.txt</a>)</small></p>
</div>
</body>
</html>
</html>

View File

@ -1,55 +1,68 @@
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<meta http-equiv="content-type" content="text/html; charset=windows-1252">
<title>BOOST_PP_TUPLE_ENUM</title>
<link rel="stylesheet" type="text/css" href="../styles.css">
</head>
<body>
<div style="margin-left: 0px;"> The <b>BOOST_PP_TUPLE_ENUM</b> macro&nbsp;converts a <i>tuple</i> to its comma-separated elements. The comma-separated elements are in the form of <i>variadic data</i>. </div>
<h4> Usage </h4>
<div class="code"> <b>BOOST_PP_TUPLE_ENUM</b>(<i>size,tuple</i>)<br>
<br>
or<br>
<br>
<b>BOOST_PP_TUPLE_ENUM</b>(<i>...</i>) <a href="../topics/variadic_macros.html#VNotation" target="_self"><sup>(v)</sup></a><b></b><br>
</div>
<h4> Arguments </h4>
<dl>
<dt>size</dt>
<dd>
The size of the <i>tuple</i>.&nbsp;
Valid <i>tuple</i> sizes range from <i>1</i> to <b>BOOST_PP_LIMIT_TUPLE</b>. <br>
</dd>
<dt>tuple</dt>
<dd> The <i>tuple</i> whose elements are to be converted. </dd>
</dl>
<h4> Remarks </h4>
<div>
<br>You can
invoke the variadic version <a href="../topics/variadic_macros.html#VNotation" target="_self"><sup>(v)</sup></a> as BOOST_PP_TUPLE_ENUM(<i>tuple</i>) or
BOOST_PP_TUPLE_ENUM(<i>size</i>,<i>tuple</i>).<br>
</div>
<h4>See Also</h4>
<ul>
<li><a href="limit_tuple.html">BOOST_PP_LIMIT_TUPLE</a><br>
</li>
</ul>
<h4> Requirements </h4>
<div> <b>Header:</b> &nbsp;<a href="../headers/tuple/enum.html">&lt;boost/preprocessor/tuple/enum.hpp&gt;</a>
</div>
<h4> Sample Code </h4>
<div>
<pre>#include &lt;<a href="../headers/tuple/enum.html">boost/preprocessor/tuple/enum.hpp</a>&gt;<br><br>#define TUPLE (B,O,O,S,T)<br><br><a href="tuple_enum.html">BOOST_PP_TUPLE_ENUM</a>(5,TUPLE) // expands to B, O, O, S, T<br><br>// or for the variadic version <a href="../topics/variadic_macros.html#VNotation" target="_self"><sup>(v)</sup></a><br><br><a href="tuple_enum.html">BOOST_PP_TUPLE_ENUM</a>(TUPLE) // expands to B, O, O, S, T<br></pre>
</div>
<hr size="1">
<div style="margin-left: 0px;"> <i><EFBFBD> Copyright <a href="http://www.housemarque.com" target="_top">Housemarque Oy</a> 2002</i>
<br>
<i><EFBFBD> Copyright Paul Mensonides 2002<br>
</i><i><EFBFBD> Copyright Edward Diener 2011,2013</i><br>
</div>
<div style="margin-left: 0px;">
<p><small>Distributed under the Boost Software License, Version 1.0.
(See accompanying file <a href="../../../../LICENSE_1_0.txt">LICENSE_1_0.txt</a>
or copy at <a href="http://www.boost.org/LICENSE_1_0.txt">www.boost.org/LICENSE_1_0.txt</a>)</small></p>
</div>
<div style="margin-left: 0px;"> The <b>BOOST_PP_TUPLE_ENUM</b>
macro&nbsp;converts a <i>tuple</i> to its comma-separated
elements. The comma-separated elements are in the form of <i>variadic
data</i>. </div>
<h4> Usage </h4>
<div class="code"> <b>BOOST_PP_TUPLE_ENUM</b>(<i>tuple</i>) <a
href="file:///E:/Programming/VersionControl/modular-boost/libs/preprocessor/doc/topics/variadic_macros.html#VNotation"
target="_self"><sup>(v)</sup></a><br>
<br>
or<br>
<br>
<b>BOOST_PP_TUPLE_ENUM</b>(<i>size,tuple</i>) <a
href="../topics/variadic_macros.html#VNotation" target="_self"><sup>(v)</sup></a><br>
</div>
<h4> Arguments </h4>
<dl>
<dt>size</dt>
<dd> The size of the <i>tuple</i>.&nbsp; The size is ignored.<br>
</dd>
<dt>tuple</dt>
<dd> The <i>tuple</i> whose elements are to be converted. </dd>
</dl>
<h4> Remarks </h4>
<div>
You can
invoke the variadic macro <a
href="../topics/variadic_macros.html#VNotation" target="_self"><sup>(v)</sup></a>
as BOOST_PP_TUPLE_ENUM(<i>tuple</i>) or
BOOST_PP_TUPLE_ENUM(<i>size</i>,<i>tuple</i>) for backward
compatibility.<br>
</div>
<h4>See Also</h4>
<ul>
<li><a href="limit_tuple.html">BOOST_PP_LIMIT_TUPLE</a><br>
</li>
</ul>
<h4> Requirements </h4>
<div> <b>Header:</b> &nbsp;<a href="../headers/tuple/enum.html">&lt;boost/preprocessor/tuple/enum.hpp&gt;</a>
</div>
<h4> Sample Code </h4>
<div>
<pre>#include &lt;<a href="../headers/tuple/enum.html">boost/preprocessor/tuple/enum.hpp</a>&gt;<br><br>#define TUPLE (B,O,O,S,T)<br><br><a href="tuple_enum.html">BOOST_PP_TUPLE_ENUM</a>(TUPLE) // expands to B, O, O, S, T<br></pre>
</div>
<hr size="1">
<div style="margin-left: 0px;"> <i><EFBFBD> Copyright <a
href="http://www.housemarque.com" target="_top">Housemarque Oy</a>
2002</i>
<br>
<i><EFBFBD> Copyright Paul Mensonides 2002<br>
</i><i><EFBFBD> Copyright Edward Diener 2011,2013,2020</i><br>
</div>
<div style="margin-left: 0px;">
<p><small>Distributed under the Boost Software License, Version
1.0.
(See accompanying file <a href="../../../../LICENSE_1_0.txt">LICENSE_1_0.txt</a>
or copy at <a href="http://www.boost.org/LICENSE_1_0.txt">www.boost.org/LICENSE_1_0.txt</a>)</small></p>
</div>
</body>
</html>
</html>

View File

@ -1,33 +1,35 @@
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<meta content="text/html; charset=windows-1252" http-equiv="content-type">
<meta content="text/html; charset=windows-1252"
http-equiv="content-type">
<title>BOOST_PP_TUPLE_INSERT</title>
<link rel="stylesheet" type="text/css" href="../styles.css">
</head>
<body>
<div style="margin-left: 0px;"> The <b>BOOST_PP_TUPLE_INSERT</b> macro
inserts an element into an <i>tuple</i>.</div>
<div style="margin-left: 0px;"> The <b>BOOST_PP_TUPLE_INSERT</b>
macro inserts an element into an <i>tuple</i>.</div>
<h4>Usage</h4>
<div class="code"> <b>BOOST_PP_TUPLE_INSERT</b>(<i>tuple</i>, <i>i</i>, <i>elem</i>)
<a href="../topics/variadic_macros.html#VNotation"><sup>(v)</sup></a></div>
<div class="code"> <b>BOOST_PP_TUPLE_INSERT</b>(<i>tuple</i>, <i>i</i>,
<i>elem</i>) <a href="../topics/variadic_macros.html#VNotation"><sup>(v)</sup></a></div>
<h4>Arguments</h4>
<dl>
<dt>tuple</dt>
<dd> The <i>tuple</i> into which an element is to be inserted. </dd>
<dt>i</dt>
<dd> The zero-based position in <i>tuple</i> where an element is to be
inserted.&nbsp; Valid values range from <i>0</i> to <b>BOOST_PP_TUPLE_SIZE</b>(<i>tuple</i>).</dd>
<dd> The zero-based position in <i>tuple</i> where an element is
to be inserted.&nbsp; Valid values range from <i>0</i> to <b>BOOST_PP_TUPLE_SIZE</b>(<i>tuple</i>).</dd>
<dt>elem</dt>
<dd> The element to insert. </dd>
</dl>
<h4>Remarks</h4>
<div> This macro inserts <i>elem</i> before the element at index <i>i</i>.
</div>
<div> If the operation attempts to create an <i>tuple</i> that is larger
than <b>BOOST_PP_LIMIT_TUPLE</b>, the result is undefined.</div>
<div> This macro uses <b>BOOST_PP_WHILE</b> interally.&nbsp; Therefore, to
use the <i>d</i> parameter passed from other macros that use <b>BOOST_PP_WHILE</b>,
see <b>BOOST_PP_TUPLE_INSERT_D</b>.</div>
<div> If the operation attempts to create an <i>tuple</i> that is
larger than <b>BOOST_PP_LIMIT_TUPLE</b>, the result is undefined.</div>
<div> This macro uses <b>BOOST_PP_WHILE</b> interally.&nbsp;
Therefore, to use the <i>d</i> parameter passed from other macros
that use <b>BOOST_PP_WHILE</b>, see <b>BOOST_PP_TUPLE_INSERT_D</b>.</div>
<h4>See Also</h4>
<ul>
<li><a href="tuple_insert_d.html">BOOST_PP_TUPLE_INSERT_D</a></li>
@ -42,13 +44,16 @@
#define TUPLE (a, b, d)
<a href="tuple_insert.html">BOOST_PP_TUPLE_INSERT</a>(TUPLE, 2, c) // expands to (a, b, c, d)
</pre></div>
</pre>
</div>
<hr size="1">
<div style="margin-left: 0px;"> <i><EFBFBD> Copyright Edward Diener 2013</i> </div>
<div style="margin-left: 0px;"> <i><EFBFBD> Copyright Edward Diener 2013</i>
</div>
<div style="margin-left: 0px;">
<p><small>Distributed under the Boost Software License, Version 1.0. (See
accompanying file <a href="../../../../LICENSE_1_0.txt">LICENSE_1_0.txt</a>
or copy at <a href="http://www.boost.org/LICENSE_1_0.txt">www.boost.org/LICENSE_1_0.txt</a>)</small></p>
<p><small>Distributed under the Boost Software License, Version
1.0. (See accompanying file <a
href="../../../../LICENSE_1_0.txt">LICENSE_1_0.txt</a> or
copy at <a href="http://www.boost.org/LICENSE_1_0.txt">www.boost.org/LICENSE_1_0.txt</a>)</small></p>
</div>
</body>
</html>

View File

@ -1,16 +1,18 @@
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<meta content="text/html; charset=windows-1252" http-equiv="content-type">
<meta content="text/html; charset=windows-1252"
http-equiv="content-type">
<title>BOOST_PP_TUPLE_INSERT_D</title>
<link rel="stylesheet" type="text/css" href="../styles.css">
</head>
<body>
<div style="margin-left: 0px;"> The <b>BOOST_PP_TUPLE_INSERT_D</b> macro
inserts an element into a <i>tuple</i>.&nbsp; It reenters <b>BOOST_PP_WHILE</b>
<div style="margin-left: 0px;"> The <b>BOOST_PP_TUPLE_INSERT_D</b>
macro inserts an element into a <i>tuple</i>.&nbsp; It reenters <b>BOOST_PP_WHILE</b>
with maximum efficiency.</div>
<h4>Usage</h4>
<div class="code"> <b>BOOST_PP_TUPLE_INSERT_D</b>(<i>d</i>, <i>tuple</i>,
<i>i</i>, <i>elem</i>) <a href="../topics/variadic_macros.html#VNotation"><sup>(v)</sup></a></div>
<i>i</i>, <i>elem</i>)</div>
<h4>Arguments</h4>
<dl>
<dt>d</dt>
@ -18,16 +20,16 @@
<dt>tuple</dt>
<dd> The <i>tuple</i> into which an element is to be inserted.</dd>
<dt>i</dt>
<dd> The zero-based position in <i>tuple</i> where an element is to be
inserted.&nbsp; Valid values range from <i>0</i> to <b>BOOST_PP_TUPLE_SIZE</b>(<i>tuple</i>).</dd>
<dd> The zero-based position in <i>tuple</i> where an element is
to be inserted.&nbsp; Valid values range from <i>0</i> to <b>BOOST_PP_TUPLE_SIZE</b>(<i>tuple</i>).</dd>
<dt>elem</dt>
<dd> The element to insert. </dd>
</dl>
<h4>Remarks</h4>
<div> This macro inserts <i>elem</i> before the element at index <i>i</i>.
</div>
<div> If the operation attempts to create an <i>tuple</i> that is larger
than <b>BOOST_PP_LIMIT_TUPLE</b>, the result is undefined.</div>
<div> If the operation attempts to create an <i>tuple</i> that is
larger than <b>BOOST_PP_LIMIT_TUPLE</b>, the result is undefined.</div>
<h4>See Also</h4>
<ul>
<li><a href="tuple_insert.html">BOOST_PP_TUPLE_INSERT</a></li>
@ -36,11 +38,13 @@
<div> <b>Header:</b> &nbsp;<a href="../headers/tuple/insert.html">&lt;boost/preprocessor/tuple/insert.hpp&gt;</a>
</div>
<hr size="1">
<div style="margin-left: 0px;"> <i><EFBFBD> Copyright Edward Diener 2013</i> </div>
<div style="margin-left: 0px;"> <i><EFBFBD> Copyright Edward Diener 2013</i>
</div>
<div style="margin-left: 0px;">
<p><small>Distributed under the Boost Software License, Version 1.0. (See
accompanying file <a href="../../../../LICENSE_1_0.txt">LICENSE_1_0.txt</a>
or copy at <a href="http://www.boost.org/LICENSE_1_0.txt">www.boost.org/LICENSE_1_0.txt</a>)</small></p>
<p><small>Distributed under the Boost Software License, Version
1.0. (See accompanying file <a
href="../../../../LICENSE_1_0.txt">LICENSE_1_0.txt</a> or
copy at <a href="http://www.boost.org/LICENSE_1_0.txt">www.boost.org/LICENSE_1_0.txt</a>)</small></p>
</div>
</body>
</html>

View File

@ -1,60 +1,69 @@
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<meta http-equiv="content-type" content="text/html; charset=windows-1252">
<title>BOOST_PP_TUPLE_REM</title>
<link rel="stylesheet" type="text/css" href="../styles.css">
<link rel="stylesheet" type="text/css" href="../styles.css">
</head>
<body>
<div style="margin-left: 0px;">
The <b>BOOST_PP_TUPLE_REM</b> macro expands to a macro that removes the parentheses from a <i>tuple</i>.
</div>
<h4>Usage</h4>
<div class="code">
<b>BOOST_PP_TUPLE_REM</b>(<i>size</i>)<br>
<br>
or<br>
<br>
<b>BOOST_PP_TUPLE_REM</b>(<i>size</i>) <a href="../topics/variadic_macros.html#VNotation" target="_self"><sup>(v)</sup></a><br>
</div>
<h4>Arguments</h4>
<dl>
<dt>size</dt>
<dd>
The size of the <i>tuple</i> from which the parentheses are to be removed.&nbsp;
Valid <i>tuple</i> sizes range from <i>1</i> to <b>BOOST_PP_LIMIT_TUPLE</b>.&nbsp;
</dd>
</dl>
<h4>Remarks</h4>
<div>
The <i>size</i> argument must be the actual size of the <i>tuple</i> in the non-variadic version.<br>
<br>
For the variadic version <a href="../topics/variadic_macros.html#VNotation" target="_self"><sup>(v)</sup></a>&nbsp;the
size may be left out
completely so that the macro can be invoked as BOOST_PP_TUPLE_REM(); you may get a warning from some compilers, but the
functionality will still work. If you specify a size in the variadic
version, it will be ignored, but the warning from some compilers will
not occur.<br>
<br>Note: For Visual C++ 8.0 ( Visual Studio 2005 ) you must specify the correct <i>size</i> argument as in the non-variadic version.<br>
</div>
<h4>See Also</h4>
<ul>
<li><a href="limit_tuple.html">BOOST_PP_LIMIT_TUPLE</a></li>
</ul>
<h4>Requirements</h4>
<div>
<b>Header:</b> &nbsp;<a href="../headers/tuple/rem.html">&lt;boost/preprocessor/tuple/rem.hpp&gt;</a>
</div>
<h4>Sample Code</h4>
<div><pre>#include &lt;<a href="../headers/tuple/elem.html">boost/preprocessor/tuple/rem.hpp</a>&gt;<br><br><a href="tuple_rem.html">BOOST_PP_TUPLE_REM</a>(3)(x, y, z) // expands to x, y, z<br><br>// or for the variadic version <a href="../topics/variadic_macros.html#VNotation" target="_self"><sup>(v)</sup></a><br><br><a href="tuple_rem.html">BOOST_PP_TUPLE_REM</a>()(x, y, z) // expands to x, y, z<br></pre></div>
<hr size="1">
<div style="margin-left: 0px;">
<i><EFBFBD> Copyright <a href="http://www.housemarque.com" target="_top">Housemarque Oy</a> 2002</i>
<br><i><EFBFBD> Copyright Paul Mensonides 2002<br>
</i><i><EFBFBD> Copyright Edward Diener 2011,2013</i><br>
</div>
<div style="margin-left: 0px;">
<p><small>Distributed under the Boost Software License, Version 1.0. (See
accompanying file <a href="../../../../LICENSE_1_0.txt">LICENSE_1_0.txt</a> or
copy at <a href="http://www.boost.org/LICENSE_1_0.txt">www.boost.org/LICENSE_1_0.txt</a>)</small></p>
</div>
<div style="margin-left: 0px;"> The <b>BOOST_PP_TUPLE_REM</b> macro
expands to a macro that removes the parentheses from a <i>tuple</i>.
</div>
<h4>Usage</h4>
<div class="code"> <b>BOOST_PP_TUPLE_REM</b>() <a
href="file:///E:/Programming/VersionControl/modular-boost/libs/preprocessor/doc/topics/variadic_macros.html#VNotation"
target="_self"><sup>(v)</sup></a><br>
<br>
or<br>
<br>
<b>BOOST_PP_TUPLE_REM</b>(<i>size</i>) <a
href="../topics/variadic_macros.html#VNotation" target="_self"><sup>(v)</sup></a><br>
</div>
<h4>Arguments</h4>
<dl>
<dt>size</dt>
<dd> The size of the <i>tuple</i> from which the parentheses are
to be removed.&nbsp; This argument is ignored.<br>
</dd>
</dl>
<h4>Remarks</h4>
<div>The
size may be left out
completely so that the macro can be invoked as
BOOST_PP_TUPLE_REM(); you may get a warning from some compilers,
but the
functionality will still work. If you specify a size, it will be
ignored, but the warning from some compilers will
not occur.<br>
<br>
Note: For Visual C++ 8.0 ( Visual Studio 2005 ) you must specify
the correct <i>size</i> argument as a non-variadic version must
be used.<br>
</div>
<h4>See Also</h4>
<ul>
<li><a href="limit_tuple.html">BOOST_PP_LIMIT_TUPLE</a></li>
</ul>
<h4>Requirements</h4>
<div> <b>Header:</b> &nbsp;<a href="../headers/tuple/rem.html">&lt;boost/preprocessor/tuple/rem.hpp&gt;</a>
</div>
<h4>Sample Code</h4>
<div>
<pre>#include &lt;<a href="../headers/tuple/elem.html">boost/preprocessor/tuple/rem.hpp</a>&gt;<br><br><a href="tuple_rem.html">BOOST_PP_TUPLE_REM</a>()(x, y, z) // expands to x, y, z<br></pre>
</div>
<hr size="1">
<div style="margin-left: 0px;"> <i><EFBFBD> Copyright <a
href="http://www.housemarque.com" target="_top">Housemarque Oy</a>
2002</i> <br>
<i><EFBFBD> Copyright Paul Mensonides 2002<br>
</i><i><EFBFBD> Copyright Edward Diener 2011,2013,2020</i><br>
</div>
<div style="margin-left: 0px;">
<p><small>Distributed under the Boost Software License, Version
1.0. (See accompanying file <a
href="../../../../LICENSE_1_0.txt">LICENSE_1_0.txt</a> or
copy at <a href="http://www.boost.org/LICENSE_1_0.txt">www.boost.org/LICENSE_1_0.txt</a>)</small></p>
</div>
</body>
</html>
</html>

View File

@ -1,61 +1,64 @@
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<meta http-equiv="content-type" content="text/html; charset=windows-1252">
<title>BOOST_PP_TUPLE_REM_CTOR</title>
<link rel="stylesheet" type="text/css" href="../styles.css">
<link rel="stylesheet" type="text/css" href="../styles.css">
</head>
<body>
<div style="margin-left: 0px;">
The <b>BOOST_PP_TUPLE_REM_CTOR</b> macro removes the parentheses from a <i>tuple</i>.
</div>
<h4>Usage</h4>
<div class="code">
<b>BOOST_PP_TUPLE_REM_CTOR</b>(<i>size</i>, <i>tuple</i>)<br>
<br>
or<br>
<br>
<b>BOOST_PP_TUPLE_REM_CTOR</b>(<i>...</i>) <a href="../topics/variadic_macros.html#VNotation" target="_self"><sup>(v)</sup></a><br>
</div>
<h4>Arguments</h4>
<dl>
<dt>size</dt>
<dd>
The size of the <i>tuple</i> from which the parentheses are to be removed.&nbsp;
Valid <i>tuple</i> sizes range from <i>1</i> to <b>BOOST_PP_LIMIT_TUPLE</b>.&nbsp;
</dd>
<dt>tuple</dt>
<dd>
The <i>tuple</i> from which the parenthesis are removed.
</dd>
</dl>
<h4>Remarks</h4>
<div>
The <i>size</i> argument must be the actual size of <i>tuple</i>.<br>
<br>
You can
invoke the variadic version <a href="../topics/variadic_macros.html#VNotation" target="_self"><sup>(v)</sup></a> as BOOST_PP_TUPLE_REM_CTOR(<i>tuple</i>) or
BOOST_PP_TUPLE_REM_CTOR(<i>size</i>,<i>tuple</i>).<br>
</div>
<h4>See Also</h4>
<ul>
<li><a href="limit_tuple.html">BOOST_PP_LIMIT_TUPLE</a></li>
</ul>
<h4>Requirements</h4>
<div>
<b>Header:</b> &nbsp;<a href="../headers/tuple/rem.html">&lt;boost/preprocessor/tuple/rem.hpp&gt;</a>
</div>
<h4>Sample Code</h4>
<div><pre>#include &lt;<a href="../headers/tuple/elem.html">boost/preprocessor/tuple/rem.hpp</a>&gt;<br><br><a href="tuple_rem_ctor.html">BOOST_PP_TUPLE_REM_CTOR</a>(3, (x, y, z)) // expands to x, y, z<br><br>// or for the variadic version <a href="../topics/variadic_macros.html#VNotation" target="_self"><sup>(v)</sup></a><br><br><a href="tuple_rem_ctor.html">BOOST_PP_TUPLE_REM_CTOR</a>((x, y, z)) // expands to x, y, z<br></pre></div>
<hr size="1">
<div style="margin-left: 0px;">
<i><EFBFBD> Copyright <a href="http://www.housemarque.com" target="_top">Housemarque Oy</a> 2002</i>
<br><i><EFBFBD> Copyright Paul Mensonides 2002<br>
</i><i><EFBFBD> Copyright Edward Diener 2011,2013</i><br>
</div>
<div style="margin-left: 0px;">
<p><small>Distributed under the Boost Software License, Version 1.0. (See
accompanying file <a href="../../../../LICENSE_1_0.txt">LICENSE_1_0.txt</a> or
copy at <a href="http://www.boost.org/LICENSE_1_0.txt">www.boost.org/LICENSE_1_0.txt</a>)</small></p>
</div>
<div style="margin-left: 0px;"> The <b>BOOST_PP_TUPLE_REM_CTOR</b>
macro removes the parentheses from a <i>tuple</i>. </div>
<h4>Usage</h4>
<div class="code"> <b>BOOST_PP_TUPLE_REM_CTOR</b>(<i>tuple</i>) <a
href="file:///E:/Programming/VersionControl/modular-boost/libs/preprocessor/doc/topics/variadic_macros.html#VNotation"
target="_self"><sup>(v)</sup></a><br>
<br>
or<br>
<br>
<b>BOOST_PP_TUPLE_REM_CTOR</b>(<i>size</i>, <i>tuple</i>) <a
href="../topics/variadic_macros.html#VNotation" target="_self"><sup>(v)</sup></a><br>
</div>
<h4>Arguments</h4>
<dl>
<dt>size</dt>
<dd> The size of the <i>tuple</i> from which the parentheses are
to be removed.&nbsp;&nbsp;This argument is ignored.<br>
</dd>
<dt>tuple</dt>
<dd> The <i>tuple</i> from which the parenthesis are removed. </dd>
</dl>
<h4>Remarks</h4>
<div>You can
invoke the variadic macro <a
href="../topics/variadic_macros.html#VNotation" target="_self"><sup>(v)</sup></a>
as BOOST_PP_TUPLE_REM_CTOR(<i>tuple</i>) or
BOOST_PP_TUPLE_REM_CTOR(<i>size</i>,<i>tuple</i>) for backward
compatibility.<br>
</div>
<h4>See Also</h4>
<ul>
<li><a href="limit_tuple.html">BOOST_PP_LIMIT_TUPLE</a></li>
</ul>
<h4>Requirements</h4>
<div> <b>Header:</b> &nbsp;<a href="../headers/tuple/rem.html">&lt;boost/preprocessor/tuple/rem.hpp&gt;</a>
</div>
<h4>Sample Code</h4>
<div>
<pre>#include &lt;<a href="../headers/tuple/elem.html">boost/preprocessor/tuple/rem.hpp</a>&gt;<br><br><a href="tuple_rem_ctor.html">BOOST_PP_TUPLE_REM_CTOR</a>((x, y, z)) // expands to x, y, z<br></pre>
</div>
<hr size="1">
<div style="margin-left: 0px;"> <i><EFBFBD> Copyright <a
href="http://www.housemarque.com" target="_top">Housemarque Oy</a>
2002</i> <br>
<i><EFBFBD> Copyright Paul Mensonides 2002<br>
</i><i><EFBFBD> Copyright Edward Diener 2011,2013,2020</i><br>
</div>
<div style="margin-left: 0px;">
<p><small>Distributed under the Boost Software License, Version
1.0. (See accompanying file <a
href="../../../../LICENSE_1_0.txt">LICENSE_1_0.txt</a> or
copy at <a href="http://www.boost.org/LICENSE_1_0.txt">www.boost.org/LICENSE_1_0.txt</a>)</small></p>
</div>
</body>
</html>
</html>

View File

@ -1,61 +1,63 @@
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<meta http-equiv="content-type" content="text/html; charset=windows-1252">
<title>BOOST_PP_TUPLE_REVERSE</title>
<link rel="stylesheet" type="text/css" href="../styles.css">
<link rel="stylesheet" type="text/css" href="../styles.css">
</head>
<body>
<div style="margin-left: 0px;">
The <b>BOOST_PP_TUPLE_REVERSE</b> macro reverses a <i>tuple</i>.
</div>
<h4>Usage</h4>
<div class="code">
<b>BOOST_PP_TUPLE_REVERSE</b>(<i>size</i>, <i>tuple</i>)<br>
<br>
or<br>
<br>
<b>BOOST_PP_TUPLE_REVERSE</b>(<i>...</i>) <a href="../topics/variadic_macros.html#VNotation" target="_self"><sup>(v)</sup></a><br>
</div>
<h4>Arguments</h4>
<dl>
<dt>size</dt>
<dd>
The size of the <i>tuple</i> to be reversed.&nbsp;
Valid <i>tuple</i> sizes range from <i>1</i> to <b>BOOST_PP_LIMIT_TUPLE</b>.&nbsp;
</dd>
<dt>tuple</dt>
<dd>
The <i>tuple</i> to be reversed.
</dd>
</dl>
<h4>Remarks</h4>
<div>
The <i>size</i> argument must be the actual size of the <i>tuple</i>.<br>
<br>
You can
invoke the variadic version <a href="../topics/variadic_macros.html#VNotation" target="_self"><sup>(v)</sup></a> as BOOST_PP_TUPLE_REVERSE(<i>tuple</i>) or
BOOST_PP_TUPLE_REVERSE(<i>size</i>,<i>tuple</i>).<br>
</div>
<h4>See Also</h4>
<ul>
<li><a href="limit_tuple.html">BOOST_PP_LIMIT_TUPLE</a></li>
</ul>
<h4>Requirements</h4>
<div>
<b>Header:</b> &nbsp;<a href="../headers/tuple/reverse.html">&lt;boost/preprocessor/tuple/reverse.hpp&gt;</a>
</div>
<h4>Sample Code</h4>
<div><pre>#include &lt;<a href="../headers/tuple/reverse.html">boost/preprocessor/tuple/reverse.hpp</a>&gt;<br><br><a href="tuple_reverse.html">BOOST_PP_TUPLE_REVERSE</a>(3, (x, y, z)) // expands to (z, y, x)<br><br>// or for the variadic version <a href="../topics/variadic_macros.html#VNotation" target="_self"><sup>(v)</sup></a><br><br><a href="tuple_reverse.html">BOOST_PP_TUPLE_REVERSE</a>((x, y, z)) // expands to (z, y, x)<br></pre></div>
<hr size="1">
<div style="margin-left: 0px;">
<i><EFBFBD> Copyright <a href="http://www.housemarque.com" target="_top">Housemarque Oy</a> 2002</i>
<br><i><EFBFBD> Copyright Paul Mensonides 2002<br>
</i><i><EFBFBD> Copyright Edward Diener 2011,2013</i><br>
</div>
<div style="margin-left: 0px;">
<p><small>Distributed under the Boost Software License, Version 1.0. (See
accompanying file <a href="../../../../LICENSE_1_0.txt">LICENSE_1_0.txt</a> or
copy at <a href="http://www.boost.org/LICENSE_1_0.txt">www.boost.org/LICENSE_1_0.txt</a>)</small></p>
</div>
<div style="margin-left: 0px;"> The <b>BOOST_PP_TUPLE_REVERSE</b>
macro reverses a <i>tuple</i>. </div>
<h4>Usage</h4>
<div class="code"> <b>BOOST_PP_TUPLE_REVERSE</b>(<i>tuple</i>) <a
href="file:///E:/Programming/VersionControl/modular-boost/libs/preprocessor/doc/topics/variadic_macros.html#VNotation"
target="_self"><sup>(v)</sup></a><br>
<br>
or<br>
<br>
<b>BOOST_PP_TUPLE_REVERSE</b>(<i>size</i>, <i>tuple</i>) <a
href="../topics/variadic_macros.html#VNotation" target="_self"><sup>(v)</sup></a><br>
</div>
<h4>Arguments</h4>
<dl>
<dt>size</dt>
<dd> The size of the <i>tuple</i> to be reversed.&nbsp; The
argument is ignored.<br>
</dd>
<dd> The <i>tuple</i> to be reversed. </dd>
</dl>
<h4>Remarks</h4>
<div>You can
invoke the variadic macro <a
href="../topics/variadic_macros.html#VNotation" target="_self"><sup>(v)</sup></a>
as BOOST_PP_TUPLE_REVERSE(<i>tuple</i>) or
BOOST_PP_TUPLE_REVERSE(<i>size</i>,<i>tuple</i>) for backward
compatibility.<br>
</div>
<h4>See Also</h4>
<ul>
<li><a href="limit_tuple.html">BOOST_PP_LIMIT_TUPLE</a></li>
</ul>
<h4>Requirements</h4>
<div> <b>Header:</b> &nbsp;<a href="../headers/tuple/reverse.html">&lt;boost/preprocessor/tuple/reverse.hpp&gt;</a>
</div>
<h4>Sample Code</h4>
<div>
<pre>#include &lt;<a href="../headers/tuple/reverse.html">boost/preprocessor/tuple/reverse.hpp</a>&gt;<br><br><a href="tuple_reverse.html">BOOST_PP_TUPLE_REVERSE</a>((x, y, z)) // expands to (z, y, x)<br></pre>
</div>
<hr size="1">
<div style="margin-left: 0px;"> <i><EFBFBD> Copyright <a
href="http://www.housemarque.com" target="_top">Housemarque Oy</a>
2002</i> <br>
<i><EFBFBD> Copyright Paul Mensonides 2002<br>
</i><i><EFBFBD> Copyright Edward Diener 2011,2013,2020</i><br>
</div>
<div style="margin-left: 0px;">
<p><small>Distributed under the Boost Software License, Version
1.0. (See accompanying file <a
href="../../../../LICENSE_1_0.txt">LICENSE_1_0.txt</a> or
copy at <a href="http://www.boost.org/LICENSE_1_0.txt">www.boost.org/LICENSE_1_0.txt</a>)</small></p>
</div>
</body>
</html>
</html>

View File

@ -1,50 +1,57 @@
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<title>BOOST_PP_TUPLE_TO_ARRAY</title>
<link rel="stylesheet" type="text/css" href="../styles.css">
<meta http-equiv="content-type" content="text/html; charset=windows-1252">
<title>BOOST_PP_TUPLE_TO_ARRAY</title>
<link rel="stylesheet" type="text/css" href="../styles.css">
</head>
<body>
<div style="margin-left: 0px;"> The <b>BOOST_PP_TUPLE_TO_ARRAY</b>
macro
converts a <i>tuple</i> to an <i>array</i>. </div>
<h4> Usage </h4>
<div class="code"> <b>BOOST_PP_TUPLE_TO_ARRAY</b>(<i>size,tuple</i>)<br>
<br>
or<br>
<br>
<b>BOOST_PP_TUPLE_TO_ARRAY</b>(<i>...</i>) <a href="../topics/variadic_macros.html#VNotation" target="_self"><sup>(v)</sup></a><br>
</div>
<h4> Arguments </h4>
<dl>
<dt>size</dt>
<dd> The size of the <i>tuple</i>.&nbsp; Valid <i>tuple</i> sizes
range from <i>1</i> to <b>BOOST_PP_LIMIT_TUPLE</b>. <br>
</dd>
<dt>tuple</dt>
<dd> The <i>tuple</i> to be converted.</dd>
</dl>
<h4>Remarks</h4>
<div>
The <i>size</i> argument must be the actual size of the <i>tuple</i>.<br>
<br>
You can
invoke the variadic version <a href="../topics/variadic_macros.html#VNotation" target="_self"><sup>(v)</sup></a> as BOOST_PP_TUPLE_TO_ARRAY(<i>tuple</i>) or
BOOST_PP_TUPLE_TO_ARRAY(<i>size</i>,<i>tuple</i>).<a href="../headers/seq/to_array.html"></a>
</div>
<h4> Requirements </h4>
<div> <b>Header:</b> &nbsp;<a href="../headers/tuple/to_array.html">&lt;boost/preprocessor/tuple/to_array.hpp&gt;</a>
</div>
<h4> Sample Code </h4>
<div>
<pre>#include &lt;<a href="../headers/tuple/to_array.html">boost/preprocessor/tuple/to_array.hpp</a>&gt;<br><br>#define TUPLE (a,b,c)<br><br><a href="tuple_to_array.html">BOOST_PP_TUPLE_TO_ARRAY</a>(3,TUPLE) // expands to (3, (a, b, c))<br><br>// or for the variadic version <a href="../topics/variadic_macros.html#VNotation" target="_self"><sup>(v)</sup></a><br><br><a href="tuple_to_array.html">BOOST_PP_TUPLE_TO_ARRAY</a>(TUPLE) // expands to (3, (a, b, c))<br></pre>
</div>
<hr size="1">
<div style="margin-left: 0px;"> <i><EFBFBD> Copyright Edward Diener 2011,2013</i>
</div>
<div style="margin-left: 0px;">
<p><small>Distributed under the Boost Software License, Version 1.0.
(See accompanying file <a href="../../../../LICENSE_1_0.txt">LICENSE_1_0.txt</a>
or copy at <a href="http://www.boost.org/LICENSE_1_0.txt">www.boost.org/LICENSE_1_0.txt</a>)</small></p>
</div>
<div style="margin-left: 0px;"> The <b>BOOST_PP_TUPLE_TO_ARRAY</b>
macro
converts a <i>tuple</i> to an <i>array</i>. </div>
<h4> Usage </h4>
<div class="code"> <b>BOOST_PP_TUPLE_TO_ARRAY</b>(<i>tuple</i>) <a
href="file:///E:/Programming/VersionControl/modular-boost/libs/preprocessor/doc/topics/variadic_macros.html#VNotation"
target="_self"><sup>(v)</sup></a><br>
<br>
or<br>
<br>
<b>BOOST_PP_TUPLE_TO_ARRAY</b>(<i>size,tuple</i>) <a
href="../topics/variadic_macros.html#VNotation" target="_self"><sup>(v)</sup></a><br>
</div>
<h4> Arguments </h4>
<dl>
<dt>size</dt>
<dd> The size of the <i>tuple</i>.&nbsp; The argument is ignored.<br>
</dd>
<dt>tuple</dt>
<dd> The <i>tuple</i> to be converted.</dd>
</dl>
<h4>Remarks</h4>
<div>You can
invoke the variadic macro <a
href="../topics/variadic_macros.html#VNotation" target="_self"><sup>(v)</sup></a>
as BOOST_PP_TUPLE_TO_ARRAY(<i>tuple</i>) or
BOOST_PP_TUPLE_TO_ARRAY(<i>size</i>,<i>tuple</i>) for backward
compatibility.
</div>
<h4> Requirements </h4>
<div> <b>Header:</b> &nbsp;<a href="../headers/tuple/to_array.html">&lt;boost/preprocessor/tuple/to_array.hpp&gt;</a>
</div>
<h4> Sample Code </h4>
<div>
<pre>#include &lt;<a href="../headers/tuple/to_array.html">boost/preprocessor/tuple/to_array.hpp</a>&gt;<br><br>#define TUPLE (a,b,c)<br><br><a href="tuple_to_array.html">BOOST_PP_TUPLE_TO_ARRAY</a>(TUPLE) // expands to (3, (a, b, c))<br></pre>
</div>
<hr size="1">
<div style="margin-left: 0px;"> <i><EFBFBD> Copyright Edward Diener
2011,2013,2020</i>
</div>
<div style="margin-left: 0px;">
<p><small>Distributed under the Boost Software License, Version
1.0.
(See accompanying file <a href="../../../../LICENSE_1_0.txt">LICENSE_1_0.txt</a>
or copy at <a href="http://www.boost.org/LICENSE_1_0.txt">www.boost.org/LICENSE_1_0.txt</a>)</small></p>
</div>
</body>
</html>
</html>

View File

@ -1,60 +1,64 @@
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<meta http-equiv="content-type" content="text/html; charset=windows-1252">
<title>BOOST_PP_TUPLE_TO_LIST</title>
<link rel="stylesheet" type="text/css" href="../styles.css">
<link rel="stylesheet" type="text/css" href="../styles.css">
</head>
<body>
<div style="margin-left: 0px;">
The <b>BOOST_PP_TUPLE_TO_LIST</b> macro converts a <i>tuple</i> to a <i>list</i>.
</div>
<h4>Usage</h4>
<div class="code">
<b>BOOST_PP_TUPLE_TO_LIST</b>(<i>size</i>, <i>tuple</i>)<br>
<br>
or<br>
<br>
<b>BOOST_PP_TUPLE_TO_LIST</b>(<i>...</i>) <a href="../topics/variadic_macros.html#VNotation" target="_self"><sup>(v)</sup></a><br>
</div>
<h4>Arguments</h4>
<dl>
<dt>size</dt>
<dd>
The size of the <i>tuple</i> to be converted.&nbsp;
Valid <i>tuple</i> sizes range from <i>1</i> to <b>BOOST_PP_LIMIT_TUPLE</b>.&nbsp;
</dd>
<dt>tuple</dt>
<dd>
The <i>tuple</i> to be converted.
</dd>
</dl>
<h4>Remarks</h4>
<div>
The <i>size</i> argument must be the actual size of the <i>tuple</i>.<br>
<br>
You can
invoke the variadic version <a href="../topics/variadic_macros.html#VNotation" target="_self"><sup>(v)</sup></a> as BOOST_PP_TUPLE_TO_LIST(<i>tuple</i>) or
BOOST_PP_TUPLE_TO_LIST(<i>size</i>,<i>tuple</i>).<br>
</div>
<h4>See Also</h4>
<ul>
<li><a href="limit_tuple.html">BOOST_PP_LIMIT_TUPLE</a></li>
</ul>
<h4>Requirements</h4>
<div>
<b>Header:</b> &nbsp;<a href="../headers/tuple/to_list.html">&lt;boost/preprocessor/tuple/to_list.hpp&gt;</a>
</div>
<h4>Sample Code</h4>
<div><pre>#include &lt;<a href="../headers/tuple/to_list.html">boost/preprocessor/tuple/to_list.hpp</a>&gt;<br><br><a href="tuple_to_list.html">BOOST_PP_TUPLE_TO_LIST</a>(3, (x, y, z))<br> // expands to (x, (y, (z, <a href="nil.html">BOOST_PP_NIL</a>)))<br><br>// or for the variadic version <a href="../topics/variadic_macros.html#VNotation" target="_self"><sup>(v)</sup></a><br><br><a href="tuple_to_list.html">BOOST_PP_TUPLE_TO_LIST</a>((x, y, z))<br> // expands to (x, (y, (z, <a href="nil.html">BOOST_PP_NIL</a>)))<br></pre></div>
<hr size="1">
<div style="margin-left: 0px;">
<i><EFBFBD> Copyright <a href="http://www.housemarque.com" target="_top">Housemarque Oy</a> 2002</i>
<br><i><EFBFBD> Copyright Paul Mensonides 2002<br>
</i><i><EFBFBD> Copyright Edward Diener 2011,2013</i><br>
</div>
<div style="margin-left: 0px;">
<p><small>Distributed under the Boost Software License, Version 1.0. (See
accompanying file <a href="../../../../LICENSE_1_0.txt">LICENSE_1_0.txt</a> or
copy at <a href="http://www.boost.org/LICENSE_1_0.txt">www.boost.org/LICENSE_1_0.txt</a>)</small></p>
</div>
<div style="margin-left: 0px;"> The <b>BOOST_PP_TUPLE_TO_LIST</b>
macro converts a <i>tuple</i> to a <i>list</i>. </div>
<h4>Usage</h4>
<div class="code"> <b>BOOST_PP_TUPLE_TO_LIST</b>(<i>tuple</i>) <a
href="file:///E:/Programming/VersionControl/modular-boost/libs/preprocessor/doc/topics/variadic_macros.html#VNotation"
target="_self"><sup>(v)</sup></a><br>
<br>
or<br>
<br>
<b>BOOST_PP_TUPLE_TO_LIST</b>(<i>size</i>, <i>tuple</i>) <a
href="../topics/variadic_macros.html#VNotation" target="_self"><sup>(v)</sup></a><br>
</div>
<h4>Arguments</h4>
<dl>
<dt>size</dt>
<dd> The size of the <i>tuple</i> to be converted.&nbsp; The
argument is ignored.<br>
</dd>
<dt>tuple</dt>
<dd> The <i>tuple</i> to be converted. </dd>
</dl>
<h4>Remarks</h4>
<div>You can
invoke the variadic maco <a
href="../topics/variadic_macros.html#VNotation" target="_self"><sup>(v)</sup></a>
as BOOST_PP_TUPLE_TO_LIST(<i>tuple</i>) or
BOOST_PP_TUPLE_TO_LIST(<i>size</i>,<i>tuple</i>) for backward
compatibility.<br>
</div>
<h4>See Also</h4>
<ul>
<li><a href="limit_tuple.html">BOOST_PP_LIMIT_TUPLE</a></li>
</ul>
<h4>Requirements</h4>
<div> <b>Header:</b> &nbsp;<a href="../headers/tuple/to_list.html">&lt;boost/preprocessor/tuple/to_list.hpp&gt;</a>
</div>
<h4>Sample Code</h4>
<div>
<pre>#include &lt;<a href="../headers/tuple/to_list.html">boost/preprocessor/tuple/to_list.hpp</a>&gt;<br><br><a href="tuple_to_list.html">BOOST_PP_TUPLE_TO_LIST</a>((x, y, z))<br> // expands to (x, (y, (z, <a href="nil.html">BOOST_PP_NIL</a>)))<br></pre>
</div>
<hr size="1">
<div style="margin-left: 0px;"> <i><EFBFBD> Copyright <a
href="http://www.housemarque.com" target="_top">Housemarque Oy</a>
2002</i> <br>
<i><EFBFBD> Copyright Paul Mensonides 2002<br>
</i><i><EFBFBD> Copyright Edward Diener 2011,2013,2020</i><br>
</div>
<div style="margin-left: 0px;">
<p><small>Distributed under the Boost Software License, Version
1.0. (See accompanying file <a
href="../../../../LICENSE_1_0.txt">LICENSE_1_0.txt</a> or
copy at <a href="http://www.boost.org/LICENSE_1_0.txt">www.boost.org/LICENSE_1_0.txt</a>)</small></p>
</div>
</body>
</html>
</html>

View File

@ -1,51 +1,61 @@
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<meta http-equiv="content-type" content="text/html; charset=windows-1252">
<title>BOOST_PP_TUPLE_TO_SEQ</title>
<link rel="stylesheet" type="text/css" href="../styles.css">
</head>
<body>
<div style="margin-left: 0px;"> The <b>BOOST_PP_TUPLE_TO_SEQ</b> macro
converts a <i>tuple</i> to an <i>seq</i>. </div>
<h4> Usage </h4>
<div class="code"> <b>BOOST_PP_TUPLE_TO_SEQ</b>(<i>size</i>, <i>tuple</i>)<br>
<br>
or<br>
<br>
<b>BOOST_PP_TUPLE_TO_SEQ</b>(<i>...</i>) <a href="../topics/variadic_macros.html#VNotation" target="_self"><sup>(v)</sup></a><br>
</div>
<h4> Arguments </h4>
<dl>
<dt>size</dt>
<dd>
The size of the <i>tuple</i> to be converted.&nbsp;
Valid <i>tuple</i> sizes range from <i>1</i> to <b>BOOST_PP_LIMIT_TUPLE</b>.&nbsp; </dd>
<dt>tuple</dt>
<dd> The <i>tuple</i> to be converted. </dd>
</dl>
<h4>Remarks</h4>
<div> The <i>size</i> argument must be the actual size of the <i>tuple</i>.<br>
<br>
You can
invoke the variadic version <a href="../topics/variadic_macros.html#VNotation" target="_self"><sup>(v)</sup></a> as BOOST_PP_TUPLE_TO_SEQ(<i>tuple</i>) or
BOOST_PP_TUPLE_TO_SEQ(<i>size</i>,<i>tuple</i>).<a href="../headers/tuple/to_seq.html"></a>
</div>
<h4>Requirements </h4>
<div> <b>Header:</b> &nbsp;<a href="../headers/tuple/to_seq.html">&lt;boost/preprocessor/tuple/to_seq.hpp&gt;</a>
</div>
<h4> Sample Code </h4>
<div>
<pre>#include &lt;<a href="../headers/tuple/to_seq.html">boost/preprocessor/tuple/to_seq.hpp</a>&gt;<br><br><a href="tuple_to_seq.html">BOOST_PP_TUPLE_TO_SEQ</a>(3, (a, b, c)) // expands to (a)(b)(c)<br><br>// or for the variadic version <a href="../topics/variadic_macros.html#VNotation" target="_self"><sup>(v)</sup></a><br><br><a href="tuple_to_seq.html">BOOST_PP_TUPLE_TO_SEQ</a>((a, b, c)) // expands to (a)(b)(c)<br></pre>
</div>
<hr size="1">
<div style="margin-left: 0px;"> <i><EFBFBD> Copyright <a href="http://www.housemarque.com" target="_top">Housemarque Oy</a> 2002</i>
<br>
<i><EFBFBD> Copyright Paul Mensonides 2002<br>
</i><i><EFBFBD> Copyright Edward Diener 2011,2013</i><br>
</div>
<div style="margin-left: 0px;">
<p><small>Distributed under the Boost Software License, Version 1.0.
(See accompanying file <a href="../../../../LICENSE_1_0.txt">LICENSE_1_0.txt</a>
or copy at <a href="http://www.boost.org/LICENSE_1_0.txt">www.boost.org/LICENSE_1_0.txt</a>)</small></p>
</div>
<div style="margin-left: 0px;"> The <b>BOOST_PP_TUPLE_TO_SEQ</b>
macro
converts a <i>tuple</i> to an <i>seq</i>. </div>
<h4> Usage </h4>
<div class="code"> <b>BOOST_PP_TUPLE_TO_SEQ</b>(<i>tuple</i>) <a
href="file:///E:/Programming/VersionControl/modular-boost/libs/preprocessor/doc/topics/variadic_macros.html#VNotation"
target="_self"><sup>(v)</sup></a><br>
<br>
or<br>
<br>
<b>BOOST_PP_TUPLE_TO_SEQ</b>(<i>size</i>, <i>tuple</i>) <a
href="../topics/variadic_macros.html#VNotation" target="_self"><sup>(v)</sup></a><br>
</div>
<h4> Arguments </h4>
<dl>
<dt>size</dt>
<dd> The size of the <i>tuple</i> to be converted. The argument
is ignored. &nbsp; </dd>
<dt>tuple</dt>
<dd> The <i>tuple</i> to be converted. </dd>
</dl>
<h4>Remarks</h4>
<div>You can
invoke the variadic macro <a
href="../topics/variadic_macros.html#VNotation" target="_self"><sup>(v)</sup></a>
as BOOST_PP_TUPLE_TO_SEQ(<i>tuple</i>) or
BOOST_PP_TUPLE_TO_SEQ(<i>size</i>,<i>tuple</i>) for backward
compatibility.
</div>
<h4>Requirements </h4>
<div> <b>Header:</b> &nbsp;<a href="../headers/tuple/to_seq.html">&lt;boost/preprocessor/tuple/to_seq.hpp&gt;</a>
</div>
<h4> Sample Code </h4>
<div>
<pre>#include &lt;<a href="../headers/tuple/to_seq.html">boost/preprocessor/tuple/to_seq.hpp</a>&gt;<br><br><a href="tuple_to_seq.html">BOOST_PP_TUPLE_TO_SEQ</a>((a, b, c)) // expands to (a)(b)(c)<br></pre>
</div>
<hr size="1">
<div style="margin-left: 0px;"> <i><EFBFBD> Copyright <a
href="http://www.housemarque.com" target="_top">Housemarque Oy</a>
2002</i>
<br>
<i><EFBFBD> Copyright Paul Mensonides 2002<br>
</i><i><EFBFBD> Copyright Edward Diener 2011,2013,2020</i><br>
</div>
<div style="margin-left: 0px;">
<p><small>Distributed under the Boost Software License, Version
1.0.
(See accompanying file <a href="../../../../LICENSE_1_0.txt">LICENSE_1_0.txt</a>
or copy at <a href="http://www.boost.org/LICENSE_1_0.txt">www.boost.org/LICENSE_1_0.txt</a>)</small></p>
</div>
</body>
</html>
</html>

View File

@ -1,33 +1,46 @@
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<title>BOOST_PP_VARIADIC_SIZE</title>
<link rel="stylesheet" type="text/css" href="../styles.css">
</head>
<body>
<div style="margin-left: 0px;"> The <b>BOOST_PP_VARIADIC_SIZE</b> variadic macro
expands to the size of the <i>variadic data </i>passed to it. </div>
<h4>Usage</h4>
<div class="code"> <b>BOOST_PP_VARIADIC_SIZE</b>(<i>...</i>) <a href="../topics/variadic_macros.html#VNotation" target="_self"><sup>(v)</sup></a><br>
</div>
<h4>Arguments</h4>
<dl>
<dt>...<br>
</dt>
<dd>&nbsp; <i>Variadic data </i>whose size is to be extracted. </dd>
</dl>
<h4>Requirements</h4>
<div> <b>Header:</b> &nbsp;<a href="../headers/variadic/size.html">&lt;boost/preprocessor/variadic/size.hpp&gt;</a>
</div>
<h4>Sample Code</h4>
<div>
<pre>#include &lt;<a href="../headers/variadic/size.html">boost/preprocessor/variadic/size.hpp</a>&gt;<br><br>#define VAR_DATA x, y, z<br><br><a href="variadic_size.html">BOOST_PP_VARIADIC_SIZE</a>(VAR_DATA) // expands to 3<br></pre>
</div>
<hr size="1">
<div style="margin-left: 0px;"> <i></i><i><EFBFBD> Copyright Edward Diener 2011,2013</i> </div>
<div style="margin-left: 0px;">
<p><small>Distributed under the Boost Software License, Version 1.0.
(See accompanying file <a href="../../../../LICENSE_1_0.txt">LICENSE_1_0.txt</a>
or copy at <a href="http://www.boost.org/LICENSE_1_0.txt">www.boost.org/LICENSE_1_0.txt</a>)</small></p>
</div>
</body>
<head>
<meta http-equiv="content-type" content="text/html; charset=windows-1252">
<title>BOOST_PP_VARIADIC_SIZE</title>
<link rel="stylesheet" type="text/css" href="../styles.css">
</head>
<body>
<div style="margin-left: 0px;"> The <b>BOOST_PP_VARIADIC_SIZE</b>
variadic macro
expands to the size of the <i>variadic data </i>passed to it. </div>
<h4>Usage</h4>
<div class="code"> <b>BOOST_PP_VARIADIC_SIZE</b>(<i>...</i>) <a
href="../topics/variadic_macros.html#VNotation" target="_self"><sup>(v)</sup></a><br>
</div>
<h4>Arguments</h4>
<dl>
<dt>...<br>
</dt>
<dd>&nbsp; <i>Variadic data </i>whose size is to be extracted.</dd>
</dl>
<h4>Remarks</h4>
<p>&nbsp;&nbsp;&nbsp; In <a
href="../topics/variadic_macros.html#C20_Support_For_Variadic_Macros">C++
20</a> mode the <i>variadic</i> <i>data</i> can be empty and
the result will be 0.<br>
</p>
<h4>Requirements</h4>
<div> <b>Header:</b> &nbsp;<a href="../headers/variadic/size.html">&lt;boost/preprocessor/variadic/size.hpp&gt;</a>
</div>
<h4>Sample Code</h4>
<div>
<pre>#include &lt;<a href="../headers/variadic/size.html">boost/preprocessor/variadic/size.hpp</a>&gt;<br><br>#define VAR_DATA x, y, z<br><br><a href="variadic_size.html">BOOST_PP_VARIADIC_SIZE</a>(VAR_DATA) // expands to 3<br></pre>
</div>
<hr size="1">
<div style="margin-left: 0px;"> <i></i><i><EFBFBD> Copyright Edward Diener
2011,2013</i> </div>
<div style="margin-left: 0px;">
<p><small>Distributed under the Boost Software License, Version
1.0.
(See accompanying file <a href="../../../../LICENSE_1_0.txt">LICENSE_1_0.txt</a>
or copy at <a href="http://www.boost.org/LICENSE_1_0.txt">www.boost.org/LICENSE_1_0.txt</a>)</small></p>
</div>
</body>
</html>

View File

@ -1,32 +1,45 @@
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<title>BOOST_PP_VARIADIC_TO_ARRAY</title>
<link rel="stylesheet" type="text/css" href="../styles.css">
</head>
<body>
<div style="margin-left: 0px;"> The <b>BOOST_PP_VARIADIC_TO_ARRAY</b> variadic macro
converts <i>variadic data</i> to an <i>array</i>. </div>
<h4> Usage </h4>
<div class="code"> <b>BOOST_PP_VARIADIC_TO_ARRAY</b>(<i>...</i>) <a href="../topics/variadic_macros.html#VNotation" target="_self"><sup>(v)</sup></a><br>
</div>
<h4> Arguments </h4>
<dl>
<dt>...</dt>
<dd> The <i>variadic data</i> to be converted. </dd>
</dl>
<h4> Requirements </h4>
<div> <b>Header:</b> &nbsp;<a href="../headers/variadic/to_array.html">&lt;boost/preprocessor/variadic/to_array.hpp&gt;</a>
</div>
<h4> Sample Code </h4>
<div>
<pre>#include &lt;<a href="../headers/variadic/to_array.html">boost/preprocessor/variadic/to_array.hpp</a>&gt;<br><br>#define VAR_DATA a, b, c<br><br><a href="variadic_to_array.html">BOOST_PP_VARIADIC_TO_ARRAY</a>(VAR_DATA) // expands to (3, (a, b, c))<br></pre>
</div>
<hr size="1">
<div style="margin-left: 0px;"> <i></i><i><EFBFBD> Copyright Edward Diener 2011,2013</i> </div>
<div style="margin-left: 0px;">
<p><small>Distributed under the Boost Software License, Version 1.0.
(See accompanying file <a href="../../../../LICENSE_1_0.txt">LICENSE_1_0.txt</a>
or copy at <a href="http://www.boost.org/LICENSE_1_0.txt">www.boost.org/LICENSE_1_0.txt</a>)</small></p>
</div>
</body>
<head>
<meta http-equiv="content-type" content="text/html; charset=windows-1252">
<title>BOOST_PP_VARIADIC_TO_ARRAY</title>
<link rel="stylesheet" type="text/css" href="../styles.css">
</head>
<body>
<div style="margin-left: 0px;"> The <b>BOOST_PP_VARIADIC_TO_ARRAY</b>
variadic macro
converts <i>variadic data</i> to an <i>array</i>. </div>
<h4> Usage </h4>
<div class="code"> <b>BOOST_PP_VARIADIC_TO_ARRAY</b>(<i>...</i>) <a
href="../topics/variadic_macros.html#VNotation" target="_self"><sup>(v)</sup></a><br>
</div>
<h4> Arguments </h4>
<dl>
<dt>...</dt>
<dd> The <i>variadic data</i> to be converted.</dd>
</dl>
<h4>Remarks</h4>
<p>&nbsp;&nbsp;&nbsp; In <a
href="file:///E:/Programming/VersionControl/modular-boost/libs/preprocessor/doc/topics/variadic_macros.html#C20_Support_For_Variadic_Macros">C++
20</a> mode the <i>variadic</i> <i>data</i> can be empty and
the result will be an empty array of the form '(0,())'.</p>
<h4> Requirements </h4>
<div> <b>Header:</b> &nbsp;<a
href="../headers/variadic/to_array.html">&lt;boost/preprocessor/variadic/to_array.hpp&gt;</a>
</div>
<h4> Sample Code </h4>
<div>
<pre>#include &lt;<a href="../headers/variadic/to_array.html">boost/preprocessor/variadic/to_array.hpp</a>&gt;<br><br>#define VAR_DATA a, b, c<br><br><a href="variadic_to_array.html">BOOST_PP_VARIADIC_TO_ARRAY</a>(VAR_DATA) // expands to (3, (a, b, c))<br></pre>
</div>
<hr size="1">
<div style="margin-left: 0px;"> <i></i><i><EFBFBD> Copyright Edward Diener
2011,2013</i> </div>
<div style="margin-left: 0px;">
<p><small>Distributed under the Boost Software License, Version
1.0.
(See accompanying file <a href="../../../../LICENSE_1_0.txt">LICENSE_1_0.txt</a>
or copy at <a href="http://www.boost.org/LICENSE_1_0.txt">www.boost.org/LICENSE_1_0.txt</a>)</small></p>
</div>
</body>
</html>

View File

@ -1,31 +1,45 @@
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<title>BOOST_PP_VARIADIC_TO_LIST</title>
<link rel="stylesheet" type="text/css" href="../styles.css">
</head>
<body>
<div style="margin-left: 0px;"> The <b>BOOST_PP_VARIADIC_TO_LIST</b>
variadic macro converts <i>variadic data</i> to a <i>list</i>. </div>
<h4>Usage</h4>
<div class="code"> <b>BOOST_PP_VARIADIC_TO_LIST</b>(<i>...</i>) <a href="../topics/variadic_macros.html#VNotation" target="_self"><sup>(v)</sup></a><br>
</div>
<h4>Arguments</h4>
<dl><dt>...</dt>
<dd> The <i>variadic data</i> to be converted.<br>
</dd>
</dl><h4>Requirements</h4>
<div> <b>Header:</b> &nbsp;<a href="../headers/variadic/to_list.html">&lt;boost/preprocessor/variadic/to_list.hpp&gt;</a>
</div>
<h4>Sample Code</h4>
<div>
<pre>#include &lt;<a href="../headers/variadic/to_list.html">boost/preprocessor/variadic/to_list.hpp</a>&gt;<br><br><a href="variadic_to_list.html">BOOST_PP_VARIADIC_TO_LIST</a>(x, y, z)<br> // expands to (x, (y, (z, <a href="nil.html">BOOST_PP_NIL</a>)))<br></pre>
</div>
<hr size="1">
<div style="margin-left: 0px;"> <i></i><i><EFBFBD> Copyright Edward Diener 2011,2013</i> </div>
<div style="margin-left: 0px;">
<p><small>Distributed under the Boost Software License, Version 1.0.
(See accompanying file <a href="../../../../LICENSE_1_0.txt">LICENSE_1_0.txt</a>
or copy at <a href="http://www.boost.org/LICENSE_1_0.txt">www.boost.org/LICENSE_1_0.txt</a>)</small></p>
</div>
</body>
<head>
<meta http-equiv="content-type" content="text/html; charset=windows-1252">
<title>BOOST_PP_VARIADIC_TO_LIST</title>
<link rel="stylesheet" type="text/css" href="../styles.css">
</head>
<body>
<div style="margin-left: 0px;"> The <b>BOOST_PP_VARIADIC_TO_LIST</b>
variadic macro converts <i>variadic data</i> to a <i>list</i>. </div>
<h4>Usage</h4>
<div class="code"> <b>BOOST_PP_VARIADIC_TO_LIST</b>(<i>...</i>) <a
href="../topics/variadic_macros.html#VNotation" target="_self"><sup>(v)</sup></a><br>
</div>
<h4>Arguments</h4>
<dl>
<dt>...</dt>
<dd> The <i>variadic data</i> to be converted.<br>
</dd>
</dl>
<h4>Remarks</h4>
<p>&nbsp;&nbsp;&nbsp; In <a
href="file:///E:/Programming/VersionControl/modular-boost/libs/preprocessor/doc/topics/variadic_macros.html#C20_Support_For_Variadic_Macros">C++
20</a> mode the <i>variadic</i> <i>data</i> can be empty and
the result will be an empty list of the form 'BOOST_PP_NIL'.</p>
<h4>Requirements</h4>
<div> <b>Header:</b> &nbsp;<a
href="../headers/variadic/to_list.html">&lt;boost/preprocessor/variadic/to_list.hpp&gt;</a>
</div>
<h4>Sample Code</h4>
<div>
<pre>#include &lt;<a href="../headers/variadic/to_list.html">boost/preprocessor/variadic/to_list.hpp</a>&gt;<br><br><a href="variadic_to_list.html">BOOST_PP_VARIADIC_TO_LIST</a>(x, y, z)<br> // expands to (x, (y, (z, <a href="nil.html">BOOST_PP_NIL</a>)))<br></pre>
</div>
<hr size="1">
<div style="margin-left: 0px;"> <i></i><i><EFBFBD> Copyright Edward Diener
2011,2013</i> </div>
<div style="margin-left: 0px;">
<p><small>Distributed under the Boost Software License, Version
1.0.
(See accompanying file <a href="../../../../LICENSE_1_0.txt">LICENSE_1_0.txt</a>
or copy at <a href="http://www.boost.org/LICENSE_1_0.txt">www.boost.org/LICENSE_1_0.txt</a>)</small></p>
</div>
</body>
</html>

View File

@ -9,18 +9,15 @@
<h4>Usage</h4>
<div class="code"><b>BOOST_PP_VARIADICS</b><br>
</div><b>Remarks</b>
<div> The macro is an <i>object-like</i> macro. It is used in internal
code to check for the presence of variadic macro support. It can be
used by the end-user for the same purpose. The macro equals 1 if
variadic macros are supported and 0 if they are not. </div><b>Requirements</b>
<div> The macro is an <i>object-like</i> macro, but has been deprecated. It was used in internal
code to check for the presence of variadic macro support, but now is no longer used as it is always
assumed that variadic macro support from the compiler is present. The value is always set to 1
for backward compatibility, but no longer used internally in the library.
</div><b>Requirements</b>
<div> <b>Header:</b> &nbsp;<a href="../headers/config/variadics.html">&lt;boost/preprocessor/config/config.hpp&gt;</a>
</div>
<h4>Sample Code</h4>
<div>
<pre>#include &lt;<a href="../headers/config/variadics.html">boost/preprocessor/config/config.hpp</a>&gt;<br><br>#if <a href="variadics.html">BOOST_PP_VARIADICS</a><br>#define SOME_MACRO(...) // replacement list<br>#else<br>#define SOME_MACRO(param1,param2) // replacement list<br>#endif<br></pre>
</div>
<hr size="1">
<div style="margin-left: 0px;"> <i></i><i><EFBFBD> Copyright Edward Diener 2011,2014</i> </div>
<div style="margin-left: 0px;"> <i></i><i><EFBFBD> Copyright Edward Diener 2011,2014,2020</i> </div>
<div style="margin-left: 0px;">
<p><small>Distributed under the Boost Software License, Version 1.0.
(See accompanying file <a href="../../../../LICENSE_1_0.txt">LICENSE_1_0.txt</a>

View File

@ -1,23 +1,35 @@
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<meta content="text/html; charset=windows-1252" http-equiv="content-type">
<meta content="text/html; charset=windows-1252"
http-equiv="content-type">
<title>title.html</title>
<link rel="stylesheet" type="text/css" href="styles.css">
</head>
<body>
<h4>Introduction</h4>
<div> The Boost Preprocessing library is a library of macros, with support
for preprocessor metaprogramming. The library supports both C++ and C
compilation. It does not depend on any other Boost libraries and therefore
may be used as a standalone library. </div>
<div> An excerpt from <i>C++ Template Metaprogramming: Concepts, Tools, and
Techniques from Boost and Beyond</i> by Dave Abrahams and Aleksey
Gurtovoy has been made <a href="AppendixA-AnIntroductiontoPreprocessorMetaprogramming.html"
target="_top"><font color="blue"><b><u><i>available</i></u></b></font></a>.
This excerpt contains a basic introduction to the Preprocessor library and
preprocessor metaprogramming which may help users new to the library and
users interested in seeing some of the facilities offered by the library.
<div> The Boost Preprocessing library is a library of macros, with
support for preprocessor metaprogramming. The library supports
both C++ and C compilation. It does not depend on any other Boost
libraries and therefore may be used as a standalone library.<br>
</div>
<div>The library requires that the compiler supports <a
href="topics/variadic_macros.html">variadic macros</a>. Since
variadic macros are a C99 or C++11 feature the library ostensibly
requires at least compilation at those C or C++ standard levels. A
number of compilers support variadic macros at a lower level, so
it still may be possible using the library at that compilation
level, as long as strict C++98/C++03 compliance is not enforced.<br>
</div>
<div> An excerpt from <i>C++ Template Metaprogramming: Concepts,
Tools, and Techniques from Boost and Beyond</i> by Dave Abrahams
and Aleksey Gurtovoy has been made <a
href="AppendixA-AnIntroductiontoPreprocessorMetaprogramming.html"
target="_top"><font color="blue"><b><u><i>available</i></u></b></font></a>.
This excerpt contains a basic introduction to the Preprocessor
library and preprocessor metaprogramming which may help users new
to the library and users interested in seeing some of the
facilities offered by the library. </div>
<!--
<EFBFBD> Copyright Housemarque Oy 2002<30> Copyright Paul Mensonides 2002Distributed under the Boost Software License, Version 1.0.(See accompanying file LICENSE_1_0.txt or copy at
http://www.boost.org/LICENSE_1_0.txt)-->

View File

@ -16,10 +16,12 @@
<li><a href="topics/evaluated_slots.html">evaluated slots</a></li>
<li><a href="topics/variadic_macros.html">variadic macros</a></li>
<li><a href="topics/emptiness.html">emptiness</a></li>
<li><a href="topics/limitations.html">limitations</a></li>
</ul>
<!--
<EFBFBD> Copyright Housemarque Oy 2002
<EFBFBD> Copyright Paul Mensonides 2002
<EFBFBD> Copyright Edward Diener 2020
Distributed under the Boost Software License, Version 1.0.
(See accompanying file LICENSE_1_0.txt or copy at
http://www.boost.org/LICENSE_1_0.txt)

View File

@ -125,13 +125,12 @@
BOOST_PP_VARIADIC_HAS_OPT, which is a function-like macro taking
no parameters and returning 1 if the __VA_OPT__ construct is
supported and 0 if it is not. The macro only returns 1 when
variadic macros are supported, when the compiler is at the C++20
level, and when the __VA_OPT__ construct can be used according to
the C++20 standard. In particular the macro needs the compiler to
be working at the C++20 level despite the fact that at least one
major compiler supports the __VA_OPT__ construct in some of its
latest releases even when the compiler is being used at a C++
standard level below that of C++20. The reason this Boost
the compiler is at the C++20 level, and when the __VA_OPT__ construct
can be used according to the C++20 standard. In particular the macro
needs the compiler to be working at the C++20 level despite the fact
that at least one major compiler supports the __VA_OPT__ construct in
some of its latest releases even when the compiler is being used at a
C++ standard level below that of C++20. The reason this Boost
preprocessor library requires the C++20 level is because that same
major compiler can produce a warning, or even an error, when it
even sees a macro using the __VA_OPT__ construct at a level below
@ -139,9 +138,8 @@
requiring strict adherence to the level of the C++ standard being
used are passed on the command line. So taking a conservative
approach the BOOST_PP_VARIADIC_HAS_OPT macros requires compilation
at the C++20 level, along with variadic macro support, along with
the testing code expanding to 1, in order to specify that
__VA_OPT__ is supported.<br>
at the C++20 level, along with the testing code expanding to 1,
in order to specify that __VA_OPT__ is supported.<br>
<br>
The actual Boost Preprocessor library for testing for emptiness in
C++20 mode is called BOOST_PP_CHECK_EMPTY. The macro is a variadic

View File

@ -364,8 +364,8 @@ typedef TYPELIST((int, double, incomplete&lt;void&gt;)) xyz;
<div>
There are two minor caveats with this result.&nbsp; First, certain types like <code>void</code>
can't be the type of an argument, so they have to be wrapped with <code>incomplete&lt;T&gt;</code>.&nbsp;
Second, the necessary double parenthesis is annoying.&nbsp; If and when C++
gets C99's variadic macros, <code>TYPELIST</code> can be redefined:
Second, the necessary double parenthesis is annoying.&nbsp; With variadic macros,
<code>TYPELIST</code> can be redefined:
</div>
<div class="code">
<pre>

319
doc/topics/limitations.html Normal file
View File

@ -0,0 +1,319 @@
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<meta content="text/html; charset=windows-1252"
http-equiv="content-type">
<title>limitations.html</title>
<link rel="stylesheet" type="text/css" href="../styles.css">
<style>
u { font-weight: normal; text-decoration: none; }
</style>
</head>
<body>
<h3>Preprocessor library limitations</h3>
<blockquote>
<p>The Boost preprocessor library has always had certain specific
limitations, which are specifically explained in other areas of
this documentation and are implemented as object-like macros in
the header file config/limits.hpp. These limitations largely
detail the maximum number for certain features in the library.
These maximums have been chosen in order to accommodate the
large number of compilers and their preprocessors which the
library supports, in order to provide a lowest common set of
limits with which the vast majority of these compilers can work
successfully. This reflects the situation that the C/C++
standard rarely specifies preprocessor limitations for compilers
but rather allows each compiler to choose whatever limitations
it deems necessary in its preprocessor. While this allows
individual compilers to largely choose what preprocessor
limitations it deems necessary, it makes it more difficult for a
preprocessor library like this one to work with a large number
of preprocessors across a number of operating system platforms.
The difficulty of this situation means that this Boost
preprocessor library has chosen fairly conservative limitations.<br>
</p>
<p>In fact the limitation macros, although indeed existing, have
never previously been used internally in the preprocessor
library code. Instead while the limitation macros do indeed
exist, the library has internally used fixed numbers equivalent
to what these macros represent. This historical situation most
probably reflects the fact that the library did not want the
end-user's possibly changing the limitations, by redefining the
macros in config/limits.hpp, to change how the library works and
therefore cause problems in using the library.<br>
</p>
<p>This situation has now changed and a number of the limitation
macros specified in config/limits.hpp are now used internally in
the library code when the preprocessor is C++ standard
conforming. This topic is therefore about how an end-user can
change the limitations of the library.<br>
</p>
</blockquote>
<h4>Type of limitations</h4>
<blockquote>
<p>The type of limitations in the Boost preprocessor library can
be divided as:<br>
</p>
<ul>
<li>Numbers</li>
<li>Sizes</li>
<li>Loops</li>
<li>Iterations</li>
</ul>
The library has support for numbers. This supports basic
arithmetic, comparisons, and logical operations. This support is
documented by the macro BOOST_PP_LIMIT_MAG, where 'MAG' is short
for "MAGNITUDE'. The current fixed maximum value is 256. This
means that the library supports numerical operations in the range
between 0 and 256.<br>
<br>
The library has support for the maximum sizes of higher level
types. These types are arrays, lists, seqs, tuples, and variadic
data. By sizes for these higher level constructs it is meant the
maximum number of elements of which a higher level construct can
consist. For arrays and tuples this value is documented by the
macro BOOST_PP_LIMIT_TUPLE while for variadic data this value is
documented by the macro BOOST_PP_LIMIT_VARIADIC. In both these
cases the current fixed maximum value is 64. For seqs the value is
documented by the macro BOOST_PP_LIMIT_SEQ, whose current fixed
value is 256. For lists there has never been a limitation macro
but in actual fact the limitation on the maximum number of list
elements is defined by the maximum number given above for
BOOST_PP_LIMIT_MAG. So a list, like a seq, has a default maximum
of 256 elements. The reason that the maximum number of elements
for arrays, tuples, and variadic data is 64 while for seqs and
lists it is the much larger value of 256 is because the
implementation of the former constructs often involves passing the
likewise number as parameters to internal macros and a number of
compilers have placed limitations on the number of parameters a
macro can have; so the much safer 64 was chosen so as to be able
to work with these compilers.<br>
<br>
The looping constructs consist of the control structure
BOOST_PP_WHILE and the repetition constructs BOOST_PP_FOR and
BOOST_PP_REPEAT. Each of these have a limitation macro, all
currently set to 256. This means that the loop can run at maximum
256 times. The corresponding limitation macros are
BOOST_PP_LIMIT_WHILE, BOOST_PP_LIMIT_FOR, and
BOOST_PP_LIMIT_REPEAT.<br>
<br>
Iteration constructs consist of local iteration and file iteration
constructs.The specifics are more fully discussed in their own
topics. The corresponding macro is BOOST_PP_LIMIT_ITERATION whose
value is 256.<br>
</blockquote>
<h4> Limitation dependencies</h4>
<blockquote>A number of the limitations are actually dependent on
other limitations. These are:<br>
<ul>
<li>BOOST_PP_LIMIT_MAG depends on BOOST_PP_LIMIT_WHILE. All the
arithmetic macros except for BOOST_PP_INC and BOOST_PP_DEC
depend on looping using BOOST_PP_WHILE. Similarly all the
comparison macros except for BOOST_PP_EQUAL and
BOOST_PP_NOT_EQUAL depend on BOOST_PP_WHILE. So whatever is
the value for BOOST_PP_LIMIT_MAG is also the value for
BOOST_PP_LIMIT_WHILE.</li>
<li>BOOST_PP_LIMIT_TUPLE depends on BOOST_PP_LIMIT_VARIADIC,
since array/tuple functionality often ends up calling variadic data
functionality. So while BOOST_PP_LIMIT_TUPLE can be smaller
than BOOST_PP_LIMIT_VARIADIC it can never be larger.<br>
</li>
<li>BOOST_PP_LIMIT_SEQ depends on BOOST_PP_LIMIT_MAG since the
total size of a seq must be at most the largest number. So
while BOOST_PP_LIMIT_SEQ could be smaller than
BOOST_PP_LIMIT_MAG it can never be larger.</li>
<li>BOOST_PP_LIMIT_FOR, BOOST_PP_LIMIT_REPEAT, and
BOOST_PP_LIMIT_ITERATION all depend on BOOST_PP_LIMIT_MAG.
While any of these values could be smaller than
BOOST_PP_LIMIT_MAG none of them can be larger.</li>
</ul>
</blockquote>
<h4>Changing the limitations</h4>
<blockquote>
<p>Limitations can be changed by the end-user defining a
limitation macro prior to including preprocessor library header
files. This can be done either in a source file or as part of a
compiler command line.<br>
</p>
</blockquote>
<blockquote>
<p>Before specifying which limitations can be changed a number of
items need to be emphasized:<br>
</p>
<ul>
<li>The limitations which can be changed can only be done for
C++ standard conforming preprocessors. You can use the macro
BOOST_PP_IS_STANDARD, invoking it as BOOST_PP_IS_STANDARD(),
to determine if your compiler has a C++ standard conforming
preprocessor. Almost all major compilers, including gcc and
clang, have C++ standard conforming preprocessors. Most
notably the default Visual C++ compiler is not a C++ standard
conforming preprocessor, but the new preprocessor for Visual
C++, available in Visual Studio 2019 and above, is a C++
standard conforming preprocessor. If you change a limitation
for a compiler that is not a C++ standard conforming
preprocessor the change is simply ignored and no preprocessor
error will occur. This is because any non-conforming
preprocessor does not actually include or use the macros in
the config/limits.hpp file.<br>
</li>
<li>WARNING ! WARNING ! WARNING ! Increasing limitations may
mean that preprocessors may fail because the compiler itself
can not handle the increase in the limitations. This may occur
because the compiler has an internal limit on the number of
parameters that can be passed to a macro, the number of nested
macro invocations, or even the amount of memory needed for the
preprocessor to expand a macro.</li>
<li>Except for possibly first including the preprocessor header
boost/preprocessor/config/config.hpp, changing any limitation
must be done before including Boost preprocessor headers in a
TU ( translation unit ) to work properly. Attempting to change
a limitation after including Boost preprocessor headers will
at worst lead to preprocessor errors and at best lead to UB (
undefined behavior ).</li>
<li>Limitations can only be changed to specific values as given
below. Attempting to change limitations to other than the
specific values will lead to the change being ignored or, if
incorrectly done after including Boost preprocessor headers, a
preprocessor error.</li>
</ul>
All the limitations whose default value is 256 can be changed to
either 512 or 1024, except for BOOST_PP_LIMIT_WHILE which can not
be changed.<br>
The two limitations whose default value is 64 can be changed to
128 or 256.<br>
<br>
For the individual limitations:<br>
<ul>
<li>BOOST_PP_LIMIT_MAG : When you change this limitation the
value of BOOST_PP_LIMIT_WHILE also changes so that it is equal
to BOOST_PP_LIMIT_MAG. This is because numerical computations
depend on the BOOST_PP_WHILE loop, and therefore
BOOST_PP_LIMIT_WHILE itself can not be changed. Also when you
change the BOOST_PP_LIMIT_MAG limitation the value of
BOOST_PP_LIMIT_SEQ, if it has not been also changed to be less
than BOOST_PP_LIMIT_MAG, is also changed to the value of
BOOST_PP_LIMIT_MAG. This is so that seqs, like lists, will
normally have the same maximum number of elements, as defined
by BOOST_PP_LIMIT_MAG, unless you decide otherwise and change
the BOOST_PP_LIMIT_SEQ&nbsp; yourself.<br>
</li>
<li>BOOST_PP_LIMIT_TUPLE: When you change this limitation the
value of BOOST_PP_LIMIT_VARIADIC also changes so that it is at
least equal to BOOST_PP_LIMIT_TUPLE if the value of
BOOST_PP_LIMIT_VARIADIC has not also been changed to be
greater than BOOST_PP_LIMIT_TUPLE. This is because
tuples/arrays depend on variadic functionality.</li>
<li>BOOST_PP_LIMIT_SEQ, BOOST_PP_LIMIT_FOR,
BOOST_PP_LIMIT_REPEAT, BOOST_PP_LIMIT_ITERATION: If you try to
set any of these values greater than the BOOST_PP_LIMIT_MAG
value, the particular limitation is set to equal the value of
BOOST_PP_LIMIT_MAG. This is because all of these limits depend
on the range of numerical values.</li>
</ul>
</blockquote>
<h4>Other considerations</h4>
<blockquote>
<p>There is no necessity to change any limitation if you are happy
with its default value. However if you decide to increase a
limitation you should be aware that doing so can affect both the
amount of memory used by the preprocessor and the speed in which
preprocessing is accomplished. In the first case some
preprocessors have been known to run out of memory if a
limitation value is increased, even though this should really
never happen in modern computer systems. In the latter case
preprocessing might become so slow that trying to use the
library with some increased limitation, and have your
preprocessing finish in some reasonable amount of time, becomes
impossible. The latter can occur when you are using lists or
seqs and while cycling through a large number of elements you
are also doing time consuming operations on each element value
which generates further macro looping. Nearly all arithmetic and
comparison operations involve further macro looping.<br>
</p>
<p>For lists and seqs there is functionality which uses the
BOOST_PP_FOR macro. If the maximum size for lists and seqs is
increased, by using BOOST_PP_LIMIT_MAG macro, you may also need
to define BOOST_PP_LIMIT_FOR to increase the maximum number of
'for' loops in order to cycle through all lists or seqs using
this functionality.<br>
</p>
<p>The BOOST_PP_WHILE construct is used internally for looping by
nearly all arithmetic and comparison macros as well as
internally by a number of other macros in the library which loop
through elements. While the construct can be called from within
an already running BOOST_PP_WHILE loop, it is possible to run
out of BOOST_PP_WHILE loops when this happens. In order to solve
this problem you can specify a BOOST_PP_LIMIT_MAG which is
larger than the maximum number you will ordinarily use. This
will give you twice the number of BOOST_PP_WHILE loops and will
keep you from running out of loops if you have to do arithmetic
computations while cycling through lists and seqs and the number
of lists and/or seqs you cycle through is anywhere near your
original&nbsp; maximum.<br>
</p>
</blockquote>
<h4>Testing limitations</h4>
<blockquote>
<p>The default testing of the preprocessor library, using Boost
Build's b2 command in the preprocessor test directory, only
tests the default limitations. If you want to test, within the
test directory, any of the non-default limitations which may be
set, you can do so by invoking the b2 command with any of these
explicit targets:<br>
</p>
<ul>
<li>preprocessor_128 : arrays, tuples, and variadics with up to
128 elements</li>
<li>preprocessor_256 : arrays, tuples, and variadics with up to
256 elements</li>
<li>preprocessor_512 : numbers, lists, seqs, looping, and
iteration constructs with 512 maximum</li>
<li>preprocessor_1024 : numbers, lists, seqs, looping, and
iteration constructs with 1024 maximum</li>
<li>preprocessor_tup : both the first and second items in this
list</li>
<li>preprocessor_num : both the third and fourth items in this
list</li>
<li>preprocessor_limits : all preprocessor limitations</li>
</ul>
If you invoke b2 with the last preprocessor_limits target your
testing may take awhile for your compiler. When you choose one of
the above targets, as in <code>'b2 preprocessor_limits'</code>,
the default tests are not run. If you want the default tests run,
along with any of the targets such as preprocessor_limits, your
command would be <code>'b2 . preprocessor_limits'</code>, where
the '.' notation means all the non-explicit ( aka default )
targets.<br>
</blockquote>
<blockquote> </blockquote>
<blockquote>
<ul>
</ul>
</blockquote>
<blockquote> </blockquote>
<b>See</b> <b>Also</b><br>
<ul>
<li><a href="../ref/is_standard.html">BOOST_PP_IS_STANDARD</a><br>
</li>
<li><a href="../ref/limit_mag.html">BOOST_PP_LIMIT_MAG</a></li>
<li><a href="../ref/limit_tuple.html">BOOST_PP_LIMIT_TUPLE</a></li>
<li><a href="../ref/limit_variadic.html">BOOST_PP_LIMIT_VARIADIC</a></li>
<li><a href="../ref/limit_seq.html">BOOST_PP_LIMIT_SEQ</a></li>
<li><a href="../ref/limit_while.html">BOOST_PP_LIMIT_WHILE</a></li>
<li><a href="../ref/limit_for.html">BOOST_PP_LIMIT_FOR</a></li>
<li><a href="../ref/limit_repeat.html">BOOST_PP_LIMIT_REPEAT</a></li>
<li><a href="../ref/limit_iteration.html">BOOST_PP_LIMIT_ITERATION</a><br>
</li>
</ul>
<hr size="1">
<div style="margin-left: 0px;"> <i><EFBFBD> Copyright Edward Diener 2020</i>
</div>
<div style="margin-left: 0px;">
<p><small>Distributed under the Boost Software License, Version
1.0. (See accompanying file <a
href="../../../../LICENSE_1_0.txt">LICENSE_1_0.txt</a> or
copy at <a href="http://www.boost.org/LICENSE_1_0.txt">www.boost.org/LICENSE_1_0.txt</a>)</small></p>
</div>
</body>
</html>

View File

@ -1,282 +1,260 @@
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<meta content="text/html; charset=windows-1252" http-equiv="content-type">
<meta content="text/html; charset=windows-1252"
http-equiv="content-type">
<title>variadic_macros.html</title>
<link rel="stylesheet" type="text/css" href="../styles.css">
<link rel="stylesheet" type="text/css" href="../styles.css">
<style>
u { font-weight: normal; text-decoration: none; }
</style>
</head>
<body>
<h4>Variadic Macros</h4>
<div> Variadic macros are supported by a number of compilers. They are
macros of the form: </div>
<div class="code">
<div> Variadic macros are supported by nearly all compilers.
Variadic macros are macros of the form: </div>
<div class="code">
<pre>#define SOME_MACRO(ZeroOrMoreParameters,...) macro expansion possible specifying __VA_ARGS__</pre>
</div>
<div> The '...' in the parameter list represents the variadic data when the
macro is invoked and the __VA_ARGS__ in the expansion represents the
variadic data in the expansion of the macro. Variadic data is of the form
of 1 or more preprocessor tokens separated by commas.<br>
<div> The '...' in the parameter list represents the variadic data
when the macro is invoked and the __VA_ARGS__ in the expansion
represents the variadic data in the expansion of the macro.
Variadic data is of the form of 1 or more preprocessor tokens
separated by commas.<br>
<br>
The '...' must be the last parameter in the macro definition and there may
be 0 or more non-variadic parameters preceding it.<br>
The '...' must be the last parameter in the macro definition and
there may be 0 or more non-variadic parameters preceding it.<br>
<br>
In the expansion of the macro __VA_ARGS__ may be specified 0 or more times
to represent the variadic data. The variadic data in the expansion is a
comma separated list of preprocessor tokens representing the variadic data
which the invoker of the macro enters as the last arguments to the macro.<br>
In the expansion of the macro __VA_ARGS__ may be specified 0 or
more times to represent the variadic data. The variadic data in
the expansion is a comma separated list of preprocessor tokens
representing the variadic data which the invoker of the macro
enters as the last arguments to the macro.<br>
</div>
<h4>Example<u> - Creating and invoking a variadic macro.</u></h4>
<div class="code">
<div class="code">
<pre>#define INITIALIZE_INT_ARRAY(array_name,...) \ <br> static int array_name[] = { __VA_ARGS__ }; \ <br> /**/<br><br> INITIALIZE_INT_ARRAY(myname,45,789,33510,9346,2)</pre>
</div>
<u> <span style="font-weight: bold;">Preprocessor
Library Support<br>
<u> <span style="font-weight: bold;">Preprocessor Library Support<br>
</span></u>
<div>The library offers support for variadic macros for those
compilers
which support the feature. The library can automatically detect whether
a compiler supports variadic macros and sets the macro
BOOST_PP_VARIADICS accordingly to 1 if the compiler supports variadic
macros or 0 if the compiler does not support variadic macros.<br>
<div>The library requires support for variadic macros for all
compilers using the library. This usually means that compilation
at the C level is C99 or higher and that compilation at the C++
level is C++11 or higher. Many C++ compilers support variadic
macros at the C++98/C++03 level as long as strict compliance is
not turned on for those compilers at that level. In particular
both the gcc and clang compilers will support variadic macros at
the C++98/C++03 levels as long as strict ANSI compliance is not
turned on at that level. For those compilers this largely means
that the <code>-pedantic</code> or <code>-pedantic-errors</code>
option is not used at the C++98/C++03 level of compilation. Boost
C++ is deprecating compiling Boost libraries at the C++98/C++03
level, so if you must still use this library at that level be
aware of these aforementioned caveats.<br>
<br>
The end-user can #define BOOST_PP_VARIADICS to 1 or 0 himself in a
translation unit, before including any preprocessor header files, to
prevent the library from attempting to detect whether the compiler
supports variadic macros. This has the effect of manually turning on or
off variadic macro support in the library. Of course if one manually
turns on variadic macro support in the library, and one's compiler does
not support variadic macros, functionality in the library which uses
variadic macros will fail with error messages from the compiler.<br>
<a name="vmvcquirk"></a>Visual C++'s default preprocessor has a
few quirks related to variadic macros which require the end-user
to code slightly differently. When Visual C++'s default
preprocessor is being used BOOST_PP_VARIADICS_MSVC is 1, otherwise
it is 0. In this way the end-user can test for the presence of
Visual C++'s default preprocessor and code accordingly.<br>
<br>
When BOOST_PP_VARIADICS is 1, the library offers some extended
functionality
by using variadic macros, and also offers extended support for working
with variadic data.<br><br>
<a name="vmvcquirk"></a>Visual C++ has a
few quirks related to variadic macros which require the end-user to code
slightly differently. When BOOST_PP_VARIADICS is 1 and Visual C++ is the
compiler BOOST_PP_VARIADICS_MSVC is 1, else when BOOST_PP_VARIADICS is 1
and Visual C++ is not the compiler BOOST_PP_VARIADICS_MSVC is 0. When
BOOST_PP_VARIADICS is 0 then BOOST_PP_VARIADICS_MSVC is not defined.
In this way the end-user, when using variadic macros, can test for the
presence of Visual C++ as the compiler and code accordingly.<br>
<br>
Support for working with variadic
data is largely centered on being able to convert variadic data to
other library data types, since the
functionality for working with those Boost preprocessor library data
types is much greater than that for working with variadic data directly.<br>
</div>
<a name="VNotation"></a>
<h4>Notation For Variadic Macros<br>
</h4>
<div>In the documentation, headers which have variadic macros,
and
variadic macros themselves, have a notation of '(v)' appended to them.
For the variadic macros themselves this signifies that
BOOST_PP_VARIADICS must be 1 for those variadic macros to be usable.
For variadic macros which have a non-variadic equivalent, the
non-variadic equivalent will be used if BOOST_PP_VARIADICS is set to 0.
Support for working with variadic data is largely centered on
being able to convert variadic data to other library data types,
since the functionality for working with those Boost preprocessor
library data types is much greater than that for working with
variadic data directly.<br>
</div>
<a name="VNotation"></a>
<h4>Extended Functionality Using Variadic Macros<br>
</h4>
<div>Some macros in the library offer extended
functionality through the use of variadic macros.<br>
<div>Some macros in the library offer extended functionality through
the use of variadic macros.<br>
<br>
The variadic macro version offers the same functionality
as the non-variadic version, but because of the ability of the variadic
parameters to encompass a variable number of arguments, it also offers
an enhanced syntax using the same macro name.<br>
The variadic macro version offers extended functionality because
of the ability of the variadic parameters to encompass a variable
number of arguments. The library has functionality which can know
the number of variadic arguments passed when invoking a variadic
macro. This allows the same variadic macro to work with different
numbers of parameters, therefore providing more than one
syntactical equivalent for the same macro name.<br>
<br>
The macros in the library which offer this enhanced functionality are
all
centered on <i>tuple</i> manipulation. With variadic
macros it is
possible to
manipulate tuples without having to know the size of the tuple. So
while the invoker can still specify the size when using tuple macro
functionality, there are variadic versions of each of the tuple macros,
with the exact same name as the non-variadic macro, where the size need
not be specified.<br>
The macros in the library which offer this enhanced functionality
are all centered on <i>tuple</i> manipulation. With variadic
macros it is possible to manipulate tuples without having to know
the size of the tuple. So while the invoker can still specify the
size when using tuple macro functionality, there are syntactical
versions of each of the tuple macros where the size need not be
specified.<br>
</div>
<h4>Extended Support For Variadic Data</h4>
<div>The library offers extended support for working with
variadic data
which goes beyond the functionality offered by the C++ specification
for variadic macros. It does this through preprocessor programming and
by using some of the other functionality in the library itself. Header
and macro names
in the library which offer extended support for working with variadic
data, and need the compiler to support variadic macros, are marked with
a (v)<sup> </sup>to indicate a variadic macro.<br>
<div>The library offers extended support for working with variadic
data which goes beyond the functionality offered by the C++
specification for variadic macros. It does this through
preprocessor programming and by using some of the other
functionality in the library itself.<br>
<br>
The form of the functionality which the library offers is centered on
two macros which work with variadic data itself, and a set of macros
which convert between variadic data and other library data
The form of the functionality which the library offers is centered
on two macros which work with variadic data itself, and a set of
macros which convert between variadic data and other library data
types.<br>
<br>
The two macros are BOOST_PP_VARIADIC_ELEM and BOOST_PP_VARIADIC_SIZE,
which respectively return a particular token of variadic data and the
number of tokens of variadic data.<br>
The two macros are BOOST_PP_VARIADIC_ELEM and
BOOST_PP_VARIADIC_SIZE, which respectively return a particular
token of variadic data and the number of tokens of variadic data.<br>
<br>
The macros for converting variadic data to the library's data types are
BOOST_PP_VARIADIC_TO_ARRAY, BOOST_PP_VARIADIC_TO_LIST,
The macros for converting variadic data to the library's data
types are BOOST_PP_VARIADIC_TO_ARRAY, BOOST_PP_VARIADIC_TO_LIST,
BOOST_PP_VARIADIC_TO_SEQ, and BOOST_PP_VARIADIC_TO_TUPLE.<br>
<br>
All of these macros need compiler support for variadic data and only
exist if BOOST_PP_VARIADICS is 1. <br>
<br>
The remaining four macros, which convert from a library data type
to comma-separated preprocessor tokens, which is the form of
variadic data, do not need compiler support for variadic
macros. These functions are BOOST_PP_ARRAY_ENUM, BOOST_PP_LIST_ENUM,
BOOST_PP_SEQ_ENUM, and BOOST_PP_TUPLE_ENUM. However if one wishes to
use this variadic data reliably as arguments to other macros, one needs
variadic macro support.<br>
variadic data, do not use variadic macros. These functions are
BOOST_PP_ARRAY_ENUM, BOOST_PP_LIST_ENUM, BOOST_PP_SEQ_ENUM, and
BOOST_PP_TUPLE_ENUM. You can use this variadic data reliably as
arguments to other macros using variadic macro support.<br>
</div>
<h4>C++20 Support For Variadic Macros</h4>
<div>
In the C++20 specification there is a new construct which can be
used in the expansion of a variadic macro, called __VA_OPT__. This
construct when used in the expansion of a variadic macro is followed
by an opening paranthesis ('('), preprocessor data, and a closing
parenthesis ('}'). When the variadic data passed by the invocation
of a variadic macro is empty, this new construct expands to nothing.
When the variadic data passed by the invocation of a variadic macro
is not empty, this new construct expands to the preprocessor data
between its opening and closing parentheses.
<br><br>
This library offers support for this new C++20 construct by automatically
detecting whether this new construct is supported by the compiler's
preprocessor when using the library. The library macro which detects
support for the __VA_OPT__ construct is called BOOST_PP_VARIADIC_HAS_OPT.
This is a function-like macro which takes no parameters and returns
1 if the compiler is working in C++20 mode and supports the __VA_OPT__
construct, while otherwise it returns 0.
<h4><a name="C20_Support_For_Variadic_Macros"></a>C++20 Support For
Variadic Macros</h4>
<div> In the C++20 specification there is a new construct which can
be used in the expansion of a variadic macro, called __VA_OPT__.
This construct when used in the expansion of a variadic macro is
followed by an opening paranthesis '(', preprocessor data, and a
closing parenthesis ')'. When the variadic data passed by the
invocation of a variadic macro is empty, this new construct
expands to nothing. When the variadic data passed by the
invocation of a variadic macro is not empty, this new construct
expands to the preprocessor data between its opening and closing
parentheses. <br>
<br>
This library offers support for this new C++20 construct by
automatically detecting whether this new construct is supported by
the compiler's preprocessor when using the library. The library
macro which detects support for the __VA_OPT__ construct is called
BOOST_PP_VARIADIC_HAS_OPT. This is a function-like macro which
takes no parameters and returns 1 if the compiler is working in
C++20 mode and supports the __VA_OPT__ construct, while otherwise
it returns 0. <br>
<br>
When the __VA_OPT__ construct is supported in C++20 mode the
variadic data passed to the variadic macros and to
BOOST_PP_OVERLOAD can be empty, otherwise when not in this mode
variadic data passed to the variadic macros should never be empty.
In this C+++20 mode invoking BOOST_PP_VARIADIC_SIZE with empty
data expands to 0, invoking BOOST_PP_VARIADIC_TO_ARRAY with empty
data expands to the empty array '(0,())', invoking
BOOST_PP_VARIADIC_TO_LIST with empty data expands to the empty
list 'BOOST_PP_NIL', and invoking BOOST_PP_OVERLOAD with empty
data creates an overload name with 0 appended. Similarly in this
C++20 mode passing an empty array '(0,())' to BOOST_PP_ARRAY_ENUM
expands to empty variadic data and passing an empty list
'BOOST_PP_NIL' to BOOST_PP_LIST_ENUM also expands to empty
variadic data. Neither a seq or a tuple can be empty so passing
empty variadic data to either BOOST_PP_VARIADIC_TO_SEQ or
BOOST_PP_VARIADIC_TO_TUPLE is erroneous. Likewise passing empty
data to BOOST_PP_VARIADIC_ELEM is always erroneous since there are
no tokens of variadic data to access.<br>
</div>
<u style="font-weight: bold;"> Using a Tuple Instead of an Array<br>
<u style="font-weight: bold;"> Using a Tuple Instead of an Array<br>
</u>
<div>An array as a preprocessor data type is a two-element tuple where the
first element is the array size and the second element is a tuple which
constitutes the array data. Because a tuple knows its own size when the
compiler supports variadic macros, there is no reason to use the array preprocessor
data type as opposed to the tuple preprocessor data type; the tuple data
type now has all of the functionality which the array data type has and is
syntactically easier to use. With variadic macro support, which is now
officially part of the latest C++ standard, the preprocessor array data
type is essentially obsolete for conforming C++ compilers. Only if your
compiler does not support variadic macros is the preprocessor array data
type still useful.</div>
<u style="font-weight: bold;">Using Variadic Data</u>
<div>Variadic data exists in the
form of comma-separated preprocessor tokens. This is the case whether
the variadic data comes from the __VA_ARGS__ of a variadic macro, from
the conversion of a library's data type to variadic data, or the
<div>An array as a preprocessor data type is a two-element tuple
where the first element is the array size and the second element
is a tuple which constitutes the array data. Because a tuple knows
its own size because of compiler support for variadic macros,
there is no reason to use the array preprocessor data type as
opposed to the tuple preprocessor data type; the tuple data type
now has all of the functionality which the array data type has and
is syntactically easier to use. The preprocessor array data type
is essentially obsolete for modern C++ compilers.</div>
<u style="font-weight: bold;">Using Variadic Data</u>
<div>Variadic data exists in the form of comma-separated
preprocessor tokens. This is the case whether the variadic data
comes from the __VA_ARGS__ of a variadic macro, from the
conversion of a library's data type to variadic data, or the
manual construction of comma-separated preprocessing tokens by the
programmer writing a macro.<br>
<br>
The easiest way to work with
variadic data internally is to convert it to a library data type.
Library data types, whether an <i>array</i>, <i>list</i>,
<i>sequence</i>,
or <i>tuple</i>, have a rich set of functionality for
manipulating
data whereas
variadic data functionality in the library only allows one to access
the variadic data as a whole or to access a single token of the
variadic data at a time.<br>
The easiest way to work with variadic data internally is to
convert it to a library data type. Library data types, whether an
<i>array</i>, <i>list</i>, <i>sequence</i>, or <i>tuple</i>,
have a rich set of functionality for manipulating data whereas
variadic data functionality in the library only allows one to
access the variadic data as a whole or to access a single token of
the variadic data at a time.<br>
<br>
The user of the library still may
choose to pass variadic data back into internal macros rather than
convert it to other library data types. There is no problem passing
variadic data as a whole to variadic macros as the last parameter of
the macro. However: <br>
The user of the library still may choose to pass variadic data
back into internal macros rather than convert it to other library
data types. There is no problem passing variadic data as a whole
to variadic macros as the last parameter of the macro. However: <br>
<br>
<span style="font-weight: bold;">Attempting to pass
variadic data as a
whole directly into a non-variadic macro is not guaranteed to work and
may fail.<br>
<span style="font-weight: bold;">Attempting to pass variadic data
as a whole directly into a non-variadic macro is not guaranteed
to work and may fail.<br>
</span><br>
This occurs because of a preprocessor weakness in a number
of compilers, currently most notably Visual C++. Even passing variadic
data as arguments to a non-variadic macro, when it is not represented
in
the form of<6F> __VA_ARGS__, may fail with certain compilers.<br>
This occurs because of a preprocessor weakness in a number of
compilers, currently most notably Visual C++'s default
preprocessor. Even passing variadic data as arguments to a
non-variadic macro, when it is not represented in the form
of&nbsp; __VA_ARGS__, may fail with certain compilers.<br>
<br>
What follows are very simple examples, showing how variadic data can be
passed to a non-variadic macro.<br>
What follows are very simple examples, showing how variadic data
can be passed to a non-variadic macro.<br>
<br>
First an example of what NOT to do.<br>
</div>
<h4>Example<u> - Passing variadic data as a whole to a
non-variadic
<h4>Example<u> - Passing variadic data as a whole to a non-variadic
macro. DO NOT DO.</u></h4>
<div class="code">
<pre>#define MACRO_ARG_2(x,y) BOOST_PP_ADD(x,y)<br>#define VAR_MACRO(...) __VA_ARGS__<br><br>/* The following should not be done and is not guaranteed to work with compilers. */<br><br><span
style="font-weight: bold;"><span style="font-family: monospace;"></span></span>int xx = MACRO_ARG_2(VAR_MACRO(2,3));</pre>
<div class="code">
<pre>#define MACRO_ARG_2(x,y) BOOST_PP_ADD(x,y)<br>#define VAR_MACRO(...) __VA_ARGS__<br><br>/* The following should not be done and is not guaranteed to work with compilers. */<br><br><span style="font-weight: bold;"><span style="font-family: monospace;"></span></span>int xx = MACRO_ARG_2(VAR_MACRO(2,3));</pre>
</div>
<div> There are two ways to pass variadic data to a non-variadic
macro.
The
first of these is to pass the individual tokens of the variadic data
separately to the non-variadic macro using the BOOST_PP_VARIADIC_ELEM
macro in the library.<br>
macro. The first of these is to pass the individual tokens of the
variadic data separately to the non-variadic macro using the
BOOST_PP_VARIADIC_ELEM macro in the library.<br>
</div>
<h4>Example<u> - Passing individual variadic data tokens to
a
<h4>Example<u> - Passing individual variadic data tokens to a
non-variadic macro.<br>
</u></h4>
<div class="code">
<div class="code">
<pre>#define MACRO_ARG_2(x,y) BOOST_PP_ADD(x,y)<br>#define VAR_MACRO(...) __VA_ARGS__<br><br>/* The following will work correctly */<br><br>int xx = MACRO_ARG_2<br> (<br> BOOST_PP_VARIADIC_ELEM(0,VAR_MACRO(2,3)),<br> BOOST_PP_VARIADIC_ELEM(1,VAR_MACRO(2,3))<br> );</pre>
</div>
<div>The second way is to use a macro in the library called
BOOST_PP_OVERLOAD.
This macro allows one to "overload" a variadic macro to non-variadic
macros of different numbers of parameters, using a common prefix.
</div>
BOOST_PP_OVERLOAD. This macro allows one to "overload" a variadic
macro to non-variadic macros of different numbers of parameters,
using a common prefix. </div>
<h4>Example<u> - Passing variadic data as a whole to
BOOST_PP_OVERLOAD
and on to a non-variadic macro.<br>
BOOST_PP_OVERLOAD and on to a non-variadic macro.<br>
</u></h4>
<div class="code">
<pre>#define MACRO_ARG_2(x,y) BOOST_PP_ADD(x,y)<br>#define VAR_MACRO(...) __VA_ARGS__<br><br>/* The following will work correctly */<br><br>int xx = BOOST_PP_OVERLOAD(MACRO_ARG_,VAR_MACRO(2,3))(VAR_MACRO(2,3));<br><br>/* For Visual C++ it is necessary to do this */<br><br>int xx = <br>BOOST_PP_CAT(BOOST_PP_OVERLOAD(MACRO_ARG_,VAR_MACRO(2,3))(VAR_MACRO(2,3)),BOOST_PP_EMPTY());</pre>
<div class="code">
<pre>#define MACRO_ARG_2(x,y) BOOST_PP_ADD(x,y)<br>#define VAR_MACRO(...) __VA_ARGS__<br><br>/* The following will work correctly */<br><br>int xx = BOOST_PP_OVERLOAD(MACRO_ARG_,VAR_MACRO(2,3))(VAR_MACRO(2,3));<br><br>/* For Visual C++'s default preprocessor it is necessary to do this */<br><br>int xx = <br>BOOST_PP_CAT(BOOST_PP_OVERLOAD(MACRO_ARG_,VAR_MACRO(2,3))(VAR_MACRO(2,3)),BOOST_PP_EMPTY());</pre>
</div>
<br>
<div>Although these techniques will work when passing variadic
data to
non-variadic macros, it is much better and less problematical to
work internally with the existing library data types and to only use
variadic
macros as an interface for end-users when there is a need to have a
macro which takes a
variable number of parameters.<br>
<div>Although these techniques will work when passing variadic data
to non-variadic macros, it is much better and less problematical
to work internally with the existing library data types and to
only use variadic macros as an interface for end-users when there
is a need to have a macro which takes a variable number of
parameters.<br>
</div>
<b>See</b> <b>Also</b><br>
<ul>
<li><a href="../ref/variadics.html">BOOST_PP_VARIADICS</a></li>
<li><a href="../headers/tuple.html">Tuple Macros</a><br>
<li><a href="../headers/tuple.html">Tuple Macros</a><br>
</li>
<li><a href="../headers/variadic.html">Variadic
Macros<br>
<li><a href="../headers/variadic.html">Variadic Macros<br>
</a></li>
<li><a href="../ref/array_enum.html">BOOST_PP_ARRAY_ENUM</a></li>
<li><a href="../ref/list_enum_r.html">BOOST_PP_LIST_ENUM</a></li>
<li><a href="../ref/seq_enum.html">BOOST_PP_SEQ_ENUM</a></li>
<li><a href="../ref/tuple_enum.html">BOOST_PP_TUPLE_ENUM</a></li>
<li><a href="../ref/overload.html">BOOST_PP_OVERLOAD</a></li>
<li><a href="../ref/array_enum.html">BOOST_PP_ARRAY_ENUM</a></li>
<li><a href="../ref/list_enum_r.html">BOOST_PP_LIST_ENUM</a></li>
<li><a href="../ref/seq_enum.html">BOOST_PP_SEQ_ENUM</a></li>
<li><a href="../ref/tuple_enum.html">BOOST_PP_TUPLE_ENUM</a></li>
<li><a href="../ref/overload.html">BOOST_PP_OVERLOAD</a></li>
</ul>
<hr size="1">
<div style="margin-left: 0px;"> <i><EFBFBD> Copyright
Edward Diener
<hr size="1">
<div style="margin-left: 0px;"> <i><EFBFBD> Copyright Edward Diener
2011,2013,2016</i> </div>
<div style="margin-left: 0px;">
<p><small>Distributed under the Boost Software License,
Version 1.0.
(See accompanying file <a href="../../../../LICENSE_1_0.txt">LICENSE_1_0.txt</a>
or copy at <a href="http://www.boost.org/LICENSE_1_0.txt">www.boost.org/LICENSE_1_0.txt</a>)</small></p>
<div style="margin-left: 0px;">
<p><small>Distributed under the Boost Software License, Version
1.0. (See accompanying file <a
href="../../../../LICENSE_1_0.txt">LICENSE_1_0.txt</a> or
copy at <a href="http://www.boost.org/LICENSE_1_0.txt">www.boost.org/LICENSE_1_0.txt</a>)</small></p>
</div>
</body>
</html>
</html>

View File

@ -8,15 +8,19 @@
# */
#
# /* Revised by Paul Mensonides (2002) */
# /* Revised by Edward Diener (2020) */
#
# /* See http://www.boost.org for most recent version. */
#
# ifndef BOOST_PREPROCESSOR_ARITHMETIC_ADD_HPP
# define BOOST_PREPROCESSOR_ARITHMETIC_ADD_HPP
#
# include <boost/preprocessor/config/config.hpp>
#
# if ~BOOST_PP_CONFIG_FLAGS() & BOOST_PP_CONFIG_STRICT()
#
# include <boost/preprocessor/arithmetic/dec.hpp>
# include <boost/preprocessor/arithmetic/inc.hpp>
# include <boost/preprocessor/config/config.hpp>
# include <boost/preprocessor/control/while.hpp>
# include <boost/preprocessor/tuple/elem.hpp>
#
@ -48,4 +52,53 @@
# define BOOST_PP_ADD_D_I(d, x, y) BOOST_PP_TUPLE_ELEM(2, 0, BOOST_PP_WHILE_ ## d(BOOST_PP_ADD_P, BOOST_PP_ADD_O, (x, y)))
# endif
#
# else
#
# include <boost/preprocessor/arithmetic/dec.hpp>
# include <boost/preprocessor/arithmetic/inc.hpp>
# include <boost/preprocessor/control/iif.hpp>
# include <boost/preprocessor/control/while.hpp>
# include <boost/preprocessor/facilities/identity.hpp>
# include <boost/preprocessor/logical/bitand.hpp>
# include <boost/preprocessor/logical/bitor.hpp>
# include <boost/preprocessor/logical/bool.hpp>
# include <boost/preprocessor/logical/compl.hpp>
# include <boost/preprocessor/tuple/elem.hpp>
# include <boost/preprocessor/arithmetic/detail/is_maximum_number.hpp>
# include <boost/preprocessor/arithmetic/detail/is_minimum_number.hpp>
#
# /* BOOST_PP_ADD */
#
# define BOOST_PP_ADD(x, y) BOOST_PP_IIF(BOOST_PP_BITOR(BOOST_PP_DETAIL_IS_MAXIMUM_NUMBER(y),BOOST_PP_DETAIL_IS_MINIMUM_NUMBER(x)),BOOST_PP_IDENTITY_N(y,2),BOOST_PP_ADD_DO)(x,y)
#
# if ~BOOST_PP_CONFIG_FLAGS() & BOOST_PP_CONFIG_EDG()
# define BOOST_PP_ADD_DO(x, y) BOOST_PP_TUPLE_ELEM(2, 0, BOOST_PP_WHILE(BOOST_PP_ADD_P, BOOST_PP_ADD_O, (x, y)))
# else
# define BOOST_PP_ADD_DO(x, y) BOOST_PP_ADD_I(x, y)
# define BOOST_PP_ADD_I(x, y) BOOST_PP_TUPLE_ELEM(2, 0, BOOST_PP_WHILE(BOOST_PP_ADD_P, BOOST_PP_ADD_O, (x, y)))
# endif
#
# define BOOST_PP_ADD_P(d, xy) BOOST_PP_BITAND(BOOST_PP_BOOL(BOOST_PP_TUPLE_ELEM(2, 1, xy)),BOOST_PP_COMPL(BOOST_PP_DETAIL_IS_MAXIMUM_NUMBER(BOOST_PP_TUPLE_ELEM(2, 0, xy))))
#
# if ~BOOST_PP_CONFIG_FLAGS() & BOOST_PP_CONFIG_MWCC()
# define BOOST_PP_ADD_O(d, xy) BOOST_PP_ADD_O_I xy
# else
# define BOOST_PP_ADD_O(d, xy) BOOST_PP_ADD_O_I(BOOST_PP_TUPLE_ELEM(2, 0, xy), BOOST_PP_TUPLE_ELEM(2, 1, xy))
# endif
#
# define BOOST_PP_ADD_O_I(x, y) (BOOST_PP_INC(x), BOOST_PP_DEC(y))
#
# /* BOOST_PP_ADD_D */
#
# define BOOST_PP_ADD_D(d, x, y) BOOST_PP_IIF(BOOST_PP_BITOR(BOOST_PP_DETAIL_IS_MAXIMUM_NUMBER(y),BOOST_PP_DETAIL_IS_MINIMUM_NUMBER(x)),BOOST_PP_IDENTITY_N(y,3),BOOST_PP_ADD_DO_D)(d,x,y)
#
# if ~BOOST_PP_CONFIG_FLAGS() & BOOST_PP_CONFIG_EDG()
# define BOOST_PP_ADD_DO_D(d, x, y) BOOST_PP_TUPLE_ELEM(2, 0, BOOST_PP_WHILE_ ## d(BOOST_PP_ADD_P, BOOST_PP_ADD_O, (x, y)))
# else
# define BOOST_PP_ADD_DO_D(d, x, y) BOOST_PP_ADD_D_I(d, x, y)
# define BOOST_PP_ADD_D_I(d, x, y) BOOST_PP_TUPLE_ELEM(2, 0, BOOST_PP_WHILE_ ## d(BOOST_PP_ADD_P, BOOST_PP_ADD_O, (x, y)))
# endif
#
# endif
#
# endif

View File

@ -8,6 +8,7 @@
# */
#
# /* Revised by Paul Mensonides (2002) */
# /* Revised by Edward Diener (2020) */
#
# /* See http://www.boost.org for most recent version. */
#
@ -16,6 +17,8 @@
#
# include <boost/preprocessor/config/config.hpp>
#
# if ~BOOST_PP_CONFIG_FLAGS() & BOOST_PP_CONFIG_STRICT()
#
# /* BOOST_PP_DEC */
#
# if ~BOOST_PP_CONFIG_FLAGS() & BOOST_PP_CONFIG_MWCC()
@ -286,4 +289,34 @@
# define BOOST_PP_DEC_256 255
# define BOOST_PP_DEC_257 256
#
# else
#
# /* BOOST_PP_DEC */
#
# if ~BOOST_PP_CONFIG_FLAGS() & BOOST_PP_CONFIG_MWCC()
# define BOOST_PP_DEC(x) BOOST_PP_DEC_I(x)
# else
# define BOOST_PP_DEC(x) BOOST_PP_DEC_OO((x))
# define BOOST_PP_DEC_OO(par) BOOST_PP_DEC_I ## par
# endif
#
# define BOOST_PP_DEC_I(x) BOOST_PP_DEC_ ## x
#
# include <boost/preprocessor/config/limits.hpp>
#
# if BOOST_PP_LIMIT_MAG == 256
# include <boost/preprocessor/arithmetic/limits/dec_256.hpp>
# elif BOOST_PP_LIMIT_MAG == 512
# include <boost/preprocessor/arithmetic/limits/dec_256.hpp>
# include <boost/preprocessor/arithmetic/limits/dec_512.hpp>
# elif BOOST_PP_LIMIT_MAG == 1024
# include <boost/preprocessor/arithmetic/limits/dec_256.hpp>
# include <boost/preprocessor/arithmetic/limits/dec_512.hpp>
# include <boost/preprocessor/arithmetic/limits/dec_1024.hpp>
# else
# error Incorrect value for the BOOST_PP_LIMIT_MAG limit
# endif
#
# endif
#
# endif

View File

@ -0,0 +1,21 @@
# /* **************************************************************************
# * *
# * (C) Copyright Edward Diener 2020. *
# * Distributed under the Boost Software License, Version 1.0. (See *
# * accompanying file LICENSE_1_0.txt or copy at *
# * http://www.boost.org/LICENSE_1_0.txt) *
# * *
# ************************************************************************** */
#
# /* See http://www.boost.org for most recent version. */
#
# ifndef BOOST_PREPROCESSOR_ARITHMETIC_DETAIL_IS_1_NUMBER_HPP
# define BOOST_PREPROCESSOR_ARITHMETIC_DETAIL_IS_1_NUMBER_HPP
#
# /* BOOST_PP_DETAIL_IS_1_NUMBER */
#
# include <boost/preprocessor/comparison/equal.hpp>
#
# define BOOST_PP_DETAIL_IS_1_NUMBER(x) BOOST_PP_EQUAL(x,1)
#
# endif

View File

@ -0,0 +1,22 @@
# /* **************************************************************************
# * *
# * (C) Copyright Edward Diener 2020. *
# * Distributed under the Boost Software License, Version 1.0. (See *
# * accompanying file LICENSE_1_0.txt or copy at *
# * http://www.boost.org/LICENSE_1_0.txt) *
# * *
# ************************************************************************** */
#
# /* See http://www.boost.org for most recent version. */
#
# ifndef BOOST_PREPROCESSOR_ARITHMETIC_DETAIL_IS_MAXIMUM_NUMBER_HPP
# define BOOST_PREPROCESSOR_ARITHMETIC_DETAIL_IS_MAXIMUM_NUMBER_HPP
#
# /* BOOST_PP_DETAIL_IS_MAXIMUM_NUMBER */
#
# include <boost/preprocessor/comparison/equal.hpp>
# include <boost/preprocessor/arithmetic/detail/maximum_number.hpp>
#
# define BOOST_PP_DETAIL_IS_MAXIMUM_NUMBER(x) BOOST_PP_EQUAL(x,BOOST_PP_DETAIL_MAXIMUM_NUMBER)
#
# endif

View File

@ -0,0 +1,21 @@
# /* **************************************************************************
# * *
# * (C) Copyright Edward Diener 2020. *
# * Distributed under the Boost Software License, Version 1.0. (See *
# * accompanying file LICENSE_1_0.txt or copy at *
# * http://www.boost.org/LICENSE_1_0.txt) *
# * *
# ************************************************************************** */
#
# /* See http://www.boost.org for most recent version. */
#
# ifndef BOOST_PREPROCESSOR_ARITHMETIC_DETAIL_IS_MINIMUM_NUMBER_HPP
# define BOOST_PREPROCESSOR_ARITHMETIC_DETAIL_IS_MINIMUM_NUMBER_HPP
#
# /* BOOST_PP_DETAIL_IS_MINIMUM_NUMBER */
#
# include <boost/preprocessor/logical/not.hpp>
#
# define BOOST_PP_DETAIL_IS_MINIMUM_NUMBER(x) BOOST_PP_NOT(x)
#
# endif

View File

@ -0,0 +1,19 @@
# /* **************************************************************************
# * *
# * (C) Copyright Edward Diener 2020. *
# * Distributed under the Boost Software License, Version 1.0. (See *
# * accompanying file LICENSE_1_0.txt or copy at *
# * http://www.boost.org/LICENSE_1_0.txt) *
# * *
# ************************************************************************** */
#
# /* See http://www.boost.org for most recent version. */
#
# ifndef BOOST_PREPROCESSOR_ARITHMETIC_DETAIL_MAXIMUM_NUMBER_HPP
# define BOOST_PREPROCESSOR_ARITHMETIC_DETAIL_MAXIMUM_NUMBER_HPP
#
# include <boost/preprocessor/config/limits.hpp>
#
# define BOOST_PP_DETAIL_MAXIMUM_NUMBER BOOST_PP_LIMIT_MAG
#
# endif

View File

@ -8,14 +8,18 @@
# */
#
# /* Revised by Paul Mensonides (2002) */
# /* Revised by Edward Diener (2020) */
#
# /* See http://www.boost.org for most recent version. */
#
# ifndef BOOST_PREPROCESSOR_ARITHMETIC_DIV_HPP
# define BOOST_PREPROCESSOR_ARITHMETIC_DIV_HPP
#
# include <boost/preprocessor/arithmetic/detail/div_base.hpp>
# include <boost/preprocessor/config/config.hpp>
#
# if ~BOOST_PP_CONFIG_FLAGS() & BOOST_PP_CONFIG_STRICT()
#
# include <boost/preprocessor/arithmetic/detail/div_base.hpp>
# include <boost/preprocessor/tuple/elem.hpp>
#
# /* BOOST_PP_DIV */
@ -36,4 +40,36 @@
# define BOOST_PP_DIV_D_I(d, x, y) BOOST_PP_TUPLE_ELEM(3, 0, BOOST_PP_DIV_BASE_D(d, x, y))
# endif
#
# else
#
# include <boost/preprocessor/arithmetic/detail/div_base.hpp>
# include <boost/preprocessor/control/iif.hpp>
# include <boost/preprocessor/facilities/identity.hpp>
# include <boost/preprocessor/tuple/elem.hpp>
# include <boost/preprocessor/arithmetic/detail/is_1_number.hpp>
#
# /* BOOST_PP_DIV */
#
# define BOOST_PP_DIV(x, y) BOOST_PP_IIF(BOOST_PP_DETAIL_IS_1_NUMBER(y),BOOST_PP_IDENTITY_N(x,2),BOOST_PP_DIV_DO)(x,y)
#
# if ~BOOST_PP_CONFIG_FLAGS() & BOOST_PP_CONFIG_EDG()
# define BOOST_PP_DIV_DO(x, y) BOOST_PP_TUPLE_ELEM(3, 0, BOOST_PP_DIV_BASE(x, y))
# else
# define BOOST_PP_DIV_DO(x, y) BOOST_PP_DIV_I(x, y)
# define BOOST_PP_DIV_I(x, y) BOOST_PP_TUPLE_ELEM(3, 0, BOOST_PP_DIV_BASE(x, y))
# endif
#
# /* BOOST_PP_DIV_D */
#
# define BOOST_PP_DIV_D(d, x, y) BOOST_PP_IIF(BOOST_PP_DETAIL_IS_1_NUMBER(y),BOOST_PP_IDENTITY_N(x,3),BOOST_PP_DIV_DO_D)(d,x,y)
#
# if ~BOOST_PP_CONFIG_FLAGS() & BOOST_PP_CONFIG_EDG()
# define BOOST_PP_DIV_DO_D(d, x, y) BOOST_PP_TUPLE_ELEM(3, 0, BOOST_PP_DIV_BASE_D(d, x, y))
# else
# define BOOST_PP_DIV_DO_D(d, x, y) BOOST_PP_DIV_D_I(d, x, y)
# define BOOST_PP_DIV_D_I(d, x, y) BOOST_PP_TUPLE_ELEM(3, 0, BOOST_PP_DIV_BASE_D(d, x, y))
# endif
#
# endif
#
# endif

View File

@ -8,6 +8,7 @@
# */
#
# /* Revised by Paul Mensonides (2002) */
# /* Revised by Edward Diener (2020) */
#
# /* See http://www.boost.org for most recent version. */
#
@ -16,6 +17,8 @@
#
# include <boost/preprocessor/config/config.hpp>
#
# if ~BOOST_PP_CONFIG_FLAGS() & BOOST_PP_CONFIG_STRICT()
#
# /* BOOST_PP_INC */
#
# if ~BOOST_PP_CONFIG_FLAGS() & BOOST_PP_CONFIG_MWCC()
@ -285,4 +288,34 @@
# define BOOST_PP_INC_255 256
# define BOOST_PP_INC_256 256
#
# else
#
# /* BOOST_PP_INC */
#
# if ~BOOST_PP_CONFIG_FLAGS() & BOOST_PP_CONFIG_MWCC()
# define BOOST_PP_INC(x) BOOST_PP_INC_I(x)
# else
# define BOOST_PP_INC(x) BOOST_PP_INC_OO((x))
# define BOOST_PP_INC_OO(par) BOOST_PP_INC_I ## par
# endif
#
# define BOOST_PP_INC_I(x) BOOST_PP_INC_ ## x
#
# include <boost/preprocessor/config/limits.hpp>
#
# if BOOST_PP_LIMIT_MAG == 256
# include <boost/preprocessor/arithmetic/limits/inc_256.hpp>
# elif BOOST_PP_LIMIT_MAG == 512
# include <boost/preprocessor/arithmetic/limits/inc_256.hpp>
# include <boost/preprocessor/arithmetic/limits/inc_512.hpp>
# elif BOOST_PP_LIMIT_MAG == 1024
# include <boost/preprocessor/arithmetic/limits/inc_256.hpp>
# include <boost/preprocessor/arithmetic/limits/inc_512.hpp>
# include <boost/preprocessor/arithmetic/limits/inc_1024.hpp>
# else
# error Incorrect value for the BOOST_PP_LIMIT_MAG limit
# endif
#
# endif
#
# endif

View File

@ -0,0 +1,531 @@
# /* Copyright (C) 2001
# * Housemarque Oy
# * http://www.housemarque.com
# *
# * Distributed under the Boost Software License, Version 1.0. (See
# * accompanying file LICENSE_1_0.txt or copy at
# * http://www.boost.org/LICENSE_1_0.txt)
# */
#
# /* Revised by Paul Mensonides (2002) */
# /* Revised by Edward Diener (2020) */
#
# /* See http://www.boost.org for most recent version. */
#
# ifndef BOOST_PREPROCESSOR_ARITHMETIC_DEC_1024_HPP
# define BOOST_PREPROCESSOR_ARITHMETIC_DEC_1024_HPP
#
# define BOOST_PP_DEC_514 513
# define BOOST_PP_DEC_515 514
# define BOOST_PP_DEC_516 515
# define BOOST_PP_DEC_517 516
# define BOOST_PP_DEC_518 517
# define BOOST_PP_DEC_519 518
# define BOOST_PP_DEC_520 519
# define BOOST_PP_DEC_521 520
# define BOOST_PP_DEC_522 521
# define BOOST_PP_DEC_523 522
# define BOOST_PP_DEC_524 523
# define BOOST_PP_DEC_525 524
# define BOOST_PP_DEC_526 525
# define BOOST_PP_DEC_527 526
# define BOOST_PP_DEC_528 527
# define BOOST_PP_DEC_529 528
# define BOOST_PP_DEC_530 529
# define BOOST_PP_DEC_531 530
# define BOOST_PP_DEC_532 531
# define BOOST_PP_DEC_533 532
# define BOOST_PP_DEC_534 533
# define BOOST_PP_DEC_535 534
# define BOOST_PP_DEC_536 535
# define BOOST_PP_DEC_537 536
# define BOOST_PP_DEC_538 537
# define BOOST_PP_DEC_539 538
# define BOOST_PP_DEC_540 539
# define BOOST_PP_DEC_541 540
# define BOOST_PP_DEC_542 541
# define BOOST_PP_DEC_543 542
# define BOOST_PP_DEC_544 543
# define BOOST_PP_DEC_545 544
# define BOOST_PP_DEC_546 545
# define BOOST_PP_DEC_547 546
# define BOOST_PP_DEC_548 547
# define BOOST_PP_DEC_549 548
# define BOOST_PP_DEC_550 549
# define BOOST_PP_DEC_551 550
# define BOOST_PP_DEC_552 551
# define BOOST_PP_DEC_553 552
# define BOOST_PP_DEC_554 553
# define BOOST_PP_DEC_555 554
# define BOOST_PP_DEC_556 555
# define BOOST_PP_DEC_557 556
# define BOOST_PP_DEC_558 557
# define BOOST_PP_DEC_559 558
# define BOOST_PP_DEC_560 559
# define BOOST_PP_DEC_561 560
# define BOOST_PP_DEC_562 561
# define BOOST_PP_DEC_563 562
# define BOOST_PP_DEC_564 563
# define BOOST_PP_DEC_565 564
# define BOOST_PP_DEC_566 565
# define BOOST_PP_DEC_567 566
# define BOOST_PP_DEC_568 567
# define BOOST_PP_DEC_569 568
# define BOOST_PP_DEC_570 569
# define BOOST_PP_DEC_571 570
# define BOOST_PP_DEC_572 571
# define BOOST_PP_DEC_573 572
# define BOOST_PP_DEC_574 573
# define BOOST_PP_DEC_575 574
# define BOOST_PP_DEC_576 575
# define BOOST_PP_DEC_577 576
# define BOOST_PP_DEC_578 577
# define BOOST_PP_DEC_579 578
# define BOOST_PP_DEC_580 579
# define BOOST_PP_DEC_581 580
# define BOOST_PP_DEC_582 581
# define BOOST_PP_DEC_583 582
# define BOOST_PP_DEC_584 583
# define BOOST_PP_DEC_585 584
# define BOOST_PP_DEC_586 585
# define BOOST_PP_DEC_587 586
# define BOOST_PP_DEC_588 587
# define BOOST_PP_DEC_589 588
# define BOOST_PP_DEC_590 589
# define BOOST_PP_DEC_591 590
# define BOOST_PP_DEC_592 591
# define BOOST_PP_DEC_593 592
# define BOOST_PP_DEC_594 593
# define BOOST_PP_DEC_595 594
# define BOOST_PP_DEC_596 595
# define BOOST_PP_DEC_597 596
# define BOOST_PP_DEC_598 597
# define BOOST_PP_DEC_599 598
# define BOOST_PP_DEC_600 599
# define BOOST_PP_DEC_601 600
# define BOOST_PP_DEC_602 601
# define BOOST_PP_DEC_603 602
# define BOOST_PP_DEC_604 603
# define BOOST_PP_DEC_605 604
# define BOOST_PP_DEC_606 605
# define BOOST_PP_DEC_607 606
# define BOOST_PP_DEC_608 607
# define BOOST_PP_DEC_609 608
# define BOOST_PP_DEC_610 609
# define BOOST_PP_DEC_611 610
# define BOOST_PP_DEC_612 611
# define BOOST_PP_DEC_613 612
# define BOOST_PP_DEC_614 613
# define BOOST_PP_DEC_615 614
# define BOOST_PP_DEC_616 615
# define BOOST_PP_DEC_617 616
# define BOOST_PP_DEC_618 617
# define BOOST_PP_DEC_619 618
# define BOOST_PP_DEC_620 619
# define BOOST_PP_DEC_621 620
# define BOOST_PP_DEC_622 621
# define BOOST_PP_DEC_623 622
# define BOOST_PP_DEC_624 623
# define BOOST_PP_DEC_625 624
# define BOOST_PP_DEC_626 625
# define BOOST_PP_DEC_627 626
# define BOOST_PP_DEC_628 627
# define BOOST_PP_DEC_629 628
# define BOOST_PP_DEC_630 629
# define BOOST_PP_DEC_631 630
# define BOOST_PP_DEC_632 631
# define BOOST_PP_DEC_633 632
# define BOOST_PP_DEC_634 633
# define BOOST_PP_DEC_635 634
# define BOOST_PP_DEC_636 635
# define BOOST_PP_DEC_637 636
# define BOOST_PP_DEC_638 637
# define BOOST_PP_DEC_639 638
# define BOOST_PP_DEC_640 639
# define BOOST_PP_DEC_641 640
# define BOOST_PP_DEC_642 641
# define BOOST_PP_DEC_643 642
# define BOOST_PP_DEC_644 643
# define BOOST_PP_DEC_645 644
# define BOOST_PP_DEC_646 645
# define BOOST_PP_DEC_647 646
# define BOOST_PP_DEC_648 647
# define BOOST_PP_DEC_649 648
# define BOOST_PP_DEC_650 649
# define BOOST_PP_DEC_651 650
# define BOOST_PP_DEC_652 651
# define BOOST_PP_DEC_653 652
# define BOOST_PP_DEC_654 653
# define BOOST_PP_DEC_655 654
# define BOOST_PP_DEC_656 655
# define BOOST_PP_DEC_657 656
# define BOOST_PP_DEC_658 657
# define BOOST_PP_DEC_659 658
# define BOOST_PP_DEC_660 659
# define BOOST_PP_DEC_661 660
# define BOOST_PP_DEC_662 661
# define BOOST_PP_DEC_663 662
# define BOOST_PP_DEC_664 663
# define BOOST_PP_DEC_665 664
# define BOOST_PP_DEC_666 665
# define BOOST_PP_DEC_667 666
# define BOOST_PP_DEC_668 667
# define BOOST_PP_DEC_669 668
# define BOOST_PP_DEC_670 669
# define BOOST_PP_DEC_671 670
# define BOOST_PP_DEC_672 671
# define BOOST_PP_DEC_673 672
# define BOOST_PP_DEC_674 673
# define BOOST_PP_DEC_675 674
# define BOOST_PP_DEC_676 675
# define BOOST_PP_DEC_677 676
# define BOOST_PP_DEC_678 677
# define BOOST_PP_DEC_679 678
# define BOOST_PP_DEC_680 679
# define BOOST_PP_DEC_681 680
# define BOOST_PP_DEC_682 681
# define BOOST_PP_DEC_683 682
# define BOOST_PP_DEC_684 683
# define BOOST_PP_DEC_685 684
# define BOOST_PP_DEC_686 685
# define BOOST_PP_DEC_687 686
# define BOOST_PP_DEC_688 687
# define BOOST_PP_DEC_689 688
# define BOOST_PP_DEC_690 689
# define BOOST_PP_DEC_691 690
# define BOOST_PP_DEC_692 691
# define BOOST_PP_DEC_693 692
# define BOOST_PP_DEC_694 693
# define BOOST_PP_DEC_695 694
# define BOOST_PP_DEC_696 695
# define BOOST_PP_DEC_697 696
# define BOOST_PP_DEC_698 697
# define BOOST_PP_DEC_699 698
# define BOOST_PP_DEC_700 699
# define BOOST_PP_DEC_701 700
# define BOOST_PP_DEC_702 701
# define BOOST_PP_DEC_703 702
# define BOOST_PP_DEC_704 703
# define BOOST_PP_DEC_705 704
# define BOOST_PP_DEC_706 705
# define BOOST_PP_DEC_707 706
# define BOOST_PP_DEC_708 707
# define BOOST_PP_DEC_709 708
# define BOOST_PP_DEC_710 709
# define BOOST_PP_DEC_711 710
# define BOOST_PP_DEC_712 711
# define BOOST_PP_DEC_713 712
# define BOOST_PP_DEC_714 713
# define BOOST_PP_DEC_715 714
# define BOOST_PP_DEC_716 715
# define BOOST_PP_DEC_717 716
# define BOOST_PP_DEC_718 717
# define BOOST_PP_DEC_719 718
# define BOOST_PP_DEC_720 719
# define BOOST_PP_DEC_721 720
# define BOOST_PP_DEC_722 721
# define BOOST_PP_DEC_723 722
# define BOOST_PP_DEC_724 723
# define BOOST_PP_DEC_725 724
# define BOOST_PP_DEC_726 725
# define BOOST_PP_DEC_727 726
# define BOOST_PP_DEC_728 727
# define BOOST_PP_DEC_729 728
# define BOOST_PP_DEC_730 729
# define BOOST_PP_DEC_731 730
# define BOOST_PP_DEC_732 731
# define BOOST_PP_DEC_733 732
# define BOOST_PP_DEC_734 733
# define BOOST_PP_DEC_735 734
# define BOOST_PP_DEC_736 735
# define BOOST_PP_DEC_737 736
# define BOOST_PP_DEC_738 737
# define BOOST_PP_DEC_739 738
# define BOOST_PP_DEC_740 739
# define BOOST_PP_DEC_741 740
# define BOOST_PP_DEC_742 741
# define BOOST_PP_DEC_743 742
# define BOOST_PP_DEC_744 743
# define BOOST_PP_DEC_745 744
# define BOOST_PP_DEC_746 745
# define BOOST_PP_DEC_747 746
# define BOOST_PP_DEC_748 747
# define BOOST_PP_DEC_749 748
# define BOOST_PP_DEC_750 749
# define BOOST_PP_DEC_751 750
# define BOOST_PP_DEC_752 751
# define BOOST_PP_DEC_753 752
# define BOOST_PP_DEC_754 753
# define BOOST_PP_DEC_755 754
# define BOOST_PP_DEC_756 755
# define BOOST_PP_DEC_757 756
# define BOOST_PP_DEC_758 757
# define BOOST_PP_DEC_759 758
# define BOOST_PP_DEC_760 759
# define BOOST_PP_DEC_761 760
# define BOOST_PP_DEC_762 761
# define BOOST_PP_DEC_763 762
# define BOOST_PP_DEC_764 763
# define BOOST_PP_DEC_765 764
# define BOOST_PP_DEC_766 765
# define BOOST_PP_DEC_767 766
# define BOOST_PP_DEC_768 767
# define BOOST_PP_DEC_769 768
# define BOOST_PP_DEC_770 769
# define BOOST_PP_DEC_771 770
# define BOOST_PP_DEC_772 771
# define BOOST_PP_DEC_773 772
# define BOOST_PP_DEC_774 773
# define BOOST_PP_DEC_775 774
# define BOOST_PP_DEC_776 775
# define BOOST_PP_DEC_777 776
# define BOOST_PP_DEC_778 777
# define BOOST_PP_DEC_779 778
# define BOOST_PP_DEC_780 779
# define BOOST_PP_DEC_781 780
# define BOOST_PP_DEC_782 781
# define BOOST_PP_DEC_783 782
# define BOOST_PP_DEC_784 783
# define BOOST_PP_DEC_785 784
# define BOOST_PP_DEC_786 785
# define BOOST_PP_DEC_787 786
# define BOOST_PP_DEC_788 787
# define BOOST_PP_DEC_789 788
# define BOOST_PP_DEC_790 789
# define BOOST_PP_DEC_791 790
# define BOOST_PP_DEC_792 791
# define BOOST_PP_DEC_793 792
# define BOOST_PP_DEC_794 793
# define BOOST_PP_DEC_795 794
# define BOOST_PP_DEC_796 795
# define BOOST_PP_DEC_797 796
# define BOOST_PP_DEC_798 797
# define BOOST_PP_DEC_799 798
# define BOOST_PP_DEC_800 799
# define BOOST_PP_DEC_801 800
# define BOOST_PP_DEC_802 801
# define BOOST_PP_DEC_803 802
# define BOOST_PP_DEC_804 803
# define BOOST_PP_DEC_805 804
# define BOOST_PP_DEC_806 805
# define BOOST_PP_DEC_807 806
# define BOOST_PP_DEC_808 807
# define BOOST_PP_DEC_809 808
# define BOOST_PP_DEC_810 809
# define BOOST_PP_DEC_811 810
# define BOOST_PP_DEC_812 811
# define BOOST_PP_DEC_813 812
# define BOOST_PP_DEC_814 813
# define BOOST_PP_DEC_815 814
# define BOOST_PP_DEC_816 815
# define BOOST_PP_DEC_817 816
# define BOOST_PP_DEC_818 817
# define BOOST_PP_DEC_819 818
# define BOOST_PP_DEC_820 819
# define BOOST_PP_DEC_821 820
# define BOOST_PP_DEC_822 821
# define BOOST_PP_DEC_823 822
# define BOOST_PP_DEC_824 823
# define BOOST_PP_DEC_825 824
# define BOOST_PP_DEC_826 825
# define BOOST_PP_DEC_827 826
# define BOOST_PP_DEC_828 827
# define BOOST_PP_DEC_829 828
# define BOOST_PP_DEC_830 829
# define BOOST_PP_DEC_831 830
# define BOOST_PP_DEC_832 831
# define BOOST_PP_DEC_833 832
# define BOOST_PP_DEC_834 833
# define BOOST_PP_DEC_835 834
# define BOOST_PP_DEC_836 835
# define BOOST_PP_DEC_837 836
# define BOOST_PP_DEC_838 837
# define BOOST_PP_DEC_839 838
# define BOOST_PP_DEC_840 839
# define BOOST_PP_DEC_841 840
# define BOOST_PP_DEC_842 841
# define BOOST_PP_DEC_843 842
# define BOOST_PP_DEC_844 843
# define BOOST_PP_DEC_845 844
# define BOOST_PP_DEC_846 845
# define BOOST_PP_DEC_847 846
# define BOOST_PP_DEC_848 847
# define BOOST_PP_DEC_849 848
# define BOOST_PP_DEC_850 849
# define BOOST_PP_DEC_851 850
# define BOOST_PP_DEC_852 851
# define BOOST_PP_DEC_853 852
# define BOOST_PP_DEC_854 853
# define BOOST_PP_DEC_855 854
# define BOOST_PP_DEC_856 855
# define BOOST_PP_DEC_857 856
# define BOOST_PP_DEC_858 857
# define BOOST_PP_DEC_859 858
# define BOOST_PP_DEC_860 859
# define BOOST_PP_DEC_861 860
# define BOOST_PP_DEC_862 861
# define BOOST_PP_DEC_863 862
# define BOOST_PP_DEC_864 863
# define BOOST_PP_DEC_865 864
# define BOOST_PP_DEC_866 865
# define BOOST_PP_DEC_867 866
# define BOOST_PP_DEC_868 867
# define BOOST_PP_DEC_869 868
# define BOOST_PP_DEC_870 869
# define BOOST_PP_DEC_871 870
# define BOOST_PP_DEC_872 871
# define BOOST_PP_DEC_873 872
# define BOOST_PP_DEC_874 873
# define BOOST_PP_DEC_875 874
# define BOOST_PP_DEC_876 875
# define BOOST_PP_DEC_877 876
# define BOOST_PP_DEC_878 877
# define BOOST_PP_DEC_879 878
# define BOOST_PP_DEC_880 879
# define BOOST_PP_DEC_881 880
# define BOOST_PP_DEC_882 881
# define BOOST_PP_DEC_883 882
# define BOOST_PP_DEC_884 883
# define BOOST_PP_DEC_885 884
# define BOOST_PP_DEC_886 885
# define BOOST_PP_DEC_887 886
# define BOOST_PP_DEC_888 887
# define BOOST_PP_DEC_889 888
# define BOOST_PP_DEC_890 889
# define BOOST_PP_DEC_891 890
# define BOOST_PP_DEC_892 891
# define BOOST_PP_DEC_893 892
# define BOOST_PP_DEC_894 893
# define BOOST_PP_DEC_895 894
# define BOOST_PP_DEC_896 895
# define BOOST_PP_DEC_897 896
# define BOOST_PP_DEC_898 897
# define BOOST_PP_DEC_899 898
# define BOOST_PP_DEC_900 899
# define BOOST_PP_DEC_901 900
# define BOOST_PP_DEC_902 901
# define BOOST_PP_DEC_903 902
# define BOOST_PP_DEC_904 903
# define BOOST_PP_DEC_905 904
# define BOOST_PP_DEC_906 905
# define BOOST_PP_DEC_907 906
# define BOOST_PP_DEC_908 907
# define BOOST_PP_DEC_909 908
# define BOOST_PP_DEC_910 909
# define BOOST_PP_DEC_911 910
# define BOOST_PP_DEC_912 911
# define BOOST_PP_DEC_913 912
# define BOOST_PP_DEC_914 913
# define BOOST_PP_DEC_915 914
# define BOOST_PP_DEC_916 915
# define BOOST_PP_DEC_917 916
# define BOOST_PP_DEC_918 917
# define BOOST_PP_DEC_919 918
# define BOOST_PP_DEC_920 919
# define BOOST_PP_DEC_921 920
# define BOOST_PP_DEC_922 921
# define BOOST_PP_DEC_923 922
# define BOOST_PP_DEC_924 923
# define BOOST_PP_DEC_925 924
# define BOOST_PP_DEC_926 925
# define BOOST_PP_DEC_927 926
# define BOOST_PP_DEC_928 927
# define BOOST_PP_DEC_929 928
# define BOOST_PP_DEC_930 929
# define BOOST_PP_DEC_931 930
# define BOOST_PP_DEC_932 931
# define BOOST_PP_DEC_933 932
# define BOOST_PP_DEC_934 933
# define BOOST_PP_DEC_935 934
# define BOOST_PP_DEC_936 935
# define BOOST_PP_DEC_937 936
# define BOOST_PP_DEC_938 937
# define BOOST_PP_DEC_939 938
# define BOOST_PP_DEC_940 939
# define BOOST_PP_DEC_941 940
# define BOOST_PP_DEC_942 941
# define BOOST_PP_DEC_943 942
# define BOOST_PP_DEC_944 943
# define BOOST_PP_DEC_945 944
# define BOOST_PP_DEC_946 945
# define BOOST_PP_DEC_947 946
# define BOOST_PP_DEC_948 947
# define BOOST_PP_DEC_949 948
# define BOOST_PP_DEC_950 949
# define BOOST_PP_DEC_951 950
# define BOOST_PP_DEC_952 951
# define BOOST_PP_DEC_953 952
# define BOOST_PP_DEC_954 953
# define BOOST_PP_DEC_955 954
# define BOOST_PP_DEC_956 955
# define BOOST_PP_DEC_957 956
# define BOOST_PP_DEC_958 957
# define BOOST_PP_DEC_959 958
# define BOOST_PP_DEC_960 959
# define BOOST_PP_DEC_961 960
# define BOOST_PP_DEC_962 961
# define BOOST_PP_DEC_963 962
# define BOOST_PP_DEC_964 963
# define BOOST_PP_DEC_965 964
# define BOOST_PP_DEC_966 965
# define BOOST_PP_DEC_967 966
# define BOOST_PP_DEC_968 967
# define BOOST_PP_DEC_969 968
# define BOOST_PP_DEC_970 969
# define BOOST_PP_DEC_971 970
# define BOOST_PP_DEC_972 971
# define BOOST_PP_DEC_973 972
# define BOOST_PP_DEC_974 973
# define BOOST_PP_DEC_975 974
# define BOOST_PP_DEC_976 975
# define BOOST_PP_DEC_977 976
# define BOOST_PP_DEC_978 977
# define BOOST_PP_DEC_979 978
# define BOOST_PP_DEC_980 979
# define BOOST_PP_DEC_981 980
# define BOOST_PP_DEC_982 981
# define BOOST_PP_DEC_983 982
# define BOOST_PP_DEC_984 983
# define BOOST_PP_DEC_985 984
# define BOOST_PP_DEC_986 985
# define BOOST_PP_DEC_987 986
# define BOOST_PP_DEC_988 987
# define BOOST_PP_DEC_989 988
# define BOOST_PP_DEC_990 989
# define BOOST_PP_DEC_991 990
# define BOOST_PP_DEC_992 991
# define BOOST_PP_DEC_993 992
# define BOOST_PP_DEC_994 993
# define BOOST_PP_DEC_995 994
# define BOOST_PP_DEC_996 995
# define BOOST_PP_DEC_997 996
# define BOOST_PP_DEC_998 997
# define BOOST_PP_DEC_999 998
# define BOOST_PP_DEC_1000 999
# define BOOST_PP_DEC_1001 1000
# define BOOST_PP_DEC_1002 1001
# define BOOST_PP_DEC_1003 1002
# define BOOST_PP_DEC_1004 1003
# define BOOST_PP_DEC_1005 1004
# define BOOST_PP_DEC_1006 1005
# define BOOST_PP_DEC_1007 1006
# define BOOST_PP_DEC_1008 1007
# define BOOST_PP_DEC_1009 1008
# define BOOST_PP_DEC_1010 1009
# define BOOST_PP_DEC_1011 1010
# define BOOST_PP_DEC_1012 1011
# define BOOST_PP_DEC_1013 1012
# define BOOST_PP_DEC_1014 1013
# define BOOST_PP_DEC_1015 1014
# define BOOST_PP_DEC_1016 1015
# define BOOST_PP_DEC_1017 1016
# define BOOST_PP_DEC_1018 1017
# define BOOST_PP_DEC_1019 1018
# define BOOST_PP_DEC_1020 1019
# define BOOST_PP_DEC_1021 1020
# define BOOST_PP_DEC_1022 1021
# define BOOST_PP_DEC_1023 1022
# define BOOST_PP_DEC_1024 1023
# define BOOST_PP_DEC_1025 1024
#
# endif

View File

@ -0,0 +1,276 @@
# /* Copyright (C) 2001
# * Housemarque Oy
# * http://www.housemarque.com
# *
# * Distributed under the Boost Software License, Version 1.0. (See
# * accompanying file LICENSE_1_0.txt or copy at
# * http://www.boost.org/LICENSE_1_0.txt)
# */
#
# /* Revised by Paul Mensonides (2002) */
#
# /* See http://www.boost.org for most recent version. */
#
# ifndef BOOST_PREPROCESSOR_ARITHMETIC_DEC_256_HPP
# define BOOST_PREPROCESSOR_ARITHMETIC_DEC_256_HPP
#
# define BOOST_PP_DEC_0 0
# define BOOST_PP_DEC_1 0
# define BOOST_PP_DEC_2 1
# define BOOST_PP_DEC_3 2
# define BOOST_PP_DEC_4 3
# define BOOST_PP_DEC_5 4
# define BOOST_PP_DEC_6 5
# define BOOST_PP_DEC_7 6
# define BOOST_PP_DEC_8 7
# define BOOST_PP_DEC_9 8
# define BOOST_PP_DEC_10 9
# define BOOST_PP_DEC_11 10
# define BOOST_PP_DEC_12 11
# define BOOST_PP_DEC_13 12
# define BOOST_PP_DEC_14 13
# define BOOST_PP_DEC_15 14
# define BOOST_PP_DEC_16 15
# define BOOST_PP_DEC_17 16
# define BOOST_PP_DEC_18 17
# define BOOST_PP_DEC_19 18
# define BOOST_PP_DEC_20 19
# define BOOST_PP_DEC_21 20
# define BOOST_PP_DEC_22 21
# define BOOST_PP_DEC_23 22
# define BOOST_PP_DEC_24 23
# define BOOST_PP_DEC_25 24
# define BOOST_PP_DEC_26 25
# define BOOST_PP_DEC_27 26
# define BOOST_PP_DEC_28 27
# define BOOST_PP_DEC_29 28
# define BOOST_PP_DEC_30 29
# define BOOST_PP_DEC_31 30
# define BOOST_PP_DEC_32 31
# define BOOST_PP_DEC_33 32
# define BOOST_PP_DEC_34 33
# define BOOST_PP_DEC_35 34
# define BOOST_PP_DEC_36 35
# define BOOST_PP_DEC_37 36
# define BOOST_PP_DEC_38 37
# define BOOST_PP_DEC_39 38
# define BOOST_PP_DEC_40 39
# define BOOST_PP_DEC_41 40
# define BOOST_PP_DEC_42 41
# define BOOST_PP_DEC_43 42
# define BOOST_PP_DEC_44 43
# define BOOST_PP_DEC_45 44
# define BOOST_PP_DEC_46 45
# define BOOST_PP_DEC_47 46
# define BOOST_PP_DEC_48 47
# define BOOST_PP_DEC_49 48
# define BOOST_PP_DEC_50 49
# define BOOST_PP_DEC_51 50
# define BOOST_PP_DEC_52 51
# define BOOST_PP_DEC_53 52
# define BOOST_PP_DEC_54 53
# define BOOST_PP_DEC_55 54
# define BOOST_PP_DEC_56 55
# define BOOST_PP_DEC_57 56
# define BOOST_PP_DEC_58 57
# define BOOST_PP_DEC_59 58
# define BOOST_PP_DEC_60 59
# define BOOST_PP_DEC_61 60
# define BOOST_PP_DEC_62 61
# define BOOST_PP_DEC_63 62
# define BOOST_PP_DEC_64 63
# define BOOST_PP_DEC_65 64
# define BOOST_PP_DEC_66 65
# define BOOST_PP_DEC_67 66
# define BOOST_PP_DEC_68 67
# define BOOST_PP_DEC_69 68
# define BOOST_PP_DEC_70 69
# define BOOST_PP_DEC_71 70
# define BOOST_PP_DEC_72 71
# define BOOST_PP_DEC_73 72
# define BOOST_PP_DEC_74 73
# define BOOST_PP_DEC_75 74
# define BOOST_PP_DEC_76 75
# define BOOST_PP_DEC_77 76
# define BOOST_PP_DEC_78 77
# define BOOST_PP_DEC_79 78
# define BOOST_PP_DEC_80 79
# define BOOST_PP_DEC_81 80
# define BOOST_PP_DEC_82 81
# define BOOST_PP_DEC_83 82
# define BOOST_PP_DEC_84 83
# define BOOST_PP_DEC_85 84
# define BOOST_PP_DEC_86 85
# define BOOST_PP_DEC_87 86
# define BOOST_PP_DEC_88 87
# define BOOST_PP_DEC_89 88
# define BOOST_PP_DEC_90 89
# define BOOST_PP_DEC_91 90
# define BOOST_PP_DEC_92 91
# define BOOST_PP_DEC_93 92
# define BOOST_PP_DEC_94 93
# define BOOST_PP_DEC_95 94
# define BOOST_PP_DEC_96 95
# define BOOST_PP_DEC_97 96
# define BOOST_PP_DEC_98 97
# define BOOST_PP_DEC_99 98
# define BOOST_PP_DEC_100 99
# define BOOST_PP_DEC_101 100
# define BOOST_PP_DEC_102 101
# define BOOST_PP_DEC_103 102
# define BOOST_PP_DEC_104 103
# define BOOST_PP_DEC_105 104
# define BOOST_PP_DEC_106 105
# define BOOST_PP_DEC_107 106
# define BOOST_PP_DEC_108 107
# define BOOST_PP_DEC_109 108
# define BOOST_PP_DEC_110 109
# define BOOST_PP_DEC_111 110
# define BOOST_PP_DEC_112 111
# define BOOST_PP_DEC_113 112
# define BOOST_PP_DEC_114 113
# define BOOST_PP_DEC_115 114
# define BOOST_PP_DEC_116 115
# define BOOST_PP_DEC_117 116
# define BOOST_PP_DEC_118 117
# define BOOST_PP_DEC_119 118
# define BOOST_PP_DEC_120 119
# define BOOST_PP_DEC_121 120
# define BOOST_PP_DEC_122 121
# define BOOST_PP_DEC_123 122
# define BOOST_PP_DEC_124 123
# define BOOST_PP_DEC_125 124
# define BOOST_PP_DEC_126 125
# define BOOST_PP_DEC_127 126
# define BOOST_PP_DEC_128 127
# define BOOST_PP_DEC_129 128
# define BOOST_PP_DEC_130 129
# define BOOST_PP_DEC_131 130
# define BOOST_PP_DEC_132 131
# define BOOST_PP_DEC_133 132
# define BOOST_PP_DEC_134 133
# define BOOST_PP_DEC_135 134
# define BOOST_PP_DEC_136 135
# define BOOST_PP_DEC_137 136
# define BOOST_PP_DEC_138 137
# define BOOST_PP_DEC_139 138
# define BOOST_PP_DEC_140 139
# define BOOST_PP_DEC_141 140
# define BOOST_PP_DEC_142 141
# define BOOST_PP_DEC_143 142
# define BOOST_PP_DEC_144 143
# define BOOST_PP_DEC_145 144
# define BOOST_PP_DEC_146 145
# define BOOST_PP_DEC_147 146
# define BOOST_PP_DEC_148 147
# define BOOST_PP_DEC_149 148
# define BOOST_PP_DEC_150 149
# define BOOST_PP_DEC_151 150
# define BOOST_PP_DEC_152 151
# define BOOST_PP_DEC_153 152
# define BOOST_PP_DEC_154 153
# define BOOST_PP_DEC_155 154
# define BOOST_PP_DEC_156 155
# define BOOST_PP_DEC_157 156
# define BOOST_PP_DEC_158 157
# define BOOST_PP_DEC_159 158
# define BOOST_PP_DEC_160 159
# define BOOST_PP_DEC_161 160
# define BOOST_PP_DEC_162 161
# define BOOST_PP_DEC_163 162
# define BOOST_PP_DEC_164 163
# define BOOST_PP_DEC_165 164
# define BOOST_PP_DEC_166 165
# define BOOST_PP_DEC_167 166
# define BOOST_PP_DEC_168 167
# define BOOST_PP_DEC_169 168
# define BOOST_PP_DEC_170 169
# define BOOST_PP_DEC_171 170
# define BOOST_PP_DEC_172 171
# define BOOST_PP_DEC_173 172
# define BOOST_PP_DEC_174 173
# define BOOST_PP_DEC_175 174
# define BOOST_PP_DEC_176 175
# define BOOST_PP_DEC_177 176
# define BOOST_PP_DEC_178 177
# define BOOST_PP_DEC_179 178
# define BOOST_PP_DEC_180 179
# define BOOST_PP_DEC_181 180
# define BOOST_PP_DEC_182 181
# define BOOST_PP_DEC_183 182
# define BOOST_PP_DEC_184 183
# define BOOST_PP_DEC_185 184
# define BOOST_PP_DEC_186 185
# define BOOST_PP_DEC_187 186
# define BOOST_PP_DEC_188 187
# define BOOST_PP_DEC_189 188
# define BOOST_PP_DEC_190 189
# define BOOST_PP_DEC_191 190
# define BOOST_PP_DEC_192 191
# define BOOST_PP_DEC_193 192
# define BOOST_PP_DEC_194 193
# define BOOST_PP_DEC_195 194
# define BOOST_PP_DEC_196 195
# define BOOST_PP_DEC_197 196
# define BOOST_PP_DEC_198 197
# define BOOST_PP_DEC_199 198
# define BOOST_PP_DEC_200 199
# define BOOST_PP_DEC_201 200
# define BOOST_PP_DEC_202 201
# define BOOST_PP_DEC_203 202
# define BOOST_PP_DEC_204 203
# define BOOST_PP_DEC_205 204
# define BOOST_PP_DEC_206 205
# define BOOST_PP_DEC_207 206
# define BOOST_PP_DEC_208 207
# define BOOST_PP_DEC_209 208
# define BOOST_PP_DEC_210 209
# define BOOST_PP_DEC_211 210
# define BOOST_PP_DEC_212 211
# define BOOST_PP_DEC_213 212
# define BOOST_PP_DEC_214 213
# define BOOST_PP_DEC_215 214
# define BOOST_PP_DEC_216 215
# define BOOST_PP_DEC_217 216
# define BOOST_PP_DEC_218 217
# define BOOST_PP_DEC_219 218
# define BOOST_PP_DEC_220 219
# define BOOST_PP_DEC_221 220
# define BOOST_PP_DEC_222 221
# define BOOST_PP_DEC_223 222
# define BOOST_PP_DEC_224 223
# define BOOST_PP_DEC_225 224
# define BOOST_PP_DEC_226 225
# define BOOST_PP_DEC_227 226
# define BOOST_PP_DEC_228 227
# define BOOST_PP_DEC_229 228
# define BOOST_PP_DEC_230 229
# define BOOST_PP_DEC_231 230
# define BOOST_PP_DEC_232 231
# define BOOST_PP_DEC_233 232
# define BOOST_PP_DEC_234 233
# define BOOST_PP_DEC_235 234
# define BOOST_PP_DEC_236 235
# define BOOST_PP_DEC_237 236
# define BOOST_PP_DEC_238 237
# define BOOST_PP_DEC_239 238
# define BOOST_PP_DEC_240 239
# define BOOST_PP_DEC_241 240
# define BOOST_PP_DEC_242 241
# define BOOST_PP_DEC_243 242
# define BOOST_PP_DEC_244 243
# define BOOST_PP_DEC_245 244
# define BOOST_PP_DEC_246 245
# define BOOST_PP_DEC_247 246
# define BOOST_PP_DEC_248 247
# define BOOST_PP_DEC_249 248
# define BOOST_PP_DEC_250 249
# define BOOST_PP_DEC_251 250
# define BOOST_PP_DEC_252 251
# define BOOST_PP_DEC_253 252
# define BOOST_PP_DEC_254 253
# define BOOST_PP_DEC_255 254
# define BOOST_PP_DEC_256 255
# define BOOST_PP_DEC_257 256
#
# endif

View File

@ -0,0 +1,275 @@
# /* Copyright (C) 2001
# * Housemarque Oy
# * http://www.housemarque.com
# *
# * Distributed under the Boost Software License, Version 1.0. (See
# * accompanying file LICENSE_1_0.txt or copy at
# * http://www.boost.org/LICENSE_1_0.txt)
# */
#
# /* Revised by Paul Mensonides (2002) */
# /* Revised by Edward Diener (2020) */
#
# /* See http://www.boost.org for most recent version. */
#
# ifndef BOOST_PREPROCESSOR_ARITHMETIC_DEC_512_HPP
# define BOOST_PREPROCESSOR_ARITHMETIC_DEC_512_HPP
#
# define BOOST_PP_DEC_258 257
# define BOOST_PP_DEC_259 258
# define BOOST_PP_DEC_260 259
# define BOOST_PP_DEC_261 260
# define BOOST_PP_DEC_262 261
# define BOOST_PP_DEC_263 262
# define BOOST_PP_DEC_264 263
# define BOOST_PP_DEC_265 264
# define BOOST_PP_DEC_266 265
# define BOOST_PP_DEC_267 266
# define BOOST_PP_DEC_268 267
# define BOOST_PP_DEC_269 268
# define BOOST_PP_DEC_270 269
# define BOOST_PP_DEC_271 270
# define BOOST_PP_DEC_272 271
# define BOOST_PP_DEC_273 272
# define BOOST_PP_DEC_274 273
# define BOOST_PP_DEC_275 274
# define BOOST_PP_DEC_276 275
# define BOOST_PP_DEC_277 276
# define BOOST_PP_DEC_278 277
# define BOOST_PP_DEC_279 278
# define BOOST_PP_DEC_280 279
# define BOOST_PP_DEC_281 280
# define BOOST_PP_DEC_282 281
# define BOOST_PP_DEC_283 282
# define BOOST_PP_DEC_284 283
# define BOOST_PP_DEC_285 284
# define BOOST_PP_DEC_286 285
# define BOOST_PP_DEC_287 286
# define BOOST_PP_DEC_288 287
# define BOOST_PP_DEC_289 288
# define BOOST_PP_DEC_290 289
# define BOOST_PP_DEC_291 290
# define BOOST_PP_DEC_292 291
# define BOOST_PP_DEC_293 292
# define BOOST_PP_DEC_294 293
# define BOOST_PP_DEC_295 294
# define BOOST_PP_DEC_296 295
# define BOOST_PP_DEC_297 296
# define BOOST_PP_DEC_298 297
# define BOOST_PP_DEC_299 298
# define BOOST_PP_DEC_300 299
# define BOOST_PP_DEC_301 300
# define BOOST_PP_DEC_302 301
# define BOOST_PP_DEC_303 302
# define BOOST_PP_DEC_304 303
# define BOOST_PP_DEC_305 304
# define BOOST_PP_DEC_306 305
# define BOOST_PP_DEC_307 306
# define BOOST_PP_DEC_308 307
# define BOOST_PP_DEC_309 308
# define BOOST_PP_DEC_310 309
# define BOOST_PP_DEC_311 310
# define BOOST_PP_DEC_312 311
# define BOOST_PP_DEC_313 312
# define BOOST_PP_DEC_314 313
# define BOOST_PP_DEC_315 314
# define BOOST_PP_DEC_316 315
# define BOOST_PP_DEC_317 316
# define BOOST_PP_DEC_318 317
# define BOOST_PP_DEC_319 318
# define BOOST_PP_DEC_320 319
# define BOOST_PP_DEC_321 320
# define BOOST_PP_DEC_322 321
# define BOOST_PP_DEC_323 322
# define BOOST_PP_DEC_324 323
# define BOOST_PP_DEC_325 324
# define BOOST_PP_DEC_326 325
# define BOOST_PP_DEC_327 326
# define BOOST_PP_DEC_328 327
# define BOOST_PP_DEC_329 328
# define BOOST_PP_DEC_330 329
# define BOOST_PP_DEC_331 330
# define BOOST_PP_DEC_332 331
# define BOOST_PP_DEC_333 332
# define BOOST_PP_DEC_334 333
# define BOOST_PP_DEC_335 334
# define BOOST_PP_DEC_336 335
# define BOOST_PP_DEC_337 336
# define BOOST_PP_DEC_338 337
# define BOOST_PP_DEC_339 338
# define BOOST_PP_DEC_340 339
# define BOOST_PP_DEC_341 340
# define BOOST_PP_DEC_342 341
# define BOOST_PP_DEC_343 342
# define BOOST_PP_DEC_344 343
# define BOOST_PP_DEC_345 344
# define BOOST_PP_DEC_346 345
# define BOOST_PP_DEC_347 346
# define BOOST_PP_DEC_348 347
# define BOOST_PP_DEC_349 348
# define BOOST_PP_DEC_350 349
# define BOOST_PP_DEC_351 350
# define BOOST_PP_DEC_352 351
# define BOOST_PP_DEC_353 352
# define BOOST_PP_DEC_354 353
# define BOOST_PP_DEC_355 354
# define BOOST_PP_DEC_356 355
# define BOOST_PP_DEC_357 356
# define BOOST_PP_DEC_358 357
# define BOOST_PP_DEC_359 358
# define BOOST_PP_DEC_360 359
# define BOOST_PP_DEC_361 360
# define BOOST_PP_DEC_362 361
# define BOOST_PP_DEC_363 362
# define BOOST_PP_DEC_364 363
# define BOOST_PP_DEC_365 364
# define BOOST_PP_DEC_366 365
# define BOOST_PP_DEC_367 366
# define BOOST_PP_DEC_368 367
# define BOOST_PP_DEC_369 368
# define BOOST_PP_DEC_370 369
# define BOOST_PP_DEC_371 370
# define BOOST_PP_DEC_372 371
# define BOOST_PP_DEC_373 372
# define BOOST_PP_DEC_374 373
# define BOOST_PP_DEC_375 374
# define BOOST_PP_DEC_376 375
# define BOOST_PP_DEC_377 376
# define BOOST_PP_DEC_378 377
# define BOOST_PP_DEC_379 378
# define BOOST_PP_DEC_380 379
# define BOOST_PP_DEC_381 380
# define BOOST_PP_DEC_382 381
# define BOOST_PP_DEC_383 382
# define BOOST_PP_DEC_384 383
# define BOOST_PP_DEC_385 384
# define BOOST_PP_DEC_386 385
# define BOOST_PP_DEC_387 386
# define BOOST_PP_DEC_388 387
# define BOOST_PP_DEC_389 388
# define BOOST_PP_DEC_390 389
# define BOOST_PP_DEC_391 390
# define BOOST_PP_DEC_392 391
# define BOOST_PP_DEC_393 392
# define BOOST_PP_DEC_394 393
# define BOOST_PP_DEC_395 394
# define BOOST_PP_DEC_396 395
# define BOOST_PP_DEC_397 396
# define BOOST_PP_DEC_398 397
# define BOOST_PP_DEC_399 398
# define BOOST_PP_DEC_400 399
# define BOOST_PP_DEC_401 400
# define BOOST_PP_DEC_402 401
# define BOOST_PP_DEC_403 402
# define BOOST_PP_DEC_404 403
# define BOOST_PP_DEC_405 404
# define BOOST_PP_DEC_406 405
# define BOOST_PP_DEC_407 406
# define BOOST_PP_DEC_408 407
# define BOOST_PP_DEC_409 408
# define BOOST_PP_DEC_410 409
# define BOOST_PP_DEC_411 410
# define BOOST_PP_DEC_412 411
# define BOOST_PP_DEC_413 412
# define BOOST_PP_DEC_414 413
# define BOOST_PP_DEC_415 414
# define BOOST_PP_DEC_416 415
# define BOOST_PP_DEC_417 416
# define BOOST_PP_DEC_418 417
# define BOOST_PP_DEC_419 418
# define BOOST_PP_DEC_420 419
# define BOOST_PP_DEC_421 420
# define BOOST_PP_DEC_422 421
# define BOOST_PP_DEC_423 422
# define BOOST_PP_DEC_424 423
# define BOOST_PP_DEC_425 424
# define BOOST_PP_DEC_426 425
# define BOOST_PP_DEC_427 426
# define BOOST_PP_DEC_428 427
# define BOOST_PP_DEC_429 428
# define BOOST_PP_DEC_430 429
# define BOOST_PP_DEC_431 430
# define BOOST_PP_DEC_432 431
# define BOOST_PP_DEC_433 432
# define BOOST_PP_DEC_434 433
# define BOOST_PP_DEC_435 434
# define BOOST_PP_DEC_436 435
# define BOOST_PP_DEC_437 436
# define BOOST_PP_DEC_438 437
# define BOOST_PP_DEC_439 438
# define BOOST_PP_DEC_440 439
# define BOOST_PP_DEC_441 440
# define BOOST_PP_DEC_442 441
# define BOOST_PP_DEC_443 442
# define BOOST_PP_DEC_444 443
# define BOOST_PP_DEC_445 444
# define BOOST_PP_DEC_446 445
# define BOOST_PP_DEC_447 446
# define BOOST_PP_DEC_448 447
# define BOOST_PP_DEC_449 448
# define BOOST_PP_DEC_450 449
# define BOOST_PP_DEC_451 450
# define BOOST_PP_DEC_452 451
# define BOOST_PP_DEC_453 452
# define BOOST_PP_DEC_454 453
# define BOOST_PP_DEC_455 454
# define BOOST_PP_DEC_456 455
# define BOOST_PP_DEC_457 456
# define BOOST_PP_DEC_458 457
# define BOOST_PP_DEC_459 458
# define BOOST_PP_DEC_460 459
# define BOOST_PP_DEC_461 460
# define BOOST_PP_DEC_462 461
# define BOOST_PP_DEC_463 462
# define BOOST_PP_DEC_464 463
# define BOOST_PP_DEC_465 464
# define BOOST_PP_DEC_466 465
# define BOOST_PP_DEC_467 466
# define BOOST_PP_DEC_468 467
# define BOOST_PP_DEC_469 468
# define BOOST_PP_DEC_470 469
# define BOOST_PP_DEC_471 470
# define BOOST_PP_DEC_472 471
# define BOOST_PP_DEC_473 472
# define BOOST_PP_DEC_474 473
# define BOOST_PP_DEC_475 474
# define BOOST_PP_DEC_476 475
# define BOOST_PP_DEC_477 476
# define BOOST_PP_DEC_478 477
# define BOOST_PP_DEC_479 478
# define BOOST_PP_DEC_480 479
# define BOOST_PP_DEC_481 480
# define BOOST_PP_DEC_482 481
# define BOOST_PP_DEC_483 482
# define BOOST_PP_DEC_484 483
# define BOOST_PP_DEC_485 484
# define BOOST_PP_DEC_486 485
# define BOOST_PP_DEC_487 486
# define BOOST_PP_DEC_488 487
# define BOOST_PP_DEC_489 488
# define BOOST_PP_DEC_490 489
# define BOOST_PP_DEC_491 490
# define BOOST_PP_DEC_492 491
# define BOOST_PP_DEC_493 492
# define BOOST_PP_DEC_494 493
# define BOOST_PP_DEC_495 494
# define BOOST_PP_DEC_496 495
# define BOOST_PP_DEC_497 496
# define BOOST_PP_DEC_498 497
# define BOOST_PP_DEC_499 498
# define BOOST_PP_DEC_500 499
# define BOOST_PP_DEC_501 500
# define BOOST_PP_DEC_502 501
# define BOOST_PP_DEC_503 502
# define BOOST_PP_DEC_504 503
# define BOOST_PP_DEC_505 504
# define BOOST_PP_DEC_506 505
# define BOOST_PP_DEC_507 506
# define BOOST_PP_DEC_508 507
# define BOOST_PP_DEC_509 508
# define BOOST_PP_DEC_510 509
# define BOOST_PP_DEC_511 510
# define BOOST_PP_DEC_512 511
# define BOOST_PP_DEC_513 512
#
# endif

View File

@ -0,0 +1,536 @@
# /* Copyright (C) 2001
# * Housemarque Oy
# * http://www.housemarque.com
# *
# * Distributed under the Boost Software License, Version 1.0. (See
# * accompanying file LICENSE_1_0.txt or copy at
# * http://www.boost.org/LICENSE_1_0.txt)
# */
#
# /* Revised by Paul Mensonides (2002) */
# /* Revised by Edward Diener (2020) */
#
# /* See http://www.boost.org for most recent version. */
#
# ifndef BOOST_PREPROCESSOR_ARITHMETIC_INC_1024_HPP
# define BOOST_PREPROCESSOR_ARITHMETIC_INC_1024_HPP
#
# if defined(BOOST_PP_INC_512)
# undef BOOST_PP_INC_512
# endif
#
# define BOOST_PP_INC_512 513
# define BOOST_PP_INC_513 514
# define BOOST_PP_INC_514 515
# define BOOST_PP_INC_515 516
# define BOOST_PP_INC_516 517
# define BOOST_PP_INC_517 518
# define BOOST_PP_INC_518 519
# define BOOST_PP_INC_519 520
# define BOOST_PP_INC_520 521
# define BOOST_PP_INC_521 522
# define BOOST_PP_INC_522 523
# define BOOST_PP_INC_523 524
# define BOOST_PP_INC_524 525
# define BOOST_PP_INC_525 526
# define BOOST_PP_INC_526 527
# define BOOST_PP_INC_527 528
# define BOOST_PP_INC_528 529
# define BOOST_PP_INC_529 530
# define BOOST_PP_INC_530 531
# define BOOST_PP_INC_531 532
# define BOOST_PP_INC_532 533
# define BOOST_PP_INC_533 534
# define BOOST_PP_INC_534 535
# define BOOST_PP_INC_535 536
# define BOOST_PP_INC_536 537
# define BOOST_PP_INC_537 538
# define BOOST_PP_INC_538 539
# define BOOST_PP_INC_539 540
# define BOOST_PP_INC_540 541
# define BOOST_PP_INC_541 542
# define BOOST_PP_INC_542 543
# define BOOST_PP_INC_543 544
# define BOOST_PP_INC_544 545
# define BOOST_PP_INC_545 546
# define BOOST_PP_INC_546 547
# define BOOST_PP_INC_547 548
# define BOOST_PP_INC_548 549
# define BOOST_PP_INC_549 550
# define BOOST_PP_INC_550 551
# define BOOST_PP_INC_551 552
# define BOOST_PP_INC_552 553
# define BOOST_PP_INC_553 554
# define BOOST_PP_INC_554 555
# define BOOST_PP_INC_555 556
# define BOOST_PP_INC_556 557
# define BOOST_PP_INC_557 558
# define BOOST_PP_INC_558 559
# define BOOST_PP_INC_559 560
# define BOOST_PP_INC_560 561
# define BOOST_PP_INC_561 562
# define BOOST_PP_INC_562 563
# define BOOST_PP_INC_563 564
# define BOOST_PP_INC_564 565
# define BOOST_PP_INC_565 566
# define BOOST_PP_INC_566 567
# define BOOST_PP_INC_567 568
# define BOOST_PP_INC_568 569
# define BOOST_PP_INC_569 570
# define BOOST_PP_INC_570 571
# define BOOST_PP_INC_571 572
# define BOOST_PP_INC_572 573
# define BOOST_PP_INC_573 574
# define BOOST_PP_INC_574 575
# define BOOST_PP_INC_575 576
# define BOOST_PP_INC_576 577
# define BOOST_PP_INC_577 578
# define BOOST_PP_INC_578 579
# define BOOST_PP_INC_579 580
# define BOOST_PP_INC_580 581
# define BOOST_PP_INC_581 582
# define BOOST_PP_INC_582 583
# define BOOST_PP_INC_583 584
# define BOOST_PP_INC_584 585
# define BOOST_PP_INC_585 586
# define BOOST_PP_INC_586 587
# define BOOST_PP_INC_587 588
# define BOOST_PP_INC_588 589
# define BOOST_PP_INC_589 590
# define BOOST_PP_INC_590 591
# define BOOST_PP_INC_591 592
# define BOOST_PP_INC_592 593
# define BOOST_PP_INC_593 594
# define BOOST_PP_INC_594 595
# define BOOST_PP_INC_595 596
# define BOOST_PP_INC_596 597
# define BOOST_PP_INC_597 598
# define BOOST_PP_INC_598 599
# define BOOST_PP_INC_599 600
# define BOOST_PP_INC_600 601
# define BOOST_PP_INC_601 602
# define BOOST_PP_INC_602 603
# define BOOST_PP_INC_603 604
# define BOOST_PP_INC_604 605
# define BOOST_PP_INC_605 606
# define BOOST_PP_INC_606 607
# define BOOST_PP_INC_607 608
# define BOOST_PP_INC_608 609
# define BOOST_PP_INC_609 610
# define BOOST_PP_INC_610 611
# define BOOST_PP_INC_611 612
# define BOOST_PP_INC_612 613
# define BOOST_PP_INC_613 614
# define BOOST_PP_INC_614 615
# define BOOST_PP_INC_615 616
# define BOOST_PP_INC_616 617
# define BOOST_PP_INC_617 618
# define BOOST_PP_INC_618 619
# define BOOST_PP_INC_619 620
# define BOOST_PP_INC_620 621
# define BOOST_PP_INC_621 622
# define BOOST_PP_INC_622 623
# define BOOST_PP_INC_623 624
# define BOOST_PP_INC_624 625
# define BOOST_PP_INC_625 626
# define BOOST_PP_INC_626 627
# define BOOST_PP_INC_627 628
# define BOOST_PP_INC_628 629
# define BOOST_PP_INC_629 630
# define BOOST_PP_INC_630 631
# define BOOST_PP_INC_631 632
# define BOOST_PP_INC_632 633
# define BOOST_PP_INC_633 634
# define BOOST_PP_INC_634 635
# define BOOST_PP_INC_635 636
# define BOOST_PP_INC_636 637
# define BOOST_PP_INC_637 638
# define BOOST_PP_INC_638 639
# define BOOST_PP_INC_639 640
# define BOOST_PP_INC_640 641
# define BOOST_PP_INC_641 642
# define BOOST_PP_INC_642 643
# define BOOST_PP_INC_643 644
# define BOOST_PP_INC_644 645
# define BOOST_PP_INC_645 646
# define BOOST_PP_INC_646 647
# define BOOST_PP_INC_647 648
# define BOOST_PP_INC_648 649
# define BOOST_PP_INC_649 650
# define BOOST_PP_INC_650 651
# define BOOST_PP_INC_651 652
# define BOOST_PP_INC_652 653
# define BOOST_PP_INC_653 654
# define BOOST_PP_INC_654 655
# define BOOST_PP_INC_655 656
# define BOOST_PP_INC_656 657
# define BOOST_PP_INC_657 658
# define BOOST_PP_INC_658 659
# define BOOST_PP_INC_659 660
# define BOOST_PP_INC_660 661
# define BOOST_PP_INC_661 662
# define BOOST_PP_INC_662 663
# define BOOST_PP_INC_663 664
# define BOOST_PP_INC_664 665
# define BOOST_PP_INC_665 666
# define BOOST_PP_INC_666 667
# define BOOST_PP_INC_667 668
# define BOOST_PP_INC_668 669
# define BOOST_PP_INC_669 670
# define BOOST_PP_INC_670 671
# define BOOST_PP_INC_671 672
# define BOOST_PP_INC_672 673
# define BOOST_PP_INC_673 674
# define BOOST_PP_INC_674 675
# define BOOST_PP_INC_675 676
# define BOOST_PP_INC_676 677
# define BOOST_PP_INC_677 678
# define BOOST_PP_INC_678 679
# define BOOST_PP_INC_679 680
# define BOOST_PP_INC_680 681
# define BOOST_PP_INC_681 682
# define BOOST_PP_INC_682 683
# define BOOST_PP_INC_683 684
# define BOOST_PP_INC_684 685
# define BOOST_PP_INC_685 686
# define BOOST_PP_INC_686 687
# define BOOST_PP_INC_687 688
# define BOOST_PP_INC_688 689
# define BOOST_PP_INC_689 690
# define BOOST_PP_INC_690 691
# define BOOST_PP_INC_691 692
# define BOOST_PP_INC_692 693
# define BOOST_PP_INC_693 694
# define BOOST_PP_INC_694 695
# define BOOST_PP_INC_695 696
# define BOOST_PP_INC_696 697
# define BOOST_PP_INC_697 698
# define BOOST_PP_INC_698 699
# define BOOST_PP_INC_699 700
# define BOOST_PP_INC_700 701
# define BOOST_PP_INC_701 702
# define BOOST_PP_INC_702 703
# define BOOST_PP_INC_703 704
# define BOOST_PP_INC_704 705
# define BOOST_PP_INC_705 706
# define BOOST_PP_INC_706 707
# define BOOST_PP_INC_707 708
# define BOOST_PP_INC_708 709
# define BOOST_PP_INC_709 710
# define BOOST_PP_INC_710 711
# define BOOST_PP_INC_711 712
# define BOOST_PP_INC_712 713
# define BOOST_PP_INC_713 714
# define BOOST_PP_INC_714 715
# define BOOST_PP_INC_715 716
# define BOOST_PP_INC_716 717
# define BOOST_PP_INC_717 718
# define BOOST_PP_INC_718 719
# define BOOST_PP_INC_719 720
# define BOOST_PP_INC_720 721
# define BOOST_PP_INC_721 722
# define BOOST_PP_INC_722 723
# define BOOST_PP_INC_723 724
# define BOOST_PP_INC_724 725
# define BOOST_PP_INC_725 726
# define BOOST_PP_INC_726 727
# define BOOST_PP_INC_727 728
# define BOOST_PP_INC_728 729
# define BOOST_PP_INC_729 730
# define BOOST_PP_INC_730 731
# define BOOST_PP_INC_731 732
# define BOOST_PP_INC_732 733
# define BOOST_PP_INC_733 734
# define BOOST_PP_INC_734 735
# define BOOST_PP_INC_735 736
# define BOOST_PP_INC_736 737
# define BOOST_PP_INC_737 738
# define BOOST_PP_INC_738 739
# define BOOST_PP_INC_739 740
# define BOOST_PP_INC_740 741
# define BOOST_PP_INC_741 742
# define BOOST_PP_INC_742 743
# define BOOST_PP_INC_743 744
# define BOOST_PP_INC_744 745
# define BOOST_PP_INC_745 746
# define BOOST_PP_INC_746 747
# define BOOST_PP_INC_747 748
# define BOOST_PP_INC_748 749
# define BOOST_PP_INC_749 750
# define BOOST_PP_INC_750 751
# define BOOST_PP_INC_751 752
# define BOOST_PP_INC_752 753
# define BOOST_PP_INC_753 754
# define BOOST_PP_INC_754 755
# define BOOST_PP_INC_755 756
# define BOOST_PP_INC_756 757
# define BOOST_PP_INC_757 758
# define BOOST_PP_INC_758 759
# define BOOST_PP_INC_759 760
# define BOOST_PP_INC_760 761
# define BOOST_PP_INC_761 762
# define BOOST_PP_INC_762 763
# define BOOST_PP_INC_763 764
# define BOOST_PP_INC_764 765
# define BOOST_PP_INC_765 766
# define BOOST_PP_INC_766 767
# define BOOST_PP_INC_767 768
# define BOOST_PP_INC_768 769
# define BOOST_PP_INC_769 770
# define BOOST_PP_INC_770 771
# define BOOST_PP_INC_771 772
# define BOOST_PP_INC_772 773
# define BOOST_PP_INC_773 774
# define BOOST_PP_INC_774 775
# define BOOST_PP_INC_775 776
# define BOOST_PP_INC_776 777
# define BOOST_PP_INC_777 778
# define BOOST_PP_INC_778 779
# define BOOST_PP_INC_779 780
# define BOOST_PP_INC_780 781
# define BOOST_PP_INC_781 782
# define BOOST_PP_INC_782 783
# define BOOST_PP_INC_783 784
# define BOOST_PP_INC_784 785
# define BOOST_PP_INC_785 786
# define BOOST_PP_INC_786 787
# define BOOST_PP_INC_787 788
# define BOOST_PP_INC_788 789
# define BOOST_PP_INC_789 790
# define BOOST_PP_INC_790 791
# define BOOST_PP_INC_791 792
# define BOOST_PP_INC_792 793
# define BOOST_PP_INC_793 794
# define BOOST_PP_INC_794 795
# define BOOST_PP_INC_795 796
# define BOOST_PP_INC_796 797
# define BOOST_PP_INC_797 798
# define BOOST_PP_INC_798 799
# define BOOST_PP_INC_799 800
# define BOOST_PP_INC_800 801
# define BOOST_PP_INC_801 802
# define BOOST_PP_INC_802 803
# define BOOST_PP_INC_803 804
# define BOOST_PP_INC_804 805
# define BOOST_PP_INC_805 806
# define BOOST_PP_INC_806 807
# define BOOST_PP_INC_807 808
# define BOOST_PP_INC_808 809
# define BOOST_PP_INC_809 810
# define BOOST_PP_INC_810 811
# define BOOST_PP_INC_811 812
# define BOOST_PP_INC_812 813
# define BOOST_PP_INC_813 814
# define BOOST_PP_INC_814 815
# define BOOST_PP_INC_815 816
# define BOOST_PP_INC_816 817
# define BOOST_PP_INC_817 818
# define BOOST_PP_INC_818 819
# define BOOST_PP_INC_819 820
# define BOOST_PP_INC_820 821
# define BOOST_PP_INC_821 822
# define BOOST_PP_INC_822 823
# define BOOST_PP_INC_823 824
# define BOOST_PP_INC_824 825
# define BOOST_PP_INC_825 826
# define BOOST_PP_INC_826 827
# define BOOST_PP_INC_827 828
# define BOOST_PP_INC_828 829
# define BOOST_PP_INC_829 830
# define BOOST_PP_INC_830 831
# define BOOST_PP_INC_831 832
# define BOOST_PP_INC_832 833
# define BOOST_PP_INC_833 834
# define BOOST_PP_INC_834 835
# define BOOST_PP_INC_835 836
# define BOOST_PP_INC_836 837
# define BOOST_PP_INC_837 838
# define BOOST_PP_INC_838 839
# define BOOST_PP_INC_839 840
# define BOOST_PP_INC_840 841
# define BOOST_PP_INC_841 842
# define BOOST_PP_INC_842 843
# define BOOST_PP_INC_843 844
# define BOOST_PP_INC_844 845
# define BOOST_PP_INC_845 846
# define BOOST_PP_INC_846 847
# define BOOST_PP_INC_847 848
# define BOOST_PP_INC_848 849
# define BOOST_PP_INC_849 850
# define BOOST_PP_INC_850 851
# define BOOST_PP_INC_851 852
# define BOOST_PP_INC_852 853
# define BOOST_PP_INC_853 854
# define BOOST_PP_INC_854 855
# define BOOST_PP_INC_855 856
# define BOOST_PP_INC_856 857
# define BOOST_PP_INC_857 858
# define BOOST_PP_INC_858 859
# define BOOST_PP_INC_859 860
# define BOOST_PP_INC_860 861
# define BOOST_PP_INC_861 862
# define BOOST_PP_INC_862 863
# define BOOST_PP_INC_863 864
# define BOOST_PP_INC_864 865
# define BOOST_PP_INC_865 866
# define BOOST_PP_INC_866 867
# define BOOST_PP_INC_867 868
# define BOOST_PP_INC_868 869
# define BOOST_PP_INC_869 870
# define BOOST_PP_INC_870 871
# define BOOST_PP_INC_871 872
# define BOOST_PP_INC_872 873
# define BOOST_PP_INC_873 874
# define BOOST_PP_INC_874 875
# define BOOST_PP_INC_875 876
# define BOOST_PP_INC_876 877
# define BOOST_PP_INC_877 878
# define BOOST_PP_INC_878 879
# define BOOST_PP_INC_879 880
# define BOOST_PP_INC_880 881
# define BOOST_PP_INC_881 882
# define BOOST_PP_INC_882 883
# define BOOST_PP_INC_883 884
# define BOOST_PP_INC_884 885
# define BOOST_PP_INC_885 886
# define BOOST_PP_INC_886 887
# define BOOST_PP_INC_887 888
# define BOOST_PP_INC_888 889
# define BOOST_PP_INC_889 890
# define BOOST_PP_INC_890 891
# define BOOST_PP_INC_891 892
# define BOOST_PP_INC_892 893
# define BOOST_PP_INC_893 894
# define BOOST_PP_INC_894 895
# define BOOST_PP_INC_895 896
# define BOOST_PP_INC_896 897
# define BOOST_PP_INC_897 898
# define BOOST_PP_INC_898 899
# define BOOST_PP_INC_899 900
# define BOOST_PP_INC_900 901
# define BOOST_PP_INC_901 902
# define BOOST_PP_INC_902 903
# define BOOST_PP_INC_903 904
# define BOOST_PP_INC_904 905
# define BOOST_PP_INC_905 906
# define BOOST_PP_INC_906 907
# define BOOST_PP_INC_907 908
# define BOOST_PP_INC_908 909
# define BOOST_PP_INC_909 910
# define BOOST_PP_INC_910 911
# define BOOST_PP_INC_911 912
# define BOOST_PP_INC_912 913
# define BOOST_PP_INC_913 914
# define BOOST_PP_INC_914 915
# define BOOST_PP_INC_915 916
# define BOOST_PP_INC_916 917
# define BOOST_PP_INC_917 918
# define BOOST_PP_INC_918 919
# define BOOST_PP_INC_919 920
# define BOOST_PP_INC_920 921
# define BOOST_PP_INC_921 922
# define BOOST_PP_INC_922 923
# define BOOST_PP_INC_923 924
# define BOOST_PP_INC_924 925
# define BOOST_PP_INC_925 926
# define BOOST_PP_INC_926 927
# define BOOST_PP_INC_927 928
# define BOOST_PP_INC_928 929
# define BOOST_PP_INC_929 930
# define BOOST_PP_INC_930 931
# define BOOST_PP_INC_931 932
# define BOOST_PP_INC_932 933
# define BOOST_PP_INC_933 934
# define BOOST_PP_INC_934 935
# define BOOST_PP_INC_935 936
# define BOOST_PP_INC_936 937
# define BOOST_PP_INC_937 938
# define BOOST_PP_INC_938 939
# define BOOST_PP_INC_939 940
# define BOOST_PP_INC_940 941
# define BOOST_PP_INC_941 942
# define BOOST_PP_INC_942 943
# define BOOST_PP_INC_943 944
# define BOOST_PP_INC_944 945
# define BOOST_PP_INC_945 946
# define BOOST_PP_INC_946 947
# define BOOST_PP_INC_947 948
# define BOOST_PP_INC_948 949
# define BOOST_PP_INC_949 950
# define BOOST_PP_INC_950 951
# define BOOST_PP_INC_951 952
# define BOOST_PP_INC_952 953
# define BOOST_PP_INC_953 954
# define BOOST_PP_INC_954 955
# define BOOST_PP_INC_955 956
# define BOOST_PP_INC_956 957
# define BOOST_PP_INC_957 958
# define BOOST_PP_INC_958 959
# define BOOST_PP_INC_959 960
# define BOOST_PP_INC_960 961
# define BOOST_PP_INC_961 962
# define BOOST_PP_INC_962 963
# define BOOST_PP_INC_963 964
# define BOOST_PP_INC_964 965
# define BOOST_PP_INC_965 966
# define BOOST_PP_INC_966 967
# define BOOST_PP_INC_967 968
# define BOOST_PP_INC_968 969
# define BOOST_PP_INC_969 970
# define BOOST_PP_INC_970 971
# define BOOST_PP_INC_971 972
# define BOOST_PP_INC_972 973
# define BOOST_PP_INC_973 974
# define BOOST_PP_INC_974 975
# define BOOST_PP_INC_975 976
# define BOOST_PP_INC_976 977
# define BOOST_PP_INC_977 978
# define BOOST_PP_INC_978 979
# define BOOST_PP_INC_979 980
# define BOOST_PP_INC_980 981
# define BOOST_PP_INC_981 982
# define BOOST_PP_INC_982 983
# define BOOST_PP_INC_983 984
# define BOOST_PP_INC_984 985
# define BOOST_PP_INC_985 986
# define BOOST_PP_INC_986 987
# define BOOST_PP_INC_987 988
# define BOOST_PP_INC_988 989
# define BOOST_PP_INC_989 990
# define BOOST_PP_INC_990 991
# define BOOST_PP_INC_991 992
# define BOOST_PP_INC_992 993
# define BOOST_PP_INC_993 994
# define BOOST_PP_INC_994 995
# define BOOST_PP_INC_995 996
# define BOOST_PP_INC_996 997
# define BOOST_PP_INC_997 998
# define BOOST_PP_INC_998 999
# define BOOST_PP_INC_999 1000
# define BOOST_PP_INC_1000 1001
# define BOOST_PP_INC_1001 1002
# define BOOST_PP_INC_1002 1003
# define BOOST_PP_INC_1003 1004
# define BOOST_PP_INC_1004 1005
# define BOOST_PP_INC_1005 1006
# define BOOST_PP_INC_1006 1007
# define BOOST_PP_INC_1007 1008
# define BOOST_PP_INC_1008 1009
# define BOOST_PP_INC_1009 1010
# define BOOST_PP_INC_1010 1011
# define BOOST_PP_INC_1011 1012
# define BOOST_PP_INC_1012 1013
# define BOOST_PP_INC_1013 1014
# define BOOST_PP_INC_1014 1015
# define BOOST_PP_INC_1015 1016
# define BOOST_PP_INC_1016 1017
# define BOOST_PP_INC_1017 1018
# define BOOST_PP_INC_1018 1019
# define BOOST_PP_INC_1019 1020
# define BOOST_PP_INC_1020 1021
# define BOOST_PP_INC_1021 1022
# define BOOST_PP_INC_1022 1023
# define BOOST_PP_INC_1023 1024
# define BOOST_PP_INC_1024 1024
#
# endif

View File

@ -0,0 +1,275 @@
# /* Copyright (C) 2001
# * Housemarque Oy
# * http://www.housemarque.com
# *
# * Distributed under the Boost Software License, Version 1.0. (See
# * accompanying file LICENSE_1_0.txt or copy at
# * http://www.boost.org/LICENSE_1_0.txt)
# */
#
# /* Revised by Paul Mensonides (2002) */
#
# /* See http://www.boost.org for most recent version. */
#
# ifndef BOOST_PREPROCESSOR_ARITHMETIC_INC_256_HPP
# define BOOST_PREPROCESSOR_ARITHMETIC_INC_256_HPP
#
# define BOOST_PP_INC_0 1
# define BOOST_PP_INC_1 2
# define BOOST_PP_INC_2 3
# define BOOST_PP_INC_3 4
# define BOOST_PP_INC_4 5
# define BOOST_PP_INC_5 6
# define BOOST_PP_INC_6 7
# define BOOST_PP_INC_7 8
# define BOOST_PP_INC_8 9
# define BOOST_PP_INC_9 10
# define BOOST_PP_INC_10 11
# define BOOST_PP_INC_11 12
# define BOOST_PP_INC_12 13
# define BOOST_PP_INC_13 14
# define BOOST_PP_INC_14 15
# define BOOST_PP_INC_15 16
# define BOOST_PP_INC_16 17
# define BOOST_PP_INC_17 18
# define BOOST_PP_INC_18 19
# define BOOST_PP_INC_19 20
# define BOOST_PP_INC_20 21
# define BOOST_PP_INC_21 22
# define BOOST_PP_INC_22 23
# define BOOST_PP_INC_23 24
# define BOOST_PP_INC_24 25
# define BOOST_PP_INC_25 26
# define BOOST_PP_INC_26 27
# define BOOST_PP_INC_27 28
# define BOOST_PP_INC_28 29
# define BOOST_PP_INC_29 30
# define BOOST_PP_INC_30 31
# define BOOST_PP_INC_31 32
# define BOOST_PP_INC_32 33
# define BOOST_PP_INC_33 34
# define BOOST_PP_INC_34 35
# define BOOST_PP_INC_35 36
# define BOOST_PP_INC_36 37
# define BOOST_PP_INC_37 38
# define BOOST_PP_INC_38 39
# define BOOST_PP_INC_39 40
# define BOOST_PP_INC_40 41
# define BOOST_PP_INC_41 42
# define BOOST_PP_INC_42 43
# define BOOST_PP_INC_43 44
# define BOOST_PP_INC_44 45
# define BOOST_PP_INC_45 46
# define BOOST_PP_INC_46 47
# define BOOST_PP_INC_47 48
# define BOOST_PP_INC_48 49
# define BOOST_PP_INC_49 50
# define BOOST_PP_INC_50 51
# define BOOST_PP_INC_51 52
# define BOOST_PP_INC_52 53
# define BOOST_PP_INC_53 54
# define BOOST_PP_INC_54 55
# define BOOST_PP_INC_55 56
# define BOOST_PP_INC_56 57
# define BOOST_PP_INC_57 58
# define BOOST_PP_INC_58 59
# define BOOST_PP_INC_59 60
# define BOOST_PP_INC_60 61
# define BOOST_PP_INC_61 62
# define BOOST_PP_INC_62 63
# define BOOST_PP_INC_63 64
# define BOOST_PP_INC_64 65
# define BOOST_PP_INC_65 66
# define BOOST_PP_INC_66 67
# define BOOST_PP_INC_67 68
# define BOOST_PP_INC_68 69
# define BOOST_PP_INC_69 70
# define BOOST_PP_INC_70 71
# define BOOST_PP_INC_71 72
# define BOOST_PP_INC_72 73
# define BOOST_PP_INC_73 74
# define BOOST_PP_INC_74 75
# define BOOST_PP_INC_75 76
# define BOOST_PP_INC_76 77
# define BOOST_PP_INC_77 78
# define BOOST_PP_INC_78 79
# define BOOST_PP_INC_79 80
# define BOOST_PP_INC_80 81
# define BOOST_PP_INC_81 82
# define BOOST_PP_INC_82 83
# define BOOST_PP_INC_83 84
# define BOOST_PP_INC_84 85
# define BOOST_PP_INC_85 86
# define BOOST_PP_INC_86 87
# define BOOST_PP_INC_87 88
# define BOOST_PP_INC_88 89
# define BOOST_PP_INC_89 90
# define BOOST_PP_INC_90 91
# define BOOST_PP_INC_91 92
# define BOOST_PP_INC_92 93
# define BOOST_PP_INC_93 94
# define BOOST_PP_INC_94 95
# define BOOST_PP_INC_95 96
# define BOOST_PP_INC_96 97
# define BOOST_PP_INC_97 98
# define BOOST_PP_INC_98 99
# define BOOST_PP_INC_99 100
# define BOOST_PP_INC_100 101
# define BOOST_PP_INC_101 102
# define BOOST_PP_INC_102 103
# define BOOST_PP_INC_103 104
# define BOOST_PP_INC_104 105
# define BOOST_PP_INC_105 106
# define BOOST_PP_INC_106 107
# define BOOST_PP_INC_107 108
# define BOOST_PP_INC_108 109
# define BOOST_PP_INC_109 110
# define BOOST_PP_INC_110 111
# define BOOST_PP_INC_111 112
# define BOOST_PP_INC_112 113
# define BOOST_PP_INC_113 114
# define BOOST_PP_INC_114 115
# define BOOST_PP_INC_115 116
# define BOOST_PP_INC_116 117
# define BOOST_PP_INC_117 118
# define BOOST_PP_INC_118 119
# define BOOST_PP_INC_119 120
# define BOOST_PP_INC_120 121
# define BOOST_PP_INC_121 122
# define BOOST_PP_INC_122 123
# define BOOST_PP_INC_123 124
# define BOOST_PP_INC_124 125
# define BOOST_PP_INC_125 126
# define BOOST_PP_INC_126 127
# define BOOST_PP_INC_127 128
# define BOOST_PP_INC_128 129
# define BOOST_PP_INC_129 130
# define BOOST_PP_INC_130 131
# define BOOST_PP_INC_131 132
# define BOOST_PP_INC_132 133
# define BOOST_PP_INC_133 134
# define BOOST_PP_INC_134 135
# define BOOST_PP_INC_135 136
# define BOOST_PP_INC_136 137
# define BOOST_PP_INC_137 138
# define BOOST_PP_INC_138 139
# define BOOST_PP_INC_139 140
# define BOOST_PP_INC_140 141
# define BOOST_PP_INC_141 142
# define BOOST_PP_INC_142 143
# define BOOST_PP_INC_143 144
# define BOOST_PP_INC_144 145
# define BOOST_PP_INC_145 146
# define BOOST_PP_INC_146 147
# define BOOST_PP_INC_147 148
# define BOOST_PP_INC_148 149
# define BOOST_PP_INC_149 150
# define BOOST_PP_INC_150 151
# define BOOST_PP_INC_151 152
# define BOOST_PP_INC_152 153
# define BOOST_PP_INC_153 154
# define BOOST_PP_INC_154 155
# define BOOST_PP_INC_155 156
# define BOOST_PP_INC_156 157
# define BOOST_PP_INC_157 158
# define BOOST_PP_INC_158 159
# define BOOST_PP_INC_159 160
# define BOOST_PP_INC_160 161
# define BOOST_PP_INC_161 162
# define BOOST_PP_INC_162 163
# define BOOST_PP_INC_163 164
# define BOOST_PP_INC_164 165
# define BOOST_PP_INC_165 166
# define BOOST_PP_INC_166 167
# define BOOST_PP_INC_167 168
# define BOOST_PP_INC_168 169
# define BOOST_PP_INC_169 170
# define BOOST_PP_INC_170 171
# define BOOST_PP_INC_171 172
# define BOOST_PP_INC_172 173
# define BOOST_PP_INC_173 174
# define BOOST_PP_INC_174 175
# define BOOST_PP_INC_175 176
# define BOOST_PP_INC_176 177
# define BOOST_PP_INC_177 178
# define BOOST_PP_INC_178 179
# define BOOST_PP_INC_179 180
# define BOOST_PP_INC_180 181
# define BOOST_PP_INC_181 182
# define BOOST_PP_INC_182 183
# define BOOST_PP_INC_183 184
# define BOOST_PP_INC_184 185
# define BOOST_PP_INC_185 186
# define BOOST_PP_INC_186 187
# define BOOST_PP_INC_187 188
# define BOOST_PP_INC_188 189
# define BOOST_PP_INC_189 190
# define BOOST_PP_INC_190 191
# define BOOST_PP_INC_191 192
# define BOOST_PP_INC_192 193
# define BOOST_PP_INC_193 194
# define BOOST_PP_INC_194 195
# define BOOST_PP_INC_195 196
# define BOOST_PP_INC_196 197
# define BOOST_PP_INC_197 198
# define BOOST_PP_INC_198 199
# define BOOST_PP_INC_199 200
# define BOOST_PP_INC_200 201
# define BOOST_PP_INC_201 202
# define BOOST_PP_INC_202 203
# define BOOST_PP_INC_203 204
# define BOOST_PP_INC_204 205
# define BOOST_PP_INC_205 206
# define BOOST_PP_INC_206 207
# define BOOST_PP_INC_207 208
# define BOOST_PP_INC_208 209
# define BOOST_PP_INC_209 210
# define BOOST_PP_INC_210 211
# define BOOST_PP_INC_211 212
# define BOOST_PP_INC_212 213
# define BOOST_PP_INC_213 214
# define BOOST_PP_INC_214 215
# define BOOST_PP_INC_215 216
# define BOOST_PP_INC_216 217
# define BOOST_PP_INC_217 218
# define BOOST_PP_INC_218 219
# define BOOST_PP_INC_219 220
# define BOOST_PP_INC_220 221
# define BOOST_PP_INC_221 222
# define BOOST_PP_INC_222 223
# define BOOST_PP_INC_223 224
# define BOOST_PP_INC_224 225
# define BOOST_PP_INC_225 226
# define BOOST_PP_INC_226 227
# define BOOST_PP_INC_227 228
# define BOOST_PP_INC_228 229
# define BOOST_PP_INC_229 230
# define BOOST_PP_INC_230 231
# define BOOST_PP_INC_231 232
# define BOOST_PP_INC_232 233
# define BOOST_PP_INC_233 234
# define BOOST_PP_INC_234 235
# define BOOST_PP_INC_235 236
# define BOOST_PP_INC_236 237
# define BOOST_PP_INC_237 238
# define BOOST_PP_INC_238 239
# define BOOST_PP_INC_239 240
# define BOOST_PP_INC_240 241
# define BOOST_PP_INC_241 242
# define BOOST_PP_INC_242 243
# define BOOST_PP_INC_243 244
# define BOOST_PP_INC_244 245
# define BOOST_PP_INC_245 246
# define BOOST_PP_INC_246 247
# define BOOST_PP_INC_247 248
# define BOOST_PP_INC_248 249
# define BOOST_PP_INC_249 250
# define BOOST_PP_INC_250 251
# define BOOST_PP_INC_251 252
# define BOOST_PP_INC_252 253
# define BOOST_PP_INC_253 254
# define BOOST_PP_INC_254 255
# define BOOST_PP_INC_255 256
# define BOOST_PP_INC_256 256
#
# endif

View File

@ -0,0 +1,280 @@
# /* Copyright (C) 2001
# * Housemarque Oy
# * http://www.housemarque.com
# *
# * Distributed under the Boost Software License, Version 1.0. (See
# * accompanying file LICENSE_1_0.txt or copy at
# * http://www.boost.org/LICENSE_1_0.txt)
# */
#
# /* Revised by Paul Mensonides (2002) */
# /* Revised by Edward Diener (2020) */
#
# /* See http://www.boost.org for most recent version. */
#
# ifndef BOOST_PREPROCESSOR_ARITHMETIC_INC_512_HPP
# define BOOST_PREPROCESSOR_ARITHMETIC_INC_512_HPP
#
# if defined(BOOST_PP_INC_256)
# undef BOOST_PP_INC_256
# endif
#
# define BOOST_PP_INC_256 257
# define BOOST_PP_INC_257 258
# define BOOST_PP_INC_258 259
# define BOOST_PP_INC_259 260
# define BOOST_PP_INC_260 261
# define BOOST_PP_INC_261 262
# define BOOST_PP_INC_262 263
# define BOOST_PP_INC_263 264
# define BOOST_PP_INC_264 265
# define BOOST_PP_INC_265 266
# define BOOST_PP_INC_266 267
# define BOOST_PP_INC_267 268
# define BOOST_PP_INC_268 269
# define BOOST_PP_INC_269 270
# define BOOST_PP_INC_270 271
# define BOOST_PP_INC_271 272
# define BOOST_PP_INC_272 273
# define BOOST_PP_INC_273 274
# define BOOST_PP_INC_274 275
# define BOOST_PP_INC_275 276
# define BOOST_PP_INC_276 277
# define BOOST_PP_INC_277 278
# define BOOST_PP_INC_278 279
# define BOOST_PP_INC_279 280
# define BOOST_PP_INC_280 281
# define BOOST_PP_INC_281 282
# define BOOST_PP_INC_282 283
# define BOOST_PP_INC_283 284
# define BOOST_PP_INC_284 285
# define BOOST_PP_INC_285 286
# define BOOST_PP_INC_286 287
# define BOOST_PP_INC_287 288
# define BOOST_PP_INC_288 289
# define BOOST_PP_INC_289 290
# define BOOST_PP_INC_290 291
# define BOOST_PP_INC_291 292
# define BOOST_PP_INC_292 293
# define BOOST_PP_INC_293 294
# define BOOST_PP_INC_294 295
# define BOOST_PP_INC_295 296
# define BOOST_PP_INC_296 297
# define BOOST_PP_INC_297 298
# define BOOST_PP_INC_298 299
# define BOOST_PP_INC_299 300
# define BOOST_PP_INC_300 301
# define BOOST_PP_INC_301 302
# define BOOST_PP_INC_302 303
# define BOOST_PP_INC_303 304
# define BOOST_PP_INC_304 305
# define BOOST_PP_INC_305 306
# define BOOST_PP_INC_306 307
# define BOOST_PP_INC_307 308
# define BOOST_PP_INC_308 309
# define BOOST_PP_INC_309 310
# define BOOST_PP_INC_310 311
# define BOOST_PP_INC_311 312
# define BOOST_PP_INC_312 313
# define BOOST_PP_INC_313 314
# define BOOST_PP_INC_314 315
# define BOOST_PP_INC_315 316
# define BOOST_PP_INC_316 317
# define BOOST_PP_INC_317 318
# define BOOST_PP_INC_318 319
# define BOOST_PP_INC_319 320
# define BOOST_PP_INC_320 321
# define BOOST_PP_INC_321 322
# define BOOST_PP_INC_322 323
# define BOOST_PP_INC_323 324
# define BOOST_PP_INC_324 325
# define BOOST_PP_INC_325 326
# define BOOST_PP_INC_326 327
# define BOOST_PP_INC_327 328
# define BOOST_PP_INC_328 329
# define BOOST_PP_INC_329 330
# define BOOST_PP_INC_330 331
# define BOOST_PP_INC_331 332
# define BOOST_PP_INC_332 333
# define BOOST_PP_INC_333 334
# define BOOST_PP_INC_334 335
# define BOOST_PP_INC_335 336
# define BOOST_PP_INC_336 337
# define BOOST_PP_INC_337 338
# define BOOST_PP_INC_338 339
# define BOOST_PP_INC_339 340
# define BOOST_PP_INC_340 341
# define BOOST_PP_INC_341 342
# define BOOST_PP_INC_342 343
# define BOOST_PP_INC_343 344
# define BOOST_PP_INC_344 345
# define BOOST_PP_INC_345 346
# define BOOST_PP_INC_346 347
# define BOOST_PP_INC_347 348
# define BOOST_PP_INC_348 349
# define BOOST_PP_INC_349 350
# define BOOST_PP_INC_350 351
# define BOOST_PP_INC_351 352
# define BOOST_PP_INC_352 353
# define BOOST_PP_INC_353 354
# define BOOST_PP_INC_354 355
# define BOOST_PP_INC_355 356
# define BOOST_PP_INC_356 357
# define BOOST_PP_INC_357 358
# define BOOST_PP_INC_358 359
# define BOOST_PP_INC_359 360
# define BOOST_PP_INC_360 361
# define BOOST_PP_INC_361 362
# define BOOST_PP_INC_362 363
# define BOOST_PP_INC_363 364
# define BOOST_PP_INC_364 365
# define BOOST_PP_INC_365 366
# define BOOST_PP_INC_366 367
# define BOOST_PP_INC_367 368
# define BOOST_PP_INC_368 369
# define BOOST_PP_INC_369 370
# define BOOST_PP_INC_370 371
# define BOOST_PP_INC_371 372
# define BOOST_PP_INC_372 373
# define BOOST_PP_INC_373 374
# define BOOST_PP_INC_374 375
# define BOOST_PP_INC_375 376
# define BOOST_PP_INC_376 377
# define BOOST_PP_INC_377 378
# define BOOST_PP_INC_378 379
# define BOOST_PP_INC_379 380
# define BOOST_PP_INC_380 381
# define BOOST_PP_INC_381 382
# define BOOST_PP_INC_382 383
# define BOOST_PP_INC_383 384
# define BOOST_PP_INC_384 385
# define BOOST_PP_INC_385 386
# define BOOST_PP_INC_386 387
# define BOOST_PP_INC_387 388
# define BOOST_PP_INC_388 389
# define BOOST_PP_INC_389 390
# define BOOST_PP_INC_390 391
# define BOOST_PP_INC_391 392
# define BOOST_PP_INC_392 393
# define BOOST_PP_INC_393 394
# define BOOST_PP_INC_394 395
# define BOOST_PP_INC_395 396
# define BOOST_PP_INC_396 397
# define BOOST_PP_INC_397 398
# define BOOST_PP_INC_398 399
# define BOOST_PP_INC_399 400
# define BOOST_PP_INC_400 401
# define BOOST_PP_INC_401 402
# define BOOST_PP_INC_402 403
# define BOOST_PP_INC_403 404
# define BOOST_PP_INC_404 405
# define BOOST_PP_INC_405 406
# define BOOST_PP_INC_406 407
# define BOOST_PP_INC_407 408
# define BOOST_PP_INC_408 409
# define BOOST_PP_INC_409 410
# define BOOST_PP_INC_410 411
# define BOOST_PP_INC_411 412
# define BOOST_PP_INC_412 413
# define BOOST_PP_INC_413 414
# define BOOST_PP_INC_414 415
# define BOOST_PP_INC_415 416
# define BOOST_PP_INC_416 417
# define BOOST_PP_INC_417 418
# define BOOST_PP_INC_418 419
# define BOOST_PP_INC_419 420
# define BOOST_PP_INC_420 421
# define BOOST_PP_INC_421 422
# define BOOST_PP_INC_422 423
# define BOOST_PP_INC_423 424
# define BOOST_PP_INC_424 425
# define BOOST_PP_INC_425 426
# define BOOST_PP_INC_426 427
# define BOOST_PP_INC_427 428
# define BOOST_PP_INC_428 429
# define BOOST_PP_INC_429 430
# define BOOST_PP_INC_430 431
# define BOOST_PP_INC_431 432
# define BOOST_PP_INC_432 433
# define BOOST_PP_INC_433 434
# define BOOST_PP_INC_434 435
# define BOOST_PP_INC_435 436
# define BOOST_PP_INC_436 437
# define BOOST_PP_INC_437 438
# define BOOST_PP_INC_438 439
# define BOOST_PP_INC_439 440
# define BOOST_PP_INC_440 441
# define BOOST_PP_INC_441 442
# define BOOST_PP_INC_442 443
# define BOOST_PP_INC_443 444
# define BOOST_PP_INC_444 445
# define BOOST_PP_INC_445 446
# define BOOST_PP_INC_446 447
# define BOOST_PP_INC_447 448
# define BOOST_PP_INC_448 449
# define BOOST_PP_INC_449 450
# define BOOST_PP_INC_450 451
# define BOOST_PP_INC_451 452
# define BOOST_PP_INC_452 453
# define BOOST_PP_INC_453 454
# define BOOST_PP_INC_454 455
# define BOOST_PP_INC_455 456
# define BOOST_PP_INC_456 457
# define BOOST_PP_INC_457 458
# define BOOST_PP_INC_458 459
# define BOOST_PP_INC_459 460
# define BOOST_PP_INC_460 461
# define BOOST_PP_INC_461 462
# define BOOST_PP_INC_462 463
# define BOOST_PP_INC_463 464
# define BOOST_PP_INC_464 465
# define BOOST_PP_INC_465 466
# define BOOST_PP_INC_466 467
# define BOOST_PP_INC_467 468
# define BOOST_PP_INC_468 469
# define BOOST_PP_INC_469 470
# define BOOST_PP_INC_470 471
# define BOOST_PP_INC_471 472
# define BOOST_PP_INC_472 473
# define BOOST_PP_INC_473 474
# define BOOST_PP_INC_474 475
# define BOOST_PP_INC_475 476
# define BOOST_PP_INC_476 477
# define BOOST_PP_INC_477 478
# define BOOST_PP_INC_478 479
# define BOOST_PP_INC_479 480
# define BOOST_PP_INC_480 481
# define BOOST_PP_INC_481 482
# define BOOST_PP_INC_482 483
# define BOOST_PP_INC_483 484
# define BOOST_PP_INC_484 485
# define BOOST_PP_INC_485 486
# define BOOST_PP_INC_486 487
# define BOOST_PP_INC_487 488
# define BOOST_PP_INC_488 489
# define BOOST_PP_INC_489 490
# define BOOST_PP_INC_490 491
# define BOOST_PP_INC_491 492
# define BOOST_PP_INC_492 493
# define BOOST_PP_INC_493 494
# define BOOST_PP_INC_494 495
# define BOOST_PP_INC_495 496
# define BOOST_PP_INC_496 497
# define BOOST_PP_INC_497 498
# define BOOST_PP_INC_498 499
# define BOOST_PP_INC_499 500
# define BOOST_PP_INC_500 501
# define BOOST_PP_INC_501 502
# define BOOST_PP_INC_502 503
# define BOOST_PP_INC_503 504
# define BOOST_PP_INC_504 505
# define BOOST_PP_INC_505 506
# define BOOST_PP_INC_506 507
# define BOOST_PP_INC_507 508
# define BOOST_PP_INC_508 509
# define BOOST_PP_INC_509 510
# define BOOST_PP_INC_510 511
# define BOOST_PP_INC_511 512
# define BOOST_PP_INC_512 512
#
# endif

View File

@ -8,14 +8,18 @@
# */
#
# /* Revised by Paul Mensonides (2002) */
# /* Revised by Edward Diener (2020) */
#
# /* See http://www.boost.org for most recent version. */
#
# ifndef BOOST_PREPROCESSOR_ARITHMETIC_MOD_HPP
# define BOOST_PREPROCESSOR_ARITHMETIC_MOD_HPP
#
# include <boost/preprocessor/arithmetic/detail/div_base.hpp>
# include <boost/preprocessor/config/config.hpp>
#
# if ~BOOST_PP_CONFIG_FLAGS() & BOOST_PP_CONFIG_STRICT()
#
# include <boost/preprocessor/arithmetic/detail/div_base.hpp>
# include <boost/preprocessor/tuple/elem.hpp>
#
# /* BOOST_PP_MOD */
@ -36,4 +40,36 @@
# define BOOST_PP_MOD_D_I(d, x, y) BOOST_PP_TUPLE_ELEM(3, 1, BOOST_PP_DIV_BASE_D(d, x, y))
# endif
#
# else
#
# include <boost/preprocessor/arithmetic/detail/div_base.hpp>
# include <boost/preprocessor/control/iif.hpp>
# include <boost/preprocessor/facilities/identity.hpp>
# include <boost/preprocessor/tuple/elem.hpp>
# include <boost/preprocessor/arithmetic/detail/is_1_number.hpp>
#
# /* BOOST_PP_MOD */
#
# define BOOST_PP_MOD(x, y) BOOST_PP_IIF(BOOST_PP_DETAIL_IS_1_NUMBER(y),BOOST_PP_IDENTITY_N(0,2),BOOST_PP_MOD_DO)(x,y)
#
# if ~BOOST_PP_CONFIG_FLAGS() & BOOST_PP_CONFIG_EDG()
# define BOOST_PP_MOD_DO(x, y) BOOST_PP_TUPLE_ELEM(3, 1, BOOST_PP_DIV_BASE(x, y))
# else
# define BOOST_PP_MOD_DO(x, y) BOOST_PP_MOD_I(x, y)
# define BOOST_PP_MOD_I(x, y) BOOST_PP_TUPLE_ELEM(3, 1, BOOST_PP_DIV_BASE(x, y))
# endif
#
# /* BOOST_PP_MOD_D */
#
# define BOOST_PP_MOD_D(d, x, y) BOOST_PP_IIF(BOOST_PP_DETAIL_IS_1_NUMBER(y),BOOST_PP_IDENTITY_N(0,3),BOOST_PP_MOD_DO_D)(d,x,y)
#
# if ~BOOST_PP_CONFIG_FLAGS() & BOOST_PP_CONFIG_EDG()
# define BOOST_PP_MOD_DO_D(d, x, y) BOOST_PP_TUPLE_ELEM(3, 1, BOOST_PP_DIV_BASE_D(d, x, y))
# else
# define BOOST_PP_MOD_DO_D(d, x, y) BOOST_PP_MOD_D_I(d, x, y)
# define BOOST_PP_MOD_D_I(d, x, y) BOOST_PP_TUPLE_ELEM(3, 1, BOOST_PP_DIV_BASE_D(d, x, y))
# endif
#
# endif
#
# endif

View File

@ -8,15 +8,19 @@
# */
#
# /* Revised by Paul Mensonides (2002) */
# /* Revised by Edward Diener (2020) */
#
# /* See http://www.boost.org for most recent version. */
#
# ifndef BOOST_PREPROCESSOR_ARITHMETIC_MUL_HPP
# define BOOST_PREPROCESSOR_ARITHMETIC_MUL_HPP
#
# include <boost/preprocessor/config/config.hpp>
#
# if ~BOOST_PP_CONFIG_FLAGS() & BOOST_PP_CONFIG_STRICT()
#
# include <boost/preprocessor/arithmetic/add.hpp>
# include <boost/preprocessor/arithmetic/dec.hpp>
# include <boost/preprocessor/config/config.hpp>
# include <boost/preprocessor/control/while.hpp>
# include <boost/preprocessor/tuple/elem.hpp>
# include <boost/preprocessor/tuple/rem.hpp>
@ -50,4 +54,59 @@
# define BOOST_PP_MUL_D_I(d, x, y) BOOST_PP_TUPLE_ELEM(3, 0, BOOST_PP_WHILE_ ## d(BOOST_PP_MUL_P, BOOST_PP_MUL_O, (0, x, y)))
# endif
#
# else
#
# include <boost/preprocessor/arithmetic/add.hpp>
# include <boost/preprocessor/arithmetic/dec.hpp>
# include <boost/preprocessor/control/iif.hpp>
# include <boost/preprocessor/control/while.hpp>
# include <boost/preprocessor/facilities/identity.hpp>
# include <boost/preprocessor/logical/bitand.hpp>
# include <boost/preprocessor/logical/bool.hpp>
# include <boost/preprocessor/logical/compl.hpp>
# include <boost/preprocessor/tuple/elem.hpp>
# include <boost/preprocessor/tuple/rem.hpp>
# include <boost/preprocessor/arithmetic/detail/is_minimum_number.hpp>
# include <boost/preprocessor/arithmetic/detail/is_maximum_number.hpp>
# include <boost/preprocessor/arithmetic/detail/is_1_number.hpp>
#
# /* BOOST_PP_MUL */
#
# define BOOST_PP_MUL(x, y) BOOST_PP_IIF(BOOST_PP_DETAIL_IS_MINIMUM_NUMBER(x),BOOST_PP_IDENTITY_N(x,2),BOOST_PP_MUL_CHECK_1X)(x,y)
#
# define BOOST_PP_MUL_CHECK_1X(x, y) BOOST_PP_IIF(BOOST_PP_DETAIL_IS_1_NUMBER(x),BOOST_PP_IDENTITY_N(y,2),BOOST_PP_MUL_DO)(x,y)
#
# if ~BOOST_PP_CONFIG_FLAGS() & BOOST_PP_CONFIG_EDG()
# define BOOST_PP_MUL_DO(x, y) BOOST_PP_TUPLE_ELEM(3, 0, BOOST_PP_WHILE(BOOST_PP_MUL_P, BOOST_PP_MUL_O, (0, x, y)))
# else
# define BOOST_PP_MUL_DO(x, y) BOOST_PP_MUL_I(x, y)
# define BOOST_PP_MUL_I(x, y) BOOST_PP_TUPLE_ELEM(3, 0, BOOST_PP_WHILE(BOOST_PP_MUL_P, BOOST_PP_MUL_O, (0, x, y)))
# endif
#
# define BOOST_PP_MUL_P(d, rxy) BOOST_PP_BITAND(BOOST_PP_BOOL(BOOST_PP_TUPLE_ELEM(3, 2, rxy)),BOOST_PP_COMPL(BOOST_PP_DETAIL_IS_MAXIMUM_NUMBER(BOOST_PP_TUPLE_ELEM(3, 0, rxy))))
#
# if BOOST_PP_CONFIG_FLAGS() & BOOST_PP_CONFIG_STRICT()
# define BOOST_PP_MUL_O(d, rxy) BOOST_PP_MUL_O_IM(d, BOOST_PP_TUPLE_REM_3 rxy)
# define BOOST_PP_MUL_O_IM(d, im) BOOST_PP_MUL_O_I(d, im)
# else
# define BOOST_PP_MUL_O(d, rxy) BOOST_PP_MUL_O_I(d, BOOST_PP_TUPLE_ELEM(3, 0, rxy), BOOST_PP_TUPLE_ELEM(3, 1, rxy), BOOST_PP_TUPLE_ELEM(3, 2, rxy))
# endif
#
# define BOOST_PP_MUL_O_I(d, r, x, y) (BOOST_PP_ADD_D(d, r, x), x, BOOST_PP_DEC(y))
#
# /* BOOST_PP_MUL_D */
#
# define BOOST_PP_MUL_D(d, x, y) BOOST_PP_IIF(BOOST_PP_DETAIL_IS_MINIMUM_NUMBER(x),BOOST_PP_IDENTITY_N(x,3),BOOST_PP_MUL_CHECK_1X_D)(d,x,y)
#
# define BOOST_PP_MUL_CHECK_1X_D(d, x, y) BOOST_PP_IIF(BOOST_PP_DETAIL_IS_1_NUMBER(x),BOOST_PP_IDENTITY_N(y,3),BOOST_PP_MUL_DO_D)(d,x,y)
#
# if ~BOOST_PP_CONFIG_FLAGS() & BOOST_PP_CONFIG_EDG()
# define BOOST_PP_MUL_DO_D(d, x, y) BOOST_PP_TUPLE_ELEM(3, 0, BOOST_PP_WHILE_ ## d(BOOST_PP_MUL_P, BOOST_PP_MUL_O, (0, x, y)))
# else
# define BOOST_PP_MUL_DO_D(d, x, y) BOOST_PP_MUL_D_I(d, x, y)
# define BOOST_PP_MUL_D_I(d, x, y) BOOST_PP_TUPLE_ELEM(3, 0, BOOST_PP_WHILE_ ## d(BOOST_PP_MUL_P, BOOST_PP_MUL_O, (0, x, y)))
# endif
#
# endif
#
# endif

View File

@ -8,14 +8,18 @@
# */
#
# /* Revised by Paul Mensonides (2002) */
# /* Revised by Edward Diener (2020) */
#
# /* See http://www.boost.org for most recent version. */
#
# ifndef BOOST_PREPROCESSOR_ARITHMETIC_SUB_HPP
# define BOOST_PREPROCESSOR_ARITHMETIC_SUB_HPP
#
# include <boost/preprocessor/arithmetic/dec.hpp>
# include <boost/preprocessor/config/config.hpp>
#
# if ~BOOST_PP_CONFIG_FLAGS() & BOOST_PP_CONFIG_STRICT()
#
# include <boost/preprocessor/arithmetic/dec.hpp>
# include <boost/preprocessor/control/while.hpp>
# include <boost/preprocessor/tuple/elem.hpp>
#
@ -47,4 +51,50 @@
# define BOOST_PP_SUB_D_I(d, x, y) BOOST_PP_TUPLE_ELEM(2, 0, BOOST_PP_WHILE_ ## d(BOOST_PP_SUB_P, BOOST_PP_SUB_O, (x, y)))
# endif
#
# else
#
# include <boost/preprocessor/arithmetic/dec.hpp>
# include <boost/preprocessor/control/iif.hpp>
# include <boost/preprocessor/control/while.hpp>
# include <boost/preprocessor/facilities/identity.hpp>
# include <boost/preprocessor/logical/and.hpp>
# include <boost/preprocessor/logical/bitor.hpp>
# include <boost/preprocessor/tuple/elem.hpp>
# include <boost/preprocessor/arithmetic/detail/is_maximum_number.hpp>
# include <boost/preprocessor/arithmetic/detail/is_minimum_number.hpp>
#
# /* BOOST_PP_SUB */
#
# define BOOST_PP_SUB(x, y) BOOST_PP_IIF(BOOST_PP_BITOR(BOOST_PP_DETAIL_IS_MAXIMUM_NUMBER(y),BOOST_PP_DETAIL_IS_MINIMUM_NUMBER(x)),BOOST_PP_IDENTITY_N(0,2),BOOST_PP_SUB_DO)(x,y)
#
# if ~BOOST_PP_CONFIG_FLAGS() & BOOST_PP_CONFIG_EDG()
# define BOOST_PP_SUB_DO(x, y) BOOST_PP_TUPLE_ELEM(2, 0, BOOST_PP_WHILE(BOOST_PP_SUB_P, BOOST_PP_SUB_O, (x, y)))
# else
# define BOOST_PP_SUB_DO(x, y) BOOST_PP_SUB_I(x, y)
# define BOOST_PP_SUB_I(x, y) BOOST_PP_TUPLE_ELEM(2, 0, BOOST_PP_WHILE(BOOST_PP_SUB_P, BOOST_PP_SUB_O, (x, y)))
# endif
#
# define BOOST_PP_SUB_P(d, xy) BOOST_PP_AND(BOOST_PP_TUPLE_ELEM(2, 1, xy),BOOST_PP_TUPLE_ELEM(2, 0, xy))
#
# if ~BOOST_PP_CONFIG_FLAGS() & BOOST_PP_CONFIG_MWCC()
# define BOOST_PP_SUB_O(d, xy) BOOST_PP_SUB_O_I xy
# else
# define BOOST_PP_SUB_O(d, xy) BOOST_PP_SUB_O_I(BOOST_PP_TUPLE_ELEM(2, 0, xy), BOOST_PP_TUPLE_ELEM(2, 1, xy))
# endif
#
# define BOOST_PP_SUB_O_I(x, y) (BOOST_PP_DEC(x), BOOST_PP_DEC(y))
#
# /* BOOST_PP_SUB_D */
#
# define BOOST_PP_SUB_D(d, x, y) BOOST_PP_IIF(BOOST_PP_BITOR(BOOST_PP_DETAIL_IS_MAXIMUM_NUMBER(y),BOOST_PP_DETAIL_IS_MINIMUM_NUMBER(x)),BOOST_PP_IDENTITY_N(0,3),BOOST_PP_SUB_DO_D)(d,x,y)
#
# if ~BOOST_PP_CONFIG_FLAGS() & BOOST_PP_CONFIG_EDG()
# define BOOST_PP_SUB_DO_D(d, x, y) BOOST_PP_TUPLE_ELEM(2, 0, BOOST_PP_WHILE_ ## d(BOOST_PP_SUB_P, BOOST_PP_SUB_O, (x, y)))
# else
# define BOOST_PP_SUB_DO_D(d, x, y) BOOST_PP_SUB_D_I(d, x, y)
# define BOOST_PP_SUB_D_I(d, x, y) BOOST_PP_TUPLE_ELEM(2, 0, BOOST_PP_WHILE_ ## d(BOOST_PP_SUB_P, BOOST_PP_SUB_O, (x, y)))
# endif
#
# endif
#
# endif

View File

@ -22,7 +22,7 @@
#
# define BOOST_PP_ARRAY_DETAIL_GET_DATA_NONE(size, data)
# if BOOST_PP_VARIADICS && !(BOOST_PP_VARIADICS_MSVC && _MSC_VER <= 1400)
# if !(BOOST_PP_VARIADICS_MSVC && _MSC_VER <= 1400)
# if BOOST_PP_VARIADICS_MSVC
# define BOOST_PP_ARRAY_DETAIL_GET_DATA_ANY_VC_DEFAULT(size, data) BOOST_PP_TUPLE_REM(size) data
# define BOOST_PP_ARRAY_DETAIL_GET_DATA_ANY_VC_CAT(size, data) BOOST_PP_TUPLE_REM_CAT(size) data

View File

@ -15,11 +15,27 @@
#
# include <boost/preprocessor/cat.hpp>
# include <boost/preprocessor/config/config.hpp>
# include <boost/preprocessor/control/if.hpp>
# include <boost/preprocessor/array/size.hpp>
# include <boost/preprocessor/tuple/rem.hpp>
# include <boost/preprocessor/variadic/has_opt.hpp>
#
# /* BOOST_PP_ARRAY_ENUM */
#
# if BOOST_PP_CONFIG_FLAGS() & BOOST_PP_CONFIG_MSVC()
# if BOOST_PP_VARIADIC_HAS_OPT()
# if BOOST_PP_CONFIG_FLAGS() & BOOST_PP_CONFIG_MSVC()
# define BOOST_PP_ARRAY_ENUM_NOT_EMPTY(array) BOOST_PP_ARRAY_ENUM_I(BOOST_PP_TUPLE_REM_CTOR, array)
# define BOOST_PP_ARRAY_ENUM_I(m, args) BOOST_PP_ARRAY_ENUM_II(m, args)
# define BOOST_PP_ARRAY_ENUM_II(m, args) BOOST_PP_CAT(m ## args,)
# elif BOOST_PP_CONFIG_FLAGS() & BOOST_PP_CONFIG_MWCC()
# define BOOST_PP_ARRAY_ENUM_NOT_EMPTY(array) BOOST_PP_ARRAY_ENUM_I(array)
# define BOOST_PP_ARRAY_ENUM_I(array) BOOST_PP_TUPLE_REM_CTOR ## array
# else
# define BOOST_PP_ARRAY_ENUM_NOT_EMPTY(array) BOOST_PP_TUPLE_REM_CTOR array
# endif
# define BOOST_PP_ARRAY_ENUM_EMPTY(array)
# define BOOST_PP_ARRAY_ENUM(array) BOOST_PP_IF(BOOST_PP_ARRAY_SIZE(array),BOOST_PP_ARRAY_ENUM_NOT_EMPTY,BOOST_PP_ARRAY_ENUM_EMPTY)(array)
# elif BOOST_PP_CONFIG_FLAGS() & BOOST_PP_CONFIG_MSVC()
# define BOOST_PP_ARRAY_ENUM(array) BOOST_PP_ARRAY_ENUM_I(BOOST_PP_TUPLE_REM_CTOR, array)
# define BOOST_PP_ARRAY_ENUM_I(m, args) BOOST_PP_ARRAY_ENUM_II(m, args)
# define BOOST_PP_ARRAY_ENUM_II(m, args) BOOST_PP_CAT(m ## args,)

View File

@ -7,11 +7,17 @@
# * *
# ************************************************************************** */
#
# /* Revised by Edward Diener (2020) */
#
# /* See http://www.boost.org for most recent version. */
#
# ifndef BOOST_PREPROCESSOR_ARRAY_INSERT_HPP
# define BOOST_PREPROCESSOR_ARRAY_INSERT_HPP
#
# include <boost/preprocessor/config/config.hpp>
#
# if ~BOOST_PP_CONFIG_FLAGS() & BOOST_PP_CONFIG_STRICT()
#
# include <boost/preprocessor/arithmetic/inc.hpp>
# include <boost/preprocessor/array/elem.hpp>
# include <boost/preprocessor/array/push_back.hpp>
@ -52,4 +58,69 @@
#
# define BOOST_PP_ARRAY_INSERT_O_I(n, i, elem, res, arr) (BOOST_PP_IIF(BOOST_PP_NOT_EQUAL(BOOST_PP_ARRAY_SIZE(res), i), BOOST_PP_INC(n), n), i, elem, BOOST_PP_ARRAY_PUSH_BACK(res, BOOST_PP_IIF(BOOST_PP_NOT_EQUAL(BOOST_PP_ARRAY_SIZE(res), i), BOOST_PP_ARRAY_ELEM(n, arr), elem)), arr)
#
# else
#
# include <boost/preprocessor/arithmetic/inc.hpp>
# include <boost/preprocessor/array/elem.hpp>
# include <boost/preprocessor/array/push_back.hpp>
# include <boost/preprocessor/array/size.hpp>
# include <boost/preprocessor/comparison/not_equal.hpp>
# include <boost/preprocessor/config/limits.hpp>
# include <boost/preprocessor/control/deduce_d.hpp>
# include <boost/preprocessor/control/iif.hpp>
# include <boost/preprocessor/control/while.hpp>
# if BOOST_PP_LIMIT_TUPLE == 256
# include <boost/preprocessor/facilities/identity.hpp>
# include <boost/preprocessor/logical/not.hpp>
# endif
# include <boost/preprocessor/tuple/elem.hpp>
#
# /* BOOST_PP_ARRAY_INSERT */
#
# define BOOST_PP_ARRAY_INSERT(array, i, elem) BOOST_PP_ARRAY_INSERT_I(BOOST_PP_DEDUCE_D(), array, i, elem)
# define BOOST_PP_ARRAY_INSERT_I(d, array, i, elem) BOOST_PP_ARRAY_INSERT_D(d, array, i, elem)
#
# /* BOOST_PP_ARRAY_INSERT_D */
#
# if ~BOOST_PP_CONFIG_FLAGS() & BOOST_PP_CONFIG_EDG()
# if BOOST_PP_LIMIT_TUPLE == 256
# define BOOST_PP_ARRAY_INSERT_D(d, array, i, elem) \
BOOST_PP_IIF(BOOST_PP_NOT(BOOST_PP_ARRAY_SIZE(array)),BOOST_PP_IDENTITY_N((1,(elem)),5),BOOST_PP_ARRAY_INSERT_ZERO_D)(d, array, i, elem, BOOST_PP_NOT(i))
# else
# define BOOST_PP_ARRAY_INSERT_D(d, array, i, elem) BOOST_PP_TUPLE_ELEM(5, 3, BOOST_PP_WHILE_ ## d(BOOST_PP_ARRAY_INSERT_P, BOOST_PP_ARRAY_INSERT_O, (0, i, elem, (0, ()), array)))
# endif
# else
# define BOOST_PP_ARRAY_INSERT_D(d, array, i, elem) BOOST_PP_ARRAY_INSERT_D_I(d, array, i, elem)
# if BOOST_PP_LIMIT_TUPLE == 256
# define BOOST_PP_ARRAY_INSERT_D_I(d, array, i, elem) \
BOOST_PP_IIF(BOOST_PP_NOT(BOOST_PP_ARRAY_SIZE(array)),BOOST_PP_IDENTITY_N((1,(elem)),5),BOOST_PP_ARRAY_INSERT_ZERO_D)(d, array, i, elem, BOOST_PP_NOT(i))
# else
# define BOOST_PP_ARRAY_INSERT_D_I(d, array, i, elem) BOOST_PP_TUPLE_ELEM(5, 3, BOOST_PP_WHILE_ ## d(BOOST_PP_ARRAY_INSERT_P, BOOST_PP_ARRAY_INSERT_O, (0, i, elem, (0, ()), array)))
# endif
# endif
#
# if BOOST_PP_LIMIT_TUPLE == 256
# define BOOST_PP_ARRAY_INSERT_ZERO_D(d, array, i, elem, zero) \
BOOST_PP_TUPLE_ELEM(5, 3, BOOST_PP_WHILE_ ## d(BOOST_PP_ARRAY_INSERT_P, BOOST_PP_ARRAY_INSERT_O, \
(1, i, elem, BOOST_PP_IIF( zero, ( 2 , ( elem , BOOST_PP_ARRAY_ELEM(0,array) ) ) , ( 1 , ( BOOST_PP_ARRAY_ELEM(0,array) ) ) ), array)))
# endif
#
# if BOOST_PP_CONFIG_FLAGS() & BOOST_PP_CONFIG_STRICT()
# define BOOST_PP_ARRAY_INSERT_P(d, state) BOOST_PP_ARRAY_INSERT_P_I state
# else
# define BOOST_PP_ARRAY_INSERT_P(d, state) BOOST_PP_ARRAY_INSERT_P_I(nil, nil, nil, BOOST_PP_TUPLE_ELEM(5, 3, state), BOOST_PP_TUPLE_ELEM(5, 4, state))
# endif
#
# define BOOST_PP_ARRAY_INSERT_P_I(_i, _ii, _iii, res, arr) BOOST_PP_NOT_EQUAL(BOOST_PP_ARRAY_SIZE(res), BOOST_PP_INC(BOOST_PP_ARRAY_SIZE(arr)))
#
# if BOOST_PP_CONFIG_FLAGS() & BOOST_PP_CONFIG_STRICT()
# define BOOST_PP_ARRAY_INSERT_O(d, state) BOOST_PP_ARRAY_INSERT_O_I state
# else
# define BOOST_PP_ARRAY_INSERT_O(d, state) BOOST_PP_ARRAY_INSERT_O_I(BOOST_PP_TUPLE_ELEM(5, 0, state), BOOST_PP_TUPLE_ELEM(5, 1, state), BOOST_PP_TUPLE_ELEM(5, 2, state), BOOST_PP_TUPLE_ELEM(5, 3, state), BOOST_PP_TUPLE_ELEM(5, 4, state))
# endif
#
# define BOOST_PP_ARRAY_INSERT_O_I(n, i, elem, res, arr) (BOOST_PP_IIF(BOOST_PP_NOT_EQUAL(BOOST_PP_ARRAY_SIZE(res), i), BOOST_PP_INC(n), n), i, elem, BOOST_PP_ARRAY_PUSH_BACK(res, BOOST_PP_IIF(BOOST_PP_NOT_EQUAL(BOOST_PP_ARRAY_SIZE(res), i), BOOST_PP_ARRAY_ELEM(n, arr), elem)), arr)
#
# endif
#
# endif

View File

@ -7,11 +7,17 @@
# * *
# ************************************************************************** */
#
# /* Revised by Edward Diener (2020) */
#
# /* See http://www.boost.org for most recent version. */
#
# ifndef BOOST_PREPROCESSOR_ARRAY_REMOVE_HPP
# define BOOST_PREPROCESSOR_ARRAY_REMOVE_HPP
#
# include <boost/preprocessor/config/config.hpp>
#
# if ~BOOST_PP_CONFIG_FLAGS() & BOOST_PP_CONFIG_STRICT()
#
# include <boost/preprocessor/arithmetic/inc.hpp>
# include <boost/preprocessor/array/elem.hpp>
# include <boost/preprocessor/array/push_back.hpp>
@ -51,4 +57,64 @@
# define BOOST_PP_ARRAY_REMOVE_O_I(n, i, res, arr) (BOOST_PP_INC(n), i, BOOST_PP_IIF(BOOST_PP_NOT_EQUAL(n, i), BOOST_PP_ARRAY_PUSH_BACK, BOOST_PP_TUPLE_ELEM_2_0)(res, BOOST_PP_ARRAY_ELEM(n, arr)), arr)
# endif
#
# else
#
# include <boost/preprocessor/arithmetic/inc.hpp>
# include <boost/preprocessor/array/elem.hpp>
# include <boost/preprocessor/array/push_back.hpp>
# include <boost/preprocessor/array/size.hpp>
# include <boost/preprocessor/comparison/not_equal.hpp>
# include <boost/preprocessor/control/deduce_d.hpp>
# include <boost/preprocessor/control/iif.hpp>
# include <boost/preprocessor/control/while.hpp>
# if BOOST_PP_LIMIT_TUPLE == 256
# include <boost/preprocessor/logical/not.hpp>
# endif
# include <boost/preprocessor/tuple/eat.hpp>
# include <boost/preprocessor/tuple/elem.hpp>
#
# /* BOOST_PP_ARRAY_REMOVE */
#
# define BOOST_PP_ARRAY_REMOVE(array, i) BOOST_PP_ARRAY_REMOVE_I(BOOST_PP_DEDUCE_D(), array, i)
# define BOOST_PP_ARRAY_REMOVE_I(d, array, i) BOOST_PP_ARRAY_REMOVE_D(d, array, i)
#
# /* BOOST_PP_ARRAY_REMOVE_D */
#
# if ~BOOST_PP_CONFIG_FLAGS() & BOOST_PP_CONFIG_EDG()
# if BOOST_PP_LIMIT_TUPLE == 256
# define BOOST_PP_ARRAY_REMOVE_D(d, array, i) BOOST_PP_ARRAY_REMOVE_ZERO_D(d, array, i, BOOST_PP_NOT(i))
# else
# define BOOST_PP_ARRAY_REMOVE_D(d, array, i) BOOST_PP_TUPLE_ELEM(4, 2, BOOST_PP_WHILE_ ## d(BOOST_PP_ARRAY_REMOVE_P, BOOST_PP_ARRAY_REMOVE_O, (0, i, (0, ()), array)))
# endif
# else
# define BOOST_PP_ARRAY_REMOVE_D(d, array, i) BOOST_PP_ARRAY_REMOVE_D_I(d, array, i)
# if BOOST_PP_LIMIT_TUPLE == 256
# define BOOST_PP_ARRAY_REMOVE_D_I(d, array, i) BOOST_PP_ARRAY_REMOVE_ZERO_D(d, array, i, BOOST_PP_NOT(i))
# else
# define BOOST_PP_ARRAY_REMOVE_D_I(d, array, i) BOOST_PP_TUPLE_ELEM(4, 2, BOOST_PP_WHILE_ ## d(BOOST_PP_ARRAY_REMOVE_P, BOOST_PP_ARRAY_REMOVE_O, (0, i, (0, ()), array)))
# endif
# endif
#
# if BOOST_PP_LIMIT_TUPLE == 256
# define BOOST_PP_ARRAY_REMOVE_ZERO_D(d, array, i, zero) \
BOOST_PP_TUPLE_ELEM(4, 2, BOOST_PP_WHILE_ ## d(BOOST_PP_ARRAY_REMOVE_P, BOOST_PP_ARRAY_REMOVE_O, \
(1, i, BOOST_PP_IIF(zero,(0, ()),(1, (BOOST_PP_ARRAY_ELEM(0,array)))), array)))
# endif
#
# define BOOST_PP_ARRAY_REMOVE_P(d, st) BOOST_PP_NOT_EQUAL(BOOST_PP_TUPLE_ELEM(4, 0, st), BOOST_PP_ARRAY_SIZE(BOOST_PP_TUPLE_ELEM(4, 3, st)))
#
# if BOOST_PP_CONFIG_FLAGS() & BOOST_PP_CONFIG_STRICT()
# define BOOST_PP_ARRAY_REMOVE_O(d, st) BOOST_PP_ARRAY_REMOVE_O_I st
# else
# define BOOST_PP_ARRAY_REMOVE_O(d, st) BOOST_PP_ARRAY_REMOVE_O_I(BOOST_PP_TUPLE_ELEM(4, 0, st), BOOST_PP_TUPLE_ELEM(4, 1, st), BOOST_PP_TUPLE_ELEM(4, 2, st), BOOST_PP_TUPLE_ELEM(4, 3, st))
# endif
#
# if ~BOOST_PP_CONFIG_FLAGS() & BOOST_PP_CONFIG_DMC()
# define BOOST_PP_ARRAY_REMOVE_O_I(n, i, res, arr) (BOOST_PP_INC(n), i, BOOST_PP_IIF(BOOST_PP_NOT_EQUAL(n, i), BOOST_PP_ARRAY_PUSH_BACK, res BOOST_PP_TUPLE_EAT_2)(res, BOOST_PP_ARRAY_ELEM(n, arr)), arr)
# else
# define BOOST_PP_ARRAY_REMOVE_O_I(n, i, res, arr) (BOOST_PP_INC(n), i, BOOST_PP_IIF(BOOST_PP_NOT_EQUAL(n, i), BOOST_PP_ARRAY_PUSH_BACK, BOOST_PP_TUPLE_ELEM_2_0)(res, BOOST_PP_ARRAY_ELEM(n, arr)), arr)
# endif
#
# endif
#
# endif

View File

@ -12,6 +12,10 @@
# ifndef BOOST_PREPROCESSOR_ARRAY_REPLACE_HPP
# define BOOST_PREPROCESSOR_ARRAY_REPLACE_HPP
#
# include <boost/preprocessor/config/config.hpp>
#
# if ~BOOST_PP_CONFIG_FLAGS() & BOOST_PP_CONFIG_STRICT()
#
# include <boost/preprocessor/arithmetic/inc.hpp>
# include <boost/preprocessor/array/elem.hpp>
# include <boost/preprocessor/array/push_back.hpp>
@ -46,4 +50,58 @@
#
# define BOOST_PP_ARRAY_REPLACE_O_I(n, i, elem, res, arr) (BOOST_PP_INC(n), i, elem, BOOST_PP_ARRAY_PUSH_BACK(res, BOOST_PP_IIF(BOOST_PP_NOT_EQUAL(n, i), BOOST_PP_ARRAY_ELEM(n, arr), elem)), arr)
#
# else
#
# include <boost/preprocessor/arithmetic/inc.hpp>
# include <boost/preprocessor/array/elem.hpp>
# include <boost/preprocessor/array/push_back.hpp>
# include <boost/preprocessor/comparison/not_equal.hpp>
# include <boost/preprocessor/control/deduce_d.hpp>
# include <boost/preprocessor/control/iif.hpp>
# include <boost/preprocessor/control/while.hpp>
# if BOOST_PP_LIMIT_TUPLE == 256
# include <boost/preprocessor/logical/not.hpp>
# endif
# include <boost/preprocessor/tuple/elem.hpp>
#
# /* BOOST_PP_ARRAY_REPLACE */
#
# define BOOST_PP_ARRAY_REPLACE(array, i, elem) BOOST_PP_ARRAY_REPLACE_I(BOOST_PP_DEDUCE_D(), array, i, elem)
# define BOOST_PP_ARRAY_REPLACE_I(d, array, i, elem) BOOST_PP_ARRAY_REPLACE_D(d, array, i, elem)
#
# /* BOOST_PP_ARRAY_REPLACE_D */
#
# if ~BOOST_PP_CONFIG_FLAGS() & BOOST_PP_CONFIG_EDG()
# if BOOST_PP_LIMIT_TUPLE == 256
# define BOOST_PP_ARRAY_REPLACE_D(d, array, i, elem) BOOST_PP_ARRAY_REPLACE_ZERO_D(d, array, i, elem, BOOST_PP_NOT(i))
# else
# define BOOST_PP_ARRAY_REPLACE_D(d, array, i, elem) BOOST_PP_TUPLE_ELEM(5, 3, BOOST_PP_WHILE_ ## d(BOOST_PP_ARRAY_REPLACE_P, BOOST_PP_ARRAY_REPLACE_O, (0, i, elem, (0, ()), array)))
# endif
# else
# define BOOST_PP_ARRAY_REPLACE_D(d, array, i, elem) BOOST_PP_ARRAY_REPLACE_D_I(d, array, i, elem)
# if BOOST_PP_LIMIT_TUPLE == 256
# define BOOST_PP_ARRAY_REPLACE_D_I(d, array, i, elem) BOOST_PP_ARRAY_REPLACE_ZERO_D(d, array, i, elem, BOOST_PP_NOT(i))
# else
# define BOOST_PP_ARRAY_REPLACE_D_I(d, array, i, elem) BOOST_PP_TUPLE_ELEM(5, 3, BOOST_PP_WHILE_ ## d(BOOST_PP_ARRAY_REPLACE_P, BOOST_PP_ARRAY_REPLACE_O, (0, i, elem, (0, ()), array)))
# endif
# endif
#
# if BOOST_PP_LIMIT_TUPLE == 256
# define BOOST_PP_ARRAY_REPLACE_ZERO_D(d, array, i, elem, zero) \
BOOST_PP_TUPLE_ELEM(5, 3, BOOST_PP_WHILE_ ## d(BOOST_PP_ARRAY_REPLACE_P, BOOST_PP_ARRAY_REPLACE_O, \
(1, i, elem, BOOST_PP_IIF(zero,(1, (elem)),(1, (BOOST_PP_ARRAY_ELEM(0,array)))), array)))
# endif
#
# define BOOST_PP_ARRAY_REPLACE_P(d, state) BOOST_PP_NOT_EQUAL(BOOST_PP_TUPLE_ELEM(5, 0, state), BOOST_PP_ARRAY_SIZE(BOOST_PP_TUPLE_ELEM(5, 4, state)))
#
# if BOOST_PP_CONFIG_FLAGS() & BOOST_PP_CONFIG_STRICT()
# define BOOST_PP_ARRAY_REPLACE_O(d, state) BOOST_PP_ARRAY_REPLACE_O_I state
# else
# define BOOST_PP_ARRAY_REPLACE_O(d, state) BOOST_PP_ARRAY_REPLACE_O_I(BOOST_PP_TUPLE_ELEM(5, 0, state), BOOST_PP_TUPLE_ELEM(5, 1, state), BOOST_PP_TUPLE_ELEM(5, 2, state), BOOST_PP_TUPLE_ELEM(5, 3, state), BOOST_PP_TUPLE_ELEM(5, 4, state))
# endif
#
# define BOOST_PP_ARRAY_REPLACE_O_I(n, i, elem, res, arr) (BOOST_PP_INC(n), i, elem, BOOST_PP_ARRAY_PUSH_BACK(res, BOOST_PP_IIF(BOOST_PP_NOT_EQUAL(n, i), BOOST_PP_ARRAY_ELEM(n, arr), elem)), arr)
#
# endif
#
# endif

File diff suppressed because it is too large Load Diff

View File

@ -0,0 +1,793 @@
# /* Copyright (C) 2001
# * Housemarque Oy
# * http://www.housemarque.com
# *
# * Distributed under the Boost Software License, Version 1.0. (See
# * accompanying file LICENSE_1_0.txt or copy at
# * http://www.boost.org/LICENSE_1_0.txt)
# */
#
# /* Revised by Paul Mensonides (2002) */
#
# /* See http://www.boost.org for most recent version. */
#
# ifndef BOOST_PREPROCESSOR_COMPARISON_NOT_EQUAL_256_HPP
# define BOOST_PREPROCESSOR_COMPARISON_NOT_EQUAL_256_HPP
#
# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_0(c, y) 0
# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_1(c, y) 0
# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_2(c, y) 0
# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_3(c, y) 0
# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_4(c, y) 0
# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_5(c, y) 0
# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_6(c, y) 0
# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_7(c, y) 0
# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_8(c, y) 0
# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_9(c, y) 0
# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_10(c, y) 0
# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_11(c, y) 0
# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_12(c, y) 0
# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_13(c, y) 0
# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_14(c, y) 0
# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_15(c, y) 0
# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_16(c, y) 0
# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_17(c, y) 0
# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_18(c, y) 0
# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_19(c, y) 0
# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_20(c, y) 0
# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_21(c, y) 0
# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_22(c, y) 0
# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_23(c, y) 0
# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_24(c, y) 0
# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_25(c, y) 0
# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_26(c, y) 0
# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_27(c, y) 0
# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_28(c, y) 0
# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_29(c, y) 0
# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_30(c, y) 0
# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_31(c, y) 0
# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_32(c, y) 0
# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_33(c, y) 0
# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_34(c, y) 0
# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_35(c, y) 0
# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_36(c, y) 0
# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_37(c, y) 0
# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_38(c, y) 0
# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_39(c, y) 0
# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_40(c, y) 0
# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_41(c, y) 0
# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_42(c, y) 0
# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_43(c, y) 0
# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_44(c, y) 0
# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_45(c, y) 0
# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_46(c, y) 0
# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_47(c, y) 0
# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_48(c, y) 0
# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_49(c, y) 0
# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_50(c, y) 0
# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_51(c, y) 0
# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_52(c, y) 0
# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_53(c, y) 0
# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_54(c, y) 0
# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_55(c, y) 0
# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_56(c, y) 0
# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_57(c, y) 0
# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_58(c, y) 0
# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_59(c, y) 0
# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_60(c, y) 0
# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_61(c, y) 0
# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_62(c, y) 0
# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_63(c, y) 0
# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_64(c, y) 0
# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_65(c, y) 0
# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_66(c, y) 0
# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_67(c, y) 0
# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_68(c, y) 0
# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_69(c, y) 0
# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_70(c, y) 0
# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_71(c, y) 0
# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_72(c, y) 0
# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_73(c, y) 0
# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_74(c, y) 0
# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_75(c, y) 0
# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_76(c, y) 0
# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_77(c, y) 0
# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_78(c, y) 0
# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_79(c, y) 0
# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_80(c, y) 0
# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_81(c, y) 0
# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_82(c, y) 0
# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_83(c, y) 0
# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_84(c, y) 0
# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_85(c, y) 0
# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_86(c, y) 0
# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_87(c, y) 0
# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_88(c, y) 0
# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_89(c, y) 0
# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_90(c, y) 0
# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_91(c, y) 0
# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_92(c, y) 0
# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_93(c, y) 0
# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_94(c, y) 0
# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_95(c, y) 0
# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_96(c, y) 0
# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_97(c, y) 0
# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_98(c, y) 0
# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_99(c, y) 0
# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_100(c, y) 0
# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_101(c, y) 0
# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_102(c, y) 0
# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_103(c, y) 0
# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_104(c, y) 0
# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_105(c, y) 0
# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_106(c, y) 0
# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_107(c, y) 0
# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_108(c, y) 0
# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_109(c, y) 0
# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_110(c, y) 0
# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_111(c, y) 0
# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_112(c, y) 0
# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_113(c, y) 0
# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_114(c, y) 0
# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_115(c, y) 0
# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_116(c, y) 0
# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_117(c, y) 0
# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_118(c, y) 0
# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_119(c, y) 0
# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_120(c, y) 0
# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_121(c, y) 0
# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_122(c, y) 0
# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_123(c, y) 0
# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_124(c, y) 0
# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_125(c, y) 0
# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_126(c, y) 0
# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_127(c, y) 0
# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_128(c, y) 0
# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_129(c, y) 0
# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_130(c, y) 0
# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_131(c, y) 0
# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_132(c, y) 0
# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_133(c, y) 0
# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_134(c, y) 0
# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_135(c, y) 0
# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_136(c, y) 0
# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_137(c, y) 0
# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_138(c, y) 0
# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_139(c, y) 0
# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_140(c, y) 0
# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_141(c, y) 0
# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_142(c, y) 0
# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_143(c, y) 0
# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_144(c, y) 0
# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_145(c, y) 0
# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_146(c, y) 0
# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_147(c, y) 0
# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_148(c, y) 0
# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_149(c, y) 0
# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_150(c, y) 0
# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_151(c, y) 0
# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_152(c, y) 0
# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_153(c, y) 0
# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_154(c, y) 0
# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_155(c, y) 0
# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_156(c, y) 0
# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_157(c, y) 0
# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_158(c, y) 0
# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_159(c, y) 0
# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_160(c, y) 0
# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_161(c, y) 0
# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_162(c, y) 0
# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_163(c, y) 0
# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_164(c, y) 0
# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_165(c, y) 0
# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_166(c, y) 0
# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_167(c, y) 0
# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_168(c, y) 0
# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_169(c, y) 0
# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_170(c, y) 0
# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_171(c, y) 0
# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_172(c, y) 0
# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_173(c, y) 0
# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_174(c, y) 0
# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_175(c, y) 0
# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_176(c, y) 0
# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_177(c, y) 0
# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_178(c, y) 0
# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_179(c, y) 0
# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_180(c, y) 0
# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_181(c, y) 0
# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_182(c, y) 0
# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_183(c, y) 0
# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_184(c, y) 0
# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_185(c, y) 0
# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_186(c, y) 0
# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_187(c, y) 0
# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_188(c, y) 0
# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_189(c, y) 0
# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_190(c, y) 0
# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_191(c, y) 0
# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_192(c, y) 0
# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_193(c, y) 0
# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_194(c, y) 0
# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_195(c, y) 0
# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_196(c, y) 0
# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_197(c, y) 0
# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_198(c, y) 0
# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_199(c, y) 0
# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_200(c, y) 0
# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_201(c, y) 0
# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_202(c, y) 0
# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_203(c, y) 0
# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_204(c, y) 0
# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_205(c, y) 0
# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_206(c, y) 0
# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_207(c, y) 0
# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_208(c, y) 0
# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_209(c, y) 0
# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_210(c, y) 0
# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_211(c, y) 0
# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_212(c, y) 0
# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_213(c, y) 0
# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_214(c, y) 0
# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_215(c, y) 0
# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_216(c, y) 0
# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_217(c, y) 0
# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_218(c, y) 0
# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_219(c, y) 0
# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_220(c, y) 0
# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_221(c, y) 0
# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_222(c, y) 0
# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_223(c, y) 0
# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_224(c, y) 0
# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_225(c, y) 0
# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_226(c, y) 0
# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_227(c, y) 0
# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_228(c, y) 0
# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_229(c, y) 0
# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_230(c, y) 0
# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_231(c, y) 0
# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_232(c, y) 0
# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_233(c, y) 0
# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_234(c, y) 0
# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_235(c, y) 0
# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_236(c, y) 0
# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_237(c, y) 0
# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_238(c, y) 0
# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_239(c, y) 0
# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_240(c, y) 0
# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_241(c, y) 0
# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_242(c, y) 0
# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_243(c, y) 0
# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_244(c, y) 0
# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_245(c, y) 0
# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_246(c, y) 0
# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_247(c, y) 0
# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_248(c, y) 0
# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_249(c, y) 0
# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_250(c, y) 0
# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_251(c, y) 0
# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_252(c, y) 0
# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_253(c, y) 0
# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_254(c, y) 0
# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_255(c, y) 0
# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_256(c, y) 0
#
#if ~BOOST_PP_CONFIG_FLAGS() & BOOST_PP_CONFIG_DMC()
# define BOOST_PP_NOT_EQUAL_0(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_1(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_2(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_3(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_4(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_5(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_6(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_7(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_8(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_9(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_10(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_11(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_12(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_13(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_14(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_15(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_16(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_17(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_18(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_19(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_20(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_21(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_22(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_23(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_24(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_25(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_26(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_27(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_28(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_29(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_30(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_31(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_32(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_33(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_34(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_35(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_36(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_37(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_38(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_39(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_40(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_41(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_42(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_43(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_44(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_45(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_46(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_47(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_48(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_49(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_50(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_51(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_52(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_53(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_54(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_55(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_56(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_57(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_58(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_59(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_60(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_61(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_62(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_63(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_64(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_65(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_66(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_67(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_68(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_69(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_70(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_71(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_72(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_73(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_74(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_75(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_76(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_77(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_78(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_79(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_80(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_81(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_82(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_83(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_84(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_85(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_86(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_87(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_88(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_89(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_90(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_91(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_92(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_93(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_94(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_95(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_96(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_97(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_98(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_99(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_100(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_101(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_102(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_103(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_104(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_105(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_106(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_107(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_108(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_109(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_110(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_111(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_112(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_113(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_114(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_115(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_116(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_117(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_118(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_119(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_120(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_121(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_122(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_123(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_124(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_125(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_126(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_127(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_128(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_129(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_130(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_131(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_132(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_133(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_134(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_135(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_136(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_137(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_138(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_139(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_140(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_141(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_142(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_143(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_144(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_145(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_146(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_147(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_148(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_149(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_150(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_151(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_152(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_153(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_154(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_155(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_156(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_157(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_158(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_159(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_160(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_161(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_162(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_163(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_164(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_165(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_166(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_167(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_168(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_169(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_170(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_171(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_172(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_173(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_174(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_175(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_176(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_177(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_178(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_179(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_180(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_181(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_182(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_183(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_184(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_185(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_186(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_187(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_188(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_189(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_190(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_191(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_192(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_193(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_194(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_195(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_196(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_197(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_198(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_199(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_200(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_201(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_202(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_203(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_204(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_205(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_206(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_207(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_208(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_209(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_210(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_211(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_212(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_213(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_214(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_215(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_216(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_217(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_218(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_219(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_220(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_221(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_222(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_223(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_224(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_225(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_226(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_227(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_228(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_229(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_230(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_231(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_232(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_233(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_234(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_235(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_236(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_237(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_238(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_239(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_240(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_241(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_242(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_243(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_244(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_245(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_246(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_247(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_248(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_249(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_250(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_251(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_252(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_253(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_254(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_255(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_256(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL))
# else
# define BOOST_PP_NOT_EQUAL_0(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y##(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_1(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y##(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_2(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y##(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_3(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y##(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_4(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y##(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_5(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y##(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_6(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y##(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_7(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y##(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_8(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y##(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_9(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y##(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_10(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y##(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_11(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y##(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_12(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y##(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_13(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y##(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_14(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y##(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_15(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y##(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_16(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y##(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_17(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y##(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_18(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y##(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_19(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y##(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_20(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y##(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_21(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y##(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_22(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y##(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_23(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y##(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_24(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y##(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_25(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y##(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_26(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y##(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_27(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y##(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_28(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y##(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_29(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y##(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_30(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y##(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_31(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y##(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_32(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y##(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_33(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y##(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_34(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y##(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_35(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y##(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_36(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y##(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_37(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y##(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_38(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y##(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_39(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y##(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_40(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y##(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_41(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y##(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_42(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y##(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_43(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y##(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_44(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y##(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_45(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y##(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_46(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y##(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_47(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y##(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_48(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y##(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_49(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y##(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_50(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y##(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_51(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y##(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_52(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y##(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_53(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y##(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_54(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y##(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_55(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y##(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_56(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y##(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_57(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y##(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_58(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y##(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_59(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y##(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_60(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y##(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_61(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y##(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_62(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y##(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_63(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y##(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_64(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y##(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_65(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y##(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_66(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y##(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_67(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y##(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_68(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y##(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_69(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y##(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_70(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y##(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_71(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y##(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_72(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y##(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_73(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y##(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_74(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y##(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_75(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y##(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_76(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y##(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_77(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y##(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_78(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y##(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_79(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y##(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_80(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y##(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_81(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y##(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_82(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y##(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_83(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y##(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_84(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y##(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_85(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y##(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_86(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y##(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_87(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y##(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_88(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y##(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_89(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y##(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_90(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y##(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_91(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y##(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_92(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y##(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_93(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y##(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_94(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y##(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_95(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y##(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_96(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y##(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_97(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y##(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_98(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y##(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_99(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y##(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_100(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y##(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_101(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y##(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_102(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y##(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_103(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y##(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_104(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y##(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_105(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y##(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_106(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y##(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_107(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y##(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_108(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y##(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_109(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y##(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_110(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y##(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_111(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y##(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_112(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y##(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_113(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y##(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_114(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y##(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_115(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y##(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_116(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y##(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_117(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y##(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_118(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y##(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_119(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y##(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_120(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y##(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_121(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y##(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_122(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y##(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_123(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y##(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_124(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y##(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_125(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y##(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_126(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y##(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_127(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y##(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_128(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y##(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_129(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y##(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_130(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y##(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_131(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y##(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_132(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y##(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_133(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y##(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_134(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y##(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_135(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y##(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_136(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y##(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_137(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y##(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_138(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y##(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_139(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y##(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_140(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y##(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_141(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y##(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_142(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y##(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_143(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y##(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_144(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y##(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_145(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y##(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_146(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y##(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_147(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y##(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_148(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y##(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_149(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y##(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_150(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y##(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_151(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y##(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_152(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y##(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_153(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y##(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_154(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y##(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_155(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y##(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_156(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y##(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_157(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y##(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_158(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y##(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_159(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y##(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_160(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y##(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_161(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y##(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_162(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y##(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_163(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y##(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_164(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y##(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_165(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y##(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_166(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y##(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_167(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y##(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_168(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y##(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_169(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y##(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_170(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y##(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_171(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y##(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_172(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y##(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_173(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y##(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_174(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y##(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_175(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y##(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_176(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y##(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_177(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y##(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_178(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y##(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_179(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y##(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_180(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y##(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_181(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y##(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_182(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y##(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_183(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y##(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_184(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y##(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_185(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y##(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_186(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y##(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_187(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y##(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_188(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y##(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_189(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y##(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_190(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y##(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_191(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y##(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_192(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y##(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_193(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y##(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_194(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y##(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_195(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y##(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_196(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y##(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_197(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y##(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_198(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y##(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_199(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y##(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_200(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y##(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_201(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y##(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_202(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y##(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_203(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y##(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_204(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y##(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_205(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y##(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_206(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y##(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_207(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y##(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_208(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y##(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_209(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y##(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_210(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y##(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_211(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y##(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_212(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y##(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_213(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y##(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_214(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y##(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_215(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y##(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_216(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y##(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_217(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y##(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_218(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y##(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_219(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y##(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_220(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y##(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_221(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y##(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_222(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y##(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_223(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y##(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_224(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y##(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_225(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y##(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_226(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y##(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_227(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y##(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_228(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y##(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_229(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y##(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_230(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y##(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_231(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y##(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_232(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y##(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_233(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y##(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_234(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y##(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_235(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y##(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_236(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y##(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_237(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y##(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_238(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y##(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_239(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y##(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_240(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y##(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_241(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y##(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_242(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y##(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_243(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y##(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_244(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y##(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_245(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y##(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_246(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y##(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_247(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y##(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_248(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y##(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_249(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y##(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_250(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y##(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_251(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y##(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_252(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y##(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_253(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y##(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_254(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y##(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_255(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y##(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_256(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y##(1, BOOST_PP_NIL))
# endif
#
# endif

View File

@ -0,0 +1,532 @@
# /* Copyright (C) 2001
# * Housemarque Oy
# * http://www.housemarque.com
# *
# * Distributed under the Boost Software License, Version 1.0. (See
# * accompanying file LICENSE_1_0.txt or copy at
# * http://www.boost.org/LICENSE_1_0.txt)
# */
#
# /* Revised by Paul Mensonides (2002) */
# /* Revised by Edward Diener (2020) */
#
# /* See http://www.boost.org for most recent version. */
#
# ifndef BOOST_PREPROCESSOR_COMPARISON_NOT_EQUAL_512_HPP
# define BOOST_PREPROCESSOR_COMPARISON_NOT_EQUAL_512_HPP
#
# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_257(c, y) 0
# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_258(c, y) 0
# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_259(c, y) 0
# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_260(c, y) 0
# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_261(c, y) 0
# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_262(c, y) 0
# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_263(c, y) 0
# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_264(c, y) 0
# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_265(c, y) 0
# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_266(c, y) 0
# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_267(c, y) 0
# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_268(c, y) 0
# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_269(c, y) 0
# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_270(c, y) 0
# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_271(c, y) 0
# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_272(c, y) 0
# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_273(c, y) 0
# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_274(c, y) 0
# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_275(c, y) 0
# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_276(c, y) 0
# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_277(c, y) 0
# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_278(c, y) 0
# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_279(c, y) 0
# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_280(c, y) 0
# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_281(c, y) 0
# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_282(c, y) 0
# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_283(c, y) 0
# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_284(c, y) 0
# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_285(c, y) 0
# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_286(c, y) 0
# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_287(c, y) 0
# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_288(c, y) 0
# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_289(c, y) 0
# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_290(c, y) 0
# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_291(c, y) 0
# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_292(c, y) 0
# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_293(c, y) 0
# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_294(c, y) 0
# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_295(c, y) 0
# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_296(c, y) 0
# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_297(c, y) 0
# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_298(c, y) 0
# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_299(c, y) 0
# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_300(c, y) 0
# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_301(c, y) 0
# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_302(c, y) 0
# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_303(c, y) 0
# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_304(c, y) 0
# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_305(c, y) 0
# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_306(c, y) 0
# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_307(c, y) 0
# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_308(c, y) 0
# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_309(c, y) 0
# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_310(c, y) 0
# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_311(c, y) 0
# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_312(c, y) 0
# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_313(c, y) 0
# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_314(c, y) 0
# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_315(c, y) 0
# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_316(c, y) 0
# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_317(c, y) 0
# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_318(c, y) 0
# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_319(c, y) 0
# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_320(c, y) 0
# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_321(c, y) 0
# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_322(c, y) 0
# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_323(c, y) 0
# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_324(c, y) 0
# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_325(c, y) 0
# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_326(c, y) 0
# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_327(c, y) 0
# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_328(c, y) 0
# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_329(c, y) 0
# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_330(c, y) 0
# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_331(c, y) 0
# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_332(c, y) 0
# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_333(c, y) 0
# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_334(c, y) 0
# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_335(c, y) 0
# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_336(c, y) 0
# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_337(c, y) 0
# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_338(c, y) 0
# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_339(c, y) 0
# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_340(c, y) 0
# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_341(c, y) 0
# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_342(c, y) 0
# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_343(c, y) 0
# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_344(c, y) 0
# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_345(c, y) 0
# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_346(c, y) 0
# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_347(c, y) 0
# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_348(c, y) 0
# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_349(c, y) 0
# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_350(c, y) 0
# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_351(c, y) 0
# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_352(c, y) 0
# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_353(c, y) 0
# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_354(c, y) 0
# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_355(c, y) 0
# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_356(c, y) 0
# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_357(c, y) 0
# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_358(c, y) 0
# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_359(c, y) 0
# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_360(c, y) 0
# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_361(c, y) 0
# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_362(c, y) 0
# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_363(c, y) 0
# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_364(c, y) 0
# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_365(c, y) 0
# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_366(c, y) 0
# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_367(c, y) 0
# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_368(c, y) 0
# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_369(c, y) 0
# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_370(c, y) 0
# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_371(c, y) 0
# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_372(c, y) 0
# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_373(c, y) 0
# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_374(c, y) 0
# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_375(c, y) 0
# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_376(c, y) 0
# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_377(c, y) 0
# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_378(c, y) 0
# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_379(c, y) 0
# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_380(c, y) 0
# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_381(c, y) 0
# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_382(c, y) 0
# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_383(c, y) 0
# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_384(c, y) 0
# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_385(c, y) 0
# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_386(c, y) 0
# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_387(c, y) 0
# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_388(c, y) 0
# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_389(c, y) 0
# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_390(c, y) 0
# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_391(c, y) 0
# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_392(c, y) 0
# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_393(c, y) 0
# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_394(c, y) 0
# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_395(c, y) 0
# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_396(c, y) 0
# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_397(c, y) 0
# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_398(c, y) 0
# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_399(c, y) 0
# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_400(c, y) 0
# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_401(c, y) 0
# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_402(c, y) 0
# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_403(c, y) 0
# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_404(c, y) 0
# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_405(c, y) 0
# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_406(c, y) 0
# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_407(c, y) 0
# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_408(c, y) 0
# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_409(c, y) 0
# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_410(c, y) 0
# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_411(c, y) 0
# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_412(c, y) 0
# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_413(c, y) 0
# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_414(c, y) 0
# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_415(c, y) 0
# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_416(c, y) 0
# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_417(c, y) 0
# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_418(c, y) 0
# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_419(c, y) 0
# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_420(c, y) 0
# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_421(c, y) 0
# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_422(c, y) 0
# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_423(c, y) 0
# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_424(c, y) 0
# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_425(c, y) 0
# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_426(c, y) 0
# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_427(c, y) 0
# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_428(c, y) 0
# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_429(c, y) 0
# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_430(c, y) 0
# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_431(c, y) 0
# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_432(c, y) 0
# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_433(c, y) 0
# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_434(c, y) 0
# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_435(c, y) 0
# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_436(c, y) 0
# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_437(c, y) 0
# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_438(c, y) 0
# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_439(c, y) 0
# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_440(c, y) 0
# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_441(c, y) 0
# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_442(c, y) 0
# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_443(c, y) 0
# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_444(c, y) 0
# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_445(c, y) 0
# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_446(c, y) 0
# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_447(c, y) 0
# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_448(c, y) 0
# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_449(c, y) 0
# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_450(c, y) 0
# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_451(c, y) 0
# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_452(c, y) 0
# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_453(c, y) 0
# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_454(c, y) 0
# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_455(c, y) 0
# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_456(c, y) 0
# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_457(c, y) 0
# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_458(c, y) 0
# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_459(c, y) 0
# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_460(c, y) 0
# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_461(c, y) 0
# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_462(c, y) 0
# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_463(c, y) 0
# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_464(c, y) 0
# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_465(c, y) 0
# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_466(c, y) 0
# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_467(c, y) 0
# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_468(c, y) 0
# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_469(c, y) 0
# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_470(c, y) 0
# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_471(c, y) 0
# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_472(c, y) 0
# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_473(c, y) 0
# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_474(c, y) 0
# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_475(c, y) 0
# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_476(c, y) 0
# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_477(c, y) 0
# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_478(c, y) 0
# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_479(c, y) 0
# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_480(c, y) 0
# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_481(c, y) 0
# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_482(c, y) 0
# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_483(c, y) 0
# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_484(c, y) 0
# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_485(c, y) 0
# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_486(c, y) 0
# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_487(c, y) 0
# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_488(c, y) 0
# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_489(c, y) 0
# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_490(c, y) 0
# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_491(c, y) 0
# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_492(c, y) 0
# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_493(c, y) 0
# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_494(c, y) 0
# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_495(c, y) 0
# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_496(c, y) 0
# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_497(c, y) 0
# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_498(c, y) 0
# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_499(c, y) 0
# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_500(c, y) 0
# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_501(c, y) 0
# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_502(c, y) 0
# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_503(c, y) 0
# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_504(c, y) 0
# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_505(c, y) 0
# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_506(c, y) 0
# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_507(c, y) 0
# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_508(c, y) 0
# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_509(c, y) 0
# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_510(c, y) 0
# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_511(c, y) 0
# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_512(c, y) 0
#
# define BOOST_PP_NOT_EQUAL_257(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_258(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_259(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_260(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_261(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_262(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_263(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_264(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_265(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_266(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_267(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_268(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_269(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_270(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_271(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_272(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_273(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_274(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_275(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_276(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_277(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_278(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_279(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_280(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_281(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_282(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_283(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_284(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_285(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_286(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_287(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_288(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_289(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_290(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_291(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_292(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_293(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_294(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_295(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_296(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_297(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_298(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_299(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_300(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_301(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_302(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_303(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_304(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_305(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_306(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_307(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_308(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_309(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_310(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_311(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_312(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_313(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_314(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_315(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_316(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_317(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_318(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_319(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_320(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_321(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_322(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_323(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_324(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_325(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_326(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_327(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_328(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_329(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_330(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_331(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_332(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_333(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_334(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_335(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_336(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_337(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_338(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_339(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_340(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_341(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_342(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_343(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_344(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_345(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_346(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_347(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_348(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_349(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_350(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_351(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_352(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_353(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_354(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_355(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_356(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_357(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_358(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_359(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_360(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_361(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_362(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_363(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_364(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_365(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_366(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_367(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_368(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_369(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_370(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_371(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_372(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_373(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_374(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_375(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_376(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_377(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_378(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_379(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_380(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_381(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_382(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_383(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_384(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_385(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_386(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_387(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_388(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_389(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_390(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_391(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_392(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_393(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_394(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_395(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_396(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_397(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_398(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_399(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_400(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_401(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_402(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_403(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_404(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_405(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_406(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_407(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_408(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_409(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_410(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_411(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_412(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_413(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_414(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_415(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_416(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_417(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_418(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_419(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_420(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_421(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_422(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_423(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_424(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_425(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_426(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_427(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_428(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_429(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_430(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_431(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_432(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_433(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_434(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_435(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_436(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_437(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_438(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_439(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_440(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_441(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_442(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_443(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_444(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_445(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_446(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_447(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_448(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_449(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_450(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_451(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_452(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_453(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_454(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_455(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_456(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_457(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_458(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_459(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_460(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_461(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_462(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_463(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_464(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_465(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_466(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_467(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_468(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_469(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_470(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_471(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_472(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_473(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_474(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_475(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_476(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_477(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_478(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_479(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_480(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_481(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_482(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_483(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_484(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_485(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_486(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_487(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_488(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_489(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_490(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_491(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_492(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_493(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_494(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_495(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_496(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_497(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_498(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_499(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_500(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_501(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_502(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_503(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_504(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_505(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_506(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_507(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_508(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_509(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_510(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_511(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL))
# define BOOST_PP_NOT_EQUAL_512(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL))
#
# endif

View File

@ -8,14 +8,18 @@
# */
#
# /* Revised by Paul Mensonides (2002) */
# /* Revised by Edward Diener (2020) */
#
# /* See http://www.boost.org for most recent version. */
#
# ifndef BOOST_PREPROCESSOR_COMPARISON_NOT_EQUAL_HPP
# define BOOST_PREPROCESSOR_COMPARISON_NOT_EQUAL_HPP
#
# include <boost/preprocessor/cat.hpp>
# include <boost/preprocessor/config/config.hpp>
#
# if ~BOOST_PP_CONFIG_FLAGS() & BOOST_PP_CONFIG_STRICT()
#
# include <boost/preprocessor/cat.hpp>
# include <boost/preprocessor/control/iif.hpp>
#
# /* BOOST_PP_NOT_EQUAL */
@ -811,4 +815,43 @@
# define BOOST_PP_NOT_EQUAL_256(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y##(1, BOOST_PP_NIL))
# endif
#
# else
#
# include <boost/preprocessor/cat.hpp>
# include <boost/preprocessor/control/iif.hpp>
#
# /* BOOST_PP_NOT_EQUAL */
#
# if ~BOOST_PP_CONFIG_FLAGS() & BOOST_PP_CONFIG_MWCC()
# define BOOST_PP_NOT_EQUAL(x, y) BOOST_PP_NOT_EQUAL_I(x, y)
# else
# define BOOST_PP_NOT_EQUAL(x, y) BOOST_PP_NOT_EQUAL_OO((x, y))
# define BOOST_PP_NOT_EQUAL_OO(par) BOOST_PP_NOT_EQUAL_I ## par
# endif
#
# define BOOST_PP_NOT_EQUAL_I(x, y) BOOST_PP_CAT(BOOST_PP_NOT_EQUAL_CHECK_, BOOST_PP_NOT_EQUAL_ ## x(0, BOOST_PP_NOT_EQUAL_ ## y))
#
# /* BOOST_PP_NOT_EQUAL_D */
#
# define BOOST_PP_NOT_EQUAL_D(d, x, y) BOOST_PP_NOT_EQUAL(x, y)
#
# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NIL 1
#
# include <boost/preprocessor/config/limits.hpp>
#
# if BOOST_PP_LIMIT_MAG == 256
# include <boost/preprocessor/comparison/limits/not_equal_256.hpp>
# elif BOOST_PP_LIMIT_MAG == 512
# include <boost/preprocessor/comparison/limits/not_equal_256.hpp>
# include <boost/preprocessor/comparison/limits/not_equal_512.hpp>
# elif BOOST_PP_LIMIT_MAG == 1024
# include <boost/preprocessor/comparison/limits/not_equal_256.hpp>
# include <boost/preprocessor/comparison/limits/not_equal_512.hpp>
# include <boost/preprocessor/comparison/limits/not_equal_1024.hpp>
# else
# error Incorrect value for the BOOST_PP_LIMIT_MAG limit
# endif
#
# endif
#
# endif

View File

@ -1,7 +1,7 @@
# /* **************************************************************************
# * *
# * (C) Copyright Paul Mensonides 2002-2011. *
# * (C) Copyright Edward Diener 2011. *
# * (C) Copyright Edward Diener 2011-2020. *
# * Distributed under the Boost Software License, Version 1.0. (See *
# * accompanying file LICENSE_1_0.txt or copy at *
# * http://www.boost.org/LICENSE_1_0.txt) *
@ -76,40 +76,23 @@
#
# /* BOOST_PP_VARIADICS */
#
# define BOOST_PP_VARIADICS_MSVC 0
# if !defined BOOST_PP_VARIADICS
# /* variadic support explicitly disabled for all untested compilers */
# if defined __GCCXML__ || (defined __NVCC__ && defined __CUDACC__) || defined __PATHSCALE__ || defined __DMC__ || (defined __CODEGEARC__ && !defined(__clang__)) || (defined __BORLANDC__ && !defined(__clang__)) || defined __MWERKS__ || ( defined __SUNPRO_CC && __SUNPRO_CC < 0x5120 ) || (defined __HP_aCC && !defined __EDG__) || defined __MRC__ || defined __SC__ || (defined(__PGI) && !defined(__EDG__))
# define BOOST_PP_VARIADICS 0
# elif defined(_MSC_VER) && defined(__clang__)
# define BOOST_PP_VARIADICS 1
# /* VC++ (C/C++) and Intel C++ Compiler >= 17.0 with MSVC */
# elif defined _MSC_VER && _MSC_VER >= 1400 && (!defined __EDG__ || defined(__INTELLISENSE__) || defined(__INTEL_COMPILER) && __INTEL_COMPILER >= 1700)
# define BOOST_PP_VARIADICS 1
# if !defined(_MSVC_TRADITIONAL) || _MSVC_TRADITIONAL
# undef BOOST_PP_VARIADICS_MSVC
# define BOOST_PP_VARIADICS_MSVC 1
# endif
# /* Wave (C/C++), GCC (C++) */
# elif defined __WAVE__ && __WAVE_HAS_VARIADICS__ || defined __GNUC__ && defined __GXX_EXPERIMENTAL_CXX0X__ && __GXX_EXPERIMENTAL_CXX0X__
# define BOOST_PP_VARIADICS 1
# /* EDG-based (C/C++), GCC (C), and unknown (C/C++) */
# elif !defined __cplusplus && __STDC_VERSION__ >= 199901L || __cplusplus >= 201103L
# define BOOST_PP_VARIADICS 1
# else
# define BOOST_PP_VARIADICS 0
# endif
# elif !BOOST_PP_VARIADICS + 1 < 2
# if defined BOOST_PP_VARIADICS
# undef BOOST_PP_VARIADICS
# define BOOST_PP_VARIADICS 1
# if defined _MSC_VER && _MSC_VER >= 1400 && !defined(__clang__) && (defined(__INTELLISENSE__) || (defined(__INTEL_COMPILER) && __INTEL_COMPILER >= 1700) || !(defined __EDG__ || defined __GCCXML__ || (defined __NVCC__ && defined __CUDACC__) || defined __PATHSCALE__ || defined __DMC__ || defined __CODEGEARC__ || defined __BORLANDC__ || defined __MWERKS__ || defined __SUNPRO_CC || defined __HP_aCC || defined __MRC__ || defined __SC__ || defined __IBMCPP__ || defined __PGI)) && (!defined(_MSVC_TRADITIONAL) || _MSVC_TRADITIONAL)
# undef BOOST_PP_VARIADICS_MSVC
# define BOOST_PP_VARIADICS_MSVC 1
# endif
# endif
# if defined BOOST_PP_VARIADICS_MSVC
# undef BOOST_PP_VARIADICS_MSVC
# endif
# define BOOST_PP_VARIADICS 1
# if defined _MSC_VER && _MSC_VER >= 1400 && !defined(__clang__) && (defined(__INTELLISENSE__) || (defined(__INTEL_COMPILER) && __INTEL_COMPILER >= 1700) || !(defined __EDG__ || defined __GCCXML__ || defined __PATHSCALE__ || defined __DMC__ || defined __CODEGEARC__ || defined __BORLANDC__ || defined __MWERKS__ || defined __SUNPRO_CC || defined __HP_aCC || defined __MRC__ || defined __SC__ || defined __IBMCPP__ || defined __PGI)) && (!defined(_MSVC_TRADITIONAL) || _MSVC_TRADITIONAL)
# define BOOST_PP_VARIADICS_MSVC 1
# else
# undef BOOST_PP_VARIADICS
# define BOOST_PP_VARIADICS 0
# define BOOST_PP_VARIADICS_MSVC 0
# endif
#
# if BOOST_PP_CONFIG_FLAGS() & BOOST_PP_CONFIG_STRICT()
# define BOOST_PP_IS_STANDARD() 1
# else
# define BOOST_PP_IS_STANDARD() 0
# endif
#
# endif

View File

@ -8,22 +8,155 @@
# */
#
# /* Revised by Paul Mensonides (2002) */
# /* Revised by Edward Diener (2011) */
# /* Revised by Edward Diener (2011,2020) */
#
# /* See http://www.boost.org for most recent version. */
#
# ifndef BOOST_PREPROCESSOR_CONFIG_LIMITS_HPP
# define BOOST_PREPROCESSOR_CONFIG_LIMITS_HPP
#
# include <boost/preprocessor/config/config.hpp>
#
# if defined(BOOST_PP_LIMIT_DIM)
# undef BOOST_PP_LIMIT_DIM
# endif
# if defined(BOOST_PP_LIMIT_ITERATION_DIM)
# undef BOOST_PP_LIMIT_ITERATION_DIM
# endif
# if defined(BOOST_PP_LIMIT_SLOT_SIG)
# undef BOOST_PP_LIMIT_SLOT_SIG
# endif
# if defined(BOOST_PP_LIMIT_SLOT_COUNT)
# undef BOOST_PP_LIMIT_SLOT_COUNT
# endif
# if defined(BOOST_PP_LIMIT_WHILE)
# undef BOOST_PP_LIMIT_WHILE
# endif
#
# if ~BOOST_PP_CONFIG_FLAGS() & BOOST_PP_CONFIG_STRICT()
#
# if defined(BOOST_PP_LIMIT_MAG)
# undef BOOST_PP_LIMIT_MAG
# endif
# if defined(BOOST_PP_LIMIT_VARIADIC)
# undef BOOST_PP_LIMIT_VARIADIC
# endif
# if defined(BOOST_PP_LIMIT_TUPLE)
# undef BOOST_PP_LIMIT_TUPLE
# endif
# if defined(BOOST_PP_LIMIT_FOR)
# undef BOOST_PP_LIMIT_FOR
# endif
# if defined(BOOST_PP_LIMIT_REPEAT)
# undef BOOST_PP_LIMIT_REPEAT
# endif
# if defined(BOOST_PP_LIMIT_SEQ)
# undef BOOST_PP_LIMIT_SEQ
# endif
# if defined(BOOST_PP_LIMIT_ITERATION)
# undef BOOST_PP_LIMIT_ITERATION
# endif
#
# define BOOST_PP_LIMIT_MAG 256
# define BOOST_PP_LIMIT_TUPLE 64
# define BOOST_PP_LIMIT_DIM 3
# define BOOST_PP_LIMIT_REPEAT 256
# define BOOST_PP_LIMIT_WHILE 256
# define BOOST_PP_LIMIT_VARIADIC 64
# define BOOST_PP_LIMIT_TUPLE 64
# define BOOST_PP_LIMIT_FOR 256
# define BOOST_PP_LIMIT_ITERATION 256
# define BOOST_PP_LIMIT_ITERATION_DIM 3
# define BOOST_PP_LIMIT_SEQ 256
# define BOOST_PP_LIMIT_REPEAT 256
# define BOOST_PP_LIMIT_ITERATION 256
#
#else
#
# if defined(BOOST_PP_LIMIT_MAG)
# if !(BOOST_PP_LIMIT_MAG == 256 || BOOST_PP_LIMIT_MAG == 512 || BOOST_PP_LIMIT_MAG == 1024)
# undef BOOST_PP_LIMIT_MAG
# define BOOST_PP_LIMIT_MAG 256
# define BOOST_PP_LIMIT_WHILE 256
# else
# define BOOST_PP_LIMIT_WHILE BOOST_PP_LIMIT_MAG
# if !defined(BOOST_PP_LIMIT_SEQ)
# define BOOST_PP_LIMIT_SEQ BOOST_PP_LIMIT_MAG
# endif
# endif
# else
# define BOOST_PP_LIMIT_MAG 256
# define BOOST_PP_LIMIT_WHILE 256
# endif
#
# if defined(BOOST_PP_LIMIT_VARIADIC)
# if !(BOOST_PP_LIMIT_VARIADIC == 64 || BOOST_PP_LIMIT_VARIADIC == 128 || BOOST_PP_LIMIT_VARIADIC == 256)
# undef BOOST_PP_LIMIT_VARIADIC
# define BOOST_PP_LIMIT_VARIADIC 64
# endif
# else
# define BOOST_PP_LIMIT_VARIADIC 64
# endif
#
# if defined(BOOST_PP_LIMIT_TUPLE)
# if !(BOOST_PP_LIMIT_TUPLE == 64 || BOOST_PP_LIMIT_TUPLE == 128 || BOOST_PP_LIMIT_TUPLE == 256)
# undef BOOST_PP_LIMIT_TUPLE
# define BOOST_PP_LIMIT_TUPLE 64
# elif BOOST_PP_LIMIT_TUPLE > BOOST_PP_LIMIT_VARIADIC
# undef BOOST_PP_LIMIT_VARIADIC
# define BOOST_PP_LIMIT_VARIADIC BOOST_PP_LIMIT_TUPLE
# endif
# else
# define BOOST_PP_LIMIT_TUPLE 64
# endif
#
# if defined(BOOST_PP_LIMIT_FOR)
# if !(BOOST_PP_LIMIT_FOR == 256 || BOOST_PP_LIMIT_FOR == 512 || BOOST_PP_LIMIT_FOR == 1024)
# undef BOOST_PP_LIMIT_FOR
# define BOOST_PP_LIMIT_FOR 256
# elif BOOST_PP_LIMIT_FOR > BOOST_PP_LIMIT_MAG
# undef BOOST_PP_LIMIT_FOR
# define BOOST_PP_LIMIT_FOR BOOST_PP_LIMIT_MAG
# endif
# else
# define BOOST_PP_LIMIT_FOR 256
# endif
#
# if defined(BOOST_PP_LIMIT_REPEAT)
# if !(BOOST_PP_LIMIT_REPEAT == 256 || BOOST_PP_LIMIT_REPEAT == 512 || BOOST_PP_LIMIT_REPEAT == 1024)
# undef BOOST_PP_LIMIT_REPEAT
# define BOOST_PP_LIMIT_REPEAT 256
# elif BOOST_PP_LIMIT_REPEAT > BOOST_PP_LIMIT_MAG
# undef BOOST_PP_LIMIT_REPEAT
# define BOOST_PP_LIMIT_REPEAT BOOST_PP_LIMIT_MAG
# endif
# else
# define BOOST_PP_LIMIT_REPEAT 256
# endif
#
# if defined(BOOST_PP_LIMIT_SEQ)
# if !(BOOST_PP_LIMIT_SEQ == 256 || BOOST_PP_LIMIT_SEQ == 512 || BOOST_PP_LIMIT_SEQ == 1024)
# undef BOOST_PP_LIMIT_SEQ
# define BOOST_PP_LIMIT_SEQ 256
# elif BOOST_PP_LIMIT_SEQ > BOOST_PP_LIMIT_MAG
# undef BOOST_PP_LIMIT_SEQ
# define BOOST_PP_LIMIT_SEQ BOOST_PP_LIMIT_MAG
# endif
# else
# define BOOST_PP_LIMIT_SEQ 256
# endif
#
# if defined(BOOST_PP_LIMIT_ITERATION)
# if !(BOOST_PP_LIMIT_ITERATION == 256 || BOOST_PP_LIMIT_ITERATION == 512 || BOOST_PP_LIMIT_ITERATION == 1024)
# undef BOOST_PP_LIMIT_ITERATION
# define BOOST_PP_LIMIT_ITERATION 256
# elif BOOST_PP_LIMIT_ITERATION > BOOST_PP_LIMIT_MAG
# undef BOOST_PP_LIMIT_ITERATION
# define BOOST_PP_LIMIT_ITERATION BOOST_PP_LIMIT_MAG
# endif
# else
# define BOOST_PP_LIMIT_ITERATION 256
# endif
#
# endif
#
# define BOOST_PP_LIMIT_DIM 3
# define BOOST_PP_LIMIT_ITERATION_DIM 3
# define BOOST_PP_LIMIT_SLOT_SIG 10
# define BOOST_PP_LIMIT_SLOT_COUNT 5
#

View File

@ -7,11 +7,17 @@
# * *
# ************************************************************************** */
#
# /* Revised by Edward Diener (2020) */
#
# /* See http://www.boost.org for most recent version. */
#
# ifndef BOOST_PREPROCESSOR_CONTROL_DEDUCE_D_HPP
# define BOOST_PREPROCESSOR_CONTROL_DEDUCE_D_HPP
#
# include <boost/preprocessor/config/config.hpp>
#
# if ~BOOST_PP_CONFIG_FLAGS() & BOOST_PP_CONFIG_STRICT()
#
# include <boost/preprocessor/control/while.hpp>
# include <boost/preprocessor/detail/auto_rec.hpp>
#
@ -19,4 +25,25 @@
#
# define BOOST_PP_DEDUCE_D() BOOST_PP_AUTO_REC(BOOST_PP_WHILE_P, 256)
#
# else
#
# include <boost/preprocessor/arithmetic/dec.hpp>
# include <boost/preprocessor/control/while.hpp>
# include <boost/preprocessor/detail/auto_rec.hpp>
# include <boost/preprocessor/config/limits.hpp>
#
# /* BOOST_PP_DEDUCE_D */
#
# if BOOST_PP_LIMIT_WHILE == 256
# define BOOST_PP_DEDUCE_D() BOOST_PP_DEC(BOOST_PP_AUTO_REC(BOOST_PP_WHILE_P, 256))
# elif BOOST_PP_LIMIT_WHILE == 512
# define BOOST_PP_DEDUCE_D() BOOST_PP_DEC(BOOST_PP_AUTO_REC(BOOST_PP_WHILE_P, 512))
# elif BOOST_PP_LIMIT_WHILE == 1024
# define BOOST_PP_DEDUCE_D() BOOST_PP_DEC(BOOST_PP_AUTO_REC(BOOST_PP_WHILE_P, 1024))
# else
# error Incorrect value for the BOOST_PP_LIMIT_WHILE limit
# endif
#
# endif
#
# endif

View File

@ -11,8 +11,8 @@
#
# /* See http://www.boost.org for most recent version. */
#
# ifndef BOOST_PREPROCESSOR_CONTROL_DETAIL_WHILE_HPP
# define BOOST_PREPROCESSOR_CONTROL_DETAIL_WHILE_HPP
# ifndef BOOST_PREPROCESSOR_CONTROL_DETAIL_DMC_WHILE_HPP
# define BOOST_PREPROCESSOR_CONTROL_DETAIL_DMC_WHILE_HPP
#
# include <boost/preprocessor/control/iif.hpp>
# include <boost/preprocessor/logical/bool.hpp>
@ -532,5 +532,4 @@
# define BOOST_PP_WHILE_255_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_256, BOOST_PP_TUPLE_ELEM_3_2)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_TUPLE_ELEM_2_1)(256, s))
# define BOOST_PP_WHILE_256_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_257, BOOST_PP_TUPLE_ELEM_3_2)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_TUPLE_ELEM_2_1)(257, s))
#
#
# endif

File diff suppressed because it is too large Load Diff

View File

@ -0,0 +1,533 @@
# /* Copyright (C) 2001
# * Housemarque Oy
# * http://www.housemarque.com
# *
# * Distributed under the Boost Software License, Version 1.0. (See
# * accompanying file LICENSE_1_0.txt or copy at
# * http://www.boost.org/LICENSE_1_0.txt)
# */
#
# /* Revised by Paul Mensonides (2002) */
#
# /* See http://www.boost.org for most recent version. */
#
# ifndef BOOST_PREPROCESSOR_CONTROL_DETAIL_EDG_WHILE_256_HPP
# define BOOST_PREPROCESSOR_CONTROL_DETAIL_EDG_WHILE_256_HPP
#
# define BOOST_PP_WHILE_0(p, o, s) BOOST_PP_WHILE_0_I(p, o, s)
# define BOOST_PP_WHILE_1(p, o, s) BOOST_PP_WHILE_1_I(p, o, s)
# define BOOST_PP_WHILE_2(p, o, s) BOOST_PP_WHILE_2_I(p, o, s)
# define BOOST_PP_WHILE_3(p, o, s) BOOST_PP_WHILE_3_I(p, o, s)
# define BOOST_PP_WHILE_4(p, o, s) BOOST_PP_WHILE_4_I(p, o, s)
# define BOOST_PP_WHILE_5(p, o, s) BOOST_PP_WHILE_5_I(p, o, s)
# define BOOST_PP_WHILE_6(p, o, s) BOOST_PP_WHILE_6_I(p, o, s)
# define BOOST_PP_WHILE_7(p, o, s) BOOST_PP_WHILE_7_I(p, o, s)
# define BOOST_PP_WHILE_8(p, o, s) BOOST_PP_WHILE_8_I(p, o, s)
# define BOOST_PP_WHILE_9(p, o, s) BOOST_PP_WHILE_9_I(p, o, s)
# define BOOST_PP_WHILE_10(p, o, s) BOOST_PP_WHILE_10_I(p, o, s)
# define BOOST_PP_WHILE_11(p, o, s) BOOST_PP_WHILE_11_I(p, o, s)
# define BOOST_PP_WHILE_12(p, o, s) BOOST_PP_WHILE_12_I(p, o, s)
# define BOOST_PP_WHILE_13(p, o, s) BOOST_PP_WHILE_13_I(p, o, s)
# define BOOST_PP_WHILE_14(p, o, s) BOOST_PP_WHILE_14_I(p, o, s)
# define BOOST_PP_WHILE_15(p, o, s) BOOST_PP_WHILE_15_I(p, o, s)
# define BOOST_PP_WHILE_16(p, o, s) BOOST_PP_WHILE_16_I(p, o, s)
# define BOOST_PP_WHILE_17(p, o, s) BOOST_PP_WHILE_17_I(p, o, s)
# define BOOST_PP_WHILE_18(p, o, s) BOOST_PP_WHILE_18_I(p, o, s)
# define BOOST_PP_WHILE_19(p, o, s) BOOST_PP_WHILE_19_I(p, o, s)
# define BOOST_PP_WHILE_20(p, o, s) BOOST_PP_WHILE_20_I(p, o, s)
# define BOOST_PP_WHILE_21(p, o, s) BOOST_PP_WHILE_21_I(p, o, s)
# define BOOST_PP_WHILE_22(p, o, s) BOOST_PP_WHILE_22_I(p, o, s)
# define BOOST_PP_WHILE_23(p, o, s) BOOST_PP_WHILE_23_I(p, o, s)
# define BOOST_PP_WHILE_24(p, o, s) BOOST_PP_WHILE_24_I(p, o, s)
# define BOOST_PP_WHILE_25(p, o, s) BOOST_PP_WHILE_25_I(p, o, s)
# define BOOST_PP_WHILE_26(p, o, s) BOOST_PP_WHILE_26_I(p, o, s)
# define BOOST_PP_WHILE_27(p, o, s) BOOST_PP_WHILE_27_I(p, o, s)
# define BOOST_PP_WHILE_28(p, o, s) BOOST_PP_WHILE_28_I(p, o, s)
# define BOOST_PP_WHILE_29(p, o, s) BOOST_PP_WHILE_29_I(p, o, s)
# define BOOST_PP_WHILE_30(p, o, s) BOOST_PP_WHILE_30_I(p, o, s)
# define BOOST_PP_WHILE_31(p, o, s) BOOST_PP_WHILE_31_I(p, o, s)
# define BOOST_PP_WHILE_32(p, o, s) BOOST_PP_WHILE_32_I(p, o, s)
# define BOOST_PP_WHILE_33(p, o, s) BOOST_PP_WHILE_33_I(p, o, s)
# define BOOST_PP_WHILE_34(p, o, s) BOOST_PP_WHILE_34_I(p, o, s)
# define BOOST_PP_WHILE_35(p, o, s) BOOST_PP_WHILE_35_I(p, o, s)
# define BOOST_PP_WHILE_36(p, o, s) BOOST_PP_WHILE_36_I(p, o, s)
# define BOOST_PP_WHILE_37(p, o, s) BOOST_PP_WHILE_37_I(p, o, s)
# define BOOST_PP_WHILE_38(p, o, s) BOOST_PP_WHILE_38_I(p, o, s)
# define BOOST_PP_WHILE_39(p, o, s) BOOST_PP_WHILE_39_I(p, o, s)
# define BOOST_PP_WHILE_40(p, o, s) BOOST_PP_WHILE_40_I(p, o, s)
# define BOOST_PP_WHILE_41(p, o, s) BOOST_PP_WHILE_41_I(p, o, s)
# define BOOST_PP_WHILE_42(p, o, s) BOOST_PP_WHILE_42_I(p, o, s)
# define BOOST_PP_WHILE_43(p, o, s) BOOST_PP_WHILE_43_I(p, o, s)
# define BOOST_PP_WHILE_44(p, o, s) BOOST_PP_WHILE_44_I(p, o, s)
# define BOOST_PP_WHILE_45(p, o, s) BOOST_PP_WHILE_45_I(p, o, s)
# define BOOST_PP_WHILE_46(p, o, s) BOOST_PP_WHILE_46_I(p, o, s)
# define BOOST_PP_WHILE_47(p, o, s) BOOST_PP_WHILE_47_I(p, o, s)
# define BOOST_PP_WHILE_48(p, o, s) BOOST_PP_WHILE_48_I(p, o, s)
# define BOOST_PP_WHILE_49(p, o, s) BOOST_PP_WHILE_49_I(p, o, s)
# define BOOST_PP_WHILE_50(p, o, s) BOOST_PP_WHILE_50_I(p, o, s)
# define BOOST_PP_WHILE_51(p, o, s) BOOST_PP_WHILE_51_I(p, o, s)
# define BOOST_PP_WHILE_52(p, o, s) BOOST_PP_WHILE_52_I(p, o, s)
# define BOOST_PP_WHILE_53(p, o, s) BOOST_PP_WHILE_53_I(p, o, s)
# define BOOST_PP_WHILE_54(p, o, s) BOOST_PP_WHILE_54_I(p, o, s)
# define BOOST_PP_WHILE_55(p, o, s) BOOST_PP_WHILE_55_I(p, o, s)
# define BOOST_PP_WHILE_56(p, o, s) BOOST_PP_WHILE_56_I(p, o, s)
# define BOOST_PP_WHILE_57(p, o, s) BOOST_PP_WHILE_57_I(p, o, s)
# define BOOST_PP_WHILE_58(p, o, s) BOOST_PP_WHILE_58_I(p, o, s)
# define BOOST_PP_WHILE_59(p, o, s) BOOST_PP_WHILE_59_I(p, o, s)
# define BOOST_PP_WHILE_60(p, o, s) BOOST_PP_WHILE_60_I(p, o, s)
# define BOOST_PP_WHILE_61(p, o, s) BOOST_PP_WHILE_61_I(p, o, s)
# define BOOST_PP_WHILE_62(p, o, s) BOOST_PP_WHILE_62_I(p, o, s)
# define BOOST_PP_WHILE_63(p, o, s) BOOST_PP_WHILE_63_I(p, o, s)
# define BOOST_PP_WHILE_64(p, o, s) BOOST_PP_WHILE_64_I(p, o, s)
# define BOOST_PP_WHILE_65(p, o, s) BOOST_PP_WHILE_65_I(p, o, s)
# define BOOST_PP_WHILE_66(p, o, s) BOOST_PP_WHILE_66_I(p, o, s)
# define BOOST_PP_WHILE_67(p, o, s) BOOST_PP_WHILE_67_I(p, o, s)
# define BOOST_PP_WHILE_68(p, o, s) BOOST_PP_WHILE_68_I(p, o, s)
# define BOOST_PP_WHILE_69(p, o, s) BOOST_PP_WHILE_69_I(p, o, s)
# define BOOST_PP_WHILE_70(p, o, s) BOOST_PP_WHILE_70_I(p, o, s)
# define BOOST_PP_WHILE_71(p, o, s) BOOST_PP_WHILE_71_I(p, o, s)
# define BOOST_PP_WHILE_72(p, o, s) BOOST_PP_WHILE_72_I(p, o, s)
# define BOOST_PP_WHILE_73(p, o, s) BOOST_PP_WHILE_73_I(p, o, s)
# define BOOST_PP_WHILE_74(p, o, s) BOOST_PP_WHILE_74_I(p, o, s)
# define BOOST_PP_WHILE_75(p, o, s) BOOST_PP_WHILE_75_I(p, o, s)
# define BOOST_PP_WHILE_76(p, o, s) BOOST_PP_WHILE_76_I(p, o, s)
# define BOOST_PP_WHILE_77(p, o, s) BOOST_PP_WHILE_77_I(p, o, s)
# define BOOST_PP_WHILE_78(p, o, s) BOOST_PP_WHILE_78_I(p, o, s)
# define BOOST_PP_WHILE_79(p, o, s) BOOST_PP_WHILE_79_I(p, o, s)
# define BOOST_PP_WHILE_80(p, o, s) BOOST_PP_WHILE_80_I(p, o, s)
# define BOOST_PP_WHILE_81(p, o, s) BOOST_PP_WHILE_81_I(p, o, s)
# define BOOST_PP_WHILE_82(p, o, s) BOOST_PP_WHILE_82_I(p, o, s)
# define BOOST_PP_WHILE_83(p, o, s) BOOST_PP_WHILE_83_I(p, o, s)
# define BOOST_PP_WHILE_84(p, o, s) BOOST_PP_WHILE_84_I(p, o, s)
# define BOOST_PP_WHILE_85(p, o, s) BOOST_PP_WHILE_85_I(p, o, s)
# define BOOST_PP_WHILE_86(p, o, s) BOOST_PP_WHILE_86_I(p, o, s)
# define BOOST_PP_WHILE_87(p, o, s) BOOST_PP_WHILE_87_I(p, o, s)
# define BOOST_PP_WHILE_88(p, o, s) BOOST_PP_WHILE_88_I(p, o, s)
# define BOOST_PP_WHILE_89(p, o, s) BOOST_PP_WHILE_89_I(p, o, s)
# define BOOST_PP_WHILE_90(p, o, s) BOOST_PP_WHILE_90_I(p, o, s)
# define BOOST_PP_WHILE_91(p, o, s) BOOST_PP_WHILE_91_I(p, o, s)
# define BOOST_PP_WHILE_92(p, o, s) BOOST_PP_WHILE_92_I(p, o, s)
# define BOOST_PP_WHILE_93(p, o, s) BOOST_PP_WHILE_93_I(p, o, s)
# define BOOST_PP_WHILE_94(p, o, s) BOOST_PP_WHILE_94_I(p, o, s)
# define BOOST_PP_WHILE_95(p, o, s) BOOST_PP_WHILE_95_I(p, o, s)
# define BOOST_PP_WHILE_96(p, o, s) BOOST_PP_WHILE_96_I(p, o, s)
# define BOOST_PP_WHILE_97(p, o, s) BOOST_PP_WHILE_97_I(p, o, s)
# define BOOST_PP_WHILE_98(p, o, s) BOOST_PP_WHILE_98_I(p, o, s)
# define BOOST_PP_WHILE_99(p, o, s) BOOST_PP_WHILE_99_I(p, o, s)
# define BOOST_PP_WHILE_100(p, o, s) BOOST_PP_WHILE_100_I(p, o, s)
# define BOOST_PP_WHILE_101(p, o, s) BOOST_PP_WHILE_101_I(p, o, s)
# define BOOST_PP_WHILE_102(p, o, s) BOOST_PP_WHILE_102_I(p, o, s)
# define BOOST_PP_WHILE_103(p, o, s) BOOST_PP_WHILE_103_I(p, o, s)
# define BOOST_PP_WHILE_104(p, o, s) BOOST_PP_WHILE_104_I(p, o, s)
# define BOOST_PP_WHILE_105(p, o, s) BOOST_PP_WHILE_105_I(p, o, s)
# define BOOST_PP_WHILE_106(p, o, s) BOOST_PP_WHILE_106_I(p, o, s)
# define BOOST_PP_WHILE_107(p, o, s) BOOST_PP_WHILE_107_I(p, o, s)
# define BOOST_PP_WHILE_108(p, o, s) BOOST_PP_WHILE_108_I(p, o, s)
# define BOOST_PP_WHILE_109(p, o, s) BOOST_PP_WHILE_109_I(p, o, s)
# define BOOST_PP_WHILE_110(p, o, s) BOOST_PP_WHILE_110_I(p, o, s)
# define BOOST_PP_WHILE_111(p, o, s) BOOST_PP_WHILE_111_I(p, o, s)
# define BOOST_PP_WHILE_112(p, o, s) BOOST_PP_WHILE_112_I(p, o, s)
# define BOOST_PP_WHILE_113(p, o, s) BOOST_PP_WHILE_113_I(p, o, s)
# define BOOST_PP_WHILE_114(p, o, s) BOOST_PP_WHILE_114_I(p, o, s)
# define BOOST_PP_WHILE_115(p, o, s) BOOST_PP_WHILE_115_I(p, o, s)
# define BOOST_PP_WHILE_116(p, o, s) BOOST_PP_WHILE_116_I(p, o, s)
# define BOOST_PP_WHILE_117(p, o, s) BOOST_PP_WHILE_117_I(p, o, s)
# define BOOST_PP_WHILE_118(p, o, s) BOOST_PP_WHILE_118_I(p, o, s)
# define BOOST_PP_WHILE_119(p, o, s) BOOST_PP_WHILE_119_I(p, o, s)
# define BOOST_PP_WHILE_120(p, o, s) BOOST_PP_WHILE_120_I(p, o, s)
# define BOOST_PP_WHILE_121(p, o, s) BOOST_PP_WHILE_121_I(p, o, s)
# define BOOST_PP_WHILE_122(p, o, s) BOOST_PP_WHILE_122_I(p, o, s)
# define BOOST_PP_WHILE_123(p, o, s) BOOST_PP_WHILE_123_I(p, o, s)
# define BOOST_PP_WHILE_124(p, o, s) BOOST_PP_WHILE_124_I(p, o, s)
# define BOOST_PP_WHILE_125(p, o, s) BOOST_PP_WHILE_125_I(p, o, s)
# define BOOST_PP_WHILE_126(p, o, s) BOOST_PP_WHILE_126_I(p, o, s)
# define BOOST_PP_WHILE_127(p, o, s) BOOST_PP_WHILE_127_I(p, o, s)
# define BOOST_PP_WHILE_128(p, o, s) BOOST_PP_WHILE_128_I(p, o, s)
# define BOOST_PP_WHILE_129(p, o, s) BOOST_PP_WHILE_129_I(p, o, s)
# define BOOST_PP_WHILE_130(p, o, s) BOOST_PP_WHILE_130_I(p, o, s)
# define BOOST_PP_WHILE_131(p, o, s) BOOST_PP_WHILE_131_I(p, o, s)
# define BOOST_PP_WHILE_132(p, o, s) BOOST_PP_WHILE_132_I(p, o, s)
# define BOOST_PP_WHILE_133(p, o, s) BOOST_PP_WHILE_133_I(p, o, s)
# define BOOST_PP_WHILE_134(p, o, s) BOOST_PP_WHILE_134_I(p, o, s)
# define BOOST_PP_WHILE_135(p, o, s) BOOST_PP_WHILE_135_I(p, o, s)
# define BOOST_PP_WHILE_136(p, o, s) BOOST_PP_WHILE_136_I(p, o, s)
# define BOOST_PP_WHILE_137(p, o, s) BOOST_PP_WHILE_137_I(p, o, s)
# define BOOST_PP_WHILE_138(p, o, s) BOOST_PP_WHILE_138_I(p, o, s)
# define BOOST_PP_WHILE_139(p, o, s) BOOST_PP_WHILE_139_I(p, o, s)
# define BOOST_PP_WHILE_140(p, o, s) BOOST_PP_WHILE_140_I(p, o, s)
# define BOOST_PP_WHILE_141(p, o, s) BOOST_PP_WHILE_141_I(p, o, s)
# define BOOST_PP_WHILE_142(p, o, s) BOOST_PP_WHILE_142_I(p, o, s)
# define BOOST_PP_WHILE_143(p, o, s) BOOST_PP_WHILE_143_I(p, o, s)
# define BOOST_PP_WHILE_144(p, o, s) BOOST_PP_WHILE_144_I(p, o, s)
# define BOOST_PP_WHILE_145(p, o, s) BOOST_PP_WHILE_145_I(p, o, s)
# define BOOST_PP_WHILE_146(p, o, s) BOOST_PP_WHILE_146_I(p, o, s)
# define BOOST_PP_WHILE_147(p, o, s) BOOST_PP_WHILE_147_I(p, o, s)
# define BOOST_PP_WHILE_148(p, o, s) BOOST_PP_WHILE_148_I(p, o, s)
# define BOOST_PP_WHILE_149(p, o, s) BOOST_PP_WHILE_149_I(p, o, s)
# define BOOST_PP_WHILE_150(p, o, s) BOOST_PP_WHILE_150_I(p, o, s)
# define BOOST_PP_WHILE_151(p, o, s) BOOST_PP_WHILE_151_I(p, o, s)
# define BOOST_PP_WHILE_152(p, o, s) BOOST_PP_WHILE_152_I(p, o, s)
# define BOOST_PP_WHILE_153(p, o, s) BOOST_PP_WHILE_153_I(p, o, s)
# define BOOST_PP_WHILE_154(p, o, s) BOOST_PP_WHILE_154_I(p, o, s)
# define BOOST_PP_WHILE_155(p, o, s) BOOST_PP_WHILE_155_I(p, o, s)
# define BOOST_PP_WHILE_156(p, o, s) BOOST_PP_WHILE_156_I(p, o, s)
# define BOOST_PP_WHILE_157(p, o, s) BOOST_PP_WHILE_157_I(p, o, s)
# define BOOST_PP_WHILE_158(p, o, s) BOOST_PP_WHILE_158_I(p, o, s)
# define BOOST_PP_WHILE_159(p, o, s) BOOST_PP_WHILE_159_I(p, o, s)
# define BOOST_PP_WHILE_160(p, o, s) BOOST_PP_WHILE_160_I(p, o, s)
# define BOOST_PP_WHILE_161(p, o, s) BOOST_PP_WHILE_161_I(p, o, s)
# define BOOST_PP_WHILE_162(p, o, s) BOOST_PP_WHILE_162_I(p, o, s)
# define BOOST_PP_WHILE_163(p, o, s) BOOST_PP_WHILE_163_I(p, o, s)
# define BOOST_PP_WHILE_164(p, o, s) BOOST_PP_WHILE_164_I(p, o, s)
# define BOOST_PP_WHILE_165(p, o, s) BOOST_PP_WHILE_165_I(p, o, s)
# define BOOST_PP_WHILE_166(p, o, s) BOOST_PP_WHILE_166_I(p, o, s)
# define BOOST_PP_WHILE_167(p, o, s) BOOST_PP_WHILE_167_I(p, o, s)
# define BOOST_PP_WHILE_168(p, o, s) BOOST_PP_WHILE_168_I(p, o, s)
# define BOOST_PP_WHILE_169(p, o, s) BOOST_PP_WHILE_169_I(p, o, s)
# define BOOST_PP_WHILE_170(p, o, s) BOOST_PP_WHILE_170_I(p, o, s)
# define BOOST_PP_WHILE_171(p, o, s) BOOST_PP_WHILE_171_I(p, o, s)
# define BOOST_PP_WHILE_172(p, o, s) BOOST_PP_WHILE_172_I(p, o, s)
# define BOOST_PP_WHILE_173(p, o, s) BOOST_PP_WHILE_173_I(p, o, s)
# define BOOST_PP_WHILE_174(p, o, s) BOOST_PP_WHILE_174_I(p, o, s)
# define BOOST_PP_WHILE_175(p, o, s) BOOST_PP_WHILE_175_I(p, o, s)
# define BOOST_PP_WHILE_176(p, o, s) BOOST_PP_WHILE_176_I(p, o, s)
# define BOOST_PP_WHILE_177(p, o, s) BOOST_PP_WHILE_177_I(p, o, s)
# define BOOST_PP_WHILE_178(p, o, s) BOOST_PP_WHILE_178_I(p, o, s)
# define BOOST_PP_WHILE_179(p, o, s) BOOST_PP_WHILE_179_I(p, o, s)
# define BOOST_PP_WHILE_180(p, o, s) BOOST_PP_WHILE_180_I(p, o, s)
# define BOOST_PP_WHILE_181(p, o, s) BOOST_PP_WHILE_181_I(p, o, s)
# define BOOST_PP_WHILE_182(p, o, s) BOOST_PP_WHILE_182_I(p, o, s)
# define BOOST_PP_WHILE_183(p, o, s) BOOST_PP_WHILE_183_I(p, o, s)
# define BOOST_PP_WHILE_184(p, o, s) BOOST_PP_WHILE_184_I(p, o, s)
# define BOOST_PP_WHILE_185(p, o, s) BOOST_PP_WHILE_185_I(p, o, s)
# define BOOST_PP_WHILE_186(p, o, s) BOOST_PP_WHILE_186_I(p, o, s)
# define BOOST_PP_WHILE_187(p, o, s) BOOST_PP_WHILE_187_I(p, o, s)
# define BOOST_PP_WHILE_188(p, o, s) BOOST_PP_WHILE_188_I(p, o, s)
# define BOOST_PP_WHILE_189(p, o, s) BOOST_PP_WHILE_189_I(p, o, s)
# define BOOST_PP_WHILE_190(p, o, s) BOOST_PP_WHILE_190_I(p, o, s)
# define BOOST_PP_WHILE_191(p, o, s) BOOST_PP_WHILE_191_I(p, o, s)
# define BOOST_PP_WHILE_192(p, o, s) BOOST_PP_WHILE_192_I(p, o, s)
# define BOOST_PP_WHILE_193(p, o, s) BOOST_PP_WHILE_193_I(p, o, s)
# define BOOST_PP_WHILE_194(p, o, s) BOOST_PP_WHILE_194_I(p, o, s)
# define BOOST_PP_WHILE_195(p, o, s) BOOST_PP_WHILE_195_I(p, o, s)
# define BOOST_PP_WHILE_196(p, o, s) BOOST_PP_WHILE_196_I(p, o, s)
# define BOOST_PP_WHILE_197(p, o, s) BOOST_PP_WHILE_197_I(p, o, s)
# define BOOST_PP_WHILE_198(p, o, s) BOOST_PP_WHILE_198_I(p, o, s)
# define BOOST_PP_WHILE_199(p, o, s) BOOST_PP_WHILE_199_I(p, o, s)
# define BOOST_PP_WHILE_200(p, o, s) BOOST_PP_WHILE_200_I(p, o, s)
# define BOOST_PP_WHILE_201(p, o, s) BOOST_PP_WHILE_201_I(p, o, s)
# define BOOST_PP_WHILE_202(p, o, s) BOOST_PP_WHILE_202_I(p, o, s)
# define BOOST_PP_WHILE_203(p, o, s) BOOST_PP_WHILE_203_I(p, o, s)
# define BOOST_PP_WHILE_204(p, o, s) BOOST_PP_WHILE_204_I(p, o, s)
# define BOOST_PP_WHILE_205(p, o, s) BOOST_PP_WHILE_205_I(p, o, s)
# define BOOST_PP_WHILE_206(p, o, s) BOOST_PP_WHILE_206_I(p, o, s)
# define BOOST_PP_WHILE_207(p, o, s) BOOST_PP_WHILE_207_I(p, o, s)
# define BOOST_PP_WHILE_208(p, o, s) BOOST_PP_WHILE_208_I(p, o, s)
# define BOOST_PP_WHILE_209(p, o, s) BOOST_PP_WHILE_209_I(p, o, s)
# define BOOST_PP_WHILE_210(p, o, s) BOOST_PP_WHILE_210_I(p, o, s)
# define BOOST_PP_WHILE_211(p, o, s) BOOST_PP_WHILE_211_I(p, o, s)
# define BOOST_PP_WHILE_212(p, o, s) BOOST_PP_WHILE_212_I(p, o, s)
# define BOOST_PP_WHILE_213(p, o, s) BOOST_PP_WHILE_213_I(p, o, s)
# define BOOST_PP_WHILE_214(p, o, s) BOOST_PP_WHILE_214_I(p, o, s)
# define BOOST_PP_WHILE_215(p, o, s) BOOST_PP_WHILE_215_I(p, o, s)
# define BOOST_PP_WHILE_216(p, o, s) BOOST_PP_WHILE_216_I(p, o, s)
# define BOOST_PP_WHILE_217(p, o, s) BOOST_PP_WHILE_217_I(p, o, s)
# define BOOST_PP_WHILE_218(p, o, s) BOOST_PP_WHILE_218_I(p, o, s)
# define BOOST_PP_WHILE_219(p, o, s) BOOST_PP_WHILE_219_I(p, o, s)
# define BOOST_PP_WHILE_220(p, o, s) BOOST_PP_WHILE_220_I(p, o, s)
# define BOOST_PP_WHILE_221(p, o, s) BOOST_PP_WHILE_221_I(p, o, s)
# define BOOST_PP_WHILE_222(p, o, s) BOOST_PP_WHILE_222_I(p, o, s)
# define BOOST_PP_WHILE_223(p, o, s) BOOST_PP_WHILE_223_I(p, o, s)
# define BOOST_PP_WHILE_224(p, o, s) BOOST_PP_WHILE_224_I(p, o, s)
# define BOOST_PP_WHILE_225(p, o, s) BOOST_PP_WHILE_225_I(p, o, s)
# define BOOST_PP_WHILE_226(p, o, s) BOOST_PP_WHILE_226_I(p, o, s)
# define BOOST_PP_WHILE_227(p, o, s) BOOST_PP_WHILE_227_I(p, o, s)
# define BOOST_PP_WHILE_228(p, o, s) BOOST_PP_WHILE_228_I(p, o, s)
# define BOOST_PP_WHILE_229(p, o, s) BOOST_PP_WHILE_229_I(p, o, s)
# define BOOST_PP_WHILE_230(p, o, s) BOOST_PP_WHILE_230_I(p, o, s)
# define BOOST_PP_WHILE_231(p, o, s) BOOST_PP_WHILE_231_I(p, o, s)
# define BOOST_PP_WHILE_232(p, o, s) BOOST_PP_WHILE_232_I(p, o, s)
# define BOOST_PP_WHILE_233(p, o, s) BOOST_PP_WHILE_233_I(p, o, s)
# define BOOST_PP_WHILE_234(p, o, s) BOOST_PP_WHILE_234_I(p, o, s)
# define BOOST_PP_WHILE_235(p, o, s) BOOST_PP_WHILE_235_I(p, o, s)
# define BOOST_PP_WHILE_236(p, o, s) BOOST_PP_WHILE_236_I(p, o, s)
# define BOOST_PP_WHILE_237(p, o, s) BOOST_PP_WHILE_237_I(p, o, s)
# define BOOST_PP_WHILE_238(p, o, s) BOOST_PP_WHILE_238_I(p, o, s)
# define BOOST_PP_WHILE_239(p, o, s) BOOST_PP_WHILE_239_I(p, o, s)
# define BOOST_PP_WHILE_240(p, o, s) BOOST_PP_WHILE_240_I(p, o, s)
# define BOOST_PP_WHILE_241(p, o, s) BOOST_PP_WHILE_241_I(p, o, s)
# define BOOST_PP_WHILE_242(p, o, s) BOOST_PP_WHILE_242_I(p, o, s)
# define BOOST_PP_WHILE_243(p, o, s) BOOST_PP_WHILE_243_I(p, o, s)
# define BOOST_PP_WHILE_244(p, o, s) BOOST_PP_WHILE_244_I(p, o, s)
# define BOOST_PP_WHILE_245(p, o, s) BOOST_PP_WHILE_245_I(p, o, s)
# define BOOST_PP_WHILE_246(p, o, s) BOOST_PP_WHILE_246_I(p, o, s)
# define BOOST_PP_WHILE_247(p, o, s) BOOST_PP_WHILE_247_I(p, o, s)
# define BOOST_PP_WHILE_248(p, o, s) BOOST_PP_WHILE_248_I(p, o, s)
# define BOOST_PP_WHILE_249(p, o, s) BOOST_PP_WHILE_249_I(p, o, s)
# define BOOST_PP_WHILE_250(p, o, s) BOOST_PP_WHILE_250_I(p, o, s)
# define BOOST_PP_WHILE_251(p, o, s) BOOST_PP_WHILE_251_I(p, o, s)
# define BOOST_PP_WHILE_252(p, o, s) BOOST_PP_WHILE_252_I(p, o, s)
# define BOOST_PP_WHILE_253(p, o, s) BOOST_PP_WHILE_253_I(p, o, s)
# define BOOST_PP_WHILE_254(p, o, s) BOOST_PP_WHILE_254_I(p, o, s)
# define BOOST_PP_WHILE_255(p, o, s) BOOST_PP_WHILE_255_I(p, o, s)
# define BOOST_PP_WHILE_256(p, o, s) BOOST_PP_WHILE_256_I(p, o, s)
#
# define BOOST_PP_WHILE_0_I(p, o, s) BOOST_PP_IF(p(1, s), BOOST_PP_WHILE_1, s BOOST_PP_TUPLE_EAT_3)(p, o, o(1, s))
# define BOOST_PP_WHILE_1_I(p, o, s) BOOST_PP_IF(p(2, s), BOOST_PP_WHILE_2, s BOOST_PP_TUPLE_EAT_3)(p, o, o(2, s))
# define BOOST_PP_WHILE_2_I(p, o, s) BOOST_PP_IF(p(3, s), BOOST_PP_WHILE_3, s BOOST_PP_TUPLE_EAT_3)(p, o, o(3, s))
# define BOOST_PP_WHILE_3_I(p, o, s) BOOST_PP_IF(p(4, s), BOOST_PP_WHILE_4, s BOOST_PP_TUPLE_EAT_3)(p, o, o(4, s))
# define BOOST_PP_WHILE_4_I(p, o, s) BOOST_PP_IF(p(5, s), BOOST_PP_WHILE_5, s BOOST_PP_TUPLE_EAT_3)(p, o, o(5, s))
# define BOOST_PP_WHILE_5_I(p, o, s) BOOST_PP_IF(p(6, s), BOOST_PP_WHILE_6, s BOOST_PP_TUPLE_EAT_3)(p, o, o(6, s))
# define BOOST_PP_WHILE_6_I(p, o, s) BOOST_PP_IF(p(7, s), BOOST_PP_WHILE_7, s BOOST_PP_TUPLE_EAT_3)(p, o, o(7, s))
# define BOOST_PP_WHILE_7_I(p, o, s) BOOST_PP_IF(p(8, s), BOOST_PP_WHILE_8, s BOOST_PP_TUPLE_EAT_3)(p, o, o(8, s))
# define BOOST_PP_WHILE_8_I(p, o, s) BOOST_PP_IF(p(9, s), BOOST_PP_WHILE_9, s BOOST_PP_TUPLE_EAT_3)(p, o, o(9, s))
# define BOOST_PP_WHILE_9_I(p, o, s) BOOST_PP_IF(p(10, s), BOOST_PP_WHILE_10, s BOOST_PP_TUPLE_EAT_3)(p, o, o(10, s))
# define BOOST_PP_WHILE_10_I(p, o, s) BOOST_PP_IF(p(11, s), BOOST_PP_WHILE_11, s BOOST_PP_TUPLE_EAT_3)(p, o, o(11, s))
# define BOOST_PP_WHILE_11_I(p, o, s) BOOST_PP_IF(p(12, s), BOOST_PP_WHILE_12, s BOOST_PP_TUPLE_EAT_3)(p, o, o(12, s))
# define BOOST_PP_WHILE_12_I(p, o, s) BOOST_PP_IF(p(13, s), BOOST_PP_WHILE_13, s BOOST_PP_TUPLE_EAT_3)(p, o, o(13, s))
# define BOOST_PP_WHILE_13_I(p, o, s) BOOST_PP_IF(p(14, s), BOOST_PP_WHILE_14, s BOOST_PP_TUPLE_EAT_3)(p, o, o(14, s))
# define BOOST_PP_WHILE_14_I(p, o, s) BOOST_PP_IF(p(15, s), BOOST_PP_WHILE_15, s BOOST_PP_TUPLE_EAT_3)(p, o, o(15, s))
# define BOOST_PP_WHILE_15_I(p, o, s) BOOST_PP_IF(p(16, s), BOOST_PP_WHILE_16, s BOOST_PP_TUPLE_EAT_3)(p, o, o(16, s))
# define BOOST_PP_WHILE_16_I(p, o, s) BOOST_PP_IF(p(17, s), BOOST_PP_WHILE_17, s BOOST_PP_TUPLE_EAT_3)(p, o, o(17, s))
# define BOOST_PP_WHILE_17_I(p, o, s) BOOST_PP_IF(p(18, s), BOOST_PP_WHILE_18, s BOOST_PP_TUPLE_EAT_3)(p, o, o(18, s))
# define BOOST_PP_WHILE_18_I(p, o, s) BOOST_PP_IF(p(19, s), BOOST_PP_WHILE_19, s BOOST_PP_TUPLE_EAT_3)(p, o, o(19, s))
# define BOOST_PP_WHILE_19_I(p, o, s) BOOST_PP_IF(p(20, s), BOOST_PP_WHILE_20, s BOOST_PP_TUPLE_EAT_3)(p, o, o(20, s))
# define BOOST_PP_WHILE_20_I(p, o, s) BOOST_PP_IF(p(21, s), BOOST_PP_WHILE_21, s BOOST_PP_TUPLE_EAT_3)(p, o, o(21, s))
# define BOOST_PP_WHILE_21_I(p, o, s) BOOST_PP_IF(p(22, s), BOOST_PP_WHILE_22, s BOOST_PP_TUPLE_EAT_3)(p, o, o(22, s))
# define BOOST_PP_WHILE_22_I(p, o, s) BOOST_PP_IF(p(23, s), BOOST_PP_WHILE_23, s BOOST_PP_TUPLE_EAT_3)(p, o, o(23, s))
# define BOOST_PP_WHILE_23_I(p, o, s) BOOST_PP_IF(p(24, s), BOOST_PP_WHILE_24, s BOOST_PP_TUPLE_EAT_3)(p, o, o(24, s))
# define BOOST_PP_WHILE_24_I(p, o, s) BOOST_PP_IF(p(25, s), BOOST_PP_WHILE_25, s BOOST_PP_TUPLE_EAT_3)(p, o, o(25, s))
# define BOOST_PP_WHILE_25_I(p, o, s) BOOST_PP_IF(p(26, s), BOOST_PP_WHILE_26, s BOOST_PP_TUPLE_EAT_3)(p, o, o(26, s))
# define BOOST_PP_WHILE_26_I(p, o, s) BOOST_PP_IF(p(27, s), BOOST_PP_WHILE_27, s BOOST_PP_TUPLE_EAT_3)(p, o, o(27, s))
# define BOOST_PP_WHILE_27_I(p, o, s) BOOST_PP_IF(p(28, s), BOOST_PP_WHILE_28, s BOOST_PP_TUPLE_EAT_3)(p, o, o(28, s))
# define BOOST_PP_WHILE_28_I(p, o, s) BOOST_PP_IF(p(29, s), BOOST_PP_WHILE_29, s BOOST_PP_TUPLE_EAT_3)(p, o, o(29, s))
# define BOOST_PP_WHILE_29_I(p, o, s) BOOST_PP_IF(p(30, s), BOOST_PP_WHILE_30, s BOOST_PP_TUPLE_EAT_3)(p, o, o(30, s))
# define BOOST_PP_WHILE_30_I(p, o, s) BOOST_PP_IF(p(31, s), BOOST_PP_WHILE_31, s BOOST_PP_TUPLE_EAT_3)(p, o, o(31, s))
# define BOOST_PP_WHILE_31_I(p, o, s) BOOST_PP_IF(p(32, s), BOOST_PP_WHILE_32, s BOOST_PP_TUPLE_EAT_3)(p, o, o(32, s))
# define BOOST_PP_WHILE_32_I(p, o, s) BOOST_PP_IF(p(33, s), BOOST_PP_WHILE_33, s BOOST_PP_TUPLE_EAT_3)(p, o, o(33, s))
# define BOOST_PP_WHILE_33_I(p, o, s) BOOST_PP_IF(p(34, s), BOOST_PP_WHILE_34, s BOOST_PP_TUPLE_EAT_3)(p, o, o(34, s))
# define BOOST_PP_WHILE_34_I(p, o, s) BOOST_PP_IF(p(35, s), BOOST_PP_WHILE_35, s BOOST_PP_TUPLE_EAT_3)(p, o, o(35, s))
# define BOOST_PP_WHILE_35_I(p, o, s) BOOST_PP_IF(p(36, s), BOOST_PP_WHILE_36, s BOOST_PP_TUPLE_EAT_3)(p, o, o(36, s))
# define BOOST_PP_WHILE_36_I(p, o, s) BOOST_PP_IF(p(37, s), BOOST_PP_WHILE_37, s BOOST_PP_TUPLE_EAT_3)(p, o, o(37, s))
# define BOOST_PP_WHILE_37_I(p, o, s) BOOST_PP_IF(p(38, s), BOOST_PP_WHILE_38, s BOOST_PP_TUPLE_EAT_3)(p, o, o(38, s))
# define BOOST_PP_WHILE_38_I(p, o, s) BOOST_PP_IF(p(39, s), BOOST_PP_WHILE_39, s BOOST_PP_TUPLE_EAT_3)(p, o, o(39, s))
# define BOOST_PP_WHILE_39_I(p, o, s) BOOST_PP_IF(p(40, s), BOOST_PP_WHILE_40, s BOOST_PP_TUPLE_EAT_3)(p, o, o(40, s))
# define BOOST_PP_WHILE_40_I(p, o, s) BOOST_PP_IF(p(41, s), BOOST_PP_WHILE_41, s BOOST_PP_TUPLE_EAT_3)(p, o, o(41, s))
# define BOOST_PP_WHILE_41_I(p, o, s) BOOST_PP_IF(p(42, s), BOOST_PP_WHILE_42, s BOOST_PP_TUPLE_EAT_3)(p, o, o(42, s))
# define BOOST_PP_WHILE_42_I(p, o, s) BOOST_PP_IF(p(43, s), BOOST_PP_WHILE_43, s BOOST_PP_TUPLE_EAT_3)(p, o, o(43, s))
# define BOOST_PP_WHILE_43_I(p, o, s) BOOST_PP_IF(p(44, s), BOOST_PP_WHILE_44, s BOOST_PP_TUPLE_EAT_3)(p, o, o(44, s))
# define BOOST_PP_WHILE_44_I(p, o, s) BOOST_PP_IF(p(45, s), BOOST_PP_WHILE_45, s BOOST_PP_TUPLE_EAT_3)(p, o, o(45, s))
# define BOOST_PP_WHILE_45_I(p, o, s) BOOST_PP_IF(p(46, s), BOOST_PP_WHILE_46, s BOOST_PP_TUPLE_EAT_3)(p, o, o(46, s))
# define BOOST_PP_WHILE_46_I(p, o, s) BOOST_PP_IF(p(47, s), BOOST_PP_WHILE_47, s BOOST_PP_TUPLE_EAT_3)(p, o, o(47, s))
# define BOOST_PP_WHILE_47_I(p, o, s) BOOST_PP_IF(p(48, s), BOOST_PP_WHILE_48, s BOOST_PP_TUPLE_EAT_3)(p, o, o(48, s))
# define BOOST_PP_WHILE_48_I(p, o, s) BOOST_PP_IF(p(49, s), BOOST_PP_WHILE_49, s BOOST_PP_TUPLE_EAT_3)(p, o, o(49, s))
# define BOOST_PP_WHILE_49_I(p, o, s) BOOST_PP_IF(p(50, s), BOOST_PP_WHILE_50, s BOOST_PP_TUPLE_EAT_3)(p, o, o(50, s))
# define BOOST_PP_WHILE_50_I(p, o, s) BOOST_PP_IF(p(51, s), BOOST_PP_WHILE_51, s BOOST_PP_TUPLE_EAT_3)(p, o, o(51, s))
# define BOOST_PP_WHILE_51_I(p, o, s) BOOST_PP_IF(p(52, s), BOOST_PP_WHILE_52, s BOOST_PP_TUPLE_EAT_3)(p, o, o(52, s))
# define BOOST_PP_WHILE_52_I(p, o, s) BOOST_PP_IF(p(53, s), BOOST_PP_WHILE_53, s BOOST_PP_TUPLE_EAT_3)(p, o, o(53, s))
# define BOOST_PP_WHILE_53_I(p, o, s) BOOST_PP_IF(p(54, s), BOOST_PP_WHILE_54, s BOOST_PP_TUPLE_EAT_3)(p, o, o(54, s))
# define BOOST_PP_WHILE_54_I(p, o, s) BOOST_PP_IF(p(55, s), BOOST_PP_WHILE_55, s BOOST_PP_TUPLE_EAT_3)(p, o, o(55, s))
# define BOOST_PP_WHILE_55_I(p, o, s) BOOST_PP_IF(p(56, s), BOOST_PP_WHILE_56, s BOOST_PP_TUPLE_EAT_3)(p, o, o(56, s))
# define BOOST_PP_WHILE_56_I(p, o, s) BOOST_PP_IF(p(57, s), BOOST_PP_WHILE_57, s BOOST_PP_TUPLE_EAT_3)(p, o, o(57, s))
# define BOOST_PP_WHILE_57_I(p, o, s) BOOST_PP_IF(p(58, s), BOOST_PP_WHILE_58, s BOOST_PP_TUPLE_EAT_3)(p, o, o(58, s))
# define BOOST_PP_WHILE_58_I(p, o, s) BOOST_PP_IF(p(59, s), BOOST_PP_WHILE_59, s BOOST_PP_TUPLE_EAT_3)(p, o, o(59, s))
# define BOOST_PP_WHILE_59_I(p, o, s) BOOST_PP_IF(p(60, s), BOOST_PP_WHILE_60, s BOOST_PP_TUPLE_EAT_3)(p, o, o(60, s))
# define BOOST_PP_WHILE_60_I(p, o, s) BOOST_PP_IF(p(61, s), BOOST_PP_WHILE_61, s BOOST_PP_TUPLE_EAT_3)(p, o, o(61, s))
# define BOOST_PP_WHILE_61_I(p, o, s) BOOST_PP_IF(p(62, s), BOOST_PP_WHILE_62, s BOOST_PP_TUPLE_EAT_3)(p, o, o(62, s))
# define BOOST_PP_WHILE_62_I(p, o, s) BOOST_PP_IF(p(63, s), BOOST_PP_WHILE_63, s BOOST_PP_TUPLE_EAT_3)(p, o, o(63, s))
# define BOOST_PP_WHILE_63_I(p, o, s) BOOST_PP_IF(p(64, s), BOOST_PP_WHILE_64, s BOOST_PP_TUPLE_EAT_3)(p, o, o(64, s))
# define BOOST_PP_WHILE_64_I(p, o, s) BOOST_PP_IF(p(65, s), BOOST_PP_WHILE_65, s BOOST_PP_TUPLE_EAT_3)(p, o, o(65, s))
# define BOOST_PP_WHILE_65_I(p, o, s) BOOST_PP_IF(p(66, s), BOOST_PP_WHILE_66, s BOOST_PP_TUPLE_EAT_3)(p, o, o(66, s))
# define BOOST_PP_WHILE_66_I(p, o, s) BOOST_PP_IF(p(67, s), BOOST_PP_WHILE_67, s BOOST_PP_TUPLE_EAT_3)(p, o, o(67, s))
# define BOOST_PP_WHILE_67_I(p, o, s) BOOST_PP_IF(p(68, s), BOOST_PP_WHILE_68, s BOOST_PP_TUPLE_EAT_3)(p, o, o(68, s))
# define BOOST_PP_WHILE_68_I(p, o, s) BOOST_PP_IF(p(69, s), BOOST_PP_WHILE_69, s BOOST_PP_TUPLE_EAT_3)(p, o, o(69, s))
# define BOOST_PP_WHILE_69_I(p, o, s) BOOST_PP_IF(p(70, s), BOOST_PP_WHILE_70, s BOOST_PP_TUPLE_EAT_3)(p, o, o(70, s))
# define BOOST_PP_WHILE_70_I(p, o, s) BOOST_PP_IF(p(71, s), BOOST_PP_WHILE_71, s BOOST_PP_TUPLE_EAT_3)(p, o, o(71, s))
# define BOOST_PP_WHILE_71_I(p, o, s) BOOST_PP_IF(p(72, s), BOOST_PP_WHILE_72, s BOOST_PP_TUPLE_EAT_3)(p, o, o(72, s))
# define BOOST_PP_WHILE_72_I(p, o, s) BOOST_PP_IF(p(73, s), BOOST_PP_WHILE_73, s BOOST_PP_TUPLE_EAT_3)(p, o, o(73, s))
# define BOOST_PP_WHILE_73_I(p, o, s) BOOST_PP_IF(p(74, s), BOOST_PP_WHILE_74, s BOOST_PP_TUPLE_EAT_3)(p, o, o(74, s))
# define BOOST_PP_WHILE_74_I(p, o, s) BOOST_PP_IF(p(75, s), BOOST_PP_WHILE_75, s BOOST_PP_TUPLE_EAT_3)(p, o, o(75, s))
# define BOOST_PP_WHILE_75_I(p, o, s) BOOST_PP_IF(p(76, s), BOOST_PP_WHILE_76, s BOOST_PP_TUPLE_EAT_3)(p, o, o(76, s))
# define BOOST_PP_WHILE_76_I(p, o, s) BOOST_PP_IF(p(77, s), BOOST_PP_WHILE_77, s BOOST_PP_TUPLE_EAT_3)(p, o, o(77, s))
# define BOOST_PP_WHILE_77_I(p, o, s) BOOST_PP_IF(p(78, s), BOOST_PP_WHILE_78, s BOOST_PP_TUPLE_EAT_3)(p, o, o(78, s))
# define BOOST_PP_WHILE_78_I(p, o, s) BOOST_PP_IF(p(79, s), BOOST_PP_WHILE_79, s BOOST_PP_TUPLE_EAT_3)(p, o, o(79, s))
# define BOOST_PP_WHILE_79_I(p, o, s) BOOST_PP_IF(p(80, s), BOOST_PP_WHILE_80, s BOOST_PP_TUPLE_EAT_3)(p, o, o(80, s))
# define BOOST_PP_WHILE_80_I(p, o, s) BOOST_PP_IF(p(81, s), BOOST_PP_WHILE_81, s BOOST_PP_TUPLE_EAT_3)(p, o, o(81, s))
# define BOOST_PP_WHILE_81_I(p, o, s) BOOST_PP_IF(p(82, s), BOOST_PP_WHILE_82, s BOOST_PP_TUPLE_EAT_3)(p, o, o(82, s))
# define BOOST_PP_WHILE_82_I(p, o, s) BOOST_PP_IF(p(83, s), BOOST_PP_WHILE_83, s BOOST_PP_TUPLE_EAT_3)(p, o, o(83, s))
# define BOOST_PP_WHILE_83_I(p, o, s) BOOST_PP_IF(p(84, s), BOOST_PP_WHILE_84, s BOOST_PP_TUPLE_EAT_3)(p, o, o(84, s))
# define BOOST_PP_WHILE_84_I(p, o, s) BOOST_PP_IF(p(85, s), BOOST_PP_WHILE_85, s BOOST_PP_TUPLE_EAT_3)(p, o, o(85, s))
# define BOOST_PP_WHILE_85_I(p, o, s) BOOST_PP_IF(p(86, s), BOOST_PP_WHILE_86, s BOOST_PP_TUPLE_EAT_3)(p, o, o(86, s))
# define BOOST_PP_WHILE_86_I(p, o, s) BOOST_PP_IF(p(87, s), BOOST_PP_WHILE_87, s BOOST_PP_TUPLE_EAT_3)(p, o, o(87, s))
# define BOOST_PP_WHILE_87_I(p, o, s) BOOST_PP_IF(p(88, s), BOOST_PP_WHILE_88, s BOOST_PP_TUPLE_EAT_3)(p, o, o(88, s))
# define BOOST_PP_WHILE_88_I(p, o, s) BOOST_PP_IF(p(89, s), BOOST_PP_WHILE_89, s BOOST_PP_TUPLE_EAT_3)(p, o, o(89, s))
# define BOOST_PP_WHILE_89_I(p, o, s) BOOST_PP_IF(p(90, s), BOOST_PP_WHILE_90, s BOOST_PP_TUPLE_EAT_3)(p, o, o(90, s))
# define BOOST_PP_WHILE_90_I(p, o, s) BOOST_PP_IF(p(91, s), BOOST_PP_WHILE_91, s BOOST_PP_TUPLE_EAT_3)(p, o, o(91, s))
# define BOOST_PP_WHILE_91_I(p, o, s) BOOST_PP_IF(p(92, s), BOOST_PP_WHILE_92, s BOOST_PP_TUPLE_EAT_3)(p, o, o(92, s))
# define BOOST_PP_WHILE_92_I(p, o, s) BOOST_PP_IF(p(93, s), BOOST_PP_WHILE_93, s BOOST_PP_TUPLE_EAT_3)(p, o, o(93, s))
# define BOOST_PP_WHILE_93_I(p, o, s) BOOST_PP_IF(p(94, s), BOOST_PP_WHILE_94, s BOOST_PP_TUPLE_EAT_3)(p, o, o(94, s))
# define BOOST_PP_WHILE_94_I(p, o, s) BOOST_PP_IF(p(95, s), BOOST_PP_WHILE_95, s BOOST_PP_TUPLE_EAT_3)(p, o, o(95, s))
# define BOOST_PP_WHILE_95_I(p, o, s) BOOST_PP_IF(p(96, s), BOOST_PP_WHILE_96, s BOOST_PP_TUPLE_EAT_3)(p, o, o(96, s))
# define BOOST_PP_WHILE_96_I(p, o, s) BOOST_PP_IF(p(97, s), BOOST_PP_WHILE_97, s BOOST_PP_TUPLE_EAT_3)(p, o, o(97, s))
# define BOOST_PP_WHILE_97_I(p, o, s) BOOST_PP_IF(p(98, s), BOOST_PP_WHILE_98, s BOOST_PP_TUPLE_EAT_3)(p, o, o(98, s))
# define BOOST_PP_WHILE_98_I(p, o, s) BOOST_PP_IF(p(99, s), BOOST_PP_WHILE_99, s BOOST_PP_TUPLE_EAT_3)(p, o, o(99, s))
# define BOOST_PP_WHILE_99_I(p, o, s) BOOST_PP_IF(p(100, s), BOOST_PP_WHILE_100, s BOOST_PP_TUPLE_EAT_3)(p, o, o(100, s))
# define BOOST_PP_WHILE_100_I(p, o, s) BOOST_PP_IF(p(101, s), BOOST_PP_WHILE_101, s BOOST_PP_TUPLE_EAT_3)(p, o, o(101, s))
# define BOOST_PP_WHILE_101_I(p, o, s) BOOST_PP_IF(p(102, s), BOOST_PP_WHILE_102, s BOOST_PP_TUPLE_EAT_3)(p, o, o(102, s))
# define BOOST_PP_WHILE_102_I(p, o, s) BOOST_PP_IF(p(103, s), BOOST_PP_WHILE_103, s BOOST_PP_TUPLE_EAT_3)(p, o, o(103, s))
# define BOOST_PP_WHILE_103_I(p, o, s) BOOST_PP_IF(p(104, s), BOOST_PP_WHILE_104, s BOOST_PP_TUPLE_EAT_3)(p, o, o(104, s))
# define BOOST_PP_WHILE_104_I(p, o, s) BOOST_PP_IF(p(105, s), BOOST_PP_WHILE_105, s BOOST_PP_TUPLE_EAT_3)(p, o, o(105, s))
# define BOOST_PP_WHILE_105_I(p, o, s) BOOST_PP_IF(p(106, s), BOOST_PP_WHILE_106, s BOOST_PP_TUPLE_EAT_3)(p, o, o(106, s))
# define BOOST_PP_WHILE_106_I(p, o, s) BOOST_PP_IF(p(107, s), BOOST_PP_WHILE_107, s BOOST_PP_TUPLE_EAT_3)(p, o, o(107, s))
# define BOOST_PP_WHILE_107_I(p, o, s) BOOST_PP_IF(p(108, s), BOOST_PP_WHILE_108, s BOOST_PP_TUPLE_EAT_3)(p, o, o(108, s))
# define BOOST_PP_WHILE_108_I(p, o, s) BOOST_PP_IF(p(109, s), BOOST_PP_WHILE_109, s BOOST_PP_TUPLE_EAT_3)(p, o, o(109, s))
# define BOOST_PP_WHILE_109_I(p, o, s) BOOST_PP_IF(p(110, s), BOOST_PP_WHILE_110, s BOOST_PP_TUPLE_EAT_3)(p, o, o(110, s))
# define BOOST_PP_WHILE_110_I(p, o, s) BOOST_PP_IF(p(111, s), BOOST_PP_WHILE_111, s BOOST_PP_TUPLE_EAT_3)(p, o, o(111, s))
# define BOOST_PP_WHILE_111_I(p, o, s) BOOST_PP_IF(p(112, s), BOOST_PP_WHILE_112, s BOOST_PP_TUPLE_EAT_3)(p, o, o(112, s))
# define BOOST_PP_WHILE_112_I(p, o, s) BOOST_PP_IF(p(113, s), BOOST_PP_WHILE_113, s BOOST_PP_TUPLE_EAT_3)(p, o, o(113, s))
# define BOOST_PP_WHILE_113_I(p, o, s) BOOST_PP_IF(p(114, s), BOOST_PP_WHILE_114, s BOOST_PP_TUPLE_EAT_3)(p, o, o(114, s))
# define BOOST_PP_WHILE_114_I(p, o, s) BOOST_PP_IF(p(115, s), BOOST_PP_WHILE_115, s BOOST_PP_TUPLE_EAT_3)(p, o, o(115, s))
# define BOOST_PP_WHILE_115_I(p, o, s) BOOST_PP_IF(p(116, s), BOOST_PP_WHILE_116, s BOOST_PP_TUPLE_EAT_3)(p, o, o(116, s))
# define BOOST_PP_WHILE_116_I(p, o, s) BOOST_PP_IF(p(117, s), BOOST_PP_WHILE_117, s BOOST_PP_TUPLE_EAT_3)(p, o, o(117, s))
# define BOOST_PP_WHILE_117_I(p, o, s) BOOST_PP_IF(p(118, s), BOOST_PP_WHILE_118, s BOOST_PP_TUPLE_EAT_3)(p, o, o(118, s))
# define BOOST_PP_WHILE_118_I(p, o, s) BOOST_PP_IF(p(119, s), BOOST_PP_WHILE_119, s BOOST_PP_TUPLE_EAT_3)(p, o, o(119, s))
# define BOOST_PP_WHILE_119_I(p, o, s) BOOST_PP_IF(p(120, s), BOOST_PP_WHILE_120, s BOOST_PP_TUPLE_EAT_3)(p, o, o(120, s))
# define BOOST_PP_WHILE_120_I(p, o, s) BOOST_PP_IF(p(121, s), BOOST_PP_WHILE_121, s BOOST_PP_TUPLE_EAT_3)(p, o, o(121, s))
# define BOOST_PP_WHILE_121_I(p, o, s) BOOST_PP_IF(p(122, s), BOOST_PP_WHILE_122, s BOOST_PP_TUPLE_EAT_3)(p, o, o(122, s))
# define BOOST_PP_WHILE_122_I(p, o, s) BOOST_PP_IF(p(123, s), BOOST_PP_WHILE_123, s BOOST_PP_TUPLE_EAT_3)(p, o, o(123, s))
# define BOOST_PP_WHILE_123_I(p, o, s) BOOST_PP_IF(p(124, s), BOOST_PP_WHILE_124, s BOOST_PP_TUPLE_EAT_3)(p, o, o(124, s))
# define BOOST_PP_WHILE_124_I(p, o, s) BOOST_PP_IF(p(125, s), BOOST_PP_WHILE_125, s BOOST_PP_TUPLE_EAT_3)(p, o, o(125, s))
# define BOOST_PP_WHILE_125_I(p, o, s) BOOST_PP_IF(p(126, s), BOOST_PP_WHILE_126, s BOOST_PP_TUPLE_EAT_3)(p, o, o(126, s))
# define BOOST_PP_WHILE_126_I(p, o, s) BOOST_PP_IF(p(127, s), BOOST_PP_WHILE_127, s BOOST_PP_TUPLE_EAT_3)(p, o, o(127, s))
# define BOOST_PP_WHILE_127_I(p, o, s) BOOST_PP_IF(p(128, s), BOOST_PP_WHILE_128, s BOOST_PP_TUPLE_EAT_3)(p, o, o(128, s))
# define BOOST_PP_WHILE_128_I(p, o, s) BOOST_PP_IF(p(129, s), BOOST_PP_WHILE_129, s BOOST_PP_TUPLE_EAT_3)(p, o, o(129, s))
# define BOOST_PP_WHILE_129_I(p, o, s) BOOST_PP_IF(p(130, s), BOOST_PP_WHILE_130, s BOOST_PP_TUPLE_EAT_3)(p, o, o(130, s))
# define BOOST_PP_WHILE_130_I(p, o, s) BOOST_PP_IF(p(131, s), BOOST_PP_WHILE_131, s BOOST_PP_TUPLE_EAT_3)(p, o, o(131, s))
# define BOOST_PP_WHILE_131_I(p, o, s) BOOST_PP_IF(p(132, s), BOOST_PP_WHILE_132, s BOOST_PP_TUPLE_EAT_3)(p, o, o(132, s))
# define BOOST_PP_WHILE_132_I(p, o, s) BOOST_PP_IF(p(133, s), BOOST_PP_WHILE_133, s BOOST_PP_TUPLE_EAT_3)(p, o, o(133, s))
# define BOOST_PP_WHILE_133_I(p, o, s) BOOST_PP_IF(p(134, s), BOOST_PP_WHILE_134, s BOOST_PP_TUPLE_EAT_3)(p, o, o(134, s))
# define BOOST_PP_WHILE_134_I(p, o, s) BOOST_PP_IF(p(135, s), BOOST_PP_WHILE_135, s BOOST_PP_TUPLE_EAT_3)(p, o, o(135, s))
# define BOOST_PP_WHILE_135_I(p, o, s) BOOST_PP_IF(p(136, s), BOOST_PP_WHILE_136, s BOOST_PP_TUPLE_EAT_3)(p, o, o(136, s))
# define BOOST_PP_WHILE_136_I(p, o, s) BOOST_PP_IF(p(137, s), BOOST_PP_WHILE_137, s BOOST_PP_TUPLE_EAT_3)(p, o, o(137, s))
# define BOOST_PP_WHILE_137_I(p, o, s) BOOST_PP_IF(p(138, s), BOOST_PP_WHILE_138, s BOOST_PP_TUPLE_EAT_3)(p, o, o(138, s))
# define BOOST_PP_WHILE_138_I(p, o, s) BOOST_PP_IF(p(139, s), BOOST_PP_WHILE_139, s BOOST_PP_TUPLE_EAT_3)(p, o, o(139, s))
# define BOOST_PP_WHILE_139_I(p, o, s) BOOST_PP_IF(p(140, s), BOOST_PP_WHILE_140, s BOOST_PP_TUPLE_EAT_3)(p, o, o(140, s))
# define BOOST_PP_WHILE_140_I(p, o, s) BOOST_PP_IF(p(141, s), BOOST_PP_WHILE_141, s BOOST_PP_TUPLE_EAT_3)(p, o, o(141, s))
# define BOOST_PP_WHILE_141_I(p, o, s) BOOST_PP_IF(p(142, s), BOOST_PP_WHILE_142, s BOOST_PP_TUPLE_EAT_3)(p, o, o(142, s))
# define BOOST_PP_WHILE_142_I(p, o, s) BOOST_PP_IF(p(143, s), BOOST_PP_WHILE_143, s BOOST_PP_TUPLE_EAT_3)(p, o, o(143, s))
# define BOOST_PP_WHILE_143_I(p, o, s) BOOST_PP_IF(p(144, s), BOOST_PP_WHILE_144, s BOOST_PP_TUPLE_EAT_3)(p, o, o(144, s))
# define BOOST_PP_WHILE_144_I(p, o, s) BOOST_PP_IF(p(145, s), BOOST_PP_WHILE_145, s BOOST_PP_TUPLE_EAT_3)(p, o, o(145, s))
# define BOOST_PP_WHILE_145_I(p, o, s) BOOST_PP_IF(p(146, s), BOOST_PP_WHILE_146, s BOOST_PP_TUPLE_EAT_3)(p, o, o(146, s))
# define BOOST_PP_WHILE_146_I(p, o, s) BOOST_PP_IF(p(147, s), BOOST_PP_WHILE_147, s BOOST_PP_TUPLE_EAT_3)(p, o, o(147, s))
# define BOOST_PP_WHILE_147_I(p, o, s) BOOST_PP_IF(p(148, s), BOOST_PP_WHILE_148, s BOOST_PP_TUPLE_EAT_3)(p, o, o(148, s))
# define BOOST_PP_WHILE_148_I(p, o, s) BOOST_PP_IF(p(149, s), BOOST_PP_WHILE_149, s BOOST_PP_TUPLE_EAT_3)(p, o, o(149, s))
# define BOOST_PP_WHILE_149_I(p, o, s) BOOST_PP_IF(p(150, s), BOOST_PP_WHILE_150, s BOOST_PP_TUPLE_EAT_3)(p, o, o(150, s))
# define BOOST_PP_WHILE_150_I(p, o, s) BOOST_PP_IF(p(151, s), BOOST_PP_WHILE_151, s BOOST_PP_TUPLE_EAT_3)(p, o, o(151, s))
# define BOOST_PP_WHILE_151_I(p, o, s) BOOST_PP_IF(p(152, s), BOOST_PP_WHILE_152, s BOOST_PP_TUPLE_EAT_3)(p, o, o(152, s))
# define BOOST_PP_WHILE_152_I(p, o, s) BOOST_PP_IF(p(153, s), BOOST_PP_WHILE_153, s BOOST_PP_TUPLE_EAT_3)(p, o, o(153, s))
# define BOOST_PP_WHILE_153_I(p, o, s) BOOST_PP_IF(p(154, s), BOOST_PP_WHILE_154, s BOOST_PP_TUPLE_EAT_3)(p, o, o(154, s))
# define BOOST_PP_WHILE_154_I(p, o, s) BOOST_PP_IF(p(155, s), BOOST_PP_WHILE_155, s BOOST_PP_TUPLE_EAT_3)(p, o, o(155, s))
# define BOOST_PP_WHILE_155_I(p, o, s) BOOST_PP_IF(p(156, s), BOOST_PP_WHILE_156, s BOOST_PP_TUPLE_EAT_3)(p, o, o(156, s))
# define BOOST_PP_WHILE_156_I(p, o, s) BOOST_PP_IF(p(157, s), BOOST_PP_WHILE_157, s BOOST_PP_TUPLE_EAT_3)(p, o, o(157, s))
# define BOOST_PP_WHILE_157_I(p, o, s) BOOST_PP_IF(p(158, s), BOOST_PP_WHILE_158, s BOOST_PP_TUPLE_EAT_3)(p, o, o(158, s))
# define BOOST_PP_WHILE_158_I(p, o, s) BOOST_PP_IF(p(159, s), BOOST_PP_WHILE_159, s BOOST_PP_TUPLE_EAT_3)(p, o, o(159, s))
# define BOOST_PP_WHILE_159_I(p, o, s) BOOST_PP_IF(p(160, s), BOOST_PP_WHILE_160, s BOOST_PP_TUPLE_EAT_3)(p, o, o(160, s))
# define BOOST_PP_WHILE_160_I(p, o, s) BOOST_PP_IF(p(161, s), BOOST_PP_WHILE_161, s BOOST_PP_TUPLE_EAT_3)(p, o, o(161, s))
# define BOOST_PP_WHILE_161_I(p, o, s) BOOST_PP_IF(p(162, s), BOOST_PP_WHILE_162, s BOOST_PP_TUPLE_EAT_3)(p, o, o(162, s))
# define BOOST_PP_WHILE_162_I(p, o, s) BOOST_PP_IF(p(163, s), BOOST_PP_WHILE_163, s BOOST_PP_TUPLE_EAT_3)(p, o, o(163, s))
# define BOOST_PP_WHILE_163_I(p, o, s) BOOST_PP_IF(p(164, s), BOOST_PP_WHILE_164, s BOOST_PP_TUPLE_EAT_3)(p, o, o(164, s))
# define BOOST_PP_WHILE_164_I(p, o, s) BOOST_PP_IF(p(165, s), BOOST_PP_WHILE_165, s BOOST_PP_TUPLE_EAT_3)(p, o, o(165, s))
# define BOOST_PP_WHILE_165_I(p, o, s) BOOST_PP_IF(p(166, s), BOOST_PP_WHILE_166, s BOOST_PP_TUPLE_EAT_3)(p, o, o(166, s))
# define BOOST_PP_WHILE_166_I(p, o, s) BOOST_PP_IF(p(167, s), BOOST_PP_WHILE_167, s BOOST_PP_TUPLE_EAT_3)(p, o, o(167, s))
# define BOOST_PP_WHILE_167_I(p, o, s) BOOST_PP_IF(p(168, s), BOOST_PP_WHILE_168, s BOOST_PP_TUPLE_EAT_3)(p, o, o(168, s))
# define BOOST_PP_WHILE_168_I(p, o, s) BOOST_PP_IF(p(169, s), BOOST_PP_WHILE_169, s BOOST_PP_TUPLE_EAT_3)(p, o, o(169, s))
# define BOOST_PP_WHILE_169_I(p, o, s) BOOST_PP_IF(p(170, s), BOOST_PP_WHILE_170, s BOOST_PP_TUPLE_EAT_3)(p, o, o(170, s))
# define BOOST_PP_WHILE_170_I(p, o, s) BOOST_PP_IF(p(171, s), BOOST_PP_WHILE_171, s BOOST_PP_TUPLE_EAT_3)(p, o, o(171, s))
# define BOOST_PP_WHILE_171_I(p, o, s) BOOST_PP_IF(p(172, s), BOOST_PP_WHILE_172, s BOOST_PP_TUPLE_EAT_3)(p, o, o(172, s))
# define BOOST_PP_WHILE_172_I(p, o, s) BOOST_PP_IF(p(173, s), BOOST_PP_WHILE_173, s BOOST_PP_TUPLE_EAT_3)(p, o, o(173, s))
# define BOOST_PP_WHILE_173_I(p, o, s) BOOST_PP_IF(p(174, s), BOOST_PP_WHILE_174, s BOOST_PP_TUPLE_EAT_3)(p, o, o(174, s))
# define BOOST_PP_WHILE_174_I(p, o, s) BOOST_PP_IF(p(175, s), BOOST_PP_WHILE_175, s BOOST_PP_TUPLE_EAT_3)(p, o, o(175, s))
# define BOOST_PP_WHILE_175_I(p, o, s) BOOST_PP_IF(p(176, s), BOOST_PP_WHILE_176, s BOOST_PP_TUPLE_EAT_3)(p, o, o(176, s))
# define BOOST_PP_WHILE_176_I(p, o, s) BOOST_PP_IF(p(177, s), BOOST_PP_WHILE_177, s BOOST_PP_TUPLE_EAT_3)(p, o, o(177, s))
# define BOOST_PP_WHILE_177_I(p, o, s) BOOST_PP_IF(p(178, s), BOOST_PP_WHILE_178, s BOOST_PP_TUPLE_EAT_3)(p, o, o(178, s))
# define BOOST_PP_WHILE_178_I(p, o, s) BOOST_PP_IF(p(179, s), BOOST_PP_WHILE_179, s BOOST_PP_TUPLE_EAT_3)(p, o, o(179, s))
# define BOOST_PP_WHILE_179_I(p, o, s) BOOST_PP_IF(p(180, s), BOOST_PP_WHILE_180, s BOOST_PP_TUPLE_EAT_3)(p, o, o(180, s))
# define BOOST_PP_WHILE_180_I(p, o, s) BOOST_PP_IF(p(181, s), BOOST_PP_WHILE_181, s BOOST_PP_TUPLE_EAT_3)(p, o, o(181, s))
# define BOOST_PP_WHILE_181_I(p, o, s) BOOST_PP_IF(p(182, s), BOOST_PP_WHILE_182, s BOOST_PP_TUPLE_EAT_3)(p, o, o(182, s))
# define BOOST_PP_WHILE_182_I(p, o, s) BOOST_PP_IF(p(183, s), BOOST_PP_WHILE_183, s BOOST_PP_TUPLE_EAT_3)(p, o, o(183, s))
# define BOOST_PP_WHILE_183_I(p, o, s) BOOST_PP_IF(p(184, s), BOOST_PP_WHILE_184, s BOOST_PP_TUPLE_EAT_3)(p, o, o(184, s))
# define BOOST_PP_WHILE_184_I(p, o, s) BOOST_PP_IF(p(185, s), BOOST_PP_WHILE_185, s BOOST_PP_TUPLE_EAT_3)(p, o, o(185, s))
# define BOOST_PP_WHILE_185_I(p, o, s) BOOST_PP_IF(p(186, s), BOOST_PP_WHILE_186, s BOOST_PP_TUPLE_EAT_3)(p, o, o(186, s))
# define BOOST_PP_WHILE_186_I(p, o, s) BOOST_PP_IF(p(187, s), BOOST_PP_WHILE_187, s BOOST_PP_TUPLE_EAT_3)(p, o, o(187, s))
# define BOOST_PP_WHILE_187_I(p, o, s) BOOST_PP_IF(p(188, s), BOOST_PP_WHILE_188, s BOOST_PP_TUPLE_EAT_3)(p, o, o(188, s))
# define BOOST_PP_WHILE_188_I(p, o, s) BOOST_PP_IF(p(189, s), BOOST_PP_WHILE_189, s BOOST_PP_TUPLE_EAT_3)(p, o, o(189, s))
# define BOOST_PP_WHILE_189_I(p, o, s) BOOST_PP_IF(p(190, s), BOOST_PP_WHILE_190, s BOOST_PP_TUPLE_EAT_3)(p, o, o(190, s))
# define BOOST_PP_WHILE_190_I(p, o, s) BOOST_PP_IF(p(191, s), BOOST_PP_WHILE_191, s BOOST_PP_TUPLE_EAT_3)(p, o, o(191, s))
# define BOOST_PP_WHILE_191_I(p, o, s) BOOST_PP_IF(p(192, s), BOOST_PP_WHILE_192, s BOOST_PP_TUPLE_EAT_3)(p, o, o(192, s))
# define BOOST_PP_WHILE_192_I(p, o, s) BOOST_PP_IF(p(193, s), BOOST_PP_WHILE_193, s BOOST_PP_TUPLE_EAT_3)(p, o, o(193, s))
# define BOOST_PP_WHILE_193_I(p, o, s) BOOST_PP_IF(p(194, s), BOOST_PP_WHILE_194, s BOOST_PP_TUPLE_EAT_3)(p, o, o(194, s))
# define BOOST_PP_WHILE_194_I(p, o, s) BOOST_PP_IF(p(195, s), BOOST_PP_WHILE_195, s BOOST_PP_TUPLE_EAT_3)(p, o, o(195, s))
# define BOOST_PP_WHILE_195_I(p, o, s) BOOST_PP_IF(p(196, s), BOOST_PP_WHILE_196, s BOOST_PP_TUPLE_EAT_3)(p, o, o(196, s))
# define BOOST_PP_WHILE_196_I(p, o, s) BOOST_PP_IF(p(197, s), BOOST_PP_WHILE_197, s BOOST_PP_TUPLE_EAT_3)(p, o, o(197, s))
# define BOOST_PP_WHILE_197_I(p, o, s) BOOST_PP_IF(p(198, s), BOOST_PP_WHILE_198, s BOOST_PP_TUPLE_EAT_3)(p, o, o(198, s))
# define BOOST_PP_WHILE_198_I(p, o, s) BOOST_PP_IF(p(199, s), BOOST_PP_WHILE_199, s BOOST_PP_TUPLE_EAT_3)(p, o, o(199, s))
# define BOOST_PP_WHILE_199_I(p, o, s) BOOST_PP_IF(p(200, s), BOOST_PP_WHILE_200, s BOOST_PP_TUPLE_EAT_3)(p, o, o(200, s))
# define BOOST_PP_WHILE_200_I(p, o, s) BOOST_PP_IF(p(201, s), BOOST_PP_WHILE_201, s BOOST_PP_TUPLE_EAT_3)(p, o, o(201, s))
# define BOOST_PP_WHILE_201_I(p, o, s) BOOST_PP_IF(p(202, s), BOOST_PP_WHILE_202, s BOOST_PP_TUPLE_EAT_3)(p, o, o(202, s))
# define BOOST_PP_WHILE_202_I(p, o, s) BOOST_PP_IF(p(203, s), BOOST_PP_WHILE_203, s BOOST_PP_TUPLE_EAT_3)(p, o, o(203, s))
# define BOOST_PP_WHILE_203_I(p, o, s) BOOST_PP_IF(p(204, s), BOOST_PP_WHILE_204, s BOOST_PP_TUPLE_EAT_3)(p, o, o(204, s))
# define BOOST_PP_WHILE_204_I(p, o, s) BOOST_PP_IF(p(205, s), BOOST_PP_WHILE_205, s BOOST_PP_TUPLE_EAT_3)(p, o, o(205, s))
# define BOOST_PP_WHILE_205_I(p, o, s) BOOST_PP_IF(p(206, s), BOOST_PP_WHILE_206, s BOOST_PP_TUPLE_EAT_3)(p, o, o(206, s))
# define BOOST_PP_WHILE_206_I(p, o, s) BOOST_PP_IF(p(207, s), BOOST_PP_WHILE_207, s BOOST_PP_TUPLE_EAT_3)(p, o, o(207, s))
# define BOOST_PP_WHILE_207_I(p, o, s) BOOST_PP_IF(p(208, s), BOOST_PP_WHILE_208, s BOOST_PP_TUPLE_EAT_3)(p, o, o(208, s))
# define BOOST_PP_WHILE_208_I(p, o, s) BOOST_PP_IF(p(209, s), BOOST_PP_WHILE_209, s BOOST_PP_TUPLE_EAT_3)(p, o, o(209, s))
# define BOOST_PP_WHILE_209_I(p, o, s) BOOST_PP_IF(p(210, s), BOOST_PP_WHILE_210, s BOOST_PP_TUPLE_EAT_3)(p, o, o(210, s))
# define BOOST_PP_WHILE_210_I(p, o, s) BOOST_PP_IF(p(211, s), BOOST_PP_WHILE_211, s BOOST_PP_TUPLE_EAT_3)(p, o, o(211, s))
# define BOOST_PP_WHILE_211_I(p, o, s) BOOST_PP_IF(p(212, s), BOOST_PP_WHILE_212, s BOOST_PP_TUPLE_EAT_3)(p, o, o(212, s))
# define BOOST_PP_WHILE_212_I(p, o, s) BOOST_PP_IF(p(213, s), BOOST_PP_WHILE_213, s BOOST_PP_TUPLE_EAT_3)(p, o, o(213, s))
# define BOOST_PP_WHILE_213_I(p, o, s) BOOST_PP_IF(p(214, s), BOOST_PP_WHILE_214, s BOOST_PP_TUPLE_EAT_3)(p, o, o(214, s))
# define BOOST_PP_WHILE_214_I(p, o, s) BOOST_PP_IF(p(215, s), BOOST_PP_WHILE_215, s BOOST_PP_TUPLE_EAT_3)(p, o, o(215, s))
# define BOOST_PP_WHILE_215_I(p, o, s) BOOST_PP_IF(p(216, s), BOOST_PP_WHILE_216, s BOOST_PP_TUPLE_EAT_3)(p, o, o(216, s))
# define BOOST_PP_WHILE_216_I(p, o, s) BOOST_PP_IF(p(217, s), BOOST_PP_WHILE_217, s BOOST_PP_TUPLE_EAT_3)(p, o, o(217, s))
# define BOOST_PP_WHILE_217_I(p, o, s) BOOST_PP_IF(p(218, s), BOOST_PP_WHILE_218, s BOOST_PP_TUPLE_EAT_3)(p, o, o(218, s))
# define BOOST_PP_WHILE_218_I(p, o, s) BOOST_PP_IF(p(219, s), BOOST_PP_WHILE_219, s BOOST_PP_TUPLE_EAT_3)(p, o, o(219, s))
# define BOOST_PP_WHILE_219_I(p, o, s) BOOST_PP_IF(p(220, s), BOOST_PP_WHILE_220, s BOOST_PP_TUPLE_EAT_3)(p, o, o(220, s))
# define BOOST_PP_WHILE_220_I(p, o, s) BOOST_PP_IF(p(221, s), BOOST_PP_WHILE_221, s BOOST_PP_TUPLE_EAT_3)(p, o, o(221, s))
# define BOOST_PP_WHILE_221_I(p, o, s) BOOST_PP_IF(p(222, s), BOOST_PP_WHILE_222, s BOOST_PP_TUPLE_EAT_3)(p, o, o(222, s))
# define BOOST_PP_WHILE_222_I(p, o, s) BOOST_PP_IF(p(223, s), BOOST_PP_WHILE_223, s BOOST_PP_TUPLE_EAT_3)(p, o, o(223, s))
# define BOOST_PP_WHILE_223_I(p, o, s) BOOST_PP_IF(p(224, s), BOOST_PP_WHILE_224, s BOOST_PP_TUPLE_EAT_3)(p, o, o(224, s))
# define BOOST_PP_WHILE_224_I(p, o, s) BOOST_PP_IF(p(225, s), BOOST_PP_WHILE_225, s BOOST_PP_TUPLE_EAT_3)(p, o, o(225, s))
# define BOOST_PP_WHILE_225_I(p, o, s) BOOST_PP_IF(p(226, s), BOOST_PP_WHILE_226, s BOOST_PP_TUPLE_EAT_3)(p, o, o(226, s))
# define BOOST_PP_WHILE_226_I(p, o, s) BOOST_PP_IF(p(227, s), BOOST_PP_WHILE_227, s BOOST_PP_TUPLE_EAT_3)(p, o, o(227, s))
# define BOOST_PP_WHILE_227_I(p, o, s) BOOST_PP_IF(p(228, s), BOOST_PP_WHILE_228, s BOOST_PP_TUPLE_EAT_3)(p, o, o(228, s))
# define BOOST_PP_WHILE_228_I(p, o, s) BOOST_PP_IF(p(229, s), BOOST_PP_WHILE_229, s BOOST_PP_TUPLE_EAT_3)(p, o, o(229, s))
# define BOOST_PP_WHILE_229_I(p, o, s) BOOST_PP_IF(p(230, s), BOOST_PP_WHILE_230, s BOOST_PP_TUPLE_EAT_3)(p, o, o(230, s))
# define BOOST_PP_WHILE_230_I(p, o, s) BOOST_PP_IF(p(231, s), BOOST_PP_WHILE_231, s BOOST_PP_TUPLE_EAT_3)(p, o, o(231, s))
# define BOOST_PP_WHILE_231_I(p, o, s) BOOST_PP_IF(p(232, s), BOOST_PP_WHILE_232, s BOOST_PP_TUPLE_EAT_3)(p, o, o(232, s))
# define BOOST_PP_WHILE_232_I(p, o, s) BOOST_PP_IF(p(233, s), BOOST_PP_WHILE_233, s BOOST_PP_TUPLE_EAT_3)(p, o, o(233, s))
# define BOOST_PP_WHILE_233_I(p, o, s) BOOST_PP_IF(p(234, s), BOOST_PP_WHILE_234, s BOOST_PP_TUPLE_EAT_3)(p, o, o(234, s))
# define BOOST_PP_WHILE_234_I(p, o, s) BOOST_PP_IF(p(235, s), BOOST_PP_WHILE_235, s BOOST_PP_TUPLE_EAT_3)(p, o, o(235, s))
# define BOOST_PP_WHILE_235_I(p, o, s) BOOST_PP_IF(p(236, s), BOOST_PP_WHILE_236, s BOOST_PP_TUPLE_EAT_3)(p, o, o(236, s))
# define BOOST_PP_WHILE_236_I(p, o, s) BOOST_PP_IF(p(237, s), BOOST_PP_WHILE_237, s BOOST_PP_TUPLE_EAT_3)(p, o, o(237, s))
# define BOOST_PP_WHILE_237_I(p, o, s) BOOST_PP_IF(p(238, s), BOOST_PP_WHILE_238, s BOOST_PP_TUPLE_EAT_3)(p, o, o(238, s))
# define BOOST_PP_WHILE_238_I(p, o, s) BOOST_PP_IF(p(239, s), BOOST_PP_WHILE_239, s BOOST_PP_TUPLE_EAT_3)(p, o, o(239, s))
# define BOOST_PP_WHILE_239_I(p, o, s) BOOST_PP_IF(p(240, s), BOOST_PP_WHILE_240, s BOOST_PP_TUPLE_EAT_3)(p, o, o(240, s))
# define BOOST_PP_WHILE_240_I(p, o, s) BOOST_PP_IF(p(241, s), BOOST_PP_WHILE_241, s BOOST_PP_TUPLE_EAT_3)(p, o, o(241, s))
# define BOOST_PP_WHILE_241_I(p, o, s) BOOST_PP_IF(p(242, s), BOOST_PP_WHILE_242, s BOOST_PP_TUPLE_EAT_3)(p, o, o(242, s))
# define BOOST_PP_WHILE_242_I(p, o, s) BOOST_PP_IF(p(243, s), BOOST_PP_WHILE_243, s BOOST_PP_TUPLE_EAT_3)(p, o, o(243, s))
# define BOOST_PP_WHILE_243_I(p, o, s) BOOST_PP_IF(p(244, s), BOOST_PP_WHILE_244, s BOOST_PP_TUPLE_EAT_3)(p, o, o(244, s))
# define BOOST_PP_WHILE_244_I(p, o, s) BOOST_PP_IF(p(245, s), BOOST_PP_WHILE_245, s BOOST_PP_TUPLE_EAT_3)(p, o, o(245, s))
# define BOOST_PP_WHILE_245_I(p, o, s) BOOST_PP_IF(p(246, s), BOOST_PP_WHILE_246, s BOOST_PP_TUPLE_EAT_3)(p, o, o(246, s))
# define BOOST_PP_WHILE_246_I(p, o, s) BOOST_PP_IF(p(247, s), BOOST_PP_WHILE_247, s BOOST_PP_TUPLE_EAT_3)(p, o, o(247, s))
# define BOOST_PP_WHILE_247_I(p, o, s) BOOST_PP_IF(p(248, s), BOOST_PP_WHILE_248, s BOOST_PP_TUPLE_EAT_3)(p, o, o(248, s))
# define BOOST_PP_WHILE_248_I(p, o, s) BOOST_PP_IF(p(249, s), BOOST_PP_WHILE_249, s BOOST_PP_TUPLE_EAT_3)(p, o, o(249, s))
# define BOOST_PP_WHILE_249_I(p, o, s) BOOST_PP_IF(p(250, s), BOOST_PP_WHILE_250, s BOOST_PP_TUPLE_EAT_3)(p, o, o(250, s))
# define BOOST_PP_WHILE_250_I(p, o, s) BOOST_PP_IF(p(251, s), BOOST_PP_WHILE_251, s BOOST_PP_TUPLE_EAT_3)(p, o, o(251, s))
# define BOOST_PP_WHILE_251_I(p, o, s) BOOST_PP_IF(p(252, s), BOOST_PP_WHILE_252, s BOOST_PP_TUPLE_EAT_3)(p, o, o(252, s))
# define BOOST_PP_WHILE_252_I(p, o, s) BOOST_PP_IF(p(253, s), BOOST_PP_WHILE_253, s BOOST_PP_TUPLE_EAT_3)(p, o, o(253, s))
# define BOOST_PP_WHILE_253_I(p, o, s) BOOST_PP_IF(p(254, s), BOOST_PP_WHILE_254, s BOOST_PP_TUPLE_EAT_3)(p, o, o(254, s))
# define BOOST_PP_WHILE_254_I(p, o, s) BOOST_PP_IF(p(255, s), BOOST_PP_WHILE_255, s BOOST_PP_TUPLE_EAT_3)(p, o, o(255, s))
# define BOOST_PP_WHILE_255_I(p, o, s) BOOST_PP_IF(p(256, s), BOOST_PP_WHILE_256, s BOOST_PP_TUPLE_EAT_3)(p, o, o(256, s))
# define BOOST_PP_WHILE_256_I(p, o, s) BOOST_PP_IF(p(257, s), BOOST_PP_WHILE_257, s BOOST_PP_TUPLE_EAT_3)(p, o, o(257, s))
#
# endif

View File

@ -0,0 +1,532 @@
# /* Copyright (C) 2001
# * Housemarque Oy
# * http://www.housemarque.com
# *
# * Distributed under the Boost Software License, Version 1.0. (See
# * accompanying file LICENSE_1_0.txt or copy at
# * http://www.boost.org/LICENSE_1_0.txt)
# */
#
# /* Revised by Paul Mensonides (2002) */
# /* Revised by Edward Diener (2020) */
#
# /* See http://www.boost.org for most recent version. */
#
# ifndef BOOST_PREPROCESSOR_CONTROL_DETAIL_EDG_WHILE_512_HPP
# define BOOST_PREPROCESSOR_CONTROL_DETAIL_EDG_WHILE_512_HPP
#
# define BOOST_PP_WHILE_257(p, o, s) BOOST_PP_WHILE_257_I(p, o, s)
# define BOOST_PP_WHILE_258(p, o, s) BOOST_PP_WHILE_258_I(p, o, s)
# define BOOST_PP_WHILE_259(p, o, s) BOOST_PP_WHILE_259_I(p, o, s)
# define BOOST_PP_WHILE_260(p, o, s) BOOST_PP_WHILE_260_I(p, o, s)
# define BOOST_PP_WHILE_261(p, o, s) BOOST_PP_WHILE_261_I(p, o, s)
# define BOOST_PP_WHILE_262(p, o, s) BOOST_PP_WHILE_262_I(p, o, s)
# define BOOST_PP_WHILE_263(p, o, s) BOOST_PP_WHILE_263_I(p, o, s)
# define BOOST_PP_WHILE_264(p, o, s) BOOST_PP_WHILE_264_I(p, o, s)
# define BOOST_PP_WHILE_265(p, o, s) BOOST_PP_WHILE_265_I(p, o, s)
# define BOOST_PP_WHILE_266(p, o, s) BOOST_PP_WHILE_266_I(p, o, s)
# define BOOST_PP_WHILE_267(p, o, s) BOOST_PP_WHILE_267_I(p, o, s)
# define BOOST_PP_WHILE_268(p, o, s) BOOST_PP_WHILE_268_I(p, o, s)
# define BOOST_PP_WHILE_269(p, o, s) BOOST_PP_WHILE_269_I(p, o, s)
# define BOOST_PP_WHILE_270(p, o, s) BOOST_PP_WHILE_270_I(p, o, s)
# define BOOST_PP_WHILE_271(p, o, s) BOOST_PP_WHILE_271_I(p, o, s)
# define BOOST_PP_WHILE_272(p, o, s) BOOST_PP_WHILE_272_I(p, o, s)
# define BOOST_PP_WHILE_273(p, o, s) BOOST_PP_WHILE_273_I(p, o, s)
# define BOOST_PP_WHILE_274(p, o, s) BOOST_PP_WHILE_274_I(p, o, s)
# define BOOST_PP_WHILE_275(p, o, s) BOOST_PP_WHILE_275_I(p, o, s)
# define BOOST_PP_WHILE_276(p, o, s) BOOST_PP_WHILE_276_I(p, o, s)
# define BOOST_PP_WHILE_277(p, o, s) BOOST_PP_WHILE_277_I(p, o, s)
# define BOOST_PP_WHILE_278(p, o, s) BOOST_PP_WHILE_278_I(p, o, s)
# define BOOST_PP_WHILE_279(p, o, s) BOOST_PP_WHILE_279_I(p, o, s)
# define BOOST_PP_WHILE_280(p, o, s) BOOST_PP_WHILE_280_I(p, o, s)
# define BOOST_PP_WHILE_281(p, o, s) BOOST_PP_WHILE_281_I(p, o, s)
# define BOOST_PP_WHILE_282(p, o, s) BOOST_PP_WHILE_282_I(p, o, s)
# define BOOST_PP_WHILE_283(p, o, s) BOOST_PP_WHILE_283_I(p, o, s)
# define BOOST_PP_WHILE_284(p, o, s) BOOST_PP_WHILE_284_I(p, o, s)
# define BOOST_PP_WHILE_285(p, o, s) BOOST_PP_WHILE_285_I(p, o, s)
# define BOOST_PP_WHILE_286(p, o, s) BOOST_PP_WHILE_286_I(p, o, s)
# define BOOST_PP_WHILE_287(p, o, s) BOOST_PP_WHILE_287_I(p, o, s)
# define BOOST_PP_WHILE_288(p, o, s) BOOST_PP_WHILE_288_I(p, o, s)
# define BOOST_PP_WHILE_289(p, o, s) BOOST_PP_WHILE_289_I(p, o, s)
# define BOOST_PP_WHILE_290(p, o, s) BOOST_PP_WHILE_290_I(p, o, s)
# define BOOST_PP_WHILE_291(p, o, s) BOOST_PP_WHILE_291_I(p, o, s)
# define BOOST_PP_WHILE_292(p, o, s) BOOST_PP_WHILE_292_I(p, o, s)
# define BOOST_PP_WHILE_293(p, o, s) BOOST_PP_WHILE_293_I(p, o, s)
# define BOOST_PP_WHILE_294(p, o, s) BOOST_PP_WHILE_294_I(p, o, s)
# define BOOST_PP_WHILE_295(p, o, s) BOOST_PP_WHILE_295_I(p, o, s)
# define BOOST_PP_WHILE_296(p, o, s) BOOST_PP_WHILE_296_I(p, o, s)
# define BOOST_PP_WHILE_297(p, o, s) BOOST_PP_WHILE_297_I(p, o, s)
# define BOOST_PP_WHILE_298(p, o, s) BOOST_PP_WHILE_298_I(p, o, s)
# define BOOST_PP_WHILE_299(p, o, s) BOOST_PP_WHILE_299_I(p, o, s)
# define BOOST_PP_WHILE_300(p, o, s) BOOST_PP_WHILE_300_I(p, o, s)
# define BOOST_PP_WHILE_301(p, o, s) BOOST_PP_WHILE_301_I(p, o, s)
# define BOOST_PP_WHILE_302(p, o, s) BOOST_PP_WHILE_302_I(p, o, s)
# define BOOST_PP_WHILE_303(p, o, s) BOOST_PP_WHILE_303_I(p, o, s)
# define BOOST_PP_WHILE_304(p, o, s) BOOST_PP_WHILE_304_I(p, o, s)
# define BOOST_PP_WHILE_305(p, o, s) BOOST_PP_WHILE_305_I(p, o, s)
# define BOOST_PP_WHILE_306(p, o, s) BOOST_PP_WHILE_306_I(p, o, s)
# define BOOST_PP_WHILE_307(p, o, s) BOOST_PP_WHILE_307_I(p, o, s)
# define BOOST_PP_WHILE_308(p, o, s) BOOST_PP_WHILE_308_I(p, o, s)
# define BOOST_PP_WHILE_309(p, o, s) BOOST_PP_WHILE_309_I(p, o, s)
# define BOOST_PP_WHILE_310(p, o, s) BOOST_PP_WHILE_310_I(p, o, s)
# define BOOST_PP_WHILE_311(p, o, s) BOOST_PP_WHILE_311_I(p, o, s)
# define BOOST_PP_WHILE_312(p, o, s) BOOST_PP_WHILE_312_I(p, o, s)
# define BOOST_PP_WHILE_313(p, o, s) BOOST_PP_WHILE_313_I(p, o, s)
# define BOOST_PP_WHILE_314(p, o, s) BOOST_PP_WHILE_314_I(p, o, s)
# define BOOST_PP_WHILE_315(p, o, s) BOOST_PP_WHILE_315_I(p, o, s)
# define BOOST_PP_WHILE_316(p, o, s) BOOST_PP_WHILE_316_I(p, o, s)
# define BOOST_PP_WHILE_317(p, o, s) BOOST_PP_WHILE_317_I(p, o, s)
# define BOOST_PP_WHILE_318(p, o, s) BOOST_PP_WHILE_318_I(p, o, s)
# define BOOST_PP_WHILE_319(p, o, s) BOOST_PP_WHILE_319_I(p, o, s)
# define BOOST_PP_WHILE_320(p, o, s) BOOST_PP_WHILE_320_I(p, o, s)
# define BOOST_PP_WHILE_321(p, o, s) BOOST_PP_WHILE_321_I(p, o, s)
# define BOOST_PP_WHILE_322(p, o, s) BOOST_PP_WHILE_322_I(p, o, s)
# define BOOST_PP_WHILE_323(p, o, s) BOOST_PP_WHILE_323_I(p, o, s)
# define BOOST_PP_WHILE_324(p, o, s) BOOST_PP_WHILE_324_I(p, o, s)
# define BOOST_PP_WHILE_325(p, o, s) BOOST_PP_WHILE_325_I(p, o, s)
# define BOOST_PP_WHILE_326(p, o, s) BOOST_PP_WHILE_326_I(p, o, s)
# define BOOST_PP_WHILE_327(p, o, s) BOOST_PP_WHILE_327_I(p, o, s)
# define BOOST_PP_WHILE_328(p, o, s) BOOST_PP_WHILE_328_I(p, o, s)
# define BOOST_PP_WHILE_329(p, o, s) BOOST_PP_WHILE_329_I(p, o, s)
# define BOOST_PP_WHILE_330(p, o, s) BOOST_PP_WHILE_330_I(p, o, s)
# define BOOST_PP_WHILE_331(p, o, s) BOOST_PP_WHILE_331_I(p, o, s)
# define BOOST_PP_WHILE_332(p, o, s) BOOST_PP_WHILE_332_I(p, o, s)
# define BOOST_PP_WHILE_333(p, o, s) BOOST_PP_WHILE_333_I(p, o, s)
# define BOOST_PP_WHILE_334(p, o, s) BOOST_PP_WHILE_334_I(p, o, s)
# define BOOST_PP_WHILE_335(p, o, s) BOOST_PP_WHILE_335_I(p, o, s)
# define BOOST_PP_WHILE_336(p, o, s) BOOST_PP_WHILE_336_I(p, o, s)
# define BOOST_PP_WHILE_337(p, o, s) BOOST_PP_WHILE_337_I(p, o, s)
# define BOOST_PP_WHILE_338(p, o, s) BOOST_PP_WHILE_338_I(p, o, s)
# define BOOST_PP_WHILE_339(p, o, s) BOOST_PP_WHILE_339_I(p, o, s)
# define BOOST_PP_WHILE_340(p, o, s) BOOST_PP_WHILE_340_I(p, o, s)
# define BOOST_PP_WHILE_341(p, o, s) BOOST_PP_WHILE_341_I(p, o, s)
# define BOOST_PP_WHILE_342(p, o, s) BOOST_PP_WHILE_342_I(p, o, s)
# define BOOST_PP_WHILE_343(p, o, s) BOOST_PP_WHILE_343_I(p, o, s)
# define BOOST_PP_WHILE_344(p, o, s) BOOST_PP_WHILE_344_I(p, o, s)
# define BOOST_PP_WHILE_345(p, o, s) BOOST_PP_WHILE_345_I(p, o, s)
# define BOOST_PP_WHILE_346(p, o, s) BOOST_PP_WHILE_346_I(p, o, s)
# define BOOST_PP_WHILE_347(p, o, s) BOOST_PP_WHILE_347_I(p, o, s)
# define BOOST_PP_WHILE_348(p, o, s) BOOST_PP_WHILE_348_I(p, o, s)
# define BOOST_PP_WHILE_349(p, o, s) BOOST_PP_WHILE_349_I(p, o, s)
# define BOOST_PP_WHILE_350(p, o, s) BOOST_PP_WHILE_350_I(p, o, s)
# define BOOST_PP_WHILE_351(p, o, s) BOOST_PP_WHILE_351_I(p, o, s)
# define BOOST_PP_WHILE_352(p, o, s) BOOST_PP_WHILE_352_I(p, o, s)
# define BOOST_PP_WHILE_353(p, o, s) BOOST_PP_WHILE_353_I(p, o, s)
# define BOOST_PP_WHILE_354(p, o, s) BOOST_PP_WHILE_354_I(p, o, s)
# define BOOST_PP_WHILE_355(p, o, s) BOOST_PP_WHILE_355_I(p, o, s)
# define BOOST_PP_WHILE_356(p, o, s) BOOST_PP_WHILE_356_I(p, o, s)
# define BOOST_PP_WHILE_357(p, o, s) BOOST_PP_WHILE_357_I(p, o, s)
# define BOOST_PP_WHILE_358(p, o, s) BOOST_PP_WHILE_358_I(p, o, s)
# define BOOST_PP_WHILE_359(p, o, s) BOOST_PP_WHILE_359_I(p, o, s)
# define BOOST_PP_WHILE_360(p, o, s) BOOST_PP_WHILE_360_I(p, o, s)
# define BOOST_PP_WHILE_361(p, o, s) BOOST_PP_WHILE_361_I(p, o, s)
# define BOOST_PP_WHILE_362(p, o, s) BOOST_PP_WHILE_362_I(p, o, s)
# define BOOST_PP_WHILE_363(p, o, s) BOOST_PP_WHILE_363_I(p, o, s)
# define BOOST_PP_WHILE_364(p, o, s) BOOST_PP_WHILE_364_I(p, o, s)
# define BOOST_PP_WHILE_365(p, o, s) BOOST_PP_WHILE_365_I(p, o, s)
# define BOOST_PP_WHILE_366(p, o, s) BOOST_PP_WHILE_366_I(p, o, s)
# define BOOST_PP_WHILE_367(p, o, s) BOOST_PP_WHILE_367_I(p, o, s)
# define BOOST_PP_WHILE_368(p, o, s) BOOST_PP_WHILE_368_I(p, o, s)
# define BOOST_PP_WHILE_369(p, o, s) BOOST_PP_WHILE_369_I(p, o, s)
# define BOOST_PP_WHILE_370(p, o, s) BOOST_PP_WHILE_370_I(p, o, s)
# define BOOST_PP_WHILE_371(p, o, s) BOOST_PP_WHILE_371_I(p, o, s)
# define BOOST_PP_WHILE_372(p, o, s) BOOST_PP_WHILE_372_I(p, o, s)
# define BOOST_PP_WHILE_373(p, o, s) BOOST_PP_WHILE_373_I(p, o, s)
# define BOOST_PP_WHILE_374(p, o, s) BOOST_PP_WHILE_374_I(p, o, s)
# define BOOST_PP_WHILE_375(p, o, s) BOOST_PP_WHILE_375_I(p, o, s)
# define BOOST_PP_WHILE_376(p, o, s) BOOST_PP_WHILE_376_I(p, o, s)
# define BOOST_PP_WHILE_377(p, o, s) BOOST_PP_WHILE_377_I(p, o, s)
# define BOOST_PP_WHILE_378(p, o, s) BOOST_PP_WHILE_378_I(p, o, s)
# define BOOST_PP_WHILE_379(p, o, s) BOOST_PP_WHILE_379_I(p, o, s)
# define BOOST_PP_WHILE_380(p, o, s) BOOST_PP_WHILE_380_I(p, o, s)
# define BOOST_PP_WHILE_381(p, o, s) BOOST_PP_WHILE_381_I(p, o, s)
# define BOOST_PP_WHILE_382(p, o, s) BOOST_PP_WHILE_382_I(p, o, s)
# define BOOST_PP_WHILE_383(p, o, s) BOOST_PP_WHILE_383_I(p, o, s)
# define BOOST_PP_WHILE_384(p, o, s) BOOST_PP_WHILE_384_I(p, o, s)
# define BOOST_PP_WHILE_385(p, o, s) BOOST_PP_WHILE_385_I(p, o, s)
# define BOOST_PP_WHILE_386(p, o, s) BOOST_PP_WHILE_386_I(p, o, s)
# define BOOST_PP_WHILE_387(p, o, s) BOOST_PP_WHILE_387_I(p, o, s)
# define BOOST_PP_WHILE_388(p, o, s) BOOST_PP_WHILE_388_I(p, o, s)
# define BOOST_PP_WHILE_389(p, o, s) BOOST_PP_WHILE_389_I(p, o, s)
# define BOOST_PP_WHILE_390(p, o, s) BOOST_PP_WHILE_390_I(p, o, s)
# define BOOST_PP_WHILE_391(p, o, s) BOOST_PP_WHILE_391_I(p, o, s)
# define BOOST_PP_WHILE_392(p, o, s) BOOST_PP_WHILE_392_I(p, o, s)
# define BOOST_PP_WHILE_393(p, o, s) BOOST_PP_WHILE_393_I(p, o, s)
# define BOOST_PP_WHILE_394(p, o, s) BOOST_PP_WHILE_394_I(p, o, s)
# define BOOST_PP_WHILE_395(p, o, s) BOOST_PP_WHILE_395_I(p, o, s)
# define BOOST_PP_WHILE_396(p, o, s) BOOST_PP_WHILE_396_I(p, o, s)
# define BOOST_PP_WHILE_397(p, o, s) BOOST_PP_WHILE_397_I(p, o, s)
# define BOOST_PP_WHILE_398(p, o, s) BOOST_PP_WHILE_398_I(p, o, s)
# define BOOST_PP_WHILE_399(p, o, s) BOOST_PP_WHILE_399_I(p, o, s)
# define BOOST_PP_WHILE_400(p, o, s) BOOST_PP_WHILE_400_I(p, o, s)
# define BOOST_PP_WHILE_401(p, o, s) BOOST_PP_WHILE_401_I(p, o, s)
# define BOOST_PP_WHILE_402(p, o, s) BOOST_PP_WHILE_402_I(p, o, s)
# define BOOST_PP_WHILE_403(p, o, s) BOOST_PP_WHILE_403_I(p, o, s)
# define BOOST_PP_WHILE_404(p, o, s) BOOST_PP_WHILE_404_I(p, o, s)
# define BOOST_PP_WHILE_405(p, o, s) BOOST_PP_WHILE_405_I(p, o, s)
# define BOOST_PP_WHILE_406(p, o, s) BOOST_PP_WHILE_406_I(p, o, s)
# define BOOST_PP_WHILE_407(p, o, s) BOOST_PP_WHILE_407_I(p, o, s)
# define BOOST_PP_WHILE_408(p, o, s) BOOST_PP_WHILE_408_I(p, o, s)
# define BOOST_PP_WHILE_409(p, o, s) BOOST_PP_WHILE_409_I(p, o, s)
# define BOOST_PP_WHILE_410(p, o, s) BOOST_PP_WHILE_410_I(p, o, s)
# define BOOST_PP_WHILE_411(p, o, s) BOOST_PP_WHILE_411_I(p, o, s)
# define BOOST_PP_WHILE_412(p, o, s) BOOST_PP_WHILE_412_I(p, o, s)
# define BOOST_PP_WHILE_413(p, o, s) BOOST_PP_WHILE_413_I(p, o, s)
# define BOOST_PP_WHILE_414(p, o, s) BOOST_PP_WHILE_414_I(p, o, s)
# define BOOST_PP_WHILE_415(p, o, s) BOOST_PP_WHILE_415_I(p, o, s)
# define BOOST_PP_WHILE_416(p, o, s) BOOST_PP_WHILE_416_I(p, o, s)
# define BOOST_PP_WHILE_417(p, o, s) BOOST_PP_WHILE_417_I(p, o, s)
# define BOOST_PP_WHILE_418(p, o, s) BOOST_PP_WHILE_418_I(p, o, s)
# define BOOST_PP_WHILE_419(p, o, s) BOOST_PP_WHILE_419_I(p, o, s)
# define BOOST_PP_WHILE_420(p, o, s) BOOST_PP_WHILE_420_I(p, o, s)
# define BOOST_PP_WHILE_421(p, o, s) BOOST_PP_WHILE_421_I(p, o, s)
# define BOOST_PP_WHILE_422(p, o, s) BOOST_PP_WHILE_422_I(p, o, s)
# define BOOST_PP_WHILE_423(p, o, s) BOOST_PP_WHILE_423_I(p, o, s)
# define BOOST_PP_WHILE_424(p, o, s) BOOST_PP_WHILE_424_I(p, o, s)
# define BOOST_PP_WHILE_425(p, o, s) BOOST_PP_WHILE_425_I(p, o, s)
# define BOOST_PP_WHILE_426(p, o, s) BOOST_PP_WHILE_426_I(p, o, s)
# define BOOST_PP_WHILE_427(p, o, s) BOOST_PP_WHILE_427_I(p, o, s)
# define BOOST_PP_WHILE_428(p, o, s) BOOST_PP_WHILE_428_I(p, o, s)
# define BOOST_PP_WHILE_429(p, o, s) BOOST_PP_WHILE_429_I(p, o, s)
# define BOOST_PP_WHILE_430(p, o, s) BOOST_PP_WHILE_430_I(p, o, s)
# define BOOST_PP_WHILE_431(p, o, s) BOOST_PP_WHILE_431_I(p, o, s)
# define BOOST_PP_WHILE_432(p, o, s) BOOST_PP_WHILE_432_I(p, o, s)
# define BOOST_PP_WHILE_433(p, o, s) BOOST_PP_WHILE_433_I(p, o, s)
# define BOOST_PP_WHILE_434(p, o, s) BOOST_PP_WHILE_434_I(p, o, s)
# define BOOST_PP_WHILE_435(p, o, s) BOOST_PP_WHILE_435_I(p, o, s)
# define BOOST_PP_WHILE_436(p, o, s) BOOST_PP_WHILE_436_I(p, o, s)
# define BOOST_PP_WHILE_437(p, o, s) BOOST_PP_WHILE_437_I(p, o, s)
# define BOOST_PP_WHILE_438(p, o, s) BOOST_PP_WHILE_438_I(p, o, s)
# define BOOST_PP_WHILE_439(p, o, s) BOOST_PP_WHILE_439_I(p, o, s)
# define BOOST_PP_WHILE_440(p, o, s) BOOST_PP_WHILE_440_I(p, o, s)
# define BOOST_PP_WHILE_441(p, o, s) BOOST_PP_WHILE_441_I(p, o, s)
# define BOOST_PP_WHILE_442(p, o, s) BOOST_PP_WHILE_442_I(p, o, s)
# define BOOST_PP_WHILE_443(p, o, s) BOOST_PP_WHILE_443_I(p, o, s)
# define BOOST_PP_WHILE_444(p, o, s) BOOST_PP_WHILE_444_I(p, o, s)
# define BOOST_PP_WHILE_445(p, o, s) BOOST_PP_WHILE_445_I(p, o, s)
# define BOOST_PP_WHILE_446(p, o, s) BOOST_PP_WHILE_446_I(p, o, s)
# define BOOST_PP_WHILE_447(p, o, s) BOOST_PP_WHILE_447_I(p, o, s)
# define BOOST_PP_WHILE_448(p, o, s) BOOST_PP_WHILE_448_I(p, o, s)
# define BOOST_PP_WHILE_449(p, o, s) BOOST_PP_WHILE_449_I(p, o, s)
# define BOOST_PP_WHILE_450(p, o, s) BOOST_PP_WHILE_450_I(p, o, s)
# define BOOST_PP_WHILE_451(p, o, s) BOOST_PP_WHILE_451_I(p, o, s)
# define BOOST_PP_WHILE_452(p, o, s) BOOST_PP_WHILE_452_I(p, o, s)
# define BOOST_PP_WHILE_453(p, o, s) BOOST_PP_WHILE_453_I(p, o, s)
# define BOOST_PP_WHILE_454(p, o, s) BOOST_PP_WHILE_454_I(p, o, s)
# define BOOST_PP_WHILE_455(p, o, s) BOOST_PP_WHILE_455_I(p, o, s)
# define BOOST_PP_WHILE_456(p, o, s) BOOST_PP_WHILE_456_I(p, o, s)
# define BOOST_PP_WHILE_457(p, o, s) BOOST_PP_WHILE_457_I(p, o, s)
# define BOOST_PP_WHILE_458(p, o, s) BOOST_PP_WHILE_458_I(p, o, s)
# define BOOST_PP_WHILE_459(p, o, s) BOOST_PP_WHILE_459_I(p, o, s)
# define BOOST_PP_WHILE_460(p, o, s) BOOST_PP_WHILE_460_I(p, o, s)
# define BOOST_PP_WHILE_461(p, o, s) BOOST_PP_WHILE_461_I(p, o, s)
# define BOOST_PP_WHILE_462(p, o, s) BOOST_PP_WHILE_462_I(p, o, s)
# define BOOST_PP_WHILE_463(p, o, s) BOOST_PP_WHILE_463_I(p, o, s)
# define BOOST_PP_WHILE_464(p, o, s) BOOST_PP_WHILE_464_I(p, o, s)
# define BOOST_PP_WHILE_465(p, o, s) BOOST_PP_WHILE_465_I(p, o, s)
# define BOOST_PP_WHILE_466(p, o, s) BOOST_PP_WHILE_466_I(p, o, s)
# define BOOST_PP_WHILE_467(p, o, s) BOOST_PP_WHILE_467_I(p, o, s)
# define BOOST_PP_WHILE_468(p, o, s) BOOST_PP_WHILE_468_I(p, o, s)
# define BOOST_PP_WHILE_469(p, o, s) BOOST_PP_WHILE_469_I(p, o, s)
# define BOOST_PP_WHILE_470(p, o, s) BOOST_PP_WHILE_470_I(p, o, s)
# define BOOST_PP_WHILE_471(p, o, s) BOOST_PP_WHILE_471_I(p, o, s)
# define BOOST_PP_WHILE_472(p, o, s) BOOST_PP_WHILE_472_I(p, o, s)
# define BOOST_PP_WHILE_473(p, o, s) BOOST_PP_WHILE_473_I(p, o, s)
# define BOOST_PP_WHILE_474(p, o, s) BOOST_PP_WHILE_474_I(p, o, s)
# define BOOST_PP_WHILE_475(p, o, s) BOOST_PP_WHILE_475_I(p, o, s)
# define BOOST_PP_WHILE_476(p, o, s) BOOST_PP_WHILE_476_I(p, o, s)
# define BOOST_PP_WHILE_477(p, o, s) BOOST_PP_WHILE_477_I(p, o, s)
# define BOOST_PP_WHILE_478(p, o, s) BOOST_PP_WHILE_478_I(p, o, s)
# define BOOST_PP_WHILE_479(p, o, s) BOOST_PP_WHILE_479_I(p, o, s)
# define BOOST_PP_WHILE_480(p, o, s) BOOST_PP_WHILE_480_I(p, o, s)
# define BOOST_PP_WHILE_481(p, o, s) BOOST_PP_WHILE_481_I(p, o, s)
# define BOOST_PP_WHILE_482(p, o, s) BOOST_PP_WHILE_482_I(p, o, s)
# define BOOST_PP_WHILE_483(p, o, s) BOOST_PP_WHILE_483_I(p, o, s)
# define BOOST_PP_WHILE_484(p, o, s) BOOST_PP_WHILE_484_I(p, o, s)
# define BOOST_PP_WHILE_485(p, o, s) BOOST_PP_WHILE_485_I(p, o, s)
# define BOOST_PP_WHILE_486(p, o, s) BOOST_PP_WHILE_486_I(p, o, s)
# define BOOST_PP_WHILE_487(p, o, s) BOOST_PP_WHILE_487_I(p, o, s)
# define BOOST_PP_WHILE_488(p, o, s) BOOST_PP_WHILE_488_I(p, o, s)
# define BOOST_PP_WHILE_489(p, o, s) BOOST_PP_WHILE_489_I(p, o, s)
# define BOOST_PP_WHILE_490(p, o, s) BOOST_PP_WHILE_490_I(p, o, s)
# define BOOST_PP_WHILE_491(p, o, s) BOOST_PP_WHILE_491_I(p, o, s)
# define BOOST_PP_WHILE_492(p, o, s) BOOST_PP_WHILE_492_I(p, o, s)
# define BOOST_PP_WHILE_493(p, o, s) BOOST_PP_WHILE_493_I(p, o, s)
# define BOOST_PP_WHILE_494(p, o, s) BOOST_PP_WHILE_494_I(p, o, s)
# define BOOST_PP_WHILE_495(p, o, s) BOOST_PP_WHILE_495_I(p, o, s)
# define BOOST_PP_WHILE_496(p, o, s) BOOST_PP_WHILE_496_I(p, o, s)
# define BOOST_PP_WHILE_497(p, o, s) BOOST_PP_WHILE_497_I(p, o, s)
# define BOOST_PP_WHILE_498(p, o, s) BOOST_PP_WHILE_498_I(p, o, s)
# define BOOST_PP_WHILE_499(p, o, s) BOOST_PP_WHILE_499_I(p, o, s)
# define BOOST_PP_WHILE_500(p, o, s) BOOST_PP_WHILE_500_I(p, o, s)
# define BOOST_PP_WHILE_501(p, o, s) BOOST_PP_WHILE_501_I(p, o, s)
# define BOOST_PP_WHILE_502(p, o, s) BOOST_PP_WHILE_502_I(p, o, s)
# define BOOST_PP_WHILE_503(p, o, s) BOOST_PP_WHILE_503_I(p, o, s)
# define BOOST_PP_WHILE_504(p, o, s) BOOST_PP_WHILE_504_I(p, o, s)
# define BOOST_PP_WHILE_505(p, o, s) BOOST_PP_WHILE_505_I(p, o, s)
# define BOOST_PP_WHILE_506(p, o, s) BOOST_PP_WHILE_506_I(p, o, s)
# define BOOST_PP_WHILE_507(p, o, s) BOOST_PP_WHILE_507_I(p, o, s)
# define BOOST_PP_WHILE_508(p, o, s) BOOST_PP_WHILE_508_I(p, o, s)
# define BOOST_PP_WHILE_509(p, o, s) BOOST_PP_WHILE_509_I(p, o, s)
# define BOOST_PP_WHILE_510(p, o, s) BOOST_PP_WHILE_510_I(p, o, s)
# define BOOST_PP_WHILE_511(p, o, s) BOOST_PP_WHILE_511_I(p, o, s)
# define BOOST_PP_WHILE_512(p, o, s) BOOST_PP_WHILE_512_I(p, o, s)
#
# define BOOST_PP_WHILE_257_I(p, o, s) BOOST_PP_IF(p(258, s), BOOST_PP_WHILE_258, s BOOST_PP_TUPLE_EAT_3)(p, o, o(258, s))
# define BOOST_PP_WHILE_258_I(p, o, s) BOOST_PP_IF(p(259, s), BOOST_PP_WHILE_259, s BOOST_PP_TUPLE_EAT_3)(p, o, o(259, s))
# define BOOST_PP_WHILE_259_I(p, o, s) BOOST_PP_IF(p(260, s), BOOST_PP_WHILE_260, s BOOST_PP_TUPLE_EAT_3)(p, o, o(260, s))
# define BOOST_PP_WHILE_260_I(p, o, s) BOOST_PP_IF(p(261, s), BOOST_PP_WHILE_261, s BOOST_PP_TUPLE_EAT_3)(p, o, o(261, s))
# define BOOST_PP_WHILE_261_I(p, o, s) BOOST_PP_IF(p(262, s), BOOST_PP_WHILE_262, s BOOST_PP_TUPLE_EAT_3)(p, o, o(262, s))
# define BOOST_PP_WHILE_262_I(p, o, s) BOOST_PP_IF(p(263, s), BOOST_PP_WHILE_263, s BOOST_PP_TUPLE_EAT_3)(p, o, o(263, s))
# define BOOST_PP_WHILE_263_I(p, o, s) BOOST_PP_IF(p(264, s), BOOST_PP_WHILE_264, s BOOST_PP_TUPLE_EAT_3)(p, o, o(264, s))
# define BOOST_PP_WHILE_264_I(p, o, s) BOOST_PP_IF(p(265, s), BOOST_PP_WHILE_265, s BOOST_PP_TUPLE_EAT_3)(p, o, o(265, s))
# define BOOST_PP_WHILE_265_I(p, o, s) BOOST_PP_IF(p(266, s), BOOST_PP_WHILE_266, s BOOST_PP_TUPLE_EAT_3)(p, o, o(266, s))
# define BOOST_PP_WHILE_266_I(p, o, s) BOOST_PP_IF(p(267, s), BOOST_PP_WHILE_267, s BOOST_PP_TUPLE_EAT_3)(p, o, o(267, s))
# define BOOST_PP_WHILE_267_I(p, o, s) BOOST_PP_IF(p(268, s), BOOST_PP_WHILE_268, s BOOST_PP_TUPLE_EAT_3)(p, o, o(268, s))
# define BOOST_PP_WHILE_268_I(p, o, s) BOOST_PP_IF(p(269, s), BOOST_PP_WHILE_269, s BOOST_PP_TUPLE_EAT_3)(p, o, o(269, s))
# define BOOST_PP_WHILE_269_I(p, o, s) BOOST_PP_IF(p(270, s), BOOST_PP_WHILE_270, s BOOST_PP_TUPLE_EAT_3)(p, o, o(270, s))
# define BOOST_PP_WHILE_270_I(p, o, s) BOOST_PP_IF(p(271, s), BOOST_PP_WHILE_271, s BOOST_PP_TUPLE_EAT_3)(p, o, o(271, s))
# define BOOST_PP_WHILE_271_I(p, o, s) BOOST_PP_IF(p(272, s), BOOST_PP_WHILE_272, s BOOST_PP_TUPLE_EAT_3)(p, o, o(272, s))
# define BOOST_PP_WHILE_272_I(p, o, s) BOOST_PP_IF(p(273, s), BOOST_PP_WHILE_273, s BOOST_PP_TUPLE_EAT_3)(p, o, o(273, s))
# define BOOST_PP_WHILE_273_I(p, o, s) BOOST_PP_IF(p(274, s), BOOST_PP_WHILE_274, s BOOST_PP_TUPLE_EAT_3)(p, o, o(274, s))
# define BOOST_PP_WHILE_274_I(p, o, s) BOOST_PP_IF(p(275, s), BOOST_PP_WHILE_275, s BOOST_PP_TUPLE_EAT_3)(p, o, o(275, s))
# define BOOST_PP_WHILE_275_I(p, o, s) BOOST_PP_IF(p(276, s), BOOST_PP_WHILE_276, s BOOST_PP_TUPLE_EAT_3)(p, o, o(276, s))
# define BOOST_PP_WHILE_276_I(p, o, s) BOOST_PP_IF(p(277, s), BOOST_PP_WHILE_277, s BOOST_PP_TUPLE_EAT_3)(p, o, o(277, s))
# define BOOST_PP_WHILE_277_I(p, o, s) BOOST_PP_IF(p(278, s), BOOST_PP_WHILE_278, s BOOST_PP_TUPLE_EAT_3)(p, o, o(278, s))
# define BOOST_PP_WHILE_278_I(p, o, s) BOOST_PP_IF(p(279, s), BOOST_PP_WHILE_279, s BOOST_PP_TUPLE_EAT_3)(p, o, o(279, s))
# define BOOST_PP_WHILE_279_I(p, o, s) BOOST_PP_IF(p(280, s), BOOST_PP_WHILE_280, s BOOST_PP_TUPLE_EAT_3)(p, o, o(280, s))
# define BOOST_PP_WHILE_280_I(p, o, s) BOOST_PP_IF(p(281, s), BOOST_PP_WHILE_281, s BOOST_PP_TUPLE_EAT_3)(p, o, o(281, s))
# define BOOST_PP_WHILE_281_I(p, o, s) BOOST_PP_IF(p(282, s), BOOST_PP_WHILE_282, s BOOST_PP_TUPLE_EAT_3)(p, o, o(282, s))
# define BOOST_PP_WHILE_282_I(p, o, s) BOOST_PP_IF(p(283, s), BOOST_PP_WHILE_283, s BOOST_PP_TUPLE_EAT_3)(p, o, o(283, s))
# define BOOST_PP_WHILE_283_I(p, o, s) BOOST_PP_IF(p(284, s), BOOST_PP_WHILE_284, s BOOST_PP_TUPLE_EAT_3)(p, o, o(284, s))
# define BOOST_PP_WHILE_284_I(p, o, s) BOOST_PP_IF(p(285, s), BOOST_PP_WHILE_285, s BOOST_PP_TUPLE_EAT_3)(p, o, o(285, s))
# define BOOST_PP_WHILE_285_I(p, o, s) BOOST_PP_IF(p(286, s), BOOST_PP_WHILE_286, s BOOST_PP_TUPLE_EAT_3)(p, o, o(286, s))
# define BOOST_PP_WHILE_286_I(p, o, s) BOOST_PP_IF(p(287, s), BOOST_PP_WHILE_287, s BOOST_PP_TUPLE_EAT_3)(p, o, o(287, s))
# define BOOST_PP_WHILE_287_I(p, o, s) BOOST_PP_IF(p(288, s), BOOST_PP_WHILE_288, s BOOST_PP_TUPLE_EAT_3)(p, o, o(288, s))
# define BOOST_PP_WHILE_288_I(p, o, s) BOOST_PP_IF(p(289, s), BOOST_PP_WHILE_289, s BOOST_PP_TUPLE_EAT_3)(p, o, o(289, s))
# define BOOST_PP_WHILE_289_I(p, o, s) BOOST_PP_IF(p(290, s), BOOST_PP_WHILE_290, s BOOST_PP_TUPLE_EAT_3)(p, o, o(290, s))
# define BOOST_PP_WHILE_290_I(p, o, s) BOOST_PP_IF(p(291, s), BOOST_PP_WHILE_291, s BOOST_PP_TUPLE_EAT_3)(p, o, o(291, s))
# define BOOST_PP_WHILE_291_I(p, o, s) BOOST_PP_IF(p(292, s), BOOST_PP_WHILE_292, s BOOST_PP_TUPLE_EAT_3)(p, o, o(292, s))
# define BOOST_PP_WHILE_292_I(p, o, s) BOOST_PP_IF(p(293, s), BOOST_PP_WHILE_293, s BOOST_PP_TUPLE_EAT_3)(p, o, o(293, s))
# define BOOST_PP_WHILE_293_I(p, o, s) BOOST_PP_IF(p(294, s), BOOST_PP_WHILE_294, s BOOST_PP_TUPLE_EAT_3)(p, o, o(294, s))
# define BOOST_PP_WHILE_294_I(p, o, s) BOOST_PP_IF(p(295, s), BOOST_PP_WHILE_295, s BOOST_PP_TUPLE_EAT_3)(p, o, o(295, s))
# define BOOST_PP_WHILE_295_I(p, o, s) BOOST_PP_IF(p(296, s), BOOST_PP_WHILE_296, s BOOST_PP_TUPLE_EAT_3)(p, o, o(296, s))
# define BOOST_PP_WHILE_296_I(p, o, s) BOOST_PP_IF(p(297, s), BOOST_PP_WHILE_297, s BOOST_PP_TUPLE_EAT_3)(p, o, o(297, s))
# define BOOST_PP_WHILE_297_I(p, o, s) BOOST_PP_IF(p(298, s), BOOST_PP_WHILE_298, s BOOST_PP_TUPLE_EAT_3)(p, o, o(298, s))
# define BOOST_PP_WHILE_298_I(p, o, s) BOOST_PP_IF(p(299, s), BOOST_PP_WHILE_299, s BOOST_PP_TUPLE_EAT_3)(p, o, o(299, s))
# define BOOST_PP_WHILE_299_I(p, o, s) BOOST_PP_IF(p(300, s), BOOST_PP_WHILE_300, s BOOST_PP_TUPLE_EAT_3)(p, o, o(300, s))
# define BOOST_PP_WHILE_300_I(p, o, s) BOOST_PP_IF(p(301, s), BOOST_PP_WHILE_301, s BOOST_PP_TUPLE_EAT_3)(p, o, o(301, s))
# define BOOST_PP_WHILE_301_I(p, o, s) BOOST_PP_IF(p(302, s), BOOST_PP_WHILE_302, s BOOST_PP_TUPLE_EAT_3)(p, o, o(302, s))
# define BOOST_PP_WHILE_302_I(p, o, s) BOOST_PP_IF(p(303, s), BOOST_PP_WHILE_303, s BOOST_PP_TUPLE_EAT_3)(p, o, o(303, s))
# define BOOST_PP_WHILE_303_I(p, o, s) BOOST_PP_IF(p(304, s), BOOST_PP_WHILE_304, s BOOST_PP_TUPLE_EAT_3)(p, o, o(304, s))
# define BOOST_PP_WHILE_304_I(p, o, s) BOOST_PP_IF(p(305, s), BOOST_PP_WHILE_305, s BOOST_PP_TUPLE_EAT_3)(p, o, o(305, s))
# define BOOST_PP_WHILE_305_I(p, o, s) BOOST_PP_IF(p(306, s), BOOST_PP_WHILE_306, s BOOST_PP_TUPLE_EAT_3)(p, o, o(306, s))
# define BOOST_PP_WHILE_306_I(p, o, s) BOOST_PP_IF(p(307, s), BOOST_PP_WHILE_307, s BOOST_PP_TUPLE_EAT_3)(p, o, o(307, s))
# define BOOST_PP_WHILE_307_I(p, o, s) BOOST_PP_IF(p(308, s), BOOST_PP_WHILE_308, s BOOST_PP_TUPLE_EAT_3)(p, o, o(308, s))
# define BOOST_PP_WHILE_308_I(p, o, s) BOOST_PP_IF(p(309, s), BOOST_PP_WHILE_309, s BOOST_PP_TUPLE_EAT_3)(p, o, o(309, s))
# define BOOST_PP_WHILE_309_I(p, o, s) BOOST_PP_IF(p(310, s), BOOST_PP_WHILE_310, s BOOST_PP_TUPLE_EAT_3)(p, o, o(310, s))
# define BOOST_PP_WHILE_310_I(p, o, s) BOOST_PP_IF(p(311, s), BOOST_PP_WHILE_311, s BOOST_PP_TUPLE_EAT_3)(p, o, o(311, s))
# define BOOST_PP_WHILE_311_I(p, o, s) BOOST_PP_IF(p(312, s), BOOST_PP_WHILE_312, s BOOST_PP_TUPLE_EAT_3)(p, o, o(312, s))
# define BOOST_PP_WHILE_312_I(p, o, s) BOOST_PP_IF(p(313, s), BOOST_PP_WHILE_313, s BOOST_PP_TUPLE_EAT_3)(p, o, o(313, s))
# define BOOST_PP_WHILE_313_I(p, o, s) BOOST_PP_IF(p(314, s), BOOST_PP_WHILE_314, s BOOST_PP_TUPLE_EAT_3)(p, o, o(314, s))
# define BOOST_PP_WHILE_314_I(p, o, s) BOOST_PP_IF(p(315, s), BOOST_PP_WHILE_315, s BOOST_PP_TUPLE_EAT_3)(p, o, o(315, s))
# define BOOST_PP_WHILE_315_I(p, o, s) BOOST_PP_IF(p(316, s), BOOST_PP_WHILE_316, s BOOST_PP_TUPLE_EAT_3)(p, o, o(316, s))
# define BOOST_PP_WHILE_316_I(p, o, s) BOOST_PP_IF(p(317, s), BOOST_PP_WHILE_317, s BOOST_PP_TUPLE_EAT_3)(p, o, o(317, s))
# define BOOST_PP_WHILE_317_I(p, o, s) BOOST_PP_IF(p(318, s), BOOST_PP_WHILE_318, s BOOST_PP_TUPLE_EAT_3)(p, o, o(318, s))
# define BOOST_PP_WHILE_318_I(p, o, s) BOOST_PP_IF(p(319, s), BOOST_PP_WHILE_319, s BOOST_PP_TUPLE_EAT_3)(p, o, o(319, s))
# define BOOST_PP_WHILE_319_I(p, o, s) BOOST_PP_IF(p(320, s), BOOST_PP_WHILE_320, s BOOST_PP_TUPLE_EAT_3)(p, o, o(320, s))
# define BOOST_PP_WHILE_320_I(p, o, s) BOOST_PP_IF(p(321, s), BOOST_PP_WHILE_321, s BOOST_PP_TUPLE_EAT_3)(p, o, o(321, s))
# define BOOST_PP_WHILE_321_I(p, o, s) BOOST_PP_IF(p(322, s), BOOST_PP_WHILE_322, s BOOST_PP_TUPLE_EAT_3)(p, o, o(322, s))
# define BOOST_PP_WHILE_322_I(p, o, s) BOOST_PP_IF(p(323, s), BOOST_PP_WHILE_323, s BOOST_PP_TUPLE_EAT_3)(p, o, o(323, s))
# define BOOST_PP_WHILE_323_I(p, o, s) BOOST_PP_IF(p(324, s), BOOST_PP_WHILE_324, s BOOST_PP_TUPLE_EAT_3)(p, o, o(324, s))
# define BOOST_PP_WHILE_324_I(p, o, s) BOOST_PP_IF(p(325, s), BOOST_PP_WHILE_325, s BOOST_PP_TUPLE_EAT_3)(p, o, o(325, s))
# define BOOST_PP_WHILE_325_I(p, o, s) BOOST_PP_IF(p(326, s), BOOST_PP_WHILE_326, s BOOST_PP_TUPLE_EAT_3)(p, o, o(326, s))
# define BOOST_PP_WHILE_326_I(p, o, s) BOOST_PP_IF(p(327, s), BOOST_PP_WHILE_327, s BOOST_PP_TUPLE_EAT_3)(p, o, o(327, s))
# define BOOST_PP_WHILE_327_I(p, o, s) BOOST_PP_IF(p(328, s), BOOST_PP_WHILE_328, s BOOST_PP_TUPLE_EAT_3)(p, o, o(328, s))
# define BOOST_PP_WHILE_328_I(p, o, s) BOOST_PP_IF(p(329, s), BOOST_PP_WHILE_329, s BOOST_PP_TUPLE_EAT_3)(p, o, o(329, s))
# define BOOST_PP_WHILE_329_I(p, o, s) BOOST_PP_IF(p(330, s), BOOST_PP_WHILE_330, s BOOST_PP_TUPLE_EAT_3)(p, o, o(330, s))
# define BOOST_PP_WHILE_330_I(p, o, s) BOOST_PP_IF(p(331, s), BOOST_PP_WHILE_331, s BOOST_PP_TUPLE_EAT_3)(p, o, o(331, s))
# define BOOST_PP_WHILE_331_I(p, o, s) BOOST_PP_IF(p(332, s), BOOST_PP_WHILE_332, s BOOST_PP_TUPLE_EAT_3)(p, o, o(332, s))
# define BOOST_PP_WHILE_332_I(p, o, s) BOOST_PP_IF(p(333, s), BOOST_PP_WHILE_333, s BOOST_PP_TUPLE_EAT_3)(p, o, o(333, s))
# define BOOST_PP_WHILE_333_I(p, o, s) BOOST_PP_IF(p(334, s), BOOST_PP_WHILE_334, s BOOST_PP_TUPLE_EAT_3)(p, o, o(334, s))
# define BOOST_PP_WHILE_334_I(p, o, s) BOOST_PP_IF(p(335, s), BOOST_PP_WHILE_335, s BOOST_PP_TUPLE_EAT_3)(p, o, o(335, s))
# define BOOST_PP_WHILE_335_I(p, o, s) BOOST_PP_IF(p(336, s), BOOST_PP_WHILE_336, s BOOST_PP_TUPLE_EAT_3)(p, o, o(336, s))
# define BOOST_PP_WHILE_336_I(p, o, s) BOOST_PP_IF(p(337, s), BOOST_PP_WHILE_337, s BOOST_PP_TUPLE_EAT_3)(p, o, o(337, s))
# define BOOST_PP_WHILE_337_I(p, o, s) BOOST_PP_IF(p(338, s), BOOST_PP_WHILE_338, s BOOST_PP_TUPLE_EAT_3)(p, o, o(338, s))
# define BOOST_PP_WHILE_338_I(p, o, s) BOOST_PP_IF(p(339, s), BOOST_PP_WHILE_339, s BOOST_PP_TUPLE_EAT_3)(p, o, o(339, s))
# define BOOST_PP_WHILE_339_I(p, o, s) BOOST_PP_IF(p(340, s), BOOST_PP_WHILE_340, s BOOST_PP_TUPLE_EAT_3)(p, o, o(340, s))
# define BOOST_PP_WHILE_340_I(p, o, s) BOOST_PP_IF(p(341, s), BOOST_PP_WHILE_341, s BOOST_PP_TUPLE_EAT_3)(p, o, o(341, s))
# define BOOST_PP_WHILE_341_I(p, o, s) BOOST_PP_IF(p(342, s), BOOST_PP_WHILE_342, s BOOST_PP_TUPLE_EAT_3)(p, o, o(342, s))
# define BOOST_PP_WHILE_342_I(p, o, s) BOOST_PP_IF(p(343, s), BOOST_PP_WHILE_343, s BOOST_PP_TUPLE_EAT_3)(p, o, o(343, s))
# define BOOST_PP_WHILE_343_I(p, o, s) BOOST_PP_IF(p(344, s), BOOST_PP_WHILE_344, s BOOST_PP_TUPLE_EAT_3)(p, o, o(344, s))
# define BOOST_PP_WHILE_344_I(p, o, s) BOOST_PP_IF(p(345, s), BOOST_PP_WHILE_345, s BOOST_PP_TUPLE_EAT_3)(p, o, o(345, s))
# define BOOST_PP_WHILE_345_I(p, o, s) BOOST_PP_IF(p(346, s), BOOST_PP_WHILE_346, s BOOST_PP_TUPLE_EAT_3)(p, o, o(346, s))
# define BOOST_PP_WHILE_346_I(p, o, s) BOOST_PP_IF(p(347, s), BOOST_PP_WHILE_347, s BOOST_PP_TUPLE_EAT_3)(p, o, o(347, s))
# define BOOST_PP_WHILE_347_I(p, o, s) BOOST_PP_IF(p(348, s), BOOST_PP_WHILE_348, s BOOST_PP_TUPLE_EAT_3)(p, o, o(348, s))
# define BOOST_PP_WHILE_348_I(p, o, s) BOOST_PP_IF(p(349, s), BOOST_PP_WHILE_349, s BOOST_PP_TUPLE_EAT_3)(p, o, o(349, s))
# define BOOST_PP_WHILE_349_I(p, o, s) BOOST_PP_IF(p(350, s), BOOST_PP_WHILE_350, s BOOST_PP_TUPLE_EAT_3)(p, o, o(350, s))
# define BOOST_PP_WHILE_350_I(p, o, s) BOOST_PP_IF(p(351, s), BOOST_PP_WHILE_351, s BOOST_PP_TUPLE_EAT_3)(p, o, o(351, s))
# define BOOST_PP_WHILE_351_I(p, o, s) BOOST_PP_IF(p(352, s), BOOST_PP_WHILE_352, s BOOST_PP_TUPLE_EAT_3)(p, o, o(352, s))
# define BOOST_PP_WHILE_352_I(p, o, s) BOOST_PP_IF(p(353, s), BOOST_PP_WHILE_353, s BOOST_PP_TUPLE_EAT_3)(p, o, o(353, s))
# define BOOST_PP_WHILE_353_I(p, o, s) BOOST_PP_IF(p(354, s), BOOST_PP_WHILE_354, s BOOST_PP_TUPLE_EAT_3)(p, o, o(354, s))
# define BOOST_PP_WHILE_354_I(p, o, s) BOOST_PP_IF(p(355, s), BOOST_PP_WHILE_355, s BOOST_PP_TUPLE_EAT_3)(p, o, o(355, s))
# define BOOST_PP_WHILE_355_I(p, o, s) BOOST_PP_IF(p(356, s), BOOST_PP_WHILE_356, s BOOST_PP_TUPLE_EAT_3)(p, o, o(356, s))
# define BOOST_PP_WHILE_356_I(p, o, s) BOOST_PP_IF(p(357, s), BOOST_PP_WHILE_357, s BOOST_PP_TUPLE_EAT_3)(p, o, o(357, s))
# define BOOST_PP_WHILE_357_I(p, o, s) BOOST_PP_IF(p(358, s), BOOST_PP_WHILE_358, s BOOST_PP_TUPLE_EAT_3)(p, o, o(358, s))
# define BOOST_PP_WHILE_358_I(p, o, s) BOOST_PP_IF(p(359, s), BOOST_PP_WHILE_359, s BOOST_PP_TUPLE_EAT_3)(p, o, o(359, s))
# define BOOST_PP_WHILE_359_I(p, o, s) BOOST_PP_IF(p(360, s), BOOST_PP_WHILE_360, s BOOST_PP_TUPLE_EAT_3)(p, o, o(360, s))
# define BOOST_PP_WHILE_360_I(p, o, s) BOOST_PP_IF(p(361, s), BOOST_PP_WHILE_361, s BOOST_PP_TUPLE_EAT_3)(p, o, o(361, s))
# define BOOST_PP_WHILE_361_I(p, o, s) BOOST_PP_IF(p(362, s), BOOST_PP_WHILE_362, s BOOST_PP_TUPLE_EAT_3)(p, o, o(362, s))
# define BOOST_PP_WHILE_362_I(p, o, s) BOOST_PP_IF(p(363, s), BOOST_PP_WHILE_363, s BOOST_PP_TUPLE_EAT_3)(p, o, o(363, s))
# define BOOST_PP_WHILE_363_I(p, o, s) BOOST_PP_IF(p(364, s), BOOST_PP_WHILE_364, s BOOST_PP_TUPLE_EAT_3)(p, o, o(364, s))
# define BOOST_PP_WHILE_364_I(p, o, s) BOOST_PP_IF(p(365, s), BOOST_PP_WHILE_365, s BOOST_PP_TUPLE_EAT_3)(p, o, o(365, s))
# define BOOST_PP_WHILE_365_I(p, o, s) BOOST_PP_IF(p(366, s), BOOST_PP_WHILE_366, s BOOST_PP_TUPLE_EAT_3)(p, o, o(366, s))
# define BOOST_PP_WHILE_366_I(p, o, s) BOOST_PP_IF(p(367, s), BOOST_PP_WHILE_367, s BOOST_PP_TUPLE_EAT_3)(p, o, o(367, s))
# define BOOST_PP_WHILE_367_I(p, o, s) BOOST_PP_IF(p(368, s), BOOST_PP_WHILE_368, s BOOST_PP_TUPLE_EAT_3)(p, o, o(368, s))
# define BOOST_PP_WHILE_368_I(p, o, s) BOOST_PP_IF(p(369, s), BOOST_PP_WHILE_369, s BOOST_PP_TUPLE_EAT_3)(p, o, o(369, s))
# define BOOST_PP_WHILE_369_I(p, o, s) BOOST_PP_IF(p(370, s), BOOST_PP_WHILE_370, s BOOST_PP_TUPLE_EAT_3)(p, o, o(370, s))
# define BOOST_PP_WHILE_370_I(p, o, s) BOOST_PP_IF(p(371, s), BOOST_PP_WHILE_371, s BOOST_PP_TUPLE_EAT_3)(p, o, o(371, s))
# define BOOST_PP_WHILE_371_I(p, o, s) BOOST_PP_IF(p(372, s), BOOST_PP_WHILE_372, s BOOST_PP_TUPLE_EAT_3)(p, o, o(372, s))
# define BOOST_PP_WHILE_372_I(p, o, s) BOOST_PP_IF(p(373, s), BOOST_PP_WHILE_373, s BOOST_PP_TUPLE_EAT_3)(p, o, o(373, s))
# define BOOST_PP_WHILE_373_I(p, o, s) BOOST_PP_IF(p(374, s), BOOST_PP_WHILE_374, s BOOST_PP_TUPLE_EAT_3)(p, o, o(374, s))
# define BOOST_PP_WHILE_374_I(p, o, s) BOOST_PP_IF(p(375, s), BOOST_PP_WHILE_375, s BOOST_PP_TUPLE_EAT_3)(p, o, o(375, s))
# define BOOST_PP_WHILE_375_I(p, o, s) BOOST_PP_IF(p(376, s), BOOST_PP_WHILE_376, s BOOST_PP_TUPLE_EAT_3)(p, o, o(376, s))
# define BOOST_PP_WHILE_376_I(p, o, s) BOOST_PP_IF(p(377, s), BOOST_PP_WHILE_377, s BOOST_PP_TUPLE_EAT_3)(p, o, o(377, s))
# define BOOST_PP_WHILE_377_I(p, o, s) BOOST_PP_IF(p(378, s), BOOST_PP_WHILE_378, s BOOST_PP_TUPLE_EAT_3)(p, o, o(378, s))
# define BOOST_PP_WHILE_378_I(p, o, s) BOOST_PP_IF(p(379, s), BOOST_PP_WHILE_379, s BOOST_PP_TUPLE_EAT_3)(p, o, o(379, s))
# define BOOST_PP_WHILE_379_I(p, o, s) BOOST_PP_IF(p(380, s), BOOST_PP_WHILE_380, s BOOST_PP_TUPLE_EAT_3)(p, o, o(380, s))
# define BOOST_PP_WHILE_380_I(p, o, s) BOOST_PP_IF(p(381, s), BOOST_PP_WHILE_381, s BOOST_PP_TUPLE_EAT_3)(p, o, o(381, s))
# define BOOST_PP_WHILE_381_I(p, o, s) BOOST_PP_IF(p(382, s), BOOST_PP_WHILE_382, s BOOST_PP_TUPLE_EAT_3)(p, o, o(382, s))
# define BOOST_PP_WHILE_382_I(p, o, s) BOOST_PP_IF(p(383, s), BOOST_PP_WHILE_383, s BOOST_PP_TUPLE_EAT_3)(p, o, o(383, s))
# define BOOST_PP_WHILE_383_I(p, o, s) BOOST_PP_IF(p(384, s), BOOST_PP_WHILE_384, s BOOST_PP_TUPLE_EAT_3)(p, o, o(384, s))
# define BOOST_PP_WHILE_384_I(p, o, s) BOOST_PP_IF(p(385, s), BOOST_PP_WHILE_385, s BOOST_PP_TUPLE_EAT_3)(p, o, o(385, s))
# define BOOST_PP_WHILE_385_I(p, o, s) BOOST_PP_IF(p(386, s), BOOST_PP_WHILE_386, s BOOST_PP_TUPLE_EAT_3)(p, o, o(386, s))
# define BOOST_PP_WHILE_386_I(p, o, s) BOOST_PP_IF(p(387, s), BOOST_PP_WHILE_387, s BOOST_PP_TUPLE_EAT_3)(p, o, o(387, s))
# define BOOST_PP_WHILE_387_I(p, o, s) BOOST_PP_IF(p(388, s), BOOST_PP_WHILE_388, s BOOST_PP_TUPLE_EAT_3)(p, o, o(388, s))
# define BOOST_PP_WHILE_388_I(p, o, s) BOOST_PP_IF(p(389, s), BOOST_PP_WHILE_389, s BOOST_PP_TUPLE_EAT_3)(p, o, o(389, s))
# define BOOST_PP_WHILE_389_I(p, o, s) BOOST_PP_IF(p(390, s), BOOST_PP_WHILE_390, s BOOST_PP_TUPLE_EAT_3)(p, o, o(390, s))
# define BOOST_PP_WHILE_390_I(p, o, s) BOOST_PP_IF(p(391, s), BOOST_PP_WHILE_391, s BOOST_PP_TUPLE_EAT_3)(p, o, o(391, s))
# define BOOST_PP_WHILE_391_I(p, o, s) BOOST_PP_IF(p(392, s), BOOST_PP_WHILE_392, s BOOST_PP_TUPLE_EAT_3)(p, o, o(392, s))
# define BOOST_PP_WHILE_392_I(p, o, s) BOOST_PP_IF(p(393, s), BOOST_PP_WHILE_393, s BOOST_PP_TUPLE_EAT_3)(p, o, o(393, s))
# define BOOST_PP_WHILE_393_I(p, o, s) BOOST_PP_IF(p(394, s), BOOST_PP_WHILE_394, s BOOST_PP_TUPLE_EAT_3)(p, o, o(394, s))
# define BOOST_PP_WHILE_394_I(p, o, s) BOOST_PP_IF(p(395, s), BOOST_PP_WHILE_395, s BOOST_PP_TUPLE_EAT_3)(p, o, o(395, s))
# define BOOST_PP_WHILE_395_I(p, o, s) BOOST_PP_IF(p(396, s), BOOST_PP_WHILE_396, s BOOST_PP_TUPLE_EAT_3)(p, o, o(396, s))
# define BOOST_PP_WHILE_396_I(p, o, s) BOOST_PP_IF(p(397, s), BOOST_PP_WHILE_397, s BOOST_PP_TUPLE_EAT_3)(p, o, o(397, s))
# define BOOST_PP_WHILE_397_I(p, o, s) BOOST_PP_IF(p(398, s), BOOST_PP_WHILE_398, s BOOST_PP_TUPLE_EAT_3)(p, o, o(398, s))
# define BOOST_PP_WHILE_398_I(p, o, s) BOOST_PP_IF(p(399, s), BOOST_PP_WHILE_399, s BOOST_PP_TUPLE_EAT_3)(p, o, o(399, s))
# define BOOST_PP_WHILE_399_I(p, o, s) BOOST_PP_IF(p(400, s), BOOST_PP_WHILE_400, s BOOST_PP_TUPLE_EAT_3)(p, o, o(400, s))
# define BOOST_PP_WHILE_400_I(p, o, s) BOOST_PP_IF(p(401, s), BOOST_PP_WHILE_401, s BOOST_PP_TUPLE_EAT_3)(p, o, o(401, s))
# define BOOST_PP_WHILE_401_I(p, o, s) BOOST_PP_IF(p(402, s), BOOST_PP_WHILE_402, s BOOST_PP_TUPLE_EAT_3)(p, o, o(402, s))
# define BOOST_PP_WHILE_402_I(p, o, s) BOOST_PP_IF(p(403, s), BOOST_PP_WHILE_403, s BOOST_PP_TUPLE_EAT_3)(p, o, o(403, s))
# define BOOST_PP_WHILE_403_I(p, o, s) BOOST_PP_IF(p(404, s), BOOST_PP_WHILE_404, s BOOST_PP_TUPLE_EAT_3)(p, o, o(404, s))
# define BOOST_PP_WHILE_404_I(p, o, s) BOOST_PP_IF(p(405, s), BOOST_PP_WHILE_405, s BOOST_PP_TUPLE_EAT_3)(p, o, o(405, s))
# define BOOST_PP_WHILE_405_I(p, o, s) BOOST_PP_IF(p(406, s), BOOST_PP_WHILE_406, s BOOST_PP_TUPLE_EAT_3)(p, o, o(406, s))
# define BOOST_PP_WHILE_406_I(p, o, s) BOOST_PP_IF(p(407, s), BOOST_PP_WHILE_407, s BOOST_PP_TUPLE_EAT_3)(p, o, o(407, s))
# define BOOST_PP_WHILE_407_I(p, o, s) BOOST_PP_IF(p(408, s), BOOST_PP_WHILE_408, s BOOST_PP_TUPLE_EAT_3)(p, o, o(408, s))
# define BOOST_PP_WHILE_408_I(p, o, s) BOOST_PP_IF(p(409, s), BOOST_PP_WHILE_409, s BOOST_PP_TUPLE_EAT_3)(p, o, o(409, s))
# define BOOST_PP_WHILE_409_I(p, o, s) BOOST_PP_IF(p(410, s), BOOST_PP_WHILE_410, s BOOST_PP_TUPLE_EAT_3)(p, o, o(410, s))
# define BOOST_PP_WHILE_410_I(p, o, s) BOOST_PP_IF(p(411, s), BOOST_PP_WHILE_411, s BOOST_PP_TUPLE_EAT_3)(p, o, o(411, s))
# define BOOST_PP_WHILE_411_I(p, o, s) BOOST_PP_IF(p(412, s), BOOST_PP_WHILE_412, s BOOST_PP_TUPLE_EAT_3)(p, o, o(412, s))
# define BOOST_PP_WHILE_412_I(p, o, s) BOOST_PP_IF(p(413, s), BOOST_PP_WHILE_413, s BOOST_PP_TUPLE_EAT_3)(p, o, o(413, s))
# define BOOST_PP_WHILE_413_I(p, o, s) BOOST_PP_IF(p(414, s), BOOST_PP_WHILE_414, s BOOST_PP_TUPLE_EAT_3)(p, o, o(414, s))
# define BOOST_PP_WHILE_414_I(p, o, s) BOOST_PP_IF(p(415, s), BOOST_PP_WHILE_415, s BOOST_PP_TUPLE_EAT_3)(p, o, o(415, s))
# define BOOST_PP_WHILE_415_I(p, o, s) BOOST_PP_IF(p(416, s), BOOST_PP_WHILE_416, s BOOST_PP_TUPLE_EAT_3)(p, o, o(416, s))
# define BOOST_PP_WHILE_416_I(p, o, s) BOOST_PP_IF(p(417, s), BOOST_PP_WHILE_417, s BOOST_PP_TUPLE_EAT_3)(p, o, o(417, s))
# define BOOST_PP_WHILE_417_I(p, o, s) BOOST_PP_IF(p(418, s), BOOST_PP_WHILE_418, s BOOST_PP_TUPLE_EAT_3)(p, o, o(418, s))
# define BOOST_PP_WHILE_418_I(p, o, s) BOOST_PP_IF(p(419, s), BOOST_PP_WHILE_419, s BOOST_PP_TUPLE_EAT_3)(p, o, o(419, s))
# define BOOST_PP_WHILE_419_I(p, o, s) BOOST_PP_IF(p(420, s), BOOST_PP_WHILE_420, s BOOST_PP_TUPLE_EAT_3)(p, o, o(420, s))
# define BOOST_PP_WHILE_420_I(p, o, s) BOOST_PP_IF(p(421, s), BOOST_PP_WHILE_421, s BOOST_PP_TUPLE_EAT_3)(p, o, o(421, s))
# define BOOST_PP_WHILE_421_I(p, o, s) BOOST_PP_IF(p(422, s), BOOST_PP_WHILE_422, s BOOST_PP_TUPLE_EAT_3)(p, o, o(422, s))
# define BOOST_PP_WHILE_422_I(p, o, s) BOOST_PP_IF(p(423, s), BOOST_PP_WHILE_423, s BOOST_PP_TUPLE_EAT_3)(p, o, o(423, s))
# define BOOST_PP_WHILE_423_I(p, o, s) BOOST_PP_IF(p(424, s), BOOST_PP_WHILE_424, s BOOST_PP_TUPLE_EAT_3)(p, o, o(424, s))
# define BOOST_PP_WHILE_424_I(p, o, s) BOOST_PP_IF(p(425, s), BOOST_PP_WHILE_425, s BOOST_PP_TUPLE_EAT_3)(p, o, o(425, s))
# define BOOST_PP_WHILE_425_I(p, o, s) BOOST_PP_IF(p(426, s), BOOST_PP_WHILE_426, s BOOST_PP_TUPLE_EAT_3)(p, o, o(426, s))
# define BOOST_PP_WHILE_426_I(p, o, s) BOOST_PP_IF(p(427, s), BOOST_PP_WHILE_427, s BOOST_PP_TUPLE_EAT_3)(p, o, o(427, s))
# define BOOST_PP_WHILE_427_I(p, o, s) BOOST_PP_IF(p(428, s), BOOST_PP_WHILE_428, s BOOST_PP_TUPLE_EAT_3)(p, o, o(428, s))
# define BOOST_PP_WHILE_428_I(p, o, s) BOOST_PP_IF(p(429, s), BOOST_PP_WHILE_429, s BOOST_PP_TUPLE_EAT_3)(p, o, o(429, s))
# define BOOST_PP_WHILE_429_I(p, o, s) BOOST_PP_IF(p(430, s), BOOST_PP_WHILE_430, s BOOST_PP_TUPLE_EAT_3)(p, o, o(430, s))
# define BOOST_PP_WHILE_430_I(p, o, s) BOOST_PP_IF(p(431, s), BOOST_PP_WHILE_431, s BOOST_PP_TUPLE_EAT_3)(p, o, o(431, s))
# define BOOST_PP_WHILE_431_I(p, o, s) BOOST_PP_IF(p(432, s), BOOST_PP_WHILE_432, s BOOST_PP_TUPLE_EAT_3)(p, o, o(432, s))
# define BOOST_PP_WHILE_432_I(p, o, s) BOOST_PP_IF(p(433, s), BOOST_PP_WHILE_433, s BOOST_PP_TUPLE_EAT_3)(p, o, o(433, s))
# define BOOST_PP_WHILE_433_I(p, o, s) BOOST_PP_IF(p(434, s), BOOST_PP_WHILE_434, s BOOST_PP_TUPLE_EAT_3)(p, o, o(434, s))
# define BOOST_PP_WHILE_434_I(p, o, s) BOOST_PP_IF(p(435, s), BOOST_PP_WHILE_435, s BOOST_PP_TUPLE_EAT_3)(p, o, o(435, s))
# define BOOST_PP_WHILE_435_I(p, o, s) BOOST_PP_IF(p(436, s), BOOST_PP_WHILE_436, s BOOST_PP_TUPLE_EAT_3)(p, o, o(436, s))
# define BOOST_PP_WHILE_436_I(p, o, s) BOOST_PP_IF(p(437, s), BOOST_PP_WHILE_437, s BOOST_PP_TUPLE_EAT_3)(p, o, o(437, s))
# define BOOST_PP_WHILE_437_I(p, o, s) BOOST_PP_IF(p(438, s), BOOST_PP_WHILE_438, s BOOST_PP_TUPLE_EAT_3)(p, o, o(438, s))
# define BOOST_PP_WHILE_438_I(p, o, s) BOOST_PP_IF(p(439, s), BOOST_PP_WHILE_439, s BOOST_PP_TUPLE_EAT_3)(p, o, o(439, s))
# define BOOST_PP_WHILE_439_I(p, o, s) BOOST_PP_IF(p(440, s), BOOST_PP_WHILE_440, s BOOST_PP_TUPLE_EAT_3)(p, o, o(440, s))
# define BOOST_PP_WHILE_440_I(p, o, s) BOOST_PP_IF(p(441, s), BOOST_PP_WHILE_441, s BOOST_PP_TUPLE_EAT_3)(p, o, o(441, s))
# define BOOST_PP_WHILE_441_I(p, o, s) BOOST_PP_IF(p(442, s), BOOST_PP_WHILE_442, s BOOST_PP_TUPLE_EAT_3)(p, o, o(442, s))
# define BOOST_PP_WHILE_442_I(p, o, s) BOOST_PP_IF(p(443, s), BOOST_PP_WHILE_443, s BOOST_PP_TUPLE_EAT_3)(p, o, o(443, s))
# define BOOST_PP_WHILE_443_I(p, o, s) BOOST_PP_IF(p(444, s), BOOST_PP_WHILE_444, s BOOST_PP_TUPLE_EAT_3)(p, o, o(444, s))
# define BOOST_PP_WHILE_444_I(p, o, s) BOOST_PP_IF(p(445, s), BOOST_PP_WHILE_445, s BOOST_PP_TUPLE_EAT_3)(p, o, o(445, s))
# define BOOST_PP_WHILE_445_I(p, o, s) BOOST_PP_IF(p(446, s), BOOST_PP_WHILE_446, s BOOST_PP_TUPLE_EAT_3)(p, o, o(446, s))
# define BOOST_PP_WHILE_446_I(p, o, s) BOOST_PP_IF(p(447, s), BOOST_PP_WHILE_447, s BOOST_PP_TUPLE_EAT_3)(p, o, o(447, s))
# define BOOST_PP_WHILE_447_I(p, o, s) BOOST_PP_IF(p(448, s), BOOST_PP_WHILE_448, s BOOST_PP_TUPLE_EAT_3)(p, o, o(448, s))
# define BOOST_PP_WHILE_448_I(p, o, s) BOOST_PP_IF(p(449, s), BOOST_PP_WHILE_449, s BOOST_PP_TUPLE_EAT_3)(p, o, o(449, s))
# define BOOST_PP_WHILE_449_I(p, o, s) BOOST_PP_IF(p(450, s), BOOST_PP_WHILE_450, s BOOST_PP_TUPLE_EAT_3)(p, o, o(450, s))
# define BOOST_PP_WHILE_450_I(p, o, s) BOOST_PP_IF(p(451, s), BOOST_PP_WHILE_451, s BOOST_PP_TUPLE_EAT_3)(p, o, o(451, s))
# define BOOST_PP_WHILE_451_I(p, o, s) BOOST_PP_IF(p(452, s), BOOST_PP_WHILE_452, s BOOST_PP_TUPLE_EAT_3)(p, o, o(452, s))
# define BOOST_PP_WHILE_452_I(p, o, s) BOOST_PP_IF(p(453, s), BOOST_PP_WHILE_453, s BOOST_PP_TUPLE_EAT_3)(p, o, o(453, s))
# define BOOST_PP_WHILE_453_I(p, o, s) BOOST_PP_IF(p(454, s), BOOST_PP_WHILE_454, s BOOST_PP_TUPLE_EAT_3)(p, o, o(454, s))
# define BOOST_PP_WHILE_454_I(p, o, s) BOOST_PP_IF(p(455, s), BOOST_PP_WHILE_455, s BOOST_PP_TUPLE_EAT_3)(p, o, o(455, s))
# define BOOST_PP_WHILE_455_I(p, o, s) BOOST_PP_IF(p(456, s), BOOST_PP_WHILE_456, s BOOST_PP_TUPLE_EAT_3)(p, o, o(456, s))
# define BOOST_PP_WHILE_456_I(p, o, s) BOOST_PP_IF(p(457, s), BOOST_PP_WHILE_457, s BOOST_PP_TUPLE_EAT_3)(p, o, o(457, s))
# define BOOST_PP_WHILE_457_I(p, o, s) BOOST_PP_IF(p(458, s), BOOST_PP_WHILE_458, s BOOST_PP_TUPLE_EAT_3)(p, o, o(458, s))
# define BOOST_PP_WHILE_458_I(p, o, s) BOOST_PP_IF(p(459, s), BOOST_PP_WHILE_459, s BOOST_PP_TUPLE_EAT_3)(p, o, o(459, s))
# define BOOST_PP_WHILE_459_I(p, o, s) BOOST_PP_IF(p(460, s), BOOST_PP_WHILE_460, s BOOST_PP_TUPLE_EAT_3)(p, o, o(460, s))
# define BOOST_PP_WHILE_460_I(p, o, s) BOOST_PP_IF(p(461, s), BOOST_PP_WHILE_461, s BOOST_PP_TUPLE_EAT_3)(p, o, o(461, s))
# define BOOST_PP_WHILE_461_I(p, o, s) BOOST_PP_IF(p(462, s), BOOST_PP_WHILE_462, s BOOST_PP_TUPLE_EAT_3)(p, o, o(462, s))
# define BOOST_PP_WHILE_462_I(p, o, s) BOOST_PP_IF(p(463, s), BOOST_PP_WHILE_463, s BOOST_PP_TUPLE_EAT_3)(p, o, o(463, s))
# define BOOST_PP_WHILE_463_I(p, o, s) BOOST_PP_IF(p(464, s), BOOST_PP_WHILE_464, s BOOST_PP_TUPLE_EAT_3)(p, o, o(464, s))
# define BOOST_PP_WHILE_464_I(p, o, s) BOOST_PP_IF(p(465, s), BOOST_PP_WHILE_465, s BOOST_PP_TUPLE_EAT_3)(p, o, o(465, s))
# define BOOST_PP_WHILE_465_I(p, o, s) BOOST_PP_IF(p(466, s), BOOST_PP_WHILE_466, s BOOST_PP_TUPLE_EAT_3)(p, o, o(466, s))
# define BOOST_PP_WHILE_466_I(p, o, s) BOOST_PP_IF(p(467, s), BOOST_PP_WHILE_467, s BOOST_PP_TUPLE_EAT_3)(p, o, o(467, s))
# define BOOST_PP_WHILE_467_I(p, o, s) BOOST_PP_IF(p(468, s), BOOST_PP_WHILE_468, s BOOST_PP_TUPLE_EAT_3)(p, o, o(468, s))
# define BOOST_PP_WHILE_468_I(p, o, s) BOOST_PP_IF(p(469, s), BOOST_PP_WHILE_469, s BOOST_PP_TUPLE_EAT_3)(p, o, o(469, s))
# define BOOST_PP_WHILE_469_I(p, o, s) BOOST_PP_IF(p(470, s), BOOST_PP_WHILE_470, s BOOST_PP_TUPLE_EAT_3)(p, o, o(470, s))
# define BOOST_PP_WHILE_470_I(p, o, s) BOOST_PP_IF(p(471, s), BOOST_PP_WHILE_471, s BOOST_PP_TUPLE_EAT_3)(p, o, o(471, s))
# define BOOST_PP_WHILE_471_I(p, o, s) BOOST_PP_IF(p(472, s), BOOST_PP_WHILE_472, s BOOST_PP_TUPLE_EAT_3)(p, o, o(472, s))
# define BOOST_PP_WHILE_472_I(p, o, s) BOOST_PP_IF(p(473, s), BOOST_PP_WHILE_473, s BOOST_PP_TUPLE_EAT_3)(p, o, o(473, s))
# define BOOST_PP_WHILE_473_I(p, o, s) BOOST_PP_IF(p(474, s), BOOST_PP_WHILE_474, s BOOST_PP_TUPLE_EAT_3)(p, o, o(474, s))
# define BOOST_PP_WHILE_474_I(p, o, s) BOOST_PP_IF(p(475, s), BOOST_PP_WHILE_475, s BOOST_PP_TUPLE_EAT_3)(p, o, o(475, s))
# define BOOST_PP_WHILE_475_I(p, o, s) BOOST_PP_IF(p(476, s), BOOST_PP_WHILE_476, s BOOST_PP_TUPLE_EAT_3)(p, o, o(476, s))
# define BOOST_PP_WHILE_476_I(p, o, s) BOOST_PP_IF(p(477, s), BOOST_PP_WHILE_477, s BOOST_PP_TUPLE_EAT_3)(p, o, o(477, s))
# define BOOST_PP_WHILE_477_I(p, o, s) BOOST_PP_IF(p(478, s), BOOST_PP_WHILE_478, s BOOST_PP_TUPLE_EAT_3)(p, o, o(478, s))
# define BOOST_PP_WHILE_478_I(p, o, s) BOOST_PP_IF(p(479, s), BOOST_PP_WHILE_479, s BOOST_PP_TUPLE_EAT_3)(p, o, o(479, s))
# define BOOST_PP_WHILE_479_I(p, o, s) BOOST_PP_IF(p(480, s), BOOST_PP_WHILE_480, s BOOST_PP_TUPLE_EAT_3)(p, o, o(480, s))
# define BOOST_PP_WHILE_480_I(p, o, s) BOOST_PP_IF(p(481, s), BOOST_PP_WHILE_481, s BOOST_PP_TUPLE_EAT_3)(p, o, o(481, s))
# define BOOST_PP_WHILE_481_I(p, o, s) BOOST_PP_IF(p(482, s), BOOST_PP_WHILE_482, s BOOST_PP_TUPLE_EAT_3)(p, o, o(482, s))
# define BOOST_PP_WHILE_482_I(p, o, s) BOOST_PP_IF(p(483, s), BOOST_PP_WHILE_483, s BOOST_PP_TUPLE_EAT_3)(p, o, o(483, s))
# define BOOST_PP_WHILE_483_I(p, o, s) BOOST_PP_IF(p(484, s), BOOST_PP_WHILE_484, s BOOST_PP_TUPLE_EAT_3)(p, o, o(484, s))
# define BOOST_PP_WHILE_484_I(p, o, s) BOOST_PP_IF(p(485, s), BOOST_PP_WHILE_485, s BOOST_PP_TUPLE_EAT_3)(p, o, o(485, s))
# define BOOST_PP_WHILE_485_I(p, o, s) BOOST_PP_IF(p(486, s), BOOST_PP_WHILE_486, s BOOST_PP_TUPLE_EAT_3)(p, o, o(486, s))
# define BOOST_PP_WHILE_486_I(p, o, s) BOOST_PP_IF(p(487, s), BOOST_PP_WHILE_487, s BOOST_PP_TUPLE_EAT_3)(p, o, o(487, s))
# define BOOST_PP_WHILE_487_I(p, o, s) BOOST_PP_IF(p(488, s), BOOST_PP_WHILE_488, s BOOST_PP_TUPLE_EAT_3)(p, o, o(488, s))
# define BOOST_PP_WHILE_488_I(p, o, s) BOOST_PP_IF(p(489, s), BOOST_PP_WHILE_489, s BOOST_PP_TUPLE_EAT_3)(p, o, o(489, s))
# define BOOST_PP_WHILE_489_I(p, o, s) BOOST_PP_IF(p(490, s), BOOST_PP_WHILE_490, s BOOST_PP_TUPLE_EAT_3)(p, o, o(490, s))
# define BOOST_PP_WHILE_490_I(p, o, s) BOOST_PP_IF(p(491, s), BOOST_PP_WHILE_491, s BOOST_PP_TUPLE_EAT_3)(p, o, o(491, s))
# define BOOST_PP_WHILE_491_I(p, o, s) BOOST_PP_IF(p(492, s), BOOST_PP_WHILE_492, s BOOST_PP_TUPLE_EAT_3)(p, o, o(492, s))
# define BOOST_PP_WHILE_492_I(p, o, s) BOOST_PP_IF(p(493, s), BOOST_PP_WHILE_493, s BOOST_PP_TUPLE_EAT_3)(p, o, o(493, s))
# define BOOST_PP_WHILE_493_I(p, o, s) BOOST_PP_IF(p(494, s), BOOST_PP_WHILE_494, s BOOST_PP_TUPLE_EAT_3)(p, o, o(494, s))
# define BOOST_PP_WHILE_494_I(p, o, s) BOOST_PP_IF(p(495, s), BOOST_PP_WHILE_495, s BOOST_PP_TUPLE_EAT_3)(p, o, o(495, s))
# define BOOST_PP_WHILE_495_I(p, o, s) BOOST_PP_IF(p(496, s), BOOST_PP_WHILE_496, s BOOST_PP_TUPLE_EAT_3)(p, o, o(496, s))
# define BOOST_PP_WHILE_496_I(p, o, s) BOOST_PP_IF(p(497, s), BOOST_PP_WHILE_497, s BOOST_PP_TUPLE_EAT_3)(p, o, o(497, s))
# define BOOST_PP_WHILE_497_I(p, o, s) BOOST_PP_IF(p(498, s), BOOST_PP_WHILE_498, s BOOST_PP_TUPLE_EAT_3)(p, o, o(498, s))
# define BOOST_PP_WHILE_498_I(p, o, s) BOOST_PP_IF(p(499, s), BOOST_PP_WHILE_499, s BOOST_PP_TUPLE_EAT_3)(p, o, o(499, s))
# define BOOST_PP_WHILE_499_I(p, o, s) BOOST_PP_IF(p(500, s), BOOST_PP_WHILE_500, s BOOST_PP_TUPLE_EAT_3)(p, o, o(500, s))
# define BOOST_PP_WHILE_500_I(p, o, s) BOOST_PP_IF(p(501, s), BOOST_PP_WHILE_501, s BOOST_PP_TUPLE_EAT_3)(p, o, o(501, s))
# define BOOST_PP_WHILE_501_I(p, o, s) BOOST_PP_IF(p(502, s), BOOST_PP_WHILE_502, s BOOST_PP_TUPLE_EAT_3)(p, o, o(502, s))
# define BOOST_PP_WHILE_502_I(p, o, s) BOOST_PP_IF(p(503, s), BOOST_PP_WHILE_503, s BOOST_PP_TUPLE_EAT_3)(p, o, o(503, s))
# define BOOST_PP_WHILE_503_I(p, o, s) BOOST_PP_IF(p(504, s), BOOST_PP_WHILE_504, s BOOST_PP_TUPLE_EAT_3)(p, o, o(504, s))
# define BOOST_PP_WHILE_504_I(p, o, s) BOOST_PP_IF(p(505, s), BOOST_PP_WHILE_505, s BOOST_PP_TUPLE_EAT_3)(p, o, o(505, s))
# define BOOST_PP_WHILE_505_I(p, o, s) BOOST_PP_IF(p(506, s), BOOST_PP_WHILE_506, s BOOST_PP_TUPLE_EAT_3)(p, o, o(506, s))
# define BOOST_PP_WHILE_506_I(p, o, s) BOOST_PP_IF(p(507, s), BOOST_PP_WHILE_507, s BOOST_PP_TUPLE_EAT_3)(p, o, o(507, s))
# define BOOST_PP_WHILE_507_I(p, o, s) BOOST_PP_IF(p(508, s), BOOST_PP_WHILE_508, s BOOST_PP_TUPLE_EAT_3)(p, o, o(508, s))
# define BOOST_PP_WHILE_508_I(p, o, s) BOOST_PP_IF(p(509, s), BOOST_PP_WHILE_509, s BOOST_PP_TUPLE_EAT_3)(p, o, o(509, s))
# define BOOST_PP_WHILE_509_I(p, o, s) BOOST_PP_IF(p(510, s), BOOST_PP_WHILE_510, s BOOST_PP_TUPLE_EAT_3)(p, o, o(510, s))
# define BOOST_PP_WHILE_510_I(p, o, s) BOOST_PP_IF(p(511, s), BOOST_PP_WHILE_511, s BOOST_PP_TUPLE_EAT_3)(p, o, o(511, s))
# define BOOST_PP_WHILE_511_I(p, o, s) BOOST_PP_IF(p(512, s), BOOST_PP_WHILE_512, s BOOST_PP_TUPLE_EAT_3)(p, o, o(512, s))
# define BOOST_PP_WHILE_512_I(p, o, s) BOOST_PP_IF(p(513, s), BOOST_PP_WHILE_513, s BOOST_PP_TUPLE_EAT_3)(p, o, o(513, s))
#
# endif

View File

@ -8,12 +8,17 @@
# */
#
# /* Revised by Paul Mensonides (2002) */
# /* Revised by Edward Diener (2020) */
#
# /* See http://www.boost.org for most recent version. */
#
# ifndef BOOST_PREPROCESSOR_CONTROL_DETAIL_EDG_WHILE_HPP
# define BOOST_PREPROCESSOR_CONTROL_DETAIL_EDG_WHILE_HPP
#
# include <boost/preprocessor/config/config.hpp>
#
# if ~BOOST_PP_CONFIG_FLAGS() & BOOST_PP_CONFIG_STRICT()
#
# include <boost/preprocessor/control/if.hpp>
# include <boost/preprocessor/tuple/eat.hpp>
#
@ -531,4 +536,26 @@
# define BOOST_PP_WHILE_255_I(p, o, s) BOOST_PP_IF(p(256, s), BOOST_PP_WHILE_256, s BOOST_PP_TUPLE_EAT_3)(p, o, o(256, s))
# define BOOST_PP_WHILE_256_I(p, o, s) BOOST_PP_IF(p(257, s), BOOST_PP_WHILE_257, s BOOST_PP_TUPLE_EAT_3)(p, o, o(257, s))
#
# else
#
# include <boost/preprocessor/control/if.hpp>
# include <boost/preprocessor/tuple/eat.hpp>
#
# include <boost/preprocessor/config/limits.hpp>
#
# if BOOST_PP_LIMIT_WHILE == 256
# include <boost/preprocessor/control/detail/edg/limits/while_256.hpp>
# elif BOOST_PP_LIMIT_WHILE == 512
# include <boost/preprocessor/control/detail/edg/limits/while_256.hpp>
# include <boost/preprocessor/control/detail/edg/limits/while_512.hpp>
# elif BOOST_PP_LIMIT_WHILE == 1024
# include <boost/preprocessor/control/detail/edg/limits/while_256.hpp>
# include <boost/preprocessor/control/detail/edg/limits/while_512.hpp>
# include <boost/preprocessor/control/detail/edg/limits/while_1024.hpp>
# else
# error Incorrect value for the BOOST_PP_LIMIT_WHILE limit
# endif
#
# endif
#
# endif

File diff suppressed because it is too large Load Diff

View File

@ -0,0 +1,533 @@
# /* Copyright (C) 2001
# * Housemarque Oy
# * http://www.housemarque.com
# *
# * Distributed under the Boost Software License, Version 1.0. (See
# * accompanying file LICENSE_1_0.txt or copy at
# * http://www.boost.org/LICENSE_1_0.txt)
# */
#
# /* Revised by Paul Mensonides (2002) */
#
# /* See http://www.boost.org for most recent version. */
#
# ifndef BOOST_PREPROCESSOR_CONTROL_DETAIL_WHILE_256_HPP
# define BOOST_PREPROCESSOR_CONTROL_DETAIL_WHILE_256_HPP
#
# define BOOST_PP_WHILE_0(p, o, s) BOOST_PP_WHILE_0_C(BOOST_PP_BOOL(p(1, s)), p, o, s)
# define BOOST_PP_WHILE_1(p, o, s) BOOST_PP_WHILE_1_C(BOOST_PP_BOOL(p(2, s)), p, o, s)
# define BOOST_PP_WHILE_2(p, o, s) BOOST_PP_WHILE_2_C(BOOST_PP_BOOL(p(3, s)), p, o, s)
# define BOOST_PP_WHILE_3(p, o, s) BOOST_PP_WHILE_3_C(BOOST_PP_BOOL(p(4, s)), p, o, s)
# define BOOST_PP_WHILE_4(p, o, s) BOOST_PP_WHILE_4_C(BOOST_PP_BOOL(p(5, s)), p, o, s)
# define BOOST_PP_WHILE_5(p, o, s) BOOST_PP_WHILE_5_C(BOOST_PP_BOOL(p(6, s)), p, o, s)
# define BOOST_PP_WHILE_6(p, o, s) BOOST_PP_WHILE_6_C(BOOST_PP_BOOL(p(7, s)), p, o, s)
# define BOOST_PP_WHILE_7(p, o, s) BOOST_PP_WHILE_7_C(BOOST_PP_BOOL(p(8, s)), p, o, s)
# define BOOST_PP_WHILE_8(p, o, s) BOOST_PP_WHILE_8_C(BOOST_PP_BOOL(p(9, s)), p, o, s)
# define BOOST_PP_WHILE_9(p, o, s) BOOST_PP_WHILE_9_C(BOOST_PP_BOOL(p(10, s)), p, o, s)
# define BOOST_PP_WHILE_10(p, o, s) BOOST_PP_WHILE_10_C(BOOST_PP_BOOL(p(11, s)), p, o, s)
# define BOOST_PP_WHILE_11(p, o, s) BOOST_PP_WHILE_11_C(BOOST_PP_BOOL(p(12, s)), p, o, s)
# define BOOST_PP_WHILE_12(p, o, s) BOOST_PP_WHILE_12_C(BOOST_PP_BOOL(p(13, s)), p, o, s)
# define BOOST_PP_WHILE_13(p, o, s) BOOST_PP_WHILE_13_C(BOOST_PP_BOOL(p(14, s)), p, o, s)
# define BOOST_PP_WHILE_14(p, o, s) BOOST_PP_WHILE_14_C(BOOST_PP_BOOL(p(15, s)), p, o, s)
# define BOOST_PP_WHILE_15(p, o, s) BOOST_PP_WHILE_15_C(BOOST_PP_BOOL(p(16, s)), p, o, s)
# define BOOST_PP_WHILE_16(p, o, s) BOOST_PP_WHILE_16_C(BOOST_PP_BOOL(p(17, s)), p, o, s)
# define BOOST_PP_WHILE_17(p, o, s) BOOST_PP_WHILE_17_C(BOOST_PP_BOOL(p(18, s)), p, o, s)
# define BOOST_PP_WHILE_18(p, o, s) BOOST_PP_WHILE_18_C(BOOST_PP_BOOL(p(19, s)), p, o, s)
# define BOOST_PP_WHILE_19(p, o, s) BOOST_PP_WHILE_19_C(BOOST_PP_BOOL(p(20, s)), p, o, s)
# define BOOST_PP_WHILE_20(p, o, s) BOOST_PP_WHILE_20_C(BOOST_PP_BOOL(p(21, s)), p, o, s)
# define BOOST_PP_WHILE_21(p, o, s) BOOST_PP_WHILE_21_C(BOOST_PP_BOOL(p(22, s)), p, o, s)
# define BOOST_PP_WHILE_22(p, o, s) BOOST_PP_WHILE_22_C(BOOST_PP_BOOL(p(23, s)), p, o, s)
# define BOOST_PP_WHILE_23(p, o, s) BOOST_PP_WHILE_23_C(BOOST_PP_BOOL(p(24, s)), p, o, s)
# define BOOST_PP_WHILE_24(p, o, s) BOOST_PP_WHILE_24_C(BOOST_PP_BOOL(p(25, s)), p, o, s)
# define BOOST_PP_WHILE_25(p, o, s) BOOST_PP_WHILE_25_C(BOOST_PP_BOOL(p(26, s)), p, o, s)
# define BOOST_PP_WHILE_26(p, o, s) BOOST_PP_WHILE_26_C(BOOST_PP_BOOL(p(27, s)), p, o, s)
# define BOOST_PP_WHILE_27(p, o, s) BOOST_PP_WHILE_27_C(BOOST_PP_BOOL(p(28, s)), p, o, s)
# define BOOST_PP_WHILE_28(p, o, s) BOOST_PP_WHILE_28_C(BOOST_PP_BOOL(p(29, s)), p, o, s)
# define BOOST_PP_WHILE_29(p, o, s) BOOST_PP_WHILE_29_C(BOOST_PP_BOOL(p(30, s)), p, o, s)
# define BOOST_PP_WHILE_30(p, o, s) BOOST_PP_WHILE_30_C(BOOST_PP_BOOL(p(31, s)), p, o, s)
# define BOOST_PP_WHILE_31(p, o, s) BOOST_PP_WHILE_31_C(BOOST_PP_BOOL(p(32, s)), p, o, s)
# define BOOST_PP_WHILE_32(p, o, s) BOOST_PP_WHILE_32_C(BOOST_PP_BOOL(p(33, s)), p, o, s)
# define BOOST_PP_WHILE_33(p, o, s) BOOST_PP_WHILE_33_C(BOOST_PP_BOOL(p(34, s)), p, o, s)
# define BOOST_PP_WHILE_34(p, o, s) BOOST_PP_WHILE_34_C(BOOST_PP_BOOL(p(35, s)), p, o, s)
# define BOOST_PP_WHILE_35(p, o, s) BOOST_PP_WHILE_35_C(BOOST_PP_BOOL(p(36, s)), p, o, s)
# define BOOST_PP_WHILE_36(p, o, s) BOOST_PP_WHILE_36_C(BOOST_PP_BOOL(p(37, s)), p, o, s)
# define BOOST_PP_WHILE_37(p, o, s) BOOST_PP_WHILE_37_C(BOOST_PP_BOOL(p(38, s)), p, o, s)
# define BOOST_PP_WHILE_38(p, o, s) BOOST_PP_WHILE_38_C(BOOST_PP_BOOL(p(39, s)), p, o, s)
# define BOOST_PP_WHILE_39(p, o, s) BOOST_PP_WHILE_39_C(BOOST_PP_BOOL(p(40, s)), p, o, s)
# define BOOST_PP_WHILE_40(p, o, s) BOOST_PP_WHILE_40_C(BOOST_PP_BOOL(p(41, s)), p, o, s)
# define BOOST_PP_WHILE_41(p, o, s) BOOST_PP_WHILE_41_C(BOOST_PP_BOOL(p(42, s)), p, o, s)
# define BOOST_PP_WHILE_42(p, o, s) BOOST_PP_WHILE_42_C(BOOST_PP_BOOL(p(43, s)), p, o, s)
# define BOOST_PP_WHILE_43(p, o, s) BOOST_PP_WHILE_43_C(BOOST_PP_BOOL(p(44, s)), p, o, s)
# define BOOST_PP_WHILE_44(p, o, s) BOOST_PP_WHILE_44_C(BOOST_PP_BOOL(p(45, s)), p, o, s)
# define BOOST_PP_WHILE_45(p, o, s) BOOST_PP_WHILE_45_C(BOOST_PP_BOOL(p(46, s)), p, o, s)
# define BOOST_PP_WHILE_46(p, o, s) BOOST_PP_WHILE_46_C(BOOST_PP_BOOL(p(47, s)), p, o, s)
# define BOOST_PP_WHILE_47(p, o, s) BOOST_PP_WHILE_47_C(BOOST_PP_BOOL(p(48, s)), p, o, s)
# define BOOST_PP_WHILE_48(p, o, s) BOOST_PP_WHILE_48_C(BOOST_PP_BOOL(p(49, s)), p, o, s)
# define BOOST_PP_WHILE_49(p, o, s) BOOST_PP_WHILE_49_C(BOOST_PP_BOOL(p(50, s)), p, o, s)
# define BOOST_PP_WHILE_50(p, o, s) BOOST_PP_WHILE_50_C(BOOST_PP_BOOL(p(51, s)), p, o, s)
# define BOOST_PP_WHILE_51(p, o, s) BOOST_PP_WHILE_51_C(BOOST_PP_BOOL(p(52, s)), p, o, s)
# define BOOST_PP_WHILE_52(p, o, s) BOOST_PP_WHILE_52_C(BOOST_PP_BOOL(p(53, s)), p, o, s)
# define BOOST_PP_WHILE_53(p, o, s) BOOST_PP_WHILE_53_C(BOOST_PP_BOOL(p(54, s)), p, o, s)
# define BOOST_PP_WHILE_54(p, o, s) BOOST_PP_WHILE_54_C(BOOST_PP_BOOL(p(55, s)), p, o, s)
# define BOOST_PP_WHILE_55(p, o, s) BOOST_PP_WHILE_55_C(BOOST_PP_BOOL(p(56, s)), p, o, s)
# define BOOST_PP_WHILE_56(p, o, s) BOOST_PP_WHILE_56_C(BOOST_PP_BOOL(p(57, s)), p, o, s)
# define BOOST_PP_WHILE_57(p, o, s) BOOST_PP_WHILE_57_C(BOOST_PP_BOOL(p(58, s)), p, o, s)
# define BOOST_PP_WHILE_58(p, o, s) BOOST_PP_WHILE_58_C(BOOST_PP_BOOL(p(59, s)), p, o, s)
# define BOOST_PP_WHILE_59(p, o, s) BOOST_PP_WHILE_59_C(BOOST_PP_BOOL(p(60, s)), p, o, s)
# define BOOST_PP_WHILE_60(p, o, s) BOOST_PP_WHILE_60_C(BOOST_PP_BOOL(p(61, s)), p, o, s)
# define BOOST_PP_WHILE_61(p, o, s) BOOST_PP_WHILE_61_C(BOOST_PP_BOOL(p(62, s)), p, o, s)
# define BOOST_PP_WHILE_62(p, o, s) BOOST_PP_WHILE_62_C(BOOST_PP_BOOL(p(63, s)), p, o, s)
# define BOOST_PP_WHILE_63(p, o, s) BOOST_PP_WHILE_63_C(BOOST_PP_BOOL(p(64, s)), p, o, s)
# define BOOST_PP_WHILE_64(p, o, s) BOOST_PP_WHILE_64_C(BOOST_PP_BOOL(p(65, s)), p, o, s)
# define BOOST_PP_WHILE_65(p, o, s) BOOST_PP_WHILE_65_C(BOOST_PP_BOOL(p(66, s)), p, o, s)
# define BOOST_PP_WHILE_66(p, o, s) BOOST_PP_WHILE_66_C(BOOST_PP_BOOL(p(67, s)), p, o, s)
# define BOOST_PP_WHILE_67(p, o, s) BOOST_PP_WHILE_67_C(BOOST_PP_BOOL(p(68, s)), p, o, s)
# define BOOST_PP_WHILE_68(p, o, s) BOOST_PP_WHILE_68_C(BOOST_PP_BOOL(p(69, s)), p, o, s)
# define BOOST_PP_WHILE_69(p, o, s) BOOST_PP_WHILE_69_C(BOOST_PP_BOOL(p(70, s)), p, o, s)
# define BOOST_PP_WHILE_70(p, o, s) BOOST_PP_WHILE_70_C(BOOST_PP_BOOL(p(71, s)), p, o, s)
# define BOOST_PP_WHILE_71(p, o, s) BOOST_PP_WHILE_71_C(BOOST_PP_BOOL(p(72, s)), p, o, s)
# define BOOST_PP_WHILE_72(p, o, s) BOOST_PP_WHILE_72_C(BOOST_PP_BOOL(p(73, s)), p, o, s)
# define BOOST_PP_WHILE_73(p, o, s) BOOST_PP_WHILE_73_C(BOOST_PP_BOOL(p(74, s)), p, o, s)
# define BOOST_PP_WHILE_74(p, o, s) BOOST_PP_WHILE_74_C(BOOST_PP_BOOL(p(75, s)), p, o, s)
# define BOOST_PP_WHILE_75(p, o, s) BOOST_PP_WHILE_75_C(BOOST_PP_BOOL(p(76, s)), p, o, s)
# define BOOST_PP_WHILE_76(p, o, s) BOOST_PP_WHILE_76_C(BOOST_PP_BOOL(p(77, s)), p, o, s)
# define BOOST_PP_WHILE_77(p, o, s) BOOST_PP_WHILE_77_C(BOOST_PP_BOOL(p(78, s)), p, o, s)
# define BOOST_PP_WHILE_78(p, o, s) BOOST_PP_WHILE_78_C(BOOST_PP_BOOL(p(79, s)), p, o, s)
# define BOOST_PP_WHILE_79(p, o, s) BOOST_PP_WHILE_79_C(BOOST_PP_BOOL(p(80, s)), p, o, s)
# define BOOST_PP_WHILE_80(p, o, s) BOOST_PP_WHILE_80_C(BOOST_PP_BOOL(p(81, s)), p, o, s)
# define BOOST_PP_WHILE_81(p, o, s) BOOST_PP_WHILE_81_C(BOOST_PP_BOOL(p(82, s)), p, o, s)
# define BOOST_PP_WHILE_82(p, o, s) BOOST_PP_WHILE_82_C(BOOST_PP_BOOL(p(83, s)), p, o, s)
# define BOOST_PP_WHILE_83(p, o, s) BOOST_PP_WHILE_83_C(BOOST_PP_BOOL(p(84, s)), p, o, s)
# define BOOST_PP_WHILE_84(p, o, s) BOOST_PP_WHILE_84_C(BOOST_PP_BOOL(p(85, s)), p, o, s)
# define BOOST_PP_WHILE_85(p, o, s) BOOST_PP_WHILE_85_C(BOOST_PP_BOOL(p(86, s)), p, o, s)
# define BOOST_PP_WHILE_86(p, o, s) BOOST_PP_WHILE_86_C(BOOST_PP_BOOL(p(87, s)), p, o, s)
# define BOOST_PP_WHILE_87(p, o, s) BOOST_PP_WHILE_87_C(BOOST_PP_BOOL(p(88, s)), p, o, s)
# define BOOST_PP_WHILE_88(p, o, s) BOOST_PP_WHILE_88_C(BOOST_PP_BOOL(p(89, s)), p, o, s)
# define BOOST_PP_WHILE_89(p, o, s) BOOST_PP_WHILE_89_C(BOOST_PP_BOOL(p(90, s)), p, o, s)
# define BOOST_PP_WHILE_90(p, o, s) BOOST_PP_WHILE_90_C(BOOST_PP_BOOL(p(91, s)), p, o, s)
# define BOOST_PP_WHILE_91(p, o, s) BOOST_PP_WHILE_91_C(BOOST_PP_BOOL(p(92, s)), p, o, s)
# define BOOST_PP_WHILE_92(p, o, s) BOOST_PP_WHILE_92_C(BOOST_PP_BOOL(p(93, s)), p, o, s)
# define BOOST_PP_WHILE_93(p, o, s) BOOST_PP_WHILE_93_C(BOOST_PP_BOOL(p(94, s)), p, o, s)
# define BOOST_PP_WHILE_94(p, o, s) BOOST_PP_WHILE_94_C(BOOST_PP_BOOL(p(95, s)), p, o, s)
# define BOOST_PP_WHILE_95(p, o, s) BOOST_PP_WHILE_95_C(BOOST_PP_BOOL(p(96, s)), p, o, s)
# define BOOST_PP_WHILE_96(p, o, s) BOOST_PP_WHILE_96_C(BOOST_PP_BOOL(p(97, s)), p, o, s)
# define BOOST_PP_WHILE_97(p, o, s) BOOST_PP_WHILE_97_C(BOOST_PP_BOOL(p(98, s)), p, o, s)
# define BOOST_PP_WHILE_98(p, o, s) BOOST_PP_WHILE_98_C(BOOST_PP_BOOL(p(99, s)), p, o, s)
# define BOOST_PP_WHILE_99(p, o, s) BOOST_PP_WHILE_99_C(BOOST_PP_BOOL(p(100, s)), p, o, s)
# define BOOST_PP_WHILE_100(p, o, s) BOOST_PP_WHILE_100_C(BOOST_PP_BOOL(p(101, s)), p, o, s)
# define BOOST_PP_WHILE_101(p, o, s) BOOST_PP_WHILE_101_C(BOOST_PP_BOOL(p(102, s)), p, o, s)
# define BOOST_PP_WHILE_102(p, o, s) BOOST_PP_WHILE_102_C(BOOST_PP_BOOL(p(103, s)), p, o, s)
# define BOOST_PP_WHILE_103(p, o, s) BOOST_PP_WHILE_103_C(BOOST_PP_BOOL(p(104, s)), p, o, s)
# define BOOST_PP_WHILE_104(p, o, s) BOOST_PP_WHILE_104_C(BOOST_PP_BOOL(p(105, s)), p, o, s)
# define BOOST_PP_WHILE_105(p, o, s) BOOST_PP_WHILE_105_C(BOOST_PP_BOOL(p(106, s)), p, o, s)
# define BOOST_PP_WHILE_106(p, o, s) BOOST_PP_WHILE_106_C(BOOST_PP_BOOL(p(107, s)), p, o, s)
# define BOOST_PP_WHILE_107(p, o, s) BOOST_PP_WHILE_107_C(BOOST_PP_BOOL(p(108, s)), p, o, s)
# define BOOST_PP_WHILE_108(p, o, s) BOOST_PP_WHILE_108_C(BOOST_PP_BOOL(p(109, s)), p, o, s)
# define BOOST_PP_WHILE_109(p, o, s) BOOST_PP_WHILE_109_C(BOOST_PP_BOOL(p(110, s)), p, o, s)
# define BOOST_PP_WHILE_110(p, o, s) BOOST_PP_WHILE_110_C(BOOST_PP_BOOL(p(111, s)), p, o, s)
# define BOOST_PP_WHILE_111(p, o, s) BOOST_PP_WHILE_111_C(BOOST_PP_BOOL(p(112, s)), p, o, s)
# define BOOST_PP_WHILE_112(p, o, s) BOOST_PP_WHILE_112_C(BOOST_PP_BOOL(p(113, s)), p, o, s)
# define BOOST_PP_WHILE_113(p, o, s) BOOST_PP_WHILE_113_C(BOOST_PP_BOOL(p(114, s)), p, o, s)
# define BOOST_PP_WHILE_114(p, o, s) BOOST_PP_WHILE_114_C(BOOST_PP_BOOL(p(115, s)), p, o, s)
# define BOOST_PP_WHILE_115(p, o, s) BOOST_PP_WHILE_115_C(BOOST_PP_BOOL(p(116, s)), p, o, s)
# define BOOST_PP_WHILE_116(p, o, s) BOOST_PP_WHILE_116_C(BOOST_PP_BOOL(p(117, s)), p, o, s)
# define BOOST_PP_WHILE_117(p, o, s) BOOST_PP_WHILE_117_C(BOOST_PP_BOOL(p(118, s)), p, o, s)
# define BOOST_PP_WHILE_118(p, o, s) BOOST_PP_WHILE_118_C(BOOST_PP_BOOL(p(119, s)), p, o, s)
# define BOOST_PP_WHILE_119(p, o, s) BOOST_PP_WHILE_119_C(BOOST_PP_BOOL(p(120, s)), p, o, s)
# define BOOST_PP_WHILE_120(p, o, s) BOOST_PP_WHILE_120_C(BOOST_PP_BOOL(p(121, s)), p, o, s)
# define BOOST_PP_WHILE_121(p, o, s) BOOST_PP_WHILE_121_C(BOOST_PP_BOOL(p(122, s)), p, o, s)
# define BOOST_PP_WHILE_122(p, o, s) BOOST_PP_WHILE_122_C(BOOST_PP_BOOL(p(123, s)), p, o, s)
# define BOOST_PP_WHILE_123(p, o, s) BOOST_PP_WHILE_123_C(BOOST_PP_BOOL(p(124, s)), p, o, s)
# define BOOST_PP_WHILE_124(p, o, s) BOOST_PP_WHILE_124_C(BOOST_PP_BOOL(p(125, s)), p, o, s)
# define BOOST_PP_WHILE_125(p, o, s) BOOST_PP_WHILE_125_C(BOOST_PP_BOOL(p(126, s)), p, o, s)
# define BOOST_PP_WHILE_126(p, o, s) BOOST_PP_WHILE_126_C(BOOST_PP_BOOL(p(127, s)), p, o, s)
# define BOOST_PP_WHILE_127(p, o, s) BOOST_PP_WHILE_127_C(BOOST_PP_BOOL(p(128, s)), p, o, s)
# define BOOST_PP_WHILE_128(p, o, s) BOOST_PP_WHILE_128_C(BOOST_PP_BOOL(p(129, s)), p, o, s)
# define BOOST_PP_WHILE_129(p, o, s) BOOST_PP_WHILE_129_C(BOOST_PP_BOOL(p(130, s)), p, o, s)
# define BOOST_PP_WHILE_130(p, o, s) BOOST_PP_WHILE_130_C(BOOST_PP_BOOL(p(131, s)), p, o, s)
# define BOOST_PP_WHILE_131(p, o, s) BOOST_PP_WHILE_131_C(BOOST_PP_BOOL(p(132, s)), p, o, s)
# define BOOST_PP_WHILE_132(p, o, s) BOOST_PP_WHILE_132_C(BOOST_PP_BOOL(p(133, s)), p, o, s)
# define BOOST_PP_WHILE_133(p, o, s) BOOST_PP_WHILE_133_C(BOOST_PP_BOOL(p(134, s)), p, o, s)
# define BOOST_PP_WHILE_134(p, o, s) BOOST_PP_WHILE_134_C(BOOST_PP_BOOL(p(135, s)), p, o, s)
# define BOOST_PP_WHILE_135(p, o, s) BOOST_PP_WHILE_135_C(BOOST_PP_BOOL(p(136, s)), p, o, s)
# define BOOST_PP_WHILE_136(p, o, s) BOOST_PP_WHILE_136_C(BOOST_PP_BOOL(p(137, s)), p, o, s)
# define BOOST_PP_WHILE_137(p, o, s) BOOST_PP_WHILE_137_C(BOOST_PP_BOOL(p(138, s)), p, o, s)
# define BOOST_PP_WHILE_138(p, o, s) BOOST_PP_WHILE_138_C(BOOST_PP_BOOL(p(139, s)), p, o, s)
# define BOOST_PP_WHILE_139(p, o, s) BOOST_PP_WHILE_139_C(BOOST_PP_BOOL(p(140, s)), p, o, s)
# define BOOST_PP_WHILE_140(p, o, s) BOOST_PP_WHILE_140_C(BOOST_PP_BOOL(p(141, s)), p, o, s)
# define BOOST_PP_WHILE_141(p, o, s) BOOST_PP_WHILE_141_C(BOOST_PP_BOOL(p(142, s)), p, o, s)
# define BOOST_PP_WHILE_142(p, o, s) BOOST_PP_WHILE_142_C(BOOST_PP_BOOL(p(143, s)), p, o, s)
# define BOOST_PP_WHILE_143(p, o, s) BOOST_PP_WHILE_143_C(BOOST_PP_BOOL(p(144, s)), p, o, s)
# define BOOST_PP_WHILE_144(p, o, s) BOOST_PP_WHILE_144_C(BOOST_PP_BOOL(p(145, s)), p, o, s)
# define BOOST_PP_WHILE_145(p, o, s) BOOST_PP_WHILE_145_C(BOOST_PP_BOOL(p(146, s)), p, o, s)
# define BOOST_PP_WHILE_146(p, o, s) BOOST_PP_WHILE_146_C(BOOST_PP_BOOL(p(147, s)), p, o, s)
# define BOOST_PP_WHILE_147(p, o, s) BOOST_PP_WHILE_147_C(BOOST_PP_BOOL(p(148, s)), p, o, s)
# define BOOST_PP_WHILE_148(p, o, s) BOOST_PP_WHILE_148_C(BOOST_PP_BOOL(p(149, s)), p, o, s)
# define BOOST_PP_WHILE_149(p, o, s) BOOST_PP_WHILE_149_C(BOOST_PP_BOOL(p(150, s)), p, o, s)
# define BOOST_PP_WHILE_150(p, o, s) BOOST_PP_WHILE_150_C(BOOST_PP_BOOL(p(151, s)), p, o, s)
# define BOOST_PP_WHILE_151(p, o, s) BOOST_PP_WHILE_151_C(BOOST_PP_BOOL(p(152, s)), p, o, s)
# define BOOST_PP_WHILE_152(p, o, s) BOOST_PP_WHILE_152_C(BOOST_PP_BOOL(p(153, s)), p, o, s)
# define BOOST_PP_WHILE_153(p, o, s) BOOST_PP_WHILE_153_C(BOOST_PP_BOOL(p(154, s)), p, o, s)
# define BOOST_PP_WHILE_154(p, o, s) BOOST_PP_WHILE_154_C(BOOST_PP_BOOL(p(155, s)), p, o, s)
# define BOOST_PP_WHILE_155(p, o, s) BOOST_PP_WHILE_155_C(BOOST_PP_BOOL(p(156, s)), p, o, s)
# define BOOST_PP_WHILE_156(p, o, s) BOOST_PP_WHILE_156_C(BOOST_PP_BOOL(p(157, s)), p, o, s)
# define BOOST_PP_WHILE_157(p, o, s) BOOST_PP_WHILE_157_C(BOOST_PP_BOOL(p(158, s)), p, o, s)
# define BOOST_PP_WHILE_158(p, o, s) BOOST_PP_WHILE_158_C(BOOST_PP_BOOL(p(159, s)), p, o, s)
# define BOOST_PP_WHILE_159(p, o, s) BOOST_PP_WHILE_159_C(BOOST_PP_BOOL(p(160, s)), p, o, s)
# define BOOST_PP_WHILE_160(p, o, s) BOOST_PP_WHILE_160_C(BOOST_PP_BOOL(p(161, s)), p, o, s)
# define BOOST_PP_WHILE_161(p, o, s) BOOST_PP_WHILE_161_C(BOOST_PP_BOOL(p(162, s)), p, o, s)
# define BOOST_PP_WHILE_162(p, o, s) BOOST_PP_WHILE_162_C(BOOST_PP_BOOL(p(163, s)), p, o, s)
# define BOOST_PP_WHILE_163(p, o, s) BOOST_PP_WHILE_163_C(BOOST_PP_BOOL(p(164, s)), p, o, s)
# define BOOST_PP_WHILE_164(p, o, s) BOOST_PP_WHILE_164_C(BOOST_PP_BOOL(p(165, s)), p, o, s)
# define BOOST_PP_WHILE_165(p, o, s) BOOST_PP_WHILE_165_C(BOOST_PP_BOOL(p(166, s)), p, o, s)
# define BOOST_PP_WHILE_166(p, o, s) BOOST_PP_WHILE_166_C(BOOST_PP_BOOL(p(167, s)), p, o, s)
# define BOOST_PP_WHILE_167(p, o, s) BOOST_PP_WHILE_167_C(BOOST_PP_BOOL(p(168, s)), p, o, s)
# define BOOST_PP_WHILE_168(p, o, s) BOOST_PP_WHILE_168_C(BOOST_PP_BOOL(p(169, s)), p, o, s)
# define BOOST_PP_WHILE_169(p, o, s) BOOST_PP_WHILE_169_C(BOOST_PP_BOOL(p(170, s)), p, o, s)
# define BOOST_PP_WHILE_170(p, o, s) BOOST_PP_WHILE_170_C(BOOST_PP_BOOL(p(171, s)), p, o, s)
# define BOOST_PP_WHILE_171(p, o, s) BOOST_PP_WHILE_171_C(BOOST_PP_BOOL(p(172, s)), p, o, s)
# define BOOST_PP_WHILE_172(p, o, s) BOOST_PP_WHILE_172_C(BOOST_PP_BOOL(p(173, s)), p, o, s)
# define BOOST_PP_WHILE_173(p, o, s) BOOST_PP_WHILE_173_C(BOOST_PP_BOOL(p(174, s)), p, o, s)
# define BOOST_PP_WHILE_174(p, o, s) BOOST_PP_WHILE_174_C(BOOST_PP_BOOL(p(175, s)), p, o, s)
# define BOOST_PP_WHILE_175(p, o, s) BOOST_PP_WHILE_175_C(BOOST_PP_BOOL(p(176, s)), p, o, s)
# define BOOST_PP_WHILE_176(p, o, s) BOOST_PP_WHILE_176_C(BOOST_PP_BOOL(p(177, s)), p, o, s)
# define BOOST_PP_WHILE_177(p, o, s) BOOST_PP_WHILE_177_C(BOOST_PP_BOOL(p(178, s)), p, o, s)
# define BOOST_PP_WHILE_178(p, o, s) BOOST_PP_WHILE_178_C(BOOST_PP_BOOL(p(179, s)), p, o, s)
# define BOOST_PP_WHILE_179(p, o, s) BOOST_PP_WHILE_179_C(BOOST_PP_BOOL(p(180, s)), p, o, s)
# define BOOST_PP_WHILE_180(p, o, s) BOOST_PP_WHILE_180_C(BOOST_PP_BOOL(p(181, s)), p, o, s)
# define BOOST_PP_WHILE_181(p, o, s) BOOST_PP_WHILE_181_C(BOOST_PP_BOOL(p(182, s)), p, o, s)
# define BOOST_PP_WHILE_182(p, o, s) BOOST_PP_WHILE_182_C(BOOST_PP_BOOL(p(183, s)), p, o, s)
# define BOOST_PP_WHILE_183(p, o, s) BOOST_PP_WHILE_183_C(BOOST_PP_BOOL(p(184, s)), p, o, s)
# define BOOST_PP_WHILE_184(p, o, s) BOOST_PP_WHILE_184_C(BOOST_PP_BOOL(p(185, s)), p, o, s)
# define BOOST_PP_WHILE_185(p, o, s) BOOST_PP_WHILE_185_C(BOOST_PP_BOOL(p(186, s)), p, o, s)
# define BOOST_PP_WHILE_186(p, o, s) BOOST_PP_WHILE_186_C(BOOST_PP_BOOL(p(187, s)), p, o, s)
# define BOOST_PP_WHILE_187(p, o, s) BOOST_PP_WHILE_187_C(BOOST_PP_BOOL(p(188, s)), p, o, s)
# define BOOST_PP_WHILE_188(p, o, s) BOOST_PP_WHILE_188_C(BOOST_PP_BOOL(p(189, s)), p, o, s)
# define BOOST_PP_WHILE_189(p, o, s) BOOST_PP_WHILE_189_C(BOOST_PP_BOOL(p(190, s)), p, o, s)
# define BOOST_PP_WHILE_190(p, o, s) BOOST_PP_WHILE_190_C(BOOST_PP_BOOL(p(191, s)), p, o, s)
# define BOOST_PP_WHILE_191(p, o, s) BOOST_PP_WHILE_191_C(BOOST_PP_BOOL(p(192, s)), p, o, s)
# define BOOST_PP_WHILE_192(p, o, s) BOOST_PP_WHILE_192_C(BOOST_PP_BOOL(p(193, s)), p, o, s)
# define BOOST_PP_WHILE_193(p, o, s) BOOST_PP_WHILE_193_C(BOOST_PP_BOOL(p(194, s)), p, o, s)
# define BOOST_PP_WHILE_194(p, o, s) BOOST_PP_WHILE_194_C(BOOST_PP_BOOL(p(195, s)), p, o, s)
# define BOOST_PP_WHILE_195(p, o, s) BOOST_PP_WHILE_195_C(BOOST_PP_BOOL(p(196, s)), p, o, s)
# define BOOST_PP_WHILE_196(p, o, s) BOOST_PP_WHILE_196_C(BOOST_PP_BOOL(p(197, s)), p, o, s)
# define BOOST_PP_WHILE_197(p, o, s) BOOST_PP_WHILE_197_C(BOOST_PP_BOOL(p(198, s)), p, o, s)
# define BOOST_PP_WHILE_198(p, o, s) BOOST_PP_WHILE_198_C(BOOST_PP_BOOL(p(199, s)), p, o, s)
# define BOOST_PP_WHILE_199(p, o, s) BOOST_PP_WHILE_199_C(BOOST_PP_BOOL(p(200, s)), p, o, s)
# define BOOST_PP_WHILE_200(p, o, s) BOOST_PP_WHILE_200_C(BOOST_PP_BOOL(p(201, s)), p, o, s)
# define BOOST_PP_WHILE_201(p, o, s) BOOST_PP_WHILE_201_C(BOOST_PP_BOOL(p(202, s)), p, o, s)
# define BOOST_PP_WHILE_202(p, o, s) BOOST_PP_WHILE_202_C(BOOST_PP_BOOL(p(203, s)), p, o, s)
# define BOOST_PP_WHILE_203(p, o, s) BOOST_PP_WHILE_203_C(BOOST_PP_BOOL(p(204, s)), p, o, s)
# define BOOST_PP_WHILE_204(p, o, s) BOOST_PP_WHILE_204_C(BOOST_PP_BOOL(p(205, s)), p, o, s)
# define BOOST_PP_WHILE_205(p, o, s) BOOST_PP_WHILE_205_C(BOOST_PP_BOOL(p(206, s)), p, o, s)
# define BOOST_PP_WHILE_206(p, o, s) BOOST_PP_WHILE_206_C(BOOST_PP_BOOL(p(207, s)), p, o, s)
# define BOOST_PP_WHILE_207(p, o, s) BOOST_PP_WHILE_207_C(BOOST_PP_BOOL(p(208, s)), p, o, s)
# define BOOST_PP_WHILE_208(p, o, s) BOOST_PP_WHILE_208_C(BOOST_PP_BOOL(p(209, s)), p, o, s)
# define BOOST_PP_WHILE_209(p, o, s) BOOST_PP_WHILE_209_C(BOOST_PP_BOOL(p(210, s)), p, o, s)
# define BOOST_PP_WHILE_210(p, o, s) BOOST_PP_WHILE_210_C(BOOST_PP_BOOL(p(211, s)), p, o, s)
# define BOOST_PP_WHILE_211(p, o, s) BOOST_PP_WHILE_211_C(BOOST_PP_BOOL(p(212, s)), p, o, s)
# define BOOST_PP_WHILE_212(p, o, s) BOOST_PP_WHILE_212_C(BOOST_PP_BOOL(p(213, s)), p, o, s)
# define BOOST_PP_WHILE_213(p, o, s) BOOST_PP_WHILE_213_C(BOOST_PP_BOOL(p(214, s)), p, o, s)
# define BOOST_PP_WHILE_214(p, o, s) BOOST_PP_WHILE_214_C(BOOST_PP_BOOL(p(215, s)), p, o, s)
# define BOOST_PP_WHILE_215(p, o, s) BOOST_PP_WHILE_215_C(BOOST_PP_BOOL(p(216, s)), p, o, s)
# define BOOST_PP_WHILE_216(p, o, s) BOOST_PP_WHILE_216_C(BOOST_PP_BOOL(p(217, s)), p, o, s)
# define BOOST_PP_WHILE_217(p, o, s) BOOST_PP_WHILE_217_C(BOOST_PP_BOOL(p(218, s)), p, o, s)
# define BOOST_PP_WHILE_218(p, o, s) BOOST_PP_WHILE_218_C(BOOST_PP_BOOL(p(219, s)), p, o, s)
# define BOOST_PP_WHILE_219(p, o, s) BOOST_PP_WHILE_219_C(BOOST_PP_BOOL(p(220, s)), p, o, s)
# define BOOST_PP_WHILE_220(p, o, s) BOOST_PP_WHILE_220_C(BOOST_PP_BOOL(p(221, s)), p, o, s)
# define BOOST_PP_WHILE_221(p, o, s) BOOST_PP_WHILE_221_C(BOOST_PP_BOOL(p(222, s)), p, o, s)
# define BOOST_PP_WHILE_222(p, o, s) BOOST_PP_WHILE_222_C(BOOST_PP_BOOL(p(223, s)), p, o, s)
# define BOOST_PP_WHILE_223(p, o, s) BOOST_PP_WHILE_223_C(BOOST_PP_BOOL(p(224, s)), p, o, s)
# define BOOST_PP_WHILE_224(p, o, s) BOOST_PP_WHILE_224_C(BOOST_PP_BOOL(p(225, s)), p, o, s)
# define BOOST_PP_WHILE_225(p, o, s) BOOST_PP_WHILE_225_C(BOOST_PP_BOOL(p(226, s)), p, o, s)
# define BOOST_PP_WHILE_226(p, o, s) BOOST_PP_WHILE_226_C(BOOST_PP_BOOL(p(227, s)), p, o, s)
# define BOOST_PP_WHILE_227(p, o, s) BOOST_PP_WHILE_227_C(BOOST_PP_BOOL(p(228, s)), p, o, s)
# define BOOST_PP_WHILE_228(p, o, s) BOOST_PP_WHILE_228_C(BOOST_PP_BOOL(p(229, s)), p, o, s)
# define BOOST_PP_WHILE_229(p, o, s) BOOST_PP_WHILE_229_C(BOOST_PP_BOOL(p(230, s)), p, o, s)
# define BOOST_PP_WHILE_230(p, o, s) BOOST_PP_WHILE_230_C(BOOST_PP_BOOL(p(231, s)), p, o, s)
# define BOOST_PP_WHILE_231(p, o, s) BOOST_PP_WHILE_231_C(BOOST_PP_BOOL(p(232, s)), p, o, s)
# define BOOST_PP_WHILE_232(p, o, s) BOOST_PP_WHILE_232_C(BOOST_PP_BOOL(p(233, s)), p, o, s)
# define BOOST_PP_WHILE_233(p, o, s) BOOST_PP_WHILE_233_C(BOOST_PP_BOOL(p(234, s)), p, o, s)
# define BOOST_PP_WHILE_234(p, o, s) BOOST_PP_WHILE_234_C(BOOST_PP_BOOL(p(235, s)), p, o, s)
# define BOOST_PP_WHILE_235(p, o, s) BOOST_PP_WHILE_235_C(BOOST_PP_BOOL(p(236, s)), p, o, s)
# define BOOST_PP_WHILE_236(p, o, s) BOOST_PP_WHILE_236_C(BOOST_PP_BOOL(p(237, s)), p, o, s)
# define BOOST_PP_WHILE_237(p, o, s) BOOST_PP_WHILE_237_C(BOOST_PP_BOOL(p(238, s)), p, o, s)
# define BOOST_PP_WHILE_238(p, o, s) BOOST_PP_WHILE_238_C(BOOST_PP_BOOL(p(239, s)), p, o, s)
# define BOOST_PP_WHILE_239(p, o, s) BOOST_PP_WHILE_239_C(BOOST_PP_BOOL(p(240, s)), p, o, s)
# define BOOST_PP_WHILE_240(p, o, s) BOOST_PP_WHILE_240_C(BOOST_PP_BOOL(p(241, s)), p, o, s)
# define BOOST_PP_WHILE_241(p, o, s) BOOST_PP_WHILE_241_C(BOOST_PP_BOOL(p(242, s)), p, o, s)
# define BOOST_PP_WHILE_242(p, o, s) BOOST_PP_WHILE_242_C(BOOST_PP_BOOL(p(243, s)), p, o, s)
# define BOOST_PP_WHILE_243(p, o, s) BOOST_PP_WHILE_243_C(BOOST_PP_BOOL(p(244, s)), p, o, s)
# define BOOST_PP_WHILE_244(p, o, s) BOOST_PP_WHILE_244_C(BOOST_PP_BOOL(p(245, s)), p, o, s)
# define BOOST_PP_WHILE_245(p, o, s) BOOST_PP_WHILE_245_C(BOOST_PP_BOOL(p(246, s)), p, o, s)
# define BOOST_PP_WHILE_246(p, o, s) BOOST_PP_WHILE_246_C(BOOST_PP_BOOL(p(247, s)), p, o, s)
# define BOOST_PP_WHILE_247(p, o, s) BOOST_PP_WHILE_247_C(BOOST_PP_BOOL(p(248, s)), p, o, s)
# define BOOST_PP_WHILE_248(p, o, s) BOOST_PP_WHILE_248_C(BOOST_PP_BOOL(p(249, s)), p, o, s)
# define BOOST_PP_WHILE_249(p, o, s) BOOST_PP_WHILE_249_C(BOOST_PP_BOOL(p(250, s)), p, o, s)
# define BOOST_PP_WHILE_250(p, o, s) BOOST_PP_WHILE_250_C(BOOST_PP_BOOL(p(251, s)), p, o, s)
# define BOOST_PP_WHILE_251(p, o, s) BOOST_PP_WHILE_251_C(BOOST_PP_BOOL(p(252, s)), p, o, s)
# define BOOST_PP_WHILE_252(p, o, s) BOOST_PP_WHILE_252_C(BOOST_PP_BOOL(p(253, s)), p, o, s)
# define BOOST_PP_WHILE_253(p, o, s) BOOST_PP_WHILE_253_C(BOOST_PP_BOOL(p(254, s)), p, o, s)
# define BOOST_PP_WHILE_254(p, o, s) BOOST_PP_WHILE_254_C(BOOST_PP_BOOL(p(255, s)), p, o, s)
# define BOOST_PP_WHILE_255(p, o, s) BOOST_PP_WHILE_255_C(BOOST_PP_BOOL(p(256, s)), p, o, s)
# define BOOST_PP_WHILE_256(p, o, s) BOOST_PP_WHILE_256_C(BOOST_PP_BOOL(p(257, s)), p, o, s)
#
# define BOOST_PP_WHILE_0_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_1, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(1, s))
# define BOOST_PP_WHILE_1_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_2, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(2, s))
# define BOOST_PP_WHILE_2_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_3, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(3, s))
# define BOOST_PP_WHILE_3_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_4, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(4, s))
# define BOOST_PP_WHILE_4_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_5, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(5, s))
# define BOOST_PP_WHILE_5_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_6, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(6, s))
# define BOOST_PP_WHILE_6_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_7, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(7, s))
# define BOOST_PP_WHILE_7_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_8, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(8, s))
# define BOOST_PP_WHILE_8_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_9, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(9, s))
# define BOOST_PP_WHILE_9_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_10, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(10, s))
# define BOOST_PP_WHILE_10_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_11, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(11, s))
# define BOOST_PP_WHILE_11_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_12, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(12, s))
# define BOOST_PP_WHILE_12_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_13, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(13, s))
# define BOOST_PP_WHILE_13_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_14, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(14, s))
# define BOOST_PP_WHILE_14_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_15, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(15, s))
# define BOOST_PP_WHILE_15_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_16, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(16, s))
# define BOOST_PP_WHILE_16_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_17, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(17, s))
# define BOOST_PP_WHILE_17_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_18, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(18, s))
# define BOOST_PP_WHILE_18_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_19, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(19, s))
# define BOOST_PP_WHILE_19_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_20, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(20, s))
# define BOOST_PP_WHILE_20_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_21, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(21, s))
# define BOOST_PP_WHILE_21_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_22, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(22, s))
# define BOOST_PP_WHILE_22_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_23, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(23, s))
# define BOOST_PP_WHILE_23_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_24, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(24, s))
# define BOOST_PP_WHILE_24_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_25, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(25, s))
# define BOOST_PP_WHILE_25_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_26, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(26, s))
# define BOOST_PP_WHILE_26_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_27, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(27, s))
# define BOOST_PP_WHILE_27_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_28, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(28, s))
# define BOOST_PP_WHILE_28_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_29, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(29, s))
# define BOOST_PP_WHILE_29_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_30, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(30, s))
# define BOOST_PP_WHILE_30_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_31, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(31, s))
# define BOOST_PP_WHILE_31_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_32, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(32, s))
# define BOOST_PP_WHILE_32_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_33, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(33, s))
# define BOOST_PP_WHILE_33_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_34, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(34, s))
# define BOOST_PP_WHILE_34_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_35, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(35, s))
# define BOOST_PP_WHILE_35_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_36, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(36, s))
# define BOOST_PP_WHILE_36_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_37, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(37, s))
# define BOOST_PP_WHILE_37_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_38, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(38, s))
# define BOOST_PP_WHILE_38_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_39, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(39, s))
# define BOOST_PP_WHILE_39_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_40, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(40, s))
# define BOOST_PP_WHILE_40_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_41, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(41, s))
# define BOOST_PP_WHILE_41_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_42, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(42, s))
# define BOOST_PP_WHILE_42_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_43, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(43, s))
# define BOOST_PP_WHILE_43_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_44, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(44, s))
# define BOOST_PP_WHILE_44_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_45, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(45, s))
# define BOOST_PP_WHILE_45_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_46, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(46, s))
# define BOOST_PP_WHILE_46_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_47, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(47, s))
# define BOOST_PP_WHILE_47_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_48, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(48, s))
# define BOOST_PP_WHILE_48_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_49, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(49, s))
# define BOOST_PP_WHILE_49_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_50, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(50, s))
# define BOOST_PP_WHILE_50_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_51, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(51, s))
# define BOOST_PP_WHILE_51_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_52, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(52, s))
# define BOOST_PP_WHILE_52_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_53, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(53, s))
# define BOOST_PP_WHILE_53_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_54, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(54, s))
# define BOOST_PP_WHILE_54_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_55, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(55, s))
# define BOOST_PP_WHILE_55_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_56, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(56, s))
# define BOOST_PP_WHILE_56_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_57, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(57, s))
# define BOOST_PP_WHILE_57_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_58, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(58, s))
# define BOOST_PP_WHILE_58_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_59, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(59, s))
# define BOOST_PP_WHILE_59_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_60, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(60, s))
# define BOOST_PP_WHILE_60_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_61, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(61, s))
# define BOOST_PP_WHILE_61_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_62, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(62, s))
# define BOOST_PP_WHILE_62_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_63, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(63, s))
# define BOOST_PP_WHILE_63_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_64, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(64, s))
# define BOOST_PP_WHILE_64_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_65, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(65, s))
# define BOOST_PP_WHILE_65_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_66, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(66, s))
# define BOOST_PP_WHILE_66_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_67, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(67, s))
# define BOOST_PP_WHILE_67_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_68, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(68, s))
# define BOOST_PP_WHILE_68_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_69, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(69, s))
# define BOOST_PP_WHILE_69_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_70, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(70, s))
# define BOOST_PP_WHILE_70_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_71, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(71, s))
# define BOOST_PP_WHILE_71_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_72, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(72, s))
# define BOOST_PP_WHILE_72_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_73, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(73, s))
# define BOOST_PP_WHILE_73_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_74, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(74, s))
# define BOOST_PP_WHILE_74_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_75, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(75, s))
# define BOOST_PP_WHILE_75_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_76, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(76, s))
# define BOOST_PP_WHILE_76_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_77, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(77, s))
# define BOOST_PP_WHILE_77_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_78, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(78, s))
# define BOOST_PP_WHILE_78_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_79, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(79, s))
# define BOOST_PP_WHILE_79_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_80, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(80, s))
# define BOOST_PP_WHILE_80_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_81, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(81, s))
# define BOOST_PP_WHILE_81_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_82, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(82, s))
# define BOOST_PP_WHILE_82_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_83, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(83, s))
# define BOOST_PP_WHILE_83_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_84, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(84, s))
# define BOOST_PP_WHILE_84_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_85, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(85, s))
# define BOOST_PP_WHILE_85_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_86, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(86, s))
# define BOOST_PP_WHILE_86_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_87, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(87, s))
# define BOOST_PP_WHILE_87_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_88, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(88, s))
# define BOOST_PP_WHILE_88_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_89, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(89, s))
# define BOOST_PP_WHILE_89_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_90, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(90, s))
# define BOOST_PP_WHILE_90_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_91, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(91, s))
# define BOOST_PP_WHILE_91_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_92, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(92, s))
# define BOOST_PP_WHILE_92_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_93, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(93, s))
# define BOOST_PP_WHILE_93_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_94, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(94, s))
# define BOOST_PP_WHILE_94_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_95, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(95, s))
# define BOOST_PP_WHILE_95_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_96, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(96, s))
# define BOOST_PP_WHILE_96_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_97, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(97, s))
# define BOOST_PP_WHILE_97_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_98, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(98, s))
# define BOOST_PP_WHILE_98_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_99, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(99, s))
# define BOOST_PP_WHILE_99_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_100, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(100, s))
# define BOOST_PP_WHILE_100_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_101, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(101, s))
# define BOOST_PP_WHILE_101_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_102, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(102, s))
# define BOOST_PP_WHILE_102_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_103, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(103, s))
# define BOOST_PP_WHILE_103_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_104, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(104, s))
# define BOOST_PP_WHILE_104_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_105, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(105, s))
# define BOOST_PP_WHILE_105_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_106, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(106, s))
# define BOOST_PP_WHILE_106_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_107, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(107, s))
# define BOOST_PP_WHILE_107_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_108, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(108, s))
# define BOOST_PP_WHILE_108_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_109, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(109, s))
# define BOOST_PP_WHILE_109_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_110, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(110, s))
# define BOOST_PP_WHILE_110_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_111, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(111, s))
# define BOOST_PP_WHILE_111_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_112, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(112, s))
# define BOOST_PP_WHILE_112_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_113, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(113, s))
# define BOOST_PP_WHILE_113_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_114, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(114, s))
# define BOOST_PP_WHILE_114_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_115, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(115, s))
# define BOOST_PP_WHILE_115_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_116, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(116, s))
# define BOOST_PP_WHILE_116_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_117, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(117, s))
# define BOOST_PP_WHILE_117_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_118, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(118, s))
# define BOOST_PP_WHILE_118_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_119, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(119, s))
# define BOOST_PP_WHILE_119_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_120, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(120, s))
# define BOOST_PP_WHILE_120_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_121, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(121, s))
# define BOOST_PP_WHILE_121_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_122, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(122, s))
# define BOOST_PP_WHILE_122_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_123, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(123, s))
# define BOOST_PP_WHILE_123_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_124, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(124, s))
# define BOOST_PP_WHILE_124_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_125, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(125, s))
# define BOOST_PP_WHILE_125_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_126, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(126, s))
# define BOOST_PP_WHILE_126_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_127, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(127, s))
# define BOOST_PP_WHILE_127_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_128, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(128, s))
# define BOOST_PP_WHILE_128_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_129, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(129, s))
# define BOOST_PP_WHILE_129_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_130, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(130, s))
# define BOOST_PP_WHILE_130_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_131, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(131, s))
# define BOOST_PP_WHILE_131_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_132, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(132, s))
# define BOOST_PP_WHILE_132_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_133, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(133, s))
# define BOOST_PP_WHILE_133_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_134, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(134, s))
# define BOOST_PP_WHILE_134_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_135, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(135, s))
# define BOOST_PP_WHILE_135_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_136, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(136, s))
# define BOOST_PP_WHILE_136_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_137, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(137, s))
# define BOOST_PP_WHILE_137_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_138, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(138, s))
# define BOOST_PP_WHILE_138_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_139, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(139, s))
# define BOOST_PP_WHILE_139_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_140, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(140, s))
# define BOOST_PP_WHILE_140_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_141, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(141, s))
# define BOOST_PP_WHILE_141_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_142, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(142, s))
# define BOOST_PP_WHILE_142_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_143, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(143, s))
# define BOOST_PP_WHILE_143_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_144, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(144, s))
# define BOOST_PP_WHILE_144_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_145, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(145, s))
# define BOOST_PP_WHILE_145_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_146, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(146, s))
# define BOOST_PP_WHILE_146_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_147, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(147, s))
# define BOOST_PP_WHILE_147_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_148, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(148, s))
# define BOOST_PP_WHILE_148_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_149, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(149, s))
# define BOOST_PP_WHILE_149_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_150, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(150, s))
# define BOOST_PP_WHILE_150_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_151, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(151, s))
# define BOOST_PP_WHILE_151_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_152, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(152, s))
# define BOOST_PP_WHILE_152_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_153, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(153, s))
# define BOOST_PP_WHILE_153_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_154, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(154, s))
# define BOOST_PP_WHILE_154_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_155, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(155, s))
# define BOOST_PP_WHILE_155_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_156, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(156, s))
# define BOOST_PP_WHILE_156_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_157, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(157, s))
# define BOOST_PP_WHILE_157_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_158, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(158, s))
# define BOOST_PP_WHILE_158_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_159, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(159, s))
# define BOOST_PP_WHILE_159_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_160, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(160, s))
# define BOOST_PP_WHILE_160_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_161, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(161, s))
# define BOOST_PP_WHILE_161_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_162, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(162, s))
# define BOOST_PP_WHILE_162_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_163, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(163, s))
# define BOOST_PP_WHILE_163_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_164, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(164, s))
# define BOOST_PP_WHILE_164_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_165, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(165, s))
# define BOOST_PP_WHILE_165_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_166, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(166, s))
# define BOOST_PP_WHILE_166_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_167, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(167, s))
# define BOOST_PP_WHILE_167_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_168, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(168, s))
# define BOOST_PP_WHILE_168_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_169, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(169, s))
# define BOOST_PP_WHILE_169_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_170, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(170, s))
# define BOOST_PP_WHILE_170_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_171, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(171, s))
# define BOOST_PP_WHILE_171_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_172, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(172, s))
# define BOOST_PP_WHILE_172_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_173, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(173, s))
# define BOOST_PP_WHILE_173_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_174, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(174, s))
# define BOOST_PP_WHILE_174_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_175, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(175, s))
# define BOOST_PP_WHILE_175_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_176, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(176, s))
# define BOOST_PP_WHILE_176_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_177, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(177, s))
# define BOOST_PP_WHILE_177_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_178, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(178, s))
# define BOOST_PP_WHILE_178_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_179, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(179, s))
# define BOOST_PP_WHILE_179_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_180, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(180, s))
# define BOOST_PP_WHILE_180_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_181, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(181, s))
# define BOOST_PP_WHILE_181_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_182, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(182, s))
# define BOOST_PP_WHILE_182_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_183, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(183, s))
# define BOOST_PP_WHILE_183_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_184, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(184, s))
# define BOOST_PP_WHILE_184_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_185, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(185, s))
# define BOOST_PP_WHILE_185_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_186, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(186, s))
# define BOOST_PP_WHILE_186_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_187, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(187, s))
# define BOOST_PP_WHILE_187_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_188, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(188, s))
# define BOOST_PP_WHILE_188_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_189, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(189, s))
# define BOOST_PP_WHILE_189_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_190, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(190, s))
# define BOOST_PP_WHILE_190_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_191, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(191, s))
# define BOOST_PP_WHILE_191_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_192, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(192, s))
# define BOOST_PP_WHILE_192_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_193, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(193, s))
# define BOOST_PP_WHILE_193_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_194, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(194, s))
# define BOOST_PP_WHILE_194_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_195, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(195, s))
# define BOOST_PP_WHILE_195_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_196, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(196, s))
# define BOOST_PP_WHILE_196_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_197, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(197, s))
# define BOOST_PP_WHILE_197_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_198, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(198, s))
# define BOOST_PP_WHILE_198_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_199, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(199, s))
# define BOOST_PP_WHILE_199_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_200, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(200, s))
# define BOOST_PP_WHILE_200_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_201, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(201, s))
# define BOOST_PP_WHILE_201_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_202, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(202, s))
# define BOOST_PP_WHILE_202_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_203, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(203, s))
# define BOOST_PP_WHILE_203_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_204, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(204, s))
# define BOOST_PP_WHILE_204_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_205, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(205, s))
# define BOOST_PP_WHILE_205_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_206, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(206, s))
# define BOOST_PP_WHILE_206_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_207, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(207, s))
# define BOOST_PP_WHILE_207_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_208, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(208, s))
# define BOOST_PP_WHILE_208_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_209, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(209, s))
# define BOOST_PP_WHILE_209_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_210, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(210, s))
# define BOOST_PP_WHILE_210_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_211, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(211, s))
# define BOOST_PP_WHILE_211_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_212, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(212, s))
# define BOOST_PP_WHILE_212_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_213, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(213, s))
# define BOOST_PP_WHILE_213_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_214, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(214, s))
# define BOOST_PP_WHILE_214_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_215, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(215, s))
# define BOOST_PP_WHILE_215_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_216, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(216, s))
# define BOOST_PP_WHILE_216_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_217, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(217, s))
# define BOOST_PP_WHILE_217_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_218, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(218, s))
# define BOOST_PP_WHILE_218_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_219, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(219, s))
# define BOOST_PP_WHILE_219_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_220, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(220, s))
# define BOOST_PP_WHILE_220_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_221, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(221, s))
# define BOOST_PP_WHILE_221_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_222, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(222, s))
# define BOOST_PP_WHILE_222_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_223, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(223, s))
# define BOOST_PP_WHILE_223_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_224, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(224, s))
# define BOOST_PP_WHILE_224_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_225, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(225, s))
# define BOOST_PP_WHILE_225_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_226, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(226, s))
# define BOOST_PP_WHILE_226_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_227, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(227, s))
# define BOOST_PP_WHILE_227_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_228, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(228, s))
# define BOOST_PP_WHILE_228_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_229, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(229, s))
# define BOOST_PP_WHILE_229_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_230, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(230, s))
# define BOOST_PP_WHILE_230_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_231, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(231, s))
# define BOOST_PP_WHILE_231_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_232, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(232, s))
# define BOOST_PP_WHILE_232_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_233, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(233, s))
# define BOOST_PP_WHILE_233_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_234, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(234, s))
# define BOOST_PP_WHILE_234_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_235, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(235, s))
# define BOOST_PP_WHILE_235_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_236, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(236, s))
# define BOOST_PP_WHILE_236_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_237, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(237, s))
# define BOOST_PP_WHILE_237_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_238, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(238, s))
# define BOOST_PP_WHILE_238_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_239, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(239, s))
# define BOOST_PP_WHILE_239_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_240, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(240, s))
# define BOOST_PP_WHILE_240_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_241, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(241, s))
# define BOOST_PP_WHILE_241_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_242, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(242, s))
# define BOOST_PP_WHILE_242_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_243, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(243, s))
# define BOOST_PP_WHILE_243_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_244, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(244, s))
# define BOOST_PP_WHILE_244_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_245, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(245, s))
# define BOOST_PP_WHILE_245_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_246, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(246, s))
# define BOOST_PP_WHILE_246_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_247, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(247, s))
# define BOOST_PP_WHILE_247_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_248, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(248, s))
# define BOOST_PP_WHILE_248_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_249, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(249, s))
# define BOOST_PP_WHILE_249_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_250, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(250, s))
# define BOOST_PP_WHILE_250_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_251, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(251, s))
# define BOOST_PP_WHILE_251_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_252, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(252, s))
# define BOOST_PP_WHILE_252_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_253, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(253, s))
# define BOOST_PP_WHILE_253_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_254, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(254, s))
# define BOOST_PP_WHILE_254_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_255, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(255, s))
# define BOOST_PP_WHILE_255_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_256, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(256, s))
# define BOOST_PP_WHILE_256_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_257, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(257, s))
#
# endif

View File

@ -0,0 +1,532 @@
# /* Copyright (C) 2001
# * Housemarque Oy
# * http://www.housemarque.com
# *
# * Distributed under the Boost Software License, Version 1.0. (See
# * accompanying file LICENSE_1_0.txt or copy at
# * http://www.boost.org/LICENSE_1_0.txt)
# */
#
# /* Revised by Paul Mensonides (2002) */
# /* Revised by Edward Diener (2020) */
#
# /* See http://www.boost.org for most recent version. */
#
# ifndef BOOST_PREPROCESSOR_CONTROL_DETAIL_WHILE_512_HPP
# define BOOST_PREPROCESSOR_CONTROL_DETAIL_WHILE_512_HPP
#
# define BOOST_PP_WHILE_257(p, o, s) BOOST_PP_WHILE_257_C(BOOST_PP_BOOL(p(258, s)), p, o, s)
# define BOOST_PP_WHILE_258(p, o, s) BOOST_PP_WHILE_258_C(BOOST_PP_BOOL(p(259, s)), p, o, s)
# define BOOST_PP_WHILE_259(p, o, s) BOOST_PP_WHILE_259_C(BOOST_PP_BOOL(p(260, s)), p, o, s)
# define BOOST_PP_WHILE_260(p, o, s) BOOST_PP_WHILE_260_C(BOOST_PP_BOOL(p(261, s)), p, o, s)
# define BOOST_PP_WHILE_261(p, o, s) BOOST_PP_WHILE_261_C(BOOST_PP_BOOL(p(262, s)), p, o, s)
# define BOOST_PP_WHILE_262(p, o, s) BOOST_PP_WHILE_262_C(BOOST_PP_BOOL(p(263, s)), p, o, s)
# define BOOST_PP_WHILE_263(p, o, s) BOOST_PP_WHILE_263_C(BOOST_PP_BOOL(p(264, s)), p, o, s)
# define BOOST_PP_WHILE_264(p, o, s) BOOST_PP_WHILE_264_C(BOOST_PP_BOOL(p(265, s)), p, o, s)
# define BOOST_PP_WHILE_265(p, o, s) BOOST_PP_WHILE_265_C(BOOST_PP_BOOL(p(266, s)), p, o, s)
# define BOOST_PP_WHILE_266(p, o, s) BOOST_PP_WHILE_266_C(BOOST_PP_BOOL(p(267, s)), p, o, s)
# define BOOST_PP_WHILE_267(p, o, s) BOOST_PP_WHILE_267_C(BOOST_PP_BOOL(p(268, s)), p, o, s)
# define BOOST_PP_WHILE_268(p, o, s) BOOST_PP_WHILE_268_C(BOOST_PP_BOOL(p(269, s)), p, o, s)
# define BOOST_PP_WHILE_269(p, o, s) BOOST_PP_WHILE_269_C(BOOST_PP_BOOL(p(270, s)), p, o, s)
# define BOOST_PP_WHILE_270(p, o, s) BOOST_PP_WHILE_270_C(BOOST_PP_BOOL(p(271, s)), p, o, s)
# define BOOST_PP_WHILE_271(p, o, s) BOOST_PP_WHILE_271_C(BOOST_PP_BOOL(p(272, s)), p, o, s)
# define BOOST_PP_WHILE_272(p, o, s) BOOST_PP_WHILE_272_C(BOOST_PP_BOOL(p(273, s)), p, o, s)
# define BOOST_PP_WHILE_273(p, o, s) BOOST_PP_WHILE_273_C(BOOST_PP_BOOL(p(274, s)), p, o, s)
# define BOOST_PP_WHILE_274(p, o, s) BOOST_PP_WHILE_274_C(BOOST_PP_BOOL(p(275, s)), p, o, s)
# define BOOST_PP_WHILE_275(p, o, s) BOOST_PP_WHILE_275_C(BOOST_PP_BOOL(p(276, s)), p, o, s)
# define BOOST_PP_WHILE_276(p, o, s) BOOST_PP_WHILE_276_C(BOOST_PP_BOOL(p(277, s)), p, o, s)
# define BOOST_PP_WHILE_277(p, o, s) BOOST_PP_WHILE_277_C(BOOST_PP_BOOL(p(278, s)), p, o, s)
# define BOOST_PP_WHILE_278(p, o, s) BOOST_PP_WHILE_278_C(BOOST_PP_BOOL(p(279, s)), p, o, s)
# define BOOST_PP_WHILE_279(p, o, s) BOOST_PP_WHILE_279_C(BOOST_PP_BOOL(p(280, s)), p, o, s)
# define BOOST_PP_WHILE_280(p, o, s) BOOST_PP_WHILE_280_C(BOOST_PP_BOOL(p(281, s)), p, o, s)
# define BOOST_PP_WHILE_281(p, o, s) BOOST_PP_WHILE_281_C(BOOST_PP_BOOL(p(282, s)), p, o, s)
# define BOOST_PP_WHILE_282(p, o, s) BOOST_PP_WHILE_282_C(BOOST_PP_BOOL(p(283, s)), p, o, s)
# define BOOST_PP_WHILE_283(p, o, s) BOOST_PP_WHILE_283_C(BOOST_PP_BOOL(p(284, s)), p, o, s)
# define BOOST_PP_WHILE_284(p, o, s) BOOST_PP_WHILE_284_C(BOOST_PP_BOOL(p(285, s)), p, o, s)
# define BOOST_PP_WHILE_285(p, o, s) BOOST_PP_WHILE_285_C(BOOST_PP_BOOL(p(286, s)), p, o, s)
# define BOOST_PP_WHILE_286(p, o, s) BOOST_PP_WHILE_286_C(BOOST_PP_BOOL(p(287, s)), p, o, s)
# define BOOST_PP_WHILE_287(p, o, s) BOOST_PP_WHILE_287_C(BOOST_PP_BOOL(p(288, s)), p, o, s)
# define BOOST_PP_WHILE_288(p, o, s) BOOST_PP_WHILE_288_C(BOOST_PP_BOOL(p(289, s)), p, o, s)
# define BOOST_PP_WHILE_289(p, o, s) BOOST_PP_WHILE_289_C(BOOST_PP_BOOL(p(290, s)), p, o, s)
# define BOOST_PP_WHILE_290(p, o, s) BOOST_PP_WHILE_290_C(BOOST_PP_BOOL(p(291, s)), p, o, s)
# define BOOST_PP_WHILE_291(p, o, s) BOOST_PP_WHILE_291_C(BOOST_PP_BOOL(p(292, s)), p, o, s)
# define BOOST_PP_WHILE_292(p, o, s) BOOST_PP_WHILE_292_C(BOOST_PP_BOOL(p(293, s)), p, o, s)
# define BOOST_PP_WHILE_293(p, o, s) BOOST_PP_WHILE_293_C(BOOST_PP_BOOL(p(294, s)), p, o, s)
# define BOOST_PP_WHILE_294(p, o, s) BOOST_PP_WHILE_294_C(BOOST_PP_BOOL(p(295, s)), p, o, s)
# define BOOST_PP_WHILE_295(p, o, s) BOOST_PP_WHILE_295_C(BOOST_PP_BOOL(p(296, s)), p, o, s)
# define BOOST_PP_WHILE_296(p, o, s) BOOST_PP_WHILE_296_C(BOOST_PP_BOOL(p(297, s)), p, o, s)
# define BOOST_PP_WHILE_297(p, o, s) BOOST_PP_WHILE_297_C(BOOST_PP_BOOL(p(298, s)), p, o, s)
# define BOOST_PP_WHILE_298(p, o, s) BOOST_PP_WHILE_298_C(BOOST_PP_BOOL(p(299, s)), p, o, s)
# define BOOST_PP_WHILE_299(p, o, s) BOOST_PP_WHILE_299_C(BOOST_PP_BOOL(p(300, s)), p, o, s)
# define BOOST_PP_WHILE_300(p, o, s) BOOST_PP_WHILE_300_C(BOOST_PP_BOOL(p(301, s)), p, o, s)
# define BOOST_PP_WHILE_301(p, o, s) BOOST_PP_WHILE_301_C(BOOST_PP_BOOL(p(302, s)), p, o, s)
# define BOOST_PP_WHILE_302(p, o, s) BOOST_PP_WHILE_302_C(BOOST_PP_BOOL(p(303, s)), p, o, s)
# define BOOST_PP_WHILE_303(p, o, s) BOOST_PP_WHILE_303_C(BOOST_PP_BOOL(p(304, s)), p, o, s)
# define BOOST_PP_WHILE_304(p, o, s) BOOST_PP_WHILE_304_C(BOOST_PP_BOOL(p(305, s)), p, o, s)
# define BOOST_PP_WHILE_305(p, o, s) BOOST_PP_WHILE_305_C(BOOST_PP_BOOL(p(306, s)), p, o, s)
# define BOOST_PP_WHILE_306(p, o, s) BOOST_PP_WHILE_306_C(BOOST_PP_BOOL(p(307, s)), p, o, s)
# define BOOST_PP_WHILE_307(p, o, s) BOOST_PP_WHILE_307_C(BOOST_PP_BOOL(p(308, s)), p, o, s)
# define BOOST_PP_WHILE_308(p, o, s) BOOST_PP_WHILE_308_C(BOOST_PP_BOOL(p(309, s)), p, o, s)
# define BOOST_PP_WHILE_309(p, o, s) BOOST_PP_WHILE_309_C(BOOST_PP_BOOL(p(310, s)), p, o, s)
# define BOOST_PP_WHILE_310(p, o, s) BOOST_PP_WHILE_310_C(BOOST_PP_BOOL(p(311, s)), p, o, s)
# define BOOST_PP_WHILE_311(p, o, s) BOOST_PP_WHILE_311_C(BOOST_PP_BOOL(p(312, s)), p, o, s)
# define BOOST_PP_WHILE_312(p, o, s) BOOST_PP_WHILE_312_C(BOOST_PP_BOOL(p(313, s)), p, o, s)
# define BOOST_PP_WHILE_313(p, o, s) BOOST_PP_WHILE_313_C(BOOST_PP_BOOL(p(314, s)), p, o, s)
# define BOOST_PP_WHILE_314(p, o, s) BOOST_PP_WHILE_314_C(BOOST_PP_BOOL(p(315, s)), p, o, s)
# define BOOST_PP_WHILE_315(p, o, s) BOOST_PP_WHILE_315_C(BOOST_PP_BOOL(p(316, s)), p, o, s)
# define BOOST_PP_WHILE_316(p, o, s) BOOST_PP_WHILE_316_C(BOOST_PP_BOOL(p(317, s)), p, o, s)
# define BOOST_PP_WHILE_317(p, o, s) BOOST_PP_WHILE_317_C(BOOST_PP_BOOL(p(318, s)), p, o, s)
# define BOOST_PP_WHILE_318(p, o, s) BOOST_PP_WHILE_318_C(BOOST_PP_BOOL(p(319, s)), p, o, s)
# define BOOST_PP_WHILE_319(p, o, s) BOOST_PP_WHILE_319_C(BOOST_PP_BOOL(p(320, s)), p, o, s)
# define BOOST_PP_WHILE_320(p, o, s) BOOST_PP_WHILE_320_C(BOOST_PP_BOOL(p(321, s)), p, o, s)
# define BOOST_PP_WHILE_321(p, o, s) BOOST_PP_WHILE_321_C(BOOST_PP_BOOL(p(322, s)), p, o, s)
# define BOOST_PP_WHILE_322(p, o, s) BOOST_PP_WHILE_322_C(BOOST_PP_BOOL(p(323, s)), p, o, s)
# define BOOST_PP_WHILE_323(p, o, s) BOOST_PP_WHILE_323_C(BOOST_PP_BOOL(p(324, s)), p, o, s)
# define BOOST_PP_WHILE_324(p, o, s) BOOST_PP_WHILE_324_C(BOOST_PP_BOOL(p(325, s)), p, o, s)
# define BOOST_PP_WHILE_325(p, o, s) BOOST_PP_WHILE_325_C(BOOST_PP_BOOL(p(326, s)), p, o, s)
# define BOOST_PP_WHILE_326(p, o, s) BOOST_PP_WHILE_326_C(BOOST_PP_BOOL(p(327, s)), p, o, s)
# define BOOST_PP_WHILE_327(p, o, s) BOOST_PP_WHILE_327_C(BOOST_PP_BOOL(p(328, s)), p, o, s)
# define BOOST_PP_WHILE_328(p, o, s) BOOST_PP_WHILE_328_C(BOOST_PP_BOOL(p(329, s)), p, o, s)
# define BOOST_PP_WHILE_329(p, o, s) BOOST_PP_WHILE_329_C(BOOST_PP_BOOL(p(330, s)), p, o, s)
# define BOOST_PP_WHILE_330(p, o, s) BOOST_PP_WHILE_330_C(BOOST_PP_BOOL(p(331, s)), p, o, s)
# define BOOST_PP_WHILE_331(p, o, s) BOOST_PP_WHILE_331_C(BOOST_PP_BOOL(p(332, s)), p, o, s)
# define BOOST_PP_WHILE_332(p, o, s) BOOST_PP_WHILE_332_C(BOOST_PP_BOOL(p(333, s)), p, o, s)
# define BOOST_PP_WHILE_333(p, o, s) BOOST_PP_WHILE_333_C(BOOST_PP_BOOL(p(334, s)), p, o, s)
# define BOOST_PP_WHILE_334(p, o, s) BOOST_PP_WHILE_334_C(BOOST_PP_BOOL(p(335, s)), p, o, s)
# define BOOST_PP_WHILE_335(p, o, s) BOOST_PP_WHILE_335_C(BOOST_PP_BOOL(p(336, s)), p, o, s)
# define BOOST_PP_WHILE_336(p, o, s) BOOST_PP_WHILE_336_C(BOOST_PP_BOOL(p(337, s)), p, o, s)
# define BOOST_PP_WHILE_337(p, o, s) BOOST_PP_WHILE_337_C(BOOST_PP_BOOL(p(338, s)), p, o, s)
# define BOOST_PP_WHILE_338(p, o, s) BOOST_PP_WHILE_338_C(BOOST_PP_BOOL(p(339, s)), p, o, s)
# define BOOST_PP_WHILE_339(p, o, s) BOOST_PP_WHILE_339_C(BOOST_PP_BOOL(p(340, s)), p, o, s)
# define BOOST_PP_WHILE_340(p, o, s) BOOST_PP_WHILE_340_C(BOOST_PP_BOOL(p(341, s)), p, o, s)
# define BOOST_PP_WHILE_341(p, o, s) BOOST_PP_WHILE_341_C(BOOST_PP_BOOL(p(342, s)), p, o, s)
# define BOOST_PP_WHILE_342(p, o, s) BOOST_PP_WHILE_342_C(BOOST_PP_BOOL(p(343, s)), p, o, s)
# define BOOST_PP_WHILE_343(p, o, s) BOOST_PP_WHILE_343_C(BOOST_PP_BOOL(p(344, s)), p, o, s)
# define BOOST_PP_WHILE_344(p, o, s) BOOST_PP_WHILE_344_C(BOOST_PP_BOOL(p(345, s)), p, o, s)
# define BOOST_PP_WHILE_345(p, o, s) BOOST_PP_WHILE_345_C(BOOST_PP_BOOL(p(346, s)), p, o, s)
# define BOOST_PP_WHILE_346(p, o, s) BOOST_PP_WHILE_346_C(BOOST_PP_BOOL(p(347, s)), p, o, s)
# define BOOST_PP_WHILE_347(p, o, s) BOOST_PP_WHILE_347_C(BOOST_PP_BOOL(p(348, s)), p, o, s)
# define BOOST_PP_WHILE_348(p, o, s) BOOST_PP_WHILE_348_C(BOOST_PP_BOOL(p(349, s)), p, o, s)
# define BOOST_PP_WHILE_349(p, o, s) BOOST_PP_WHILE_349_C(BOOST_PP_BOOL(p(350, s)), p, o, s)
# define BOOST_PP_WHILE_350(p, o, s) BOOST_PP_WHILE_350_C(BOOST_PP_BOOL(p(351, s)), p, o, s)
# define BOOST_PP_WHILE_351(p, o, s) BOOST_PP_WHILE_351_C(BOOST_PP_BOOL(p(352, s)), p, o, s)
# define BOOST_PP_WHILE_352(p, o, s) BOOST_PP_WHILE_352_C(BOOST_PP_BOOL(p(353, s)), p, o, s)
# define BOOST_PP_WHILE_353(p, o, s) BOOST_PP_WHILE_353_C(BOOST_PP_BOOL(p(354, s)), p, o, s)
# define BOOST_PP_WHILE_354(p, o, s) BOOST_PP_WHILE_354_C(BOOST_PP_BOOL(p(355, s)), p, o, s)
# define BOOST_PP_WHILE_355(p, o, s) BOOST_PP_WHILE_355_C(BOOST_PP_BOOL(p(356, s)), p, o, s)
# define BOOST_PP_WHILE_356(p, o, s) BOOST_PP_WHILE_356_C(BOOST_PP_BOOL(p(357, s)), p, o, s)
# define BOOST_PP_WHILE_357(p, o, s) BOOST_PP_WHILE_357_C(BOOST_PP_BOOL(p(358, s)), p, o, s)
# define BOOST_PP_WHILE_358(p, o, s) BOOST_PP_WHILE_358_C(BOOST_PP_BOOL(p(359, s)), p, o, s)
# define BOOST_PP_WHILE_359(p, o, s) BOOST_PP_WHILE_359_C(BOOST_PP_BOOL(p(360, s)), p, o, s)
# define BOOST_PP_WHILE_360(p, o, s) BOOST_PP_WHILE_360_C(BOOST_PP_BOOL(p(361, s)), p, o, s)
# define BOOST_PP_WHILE_361(p, o, s) BOOST_PP_WHILE_361_C(BOOST_PP_BOOL(p(362, s)), p, o, s)
# define BOOST_PP_WHILE_362(p, o, s) BOOST_PP_WHILE_362_C(BOOST_PP_BOOL(p(363, s)), p, o, s)
# define BOOST_PP_WHILE_363(p, o, s) BOOST_PP_WHILE_363_C(BOOST_PP_BOOL(p(364, s)), p, o, s)
# define BOOST_PP_WHILE_364(p, o, s) BOOST_PP_WHILE_364_C(BOOST_PP_BOOL(p(365, s)), p, o, s)
# define BOOST_PP_WHILE_365(p, o, s) BOOST_PP_WHILE_365_C(BOOST_PP_BOOL(p(366, s)), p, o, s)
# define BOOST_PP_WHILE_366(p, o, s) BOOST_PP_WHILE_366_C(BOOST_PP_BOOL(p(367, s)), p, o, s)
# define BOOST_PP_WHILE_367(p, o, s) BOOST_PP_WHILE_367_C(BOOST_PP_BOOL(p(368, s)), p, o, s)
# define BOOST_PP_WHILE_368(p, o, s) BOOST_PP_WHILE_368_C(BOOST_PP_BOOL(p(369, s)), p, o, s)
# define BOOST_PP_WHILE_369(p, o, s) BOOST_PP_WHILE_369_C(BOOST_PP_BOOL(p(370, s)), p, o, s)
# define BOOST_PP_WHILE_370(p, o, s) BOOST_PP_WHILE_370_C(BOOST_PP_BOOL(p(371, s)), p, o, s)
# define BOOST_PP_WHILE_371(p, o, s) BOOST_PP_WHILE_371_C(BOOST_PP_BOOL(p(372, s)), p, o, s)
# define BOOST_PP_WHILE_372(p, o, s) BOOST_PP_WHILE_372_C(BOOST_PP_BOOL(p(373, s)), p, o, s)
# define BOOST_PP_WHILE_373(p, o, s) BOOST_PP_WHILE_373_C(BOOST_PP_BOOL(p(374, s)), p, o, s)
# define BOOST_PP_WHILE_374(p, o, s) BOOST_PP_WHILE_374_C(BOOST_PP_BOOL(p(375, s)), p, o, s)
# define BOOST_PP_WHILE_375(p, o, s) BOOST_PP_WHILE_375_C(BOOST_PP_BOOL(p(376, s)), p, o, s)
# define BOOST_PP_WHILE_376(p, o, s) BOOST_PP_WHILE_376_C(BOOST_PP_BOOL(p(377, s)), p, o, s)
# define BOOST_PP_WHILE_377(p, o, s) BOOST_PP_WHILE_377_C(BOOST_PP_BOOL(p(378, s)), p, o, s)
# define BOOST_PP_WHILE_378(p, o, s) BOOST_PP_WHILE_378_C(BOOST_PP_BOOL(p(379, s)), p, o, s)
# define BOOST_PP_WHILE_379(p, o, s) BOOST_PP_WHILE_379_C(BOOST_PP_BOOL(p(380, s)), p, o, s)
# define BOOST_PP_WHILE_380(p, o, s) BOOST_PP_WHILE_380_C(BOOST_PP_BOOL(p(381, s)), p, o, s)
# define BOOST_PP_WHILE_381(p, o, s) BOOST_PP_WHILE_381_C(BOOST_PP_BOOL(p(382, s)), p, o, s)
# define BOOST_PP_WHILE_382(p, o, s) BOOST_PP_WHILE_382_C(BOOST_PP_BOOL(p(383, s)), p, o, s)
# define BOOST_PP_WHILE_383(p, o, s) BOOST_PP_WHILE_383_C(BOOST_PP_BOOL(p(384, s)), p, o, s)
# define BOOST_PP_WHILE_384(p, o, s) BOOST_PP_WHILE_384_C(BOOST_PP_BOOL(p(385, s)), p, o, s)
# define BOOST_PP_WHILE_385(p, o, s) BOOST_PP_WHILE_385_C(BOOST_PP_BOOL(p(386, s)), p, o, s)
# define BOOST_PP_WHILE_386(p, o, s) BOOST_PP_WHILE_386_C(BOOST_PP_BOOL(p(387, s)), p, o, s)
# define BOOST_PP_WHILE_387(p, o, s) BOOST_PP_WHILE_387_C(BOOST_PP_BOOL(p(388, s)), p, o, s)
# define BOOST_PP_WHILE_388(p, o, s) BOOST_PP_WHILE_388_C(BOOST_PP_BOOL(p(389, s)), p, o, s)
# define BOOST_PP_WHILE_389(p, o, s) BOOST_PP_WHILE_389_C(BOOST_PP_BOOL(p(390, s)), p, o, s)
# define BOOST_PP_WHILE_390(p, o, s) BOOST_PP_WHILE_390_C(BOOST_PP_BOOL(p(391, s)), p, o, s)
# define BOOST_PP_WHILE_391(p, o, s) BOOST_PP_WHILE_391_C(BOOST_PP_BOOL(p(392, s)), p, o, s)
# define BOOST_PP_WHILE_392(p, o, s) BOOST_PP_WHILE_392_C(BOOST_PP_BOOL(p(393, s)), p, o, s)
# define BOOST_PP_WHILE_393(p, o, s) BOOST_PP_WHILE_393_C(BOOST_PP_BOOL(p(394, s)), p, o, s)
# define BOOST_PP_WHILE_394(p, o, s) BOOST_PP_WHILE_394_C(BOOST_PP_BOOL(p(395, s)), p, o, s)
# define BOOST_PP_WHILE_395(p, o, s) BOOST_PP_WHILE_395_C(BOOST_PP_BOOL(p(396, s)), p, o, s)
# define BOOST_PP_WHILE_396(p, o, s) BOOST_PP_WHILE_396_C(BOOST_PP_BOOL(p(397, s)), p, o, s)
# define BOOST_PP_WHILE_397(p, o, s) BOOST_PP_WHILE_397_C(BOOST_PP_BOOL(p(398, s)), p, o, s)
# define BOOST_PP_WHILE_398(p, o, s) BOOST_PP_WHILE_398_C(BOOST_PP_BOOL(p(399, s)), p, o, s)
# define BOOST_PP_WHILE_399(p, o, s) BOOST_PP_WHILE_399_C(BOOST_PP_BOOL(p(400, s)), p, o, s)
# define BOOST_PP_WHILE_400(p, o, s) BOOST_PP_WHILE_400_C(BOOST_PP_BOOL(p(401, s)), p, o, s)
# define BOOST_PP_WHILE_401(p, o, s) BOOST_PP_WHILE_401_C(BOOST_PP_BOOL(p(402, s)), p, o, s)
# define BOOST_PP_WHILE_402(p, o, s) BOOST_PP_WHILE_402_C(BOOST_PP_BOOL(p(403, s)), p, o, s)
# define BOOST_PP_WHILE_403(p, o, s) BOOST_PP_WHILE_403_C(BOOST_PP_BOOL(p(404, s)), p, o, s)
# define BOOST_PP_WHILE_404(p, o, s) BOOST_PP_WHILE_404_C(BOOST_PP_BOOL(p(405, s)), p, o, s)
# define BOOST_PP_WHILE_405(p, o, s) BOOST_PP_WHILE_405_C(BOOST_PP_BOOL(p(406, s)), p, o, s)
# define BOOST_PP_WHILE_406(p, o, s) BOOST_PP_WHILE_406_C(BOOST_PP_BOOL(p(407, s)), p, o, s)
# define BOOST_PP_WHILE_407(p, o, s) BOOST_PP_WHILE_407_C(BOOST_PP_BOOL(p(408, s)), p, o, s)
# define BOOST_PP_WHILE_408(p, o, s) BOOST_PP_WHILE_408_C(BOOST_PP_BOOL(p(409, s)), p, o, s)
# define BOOST_PP_WHILE_409(p, o, s) BOOST_PP_WHILE_409_C(BOOST_PP_BOOL(p(410, s)), p, o, s)
# define BOOST_PP_WHILE_410(p, o, s) BOOST_PP_WHILE_410_C(BOOST_PP_BOOL(p(411, s)), p, o, s)
# define BOOST_PP_WHILE_411(p, o, s) BOOST_PP_WHILE_411_C(BOOST_PP_BOOL(p(412, s)), p, o, s)
# define BOOST_PP_WHILE_412(p, o, s) BOOST_PP_WHILE_412_C(BOOST_PP_BOOL(p(413, s)), p, o, s)
# define BOOST_PP_WHILE_413(p, o, s) BOOST_PP_WHILE_413_C(BOOST_PP_BOOL(p(414, s)), p, o, s)
# define BOOST_PP_WHILE_414(p, o, s) BOOST_PP_WHILE_414_C(BOOST_PP_BOOL(p(415, s)), p, o, s)
# define BOOST_PP_WHILE_415(p, o, s) BOOST_PP_WHILE_415_C(BOOST_PP_BOOL(p(416, s)), p, o, s)
# define BOOST_PP_WHILE_416(p, o, s) BOOST_PP_WHILE_416_C(BOOST_PP_BOOL(p(417, s)), p, o, s)
# define BOOST_PP_WHILE_417(p, o, s) BOOST_PP_WHILE_417_C(BOOST_PP_BOOL(p(418, s)), p, o, s)
# define BOOST_PP_WHILE_418(p, o, s) BOOST_PP_WHILE_418_C(BOOST_PP_BOOL(p(419, s)), p, o, s)
# define BOOST_PP_WHILE_419(p, o, s) BOOST_PP_WHILE_419_C(BOOST_PP_BOOL(p(420, s)), p, o, s)
# define BOOST_PP_WHILE_420(p, o, s) BOOST_PP_WHILE_420_C(BOOST_PP_BOOL(p(421, s)), p, o, s)
# define BOOST_PP_WHILE_421(p, o, s) BOOST_PP_WHILE_421_C(BOOST_PP_BOOL(p(422, s)), p, o, s)
# define BOOST_PP_WHILE_422(p, o, s) BOOST_PP_WHILE_422_C(BOOST_PP_BOOL(p(423, s)), p, o, s)
# define BOOST_PP_WHILE_423(p, o, s) BOOST_PP_WHILE_423_C(BOOST_PP_BOOL(p(424, s)), p, o, s)
# define BOOST_PP_WHILE_424(p, o, s) BOOST_PP_WHILE_424_C(BOOST_PP_BOOL(p(425, s)), p, o, s)
# define BOOST_PP_WHILE_425(p, o, s) BOOST_PP_WHILE_425_C(BOOST_PP_BOOL(p(426, s)), p, o, s)
# define BOOST_PP_WHILE_426(p, o, s) BOOST_PP_WHILE_426_C(BOOST_PP_BOOL(p(427, s)), p, o, s)
# define BOOST_PP_WHILE_427(p, o, s) BOOST_PP_WHILE_427_C(BOOST_PP_BOOL(p(428, s)), p, o, s)
# define BOOST_PP_WHILE_428(p, o, s) BOOST_PP_WHILE_428_C(BOOST_PP_BOOL(p(429, s)), p, o, s)
# define BOOST_PP_WHILE_429(p, o, s) BOOST_PP_WHILE_429_C(BOOST_PP_BOOL(p(430, s)), p, o, s)
# define BOOST_PP_WHILE_430(p, o, s) BOOST_PP_WHILE_430_C(BOOST_PP_BOOL(p(431, s)), p, o, s)
# define BOOST_PP_WHILE_431(p, o, s) BOOST_PP_WHILE_431_C(BOOST_PP_BOOL(p(432, s)), p, o, s)
# define BOOST_PP_WHILE_432(p, o, s) BOOST_PP_WHILE_432_C(BOOST_PP_BOOL(p(433, s)), p, o, s)
# define BOOST_PP_WHILE_433(p, o, s) BOOST_PP_WHILE_433_C(BOOST_PP_BOOL(p(434, s)), p, o, s)
# define BOOST_PP_WHILE_434(p, o, s) BOOST_PP_WHILE_434_C(BOOST_PP_BOOL(p(435, s)), p, o, s)
# define BOOST_PP_WHILE_435(p, o, s) BOOST_PP_WHILE_435_C(BOOST_PP_BOOL(p(436, s)), p, o, s)
# define BOOST_PP_WHILE_436(p, o, s) BOOST_PP_WHILE_436_C(BOOST_PP_BOOL(p(437, s)), p, o, s)
# define BOOST_PP_WHILE_437(p, o, s) BOOST_PP_WHILE_437_C(BOOST_PP_BOOL(p(438, s)), p, o, s)
# define BOOST_PP_WHILE_438(p, o, s) BOOST_PP_WHILE_438_C(BOOST_PP_BOOL(p(439, s)), p, o, s)
# define BOOST_PP_WHILE_439(p, o, s) BOOST_PP_WHILE_439_C(BOOST_PP_BOOL(p(440, s)), p, o, s)
# define BOOST_PP_WHILE_440(p, o, s) BOOST_PP_WHILE_440_C(BOOST_PP_BOOL(p(441, s)), p, o, s)
# define BOOST_PP_WHILE_441(p, o, s) BOOST_PP_WHILE_441_C(BOOST_PP_BOOL(p(442, s)), p, o, s)
# define BOOST_PP_WHILE_442(p, o, s) BOOST_PP_WHILE_442_C(BOOST_PP_BOOL(p(443, s)), p, o, s)
# define BOOST_PP_WHILE_443(p, o, s) BOOST_PP_WHILE_443_C(BOOST_PP_BOOL(p(444, s)), p, o, s)
# define BOOST_PP_WHILE_444(p, o, s) BOOST_PP_WHILE_444_C(BOOST_PP_BOOL(p(445, s)), p, o, s)
# define BOOST_PP_WHILE_445(p, o, s) BOOST_PP_WHILE_445_C(BOOST_PP_BOOL(p(446, s)), p, o, s)
# define BOOST_PP_WHILE_446(p, o, s) BOOST_PP_WHILE_446_C(BOOST_PP_BOOL(p(447, s)), p, o, s)
# define BOOST_PP_WHILE_447(p, o, s) BOOST_PP_WHILE_447_C(BOOST_PP_BOOL(p(448, s)), p, o, s)
# define BOOST_PP_WHILE_448(p, o, s) BOOST_PP_WHILE_448_C(BOOST_PP_BOOL(p(449, s)), p, o, s)
# define BOOST_PP_WHILE_449(p, o, s) BOOST_PP_WHILE_449_C(BOOST_PP_BOOL(p(450, s)), p, o, s)
# define BOOST_PP_WHILE_450(p, o, s) BOOST_PP_WHILE_450_C(BOOST_PP_BOOL(p(451, s)), p, o, s)
# define BOOST_PP_WHILE_451(p, o, s) BOOST_PP_WHILE_451_C(BOOST_PP_BOOL(p(452, s)), p, o, s)
# define BOOST_PP_WHILE_452(p, o, s) BOOST_PP_WHILE_452_C(BOOST_PP_BOOL(p(453, s)), p, o, s)
# define BOOST_PP_WHILE_453(p, o, s) BOOST_PP_WHILE_453_C(BOOST_PP_BOOL(p(454, s)), p, o, s)
# define BOOST_PP_WHILE_454(p, o, s) BOOST_PP_WHILE_454_C(BOOST_PP_BOOL(p(455, s)), p, o, s)
# define BOOST_PP_WHILE_455(p, o, s) BOOST_PP_WHILE_455_C(BOOST_PP_BOOL(p(456, s)), p, o, s)
# define BOOST_PP_WHILE_456(p, o, s) BOOST_PP_WHILE_456_C(BOOST_PP_BOOL(p(457, s)), p, o, s)
# define BOOST_PP_WHILE_457(p, o, s) BOOST_PP_WHILE_457_C(BOOST_PP_BOOL(p(458, s)), p, o, s)
# define BOOST_PP_WHILE_458(p, o, s) BOOST_PP_WHILE_458_C(BOOST_PP_BOOL(p(459, s)), p, o, s)
# define BOOST_PP_WHILE_459(p, o, s) BOOST_PP_WHILE_459_C(BOOST_PP_BOOL(p(460, s)), p, o, s)
# define BOOST_PP_WHILE_460(p, o, s) BOOST_PP_WHILE_460_C(BOOST_PP_BOOL(p(461, s)), p, o, s)
# define BOOST_PP_WHILE_461(p, o, s) BOOST_PP_WHILE_461_C(BOOST_PP_BOOL(p(462, s)), p, o, s)
# define BOOST_PP_WHILE_462(p, o, s) BOOST_PP_WHILE_462_C(BOOST_PP_BOOL(p(463, s)), p, o, s)
# define BOOST_PP_WHILE_463(p, o, s) BOOST_PP_WHILE_463_C(BOOST_PP_BOOL(p(464, s)), p, o, s)
# define BOOST_PP_WHILE_464(p, o, s) BOOST_PP_WHILE_464_C(BOOST_PP_BOOL(p(465, s)), p, o, s)
# define BOOST_PP_WHILE_465(p, o, s) BOOST_PP_WHILE_465_C(BOOST_PP_BOOL(p(466, s)), p, o, s)
# define BOOST_PP_WHILE_466(p, o, s) BOOST_PP_WHILE_466_C(BOOST_PP_BOOL(p(467, s)), p, o, s)
# define BOOST_PP_WHILE_467(p, o, s) BOOST_PP_WHILE_467_C(BOOST_PP_BOOL(p(468, s)), p, o, s)
# define BOOST_PP_WHILE_468(p, o, s) BOOST_PP_WHILE_468_C(BOOST_PP_BOOL(p(469, s)), p, o, s)
# define BOOST_PP_WHILE_469(p, o, s) BOOST_PP_WHILE_469_C(BOOST_PP_BOOL(p(470, s)), p, o, s)
# define BOOST_PP_WHILE_470(p, o, s) BOOST_PP_WHILE_470_C(BOOST_PP_BOOL(p(471, s)), p, o, s)
# define BOOST_PP_WHILE_471(p, o, s) BOOST_PP_WHILE_471_C(BOOST_PP_BOOL(p(472, s)), p, o, s)
# define BOOST_PP_WHILE_472(p, o, s) BOOST_PP_WHILE_472_C(BOOST_PP_BOOL(p(473, s)), p, o, s)
# define BOOST_PP_WHILE_473(p, o, s) BOOST_PP_WHILE_473_C(BOOST_PP_BOOL(p(474, s)), p, o, s)
# define BOOST_PP_WHILE_474(p, o, s) BOOST_PP_WHILE_474_C(BOOST_PP_BOOL(p(475, s)), p, o, s)
# define BOOST_PP_WHILE_475(p, o, s) BOOST_PP_WHILE_475_C(BOOST_PP_BOOL(p(476, s)), p, o, s)
# define BOOST_PP_WHILE_476(p, o, s) BOOST_PP_WHILE_476_C(BOOST_PP_BOOL(p(477, s)), p, o, s)
# define BOOST_PP_WHILE_477(p, o, s) BOOST_PP_WHILE_477_C(BOOST_PP_BOOL(p(478, s)), p, o, s)
# define BOOST_PP_WHILE_478(p, o, s) BOOST_PP_WHILE_478_C(BOOST_PP_BOOL(p(479, s)), p, o, s)
# define BOOST_PP_WHILE_479(p, o, s) BOOST_PP_WHILE_479_C(BOOST_PP_BOOL(p(480, s)), p, o, s)
# define BOOST_PP_WHILE_480(p, o, s) BOOST_PP_WHILE_480_C(BOOST_PP_BOOL(p(481, s)), p, o, s)
# define BOOST_PP_WHILE_481(p, o, s) BOOST_PP_WHILE_481_C(BOOST_PP_BOOL(p(482, s)), p, o, s)
# define BOOST_PP_WHILE_482(p, o, s) BOOST_PP_WHILE_482_C(BOOST_PP_BOOL(p(483, s)), p, o, s)
# define BOOST_PP_WHILE_483(p, o, s) BOOST_PP_WHILE_483_C(BOOST_PP_BOOL(p(484, s)), p, o, s)
# define BOOST_PP_WHILE_484(p, o, s) BOOST_PP_WHILE_484_C(BOOST_PP_BOOL(p(485, s)), p, o, s)
# define BOOST_PP_WHILE_485(p, o, s) BOOST_PP_WHILE_485_C(BOOST_PP_BOOL(p(486, s)), p, o, s)
# define BOOST_PP_WHILE_486(p, o, s) BOOST_PP_WHILE_486_C(BOOST_PP_BOOL(p(487, s)), p, o, s)
# define BOOST_PP_WHILE_487(p, o, s) BOOST_PP_WHILE_487_C(BOOST_PP_BOOL(p(488, s)), p, o, s)
# define BOOST_PP_WHILE_488(p, o, s) BOOST_PP_WHILE_488_C(BOOST_PP_BOOL(p(489, s)), p, o, s)
# define BOOST_PP_WHILE_489(p, o, s) BOOST_PP_WHILE_489_C(BOOST_PP_BOOL(p(490, s)), p, o, s)
# define BOOST_PP_WHILE_490(p, o, s) BOOST_PP_WHILE_490_C(BOOST_PP_BOOL(p(491, s)), p, o, s)
# define BOOST_PP_WHILE_491(p, o, s) BOOST_PP_WHILE_491_C(BOOST_PP_BOOL(p(492, s)), p, o, s)
# define BOOST_PP_WHILE_492(p, o, s) BOOST_PP_WHILE_492_C(BOOST_PP_BOOL(p(493, s)), p, o, s)
# define BOOST_PP_WHILE_493(p, o, s) BOOST_PP_WHILE_493_C(BOOST_PP_BOOL(p(494, s)), p, o, s)
# define BOOST_PP_WHILE_494(p, o, s) BOOST_PP_WHILE_494_C(BOOST_PP_BOOL(p(495, s)), p, o, s)
# define BOOST_PP_WHILE_495(p, o, s) BOOST_PP_WHILE_495_C(BOOST_PP_BOOL(p(496, s)), p, o, s)
# define BOOST_PP_WHILE_496(p, o, s) BOOST_PP_WHILE_496_C(BOOST_PP_BOOL(p(497, s)), p, o, s)
# define BOOST_PP_WHILE_497(p, o, s) BOOST_PP_WHILE_497_C(BOOST_PP_BOOL(p(498, s)), p, o, s)
# define BOOST_PP_WHILE_498(p, o, s) BOOST_PP_WHILE_498_C(BOOST_PP_BOOL(p(499, s)), p, o, s)
# define BOOST_PP_WHILE_499(p, o, s) BOOST_PP_WHILE_499_C(BOOST_PP_BOOL(p(500, s)), p, o, s)
# define BOOST_PP_WHILE_500(p, o, s) BOOST_PP_WHILE_500_C(BOOST_PP_BOOL(p(501, s)), p, o, s)
# define BOOST_PP_WHILE_501(p, o, s) BOOST_PP_WHILE_501_C(BOOST_PP_BOOL(p(502, s)), p, o, s)
# define BOOST_PP_WHILE_502(p, o, s) BOOST_PP_WHILE_502_C(BOOST_PP_BOOL(p(503, s)), p, o, s)
# define BOOST_PP_WHILE_503(p, o, s) BOOST_PP_WHILE_503_C(BOOST_PP_BOOL(p(504, s)), p, o, s)
# define BOOST_PP_WHILE_504(p, o, s) BOOST_PP_WHILE_504_C(BOOST_PP_BOOL(p(505, s)), p, o, s)
# define BOOST_PP_WHILE_505(p, o, s) BOOST_PP_WHILE_505_C(BOOST_PP_BOOL(p(506, s)), p, o, s)
# define BOOST_PP_WHILE_506(p, o, s) BOOST_PP_WHILE_506_C(BOOST_PP_BOOL(p(507, s)), p, o, s)
# define BOOST_PP_WHILE_507(p, o, s) BOOST_PP_WHILE_507_C(BOOST_PP_BOOL(p(508, s)), p, o, s)
# define BOOST_PP_WHILE_508(p, o, s) BOOST_PP_WHILE_508_C(BOOST_PP_BOOL(p(509, s)), p, o, s)
# define BOOST_PP_WHILE_509(p, o, s) BOOST_PP_WHILE_509_C(BOOST_PP_BOOL(p(510, s)), p, o, s)
# define BOOST_PP_WHILE_510(p, o, s) BOOST_PP_WHILE_510_C(BOOST_PP_BOOL(p(511, s)), p, o, s)
# define BOOST_PP_WHILE_511(p, o, s) BOOST_PP_WHILE_511_C(BOOST_PP_BOOL(p(512, s)), p, o, s)
# define BOOST_PP_WHILE_512(p, o, s) BOOST_PP_WHILE_512_C(BOOST_PP_BOOL(p(513, s)), p, o, s)
#
# define BOOST_PP_WHILE_257_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_258, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(258, s))
# define BOOST_PP_WHILE_258_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_259, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(259, s))
# define BOOST_PP_WHILE_259_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_260, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(260, s))
# define BOOST_PP_WHILE_260_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_261, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(261, s))
# define BOOST_PP_WHILE_261_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_262, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(262, s))
# define BOOST_PP_WHILE_262_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_263, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(263, s))
# define BOOST_PP_WHILE_263_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_264, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(264, s))
# define BOOST_PP_WHILE_264_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_265, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(265, s))
# define BOOST_PP_WHILE_265_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_266, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(266, s))
# define BOOST_PP_WHILE_266_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_267, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(267, s))
# define BOOST_PP_WHILE_267_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_268, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(268, s))
# define BOOST_PP_WHILE_268_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_269, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(269, s))
# define BOOST_PP_WHILE_269_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_270, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(270, s))
# define BOOST_PP_WHILE_270_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_271, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(271, s))
# define BOOST_PP_WHILE_271_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_272, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(272, s))
# define BOOST_PP_WHILE_272_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_273, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(273, s))
# define BOOST_PP_WHILE_273_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_274, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(274, s))
# define BOOST_PP_WHILE_274_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_275, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(275, s))
# define BOOST_PP_WHILE_275_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_276, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(276, s))
# define BOOST_PP_WHILE_276_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_277, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(277, s))
# define BOOST_PP_WHILE_277_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_278, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(278, s))
# define BOOST_PP_WHILE_278_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_279, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(279, s))
# define BOOST_PP_WHILE_279_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_280, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(280, s))
# define BOOST_PP_WHILE_280_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_281, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(281, s))
# define BOOST_PP_WHILE_281_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_282, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(282, s))
# define BOOST_PP_WHILE_282_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_283, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(283, s))
# define BOOST_PP_WHILE_283_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_284, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(284, s))
# define BOOST_PP_WHILE_284_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_285, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(285, s))
# define BOOST_PP_WHILE_285_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_286, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(286, s))
# define BOOST_PP_WHILE_286_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_287, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(287, s))
# define BOOST_PP_WHILE_287_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_288, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(288, s))
# define BOOST_PP_WHILE_288_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_289, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(289, s))
# define BOOST_PP_WHILE_289_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_290, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(290, s))
# define BOOST_PP_WHILE_290_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_291, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(291, s))
# define BOOST_PP_WHILE_291_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_292, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(292, s))
# define BOOST_PP_WHILE_292_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_293, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(293, s))
# define BOOST_PP_WHILE_293_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_294, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(294, s))
# define BOOST_PP_WHILE_294_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_295, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(295, s))
# define BOOST_PP_WHILE_295_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_296, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(296, s))
# define BOOST_PP_WHILE_296_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_297, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(297, s))
# define BOOST_PP_WHILE_297_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_298, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(298, s))
# define BOOST_PP_WHILE_298_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_299, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(299, s))
# define BOOST_PP_WHILE_299_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_300, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(300, s))
# define BOOST_PP_WHILE_300_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_301, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(301, s))
# define BOOST_PP_WHILE_301_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_302, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(302, s))
# define BOOST_PP_WHILE_302_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_303, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(303, s))
# define BOOST_PP_WHILE_303_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_304, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(304, s))
# define BOOST_PP_WHILE_304_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_305, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(305, s))
# define BOOST_PP_WHILE_305_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_306, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(306, s))
# define BOOST_PP_WHILE_306_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_307, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(307, s))
# define BOOST_PP_WHILE_307_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_308, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(308, s))
# define BOOST_PP_WHILE_308_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_309, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(309, s))
# define BOOST_PP_WHILE_309_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_310, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(310, s))
# define BOOST_PP_WHILE_310_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_311, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(311, s))
# define BOOST_PP_WHILE_311_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_312, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(312, s))
# define BOOST_PP_WHILE_312_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_313, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(313, s))
# define BOOST_PP_WHILE_313_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_314, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(314, s))
# define BOOST_PP_WHILE_314_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_315, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(315, s))
# define BOOST_PP_WHILE_315_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_316, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(316, s))
# define BOOST_PP_WHILE_316_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_317, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(317, s))
# define BOOST_PP_WHILE_317_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_318, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(318, s))
# define BOOST_PP_WHILE_318_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_319, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(319, s))
# define BOOST_PP_WHILE_319_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_320, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(320, s))
# define BOOST_PP_WHILE_320_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_321, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(321, s))
# define BOOST_PP_WHILE_321_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_322, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(322, s))
# define BOOST_PP_WHILE_322_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_323, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(323, s))
# define BOOST_PP_WHILE_323_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_324, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(324, s))
# define BOOST_PP_WHILE_324_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_325, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(325, s))
# define BOOST_PP_WHILE_325_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_326, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(326, s))
# define BOOST_PP_WHILE_326_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_327, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(327, s))
# define BOOST_PP_WHILE_327_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_328, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(328, s))
# define BOOST_PP_WHILE_328_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_329, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(329, s))
# define BOOST_PP_WHILE_329_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_330, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(330, s))
# define BOOST_PP_WHILE_330_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_331, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(331, s))
# define BOOST_PP_WHILE_331_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_332, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(332, s))
# define BOOST_PP_WHILE_332_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_333, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(333, s))
# define BOOST_PP_WHILE_333_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_334, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(334, s))
# define BOOST_PP_WHILE_334_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_335, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(335, s))
# define BOOST_PP_WHILE_335_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_336, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(336, s))
# define BOOST_PP_WHILE_336_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_337, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(337, s))
# define BOOST_PP_WHILE_337_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_338, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(338, s))
# define BOOST_PP_WHILE_338_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_339, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(339, s))
# define BOOST_PP_WHILE_339_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_340, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(340, s))
# define BOOST_PP_WHILE_340_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_341, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(341, s))
# define BOOST_PP_WHILE_341_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_342, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(342, s))
# define BOOST_PP_WHILE_342_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_343, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(343, s))
# define BOOST_PP_WHILE_343_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_344, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(344, s))
# define BOOST_PP_WHILE_344_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_345, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(345, s))
# define BOOST_PP_WHILE_345_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_346, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(346, s))
# define BOOST_PP_WHILE_346_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_347, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(347, s))
# define BOOST_PP_WHILE_347_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_348, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(348, s))
# define BOOST_PP_WHILE_348_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_349, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(349, s))
# define BOOST_PP_WHILE_349_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_350, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(350, s))
# define BOOST_PP_WHILE_350_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_351, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(351, s))
# define BOOST_PP_WHILE_351_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_352, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(352, s))
# define BOOST_PP_WHILE_352_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_353, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(353, s))
# define BOOST_PP_WHILE_353_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_354, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(354, s))
# define BOOST_PP_WHILE_354_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_355, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(355, s))
# define BOOST_PP_WHILE_355_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_356, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(356, s))
# define BOOST_PP_WHILE_356_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_357, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(357, s))
# define BOOST_PP_WHILE_357_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_358, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(358, s))
# define BOOST_PP_WHILE_358_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_359, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(359, s))
# define BOOST_PP_WHILE_359_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_360, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(360, s))
# define BOOST_PP_WHILE_360_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_361, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(361, s))
# define BOOST_PP_WHILE_361_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_362, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(362, s))
# define BOOST_PP_WHILE_362_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_363, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(363, s))
# define BOOST_PP_WHILE_363_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_364, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(364, s))
# define BOOST_PP_WHILE_364_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_365, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(365, s))
# define BOOST_PP_WHILE_365_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_366, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(366, s))
# define BOOST_PP_WHILE_366_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_367, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(367, s))
# define BOOST_PP_WHILE_367_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_368, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(368, s))
# define BOOST_PP_WHILE_368_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_369, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(369, s))
# define BOOST_PP_WHILE_369_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_370, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(370, s))
# define BOOST_PP_WHILE_370_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_371, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(371, s))
# define BOOST_PP_WHILE_371_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_372, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(372, s))
# define BOOST_PP_WHILE_372_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_373, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(373, s))
# define BOOST_PP_WHILE_373_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_374, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(374, s))
# define BOOST_PP_WHILE_374_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_375, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(375, s))
# define BOOST_PP_WHILE_375_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_376, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(376, s))
# define BOOST_PP_WHILE_376_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_377, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(377, s))
# define BOOST_PP_WHILE_377_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_378, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(378, s))
# define BOOST_PP_WHILE_378_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_379, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(379, s))
# define BOOST_PP_WHILE_379_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_380, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(380, s))
# define BOOST_PP_WHILE_380_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_381, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(381, s))
# define BOOST_PP_WHILE_381_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_382, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(382, s))
# define BOOST_PP_WHILE_382_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_383, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(383, s))
# define BOOST_PP_WHILE_383_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_384, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(384, s))
# define BOOST_PP_WHILE_384_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_385, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(385, s))
# define BOOST_PP_WHILE_385_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_386, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(386, s))
# define BOOST_PP_WHILE_386_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_387, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(387, s))
# define BOOST_PP_WHILE_387_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_388, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(388, s))
# define BOOST_PP_WHILE_388_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_389, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(389, s))
# define BOOST_PP_WHILE_389_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_390, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(390, s))
# define BOOST_PP_WHILE_390_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_391, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(391, s))
# define BOOST_PP_WHILE_391_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_392, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(392, s))
# define BOOST_PP_WHILE_392_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_393, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(393, s))
# define BOOST_PP_WHILE_393_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_394, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(394, s))
# define BOOST_PP_WHILE_394_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_395, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(395, s))
# define BOOST_PP_WHILE_395_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_396, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(396, s))
# define BOOST_PP_WHILE_396_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_397, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(397, s))
# define BOOST_PP_WHILE_397_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_398, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(398, s))
# define BOOST_PP_WHILE_398_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_399, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(399, s))
# define BOOST_PP_WHILE_399_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_400, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(400, s))
# define BOOST_PP_WHILE_400_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_401, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(401, s))
# define BOOST_PP_WHILE_401_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_402, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(402, s))
# define BOOST_PP_WHILE_402_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_403, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(403, s))
# define BOOST_PP_WHILE_403_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_404, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(404, s))
# define BOOST_PP_WHILE_404_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_405, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(405, s))
# define BOOST_PP_WHILE_405_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_406, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(406, s))
# define BOOST_PP_WHILE_406_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_407, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(407, s))
# define BOOST_PP_WHILE_407_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_408, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(408, s))
# define BOOST_PP_WHILE_408_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_409, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(409, s))
# define BOOST_PP_WHILE_409_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_410, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(410, s))
# define BOOST_PP_WHILE_410_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_411, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(411, s))
# define BOOST_PP_WHILE_411_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_412, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(412, s))
# define BOOST_PP_WHILE_412_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_413, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(413, s))
# define BOOST_PP_WHILE_413_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_414, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(414, s))
# define BOOST_PP_WHILE_414_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_415, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(415, s))
# define BOOST_PP_WHILE_415_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_416, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(416, s))
# define BOOST_PP_WHILE_416_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_417, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(417, s))
# define BOOST_PP_WHILE_417_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_418, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(418, s))
# define BOOST_PP_WHILE_418_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_419, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(419, s))
# define BOOST_PP_WHILE_419_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_420, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(420, s))
# define BOOST_PP_WHILE_420_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_421, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(421, s))
# define BOOST_PP_WHILE_421_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_422, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(422, s))
# define BOOST_PP_WHILE_422_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_423, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(423, s))
# define BOOST_PP_WHILE_423_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_424, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(424, s))
# define BOOST_PP_WHILE_424_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_425, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(425, s))
# define BOOST_PP_WHILE_425_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_426, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(426, s))
# define BOOST_PP_WHILE_426_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_427, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(427, s))
# define BOOST_PP_WHILE_427_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_428, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(428, s))
# define BOOST_PP_WHILE_428_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_429, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(429, s))
# define BOOST_PP_WHILE_429_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_430, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(430, s))
# define BOOST_PP_WHILE_430_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_431, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(431, s))
# define BOOST_PP_WHILE_431_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_432, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(432, s))
# define BOOST_PP_WHILE_432_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_433, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(433, s))
# define BOOST_PP_WHILE_433_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_434, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(434, s))
# define BOOST_PP_WHILE_434_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_435, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(435, s))
# define BOOST_PP_WHILE_435_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_436, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(436, s))
# define BOOST_PP_WHILE_436_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_437, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(437, s))
# define BOOST_PP_WHILE_437_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_438, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(438, s))
# define BOOST_PP_WHILE_438_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_439, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(439, s))
# define BOOST_PP_WHILE_439_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_440, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(440, s))
# define BOOST_PP_WHILE_440_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_441, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(441, s))
# define BOOST_PP_WHILE_441_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_442, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(442, s))
# define BOOST_PP_WHILE_442_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_443, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(443, s))
# define BOOST_PP_WHILE_443_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_444, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(444, s))
# define BOOST_PP_WHILE_444_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_445, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(445, s))
# define BOOST_PP_WHILE_445_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_446, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(446, s))
# define BOOST_PP_WHILE_446_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_447, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(447, s))
# define BOOST_PP_WHILE_447_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_448, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(448, s))
# define BOOST_PP_WHILE_448_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_449, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(449, s))
# define BOOST_PP_WHILE_449_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_450, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(450, s))
# define BOOST_PP_WHILE_450_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_451, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(451, s))
# define BOOST_PP_WHILE_451_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_452, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(452, s))
# define BOOST_PP_WHILE_452_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_453, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(453, s))
# define BOOST_PP_WHILE_453_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_454, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(454, s))
# define BOOST_PP_WHILE_454_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_455, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(455, s))
# define BOOST_PP_WHILE_455_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_456, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(456, s))
# define BOOST_PP_WHILE_456_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_457, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(457, s))
# define BOOST_PP_WHILE_457_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_458, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(458, s))
# define BOOST_PP_WHILE_458_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_459, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(459, s))
# define BOOST_PP_WHILE_459_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_460, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(460, s))
# define BOOST_PP_WHILE_460_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_461, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(461, s))
# define BOOST_PP_WHILE_461_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_462, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(462, s))
# define BOOST_PP_WHILE_462_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_463, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(463, s))
# define BOOST_PP_WHILE_463_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_464, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(464, s))
# define BOOST_PP_WHILE_464_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_465, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(465, s))
# define BOOST_PP_WHILE_465_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_466, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(466, s))
# define BOOST_PP_WHILE_466_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_467, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(467, s))
# define BOOST_PP_WHILE_467_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_468, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(468, s))
# define BOOST_PP_WHILE_468_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_469, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(469, s))
# define BOOST_PP_WHILE_469_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_470, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(470, s))
# define BOOST_PP_WHILE_470_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_471, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(471, s))
# define BOOST_PP_WHILE_471_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_472, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(472, s))
# define BOOST_PP_WHILE_472_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_473, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(473, s))
# define BOOST_PP_WHILE_473_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_474, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(474, s))
# define BOOST_PP_WHILE_474_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_475, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(475, s))
# define BOOST_PP_WHILE_475_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_476, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(476, s))
# define BOOST_PP_WHILE_476_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_477, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(477, s))
# define BOOST_PP_WHILE_477_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_478, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(478, s))
# define BOOST_PP_WHILE_478_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_479, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(479, s))
# define BOOST_PP_WHILE_479_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_480, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(480, s))
# define BOOST_PP_WHILE_480_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_481, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(481, s))
# define BOOST_PP_WHILE_481_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_482, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(482, s))
# define BOOST_PP_WHILE_482_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_483, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(483, s))
# define BOOST_PP_WHILE_483_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_484, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(484, s))
# define BOOST_PP_WHILE_484_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_485, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(485, s))
# define BOOST_PP_WHILE_485_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_486, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(486, s))
# define BOOST_PP_WHILE_486_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_487, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(487, s))
# define BOOST_PP_WHILE_487_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_488, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(488, s))
# define BOOST_PP_WHILE_488_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_489, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(489, s))
# define BOOST_PP_WHILE_489_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_490, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(490, s))
# define BOOST_PP_WHILE_490_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_491, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(491, s))
# define BOOST_PP_WHILE_491_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_492, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(492, s))
# define BOOST_PP_WHILE_492_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_493, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(493, s))
# define BOOST_PP_WHILE_493_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_494, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(494, s))
# define BOOST_PP_WHILE_494_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_495, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(495, s))
# define BOOST_PP_WHILE_495_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_496, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(496, s))
# define BOOST_PP_WHILE_496_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_497, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(497, s))
# define BOOST_PP_WHILE_497_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_498, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(498, s))
# define BOOST_PP_WHILE_498_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_499, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(499, s))
# define BOOST_PP_WHILE_499_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_500, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(500, s))
# define BOOST_PP_WHILE_500_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_501, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(501, s))
# define BOOST_PP_WHILE_501_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_502, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(502, s))
# define BOOST_PP_WHILE_502_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_503, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(503, s))
# define BOOST_PP_WHILE_503_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_504, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(504, s))
# define BOOST_PP_WHILE_504_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_505, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(505, s))
# define BOOST_PP_WHILE_505_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_506, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(506, s))
# define BOOST_PP_WHILE_506_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_507, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(507, s))
# define BOOST_PP_WHILE_507_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_508, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(508, s))
# define BOOST_PP_WHILE_508_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_509, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(509, s))
# define BOOST_PP_WHILE_509_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_510, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(510, s))
# define BOOST_PP_WHILE_510_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_511, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(511, s))
# define BOOST_PP_WHILE_511_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_512, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(512, s))
# define BOOST_PP_WHILE_512_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_513, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(513, s))
#
# endif

View File

@ -8,12 +8,17 @@
# */
#
# /* Revised by Paul Mensonides (2002) */
# /* Revised by Edward Diener (2020) */
#
# /* See http://www.boost.org for most recent version. */
#
# ifndef BOOST_PREPROCESSOR_CONTROL_DETAIL_WHILE_HPP
# define BOOST_PREPROCESSOR_CONTROL_DETAIL_WHILE_HPP
#
# include <boost/preprocessor/config/config.hpp>
#
# if ~BOOST_PP_CONFIG_FLAGS() & BOOST_PP_CONFIG_STRICT()
#
# include <boost/preprocessor/control/iif.hpp>
# include <boost/preprocessor/logical/bool.hpp>
# include <boost/preprocessor/tuple/eat.hpp>
@ -532,5 +537,27 @@
# define BOOST_PP_WHILE_255_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_256, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(256, s))
# define BOOST_PP_WHILE_256_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_257, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(257, s))
#
# else
#
# include <boost/preprocessor/control/iif.hpp>
# include <boost/preprocessor/logical/bool.hpp>
# include <boost/preprocessor/tuple/eat.hpp>
#
# include <boost/preprocessor/config/limits.hpp>
#
# if BOOST_PP_LIMIT_WHILE == 256
# include <boost/preprocessor/control/detail/limits/while_256.hpp>
# elif BOOST_PP_LIMIT_WHILE == 512
# include <boost/preprocessor/control/detail/limits/while_256.hpp>
# include <boost/preprocessor/control/detail/limits/while_512.hpp>
# elif BOOST_PP_LIMIT_WHILE == 1024
# include <boost/preprocessor/control/detail/limits/while_256.hpp>
# include <boost/preprocessor/control/detail/limits/while_512.hpp>
# include <boost/preprocessor/control/detail/limits/while_1024.hpp>
# else
# error Incorrect value for the BOOST_PP_LIMIT_WHILE limit
# endif
#
# endif
#
# endif

View File

@ -0,0 +1,531 @@
# /* Copyright (C) 2001
# * Housemarque Oy
# * http://www.housemarque.com
# *
# * Distributed under the Boost Software License, Version 1.0. (See
# * accompanying file LICENSE_1_0.txt or copy at
# * http://www.boost.org/LICENSE_1_0.txt)
# */
#
# /* Revised by Paul Mensonides (2002) */
# /* Revised by Edward Diener (2020) */
#
# /* See http://www.boost.org for most recent version. */
#
# ifndef BOOST_PREPROCESSOR_CONTROL_WHILE_1024_HPP
# define BOOST_PREPROCESSOR_CONTROL_WHILE_1024_HPP
#
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_513(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_514(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_515(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_516(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_517(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_518(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_519(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_520(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_521(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_522(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_523(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_524(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_525(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_526(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_527(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_528(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_529(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_530(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_531(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_532(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_533(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_534(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_535(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_536(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_537(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_538(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_539(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_540(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_541(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_542(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_543(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_544(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_545(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_546(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_547(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_548(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_549(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_550(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_551(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_552(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_553(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_554(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_555(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_556(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_557(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_558(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_559(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_560(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_561(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_562(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_563(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_564(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_565(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_566(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_567(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_568(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_569(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_570(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_571(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_572(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_573(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_574(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_575(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_576(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_577(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_578(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_579(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_580(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_581(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_582(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_583(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_584(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_585(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_586(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_587(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_588(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_589(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_590(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_591(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_592(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_593(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_594(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_595(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_596(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_597(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_598(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_599(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_600(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_601(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_602(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_603(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_604(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_605(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_606(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_607(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_608(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_609(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_610(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_611(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_612(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_613(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_614(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_615(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_616(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_617(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_618(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_619(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_620(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_621(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_622(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_623(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_624(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_625(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_626(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_627(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_628(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_629(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_630(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_631(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_632(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_633(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_634(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_635(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_636(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_637(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_638(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_639(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_640(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_641(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_642(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_643(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_644(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_645(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_646(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_647(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_648(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_649(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_650(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_651(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_652(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_653(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_654(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_655(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_656(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_657(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_658(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_659(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_660(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_661(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_662(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_663(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_664(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_665(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_666(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_667(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_668(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_669(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_670(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_671(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_672(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_673(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_674(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_675(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_676(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_677(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_678(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_679(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_680(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_681(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_682(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_683(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_684(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_685(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_686(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_687(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_688(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_689(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_690(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_691(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_692(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_693(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_694(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_695(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_696(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_697(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_698(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_699(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_700(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_701(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_702(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_703(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_704(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_705(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_706(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_707(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_708(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_709(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_710(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_711(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_712(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_713(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_714(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_715(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_716(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_717(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_718(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_719(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_720(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_721(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_722(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_723(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_724(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_725(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_726(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_727(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_728(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_729(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_730(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_731(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_732(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_733(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_734(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_735(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_736(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_737(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_738(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_739(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_740(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_741(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_742(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_743(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_744(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_745(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_746(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_747(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_748(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_749(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_750(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_751(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_752(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_753(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_754(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_755(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_756(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_757(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_758(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_759(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_760(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_761(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_762(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_763(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_764(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_765(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_766(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_767(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_768(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_769(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_770(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_771(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_772(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_773(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_774(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_775(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_776(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_777(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_778(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_779(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_780(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_781(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_782(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_783(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_784(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_785(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_786(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_787(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_788(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_789(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_790(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_791(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_792(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_793(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_794(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_795(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_796(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_797(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_798(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_799(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_800(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_801(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_802(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_803(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_804(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_805(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_806(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_807(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_808(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_809(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_810(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_811(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_812(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_813(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_814(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_815(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_816(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_817(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_818(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_819(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_820(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_821(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_822(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_823(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_824(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_825(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_826(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_827(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_828(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_829(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_830(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_831(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_832(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_833(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_834(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_835(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_836(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_837(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_838(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_839(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_840(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_841(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_842(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_843(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_844(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_845(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_846(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_847(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_848(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_849(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_850(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_851(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_852(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_853(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_854(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_855(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_856(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_857(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_858(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_859(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_860(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_861(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_862(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_863(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_864(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_865(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_866(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_867(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_868(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_869(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_870(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_871(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_872(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_873(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_874(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_875(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_876(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_877(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_878(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_879(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_880(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_881(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_882(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_883(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_884(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_885(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_886(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_887(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_888(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_889(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_890(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_891(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_892(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_893(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_894(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_895(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_896(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_897(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_898(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_899(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_900(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_901(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_902(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_903(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_904(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_905(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_906(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_907(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_908(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_909(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_910(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_911(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_912(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_913(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_914(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_915(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_916(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_917(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_918(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_919(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_920(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_921(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_922(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_923(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_924(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_925(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_926(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_927(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_928(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_929(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_930(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_931(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_932(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_933(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_934(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_935(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_936(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_937(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_938(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_939(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_940(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_941(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_942(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_943(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_944(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_945(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_946(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_947(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_948(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_949(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_950(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_951(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_952(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_953(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_954(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_955(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_956(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_957(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_958(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_959(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_960(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_961(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_962(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_963(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_964(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_965(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_966(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_967(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_968(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_969(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_970(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_971(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_972(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_973(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_974(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_975(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_976(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_977(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_978(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_979(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_980(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_981(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_982(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_983(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_984(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_985(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_986(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_987(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_988(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_989(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_990(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_991(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_992(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_993(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_994(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_995(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_996(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_997(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_998(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_999(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_1000(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_1001(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_1002(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_1003(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_1004(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_1005(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_1006(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_1007(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_1008(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_1009(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_1010(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_1011(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_1012(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_1013(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_1014(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_1015(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_1016(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_1017(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_1018(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_1019(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_1020(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_1021(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_1022(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_1023(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_1024(p, o, s) 0
#
# endif

View File

@ -0,0 +1,275 @@
# /* Copyright (C) 2001
# * Housemarque Oy
# * http://www.housemarque.com
# *
# * Distributed under the Boost Software License, Version 1.0. (See
# * accompanying file LICENSE_1_0.txt or copy at
# * http://www.boost.org/LICENSE_1_0.txt)
# */
#
# /* Revised by Paul Mensonides (2002) */
#
# /* See http://www.boost.org for most recent version. */
#
# ifndef BOOST_PREPROCESSOR_CONTROL_WHILE_256_HPP
# define BOOST_PREPROCESSOR_CONTROL_WHILE_256_HPP
#
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_0(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_1(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_2(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_3(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_4(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_5(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_6(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_7(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_8(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_9(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_10(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_11(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_12(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_13(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_14(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_15(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_16(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_17(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_18(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_19(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_20(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_21(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_22(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_23(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_24(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_25(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_26(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_27(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_28(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_29(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_30(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_31(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_32(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_33(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_34(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_35(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_36(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_37(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_38(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_39(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_40(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_41(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_42(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_43(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_44(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_45(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_46(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_47(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_48(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_49(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_50(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_51(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_52(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_53(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_54(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_55(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_56(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_57(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_58(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_59(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_60(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_61(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_62(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_63(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_64(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_65(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_66(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_67(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_68(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_69(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_70(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_71(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_72(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_73(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_74(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_75(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_76(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_77(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_78(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_79(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_80(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_81(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_82(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_83(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_84(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_85(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_86(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_87(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_88(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_89(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_90(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_91(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_92(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_93(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_94(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_95(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_96(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_97(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_98(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_99(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_100(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_101(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_102(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_103(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_104(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_105(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_106(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_107(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_108(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_109(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_110(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_111(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_112(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_113(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_114(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_115(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_116(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_117(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_118(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_119(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_120(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_121(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_122(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_123(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_124(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_125(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_126(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_127(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_128(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_129(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_130(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_131(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_132(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_133(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_134(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_135(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_136(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_137(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_138(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_139(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_140(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_141(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_142(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_143(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_144(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_145(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_146(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_147(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_148(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_149(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_150(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_151(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_152(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_153(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_154(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_155(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_156(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_157(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_158(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_159(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_160(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_161(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_162(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_163(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_164(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_165(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_166(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_167(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_168(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_169(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_170(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_171(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_172(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_173(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_174(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_175(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_176(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_177(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_178(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_179(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_180(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_181(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_182(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_183(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_184(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_185(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_186(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_187(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_188(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_189(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_190(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_191(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_192(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_193(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_194(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_195(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_196(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_197(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_198(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_199(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_200(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_201(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_202(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_203(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_204(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_205(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_206(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_207(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_208(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_209(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_210(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_211(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_212(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_213(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_214(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_215(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_216(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_217(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_218(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_219(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_220(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_221(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_222(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_223(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_224(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_225(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_226(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_227(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_228(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_229(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_230(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_231(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_232(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_233(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_234(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_235(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_236(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_237(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_238(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_239(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_240(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_241(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_242(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_243(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_244(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_245(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_246(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_247(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_248(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_249(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_250(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_251(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_252(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_253(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_254(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_255(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_256(p, o, s) 0
#
# endif

View File

@ -0,0 +1,275 @@
# /* Copyright (C) 2001
# * Housemarque Oy
# * http://www.housemarque.com
# *
# * Distributed under the Boost Software License, Version 1.0. (See
# * accompanying file LICENSE_1_0.txt or copy at
# * http://www.boost.org/LICENSE_1_0.txt)
# */
#
# /* Revised by Paul Mensonides (2002) */
# /* Revised by Edward Diener (2020) */
#
# /* See http://www.boost.org for most recent version. */
#
# ifndef BOOST_PREPROCESSOR_CONTROL_WHILE_512_HPP
# define BOOST_PREPROCESSOR_CONTROL_WHILE_512_HPP
#
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_257(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_258(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_259(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_260(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_261(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_262(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_263(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_264(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_265(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_266(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_267(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_268(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_269(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_270(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_271(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_272(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_273(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_274(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_275(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_276(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_277(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_278(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_279(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_280(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_281(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_282(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_283(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_284(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_285(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_286(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_287(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_288(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_289(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_290(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_291(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_292(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_293(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_294(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_295(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_296(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_297(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_298(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_299(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_300(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_301(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_302(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_303(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_304(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_305(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_306(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_307(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_308(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_309(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_310(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_311(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_312(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_313(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_314(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_315(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_316(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_317(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_318(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_319(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_320(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_321(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_322(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_323(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_324(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_325(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_326(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_327(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_328(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_329(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_330(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_331(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_332(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_333(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_334(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_335(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_336(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_337(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_338(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_339(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_340(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_341(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_342(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_343(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_344(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_345(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_346(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_347(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_348(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_349(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_350(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_351(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_352(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_353(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_354(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_355(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_356(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_357(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_358(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_359(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_360(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_361(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_362(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_363(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_364(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_365(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_366(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_367(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_368(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_369(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_370(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_371(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_372(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_373(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_374(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_375(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_376(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_377(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_378(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_379(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_380(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_381(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_382(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_383(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_384(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_385(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_386(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_387(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_388(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_389(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_390(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_391(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_392(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_393(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_394(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_395(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_396(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_397(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_398(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_399(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_400(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_401(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_402(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_403(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_404(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_405(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_406(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_407(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_408(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_409(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_410(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_411(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_412(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_413(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_414(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_415(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_416(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_417(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_418(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_419(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_420(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_421(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_422(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_423(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_424(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_425(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_426(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_427(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_428(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_429(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_430(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_431(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_432(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_433(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_434(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_435(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_436(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_437(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_438(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_439(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_440(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_441(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_442(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_443(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_444(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_445(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_446(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_447(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_448(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_449(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_450(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_451(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_452(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_453(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_454(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_455(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_456(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_457(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_458(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_459(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_460(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_461(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_462(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_463(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_464(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_465(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_466(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_467(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_468(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_469(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_470(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_471(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_472(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_473(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_474(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_475(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_476(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_477(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_478(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_479(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_480(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_481(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_482(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_483(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_484(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_485(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_486(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_487(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_488(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_489(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_490(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_491(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_492(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_493(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_494(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_495(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_496(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_497(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_498(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_499(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_500(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_501(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_502(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_503(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_504(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_505(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_506(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_507(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_508(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_509(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_510(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_511(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_512(p, o, s) 0
#
# endif

View File

@ -8,12 +8,17 @@
# */
#
# /* Revised by Paul Mensonides (2002) */
# /* Revised by Edward Diener (2020) */
#
# /* See http://www.boost.org for most recent version. */
#
# ifndef BOOST_PREPROCESSOR_CONTROL_WHILE_HPP
# define BOOST_PREPROCESSOR_CONTROL_WHILE_HPP
#
# include <boost/preprocessor/config/config.hpp>
#
# if ~BOOST_PP_CONFIG_FLAGS() & BOOST_PP_CONFIG_STRICT()
#
# include <boost/preprocessor/cat.hpp>
# include <boost/preprocessor/config/config.hpp>
# include <boost/preprocessor/debug/error.hpp>
@ -309,4 +314,74 @@
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_255(p, o, s) 0
# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_256(p, o, s) 0
#
# else
#
# include <boost/preprocessor/arithmetic/dec.hpp>
# include <boost/preprocessor/cat.hpp>
# include <boost/preprocessor/debug/error.hpp>
# include <boost/preprocessor/detail/auto_rec.hpp>
# include <boost/preprocessor/list/fold_left.hpp>
# include <boost/preprocessor/list/fold_right.hpp>
# include <boost/preprocessor/logical/bitand.hpp>
# include <boost/preprocessor/config/limits.hpp>
#
# /* BOOST_PP_WHILE */
#
# if 0
# define BOOST_PP_WHILE(pred, op, state)
# endif
#
# if BOOST_PP_LIMIT_WHILE == 256
# define BOOST_PP_WHILE BOOST_PP_CAT(BOOST_PP_WHILE_, BOOST_PP_DEC(BOOST_PP_AUTO_REC(BOOST_PP_WHILE_P, 256)))
# elif BOOST_PP_LIMIT_WHILE == 512
# define BOOST_PP_WHILE BOOST_PP_CAT(BOOST_PP_WHILE_, BOOST_PP_DEC(BOOST_PP_AUTO_REC(BOOST_PP_WHILE_P, 512)))
# elif BOOST_PP_LIMIT_WHILE == 1024
# define BOOST_PP_WHILE BOOST_PP_CAT(BOOST_PP_WHILE_, BOOST_PP_DEC(BOOST_PP_AUTO_REC(BOOST_PP_WHILE_P, 1024)))
# else
# error Incorrect value for the BOOST_PP_LIMIT_WHILE limit
# endif
#
# define BOOST_PP_WHILE_P(n) BOOST_PP_WHILE_P_DEC(BOOST_PP_DEC(n))
#
# if BOOST_PP_CONFIG_FLAGS() & BOOST_PP_CONFIG_EDG()
# define BOOST_PP_WHILE_P_DEC(n) BOOST_PP_BITAND(BOOST_PP_CAT(BOOST_PP_WHILE_CHECK_, BOOST_PP_CAT(BOOST_PP_WHILE_ , n)(BOOST_PP_WHILE_F, BOOST_PP_NIL, BOOST_PP_NIL)), BOOST_PP_BITAND(BOOST_PP_CAT(BOOST_PP_LIST_FOLD_LEFT_CHECK_, BOOST_PP_CAT(BOOST_PP_LIST_FOLD_LEFT_ , n)(BOOST_PP_NIL, BOOST_PP_NIL, BOOST_PP_NIL)), BOOST_PP_CAT(BOOST_PP_LIST_FOLD_RIGHT_CHECK_, BOOST_PP_CAT(BOOST_PP_LIST_FOLD_RIGHT_ , n)(BOOST_PP_NIL, BOOST_PP_NIL, BOOST_PP_NIL))))
# else
# define BOOST_PP_WHILE_P_DEC(n) BOOST_PP_BITAND(BOOST_PP_CAT(BOOST_PP_WHILE_CHECK_, BOOST_PP_CAT(BOOST_PP_WHILE_ , n)(BOOST_PP_WHILE_F, BOOST_PP_NIL, BOOST_PP_NIL)), BOOST_PP_CAT(BOOST_PP_LIST_FOLD_LEFT_CHECK_, BOOST_PP_CAT(BOOST_PP_LIST_FOLD_LEFT_ , n)(BOOST_PP_NIL, BOOST_PP_NIL, BOOST_PP_NIL)))
# endif
#
# define BOOST_PP_WHILE_F(d, _) 0
#
# if BOOST_PP_CONFIG_FLAGS() & BOOST_PP_CONFIG_EDG()
# include <boost/preprocessor/control/detail/edg/while.hpp>
# elif BOOST_PP_CONFIG_FLAGS() & BOOST_PP_CONFIG_MSVC()
# include <boost/preprocessor/control/detail/msvc/while.hpp>
# elif BOOST_PP_CONFIG_FLAGS() & BOOST_PP_CONFIG_DMC()
# include <boost/preprocessor/control/detail/dmc/while.hpp>
# else
# include <boost/preprocessor/control/detail/while.hpp>
# endif
#
# if BOOST_PP_LIMIT_WHILE == 256
# define BOOST_PP_WHILE_257(p, o, s) BOOST_PP_ERROR(0x0001)
# elif BOOST_PP_LIMIT_WHILE == 512
# define BOOST_PP_WHILE_513(p, o, s) BOOST_PP_ERROR(0x0001)
# elif BOOST_PP_LIMIT_WHILE == 1024
# define BOOST_PP_WHILE_1025(p, o, s) BOOST_PP_ERROR(0x0001)
# endif
#
# define BOOST_PP_WHILE_CHECK_BOOST_PP_NIL 1
#
# if BOOST_PP_LIMIT_WHILE == 256
# include <boost/preprocessor/control/limits/while_256.hpp>
# elif BOOST_PP_LIMIT_WHILE == 512
# include <boost/preprocessor/control/limits/while_256.hpp>
# include <boost/preprocessor/control/limits/while_512.hpp>
# elif BOOST_PP_LIMIT_WHILE == 1024
# include <boost/preprocessor/control/limits/while_256.hpp>
# include <boost/preprocessor/control/limits/while_512.hpp>
# include <boost/preprocessor/control/limits/while_1024.hpp>
# endif
#
# endif
#
# endif

View File

@ -7,10 +7,14 @@
# * *
# ************************************************************************** */
#
# /* Revised by Edward Diener (2020) */
#
# /* See http://www.boost.org for most recent version. */
#
# include <boost/preprocessor/config/config.hpp>
#
# if ~BOOST_PP_CONFIG_FLAGS() & BOOST_PP_CONFIG_STRICT()
#
# if BOOST_PP_CONFIG_FLAGS() & BOOST_PP_CONFIG_DMC()
# include <boost/preprocessor/detail/dmc/auto_rec.hpp>
# else
@ -290,4 +294,41 @@
# define BOOST_PP_NODE_255(p) BOOST_PP_IIF(p(255), 255, 256)
#
# endif
#
# endif
#
# else
#
# if BOOST_PP_CONFIG_FLAGS() & BOOST_PP_CONFIG_DMC()
# include <boost/preprocessor/detail/dmc/auto_rec.hpp>
# else
#
# ifndef BOOST_PREPROCESSOR_DETAIL_AUTO_REC_HPP
# define BOOST_PREPROCESSOR_DETAIL_AUTO_REC_HPP
#
# /* BOOST_PP_AUTO_REC */
#
# include <boost/preprocessor/control/iif.hpp>
#
# define BOOST_PP_AUTO_REC(pred, n) BOOST_PP_NODE_ENTRY_ ## n(pred)
#
# include <boost/preprocessor/config/limits.hpp>
#
# if BOOST_PP_LIMIT_MAG == 256
# include <boost/preprocessor/detail/limits/auto_rec_256.hpp>
# elif BOOST_PP_LIMIT_MAG == 512
# include <boost/preprocessor/detail/limits/auto_rec_256.hpp>
# include <boost/preprocessor/detail/limits/auto_rec_512.hpp>
# elif BOOST_PP_LIMIT_MAG == 1024
# include <boost/preprocessor/detail/limits/auto_rec_256.hpp>
# include <boost/preprocessor/detail/limits/auto_rec_512.hpp>
# include <boost/preprocessor/detail/limits/auto_rec_1024.hpp>
# else
# error Incorrect value for the BOOST_PP_LIMIT_MAG limit
# endif
#
# endif
#
# endif
#
# endif

View File

@ -9,8 +9,8 @@
#
# /* See http://www.boost.org for most recent version. */
#
# ifndef BOOST_PREPROCESSOR_DETAIL_AUTO_REC_HPP
# define BOOST_PREPROCESSOR_DETAIL_AUTO_REC_HPP
# ifndef BOOST_PREPROCESSOR_DETAIL_DMC_AUTO_REC_HPP
# define BOOST_PREPROCESSOR_DETAIL_DMC_AUTO_REC_HPP
#
# include <boost/preprocessor/control/iif.hpp>
#

View File

@ -0,0 +1,532 @@
# /* **************************************************************************
# * *
# * (C) Copyright Paul Mensonides 2002.
# * Distributed under the Boost Software License, Version 1.0. (See
# * accompanying file LICENSE_1_0.txt or copy at
# * http://www.boost.org/LICENSE_1_0.txt)
# * *
# ************************************************************************** */
#
# /* Revised by Edward Diener (2020) */
#
# /* See http://www.boost.org for most recent version. */
#
# ifndef BOOST_PREPROCESSOR_DETAIL_AUTO_REC_1024_HPP
# define BOOST_PREPROCESSOR_DETAIL_AUTO_REC_1024_HPP
#
# define BOOST_PP_NODE_ENTRY_1024(p) BOOST_PP_NODE_512(p)(p)(p)(p)(p)(p)(p)(p)(p)(p)
#
# define BOOST_PP_NODE_512(p) BOOST_PP_IIF(p(512), BOOST_PP_NODE_256, BOOST_PP_NODE_768)
# define BOOST_PP_NODE_768(p) BOOST_PP_IIF(p(768), BOOST_PP_NODE_640, BOOST_PP_NODE_896)
# define BOOST_PP_NODE_640(p) BOOST_PP_IIF(p(640), BOOST_PP_NODE_576, BOOST_PP_NODE_704)
# define BOOST_PP_NODE_576(p) BOOST_PP_IIF(p(576), BOOST_PP_NODE_544, BOOST_PP_NODE_608)
# define BOOST_PP_NODE_544(p) BOOST_PP_IIF(p(544), BOOST_PP_NODE_528, BOOST_PP_NODE_560)
# define BOOST_PP_NODE_528(p) BOOST_PP_IIF(p(528), BOOST_PP_NODE_520, BOOST_PP_NODE_536)
# define BOOST_PP_NODE_520(p) BOOST_PP_IIF(p(520), BOOST_PP_NODE_516, BOOST_PP_NODE_524)
# define BOOST_PP_NODE_516(p) BOOST_PP_IIF(p(516), BOOST_PP_NODE_514, BOOST_PP_NODE_518)
# define BOOST_PP_NODE_514(p) BOOST_PP_IIF(p(514), BOOST_PP_NODE_513, BOOST_PP_NODE_515)
# define BOOST_PP_NODE_513(p) BOOST_PP_IIF(p(513), 513, 514)
# define BOOST_PP_NODE_515(p) BOOST_PP_IIF(p(515), 515, 516)
# define BOOST_PP_NODE_518(p) BOOST_PP_IIF(p(518), BOOST_PP_NODE_517, BOOST_PP_NODE_519)
# define BOOST_PP_NODE_517(p) BOOST_PP_IIF(p(517), 517, 518)
# define BOOST_PP_NODE_519(p) BOOST_PP_IIF(p(519), 519, 520)
# define BOOST_PP_NODE_524(p) BOOST_PP_IIF(p(524), BOOST_PP_NODE_522, BOOST_PP_NODE_526)
# define BOOST_PP_NODE_522(p) BOOST_PP_IIF(p(522), BOOST_PP_NODE_521, BOOST_PP_NODE_523)
# define BOOST_PP_NODE_521(p) BOOST_PP_IIF(p(521), 521, 522)
# define BOOST_PP_NODE_523(p) BOOST_PP_IIF(p(523), 523, 524)
# define BOOST_PP_NODE_526(p) BOOST_PP_IIF(p(526), BOOST_PP_NODE_525, BOOST_PP_NODE_527)
# define BOOST_PP_NODE_525(p) BOOST_PP_IIF(p(525), 525, 526)
# define BOOST_PP_NODE_527(p) BOOST_PP_IIF(p(527), 527, 528)
# define BOOST_PP_NODE_536(p) BOOST_PP_IIF(p(536), BOOST_PP_NODE_532, BOOST_PP_NODE_540)
# define BOOST_PP_NODE_532(p) BOOST_PP_IIF(p(532), BOOST_PP_NODE_530, BOOST_PP_NODE_534)
# define BOOST_PP_NODE_530(p) BOOST_PP_IIF(p(530), BOOST_PP_NODE_529, BOOST_PP_NODE_531)
# define BOOST_PP_NODE_529(p) BOOST_PP_IIF(p(529), 529, 530)
# define BOOST_PP_NODE_531(p) BOOST_PP_IIF(p(531), 531, 532)
# define BOOST_PP_NODE_534(p) BOOST_PP_IIF(p(534), BOOST_PP_NODE_533, BOOST_PP_NODE_535)
# define BOOST_PP_NODE_533(p) BOOST_PP_IIF(p(533), 533, 534)
# define BOOST_PP_NODE_535(p) BOOST_PP_IIF(p(535), 535, 536)
# define BOOST_PP_NODE_540(p) BOOST_PP_IIF(p(540), BOOST_PP_NODE_538, BOOST_PP_NODE_542)
# define BOOST_PP_NODE_538(p) BOOST_PP_IIF(p(538), BOOST_PP_NODE_537, BOOST_PP_NODE_539)
# define BOOST_PP_NODE_537(p) BOOST_PP_IIF(p(537), 537, 538)
# define BOOST_PP_NODE_539(p) BOOST_PP_IIF(p(539), 539, 540)
# define BOOST_PP_NODE_542(p) BOOST_PP_IIF(p(542), BOOST_PP_NODE_541, BOOST_PP_NODE_543)
# define BOOST_PP_NODE_541(p) BOOST_PP_IIF(p(541), 541, 542)
# define BOOST_PP_NODE_543(p) BOOST_PP_IIF(p(543), 543, 544)
# define BOOST_PP_NODE_560(p) BOOST_PP_IIF(p(560), BOOST_PP_NODE_552, BOOST_PP_NODE_568)
# define BOOST_PP_NODE_552(p) BOOST_PP_IIF(p(552), BOOST_PP_NODE_548, BOOST_PP_NODE_556)
# define BOOST_PP_NODE_548(p) BOOST_PP_IIF(p(548), BOOST_PP_NODE_546, BOOST_PP_NODE_550)
# define BOOST_PP_NODE_546(p) BOOST_PP_IIF(p(546), BOOST_PP_NODE_545, BOOST_PP_NODE_547)
# define BOOST_PP_NODE_545(p) BOOST_PP_IIF(p(545), 545, 546)
# define BOOST_PP_NODE_547(p) BOOST_PP_IIF(p(547), 547, 548)
# define BOOST_PP_NODE_550(p) BOOST_PP_IIF(p(550), BOOST_PP_NODE_549, BOOST_PP_NODE_551)
# define BOOST_PP_NODE_549(p) BOOST_PP_IIF(p(549), 549, 550)
# define BOOST_PP_NODE_551(p) BOOST_PP_IIF(p(551), 551, 552)
# define BOOST_PP_NODE_556(p) BOOST_PP_IIF(p(556), BOOST_PP_NODE_554, BOOST_PP_NODE_558)
# define BOOST_PP_NODE_554(p) BOOST_PP_IIF(p(554), BOOST_PP_NODE_553, BOOST_PP_NODE_555)
# define BOOST_PP_NODE_553(p) BOOST_PP_IIF(p(553), 553, 554)
# define BOOST_PP_NODE_555(p) BOOST_PP_IIF(p(555), 555, 556)
# define BOOST_PP_NODE_558(p) BOOST_PP_IIF(p(558), BOOST_PP_NODE_557, BOOST_PP_NODE_559)
# define BOOST_PP_NODE_557(p) BOOST_PP_IIF(p(557), 557, 558)
# define BOOST_PP_NODE_559(p) BOOST_PP_IIF(p(559), 559, 560)
# define BOOST_PP_NODE_568(p) BOOST_PP_IIF(p(568), BOOST_PP_NODE_564, BOOST_PP_NODE_572)
# define BOOST_PP_NODE_564(p) BOOST_PP_IIF(p(564), BOOST_PP_NODE_562, BOOST_PP_NODE_566)
# define BOOST_PP_NODE_562(p) BOOST_PP_IIF(p(562), BOOST_PP_NODE_561, BOOST_PP_NODE_563)
# define BOOST_PP_NODE_561(p) BOOST_PP_IIF(p(561), 561, 562)
# define BOOST_PP_NODE_563(p) BOOST_PP_IIF(p(563), 563, 564)
# define BOOST_PP_NODE_566(p) BOOST_PP_IIF(p(566), BOOST_PP_NODE_565, BOOST_PP_NODE_567)
# define BOOST_PP_NODE_565(p) BOOST_PP_IIF(p(565), 565, 566)
# define BOOST_PP_NODE_567(p) BOOST_PP_IIF(p(567), 567, 568)
# define BOOST_PP_NODE_572(p) BOOST_PP_IIF(p(572), BOOST_PP_NODE_570, BOOST_PP_NODE_574)
# define BOOST_PP_NODE_570(p) BOOST_PP_IIF(p(570), BOOST_PP_NODE_569, BOOST_PP_NODE_571)
# define BOOST_PP_NODE_569(p) BOOST_PP_IIF(p(569), 569, 570)
# define BOOST_PP_NODE_571(p) BOOST_PP_IIF(p(571), 571, 572)
# define BOOST_PP_NODE_574(p) BOOST_PP_IIF(p(574), BOOST_PP_NODE_573, BOOST_PP_NODE_575)
# define BOOST_PP_NODE_573(p) BOOST_PP_IIF(p(573), 573, 574)
# define BOOST_PP_NODE_575(p) BOOST_PP_IIF(p(575), 575, 576)
# define BOOST_PP_NODE_608(p) BOOST_PP_IIF(p(608), BOOST_PP_NODE_592, BOOST_PP_NODE_624)
# define BOOST_PP_NODE_592(p) BOOST_PP_IIF(p(592), BOOST_PP_NODE_584, BOOST_PP_NODE_600)
# define BOOST_PP_NODE_584(p) BOOST_PP_IIF(p(584), BOOST_PP_NODE_580, BOOST_PP_NODE_588)
# define BOOST_PP_NODE_580(p) BOOST_PP_IIF(p(580), BOOST_PP_NODE_578, BOOST_PP_NODE_582)
# define BOOST_PP_NODE_578(p) BOOST_PP_IIF(p(578), BOOST_PP_NODE_577, BOOST_PP_NODE_579)
# define BOOST_PP_NODE_577(p) BOOST_PP_IIF(p(577), 577, 578)
# define BOOST_PP_NODE_579(p) BOOST_PP_IIF(p(579), 579, 580)
# define BOOST_PP_NODE_582(p) BOOST_PP_IIF(p(582), BOOST_PP_NODE_581, BOOST_PP_NODE_583)
# define BOOST_PP_NODE_581(p) BOOST_PP_IIF(p(581), 581, 582)
# define BOOST_PP_NODE_583(p) BOOST_PP_IIF(p(583), 583, 584)
# define BOOST_PP_NODE_588(p) BOOST_PP_IIF(p(588), BOOST_PP_NODE_586, BOOST_PP_NODE_590)
# define BOOST_PP_NODE_586(p) BOOST_PP_IIF(p(586), BOOST_PP_NODE_585, BOOST_PP_NODE_587)
# define BOOST_PP_NODE_585(p) BOOST_PP_IIF(p(585), 585, 586)
# define BOOST_PP_NODE_587(p) BOOST_PP_IIF(p(587), 587, 588)
# define BOOST_PP_NODE_590(p) BOOST_PP_IIF(p(590), BOOST_PP_NODE_589, BOOST_PP_NODE_591)
# define BOOST_PP_NODE_589(p) BOOST_PP_IIF(p(589), 589, 590)
# define BOOST_PP_NODE_591(p) BOOST_PP_IIF(p(591), 591, 592)
# define BOOST_PP_NODE_600(p) BOOST_PP_IIF(p(600), BOOST_PP_NODE_596, BOOST_PP_NODE_604)
# define BOOST_PP_NODE_596(p) BOOST_PP_IIF(p(596), BOOST_PP_NODE_594, BOOST_PP_NODE_598)
# define BOOST_PP_NODE_594(p) BOOST_PP_IIF(p(594), BOOST_PP_NODE_593, BOOST_PP_NODE_595)
# define BOOST_PP_NODE_593(p) BOOST_PP_IIF(p(593), 593, 594)
# define BOOST_PP_NODE_595(p) BOOST_PP_IIF(p(595), 595, 596)
# define BOOST_PP_NODE_598(p) BOOST_PP_IIF(p(598), BOOST_PP_NODE_597, BOOST_PP_NODE_599)
# define BOOST_PP_NODE_597(p) BOOST_PP_IIF(p(597), 597, 598)
# define BOOST_PP_NODE_599(p) BOOST_PP_IIF(p(599), 599, 600)
# define BOOST_PP_NODE_604(p) BOOST_PP_IIF(p(604), BOOST_PP_NODE_602, BOOST_PP_NODE_606)
# define BOOST_PP_NODE_602(p) BOOST_PP_IIF(p(602), BOOST_PP_NODE_601, BOOST_PP_NODE_603)
# define BOOST_PP_NODE_601(p) BOOST_PP_IIF(p(601), 601, 602)
# define BOOST_PP_NODE_603(p) BOOST_PP_IIF(p(603), 603, 604)
# define BOOST_PP_NODE_606(p) BOOST_PP_IIF(p(606), BOOST_PP_NODE_605, BOOST_PP_NODE_607)
# define BOOST_PP_NODE_605(p) BOOST_PP_IIF(p(605), 605, 606)
# define BOOST_PP_NODE_607(p) BOOST_PP_IIF(p(607), 607, 608)
# define BOOST_PP_NODE_624(p) BOOST_PP_IIF(p(624), BOOST_PP_NODE_616, BOOST_PP_NODE_632)
# define BOOST_PP_NODE_616(p) BOOST_PP_IIF(p(616), BOOST_PP_NODE_612, BOOST_PP_NODE_620)
# define BOOST_PP_NODE_612(p) BOOST_PP_IIF(p(612), BOOST_PP_NODE_610, BOOST_PP_NODE_614)
# define BOOST_PP_NODE_610(p) BOOST_PP_IIF(p(610), BOOST_PP_NODE_609, BOOST_PP_NODE_611)
# define BOOST_PP_NODE_609(p) BOOST_PP_IIF(p(609), 609, 610)
# define BOOST_PP_NODE_611(p) BOOST_PP_IIF(p(611), 611, 612)
# define BOOST_PP_NODE_614(p) BOOST_PP_IIF(p(614), BOOST_PP_NODE_613, BOOST_PP_NODE_615)
# define BOOST_PP_NODE_613(p) BOOST_PP_IIF(p(613), 613, 614)
# define BOOST_PP_NODE_615(p) BOOST_PP_IIF(p(615), 615, 616)
# define BOOST_PP_NODE_620(p) BOOST_PP_IIF(p(620), BOOST_PP_NODE_618, BOOST_PP_NODE_622)
# define BOOST_PP_NODE_618(p) BOOST_PP_IIF(p(618), BOOST_PP_NODE_617, BOOST_PP_NODE_619)
# define BOOST_PP_NODE_617(p) BOOST_PP_IIF(p(617), 617, 618)
# define BOOST_PP_NODE_619(p) BOOST_PP_IIF(p(619), 619, 620)
# define BOOST_PP_NODE_622(p) BOOST_PP_IIF(p(622), BOOST_PP_NODE_621, BOOST_PP_NODE_623)
# define BOOST_PP_NODE_621(p) BOOST_PP_IIF(p(621), 621, 622)
# define BOOST_PP_NODE_623(p) BOOST_PP_IIF(p(623), 623, 624)
# define BOOST_PP_NODE_632(p) BOOST_PP_IIF(p(632), BOOST_PP_NODE_628, BOOST_PP_NODE_636)
# define BOOST_PP_NODE_628(p) BOOST_PP_IIF(p(628), BOOST_PP_NODE_626, BOOST_PP_NODE_630)
# define BOOST_PP_NODE_626(p) BOOST_PP_IIF(p(626), BOOST_PP_NODE_625, BOOST_PP_NODE_627)
# define BOOST_PP_NODE_625(p) BOOST_PP_IIF(p(625), 625, 626)
# define BOOST_PP_NODE_627(p) BOOST_PP_IIF(p(627), 627, 628)
# define BOOST_PP_NODE_630(p) BOOST_PP_IIF(p(630), BOOST_PP_NODE_629, BOOST_PP_NODE_631)
# define BOOST_PP_NODE_629(p) BOOST_PP_IIF(p(629), 629, 630)
# define BOOST_PP_NODE_631(p) BOOST_PP_IIF(p(631), 631, 632)
# define BOOST_PP_NODE_636(p) BOOST_PP_IIF(p(636), BOOST_PP_NODE_634, BOOST_PP_NODE_638)
# define BOOST_PP_NODE_634(p) BOOST_PP_IIF(p(634), BOOST_PP_NODE_633, BOOST_PP_NODE_635)
# define BOOST_PP_NODE_633(p) BOOST_PP_IIF(p(633), 633, 634)
# define BOOST_PP_NODE_635(p) BOOST_PP_IIF(p(635), 635, 636)
# define BOOST_PP_NODE_638(p) BOOST_PP_IIF(p(638), BOOST_PP_NODE_637, BOOST_PP_NODE_639)
# define BOOST_PP_NODE_637(p) BOOST_PP_IIF(p(637), 637, 638)
# define BOOST_PP_NODE_639(p) BOOST_PP_IIF(p(639), 639, 640)
# define BOOST_PP_NODE_704(p) BOOST_PP_IIF(p(704), BOOST_PP_NODE_672, BOOST_PP_NODE_736)
# define BOOST_PP_NODE_672(p) BOOST_PP_IIF(p(672), BOOST_PP_NODE_656, BOOST_PP_NODE_688)
# define BOOST_PP_NODE_656(p) BOOST_PP_IIF(p(656), BOOST_PP_NODE_648, BOOST_PP_NODE_664)
# define BOOST_PP_NODE_648(p) BOOST_PP_IIF(p(648), BOOST_PP_NODE_644, BOOST_PP_NODE_652)
# define BOOST_PP_NODE_644(p) BOOST_PP_IIF(p(644), BOOST_PP_NODE_642, BOOST_PP_NODE_646)
# define BOOST_PP_NODE_642(p) BOOST_PP_IIF(p(642), BOOST_PP_NODE_641, BOOST_PP_NODE_643)
# define BOOST_PP_NODE_641(p) BOOST_PP_IIF(p(641), 641, 642)
# define BOOST_PP_NODE_643(p) BOOST_PP_IIF(p(643), 643, 644)
# define BOOST_PP_NODE_646(p) BOOST_PP_IIF(p(646), BOOST_PP_NODE_645, BOOST_PP_NODE_647)
# define BOOST_PP_NODE_645(p) BOOST_PP_IIF(p(645), 645, 646)
# define BOOST_PP_NODE_647(p) BOOST_PP_IIF(p(647), 647, 648)
# define BOOST_PP_NODE_652(p) BOOST_PP_IIF(p(652), BOOST_PP_NODE_650, BOOST_PP_NODE_654)
# define BOOST_PP_NODE_650(p) BOOST_PP_IIF(p(650), BOOST_PP_NODE_649, BOOST_PP_NODE_651)
# define BOOST_PP_NODE_649(p) BOOST_PP_IIF(p(649), 649, 650)
# define BOOST_PP_NODE_651(p) BOOST_PP_IIF(p(651), 651, 652)
# define BOOST_PP_NODE_654(p) BOOST_PP_IIF(p(654), BOOST_PP_NODE_653, BOOST_PP_NODE_655)
# define BOOST_PP_NODE_653(p) BOOST_PP_IIF(p(653), 653, 654)
# define BOOST_PP_NODE_655(p) BOOST_PP_IIF(p(655), 655, 656)
# define BOOST_PP_NODE_664(p) BOOST_PP_IIF(p(664), BOOST_PP_NODE_660, BOOST_PP_NODE_668)
# define BOOST_PP_NODE_660(p) BOOST_PP_IIF(p(660), BOOST_PP_NODE_658, BOOST_PP_NODE_662)
# define BOOST_PP_NODE_658(p) BOOST_PP_IIF(p(658), BOOST_PP_NODE_657, BOOST_PP_NODE_659)
# define BOOST_PP_NODE_657(p) BOOST_PP_IIF(p(657), 657, 658)
# define BOOST_PP_NODE_659(p) BOOST_PP_IIF(p(659), 659, 660)
# define BOOST_PP_NODE_662(p) BOOST_PP_IIF(p(662), BOOST_PP_NODE_661, BOOST_PP_NODE_663)
# define BOOST_PP_NODE_661(p) BOOST_PP_IIF(p(661), 661, 662)
# define BOOST_PP_NODE_663(p) BOOST_PP_IIF(p(663), 663, 664)
# define BOOST_PP_NODE_668(p) BOOST_PP_IIF(p(668), BOOST_PP_NODE_666, BOOST_PP_NODE_670)
# define BOOST_PP_NODE_666(p) BOOST_PP_IIF(p(666), BOOST_PP_NODE_665, BOOST_PP_NODE_667)
# define BOOST_PP_NODE_665(p) BOOST_PP_IIF(p(665), 665, 666)
# define BOOST_PP_NODE_667(p) BOOST_PP_IIF(p(667), 667, 668)
# define BOOST_PP_NODE_670(p) BOOST_PP_IIF(p(670), BOOST_PP_NODE_669, BOOST_PP_NODE_671)
# define BOOST_PP_NODE_669(p) BOOST_PP_IIF(p(669), 669, 670)
# define BOOST_PP_NODE_671(p) BOOST_PP_IIF(p(671), 671, 672)
# define BOOST_PP_NODE_688(p) BOOST_PP_IIF(p(688), BOOST_PP_NODE_680, BOOST_PP_NODE_696)
# define BOOST_PP_NODE_680(p) BOOST_PP_IIF(p(680), BOOST_PP_NODE_676, BOOST_PP_NODE_684)
# define BOOST_PP_NODE_676(p) BOOST_PP_IIF(p(676), BOOST_PP_NODE_674, BOOST_PP_NODE_678)
# define BOOST_PP_NODE_674(p) BOOST_PP_IIF(p(674), BOOST_PP_NODE_673, BOOST_PP_NODE_675)
# define BOOST_PP_NODE_673(p) BOOST_PP_IIF(p(673), 673, 674)
# define BOOST_PP_NODE_675(p) BOOST_PP_IIF(p(675), 675, 676)
# define BOOST_PP_NODE_678(p) BOOST_PP_IIF(p(678), BOOST_PP_NODE_677, BOOST_PP_NODE_679)
# define BOOST_PP_NODE_677(p) BOOST_PP_IIF(p(677), 677, 678)
# define BOOST_PP_NODE_679(p) BOOST_PP_IIF(p(679), 679, 680)
# define BOOST_PP_NODE_684(p) BOOST_PP_IIF(p(684), BOOST_PP_NODE_682, BOOST_PP_NODE_686)
# define BOOST_PP_NODE_682(p) BOOST_PP_IIF(p(682), BOOST_PP_NODE_681, BOOST_PP_NODE_683)
# define BOOST_PP_NODE_681(p) BOOST_PP_IIF(p(681), 681, 682)
# define BOOST_PP_NODE_683(p) BOOST_PP_IIF(p(683), 683, 684)
# define BOOST_PP_NODE_686(p) BOOST_PP_IIF(p(686), BOOST_PP_NODE_685, BOOST_PP_NODE_687)
# define BOOST_PP_NODE_685(p) BOOST_PP_IIF(p(685), 685, 686)
# define BOOST_PP_NODE_687(p) BOOST_PP_IIF(p(687), 687, 688)
# define BOOST_PP_NODE_696(p) BOOST_PP_IIF(p(696), BOOST_PP_NODE_692, BOOST_PP_NODE_700)
# define BOOST_PP_NODE_692(p) BOOST_PP_IIF(p(692), BOOST_PP_NODE_690, BOOST_PP_NODE_694)
# define BOOST_PP_NODE_690(p) BOOST_PP_IIF(p(690), BOOST_PP_NODE_689, BOOST_PP_NODE_691)
# define BOOST_PP_NODE_689(p) BOOST_PP_IIF(p(689), 689, 690)
# define BOOST_PP_NODE_691(p) BOOST_PP_IIF(p(691), 691, 692)
# define BOOST_PP_NODE_694(p) BOOST_PP_IIF(p(694), BOOST_PP_NODE_693, BOOST_PP_NODE_695)
# define BOOST_PP_NODE_693(p) BOOST_PP_IIF(p(693), 693, 694)
# define BOOST_PP_NODE_695(p) BOOST_PP_IIF(p(695), 695, 696)
# define BOOST_PP_NODE_700(p) BOOST_PP_IIF(p(700), BOOST_PP_NODE_698, BOOST_PP_NODE_702)
# define BOOST_PP_NODE_698(p) BOOST_PP_IIF(p(698), BOOST_PP_NODE_697, BOOST_PP_NODE_699)
# define BOOST_PP_NODE_697(p) BOOST_PP_IIF(p(697), 697, 698)
# define BOOST_PP_NODE_699(p) BOOST_PP_IIF(p(699), 699, 700)
# define BOOST_PP_NODE_702(p) BOOST_PP_IIF(p(702), BOOST_PP_NODE_701, BOOST_PP_NODE_703)
# define BOOST_PP_NODE_701(p) BOOST_PP_IIF(p(701), 701, 702)
# define BOOST_PP_NODE_703(p) BOOST_PP_IIF(p(703), 703, 704)
# define BOOST_PP_NODE_736(p) BOOST_PP_IIF(p(736), BOOST_PP_NODE_720, BOOST_PP_NODE_752)
# define BOOST_PP_NODE_720(p) BOOST_PP_IIF(p(720), BOOST_PP_NODE_712, BOOST_PP_NODE_728)
# define BOOST_PP_NODE_712(p) BOOST_PP_IIF(p(712), BOOST_PP_NODE_708, BOOST_PP_NODE_716)
# define BOOST_PP_NODE_708(p) BOOST_PP_IIF(p(708), BOOST_PP_NODE_706, BOOST_PP_NODE_710)
# define BOOST_PP_NODE_706(p) BOOST_PP_IIF(p(706), BOOST_PP_NODE_705, BOOST_PP_NODE_707)
# define BOOST_PP_NODE_705(p) BOOST_PP_IIF(p(705), 705, 706)
# define BOOST_PP_NODE_707(p) BOOST_PP_IIF(p(707), 707, 708)
# define BOOST_PP_NODE_710(p) BOOST_PP_IIF(p(710), BOOST_PP_NODE_709, BOOST_PP_NODE_711)
# define BOOST_PP_NODE_709(p) BOOST_PP_IIF(p(709), 709, 710)
# define BOOST_PP_NODE_711(p) BOOST_PP_IIF(p(711), 711, 712)
# define BOOST_PP_NODE_716(p) BOOST_PP_IIF(p(716), BOOST_PP_NODE_714, BOOST_PP_NODE_718)
# define BOOST_PP_NODE_714(p) BOOST_PP_IIF(p(714), BOOST_PP_NODE_713, BOOST_PP_NODE_715)
# define BOOST_PP_NODE_713(p) BOOST_PP_IIF(p(713), 713, 714)
# define BOOST_PP_NODE_715(p) BOOST_PP_IIF(p(715), 715, 716)
# define BOOST_PP_NODE_718(p) BOOST_PP_IIF(p(718), BOOST_PP_NODE_717, BOOST_PP_NODE_719)
# define BOOST_PP_NODE_717(p) BOOST_PP_IIF(p(717), 717, 718)
# define BOOST_PP_NODE_719(p) BOOST_PP_IIF(p(719), 719, 720)
# define BOOST_PP_NODE_728(p) BOOST_PP_IIF(p(728), BOOST_PP_NODE_724, BOOST_PP_NODE_732)
# define BOOST_PP_NODE_724(p) BOOST_PP_IIF(p(724), BOOST_PP_NODE_722, BOOST_PP_NODE_726)
# define BOOST_PP_NODE_722(p) BOOST_PP_IIF(p(722), BOOST_PP_NODE_721, BOOST_PP_NODE_723)
# define BOOST_PP_NODE_721(p) BOOST_PP_IIF(p(721), 721, 722)
# define BOOST_PP_NODE_723(p) BOOST_PP_IIF(p(723), 723, 724)
# define BOOST_PP_NODE_726(p) BOOST_PP_IIF(p(726), BOOST_PP_NODE_725, BOOST_PP_NODE_727)
# define BOOST_PP_NODE_725(p) BOOST_PP_IIF(p(725), 725, 726)
# define BOOST_PP_NODE_727(p) BOOST_PP_IIF(p(727), 727, 728)
# define BOOST_PP_NODE_732(p) BOOST_PP_IIF(p(732), BOOST_PP_NODE_730, BOOST_PP_NODE_734)
# define BOOST_PP_NODE_730(p) BOOST_PP_IIF(p(730), BOOST_PP_NODE_729, BOOST_PP_NODE_731)
# define BOOST_PP_NODE_729(p) BOOST_PP_IIF(p(729), 729, 730)
# define BOOST_PP_NODE_731(p) BOOST_PP_IIF(p(731), 731, 732)
# define BOOST_PP_NODE_734(p) BOOST_PP_IIF(p(734), BOOST_PP_NODE_733, BOOST_PP_NODE_735)
# define BOOST_PP_NODE_733(p) BOOST_PP_IIF(p(733), 733, 734)
# define BOOST_PP_NODE_735(p) BOOST_PP_IIF(p(735), 735, 736)
# define BOOST_PP_NODE_752(p) BOOST_PP_IIF(p(752), BOOST_PP_NODE_744, BOOST_PP_NODE_760)
# define BOOST_PP_NODE_744(p) BOOST_PP_IIF(p(744), BOOST_PP_NODE_740, BOOST_PP_NODE_748)
# define BOOST_PP_NODE_740(p) BOOST_PP_IIF(p(740), BOOST_PP_NODE_738, BOOST_PP_NODE_742)
# define BOOST_PP_NODE_738(p) BOOST_PP_IIF(p(738), BOOST_PP_NODE_737, BOOST_PP_NODE_739)
# define BOOST_PP_NODE_737(p) BOOST_PP_IIF(p(737), 737, 738)
# define BOOST_PP_NODE_739(p) BOOST_PP_IIF(p(739), 739, 740)
# define BOOST_PP_NODE_742(p) BOOST_PP_IIF(p(742), BOOST_PP_NODE_741, BOOST_PP_NODE_743)
# define BOOST_PP_NODE_741(p) BOOST_PP_IIF(p(741), 741, 742)
# define BOOST_PP_NODE_743(p) BOOST_PP_IIF(p(743), 743, 744)
# define BOOST_PP_NODE_748(p) BOOST_PP_IIF(p(748), BOOST_PP_NODE_746, BOOST_PP_NODE_750)
# define BOOST_PP_NODE_746(p) BOOST_PP_IIF(p(746), BOOST_PP_NODE_745, BOOST_PP_NODE_747)
# define BOOST_PP_NODE_745(p) BOOST_PP_IIF(p(745), 745, 746)
# define BOOST_PP_NODE_747(p) BOOST_PP_IIF(p(747), 747, 748)
# define BOOST_PP_NODE_750(p) BOOST_PP_IIF(p(750), BOOST_PP_NODE_749, BOOST_PP_NODE_751)
# define BOOST_PP_NODE_749(p) BOOST_PP_IIF(p(749), 749, 750)
# define BOOST_PP_NODE_751(p) BOOST_PP_IIF(p(751), 751, 752)
# define BOOST_PP_NODE_760(p) BOOST_PP_IIF(p(760), BOOST_PP_NODE_756, BOOST_PP_NODE_764)
# define BOOST_PP_NODE_756(p) BOOST_PP_IIF(p(756), BOOST_PP_NODE_754, BOOST_PP_NODE_758)
# define BOOST_PP_NODE_754(p) BOOST_PP_IIF(p(754), BOOST_PP_NODE_753, BOOST_PP_NODE_755)
# define BOOST_PP_NODE_753(p) BOOST_PP_IIF(p(753), 753, 754)
# define BOOST_PP_NODE_755(p) BOOST_PP_IIF(p(755), 755, 756)
# define BOOST_PP_NODE_758(p) BOOST_PP_IIF(p(758), BOOST_PP_NODE_757, BOOST_PP_NODE_759)
# define BOOST_PP_NODE_757(p) BOOST_PP_IIF(p(757), 757, 758)
# define BOOST_PP_NODE_759(p) BOOST_PP_IIF(p(759), 759, 760)
# define BOOST_PP_NODE_764(p) BOOST_PP_IIF(p(764), BOOST_PP_NODE_762, BOOST_PP_NODE_766)
# define BOOST_PP_NODE_762(p) BOOST_PP_IIF(p(762), BOOST_PP_NODE_761, BOOST_PP_NODE_763)
# define BOOST_PP_NODE_761(p) BOOST_PP_IIF(p(761), 761, 762)
# define BOOST_PP_NODE_763(p) BOOST_PP_IIF(p(763), 763, 764)
# define BOOST_PP_NODE_766(p) BOOST_PP_IIF(p(766), BOOST_PP_NODE_765, BOOST_PP_NODE_767)
# define BOOST_PP_NODE_765(p) BOOST_PP_IIF(p(765), 765, 766)
# define BOOST_PP_NODE_767(p) BOOST_PP_IIF(p(767), 767, 768)
# define BOOST_PP_NODE_896(p) BOOST_PP_IIF(p(896), BOOST_PP_NODE_832, BOOST_PP_NODE_960)
# define BOOST_PP_NODE_832(p) BOOST_PP_IIF(p(832), BOOST_PP_NODE_800, BOOST_PP_NODE_864)
# define BOOST_PP_NODE_800(p) BOOST_PP_IIF(p(800), BOOST_PP_NODE_784, BOOST_PP_NODE_816)
# define BOOST_PP_NODE_784(p) BOOST_PP_IIF(p(784), BOOST_PP_NODE_776, BOOST_PP_NODE_792)
# define BOOST_PP_NODE_776(p) BOOST_PP_IIF(p(776), BOOST_PP_NODE_772, BOOST_PP_NODE_780)
# define BOOST_PP_NODE_772(p) BOOST_PP_IIF(p(772), BOOST_PP_NODE_770, BOOST_PP_NODE_774)
# define BOOST_PP_NODE_770(p) BOOST_PP_IIF(p(770), BOOST_PP_NODE_769, BOOST_PP_NODE_771)
# define BOOST_PP_NODE_769(p) BOOST_PP_IIF(p(769), 769, 770)
# define BOOST_PP_NODE_771(p) BOOST_PP_IIF(p(771), 771, 772)
# define BOOST_PP_NODE_774(p) BOOST_PP_IIF(p(774), BOOST_PP_NODE_773, BOOST_PP_NODE_775)
# define BOOST_PP_NODE_773(p) BOOST_PP_IIF(p(773), 773, 774)
# define BOOST_PP_NODE_775(p) BOOST_PP_IIF(p(775), 775, 776)
# define BOOST_PP_NODE_780(p) BOOST_PP_IIF(p(780), BOOST_PP_NODE_778, BOOST_PP_NODE_782)
# define BOOST_PP_NODE_778(p) BOOST_PP_IIF(p(778), BOOST_PP_NODE_777, BOOST_PP_NODE_779)
# define BOOST_PP_NODE_777(p) BOOST_PP_IIF(p(777), 777, 778)
# define BOOST_PP_NODE_779(p) BOOST_PP_IIF(p(779), 779, 780)
# define BOOST_PP_NODE_782(p) BOOST_PP_IIF(p(782), BOOST_PP_NODE_781, BOOST_PP_NODE_783)
# define BOOST_PP_NODE_781(p) BOOST_PP_IIF(p(781), 781, 782)
# define BOOST_PP_NODE_783(p) BOOST_PP_IIF(p(783), 783, 784)
# define BOOST_PP_NODE_792(p) BOOST_PP_IIF(p(792), BOOST_PP_NODE_788, BOOST_PP_NODE_796)
# define BOOST_PP_NODE_788(p) BOOST_PP_IIF(p(788), BOOST_PP_NODE_786, BOOST_PP_NODE_790)
# define BOOST_PP_NODE_786(p) BOOST_PP_IIF(p(786), BOOST_PP_NODE_785, BOOST_PP_NODE_787)
# define BOOST_PP_NODE_785(p) BOOST_PP_IIF(p(785), 785, 786)
# define BOOST_PP_NODE_787(p) BOOST_PP_IIF(p(787), 787, 788)
# define BOOST_PP_NODE_790(p) BOOST_PP_IIF(p(790), BOOST_PP_NODE_789, BOOST_PP_NODE_791)
# define BOOST_PP_NODE_789(p) BOOST_PP_IIF(p(789), 789, 790)
# define BOOST_PP_NODE_791(p) BOOST_PP_IIF(p(791), 791, 792)
# define BOOST_PP_NODE_796(p) BOOST_PP_IIF(p(796), BOOST_PP_NODE_794, BOOST_PP_NODE_798)
# define BOOST_PP_NODE_794(p) BOOST_PP_IIF(p(794), BOOST_PP_NODE_793, BOOST_PP_NODE_795)
# define BOOST_PP_NODE_793(p) BOOST_PP_IIF(p(793), 793, 794)
# define BOOST_PP_NODE_795(p) BOOST_PP_IIF(p(795), 795, 796)
# define BOOST_PP_NODE_798(p) BOOST_PP_IIF(p(798), BOOST_PP_NODE_797, BOOST_PP_NODE_799)
# define BOOST_PP_NODE_797(p) BOOST_PP_IIF(p(797), 797, 798)
# define BOOST_PP_NODE_799(p) BOOST_PP_IIF(p(799), 799, 800)
# define BOOST_PP_NODE_816(p) BOOST_PP_IIF(p(816), BOOST_PP_NODE_808, BOOST_PP_NODE_824)
# define BOOST_PP_NODE_808(p) BOOST_PP_IIF(p(808), BOOST_PP_NODE_804, BOOST_PP_NODE_812)
# define BOOST_PP_NODE_804(p) BOOST_PP_IIF(p(804), BOOST_PP_NODE_802, BOOST_PP_NODE_806)
# define BOOST_PP_NODE_802(p) BOOST_PP_IIF(p(802), BOOST_PP_NODE_801, BOOST_PP_NODE_803)
# define BOOST_PP_NODE_801(p) BOOST_PP_IIF(p(801), 801, 802)
# define BOOST_PP_NODE_803(p) BOOST_PP_IIF(p(803), 803, 804)
# define BOOST_PP_NODE_806(p) BOOST_PP_IIF(p(806), BOOST_PP_NODE_805, BOOST_PP_NODE_807)
# define BOOST_PP_NODE_805(p) BOOST_PP_IIF(p(805), 805, 806)
# define BOOST_PP_NODE_807(p) BOOST_PP_IIF(p(807), 807, 808)
# define BOOST_PP_NODE_812(p) BOOST_PP_IIF(p(812), BOOST_PP_NODE_810, BOOST_PP_NODE_814)
# define BOOST_PP_NODE_810(p) BOOST_PP_IIF(p(810), BOOST_PP_NODE_809, BOOST_PP_NODE_811)
# define BOOST_PP_NODE_809(p) BOOST_PP_IIF(p(809), 809, 810)
# define BOOST_PP_NODE_811(p) BOOST_PP_IIF(p(811), 811, 812)
# define BOOST_PP_NODE_814(p) BOOST_PP_IIF(p(814), BOOST_PP_NODE_813, BOOST_PP_NODE_815)
# define BOOST_PP_NODE_813(p) BOOST_PP_IIF(p(813), 813, 814)
# define BOOST_PP_NODE_815(p) BOOST_PP_IIF(p(815), 815, 816)
# define BOOST_PP_NODE_824(p) BOOST_PP_IIF(p(824), BOOST_PP_NODE_820, BOOST_PP_NODE_828)
# define BOOST_PP_NODE_820(p) BOOST_PP_IIF(p(820), BOOST_PP_NODE_818, BOOST_PP_NODE_822)
# define BOOST_PP_NODE_818(p) BOOST_PP_IIF(p(818), BOOST_PP_NODE_817, BOOST_PP_NODE_819)
# define BOOST_PP_NODE_817(p) BOOST_PP_IIF(p(817), 817, 818)
# define BOOST_PP_NODE_819(p) BOOST_PP_IIF(p(819), 819, 820)
# define BOOST_PP_NODE_822(p) BOOST_PP_IIF(p(822), BOOST_PP_NODE_821, BOOST_PP_NODE_823)
# define BOOST_PP_NODE_821(p) BOOST_PP_IIF(p(821), 821, 822)
# define BOOST_PP_NODE_823(p) BOOST_PP_IIF(p(823), 823, 824)
# define BOOST_PP_NODE_828(p) BOOST_PP_IIF(p(828), BOOST_PP_NODE_826, BOOST_PP_NODE_830)
# define BOOST_PP_NODE_826(p) BOOST_PP_IIF(p(826), BOOST_PP_NODE_825, BOOST_PP_NODE_827)
# define BOOST_PP_NODE_825(p) BOOST_PP_IIF(p(825), 825, 826)
# define BOOST_PP_NODE_827(p) BOOST_PP_IIF(p(827), 827, 828)
# define BOOST_PP_NODE_830(p) BOOST_PP_IIF(p(830), BOOST_PP_NODE_829, BOOST_PP_NODE_831)
# define BOOST_PP_NODE_829(p) BOOST_PP_IIF(p(829), 829, 830)
# define BOOST_PP_NODE_831(p) BOOST_PP_IIF(p(831), 831, 832)
# define BOOST_PP_NODE_864(p) BOOST_PP_IIF(p(864), BOOST_PP_NODE_848, BOOST_PP_NODE_880)
# define BOOST_PP_NODE_848(p) BOOST_PP_IIF(p(848), BOOST_PP_NODE_840, BOOST_PP_NODE_856)
# define BOOST_PP_NODE_840(p) BOOST_PP_IIF(p(840), BOOST_PP_NODE_836, BOOST_PP_NODE_844)
# define BOOST_PP_NODE_836(p) BOOST_PP_IIF(p(836), BOOST_PP_NODE_834, BOOST_PP_NODE_838)
# define BOOST_PP_NODE_834(p) BOOST_PP_IIF(p(834), BOOST_PP_NODE_833, BOOST_PP_NODE_835)
# define BOOST_PP_NODE_833(p) BOOST_PP_IIF(p(833), 833, 834)
# define BOOST_PP_NODE_835(p) BOOST_PP_IIF(p(835), 835, 836)
# define BOOST_PP_NODE_838(p) BOOST_PP_IIF(p(838), BOOST_PP_NODE_837, BOOST_PP_NODE_839)
# define BOOST_PP_NODE_837(p) BOOST_PP_IIF(p(837), 837, 838)
# define BOOST_PP_NODE_839(p) BOOST_PP_IIF(p(839), 839, 840)
# define BOOST_PP_NODE_844(p) BOOST_PP_IIF(p(844), BOOST_PP_NODE_842, BOOST_PP_NODE_846)
# define BOOST_PP_NODE_842(p) BOOST_PP_IIF(p(842), BOOST_PP_NODE_841, BOOST_PP_NODE_843)
# define BOOST_PP_NODE_841(p) BOOST_PP_IIF(p(841), 841, 842)
# define BOOST_PP_NODE_843(p) BOOST_PP_IIF(p(843), 843, 844)
# define BOOST_PP_NODE_846(p) BOOST_PP_IIF(p(846), BOOST_PP_NODE_845, BOOST_PP_NODE_847)
# define BOOST_PP_NODE_845(p) BOOST_PP_IIF(p(845), 845, 846)
# define BOOST_PP_NODE_847(p) BOOST_PP_IIF(p(847), 847, 848)
# define BOOST_PP_NODE_856(p) BOOST_PP_IIF(p(856), BOOST_PP_NODE_852, BOOST_PP_NODE_860)
# define BOOST_PP_NODE_852(p) BOOST_PP_IIF(p(852), BOOST_PP_NODE_850, BOOST_PP_NODE_854)
# define BOOST_PP_NODE_850(p) BOOST_PP_IIF(p(850), BOOST_PP_NODE_849, BOOST_PP_NODE_851)
# define BOOST_PP_NODE_849(p) BOOST_PP_IIF(p(849), 849, 850)
# define BOOST_PP_NODE_851(p) BOOST_PP_IIF(p(851), 851, 852)
# define BOOST_PP_NODE_854(p) BOOST_PP_IIF(p(854), BOOST_PP_NODE_853, BOOST_PP_NODE_855)
# define BOOST_PP_NODE_853(p) BOOST_PP_IIF(p(853), 853, 854)
# define BOOST_PP_NODE_855(p) BOOST_PP_IIF(p(855), 855, 856)
# define BOOST_PP_NODE_860(p) BOOST_PP_IIF(p(860), BOOST_PP_NODE_858, BOOST_PP_NODE_862)
# define BOOST_PP_NODE_858(p) BOOST_PP_IIF(p(858), BOOST_PP_NODE_857, BOOST_PP_NODE_859)
# define BOOST_PP_NODE_857(p) BOOST_PP_IIF(p(857), 857, 858)
# define BOOST_PP_NODE_859(p) BOOST_PP_IIF(p(859), 859, 860)
# define BOOST_PP_NODE_862(p) BOOST_PP_IIF(p(862), BOOST_PP_NODE_861, BOOST_PP_NODE_863)
# define BOOST_PP_NODE_861(p) BOOST_PP_IIF(p(861), 861, 862)
# define BOOST_PP_NODE_863(p) BOOST_PP_IIF(p(863), 863, 864)
# define BOOST_PP_NODE_880(p) BOOST_PP_IIF(p(880), BOOST_PP_NODE_872, BOOST_PP_NODE_888)
# define BOOST_PP_NODE_872(p) BOOST_PP_IIF(p(872), BOOST_PP_NODE_868, BOOST_PP_NODE_876)
# define BOOST_PP_NODE_868(p) BOOST_PP_IIF(p(868), BOOST_PP_NODE_866, BOOST_PP_NODE_870)
# define BOOST_PP_NODE_866(p) BOOST_PP_IIF(p(866), BOOST_PP_NODE_865, BOOST_PP_NODE_867)
# define BOOST_PP_NODE_865(p) BOOST_PP_IIF(p(865), 865, 866)
# define BOOST_PP_NODE_867(p) BOOST_PP_IIF(p(867), 867, 868)
# define BOOST_PP_NODE_870(p) BOOST_PP_IIF(p(870), BOOST_PP_NODE_869, BOOST_PP_NODE_871)
# define BOOST_PP_NODE_869(p) BOOST_PP_IIF(p(869), 869, 870)
# define BOOST_PP_NODE_871(p) BOOST_PP_IIF(p(871), 871, 872)
# define BOOST_PP_NODE_876(p) BOOST_PP_IIF(p(876), BOOST_PP_NODE_874, BOOST_PP_NODE_878)
# define BOOST_PP_NODE_874(p) BOOST_PP_IIF(p(874), BOOST_PP_NODE_873, BOOST_PP_NODE_875)
# define BOOST_PP_NODE_873(p) BOOST_PP_IIF(p(873), 873, 874)
# define BOOST_PP_NODE_875(p) BOOST_PP_IIF(p(875), 875, 876)
# define BOOST_PP_NODE_878(p) BOOST_PP_IIF(p(878), BOOST_PP_NODE_877, BOOST_PP_NODE_879)
# define BOOST_PP_NODE_877(p) BOOST_PP_IIF(p(877), 877, 878)
# define BOOST_PP_NODE_879(p) BOOST_PP_IIF(p(879), 879, 880)
# define BOOST_PP_NODE_888(p) BOOST_PP_IIF(p(888), BOOST_PP_NODE_884, BOOST_PP_NODE_892)
# define BOOST_PP_NODE_884(p) BOOST_PP_IIF(p(884), BOOST_PP_NODE_882, BOOST_PP_NODE_886)
# define BOOST_PP_NODE_882(p) BOOST_PP_IIF(p(882), BOOST_PP_NODE_881, BOOST_PP_NODE_883)
# define BOOST_PP_NODE_881(p) BOOST_PP_IIF(p(881), 881, 882)
# define BOOST_PP_NODE_883(p) BOOST_PP_IIF(p(883), 883, 884)
# define BOOST_PP_NODE_886(p) BOOST_PP_IIF(p(886), BOOST_PP_NODE_885, BOOST_PP_NODE_887)
# define BOOST_PP_NODE_885(p) BOOST_PP_IIF(p(885), 885, 886)
# define BOOST_PP_NODE_887(p) BOOST_PP_IIF(p(887), 887, 888)
# define BOOST_PP_NODE_892(p) BOOST_PP_IIF(p(892), BOOST_PP_NODE_890, BOOST_PP_NODE_894)
# define BOOST_PP_NODE_890(p) BOOST_PP_IIF(p(890), BOOST_PP_NODE_889, BOOST_PP_NODE_891)
# define BOOST_PP_NODE_889(p) BOOST_PP_IIF(p(889), 889, 890)
# define BOOST_PP_NODE_891(p) BOOST_PP_IIF(p(891), 891, 892)
# define BOOST_PP_NODE_894(p) BOOST_PP_IIF(p(894), BOOST_PP_NODE_893, BOOST_PP_NODE_895)
# define BOOST_PP_NODE_893(p) BOOST_PP_IIF(p(893), 893, 894)
# define BOOST_PP_NODE_895(p) BOOST_PP_IIF(p(895), 895, 896)
# define BOOST_PP_NODE_960(p) BOOST_PP_IIF(p(960), BOOST_PP_NODE_928, BOOST_PP_NODE_992)
# define BOOST_PP_NODE_928(p) BOOST_PP_IIF(p(928), BOOST_PP_NODE_912, BOOST_PP_NODE_944)
# define BOOST_PP_NODE_912(p) BOOST_PP_IIF(p(912), BOOST_PP_NODE_904, BOOST_PP_NODE_920)
# define BOOST_PP_NODE_904(p) BOOST_PP_IIF(p(904), BOOST_PP_NODE_900, BOOST_PP_NODE_908)
# define BOOST_PP_NODE_900(p) BOOST_PP_IIF(p(900), BOOST_PP_NODE_898, BOOST_PP_NODE_902)
# define BOOST_PP_NODE_898(p) BOOST_PP_IIF(p(898), BOOST_PP_NODE_897, BOOST_PP_NODE_899)
# define BOOST_PP_NODE_897(p) BOOST_PP_IIF(p(897), 897, 898)
# define BOOST_PP_NODE_899(p) BOOST_PP_IIF(p(899), 899, 900)
# define BOOST_PP_NODE_902(p) BOOST_PP_IIF(p(902), BOOST_PP_NODE_901, BOOST_PP_NODE_903)
# define BOOST_PP_NODE_901(p) BOOST_PP_IIF(p(901), 901, 902)
# define BOOST_PP_NODE_903(p) BOOST_PP_IIF(p(903), 903, 904)
# define BOOST_PP_NODE_908(p) BOOST_PP_IIF(p(908), BOOST_PP_NODE_906, BOOST_PP_NODE_910)
# define BOOST_PP_NODE_906(p) BOOST_PP_IIF(p(906), BOOST_PP_NODE_905, BOOST_PP_NODE_907)
# define BOOST_PP_NODE_905(p) BOOST_PP_IIF(p(905), 905, 906)
# define BOOST_PP_NODE_907(p) BOOST_PP_IIF(p(907), 907, 908)
# define BOOST_PP_NODE_910(p) BOOST_PP_IIF(p(910), BOOST_PP_NODE_909, BOOST_PP_NODE_911)
# define BOOST_PP_NODE_909(p) BOOST_PP_IIF(p(909), 909, 910)
# define BOOST_PP_NODE_911(p) BOOST_PP_IIF(p(911), 911, 912)
# define BOOST_PP_NODE_920(p) BOOST_PP_IIF(p(920), BOOST_PP_NODE_916, BOOST_PP_NODE_924)
# define BOOST_PP_NODE_916(p) BOOST_PP_IIF(p(916), BOOST_PP_NODE_914, BOOST_PP_NODE_918)
# define BOOST_PP_NODE_914(p) BOOST_PP_IIF(p(914), BOOST_PP_NODE_913, BOOST_PP_NODE_915)
# define BOOST_PP_NODE_913(p) BOOST_PP_IIF(p(913), 913, 914)
# define BOOST_PP_NODE_915(p) BOOST_PP_IIF(p(915), 915, 916)
# define BOOST_PP_NODE_918(p) BOOST_PP_IIF(p(918), BOOST_PP_NODE_917, BOOST_PP_NODE_919)
# define BOOST_PP_NODE_917(p) BOOST_PP_IIF(p(917), 917, 918)
# define BOOST_PP_NODE_919(p) BOOST_PP_IIF(p(919), 919, 920)
# define BOOST_PP_NODE_924(p) BOOST_PP_IIF(p(924), BOOST_PP_NODE_922, BOOST_PP_NODE_926)
# define BOOST_PP_NODE_922(p) BOOST_PP_IIF(p(922), BOOST_PP_NODE_921, BOOST_PP_NODE_923)
# define BOOST_PP_NODE_921(p) BOOST_PP_IIF(p(921), 921, 922)
# define BOOST_PP_NODE_923(p) BOOST_PP_IIF(p(923), 923, 924)
# define BOOST_PP_NODE_926(p) BOOST_PP_IIF(p(926), BOOST_PP_NODE_925, BOOST_PP_NODE_927)
# define BOOST_PP_NODE_925(p) BOOST_PP_IIF(p(925), 925, 926)
# define BOOST_PP_NODE_927(p) BOOST_PP_IIF(p(927), 927, 928)
# define BOOST_PP_NODE_944(p) BOOST_PP_IIF(p(944), BOOST_PP_NODE_936, BOOST_PP_NODE_952)
# define BOOST_PP_NODE_936(p) BOOST_PP_IIF(p(936), BOOST_PP_NODE_932, BOOST_PP_NODE_940)
# define BOOST_PP_NODE_932(p) BOOST_PP_IIF(p(932), BOOST_PP_NODE_930, BOOST_PP_NODE_934)
# define BOOST_PP_NODE_930(p) BOOST_PP_IIF(p(930), BOOST_PP_NODE_929, BOOST_PP_NODE_931)
# define BOOST_PP_NODE_929(p) BOOST_PP_IIF(p(929), 929, 930)
# define BOOST_PP_NODE_931(p) BOOST_PP_IIF(p(931), 931, 932)
# define BOOST_PP_NODE_934(p) BOOST_PP_IIF(p(934), BOOST_PP_NODE_933, BOOST_PP_NODE_935)
# define BOOST_PP_NODE_933(p) BOOST_PP_IIF(p(933), 933, 934)
# define BOOST_PP_NODE_935(p) BOOST_PP_IIF(p(935), 935, 936)
# define BOOST_PP_NODE_940(p) BOOST_PP_IIF(p(940), BOOST_PP_NODE_938, BOOST_PP_NODE_942)
# define BOOST_PP_NODE_938(p) BOOST_PP_IIF(p(938), BOOST_PP_NODE_937, BOOST_PP_NODE_939)
# define BOOST_PP_NODE_937(p) BOOST_PP_IIF(p(937), 937, 938)
# define BOOST_PP_NODE_939(p) BOOST_PP_IIF(p(939), 939, 940)
# define BOOST_PP_NODE_942(p) BOOST_PP_IIF(p(942), BOOST_PP_NODE_941, BOOST_PP_NODE_943)
# define BOOST_PP_NODE_941(p) BOOST_PP_IIF(p(941), 941, 942)
# define BOOST_PP_NODE_943(p) BOOST_PP_IIF(p(943), 943, 944)
# define BOOST_PP_NODE_952(p) BOOST_PP_IIF(p(952), BOOST_PP_NODE_948, BOOST_PP_NODE_956)
# define BOOST_PP_NODE_948(p) BOOST_PP_IIF(p(948), BOOST_PP_NODE_946, BOOST_PP_NODE_950)
# define BOOST_PP_NODE_946(p) BOOST_PP_IIF(p(946), BOOST_PP_NODE_945, BOOST_PP_NODE_947)
# define BOOST_PP_NODE_945(p) BOOST_PP_IIF(p(945), 945, 946)
# define BOOST_PP_NODE_947(p) BOOST_PP_IIF(p(947), 947, 948)
# define BOOST_PP_NODE_950(p) BOOST_PP_IIF(p(950), BOOST_PP_NODE_949, BOOST_PP_NODE_951)
# define BOOST_PP_NODE_949(p) BOOST_PP_IIF(p(949), 949, 950)
# define BOOST_PP_NODE_951(p) BOOST_PP_IIF(p(951), 951, 952)
# define BOOST_PP_NODE_956(p) BOOST_PP_IIF(p(956), BOOST_PP_NODE_954, BOOST_PP_NODE_958)
# define BOOST_PP_NODE_954(p) BOOST_PP_IIF(p(954), BOOST_PP_NODE_953, BOOST_PP_NODE_955)
# define BOOST_PP_NODE_953(p) BOOST_PP_IIF(p(953), 953, 954)
# define BOOST_PP_NODE_955(p) BOOST_PP_IIF(p(955), 955, 956)
# define BOOST_PP_NODE_958(p) BOOST_PP_IIF(p(958), BOOST_PP_NODE_957, BOOST_PP_NODE_959)
# define BOOST_PP_NODE_957(p) BOOST_PP_IIF(p(957), 957, 958)
# define BOOST_PP_NODE_959(p) BOOST_PP_IIF(p(959), 959, 960)
# define BOOST_PP_NODE_992(p) BOOST_PP_IIF(p(992), BOOST_PP_NODE_976, BOOST_PP_NODE_1008)
# define BOOST_PP_NODE_976(p) BOOST_PP_IIF(p(976), BOOST_PP_NODE_968, BOOST_PP_NODE_984)
# define BOOST_PP_NODE_968(p) BOOST_PP_IIF(p(968), BOOST_PP_NODE_964, BOOST_PP_NODE_972)
# define BOOST_PP_NODE_964(p) BOOST_PP_IIF(p(964), BOOST_PP_NODE_962, BOOST_PP_NODE_966)
# define BOOST_PP_NODE_962(p) BOOST_PP_IIF(p(962), BOOST_PP_NODE_961, BOOST_PP_NODE_963)
# define BOOST_PP_NODE_961(p) BOOST_PP_IIF(p(961), 961, 962)
# define BOOST_PP_NODE_963(p) BOOST_PP_IIF(p(963), 963, 964)
# define BOOST_PP_NODE_966(p) BOOST_PP_IIF(p(966), BOOST_PP_NODE_965, BOOST_PP_NODE_967)
# define BOOST_PP_NODE_965(p) BOOST_PP_IIF(p(965), 965, 966)
# define BOOST_PP_NODE_967(p) BOOST_PP_IIF(p(967), 967, 968)
# define BOOST_PP_NODE_972(p) BOOST_PP_IIF(p(972), BOOST_PP_NODE_970, BOOST_PP_NODE_974)
# define BOOST_PP_NODE_970(p) BOOST_PP_IIF(p(970), BOOST_PP_NODE_969, BOOST_PP_NODE_971)
# define BOOST_PP_NODE_969(p) BOOST_PP_IIF(p(969), 969, 970)
# define BOOST_PP_NODE_971(p) BOOST_PP_IIF(p(971), 971, 972)
# define BOOST_PP_NODE_974(p) BOOST_PP_IIF(p(974), BOOST_PP_NODE_973, BOOST_PP_NODE_975)
# define BOOST_PP_NODE_973(p) BOOST_PP_IIF(p(973), 973, 974)
# define BOOST_PP_NODE_975(p) BOOST_PP_IIF(p(975), 975, 976)
# define BOOST_PP_NODE_984(p) BOOST_PP_IIF(p(984), BOOST_PP_NODE_980, BOOST_PP_NODE_988)
# define BOOST_PP_NODE_980(p) BOOST_PP_IIF(p(980), BOOST_PP_NODE_978, BOOST_PP_NODE_982)
# define BOOST_PP_NODE_978(p) BOOST_PP_IIF(p(978), BOOST_PP_NODE_977, BOOST_PP_NODE_979)
# define BOOST_PP_NODE_977(p) BOOST_PP_IIF(p(977), 977, 978)
# define BOOST_PP_NODE_979(p) BOOST_PP_IIF(p(979), 979, 980)
# define BOOST_PP_NODE_982(p) BOOST_PP_IIF(p(982), BOOST_PP_NODE_981, BOOST_PP_NODE_983)
# define BOOST_PP_NODE_981(p) BOOST_PP_IIF(p(981), 981, 982)
# define BOOST_PP_NODE_983(p) BOOST_PP_IIF(p(983), 983, 984)
# define BOOST_PP_NODE_988(p) BOOST_PP_IIF(p(988), BOOST_PP_NODE_986, BOOST_PP_NODE_990)
# define BOOST_PP_NODE_986(p) BOOST_PP_IIF(p(986), BOOST_PP_NODE_985, BOOST_PP_NODE_987)
# define BOOST_PP_NODE_985(p) BOOST_PP_IIF(p(985), 985, 986)
# define BOOST_PP_NODE_987(p) BOOST_PP_IIF(p(987), 987, 988)
# define BOOST_PP_NODE_990(p) BOOST_PP_IIF(p(990), BOOST_PP_NODE_989, BOOST_PP_NODE_991)
# define BOOST_PP_NODE_989(p) BOOST_PP_IIF(p(989), 989, 990)
# define BOOST_PP_NODE_991(p) BOOST_PP_IIF(p(991), 991, 992)
# define BOOST_PP_NODE_1008(p) BOOST_PP_IIF(p(1008), BOOST_PP_NODE_1000, BOOST_PP_NODE_1016)
# define BOOST_PP_NODE_1000(p) BOOST_PP_IIF(p(1000), BOOST_PP_NODE_996, BOOST_PP_NODE_1004)
# define BOOST_PP_NODE_996(p) BOOST_PP_IIF(p(996), BOOST_PP_NODE_994, BOOST_PP_NODE_998)
# define BOOST_PP_NODE_994(p) BOOST_PP_IIF(p(994), BOOST_PP_NODE_993, BOOST_PP_NODE_995)
# define BOOST_PP_NODE_993(p) BOOST_PP_IIF(p(993), 993, 994)
# define BOOST_PP_NODE_995(p) BOOST_PP_IIF(p(995), 995, 996)
# define BOOST_PP_NODE_998(p) BOOST_PP_IIF(p(998), BOOST_PP_NODE_997, BOOST_PP_NODE_999)
# define BOOST_PP_NODE_997(p) BOOST_PP_IIF(p(997), 997, 998)
# define BOOST_PP_NODE_999(p) BOOST_PP_IIF(p(999), 999, 1000)
# define BOOST_PP_NODE_1004(p) BOOST_PP_IIF(p(1004), BOOST_PP_NODE_1002, BOOST_PP_NODE_1006)
# define BOOST_PP_NODE_1002(p) BOOST_PP_IIF(p(1002), BOOST_PP_NODE_1001, BOOST_PP_NODE_1003)
# define BOOST_PP_NODE_1001(p) BOOST_PP_IIF(p(1001), 1001, 1002)
# define BOOST_PP_NODE_1003(p) BOOST_PP_IIF(p(1003), 1003, 1004)
# define BOOST_PP_NODE_1006(p) BOOST_PP_IIF(p(1006), BOOST_PP_NODE_1005, BOOST_PP_NODE_1007)
# define BOOST_PP_NODE_1005(p) BOOST_PP_IIF(p(1005), 1005, 1006)
# define BOOST_PP_NODE_1007(p) BOOST_PP_IIF(p(1007), 1007, 1008)
# define BOOST_PP_NODE_1016(p) BOOST_PP_IIF(p(1016), BOOST_PP_NODE_1012, BOOST_PP_NODE_1020)
# define BOOST_PP_NODE_1012(p) BOOST_PP_IIF(p(1012), BOOST_PP_NODE_1010, BOOST_PP_NODE_1014)
# define BOOST_PP_NODE_1010(p) BOOST_PP_IIF(p(1010), BOOST_PP_NODE_1009, BOOST_PP_NODE_1011)
# define BOOST_PP_NODE_1009(p) BOOST_PP_IIF(p(1009), 1009, 1010)
# define BOOST_PP_NODE_1011(p) BOOST_PP_IIF(p(1011), 1011, 1012)
# define BOOST_PP_NODE_1014(p) BOOST_PP_IIF(p(1014), BOOST_PP_NODE_1013, BOOST_PP_NODE_1015)
# define BOOST_PP_NODE_1013(p) BOOST_PP_IIF(p(1013), 1013, 1014)
# define BOOST_PP_NODE_1015(p) BOOST_PP_IIF(p(1015), 1015, 1016)
# define BOOST_PP_NODE_1020(p) BOOST_PP_IIF(p(1020), BOOST_PP_NODE_1018, BOOST_PP_NODE_1022)
# define BOOST_PP_NODE_1018(p) BOOST_PP_IIF(p(1018), BOOST_PP_NODE_1017, BOOST_PP_NODE_1019)
# define BOOST_PP_NODE_1017(p) BOOST_PP_IIF(p(1017), 1017, 1018)
# define BOOST_PP_NODE_1019(p) BOOST_PP_IIF(p(1019), 1019, 1020)
# define BOOST_PP_NODE_1022(p) BOOST_PP_IIF(p(1022), BOOST_PP_NODE_1021, BOOST_PP_NODE_1023)
# define BOOST_PP_NODE_1021(p) BOOST_PP_IIF(p(1021), 1021, 1022)
# define BOOST_PP_NODE_1023(p) BOOST_PP_IIF(p(1023), 1023, 1024)
#
# endif

View File

@ -0,0 +1,280 @@
# /* **************************************************************************
# * *
# * (C) Copyright Paul Mensonides 2002.
# * Distributed under the Boost Software License, Version 1.0. (See
# * accompanying file LICENSE_1_0.txt or copy at
# * http://www.boost.org/LICENSE_1_0.txt)
# * *
# ************************************************************************** */
#
# /* See http://www.boost.org for most recent version. */
#
# ifndef BOOST_PREPROCESSOR_DETAIL_AUTO_REC_256_HPP
# define BOOST_PREPROCESSOR_DETAIL_AUTO_REC_256_HPP
#
# define BOOST_PP_NODE_ENTRY_256(p) BOOST_PP_NODE_128(p)(p)(p)(p)(p)(p)(p)(p)
# define BOOST_PP_NODE_ENTRY_128(p) BOOST_PP_NODE_64(p)(p)(p)(p)(p)(p)(p)
# define BOOST_PP_NODE_ENTRY_64(p) BOOST_PP_NODE_32(p)(p)(p)(p)(p)(p)
# define BOOST_PP_NODE_ENTRY_32(p) BOOST_PP_NODE_16(p)(p)(p)(p)(p)
# define BOOST_PP_NODE_ENTRY_16(p) BOOST_PP_NODE_8(p)(p)(p)(p)
# define BOOST_PP_NODE_ENTRY_8(p) BOOST_PP_NODE_4(p)(p)(p)
# define BOOST_PP_NODE_ENTRY_4(p) BOOST_PP_NODE_2(p)(p)
# define BOOST_PP_NODE_ENTRY_2(p) BOOST_PP_NODE_1(p)
#
# define BOOST_PP_NODE_128(p) BOOST_PP_IIF(p(128), BOOST_PP_NODE_64, BOOST_PP_NODE_192)
# define BOOST_PP_NODE_64(p) BOOST_PP_IIF(p(64), BOOST_PP_NODE_32, BOOST_PP_NODE_96)
# define BOOST_PP_NODE_32(p) BOOST_PP_IIF(p(32), BOOST_PP_NODE_16, BOOST_PP_NODE_48)
# define BOOST_PP_NODE_16(p) BOOST_PP_IIF(p(16), BOOST_PP_NODE_8, BOOST_PP_NODE_24)
# define BOOST_PP_NODE_8(p) BOOST_PP_IIF(p(8), BOOST_PP_NODE_4, BOOST_PP_NODE_12)
# define BOOST_PP_NODE_4(p) BOOST_PP_IIF(p(4), BOOST_PP_NODE_2, BOOST_PP_NODE_6)
# define BOOST_PP_NODE_2(p) BOOST_PP_IIF(p(2), BOOST_PP_NODE_1, BOOST_PP_NODE_3)
# define BOOST_PP_NODE_1(p) BOOST_PP_IIF(p(1), 1, 2)
# define BOOST_PP_NODE_3(p) BOOST_PP_IIF(p(3), 3, 4)
# define BOOST_PP_NODE_6(p) BOOST_PP_IIF(p(6), BOOST_PP_NODE_5, BOOST_PP_NODE_7)
# define BOOST_PP_NODE_5(p) BOOST_PP_IIF(p(5), 5, 6)
# define BOOST_PP_NODE_7(p) BOOST_PP_IIF(p(7), 7, 8)
# define BOOST_PP_NODE_12(p) BOOST_PP_IIF(p(12), BOOST_PP_NODE_10, BOOST_PP_NODE_14)
# define BOOST_PP_NODE_10(p) BOOST_PP_IIF(p(10), BOOST_PP_NODE_9, BOOST_PP_NODE_11)
# define BOOST_PP_NODE_9(p) BOOST_PP_IIF(p(9), 9, 10)
# define BOOST_PP_NODE_11(p) BOOST_PP_IIF(p(11), 11, 12)
# define BOOST_PP_NODE_14(p) BOOST_PP_IIF(p(14), BOOST_PP_NODE_13, BOOST_PP_NODE_15)
# define BOOST_PP_NODE_13(p) BOOST_PP_IIF(p(13), 13, 14)
# define BOOST_PP_NODE_15(p) BOOST_PP_IIF(p(15), 15, 16)
# define BOOST_PP_NODE_24(p) BOOST_PP_IIF(p(24), BOOST_PP_NODE_20, BOOST_PP_NODE_28)
# define BOOST_PP_NODE_20(p) BOOST_PP_IIF(p(20), BOOST_PP_NODE_18, BOOST_PP_NODE_22)
# define BOOST_PP_NODE_18(p) BOOST_PP_IIF(p(18), BOOST_PP_NODE_17, BOOST_PP_NODE_19)
# define BOOST_PP_NODE_17(p) BOOST_PP_IIF(p(17), 17, 18)
# define BOOST_PP_NODE_19(p) BOOST_PP_IIF(p(19), 19, 20)
# define BOOST_PP_NODE_22(p) BOOST_PP_IIF(p(22), BOOST_PP_NODE_21, BOOST_PP_NODE_23)
# define BOOST_PP_NODE_21(p) BOOST_PP_IIF(p(21), 21, 22)
# define BOOST_PP_NODE_23(p) BOOST_PP_IIF(p(23), 23, 24)
# define BOOST_PP_NODE_28(p) BOOST_PP_IIF(p(28), BOOST_PP_NODE_26, BOOST_PP_NODE_30)
# define BOOST_PP_NODE_26(p) BOOST_PP_IIF(p(26), BOOST_PP_NODE_25, BOOST_PP_NODE_27)
# define BOOST_PP_NODE_25(p) BOOST_PP_IIF(p(25), 25, 26)
# define BOOST_PP_NODE_27(p) BOOST_PP_IIF(p(27), 27, 28)
# define BOOST_PP_NODE_30(p) BOOST_PP_IIF(p(30), BOOST_PP_NODE_29, BOOST_PP_NODE_31)
# define BOOST_PP_NODE_29(p) BOOST_PP_IIF(p(29), 29, 30)
# define BOOST_PP_NODE_31(p) BOOST_PP_IIF(p(31), 31, 32)
# define BOOST_PP_NODE_48(p) BOOST_PP_IIF(p(48), BOOST_PP_NODE_40, BOOST_PP_NODE_56)
# define BOOST_PP_NODE_40(p) BOOST_PP_IIF(p(40), BOOST_PP_NODE_36, BOOST_PP_NODE_44)
# define BOOST_PP_NODE_36(p) BOOST_PP_IIF(p(36), BOOST_PP_NODE_34, BOOST_PP_NODE_38)
# define BOOST_PP_NODE_34(p) BOOST_PP_IIF(p(34), BOOST_PP_NODE_33, BOOST_PP_NODE_35)
# define BOOST_PP_NODE_33(p) BOOST_PP_IIF(p(33), 33, 34)
# define BOOST_PP_NODE_35(p) BOOST_PP_IIF(p(35), 35, 36)
# define BOOST_PP_NODE_38(p) BOOST_PP_IIF(p(38), BOOST_PP_NODE_37, BOOST_PP_NODE_39)
# define BOOST_PP_NODE_37(p) BOOST_PP_IIF(p(37), 37, 38)
# define BOOST_PP_NODE_39(p) BOOST_PP_IIF(p(39), 39, 40)
# define BOOST_PP_NODE_44(p) BOOST_PP_IIF(p(44), BOOST_PP_NODE_42, BOOST_PP_NODE_46)
# define BOOST_PP_NODE_42(p) BOOST_PP_IIF(p(42), BOOST_PP_NODE_41, BOOST_PP_NODE_43)
# define BOOST_PP_NODE_41(p) BOOST_PP_IIF(p(41), 41, 42)
# define BOOST_PP_NODE_43(p) BOOST_PP_IIF(p(43), 43, 44)
# define BOOST_PP_NODE_46(p) BOOST_PP_IIF(p(46), BOOST_PP_NODE_45, BOOST_PP_NODE_47)
# define BOOST_PP_NODE_45(p) BOOST_PP_IIF(p(45), 45, 46)
# define BOOST_PP_NODE_47(p) BOOST_PP_IIF(p(47), 47, 48)
# define BOOST_PP_NODE_56(p) BOOST_PP_IIF(p(56), BOOST_PP_NODE_52, BOOST_PP_NODE_60)
# define BOOST_PP_NODE_52(p) BOOST_PP_IIF(p(52), BOOST_PP_NODE_50, BOOST_PP_NODE_54)
# define BOOST_PP_NODE_50(p) BOOST_PP_IIF(p(50), BOOST_PP_NODE_49, BOOST_PP_NODE_51)
# define BOOST_PP_NODE_49(p) BOOST_PP_IIF(p(49), 49, 50)
# define BOOST_PP_NODE_51(p) BOOST_PP_IIF(p(51), 51, 52)
# define BOOST_PP_NODE_54(p) BOOST_PP_IIF(p(54), BOOST_PP_NODE_53, BOOST_PP_NODE_55)
# define BOOST_PP_NODE_53(p) BOOST_PP_IIF(p(53), 53, 54)
# define BOOST_PP_NODE_55(p) BOOST_PP_IIF(p(55), 55, 56)
# define BOOST_PP_NODE_60(p) BOOST_PP_IIF(p(60), BOOST_PP_NODE_58, BOOST_PP_NODE_62)
# define BOOST_PP_NODE_58(p) BOOST_PP_IIF(p(58), BOOST_PP_NODE_57, BOOST_PP_NODE_59)
# define BOOST_PP_NODE_57(p) BOOST_PP_IIF(p(57), 57, 58)
# define BOOST_PP_NODE_59(p) BOOST_PP_IIF(p(59), 59, 60)
# define BOOST_PP_NODE_62(p) BOOST_PP_IIF(p(62), BOOST_PP_NODE_61, BOOST_PP_NODE_63)
# define BOOST_PP_NODE_61(p) BOOST_PP_IIF(p(61), 61, 62)
# define BOOST_PP_NODE_63(p) BOOST_PP_IIF(p(63), 63, 64)
# define BOOST_PP_NODE_96(p) BOOST_PP_IIF(p(96), BOOST_PP_NODE_80, BOOST_PP_NODE_112)
# define BOOST_PP_NODE_80(p) BOOST_PP_IIF(p(80), BOOST_PP_NODE_72, BOOST_PP_NODE_88)
# define BOOST_PP_NODE_72(p) BOOST_PP_IIF(p(72), BOOST_PP_NODE_68, BOOST_PP_NODE_76)
# define BOOST_PP_NODE_68(p) BOOST_PP_IIF(p(68), BOOST_PP_NODE_66, BOOST_PP_NODE_70)
# define BOOST_PP_NODE_66(p) BOOST_PP_IIF(p(66), BOOST_PP_NODE_65, BOOST_PP_NODE_67)
# define BOOST_PP_NODE_65(p) BOOST_PP_IIF(p(65), 65, 66)
# define BOOST_PP_NODE_67(p) BOOST_PP_IIF(p(67), 67, 68)
# define BOOST_PP_NODE_70(p) BOOST_PP_IIF(p(70), BOOST_PP_NODE_69, BOOST_PP_NODE_71)
# define BOOST_PP_NODE_69(p) BOOST_PP_IIF(p(69), 69, 70)
# define BOOST_PP_NODE_71(p) BOOST_PP_IIF(p(71), 71, 72)
# define BOOST_PP_NODE_76(p) BOOST_PP_IIF(p(76), BOOST_PP_NODE_74, BOOST_PP_NODE_78)
# define BOOST_PP_NODE_74(p) BOOST_PP_IIF(p(74), BOOST_PP_NODE_73, BOOST_PP_NODE_75)
# define BOOST_PP_NODE_73(p) BOOST_PP_IIF(p(73), 73, 74)
# define BOOST_PP_NODE_75(p) BOOST_PP_IIF(p(75), 75, 76)
# define BOOST_PP_NODE_78(p) BOOST_PP_IIF(p(78), BOOST_PP_NODE_77, BOOST_PP_NODE_79)
# define BOOST_PP_NODE_77(p) BOOST_PP_IIF(p(77), 77, 78)
# define BOOST_PP_NODE_79(p) BOOST_PP_IIF(p(79), 79, 80)
# define BOOST_PP_NODE_88(p) BOOST_PP_IIF(p(88), BOOST_PP_NODE_84, BOOST_PP_NODE_92)
# define BOOST_PP_NODE_84(p) BOOST_PP_IIF(p(84), BOOST_PP_NODE_82, BOOST_PP_NODE_86)
# define BOOST_PP_NODE_82(p) BOOST_PP_IIF(p(82), BOOST_PP_NODE_81, BOOST_PP_NODE_83)
# define BOOST_PP_NODE_81(p) BOOST_PP_IIF(p(81), 81, 82)
# define BOOST_PP_NODE_83(p) BOOST_PP_IIF(p(83), 83, 84)
# define BOOST_PP_NODE_86(p) BOOST_PP_IIF(p(86), BOOST_PP_NODE_85, BOOST_PP_NODE_87)
# define BOOST_PP_NODE_85(p) BOOST_PP_IIF(p(85), 85, 86)
# define BOOST_PP_NODE_87(p) BOOST_PP_IIF(p(87), 87, 88)
# define BOOST_PP_NODE_92(p) BOOST_PP_IIF(p(92), BOOST_PP_NODE_90, BOOST_PP_NODE_94)
# define BOOST_PP_NODE_90(p) BOOST_PP_IIF(p(90), BOOST_PP_NODE_89, BOOST_PP_NODE_91)
# define BOOST_PP_NODE_89(p) BOOST_PP_IIF(p(89), 89, 90)
# define BOOST_PP_NODE_91(p) BOOST_PP_IIF(p(91), 91, 92)
# define BOOST_PP_NODE_94(p) BOOST_PP_IIF(p(94), BOOST_PP_NODE_93, BOOST_PP_NODE_95)
# define BOOST_PP_NODE_93(p) BOOST_PP_IIF(p(93), 93, 94)
# define BOOST_PP_NODE_95(p) BOOST_PP_IIF(p(95), 95, 96)
# define BOOST_PP_NODE_112(p) BOOST_PP_IIF(p(112), BOOST_PP_NODE_104, BOOST_PP_NODE_120)
# define BOOST_PP_NODE_104(p) BOOST_PP_IIF(p(104), BOOST_PP_NODE_100, BOOST_PP_NODE_108)
# define BOOST_PP_NODE_100(p) BOOST_PP_IIF(p(100), BOOST_PP_NODE_98, BOOST_PP_NODE_102)
# define BOOST_PP_NODE_98(p) BOOST_PP_IIF(p(98), BOOST_PP_NODE_97, BOOST_PP_NODE_99)
# define BOOST_PP_NODE_97(p) BOOST_PP_IIF(p(97), 97, 98)
# define BOOST_PP_NODE_99(p) BOOST_PP_IIF(p(99), 99, 100)
# define BOOST_PP_NODE_102(p) BOOST_PP_IIF(p(102), BOOST_PP_NODE_101, BOOST_PP_NODE_103)
# define BOOST_PP_NODE_101(p) BOOST_PP_IIF(p(101), 101, 102)
# define BOOST_PP_NODE_103(p) BOOST_PP_IIF(p(103), 103, 104)
# define BOOST_PP_NODE_108(p) BOOST_PP_IIF(p(108), BOOST_PP_NODE_106, BOOST_PP_NODE_110)
# define BOOST_PP_NODE_106(p) BOOST_PP_IIF(p(106), BOOST_PP_NODE_105, BOOST_PP_NODE_107)
# define BOOST_PP_NODE_105(p) BOOST_PP_IIF(p(105), 105, 106)
# define BOOST_PP_NODE_107(p) BOOST_PP_IIF(p(107), 107, 108)
# define BOOST_PP_NODE_110(p) BOOST_PP_IIF(p(110), BOOST_PP_NODE_109, BOOST_PP_NODE_111)
# define BOOST_PP_NODE_109(p) BOOST_PP_IIF(p(109), 109, 110)
# define BOOST_PP_NODE_111(p) BOOST_PP_IIF(p(111), 111, 112)
# define BOOST_PP_NODE_120(p) BOOST_PP_IIF(p(120), BOOST_PP_NODE_116, BOOST_PP_NODE_124)
# define BOOST_PP_NODE_116(p) BOOST_PP_IIF(p(116), BOOST_PP_NODE_114, BOOST_PP_NODE_118)
# define BOOST_PP_NODE_114(p) BOOST_PP_IIF(p(114), BOOST_PP_NODE_113, BOOST_PP_NODE_115)
# define BOOST_PP_NODE_113(p) BOOST_PP_IIF(p(113), 113, 114)
# define BOOST_PP_NODE_115(p) BOOST_PP_IIF(p(115), 115, 116)
# define BOOST_PP_NODE_118(p) BOOST_PP_IIF(p(118), BOOST_PP_NODE_117, BOOST_PP_NODE_119)
# define BOOST_PP_NODE_117(p) BOOST_PP_IIF(p(117), 117, 118)
# define BOOST_PP_NODE_119(p) BOOST_PP_IIF(p(119), 119, 120)
# define BOOST_PP_NODE_124(p) BOOST_PP_IIF(p(124), BOOST_PP_NODE_122, BOOST_PP_NODE_126)
# define BOOST_PP_NODE_122(p) BOOST_PP_IIF(p(122), BOOST_PP_NODE_121, BOOST_PP_NODE_123)
# define BOOST_PP_NODE_121(p) BOOST_PP_IIF(p(121), 121, 122)
# define BOOST_PP_NODE_123(p) BOOST_PP_IIF(p(123), 123, 124)
# define BOOST_PP_NODE_126(p) BOOST_PP_IIF(p(126), BOOST_PP_NODE_125, BOOST_PP_NODE_127)
# define BOOST_PP_NODE_125(p) BOOST_PP_IIF(p(125), 125, 126)
# define BOOST_PP_NODE_127(p) BOOST_PP_IIF(p(127), 127, 128)
# define BOOST_PP_NODE_192(p) BOOST_PP_IIF(p(192), BOOST_PP_NODE_160, BOOST_PP_NODE_224)
# define BOOST_PP_NODE_160(p) BOOST_PP_IIF(p(160), BOOST_PP_NODE_144, BOOST_PP_NODE_176)
# define BOOST_PP_NODE_144(p) BOOST_PP_IIF(p(144), BOOST_PP_NODE_136, BOOST_PP_NODE_152)
# define BOOST_PP_NODE_136(p) BOOST_PP_IIF(p(136), BOOST_PP_NODE_132, BOOST_PP_NODE_140)
# define BOOST_PP_NODE_132(p) BOOST_PP_IIF(p(132), BOOST_PP_NODE_130, BOOST_PP_NODE_134)
# define BOOST_PP_NODE_130(p) BOOST_PP_IIF(p(130), BOOST_PP_NODE_129, BOOST_PP_NODE_131)
# define BOOST_PP_NODE_129(p) BOOST_PP_IIF(p(129), 129, 130)
# define BOOST_PP_NODE_131(p) BOOST_PP_IIF(p(131), 131, 132)
# define BOOST_PP_NODE_134(p) BOOST_PP_IIF(p(134), BOOST_PP_NODE_133, BOOST_PP_NODE_135)
# define BOOST_PP_NODE_133(p) BOOST_PP_IIF(p(133), 133, 134)
# define BOOST_PP_NODE_135(p) BOOST_PP_IIF(p(135), 135, 136)
# define BOOST_PP_NODE_140(p) BOOST_PP_IIF(p(140), BOOST_PP_NODE_138, BOOST_PP_NODE_142)
# define BOOST_PP_NODE_138(p) BOOST_PP_IIF(p(138), BOOST_PP_NODE_137, BOOST_PP_NODE_139)
# define BOOST_PP_NODE_137(p) BOOST_PP_IIF(p(137), 137, 138)
# define BOOST_PP_NODE_139(p) BOOST_PP_IIF(p(139), 139, 140)
# define BOOST_PP_NODE_142(p) BOOST_PP_IIF(p(142), BOOST_PP_NODE_141, BOOST_PP_NODE_143)
# define BOOST_PP_NODE_141(p) BOOST_PP_IIF(p(141), 141, 142)
# define BOOST_PP_NODE_143(p) BOOST_PP_IIF(p(143), 143, 144)
# define BOOST_PP_NODE_152(p) BOOST_PP_IIF(p(152), BOOST_PP_NODE_148, BOOST_PP_NODE_156)
# define BOOST_PP_NODE_148(p) BOOST_PP_IIF(p(148), BOOST_PP_NODE_146, BOOST_PP_NODE_150)
# define BOOST_PP_NODE_146(p) BOOST_PP_IIF(p(146), BOOST_PP_NODE_145, BOOST_PP_NODE_147)
# define BOOST_PP_NODE_145(p) BOOST_PP_IIF(p(145), 145, 146)
# define BOOST_PP_NODE_147(p) BOOST_PP_IIF(p(147), 147, 148)
# define BOOST_PP_NODE_150(p) BOOST_PP_IIF(p(150), BOOST_PP_NODE_149, BOOST_PP_NODE_151)
# define BOOST_PP_NODE_149(p) BOOST_PP_IIF(p(149), 149, 150)
# define BOOST_PP_NODE_151(p) BOOST_PP_IIF(p(151), 151, 152)
# define BOOST_PP_NODE_156(p) BOOST_PP_IIF(p(156), BOOST_PP_NODE_154, BOOST_PP_NODE_158)
# define BOOST_PP_NODE_154(p) BOOST_PP_IIF(p(154), BOOST_PP_NODE_153, BOOST_PP_NODE_155)
# define BOOST_PP_NODE_153(p) BOOST_PP_IIF(p(153), 153, 154)
# define BOOST_PP_NODE_155(p) BOOST_PP_IIF(p(155), 155, 156)
# define BOOST_PP_NODE_158(p) BOOST_PP_IIF(p(158), BOOST_PP_NODE_157, BOOST_PP_NODE_159)
# define BOOST_PP_NODE_157(p) BOOST_PP_IIF(p(157), 157, 158)
# define BOOST_PP_NODE_159(p) BOOST_PP_IIF(p(159), 159, 160)
# define BOOST_PP_NODE_176(p) BOOST_PP_IIF(p(176), BOOST_PP_NODE_168, BOOST_PP_NODE_184)
# define BOOST_PP_NODE_168(p) BOOST_PP_IIF(p(168), BOOST_PP_NODE_164, BOOST_PP_NODE_172)
# define BOOST_PP_NODE_164(p) BOOST_PP_IIF(p(164), BOOST_PP_NODE_162, BOOST_PP_NODE_166)
# define BOOST_PP_NODE_162(p) BOOST_PP_IIF(p(162), BOOST_PP_NODE_161, BOOST_PP_NODE_163)
# define BOOST_PP_NODE_161(p) BOOST_PP_IIF(p(161), 161, 162)
# define BOOST_PP_NODE_163(p) BOOST_PP_IIF(p(163), 163, 164)
# define BOOST_PP_NODE_166(p) BOOST_PP_IIF(p(166), BOOST_PP_NODE_165, BOOST_PP_NODE_167)
# define BOOST_PP_NODE_165(p) BOOST_PP_IIF(p(165), 165, 166)
# define BOOST_PP_NODE_167(p) BOOST_PP_IIF(p(167), 167, 168)
# define BOOST_PP_NODE_172(p) BOOST_PP_IIF(p(172), BOOST_PP_NODE_170, BOOST_PP_NODE_174)
# define BOOST_PP_NODE_170(p) BOOST_PP_IIF(p(170), BOOST_PP_NODE_169, BOOST_PP_NODE_171)
# define BOOST_PP_NODE_169(p) BOOST_PP_IIF(p(169), 169, 170)
# define BOOST_PP_NODE_171(p) BOOST_PP_IIF(p(171), 171, 172)
# define BOOST_PP_NODE_174(p) BOOST_PP_IIF(p(174), BOOST_PP_NODE_173, BOOST_PP_NODE_175)
# define BOOST_PP_NODE_173(p) BOOST_PP_IIF(p(173), 173, 174)
# define BOOST_PP_NODE_175(p) BOOST_PP_IIF(p(175), 175, 176)
# define BOOST_PP_NODE_184(p) BOOST_PP_IIF(p(184), BOOST_PP_NODE_180, BOOST_PP_NODE_188)
# define BOOST_PP_NODE_180(p) BOOST_PP_IIF(p(180), BOOST_PP_NODE_178, BOOST_PP_NODE_182)
# define BOOST_PP_NODE_178(p) BOOST_PP_IIF(p(178), BOOST_PP_NODE_177, BOOST_PP_NODE_179)
# define BOOST_PP_NODE_177(p) BOOST_PP_IIF(p(177), 177, 178)
# define BOOST_PP_NODE_179(p) BOOST_PP_IIF(p(179), 179, 180)
# define BOOST_PP_NODE_182(p) BOOST_PP_IIF(p(182), BOOST_PP_NODE_181, BOOST_PP_NODE_183)
# define BOOST_PP_NODE_181(p) BOOST_PP_IIF(p(181), 181, 182)
# define BOOST_PP_NODE_183(p) BOOST_PP_IIF(p(183), 183, 184)
# define BOOST_PP_NODE_188(p) BOOST_PP_IIF(p(188), BOOST_PP_NODE_186, BOOST_PP_NODE_190)
# define BOOST_PP_NODE_186(p) BOOST_PP_IIF(p(186), BOOST_PP_NODE_185, BOOST_PP_NODE_187)
# define BOOST_PP_NODE_185(p) BOOST_PP_IIF(p(185), 185, 186)
# define BOOST_PP_NODE_187(p) BOOST_PP_IIF(p(187), 187, 188)
# define BOOST_PP_NODE_190(p) BOOST_PP_IIF(p(190), BOOST_PP_NODE_189, BOOST_PP_NODE_191)
# define BOOST_PP_NODE_189(p) BOOST_PP_IIF(p(189), 189, 190)
# define BOOST_PP_NODE_191(p) BOOST_PP_IIF(p(191), 191, 192)
# define BOOST_PP_NODE_224(p) BOOST_PP_IIF(p(224), BOOST_PP_NODE_208, BOOST_PP_NODE_240)
# define BOOST_PP_NODE_208(p) BOOST_PP_IIF(p(208), BOOST_PP_NODE_200, BOOST_PP_NODE_216)
# define BOOST_PP_NODE_200(p) BOOST_PP_IIF(p(200), BOOST_PP_NODE_196, BOOST_PP_NODE_204)
# define BOOST_PP_NODE_196(p) BOOST_PP_IIF(p(196), BOOST_PP_NODE_194, BOOST_PP_NODE_198)
# define BOOST_PP_NODE_194(p) BOOST_PP_IIF(p(194), BOOST_PP_NODE_193, BOOST_PP_NODE_195)
# define BOOST_PP_NODE_193(p) BOOST_PP_IIF(p(193), 193, 194)
# define BOOST_PP_NODE_195(p) BOOST_PP_IIF(p(195), 195, 196)
# define BOOST_PP_NODE_198(p) BOOST_PP_IIF(p(198), BOOST_PP_NODE_197, BOOST_PP_NODE_199)
# define BOOST_PP_NODE_197(p) BOOST_PP_IIF(p(197), 197, 198)
# define BOOST_PP_NODE_199(p) BOOST_PP_IIF(p(199), 199, 200)
# define BOOST_PP_NODE_204(p) BOOST_PP_IIF(p(204), BOOST_PP_NODE_202, BOOST_PP_NODE_206)
# define BOOST_PP_NODE_202(p) BOOST_PP_IIF(p(202), BOOST_PP_NODE_201, BOOST_PP_NODE_203)
# define BOOST_PP_NODE_201(p) BOOST_PP_IIF(p(201), 201, 202)
# define BOOST_PP_NODE_203(p) BOOST_PP_IIF(p(203), 203, 204)
# define BOOST_PP_NODE_206(p) BOOST_PP_IIF(p(206), BOOST_PP_NODE_205, BOOST_PP_NODE_207)
# define BOOST_PP_NODE_205(p) BOOST_PP_IIF(p(205), 205, 206)
# define BOOST_PP_NODE_207(p) BOOST_PP_IIF(p(207), 207, 208)
# define BOOST_PP_NODE_216(p) BOOST_PP_IIF(p(216), BOOST_PP_NODE_212, BOOST_PP_NODE_220)
# define BOOST_PP_NODE_212(p) BOOST_PP_IIF(p(212), BOOST_PP_NODE_210, BOOST_PP_NODE_214)
# define BOOST_PP_NODE_210(p) BOOST_PP_IIF(p(210), BOOST_PP_NODE_209, BOOST_PP_NODE_211)
# define BOOST_PP_NODE_209(p) BOOST_PP_IIF(p(209), 209, 210)
# define BOOST_PP_NODE_211(p) BOOST_PP_IIF(p(211), 211, 212)
# define BOOST_PP_NODE_214(p) BOOST_PP_IIF(p(214), BOOST_PP_NODE_213, BOOST_PP_NODE_215)
# define BOOST_PP_NODE_213(p) BOOST_PP_IIF(p(213), 213, 214)
# define BOOST_PP_NODE_215(p) BOOST_PP_IIF(p(215), 215, 216)
# define BOOST_PP_NODE_220(p) BOOST_PP_IIF(p(220), BOOST_PP_NODE_218, BOOST_PP_NODE_222)
# define BOOST_PP_NODE_218(p) BOOST_PP_IIF(p(218), BOOST_PP_NODE_217, BOOST_PP_NODE_219)
# define BOOST_PP_NODE_217(p) BOOST_PP_IIF(p(217), 217, 218)
# define BOOST_PP_NODE_219(p) BOOST_PP_IIF(p(219), 219, 220)
# define BOOST_PP_NODE_222(p) BOOST_PP_IIF(p(222), BOOST_PP_NODE_221, BOOST_PP_NODE_223)
# define BOOST_PP_NODE_221(p) BOOST_PP_IIF(p(221), 221, 222)
# define BOOST_PP_NODE_223(p) BOOST_PP_IIF(p(223), 223, 224)
# define BOOST_PP_NODE_240(p) BOOST_PP_IIF(p(240), BOOST_PP_NODE_232, BOOST_PP_NODE_248)
# define BOOST_PP_NODE_232(p) BOOST_PP_IIF(p(232), BOOST_PP_NODE_228, BOOST_PP_NODE_236)
# define BOOST_PP_NODE_228(p) BOOST_PP_IIF(p(228), BOOST_PP_NODE_226, BOOST_PP_NODE_230)
# define BOOST_PP_NODE_226(p) BOOST_PP_IIF(p(226), BOOST_PP_NODE_225, BOOST_PP_NODE_227)
# define BOOST_PP_NODE_225(p) BOOST_PP_IIF(p(225), 225, 226)
# define BOOST_PP_NODE_227(p) BOOST_PP_IIF(p(227), 227, 228)
# define BOOST_PP_NODE_230(p) BOOST_PP_IIF(p(230), BOOST_PP_NODE_229, BOOST_PP_NODE_231)
# define BOOST_PP_NODE_229(p) BOOST_PP_IIF(p(229), 229, 230)
# define BOOST_PP_NODE_231(p) BOOST_PP_IIF(p(231), 231, 232)
# define BOOST_PP_NODE_236(p) BOOST_PP_IIF(p(236), BOOST_PP_NODE_234, BOOST_PP_NODE_238)
# define BOOST_PP_NODE_234(p) BOOST_PP_IIF(p(234), BOOST_PP_NODE_233, BOOST_PP_NODE_235)
# define BOOST_PP_NODE_233(p) BOOST_PP_IIF(p(233), 233, 234)
# define BOOST_PP_NODE_235(p) BOOST_PP_IIF(p(235), 235, 236)
# define BOOST_PP_NODE_238(p) BOOST_PP_IIF(p(238), BOOST_PP_NODE_237, BOOST_PP_NODE_239)
# define BOOST_PP_NODE_237(p) BOOST_PP_IIF(p(237), 237, 238)
# define BOOST_PP_NODE_239(p) BOOST_PP_IIF(p(239), 239, 240)
# define BOOST_PP_NODE_248(p) BOOST_PP_IIF(p(248), BOOST_PP_NODE_244, BOOST_PP_NODE_252)
# define BOOST_PP_NODE_244(p) BOOST_PP_IIF(p(244), BOOST_PP_NODE_242, BOOST_PP_NODE_246)
# define BOOST_PP_NODE_242(p) BOOST_PP_IIF(p(242), BOOST_PP_NODE_241, BOOST_PP_NODE_243)
# define BOOST_PP_NODE_241(p) BOOST_PP_IIF(p(241), 241, 242)
# define BOOST_PP_NODE_243(p) BOOST_PP_IIF(p(243), 243, 244)
# define BOOST_PP_NODE_246(p) BOOST_PP_IIF(p(246), BOOST_PP_NODE_245, BOOST_PP_NODE_247)
# define BOOST_PP_NODE_245(p) BOOST_PP_IIF(p(245), 245, 246)
# define BOOST_PP_NODE_247(p) BOOST_PP_IIF(p(247), 247, 248)
# define BOOST_PP_NODE_252(p) BOOST_PP_IIF(p(252), BOOST_PP_NODE_250, BOOST_PP_NODE_254)
# define BOOST_PP_NODE_250(p) BOOST_PP_IIF(p(250), BOOST_PP_NODE_249, BOOST_PP_NODE_251)
# define BOOST_PP_NODE_249(p) BOOST_PP_IIF(p(249), 249, 250)
# define BOOST_PP_NODE_251(p) BOOST_PP_IIF(p(251), 251, 252)
# define BOOST_PP_NODE_254(p) BOOST_PP_IIF(p(254), BOOST_PP_NODE_253, BOOST_PP_NODE_255)
# define BOOST_PP_NODE_253(p) BOOST_PP_IIF(p(253), 253, 254)
# define BOOST_PP_NODE_255(p) BOOST_PP_IIF(p(255), 255, 256)
#
# endif

View File

@ -0,0 +1,276 @@
# /* **************************************************************************
# * *
# * (C) Copyright Paul Mensonides 2002.
# * Distributed under the Boost Software License, Version 1.0. (See
# * accompanying file LICENSE_1_0.txt or copy at
# * http://www.boost.org/LICENSE_1_0.txt)
# * *
# ************************************************************************** */
#
# /* Revised by Edward Diener (2020) */
#
# /* See http://www.boost.org for most recent version. */
#
# ifndef BOOST_PREPROCESSOR_DETAIL_AUTO_REC_512_HPP
# define BOOST_PREPROCESSOR_DETAIL_AUTO_REC_512_HPP
#
# define BOOST_PP_NODE_ENTRY_512(p) BOOST_PP_NODE_256(p)(p)(p)(p)(p)(p)(p)(p)(p)
#
# define BOOST_PP_NODE_256(p) BOOST_PP_IIF(p(256), BOOST_PP_NODE_128, BOOST_PP_NODE_384)
# define BOOST_PP_NODE_384(p) BOOST_PP_IIF(p(384), BOOST_PP_NODE_320, BOOST_PP_NODE_448)
# define BOOST_PP_NODE_320(p) BOOST_PP_IIF(p(320), BOOST_PP_NODE_288, BOOST_PP_NODE_352)
# define BOOST_PP_NODE_288(p) BOOST_PP_IIF(p(288), BOOST_PP_NODE_272, BOOST_PP_NODE_304)
# define BOOST_PP_NODE_272(p) BOOST_PP_IIF(p(272), BOOST_PP_NODE_264, BOOST_PP_NODE_280)
# define BOOST_PP_NODE_264(p) BOOST_PP_IIF(p(264), BOOST_PP_NODE_260, BOOST_PP_NODE_268)
# define BOOST_PP_NODE_260(p) BOOST_PP_IIF(p(260), BOOST_PP_NODE_258, BOOST_PP_NODE_262)
# define BOOST_PP_NODE_258(p) BOOST_PP_IIF(p(258), BOOST_PP_NODE_257, BOOST_PP_NODE_259)
# define BOOST_PP_NODE_257(p) BOOST_PP_IIF(p(257), 257, 258)
# define BOOST_PP_NODE_259(p) BOOST_PP_IIF(p(259), 259, 260)
# define BOOST_PP_NODE_262(p) BOOST_PP_IIF(p(262), BOOST_PP_NODE_261, BOOST_PP_NODE_263)
# define BOOST_PP_NODE_261(p) BOOST_PP_IIF(p(261), 261, 262)
# define BOOST_PP_NODE_263(p) BOOST_PP_IIF(p(263), 263, 264)
# define BOOST_PP_NODE_268(p) BOOST_PP_IIF(p(268), BOOST_PP_NODE_266, BOOST_PP_NODE_270)
# define BOOST_PP_NODE_266(p) BOOST_PP_IIF(p(266), BOOST_PP_NODE_265, BOOST_PP_NODE_267)
# define BOOST_PP_NODE_265(p) BOOST_PP_IIF(p(265), 265, 266)
# define BOOST_PP_NODE_267(p) BOOST_PP_IIF(p(267), 267, 268)
# define BOOST_PP_NODE_270(p) BOOST_PP_IIF(p(270), BOOST_PP_NODE_269, BOOST_PP_NODE_271)
# define BOOST_PP_NODE_269(p) BOOST_PP_IIF(p(269), 269, 270)
# define BOOST_PP_NODE_271(p) BOOST_PP_IIF(p(271), 271, 272)
# define BOOST_PP_NODE_280(p) BOOST_PP_IIF(p(280), BOOST_PP_NODE_276, BOOST_PP_NODE_284)
# define BOOST_PP_NODE_276(p) BOOST_PP_IIF(p(276), BOOST_PP_NODE_274, BOOST_PP_NODE_278)
# define BOOST_PP_NODE_274(p) BOOST_PP_IIF(p(274), BOOST_PP_NODE_273, BOOST_PP_NODE_275)
# define BOOST_PP_NODE_273(p) BOOST_PP_IIF(p(273), 273, 274)
# define BOOST_PP_NODE_275(p) BOOST_PP_IIF(p(275), 275, 276)
# define BOOST_PP_NODE_278(p) BOOST_PP_IIF(p(278), BOOST_PP_NODE_277, BOOST_PP_NODE_279)
# define BOOST_PP_NODE_277(p) BOOST_PP_IIF(p(277), 277, 278)
# define BOOST_PP_NODE_279(p) BOOST_PP_IIF(p(279), 279, 280)
# define BOOST_PP_NODE_284(p) BOOST_PP_IIF(p(284), BOOST_PP_NODE_282, BOOST_PP_NODE_286)
# define BOOST_PP_NODE_282(p) BOOST_PP_IIF(p(282), BOOST_PP_NODE_281, BOOST_PP_NODE_283)
# define BOOST_PP_NODE_281(p) BOOST_PP_IIF(p(281), 281, 282)
# define BOOST_PP_NODE_283(p) BOOST_PP_IIF(p(283), 283, 284)
# define BOOST_PP_NODE_286(p) BOOST_PP_IIF(p(286), BOOST_PP_NODE_285, BOOST_PP_NODE_287)
# define BOOST_PP_NODE_285(p) BOOST_PP_IIF(p(285), 285, 286)
# define BOOST_PP_NODE_287(p) BOOST_PP_IIF(p(287), 287, 288)
# define BOOST_PP_NODE_304(p) BOOST_PP_IIF(p(304), BOOST_PP_NODE_296, BOOST_PP_NODE_312)
# define BOOST_PP_NODE_296(p) BOOST_PP_IIF(p(296), BOOST_PP_NODE_292, BOOST_PP_NODE_300)
# define BOOST_PP_NODE_292(p) BOOST_PP_IIF(p(292), BOOST_PP_NODE_290, BOOST_PP_NODE_294)
# define BOOST_PP_NODE_290(p) BOOST_PP_IIF(p(290), BOOST_PP_NODE_289, BOOST_PP_NODE_291)
# define BOOST_PP_NODE_289(p) BOOST_PP_IIF(p(289), 289, 290)
# define BOOST_PP_NODE_291(p) BOOST_PP_IIF(p(291), 291, 292)
# define BOOST_PP_NODE_294(p) BOOST_PP_IIF(p(294), BOOST_PP_NODE_293, BOOST_PP_NODE_295)
# define BOOST_PP_NODE_293(p) BOOST_PP_IIF(p(293), 293, 294)
# define BOOST_PP_NODE_295(p) BOOST_PP_IIF(p(295), 295, 296)
# define BOOST_PP_NODE_300(p) BOOST_PP_IIF(p(300), BOOST_PP_NODE_298, BOOST_PP_NODE_302)
# define BOOST_PP_NODE_298(p) BOOST_PP_IIF(p(298), BOOST_PP_NODE_297, BOOST_PP_NODE_299)
# define BOOST_PP_NODE_297(p) BOOST_PP_IIF(p(297), 297, 298)
# define BOOST_PP_NODE_299(p) BOOST_PP_IIF(p(299), 299, 300)
# define BOOST_PP_NODE_302(p) BOOST_PP_IIF(p(302), BOOST_PP_NODE_301, BOOST_PP_NODE_303)
# define BOOST_PP_NODE_301(p) BOOST_PP_IIF(p(301), 301, 302)
# define BOOST_PP_NODE_303(p) BOOST_PP_IIF(p(303), 303, 304)
# define BOOST_PP_NODE_312(p) BOOST_PP_IIF(p(312), BOOST_PP_NODE_308, BOOST_PP_NODE_316)
# define BOOST_PP_NODE_308(p) BOOST_PP_IIF(p(308), BOOST_PP_NODE_306, BOOST_PP_NODE_310)
# define BOOST_PP_NODE_306(p) BOOST_PP_IIF(p(306), BOOST_PP_NODE_305, BOOST_PP_NODE_307)
# define BOOST_PP_NODE_305(p) BOOST_PP_IIF(p(305), 305, 306)
# define BOOST_PP_NODE_307(p) BOOST_PP_IIF(p(307), 307, 308)
# define BOOST_PP_NODE_310(p) BOOST_PP_IIF(p(310), BOOST_PP_NODE_309, BOOST_PP_NODE_311)
# define BOOST_PP_NODE_309(p) BOOST_PP_IIF(p(309), 309, 310)
# define BOOST_PP_NODE_311(p) BOOST_PP_IIF(p(311), 311, 312)
# define BOOST_PP_NODE_316(p) BOOST_PP_IIF(p(316), BOOST_PP_NODE_314, BOOST_PP_NODE_318)
# define BOOST_PP_NODE_314(p) BOOST_PP_IIF(p(314), BOOST_PP_NODE_313, BOOST_PP_NODE_315)
# define BOOST_PP_NODE_313(p) BOOST_PP_IIF(p(313), 313, 314)
# define BOOST_PP_NODE_315(p) BOOST_PP_IIF(p(315), 315, 316)
# define BOOST_PP_NODE_318(p) BOOST_PP_IIF(p(318), BOOST_PP_NODE_317, BOOST_PP_NODE_319)
# define BOOST_PP_NODE_317(p) BOOST_PP_IIF(p(317), 317, 318)
# define BOOST_PP_NODE_319(p) BOOST_PP_IIF(p(319), 319, 320)
# define BOOST_PP_NODE_352(p) BOOST_PP_IIF(p(352), BOOST_PP_NODE_336, BOOST_PP_NODE_368)
# define BOOST_PP_NODE_336(p) BOOST_PP_IIF(p(336), BOOST_PP_NODE_328, BOOST_PP_NODE_344)
# define BOOST_PP_NODE_328(p) BOOST_PP_IIF(p(328), BOOST_PP_NODE_324, BOOST_PP_NODE_332)
# define BOOST_PP_NODE_324(p) BOOST_PP_IIF(p(324), BOOST_PP_NODE_322, BOOST_PP_NODE_326)
# define BOOST_PP_NODE_322(p) BOOST_PP_IIF(p(322), BOOST_PP_NODE_321, BOOST_PP_NODE_323)
# define BOOST_PP_NODE_321(p) BOOST_PP_IIF(p(321), 321, 322)
# define BOOST_PP_NODE_323(p) BOOST_PP_IIF(p(323), 323, 324)
# define BOOST_PP_NODE_326(p) BOOST_PP_IIF(p(326), BOOST_PP_NODE_325, BOOST_PP_NODE_327)
# define BOOST_PP_NODE_325(p) BOOST_PP_IIF(p(325), 325, 326)
# define BOOST_PP_NODE_327(p) BOOST_PP_IIF(p(327), 327, 328)
# define BOOST_PP_NODE_332(p) BOOST_PP_IIF(p(332), BOOST_PP_NODE_330, BOOST_PP_NODE_334)
# define BOOST_PP_NODE_330(p) BOOST_PP_IIF(p(330), BOOST_PP_NODE_329, BOOST_PP_NODE_331)
# define BOOST_PP_NODE_329(p) BOOST_PP_IIF(p(329), 329, 330)
# define BOOST_PP_NODE_331(p) BOOST_PP_IIF(p(331), 331, 332)
# define BOOST_PP_NODE_334(p) BOOST_PP_IIF(p(334), BOOST_PP_NODE_333, BOOST_PP_NODE_335)
# define BOOST_PP_NODE_333(p) BOOST_PP_IIF(p(333), 333, 334)
# define BOOST_PP_NODE_335(p) BOOST_PP_IIF(p(335), 335, 336)
# define BOOST_PP_NODE_344(p) BOOST_PP_IIF(p(344), BOOST_PP_NODE_340, BOOST_PP_NODE_348)
# define BOOST_PP_NODE_340(p) BOOST_PP_IIF(p(340), BOOST_PP_NODE_338, BOOST_PP_NODE_342)
# define BOOST_PP_NODE_338(p) BOOST_PP_IIF(p(338), BOOST_PP_NODE_337, BOOST_PP_NODE_339)
# define BOOST_PP_NODE_337(p) BOOST_PP_IIF(p(337), 337, 338)
# define BOOST_PP_NODE_339(p) BOOST_PP_IIF(p(339), 339, 340)
# define BOOST_PP_NODE_342(p) BOOST_PP_IIF(p(342), BOOST_PP_NODE_341, BOOST_PP_NODE_343)
# define BOOST_PP_NODE_341(p) BOOST_PP_IIF(p(341), 341, 342)
# define BOOST_PP_NODE_343(p) BOOST_PP_IIF(p(343), 343, 344)
# define BOOST_PP_NODE_348(p) BOOST_PP_IIF(p(348), BOOST_PP_NODE_346, BOOST_PP_NODE_350)
# define BOOST_PP_NODE_346(p) BOOST_PP_IIF(p(346), BOOST_PP_NODE_345, BOOST_PP_NODE_347)
# define BOOST_PP_NODE_345(p) BOOST_PP_IIF(p(345), 345, 346)
# define BOOST_PP_NODE_347(p) BOOST_PP_IIF(p(347), 347, 348)
# define BOOST_PP_NODE_350(p) BOOST_PP_IIF(p(350), BOOST_PP_NODE_349, BOOST_PP_NODE_351)
# define BOOST_PP_NODE_349(p) BOOST_PP_IIF(p(349), 349, 350)
# define BOOST_PP_NODE_351(p) BOOST_PP_IIF(p(351), 351, 352)
# define BOOST_PP_NODE_368(p) BOOST_PP_IIF(p(368), BOOST_PP_NODE_360, BOOST_PP_NODE_376)
# define BOOST_PP_NODE_360(p) BOOST_PP_IIF(p(360), BOOST_PP_NODE_356, BOOST_PP_NODE_364)
# define BOOST_PP_NODE_356(p) BOOST_PP_IIF(p(356), BOOST_PP_NODE_354, BOOST_PP_NODE_358)
# define BOOST_PP_NODE_354(p) BOOST_PP_IIF(p(354), BOOST_PP_NODE_353, BOOST_PP_NODE_355)
# define BOOST_PP_NODE_353(p) BOOST_PP_IIF(p(353), 353, 354)
# define BOOST_PP_NODE_355(p) BOOST_PP_IIF(p(355), 355, 356)
# define BOOST_PP_NODE_358(p) BOOST_PP_IIF(p(358), BOOST_PP_NODE_357, BOOST_PP_NODE_359)
# define BOOST_PP_NODE_357(p) BOOST_PP_IIF(p(357), 357, 358)
# define BOOST_PP_NODE_359(p) BOOST_PP_IIF(p(359), 359, 360)
# define BOOST_PP_NODE_364(p) BOOST_PP_IIF(p(364), BOOST_PP_NODE_362, BOOST_PP_NODE_366)
# define BOOST_PP_NODE_362(p) BOOST_PP_IIF(p(362), BOOST_PP_NODE_361, BOOST_PP_NODE_363)
# define BOOST_PP_NODE_361(p) BOOST_PP_IIF(p(361), 361, 362)
# define BOOST_PP_NODE_363(p) BOOST_PP_IIF(p(363), 363, 364)
# define BOOST_PP_NODE_366(p) BOOST_PP_IIF(p(366), BOOST_PP_NODE_365, BOOST_PP_NODE_367)
# define BOOST_PP_NODE_365(p) BOOST_PP_IIF(p(365), 365, 366)
# define BOOST_PP_NODE_367(p) BOOST_PP_IIF(p(367), 367, 368)
# define BOOST_PP_NODE_376(p) BOOST_PP_IIF(p(376), BOOST_PP_NODE_372, BOOST_PP_NODE_380)
# define BOOST_PP_NODE_372(p) BOOST_PP_IIF(p(372), BOOST_PP_NODE_370, BOOST_PP_NODE_374)
# define BOOST_PP_NODE_370(p) BOOST_PP_IIF(p(370), BOOST_PP_NODE_369, BOOST_PP_NODE_371)
# define BOOST_PP_NODE_369(p) BOOST_PP_IIF(p(369), 369, 370)
# define BOOST_PP_NODE_371(p) BOOST_PP_IIF(p(371), 371, 372)
# define BOOST_PP_NODE_374(p) BOOST_PP_IIF(p(374), BOOST_PP_NODE_373, BOOST_PP_NODE_375)
# define BOOST_PP_NODE_373(p) BOOST_PP_IIF(p(373), 373, 374)
# define BOOST_PP_NODE_375(p) BOOST_PP_IIF(p(375), 375, 376)
# define BOOST_PP_NODE_380(p) BOOST_PP_IIF(p(380), BOOST_PP_NODE_378, BOOST_PP_NODE_382)
# define BOOST_PP_NODE_378(p) BOOST_PP_IIF(p(378), BOOST_PP_NODE_377, BOOST_PP_NODE_379)
# define BOOST_PP_NODE_377(p) BOOST_PP_IIF(p(377), 377, 378)
# define BOOST_PP_NODE_379(p) BOOST_PP_IIF(p(379), 379, 380)
# define BOOST_PP_NODE_382(p) BOOST_PP_IIF(p(382), BOOST_PP_NODE_381, BOOST_PP_NODE_383)
# define BOOST_PP_NODE_381(p) BOOST_PP_IIF(p(381), 381, 382)
# define BOOST_PP_NODE_383(p) BOOST_PP_IIF(p(383), 383, 384)
# define BOOST_PP_NODE_448(p) BOOST_PP_IIF(p(448), BOOST_PP_NODE_416, BOOST_PP_NODE_480)
# define BOOST_PP_NODE_416(p) BOOST_PP_IIF(p(416), BOOST_PP_NODE_400, BOOST_PP_NODE_432)
# define BOOST_PP_NODE_400(p) BOOST_PP_IIF(p(400), BOOST_PP_NODE_392, BOOST_PP_NODE_408)
# define BOOST_PP_NODE_392(p) BOOST_PP_IIF(p(392), BOOST_PP_NODE_388, BOOST_PP_NODE_396)
# define BOOST_PP_NODE_388(p) BOOST_PP_IIF(p(388), BOOST_PP_NODE_386, BOOST_PP_NODE_390)
# define BOOST_PP_NODE_386(p) BOOST_PP_IIF(p(386), BOOST_PP_NODE_385, BOOST_PP_NODE_387)
# define BOOST_PP_NODE_385(p) BOOST_PP_IIF(p(385), 385, 386)
# define BOOST_PP_NODE_387(p) BOOST_PP_IIF(p(387), 387, 388)
# define BOOST_PP_NODE_390(p) BOOST_PP_IIF(p(390), BOOST_PP_NODE_389, BOOST_PP_NODE_391)
# define BOOST_PP_NODE_389(p) BOOST_PP_IIF(p(389), 389, 390)
# define BOOST_PP_NODE_391(p) BOOST_PP_IIF(p(391), 391, 392)
# define BOOST_PP_NODE_396(p) BOOST_PP_IIF(p(396), BOOST_PP_NODE_394, BOOST_PP_NODE_398)
# define BOOST_PP_NODE_394(p) BOOST_PP_IIF(p(394), BOOST_PP_NODE_393, BOOST_PP_NODE_395)
# define BOOST_PP_NODE_393(p) BOOST_PP_IIF(p(393), 393, 394)
# define BOOST_PP_NODE_395(p) BOOST_PP_IIF(p(395), 395, 396)
# define BOOST_PP_NODE_398(p) BOOST_PP_IIF(p(398), BOOST_PP_NODE_397, BOOST_PP_NODE_399)
# define BOOST_PP_NODE_397(p) BOOST_PP_IIF(p(397), 397, 398)
# define BOOST_PP_NODE_399(p) BOOST_PP_IIF(p(399), 399, 400)
# define BOOST_PP_NODE_408(p) BOOST_PP_IIF(p(408), BOOST_PP_NODE_404, BOOST_PP_NODE_412)
# define BOOST_PP_NODE_404(p) BOOST_PP_IIF(p(404), BOOST_PP_NODE_402, BOOST_PP_NODE_406)
# define BOOST_PP_NODE_402(p) BOOST_PP_IIF(p(402), BOOST_PP_NODE_401, BOOST_PP_NODE_403)
# define BOOST_PP_NODE_401(p) BOOST_PP_IIF(p(401), 401, 402)
# define BOOST_PP_NODE_403(p) BOOST_PP_IIF(p(403), 403, 404)
# define BOOST_PP_NODE_406(p) BOOST_PP_IIF(p(406), BOOST_PP_NODE_405, BOOST_PP_NODE_407)
# define BOOST_PP_NODE_405(p) BOOST_PP_IIF(p(405), 405, 406)
# define BOOST_PP_NODE_407(p) BOOST_PP_IIF(p(407), 407, 408)
# define BOOST_PP_NODE_412(p) BOOST_PP_IIF(p(412), BOOST_PP_NODE_410, BOOST_PP_NODE_414)
# define BOOST_PP_NODE_410(p) BOOST_PP_IIF(p(410), BOOST_PP_NODE_409, BOOST_PP_NODE_411)
# define BOOST_PP_NODE_409(p) BOOST_PP_IIF(p(409), 409, 410)
# define BOOST_PP_NODE_411(p) BOOST_PP_IIF(p(411), 411, 412)
# define BOOST_PP_NODE_414(p) BOOST_PP_IIF(p(414), BOOST_PP_NODE_413, BOOST_PP_NODE_415)
# define BOOST_PP_NODE_413(p) BOOST_PP_IIF(p(413), 413, 414)
# define BOOST_PP_NODE_415(p) BOOST_PP_IIF(p(415), 415, 416)
# define BOOST_PP_NODE_432(p) BOOST_PP_IIF(p(432), BOOST_PP_NODE_424, BOOST_PP_NODE_440)
# define BOOST_PP_NODE_424(p) BOOST_PP_IIF(p(424), BOOST_PP_NODE_420, BOOST_PP_NODE_428)
# define BOOST_PP_NODE_420(p) BOOST_PP_IIF(p(420), BOOST_PP_NODE_418, BOOST_PP_NODE_422)
# define BOOST_PP_NODE_418(p) BOOST_PP_IIF(p(418), BOOST_PP_NODE_417, BOOST_PP_NODE_419)
# define BOOST_PP_NODE_417(p) BOOST_PP_IIF(p(417), 417, 418)
# define BOOST_PP_NODE_419(p) BOOST_PP_IIF(p(419), 419, 420)
# define BOOST_PP_NODE_422(p) BOOST_PP_IIF(p(422), BOOST_PP_NODE_421, BOOST_PP_NODE_423)
# define BOOST_PP_NODE_421(p) BOOST_PP_IIF(p(421), 421, 422)
# define BOOST_PP_NODE_423(p) BOOST_PP_IIF(p(423), 423, 424)
# define BOOST_PP_NODE_428(p) BOOST_PP_IIF(p(428), BOOST_PP_NODE_426, BOOST_PP_NODE_430)
# define BOOST_PP_NODE_426(p) BOOST_PP_IIF(p(426), BOOST_PP_NODE_425, BOOST_PP_NODE_427)
# define BOOST_PP_NODE_425(p) BOOST_PP_IIF(p(425), 425, 426)
# define BOOST_PP_NODE_427(p) BOOST_PP_IIF(p(427), 427, 428)
# define BOOST_PP_NODE_430(p) BOOST_PP_IIF(p(430), BOOST_PP_NODE_429, BOOST_PP_NODE_431)
# define BOOST_PP_NODE_429(p) BOOST_PP_IIF(p(429), 429, 430)
# define BOOST_PP_NODE_431(p) BOOST_PP_IIF(p(431), 431, 432)
# define BOOST_PP_NODE_440(p) BOOST_PP_IIF(p(440), BOOST_PP_NODE_436, BOOST_PP_NODE_444)
# define BOOST_PP_NODE_436(p) BOOST_PP_IIF(p(436), BOOST_PP_NODE_434, BOOST_PP_NODE_438)
# define BOOST_PP_NODE_434(p) BOOST_PP_IIF(p(434), BOOST_PP_NODE_433, BOOST_PP_NODE_435)
# define BOOST_PP_NODE_433(p) BOOST_PP_IIF(p(433), 433, 434)
# define BOOST_PP_NODE_435(p) BOOST_PP_IIF(p(435), 435, 436)
# define BOOST_PP_NODE_438(p) BOOST_PP_IIF(p(438), BOOST_PP_NODE_437, BOOST_PP_NODE_439)
# define BOOST_PP_NODE_437(p) BOOST_PP_IIF(p(437), 437, 438)
# define BOOST_PP_NODE_439(p) BOOST_PP_IIF(p(439), 439, 440)
# define BOOST_PP_NODE_444(p) BOOST_PP_IIF(p(444), BOOST_PP_NODE_442, BOOST_PP_NODE_446)
# define BOOST_PP_NODE_442(p) BOOST_PP_IIF(p(442), BOOST_PP_NODE_441, BOOST_PP_NODE_443)
# define BOOST_PP_NODE_441(p) BOOST_PP_IIF(p(441), 441, 442)
# define BOOST_PP_NODE_443(p) BOOST_PP_IIF(p(443), 443, 444)
# define BOOST_PP_NODE_446(p) BOOST_PP_IIF(p(446), BOOST_PP_NODE_445, BOOST_PP_NODE_447)
# define BOOST_PP_NODE_445(p) BOOST_PP_IIF(p(445), 445, 446)
# define BOOST_PP_NODE_447(p) BOOST_PP_IIF(p(447), 447, 448)
# define BOOST_PP_NODE_480(p) BOOST_PP_IIF(p(480), BOOST_PP_NODE_464, BOOST_PP_NODE_496)
# define BOOST_PP_NODE_464(p) BOOST_PP_IIF(p(464), BOOST_PP_NODE_456, BOOST_PP_NODE_472)
# define BOOST_PP_NODE_456(p) BOOST_PP_IIF(p(456), BOOST_PP_NODE_452, BOOST_PP_NODE_460)
# define BOOST_PP_NODE_452(p) BOOST_PP_IIF(p(452), BOOST_PP_NODE_450, BOOST_PP_NODE_454)
# define BOOST_PP_NODE_450(p) BOOST_PP_IIF(p(450), BOOST_PP_NODE_449, BOOST_PP_NODE_451)
# define BOOST_PP_NODE_449(p) BOOST_PP_IIF(p(449), 449, 450)
# define BOOST_PP_NODE_451(p) BOOST_PP_IIF(p(451), 451, 452)
# define BOOST_PP_NODE_454(p) BOOST_PP_IIF(p(454), BOOST_PP_NODE_453, BOOST_PP_NODE_455)
# define BOOST_PP_NODE_453(p) BOOST_PP_IIF(p(453), 453, 454)
# define BOOST_PP_NODE_455(p) BOOST_PP_IIF(p(455), 455, 456)
# define BOOST_PP_NODE_460(p) BOOST_PP_IIF(p(460), BOOST_PP_NODE_458, BOOST_PP_NODE_462)
# define BOOST_PP_NODE_458(p) BOOST_PP_IIF(p(458), BOOST_PP_NODE_457, BOOST_PP_NODE_459)
# define BOOST_PP_NODE_457(p) BOOST_PP_IIF(p(457), 457, 458)
# define BOOST_PP_NODE_459(p) BOOST_PP_IIF(p(459), 459, 460)
# define BOOST_PP_NODE_462(p) BOOST_PP_IIF(p(462), BOOST_PP_NODE_461, BOOST_PP_NODE_463)
# define BOOST_PP_NODE_461(p) BOOST_PP_IIF(p(461), 461, 462)
# define BOOST_PP_NODE_463(p) BOOST_PP_IIF(p(463), 463, 464)
# define BOOST_PP_NODE_472(p) BOOST_PP_IIF(p(472), BOOST_PP_NODE_468, BOOST_PP_NODE_476)
# define BOOST_PP_NODE_468(p) BOOST_PP_IIF(p(468), BOOST_PP_NODE_466, BOOST_PP_NODE_470)
# define BOOST_PP_NODE_466(p) BOOST_PP_IIF(p(466), BOOST_PP_NODE_465, BOOST_PP_NODE_467)
# define BOOST_PP_NODE_465(p) BOOST_PP_IIF(p(465), 465, 466)
# define BOOST_PP_NODE_467(p) BOOST_PP_IIF(p(467), 467, 468)
# define BOOST_PP_NODE_470(p) BOOST_PP_IIF(p(470), BOOST_PP_NODE_469, BOOST_PP_NODE_471)
# define BOOST_PP_NODE_469(p) BOOST_PP_IIF(p(469), 469, 470)
# define BOOST_PP_NODE_471(p) BOOST_PP_IIF(p(471), 471, 472)
# define BOOST_PP_NODE_476(p) BOOST_PP_IIF(p(476), BOOST_PP_NODE_474, BOOST_PP_NODE_478)
# define BOOST_PP_NODE_474(p) BOOST_PP_IIF(p(474), BOOST_PP_NODE_473, BOOST_PP_NODE_475)
# define BOOST_PP_NODE_473(p) BOOST_PP_IIF(p(473), 473, 474)
# define BOOST_PP_NODE_475(p) BOOST_PP_IIF(p(475), 475, 476)
# define BOOST_PP_NODE_478(p) BOOST_PP_IIF(p(478), BOOST_PP_NODE_477, BOOST_PP_NODE_479)
# define BOOST_PP_NODE_477(p) BOOST_PP_IIF(p(477), 477, 478)
# define BOOST_PP_NODE_479(p) BOOST_PP_IIF(p(479), 479, 480)
# define BOOST_PP_NODE_496(p) BOOST_PP_IIF(p(496), BOOST_PP_NODE_488, BOOST_PP_NODE_504)
# define BOOST_PP_NODE_488(p) BOOST_PP_IIF(p(488), BOOST_PP_NODE_484, BOOST_PP_NODE_492)
# define BOOST_PP_NODE_484(p) BOOST_PP_IIF(p(484), BOOST_PP_NODE_482, BOOST_PP_NODE_486)
# define BOOST_PP_NODE_482(p) BOOST_PP_IIF(p(482), BOOST_PP_NODE_481, BOOST_PP_NODE_483)
# define BOOST_PP_NODE_481(p) BOOST_PP_IIF(p(481), 481, 482)
# define BOOST_PP_NODE_483(p) BOOST_PP_IIF(p(483), 483, 484)
# define BOOST_PP_NODE_486(p) BOOST_PP_IIF(p(486), BOOST_PP_NODE_485, BOOST_PP_NODE_487)
# define BOOST_PP_NODE_485(p) BOOST_PP_IIF(p(485), 485, 486)
# define BOOST_PP_NODE_487(p) BOOST_PP_IIF(p(487), 487, 488)
# define BOOST_PP_NODE_492(p) BOOST_PP_IIF(p(492), BOOST_PP_NODE_490, BOOST_PP_NODE_494)
# define BOOST_PP_NODE_490(p) BOOST_PP_IIF(p(490), BOOST_PP_NODE_489, BOOST_PP_NODE_491)
# define BOOST_PP_NODE_489(p) BOOST_PP_IIF(p(489), 489, 490)
# define BOOST_PP_NODE_491(p) BOOST_PP_IIF(p(491), 491, 492)
# define BOOST_PP_NODE_494(p) BOOST_PP_IIF(p(494), BOOST_PP_NODE_493, BOOST_PP_NODE_495)
# define BOOST_PP_NODE_493(p) BOOST_PP_IIF(p(493), 493, 494)
# define BOOST_PP_NODE_495(p) BOOST_PP_IIF(p(495), 495, 496)
# define BOOST_PP_NODE_504(p) BOOST_PP_IIF(p(504), BOOST_PP_NODE_500, BOOST_PP_NODE_508)
# define BOOST_PP_NODE_500(p) BOOST_PP_IIF(p(500), BOOST_PP_NODE_498, BOOST_PP_NODE_502)
# define BOOST_PP_NODE_498(p) BOOST_PP_IIF(p(498), BOOST_PP_NODE_497, BOOST_PP_NODE_499)
# define BOOST_PP_NODE_497(p) BOOST_PP_IIF(p(497), 497, 498)
# define BOOST_PP_NODE_499(p) BOOST_PP_IIF(p(499), 499, 500)
# define BOOST_PP_NODE_502(p) BOOST_PP_IIF(p(502), BOOST_PP_NODE_501, BOOST_PP_NODE_503)
# define BOOST_PP_NODE_501(p) BOOST_PP_IIF(p(501), 501, 502)
# define BOOST_PP_NODE_503(p) BOOST_PP_IIF(p(503), 503, 504)
# define BOOST_PP_NODE_508(p) BOOST_PP_IIF(p(508), BOOST_PP_NODE_506, BOOST_PP_NODE_510)
# define BOOST_PP_NODE_506(p) BOOST_PP_IIF(p(506), BOOST_PP_NODE_505, BOOST_PP_NODE_507)
# define BOOST_PP_NODE_505(p) BOOST_PP_IIF(p(505), 505, 506)
# define BOOST_PP_NODE_507(p) BOOST_PP_IIF(p(507), 507, 508)
# define BOOST_PP_NODE_510(p) BOOST_PP_IIF(p(510), BOOST_PP_NODE_509, BOOST_PP_NODE_511)
# define BOOST_PP_NODE_509(p) BOOST_PP_IIF(p(509), 509, 510)
# define BOOST_PP_NODE_511(p) BOOST_PP_IIF(p(511), 511, 512)
#
# endif

View File

@ -7,11 +7,17 @@
# * *
# ************************************************************************** */
#
# /* Revised by Edward Diener (2020) */
#
# /* See http://www.boost.org for most recent version. */
#
# ifndef BOOST_PREPROCESSOR_FACILITIES_INTERCEPT_HPP
# define BOOST_PREPROCESSOR_FACILITIES_INTERCEPT_HPP
#
# include <boost/preprocessor/config/config.hpp>
#
# if ~BOOST_PP_CONFIG_FLAGS() & BOOST_PP_CONFIG_STRICT()
#
# /* BOOST_PP_INTERCEPT */
#
# define BOOST_PP_INTERCEPT BOOST_PP_INTERCEPT_
@ -274,4 +280,27 @@
# define BOOST_PP_INTERCEPT_255
# define BOOST_PP_INTERCEPT_256
#
# else
#
# /* BOOST_PP_INTERCEPT */
#
# define BOOST_PP_INTERCEPT BOOST_PP_INTERCEPT_
#
# include <boost/preprocessor/config/limits.hpp>
#
# if BOOST_PP_LIMIT_MAG == 256
# include <boost/preprocessor/facilities/limits/intercept_256.hpp>
# elif BOOST_PP_LIMIT_MAG == 512
# include <boost/preprocessor/facilities/limits/intercept_256.hpp>
# include <boost/preprocessor/facilities/limits/intercept_512.hpp>
# elif BOOST_PP_LIMIT_MAG == 1024
# include <boost/preprocessor/facilities/limits/intercept_256.hpp>
# include <boost/preprocessor/facilities/limits/intercept_512.hpp>
# include <boost/preprocessor/facilities/limits/intercept_1024.hpp>
# else
# error Incorrect value for the BOOST_PP_LIMIT_MAG limit
# endif
#
# endif
#
# endif

View File

@ -14,43 +14,6 @@
# define BOOST_PREPROCESSOR_FACILITIES_IS_EMPTY_HPP
#
# include <boost/preprocessor/config/config.hpp>
#
# if BOOST_PP_VARIADICS
#
# include <boost/preprocessor/facilities/is_empty_variadic.hpp>
#
# else
#
# if ~BOOST_PP_CONFIG_FLAGS() & BOOST_PP_CONFIG_MSVC() && ~BOOST_PP_CONFIG_FLAGS() & BOOST_PP_CONFIG_MWCC()
# include <boost/preprocessor/tuple/elem.hpp>
# include <boost/preprocessor/facilities/identity.hpp>
# else
# include <boost/preprocessor/cat.hpp>
# include <boost/preprocessor/detail/split.hpp>
# endif
#
# /* BOOST_PP_IS_EMPTY */
#
# if ~BOOST_PP_CONFIG_FLAGS() & BOOST_PP_CONFIG_MSVC() && ~BOOST_PP_CONFIG_FLAGS() & BOOST_PP_CONFIG_MWCC()
# define BOOST_PP_IS_EMPTY(x) BOOST_PP_IS_EMPTY_I(x BOOST_PP_IS_EMPTY_HELPER)
# define BOOST_PP_IS_EMPTY_I(contents) BOOST_PP_TUPLE_ELEM(2, 1, (BOOST_PP_IS_EMPTY_DEF_ ## contents()))
# define BOOST_PP_IS_EMPTY_DEF_BOOST_PP_IS_EMPTY_HELPER 1, BOOST_PP_IDENTITY(1)
# define BOOST_PP_IS_EMPTY_HELPER() , 0
# else
# if BOOST_PP_CONFIG_FLAGS() & BOOST_PP_CONFIG_MSVC()
# define BOOST_PP_IS_EMPTY(x) BOOST_PP_IS_EMPTY_I(BOOST_PP_IS_EMPTY_HELPER x ())
# define BOOST_PP_IS_EMPTY_I(test) BOOST_PP_IS_EMPTY_II(BOOST_PP_SPLIT(0, BOOST_PP_CAT(BOOST_PP_IS_EMPTY_DEF_, test)))
# define BOOST_PP_IS_EMPTY_II(id) id
# else
# define BOOST_PP_IS_EMPTY(x) BOOST_PP_IS_EMPTY_I((BOOST_PP_IS_EMPTY_HELPER x ()))
# define BOOST_PP_IS_EMPTY_I(par) BOOST_PP_IS_EMPTY_II ## par
# define BOOST_PP_IS_EMPTY_II(test) BOOST_PP_SPLIT(0, BOOST_PP_CAT(BOOST_PP_IS_EMPTY_DEF_, test))
# endif
# define BOOST_PP_IS_EMPTY_HELPER() 1
# define BOOST_PP_IS_EMPTY_DEF_1 1, BOOST_PP_NIL
# define BOOST_PP_IS_EMPTY_DEF_BOOST_PP_IS_EMPTY_HELPER 0, BOOST_PP_NIL
# endif
#
# endif /* BOOST_PP_VARIADICS */
#
# endif /* BOOST_PREPROCESSOR_FACILITIES_IS_EMPTY_HPP */

View File

@ -13,9 +13,6 @@
# define BOOST_PREPROCESSOR_FACILITIES_IS_EMPTY_VARIADIC_HPP
#
# include <boost/preprocessor/config/config.hpp>
#
# if BOOST_PP_VARIADICS
#
# include <boost/preprocessor/punctuation/is_begin_parens.hpp>
# include <boost/preprocessor/facilities/detail/is_empty.hpp>
#
@ -80,5 +77,4 @@
/**/
#define BOOST_PP_IS_EMPTY_ZERO(...) 0
# endif /* BOOST_PP_VARIADICS_MSVC && _MSC_VER <= 1400 */
# endif /* BOOST_PP_VARIADICS */
# endif /* BOOST_PREPROCESSOR_FACILITIES_IS_EMPTY_VARIADIC_HPP */

View File

@ -0,0 +1,530 @@
# /* **************************************************************************
# * *
# * (C) Copyright Paul Mensonides 2002.
# * Distributed under the Boost Software License, Version 1.0. (See
# * accompanying file LICENSE_1_0.txt or copy at
# * http://www.boost.org/LICENSE_1_0.txt)
# * *
# ************************************************************************** */
#
# /* Revised by Edward Diener (2020) */
#
# /* See http://www.boost.org for most recent version. */
#
# ifndef BOOST_PREPROCESSOR_FACILITIES_INTERCEPT_1024_HPP
# define BOOST_PREPROCESSOR_FACILITIES_INTERCEPT_1024_HPP
#
# define BOOST_PP_INTERCEPT_513
# define BOOST_PP_INTERCEPT_514
# define BOOST_PP_INTERCEPT_515
# define BOOST_PP_INTERCEPT_516
# define BOOST_PP_INTERCEPT_517
# define BOOST_PP_INTERCEPT_518
# define BOOST_PP_INTERCEPT_519
# define BOOST_PP_INTERCEPT_520
# define BOOST_PP_INTERCEPT_521
# define BOOST_PP_INTERCEPT_522
# define BOOST_PP_INTERCEPT_523
# define BOOST_PP_INTERCEPT_524
# define BOOST_PP_INTERCEPT_525
# define BOOST_PP_INTERCEPT_526
# define BOOST_PP_INTERCEPT_527
# define BOOST_PP_INTERCEPT_528
# define BOOST_PP_INTERCEPT_529
# define BOOST_PP_INTERCEPT_530
# define BOOST_PP_INTERCEPT_531
# define BOOST_PP_INTERCEPT_532
# define BOOST_PP_INTERCEPT_533
# define BOOST_PP_INTERCEPT_534
# define BOOST_PP_INTERCEPT_535
# define BOOST_PP_INTERCEPT_536
# define BOOST_PP_INTERCEPT_537
# define BOOST_PP_INTERCEPT_538
# define BOOST_PP_INTERCEPT_539
# define BOOST_PP_INTERCEPT_540
# define BOOST_PP_INTERCEPT_541
# define BOOST_PP_INTERCEPT_542
# define BOOST_PP_INTERCEPT_543
# define BOOST_PP_INTERCEPT_544
# define BOOST_PP_INTERCEPT_545
# define BOOST_PP_INTERCEPT_546
# define BOOST_PP_INTERCEPT_547
# define BOOST_PP_INTERCEPT_548
# define BOOST_PP_INTERCEPT_549
# define BOOST_PP_INTERCEPT_550
# define BOOST_PP_INTERCEPT_551
# define BOOST_PP_INTERCEPT_552
# define BOOST_PP_INTERCEPT_553
# define BOOST_PP_INTERCEPT_554
# define BOOST_PP_INTERCEPT_555
# define BOOST_PP_INTERCEPT_556
# define BOOST_PP_INTERCEPT_557
# define BOOST_PP_INTERCEPT_558
# define BOOST_PP_INTERCEPT_559
# define BOOST_PP_INTERCEPT_560
# define BOOST_PP_INTERCEPT_561
# define BOOST_PP_INTERCEPT_562
# define BOOST_PP_INTERCEPT_563
# define BOOST_PP_INTERCEPT_564
# define BOOST_PP_INTERCEPT_565
# define BOOST_PP_INTERCEPT_566
# define BOOST_PP_INTERCEPT_567
# define BOOST_PP_INTERCEPT_568
# define BOOST_PP_INTERCEPT_569
# define BOOST_PP_INTERCEPT_570
# define BOOST_PP_INTERCEPT_571
# define BOOST_PP_INTERCEPT_572
# define BOOST_PP_INTERCEPT_573
# define BOOST_PP_INTERCEPT_574
# define BOOST_PP_INTERCEPT_575
# define BOOST_PP_INTERCEPT_576
# define BOOST_PP_INTERCEPT_577
# define BOOST_PP_INTERCEPT_578
# define BOOST_PP_INTERCEPT_579
# define BOOST_PP_INTERCEPT_580
# define BOOST_PP_INTERCEPT_581
# define BOOST_PP_INTERCEPT_582
# define BOOST_PP_INTERCEPT_583
# define BOOST_PP_INTERCEPT_584
# define BOOST_PP_INTERCEPT_585
# define BOOST_PP_INTERCEPT_586
# define BOOST_PP_INTERCEPT_587
# define BOOST_PP_INTERCEPT_588
# define BOOST_PP_INTERCEPT_589
# define BOOST_PP_INTERCEPT_590
# define BOOST_PP_INTERCEPT_591
# define BOOST_PP_INTERCEPT_592
# define BOOST_PP_INTERCEPT_593
# define BOOST_PP_INTERCEPT_594
# define BOOST_PP_INTERCEPT_595
# define BOOST_PP_INTERCEPT_596
# define BOOST_PP_INTERCEPT_597
# define BOOST_PP_INTERCEPT_598
# define BOOST_PP_INTERCEPT_599
# define BOOST_PP_INTERCEPT_600
# define BOOST_PP_INTERCEPT_601
# define BOOST_PP_INTERCEPT_602
# define BOOST_PP_INTERCEPT_603
# define BOOST_PP_INTERCEPT_604
# define BOOST_PP_INTERCEPT_605
# define BOOST_PP_INTERCEPT_606
# define BOOST_PP_INTERCEPT_607
# define BOOST_PP_INTERCEPT_608
# define BOOST_PP_INTERCEPT_609
# define BOOST_PP_INTERCEPT_610
# define BOOST_PP_INTERCEPT_611
# define BOOST_PP_INTERCEPT_612
# define BOOST_PP_INTERCEPT_613
# define BOOST_PP_INTERCEPT_614
# define BOOST_PP_INTERCEPT_615
# define BOOST_PP_INTERCEPT_616
# define BOOST_PP_INTERCEPT_617
# define BOOST_PP_INTERCEPT_618
# define BOOST_PP_INTERCEPT_619
# define BOOST_PP_INTERCEPT_620
# define BOOST_PP_INTERCEPT_621
# define BOOST_PP_INTERCEPT_622
# define BOOST_PP_INTERCEPT_623
# define BOOST_PP_INTERCEPT_624
# define BOOST_PP_INTERCEPT_625
# define BOOST_PP_INTERCEPT_626
# define BOOST_PP_INTERCEPT_627
# define BOOST_PP_INTERCEPT_628
# define BOOST_PP_INTERCEPT_629
# define BOOST_PP_INTERCEPT_630
# define BOOST_PP_INTERCEPT_631
# define BOOST_PP_INTERCEPT_632
# define BOOST_PP_INTERCEPT_633
# define BOOST_PP_INTERCEPT_634
# define BOOST_PP_INTERCEPT_635
# define BOOST_PP_INTERCEPT_636
# define BOOST_PP_INTERCEPT_637
# define BOOST_PP_INTERCEPT_638
# define BOOST_PP_INTERCEPT_639
# define BOOST_PP_INTERCEPT_640
# define BOOST_PP_INTERCEPT_641
# define BOOST_PP_INTERCEPT_642
# define BOOST_PP_INTERCEPT_643
# define BOOST_PP_INTERCEPT_644
# define BOOST_PP_INTERCEPT_645
# define BOOST_PP_INTERCEPT_646
# define BOOST_PP_INTERCEPT_647
# define BOOST_PP_INTERCEPT_648
# define BOOST_PP_INTERCEPT_649
# define BOOST_PP_INTERCEPT_650
# define BOOST_PP_INTERCEPT_651
# define BOOST_PP_INTERCEPT_652
# define BOOST_PP_INTERCEPT_653
# define BOOST_PP_INTERCEPT_654
# define BOOST_PP_INTERCEPT_655
# define BOOST_PP_INTERCEPT_656
# define BOOST_PP_INTERCEPT_657
# define BOOST_PP_INTERCEPT_658
# define BOOST_PP_INTERCEPT_659
# define BOOST_PP_INTERCEPT_660
# define BOOST_PP_INTERCEPT_661
# define BOOST_PP_INTERCEPT_662
# define BOOST_PP_INTERCEPT_663
# define BOOST_PP_INTERCEPT_664
# define BOOST_PP_INTERCEPT_665
# define BOOST_PP_INTERCEPT_666
# define BOOST_PP_INTERCEPT_667
# define BOOST_PP_INTERCEPT_668
# define BOOST_PP_INTERCEPT_669
# define BOOST_PP_INTERCEPT_670
# define BOOST_PP_INTERCEPT_671
# define BOOST_PP_INTERCEPT_672
# define BOOST_PP_INTERCEPT_673
# define BOOST_PP_INTERCEPT_674
# define BOOST_PP_INTERCEPT_675
# define BOOST_PP_INTERCEPT_676
# define BOOST_PP_INTERCEPT_677
# define BOOST_PP_INTERCEPT_678
# define BOOST_PP_INTERCEPT_679
# define BOOST_PP_INTERCEPT_680
# define BOOST_PP_INTERCEPT_681
# define BOOST_PP_INTERCEPT_682
# define BOOST_PP_INTERCEPT_683
# define BOOST_PP_INTERCEPT_684
# define BOOST_PP_INTERCEPT_685
# define BOOST_PP_INTERCEPT_686
# define BOOST_PP_INTERCEPT_687
# define BOOST_PP_INTERCEPT_688
# define BOOST_PP_INTERCEPT_689
# define BOOST_PP_INTERCEPT_690
# define BOOST_PP_INTERCEPT_691
# define BOOST_PP_INTERCEPT_692
# define BOOST_PP_INTERCEPT_693
# define BOOST_PP_INTERCEPT_694
# define BOOST_PP_INTERCEPT_695
# define BOOST_PP_INTERCEPT_696
# define BOOST_PP_INTERCEPT_697
# define BOOST_PP_INTERCEPT_698
# define BOOST_PP_INTERCEPT_699
# define BOOST_PP_INTERCEPT_700
# define BOOST_PP_INTERCEPT_701
# define BOOST_PP_INTERCEPT_702
# define BOOST_PP_INTERCEPT_703
# define BOOST_PP_INTERCEPT_704
# define BOOST_PP_INTERCEPT_705
# define BOOST_PP_INTERCEPT_706
# define BOOST_PP_INTERCEPT_707
# define BOOST_PP_INTERCEPT_708
# define BOOST_PP_INTERCEPT_709
# define BOOST_PP_INTERCEPT_710
# define BOOST_PP_INTERCEPT_711
# define BOOST_PP_INTERCEPT_712
# define BOOST_PP_INTERCEPT_713
# define BOOST_PP_INTERCEPT_714
# define BOOST_PP_INTERCEPT_715
# define BOOST_PP_INTERCEPT_716
# define BOOST_PP_INTERCEPT_717
# define BOOST_PP_INTERCEPT_718
# define BOOST_PP_INTERCEPT_719
# define BOOST_PP_INTERCEPT_720
# define BOOST_PP_INTERCEPT_721
# define BOOST_PP_INTERCEPT_722
# define BOOST_PP_INTERCEPT_723
# define BOOST_PP_INTERCEPT_724
# define BOOST_PP_INTERCEPT_725
# define BOOST_PP_INTERCEPT_726
# define BOOST_PP_INTERCEPT_727
# define BOOST_PP_INTERCEPT_728
# define BOOST_PP_INTERCEPT_729
# define BOOST_PP_INTERCEPT_730
# define BOOST_PP_INTERCEPT_731
# define BOOST_PP_INTERCEPT_732
# define BOOST_PP_INTERCEPT_733
# define BOOST_PP_INTERCEPT_734
# define BOOST_PP_INTERCEPT_735
# define BOOST_PP_INTERCEPT_736
# define BOOST_PP_INTERCEPT_737
# define BOOST_PP_INTERCEPT_738
# define BOOST_PP_INTERCEPT_739
# define BOOST_PP_INTERCEPT_740
# define BOOST_PP_INTERCEPT_741
# define BOOST_PP_INTERCEPT_742
# define BOOST_PP_INTERCEPT_743
# define BOOST_PP_INTERCEPT_744
# define BOOST_PP_INTERCEPT_745
# define BOOST_PP_INTERCEPT_746
# define BOOST_PP_INTERCEPT_747
# define BOOST_PP_INTERCEPT_748
# define BOOST_PP_INTERCEPT_749
# define BOOST_PP_INTERCEPT_750
# define BOOST_PP_INTERCEPT_751
# define BOOST_PP_INTERCEPT_752
# define BOOST_PP_INTERCEPT_753
# define BOOST_PP_INTERCEPT_754
# define BOOST_PP_INTERCEPT_755
# define BOOST_PP_INTERCEPT_756
# define BOOST_PP_INTERCEPT_757
# define BOOST_PP_INTERCEPT_758
# define BOOST_PP_INTERCEPT_759
# define BOOST_PP_INTERCEPT_760
# define BOOST_PP_INTERCEPT_761
# define BOOST_PP_INTERCEPT_762
# define BOOST_PP_INTERCEPT_763
# define BOOST_PP_INTERCEPT_764
# define BOOST_PP_INTERCEPT_765
# define BOOST_PP_INTERCEPT_766
# define BOOST_PP_INTERCEPT_767
# define BOOST_PP_INTERCEPT_768
# define BOOST_PP_INTERCEPT_769
# define BOOST_PP_INTERCEPT_770
# define BOOST_PP_INTERCEPT_771
# define BOOST_PP_INTERCEPT_772
# define BOOST_PP_INTERCEPT_773
# define BOOST_PP_INTERCEPT_774
# define BOOST_PP_INTERCEPT_775
# define BOOST_PP_INTERCEPT_776
# define BOOST_PP_INTERCEPT_777
# define BOOST_PP_INTERCEPT_778
# define BOOST_PP_INTERCEPT_779
# define BOOST_PP_INTERCEPT_780
# define BOOST_PP_INTERCEPT_781
# define BOOST_PP_INTERCEPT_782
# define BOOST_PP_INTERCEPT_783
# define BOOST_PP_INTERCEPT_784
# define BOOST_PP_INTERCEPT_785
# define BOOST_PP_INTERCEPT_786
# define BOOST_PP_INTERCEPT_787
# define BOOST_PP_INTERCEPT_788
# define BOOST_PP_INTERCEPT_789
# define BOOST_PP_INTERCEPT_790
# define BOOST_PP_INTERCEPT_791
# define BOOST_PP_INTERCEPT_792
# define BOOST_PP_INTERCEPT_793
# define BOOST_PP_INTERCEPT_794
# define BOOST_PP_INTERCEPT_795
# define BOOST_PP_INTERCEPT_796
# define BOOST_PP_INTERCEPT_797
# define BOOST_PP_INTERCEPT_798
# define BOOST_PP_INTERCEPT_799
# define BOOST_PP_INTERCEPT_800
# define BOOST_PP_INTERCEPT_801
# define BOOST_PP_INTERCEPT_802
# define BOOST_PP_INTERCEPT_803
# define BOOST_PP_INTERCEPT_804
# define BOOST_PP_INTERCEPT_805
# define BOOST_PP_INTERCEPT_806
# define BOOST_PP_INTERCEPT_807
# define BOOST_PP_INTERCEPT_808
# define BOOST_PP_INTERCEPT_809
# define BOOST_PP_INTERCEPT_810
# define BOOST_PP_INTERCEPT_811
# define BOOST_PP_INTERCEPT_812
# define BOOST_PP_INTERCEPT_813
# define BOOST_PP_INTERCEPT_814
# define BOOST_PP_INTERCEPT_815
# define BOOST_PP_INTERCEPT_816
# define BOOST_PP_INTERCEPT_817
# define BOOST_PP_INTERCEPT_818
# define BOOST_PP_INTERCEPT_819
# define BOOST_PP_INTERCEPT_820
# define BOOST_PP_INTERCEPT_821
# define BOOST_PP_INTERCEPT_822
# define BOOST_PP_INTERCEPT_823
# define BOOST_PP_INTERCEPT_824
# define BOOST_PP_INTERCEPT_825
# define BOOST_PP_INTERCEPT_826
# define BOOST_PP_INTERCEPT_827
# define BOOST_PP_INTERCEPT_828
# define BOOST_PP_INTERCEPT_829
# define BOOST_PP_INTERCEPT_830
# define BOOST_PP_INTERCEPT_831
# define BOOST_PP_INTERCEPT_832
# define BOOST_PP_INTERCEPT_833
# define BOOST_PP_INTERCEPT_834
# define BOOST_PP_INTERCEPT_835
# define BOOST_PP_INTERCEPT_836
# define BOOST_PP_INTERCEPT_837
# define BOOST_PP_INTERCEPT_838
# define BOOST_PP_INTERCEPT_839
# define BOOST_PP_INTERCEPT_840
# define BOOST_PP_INTERCEPT_841
# define BOOST_PP_INTERCEPT_842
# define BOOST_PP_INTERCEPT_843
# define BOOST_PP_INTERCEPT_844
# define BOOST_PP_INTERCEPT_845
# define BOOST_PP_INTERCEPT_846
# define BOOST_PP_INTERCEPT_847
# define BOOST_PP_INTERCEPT_848
# define BOOST_PP_INTERCEPT_849
# define BOOST_PP_INTERCEPT_850
# define BOOST_PP_INTERCEPT_851
# define BOOST_PP_INTERCEPT_852
# define BOOST_PP_INTERCEPT_853
# define BOOST_PP_INTERCEPT_854
# define BOOST_PP_INTERCEPT_855
# define BOOST_PP_INTERCEPT_856
# define BOOST_PP_INTERCEPT_857
# define BOOST_PP_INTERCEPT_858
# define BOOST_PP_INTERCEPT_859
# define BOOST_PP_INTERCEPT_860
# define BOOST_PP_INTERCEPT_861
# define BOOST_PP_INTERCEPT_862
# define BOOST_PP_INTERCEPT_863
# define BOOST_PP_INTERCEPT_864
# define BOOST_PP_INTERCEPT_865
# define BOOST_PP_INTERCEPT_866
# define BOOST_PP_INTERCEPT_867
# define BOOST_PP_INTERCEPT_868
# define BOOST_PP_INTERCEPT_869
# define BOOST_PP_INTERCEPT_870
# define BOOST_PP_INTERCEPT_871
# define BOOST_PP_INTERCEPT_872
# define BOOST_PP_INTERCEPT_873
# define BOOST_PP_INTERCEPT_874
# define BOOST_PP_INTERCEPT_875
# define BOOST_PP_INTERCEPT_876
# define BOOST_PP_INTERCEPT_877
# define BOOST_PP_INTERCEPT_878
# define BOOST_PP_INTERCEPT_879
# define BOOST_PP_INTERCEPT_880
# define BOOST_PP_INTERCEPT_881
# define BOOST_PP_INTERCEPT_882
# define BOOST_PP_INTERCEPT_883
# define BOOST_PP_INTERCEPT_884
# define BOOST_PP_INTERCEPT_885
# define BOOST_PP_INTERCEPT_886
# define BOOST_PP_INTERCEPT_887
# define BOOST_PP_INTERCEPT_888
# define BOOST_PP_INTERCEPT_889
# define BOOST_PP_INTERCEPT_890
# define BOOST_PP_INTERCEPT_891
# define BOOST_PP_INTERCEPT_892
# define BOOST_PP_INTERCEPT_893
# define BOOST_PP_INTERCEPT_894
# define BOOST_PP_INTERCEPT_895
# define BOOST_PP_INTERCEPT_896
# define BOOST_PP_INTERCEPT_897
# define BOOST_PP_INTERCEPT_898
# define BOOST_PP_INTERCEPT_899
# define BOOST_PP_INTERCEPT_900
# define BOOST_PP_INTERCEPT_901
# define BOOST_PP_INTERCEPT_902
# define BOOST_PP_INTERCEPT_903
# define BOOST_PP_INTERCEPT_904
# define BOOST_PP_INTERCEPT_905
# define BOOST_PP_INTERCEPT_906
# define BOOST_PP_INTERCEPT_907
# define BOOST_PP_INTERCEPT_908
# define BOOST_PP_INTERCEPT_909
# define BOOST_PP_INTERCEPT_910
# define BOOST_PP_INTERCEPT_911
# define BOOST_PP_INTERCEPT_912
# define BOOST_PP_INTERCEPT_913
# define BOOST_PP_INTERCEPT_914
# define BOOST_PP_INTERCEPT_915
# define BOOST_PP_INTERCEPT_916
# define BOOST_PP_INTERCEPT_917
# define BOOST_PP_INTERCEPT_918
# define BOOST_PP_INTERCEPT_919
# define BOOST_PP_INTERCEPT_920
# define BOOST_PP_INTERCEPT_921
# define BOOST_PP_INTERCEPT_922
# define BOOST_PP_INTERCEPT_923
# define BOOST_PP_INTERCEPT_924
# define BOOST_PP_INTERCEPT_925
# define BOOST_PP_INTERCEPT_926
# define BOOST_PP_INTERCEPT_927
# define BOOST_PP_INTERCEPT_928
# define BOOST_PP_INTERCEPT_929
# define BOOST_PP_INTERCEPT_930
# define BOOST_PP_INTERCEPT_931
# define BOOST_PP_INTERCEPT_932
# define BOOST_PP_INTERCEPT_933
# define BOOST_PP_INTERCEPT_934
# define BOOST_PP_INTERCEPT_935
# define BOOST_PP_INTERCEPT_936
# define BOOST_PP_INTERCEPT_937
# define BOOST_PP_INTERCEPT_938
# define BOOST_PP_INTERCEPT_939
# define BOOST_PP_INTERCEPT_940
# define BOOST_PP_INTERCEPT_941
# define BOOST_PP_INTERCEPT_942
# define BOOST_PP_INTERCEPT_943
# define BOOST_PP_INTERCEPT_944
# define BOOST_PP_INTERCEPT_945
# define BOOST_PP_INTERCEPT_946
# define BOOST_PP_INTERCEPT_947
# define BOOST_PP_INTERCEPT_948
# define BOOST_PP_INTERCEPT_949
# define BOOST_PP_INTERCEPT_950
# define BOOST_PP_INTERCEPT_951
# define BOOST_PP_INTERCEPT_952
# define BOOST_PP_INTERCEPT_953
# define BOOST_PP_INTERCEPT_954
# define BOOST_PP_INTERCEPT_955
# define BOOST_PP_INTERCEPT_956
# define BOOST_PP_INTERCEPT_957
# define BOOST_PP_INTERCEPT_958
# define BOOST_PP_INTERCEPT_959
# define BOOST_PP_INTERCEPT_960
# define BOOST_PP_INTERCEPT_961
# define BOOST_PP_INTERCEPT_962
# define BOOST_PP_INTERCEPT_963
# define BOOST_PP_INTERCEPT_964
# define BOOST_PP_INTERCEPT_965
# define BOOST_PP_INTERCEPT_966
# define BOOST_PP_INTERCEPT_967
# define BOOST_PP_INTERCEPT_968
# define BOOST_PP_INTERCEPT_969
# define BOOST_PP_INTERCEPT_970
# define BOOST_PP_INTERCEPT_971
# define BOOST_PP_INTERCEPT_972
# define BOOST_PP_INTERCEPT_973
# define BOOST_PP_INTERCEPT_974
# define BOOST_PP_INTERCEPT_975
# define BOOST_PP_INTERCEPT_976
# define BOOST_PP_INTERCEPT_977
# define BOOST_PP_INTERCEPT_978
# define BOOST_PP_INTERCEPT_979
# define BOOST_PP_INTERCEPT_980
# define BOOST_PP_INTERCEPT_981
# define BOOST_PP_INTERCEPT_982
# define BOOST_PP_INTERCEPT_983
# define BOOST_PP_INTERCEPT_984
# define BOOST_PP_INTERCEPT_985
# define BOOST_PP_INTERCEPT_986
# define BOOST_PP_INTERCEPT_987
# define BOOST_PP_INTERCEPT_988
# define BOOST_PP_INTERCEPT_989
# define BOOST_PP_INTERCEPT_990
# define BOOST_PP_INTERCEPT_991
# define BOOST_PP_INTERCEPT_992
# define BOOST_PP_INTERCEPT_993
# define BOOST_PP_INTERCEPT_994
# define BOOST_PP_INTERCEPT_995
# define BOOST_PP_INTERCEPT_996
# define BOOST_PP_INTERCEPT_997
# define BOOST_PP_INTERCEPT_998
# define BOOST_PP_INTERCEPT_999
# define BOOST_PP_INTERCEPT_1000
# define BOOST_PP_INTERCEPT_1001
# define BOOST_PP_INTERCEPT_1002
# define BOOST_PP_INTERCEPT_1003
# define BOOST_PP_INTERCEPT_1004
# define BOOST_PP_INTERCEPT_1005
# define BOOST_PP_INTERCEPT_1006
# define BOOST_PP_INTERCEPT_1007
# define BOOST_PP_INTERCEPT_1008
# define BOOST_PP_INTERCEPT_1009
# define BOOST_PP_INTERCEPT_1010
# define BOOST_PP_INTERCEPT_1011
# define BOOST_PP_INTERCEPT_1012
# define BOOST_PP_INTERCEPT_1013
# define BOOST_PP_INTERCEPT_1014
# define BOOST_PP_INTERCEPT_1015
# define BOOST_PP_INTERCEPT_1016
# define BOOST_PP_INTERCEPT_1017
# define BOOST_PP_INTERCEPT_1018
# define BOOST_PP_INTERCEPT_1019
# define BOOST_PP_INTERCEPT_1020
# define BOOST_PP_INTERCEPT_1021
# define BOOST_PP_INTERCEPT_1022
# define BOOST_PP_INTERCEPT_1023
# define BOOST_PP_INTERCEPT_1024
#
# endif

View File

@ -0,0 +1,273 @@
# /* **************************************************************************
# * *
# * (C) Copyright Paul Mensonides 2002.
# * Distributed under the Boost Software License, Version 1.0. (See
# * accompanying file LICENSE_1_0.txt or copy at
# * http://www.boost.org/LICENSE_1_0.txt)
# * *
# ************************************************************************** */
#
# /* See http://www.boost.org for most recent version. */
#
# ifndef BOOST_PREPROCESSOR_FACILITIES_INTERCEPT_256_HPP
# define BOOST_PREPROCESSOR_FACILITIES_INTERCEPT_256_HPP
#
# define BOOST_PP_INTERCEPT_0
# define BOOST_PP_INTERCEPT_1
# define BOOST_PP_INTERCEPT_2
# define BOOST_PP_INTERCEPT_3
# define BOOST_PP_INTERCEPT_4
# define BOOST_PP_INTERCEPT_5
# define BOOST_PP_INTERCEPT_6
# define BOOST_PP_INTERCEPT_7
# define BOOST_PP_INTERCEPT_8
# define BOOST_PP_INTERCEPT_9
# define BOOST_PP_INTERCEPT_10
# define BOOST_PP_INTERCEPT_11
# define BOOST_PP_INTERCEPT_12
# define BOOST_PP_INTERCEPT_13
# define BOOST_PP_INTERCEPT_14
# define BOOST_PP_INTERCEPT_15
# define BOOST_PP_INTERCEPT_16
# define BOOST_PP_INTERCEPT_17
# define BOOST_PP_INTERCEPT_18
# define BOOST_PP_INTERCEPT_19
# define BOOST_PP_INTERCEPT_20
# define BOOST_PP_INTERCEPT_21
# define BOOST_PP_INTERCEPT_22
# define BOOST_PP_INTERCEPT_23
# define BOOST_PP_INTERCEPT_24
# define BOOST_PP_INTERCEPT_25
# define BOOST_PP_INTERCEPT_26
# define BOOST_PP_INTERCEPT_27
# define BOOST_PP_INTERCEPT_28
# define BOOST_PP_INTERCEPT_29
# define BOOST_PP_INTERCEPT_30
# define BOOST_PP_INTERCEPT_31
# define BOOST_PP_INTERCEPT_32
# define BOOST_PP_INTERCEPT_33
# define BOOST_PP_INTERCEPT_34
# define BOOST_PP_INTERCEPT_35
# define BOOST_PP_INTERCEPT_36
# define BOOST_PP_INTERCEPT_37
# define BOOST_PP_INTERCEPT_38
# define BOOST_PP_INTERCEPT_39
# define BOOST_PP_INTERCEPT_40
# define BOOST_PP_INTERCEPT_41
# define BOOST_PP_INTERCEPT_42
# define BOOST_PP_INTERCEPT_43
# define BOOST_PP_INTERCEPT_44
# define BOOST_PP_INTERCEPT_45
# define BOOST_PP_INTERCEPT_46
# define BOOST_PP_INTERCEPT_47
# define BOOST_PP_INTERCEPT_48
# define BOOST_PP_INTERCEPT_49
# define BOOST_PP_INTERCEPT_50
# define BOOST_PP_INTERCEPT_51
# define BOOST_PP_INTERCEPT_52
# define BOOST_PP_INTERCEPT_53
# define BOOST_PP_INTERCEPT_54
# define BOOST_PP_INTERCEPT_55
# define BOOST_PP_INTERCEPT_56
# define BOOST_PP_INTERCEPT_57
# define BOOST_PP_INTERCEPT_58
# define BOOST_PP_INTERCEPT_59
# define BOOST_PP_INTERCEPT_60
# define BOOST_PP_INTERCEPT_61
# define BOOST_PP_INTERCEPT_62
# define BOOST_PP_INTERCEPT_63
# define BOOST_PP_INTERCEPT_64
# define BOOST_PP_INTERCEPT_65
# define BOOST_PP_INTERCEPT_66
# define BOOST_PP_INTERCEPT_67
# define BOOST_PP_INTERCEPT_68
# define BOOST_PP_INTERCEPT_69
# define BOOST_PP_INTERCEPT_70
# define BOOST_PP_INTERCEPT_71
# define BOOST_PP_INTERCEPT_72
# define BOOST_PP_INTERCEPT_73
# define BOOST_PP_INTERCEPT_74
# define BOOST_PP_INTERCEPT_75
# define BOOST_PP_INTERCEPT_76
# define BOOST_PP_INTERCEPT_77
# define BOOST_PP_INTERCEPT_78
# define BOOST_PP_INTERCEPT_79
# define BOOST_PP_INTERCEPT_80
# define BOOST_PP_INTERCEPT_81
# define BOOST_PP_INTERCEPT_82
# define BOOST_PP_INTERCEPT_83
# define BOOST_PP_INTERCEPT_84
# define BOOST_PP_INTERCEPT_85
# define BOOST_PP_INTERCEPT_86
# define BOOST_PP_INTERCEPT_87
# define BOOST_PP_INTERCEPT_88
# define BOOST_PP_INTERCEPT_89
# define BOOST_PP_INTERCEPT_90
# define BOOST_PP_INTERCEPT_91
# define BOOST_PP_INTERCEPT_92
# define BOOST_PP_INTERCEPT_93
# define BOOST_PP_INTERCEPT_94
# define BOOST_PP_INTERCEPT_95
# define BOOST_PP_INTERCEPT_96
# define BOOST_PP_INTERCEPT_97
# define BOOST_PP_INTERCEPT_98
# define BOOST_PP_INTERCEPT_99
# define BOOST_PP_INTERCEPT_100
# define BOOST_PP_INTERCEPT_101
# define BOOST_PP_INTERCEPT_102
# define BOOST_PP_INTERCEPT_103
# define BOOST_PP_INTERCEPT_104
# define BOOST_PP_INTERCEPT_105
# define BOOST_PP_INTERCEPT_106
# define BOOST_PP_INTERCEPT_107
# define BOOST_PP_INTERCEPT_108
# define BOOST_PP_INTERCEPT_109
# define BOOST_PP_INTERCEPT_110
# define BOOST_PP_INTERCEPT_111
# define BOOST_PP_INTERCEPT_112
# define BOOST_PP_INTERCEPT_113
# define BOOST_PP_INTERCEPT_114
# define BOOST_PP_INTERCEPT_115
# define BOOST_PP_INTERCEPT_116
# define BOOST_PP_INTERCEPT_117
# define BOOST_PP_INTERCEPT_118
# define BOOST_PP_INTERCEPT_119
# define BOOST_PP_INTERCEPT_120
# define BOOST_PP_INTERCEPT_121
# define BOOST_PP_INTERCEPT_122
# define BOOST_PP_INTERCEPT_123
# define BOOST_PP_INTERCEPT_124
# define BOOST_PP_INTERCEPT_125
# define BOOST_PP_INTERCEPT_126
# define BOOST_PP_INTERCEPT_127
# define BOOST_PP_INTERCEPT_128
# define BOOST_PP_INTERCEPT_129
# define BOOST_PP_INTERCEPT_130
# define BOOST_PP_INTERCEPT_131
# define BOOST_PP_INTERCEPT_132
# define BOOST_PP_INTERCEPT_133
# define BOOST_PP_INTERCEPT_134
# define BOOST_PP_INTERCEPT_135
# define BOOST_PP_INTERCEPT_136
# define BOOST_PP_INTERCEPT_137
# define BOOST_PP_INTERCEPT_138
# define BOOST_PP_INTERCEPT_139
# define BOOST_PP_INTERCEPT_140
# define BOOST_PP_INTERCEPT_141
# define BOOST_PP_INTERCEPT_142
# define BOOST_PP_INTERCEPT_143
# define BOOST_PP_INTERCEPT_144
# define BOOST_PP_INTERCEPT_145
# define BOOST_PP_INTERCEPT_146
# define BOOST_PP_INTERCEPT_147
# define BOOST_PP_INTERCEPT_148
# define BOOST_PP_INTERCEPT_149
# define BOOST_PP_INTERCEPT_150
# define BOOST_PP_INTERCEPT_151
# define BOOST_PP_INTERCEPT_152
# define BOOST_PP_INTERCEPT_153
# define BOOST_PP_INTERCEPT_154
# define BOOST_PP_INTERCEPT_155
# define BOOST_PP_INTERCEPT_156
# define BOOST_PP_INTERCEPT_157
# define BOOST_PP_INTERCEPT_158
# define BOOST_PP_INTERCEPT_159
# define BOOST_PP_INTERCEPT_160
# define BOOST_PP_INTERCEPT_161
# define BOOST_PP_INTERCEPT_162
# define BOOST_PP_INTERCEPT_163
# define BOOST_PP_INTERCEPT_164
# define BOOST_PP_INTERCEPT_165
# define BOOST_PP_INTERCEPT_166
# define BOOST_PP_INTERCEPT_167
# define BOOST_PP_INTERCEPT_168
# define BOOST_PP_INTERCEPT_169
# define BOOST_PP_INTERCEPT_170
# define BOOST_PP_INTERCEPT_171
# define BOOST_PP_INTERCEPT_172
# define BOOST_PP_INTERCEPT_173
# define BOOST_PP_INTERCEPT_174
# define BOOST_PP_INTERCEPT_175
# define BOOST_PP_INTERCEPT_176
# define BOOST_PP_INTERCEPT_177
# define BOOST_PP_INTERCEPT_178
# define BOOST_PP_INTERCEPT_179
# define BOOST_PP_INTERCEPT_180
# define BOOST_PP_INTERCEPT_181
# define BOOST_PP_INTERCEPT_182
# define BOOST_PP_INTERCEPT_183
# define BOOST_PP_INTERCEPT_184
# define BOOST_PP_INTERCEPT_185
# define BOOST_PP_INTERCEPT_186
# define BOOST_PP_INTERCEPT_187
# define BOOST_PP_INTERCEPT_188
# define BOOST_PP_INTERCEPT_189
# define BOOST_PP_INTERCEPT_190
# define BOOST_PP_INTERCEPT_191
# define BOOST_PP_INTERCEPT_192
# define BOOST_PP_INTERCEPT_193
# define BOOST_PP_INTERCEPT_194
# define BOOST_PP_INTERCEPT_195
# define BOOST_PP_INTERCEPT_196
# define BOOST_PP_INTERCEPT_197
# define BOOST_PP_INTERCEPT_198
# define BOOST_PP_INTERCEPT_199
# define BOOST_PP_INTERCEPT_200
# define BOOST_PP_INTERCEPT_201
# define BOOST_PP_INTERCEPT_202
# define BOOST_PP_INTERCEPT_203
# define BOOST_PP_INTERCEPT_204
# define BOOST_PP_INTERCEPT_205
# define BOOST_PP_INTERCEPT_206
# define BOOST_PP_INTERCEPT_207
# define BOOST_PP_INTERCEPT_208
# define BOOST_PP_INTERCEPT_209
# define BOOST_PP_INTERCEPT_210
# define BOOST_PP_INTERCEPT_211
# define BOOST_PP_INTERCEPT_212
# define BOOST_PP_INTERCEPT_213
# define BOOST_PP_INTERCEPT_214
# define BOOST_PP_INTERCEPT_215
# define BOOST_PP_INTERCEPT_216
# define BOOST_PP_INTERCEPT_217
# define BOOST_PP_INTERCEPT_218
# define BOOST_PP_INTERCEPT_219
# define BOOST_PP_INTERCEPT_220
# define BOOST_PP_INTERCEPT_221
# define BOOST_PP_INTERCEPT_222
# define BOOST_PP_INTERCEPT_223
# define BOOST_PP_INTERCEPT_224
# define BOOST_PP_INTERCEPT_225
# define BOOST_PP_INTERCEPT_226
# define BOOST_PP_INTERCEPT_227
# define BOOST_PP_INTERCEPT_228
# define BOOST_PP_INTERCEPT_229
# define BOOST_PP_INTERCEPT_230
# define BOOST_PP_INTERCEPT_231
# define BOOST_PP_INTERCEPT_232
# define BOOST_PP_INTERCEPT_233
# define BOOST_PP_INTERCEPT_234
# define BOOST_PP_INTERCEPT_235
# define BOOST_PP_INTERCEPT_236
# define BOOST_PP_INTERCEPT_237
# define BOOST_PP_INTERCEPT_238
# define BOOST_PP_INTERCEPT_239
# define BOOST_PP_INTERCEPT_240
# define BOOST_PP_INTERCEPT_241
# define BOOST_PP_INTERCEPT_242
# define BOOST_PP_INTERCEPT_243
# define BOOST_PP_INTERCEPT_244
# define BOOST_PP_INTERCEPT_245
# define BOOST_PP_INTERCEPT_246
# define BOOST_PP_INTERCEPT_247
# define BOOST_PP_INTERCEPT_248
# define BOOST_PP_INTERCEPT_249
# define BOOST_PP_INTERCEPT_250
# define BOOST_PP_INTERCEPT_251
# define BOOST_PP_INTERCEPT_252
# define BOOST_PP_INTERCEPT_253
# define BOOST_PP_INTERCEPT_254
# define BOOST_PP_INTERCEPT_255
# define BOOST_PP_INTERCEPT_256
#
# endif

View File

@ -0,0 +1,274 @@
# /* **************************************************************************
# * *
# * (C) Copyright Paul Mensonides 2002.
# * Distributed under the Boost Software License, Version 1.0. (See
# * accompanying file LICENSE_1_0.txt or copy at
# * http://www.boost.org/LICENSE_1_0.txt)
# * *
# ************************************************************************** */
#
# /* Revised by Edward Diener (2020) */
#
# /* See http://www.boost.org for most recent version. */
#
# ifndef BOOST_PREPROCESSOR_FACILITIES_INTERCEPT_512_HPP
# define BOOST_PREPROCESSOR_FACILITIES_INTERCEPT_512_HPP
#
# define BOOST_PP_INTERCEPT_257
# define BOOST_PP_INTERCEPT_258
# define BOOST_PP_INTERCEPT_259
# define BOOST_PP_INTERCEPT_260
# define BOOST_PP_INTERCEPT_261
# define BOOST_PP_INTERCEPT_262
# define BOOST_PP_INTERCEPT_263
# define BOOST_PP_INTERCEPT_264
# define BOOST_PP_INTERCEPT_265
# define BOOST_PP_INTERCEPT_266
# define BOOST_PP_INTERCEPT_267
# define BOOST_PP_INTERCEPT_268
# define BOOST_PP_INTERCEPT_269
# define BOOST_PP_INTERCEPT_270
# define BOOST_PP_INTERCEPT_271
# define BOOST_PP_INTERCEPT_272
# define BOOST_PP_INTERCEPT_273
# define BOOST_PP_INTERCEPT_274
# define BOOST_PP_INTERCEPT_275
# define BOOST_PP_INTERCEPT_276
# define BOOST_PP_INTERCEPT_277
# define BOOST_PP_INTERCEPT_278
# define BOOST_PP_INTERCEPT_279
# define BOOST_PP_INTERCEPT_280
# define BOOST_PP_INTERCEPT_281
# define BOOST_PP_INTERCEPT_282
# define BOOST_PP_INTERCEPT_283
# define BOOST_PP_INTERCEPT_284
# define BOOST_PP_INTERCEPT_285
# define BOOST_PP_INTERCEPT_286
# define BOOST_PP_INTERCEPT_287
# define BOOST_PP_INTERCEPT_288
# define BOOST_PP_INTERCEPT_289
# define BOOST_PP_INTERCEPT_290
# define BOOST_PP_INTERCEPT_291
# define BOOST_PP_INTERCEPT_292
# define BOOST_PP_INTERCEPT_293
# define BOOST_PP_INTERCEPT_294
# define BOOST_PP_INTERCEPT_295
# define BOOST_PP_INTERCEPT_296
# define BOOST_PP_INTERCEPT_297
# define BOOST_PP_INTERCEPT_298
# define BOOST_PP_INTERCEPT_299
# define BOOST_PP_INTERCEPT_300
# define BOOST_PP_INTERCEPT_301
# define BOOST_PP_INTERCEPT_302
# define BOOST_PP_INTERCEPT_303
# define BOOST_PP_INTERCEPT_304
# define BOOST_PP_INTERCEPT_305
# define BOOST_PP_INTERCEPT_306
# define BOOST_PP_INTERCEPT_307
# define BOOST_PP_INTERCEPT_308
# define BOOST_PP_INTERCEPT_309
# define BOOST_PP_INTERCEPT_310
# define BOOST_PP_INTERCEPT_311
# define BOOST_PP_INTERCEPT_312
# define BOOST_PP_INTERCEPT_313
# define BOOST_PP_INTERCEPT_314
# define BOOST_PP_INTERCEPT_315
# define BOOST_PP_INTERCEPT_316
# define BOOST_PP_INTERCEPT_317
# define BOOST_PP_INTERCEPT_318
# define BOOST_PP_INTERCEPT_319
# define BOOST_PP_INTERCEPT_320
# define BOOST_PP_INTERCEPT_321
# define BOOST_PP_INTERCEPT_322
# define BOOST_PP_INTERCEPT_323
# define BOOST_PP_INTERCEPT_324
# define BOOST_PP_INTERCEPT_325
# define BOOST_PP_INTERCEPT_326
# define BOOST_PP_INTERCEPT_327
# define BOOST_PP_INTERCEPT_328
# define BOOST_PP_INTERCEPT_329
# define BOOST_PP_INTERCEPT_330
# define BOOST_PP_INTERCEPT_331
# define BOOST_PP_INTERCEPT_332
# define BOOST_PP_INTERCEPT_333
# define BOOST_PP_INTERCEPT_334
# define BOOST_PP_INTERCEPT_335
# define BOOST_PP_INTERCEPT_336
# define BOOST_PP_INTERCEPT_337
# define BOOST_PP_INTERCEPT_338
# define BOOST_PP_INTERCEPT_339
# define BOOST_PP_INTERCEPT_340
# define BOOST_PP_INTERCEPT_341
# define BOOST_PP_INTERCEPT_342
# define BOOST_PP_INTERCEPT_343
# define BOOST_PP_INTERCEPT_344
# define BOOST_PP_INTERCEPT_345
# define BOOST_PP_INTERCEPT_346
# define BOOST_PP_INTERCEPT_347
# define BOOST_PP_INTERCEPT_348
# define BOOST_PP_INTERCEPT_349
# define BOOST_PP_INTERCEPT_350
# define BOOST_PP_INTERCEPT_351
# define BOOST_PP_INTERCEPT_352
# define BOOST_PP_INTERCEPT_353
# define BOOST_PP_INTERCEPT_354
# define BOOST_PP_INTERCEPT_355
# define BOOST_PP_INTERCEPT_356
# define BOOST_PP_INTERCEPT_357
# define BOOST_PP_INTERCEPT_358
# define BOOST_PP_INTERCEPT_359
# define BOOST_PP_INTERCEPT_360
# define BOOST_PP_INTERCEPT_361
# define BOOST_PP_INTERCEPT_362
# define BOOST_PP_INTERCEPT_363
# define BOOST_PP_INTERCEPT_364
# define BOOST_PP_INTERCEPT_365
# define BOOST_PP_INTERCEPT_366
# define BOOST_PP_INTERCEPT_367
# define BOOST_PP_INTERCEPT_368
# define BOOST_PP_INTERCEPT_369
# define BOOST_PP_INTERCEPT_370
# define BOOST_PP_INTERCEPT_371
# define BOOST_PP_INTERCEPT_372
# define BOOST_PP_INTERCEPT_373
# define BOOST_PP_INTERCEPT_374
# define BOOST_PP_INTERCEPT_375
# define BOOST_PP_INTERCEPT_376
# define BOOST_PP_INTERCEPT_377
# define BOOST_PP_INTERCEPT_378
# define BOOST_PP_INTERCEPT_379
# define BOOST_PP_INTERCEPT_380
# define BOOST_PP_INTERCEPT_381
# define BOOST_PP_INTERCEPT_382
# define BOOST_PP_INTERCEPT_383
# define BOOST_PP_INTERCEPT_384
# define BOOST_PP_INTERCEPT_385
# define BOOST_PP_INTERCEPT_386
# define BOOST_PP_INTERCEPT_387
# define BOOST_PP_INTERCEPT_388
# define BOOST_PP_INTERCEPT_389
# define BOOST_PP_INTERCEPT_390
# define BOOST_PP_INTERCEPT_391
# define BOOST_PP_INTERCEPT_392
# define BOOST_PP_INTERCEPT_393
# define BOOST_PP_INTERCEPT_394
# define BOOST_PP_INTERCEPT_395
# define BOOST_PP_INTERCEPT_396
# define BOOST_PP_INTERCEPT_397
# define BOOST_PP_INTERCEPT_398
# define BOOST_PP_INTERCEPT_399
# define BOOST_PP_INTERCEPT_400
# define BOOST_PP_INTERCEPT_401
# define BOOST_PP_INTERCEPT_402
# define BOOST_PP_INTERCEPT_403
# define BOOST_PP_INTERCEPT_404
# define BOOST_PP_INTERCEPT_405
# define BOOST_PP_INTERCEPT_406
# define BOOST_PP_INTERCEPT_407
# define BOOST_PP_INTERCEPT_408
# define BOOST_PP_INTERCEPT_409
# define BOOST_PP_INTERCEPT_410
# define BOOST_PP_INTERCEPT_411
# define BOOST_PP_INTERCEPT_412
# define BOOST_PP_INTERCEPT_413
# define BOOST_PP_INTERCEPT_414
# define BOOST_PP_INTERCEPT_415
# define BOOST_PP_INTERCEPT_416
# define BOOST_PP_INTERCEPT_417
# define BOOST_PP_INTERCEPT_418
# define BOOST_PP_INTERCEPT_419
# define BOOST_PP_INTERCEPT_420
# define BOOST_PP_INTERCEPT_421
# define BOOST_PP_INTERCEPT_422
# define BOOST_PP_INTERCEPT_423
# define BOOST_PP_INTERCEPT_424
# define BOOST_PP_INTERCEPT_425
# define BOOST_PP_INTERCEPT_426
# define BOOST_PP_INTERCEPT_427
# define BOOST_PP_INTERCEPT_428
# define BOOST_PP_INTERCEPT_429
# define BOOST_PP_INTERCEPT_430
# define BOOST_PP_INTERCEPT_431
# define BOOST_PP_INTERCEPT_432
# define BOOST_PP_INTERCEPT_433
# define BOOST_PP_INTERCEPT_434
# define BOOST_PP_INTERCEPT_435
# define BOOST_PP_INTERCEPT_436
# define BOOST_PP_INTERCEPT_437
# define BOOST_PP_INTERCEPT_438
# define BOOST_PP_INTERCEPT_439
# define BOOST_PP_INTERCEPT_440
# define BOOST_PP_INTERCEPT_441
# define BOOST_PP_INTERCEPT_442
# define BOOST_PP_INTERCEPT_443
# define BOOST_PP_INTERCEPT_444
# define BOOST_PP_INTERCEPT_445
# define BOOST_PP_INTERCEPT_446
# define BOOST_PP_INTERCEPT_447
# define BOOST_PP_INTERCEPT_448
# define BOOST_PP_INTERCEPT_449
# define BOOST_PP_INTERCEPT_450
# define BOOST_PP_INTERCEPT_451
# define BOOST_PP_INTERCEPT_452
# define BOOST_PP_INTERCEPT_453
# define BOOST_PP_INTERCEPT_454
# define BOOST_PP_INTERCEPT_455
# define BOOST_PP_INTERCEPT_456
# define BOOST_PP_INTERCEPT_457
# define BOOST_PP_INTERCEPT_458
# define BOOST_PP_INTERCEPT_459
# define BOOST_PP_INTERCEPT_460
# define BOOST_PP_INTERCEPT_461
# define BOOST_PP_INTERCEPT_462
# define BOOST_PP_INTERCEPT_463
# define BOOST_PP_INTERCEPT_464
# define BOOST_PP_INTERCEPT_465
# define BOOST_PP_INTERCEPT_466
# define BOOST_PP_INTERCEPT_467
# define BOOST_PP_INTERCEPT_468
# define BOOST_PP_INTERCEPT_469
# define BOOST_PP_INTERCEPT_470
# define BOOST_PP_INTERCEPT_471
# define BOOST_PP_INTERCEPT_472
# define BOOST_PP_INTERCEPT_473
# define BOOST_PP_INTERCEPT_474
# define BOOST_PP_INTERCEPT_475
# define BOOST_PP_INTERCEPT_476
# define BOOST_PP_INTERCEPT_477
# define BOOST_PP_INTERCEPT_478
# define BOOST_PP_INTERCEPT_479
# define BOOST_PP_INTERCEPT_480
# define BOOST_PP_INTERCEPT_481
# define BOOST_PP_INTERCEPT_482
# define BOOST_PP_INTERCEPT_483
# define BOOST_PP_INTERCEPT_484
# define BOOST_PP_INTERCEPT_485
# define BOOST_PP_INTERCEPT_486
# define BOOST_PP_INTERCEPT_487
# define BOOST_PP_INTERCEPT_488
# define BOOST_PP_INTERCEPT_489
# define BOOST_PP_INTERCEPT_490
# define BOOST_PP_INTERCEPT_491
# define BOOST_PP_INTERCEPT_492
# define BOOST_PP_INTERCEPT_493
# define BOOST_PP_INTERCEPT_494
# define BOOST_PP_INTERCEPT_495
# define BOOST_PP_INTERCEPT_496
# define BOOST_PP_INTERCEPT_497
# define BOOST_PP_INTERCEPT_498
# define BOOST_PP_INTERCEPT_499
# define BOOST_PP_INTERCEPT_500
# define BOOST_PP_INTERCEPT_501
# define BOOST_PP_INTERCEPT_502
# define BOOST_PP_INTERCEPT_503
# define BOOST_PP_INTERCEPT_504
# define BOOST_PP_INTERCEPT_505
# define BOOST_PP_INTERCEPT_506
# define BOOST_PP_INTERCEPT_507
# define BOOST_PP_INTERCEPT_508
# define BOOST_PP_INTERCEPT_509
# define BOOST_PP_INTERCEPT_510
# define BOOST_PP_INTERCEPT_511
# define BOOST_PP_INTERCEPT_512
#
# endif

Some files were not shown because too many files have changed in this diff Show More