Click here to Skip to main content
15,896,063 members
Articles / Programming Languages / C

The Windows Access Control Model: Part 2

Rate me:
Please Sign up or sign in to vote.
4.80/5 (28 votes)
27 Jun 2005CPOL43 min read 245.4K   7.2K   113  
This second part of the Access Control series will program with the basic Access Control structures.
# /* **************************************************************************
#  *                                                                          *
#  *     (C) Copyright Paul Mensonides 2002.  Permission to copy, use,        *
#  *     modify, sell, and distribute this software is granted provided       *
#  *     this copyright notice appears in all copies.  This software is       *
#  *     provided "as is" without express or implied warranty, and with       *
#  *     no claim at to its suitability for any purpose.                      *
#  *                                                                          *
#  ************************************************************************** */
#
# /* See http://www.boost.org for most recent version. */
#
# if BOOST_PP_ITERATION_FINISH_2 <= 256 && BOOST_PP_ITERATION_START_2 >= 256
#    define BOOST_PP_ITERATION_2 256
#    include BOOST_PP_FILENAME_2
#    undef BOOST_PP_ITERATION_2
# endif
# if BOOST_PP_ITERATION_FINISH_2 <= 255 && BOOST_PP_ITERATION_START_2 >= 255
#    define BOOST_PP_ITERATION_2 255
#    include BOOST_PP_FILENAME_2
#    undef BOOST_PP_ITERATION_2
# endif
# if BOOST_PP_ITERATION_FINISH_2 <= 254 && BOOST_PP_ITERATION_START_2 >= 254
#    define BOOST_PP_ITERATION_2 254
#    include BOOST_PP_FILENAME_2
#    undef BOOST_PP_ITERATION_2
# endif
# if BOOST_PP_ITERATION_FINISH_2 <= 253 && BOOST_PP_ITERATION_START_2 >= 253
#    define BOOST_PP_ITERATION_2 253
#    include BOOST_PP_FILENAME_2
#    undef BOOST_PP_ITERATION_2
# endif
# if BOOST_PP_ITERATION_FINISH_2 <= 252 && BOOST_PP_ITERATION_START_2 >= 252
#    define BOOST_PP_ITERATION_2 252
#    include BOOST_PP_FILENAME_2
#    undef BOOST_PP_ITERATION_2
# endif
# if BOOST_PP_ITERATION_FINISH_2 <= 251 && BOOST_PP_ITERATION_START_2 >= 251
#    define BOOST_PP_ITERATION_2 251
#    include BOOST_PP_FILENAME_2
#    undef BOOST_PP_ITERATION_2
# endif
# if BOOST_PP_ITERATION_FINISH_2 <= 250 && BOOST_PP_ITERATION_START_2 >= 250
#    define BOOST_PP_ITERATION_2 250
#    include BOOST_PP_FILENAME_2
#    undef BOOST_PP_ITERATION_2
# endif
# if BOOST_PP_ITERATION_FINISH_2 <= 249 && BOOST_PP_ITERATION_START_2 >= 249
#    define BOOST_PP_ITERATION_2 249
#    include BOOST_PP_FILENAME_2
#    undef BOOST_PP_ITERATION_2
# endif
# if BOOST_PP_ITERATION_FINISH_2 <= 248 && BOOST_PP_ITERATION_START_2 >= 248
#    define BOOST_PP_ITERATION_2 248
#    include BOOST_PP_FILENAME_2
#    undef BOOST_PP_ITERATION_2
# endif
# if BOOST_PP_ITERATION_FINISH_2 <= 247 && BOOST_PP_ITERATION_START_2 >= 247
#    define BOOST_PP_ITERATION_2 247
#    include BOOST_PP_FILENAME_2
#    undef BOOST_PP_ITERATION_2
# endif
# if BOOST_PP_ITERATION_FINISH_2 <= 246 && BOOST_PP_ITERATION_START_2 >= 246
#    define BOOST_PP_ITERATION_2 246
#    include BOOST_PP_FILENAME_2
#    undef BOOST_PP_ITERATION_2
# endif
# if BOOST_PP_ITERATION_FINISH_2 <= 245 && BOOST_PP_ITERATION_START_2 >= 245
#    define BOOST_PP_ITERATION_2 245
#    include BOOST_PP_FILENAME_2
#    undef BOOST_PP_ITERATION_2
# endif
# if BOOST_PP_ITERATION_FINISH_2 <= 244 && BOOST_PP_ITERATION_START_2 >= 244
#    define BOOST_PP_ITERATION_2 244
#    include BOOST_PP_FILENAME_2
#    undef BOOST_PP_ITERATION_2
# endif
# if BOOST_PP_ITERATION_FINISH_2 <= 243 && BOOST_PP_ITERATION_START_2 >= 243
#    define BOOST_PP_ITERATION_2 243
#    include BOOST_PP_FILENAME_2
#    undef BOOST_PP_ITERATION_2
# endif
# if BOOST_PP_ITERATION_FINISH_2 <= 242 && BOOST_PP_ITERATION_START_2 >= 242
#    define BOOST_PP_ITERATION_2 242
#    include BOOST_PP_FILENAME_2
#    undef BOOST_PP_ITERATION_2
# endif
# if BOOST_PP_ITERATION_FINISH_2 <= 241 && BOOST_PP_ITERATION_START_2 >= 241
#    define BOOST_PP_ITERATION_2 241
#    include BOOST_PP_FILENAME_2
#    undef BOOST_PP_ITERATION_2
# endif
# if BOOST_PP_ITERATION_FINISH_2 <= 240 && BOOST_PP_ITERATION_START_2 >= 240
#    define BOOST_PP_ITERATION_2 240
#    include BOOST_PP_FILENAME_2
#    undef BOOST_PP_ITERATION_2
# endif
# if BOOST_PP_ITERATION_FINISH_2 <= 239 && BOOST_PP_ITERATION_START_2 >= 239
#    define BOOST_PP_ITERATION_2 239
#    include BOOST_PP_FILENAME_2
#    undef BOOST_PP_ITERATION_2
# endif
# if BOOST_PP_ITERATION_FINISH_2 <= 238 && BOOST_PP_ITERATION_START_2 >= 238
#    define BOOST_PP_ITERATION_2 238
#    include BOOST_PP_FILENAME_2
#    undef BOOST_PP_ITERATION_2
# endif
# if BOOST_PP_ITERATION_FINISH_2 <= 237 && BOOST_PP_ITERATION_START_2 >= 237
#    define BOOST_PP_ITERATION_2 237
#    include BOOST_PP_FILENAME_2
#    undef BOOST_PP_ITERATION_2
# endif
# if BOOST_PP_ITERATION_FINISH_2 <= 236 && BOOST_PP_ITERATION_START_2 >= 236
#    define BOOST_PP_ITERATION_2 236
#    include BOOST_PP_FILENAME_2
#    undef BOOST_PP_ITERATION_2
# endif
# if BOOST_PP_ITERATION_FINISH_2 <= 235 && BOOST_PP_ITERATION_START_2 >= 235
#    define BOOST_PP_ITERATION_2 235
#    include BOOST_PP_FILENAME_2
#    undef BOOST_PP_ITERATION_2
# endif
# if BOOST_PP_ITERATION_FINISH_2 <= 234 && BOOST_PP_ITERATION_START_2 >= 234
#    define BOOST_PP_ITERATION_2 234
#    include BOOST_PP_FILENAME_2
#    undef BOOST_PP_ITERATION_2
# endif
# if BOOST_PP_ITERATION_FINISH_2 <= 233 && BOOST_PP_ITERATION_START_2 >= 233
#    define BOOST_PP_ITERATION_2 233
#    include BOOST_PP_FILENAME_2
#    undef BOOST_PP_ITERATION_2
# endif
# if BOOST_PP_ITERATION_FINISH_2 <= 232 && BOOST_PP_ITERATION_START_2 >= 232
#    define BOOST_PP_ITERATION_2 232
#    include BOOST_PP_FILENAME_2
#    undef BOOST_PP_ITERATION_2
# endif
# if BOOST_PP_ITERATION_FINISH_2 <= 231 && BOOST_PP_ITERATION_START_2 >= 231
#    define BOOST_PP_ITERATION_2 231
#    include BOOST_PP_FILENAME_2
#    undef BOOST_PP_ITERATION_2
# endif
# if BOOST_PP_ITERATION_FINISH_2 <= 230 && BOOST_PP_ITERATION_START_2 >= 230
#    define BOOST_PP_ITERATION_2 230
#    include BOOST_PP_FILENAME_2
#    undef BOOST_PP_ITERATION_2
# endif
# if BOOST_PP_ITERATION_FINISH_2 <= 229 && BOOST_PP_ITERATION_START_2 >= 229
#    define BOOST_PP_ITERATION_2 229
#    include BOOST_PP_FILENAME_2
#    undef BOOST_PP_ITERATION_2
# endif
# if BOOST_PP_ITERATION_FINISH_2 <= 228 && BOOST_PP_ITERATION_START_2 >= 228
#    define BOOST_PP_ITERATION_2 228
#    include BOOST_PP_FILENAME_2
#    undef BOOST_PP_ITERATION_2
# endif
# if BOOST_PP_ITERATION_FINISH_2 <= 227 && BOOST_PP_ITERATION_START_2 >= 227
#    define BOOST_PP_ITERATION_2 227
#    include BOOST_PP_FILENAME_2
#    undef BOOST_PP_ITERATION_2
# endif
# if BOOST_PP_ITERATION_FINISH_2 <= 226 && BOOST_PP_ITERATION_START_2 >= 226
#    define BOOST_PP_ITERATION_2 226
#    include BOOST_PP_FILENAME_2
#    undef BOOST_PP_ITERATION_2
# endif
# if BOOST_PP_ITERATION_FINISH_2 <= 225 && BOOST_PP_ITERATION_START_2 >= 225
#    define BOOST_PP_ITERATION_2 225
#    include BOOST_PP_FILENAME_2
#    undef BOOST_PP_ITERATION_2
# endif
# if BOOST_PP_ITERATION_FINISH_2 <= 224 && BOOST_PP_ITERATION_START_2 >= 224
#    define BOOST_PP_ITERATION_2 224
#    include BOOST_PP_FILENAME_2
#    undef BOOST_PP_ITERATION_2
# endif
# if BOOST_PP_ITERATION_FINISH_2 <= 223 && BOOST_PP_ITERATION_START_2 >= 223
#    define BOOST_PP_ITERATION_2 223
#    include BOOST_PP_FILENAME_2
#    undef BOOST_PP_ITERATION_2
# endif
# if BOOST_PP_ITERATION_FINISH_2 <= 222 && BOOST_PP_ITERATION_START_2 >= 222
#    define BOOST_PP_ITERATION_2 222
#    include BOOST_PP_FILENAME_2
#    undef BOOST_PP_ITERATION_2
# endif
# if BOOST_PP_ITERATION_FINISH_2 <= 221 && BOOST_PP_ITERATION_START_2 >= 221
#    define BOOST_PP_ITERATION_2 221
#    include BOOST_PP_FILENAME_2
#    undef BOOST_PP_ITERATION_2
# endif
# if BOOST_PP_ITERATION_FINISH_2 <= 220 && BOOST_PP_ITERATION_START_2 >= 220
#    define BOOST_PP_ITERATION_2 220
#    include BOOST_PP_FILENAME_2
#    undef BOOST_PP_ITERATION_2
# endif
# if BOOST_PP_ITERATION_FINISH_2 <= 219 && BOOST_PP_ITERATION_START_2 >= 219
#    define BOOST_PP_ITERATION_2 219
#    include BOOST_PP_FILENAME_2
#    undef BOOST_PP_ITERATION_2
# endif
# if BOOST_PP_ITERATION_FINISH_2 <= 218 && BOOST_PP_ITERATION_START_2 >= 218
#    define BOOST_PP_ITERATION_2 218
#    include BOOST_PP_FILENAME_2
#    undef BOOST_PP_ITERATION_2
# endif
# if BOOST_PP_ITERATION_FINISH_2 <= 217 && BOOST_PP_ITERATION_START_2 >= 217
#    define BOOST_PP_ITERATION_2 217
#    include BOOST_PP_FILENAME_2
#    undef BOOST_PP_ITERATION_2
# endif
# if BOOST_PP_ITERATION_FINISH_2 <= 216 && BOOST_PP_ITERATION_START_2 >= 216
#    define BOOST_PP_ITERATION_2 216
#    include BOOST_PP_FILENAME_2
#    undef BOOST_PP_ITERATION_2
# endif
# if BOOST_PP_ITERATION_FINISH_2 <= 215 && BOOST_PP_ITERATION_START_2 >= 215
#    define BOOST_PP_ITERATION_2 215
#    include BOOST_PP_FILENAME_2
#    undef BOOST_PP_ITERATION_2
# endif
# if BOOST_PP_ITERATION_FINISH_2 <= 214 && BOOST_PP_ITERATION_START_2 >= 214
#    define BOOST_PP_ITERATION_2 214
#    include BOOST_PP_FILENAME_2
#    undef BOOST_PP_ITERATION_2
# endif
# if BOOST_PP_ITERATION_FINISH_2 <= 213 && BOOST_PP_ITERATION_START_2 >= 213
#    define BOOST_PP_ITERATION_2 213
#    include BOOST_PP_FILENAME_2
#    undef BOOST_PP_ITERATION_2
# endif
# if BOOST_PP_ITERATION_FINISH_2 <= 212 && BOOST_PP_ITERATION_START_2 >= 212
#    define BOOST_PP_ITERATION_2 212
#    include BOOST_PP_FILENAME_2
#    undef BOOST_PP_ITERATION_2
# endif
# if BOOST_PP_ITERATION_FINISH_2 <= 211 && BOOST_PP_ITERATION_START_2 >= 211
#    define BOOST_PP_ITERATION_2 211
#    include BOOST_PP_FILENAME_2
#    undef BOOST_PP_ITERATION_2
# endif
# if BOOST_PP_ITERATION_FINISH_2 <= 210 && BOOST_PP_ITERATION_START_2 >= 210
#    define BOOST_PP_ITERATION_2 210
#    include BOOST_PP_FILENAME_2
#    undef BOOST_PP_ITERATION_2
# endif
# if BOOST_PP_ITERATION_FINISH_2 <= 209 && BOOST_PP_ITERATION_START_2 >= 209
#    define BOOST_PP_ITERATION_2 209
#    include BOOST_PP_FILENAME_2
#    undef BOOST_PP_ITERATION_2
# endif
# if BOOST_PP_ITERATION_FINISH_2 <= 208 && BOOST_PP_ITERATION_START_2 >= 208
#    define BOOST_PP_ITERATION_2 208
#    include BOOST_PP_FILENAME_2
#    undef BOOST_PP_ITERATION_2
# endif
# if BOOST_PP_ITERATION_FINISH_2 <= 207 && BOOST_PP_ITERATION_START_2 >= 207
#    define BOOST_PP_ITERATION_2 207
#    include BOOST_PP_FILENAME_2
#    undef BOOST_PP_ITERATION_2
# endif
# if BOOST_PP_ITERATION_FINISH_2 <= 206 && BOOST_PP_ITERATION_START_2 >= 206
#    define BOOST_PP_ITERATION_2 206
#    include BOOST_PP_FILENAME_2
#    undef BOOST_PP_ITERATION_2
# endif
# if BOOST_PP_ITERATION_FINISH_2 <= 205 && BOOST_PP_ITERATION_START_2 >= 205
#    define BOOST_PP_ITERATION_2 205
#    include BOOST_PP_FILENAME_2
#    undef BOOST_PP_ITERATION_2
# endif
# if BOOST_PP_ITERATION_FINISH_2 <= 204 && BOOST_PP_ITERATION_START_2 >= 204
#    define BOOST_PP_ITERATION_2 204
#    include BOOST_PP_FILENAME_2
#    undef BOOST_PP_ITERATION_2
# endif
# if BOOST_PP_ITERATION_FINISH_2 <= 203 && BOOST_PP_ITERATION_START_2 >= 203
#    define BOOST_PP_ITERATION_2 203
#    include BOOST_PP_FILENAME_2
#    undef BOOST_PP_ITERATION_2
# endif
# if BOOST_PP_ITERATION_FINISH_2 <= 202 && BOOST_PP_ITERATION_START_2 >= 202
#    define BOOST_PP_ITERATION_2 202
#    include BOOST_PP_FILENAME_2
#    undef BOOST_PP_ITERATION_2
# endif
# if BOOST_PP_ITERATION_FINISH_2 <= 201 && BOOST_PP_ITERATION_START_2 >= 201
#    define BOOST_PP_ITERATION_2 201
#    include BOOST_PP_FILENAME_2
#    undef BOOST_PP_ITERATION_2
# endif
# if BOOST_PP_ITERATION_FINISH_2 <= 200 && BOOST_PP_ITERATION_START_2 >= 200
#    define BOOST_PP_ITERATION_2 200
#    include BOOST_PP_FILENAME_2
#    undef BOOST_PP_ITERATION_2
# endif
# if BOOST_PP_ITERATION_FINISH_2 <= 199 && BOOST_PP_ITERATION_START_2 >= 199
#    define BOOST_PP_ITERATION_2 199
#    include BOOST_PP_FILENAME_2
#    undef BOOST_PP_ITERATION_2
# endif
# if BOOST_PP_ITERATION_FINISH_2 <= 198 && BOOST_PP_ITERATION_START_2 >= 198
#    define BOOST_PP_ITERATION_2 198
#    include BOOST_PP_FILENAME_2
#    undef BOOST_PP_ITERATION_2
# endif
# if BOOST_PP_ITERATION_FINISH_2 <= 197 && BOOST_PP_ITERATION_START_2 >= 197
#    define BOOST_PP_ITERATION_2 197
#    include BOOST_PP_FILENAME_2
#    undef BOOST_PP_ITERATION_2
# endif
# if BOOST_PP_ITERATION_FINISH_2 <= 196 && BOOST_PP_ITERATION_START_2 >= 196
#    define BOOST_PP_ITERATION_2 196
#    include BOOST_PP_FILENAME_2
#    undef BOOST_PP_ITERATION_2
# endif
# if BOOST_PP_ITERATION_FINISH_2 <= 195 && BOOST_PP_ITERATION_START_2 >= 195
#    define BOOST_PP_ITERATION_2 195
#    include BOOST_PP_FILENAME_2
#    undef BOOST_PP_ITERATION_2
# endif
# if BOOST_PP_ITERATION_FINISH_2 <= 194 && BOOST_PP_ITERATION_START_2 >= 194
#    define BOOST_PP_ITERATION_2 194
#    include BOOST_PP_FILENAME_2
#    undef BOOST_PP_ITERATION_2
# endif
# if BOOST_PP_ITERATION_FINISH_2 <= 193 && BOOST_PP_ITERATION_START_2 >= 193
#    define BOOST_PP_ITERATION_2 193
#    include BOOST_PP_FILENAME_2
#    undef BOOST_PP_ITERATION_2
# endif
# if BOOST_PP_ITERATION_FINISH_2 <= 192 && BOOST_PP_ITERATION_START_2 >= 192
#    define BOOST_PP_ITERATION_2 192
#    include BOOST_PP_FILENAME_2
#    undef BOOST_PP_ITERATION_2
# endif
# if BOOST_PP_ITERATION_FINISH_2 <= 191 && BOOST_PP_ITERATION_START_2 >= 191
#    define BOOST_PP_ITERATION_2 191
#    include BOOST_PP_FILENAME_2
#    undef BOOST_PP_ITERATION_2
# endif
# if BOOST_PP_ITERATION_FINISH_2 <= 190 && BOOST_PP_ITERATION_START_2 >= 190
#    define BOOST_PP_ITERATION_2 190
#    include BOOST_PP_FILENAME_2
#    undef BOOST_PP_ITERATION_2
# endif
# if BOOST_PP_ITERATION_FINISH_2 <= 189 && BOOST_PP_ITERATION_START_2 >= 189
#    define BOOST_PP_ITERATION_2 189
#    include BOOST_PP_FILENAME_2
#    undef BOOST_PP_ITERATION_2
# endif
# if BOOST_PP_ITERATION_FINISH_2 <= 188 && BOOST_PP_ITERATION_START_2 >= 188
#    define BOOST_PP_ITERATION_2 188
#    include BOOST_PP_FILENAME_2
#    undef BOOST_PP_ITERATION_2
# endif
# if BOOST_PP_ITERATION_FINISH_2 <= 187 && BOOST_PP_ITERATION_START_2 >= 187
#    define BOOST_PP_ITERATION_2 187
#    include BOOST_PP_FILENAME_2
#    undef BOOST_PP_ITERATION_2
# endif
# if BOOST_PP_ITERATION_FINISH_2 <= 186 && BOOST_PP_ITERATION_START_2 >= 186
#    define BOOST_PP_ITERATION_2 186
#    include BOOST_PP_FILENAME_2
#    undef BOOST_PP_ITERATION_2
# endif
# if BOOST_PP_ITERATION_FINISH_2 <= 185 && BOOST_PP_ITERATION_START_2 >= 185
#    define BOOST_PP_ITERATION_2 185
#    include BOOST_PP_FILENAME_2
#    undef BOOST_PP_ITERATION_2
# endif
# if BOOST_PP_ITERATION_FINISH_2 <= 184 && BOOST_PP_ITERATION_START_2 >= 184
#    define BOOST_PP_ITERATION_2 184
#    include BOOST_PP_FILENAME_2
#    undef BOOST_PP_ITERATION_2
# endif
# if BOOST_PP_ITERATION_FINISH_2 <= 183 && BOOST_PP_ITERATION_START_2 >= 183
#    define BOOST_PP_ITERATION_2 183
#    include BOOST_PP_FILENAME_2
#    undef BOOST_PP_ITERATION_2
# endif
# if BOOST_PP_ITERATION_FINISH_2 <= 182 && BOOST_PP_ITERATION_START_2 >= 182
#    define BOOST_PP_ITERATION_2 182
#    include BOOST_PP_FILENAME_2
#    undef BOOST_PP_ITERATION_2
# endif
# if BOOST_PP_ITERATION_FINISH_2 <= 181 && BOOST_PP_ITERATION_START_2 >= 181
#    define BOOST_PP_ITERATION_2 181
#    include BOOST_PP_FILENAME_2
#    undef BOOST_PP_ITERATION_2
# endif
# if BOOST_PP_ITERATION_FINISH_2 <= 180 && BOOST_PP_ITERATION_START_2 >= 180
#    define BOOST_PP_ITERATION_2 180
#    include BOOST_PP_FILENAME_2
#    undef BOOST_PP_ITERATION_2
# endif
# if BOOST_PP_ITERATION_FINISH_2 <= 179 && BOOST_PP_ITERATION_START_2 >= 179
#    define BOOST_PP_ITERATION_2 179
#    include BOOST_PP_FILENAME_2
#    undef BOOST_PP_ITERATION_2
# endif
# if BOOST_PP_ITERATION_FINISH_2 <= 178 && BOOST_PP_ITERATION_START_2 >= 178
#    define BOOST_PP_ITERATION_2 178
#    include BOOST_PP_FILENAME_2
#    undef BOOST_PP_ITERATION_2
# endif
# if BOOST_PP_ITERATION_FINISH_2 <= 177 && BOOST_PP_ITERATION_START_2 >= 177
#    define BOOST_PP_ITERATION_2 177
#    include BOOST_PP_FILENAME_2
#    undef BOOST_PP_ITERATION_2
# endif
# if BOOST_PP_ITERATION_FINISH_2 <= 176 && BOOST_PP_ITERATION_START_2 >= 176
#    define BOOST_PP_ITERATION_2 176
#    include BOOST_PP_FILENAME_2
#    undef BOOST_PP_ITERATION_2
# endif
# if BOOST_PP_ITERATION_FINISH_2 <= 175 && BOOST_PP_ITERATION_START_2 >= 175
#    define BOOST_PP_ITERATION_2 175
#    include BOOST_PP_FILENAME_2
#    undef BOOST_PP_ITERATION_2
# endif
# if BOOST_PP_ITERATION_FINISH_2 <= 174 && BOOST_PP_ITERATION_START_2 >= 174
#    define BOOST_PP_ITERATION_2 174
#    include BOOST_PP_FILENAME_2
#    undef BOOST_PP_ITERATION_2
# endif
# if BOOST_PP_ITERATION_FINISH_2 <= 173 && BOOST_PP_ITERATION_START_2 >= 173
#    define BOOST_PP_ITERATION_2 173
#    include BOOST_PP_FILENAME_2
#    undef BOOST_PP_ITERATION_2
# endif
# if BOOST_PP_ITERATION_FINISH_2 <= 172 && BOOST_PP_ITERATION_START_2 >= 172
#    define BOOST_PP_ITERATION_2 172
#    include BOOST_PP_FILENAME_2
#    undef BOOST_PP_ITERATION_2
# endif
# if BOOST_PP_ITERATION_FINISH_2 <= 171 && BOOST_PP_ITERATION_START_2 >= 171
#    define BOOST_PP_ITERATION_2 171
#    include BOOST_PP_FILENAME_2
#    undef BOOST_PP_ITERATION_2
# endif
# if BOOST_PP_ITERATION_FINISH_2 <= 170 && BOOST_PP_ITERATION_START_2 >= 170
#    define BOOST_PP_ITERATION_2 170
#    include BOOST_PP_FILENAME_2
#    undef BOOST_PP_ITERATION_2
# endif
# if BOOST_PP_ITERATION_FINISH_2 <= 169 && BOOST_PP_ITERATION_START_2 >= 169
#    define BOOST_PP_ITERATION_2 169
#    include BOOST_PP_FILENAME_2
#    undef BOOST_PP_ITERATION_2
# endif
# if BOOST_PP_ITERATION_FINISH_2 <= 168 && BOOST_PP_ITERATION_START_2 >= 168
#    define BOOST_PP_ITERATION_2 168
#    include BOOST_PP_FILENAME_2
#    undef BOOST_PP_ITERATION_2
# endif
# if BOOST_PP_ITERATION_FINISH_2 <= 167 && BOOST_PP_ITERATION_START_2 >= 167
#    define BOOST_PP_ITERATION_2 167
#    include BOOST_PP_FILENAME_2
#    undef BOOST_PP_ITERATION_2
# endif
# if BOOST_PP_ITERATION_FINISH_2 <= 166 && BOOST_PP_ITERATION_START_2 >= 166
#    define BOOST_PP_ITERATION_2 166
#    include BOOST_PP_FILENAME_2
#    undef BOOST_PP_ITERATION_2
# endif
# if BOOST_PP_ITERATION_FINISH_2 <= 165 && BOOST_PP_ITERATION_START_2 >= 165
#    define BOOST_PP_ITERATION_2 165
#    include BOOST_PP_FILENAME_2
#    undef BOOST_PP_ITERATION_2
# endif
# if BOOST_PP_ITERATION_FINISH_2 <= 164 && BOOST_PP_ITERATION_START_2 >= 164
#    define BOOST_PP_ITERATION_2 164
#    include BOOST_PP_FILENAME_2
#    undef BOOST_PP_ITERATION_2
# endif
# if BOOST_PP_ITERATION_FINISH_2 <= 163 && BOOST_PP_ITERATION_START_2 >= 163
#    define BOOST_PP_ITERATION_2 163
#    include BOOST_PP_FILENAME_2
#    undef BOOST_PP_ITERATION_2
# endif
# if BOOST_PP_ITERATION_FINISH_2 <= 162 && BOOST_PP_ITERATION_START_2 >= 162
#    define BOOST_PP_ITERATION_2 162
#    include BOOST_PP_FILENAME_2
#    undef BOOST_PP_ITERATION_2
# endif
# if BOOST_PP_ITERATION_FINISH_2 <= 161 && BOOST_PP_ITERATION_START_2 >= 161
#    define BOOST_PP_ITERATION_2 161
#    include BOOST_PP_FILENAME_2
#    undef BOOST_PP_ITERATION_2
# endif
# if BOOST_PP_ITERATION_FINISH_2 <= 160 && BOOST_PP_ITERATION_START_2 >= 160
#    define BOOST_PP_ITERATION_2 160
#    include BOOST_PP_FILENAME_2
#    undef BOOST_PP_ITERATION_2
# endif
# if BOOST_PP_ITERATION_FINISH_2 <= 159 && BOOST_PP_ITERATION_START_2 >= 159
#    define BOOST_PP_ITERATION_2 159
#    include BOOST_PP_FILENAME_2
#    undef BOOST_PP_ITERATION_2
# endif
# if BOOST_PP_ITERATION_FINISH_2 <= 158 && BOOST_PP_ITERATION_START_2 >= 158
#    define BOOST_PP_ITERATION_2 158
#    include BOOST_PP_FILENAME_2
#    undef BOOST_PP_ITERATION_2
# endif
# if BOOST_PP_ITERATION_FINISH_2 <= 157 && BOOST_PP_ITERATION_START_2 >= 157
#    define BOOST_PP_ITERATION_2 157
#    include BOOST_PP_FILENAME_2
#    undef BOOST_PP_ITERATION_2
# endif
# if BOOST_PP_ITERATION_FINISH_2 <= 156 && BOOST_PP_ITERATION_START_2 >= 156
#    define BOOST_PP_ITERATION_2 156
#    include BOOST_PP_FILENAME_2
#    undef BOOST_PP_ITERATION_2
# endif
# if BOOST_PP_ITERATION_FINISH_2 <= 155 && BOOST_PP_ITERATION_START_2 >= 155
#    define BOOST_PP_ITERATION_2 155
#    include BOOST_PP_FILENAME_2
#    undef BOOST_PP_ITERATION_2
# endif
# if BOOST_PP_ITERATION_FINISH_2 <= 154 && BOOST_PP_ITERATION_START_2 >= 154
#    define BOOST_PP_ITERATION_2 154
#    include BOOST_PP_FILENAME_2
#    undef BOOST_PP_ITERATION_2
# endif
# if BOOST_PP_ITERATION_FINISH_2 <= 153 && BOOST_PP_ITERATION_START_2 >= 153
#    define BOOST_PP_ITERATION_2 153
#    include BOOST_PP_FILENAME_2
#    undef BOOST_PP_ITERATION_2
# endif
# if BOOST_PP_ITERATION_FINISH_2 <= 152 && BOOST_PP_ITERATION_START_2 >= 152
#    define BOOST_PP_ITERATION_2 152
#    include BOOST_PP_FILENAME_2
#    undef BOOST_PP_ITERATION_2
# endif
# if BOOST_PP_ITERATION_FINISH_2 <= 151 && BOOST_PP_ITERATION_START_2 >= 151
#    define BOOST_PP_ITERATION_2 151
#    include BOOST_PP_FILENAME_2
#    undef BOOST_PP_ITERATION_2
# endif
# if BOOST_PP_ITERATION_FINISH_2 <= 150 && BOOST_PP_ITERATION_START_2 >= 150
#    define BOOST_PP_ITERATION_2 150
#    include BOOST_PP_FILENAME_2
#    undef BOOST_PP_ITERATION_2
# endif
# if BOOST_PP_ITERATION_FINISH_2 <= 149 && BOOST_PP_ITERATION_START_2 >= 149
#    define BOOST_PP_ITERATION_2 149
#    include BOOST_PP_FILENAME_2
#    undef BOOST_PP_ITERATION_2
# endif
# if BOOST_PP_ITERATION_FINISH_2 <= 148 && BOOST_PP_ITERATION_START_2 >= 148
#    define BOOST_PP_ITERATION_2 148
#    include BOOST_PP_FILENAME_2
#    undef BOOST_PP_ITERATION_2
# endif
# if BOOST_PP_ITERATION_FINISH_2 <= 147 && BOOST_PP_ITERATION_START_2 >= 147
#    define BOOST_PP_ITERATION_2 147
#    include BOOST_PP_FILENAME_2
#    undef BOOST_PP_ITERATION_2
# endif
# if BOOST_PP_ITERATION_FINISH_2 <= 146 && BOOST_PP_ITERATION_START_2 >= 146
#    define BOOST_PP_ITERATION_2 146
#    include BOOST_PP_FILENAME_2
#    undef BOOST_PP_ITERATION_2
# endif
# if BOOST_PP_ITERATION_FINISH_2 <= 145 && BOOST_PP_ITERATION_START_2 >= 145
#    define BOOST_PP_ITERATION_2 145
#    include BOOST_PP_FILENAME_2
#    undef BOOST_PP_ITERATION_2
# endif
# if BOOST_PP_ITERATION_FINISH_2 <= 144 && BOOST_PP_ITERATION_START_2 >= 144
#    define BOOST_PP_ITERATION_2 144
#    include BOOST_PP_FILENAME_2
#    undef BOOST_PP_ITERATION_2
# endif
# if BOOST_PP_ITERATION_FINISH_2 <= 143 && BOOST_PP_ITERATION_START_2 >= 143
#    define BOOST_PP_ITERATION_2 143
#    include BOOST_PP_FILENAME_2
#    undef BOOST_PP_ITERATION_2
# endif
# if BOOST_PP_ITERATION_FINISH_2 <= 142 && BOOST_PP_ITERATION_START_2 >= 142
#    define BOOST_PP_ITERATION_2 142
#    include BOOST_PP_FILENAME_2
#    undef BOOST_PP_ITERATION_2
# endif
# if BOOST_PP_ITERATION_FINISH_2 <= 141 && BOOST_PP_ITERATION_START_2 >= 141
#    define BOOST_PP_ITERATION_2 141
#    include BOOST_PP_FILENAME_2
#    undef BOOST_PP_ITERATION_2
# endif
# if BOOST_PP_ITERATION_FINISH_2 <= 140 && BOOST_PP_ITERATION_START_2 >= 140
#    define BOOST_PP_ITERATION_2 140
#    include BOOST_PP_FILENAME_2
#    undef BOOST_PP_ITERATION_2
# endif
# if BOOST_PP_ITERATION_FINISH_2 <= 139 && BOOST_PP_ITERATION_START_2 >= 139
#    define BOOST_PP_ITERATION_2 139
#    include BOOST_PP_FILENAME_2
#    undef BOOST_PP_ITERATION_2
# endif
# if BOOST_PP_ITERATION_FINISH_2 <= 138 && BOOST_PP_ITERATION_START_2 >= 138
#    define BOOST_PP_ITERATION_2 138
#    include BOOST_PP_FILENAME_2
#    undef BOOST_PP_ITERATION_2
# endif
# if BOOST_PP_ITERATION_FINISH_2 <= 137 && BOOST_PP_ITERATION_START_2 >= 137
#    define BOOST_PP_ITERATION_2 137
#    include BOOST_PP_FILENAME_2
#    undef BOOST_PP_ITERATION_2
# endif
# if BOOST_PP_ITERATION_FINISH_2 <= 136 && BOOST_PP_ITERATION_START_2 >= 136
#    define BOOST_PP_ITERATION_2 136
#    include BOOST_PP_FILENAME_2
#    undef BOOST_PP_ITERATION_2
# endif
# if BOOST_PP_ITERATION_FINISH_2 <= 135 && BOOST_PP_ITERATION_START_2 >= 135
#    define BOOST_PP_ITERATION_2 135
#    include BOOST_PP_FILENAME_2
#    undef BOOST_PP_ITERATION_2
# endif
# if BOOST_PP_ITERATION_FINISH_2 <= 134 && BOOST_PP_ITERATION_START_2 >= 134
#    define BOOST_PP_ITERATION_2 134
#    include BOOST_PP_FILENAME_2
#    undef BOOST_PP_ITERATION_2
# endif
# if BOOST_PP_ITERATION_FINISH_2 <= 133 && BOOST_PP_ITERATION_START_2 >= 133
#    define BOOST_PP_ITERATION_2 133
#    include BOOST_PP_FILENAME_2
#    undef BOOST_PP_ITERATION_2
# endif
# if BOOST_PP_ITERATION_FINISH_2 <= 132 && BOOST_PP_ITERATION_START_2 >= 132
#    define BOOST_PP_ITERATION_2 132
#    include BOOST_PP_FILENAME_2
#    undef BOOST_PP_ITERATION_2
# endif
# if BOOST_PP_ITERATION_FINISH_2 <= 131 && BOOST_PP_ITERATION_START_2 >= 131
#    define BOOST_PP_ITERATION_2 131
#    include BOOST_PP_FILENAME_2
#    undef BOOST_PP_ITERATION_2
# endif
# if BOOST_PP_ITERATION_FINISH_2 <= 130 && BOOST_PP_ITERATION_START_2 >= 130
#    define BOOST_PP_ITERATION_2 130
#    include BOOST_PP_FILENAME_2
#    undef BOOST_PP_ITERATION_2
# endif
# if BOOST_PP_ITERATION_FINISH_2 <= 129 && BOOST_PP_ITERATION_START_2 >= 129
#    define BOOST_PP_ITERATION_2 129
#    include BOOST_PP_FILENAME_2
#    undef BOOST_PP_ITERATION_2
# endif
# if BOOST_PP_ITERATION_FINISH_2 <= 128 && BOOST_PP_ITERATION_START_2 >= 128
#    define BOOST_PP_ITERATION_2 128
#    include BOOST_PP_FILENAME_2
#    undef BOOST_PP_ITERATION_2
# endif
# if BOOST_PP_ITERATION_FINISH_2 <= 127 && BOOST_PP_ITERATION_START_2 >= 127
#    define BOOST_PP_ITERATION_2 127
#    include BOOST_PP_FILENAME_2
#    undef BOOST_PP_ITERATION_2
# endif
# if BOOST_PP_ITERATION_FINISH_2 <= 126 && BOOST_PP_ITERATION_START_2 >= 126
#    define BOOST_PP_ITERATION_2 126
#    include BOOST_PP_FILENAME_2
#    undef BOOST_PP_ITERATION_2
# endif
# if BOOST_PP_ITERATION_FINISH_2 <= 125 && BOOST_PP_ITERATION_START_2 >= 125
#    define BOOST_PP_ITERATION_2 125
#    include BOOST_PP_FILENAME_2
#    undef BOOST_PP_ITERATION_2
# endif
# if BOOST_PP_ITERATION_FINISH_2 <= 124 && BOOST_PP_ITERATION_START_2 >= 124
#    define BOOST_PP_ITERATION_2 124
#    include BOOST_PP_FILENAME_2
#    undef BOOST_PP_ITERATION_2
# endif
# if BOOST_PP_ITERATION_FINISH_2 <= 123 && BOOST_PP_ITERATION_START_2 >= 123
#    define BOOST_PP_ITERATION_2 123
#    include BOOST_PP_FILENAME_2
#    undef BOOST_PP_ITERATION_2
# endif
# if BOOST_PP_ITERATION_FINISH_2 <= 122 && BOOST_PP_ITERATION_START_2 >= 122
#    define BOOST_PP_ITERATION_2 122
#    include BOOST_PP_FILENAME_2
#    undef BOOST_PP_ITERATION_2
# endif
# if BOOST_PP_ITERATION_FINISH_2 <= 121 && BOOST_PP_ITERATION_START_2 >= 121
#    define BOOST_PP_ITERATION_2 121
#    include BOOST_PP_FILENAME_2
#    undef BOOST_PP_ITERATION_2
# endif
# if BOOST_PP_ITERATION_FINISH_2 <= 120 && BOOST_PP_ITERATION_START_2 >= 120
#    define BOOST_PP_ITERATION_2 120
#    include BOOST_PP_FILENAME_2
#    undef BOOST_PP_ITERATION_2
# endif
# if BOOST_PP_ITERATION_FINISH_2 <= 119 && BOOST_PP_ITERATION_START_2 >= 119
#    define BOOST_PP_ITERATION_2 119
#    include BOOST_PP_FILENAME_2
#    undef BOOST_PP_ITERATION_2
# endif
# if BOOST_PP_ITERATION_FINISH_2 <= 118 && BOOST_PP_ITERATION_START_2 >= 118
#    define BOOST_PP_ITERATION_2 118
#    include BOOST_PP_FILENAME_2
#    undef BOOST_PP_ITERATION_2
# endif
# if BOOST_PP_ITERATION_FINISH_2 <= 117 && BOOST_PP_ITERATION_START_2 >= 117
#    define BOOST_PP_ITERATION_2 117
#    include BOOST_PP_FILENAME_2
#    undef BOOST_PP_ITERATION_2
# endif
# if BOOST_PP_ITERATION_FINISH_2 <= 116 && BOOST_PP_ITERATION_START_2 >= 116
#    define BOOST_PP_ITERATION_2 116
#    include BOOST_PP_FILENAME_2
#    undef BOOST_PP_ITERATION_2
# endif
# if BOOST_PP_ITERATION_FINISH_2 <= 115 && BOOST_PP_ITERATION_START_2 >= 115
#    define BOOST_PP_ITERATION_2 115
#    include BOOST_PP_FILENAME_2
#    undef BOOST_PP_ITERATION_2
# endif
# if BOOST_PP_ITERATION_FINISH_2 <= 114 && BOOST_PP_ITERATION_START_2 >= 114
#    define BOOST_PP_ITERATION_2 114
#    include BOOST_PP_FILENAME_2
#    undef BOOST_PP_ITERATION_2
# endif
# if BOOST_PP_ITERATION_FINISH_2 <= 113 && BOOST_PP_ITERATION_START_2 >= 113
#    define BOOST_PP_ITERATION_2 113
#    include BOOST_PP_FILENAME_2
#    undef BOOST_PP_ITERATION_2
# endif
# if BOOST_PP_ITERATION_FINISH_2 <= 112 && BOOST_PP_ITERATION_START_2 >= 112
#    define BOOST_PP_ITERATION_2 112
#    include BOOST_PP_FILENAME_2
#    undef BOOST_PP_ITERATION_2
# endif
# if BOOST_PP_ITERATION_FINISH_2 <= 111 && BOOST_PP_ITERATION_START_2 >= 111
#    define BOOST_PP_ITERATION_2 111
#    include BOOST_PP_FILENAME_2
#    undef BOOST_PP_ITERATION_2
# endif
# if BOOST_PP_ITERATION_FINISH_2 <= 110 && BOOST_PP_ITERATION_START_2 >= 110
#    define BOOST_PP_ITERATION_2 110
#    include BOOST_PP_FILENAME_2
#    undef BOOST_PP_ITERATION_2
# endif
# if BOOST_PP_ITERATION_FINISH_2 <= 109 && BOOST_PP_ITERATION_START_2 >= 109
#    define BOOST_PP_ITERATION_2 109
#    include BOOST_PP_FILENAME_2
#    undef BOOST_PP_ITERATION_2
# endif
# if BOOST_PP_ITERATION_FINISH_2 <= 108 && BOOST_PP_ITERATION_START_2 >= 108
#    define BOOST_PP_ITERATION_2 108
#    include BOOST_PP_FILENAME_2
#    undef BOOST_PP_ITERATION_2
# endif
# if BOOST_PP_ITERATION_FINISH_2 <= 107 && BOOST_PP_ITERATION_START_2 >= 107
#    define BOOST_PP_ITERATION_2 107
#    include BOOST_PP_FILENAME_2
#    undef BOOST_PP_ITERATION_2
# endif
# if BOOST_PP_ITERATION_FINISH_2 <= 106 && BOOST_PP_ITERATION_START_2 >= 106
#    define BOOST_PP_ITERATION_2 106
#    include BOOST_PP_FILENAME_2
#    undef BOOST_PP_ITERATION_2
# endif
# if BOOST_PP_ITERATION_FINISH_2 <= 105 && BOOST_PP_ITERATION_START_2 >= 105
#    define BOOST_PP_ITERATION_2 105
#    include BOOST_PP_FILENAME_2
#    undef BOOST_PP_ITERATION_2
# endif
# if BOOST_PP_ITERATION_FINISH_2 <= 104 && BOOST_PP_ITERATION_START_2 >= 104
#    define BOOST_PP_ITERATION_2 104
#    include BOOST_PP_FILENAME_2
#    undef BOOST_PP_ITERATION_2
# endif
# if BOOST_PP_ITERATION_FINISH_2 <= 103 && BOOST_PP_ITERATION_START_2 >= 103
#    define BOOST_PP_ITERATION_2 103
#    include BOOST_PP_FILENAME_2
#    undef BOOST_PP_ITERATION_2
# endif
# if BOOST_PP_ITERATION_FINISH_2 <= 102 && BOOST_PP_ITERATION_START_2 >= 102
#    define BOOST_PP_ITERATION_2 102
#    include BOOST_PP_FILENAME_2
#    undef BOOST_PP_ITERATION_2
# endif
# if BOOST_PP_ITERATION_FINISH_2 <= 101 && BOOST_PP_ITERATION_START_2 >= 101
#    define BOOST_PP_ITERATION_2 101
#    include BOOST_PP_FILENAME_2
#    undef BOOST_PP_ITERATION_2
# endif
# if BOOST_PP_ITERATION_FINISH_2 <= 100 && BOOST_PP_ITERATION_START_2 >= 100
#    define BOOST_PP_ITERATION_2 100
#    include BOOST_PP_FILENAME_2
#    undef BOOST_PP_ITERATION_2
# endif
# if BOOST_PP_ITERATION_FINISH_2 <= 99 && BOOST_PP_ITERATION_START_2 >= 99
#    define BOOST_PP_ITERATION_2 99
#    include BOOST_PP_FILENAME_2
#    undef BOOST_PP_ITERATION_2
# endif
# if BOOST_PP_ITERATION_FINISH_2 <= 98 && BOOST_PP_ITERATION_START_2 >= 98
#    define BOOST_PP_ITERATION_2 98
#    include BOOST_PP_FILENAME_2
#    undef BOOST_PP_ITERATION_2
# endif
# if BOOST_PP_ITERATION_FINISH_2 <= 97 && BOOST_PP_ITERATION_START_2 >= 97
#    define BOOST_PP_ITERATION_2 97
#    include BOOST_PP_FILENAME_2
#    undef BOOST_PP_ITERATION_2
# endif
# if BOOST_PP_ITERATION_FINISH_2 <= 96 && BOOST_PP_ITERATION_START_2 >= 96
#    define BOOST_PP_ITERATION_2 96
#    include BOOST_PP_FILENAME_2
#    undef BOOST_PP_ITERATION_2
# endif
# if BOOST_PP_ITERATION_FINISH_2 <= 95 && BOOST_PP_ITERATION_START_2 >= 95
#    define BOOST_PP_ITERATION_2 95
#    include BOOST_PP_FILENAME_2
#    undef BOOST_PP_ITERATION_2
# endif
# if BOOST_PP_ITERATION_FINISH_2 <= 94 && BOOST_PP_ITERATION_START_2 >= 94
#    define BOOST_PP_ITERATION_2 94
#    include BOOST_PP_FILENAME_2
#    undef BOOST_PP_ITERATION_2
# endif
# if BOOST_PP_ITERATION_FINISH_2 <= 93 && BOOST_PP_ITERATION_START_2 >= 93
#    define BOOST_PP_ITERATION_2 93
#    include BOOST_PP_FILENAME_2
#    undef BOOST_PP_ITERATION_2
# endif
# if BOOST_PP_ITERATION_FINISH_2 <= 92 && BOOST_PP_ITERATION_START_2 >= 92
#    define BOOST_PP_ITERATION_2 92
#    include BOOST_PP_FILENAME_2
#    undef BOOST_PP_ITERATION_2
# endif
# if BOOST_PP_ITERATION_FINISH_2 <= 91 && BOOST_PP_ITERATION_START_2 >= 91
#    define BOOST_PP_ITERATION_2 91
#    include BOOST_PP_FILENAME_2
#    undef BOOST_PP_ITERATION_2
# endif
# if BOOST_PP_ITERATION_FINISH_2 <= 90 && BOOST_PP_ITERATION_START_2 >= 90
#    define BOOST_PP_ITERATION_2 90
#    include BOOST_PP_FILENAME_2
#    undef BOOST_PP_ITERATION_2
# endif
# if BOOST_PP_ITERATION_FINISH_2 <= 89 && BOOST_PP_ITERATION_START_2 >= 89
#    define BOOST_PP_ITERATION_2 89
#    include BOOST_PP_FILENAME_2
#    undef BOOST_PP_ITERATION_2
# endif
# if BOOST_PP_ITERATION_FINISH_2 <= 88 && BOOST_PP_ITERATION_START_2 >= 88
#    define BOOST_PP_ITERATION_2 88
#    include BOOST_PP_FILENAME_2
#    undef BOOST_PP_ITERATION_2
# endif
# if BOOST_PP_ITERATION_FINISH_2 <= 87 && BOOST_PP_ITERATION_START_2 >= 87
#    define BOOST_PP_ITERATION_2 87
#    include BOOST_PP_FILENAME_2
#    undef BOOST_PP_ITERATION_2
# endif
# if BOOST_PP_ITERATION_FINISH_2 <= 86 && BOOST_PP_ITERATION_START_2 >= 86
#    define BOOST_PP_ITERATION_2 86
#    include BOOST_PP_FILENAME_2
#    undef BOOST_PP_ITERATION_2
# endif
# if BOOST_PP_ITERATION_FINISH_2 <= 85 && BOOST_PP_ITERATION_START_2 >= 85
#    define BOOST_PP_ITERATION_2 85
#    include BOOST_PP_FILENAME_2
#    undef BOOST_PP_ITERATION_2
# endif
# if BOOST_PP_ITERATION_FINISH_2 <= 84 && BOOST_PP_ITERATION_START_2 >= 84
#    define BOOST_PP_ITERATION_2 84
#    include BOOST_PP_FILENAME_2
#    undef BOOST_PP_ITERATION_2
# endif
# if BOOST_PP_ITERATION_FINISH_2 <= 83 && BOOST_PP_ITERATION_START_2 >= 83
#    define BOOST_PP_ITERATION_2 83
#    include BOOST_PP_FILENAME_2
#    undef BOOST_PP_ITERATION_2
# endif
# if BOOST_PP_ITERATION_FINISH_2 <= 82 && BOOST_PP_ITERATION_START_2 >= 82
#    define BOOST_PP_ITERATION_2 82
#    include BOOST_PP_FILENAME_2
#    undef BOOST_PP_ITERATION_2
# endif
# if BOOST_PP_ITERATION_FINISH_2 <= 81 && BOOST_PP_ITERATION_START_2 >= 81
#    define BOOST_PP_ITERATION_2 81
#    include BOOST_PP_FILENAME_2
#    undef BOOST_PP_ITERATION_2
# endif
# if BOOST_PP_ITERATION_FINISH_2 <= 80 && BOOST_PP_ITERATION_START_2 >= 80
#    define BOOST_PP_ITERATION_2 80
#    include BOOST_PP_FILENAME_2
#    undef BOOST_PP_ITERATION_2
# endif
# if BOOST_PP_ITERATION_FINISH_2 <= 79 && BOOST_PP_ITERATION_START_2 >= 79
#    define BOOST_PP_ITERATION_2 79
#    include BOOST_PP_FILENAME_2
#    undef BOOST_PP_ITERATION_2
# endif
# if BOOST_PP_ITERATION_FINISH_2 <= 78 && BOOST_PP_ITERATION_START_2 >= 78
#    define BOOST_PP_ITERATION_2 78
#    include BOOST_PP_FILENAME_2
#    undef BOOST_PP_ITERATION_2
# endif
# if BOOST_PP_ITERATION_FINISH_2 <= 77 && BOOST_PP_ITERATION_START_2 >= 77
#    define BOOST_PP_ITERATION_2 77
#    include BOOST_PP_FILENAME_2
#    undef BOOST_PP_ITERATION_2
# endif
# if BOOST_PP_ITERATION_FINISH_2 <= 76 && BOOST_PP_ITERATION_START_2 >= 76
#    define BOOST_PP_ITERATION_2 76
#    include BOOST_PP_FILENAME_2
#    undef BOOST_PP_ITERATION_2
# endif
# if BOOST_PP_ITERATION_FINISH_2 <= 75 && BOOST_PP_ITERATION_START_2 >= 75
#    define BOOST_PP_ITERATION_2 75
#    include BOOST_PP_FILENAME_2
#    undef BOOST_PP_ITERATION_2
# endif
# if BOOST_PP_ITERATION_FINISH_2 <= 74 && BOOST_PP_ITERATION_START_2 >= 74
#    define BOOST_PP_ITERATION_2 74
#    include BOOST_PP_FILENAME_2
#    undef BOOST_PP_ITERATION_2
# endif
# if BOOST_PP_ITERATION_FINISH_2 <= 73 && BOOST_PP_ITERATION_START_2 >= 73
#    define BOOST_PP_ITERATION_2 73
#    include BOOST_PP_FILENAME_2
#    undef BOOST_PP_ITERATION_2
# endif
# if BOOST_PP_ITERATION_FINISH_2 <= 72 && BOOST_PP_ITERATION_START_2 >= 72
#    define BOOST_PP_ITERATION_2 72
#    include BOOST_PP_FILENAME_2
#    undef BOOST_PP_ITERATION_2
# endif
# if BOOST_PP_ITERATION_FINISH_2 <= 71 && BOOST_PP_ITERATION_START_2 >= 71
#    define BOOST_PP_ITERATION_2 71
#    include BOOST_PP_FILENAME_2
#    undef BOOST_PP_ITERATION_2
# endif
# if BOOST_PP_ITERATION_FINISH_2 <= 70 && BOOST_PP_ITERATION_START_2 >= 70
#    define BOOST_PP_ITERATION_2 70
#    include BOOST_PP_FILENAME_2
#    undef BOOST_PP_ITERATION_2
# endif
# if BOOST_PP_ITERATION_FINISH_2 <= 69 && BOOST_PP_ITERATION_START_2 >= 69
#    define BOOST_PP_ITERATION_2 69
#    include BOOST_PP_FILENAME_2
#    undef BOOST_PP_ITERATION_2
# endif
# if BOOST_PP_ITERATION_FINISH_2 <= 68 && BOOST_PP_ITERATION_START_2 >= 68
#    define BOOST_PP_ITERATION_2 68
#    include BOOST_PP_FILENAME_2
#    undef BOOST_PP_ITERATION_2
# endif
# if BOOST_PP_ITERATION_FINISH_2 <= 67 && BOOST_PP_ITERATION_START_2 >= 67
#    define BOOST_PP_ITERATION_2 67
#    include BOOST_PP_FILENAME_2
#    undef BOOST_PP_ITERATION_2
# endif
# if BOOST_PP_ITERATION_FINISH_2 <= 66 && BOOST_PP_ITERATION_START_2 >= 66
#    define BOOST_PP_ITERATION_2 66
#    include BOOST_PP_FILENAME_2
#    undef BOOST_PP_ITERATION_2
# endif
# if BOOST_PP_ITERATION_FINISH_2 <= 65 && BOOST_PP_ITERATION_START_2 >= 65
#    define BOOST_PP_ITERATION_2 65
#    include BOOST_PP_FILENAME_2
#    undef BOOST_PP_ITERATION_2
# endif
# if BOOST_PP_ITERATION_FINISH_2 <= 64 && BOOST_PP_ITERATION_START_2 >= 64
#    define BOOST_PP_ITERATION_2 64
#    include BOOST_PP_FILENAME_2
#    undef BOOST_PP_ITERATION_2
# endif
# if BOOST_PP_ITERATION_FINISH_2 <= 63 && BOOST_PP_ITERATION_START_2 >= 63
#    define BOOST_PP_ITERATION_2 63
#    include BOOST_PP_FILENAME_2
#    undef BOOST_PP_ITERATION_2
# endif
# if BOOST_PP_ITERATION_FINISH_2 <= 62 && BOOST_PP_ITERATION_START_2 >= 62
#    define BOOST_PP_ITERATION_2 62
#    include BOOST_PP_FILENAME_2
#    undef BOOST_PP_ITERATION_2
# endif
# if BOOST_PP_ITERATION_FINISH_2 <= 61 && BOOST_PP_ITERATION_START_2 >= 61
#    define BOOST_PP_ITERATION_2 61
#    include BOOST_PP_FILENAME_2
#    undef BOOST_PP_ITERATION_2
# endif
# if BOOST_PP_ITERATION_FINISH_2 <= 60 && BOOST_PP_ITERATION_START_2 >= 60
#    define BOOST_PP_ITERATION_2 60
#    include BOOST_PP_FILENAME_2
#    undef BOOST_PP_ITERATION_2
# endif
# if BOOST_PP_ITERATION_FINISH_2 <= 59 && BOOST_PP_ITERATION_START_2 >= 59
#    define BOOST_PP_ITERATION_2 59
#    include BOOST_PP_FILENAME_2
#    undef BOOST_PP_ITERATION_2
# endif
# if BOOST_PP_ITERATION_FINISH_2 <= 58 && BOOST_PP_ITERATION_START_2 >= 58
#    define BOOST_PP_ITERATION_2 58
#    include BOOST_PP_FILENAME_2
#    undef BOOST_PP_ITERATION_2
# endif
# if BOOST_PP_ITERATION_FINISH_2 <= 57 && BOOST_PP_ITERATION_START_2 >= 57
#    define BOOST_PP_ITERATION_2 57
#    include BOOST_PP_FILENAME_2
#    undef BOOST_PP_ITERATION_2
# endif
# if BOOST_PP_ITERATION_FINISH_2 <= 56 && BOOST_PP_ITERATION_START_2 >= 56
#    define BOOST_PP_ITERATION_2 56
#    include BOOST_PP_FILENAME_2
#    undef BOOST_PP_ITERATION_2
# endif
# if BOOST_PP_ITERATION_FINISH_2 <= 55 && BOOST_PP_ITERATION_START_2 >= 55
#    define BOOST_PP_ITERATION_2 55
#    include BOOST_PP_FILENAME_2
#    undef BOOST_PP_ITERATION_2
# endif
# if BOOST_PP_ITERATION_FINISH_2 <= 54 && BOOST_PP_ITERATION_START_2 >= 54
#    define BOOST_PP_ITERATION_2 54
#    include BOOST_PP_FILENAME_2
#    undef BOOST_PP_ITERATION_2
# endif
# if BOOST_PP_ITERATION_FINISH_2 <= 53 && BOOST_PP_ITERATION_START_2 >= 53
#    define BOOST_PP_ITERATION_2 53
#    include BOOST_PP_FILENAME_2
#    undef BOOST_PP_ITERATION_2
# endif
# if BOOST_PP_ITERATION_FINISH_2 <= 52 && BOOST_PP_ITERATION_START_2 >= 52
#    define BOOST_PP_ITERATION_2 52
#    include BOOST_PP_FILENAME_2
#    undef BOOST_PP_ITERATION_2
# endif
# if BOOST_PP_ITERATION_FINISH_2 <= 51 && BOOST_PP_ITERATION_START_2 >= 51
#    define BOOST_PP_ITERATION_2 51
#    include BOOST_PP_FILENAME_2
#    undef BOOST_PP_ITERATION_2
# endif
# if BOOST_PP_ITERATION_FINISH_2 <= 50 && BOOST_PP_ITERATION_START_2 >= 50
#    define BOOST_PP_ITERATION_2 50
#    include BOOST_PP_FILENAME_2
#    undef BOOST_PP_ITERATION_2
# endif
# if BOOST_PP_ITERATION_FINISH_2 <= 49 && BOOST_PP_ITERATION_START_2 >= 49
#    define BOOST_PP_ITERATION_2 49
#    include BOOST_PP_FILENAME_2
#    undef BOOST_PP_ITERATION_2
# endif
# if BOOST_PP_ITERATION_FINISH_2 <= 48 && BOOST_PP_ITERATION_START_2 >= 48
#    define BOOST_PP_ITERATION_2 48
#    include BOOST_PP_FILENAME_2
#    undef BOOST_PP_ITERATION_2
# endif
# if BOOST_PP_ITERATION_FINISH_2 <= 47 && BOOST_PP_ITERATION_START_2 >= 47
#    define BOOST_PP_ITERATION_2 47
#    include BOOST_PP_FILENAME_2
#    undef BOOST_PP_ITERATION_2
# endif
# if BOOST_PP_ITERATION_FINISH_2 <= 46 && BOOST_PP_ITERATION_START_2 >= 46
#    define BOOST_PP_ITERATION_2 46
#    include BOOST_PP_FILENAME_2
#    undef BOOST_PP_ITERATION_2
# endif
# if BOOST_PP_ITERATION_FINISH_2 <= 45 && BOOST_PP_ITERATION_START_2 >= 45
#    define BOOST_PP_ITERATION_2 45
#    include BOOST_PP_FILENAME_2
#    undef BOOST_PP_ITERATION_2
# endif
# if BOOST_PP_ITERATION_FINISH_2 <= 44 && BOOST_PP_ITERATION_START_2 >= 44
#    define BOOST_PP_ITERATION_2 44
#    include BOOST_PP_FILENAME_2
#    undef BOOST_PP_ITERATION_2
# endif
# if BOOST_PP_ITERATION_FINISH_2 <= 43 && BOOST_PP_ITERATION_START_2 >= 43
#    define BOOST_PP_ITERATION_2 43
#    include BOOST_PP_FILENAME_2
#    undef BOOST_PP_ITERATION_2
# endif
# if BOOST_PP_ITERATION_FINISH_2 <= 42 && BOOST_PP_ITERATION_START_2 >= 42
#    define BOOST_PP_ITERATION_2 42
#    include BOOST_PP_FILENAME_2
#    undef BOOST_PP_ITERATION_2
# endif
# if BOOST_PP_ITERATION_FINISH_2 <= 41 && BOOST_PP_ITERATION_START_2 >= 41
#    define BOOST_PP_ITERATION_2 41
#    include BOOST_PP_FILENAME_2
#    undef BOOST_PP_ITERATION_2
# endif
# if BOOST_PP_ITERATION_FINISH_2 <= 40 && BOOST_PP_ITERATION_START_2 >= 40
#    define BOOST_PP_ITERATION_2 40
#    include BOOST_PP_FILENAME_2
#    undef BOOST_PP_ITERATION_2
# endif
# if BOOST_PP_ITERATION_FINISH_2 <= 39 && BOOST_PP_ITERATION_START_2 >= 39
#    define BOOST_PP_ITERATION_2 39
#    include BOOST_PP_FILENAME_2
#    undef BOOST_PP_ITERATION_2
# endif
# if BOOST_PP_ITERATION_FINISH_2 <= 38 && BOOST_PP_ITERATION_START_2 >= 38
#    define BOOST_PP_ITERATION_2 38
#    include BOOST_PP_FILENAME_2
#    undef BOOST_PP_ITERATION_2
# endif
# if BOOST_PP_ITERATION_FINISH_2 <= 37 && BOOST_PP_ITERATION_START_2 >= 37
#    define BOOST_PP_ITERATION_2 37
#    include BOOST_PP_FILENAME_2
#    undef BOOST_PP_ITERATION_2
# endif
# if BOOST_PP_ITERATION_FINISH_2 <= 36 && BOOST_PP_ITERATION_START_2 >= 36
#    define BOOST_PP_ITERATION_2 36
#    include BOOST_PP_FILENAME_2
#    undef BOOST_PP_ITERATION_2
# endif
# if BOOST_PP_ITERATION_FINISH_2 <= 35 && BOOST_PP_ITERATION_START_2 >= 35
#    define BOOST_PP_ITERATION_2 35
#    include BOOST_PP_FILENAME_2
#    undef BOOST_PP_ITERATION_2
# endif
# if BOOST_PP_ITERATION_FINISH_2 <= 34 && BOOST_PP_ITERATION_START_2 >= 34
#    define BOOST_PP_ITERATION_2 34
#    include BOOST_PP_FILENAME_2
#    undef BOOST_PP_ITERATION_2
# endif
# if BOOST_PP_ITERATION_FINISH_2 <= 33 && BOOST_PP_ITERATION_START_2 >= 33
#    define BOOST_PP_ITERATION_2 33
#    include BOOST_PP_FILENAME_2
#    undef BOOST_PP_ITERATION_2
# endif
# if BOOST_PP_ITERATION_FINISH_2 <= 32 && BOOST_PP_ITERATION_START_2 >= 32
#    define BOOST_PP_ITERATION_2 32
#    include BOOST_PP_FILENAME_2
#    undef BOOST_PP_ITERATION_2
# endif
# if BOOST_PP_ITERATION_FINISH_2 <= 31 && BOOST_PP_ITERATION_START_2 >= 31
#    define BOOST_PP_ITERATION_2 31
#    include BOOST_PP_FILENAME_2
#    undef BOOST_PP_ITERATION_2
# endif
# if BOOST_PP_ITERATION_FINISH_2 <= 30 && BOOST_PP_ITERATION_START_2 >= 30
#    define BOOST_PP_ITERATION_2 30
#    include BOOST_PP_FILENAME_2
#    undef BOOST_PP_ITERATION_2
# endif
# if BOOST_PP_ITERATION_FINISH_2 <= 29 && BOOST_PP_ITERATION_START_2 >= 29
#    define BOOST_PP_ITERATION_2 29
#    include BOOST_PP_FILENAME_2
#    undef BOOST_PP_ITERATION_2
# endif
# if BOOST_PP_ITERATION_FINISH_2 <= 28 && BOOST_PP_ITERATION_START_2 >= 28
#    define BOOST_PP_ITERATION_2 28
#    include BOOST_PP_FILENAME_2
#    undef BOOST_PP_ITERATION_2
# endif
# if BOOST_PP_ITERATION_FINISH_2 <= 27 && BOOST_PP_ITERATION_START_2 >= 27
#    define BOOST_PP_ITERATION_2 27
#    include BOOST_PP_FILENAME_2
#    undef BOOST_PP_ITERATION_2
# endif
# if BOOST_PP_ITERATION_FINISH_2 <= 26 && BOOST_PP_ITERATION_START_2 >= 26
#    define BOOST_PP_ITERATION_2 26
#    include BOOST_PP_FILENAME_2
#    undef BOOST_PP_ITERATION_2
# endif
# if BOOST_PP_ITERATION_FINISH_2 <= 25 && BOOST_PP_ITERATION_START_2 >= 25
#    define BOOST_PP_ITERATION_2 25
#    include BOOST_PP_FILENAME_2
#    undef BOOST_PP_ITERATION_2
# endif
# if BOOST_PP_ITERATION_FINISH_2 <= 24 && BOOST_PP_ITERATION_START_2 >= 24
#    define BOOST_PP_ITERATION_2 24
#    include BOOST_PP_FILENAME_2
#    undef BOOST_PP_ITERATION_2
# endif
# if BOOST_PP_ITERATION_FINISH_2 <= 23 && BOOST_PP_ITERATION_START_2 >= 23
#    define BOOST_PP_ITERATION_2 23
#    include BOOST_PP_FILENAME_2
#    undef BOOST_PP_ITERATION_2
# endif
# if BOOST_PP_ITERATION_FINISH_2 <= 22 && BOOST_PP_ITERATION_START_2 >= 22
#    define BOOST_PP_ITERATION_2 22
#    include BOOST_PP_FILENAME_2
#    undef BOOST_PP_ITERATION_2
# endif
# if BOOST_PP_ITERATION_FINISH_2 <= 21 && BOOST_PP_ITERATION_START_2 >= 21
#    define BOOST_PP_ITERATION_2 21
#    include BOOST_PP_FILENAME_2
#    undef BOOST_PP_ITERATION_2
# endif
# if BOOST_PP_ITERATION_FINISH_2 <= 20 && BOOST_PP_ITERATION_START_2 >= 20
#    define BOOST_PP_ITERATION_2 20
#    include BOOST_PP_FILENAME_2
#    undef BOOST_PP_ITERATION_2
# endif
# if BOOST_PP_ITERATION_FINISH_2 <= 19 && BOOST_PP_ITERATION_START_2 >= 19
#    define BOOST_PP_ITERATION_2 19
#    include BOOST_PP_FILENAME_2
#    undef BOOST_PP_ITERATION_2
# endif
# if BOOST_PP_ITERATION_FINISH_2 <= 18 && BOOST_PP_ITERATION_START_2 >= 18
#    define BOOST_PP_ITERATION_2 18
#    include BOOST_PP_FILENAME_2
#    undef BOOST_PP_ITERATION_2
# endif
# if BOOST_PP_ITERATION_FINISH_2 <= 17 && BOOST_PP_ITERATION_START_2 >= 17
#    define BOOST_PP_ITERATION_2 17
#    include BOOST_PP_FILENAME_2
#    undef BOOST_PP_ITERATION_2
# endif
# if BOOST_PP_ITERATION_FINISH_2 <= 16 && BOOST_PP_ITERATION_START_2 >= 16
#    define BOOST_PP_ITERATION_2 16
#    include BOOST_PP_FILENAME_2
#    undef BOOST_PP_ITERATION_2
# endif
# if BOOST_PP_ITERATION_FINISH_2 <= 15 && BOOST_PP_ITERATION_START_2 >= 15
#    define BOOST_PP_ITERATION_2 15
#    include BOOST_PP_FILENAME_2
#    undef BOOST_PP_ITERATION_2
# endif
# if BOOST_PP_ITERATION_FINISH_2 <= 14 && BOOST_PP_ITERATION_START_2 >= 14
#    define BOOST_PP_ITERATION_2 14
#    include BOOST_PP_FILENAME_2
#    undef BOOST_PP_ITERATION_2
# endif
# if BOOST_PP_ITERATION_FINISH_2 <= 13 && BOOST_PP_ITERATION_START_2 >= 13
#    define BOOST_PP_ITERATION_2 13
#    include BOOST_PP_FILENAME_2
#    undef BOOST_PP_ITERATION_2
# endif
# if BOOST_PP_ITERATION_FINISH_2 <= 12 && BOOST_PP_ITERATION_START_2 >= 12
#    define BOOST_PP_ITERATION_2 12
#    include BOOST_PP_FILENAME_2
#    undef BOOST_PP_ITERATION_2
# endif
# if BOOST_PP_ITERATION_FINISH_2 <= 11 && BOOST_PP_ITERATION_START_2 >= 11
#    define BOOST_PP_ITERATION_2 11
#    include BOOST_PP_FILENAME_2
#    undef BOOST_PP_ITERATION_2
# endif
# if BOOST_PP_ITERATION_FINISH_2 <= 10 && BOOST_PP_ITERATION_START_2 >= 10
#    define BOOST_PP_ITERATION_2 10
#    include BOOST_PP_FILENAME_2
#    undef BOOST_PP_ITERATION_2
# endif
# if BOOST_PP_ITERATION_FINISH_2 <= 9 && BOOST_PP_ITERATION_START_2 >= 9
#    define BOOST_PP_ITERATION_2 9
#    include BOOST_PP_FILENAME_2
#    undef BOOST_PP_ITERATION_2
# endif
# if BOOST_PP_ITERATION_FINISH_2 <= 8 && BOOST_PP_ITERATION_START_2 >= 8
#    define BOOST_PP_ITERATION_2 8
#    include BOOST_PP_FILENAME_2
#    undef BOOST_PP_ITERATION_2
# endif
# if BOOST_PP_ITERATION_FINISH_2 <= 7 && BOOST_PP_ITERATION_START_2 >= 7
#    define BOOST_PP_ITERATION_2 7
#    include BOOST_PP_FILENAME_2
#    undef BOOST_PP_ITERATION_2
# endif
# if BOOST_PP_ITERATION_FINISH_2 <= 6 && BOOST_PP_ITERATION_START_2 >= 6
#    define BOOST_PP_ITERATION_2 6
#    include BOOST_PP_FILENAME_2
#    undef BOOST_PP_ITERATION_2
# endif
# if BOOST_PP_ITERATION_FINISH_2 <= 5 && BOOST_PP_ITERATION_START_2 >= 5
#    define BOOST_PP_ITERATION_2 5
#    include BOOST_PP_FILENAME_2
#    undef BOOST_PP_ITERATION_2
# endif
# if BOOST_PP_ITERATION_FINISH_2 <= 4 && BOOST_PP_ITERATION_START_2 >= 4
#    define BOOST_PP_ITERATION_2 4
#    include BOOST_PP_FILENAME_2
#    undef BOOST_PP_ITERATION_2
# endif
# if BOOST_PP_ITERATION_FINISH_2 <= 3 && BOOST_PP_ITERATION_START_2 >= 3
#    define BOOST_PP_ITERATION_2 3
#    include BOOST_PP_FILENAME_2
#    undef BOOST_PP_ITERATION_2
# endif
# if BOOST_PP_ITERATION_FINISH_2 <= 2 && BOOST_PP_ITERATION_START_2 >= 2
#    define BOOST_PP_ITERATION_2 2
#    include BOOST_PP_FILENAME_2
#    undef BOOST_PP_ITERATION_2
# endif
# if BOOST_PP_ITERATION_FINISH_2 <= 1 && BOOST_PP_ITERATION_START_2 >= 1
#    define BOOST_PP_ITERATION_2 1
#    include BOOST_PP_FILENAME_2
#    undef BOOST_PP_ITERATION_2
# endif
# if BOOST_PP_ITERATION_FINISH_2 <= 0 && BOOST_PP_ITERATION_START_2 >= 0
#    define BOOST_PP_ITERATION_2 0
#    include BOOST_PP_FILENAME_2
#    undef BOOST_PP_ITERATION_2
# endif

By viewing downloads associated with this article you agree to the Terms of Service and the article's licence.

If a file you wish to view isn't highlighted, and is a text file (not binary), please let us know and we'll add colourisation support for it.

License

This article, along with any associated source code and files, is licensed under The Code Project Open License (CPOL)


Written By
Web Developer
United States United States
Mr. Shah is a reclusive C++/C# developer lurking somewhere in the depths of the city of London. He learnt physics at Kings' College London and obtained a Master in Science there. Having earned an MCAD, he teeters on the brink of transitioning from C++ to C#, unsure of which language to jump to. Fortunately, he also knows how to use .NET interop to merge code between the two languages (which means he won't have to make the choice anytime soon).

His interests (apart from programming) are walking, football (the real one!), philosophy, history, retro-gaming, strategy gaming, and any good game in general.

He maintains a website / blog / FAQ / junk at shexec32.serveftp.net, where he places the best answers he's written to the questions you've asked. If you can find him, maybe you can hire Mr. Shah to help you with anything C++[/CLI]/C#/.NET related Smile | :) .

Comments and Discussions