packages feed

tttool 0.1 → 1.0

raw patch · 11 files changed

+16793/−147 lines, 11 filesdep +bytestring-builderdep +hashabledep +process

Dependencies added: bytestring-builder, hashable, process, template-haskell, vector

Files

README.md view
@@ -44,6 +44,8 @@            prints the scripts for each OID, in their raw form         raw-script <file.gme> <n>            prints the scripts for the given OID, in their raw form+        binaries [-d dir] <file.gme>...+           dumps all binaries to the given directory (default: binaries/)         games <file.gme>...            prints the decoded games         lint <file.gme>@@ -60,21 +62,23 @@            interactively play: Enter OIDs, and see what happens.         rewrite <infile.gme> <outfile.gme>            parses the file and serializes it again (for debugging).-        create-debug <outfile.gme> <productid>-           creates a special Debug.gme file for that productid         export <infile.gme> [<outfile.yaml>]            dumps the file in the human-readable yaml format         assemble <infile.yaml> <outfile.gme>            creates a gme file from the given source         oid-code [-d DPI] <codes>-           creates a PNG file for each given optical code+           creates a PNG file for each given code            scale this to 10cm×10cm            By default, it creates a 1200 dpi image. With -d 600, you            obtain a 600 dpi image.            <codes> can be a range, e.g. 1,3,1000-1085.-           The code refers to the *raw* code, not the one read by the pen.-           Uses oid<code>.png as the file name.-+           Uses oid-<code>.png as the file name.+        oid-code [-d DPI] <infile.yaml>+           Like above, but creates one file for each code in the yaml file.+           Uses oid-<product-id>-<scriptname or code>.png as the file name.+        raw-oid-code [-d DPI] <raw codes>+           creates a PNG file with the given "raw code". Usually not needed.+           Uses oid-raw-<code>.png as the file name.  A transscript is simply a `;`-separated table of OIDs and some text, see for example [`transcript/WWW_Bauernhof.csv`](transcript/WWW_Bauernhof.csv). @@ -135,13 +139,23 @@  4. Copy the now generated `my-book.gme` to your TipToi pen and enjoy!  If you need to find out what OID code corresponds to what part of the book, you-can generate a debug gme file using `./tttool create-debug` and load that on-your pen. It will then read out the codes, as a sequence of english digits.+can generate a debug gme using the `debug.yaml` file, adjusting its+`Product-Id` to your product’s id, building it with `./tttool assemble+debug.yaml` and loading the resulting `debug.gme` on your pen.  It will then+read out the codes, as a sequence of english digits.  We are also collecting template files, where the OIDs are commented; these can be found in the `./templates` directory. Please improve and contribute! -Again, please let us know if you have problems, but also tell us what fun things you did if you succeded.+Again, please let us know if you have problems, but also tell us what fun+things you did if you succeded.++Text to speech+--------------++If you have libttspico-utils and vorbis-tools installed, you can have tttool+generate audio files from text for you, which makes developing your yaml file+much easier. See [text2speech.yaml](text2speech.yaml) for more information.  Printing your own books -----------------------
+ src/BakedVector.hs view
@@ -0,0 +1,101 @@+{-# LANGUAGE QuasiQuotes, TemplateHaskell, ScopedTypeVariables, CPP #-}++-- © 2015 Patrick Chilton++module BakedVector where++import qualified Data.ByteString.Lazy as BSL+#if __GLASGOW_HASKELL__ <= 704+import Data.ByteString.Lazy.Char8 (unpack)+#else+import Data.ByteString.Lazy (unpack)+#endif+import Data.ByteString.Builder (toLazyByteString)+import Data.ByteString.Builder.Prim+import Foreign.Storable+import qualified Data.Vector.Storable as VS+import Foreign.ForeignPtr+import GHC.Ptr+import Language.Haskell.TH.Quote+import Language.Haskell.TH.Syntax+import System.IO.Unsafe+import Data.Word+import Utils++-- Compiled-in Storable Vectors.+-- Example: [intVector| 1, 2, 4, 6, 7 |]+--          [intString|\xEF\xBE\xAD\xDE\NUL\NUL\NUL\NUL]+--          $(bakeVector [ 1, 2, 3 ])++class (Read a, Storable a) => Bakable a where+  bakeType :: proxy a -> Q Type+  bakePrim :: proxy a -> FixedPrim a++bakeString :: forall proxy a. Bakable a => proxy a -> BSL.ByteString -> Q Exp+bakeString p s =+  case fromIntegral (BSL.length s) `quotRem` sizeOf (undefined :: a) of+    ( len, 0 ) ->+      [| let ptr = unsafeDupablePerformIO $ newForeignPtr_ $ Ptr $(litE)+         in VS.unsafeFromForeignPtr ptr 0 len :: VS.Vector $(bakeType p)+      |] where litE = return $ LitE $ StringPrimL $ unpack s+    _ -> fail "Invalid string length."++bakeVector :: Bakable a => [ a ] -> Q Exp+bakeVector xs+  = bakeString xs $ toLazyByteString $ primMapListFixed (bakePrim xs) xs++quoter :: (String -> Q Exp) -> QuasiQuoter+quoter qExp = QuasiQuoter qExp unsupported unsupported unsupported+  where unsupported = fail "Baked vectors must be used as expressions."++bakedString :: Bakable a => proxy a -> QuasiQuoter+bakedString p = quoter $ \s ->+  case readMaybe ("\"" ++ s ++ "\"") of+    Nothing -> fail "Failed to parse baked vector string."+    Just s' -> bakeString p s'++bakedVector :: forall proxy a. Bakable a => proxy a -> QuasiQuoter+bakedVector _ = quoter $ \s ->+  case readMaybe ("[" ++ s ++ "]") of+    Nothing -> fail "Failed to parse baked vector literal."+    Just xs -> bakeVector (xs :: [ a ])++instance Bakable Int where+  bakeType _ = [t|Int|]+  bakePrim _ = intHost++intVector :: QuasiQuoter+intVector = bakedVector intHost++intString :: QuasiQuoter+intString = bakedString intHost++instance Bakable Float where+  bakeType _ = [t|Float|]+  bakePrim _ = floatHost++floatVector :: QuasiQuoter+floatVector = bakedVector floatHost++floatString :: QuasiQuoter+floatString = bakedString floatHost++instance Bakable Double where+  bakeType _ = [t|Double|]+  bakePrim _ = doubleHost++doubleVector :: QuasiQuoter+doubleVector = bakedVector doubleHost++doubleString :: QuasiQuoter+doubleString = bakedString doubleHost++instance Bakable Word16 where+  bakeType _ = [t|Word16|]+  bakePrim _ = word16Host++word16Vector :: QuasiQuoter+word16Vector = bakedVector word16Host++word16String :: QuasiQuoter+word16String = bakedString word16Host
src/Constants.hs view
@@ -1,6 +1,5 @@ module Constants where -import qualified Data.Map as M import qualified Data.ByteString.Lazy.Char8 as BC  import Types@@ -24,17 +23,3 @@     , (BC.pack "OggS", "ogg")     , (BC.pack "fLaC", "flac")     , (BC.pack "ID3",  "mp3")]---knownCodes :: [Word16]-knownCodes = [4716, 4717, 4718, 4719, 4720, 4721, 4722, 4723, 4724, 4725, 4726, 4727, 4728, 4729, 4730, 4731, 4732, 4733, 4734, 4735, 4736, 4737, 4738, 4739, 4740, 4741, 4742, 4743, 4744, 4745, 4746, 4747, 4748, 4749, 4750, 4751, 4752, 4753, 4754, 4755, 4756, 4757, 4758, 4759, 4760, 4761, 4762, 4763, 4764, 4765, 4766, 4767, 4768, 4769, 4770, 4771, 4772, 4773, 4774, 4775, 4776, 4777, 4778, 4779, 4780, 4781, 4782, 4783, 4784, 4785, 4786, 4787, 4788, 4789, 4790, 4791, 4792, 4793, 4794, 4795, 4796, 4797, 4798, 4799, 4800, 4801, 4802, 4803, 4804, 4805, 4806, 4807, 4808, 4809, 4810, 4811, 4812, 4813, 4814, 4815]---knownCodes = [8066..8081]--knownRawCodes :: [Word16]-knownRawCodes = [0, 1, 2, 3, 8, 9, 10, 11, 13, 14, 16, 17, 18, 19, 24, 25, 26, 27, 29, 30, 31, 32, 33, 34, 35, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 61, 62, 63, 64, 65, 66, 67, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121]--code2RawCode :: Word16 -> Maybe Word16-code2RawCode =-    let m = M.fromList (zip knownCodes knownRawCodes)-    in \c -> M.lookup c m-
src/GMEParser.hs view
@@ -1,13 +1,14 @@-{-# LANGUAGE GeneralizedNewtypeDeriving #-}+{-# LANGUAGE GeneralizedNewtypeDeriving, RecordWildCards #-}  module GMEParser (parseTipToiFile) where  import qualified Data.ByteString.Lazy as B+import qualified Data.ByteString.Lazy.Char8 as BC import qualified Data.Binary.Get as G import Text.Printf import Data.List import Data.Functor-import Control.Applicative (Applicative)+import Control.Applicative (Applicative, (<*>)) import Data.Maybe import Control.Monad import Control.Monad.Writer.Strict@@ -46,7 +47,7 @@     put oldOffset     return a -getAt :: Offset -> (SGet a) -> SGet a+getAt :: Offset -> SGet a -> SGet a getAt offset act = lookAhead (jumpTo offset >> act)  getSeg :: String -> SGet a -> SGet a@@ -85,7 +86,7 @@ maybeIndirection :: String -> SGet a -> SGet (Maybe a) maybeIndirection desc act = do     offset <- getWord32-    if offset == 0xFFFFFFFF+    if offset == 0xFFFFFFFF || offset == 0x00000000     then return Nothing     else Just <$> getSegAt offset desc act @@ -226,6 +227,17 @@ lowbyte n = fromIntegral (n `mod` 2^8) highbyte n = fromIntegral (n `div` 2^8) +getBinaries :: SGet [(B.ByteString, B.ByteString)]+getBinaries = do+    n <- getWord16+    _ <- getBS 14 -- padding+    forM [0..n - 1] $ \n -> do+        offset <- getWord32+        length <- getWord32+        desc <- getBS 8+        binary <- getSegAt offset (BC.unpack desc) (getBS length)+        return (desc, binary)+ getAudios :: SGet ([B.ByteString], Bool, Word8) getAudios = do     until <- lookAhead getWord32@@ -338,25 +350,41 @@ getInitialRegs :: SGet [Word16] getInitialRegs = getArray getWord16 getWord16 +getSpecials :: SGet (Word16, Word16)+getSpecials = (,) <$> getWord16 <*> getWord16+ getTipToiFile :: SGet TipToiFile getTipToiFile = getSegAt 0x00 "Header" $ do-    scripts <- indirection "Scripts" getScripts-    (at, at_doubled, xor) <- indirection "Media" getAudios+    ttScripts <- indirection "Scripts" getScripts+    (ttAudioFiles, ttAudioFilesDoubles, ttAudioXor) <- indirection "Media" getAudios     _ <- getWord32 -- Usually 0x0000238b     _ <- indirection "Additional script" getScript-    games <- indirection "Games" $ indirections getWord32 "" getGame-    id <- getWord32-    regs <- indirection "Initial registers" getInitialRegs-    raw_xor <- getWord32-    (comment,date) <- do+    ttGames <- indirection "Games" $ indirections getWord32 "" getGame+    ttProductId <- getWord32+    ttInitialRegs <- indirection "Initial registers" getInitialRegs+    ttRawXor <- getWord32+    (ttComment, ttDate) <- do         l <- getWord8         c <- getBS (fromIntegral l)         d <- getBS 8         return (c,d)-    checksum <- getChecksum-    checksumCalc <- calcChecksum-    ipll <- getSegAt 0x71 "After header" $ indirection "initial play lists" $ getPlayListList-    return (TipToiFile id raw_xor comment date regs ipll scripts games at at_doubled xor checksum checksumCalc)++    jumpTo 0x0071+    ttWelcome <- indirection "initial play lists" $ getPlayListList++    jumpTo 0x0090+    ttBinaries1 <- fromMaybe [] <$> maybeIndirection "Binaries 1" getBinaries+    ttSpecialOIDs <- maybeIndirection "specials symbols" getSpecials+    ttBinaries2 <- fromMaybe [] <$> maybeIndirection "Binaries 1" getBinaries++    jumpTo 0x00A0+    ttBinaries3 <- fromMaybe [] <$> maybeIndirection "Single binary 1" getBinaries+    getWord32 --ignored+    ttBinaries4 <- fromMaybe [] <$> maybeIndirection "Single binary 2" getBinaries++    ttChecksum <- getChecksum+    ttChecksumCalc <- calcChecksum+    return $ TipToiFile {..}  parseTipToiFile :: B.ByteString -> (TipToiFile, Segments) parseTipToiFile = runSGet getTipToiFile
+ src/KnownCodes.hs view
@@ -0,0 +1,16406 @@+{-# LANGUAGE QuasiQuotes #-}++module KnownCodes where++import Data.Word+import qualified Data.Vector.Storable as V++import BakedVector++code2RawCode :: Word16 -> Maybe Word16+code2RawCode code = knownRawCodes V.!? fromIntegral code++firstObjectCode :: Word16+firstObjectCode = 4716 ++lastObjectCode :: Word16+lastObjectCode = fromIntegral $ V.length knownRawCodes - 1++knownRawCodes :: V.Vector Word16+knownRawCodes =+  [word16Vector|+    4+    , 5+    , 6+    , 7+    , 12+    , 15+    , 20+    , 21+    , 22+    , 23+    , 28+    , 36+    , 37+    , 38+    , 39+    , 60+    , 68+    , 69+    , 84+    , 85+    , 100+    , 101+    , 196+    , 197+    , 198+    , 199+    , 204+    , 207+    , 212+    , 213+    , 214+    , 215+    , 223+    , 228+    , 229+    , 230+    , 231+    , 236+    , 252+    , 256+    , 257+    , 259+    , 272+    , 273+    , 275+    , 320+    , 321+    , 323+    , 336+    , 337+    , 339+    , 384+    , 385+    , 386+    , 387+    , 400+    , 401+    , 402+    , 403+    , 449+    , 450+    , 451+    , 465+    , 466+    , 467+    , 768+    , 769+    , 771+    , 776+    , 777+    , 778+    , 779+    , 784+    , 792+    , 793+    , 794+    , 795+    , 801+    , 808+    , 809+    , 816+    , 817+    , 962+    , 963+    , 969+    , 970+    , 971+    , 979+    , 985+    , 986+    , 987+    , 994+    , 1001+    , 1010+    , 1011+    , 1280+    , 1297+    , 1299+    , 1305+    , 1329+    , 1331+    , 1345+    , 1347+    , 1360+    , 1368+    , 1370+    , 1392+    , 1408+    , 1410+    , 1425+    , 1427+    , 1433+    , 1435+    , 1457+    , 1459+    , 1473+    , 1475+    , 1490+    , 1498+    , 1522+    , 1542+    , 1548+    , 1549+    , 1551+    , 1565+    , 1567+    , 1596+    , 1597+    , 1604+    , 1605+    , 1606+    , 1607+    , 1612+    , 1613+    , 1615+    , 1620+    , 1622+    , 1628+    , 1660+    , 1661+    , 1670+    , 1676+    , 1677+    , 1678+    , 1679+    , 1693+    , 1695+    , 1724+    , 1725+    , 1734+    , 1740+    , 1741+    , 1742+    , 1743+    , 1750+    , 1756+    , 1758+    , 1788+    , 1789+    , 1800+    , 1802+    , 1817+    , 1819+    , 1841+    , 1993+    , 1995+    , 2010+    , 2034+    , 2100+    , 2102+    , 2108+    , 2165+    , 2293+    , 2295+    , 2304+    , 2305+    , 2307+    , 2320+    , 2330+    , 2337+    , 2339+    , 2345+    , 2352+    , 2353+    , 2355+    , 2368+    , 2369+    , 2371+    , 2385+    , 2387+    , 2393+    , 2395+    , 2400+    , 2408+    , 2416+    , 2417+    , 2419+    , 2434+    , 2435+    , 2450+    , 2456+    , 2458+    , 2465+    , 2467+    , 2473+    , 2480+    , 2481+    , 2482+    , 2483+    , 2498+    , 2499+    , 2515+    , 2521+    , 2530+    , 2545+    , 2546+    , 2547+    , 2572+    , 2573+    , 2575+    , 2605+    , 2614+    , 2620+    , 2621+    , 2636+    , 2637+    , 2639+    , 2660+    , 2662+    , 2668+    , 2676+    , 2677+    , 2678+    , 2679+    , 2684+    , 2685+    , 2702+    , 2703+    , 2733+    , 2742+    , 2748+    , 2749+    , 2766+    , 2767+    , 2790+    , 2796+    , 2806+    , 2812+    , 2813+    , 2825+    , 2827+    , 2840+    , 2842+    , 2857+    , 2864+    , 2872+    , 3018+    , 3035+    , 3059+    , 3065+    , 3076+    , 3077+    , 3078+    , 3079+    , 3084+    , 3087+    , 3092+    , 3093+    , 3094+    , 3095+    , 3103+    , 3108+    , 3109+    , 3110+    , 3111+    , 3116+    , 3124+    , 3125+    , 3126+    , 3127+    , 3132+    , 3140+    , 3141+    , 3156+    , 3157+    , 3172+    , 3173+    , 3188+    , 3189+    , 3270+    , 3271+    , 3276+    , 3279+    , 3286+    , 3287+    , 3292+    , 3300+    , 3301+    , 3302+    , 3303+    , 3316+    , 3317+    , 3318+    , 3319+    , 3324+    , 3328+    , 3329+    , 3331+    , 3344+    , 3345+    , 3347+    , 3360+    , 3361+    , 3363+    , 3376+    , 3377+    , 3379+    , 3392+    , 3393+    , 3395+    , 3408+    , 3409+    , 3411+    , 3424+    , 3425+    , 3427+    , 3440+    , 3441+    , 3443+    , 3458+    , 3459+    , 3474+    , 3475+    , 3488+    , 3489+    , 3490+    , 3491+    , 3504+    , 3505+    , 3506+    , 3507+    , 3522+    , 3523+    , 3538+    , 3539+    , 3553+    , 3554+    , 3555+    , 3569+    , 3570+    , 3571+    , 3848+    , 3849+    , 3850+    , 3851+    , 3864+    , 3865+    , 3866+    , 3867+    , 3880+    , 3881+    , 3888+    , 3889+    , 3891+    , 3896+    , 3897+    , 4042+    , 4043+    , 4058+    , 4059+    , 4073+    , 4082+    , 4083+    , 4089+    , 4096+    , 4097+    , 4099+    , 4112+    , 4120+    , 4121+    , 4122+    , 4123+    , 4129+    , 4131+    , 4136+    , 4137+    , 4144+    , 4145+    , 4147+    , 4357+    , 4358+    , 4373+    , 4374+    , 4423+    , 4439+    , 5382+    , 5388+    , 5397+    , 5407+    , 5447+    , 5455+    , 6168+    , 6170+    , 6185+    , 6192+    , 6405+    , 6406+    , 6412+    , 6415+    , 6422+    , 6428+    , 6437+    , 6453+    , 6454+    , 6460+    , 6471+    , 6479+    , 6487+    , 6495+    , 6519+    , 7168+    , 7169+    , 7171+    , 7192+    , 7193+    , 7194+    , 7195+    , 7200+    , 7208+    , 7209+    , 7216+    , 7217+    , 7219+    , 7429+    , 7430+    , 7445+    , 7446+    , 7461+    , 7462+    , 7477+    , 7478+    , 7495+    , 7511+    , 7527+    , 7543+    , 8192+    , 8193+    , 8195+    , 8209+    , 8211+    , 8216+    , 8217+    , 8218+    , 8219+    , 8224+    , 8232+    , 8233+    , 8240+    , 8241+    , 8243+    , 8323+    , 8327+    , 8339+    , 8343+    , 8359+    , 8371+    , 8384+    , 8385+    , 8386+    , 8387+    , 8388+    , 8389+    , 8390+    , 8391+    , 8396+    , 8399+    , 8400+    , 8402+    , 8404+    , 8405+    , 8406+    , 8407+    , 8408+    , 8409+    , 8410+    , 8411+    , 8415+    , 8417+    , 8419+    , 8420+    , 8421+    , 8422+    , 8423+    , 8424+    , 8425+    , 8428+    , 8432+    , 8433+    , 8434+    , 8435+    , 8444+    , 8453+    , 8454+    , 8469+    , 8470+    , 8519+    , 8535+    , 8579+    , 8583+    , 8595+    , 8599+    , 8643+    , 8645+    , 8646+    , 8659+    , 8661+    , 8662+    , 9217+    , 9219+    , 9240+    , 9242+    , 9264+    , 9347+    , 9408+    , 9410+    , 9433+    , 9435+    , 9457+    , 9459+    , 9477+    , 9478+    , 9484+    , 9487+    , 9494+    , 9500+    , 9532+    , 9543+    , 9551+    , 9559+    , 9567+    , 9607+    , 9615+    , 9619+    , 9627+    , 9651+    , 9667+    , 9669+    , 9670+    , 9676+    , 9679+    , 9685+    , 9690+    , 9695+    , 9724+    , 10240+    , 10265+    , 10267+    , 10280+    , 10289+    , 10291+    , 10292+    , 10294+    , 10300+    , 10419+    , 10435+    , 10456+    , 10458+    , 10473+    , 10480+    , 10482+    , 10485+    , 10487+    , 10496+    , 10499+    , 10502+    , 10508+    , 10512+    , 10517+    , 10522+    , 10527+    , 10531+    , 10534+    , 10537+    , 10540+    , 10544+    , 10547+    , 10549+    , 10563+    , 10567+    , 10575+    , 10579+    , 10587+    , 10599+    , 10611+    , 10627+    , 10647+    , 10655+    , 10659+    , 10675+    , 10679+    , 10691+    , 10703+    , 10707+    , 10710+    , 10713+    , 10716+    , 10725+    , 10739+    , 10742+    , 10748+    , 11264+    , 11265+    , 11267+    , 11268+    , 11269+    , 11270+    , 11271+    , 11276+    , 11279+    , 11284+    , 11285+    , 11286+    , 11287+    , 11288+    , 11289+    , 11290+    , 11291+    , 11295+    , 11297+    , 11299+    , 11300+    , 11301+    , 11302+    , 11303+    , 11304+    , 11305+    , 11308+    , 11312+    , 11313+    , 11315+    , 11316+    , 11317+    , 11318+    , 11319+    , 11324+    , 11395+    , 11399+    , 11415+    , 11427+    , 11431+    , 11443+    , 11447+    , 11458+    , 11459+    , 11462+    , 11463+    , 11468+    , 11471+    , 11478+    , 11479+    , 11480+    , 11481+    , 11482+    , 11483+    , 11484+    , 11488+    , 11490+    , 11492+    , 11493+    , 11494+    , 11495+    , 11496+    , 11497+    , 11504+    , 11505+    , 11506+    , 11507+    , 11508+    , 11509+    , 11510+    , 11511+    , 11516+    , 11520+    , 11523+    , 11536+    , 11539+    , 11552+    , 11555+    , 11568+    , 11571+    , 11587+    , 11603+    , 11619+    , 11635+    , 11651+    , 11667+    , 11683+    , 11699+    , 11715+    , 11731+    , 11747+    , 11763+    , 12292+    , 12293+    , 12294+    , 12295+    , 12300+    , 12303+    , 12308+    , 12309+    , 12310+    , 12311+    , 12319+    , 12324+    , 12325+    , 12326+    , 12327+    , 12332+    , 12348+    , 12419+    , 12423+    , 12439+    , 12451+    , 12455+    , 12467+    , 12480+    , 12481+    , 12482+    , 12483+    , 12484+    , 12485+    , 12486+    , 12487+    , 12492+    , 12495+    , 12497+    , 12499+    , 12500+    , 12501+    , 12502+    , 12503+    , 12504+    , 12505+    , 12506+    , 12507+    , 12508+    , 12512+    , 12514+    , 12516+    , 12517+    , 12518+    , 12519+    , 12520+    , 12521+    , 12528+    , 12529+    , 12530+    , 12531+    , 12540+    , 12544+    , 12545+    , 12547+    , 12560+    , 12561+    , 12563+    , 12611+    , 12627+    , 12675+    , 12679+    , 12691+    , 12695+    , 12737+    , 12738+    , 12739+    , 12741+    , 12742+    , 12753+    , 12754+    , 12755+    , 12757+    , 12758+    , 13056+    , 13057+    , 13059+    , 13061+    , 13062+    , 13063+    , 13064+    , 13065+    , 13066+    , 13067+    , 13068+    , 13069+    , 13071+    , 13073+    , 13075+    , 13077+    , 13078+    , 13079+    , 13080+    , 13081+    , 13082+    , 13083+    , 13084+    , 13088+    , 13093+    , 13096+    , 13097+    , 13101+    , 13104+    , 13105+    , 13116+    , 13117+    , 13250+    , 13251+    , 13254+    , 13255+    , 13257+    , 13258+    , 13259+    , 13260+    , 13261+    , 13262+    , 13263+    , 13266+    , 13270+    , 13271+    , 13273+    , 13274+    , 13275+    , 13277+    , 13279+    , 13283+    , 13286+    , 13287+    , 13289+    , 13292+    , 13298+    , 13299+    , 13308+    , 13309+    , 13317+    , 13319+    , 13327+    , 13332+    , 13334+    , 13372+    , 13447+    , 13508+    , 13510+    , 13516+    , 13525+    , 13527+    , 13568+    , 13569+    , 13571+    , 13584+    , 13594+    , 13616+    , 13617+    , 13619+    , 13635+    , 13651+    , 13659+    , 13683+    , 13699+    , 13719+    , 13727+    , 13747+    , 13761+    , 13762+    , 13763+    , 13765+    , 13775+    , 13777+    , 13779+    , 13782+    , 13785+    , 13788+    , 13809+    , 13810+    , 13811+    , 13820+    , 13830+    , 13833+    , 13834+    , 13836+    , 13837+    , 13839+    , 13846+    , 13849+    , 13852+    , 13872+    , 13873+    , 13884+    , 13885+    , 13891+    , 13895+    , 13899+    , 13903+    , 13911+    , 13919+    , 13963+    , 13967+    , 13979+    , 14003+    , 14018+    , 14022+    , 14026+    , 14028+    , 14029+    , 14030+    , 14031+    , 14042+    , 14045+    , 14047+    , 14066+    , 14076+    , 14077+    , 14089+    , 14091+    , 14104+    , 14106+    , 14128+    , 14141+    , 14282+    , 14297+    , 14299+    , 14323+    , 14332+    , 14340+    , 14342+    , 14348+    , 14360+    , 14362+    , 14372+    , 14374+    , 14377+    , 14384+    , 14389+    , 14391+    , 14519+    , 14535+    , 14543+    , 14553+    , 14555+    , 14565+    , 14567+    , 14568+    , 14577+    , 14579+    , 14580+    , 14582+    , 14588+    , 14592+    , 14597+    , 14598+    , 14604+    , 14607+    , 14609+    , 14611+    , 14614+    , 14617+    , 14620+    , 14624+    , 14629+    , 14641+    , 14643+    , 14645+    , 14646+    , 14652+    , 14659+    , 14663+    , 14671+    , 14679+    , 14687+    , 14691+    , 14711+    , 14727+    , 14735+    , 14739+    , 14747+    , 14759+    , 14771+    , 14775+    , 14787+    , 14790+    , 14796+    , 14799+    , 14802+    , 14810+    , 14815+    , 14817+    , 14819+    , 14822+    , 14825+    , 14828+    , 14834+    , 14837+    , 14838+    , 14844+    , 14857+    , 14858+    , 14860+    , 14874+    , 14886+    , 14889+    , 14892+    , 14896+    , 14897+    , 14899+    , 14905+    , 14909+    , 14923+    , 14927+    , 14939+    , 14951+    , 14963+    , 14987+    , 15027+    , 15050+    , 15055+    , 15074+    , 15085+    , 15090+    , 15094+    , 15100+    , 15112+    , 15114+    , 15129+    , 15131+    , 15144+    , 15153+    , 15155+    , 15158+    , 15161+    , 15164+    , 15307+    , 15322+    , 15337+    , 15346+    , 15351+    , 15357+    , 15360+    , 15361+    , 15363+    , 15364+    , 15365+    , 15366+    , 15367+    , 15372+    , 15375+    , 15380+    , 15381+    , 15382+    , 15383+    , 15384+    , 15385+    , 15386+    , 15387+    , 15388+    , 15392+    , 15396+    , 15397+    , 15398+    , 15399+    , 15400+    , 15401+    , 15408+    , 15409+    , 15411+    , 15412+    , 15413+    , 15414+    , 15415+    , 15420+    , 15491+    , 15495+    , 15511+    , 15527+    , 15539+    , 15543+    , 15554+    , 15555+    , 15558+    , 15559+    , 15564+    , 15567+    , 15574+    , 15575+    , 15576+    , 15577+    , 15578+    , 15579+    , 15583+    , 15585+    , 15587+    , 15588+    , 15589+    , 15590+    , 15591+    , 15592+    , 15593+    , 15596+    , 15600+    , 15601+    , 15602+    , 15603+    , 15604+    , 15605+    , 15606+    , 15607+    , 15612+    , 15621+    , 15622+    , 15637+    , 15638+    , 15653+    , 15654+    , 15669+    , 15670+    , 15687+    , 15703+    , 15719+    , 15735+    , 15751+    , 15767+    , 15783+    , 15799+    , 15814+    , 15830+    , 15845+    , 15846+    , 15861+    , 15862+    , 16136+    , 16137+    , 16138+    , 16139+    , 16140+    , 16141+    , 16143+    , 16152+    , 16153+    , 16154+    , 16155+    , 16157+    , 16159+    , 16166+    , 16168+    , 16169+    , 16172+    , 16176+    , 16177+    , 16179+    , 16181+    , 16182+    , 16183+    , 16184+    , 16185+    , 16188+    , 16189+    , 16330+    , 16331+    , 16334+    , 16335+    , 16346+    , 16347+    , 16350+    , 16358+    , 16361+    , 16365+    , 16370+    , 16371+    , 16374+    , 16375+    , 16377+    , 16380+    , 16381+    , 16384+    , 16385+    , 16387+    , 16400+    , 16401+    , 16403+    , 16409+    , 16410+    , 16416+    , 16417+    , 16419+    , 16425+    , 16432+    , 16433+    , 16435+    , 16448+    , 16449+    , 16464+    , 16465+    , 16480+    , 16481+    , 16496+    , 16497+    , 16576+    , 16577+    , 16578+    , 16579+    , 16592+    , 16593+    , 16594+    , 16595+    , 16601+    , 16602+    , 16608+    , 16609+    , 16610+    , 16611+    , 16617+    , 16624+    , 16625+    , 16626+    , 16627+    , 16709+    , 16725+    , 16726+    , 16774+    , 16789+    , 16790+    , 17158+    , 17164+    , 17173+    , 17181+    , 17183+    , 17196+    , 17213+    , 17357+    , 17359+    , 17366+    , 17372+    , 17374+    , 17389+    , 17404+    , 17408+    , 17409+    , 17411+    , 17433+    , 17456+    , 17457+    , 17459+    , 17472+    , 17473+    , 17520+    , 17521+    , 17600+    , 17601+    , 17602+    , 17603+    , 17626+    , 17648+    , 17649+    , 17650+    , 17651+    , 17733+    , 17734+    , 17740+    , 17743+    , 17750+    , 17756+    , 17788+    , 17797+    , 17798+    , 17804+    , 17807+    , 17813+    , 17823+    , 17852+    , 17984+    , 17994+    , 18033+    , 18057+    , 18098+    , 18189+    , 18191+    , 18236+    , 18374+    , 18380+    , 18382+    , 18429+    , 18432+    , 18433+    , 18435+    , 18458+    , 18473+    , 18480+    , 18481+    , 18483+    , 18496+    , 18497+    , 18544+    , 18545+    , 18626+    , 18627+    , 18649+    , 18672+    , 18673+    , 18674+    , 18675+    , 18757+    , 18758+    , 18764+    , 18767+    , 18773+    , 18783+    , 18790+    , 18796+    , 18805+    , 18806+    , 18812+    , 18822+    , 18828+    , 18831+    , 18838+    , 18844+    , 18853+    , 18869+    , 18870+    , 18876+    , 19017+    , 19056+    , 19082+    , 19123+    , 19129+    , 19253+    , 19261+    , 19446+    , 19452+    , 19456+    , 19457+    , 19459+    , 19481+    , 19482+    , 19488+    , 19489+    , 19491+    , 19497+    , 19504+    , 19505+    , 19507+    , 19520+    , 19521+    , 19552+    , 19553+    , 19568+    , 19569+    , 19650+    , 19651+    , 19673+    , 19674+    , 19680+    , 19681+    , 19682+    , 19683+    , 19689+    , 19696+    , 19697+    , 19698+    , 19699+    , 19782+    , 19797+    , 19798+    , 19813+    , 19814+    , 19829+    , 19862+    , 19877+    , 19878+    , 19894+    , 20237+    , 20239+    , 20252+    , 20269+    , 20278+    , 20284+    , 20430+    , 20447+    , 20454+    , 20460+    , 20477+    , 20484+    , 20485+    , 20486+    , 20487+    , 20492+    , 20495+    , 20500+    , 20501+    , 20502+    , 20503+    , 20508+    , 20511+    , 20516+    , 20517+    , 20518+    , 20519+    , 20524+    , 20540+    , 20676+    , 20677+    , 20678+    , 20679+    , 20684+    , 20687+    , 20692+    , 20693+    , 20694+    , 20695+    , 20700+    , 20703+    , 20708+    , 20709+    , 20710+    , 20711+    , 20716+    , 20732+    , 20736+    , 20737+    , 20739+    , 20752+    , 20753+    , 20755+    , 20803+    , 20819+    , 20867+    , 20883+    , 20929+    , 20930+    , 20931+    , 20945+    , 20946+    , 20947+    , 21248+    , 21256+    , 21258+    , 21265+    , 21267+    , 21273+    , 21275+    , 21280+    , 21288+    , 21297+    , 21443+    , 21449+    , 21451+    , 21458+    , 21466+    , 21475+    , 21481+    , 21490+    , 21509+    , 21511+    , 21516+    , 21519+    , 21525+    , 21527+    , 21564+    , 21700+    , 21702+    , 21708+    , 21711+    , 21716+    , 21718+    , 21756+    , 21760+    , 21761+    , 21763+    , 21777+    , 21779+    , 21785+    , 21808+    , 21809+    , 21811+    , 21827+    , 21875+    , 21891+    , 21907+    , 21915+    , 21939+    , 21953+    , 21954+    , 21955+    , 21970+    , 21978+    , 22001+    , 22002+    , 22003+    , 22029+    , 22031+    , 22076+    , 22159+    , 22214+    , 22220+    , 22222+    , 22269+    , 22281+    , 22283+    , 22320+    , 22474+    , 22515+    , 22532+    , 22534+    , 22540+    , 22543+    , 22565+    , 22567+    , 22581+    , 22583+    , 22588+    , 22727+    , 22732+    , 22735+    , 22756+    , 22758+    , 22772+    , 22774+    , 22780+    , 22784+    , 22785+    , 22787+    , 22800+    , 22810+    , 22817+    , 22819+    , 22825+    , 22832+    , 22833+    , 22835+    , 22851+    , 22867+    , 22875+    , 22899+    , 22915+    , 22947+    , 22963+    , 22978+    , 22979+    , 22995+    , 23001+    , 23010+    , 23025+    , 23026+    , 23027+    , 23052+    , 23101+    , 23119+    , 23247+    , 23286+    , 23292+    , 23304+    , 23306+    , 23345+    , 23347+    , 23353+    , 23499+    , 23538+    , 23556+    , 23557+    , 23558+    , 23559+    , 23564+    , 23567+    , 23572+    , 23573+    , 23574+    , 23575+    , 23580+    , 23583+    , 23588+    , 23589+    , 23590+    , 23591+    , 23596+    , 23604+    , 23605+    , 23606+    , 23607+    , 23612+    , 23750+    , 23751+    , 23756+    , 23759+    , 23766+    , 23767+    , 23772+    , 23775+    , 23780+    , 23781+    , 23782+    , 23783+    , 23788+    , 23796+    , 23797+    , 23798+    , 23799+    , 23804+    , 23808+    , 23809+    , 23811+    , 23824+    , 23825+    , 23827+    , 23840+    , 23841+    , 23843+    , 23856+    , 23857+    , 23859+    , 23875+    , 23891+    , 23907+    , 23923+    , 23939+    , 23955+    , 23971+    , 23987+    , 24002+    , 24003+    , 24018+    , 24019+    , 24033+    , 24034+    , 24035+    , 24049+    , 24050+    , 24051+    , 24329+    , 24331+    , 24344+    , 24346+    , 24361+    , 24368+    , 24376+    , 24522+    , 24539+    , 24563+    , 24569+    , 24580+    , 24581+    , 24582+    , 24583+    , 24588+    , 24591+    , 24596+    , 24597+    , 24598+    , 24599+    , 24604+    , 24607+    , 24612+    , 24613+    , 24614+    , 24615+    , 24620+    , 24636+    , 24707+    , 24711+    , 24723+    , 24727+    , 24739+    , 24743+    , 24755+    , 24768+    , 24769+    , 24770+    , 24771+    , 24772+    , 24773+    , 24774+    , 24775+    , 24780+    , 24783+    , 24784+    , 24785+    , 24786+    , 24787+    , 24788+    , 24789+    , 24790+    , 24791+    , 24792+    , 24793+    , 24794+    , 24795+    , 24796+    , 24799+    , 24800+    , 24801+    , 24802+    , 24803+    , 24804+    , 24805+    , 24806+    , 24807+    , 24808+    , 24809+    , 24812+    , 24816+    , 24817+    , 24818+    , 24819+    , 24828+    , 24899+    , 24915+    , 24963+    , 24979+    , 24983+    , 25026+    , 25042+    , 25046+    , 25345+    , 25347+    , 25350+    , 25353+    , 25355+    , 25356+    , 25360+    , 25365+    , 25367+    , 25368+    , 25370+    , 25373+    , 25375+    , 25377+    , 25385+    , 25388+    , 25392+    , 25405+    , 25538+    , 25543+    , 25546+    , 25549+    , 25551+    , 25555+    , 25558+    , 25561+    , 25563+    , 25564+    , 25566+    , 25570+    , 25575+    , 25581+    , 25587+    , 25596+    , 25604+    , 25606+    , 25612+    , 25615+    , 25620+    , 25622+    , 25660+    , 25731+    , 25779+    , 25792+    , 25793+    , 25794+    , 25795+    , 25797+    , 25799+    , 25804+    , 25807+    , 25813+    , 25815+    , 25816+    , 25818+    , 25840+    , 25841+    , 25842+    , 25843+    , 25852+    , 25923+    , 25939+    , 25947+    , 25971+    , 25987+    , 25991+    , 25999+    , 26007+    , 26015+    , 26035+    , 26050+    , 26054+    , 26060+    , 26063+    , 26070+    , 26076+    , 26098+    , 26108+    , 26118+    , 26124+    , 26173+    , 26183+    , 26191+    , 26251+    , 26306+    , 26314+    , 26317+    , 26319+    , 26364+    , 26376+    , 26378+    , 26381+    , 26383+    , 26417+    , 26428+    , 26566+    , 26569+    , 26571+    , 26572+    , 26574+    , 26610+    , 26621+    , 26624+    , 26625+    , 26627+    , 26648+    , 26650+    , 26665+    , 26672+    , 26673+    , 26675+    , 26755+    , 26803+    , 26818+    , 26819+    , 26841+    , 26843+    , 26856+    , 26864+    , 26865+    , 26866+    , 26867+    , 26951+    , 26959+    , 26967+    , 26975+    , 26999+    , 27015+    , 27023+    , 27047+    , 27063+    , 27078+    , 27084+    , 27087+    , 27103+    , 27110+    , 27116+    , 27126+    , 27132+    , 27146+    , 27211+    , 27315+    , 27378+    , 27445+    , 27447+    , 27453+    , 27638+    , 27644+    , 27648+    , 27649+    , 27651+    , 27652+    , 27654+    , 27660+    , 27669+    , 27671+    , 27672+    , 27673+    , 27674+    , 27675+    , 27679+    , 27680+    , 27681+    , 27683+    , 27684+    , 27686+    , 27688+    , 27689+    , 27692+    , 27696+    , 27697+    , 27699+    , 27701+    , 27703+    , 27779+    , 27799+    , 27811+    , 27827+    , 27831+    , 27842+    , 27843+    , 27847+    , 27855+    , 27862+    , 27864+    , 27865+    , 27866+    , 27867+    , 27868+    , 27872+    , 27873+    , 27874+    , 27875+    , 27877+    , 27879+    , 27880+    , 27881+    , 27888+    , 27889+    , 27890+    , 27891+    , 27892+    , 27894+    , 27900+    , 27991+    , 28007+    , 28023+    , 28039+    , 28055+    , 28071+    , 28102+    , 28118+    , 28134+    , 28424+    , 28426+    , 28429+    , 28431+    , 28441+    , 28443+    , 28444+    , 28456+    , 28461+    , 28465+    , 28467+    , 28470+    , 28473+    , 28476+    , 28619+    , 28622+    , 28634+    , 28639+    , 28646+    , 28649+    , 28652+    , 28658+    , 28663+    , 28669+    , 28803+    , 28807+    , 28819+    , 28823+    , 28835+    , 28839+    , 28851+    , 28864+    , 28865+    , 28866+    , 28867+    , 28869+    , 28870+    , 28876+    , 28879+    , 28880+    , 28881+    , 28882+    , 28883+    , 28885+    , 28886+    , 28889+    , 28890+    , 28892+    , 28895+    , 28896+    , 28897+    , 28898+    , 28899+    , 28901+    , 28902+    , 28905+    , 28908+    , 28912+    , 28913+    , 28914+    , 28915+    , 28924+    , 29059+    , 29075+    , 29440+    , 29445+    , 29450+    , 29453+    , 29455+    , 29457+    , 29459+    , 29462+    , 29465+    , 29468+    , 29472+    , 29477+    , 29485+    , 29489+    , 29500+    , 29635+    , 29638+    , 29641+    , 29644+    , 29646+    , 29650+    , 29658+    , 29661+    , 29663+    , 29667+    , 29670+    , 29673+    , 29676+    , 29682+    , 29693+    , 29827+    , 29831+    , 29847+    , 29875+    , 29888+    , 29889+    , 29890+    , 29891+    , 29894+    , 29900+    , 29903+    , 29910+    , 29913+    , 29936+    , 29937+    , 29938+    , 29939+    , 29948+    , 30031+    , 30047+    , 30083+    , 30095+    , 30099+    , 30131+    , 30275+    , 30351+    , 30387+    , 30470+    , 30473+    , 30476+    , 30512+    , 30525+    , 30666+    , 30669+    , 30671+    , 30707+    , 30716+    , 30887+    , 30903+    , 30924+    , 30927+    , 30950+    , 30966+    , 30972+    , 31043+    , 31059+    , 31091+    , 31107+    , 31139+    , 31155+    , 31311+    , 31498+    , 31537+    , 31539+    , 31545+    , 31730+    , 31879+    , 31895+    , 31911+    , 31923+    , 31927+    , 31939+    , 31942+    , 31948+    , 31951+    , 31958+    , 31962+    , 31964+    , 31967+    , 31969+    , 31971+    , 31973+    , 31974+    , 31977+    , 31980+    , 31984+    , 31986+    , 31989+    , 31990+    , 31996+    , 32067+    , 32083+    , 32099+    , 32115+    , 32131+    , 32147+    , 32163+    , 32179+    , 32521+    , 32524+    , 32538+    , 32541+    , 32543+    , 32550+    , 32553+    , 32556+    , 32560+    , 32565+    , 32573+    , 32714+    , 32719+    , 32734+    , 32749+    , 32755+    , 32758+    , 32761+    , 32764+    , 32768+    , 32785+    , 32787+    , 32793+    , 32800+    , 32817+    , 32819+    , 32833+    , 32848+    , 32865+    , 32880+    , 32961+    , 32963+    , 32976+    , 32978+    , 32986+    , 32993+    , 32995+    , 33001+    , 33008+    , 33010+    , 33157+    , 33173+    , 33174+    , 33344+    , 33345+    , 33347+    , 33349+    , 33354+    , 33356+    , 33357+    , 33359+    , 33360+    , 33361+    , 33363+    , 33365+    , 33366+    , 33369+    , 33370+    , 33372+    , 33373+    , 33375+    , 33410+    , 33411+    , 33414+    , 33417+    , 33420+    , 33421+    , 33422+    , 33423+    , 33426+    , 33427+    , 33430+    , 33433+    , 33434+    , 33436+    , 33437+    , 33438+    , 33439+    , 33536+    , 33537+    , 33539+    , 33541+    , 33542+    , 33545+    , 33546+    , 33548+    , 33549+    , 33551+    , 33552+    , 33553+    , 33555+    , 33557+    , 33558+    , 33561+    , 33562+    , 33564+    , 33565+    , 33567+    , 33568+    , 33569+    , 33573+    , 33577+    , 33580+    , 33581+    , 33584+    , 33585+    , 33596+    , 33597+    , 33600+    , 33601+    , 33604+    , 33605+    , 33608+    , 33609+    , 33612+    , 33613+    , 33616+    , 33617+    , 33620+    , 33621+    , 33624+    , 33625+    , 33628+    , 33629+    , 33632+    , 33633+    , 33636+    , 33637+    , 33640+    , 33641+    , 33644+    , 33645+    , 33648+    , 33649+    , 33660+    , 33661+    , 33730+    , 33731+    , 33734+    , 33737+    , 33738+    , 33740+    , 33741+    , 33742+    , 33743+    , 33746+    , 33747+    , 33750+    , 33753+    , 33754+    , 33756+    , 33757+    , 33758+    , 33759+    , 33762+    , 33763+    , 33766+    , 33769+    , 33772+    , 33773+    , 33778+    , 33779+    , 33788+    , 33789+    , 33793+    , 33795+    , 33818+    , 33840+    , 33856+    , 33905+    , 33984+    , 33986+    , 34009+    , 34033+    , 34035+    , 34181+    , 34182+    , 34188+    , 34191+    , 34198+    , 34204+    , 34236+    , 34368+    , 34369+    , 34371+    , 34373+    , 34374+    , 34377+    , 34378+    , 34380+    , 34381+    , 34383+    , 34390+    , 34393+    , 34396+    , 34416+    , 34417+    , 34428+    , 34429+    , 34434+    , 34438+    , 34441+    , 34442+    , 34444+    , 34445+    , 34446+    , 34447+    , 34458+    , 34461+    , 34463+    , 34482+    , 34483+    , 34492+    , 34493+    , 34573+    , 34575+    , 34582+    , 34585+    , 34609+    , 34620+    , 34621+    , 34636+    , 34645+    , 34648+    , 34672+    , 34684+    , 34685+    , 34764+    , 34766+    , 34778+    , 34802+    , 34812+    , 34813+    , 35202+    , 35203+    , 35218+    , 35226+    , 35233+    , 35235+    , 35241+    , 35248+    , 35249+    , 35250+    , 35251+    , 35404+    , 35405+    , 35407+    , 35430+    , 35436+    , 35445+    , 35446+    , 35452+    , 35453+    , 35470+    , 35471+    , 35501+    , 35510+    , 35516+    , 35517+    , 35594+    , 35610+    , 35625+    , 35632+    , 35633+    , 35635+    , 35641+    , 35657+    , 35673+    , 35688+    , 35696+    , 35697+    , 35704+    , 35826+    , 35827+    , 35840+    , 35845+    , 35846+    , 35852+    , 35855+    , 35861+    , 35862+    , 35865+    , 35868+    , 35871+    , 35872+    , 35877+    , 35878+    , 35884+    , 35889+    , 35891+    , 35893+    , 35894+    , 35900+    , 35905+    , 35908+    , 35909+    , 35924+    , 35925+    , 35937+    , 35940+    , 35941+    , 35952+    , 35956+    , 35957+    , 36038+    , 36044+    , 36047+    , 36054+    , 36060+    , 36063+    , 36069+    , 36070+    , 36076+    , 36085+    , 36086+    , 36092+    , 36226+    , 36227+    , 36242+    , 36243+    , 36256+    , 36257+    , 36258+    , 36259+    , 36272+    , 36273+    , 36274+    , 36275+    , 36428+    , 36429+    , 36431+    , 36444+    , 36445+    , 36447+    , 36453+    , 36454+    , 36460+    , 36461+    , 36469+    , 36476+    , 36477+    , 36494+    , 36495+    , 36510+    , 36511+    , 36518+    , 36524+    , 36525+    , 36534+    , 36540+    , 36541+    , 36617+    , 36618+    , 36620+    , 36633+    , 36634+    , 36637+    , 36639+    , 36646+    , 36649+    , 36652+    , 36656+    , 36657+    , 36659+    , 36661+    , 36665+    , 36669+    , 36680+    , 36681+    , 36685+    , 36696+    , 36697+    , 36700+    , 36709+    , 36712+    , 36713+    , 36717+    , 36720+    , 36721+    , 36724+    , 36728+    , 36729+    , 36732+    , 36810+    , 36815+    , 36826+    , 36830+    , 36841+    , 36845+    , 36850+    , 36851+    , 36854+    , 36857+    , 36860+    , 36868+    , 36869+    , 36870+    , 36871+    , 36876+    , 36879+    , 36884+    , 36885+    , 36886+    , 36887+    , 36892+    , 36895+    , 36900+    , 36901+    , 36902+    , 36903+    , 36908+    , 36924+    , 37060+    , 37061+    , 37062+    , 37063+    , 37068+    , 37071+    , 37076+    , 37077+    , 37078+    , 37079+    , 37084+    , 37087+    , 37092+    , 37093+    , 37094+    , 37095+    , 37100+    , 37116+    , 37120+    , 37121+    , 37123+    , 37136+    , 37137+    , 37139+    , 37187+    , 37203+    , 37251+    , 37267+    , 37313+    , 37314+    , 37315+    , 37329+    , 37330+    , 37331+    , 37376+    , 37377+    , 37379+    , 37386+    , 37388+    , 37389+    , 37391+    , 37392+    , 37393+    , 37395+    , 37398+    , 37401+    , 37402+    , 37404+    , 37405+    , 37407+    , 37443+    , 37451+    , 37455+    , 37459+    , 37463+    , 37467+    , 37471+    , 37507+    , 37519+    , 37523+    , 37531+    , 37535+    , 37570+    , 37574+    , 37580+    , 37581+    , 37582+    , 37583+    , 37586+    , 37590+    , 37594+    , 37596+    , 37597+    , 37598+    , 37599+    , 37632+    , 37633+    , 37635+    , 37637+    , 37638+    , 37639+    , 37640+    , 37641+    , 37642+    , 37643+    , 37644+    , 37645+    , 37647+    , 37648+    , 37649+    , 37651+    , 37653+    , 37654+    , 37655+    , 37656+    , 37657+    , 37658+    , 37659+    , 37660+    , 37661+    , 37663+    , 37664+    , 37665+    , 37669+    , 37672+    , 37673+    , 37676+    , 37677+    , 37680+    , 37681+    , 37692+    , 37693+    , 37826+    , 37827+    , 37830+    , 37831+    , 37833+    , 37834+    , 37835+    , 37836+    , 37837+    , 37838+    , 37839+    , 37842+    , 37843+    , 37846+    , 37847+    , 37849+    , 37850+    , 37851+    , 37852+    , 37853+    , 37854+    , 37855+    , 37858+    , 37859+    , 37862+    , 37863+    , 37865+    , 37868+    , 37869+    , 37874+    , 37875+    , 37884+    , 37885+    , 37903+    , 37908+    , 37910+    , 37948+    , 38092+    , 38101+    , 38103+    , 38144+    , 38145+    , 38147+    , 38160+    , 38170+    , 38192+    , 38193+    , 38195+    , 38211+    , 38227+    , 38235+    , 38259+    , 38275+    , 38323+    , 38337+    , 38338+    , 38339+    , 38353+    , 38355+    , 38361+    , 38385+    , 38386+    , 38387+    , 38406+    , 38409+    , 38410+    , 38412+    , 38413+    , 38415+    , 38422+    , 38425+    , 38428+    , 38448+    , 38449+    , 38460+    , 38461+    , 38467+    , 38471+    , 38475+    , 38479+    , 38487+    , 38495+    , 38539+    , 38543+    , 38555+    , 38579+    , 38594+    , 38598+    , 38602+    , 38604+    , 38605+    , 38606+    , 38607+    , 38618+    , 38621+    , 38623+    , 38642+    , 38652+    , 38653+    , 38664+    , 38666+    , 38680+    , 38682+    , 38704+    , 38705+    , 38717+    , 38857+    , 38859+    , 38873+    , 38875+    , 38898+    , 38899+    , 38908+    , 38936+    , 38938+    , 38953+    , 38960+    , 38961+    , 38963+    , 39129+    , 39131+    , 39144+    , 39152+    , 39153+    , 39154+    , 39155+    , 39173+    , 39174+    , 39180+    , 39183+    , 39190+    , 39196+    , 39205+    , 39221+    , 39222+    , 39228+    , 39239+    , 39247+    , 39255+    , 39263+    , 39287+    , 39303+    , 39311+    , 39335+    , 39351+    , 39366+    , 39372+    , 39375+    , 39391+    , 39398+    , 39404+    , 39413+    , 39414+    , 39420+    , 39433+    , 39434+    , 39450+    , 39465+    , 39472+    , 39473+    , 39475+    , 39481+    , 39499+    , 39515+    , 39539+    , 39563+    , 39603+    , 39626+    , 39650+    , 39666+    , 39733+    , 39735+    , 39740+    , 39741+    , 39926+    , 39932+    , 39933+    , 39936+    , 39937+    , 39939+    , 39940+    , 39942+    , 39948+    , 39957+    , 39959+    , 39960+    , 39961+    , 39962+    , 39963+    , 39967+    , 39968+    , 39969+    , 39971+    , 39972+    , 39974+    , 39976+    , 39977+    , 39980+    , 39984+    , 39985+    , 39987+    , 39989+    , 39991+    , 40130+    , 40131+    , 40152+    , 40153+    , 40154+    , 40155+    , 40160+    , 40161+    , 40162+    , 40163+    , 40168+    , 40169+    , 40176+    , 40177+    , 40178+    , 40179+    , 40197+    , 40213+    , 40214+    , 40229+    , 40230+    , 40246+    , 40279+    , 40295+    , 40311+    , 40327+    , 40343+    , 40359+    , 40390+    , 40406+    , 40421+    , 40422+    , 40437+    , 40457+    , 40473+    , 40474+    , 40489+    , 40496+    , 40497+    , 40499+    , 40539+    , 40547+    , 40563+    , 40587+    , 40603+    , 40627+    , 40650+    , 40666+    , 40674+    , 40690+    , 40712+    , 40714+    , 40716+    , 40717+    , 40719+    , 40729+    , 40731+    , 40732+    , 40733+    , 40735+    , 40742+    , 40744+    , 40748+    , 40749+    , 40753+    , 40755+    , 40757+    , 40758+    , 40759+    , 40761+    , 40764+    , 40765+    , 40907+    , 40910+    , 40911+    , 40922+    , 40926+    , 40927+    , 40934+    , 40937+    , 40940+    , 40941+    , 40946+    , 40950+    , 40951+    , 40956+    , 40957+    , 41091+    , 41107+    , 41123+    , 41139+    , 41153+    , 41155+    , 41168+    , 41170+    , 41176+    , 41178+    , 41185+    , 41187+    , 41193+    , 41200+    , 41202+    , 41351+    , 41367+    , 41498+    , 41539+    , 41555+    , 41563+    , 41603+    , 41611+    , 41615+    , 41619+    , 41627+    , 41631+    , 41666+    , 41674+    , 41676+    , 41677+    , 41678+    , 41679+    , 41682+    , 41686+    , 41690+    , 41692+    , 41693+    , 41694+    , 41695+    , 41733+    , 41734+    , 41735+    , 41740+    , 41741+    , 41743+    , 41749+    , 41750+    , 41751+    , 41756+    , 41757+    , 41759+    , 41765+    , 41772+    , 41773+    , 41788+    , 41789+    , 41859+    , 41863+    , 41867+    , 41871+    , 41875+    , 41879+    , 41883+    , 41887+    , 41891+    , 41895+    , 41907+    , 41922+    , 41923+    , 41926+    , 41927+    , 41929+    , 41930+    , 41931+    , 41932+    , 41933+    , 41934+    , 41935+    , 41938+    , 41939+    , 41942+    , 41943+    , 41945+    , 41946+    , 41947+    , 41948+    , 41949+    , 41950+    , 41951+    , 41954+    , 41955+    , 41958+    , 41959+    , 41961+    , 41964+    , 41965+    , 41970+    , 41971+    , 41980+    , 41981+    , 42115+    , 42176+    , 42178+    , 42201+    , 42203+    , 42225+    , 42227+    , 42375+    , 42383+    , 42506+    , 42522+    , 42563+    , 42571+    , 42587+    , 42635+    , 42639+    , 42655+    , 42675+    , 42690+    , 42694+    , 42698+    , 42700+    , 42701+    , 42702+    , 42703+    , 42710+    , 42716+    , 42718+    , 42738+    , 42748+    , 42749+    , 42765+    , 42767+    , 42774+    , 42812+    , 42813+    , 42895+    , 42907+    , 42931+    , 42956+    , 42958+    , 42970+    , 42994+    , 43004+    , 43005+    , 43191+    , 43395+    , 43427+    , 43443+    , 43532+    , 43533+    , 43535+    , 43565+    , 43574+    , 43580+    , 43581+    , 43599+    , 43639+    , 43663+    , 43726+    , 43727+    , 43750+    , 43756+    , 43766+    , 43772+    , 43773+    , 43784+    , 43786+    , 43800+    , 43802+    , 43817+    , 43824+    , 43825+    , 43827+    , 43833+    , 43955+    , 43979+    , 43995+    , 44018+    , 44019+    , 44167+    , 44183+    , 44199+    , 44211+    , 44215+    , 44227+    , 44230+    , 44231+    , 44236+    , 44239+    , 44246+    , 44247+    , 44248+    , 44250+    , 44252+    , 44255+    , 44257+    , 44259+    , 44260+    , 44261+    , 44262+    , 44263+    , 44265+    , 44268+    , 44272+    , 44274+    , 44276+    , 44277+    , 44278+    , 44279+    , 44284+    , 44419+    , 44435+    , 44451+    , 44467+    , 44556+    , 44557+    , 44559+    , 44572+    , 44573+    , 44575+    , 44582+    , 44588+    , 44589+    , 44598+    , 44604+    , 44605+    , 44623+    , 44639+    , 44647+    , 44663+    , 44687+    , 44703+    , 44750+    , 44751+    , 44766+    , 44767+    , 44774+    , 44780+    , 44781+    , 44796+    , 44797+    , 44808+    , 44809+    , 44810+    , 44811+    , 44812+    , 44824+    , 44825+    , 44826+    , 44827+    , 44829+    , 44831+    , 44838+    , 44840+    , 44841+    , 44844+    , 44848+    , 44849+    , 44851+    , 44853+    , 44855+    , 44856+    , 44857+    , 44861+    , 44939+    , 44955+    , 44959+    , 44979+    , 44983+    , 45002+    , 45003+    , 45007+    , 45018+    , 45019+    , 45022+    , 45033+    , 45037+    , 45042+    , 45043+    , 45046+    , 45049+    , 45052+    , 45191+    , 45207+    , 45223+    , 45443+    , 45459+    , 45699+    , 45711+    , 45715+    , 45727+    , 45824+    , 45825+    , 45827+    , 45833+    , 45834+    , 45840+    , 45841+    , 45843+    , 45849+    , 45850+    , 45856+    , 45857+    , 45865+    , 45872+    , 45873+    , 45955+    , 45959+    , 45963+    , 45967+    , 45971+    , 45975+    , 45979+    , 45983+    , 45987+    , 45991+    , 46003+    , 46018+    , 46019+    , 46022+    , 46025+    , 46026+    , 46028+    , 46029+    , 46030+    , 46031+    , 46034+    , 46035+    , 46038+    , 46041+    , 46042+    , 46044+    , 46045+    , 46046+    , 46047+    , 46050+    , 46051+    , 46054+    , 46057+    , 46060+    , 46061+    , 46066+    , 46067+    , 46076+    , 46077+    , 46467+    , 46515+    , 46735+    , 46771+    , 46858+    , 46874+    , 46896+    , 46897+    , 47027+    , 47049+    , 47065+    , 47090+    , 47091+    , 47100+    , 47283+    , 47503+    , 47795+    , 47925+    , 47932+    , 47933+    , 48055+    , 48118+    , 48124+    , 48125+    , 48259+    , 48279+    , 48291+    , 48307+    , 48311+    , 48819+    , 48906+    , 48908+    , 48909+    , 48911+    , 48921+    , 48924+    , 48925+    , 48927+    , 48934+    , 48940+    , 48941+    , 48945+    , 48947+    , 48949+    , 48950+    , 48953+    , 48956+    , 48957+    , 49039+    , 49051+    , 49055+    , 49075+    , 49079+    , 49102+    , 49103+    , 49114+    , 49118+    , 49119+    , 49126+    , 49129+    , 49132+    , 49133+    , 49138+    , 49142+    , 49148+    , 49149+    , 49156+    , 49158+    , 49164+    , 49173+    , 49175+    , 49183+    , 49188+    , 49190+    , 49196+    , 49221+    , 49236+    , 49253+    , 49349+    , 49351+    , 49359+    , 49364+    , 49366+    , 49372+    , 49381+    , 49383+    , 49404+    , 49473+    , 49475+    , 49488+    , 49536+    , 49537+    , 49538+    , 49539+    , 49552+    , 49553+    , 49554+    , 49555+    , 49618+    , 49670+    , 49674+    , 49676+    , 49677+    , 49679+    , 49686+    , 49690+    , 49692+    , 49693+    , 49695+    , 49728+    , 49729+    , 49731+    , 49732+    , 49733+    , 49734+    , 49735+    , 49736+    , 49737+    , 49738+    , 49739+    , 49740+    , 49741+    , 49743+    , 49744+    , 49745+    , 49747+    , 49748+    , 49749+    , 49750+    , 49751+    , 49752+    , 49753+    , 49754+    , 49755+    , 49756+    , 49757+    , 49759+    , 49794+    , 49795+    , 49798+    , 49800+    , 49801+    , 49802+    , 49803+    , 49804+    , 49805+    , 49806+    , 49807+    , 49810+    , 49811+    , 49814+    , 49816+    , 49817+    , 49818+    , 49819+    , 49820+    , 49821+    , 49822+    , 49823+    , 49858+    , 49862+    , 49866+    , 49868+    , 49869+    , 49870+    , 49871+    , 49874+    , 49878+    , 49882+    , 49884+    , 49885+    , 49886+    , 49887+    , 49920+    , 49921+    , 49923+    , 49925+    , 49927+    , 49928+    , 49929+    , 49930+    , 49931+    , 49933+    , 49935+    , 49937+    , 49939+    , 49942+    , 49944+    , 49945+    , 49946+    , 49947+    , 49948+    , 49952+    , 49957+    , 49960+    , 49961+    , 49965+    , 49968+    , 49969+    , 49980+    , 49984+    , 49985+    , 49988+    , 49992+    , 49993+    , 49996+    , 50000+    , 50005+    , 50008+    , 50009+    , 50013+    , 50017+    , 50020+    , 50024+    , 50025+    , 50028+    , 50032+    , 50033+    , 50045+    , 50114+    , 50115+    , 50118+    , 50121+    , 50122+    , 50123+    , 50124+    , 50126+    , 50130+    , 50135+    , 50137+    , 50138+    , 50139+    , 50141+    , 50143+    , 50147+    , 50150+    , 50153+    , 50156+    , 50162+    , 50163+    , 50173+    , 50181+    , 50183+    , 50191+    , 50196+    , 50198+    , 50236+    , 50244+    , 50261+    , 50372+    , 50374+    , 50380+    , 50389+    , 50391+    , 50496+    , 50513+    , 50515+    , 50521+    , 50523+    , 50545+    , 50547+    , 50560+    , 50561+    , 50562+    , 50563+    , 50576+    , 50578+    , 50584+    , 50586+    , 50608+    , 50609+    , 50610+    , 50611+    , 50626+    , 50694+    , 50698+    , 50700+    , 50701+    , 50703+    , 50710+    , 50716+    , 50748+    , 50749+    , 50752+    , 50753+    , 50755+    , 50756+    , 50757+    , 50758+    , 50759+    , 50760+    , 50761+    , 50762+    , 50763+    , 50764+    , 50765+    , 50767+    , 50773+    , 50775+    , 50776+    , 50778+    , 50781+    , 50783+    , 50800+    , 50801+    , 50812+    , 50813+    , 50818+    , 50822+    , 50824+    , 50825+    , 50826+    , 50827+    , 50828+    , 50829+    , 50830+    , 50831+    , 50838+    , 50841+    , 50843+    , 50844+    , 50846+    , 50866+    , 50867+    , 50876+    , 50877+    , 50882+    , 50886+    , 50890+    , 50892+    , 50893+    , 50894+    , 50895+    , 50906+    , 50909+    , 50911+    , 50930+    , 50940+    , 50941+    , 50953+    , 50955+    , 50968+    , 50970+    , 50992+    , 51005+    , 51016+    , 51033+    , 51057+    , 51068+    , 51146+    , 51161+    , 51163+    , 51187+    , 51196+    , 51204+    , 51206+    , 51212+    , 51236+    , 51238+    , 51253+    , 51255+    , 51269+    , 51301+    , 51316+    , 51521+    , 51523+    , 51536+    , 51544+    , 51546+    , 51553+    , 51555+    , 51561+    , 51568+    , 51591+    , 51599+    , 51606+    , 51612+    , 51621+    , 51623+    , 51638+    , 51644+    , 51722+    , 51724+    , 51738+    , 51750+    , 51756+    , 51773+    , 51784+    , 51785+    , 51786+    , 51787+    , 51789+    , 51791+    , 51801+    , 51803+    , 51808+    , 51813+    , 51815+    , 51816+    , 51821+    , 51824+    , 51825+    , 51827+    , 51828+    , 51830+    , 51832+    , 51833+    , 51836+    , 51850+    , 51851+    , 51854+    , 51866+    , 51878+    , 51881+    , 51884+    , 51890+    , 51891+    , 51896+    , 51897+    , 51901+    , 51914+    , 51919+    , 51938+    , 51949+    , 51954+    , 51958+    , 51964+    , 51976+    , 51978+    , 51993+    , 51995+    , 52008+    , 52017+    , 52019+    , 52022+    , 52025+    , 52028+    , 52041+    , 52056+    , 52073+    , 52080+    , 52085+    , 52088+    , 52093+    , 52171+    , 52186+    , 52201+    , 52210+    , 52215+    , 52221+    , 52224+    , 52225+    , 52227+    , 52228+    , 52229+    , 52230+    , 52231+    , 52236+    , 52239+    , 52244+    , 52245+    , 52246+    , 52247+    , 52248+    , 52249+    , 52250+    , 52251+    , 52252+    , 52256+    , 52260+    , 52261+    , 52262+    , 52263+    , 52264+    , 52265+    , 52272+    , 52273+    , 52275+    , 52276+    , 52277+    , 52278+    , 52279+    , 52284+    , 52288+    , 52289+    , 52292+    , 52293+    , 52308+    , 52309+    , 52321+    , 52324+    , 52325+    , 52336+    , 52337+    , 52340+    , 52341+    , 52418+    , 52419+    , 52440+    , 52441+    , 52442+    , 52443+    , 52449+    , 52451+    , 52456+    , 52457+    , 52464+    , 52465+    , 52466+    , 52467+    , 52548+    , 52549+    , 52550+    , 52551+    , 52564+    , 52565+    , 52566+    , 52567+    , 52580+    , 52581+    , 52582+    , 52583+    , 52596+    , 52597+    , 52598+    , 52599+    , 52614+    , 52615+    , 52630+    , 52631+    , 52645+    , 52646+    , 52647+    , 52661+    , 52662+    , 52663+    , 52678+    , 52694+    , 52710+    , 52726+    , 52746+    , 52762+    , 52808+    , 52809+    , 52810+    , 52811+    , 52824+    , 52825+    , 52826+    , 52827+    , 52832+    , 52833+    , 52835+    , 52840+    , 52841+    , 52848+    , 52849+    , 52851+    , 52856+    , 52857+    , 52874+    , 52875+    , 52890+    , 52891+    , 52898+    , 52904+    , 52905+    , 52914+    , 52915+    , 52920+    , 52921+    , 52938+    , 52954+    , 52962+    , 52978+    , 53000+    , 53001+    , 53002+    , 53003+    , 53004+    , 53005+    , 53007+    , 53016+    , 53017+    , 53018+    , 53019+    , 53021+    , 53023+    , 53030+    , 53032+    , 53033+    , 53036+    , 53040+    , 53041+    , 53043+    , 53045+    , 53046+    , 53047+    , 53048+    , 53049+    , 53052+    , 53053+    , 53064+    , 53065+    , 53068+    , 53069+    , 53080+    , 53081+    , 53084+    , 53092+    , 53093+    , 53096+    , 53097+    , 53101+    , 53104+    , 53105+    , 53108+    , 53109+    , 53112+    , 53113+    , 53116+    , 53117+    , 53194+    , 53195+    , 53198+    , 53199+    , 53210+    , 53211+    , 53214+    , 53222+    , 53225+    , 53229+    , 53234+    , 53235+    , 53238+    , 53239+    , 53241+    , 53244+    , 53245+    , 53248+    , 53265+    , 53267+    , 53273+    , 53275+    , 53280+    , 53288+    , 53297+    , 53299+    , 53509+    , 53510+    , 53525+    , 53526+    , 53575+    , 53591+    , 53760+    , 53763+    , 53766+    , 53769+    , 53770+    , 53772+    , 53775+    , 53776+    , 53779+    , 53782+    , 53785+    , 53786+    , 53788+    , 53791+    , 53827+    , 53831+    , 53835+    , 53839+    , 53843+    , 53847+    , 53851+    , 53855+    , 54017+    , 54019+    , 54021+    , 54022+    , 54023+    , 54025+    , 54027+    , 54028+    , 54029+    , 54031+    , 54032+    , 54037+    , 54038+    , 54039+    , 54040+    , 54042+    , 54045+    , 54047+    , 54049+    , 54053+    , 54057+    , 54060+    , 54064+    , 54076+    , 54077+    , 54273+    , 54275+    , 54296+    , 54298+    , 54320+    , 54533+    , 54534+    , 54540+    , 54543+    , 54550+    , 54556+    , 54588+    , 54599+    , 54607+    , 54615+    , 54623+    , 54790+    , 54793+    , 54794+    , 54796+    , 54799+    , 54810+    , 54815+    , 54832+    , 54844+    , 54851+    , 54855+    , 54859+    , 54863+    , 54875+    , 55048+    , 55050+    , 55053+    , 55055+    , 55062+    , 55065+    , 55067+    , 55089+    , 55100+    , 55296+    , 55321+    , 55323+    , 55336+    , 55345+    , 55347+    , 55555+    , 55558+    , 55564+    , 55568+    , 55573+    , 55578+    , 55583+    , 55587+    , 55590+    , 55593+    , 55596+    , 55600+    , 55605+    , 55623+    , 55631+    , 55635+    , 55643+    , 55655+    , 55667+    , 55818+    , 55820+    , 55823+    , 55833+    , 55859+    , 55862+    , 55865+    , 55868+    , 55883+    , 55887+    , 55907+    , 55927+    , 56073+    , 56075+    , 56088+    , 56090+    , 56105+    , 56112+    , 56117+    , 56119+    , 56120+    , 56125+    , 56320+    , 56321+    , 56323+    , 56324+    , 56325+    , 56326+    , 56327+    , 56332+    , 56335+    , 56340+    , 56341+    , 56342+    , 56343+    , 56344+    , 56345+    , 56346+    , 56347+    , 56351+    , 56353+    , 56355+    , 56356+    , 56357+    , 56358+    , 56359+    , 56360+    , 56361+    , 56364+    , 56368+    , 56369+    , 56371+    , 56372+    , 56373+    , 56374+    , 56375+    , 56380+    , 56576+    , 56579+    , 56592+    , 56595+    , 56608+    , 56611+    , 56624+    , 56627+    , 56643+    , 56659+    , 56675+    , 56691+    , 56844+    , 56847+    , 56860+    , 56863+    , 56870+    , 56876+    , 56886+    , 56892+    , 56911+    , 56927+    , 56935+    , 56951+    , 57096+    , 57097+    , 57098+    , 57099+    , 57100+    , 57101+    , 57103+    , 57112+    , 57113+    , 57114+    , 57115+    , 57116+    , 57126+    , 57128+    , 57129+    , 57133+    , 57136+    , 57137+    , 57139+    , 57141+    , 57142+    , 57143+    , 57144+    , 57145+    , 57148+    , 57149+    , 57495+    , 57541+    , 57543+    , 57551+    , 57556+    , 57558+    , 57564+    , 57573+    , 57575+    , 57596+    , 57731+    , 57747+    , 57862+    , 57868+    , 57871+    , 57878+    , 57884+    , 57887+    , 57927+    , 57935+    , 57943+    , 57951+    , 57987+    , 57995+    , 57999+    , 58003+    , 58011+    , 58015+    , 58054+    , 58058+    , 58060+    , 58063+    , 58070+    , 58074+    , 58076+    , 58079+    , 58112+    , 58113+    , 58115+    , 58120+    , 58121+    , 58122+    , 58123+    , 58129+    , 58131+    , 58136+    , 58137+    , 58138+    , 58139+    , 58144+    , 58152+    , 58153+    , 58160+    , 58161+    , 58243+    , 58247+    , 58251+    , 58255+    , 58259+    , 58267+    , 58279+    , 58291+    , 58306+    , 58307+    , 58310+    , 58313+    , 58314+    , 58315+    , 58316+    , 58318+    , 58322+    , 58327+    , 58329+    , 58330+    , 58331+    , 58333+    , 58335+    , 58339+    , 58342+    , 58345+    , 58348+    , 58354+    , 58355+    , 58365+    , 58503+    , 58564+    , 58566+    , 58572+    , 58581+    , 58583+    , 58755+    , 58803+    , 58886+    , 58892+    , 58895+    , 58902+    , 58908+    , 58940+    , 58951+    , 58959+    , 58967+    , 58975+    , 59019+    , 59023+    , 59035+    , 59059+    , 59078+    , 59082+    , 59084+    , 59087+    , 59098+    , 59103+    , 59132+    , 59145+    , 59147+    , 59160+    , 59162+    , 59184+    , 59275+    , 59338+    , 59353+    , 59355+    , 59379+    , 59388+    , 59575+    , 59591+    , 59599+    , 59621+    , 59623+    , 59636+    , 59638+    , 59644+    , 59783+    , 59791+    , 59795+    , 59803+    , 59815+    , 59827+    , 59866+    , 59914+    , 59916+    , 59930+    , 59942+    , 59948+    , 59979+    , 59983+    , 59995+    , 60007+    , 60019+    , 60043+    , 60083+    , 60106+    , 60111+    , 60150+    , 60156+    , 60168+    , 60170+    , 60185+    , 60187+    , 60200+    , 60209+    , 60211+    , 60214+    , 60217+    , 60220+    , 60315+    , 60339+    , 60363+    , 60378+    , 60393+    , 60402+    , 60407+    , 60413+    , 60547+    , 60551+    , 60567+    , 60583+    , 60595+    , 60599+    , 60610+    , 60611+    , 60614+    , 60615+    , 60620+    , 60623+    , 60630+    , 60631+    , 60632+    , 60633+    , 60634+    , 60635+    , 60639+    , 60641+    , 60643+    , 60644+    , 60645+    , 60646+    , 60647+    , 60648+    , 60649+    , 60652+    , 60656+    , 60657+    , 60658+    , 60659+    , 60660+    , 60661+    , 60662+    , 60663+    , 60668+    , 60807+    , 60823+    , 60839+    , 60855+    , 60870+    , 60886+    , 60902+    , 60918+    , 60938+    , 60954+    , 61003+    , 61019+    , 61027+    , 61043+    , 61067+    , 61083+    , 61107+    , 61130+    , 61146+    , 61192+    , 61193+    , 61194+    , 61195+    , 61196+    , 61197+    , 61199+    , 61208+    , 61209+    , 61210+    , 61211+    , 61213+    , 61215+    , 61222+    , 61224+    , 61225+    , 61228+    , 61232+    , 61233+    , 61235+    , 61237+    , 61238+    , 61239+    , 61240+    , 61241+    , 61244+    , 61245+    , 61323+    , 61327+    , 61339+    , 61343+    , 61363+    , 61367+    , 61386+    , 61387+    , 61390+    , 61391+    , 61402+    , 61403+    , 61406+    , 61414+    , 61417+    , 61421+    , 61426+    , 61427+    , 61430+    , 61431+    , 61433+    , 61436+    , 61437+    , 61587+    , 61619+    , 61633+    , 61635+    , 61648+    , 61650+    , 61656+    , 61658+    , 61665+    , 61667+    , 61673+    , 61680+    , 61682+    , 61831+    , 61847+    , 61910+    , 62019+    , 62027+    , 62035+    , 62043+    , 62083+    , 62091+    , 62095+    , 62099+    , 62107+    , 62111+    , 62146+    , 62150+    , 62154+    , 62156+    , 62157+    , 62158+    , 62159+    , 62162+    , 62166+    , 62170+    , 62172+    , 62173+    , 62174+    , 62175+    , 62213+    , 62214+    , 62215+    , 62220+    , 62221+    , 62223+    , 62229+    , 62230+    , 62231+    , 62237+    , 62239+    , 62245+    , 62252+    , 62268+    , 62269+    , 62339+    , 62343+    , 62347+    , 62351+    , 62359+    , 62367+    , 62371+    , 62375+    , 62402+    , 62406+    , 62407+    , 62410+    , 62412+    , 62413+    , 62414+    , 62415+    , 62419+    , 62422+    , 62423+    , 62425+    , 62427+    , 62428+    , 62430+    , 62434+    , 62438+    , 62439+    , 62445+    , 62451+    , 62460+    , 62461+    , 62595+    , 62656+    , 62658+    , 62681+    , 62683+    , 62705+    , 62707+    , 62855+    , 62863+    , 62918+    , 62924+    , 62943+    , 63043+    , 63051+    , 63067+    , 63115+    , 63119+    , 63135+    , 63155+    , 63170+    , 63174+    , 63178+    , 63180+    , 63181+    , 63182+    , 63183+    , 63190+    , 63196+    , 63198+    , 63218+    , 63228+    , 63229+    , 63245+    , 63247+    , 63254+    , 63292+    , 63375+    , 63387+    , 63411+    , 63430+    , 63433+    , 63435+    , 63436+    , 63438+    , 63450+    , 63474+    , 63485+    , 63667+    , 63683+    , 63704+    , 63706+    , 63721+    , 63728+    , 63730+    , 63875+    , 63895+    , 63903+    , 63907+    , 63927+    , 63951+    , 63958+    , 63964+    , 63990+    , 63996+    , 64075+    , 64079+    , 64099+    , 64119+    , 64143+    , 64155+    , 64179+    , 64206+    , 64207+    , 64218+    , 64230+    , 64236+    , 64242+    , 64246+    , 64252+    , 64253+    , 64265+    , 64267+    , 64280+    , 64282+    , 64297+    , 64304+    , 64309+    , 64311+    , 64312+    , 64317+    , 64395+    , 64439+    , 64458+    , 64475+    , 64499+    , 64502+    , 64505+    , 64508+    , 64643+    , 64647+    , 64663+    , 64675+    , 64679+    , 64691+    , 64695+    , 64706+    , 64707+    , 64710+    , 64711+    , 64716+    , 64719+    , 64726+    , 64727+    , 64728+    , 64729+    , 64730+    , 64731+    , 64732+    , 64736+    , 64738+    , 64740+    , 64741+    , 64742+    , 64743+    , 64744+    , 64745+    , 64752+    , 64753+    , 64754+    , 64755+    , 64756+    , 64757+    , 64758+    , 64759+    , 64764+    , 64899+    , 64915+    , 64931+    , 64947+    , 64962+    , 64978+    , 64994+    , 65010+    , 65103+    , 65119+    , 65127+    , 65143+    , 65167+    , 65183+    , 65230+    , 65231+    , 65246+    , 65247+    , 65254+    , 65260+    , 65261+    , 65270+    , 65276+    , 65277+    , 65288+    , 65289+    , 65290+    , 65291+    , 65292+    , 65293+    , 65295+    , 65304+    , 65305+    , 65306+    , 65307+    , 65308+    , 65318+    , 65320+    , 65321+    , 65325+    , 65328+    , 65329+    , 65331+    , 65333+    , 65334+    , 65335+    , 65336+    , 65337+    , 65340+    , 65341+    , 65419+    , 65423+    , 65435+    , 65459+    , 65463+    , 65482+    , 65483+    , 65486+    , 65487+    , 65498+    , 65499+    , 65503+    , 65510+    , 65513+    , 65516+    , 65522+    , 65523+    , 65526+    , 65527+    , 65529+    , 65532+    , 65533+    , 0+    , 1+    , 2+    , 3+    , 8+    , 9+    , 10+    , 11+    , 13+    , 14+    , 16+    , 17+    , 18+    , 19+    , 24+    , 25+    , 26+    , 27+    , 29+    , 30+    , 31+    , 32+    , 33+    , 34+    , 35+    , 40+    , 41+    , 42+    , 43+    , 44+    , 45+    , 46+    , 47+    , 48+    , 49+    , 50+    , 51+    , 52+    , 53+    , 54+    , 55+    , 56+    , 57+    , 58+    , 59+    , 61+    , 62+    , 63+    , 64+    , 65+    , 66+    , 67+    , 70+    , 71+    , 72+    , 73+    , 74+    , 75+    , 76+    , 77+    , 78+    , 79+    , 80+    , 81+    , 82+    , 83+    , 86+    , 87+    , 88+    , 89+    , 90+    , 91+    , 92+    , 93+    , 94+    , 95+    , 96+    , 97+    , 98+    , 99+    , 102+    , 103+    , 104+    , 105+    , 106+    , 107+    , 108+    , 109+    , 110+    , 111+    , 112+    , 113+    , 114+    , 115+    , 116+    , 117+    , 118+    , 119+    , 120+    , 121+    , 122+    , 123+    , 124+    , 125+    , 126+    , 127+    , 128+    , 129+    , 130+    , 131+    , 132+    , 133+    , 134+    , 135+    , 136+    , 137+    , 138+    , 139+    , 140+    , 141+    , 142+    , 143+    , 144+    , 145+    , 146+    , 147+    , 148+    , 149+    , 150+    , 151+    , 152+    , 153+    , 154+    , 155+    , 156+    , 157+    , 158+    , 159+    , 160+    , 161+    , 162+    , 163+    , 164+    , 165+    , 166+    , 167+    , 168+    , 169+    , 170+    , 171+    , 172+    , 173+    , 174+    , 175+    , 176+    , 177+    , 178+    , 179+    , 180+    , 181+    , 182+    , 183+    , 184+    , 185+    , 186+    , 187+    , 188+    , 189+    , 190+    , 191+    , 192+    , 193+    , 194+    , 195+    , 200+    , 201+    , 202+    , 203+    , 205+    , 206+    , 208+    , 209+    , 210+    , 211+    , 216+    , 217+    , 218+    , 219+    , 220+    , 221+    , 222+    , 224+    , 225+    , 226+    , 227+    , 232+    , 233+    , 234+    , 235+    , 237+    , 238+    , 239+    , 240+    , 241+    , 242+    , 243+    , 244+    , 245+    , 246+    , 247+    , 248+    , 249+    , 250+    , 251+    , 253+    , 254+    , 255+    , 258+    , 260+    , 261+    , 262+    , 263+    , 264+    , 265+    , 266+    , 267+    , 268+    , 269+    , 270+    , 271+    , 274+    , 276+    , 277+    , 278+    , 279+    , 280+    , 281+    , 282+    , 283+    , 284+    , 285+    , 286+    , 287+    , 288+    , 289+    , 290+    , 291+    , 292+    , 293+    , 294+    , 295+    , 296+    , 297+    , 298+    , 299+    , 300+    , 301+    , 302+    , 303+    , 304+    , 305+    , 306+    , 307+    , 308+    , 309+    , 310+    , 311+    , 312+    , 313+    , 314+    , 315+    , 316+    , 317+    , 318+    , 319+    , 322+    , 324+    , 325+    , 326+    , 327+    , 328+    , 329+    , 330+    , 331+    , 332+    , 333+    , 334+    , 335+    , 338+    , 340+    , 341+    , 342+    , 343+    , 344+    , 345+    , 346+    , 347+    , 348+    , 349+    , 350+    , 351+    , 352+    , 353+    , 354+    , 355+    , 356+    , 357+    , 358+    , 359+    , 360+    , 361+    , 362+    , 363+    , 364+    , 365+    , 366+    , 367+    , 368+    , 369+    , 370+    , 371+    , 372+    , 373+    , 374+    , 375+    , 376+    , 377+    , 378+    , 379+    , 380+    , 381+    , 382+    , 383+    , 388+    , 389+    , 390+    , 391+    , 392+    , 393+    , 394+    , 395+    , 396+    , 397+    , 398+    , 399+    , 404+    , 405+    , 406+    , 407+    , 408+    , 409+    , 410+    , 411+    , 412+    , 413+    , 414+    , 415+    , 416+    , 417+    , 418+    , 419+    , 420+    , 421+    , 422+    , 423+    , 424+    , 425+    , 426+    , 427+    , 428+    , 429+    , 430+    , 431+    , 432+    , 433+    , 434+    , 435+    , 436+    , 437+    , 438+    , 439+    , 440+    , 441+    , 442+    , 443+    , 444+    , 445+    , 446+    , 447+    , 448+    , 452+    , 453+    , 454+    , 455+    , 456+    , 457+    , 458+    , 459+    , 460+    , 461+    , 462+    , 463+    , 464+    , 468+    , 469+    , 470+    , 471+    , 472+    , 473+    , 474+    , 475+    , 476+    , 477+    , 478+    , 479+    , 480+    , 481+    , 482+    , 483+    , 484+    , 485+    , 486+    , 487+    , 488+    , 489+    , 490+    , 491+    , 492+    , 493+    , 494+    , 495+    , 496+    , 497+    , 498+    , 499+    , 500+    , 501+    , 502+    , 503+    , 504+    , 505+    , 506+    , 507+    , 508+    , 509+    , 510+    , 511+    , 512+    , 513+    , 514+    , 515+    , 516+    , 517+    , 518+    , 519+    , 520+    , 521+    , 522+    , 523+    , 524+    , 525+    , 526+    , 527+    , 528+    , 529+    , 530+    , 531+    , 532+    , 533+    , 534+    , 535+    , 536+    , 537+    , 538+    , 539+    , 540+    , 541+    , 542+    , 543+    , 544+    , 545+    , 546+    , 547+    , 548+    , 549+    , 550+    , 551+    , 552+    , 553+    , 554+    , 555+    , 556+    , 557+    , 558+    , 559+    , 560+    , 561+    , 562+    , 563+    , 564+    , 565+    , 566+    , 567+    , 568+    , 569+    , 570+    , 571+    , 572+    , 573+    , 574+    , 575+    , 576+    , 577+    , 578+    , 579+    , 580+    , 581+    , 582+    , 583+    , 584+    , 585+    , 586+    , 587+    , 588+    , 589+    , 590+    , 591+    , 592+    , 593+    , 594+    , 595+    , 596+    , 597+    , 598+    , 599+    , 600+    , 601+    , 602+    , 603+    , 604+    , 605+    , 606+    , 607+    , 608+    , 609+    , 610+    , 611+    , 612+    , 613+    , 614+    , 615+    , 616+    , 617+    , 618+    , 619+    , 620+    , 621+    , 622+    , 623+    , 624+    , 625+    , 626+    , 627+    , 628+    , 629+    , 630+    , 631+    , 632+    , 633+    , 634+    , 635+    , 636+    , 637+    , 638+    , 639+    , 640+    , 641+    , 642+    , 643+    , 644+    , 645+    , 646+    , 647+    , 648+    , 649+    , 650+    , 651+    , 652+    , 653+    , 654+    , 655+    , 656+    , 657+    , 658+    , 659+    , 660+    , 661+    , 662+    , 663+    , 664+    , 665+    , 666+    , 667+    , 668+    , 669+    , 670+    , 671+    , 672+    , 673+    , 674+    , 675+    , 676+    , 677+    , 678+    , 679+    , 680+    , 681+    , 682+    , 683+    , 684+    , 685+    , 686+    , 687+    , 688+    , 689+    , 690+    , 691+    , 692+    , 693+    , 694+    , 695+    , 696+    , 697+    , 698+    , 699+    , 700+    , 701+    , 702+    , 703+    , 704+    , 705+    , 706+    , 707+    , 708+    , 709+    , 710+    , 711+    , 712+    , 713+    , 714+    , 715+    , 716+    , 717+    , 718+    , 719+    , 720+    , 721+    , 722+    , 723+    , 724+    , 725+    , 726+    , 727+    , 728+    , 729+    , 730+    , 731+    , 732+    , 733+    , 734+    , 735+    , 736+    , 737+    , 738+    , 739+    , 740+    , 741+    , 742+    , 743+    , 744+    , 745+    , 746+    , 747+    , 748+    , 749+    , 750+    , 751+    , 752+    , 753+    , 754+    , 755+    , 756+    , 757+    , 758+    , 759+    , 760+    , 761+    , 762+    , 763+    , 764+    , 765+    , 766+    , 767+    , 770+    , 772+    , 773+    , 774+    , 775+    , 780+    , 781+    , 782+    , 783+    , 785+    , 786+    , 787+    , 788+    , 789+    , 790+    , 791+    , 796+    , 797+    , 798+    , 799+    , 800+    , 802+    , 803+    , 804+    , 805+    , 806+    , 807+    , 810+    , 811+    , 812+    , 813+    , 814+    , 815+    , 818+    , 819+    , 820+    , 821+    , 822+    , 823+    , 824+    , 825+    , 826+    , 827+    , 828+    , 829+    , 830+    , 831+    , 832+    , 833+    , 834+    , 835+    , 836+    , 837+    , 838+    , 839+    , 840+    , 841+    , 842+    , 843+    , 844+    , 845+    , 846+    , 847+    , 848+    , 849+    , 850+    , 851+    , 852+    , 853+    , 854+    , 855+    , 856+    , 857+    , 858+    , 859+    , 860+    , 861+    , 862+    , 863+    , 864+    , 865+    , 866+    , 867+    , 868+    , 869+    , 870+    , 871+    , 872+    , 873+    , 874+    , 875+    , 876+    , 877+    , 878+    , 879+    , 880+    , 881+    , 882+    , 883+    , 884+    , 885+    , 886+    , 887+    , 888+    , 889+    , 890+    , 891+    , 892+    , 893+    , 894+    , 895+    , 896+    , 897+    , 898+    , 899+    , 900+    , 901+    , 902+    , 903+    , 904+    , 905+    , 906+    , 907+    , 908+    , 909+    , 910+    , 911+    , 912+    , 913+    , 914+    , 915+    , 916+    , 917+    , 918+    , 919+    , 920+    , 921+    , 922+    , 923+    , 924+    , 925+    , 926+    , 927+    , 928+    , 929+    , 930+    , 931+    , 932+    , 933+    , 934+    , 935+    , 936+    , 937+    , 938+    , 939+    , 940+    , 941+    , 942+    , 943+    , 944+    , 945+    , 946+    , 947+    , 948+    , 949+    , 950+    , 951+    , 952+    , 953+    , 954+    , 955+    , 956+    , 957+    , 958+    , 959+    , 960+    , 961+    , 964+    , 965+    , 966+    , 967+    , 968+    , 972+    , 973+    , 974+    , 975+    , 976+    , 977+    , 978+    , 980+    , 981+    , 982+    , 983+    , 984+    , 988+    , 989+    , 990+    , 991+    , 992+    , 993+    , 995+    , 996+    , 997+    , 998+    , 999+    , 1000+    , 1002+    , 1003+    , 1004+    , 1005+    , 1006+    , 1007+    , 1008+    , 1009+    , 1012+    , 1013+    , 1014+    , 1015+    , 1016+    , 1017+    , 1018+    , 1019+    , 1020+    , 1021+    , 1022+    , 1023+    , 1024+    , 1025+    , 1026+    , 1027+    , 1028+    , 1029+    , 1030+    , 1031+    , 1032+    , 1033+    , 1034+    , 1035+    , 1036+    , 1037+    , 1038+    , 1039+    , 1040+    , 1041+    , 1042+    , 1043+    , 1044+    , 1045+    , 1046+    , 1047+    , 1048+    , 1049+    , 1050+    , 1051+    , 1052+    , 1053+    , 1054+    , 1055+    , 1056+    , 1057+    , 1058+    , 1059+    , 1060+    , 1061+    , 1062+    , 1063+    , 1064+    , 1065+    , 1066+    , 1067+    , 1068+    , 1069+    , 1070+    , 1071+    , 1072+    , 1073+    , 1074+    , 1075+    , 1076+    , 1077+    , 1078+    , 1079+    , 1080+    , 1081+    , 1082+    , 1083+    , 1084+    , 1085+    , 1086+    , 1087+    , 1088+    , 1089+    , 1090+    , 1091+    , 1092+    , 1093+    , 1094+    , 1095+    , 1096+    , 1097+    , 1098+    , 1099+    , 1100+    , 1101+    , 1102+    , 1103+    , 1104+    , 1105+    , 1106+    , 1107+    , 1108+    , 1109+    , 1110+    , 1111+    , 1112+    , 1113+    , 1114+    , 1115+    , 1116+    , 1117+    , 1118+    , 1119+    , 1120+    , 1121+    , 1122+    , 1123+    , 1124+    , 1125+    , 1126+    , 1127+    , 1128+    , 1129+    , 1130+    , 1131+    , 1132+    , 1133+    , 1134+    , 1135+    , 1136+    , 1137+    , 1138+    , 1139+    , 1140+    , 1141+    , 1142+    , 1143+    , 1144+    , 1145+    , 1146+    , 1147+    , 1148+    , 1149+    , 1150+    , 1151+    , 1152+    , 1153+    , 1154+    , 1155+    , 1156+    , 1157+    , 1158+    , 1159+    , 1160+    , 1161+    , 1162+    , 1163+    , 1164+    , 1165+    , 1166+    , 1167+    , 1168+    , 1169+    , 1170+    , 1171+    , 1172+    , 1173+    , 1174+    , 1175+    , 1176+    , 1177+    , 1178+    , 1179+    , 1180+    , 1181+    , 1182+    , 1183+    , 1184+    , 1185+    , 1186+    , 1187+    , 1188+    , 1189+    , 1190+    , 1191+    , 1192+    , 1193+    , 1194+    , 1195+    , 1196+    , 1197+    , 1198+    , 1199+    , 1200+    , 1201+    , 1202+    , 1203+    , 1204+    , 1205+    , 1206+    , 1207+    , 1208+    , 1209+    , 1210+    , 1211+    , 1212+    , 1213+    , 1214+    , 1215+    , 1216+    , 1217+    , 1218+    , 1219+    , 1220+    , 1221+    , 1222+    , 1223+    , 1224+    , 1225+    , 1226+    , 1227+    , 1228+    , 1229+    , 1230+    , 1231+    , 1232+    , 1233+    , 1234+    , 1235+    , 1236+    , 1237+    , 1238+    , 1239+    , 1240+    , 1241+    , 1242+    , 1243+    , 1244+    , 1245+    , 1246+    , 1247+    , 1248+    , 1249+    , 1250+    , 1251+    , 1252+    , 1253+    , 1254+    , 1255+    , 1256+    , 1257+    , 1258+    , 1259+    , 1260+    , 1261+    , 1262+    , 1263+    , 1264+    , 1265+    , 1266+    , 1267+    , 1268+    , 1269+    , 1270+    , 1271+    , 1272+    , 1273+    , 1274+    , 1275+    , 1276+    , 1277+    , 1278+    , 1279+    , 1281+    , 1282+    , 1283+    , 1284+    , 1285+    , 1286+    , 1287+    , 1288+    , 1289+    , 1290+    , 1291+    , 1292+    , 1293+    , 1294+    , 1295+    , 1296+    , 1298+    , 1300+    , 1301+    , 1302+    , 1303+    , 1304+    , 1306+    , 1307+    , 1308+    , 1309+    , 1310+    , 1311+    , 1312+    , 1313+    , 1314+    , 1315+    , 1316+    , 1317+    , 1318+    , 1319+    , 1320+    , 1321+    , 1322+    , 1323+    , 1324+    , 1325+    , 1326+    , 1327+    , 1328+    , 1330+    , 1332+    , 1333+    , 1334+    , 1335+    , 1336+    , 1337+    , 1338+    , 1339+    , 1340+    , 1341+    , 1342+    , 1343+    , 1344+    , 1346+    , 1348+    , 1349+    , 1350+    , 1351+    , 1352+    , 1353+    , 1354+    , 1355+    , 1356+    , 1357+    , 1358+    , 1359+    , 1361+    , 1362+    , 1363+    , 1364+    , 1365+    , 1366+    , 1367+    , 1369+    , 1371+    , 1372+    , 1373+    , 1374+    , 1375+    , 1376+    , 1377+    , 1378+    , 1379+    , 1380+    , 1381+    , 1382+    , 1383+    , 1384+    , 1385+    , 1386+    , 1387+    , 1388+    , 1389+    , 1390+    , 1391+    , 1393+    , 1394+    , 1395+    , 1396+    , 1397+    , 1398+    , 1399+    , 1400+    , 1401+    , 1402+    , 1403+    , 1404+    , 1405+    , 1406+    , 1407+    , 1409+    , 1411+    , 1412+    , 1413+    , 1414+    , 1415+    , 1416+    , 1417+    , 1418+    , 1419+    , 1420+    , 1421+    , 1422+    , 1423+    , 1424+    , 1426+    , 1428+    , 1429+    , 1430+    , 1431+    , 1432+    , 1434+    , 1436+    , 1437+    , 1438+    , 1439+    , 1440+    , 1441+    , 1442+    , 1443+    , 1444+    , 1445+    , 1446+    , 1447+    , 1448+    , 1449+    , 1450+    , 1451+    , 1452+    , 1453+    , 1454+    , 1455+    , 1456+    , 1458+    , 1460+    , 1461+    , 1462+    , 1463+    , 1464+    , 1465+    , 1466+    , 1467+    , 1468+    , 1469+    , 1470+    , 1471+    , 1472+    , 1474+    , 1476+    , 1477+    , 1478+    , 1479+    , 1480+    , 1481+    , 1482+    , 1483+    , 1484+    , 1485+    , 1486+    , 1487+    , 1488+    , 1489+    , 1491+    , 1492+    , 1493+    , 1494+    , 1495+    , 1496+    , 1497+    , 1499+    , 1500+    , 1501+    , 1502+    , 1503+    , 1504+    , 1505+    , 1506+    , 1507+    , 1508+    , 1509+    , 1510+    , 1511+    , 1512+    , 1513+    , 1514+    , 1515+    , 1516+    , 1517+    , 1518+    , 1519+    , 1520+    , 1521+    , 1523+    , 1524+    , 1525+    , 1526+    , 1527+    , 1528+    , 1529+    , 1530+    , 1531+    , 1532+    , 1533+    , 1534+    , 1535+    , 1536+    , 1537+    , 1538+    , 1539+    , 1540+    , 1541+    , 1543+    , 1544+    , 1545+    , 1546+    , 1547+    , 1550+    , 1552+    , 1553+    , 1554+    , 1555+    , 1556+    , 1557+    , 1558+    , 1559+    , 1560+    , 1561+    , 1562+    , 1563+    , 1564+    , 1566+    , 1568+    , 1569+    , 1570+    , 1571+    , 1572+    , 1573+    , 1574+    , 1575+    , 1576+    , 1577+    , 1578+    , 1579+    , 1580+    , 1581+    , 1582+    , 1583+    , 1584+    , 1585+    , 1586+    , 1587+    , 1588+    , 1589+    , 1590+    , 1591+    , 1592+    , 1593+    , 1594+    , 1595+    , 1598+    , 1599+    , 1600+    , 1601+    , 1602+    , 1603+    , 1608+    , 1609+    , 1610+    , 1611+    , 1614+    , 1616+    , 1617+    , 1618+    , 1619+    , 1621+    , 1623+    , 1624+    , 1625+    , 1626+    , 1627+    , 1629+    , 1630+    , 1631+    , 1632+    , 1633+    , 1634+    , 1635+    , 1636+    , 1637+    , 1638+    , 1639+    , 1640+    , 1641+    , 1642+    , 1643+    , 1644+    , 1645+    , 1646+    , 1647+    , 1648+    , 1649+    , 1650+    , 1651+    , 1652+    , 1653+    , 1654+    , 1655+    , 1656+    , 1657+    , 1658+    , 1659+    , 1662+    , 1663+    , 1664+    , 1665+    , 1666+    , 1667+    , 1668+    , 1669+    , 1671+    , 1672+    , 1673+    , 1674+    , 1675+    , 1680+    , 1681+    , 1682+    , 1683+    , 1684+    , 1685+    , 1686+    , 1687+    , 1688+    , 1689+    , 1690+    , 1691+    , 1692+    , 1694+    , 1696+    , 1697+    , 1698+    , 1699+    , 1700+    , 1701+    , 1702+    , 1703+    , 1704+    , 1705+    , 1706+    , 1707+    , 1708+    , 1709+    , 1710+    , 1711+    , 1712+    , 1713+    , 1714+    , 1715+    , 1716+    , 1717+    , 1718+    , 1719+    , 1720+    , 1721+    , 1722+    , 1723+    , 1726+    , 1727+    , 1728+    , 1729+    , 1730+    , 1731+    , 1732+    , 1733+    , 1735+    , 1736+    , 1737+    , 1738+    , 1739+    , 1744+    , 1745+    , 1746+    , 1747+    , 1748+    , 1749+    , 1751+    , 1752+    , 1753+    , 1754+    , 1755+    , 1757+    , 1759+    , 1760+    , 1761+    , 1762+    , 1763+    , 1764+    , 1765+    , 1766+    , 1767+    , 1768+    , 1769+    , 1770+    , 1771+    , 1772+    , 1773+    , 1774+    , 1775+    , 1776+    , 1777+    , 1778+    , 1779+    , 1780+    , 1781+    , 1782+    , 1783+    , 1784+    , 1785+    , 1786+    , 1787+    , 1790+    , 1791+    , 1792+    , 1793+    , 1794+    , 1795+    , 1796+    , 1797+    , 1798+    , 1799+    , 1801+    , 1803+    , 1804+    , 1805+    , 1806+    , 1807+    , 1808+    , 1809+    , 1810+    , 1811+    , 1812+    , 1813+    , 1814+    , 1815+    , 1816+    , 1818+    , 1820+    , 1821+    , 1822+    , 1823+    , 1824+    , 1825+    , 1826+    , 1827+    , 1828+    , 1829+    , 1830+    , 1831+    , 1832+    , 1833+    , 1834+    , 1835+    , 1836+    , 1837+    , 1838+    , 1839+    , 1840+    , 1842+    , 1843+    , 1844+    , 1845+    , 1846+    , 1847+    , 1848+    , 1849+    , 1850+    , 1851+    , 1852+    , 1853+    , 1854+    , 1855+    , 1856+    , 1857+    , 1858+    , 1859+    , 1860+    , 1861+    , 1862+    , 1863+    , 1864+    , 1865+    , 1866+    , 1867+    , 1868+    , 1869+    , 1870+    , 1871+    , 1872+    , 1873+    , 1874+    , 1875+    , 1876+    , 1877+    , 1878+    , 1879+    , 1880+    , 1881+    , 1882+    , 1883+    , 1884+    , 1885+    , 1886+    , 1887+    , 1888+    , 1889+    , 1890+    , 1891+    , 1892+    , 1893+    , 1894+    , 1895+    , 1896+    , 1897+    , 1898+    , 1899+    , 1900+    , 1901+    , 1902+    , 1903+    , 1904+    , 1905+    , 1906+    , 1907+    , 1908+    , 1909+    , 1910+    , 1911+    , 1912+    , 1913+    , 1914+    , 1915+    , 1916+    , 1917+    , 1918+    , 1919+    , 1920+    , 1921+    , 1922+    , 1923+    , 1924+    , 1925+    , 1926+    , 1927+    , 1928+    , 1929+    , 1930+    , 1931+    , 1932+    , 1933+    , 1934+    , 1935+    , 1936+    , 1937+    , 1938+    , 1939+    , 1940+    , 1941+    , 1942+    , 1943+    , 1944+    , 1945+    , 1946+    , 1947+    , 1948+    , 1949+    , 1950+    , 1951+    , 1952+    , 1953+    , 1954+    , 1955+    , 1956+    , 1957+    , 1958+    , 1959+    , 1960+    , 1961+    , 1962+    , 1963+    , 1964+    , 1965+    , 1966+    , 1967+    , 1968+    , 1969+    , 1970+    , 1971+    , 1972+    , 1973+    , 1974+    , 1975+    , 1976+    , 1977+    , 1978+    , 1979+    , 1980+    , 1981+    , 1982+    , 1983+    , 1984+    , 1985+    , 1986+    , 1987+    , 1988+    , 1989+    , 1990+    , 1991+    , 1992+    , 1994+    , 1996+    , 1997+    , 1998+    , 1999+    , 2000+    , 2001+    , 2002+    , 2003+    , 2004+    , 2005+    , 2006+    , 2007+    , 2008+    , 2009+    , 2011+    , 2012+    , 2013+    , 2014+    , 2015+    , 2016+    , 2017+    , 2018+    , 2019+    , 2020+    , 2021+    , 2022+    , 2023+    , 2024+    , 2025+    , 2026+    , 2027+    , 2028+    , 2029+    , 2030+    , 2031+    , 2032+    , 2033+    , 2035+    , 2036+    , 2037+    , 2038+    , 2039+    , 2040+    , 2041+    , 2042+    , 2043+    , 2044+    , 2045+    , 2046+    , 2047+    , 2048+    , 2049+    , 2050+    , 2051+    , 2052+    , 2053+    , 2054+    , 2055+    , 2056+    , 2057+    , 2058+    , 2059+    , 2060+    , 2061+    , 2062+    , 2063+    , 2064+    , 2065+    , 2066+    , 2067+    , 2068+    , 2069+    , 2070+    , 2071+    , 2072+    , 2073+    , 2074+    , 2075+    , 2076+    , 2077+    , 2078+    , 2079+    , 2080+    , 2081+    , 2082+    , 2083+    , 2084+    , 2085+    , 2086+    , 2087+    , 2088+    , 2089+    , 2090+    , 2091+    , 2092+    , 2093+    , 2094+    , 2095+    , 2096+    , 2097+    , 2098+    , 2099+    , 2101+    , 2103+    , 2104+    , 2105+    , 2106+    , 2107+    , 2109+    , 2110+    , 2111+    , 2112+    , 2113+    , 2114+    , 2115+    , 2116+    , 2117+    , 2118+    , 2119+    , 2120+    , 2121+    , 2122+    , 2123+    , 2124+    , 2125+    , 2126+    , 2127+    , 2128+    , 2129+    , 2130+    , 2131+    , 2132+    , 2133+    , 2134+    , 2135+    , 2136+    , 2137+    , 2138+    , 2139+    , 2140+    , 2141+    , 2142+    , 2143+    , 2144+    , 2145+    , 2146+    , 2147+    , 2148+    , 2149+    , 2150+    , 2151+    , 2152+    , 2153+    , 2154+    , 2155+    , 2156+    , 2157+    , 2158+    , 2159+    , 2160+    , 2161+    , 2162+    , 2163+    , 2164+    , 2166+    , 2167+    , 2168+    , 2169+    , 2170+    , 2171+    , 2172+    , 2173+    , 2174+    , 2175+    , 2176+    , 2177+    , 2178+    , 2179+    , 2180+    , 2181+    , 2182+    , 2183+    , 2184+    , 2185+    , 2186+    , 2187+    , 2188+    , 2189+    , 2190+    , 2191+    , 2192+    , 2193+    , 2194+    , 2195+    , 2196+    , 2197+    , 2198+    , 2199+    , 2200+    , 2201+    , 2202+    , 2203+    , 2204+    , 2205+    , 2206+    , 2207+    , 2208+    , 2209+    , 2210+    , 2211+    , 2212+    , 2213+    , 2214+    , 2215+    , 2216+    , 2217+    , 2218+    , 2219+    , 2220+    , 2221+    , 2222+    , 2223+    , 2224+    , 2225+    , 2226+    , 2227+    , 2228+    , 2229+    , 2230+    , 2231+    , 2232+    , 2233+    , 2234+    , 2235+    , 2236+    , 2237+    , 2238+    , 2239+    , 2240+    , 2241+    , 2242+    , 2243+    , 2244+    , 2245+    , 2246+    , 2247+    , 2248+    , 2249+    , 2250+    , 2251+    , 2252+    , 2253+    , 2254+    , 2255+    , 2256+    , 2257+    , 2258+    , 2259+    , 2260+    , 2261+    , 2262+    , 2263+    , 2264+    , 2265+    , 2266+    , 2267+    , 2268+    , 2269+    , 2270+    , 2271+    , 2272+    , 2273+    , 2274+    , 2275+    , 2276+    , 2277+    , 2278+    , 2279+    , 2280+    , 2281+    , 2282+    , 2283+    , 2284+    , 2285+    , 2286+    , 2287+    , 2288+    , 2289+    , 2290+    , 2291+    , 2292+    , 2294+    , 2296+    , 2297+    , 2298+    , 2299+    , 2300+    , 2301+    , 2302+    , 2303+    , 2306+    , 2308+    , 2309+    , 2310+    , 2311+    , 2312+    , 2313+    , 2314+    , 2315+    , 2316+    , 2317+    , 2318+    , 2319+    , 2321+    , 2322+    , 2323+    , 2324+    , 2325+    , 2326+    , 2327+    , 2328+    , 2329+    , 2331+    , 2332+    , 2333+    , 2334+    , 2335+    , 2336+    , 2338+    , 2340+    , 2341+    , 2342+    , 2343+    , 2344+    , 2346+    , 2347+    , 2348+    , 2349+    , 2350+    , 2351+    , 2354+    , 2356+    , 2357+    , 2358+    , 2359+    , 2360+    , 2361+    , 2362+    , 2363+    , 2364+    , 2365+    , 2366+    , 2367+    , 2370+    , 2372+    , 2373+    , 2374+    , 2375+    , 2376+    , 2377+    , 2378+    , 2379+    , 2380+    , 2381+    , 2382+    , 2383+    , 2384+    , 2386+    , 2388+    , 2389+    , 2390+    , 2391+    , 2392+    , 2394+    , 2396+    , 2397+    , 2398+    , 2399+    , 2401+    , 2402+    , 2403+    , 2404+    , 2405+    , 2406+    , 2407+    , 2409+    , 2410+    , 2411+    , 2412+    , 2413+    , 2414+    , 2415+    , 2418+    , 2420+    , 2421+    , 2422+    , 2423+    , 2424+    , 2425+    , 2426+    , 2427+    , 2428+    , 2429+    , 2430+    , 2431+    , 2432+    , 2433+    , 2436+    , 2437+    , 2438+    , 2439+    , 2440+    , 2441+    , 2442+    , 2443+    , 2444+    , 2445+    , 2446+    , 2447+    , 2448+    , 2449+    , 2451+    , 2452+    , 2453+    , 2454+    , 2455+    , 2457+    , 2459+    , 2460+    , 2461+    , 2462+    , 2463+    , 2464+    , 2466+    , 2468+    , 2469+    , 2470+    , 2471+    , 2472+    , 2474+    , 2475+    , 2476+    , 2477+    , 2478+    , 2479+    , 2484+    , 2485+    , 2486+    , 2487+    , 2488+    , 2489+    , 2490+    , 2491+    , 2492+    , 2493+    , 2494+    , 2495+    , 2496+    , 2497+    , 2500+    , 2501+    , 2502+    , 2503+    , 2504+    , 2505+    , 2506+    , 2507+    , 2508+    , 2509+    , 2510+    , 2511+    , 2512+    , 2513+    , 2514+    , 2516+    , 2517+    , 2518+    , 2519+    , 2520+    , 2522+    , 2523+    , 2524+    , 2525+    , 2526+    , 2527+    , 2528+    , 2529+    , 2531+    , 2532+    , 2533+    , 2534+    , 2535+    , 2536+    , 2537+    , 2538+    , 2539+    , 2540+    , 2541+    , 2542+    , 2543+    , 2544+    , 2548+    , 2549+    , 2550+    , 2551+    , 2552+    , 2553+    , 2554+    , 2555+    , 2556+    , 2557+    , 2558+    , 2559+    , 2560+    , 2561+    , 2562+    , 2563+    , 2564+    , 2565+    , 2566+    , 2567+    , 2568+    , 2569+    , 2570+    , 2571+    , 2574+    , 2576+    , 2577+    , 2578+    , 2579+    , 2580+    , 2581+    , 2582+    , 2583+    , 2584+    , 2585+    , 2586+    , 2587+    , 2588+    , 2589+    , 2590+    , 2591+    , 2592+    , 2593+    , 2594+    , 2595+    , 2596+    , 2597+    , 2598+    , 2599+    , 2600+    , 2601+    , 2602+    , 2603+    , 2604+    , 2606+    , 2607+    , 2608+    , 2609+    , 2610+    , 2611+    , 2612+    , 2613+    , 2615+    , 2616+    , 2617+    , 2618+    , 2619+    , 2622+    , 2623+    , 2624+    , 2625+    , 2626+    , 2627+    , 2628+    , 2629+    , 2630+    , 2631+    , 2632+    , 2633+    , 2634+    , 2635+    , 2638+    , 2640+    , 2641+    , 2642+    , 2643+    , 2644+    , 2645+    , 2646+    , 2647+    , 2648+    , 2649+    , 2650+    , 2651+    , 2652+    , 2653+    , 2654+    , 2655+    , 2656+    , 2657+    , 2658+    , 2659+    , 2661+    , 2663+    , 2664+    , 2665+    , 2666+    , 2667+    , 2669+    , 2670+    , 2671+    , 2672+    , 2673+    , 2674+    , 2675+    , 2680+    , 2681+    , 2682+    , 2683+    , 2686+    , 2687+    , 2688+    , 2689+    , 2690+    , 2691+    , 2692+    , 2693+    , 2694+    , 2695+    , 2696+    , 2697+    , 2698+    , 2699+    , 2700+    , 2701+    , 2704+    , 2705+    , 2706+    , 2707+    , 2708+    , 2709+    , 2710+    , 2711+    , 2712+    , 2713+    , 2714+    , 2715+    , 2716+    , 2717+    , 2718+    , 2719+    , 2720+    , 2721+    , 2722+    , 2723+    , 2724+    , 2725+    , 2726+    , 2727+    , 2728+    , 2729+    , 2730+    , 2731+    , 2732+    , 2734+    , 2735+    , 2736+    , 2737+    , 2738+    , 2739+    , 2740+    , 2741+    , 2743+    , 2744+    , 2745+    , 2746+    , 2747+    , 2750+    , 2751+    , 2752+    , 2753+    , 2754+    , 2755+    , 2756+    , 2757+    , 2758+    , 2759+    , 2760+    , 2761+    , 2762+    , 2763+    , 2764+    , 2765+    , 2768+    , 2769+    , 2770+    , 2771+    , 2772+    , 2773+    , 2774+    , 2775+    , 2776+    , 2777+    , 2778+    , 2779+    , 2780+    , 2781+    , 2782+    , 2783+    , 2784+    , 2785+    , 2786+    , 2787+    , 2788+    , 2789+    , 2791+    , 2792+    , 2793+    , 2794+    , 2795+    , 2797+    , 2798+    , 2799+    , 2800+    , 2801+    , 2802+    , 2803+    , 2804+    , 2805+    , 2807+    , 2808+    , 2809+    , 2810+    , 2811+    , 2814+    , 2815+    , 2816+    , 2817+    , 2818+    , 2819+    , 2820+    , 2821+    , 2822+    , 2823+    , 2824+    , 2826+    , 2828+    , 2829+    , 2830+    , 2831+    , 2832+    , 2833+    , 2834+    , 2835+    , 2836+    , 2837+    , 2838+    , 2839+    , 2841+    , 2843+    , 2844+    , 2845+    , 2846+    , 2847+    , 2848+    , 2849+    , 2850+    , 2851+    , 2852+    , 2853+    , 2854+    , 2855+    , 2856+    , 2858+    , 2859+    , 2860+    , 2861+    , 2862+    , 2863+    , 2865+    , 2866+    , 2867+    , 2868+    , 2869+    , 2870+    , 2871+    , 2873+    , 2874+    , 2875+    , 2876+    , 2877+    , 2878+    , 2879+    , 2880+    , 2881+    , 2882+    , 2883+    , 2884+    , 2885+    , 2886+    , 2887+    , 2888+    , 2889+    , 2890+    , 2891+    , 2892+    , 2893+    , 2894+    , 2895+    , 2896+    , 2897+    , 2898+    , 2899+    , 2900+    , 2901+    , 2902+    , 2903+    , 2904+    , 2905+    , 2906+    , 2907+    , 2908+    , 2909+    , 2910+    , 2911+    , 2912+    , 2913+    , 2914+    , 2915+    , 2916+    , 2917+    , 2918+    , 2919+    , 2920+    , 2921+    , 2922+    , 2923+    , 2924+    , 2925+    , 2926+    , 2927+    , 2928+    , 2929+    , 2930+    , 2931+    , 2932+    , 2933+    , 2934+    , 2935+    , 2936+    , 2937+    , 2938+    , 2939+    , 2940+    , 2941+    , 2942+    , 2943+    , 2944+    , 2945+    , 2946+    , 2947+    , 2948+    , 2949+    , 2950+    , 2951+    , 2952+    , 2953+    , 2954+    , 2955+    , 2956+    , 2957+    , 2958+    , 2959+    , 2960+    , 2961+    , 2962+    , 2963+    , 2964+    , 2965+    , 2966+    , 2967+    , 2968+    , 2969+    , 2970+    , 2971+    , 2972+    , 2973+    , 2974+    , 2975+    , 2976+    , 2977+    , 2978+    , 2979+    , 2980+    , 2981+    , 2982+    , 2983+    , 2984+    , 2985+    , 2986+    , 2987+    , 2988+    , 2989+    , 2990+    , 2991+    , 2992+    , 2993+    , 2994+    , 2995+    , 2996+    , 2997+    , 2998+    , 2999+    , 3000+    , 3001+    , 3002+    , 3003+    , 3004+    , 3005+    , 3006+    , 3007+    , 3008+    , 3009+    , 3010+    , 3011+    , 3012+    , 3013+    , 3014+    , 3015+    , 3016+    , 3017+    , 3019+    , 3020+    , 3021+    , 3022+    , 3023+    , 3024+    , 3025+    , 3026+    , 3027+    , 3028+    , 3029+    , 3030+    , 3031+    , 3032+    , 3033+    , 3034+    , 3036+    , 3037+    , 3038+    , 3039+    , 3040+    , 3041+    , 3042+    , 3043+    , 3044+    , 3045+    , 3046+    , 3047+    , 3048+    , 3049+    , 3050+    , 3051+    , 3052+    , 3053+    , 3054+    , 3055+    , 3056+    , 3057+    , 3058+    , 3060+    , 3061+    , 3062+    , 3063+    , 3064+    , 3066+    , 3067+    , 3068+    , 3069+    , 3070+    , 3071+    , 3072+    , 3073+    , 3074+    , 3075+    , 3080+    , 3081+    , 3082+    , 3083+    , 3085+    , 3086+    , 3088+    , 3089+    , 3090+    , 3091+    , 3096+    , 3097+    , 3098+    , 3099+    , 3100+    , 3101+    , 3102+    , 3104+    , 3105+    , 3106+    , 3107+    , 3112+    , 3113+    , 3114+    , 3115+    , 3117+    , 3118+    , 3119+    , 3120+    , 3121+    , 3122+    , 3123+    , 3128+    , 3129+    , 3130+    , 3131+    , 3133+    , 3134+    , 3135+    , 3136+    , 3137+    , 3138+    , 3139+    , 3142+    , 3143+    , 3144+    , 3145+    , 3146+    , 3147+    , 3148+    , 3149+    , 3150+    , 3151+    , 3152+    , 3153+    , 3154+    , 3155+    , 3158+    , 3159+    , 3160+    , 3161+    , 3162+    , 3163+    , 3164+    , 3165+    , 3166+    , 3167+    , 3168+    , 3169+    , 3170+    , 3171+    , 3174+    , 3175+    , 3176+    , 3177+    , 3178+    , 3179+    , 3180+    , 3181+    , 3182+    , 3183+    , 3184+    , 3185+    , 3186+    , 3187+    , 3190+    , 3191+    , 3192+    , 3193+    , 3194+    , 3195+    , 3196+    , 3197+    , 3198+    , 3199+    , 3200+    , 3201+    , 3202+    , 3203+    , 3204+    , 3205+    , 3206+    , 3207+    , 3208+    , 3209+    , 3210+    , 3211+    , 3212+    , 3213+    , 3214+    , 3215+    , 3216+    , 3217+    , 3218+    , 3219+    , 3220+    , 3221+    , 3222+    , 3223+    , 3224+    , 3225+    , 3226+    , 3227+    , 3228+    , 3229+    , 3230+    , 3231+    , 3232+    , 3233+    , 3234+    , 3235+    , 3236+    , 3237+    , 3238+    , 3239+    , 3240+    , 3241+    , 3242+    , 3243+    , 3244+    , 3245+    , 3246+    , 3247+    , 3248+    , 3249+    , 3250+    , 3251+    , 3252+    , 3253+    , 3254+    , 3255+    , 3256+    , 3257+    , 3258+    , 3259+    , 3260+    , 3261+    , 3262+    , 3263+    , 3264+    , 3265+    , 3266+    , 3267+    , 3268+    , 3269+    , 3272+    , 3273+    , 3274+    , 3275+    , 3277+    , 3278+    , 3280+    , 3281+    , 3282+    , 3283+    , 3284+    , 3285+    , 3288+    , 3289+    , 3290+    , 3291+    , 3293+    , 3294+    , 3295+    , 3296+    , 3297+    , 3298+    , 3299+    , 3304+    , 3305+    , 3306+    , 3307+    , 3308+    , 3309+    , 3310+    , 3311+    , 3312+    , 3313+    , 3314+    , 3315+    , 3320+    , 3321+    , 3322+    , 3323+    , 3325+    , 3326+    , 3327+    , 3330+    , 3332+    , 3333+    , 3334+    , 3335+    , 3336+    , 3337+    , 3338+    , 3339+    , 3340+    , 3341+    , 3342+    , 3343+    , 3346+    , 3348+    , 3349+    , 3350+    , 3351+    , 3352+    , 3353+    , 3354+    , 3355+    , 3356+    , 3357+    , 3358+    , 3359+    , 3362+    , 3364+    , 3365+    , 3366+    , 3367+    , 3368+    , 3369+    , 3370+    , 3371+    , 3372+    , 3373+    , 3374+    , 3375+    , 3378+    , 3380+    , 3381+    , 3382+    , 3383+    , 3384+    , 3385+    , 3386+    , 3387+    , 3388+    , 3389+    , 3390+    , 3391+    , 3394+    , 3396+    , 3397+    , 3398+    , 3399+    , 3400+    , 3401+    , 3402+    , 3403+    , 3404+    , 3405+    , 3406+    , 3407+    , 3410+    , 3412+    , 3413+    , 3414+    , 3415+    , 3416+    , 3417+    , 3418+    , 3419+    , 3420+    , 3421+    , 3422+    , 3423+    , 3426+    , 3428+    , 3429+    , 3430+    , 3431+    , 3432+    , 3433+    , 3434+    , 3435+    , 3436+    , 3437+    , 3438+    , 3439+    , 3442+    , 3444+    , 3445+    , 3446+    , 3447+    , 3448+    , 3449+    , 3450+    , 3451+    , 3452+    , 3453+    , 3454+    , 3455+    , 3456+    , 3457+    , 3460+    , 3461+    , 3462+    , 3463+    , 3464+    , 3465+    , 3466+    , 3467+    , 3468+    , 3469+    , 3470+    , 3471+    , 3472+    , 3473+    , 3476+    , 3477+    , 3478+    , 3479+    , 3480+    , 3481+    , 3482+    , 3483+    , 3484+    , 3485+    , 3486+    , 3487+    , 3492+    , 3493+    , 3494+    , 3495+    , 3496+    , 3497+    , 3498+    , 3499+    , 3500+    , 3501+    , 3502+    , 3503+    , 3508+    , 3509+    , 3510+    , 3511+    , 3512+    , 3513+    , 3514+    , 3515+    , 3516+    , 3517+    , 3518+    , 3519+    , 3520+    , 3521+    , 3524+    , 3525+    , 3526+    , 3527+    , 3528+    , 3529+    , 3530+    , 3531+    , 3532+    , 3533+    , 3534+    , 3535+    , 3536+    , 3537+    , 3540+    , 3541+    , 3542+    , 3543+    , 3544+    , 3545+    , 3546+    , 3547+    , 3548+    , 3549+    , 3550+    , 3551+    , 3552+    , 3556+    , 3557+    , 3558+    , 3559+    , 3560+    , 3561+    , 3562+    , 3563+    , 3564+    , 3565+    , 3566+    , 3567+    , 3568+    , 3572+    , 3573+    , 3574+    , 3575+    , 3576+    , 3577+    , 3578+    , 3579+    , 3580+    , 3581+    , 3582+    , 3583+    , 3584+    , 3585+    , 3586+    , 3587+    , 3588+    , 3589+    , 3590+    , 3591+    , 3592+    , 3593+    , 3594+    , 3595+    , 3596+    , 3597+    , 3598+    , 3599+    , 3600+    , 3601+    , 3602+    , 3603+    , 3604+    , 3605+    , 3606+    , 3607+    , 3608+    , 3609+    , 3610+    , 3611+    , 3612+    , 3613+    , 3614+    , 3615+    , 3616+    , 3617+    , 3618+    , 3619+    , 3620+    , 3621+    , 3622+    , 3623+    , 3624+    , 3625+    , 3626+    , 3627+    , 3628+    , 3629+    , 3630+    , 3631+    , 3632+    , 3633+    , 3634+    , 3635+    , 3636+    , 3637+    , 3638+    , 3639+    , 3640+    , 3641+    , 3642+    , 3643+    , 3644+    , 3645+    , 3646+    , 3647+    , 3648+    , 3649+    , 3650+    , 3651+    , 3652+    , 3653+    , 3654+    , 3655+    , 3656+    , 3657+    , 3658+    , 3659+    , 3660+    , 3661+    , 3662+    , 3663+    , 3664+    , 3665+    , 3666+    , 3667+    , 3668+    , 3669+    , 3670+    , 3671+    , 3672+    , 3673+    , 3674+    , 3675+    , 3676+    , 3677+    , 3678+    , 3679+    , 3680+    , 3681+    , 3682+    , 3683+    , 3684+    , 3685+    , 3686+    , 3687+    , 3688+    , 3689+    , 3690+    , 3691+    , 3692+    , 3693+    , 3694+    , 3695+    , 3696+    , 3697+    , 3698+    , 3699+    , 3700+    , 3701+    , 3702+    , 3703+    , 3704+    , 3705+    , 3706+    , 3707+    , 3708+    , 3709+    , 3710+    , 3711+    , 3712+    , 3713+    , 3714+    , 3715+    , 3716+    , 3717+    , 3718+    , 3719+    , 3720+    , 3721+    , 3722+    , 3723+    , 3724+    , 3725+    , 3726+    , 3727+    , 3728+    , 3729+    , 3730+    , 3731+    , 3732+    , 3733+    , 3734+    , 3735+    , 3736+    , 3737+    , 3738+    , 3739+    , 3740+    , 3741+    , 3742+    , 3743+    , 3744+    , 3745+    , 3746+    , 3747+    , 3748+    , 3749+    , 3750+    , 3751+    , 3752+    , 3753+    , 3754+    , 3755+    , 3756+    , 3757+    , 3758+    , 3759+    , 3760+    , 3761+    , 3762+    , 3763+    , 3764+    , 3765+    , 3766+    , 3767+    , 3768+    , 3769+    , 3770+    , 3771+    , 3772+    , 3773+    , 3774+    , 3775+    , 3776+    , 3777+    , 3778+    , 3779+    , 3780+    , 3781+    , 3782+    , 3783+    , 3784+    , 3785+    , 3786+    , 3787+    , 3788+    , 3789+    , 3790+    , 3791+    , 3792+    , 3793+    , 3794+    , 3795+    , 3796+    , 3797+    , 3798+    , 3799+    , 3800+    , 3801+    , 3802+    , 3803+    , 3804+    , 3805+    , 3806+    , 3807+    , 3808+    , 3809+    , 3810+    , 3811+    , 3812+    , 3813+    , 3814+    , 3815+    , 3816+    , 3817+    , 3818+    , 3819+    , 3820+    , 3821+    , 3822+    , 3823+    , 3824+    , 3825+    , 3826+    , 3827+    , 3828+    , 3829+    , 3830+    , 3831+    , 3832+    , 3833+    , 3834+    , 3835+    , 3836+    , 3837+    , 3838+    , 3839+    , 3840+    , 3841+    , 3842+    , 3843+    , 3844+    , 3845+    , 3846+    , 3847+    , 3852+    , 3853+    , 3854+    , 3855+    , 3856+    , 3857+    , 3858+    , 3859+    , 3860+    , 3861+    , 3862+    , 3863+    , 3868+    , 3869+    , 3870+    , 3871+    , 3872+    , 3873+    , 3874+    , 3875+    , 3876+    , 3877+    , 3878+    , 3879+    , 3882+    , 3883+    , 3884+    , 3885+    , 3886+    , 3887+    , 3890+    , 3892+    , 3893+    , 3894+    , 3895+    , 3898+    , 3899+    , 3900+    , 3901+    , 3902+    , 3903+    , 3904+    , 3905+    , 3906+    , 3907+    , 3908+    , 3909+    , 3910+    , 3911+    , 3912+    , 3913+    , 3914+    , 3915+    , 3916+    , 3917+    , 3918+    , 3919+    , 3920+    , 3921+    , 3922+    , 3923+    , 3924+    , 3925+    , 3926+    , 3927+    , 3928+    , 3929+    , 3930+    , 3931+    , 3932+    , 3933+    , 3934+    , 3935+    , 3936+    , 3937+    , 3938+    , 3939+    , 3940+    , 3941+    , 3942+    , 3943+    , 3944+    , 3945+    , 3946+    , 3947+    , 3948+    , 3949+    , 3950+    , 3951+    , 3952+    , 3953+    , 3954+    , 3955+    , 3956+    , 3957+    , 3958+    , 3959+    , 3960+    , 3961+    , 3962+    , 3963+    , 3964+    , 3965+    , 3966+    , 3967+    , 3968+    , 3969+    , 3970+    , 3971+    , 3972+    , 3973+    , 3974+    , 3975+    , 3976+    , 3977+    , 3978+    , 3979+    , 3980+    , 3981+    , 3982+    , 3983+    , 3984+    , 3985+    , 3986+    , 3987+    , 3988+    , 3989+    , 3990+    , 3991+    , 3992+    , 3993+    , 3994+    , 3995+    , 3996+    , 3997+    , 3998+    , 3999+    , 4000+    , 4001+    , 4002+    , 4003+    , 4004+    , 4005+    , 4006+    , 4007+    , 4008+    , 4009+    , 4010+    , 4011+    , 4012+    , 4013+    , 4014+    , 4015+    , 4016+    , 4017+    , 4018+    , 4019+    , 4020+    , 4021+    , 4022+    , 4023+    , 4024+    , 4025+    , 4026+    , 4027+    , 4028+    , 4029+    , 4030+    , 4031+    , 4032+    , 4033+    , 4034+    , 4035+    , 4036+    , 4037+    , 4038+    , 4039+    , 4040+    , 4041+    , 4044+    , 4045+    , 4046+    , 4047+    , 4048+    , 4049+    , 4050+    , 4051+    , 4052+    , 4053+    , 4054+    , 4055+    , 4056+    , 4057+    , 4060+    , 4061+    , 4062+    , 4063+    , 4064+    , 4065+    , 4066+    , 4067+    , 4068+    , 4069+    , 4070+    , 4071+    , 4072+    , 4074+    , 4075+    , 4076+    , 4077+    , 4078+    , 4079+    , 4080+    , 4081+    , 4084+    , 4085+    , 4086+    , 4087+    , 4088+    , 4090+    , 4091+    , 4092+    , 4093+    , 4094+    , 4095+    , 4098+    , 4100+    , 4101+    , 4102+    , 4103+    , 4104+    , 4105+    , 4106+    , 4107+    , 4108+    , 4109+    , 4110+    , 4111+    , 4113+    , 4114+    , 4115+    , 4116+    , 4117+    , 4118+    , 4119+    , 4124+    , 4125+    , 4126+    , 4127+    , 4128+    , 4130+    , 4132+    , 4133+    , 4134+    , 4135+    , 4138+    , 4139+    , 4140+    , 4141+    , 4142+    , 4143+    , 4146+    , 4148+    , 4149+    , 4150+    , 4151+    , 4152+    , 4153+    , 4154+    , 4155+    , 4156+    , 4157+    , 4158+    , 4159+    , 4160+    , 4161+    , 4162+    , 4163+    , 4164+    , 4165+    , 4166+    , 4167+    , 4168+    , 4169+    , 4170+    , 4171+    , 4172+    , 4173+    , 4174+    , 4175+    , 4176+    , 4177+    , 4178+    , 4179+    , 4180+    , 4181+    , 4182+    , 4183+    , 4184+    , 4185+    , 4186+    , 4187+    , 4188+    , 4189+    , 4190+    , 4191+    , 4192+    , 4193+    , 4194+    , 4195+    , 4196+    , 4197+    , 4198+    , 4199+    , 4200+    , 4201+    , 4202+    , 4203+    , 4204+    , 4205+    , 4206+    , 4207+    , 4208+    , 4209+    , 4210+    , 4211+    , 4212+    , 4213+    , 4214+    , 4215+    , 4216+    , 4217+    , 4218+    , 4219+    , 4220+    , 4221+    , 4222+    , 4223+    , 4224+    , 4225+    , 4226+    , 4227+    , 4228+    , 4229+    , 4230+    , 4231+    , 4232+    , 4233+    , 4234+    , 4235+    , 4236+    , 4237+    , 4238+    , 4239+    , 4240+    , 4241+    , 4242+    , 4243+    , 4244+    , 4245+    , 4246+    , 4247+    , 4248+    , 4249+    , 4250+    , 4251+    , 4252+    , 4253+    , 4254+    , 4255+    , 4256+    , 4257+    , 4258+    , 4259+    , 4260+    , 4261+    , 4262+    , 4263+    , 4264+    , 4265+    , 4266+    , 4267+    , 4268+    , 4269+    , 4270+    , 4271+    , 4272+    , 4273+    , 4274+    , 4275+    , 4276+    , 4277+    , 4278+    , 4279+    , 4280+    , 4281+    , 4282+    , 4283+    , 4284+    , 4285+    , 4286+    , 4287+    , 4288+    , 4289+    , 4290+    , 4291+    , 4292+    , 4293+    , 4294+    , 4295+    , 4296+    , 4297+    , 4298+    , 4299+    , 4300+    , 4301+    , 4302+    , 4303+    , 4304+    , 4305+    , 4306+    , 4307+    , 4308+    , 4309+    , 4310+    , 4311+    , 4312+    , 4313+    , 4314+    , 4315+    , 4316+    , 4317+    , 4318+    , 4319+    , 4320+    , 4321+    , 4322+    , 4323+    , 4324+    , 4325+    , 4326+    , 4327+    , 4328+    , 4329+    , 4330+    , 4331+    , 4332+    , 4333+    , 4334+    , 4335+    , 4336+    , 4337+    , 4338+    , 4339+    , 4340+    , 4341+    , 4342+    , 4343+    , 4344+    , 4345+    , 4346+    , 4347+    , 4348+    , 4349+    , 4350+    , 4351+    , 4352+    , 4353+    , 4354+    , 4355+    , 4356+    , 4359+    , 4360+    , 4361+    , 4362+    , 4363+    , 4364+    , 4365+    , 4366+    , 4367+    , 4368+    , 4369+    , 4370+    , 4371+    , 4372+    , 4375+    , 4376+    , 4377+    , 4378+    , 4379+    , 4380+    , 4381+    , 4382+    , 4383+    , 4384+    , 4385+    , 4386+    , 4387+    , 4388+    , 4389+    , 4390+    , 4391+    , 4392+    , 4393+    , 4394+    , 4395+    , 4396+    , 4397+    , 4398+    , 4399+    , 4400+    , 4401+    , 4402+    , 4403+    , 4404+    , 4405+    , 4406+    , 4407+    , 4408+    , 4409+    , 4410+    , 4411+    , 4412+    , 4413+    , 4414+    , 4415+    , 4416+    , 4417+    , 4418+    , 4419+    , 4420+    , 4421+    , 4422+    , 4424+    , 4425+    , 4426+    , 4427+    , 4428+    , 4429+    , 4430+    , 4431+    , 4432+    , 4433+    , 4434+    , 4435+    , 4436+    , 4437+    , 4438+    , 4440+    , 4441+    , 4442+    , 4443+    , 4444+    , 4445+    , 4446+    , 4447+    , 4448+    , 4449+    , 4450+    , 4451+    , 4452+    , 4453+    , 4454+    , 4455+    , 4456+    , 4457+    , 4458+    , 4459+    , 4460+    , 4461+    , 4462+    , 4463+    , 4464+    , 4465+    , 4466+    , 4467+    , 4468+    , 4469+    , 4470+    , 4471+    , 4472+    , 4473+    , 4474+    , 4475+    , 4476+    , 4477+    , 4478+    , 4479+    , 4480+    , 4481+    , 4482+    , 4483+    , 4484+    , 4485+    , 4486+    , 4487+    , 4488+    , 4489+    , 4490+    , 4491+    , 4492+    , 4493+    , 4494+    , 4495+    , 4496+    , 4497+    , 4498+    , 4499+    , 4500+    , 4501+    , 4502+    , 4503+    , 4504+    , 4505+    , 4506+    , 4507+    , 4508+    , 4509+    , 4510+    , 4511+    , 4512+    , 4513+    , 4514+    , 4515+    , 4516+    , 4517+    , 4518+    , 4519+    , 4520+    , 4521+    , 4522+    , 4523+    , 4524+    , 4525+    , 4526+    , 4527+    , 4528+    , 4529+    , 4530+    , 4531+    , 4532+    , 4533+    , 4534+    , 4535+    , 4536+    , 4537+    , 4538+    , 4539+    , 4540+    , 4541+    , 4542+    , 4543+    , 4544+    , 4545+    , 4546+    , 4547+    , 4548+    , 4549+    , 4550+    , 4551+    , 4552+    , 4553+    , 4554+    , 4555+    , 4556+    , 4557+    , 4558+    , 4559+    , 4560+    , 4561+    , 4562+    , 4563+    , 4564+    , 4565+    , 4566+    , 4567+    , 4568+    , 4569+    , 4570+    , 4571+    , 4572+    , 4573+    , 4574+    , 4575+    , 4576+    , 4577+    , 4578+    , 4579+    , 4580+    , 4581+    , 4582+    , 4583+    , 4584+    , 4585+    , 4586+    , 4587+    , 4588+    , 4589+    , 4590+    , 4591+    , 4592+    , 4593+    , 4594+    , 4595+    , 4596+    , 4597+    , 4598+    , 4599+    , 4600+    , 4601+    , 4602+    , 4603+    , 4604+    , 4605+    , 4606+    , 4607+    , 4608+    , 4609+    , 4610+    , 4611+    , 4612+    , 4613+    , 4614+    , 4615+    , 4616+    , 4617+    , 4618+    , 4619+    , 4620+    , 4621+    , 4622+    , 4623+    , 4624+    , 4625+    , 4626+    , 4627+    , 4628+    , 4629+    , 4630+    , 4631+    , 4632+    , 4633+    , 4634+    , 4635+    , 4636+    , 4637+    , 4638+    , 4639+    , 4640+    , 4641+    , 4642+    , 4643+    , 4644+    , 4645+    , 4646+    , 4647+    , 4648+    , 4649+    , 4650+    , 4651+    , 4652+    , 4653+    , 4654+    , 4655+    , 4656+    , 4657+    , 4658+    , 4659+    , 4660+    , 4661+    , 4662+    , 4663+    , 4664+    , 4665+    , 4666+    , 4667+    , 4668+    , 4669+    , 4670+    , 4671+    , 4672+    , 4673+    , 4674+    , 4675+    , 4676+    , 4677+    , 4678+    , 4679+    , 4680+    , 4681+    , 4682+    , 4683+    , 4684+    , 4685+    , 4686+    , 4687+    , 4688+    , 4689+    , 4690+    , 4691+    , 4692+    , 4693+    , 4694+    , 4695+    , 4696+    , 4697+    , 4698+    , 4699+    , 4700+    , 4701+    , 4702+    , 4703+    , 4704+    , 4705+    , 4706+    , 4707+    , 4708+    , 4709+    , 4710+    , 4711+    , 4712+    , 4713+    , 4714+    , 4715+    , 4716+    , 4717+    , 4718+    , 4719+    , 4720+    , 4721+    , 4722+    , 4723+    , 4724+    , 4725+    , 4726+    , 4727+    , 4728+    , 4729+    , 4730+    , 4731+    , 4732+    , 4733+    , 4734+    , 4735+    , 4736+    , 4737+    , 4738+    , 4739+    , 4740+    , 4741+    , 4742+    , 4743+    , 4744+    , 4745+    , 4746+    , 4747+    , 4748+    , 4749+    , 4750+    , 4751+    , 4752+    , 4753+    , 4754+    , 4755+    , 4756+    , 4757+    , 4758+    , 4759+    , 4760+    , 4761+    , 4762+    , 4763+    , 4764+    , 4765+    , 4766+    , 4767+    , 4768+    , 4769+    , 4770+    , 4771+    , 4772+    , 4773+    , 4774+    , 4775+    , 4776+    , 4777+    , 4778+    , 4779+    , 4780+    , 4781+    , 4782+    , 4783+    , 4784+    , 4785+    , 4786+    , 4787+    , 4788+    , 4789+    , 4790+    , 4791+    , 4792+    , 4793+    , 4794+    , 4795+    , 4796+    , 4797+    , 4798+    , 4799+    , 4800+    , 4801+    , 4802+    , 4803+    , 4804+    , 4805+    , 4806+    , 4807+    , 4808+    , 4809+    , 4810+    , 4811+    , 4812+    , 4813+    , 4814+    , 4815+    , 4816+    , 4817+    , 4818+    , 4819+    , 4820+    , 4821+    , 4822+    , 4823+    , 4824+    , 4825+    , 4826+    , 4827+    , 4828+    , 4829+    , 4830+    , 4831+    , 4832+    , 4833+    , 4834+    , 4835+    , 4836+    , 4837+    , 4838+    , 4839+    , 4840+    , 4841+    , 4842+    , 4843+    , 4844+    , 4845+    , 4846+    , 4847+    , 4848+    , 4849+    , 4850+    , 4851+    , 4852+    , 4853+    , 4854+    , 4855+    , 4856+    , 4857+    , 4858+    , 4859+    , 4860+    , 4861+    , 4862+    , 4863+    , 4864+    , 4865+    , 4866+    , 4867+    , 4868+    , 4869+    , 4870+    , 4871+    , 4872+    , 4873+    , 4874+    , 4875+    , 4876+    , 4877+    , 4878+    , 4879+    , 4880+    , 4881+    , 4882+    , 4883+    , 4884+    , 4885+    , 4886+    , 4887+    , 4888+    , 4889+    , 4890+    , 4891+    , 4892+    , 4893+    , 4894+    , 4895+    , 4896+    , 4897+    , 4898+    , 4899+    , 4900+    , 4901+    , 4902+    , 4903+    , 4904+    , 4905+    , 4906+    , 4907+    , 4908+    , 4909+    , 4910+    , 4911+    , 4912+    , 4913+    , 4914+    , 4915+    , 4916+    , 4917+    , 4918+    , 4919+    , 4920+    , 4921+    , 4922+    , 4923+    , 4924+    , 4925+    , 4926+    , 4927+    , 4928+    , 4929+    , 4930+    , 4931+    , 4932+    , 4933+    , 4934+    , 4935+    , 4936+    , 4937+    , 4938+    , 4939+    , 4940+    , 4941+    , 4942+    , 4943+    , 4944+    , 4945+    , 4946+    , 4947+    , 4948+    , 4949+    , 4950+    , 4951+    , 4952+    , 4953+    , 4954+    , 4955+    , 4956+    , 4957+    , 4958+    , 4959+    , 4960+    , 4961+    , 4962+    , 4963+    , 4964+    , 4965+    , 4966+    , 4967+    , 4968+    , 4969+    , 4970+    , 4971+    , 4972+    , 4973+    , 4974+    , 4975+    , 4976+    , 4977+    , 4978+    , 4979+    , 4980+    , 4981+    , 4982+    , 4983+    , 4984+    , 4985+    , 4986+    , 4987+    , 4988+    , 4989+    , 4990+    , 4991+    , 4992+    , 4993+    , 4994+    , 4995+    , 4996+    , 4997+    , 4998+    , 4999+    , 5000+    , 5001+    , 5002+    , 5003+    , 5004+    , 5005+    , 5006+    , 5007+    , 5008+    , 5009+    , 5010+    , 5011+    , 5012+    , 5013+    , 5014+    , 5015+    , 5016+    , 5017+    , 5018+    , 5019+    , 5020+    , 5021+    , 5022+    , 5023+    , 5024+    , 5025+    , 5026+    , 5027+    , 5028+    , 5029+    , 5030+    , 5031+    , 5032+    , 5033+    , 5034+    , 5035+    , 5036+    , 5037+    , 5038+    , 5039+    , 5040+    , 5041+    , 5042+    , 5043+    , 5044+    , 5045+    , 5046+    , 5047+    , 5048+    , 5049+    , 5050+    , 5051+    , 5052+    , 5053+    , 5054+    , 5055+    , 5056+    , 5057+    , 5058+    , 5059+    , 5060+    , 5061+    , 5062+    , 5063+    , 5064+    , 5065+    , 5066+    , 5067+    , 5068+    , 5069+    , 5070+    , 5071+    , 5072+    , 5073+    , 5074+    , 5075+    , 5076+    , 5077+    , 5078+    , 5079+    , 5080+    , 5081+    , 5082+    , 5083+    , 5084+    , 5085+    , 5086+    , 5087+    , 5088+    , 5089+    , 5090+    , 5091+    , 5092+    , 5093+    , 5094+    , 5095+    , 5096+    , 5097+    , 5098+    , 5099+    , 5100+    , 5101+    , 5102+    , 5103+    , 5104+    , 5105+    , 5106+    , 5107+    , 5108+    , 5109+    , 5110+    , 5111+    , 5112+    , 5113+    , 5114+    , 5115+    , 5116+    , 5117+    , 5118+    , 5119+    , 5120+    , 5121+    , 5122+    , 5123+    , 5124+    , 5125+    , 5126+    , 5127+    , 5128+    , 5129+    , 5130+    , 5131+    , 5132+    , 5133+    , 5134+    , 5135+    , 5136+    , 5137+    , 5138+    , 5139+    , 5140+    , 5141+    , 5142+    , 5143+    , 5144+    , 5145+    , 5146+    , 5147+    , 5148+    , 5149+    , 5150+    , 5151+    , 5152+    , 5153+    , 5154+    , 5155+    , 5156+    , 5157+    , 5158+    , 5159+    , 5160+    , 5161+    , 5162+    , 5163+    , 5164+    , 5165+    , 5166+    , 5167+    , 5168+    , 5169+    , 5170+    , 5171+    , 5172+    , 5173+    , 5174+    , 5175+    , 5176+    , 5177+    , 5178+    , 5179+    , 5180+    , 5181+    , 5182+    , 5183+    , 5184+    , 5185+    , 5186+    , 5187+    , 5188+    , 5189+    , 5190+    , 5191+    , 5192+    , 5193+    , 5194+    , 5195+    , 5196+    , 5197+    , 5198+    , 5199+    , 5200+    , 5201+    , 5202+    , 5203+    , 5204+    , 5205+    , 5206+    , 5207+    , 5208+    , 5209+    , 5210+    , 5211+    , 5212+    , 5213+    , 5214+    , 5215+    , 5216+    , 5217+    , 5218+    , 5219+    , 5220+    , 5221+    , 5222+    , 5223+    , 5224+    , 5225+    , 5226+    , 5227+    , 5228+    , 5229+    , 5230+    , 5231+    , 5232+    , 5233+    , 5234+    , 5235+    , 5236+    , 5237+    , 5238+    , 5239+    , 5240+    , 5241+    , 5242+    , 5243+    , 5244+    , 5245+    , 5246+    , 5247+    , 5248+    , 5249+    , 5250+    , 5251+    , 5252+    , 5253+    , 5254+    , 5255+    , 5256+    , 5257+    , 5258+    , 5259+    , 5260+    , 5261+    , 5262+    , 5263+    , 5264+    , 5265+    , 5266+    , 5267+    , 5268+    , 5269+    , 5270+    , 5271+    , 5272+    , 5273+    , 5274+    , 5275+    , 5276+    , 5277+    , 5278+    , 5279+    , 5280+    , 5281+    , 5282+    , 5283+    , 5284+    , 5285+    , 5286+    , 5287+    , 5288+    , 5289+    , 5290+    , 5291+    , 5292+    , 5293+    , 5294+    , 5295+    , 5296+    , 5297+    , 5298+    , 5299+    , 5300+    , 5301+    , 5302+    , 5303+    , 5304+    , 5305+    , 5306+    , 5307+    , 5308+    , 5309+    , 5310+    , 5311+    , 5312+    , 5313+    , 5314+    , 5315+    , 5316+    , 5317+    , 5318+    , 5319+    , 5320+    , 5321+    , 5322+    , 5323+    , 5324+    , 5325+    , 5326+    , 5327+    , 5328+    , 5329+    , 5330+    , 5331+    , 5332+    , 5333+    , 5334+    , 5335+    , 5336+    , 5337+    , 5338+    , 5339+    , 5340+    , 5341+    , 5342+    , 5343+    , 5344+    , 5345+    , 5346+    , 5347+    , 5348+    , 5349+    , 5350+    , 5351+    , 5352+    , 5353+    , 5354+    , 5355+    , 5356+    , 5357+    , 5358+    , 5359+    , 5360+    , 5361+    , 5362+    , 5363+    , 5364+    , 5365+    , 5366+    , 5367+    , 5368+    , 5369+    , 5370+    , 5371+    , 5372+    , 5373+    , 5374+    , 5375+    , 5376+    , 5377+    , 5378+    , 5379+    , 5380+    , 5381+    , 5383+    , 5384+    , 5385+    , 5386+    , 5387+    , 5389+    , 5390+    , 5391+    , 5392+    , 5393+    , 5394+    , 5395+    , 5396+    , 5398+    , 5399+    , 5400+    , 5401+    , 5402+    , 5403+    , 5404+    , 5405+    , 5406+    , 5408+    , 5409+    , 5410+    , 5411+    , 5412+    , 5413+    , 5414+    , 5415+    , 5416+    , 5417+    , 5418+    , 5419+    , 5420+    , 5421+    , 5422+    , 5423+    , 5424+    , 5425+    , 5426+    , 5427+    , 5428+    , 5429+    , 5430+    , 5431+    , 5432+    , 5433+    , 5434+    , 5435+    , 5436+    , 5437+    , 5438+    , 5439+    , 5440+    , 5441+    , 5442+    , 5443+    , 5444+    , 5445+    , 5446+    , 5448+    , 5449+    , 5450+    , 5451+    , 5452+    , 5453+    , 5454+    , 5456+    , 5457+    , 5458+    , 5459+    , 5460+    , 5461+    , 5462+    , 5463+    , 5464+    , 5465+    , 5466+    , 5467+    , 5468+    , 5469+    , 5470+    , 5471+    , 5472+    , 5473+    , 5474+    , 5475+    , 5476+    , 5477+    , 5478+    , 5479+    , 5480+    , 5481+    , 5482+    , 5483+    , 5484+    , 5485+    , 5486+    , 5487+    , 5488+    , 5489+    , 5490+    , 5491+    , 5492+    , 5493+    , 5494+    , 5495+    , 5496+    , 5497+    , 5498+    , 5499+    , 5500+    , 5501+    , 5502+    , 5503+    , 5504+    , 5505+    , 5506+    , 5507+    , 5508+    , 5509+    , 5510+    , 5511+    , 5512+    , 5513+    , 5514+    , 5515+    , 5516+    , 5517+    , 5518+    , 5519+    , 5520+    , 5521+    , 5522+    , 5523+    , 5524+    , 5525+    , 5526+    , 5527+    , 5528+    , 5529+    , 5530+    , 5531+    , 5532+    , 5533+    , 5534+    , 5535+    , 5536+    , 5537+    , 5538+    , 5539+    , 5540+    , 5541+    , 5542+    , 5543+    , 5544+    , 5545+    , 5546+    , 5547+    , 5548+    , 5549+    , 5550+    , 5551+    , 5552+    , 5553+    , 5554+    , 5555+    , 5556+    , 5557+    , 5558+    , 5559+    , 5560+    , 5561+    , 5562+    , 5563+    , 5564+    , 5565+    , 5566+    , 5567+    , 5568+    , 5569+    , 5570+    , 5571+    , 5572+    , 5573+    , 5574+    , 5575+    , 5576+    , 5577+    , 5578+    , 5579+    , 5580+    , 5581+    , 5582+    , 5583+    , 5584+    , 5585+    , 5586+    , 5587+    , 5588+    , 5589+    , 5590+    , 5591+    , 5592+    , 5593+    , 5594+    , 5595+    , 5596+    , 5597+    , 5598+    , 5599+    , 5600+    , 5601+    , 5602+    , 5603+    , 5604+    , 5605+    , 5606+    , 5607+    , 5608+    , 5609+    , 5610+    , 5611+    , 5612+    , 5613+    , 5614+    , 5615+    , 5616+    , 5617+    , 5618+    , 5619+    , 5620+    , 5621+    , 5622+    , 5623+    , 5624+    , 5625+    , 5626+    , 5627+    , 5628+    , 5629+    , 5630+    , 5631+    , 5632+    , 5633+    , 5634+    , 5635+    , 5636+    , 5637+    , 5638+    , 5639+    , 5640+    , 5641+    , 5642+    , 5643+    , 5644+    , 5645+    , 5646+    , 5647+    , 5648+    , 5649+    , 5650+    , 5651+    , 5652+    , 5653+    , 5654+    , 5655+    , 5656+    , 5657+    , 5658+    , 5659+    , 5660+    , 5661+    , 5662+    , 5663+    , 5664+    , 5665+    , 5666+    , 5667+    , 5668+    , 5669+    , 5670+    , 5671+    , 5672+    , 5673+    , 5674+    , 5675+    , 5676+    , 5677+    , 5678+    , 5679+    , 5680+    , 5681+    , 5682+    , 5683+    , 5684+    , 5685+    , 5686+    , 5687+    , 5688+    , 5689+    , 5690+    , 5691+    , 5692+    , 5693+    , 5694+    , 5695+    , 5696+    , 5697+    , 5698+    , 5699+    , 5700+    , 5701+    , 5702+    , 5703+    , 5704+    , 5705+    , 5706+    , 5707+    , 5708+    , 5709+    , 5710+    , 5711+    , 5712+    , 5713+    , 5714+    , 5715+    , 5716+    , 5717+    , 5718+    , 5719+    , 5720+    , 5721+    , 5722+    , 5723+    , 5724+    , 5725+    , 5726+    , 5727+    , 5728+    , 5729+    , 5730+    , 5731+    , 5732+    , 5733+    , 5734+    , 5735+    , 5736+    , 5737+    , 5738+    , 5739+    , 5740+    , 5741+    , 5742+    , 5743+    , 5744+    , 5745+    , 5746+    , 5747+    , 5748+    , 5749+    , 5750+    , 5751+    , 5752+    , 5753+    , 5754+    , 5755+    , 5756+    , 5757+    , 5758+    , 5759+    , 5760+    , 5761+    , 5762+    , 5763+    , 5764+    , 5765+    , 5766+    , 5767+    , 5768+    , 5769+    , 5770+    , 5771+    , 5772+    , 5773+    , 5774+    , 5775+    , 5776+    , 5777+    , 5778+    , 5779+    , 5780+    , 5781+    , 5782+    , 5783+    , 5784+    , 5785+    , 5786+    , 5787+    , 5788+    , 5789+    , 5790+    , 5791+    , 5792+    , 5793+    , 5794+    , 5795+    , 5796+    , 5797+    , 5798+    , 5799+    , 5800+    , 5801+    , 5802+    , 5803+    , 5804+    , 5805+    , 5806+    , 5807+    , 5808+    , 5809+    , 5810+    , 5811+    , 5812+    , 5813+    , 5814+    , 5815+    , 5816+    , 5817+    , 5818+    , 5819+    , 5820+    , 5821+    , 5822+    , 5823+    , 5824+    , 5825+    , 5826+    , 5827+    , 5828+    , 5829+    , 5830+    , 5831+    , 5832+    , 5833+    , 5834+    , 5835+    , 5836+    , 5837+    , 5838+    , 5839+    , 5840+    , 5841+    , 5842+    , 5843+    , 5844+    , 5845+    , 5846+    , 5847+    , 5848+    , 5849+    , 5850+    , 5851+    , 5852+    , 5853+    , 5854+    , 5855+    , 5856+    , 5857+    , 5858+    , 5859+    , 5860+    , 5861+    , 5862+    , 5863+    , 5864+    , 5865+    , 5866+    , 5867+    , 5868+    , 5869+    , 5870+    , 5871+    , 5872+    , 5873+    , 5874+    , 5875+    , 5876+    , 5877+    , 5878+    , 5879+    , 5880+    , 5881+    , 5882+    , 5883+    , 5884+    , 5885+    , 5886+    , 5887+    , 5888+    , 5889+    , 5890+    , 5891+    , 5892+    , 5893+    , 5894+    , 5895+    , 5896+    , 5897+    , 5898+    , 5899+    , 5900+    , 5901+    , 5902+    , 5903+    , 5904+    , 5905+    , 5906+    , 5907+    , 5908+    , 5909+    , 5910+    , 5911+    , 5912+    , 5913+    , 5914+    , 5915+    , 5916+    , 5917+    , 5918+    , 5919+    , 5920+    , 5921+    , 5922+    , 5923+    , 5924+    , 5925+    , 5926+    , 5927+    , 5928+    , 5929+    , 5930+    , 5931+    , 5932+    , 5933+    , 5934+    , 5935+    , 5936+    , 5937+    , 5938+    , 5939+    , 5940+    , 5941+    , 5942+    , 5943+    , 5944+    , 5945+    , 5946+    , 5947+    , 5948+    , 5949+    , 5950+    , 5951+    , 5952+    , 5953+    , 5954+    , 5955+    , 5956+    , 5957+    , 5958+    , 5959+    , 5960+    , 5961+    , 5962+    , 5963+    , 5964+    , 5965+    , 5966+    , 5967+    , 5968+    , 5969+    , 5970+    , 5971+    , 5972+    , 5973+    , 5974+    , 5975+    , 5976+    , 5977+    , 5978+    , 5979+    , 5980+    , 5981+    , 5982+    , 5983+    , 5984+    , 5985+    , 5986+    , 5987+    , 5988+    , 5989+    , 5990+    , 5991+    , 5992+    , 5993+    , 5994+    , 5995+    , 5996+    , 5997+    , 5998+    , 5999+    , 6000+    , 6001+    , 6002+    , 6003+    , 6004+    , 6005+    , 6006+    , 6007+    , 6008+    , 6009+    , 6010+    , 6011+    , 6012+    , 6013+    , 6014+    , 6015+    , 6016+    , 6017+    , 6018+    , 6019+    , 6020+    , 6021+    , 6022+    , 6023+    , 6024+    , 6025+    , 6026+    , 6027+    , 6028+    , 6029+    , 6030+    , 6031+    , 6032+    , 6033+    , 6034+    , 6035+    , 6036+    , 6037+    , 6038+    , 6039+    , 6040+    , 6041+    , 6042+    , 6043+    , 6044+    , 6045+    , 6046+    , 6047+    , 6048+    , 6049+    , 6050+    , 6051+    , 6052+    , 6053+    , 6054+    , 6055+    , 6056+    , 6057+    , 6058+    , 6059+    , 6060+    , 6061+    , 6062+    , 6063+    , 6064+    , 6065+    , 6066+    , 6067+    , 6068+    , 6069+    , 6070+    , 6071+    , 6072+    , 6073+    , 6074+    , 6075+    , 6076+    , 6077+    , 6078+    , 6079+    , 6080+    , 6081+    , 6082+    , 6083+    , 6084+    , 6085+    , 6086+    , 6087+    , 6088+    , 6089+    , 6090+    , 6091+    , 6092+    , 6093+    , 6094+    , 6095+    , 6096+    , 6097+    , 6098+    , 6099+    , 6100+    , 6101+    , 6102+    , 6103+    , 6104+    , 6105+    , 6106+    , 6107+    , 6108+    , 6109+    , 6110+    , 6111+    , 6112+    , 6113+    , 6114+    , 6115+    , 6116+    , 6117+    , 6118+    , 6119+    , 6120+    , 6121+    , 6122+    , 6123+    , 6124+    , 6125+    , 6126+    , 6127+    , 6128+    , 6129+    , 6130+    , 6131+    , 6132+    , 6133+    , 6134+    , 6135+    , 6136+    , 6137+    , 6138+    , 6139+    , 6140+    , 6141+    , 6142+    , 6143+    , 6144+    , 6145+    , 6146+    , 6147+    , 6148+    , 6149+    , 6150+    , 6151+    , 6152+    , 6153+    , 6154+    , 6155+    , 6156+    , 6157+    , 6158+    , 6159+    , 6160+    , 6161+    , 6162+    , 6163+    , 6164+    , 6165+    , 6166+    , 6167+    , 6169+    , 6171+    , 6172+    , 6173+    , 6174+    , 6175+    , 6176+    , 6177+    , 6178+    , 6179+    , 6180+    , 6181+    , 6182+    , 6183+    , 6184+    , 6186+    , 6187+    , 6188+    , 6189+    , 6190+    , 6191+    , 6193+    , 6194+    , 6195+    , 6196+    , 6197+    , 6198+    , 6199+    , 6200+    , 6201+    , 6202+    , 6203+    , 6204+    , 6205+    , 6206+    , 6207+    , 6208+    , 6209+    , 6210+    , 6211+    , 6212+    , 6213+    , 6214+    , 6215+    , 6216+    , 6217+    , 6218+    , 6219+    , 6220+    , 6221+    , 6222+    , 6223+    , 6224+    , 6225+    , 6226+    , 6227+    , 6228+    , 6229+    , 6230+    , 6231+    , 6232+    , 6233+    , 6234+    , 6235+    , 6236+    , 6237+    , 6238+    , 6239+    , 6240+    , 6241+    , 6242+    , 6243+    , 6244+    , 6245+    , 6246+    , 6247+    , 6248+    , 6249+    , 6250+    , 6251+    , 6252+    , 6253+    , 6254+    , 6255+    , 6256+    , 6257+    , 6258+    , 6259+    , 6260+    , 6261+    , 6262+    , 6263+    , 6264+    , 6265+    , 6266+    , 6267+    , 6268+    , 6269+    , 6270+    , 6271+    , 6272+    , 6273+    , 6274+    , 6275+    , 6276+    , 6277+    , 6278+    , 6279+    , 6280+    , 6281+    , 6282+    , 6283+    , 6284+    , 6285+    , 6286+    , 6287+    , 6288+    , 6289+    , 6290+    , 6291+    , 6292+    , 6293+    , 6294+    , 6295+    , 6296+    , 6297+    , 6298+    , 6299+    , 6300+    , 6301+    , 6302+    , 6303+    , 6304+    , 6305+    , 6306+    , 6307+    , 6308+    , 6309+    , 6310+    , 6311+    , 6312+    , 6313+    , 6314+    , 6315+    , 6316+    , 6317+    , 6318+    , 6319+    , 6320+    , 6321+    , 6322+    , 6323+    , 6324+    , 6325+    , 6326+    , 6327+    , 6328+    , 6329+    , 6330+    , 6331+    , 6332+    , 6333+    , 6334+    , 6335+    , 6336+    , 6337+    , 6338+    , 6339+    , 6340+    , 6341+    , 6342+    , 6343+    , 6344+    , 6345+    , 6346+    , 6347+    , 6348+    , 6349+    , 6350+    , 6351+    , 6352+    , 6353+    , 6354+    , 6355+    , 6356+    , 6357+    , 6358+    , 6359+    , 6360+    , 6361+    , 6362+    , 6363+    , 6364+    , 6365+    , 6366+    , 6367+    , 6368+    , 6369+    , 6370+    , 6371+    , 6372+    , 6373+    , 6374+    , 6375+    , 6376+    , 6377+    , 6378+    , 6379+    , 6380+    , 6381+    , 6382+    , 6383+    , 6384+    , 6385+    , 6386+    , 6387+    , 6388+    , 6389+    , 6390+    , 6391+    , 6392+    , 6393+    , 6394+    , 6395+    , 6396+    , 6397+    , 6398+    , 6399+    , 6400+    , 6401+    , 6402+    , 6403+    , 6404+    , 6407+    , 6408+    , 6409+    , 6410+    , 6411+    , 6413+    , 6414+    , 6416+    , 6417+    , 6418+    , 6419+    , 6420+    , 6421+    , 6423+    , 6424+    , 6425+    , 6426+    , 6427+    , 6429+    , 6430+    , 6431+    , 6432+    , 6433+    , 6434+    , 6435+    , 6436+    , 6438+    , 6439+    , 6440+    , 6441+    , 6442+    , 6443+    , 6444+    , 6445+    , 6446+    , 6447+    , 6448+    , 6449+    , 6450+    , 6451+    , 6452+    , 6455+    , 6456+    , 6457+    , 6458+    , 6459+    , 6461+    , 6462+    , 6463+    , 6464+    , 6465+    , 6466+    , 6467+    , 6468+    , 6469+    , 6470+    , 6472+    , 6473+    , 6474+    , 6475+    , 6476+    , 6477+    , 6478+    , 6480+    , 6481+    , 6482+    , 6483+    , 6484+    , 6485+    , 6486+    , 6488+    , 6489+    , 6490+    , 6491+    , 6492+    , 6493+    , 6494+    , 6496+    , 6497+    , 6498+    , 6499+    , 6500+    , 6501+    , 6502+    , 6503+    , 6504+    , 6505+    , 6506+    , 6507+    , 6508+    , 6509+    , 6510+    , 6511+    , 6512+    , 6513+    , 6514+    , 6515+    , 6516+    , 6517+    , 6518+    , 6520+    , 6521+    , 6522+    , 6523+    , 6524+    , 6525+    , 6526+    , 6527+    , 6528+    , 6529+    , 6530+    , 6531+    , 6532+    , 6533+    , 6534+    , 6535+    , 6536+    , 6537+    , 6538+    , 6539+    , 6540+    , 6541+    , 6542+    , 6543+    , 6544+    , 6545+    , 6546+    , 6547+    , 6548+    , 6549+    , 6550+    , 6551+    , 6552+    , 6553+    , 6554+    , 6555+    , 6556+    , 6557+    , 6558+    , 6559+    , 6560+    , 6561+    , 6562+    , 6563+    , 6564+    , 6565+    , 6566+    , 6567+    , 6568+    , 6569+    , 6570+    , 6571+    , 6572+    , 6573+    , 6574+    , 6575+    , 6576+    , 6577+    , 6578+    , 6579+    , 6580+    , 6581+    , 6582+    , 6583+    , 6584+    , 6585+    , 6586+    , 6587+    , 6588+    , 6589+    , 6590+    , 6591+    , 6592+    , 6593+    , 6594+    , 6595+    , 6596+    , 6597+    , 6598+    , 6599+    , 6600+    , 6601+    , 6602+    , 6603+    , 6604+    , 6605+    , 6606+    , 6607+    , 6608+    , 6609+    , 6610+    , 6611+    , 6612+    , 6613+    , 6614+    , 6615+    , 6616+    , 6617+    , 6618+    , 6619+    , 6620+    , 6621+    , 6622+    , 6623+    , 6624+    , 6625+    , 6626+    , 6627+    , 6628+    , 6629+    , 6630+    , 6631+    , 6632+    , 6633+    , 6634+    , 6635+    , 6636+    , 6637+    , 6638+    , 6639+    , 6640+    , 6641+    , 6642+    , 6643+    , 6644+    , 6645+    , 6646+    , 6647+    , 6648+    , 6649+    , 6650+    , 6651+    , 6652+    , 6653+    , 6654+    , 6655+    , 6656+    , 6657+    , 6658+    , 6659+    , 6660+    , 6661+    , 6662+    , 6663+    , 6664+    , 6665+    , 6666+    , 6667+    , 6668+    , 6669+    , 6670+    , 6671+    , 6672+    , 6673+    , 6674+    , 6675+    , 6676+    , 6677+    , 6678+    , 6679+    , 6680+    , 6681+    , 6682+    , 6683+    , 6684+    , 6685+    , 6686+    , 6687+    , 6688+    , 6689+    , 6690+    , 6691+    , 6692+    , 6693+    , 6694+    , 6695+    , 6696+    , 6697+    , 6698+    , 6699+    , 6700+    , 6701+    , 6702+    , 6703+    , 6704+    , 6705+    , 6706+    , 6707+    , 6708+    , 6709+    , 6710+    , 6711+    , 6712+    , 6713+    , 6714+    , 6715+    , 6716+    , 6717+    , 6718+    , 6719+    , 6720+    , 6721+    , 6722+    , 6723+    , 6724+    , 6725+    , 6726+    , 6727+    , 6728+    , 6729+    , 6730+    , 6731+    , 6732+    , 6733+    , 6734+    , 6735+    , 6736+    , 6737+    , 6738+    , 6739+    , 6740+    , 6741+    , 6742+    , 6743+    , 6744+    , 6745+    , 6746+    , 6747+    , 6748+    , 6749+    , 6750+    , 6751+    , 6752+    , 6753+    , 6754+    , 6755+    , 6756+    , 6757+    , 6758+    , 6759+    , 6760+    , 6761+    , 6762+    , 6763+    , 6764+    , 6765+    , 6766+    , 6767+    , 6768+    , 6769+    , 6770+    , 6771+    , 6772+    , 6773+    , 6774+    , 6775+    , 6776+    , 6777+    , 6778+    , 6779+    , 6780+    , 6781+    , 6782+    , 6783+    , 6784+    , 6785+    , 6786+    , 6787+    , 6788+    , 6789+    , 6790+    , 6791+    , 6792+    , 6793+    , 6794+    , 6795+    , 6796+    , 6797+    , 6798+    , 6799+    , 6800+    , 6801+    , 6802+    , 6803+    , 6804+    , 6805+    , 6806+    , 6807+    , 6808+    , 6809+    , 6810+    , 6811+    , 6812+    , 6813+    , 6814+    , 6815+    , 6816+    , 6817+    , 6818+    , 6819+    , 6820+    , 6821+    , 6822+    , 6823+    , 6824+    , 6825+    , 6826+    , 6827+    , 6828+    , 6829+    , 6830+    , 6831+    , 6832+    , 6833+    , 6834+    , 6835+    , 6836+    , 6837+    , 6838+    , 6839+    , 6840+    , 6841+    , 6842+    , 6843+    , 6844+    , 6845+    , 6846+    , 6847+    , 6848+    , 6849+    , 6850+    , 6851+    , 6852+    , 6853+    , 6854+    , 6855+    , 6856+    , 6857+    , 6858+    , 6859+    , 6860+    , 6861+    , 6862+    , 6863+    , 6864+    , 6865+    , 6866+    , 6867+    , 6868+    , 6869+    , 6870+    , 6871+    , 6872+    , 6873+    , 6874+    , 6875+    , 6876+    , 6877+    , 6878+    , 6879+    , 6880+    , 6881+    , 6882+    , 6883+    , 6884+    , 6885+    , 6886+    , 6887+    , 6888+    , 6889+    , 6890+    , 6891+    , 6892+    , 6893+    , 6894+    , 6895+    , 6896+    , 6897+    , 6898+    , 6899+    , 6900+    , 6901+    , 6902+    , 6903+    , 6904+    , 6905+    , 6906+    , 6907+    , 6908+    , 6909+    , 6910+    , 6911+    , 6912+    , 6913+    , 6914+    , 6915+    , 6916+    , 6917+    , 6918+    , 6919+    , 6920+    , 6921+    , 6922+    , 6923+    , 6924+    , 6925+    , 6926+    , 6927+    , 6928+    , 6929+    , 6930+    , 6931+    , 6932+    , 6933+    , 6934+    , 6935+    , 6936+    , 6937+    , 6938+    , 6939+    , 6940+    , 6941+    , 6942+    , 6943+    , 6944+    , 6945+    , 6946+    , 6947+    , 6948+    , 6949+    , 6950+    , 6951+    , 6952+    , 6953+    , 6954+    , 6955+    , 6956+    , 6957+    , 6958+    , 6959+    , 6960+    , 6961+    , 6962+    , 6963+    , 6964+    , 6965+    , 6966+    , 6967+    , 6968+    , 6969+    , 6970+    , 6971+    , 6972+    , 6973+    , 6974+    , 6975+    , 6976+    , 6977+    , 6978+    , 6979+    , 6980+    , 6981+    , 6982+    , 6983+    , 6984+    , 6985+    , 6986+    , 6987+    , 6988+    , 6989+    , 6990+    , 6991+    , 6992+    , 6993+    , 6994+    , 6995+    , 6996+    , 6997+    , 6998+    , 6999+    , 7000+    , 7001+    , 7002+    , 7003+    , 7004+    , 7005+    , 7006+    , 7007+    , 7008+    , 7009+    , 7010+    , 7011+    , 7012+    , 7013+    , 7014+    , 7015+    , 7016+    , 7017+    , 7018+    , 7019+    , 7020+    , 7021+    , 7022+    , 7023+    , 7024+    , 7025+    , 7026+    , 7027+    , 7028+    , 7029+    , 7030+    , 7031+    , 7032+    , 7033+    , 7034+    , 7035+    , 7036+    , 7037+    , 7038+    , 7039+    , 7040+    , 7041+    , 7042+    , 7043+    , 7044+    , 7045+    , 7046+    , 7047+    , 7048+    , 7049+    , 7050+    , 7051+    , 7052+    , 7053+    , 7054+    , 7055+    , 7056+    , 7057+    , 7058+    , 7059+    , 7060+    , 7061+    , 7062+    , 7063+    , 7064+    , 7065+    , 7066+    , 7067+    , 7068+    , 7069+    , 7070+    , 7071+    , 7072+    , 7073+    , 7074+    , 7075+    , 7076+    , 7077+    , 7078+    , 7079+    , 7080+    , 7081+    , 7082+    , 7083+    , 7084+    , 7085+    , 7086+    , 7087+    , 7088+    , 7089+    , 7090+    , 7091+    , 7092+    , 7093+    , 7094+    , 7095+    , 7096+    , 7097+    , 7098+    , 7099+    , 7100+    , 7101+    , 7102+    , 7103+    , 7104+    , 7105+    , 7106+    , 7107+    , 7108+    , 7109+    , 7110+    , 7111+    , 7112+    , 7113+    , 7114+    , 7115+    , 7116+    , 7117+    , 7118+    , 7119+    , 7120+    , 7121+    , 7122+    , 7123+    , 7124+    , 7125+    , 7126+    , 7127+    , 7128+    , 7129+    , 7130+    , 7131+    , 7132+    , 7133+    , 7134+    , 7135+    , 7136+    , 7137+    , 7138+    , 7139+    , 7140+    , 7141+    , 7142+    , 7143+    , 7144+    , 7145+    , 7146+    , 7147+    , 7148+    , 7149+    , 7150+    , 7151+    , 7152+    , 7153+    , 7154+    , 7155+    , 7156+    , 7157+    , 7158+    , 7159+    , 7160+    , 7161+    , 7162+    , 7163+    , 7164+    , 7165+    , 7166+    , 7167+    , 7170+    , 7172+    , 7173+    , 7174+    , 7175+    , 7176+    , 7177+    , 7178+    , 7179+    , 7180+    , 7181+    , 7182+    , 7183+    , 7184+    , 7185+    , 7186+    , 7187+    , 7188+    , 7189+    , 7190+    , 7191+    , 7196+    , 7197+    , 7198+    , 7199+    , 7201+    , 7202+    , 7203+    , 7204+    , 7205+    , 7206+    , 7207+    , 7210+    , 7211+    , 7212+    , 7213+    , 7214+    , 7215+    , 7218+    , 7220+    , 7221+    , 7222+    , 7223+    , 7224+    , 7225+    , 7226+    , 7227+    , 7228+    , 7229+    , 7230+    , 7231+    , 7232+    , 7233+    , 7234+    , 7235+    , 7236+    , 7237+    , 7238+    , 7239+    , 7240+    , 7241+    , 7242+    , 7243+    , 7244+    , 7245+    , 7246+    , 7247+    , 7248+    , 7249+    , 7250+    , 7251+    , 7252+    , 7253+    , 7254+    , 7255+    , 7256+    , 7257+    , 7258+    , 7259+    , 7260+    , 7261+    , 7262+    , 7263+    , 7264+    , 7265+    , 7266+    , 7267+    , 7268+    , 7269+    , 7270+    , 7271+    , 7272+    , 7273+    , 7274+    , 7275+    , 7276+    , 7277+    , 7278+    , 7279+    , 7280+    , 7281+    , 7282+    , 7283+    , 7284+    , 7285+    , 7286+    , 7287+    , 7288+    , 7289+    , 7290+    , 7291+    , 7292+    , 7293+    , 7294+    , 7295+    , 7296+    , 7297+    , 7298+    , 7299+    , 7300+    , 7301+    , 7302+    , 7303+    , 7304+    , 7305+    , 7306+    , 7307+    , 7308+    , 7309+    , 7310+    , 7311+    , 7312+    , 7313+    , 7314+    , 7315+    , 7316+    , 7317+    , 7318+    , 7319+    , 7320+    , 7321+    , 7322+    , 7323+    , 7324+    , 7325+    , 7326+    , 7327+    , 7328+    , 7329+    , 7330+    , 7331+    , 7332+    , 7333+    , 7334+    , 7335+    , 7336+    , 7337+    , 7338+    , 7339+    , 7340+    , 7341+    , 7342+    , 7343+    , 7344+    , 7345+    , 7346+    , 7347+    , 7348+    , 7349+    , 7350+    , 7351+    , 7352+    , 7353+    , 7354+    , 7355+    , 7356+    , 7357+    , 7358+    , 7359+    , 7360+    , 7361+    , 7362+    , 7363+    , 7364+    , 7365+    , 7366+    , 7367+    , 7368+    , 7369+    , 7370+    , 7371+    , 7372+    , 7373+    , 7374+    , 7375+    , 7376+    , 7377+    , 7378+    , 7379+    , 7380+    , 7381+    , 7382+    , 7383+    , 7384+    , 7385+    , 7386+    , 7387+    , 7388+    , 7389+    , 7390+    , 7391+    , 7392+    , 7393+    , 7394+    , 7395+    , 7396+    , 7397+    , 7398+    , 7399+    , 7400+    , 7401+    , 7402+    , 7403+    , 7404+    , 7405+    , 7406+    , 7407+    , 7408+    , 7409+    , 7410+    , 7411+    , 7412+    , 7413+    , 7414+    , 7415+    , 7416+    , 7417+    , 7418+    , 7419+    , 7420+    , 7421+    , 7422+    , 7423+    , 7424+    , 7425+    , 7426+    , 7427+    , 7428+    , 7431+    , 7432+    , 7433+    , 7434+    , 7435+    , 7436+    , 7437+    , 7438+    , 7439+    , 7440+    , 7441+    , 7442+    , 7443+    , 7444+    , 7447+    , 7448+    , 7449+    , 7450+    , 7451+    , 7452+    , 7453+    , 7454+    , 7455+    , 7456+    , 7457+    , 7458+    , 7459+    , 7460+    , 7463+    , 7464+    , 7465+    , 7466+    , 7467+    , 7468+    , 7469+    , 7470+    , 7471+    , 7472+    , 7473+    , 7474+    , 7475+    , 7476+    , 7479+    , 7480+    , 7481+    , 7482+    , 7483+    , 7484+    , 7485+    , 7486+    , 7487+    , 7488+    , 7489+    , 7490+    , 7491+    , 7492+    , 7493+    , 7494+    , 7496+    , 7497+    , 7498+    , 7499+    , 7500+    , 7501+    , 7502+    , 7503+    , 7504+    , 7505+    , 7506+    , 7507+    , 7508+    , 7509+    , 7510+    , 7512+    , 7513+    , 7514+    , 7515+    , 7516+    , 7517+    , 7518+    , 7519+    , 7520+    , 7521+    , 7522+    , 7523+    , 7524+    , 7525+    , 7526+    , 7528+    , 7529+    , 7530+    , 7531+    , 7532+    , 7533+    , 7534+    , 7535+    , 7536+    , 7537+    , 7538+    , 7539+    , 7540+    , 7541+    , 7542+    , 7544+    , 7545+    , 7546+    , 7547+    , 7548+    , 7549+    , 7550+    , 7551+    , 7552+    , 7553+    , 7554+    , 7555+    , 7556+    , 7557+    , 7558+    , 7559+    , 7560+    , 7561+    , 7562+    , 7563+    , 7564+    , 7565+    , 7566+    , 7567+    , 7568+    , 7569+    , 7570+    , 7571+    , 7572+    , 7573+    , 7574+    , 7575+    , 7576+    , 7577+    , 7578+    , 7579+    , 7580+    , 7581+    , 7582+    , 7583+    , 7584+    , 7585+    , 7586+    , 7587+    , 7588+    , 7589+    , 7590+    , 7591+    , 7592+    , 7593+    , 7594+    , 7595+    , 7596+    , 7597+    , 7598+    , 7599+    , 7600+    , 7601+    , 7602+    , 7603+    , 7604+    , 7605+    , 7606+    , 7607+    , 7608+    , 7609+    , 7610+    , 7611+    , 7612+    , 7613+    , 7614+    , 7615+    , 7616+    , 7617+    , 7618+    , 7619+    , 7620+    , 7621+    , 7622+    , 7623+    , 7624+    , 7625+    , 7626+    , 7627+    , 7628+    , 7629+    , 7630+    , 7631+    , 7632+    , 7633+    , 7634+    , 7635+    , 7636+    , 7637+    , 7638+    , 7639+    , 7640+    , 7641+    , 7642+    , 7643+    , 7644+    , 7645+    , 7646+    , 7647+    , 7648+    , 7649+    , 7650+    , 7651+    , 7652+    , 7653+    , 7654+    , 7655+    , 7656+    , 7657+    , 7658+    , 7659+    , 7660+    , 7661+    , 7662+    , 7663+    , 7664+    , 7665+    , 7666+    , 7667+    , 7668+    , 7669+    , 7670+    , 7671+    , 7672+    , 7673+    , 7674+    , 7675+    , 7676+    , 7677+    , 7678+    , 7679+    , 7680+    , 7681+    , 7682+    , 7683+    , 7684+    , 7685+    , 7686+    , 7687+    , 7688+    , 7689+    , 7690+    , 7691+    , 7692+    , 7693+    , 7694+    , 7695+    , 7696+    , 7697+    , 7698+    , 7699+    , 7700+    , 7701+    , 7702+    , 7703+    , 7704+    , 7705+    , 7706+    , 7707+    , 7708+    , 7709+    , 7710+    , 7711+    , 7712+    , 7713+    , 7714+    , 7715+    , 7716+    , 7717+    , 7718+    , 7719+    , 7720+    , 7721+    , 7722+    , 7723+    , 7724+    , 7725+    , 7726+    , 7727+    , 7728+    , 7729+    , 7730+    , 7731+    , 7732+    , 7733+    , 7734+    , 7735+    , 7736+    , 7737+    , 7738+    , 7739+    , 7740+    , 7741+    , 7742+    , 7743+    , 7744+    , 7745+    , 7746+    , 7747+    , 7748+    , 7749+    , 7750+    , 7751+    , 7752+    , 7753+    , 7754+    , 7755+    , 7756+    , 7757+    , 7758+    , 7759+    , 7760+    , 7761+    , 7762+    , 7763+    , 7764+    , 7765+    , 7766+    , 7767+    , 7768+    , 7769+    , 7770+    , 7771+    , 7772+    , 7773+    , 7774+    , 7775+    , 7776+    , 7777+    , 7778+    , 7779+    , 7780+    , 7781+    , 7782+    , 7783+    , 7784+    , 7785+    , 7786+    , 7787+    , 7788+    , 7789+    , 7790+    , 7791+    , 7792+    , 7793+    , 7794+    , 7795+    , 7796+    , 7797+    , 7798+    , 7799+    , 7800+    , 7801+    , 7802+    , 7803+    , 7804+    , 7805+    , 7806+    , 7807+    , 7808+    , 7809+    , 7810+    , 7811+    , 7812+    , 7813+    , 7814+    , 7815+    , 7816+    , 7817+    , 7818+    , 7819+    , 7820+    , 7821+    , 7822+    , 7823+    , 7824+    , 7825+    , 7826+    , 7827+    , 7828+    , 7829+    , 7830+    , 7831+    , 7832+    , 7833+    , 7834+    , 7835+    , 7836+    , 7837+    , 7838+    , 7839+    , 7840+    , 7841+    , 7842+    , 7843+    , 7844+    , 7845+    , 7846+    , 7847+    , 7848+    , 7849+    , 7850+    , 7851+    , 7852+    , 7853+    , 7854+    , 7855+    , 7856+    , 7857+    , 7858+    , 7859+    , 7860+    , 7861+    , 7862+    , 7863+    , 7864+    , 7865+    , 7866+    , 7867+    , 7868+    , 7869+    , 7870+    , 7871+    , 7872+    , 7873+    , 7874+    , 7875+    , 7876+    , 7877+    , 7878+    , 7879+    , 7880+    , 7881+    , 7882+    , 7883+    , 7884+    , 7885+    , 7886+    , 7887+    , 7888+    , 7889+    , 7890+    , 7891+    , 7892+    , 7893+    , 7894+    , 7895+    , 7896+    , 7897+    , 7898+    , 7899+    , 7900+    , 7901+    , 7902+    , 7903+    , 7904+    , 7905+    , 7906+    , 7907+    , 7908+    , 7909+    , 7910+    , 7911+    , 7912+    , 7913+    , 7914+    , 7915+    , 7916+    , 7917+    , 7918+    , 7919+    , 7920+    , 7921+    , 7922+    , 7923+    , 7924+    , 7925+    , 7926+    , 7927+    , 7928+    , 7929+    , 7930+    , 7931+    , 7932+    , 7933+    , 7934+    , 7935+    , 7936+    , 7937+    , 7938+    , 7939+    , 7940+    , 7941+    , 7942+    , 7943+    , 7944+    , 7945+    , 7946+    , 7947+    , 7948+    , 7949+    , 7950+    , 7951+    , 7952+    , 7953+    , 7954+    , 7955+    , 7956+    , 7957+    , 7958+    , 7959+    , 7960+    , 7961+    , 7962+    , 7963+    , 7964+    , 7965+    , 7966+    , 7967+    , 7968+    , 7969+    , 7970+    , 7971+    , 7972+    , 7973+    , 7974+    , 7975+    , 7976+    , 7977+    , 7978+    , 7979+    , 7980+    , 7981+    , 7982+    , 7983+    , 7984+    , 7985+    , 7986+    , 7987+    , 7988+    , 7989+    , 7990+    , 7991+    , 7992+    , 7993+    , 7994+    , 7995+    , 7996+    , 7997+    , 7998+    , 7999+    , 8000+    , 8001+    , 8002+    , 8003+    , 8004+    , 8005+    , 8006+    , 8007+    , 8008+    , 8009+    , 8010+    , 8011+    , 8012+    , 8013+    , 8014+    , 8015+    , 8016+    , 8017+    , 8018+    , 8019+    , 8020+    , 8021+    , 8022+    , 8023+    , 8024+    , 8025+    , 8026+    , 8027+    , 8028+    , 8029+    , 8030+    , 8031+    , 8032+    , 8033+    , 8034+    , 8035+    , 8036+    , 8037+    , 8038+    , 8039+    , 8040+    , 8041+    , 8042+    , 8043+    , 8044+    , 8045+    , 8046+    , 8047+    , 8048+    , 8049+    , 8050+    , 8051+    , 8052+    , 8053+    , 8054+    , 8055+    , 8056+    , 8057+    , 8058+    , 8059+    , 8060+    , 8061+    , 8062+    , 8063+    , 8064+    , 8065+    , 8066+    , 8067+    , 8068+    , 8069+    , 8070+    , 8071+    , 8072+    , 8073+    , 8074+    , 8075+    , 8076+    , 8077+    , 8078+    , 8079+    , 8080+    , 8081+    , 8082+    , 8083+    , 8084+    , 8085+    , 8086+    , 8087+    , 8088+    , 8089+    , 8090+    , 8091+    , 8092+    , 8093+    , 8094+    , 8095+    , 8096+    , 8097+    , 8098+    , 8099+    , 8100+    , 8101+    , 8102+    , 8103+    , 8104+    , 8105+    , 8106+    , 8107+    , 8108+    , 8109+    , 8110+    , 8111+    , 8112+    , 8113+    , 8114+    , 8115+    , 8116+    , 8117+    , 8118+    , 8119+    , 8120+    , 8121+    , 8122+    , 8123+    , 8124+    , 8125+    , 8126+    , 8127+    , 8128+    , 8129+    , 8130+    , 8131+    , 8132+    , 8133+    , 8134+    , 8135+    , 8136+    , 8137+    , 8138+    , 8139+    , 8140+    , 8141+    , 8142+    , 8143+    , 8144+    , 8145+    , 8146+    , 8147+    , 8148+    , 8149+    , 8150+    , 8151+    , 8152+    , 8153+    , 8154+    , 8155+    , 8156+    , 8157+    , 8158+    , 8159+    , 8160+    , 8161+    , 8162+    , 8163+    , 8164+    , 8165+    , 8166+    , 8167+    , 8168+    , 8169+    , 8170+    , 8171+    , 8172+    , 8173+    , 8174+    , 8175+    , 8176+    , 8177+    , 8178+    , 8179+    , 8180+    , 8181+    , 8182+    , 8183+    , 8184+    , 8185+    , 8186+    , 8187+    , 8188+    , 8189+    , 8190+    , 8191+    , 8194+    , 8196+    , 8197+    , 8198+    , 8199+    , 8200+    , 8201+    , 8202+    , 8203+    , 8204+    , 8205+    , 8206+    , 8207+    , 8208+    , 8210+    , 8212+    , 8213+    , 8214+    , 8215+    , 8220+    , 8221+    , 8222+    , 8223+    , 8225+    , 8226+    , 8227+    , 8228+    , 8229+    , 8230+    , 8231+    , 8234+    , 8235+    , 8236+    , 8237+    , 8238+    , 8239+    , 8242+    , 8244+    , 8245+    , 8246+    , 8247+    , 8248+    , 8249+    , 8250+    , 8251+    , 8252+    , 8253+    , 8254+    , 8255+    , 8256+    , 8257+    , 8258+    , 8259+    , 8260+    , 8261+    , 8262+    , 8263+    , 8264+    , 8265+    , 8266+    , 8267+    , 8268+    , 8269+    , 8270+    , 8271+    , 8272+    , 8273+    , 8274+    , 8275+    , 8276+    , 8277+    , 8278+    , 8279+    , 8280+    , 8281+    , 8282+    , 8283+    , 8284+    , 8285+    , 8286+    , 8287+    , 8288+    , 8289+    , 8290+    , 8291+    , 8292+    , 8293+    , 8294+    , 8295+    , 8296+    , 8297+    , 8298+    , 8299+    , 8300+    , 8301+    , 8302+    , 8303+    , 8304+    , 8305+    , 8306+    , 8307+    , 8308+    , 8309+    , 8310+    , 8311+    , 8312+    , 8313+    , 8314+    , 8315+    , 8316+    , 8317+    , 8318+    , 8319+    , 8320+    , 8321+    , 8322+    , 8324+    , 8325+    , 8326+    , 8328+    , 8329+    , 8330+    , 8331+    , 8332+    , 8333+    , 8334+    , 8335+    , 8336+    , 8337+    , 8338+    , 8340+    , 8341+    , 8342+    , 8344+    , 8345+    , 8346+    , 8347+    , 8348+    , 8349+    , 8350+    , 8351+    , 8352+    , 8353+    , 8354+    , 8355+    , 8356+    , 8357+    , 8358+    , 8360+    , 8361+    , 8362+    , 8363+    , 8364+    , 8365+    , 8366+    , 8367+    , 8368+    , 8369+    , 8370+    , 8372+    , 8373+    , 8374+    , 8375+    , 8376+    , 8377+    , 8378+    , 8379+    , 8380+    , 8381+    , 8382+    , 8383+    , 8392+    , 8393+    , 8394+    , 8395+    , 8397+    , 8398+    , 8401+    , 8403+    , 8412+    , 8413+    , 8414+    , 8416+    , 8418+    , 8426+    , 8427+    , 8429+    , 8430+    , 8431+    , 8436+    , 8437+    , 8438+    , 8439+    , 8440+    , 8441+    , 8442+    , 8443+    , 8445+    , 8446+    , 8447+    , 8448+    , 8449+    , 8450+    , 8451+    , 8452+    , 8455+    , 8456+    , 8457+    , 8458+    , 8459+    , 8460+    , 8461+    , 8462+    , 8463+    , 8464+    , 8465+    , 8466+    , 8467+    , 8468+    , 8471+    , 8472+    , 8473+    , 8474+    , 8475+    , 8476+    , 8477+    , 8478+    , 8479+    , 8480+    , 8481+    , 8482+    , 8483+    , 8484+    , 8485+    , 8486+    , 8487+    , 8488+    , 8489+    , 8490+    , 8491+    , 8492+    , 8493+    , 8494+    , 8495+    , 8496+    , 8497+    , 8498+    , 8499+    , 8500+    , 8501+    , 8502+    , 8503+    , 8504+    , 8505+    , 8506+    , 8507+    , 8508+    , 8509+    , 8510+    , 8511+    , 8512+    , 8513+    , 8514+    , 8515+    , 8516+    , 8517+    , 8518+    , 8520+    , 8521+    , 8522+    , 8523+    , 8524+    , 8525+    , 8526+    , 8527+    , 8528+    , 8529+    , 8530+    , 8531+    , 8532+    , 8533+    , 8534+    , 8536+    , 8537+    , 8538+    , 8539+    , 8540+    , 8541+    , 8542+    , 8543+    , 8544+    , 8545+    , 8546+    , 8547+    , 8548+    , 8549+    , 8550+    , 8551+    , 8552+    , 8553+    , 8554+    , 8555+    , 8556+    , 8557+    , 8558+    , 8559+    , 8560+    , 8561+    , 8562+    , 8563+    , 8564+    , 8565+    , 8566+    , 8567+    , 8568+    , 8569+    , 8570+    , 8571+    , 8572+    , 8573+    , 8574+    , 8575+    , 8576+    , 8577+    , 8578+    , 8580+    , 8581+    , 8582+    , 8584+    , 8585+    , 8586+    , 8587+    , 8588+    , 8589+    , 8590+    , 8591+    , 8592+    , 8593+    , 8594+    , 8596+    , 8597+    , 8598+    , 8600+    , 8601+    , 8602+    , 8603+    , 8604+    , 8605+    , 8606+    , 8607+    , 8608+    , 8609+    , 8610+    , 8611+    , 8612+    , 8613+    , 8614+    , 8615+    , 8616+    , 8617+    , 8618+    , 8619+    , 8620+    , 8621+    , 8622+    , 8623+    , 8624+    , 8625+    , 8626+    , 8627+    , 8628+    , 8629+    , 8630+    , 8631+    , 8632+    , 8633+    , 8634+    , 8635+    , 8636+    , 8637+    , 8638+    , 8639+    , 8640+    , 8641+    , 8642+    , 8644+    , 8647+    , 8648+    , 8649+    , 8650+    , 8651+    , 8652+    , 8653+    , 8654+    , 8655+    , 8656+    , 8657+    , 8658+    , 8660+    , 8663+    , 8664+    , 8665+    , 8666+    , 8667+    , 8668+    , 8669+    , 8670+    , 8671+    , 8672+    , 8673+    , 8674+    , 8675+    , 8676+    , 8677+    , 8678+    , 8679+    , 8680+    , 8681+    , 8682+    , 8683+    , 8684+    , 8685+    , 8686+    , 8687+    , 8688+    , 8689+    , 8690+    , 8691+    , 8692+    , 8693+    , 8694+    , 8695+    , 8696+    , 8697+    , 8698+    , 8699+    , 8700+    , 8701+    , 8702+    , 8703+    , 8704+    , 8705+    , 8706+    , 8707+    , 8708+    , 8709+    , 8710+    , 8711+    , 8712+    , 8713+    , 8714+    , 8715+    , 8716+    , 8717+    , 8718+    , 8719+    , 8720+    , 8721+    , 8722+    , 8723+    , 8724+    , 8725+    , 8726+    , 8727+    , 8728+    , 8729+    , 8730+    , 8731+    , 8732+    , 8733+    , 8734+    , 8735+    , 8736+    , 8737+    , 8738+    , 8739+    , 8740+    , 8741+    , 8742+    , 8743+    , 8744+    , 8745+    , 8746+    , 8747+    , 8748+    , 8749+    , 8750+    , 8751+    , 8752+    , 8753+    , 8754+    , 8755+    , 8756+    , 8757+    , 8758+    , 8759+    , 8760+    , 8761+    , 8762+    , 8763+    , 8764+    , 8765+    , 8766+    , 8767+    , 8768+    , 8769+    , 8770+    , 8771+    , 8772+    , 8773+    , 8774+    , 8775+    , 8776+    , 8777+    , 8778+    , 8779+    , 8780+    , 8781+    , 8782+    , 8783+    , 8784+    , 8785+    , 8786+    , 8787+    , 8788+    , 8789+    , 8790+    , 8791+    , 8792+    , 8793+    , 8794+    , 8795+    , 8796+    , 8797+    , 8798+    , 8799+    , 8800+    , 8801+    , 8802+    , 8803+    , 8804+    , 8805+    , 8806+    , 8807+    , 8808+    , 8809+    , 8810+    , 8811+    , 8812+    , 8813+    , 8814+    , 8815+    , 8816+    , 8817+    , 8818+    , 8819+    , 8820+    , 8821+    , 8822+    , 8823+    , 8824+    , 8825+    , 8826+    , 8827+    , 8828+    , 8829+    , 8830+    , 8831+    , 8832+    , 8833+    , 8834+    , 8835+    , 8836+    , 8837+    , 8838+    , 8839+    , 8840+    , 8841+    , 8842+    , 8843+    , 8844+    , 8845+    , 8846+    , 8847+    , 8848+    , 8849+    , 8850+    , 8851+    , 8852+    , 8853+    , 8854+    , 8855+    , 8856+    , 8857+    , 8858+    , 8859+    , 8860+    , 8861+    , 8862+    , 8863+    , 8864+    , 8865+    , 8866+    , 8867+    , 8868+    , 8869+    , 8870+    , 8871+    , 8872+    , 8873+    , 8874+    , 8875+    , 8876+    , 8877+    , 8878+    , 8879+    , 8880+    , 8881+    , 8882+    , 8883+    , 8884+    , 8885+    , 8886+    , 8887+    , 8888+    , 8889+    , 8890+    , 8891+    , 8892+    , 8893+    , 8894+    , 8895+    , 8896+    , 8897+    , 8898+    , 8899+    , 8900+    , 8901+    , 8902+    , 8903+    , 8904+    , 8905+    , 8906+    , 8907+    , 8908+    , 8909+    , 8910+    , 8911+    , 8912+    , 8913+    , 8914+    , 8915+    , 8916+    , 8917+    , 8918+    , 8919+    , 8920+    , 8921+    , 8922+    , 8923+    , 8924+    , 8925+    , 8926+    , 8927+    , 8928+    , 8929+    , 8930+    , 8931+    , 8932+    , 8933+    , 8934+    , 8935+    , 8936+    , 8937+    , 8938+    , 8939+    , 8940+    , 8941+    , 8942+    , 8943+    , 8944+    , 8945+    , 8946+    , 8947+    , 8948+    , 8949+    , 8950+    , 8951+    , 8952+    , 8953+    , 8954+    , 8955+    , 8956+    , 8957+    , 8958+    , 8959+    , 8960+    , 8961+    , 8962+    , 8963+    , 8964+    , 8965+    , 8966+    , 8967+    , 8968+    , 8969+    , 8970+    , 8971+    , 8972+    , 8973+    , 8974+    , 8975+    , 8976+    , 8977+    , 8978+    , 8979+    , 8980+    , 8981+    , 8982+    , 8983+    , 8984+    , 8985+    , 8986+    , 8987+    , 8988+    , 8989+    , 8990+    , 8991+    , 8992+    , 8993+    , 8994+    , 8995+    , 8996+    , 8997+    , 8998+    , 8999+    , 9000+    , 9001+    , 9002+    , 9003+    , 9004+    , 9005+    , 9006+    , 9007+    , 9008+    , 9009+    , 9010+    , 9011+    , 9012+    , 9013+    , 9014+    , 9015+    , 9016+    , 9017+    , 9018+    , 9019+    , 9020+    , 9021+    , 9022+    , 9023+    , 9024+    , 9025+    , 9026+    , 9027+    , 9028+    , 9029+    , 9030+    , 9031+    , 9032+    , 9033+    , 9034+    , 9035+    , 9036+    , 9037+    , 9038+    , 9039+    , 9040+    , 9041+    , 9042+    , 9043+    , 9044+    , 9045+    , 9046+    , 9047+    , 9048+    , 9049+    , 9050+    , 9051+    , 9052+    , 9053+    , 9054+    , 9055+    , 9056+    , 9057+    , 9058+    , 9059+    , 9060+    , 9061+    , 9062+    , 9063+    , 9064+    , 9065+    , 9066+    , 9067+    , 9068+    , 9069+    , 9070+    , 9071+    , 9072+    , 9073+    , 9074+    , 9075+    , 9076+    , 9077+    , 9078+    , 9079+    , 9080+    , 9081+    , 9082+    , 9083+    , 9084+    , 9085+    , 9086+    , 9087+    , 9088+    , 9089+    , 9090+    , 9091+    , 9092+    , 9093+    , 9094+    , 9095+    , 9096+    , 9097+    , 9098+    , 9099+    , 9100+    , 9101+    , 9102+    , 9103+    , 9104+    , 9105+    , 9106+    , 9107+    , 9108+    , 9109+    , 9110+    , 9111+    , 9112+    , 9113+    , 9114+    , 9115+    , 9116+    , 9117+    , 9118+    , 9119+    , 9120+    , 9121+    , 9122+    , 9123+    , 9124+    , 9125+    , 9126+    , 9127+    , 9128+    , 9129+    , 9130+    , 9131+    , 9132+    , 9133+    , 9134+    , 9135+    , 9136+    , 9137+    , 9138+    , 9139+    , 9140+    , 9141+    , 9142+    , 9143+    , 9144+    , 9145+    , 9146+    , 9147+    , 9148+    , 9149+    , 9150+    , 9151+    , 9152+    , 9153+    , 9154+    , 9155+    , 9156+    , 9157+    , 9158+    , 9159+    , 9160+    , 9161+    , 9162+    , 9163+    , 9164+    , 9165+    , 9166+    , 9167+    , 9168+    , 9169+    , 9170+    , 9171+    , 9172+    , 9173+    , 9174+    , 9175+    , 9176+    , 9177+    , 9178+    , 9179+    , 9180+    , 9181+    , 9182+    , 9183+    , 9184+    , 9185+    , 9186+    , 9187+    , 9188+    , 9189+    , 9190+    , 9191+    , 9192+    , 9193+    , 9194+    , 9195+    , 9196+    , 9197+    , 9198+    , 9199+    , 9200+    , 9201+    , 9202+    , 9203+    , 9204+    , 9205+    , 9206+    , 9207+    , 9208+    , 9209+    , 9210+    , 9211+    , 9212+    , 9213+    , 9214+    , 9215+    , 9216+    , 9218+    , 9220+    , 9221+    , 9222+    , 9223+    , 9224+    , 9225+    , 9226+    , 9227+    , 9228+    , 9229+    , 9230+    , 9231+    , 9232+    , 9233+    , 9234+    , 9235+    , 9236+    , 9237+    , 9238+    , 9239+    , 9241+    , 9243+    , 9244+    , 9245+    , 9246+    , 9247+    , 9248+    , 9249+    , 9250+    , 9251+    , 9252+    , 9253+    , 9254+    , 9255+    , 9256+    , 9257+    , 9258+    , 9259+    , 9260+    , 9261+    , 9262+    , 9263+    , 9265+    , 9266+    , 9267+    , 9268+    , 9269+    , 9270+    , 9271+    , 9272+    , 9273+    , 9274+    , 9275+    , 9276+    , 9277+    , 9278+    , 9279+    , 9280+    , 9281+    , 9282+    , 9283+    , 9284+    , 9285+    , 9286+    , 9287+    , 9288+    , 9289+    , 9290+    , 9291+    , 9292+    , 9293+    , 9294+    , 9295+    , 9296+    , 9297+    , 9298+    , 9299+    , 9300+    , 9301+    , 9302+    , 9303+    , 9304+    , 9305+    , 9306+    , 9307+    , 9308+    , 9309+    , 9310+    , 9311+    , 9312+    , 9313+    , 9314+    , 9315+    , 9316+    , 9317+    , 9318+    , 9319+    , 9320+    , 9321+    , 9322+    , 9323+    , 9324+    , 9325+    , 9326+    , 9327+    , 9328+    , 9329+    , 9330+    , 9331+    , 9332+    , 9333+    , 9334+    , 9335+    , 9336+    , 9337+    , 9338+    , 9339+    , 9340+    , 9341+    , 9342+    , 9343+    , 9344+    , 9345+    , 9346+    , 9348+    , 9349+    , 9350+    , 9351+    , 9352+    , 9353+    , 9354+    , 9355+    , 9356+    , 9357+    , 9358+    , 9359+    , 9360+    , 9361+    , 9362+    , 9363+    , 9364+    , 9365+    , 9366+    , 9367+    , 9368+    , 9369+    , 9370+    , 9371+    , 9372+    , 9373+    , 9374+    , 9375+    , 9376+    , 9377+    , 9378+    , 9379+    , 9380+    , 9381+    , 9382+    , 9383+    , 9384+    , 9385+    , 9386+    , 9387+    , 9388+    , 9389+    , 9390+    , 9391+    , 9392+    , 9393+    , 9394+    , 9395+    , 9396+    , 9397+    , 9398+    , 9399+    , 9400+    , 9401+    , 9402+    , 9403+    , 9404+    , 9405+    , 9406+    , 9407+    , 9409+    , 9411+    , 9412+    , 9413+    , 9414+    , 9415+    , 9416+    , 9417+    , 9418+    , 9419+    , 9420+    , 9421+    , 9422+    , 9423+    , 9424+    , 9425+    , 9426+    , 9427+    , 9428+    , 9429+    , 9430+    , 9431+    , 9432+    , 9434+    , 9436+    , 9437+    , 9438+    , 9439+    , 9440+    , 9441+    , 9442+    , 9443+    , 9444+    , 9445+    , 9446+    , 9447+    , 9448+    , 9449+    , 9450+    , 9451+    , 9452+    , 9453+    , 9454+    , 9455+    , 9456+    , 9458+    , 9460+    , 9461+    , 9462+    , 9463+    , 9464+    , 9465+    , 9466+    , 9467+    , 9468+    , 9469+    , 9470+    , 9471+    , 9472+    , 9473+    , 9474+    , 9475+    , 9476+    , 9479+    , 9480+    , 9481+    , 9482+    , 9483+    , 9485+    , 9486+    , 9488+    , 9489+    , 9490+    , 9491+    , 9492+    , 9493+    , 9495+    , 9496+    , 9497+    , 9498+    , 9499+    , 9501+    , 9502+    , 9503+    , 9504+    , 9505+    , 9506+    , 9507+    , 9508+    , 9509+    , 9510+    , 9511+    , 9512+    , 9513+    , 9514+    , 9515+    , 9516+    , 9517+    , 9518+    , 9519+    , 9520+    , 9521+    , 9522+    , 9523+    , 9524+    , 9525+    , 9526+    , 9527+    , 9528+    , 9529+    , 9530+    , 9531+    , 9533+    , 9534+    , 9535+    , 9536+    , 9537+    , 9538+    , 9539+    , 9540+    , 9541+    , 9542+    , 9544+    , 9545+    , 9546+    , 9547+    , 9548+    , 9549+    , 9550+    , 9552+    , 9553+    , 9554+    , 9555+    , 9556+    , 9557+    , 9558+    , 9560+    , 9561+    , 9562+    , 9563+    , 9564+    , 9565+    , 9566+    , 9568+    , 9569+    , 9570+    , 9571+    , 9572+    , 9573+    , 9574+    , 9575+    , 9576+    , 9577+    , 9578+    , 9579+    , 9580+    , 9581+    , 9582+    , 9583+    , 9584+    , 9585+    , 9586+    , 9587+    , 9588+    , 9589+    , 9590+    , 9591+    , 9592+    , 9593+    , 9594+    , 9595+    , 9596+    , 9597+    , 9598+    , 9599+    , 9600+    , 9601+    , 9602+    , 9603+    , 9604+    , 9605+    , 9606+    , 9608+    , 9609+    , 9610+    , 9611+    , 9612+    , 9613+    , 9614+    , 9616+    , 9617+    , 9618+    , 9620+    , 9621+    , 9622+    , 9623+    , 9624+    , 9625+    , 9626+    , 9628+    , 9629+    , 9630+    , 9631+    , 9632+    , 9633+    , 9634+    , 9635+    , 9636+    , 9637+    , 9638+    , 9639+    , 9640+    , 9641+    , 9642+    , 9643+    , 9644+    , 9645+    , 9646+    , 9647+    , 9648+    , 9649+    , 9650+    , 9652+    , 9653+    , 9654+    , 9655+    , 9656+    , 9657+    , 9658+    , 9659+    , 9660+    , 9661+    , 9662+    , 9663+    , 9664+    , 9665+    , 9666+    , 9668+    , 9671+    , 9672+    , 9673+    , 9674+    , 9675+    , 9677+    , 9678+    , 9680+    , 9681+    , 9682+    , 9683+    , 9684+    , 9686+    , 9687+    , 9688+    , 9689+    , 9691+    , 9692+    , 9693+    , 9694+    , 9696+    , 9697+    , 9698+    , 9699+    , 9700+    , 9701+    , 9702+    , 9703+    , 9704+    , 9705+    , 9706+    , 9707+    , 9708+    , 9709+    , 9710+    , 9711+    , 9712+    , 9713+    , 9714+    , 9715+    , 9716+    , 9717+    , 9718+    , 9719+    , 9720+    , 9721+    , 9722+    , 9723+    , 9725+    , 9726+    , 9727+    , 9728+    , 9729+    , 9730+    , 9731+    , 9732+    , 9733+    , 9734+    , 9735+    , 9736+    , 9737+    , 9738+    , 9739+    , 9740+    , 9741+    , 9742+    , 9743+    , 9744+    , 9745+    , 9746+    , 9747+    , 9748+    , 9749+    , 9750+    , 9751+    , 9752+    , 9753+    , 9754+    , 9755+    , 9756+    , 9757+    , 9758+    , 9759+    , 9760+    , 9761+    , 9762+    , 9763+    , 9764+    , 9765+    , 9766+    , 9767+    , 9768+    , 9769+    , 9770+    , 9771+    , 9772+    , 9773+    , 9774+    , 9775+    , 9776+    , 9777+    , 9778+    , 9779+    , 9780+    , 9781+    , 9782+    , 9783+    , 9784+    , 9785+    , 9786+    , 9787+    , 9788+    , 9789+    , 9790+    , 9791+    , 9792+    , 9793+    , 9794+    , 9795+    , 9796+    , 9797+    , 9798+    , 9799+    , 9800+    , 9801+    , 9802+    , 9803+    , 9804+    , 9805+    , 9806+    , 9807+    , 9808+    , 9809+    , 9810+    , 9811+    , 9812+    , 9813+    , 9814+    , 9815+    , 9816+    , 9817+    , 9818+    , 9819+    , 9820+    , 9821+    , 9822+    , 9823+    , 9824+    , 9825+    , 9826+    , 9827+    , 9828+    , 9829+    , 9830+    , 9831+    , 9832+    , 9833+    , 9834+    , 9835+    , 9836+    , 9837+    , 9838+    , 9839+    , 9840+    , 9841+    , 9842+    , 9843+    , 9844+    , 9845+    , 9846+    , 9847+    , 9848+    , 9849+    , 9850+    , 9851+    , 9852+    , 9853+    , 9854+    , 9855+    , 9856+    , 9857+    , 9858+    , 9859+    , 9860+    , 9861+    , 9862+    , 9863+    , 9864+    , 9865+    , 9866+    , 9867+    , 9868+    , 9869+    , 9870+    , 9871+    , 9872+    , 9873+    , 9874+    , 9875+    , 9876+    , 9877+    , 9878+    , 9879+    , 9880+    , 9881+    , 9882+    , 9883+    , 9884+    , 9885+    , 9886+    , 9887+    , 9888+    , 9889+    , 9890+    , 9891+    , 9892+    , 9893+    , 9894+    , 9895+    , 9896+    , 9897+    , 9898+    , 9899+    , 9900+    , 9901+    , 9902+    , 9903+    , 9904+    , 9905+    , 9906+    , 9907+    , 9908+    , 9909+    , 9910+    , 9911+    , 9912+    , 9913+    , 9914+    , 9915+    , 9916+    , 9917+    , 9918+    , 9919+    , 9920+    , 9921+    , 9922+    , 9923+    , 9924+    , 9925+    , 9926+    , 9927+    , 9928+    , 9929+    , 9930+    , 9931+    , 9932+    , 9933+    , 9934+    , 9935+    , 9936+    , 9937+    , 9938+    , 9939+    , 9940+    , 9941+    , 9942+    , 9943+    , 9944+    , 9945+    , 9946+    , 9947+    , 9948+    , 9949+    , 9950+    , 9951+    , 9952+    , 9953+    , 9954+    , 9955+    , 9956+    , 9957+    , 9958+    , 9959+    , 9960+    , 9961+    , 9962+    , 9963+    , 9964+    , 9965+    , 9966+    , 9967+    , 9968+    , 9969+    , 9970+    , 9971+    , 9972+    , 9973+    , 9974+    , 9975+    , 9976+    , 9977+    , 9978+    , 9979+    , 9980+    , 9981+    , 9982+    , 9983+    , 9984+    , 9985+    , 9986+    , 9987+    , 9988+    , 9989+    , 9990+    , 9991+    , 9992+    , 9993+    , 9994+    , 9995+    , 9996+    , 9997+    , 9998+    , 9999+    , 10000+    , 10001+    , 10002+    , 10003+    , 10004+    , 10005+    , 10006+    , 10007+    , 10008+    , 10009+    , 10010+    , 10011+    , 10012+    , 10013+    , 10014+    , 10015+    , 10016+    , 10017+    , 10018+    , 10019+    , 10020+    , 10021+    , 10022+    , 10023+    , 10024+    , 10025+    , 10026+    , 10027+    , 10028+    , 10029+    , 10030+    , 10031+    , 10032+    , 10033+    , 10034+    , 10035+    , 10036+    , 10037+    , 10038+    , 10039+    , 10040+    , 10041+    , 10042+    , 10043+    , 10044+    , 10045+    , 10046+    , 10047+    , 10048+    , 10049+    , 10050+    , 10051+    , 10052+    , 10053+    , 10054+    , 10055+    , 10056+    , 10057+    , 10058+    , 10059+    , 10060+    , 10061+    , 10062+    , 10063+    , 10064+    , 10065+    , 10066+    , 10067+    , 10068+    , 10069+    , 10070+    , 10071+    , 10072+    , 10073+    , 10074+    , 10075+    , 10076+    , 10077+    , 10078+    , 10079+    , 10080+    , 10081+    , 10082+    , 10083+    , 10084+    , 10085+    , 10086+    , 10087+    , 10088+    , 10089+    , 10090+    , 10091+    , 10092+    , 10093+    , 10094+    , 10095+    , 10096+    , 10097+    , 10098+    , 10099+    , 10100+    , 10101+    , 10102+    , 10103+    , 10104+    , 10105+    , 10106+    , 10107+    , 10108+    , 10109+    , 10110+    , 10111+    , 10112+    , 10113+    , 10114+    , 10115+    , 10116+    , 10117+    , 10118+    , 10119+    , 10120+    , 10121+    , 10122+    , 10123+    , 10124+    , 10125+    , 10126+    , 10127+    , 10128+    , 10129+    , 10130+    , 10131+    , 10132+    , 10133+    , 10134+    , 10135+    , 10136+    , 10137+    , 10138+    , 10139+    , 10140+    , 10141+    , 10142+    , 10143+    , 10144+    , 10145+    , 10146+    , 10147+    , 10148+    , 10149+    , 10150+    , 10151+    , 10152+    , 10153+    , 10154+    , 10155+    , 10156+    , 10157+    , 10158+    , 10159+    , 10160+    , 10161+    , 10162+    , 10163+    , 10164+    , 10165+    , 10166+    , 10167+    , 10168+    , 10169+    , 10170+    , 10171+    , 10172+    , 10173+    , 10174+    , 10175+    , 10176+    , 10177+    , 10178+    , 10179+    , 10180+    , 10181+    , 10182+    , 10183+    , 10184+    , 10185+    , 10186+    , 10187+    , 10188+    , 10189+    , 10190+    , 10191+    , 10192+    , 10193+    , 10194+    , 10195+    , 10196+    , 10197+    , 10198+    , 10199+    , 10200+    , 10201+    , 10202+    , 10203+    , 10204+    , 10205+    , 10206+    , 10207+    , 10208+    , 10209+    , 10210+    , 10211+    , 10212+    , 10213+    , 10214+    , 10215+    , 10216+    , 10217+    , 10218+    , 10219+    , 10220+    , 10221+    , 10222+    , 10223+    , 10224+    , 10225+    , 10226+    , 10227+    , 10228+    , 10229+    , 10230+    , 10231+    , 10232+    , 10233+    , 10234+    , 10235+    , 10236+    , 10237+    , 10238+    , 10239+    , 10241+    , 10242+    , 10243+    , 10244+    , 10245+    , 10246+    , 10247+    , 10248+    , 10249+    , 10250+    , 10251+    , 10252+    , 10253+    , 10254+    , 10255+    , 10256+    , 10257+    , 10258+    , 10259+    , 10260+    , 10261+    , 10262+    , 10263+    , 10264+    , 10266+    , 10268+    , 10269+    , 10270+    , 10271+    , 10272+    , 10273+    , 10274+    , 10275+    , 10276+    , 10277+    , 10278+    , 10279+    , 10281+    , 10282+    , 10283+    , 10284+    , 10285+    , 10286+    , 10287+    , 10288+    , 10290+    , 10293+    , 10295+    , 10296+    , 10297+    , 10298+    , 10299+    , 10301+    , 10302+    , 10303+    , 10304+    , 10305+    , 10306+    , 10307+    , 10308+    , 10309+    , 10310+    , 10311+    , 10312+    , 10313+    , 10314+    , 10315+    , 10316+    , 10317+    , 10318+    , 10319+    , 10320+    , 10321+    , 10322+    , 10323+    , 10324+    , 10325+    , 10326+    , 10327+    , 10328+    , 10329+    , 10330+    , 10331+    , 10332+    , 10333+    , 10334+    , 10335+    , 10336+    , 10337+    , 10338+    , 10339+    , 10340+    , 10341+    , 10342+    , 10343+    , 10344+    , 10345+    , 10346+    , 10347+    , 10348+    , 10349+    , 10350+    , 10351+    , 10352+    , 10353+    , 10354+    , 10355+    , 10356+    , 10357+    , 10358+    , 10359+    , 10360+    , 10361+    , 10362+    , 10363+    , 10364+    , 10365+    , 10366+    , 10367+    , 10368+    , 10369+    , 10370+    , 10371+    , 10372+    , 10373+    , 10374+    , 10375+    , 10376+    , 10377+    , 10378+    , 10379+    , 10380+    , 10381+    , 10382+    , 10383+    , 10384+    , 10385+    , 10386+    , 10387+    , 10388+    , 10389+    , 10390+    , 10391+    , 10392+    , 10393+    , 10394+    , 10395+    , 10396+    , 10397+    , 10398+    , 10399+    , 10400+    , 10401+    , 10402+    , 10403+    , 10404+    , 10405+    , 10406+    , 10407+    , 10408+    , 10409+    , 10410+    , 10411+    , 10412+    , 10413+    , 10414+    , 10415+    , 10416+    , 10417+    , 10418+    , 10420+    , 10421+    , 10422+    , 10423+    , 10424+    , 10425+    , 10426+    , 10427+    , 10428+    , 10429+    , 10430+    , 10431+    , 10432+    , 10433+    , 10434+    , 10436+    , 10437+    , 10438+    , 10439+    , 10440+    , 10441+    , 10442+    , 10443+    , 10444+    , 10445+    , 10446+    , 10447+    , 10448+    , 10449+    , 10450+    , 10451+    , 10452+    , 10453+    , 10454+    , 10455+    , 10457+    , 10459+    , 10460+    , 10461+    , 10462+    , 10463+    , 10464+    , 10465+    , 10466+    , 10467+    , 10468+    , 10469+    , 10470+    , 10471+    , 10472+    , 10474+    , 10475+    , 10476+    , 10477+    , 10478+    , 10479+    , 10481+    , 10483+    , 10484+    , 10486+    , 10488+    , 10489+    , 10490+    , 10491+    , 10492+    , 10493+    , 10494+    , 10495+    , 10497+    , 10498+    , 10500+    , 10501+    , 10503+    , 10504+    , 10505+    , 10506+    , 10507+    , 10509+    , 10510+    , 10511+    , 10513+    , 10514+    , 10515+    , 10516+    , 10518+    , 10519+    , 10520+    , 10521+    , 10523+    , 10524+    , 10525+    , 10526+    , 10528+    , 10529+    , 10530+    , 10532+    , 10533+    , 10535+    , 10536+    , 10538+    , 10539+    , 10541+    , 10542+    , 10543+    , 10545+    , 10546+    , 10548+    , 10550+    , 10551+    , 10552+    , 10553+    , 10554+    , 10555+    , 10556+    , 10557+    , 10558+    , 10559+    , 10560+    , 10561+    , 10562+    , 10564+    , 10565+    , 10566+    , 10568+    , 10569+    , 10570+    , 10571+    , 10572+    , 10573+    , 10574+    , 10576+    , 10577+    , 10578+    , 10580+    , 10581+    , 10582+    , 10583+    , 10584+    , 10585+    , 10586+    , 10588+    , 10589+    , 10590+    , 10591+    , 10592+    , 10593+    , 10594+    , 10595+    , 10596+    , 10597+    , 10598+    , 10600+    , 10601+    , 10602+    , 10603+    , 10604+    , 10605+    , 10606+    , 10607+    , 10608+    , 10609+    , 10610+    , 10612+    , 10613+    , 10614+    , 10615+    , 10616+    , 10617+    , 10618+    , 10619+    , 10620+    , 10621+    , 10622+    , 10623+    , 10624+    , 10625+    , 10626+    , 10628+    , 10629+    , 10630+    , 10631+    , 10632+    , 10633+    , 10634+    , 10635+    , 10636+    , 10637+    , 10638+    , 10639+    , 10640+    , 10641+    , 10642+    , 10643+    , 10644+    , 10645+    , 10646+    , 10648+    , 10649+    , 10650+    , 10651+    , 10652+    , 10653+    , 10654+    , 10656+    , 10657+    , 10658+    , 10660+    , 10661+    , 10662+    , 10663+    , 10664+    , 10665+    , 10666+    , 10667+    , 10668+    , 10669+    , 10670+    , 10671+    , 10672+    , 10673+    , 10674+    , 10676+    , 10677+    , 10678+    , 10680+    , 10681+    , 10682+    , 10683+    , 10684+    , 10685+    , 10686+    , 10687+    , 10688+    , 10689+    , 10690+    , 10692+    , 10693+    , 10694+    , 10695+    , 10696+    , 10697+    , 10698+    , 10699+    , 10700+    , 10701+    , 10702+    , 10704+    , 10705+    , 10706+    , 10708+    , 10709+    , 10711+    , 10712+    , 10714+    , 10715+    , 10717+    , 10718+    , 10719+    , 10720+    , 10721+    , 10722+    , 10723+    , 10724+    , 10726+    , 10727+    , 10728+    , 10729+    , 10730+    , 10731+    , 10732+    , 10733+    , 10734+    , 10735+    , 10736+    , 10737+    , 10738+    , 10740+    , 10741+    , 10743+    , 10744+    , 10745+    , 10746+    , 10747+    , 10749+    , 10750+    , 10751+    , 10752+    , 10753+    , 10754+    , 10755+    , 10756+    , 10757+    , 10758+    , 10759+    , 10760+    , 10761+    , 10762+    , 10763+    , 10764+    , 10765+    , 10766+    , 10767+    , 10768+    , 10769+    , 10770+    , 10771+    , 10772+    , 10773+    , 10774+    , 10775+    , 10776+    , 10777+    , 10778+    , 10779+    , 10780+    , 10781+    , 10782+    , 10783+    , 10784+    , 10785+    , 10786+    , 10787+    , 10788+    , 10789+    , 10790+    , 10791+    , 10792+    , 10793+    , 10794+    , 10795+    , 10796+    , 10797+    , 10798+    , 10799+    , 10800+    , 10801+    , 10802+    , 10803+    , 10804+    , 10805+    , 10806+    , 10807+    , 10808+    , 10809+    , 10810+    , 10811+    , 10812+    , 10813+    , 10814+    , 10815+    , 10816+    , 10817+    , 10818+    , 10819+    , 10820+    , 10821+    , 10822+    , 10823+    , 10824+    , 10825+    , 10826+    , 10827+    , 10828+    , 10829+    , 10830+    , 10831+    , 10832+    , 10833+    , 10834+    , 10835+    , 10836+    , 10837+    , 10838+    , 10839+    , 10840+    , 10841+    , 10842+    , 10843+    , 10844+    , 10845+    , 10846+    , 10847+    , 10848+    , 10849+    , 10850+    , 10851+    , 10852+    , 10853+    , 10854+    , 10855+    , 10856+    , 10857+    , 10858+    , 10859+    , 10860+    , 10861+    , 10862+    , 10863+    , 10864+    , 10865+    , 10866+    , 10867+    , 10868+    , 10869+    , 10870+    , 10871+    , 10872+    , 10873+    , 10874+    , 10875+    , 10876+    , 10877+    , 10878+    , 10879+    , 10880+    , 10881+    , 10882+    , 10883+    , 10884+    , 10885+    , 10886+    , 10887+    , 10888+    , 10889+    , 10890+    , 10891+    , 10892+    , 10893+    , 10894+    , 10895+    , 10896+    , 10897+    , 10898+    , 10899+    , 10900+    , 10901+    , 10902+    , 10903+    , 10904+    , 10905+    , 10906+    , 10907+    , 10908+    , 10909+    , 10910+    , 10911+    , 10912+    , 10913+    , 10914+    , 10915+    , 10916+    , 10917+    , 10918+    , 10919+    , 10920+    , 10921+    , 10922+    , 10923+    , 10924+    , 10925+    , 10926+    , 10927+    , 10928+    , 10929+    , 10930+    , 10931+    , 10932+    , 10933+    , 10934+    , 10935+    , 10936+    , 10937+    , 10938+    , 10939+    , 10940+    , 10941+    , 10942+    , 10943+    , 10944+    , 10945+    , 10946+    , 10947+    , 10948+    , 10949+    , 10950+    , 10951+    , 10952+    , 10953+    , 10954+    , 10955+    , 10956+    , 10957+    , 10958+    , 10959+    , 10960+    , 10961+    , 10962+    , 10963+    , 10964+    , 10965+    , 10966+    , 10967+    , 10968+    , 10969+    , 10970+    , 10971+    , 10972+    , 10973+    , 10974+    , 10975+    , 10976+    , 10977+    , 10978+    , 10979+    , 10980+    , 10981+    , 10982+    , 10983+    , 10984+    , 10985+    , 10986+    , 10987+    , 10988+    , 10989+    , 10990+    , 10991+    , 10992+    , 10993+    , 10994+    , 10995+    , 10996+    , 10997+    , 10998+    , 10999+    , 11000+    , 11001+    , 11002+    , 11003+    , 11004+    , 11005+    , 11006+    , 11007+    , 11008+    , 11009+    , 11010+    , 11011+    , 11012+    , 11013+    , 11014+    , 11015+    , 11016+    , 11017+    , 11018+    , 11019+    , 11020+    , 11021+    , 11022+    , 11023+    , 11024+    , 11025+    , 11026+    , 11027+    , 11028+    , 11029+    , 11030+    , 11031+    , 11032+    , 11033+    , 11034+    , 11035+    , 11036+    , 11037+    , 11038+    , 11039+    , 11040+    , 11041+    , 11042+    , 11043+    , 11044+    , 11045+    , 11046+    , 11047+    , 11048+    , 11049+    , 11050+    , 11051+    , 11052+    , 11053+    , 11054+    , 11055+    , 11056+    , 11057+    , 11058+    , 11059+    , 11060+    , 11061+    , 11062+    , 11063+    , 11064+    , 11065+    , 11066+    , 11067+    , 11068+    , 11069+    , 11070+    , 11071+    , 11072+    , 11073+    , 11074+    , 11075+    , 11076+    , 11077+    , 11078+    , 11079+    , 11080+    , 11081+    , 11082+    , 11083+    , 11084+    , 11085+    , 11086+    , 11087+    , 11088+    , 11089+    , 11090+    , 11091+    , 11092+    , 11093+    , 11094+    , 11095+    , 11096+    , 11097+    , 11098+    , 11099+    , 11100+    , 11101+    , 11102+    , 11103+    , 11104+    , 11105+    , 11106+    , 11107+    , 11108+    , 11109+    , 11110+    , 11111+    , 11112+    , 11113+    , 11114+    , 11115+    , 11116+    , 11117+    , 11118+    , 11119+    , 11120+    , 11121+    , 11122+    , 11123+    , 11124+    , 11125+    , 11126+    , 11127+    , 11128+    , 11129+    , 11130+    , 11131+    , 11132+    , 11133+    , 11134+    , 11135+    , 11136+    , 11137+    , 11138+    , 11139+    , 11140+    , 11141+    , 11142+    , 11143+    , 11144+    , 11145+    , 11146+    , 11147+    , 11148+    , 11149+    , 11150+    , 11151+    , 11152+    , 11153+    , 11154+    , 11155+    , 11156+    , 11157+    , 11158+    , 11159+    , 11160+    , 11161+    , 11162+    , 11163+    , 11164+    , 11165+    , 11166+    , 11167+    , 11168+    , 11169+    , 11170+    , 11171+    , 11172+    , 11173+    , 11174+    , 11175+    , 11176+    , 11177+    , 11178+    , 11179+    , 11180+    , 11181+    , 11182+    , 11183+    , 11184+    , 11185+    , 11186+    , 11187+    , 11188+    , 11189+    , 11190+    , 11191+    , 11192+    , 11193+    , 11194+    , 11195+    , 11196+    , 11197+    , 11198+    , 11199+    , 11200+    , 11201+    , 11202+    , 11203+    , 11204+    , 11205+    , 11206+    , 11207+    , 11208+    , 11209+    , 11210+    , 11211+    , 11212+    , 11213+    , 11214+    , 11215+    , 11216+    , 11217+    , 11218+    , 11219+    , 11220+    , 11221+    , 11222+    , 11223+    , 11224+    , 11225+    , 11226+    , 11227+    , 11228+    , 11229+    , 11230+    , 11231+    , 11232+    , 11233+    , 11234+    , 11235+    , 11236+    , 11237+    , 11238+    , 11239+    , 11240+    , 11241+    , 11242+    , 11243+    , 11244+    , 11245+    , 11246+    , 11247+    , 11248+    , 11249+    , 11250+    , 11251+    , 11252+    , 11253+    , 11254+    , 11255+    , 11256+    , 11257+    , 11258+    , 11259+    , 11260+    , 11261+    , 11262+    , 11263+    , 11266+    , 11272+    , 11273+    , 11274+    , 11275+    , 11277+    , 11278+    , 11280+    , 11281+    , 11282+    , 11283+    , 11292+    , 11293+    , 11294+    , 11296+    , 11298+    , 11306+    , 11307+    , 11309+    , 11310+    , 11311+    , 11314+    , 11320+    , 11321+    , 11322+    , 11323+    , 11325+    , 11326+    , 11327+    , 11328+    , 11329+    , 11330+    , 11331+    , 11332+    , 11333+    , 11334+    , 11335+    , 11336+    , 11337+    , 11338+    , 11339+    , 11340+    , 11341+    , 11342+    , 11343+    , 11344+    , 11345+    , 11346+    , 11347+    , 11348+    , 11349+    , 11350+    , 11351+    , 11352+    , 11353+    , 11354+    , 11355+    , 11356+    , 11357+    , 11358+    , 11359+    , 11360+    , 11361+    , 11362+    , 11363+    , 11364+    , 11365+    , 11366+    , 11367+    , 11368+    , 11369+    , 11370+    , 11371+    , 11372+    , 11373+    , 11374+    , 11375+    , 11376+    , 11377+    , 11378+    , 11379+    , 11380+    , 11381+    , 11382+    , 11383+    , 11384+    , 11385+    , 11386+    , 11387+    , 11388+    , 11389+    , 11390+    , 11391+    , 11392+    , 11393+    , 11394+    , 11396+    , 11397+    , 11398+    , 11400+    , 11401+    , 11402+    , 11403+    , 11404+    , 11405+    , 11406+    , 11407+    , 11408+    , 11409+    , 11410+    , 11411+    , 11412+    , 11413+    , 11414+    , 11416+    , 11417+    , 11418+    , 11419+    , 11420+    , 11421+    , 11422+    , 11423+    , 11424+    , 11425+    , 11426+    , 11428+    , 11429+    , 11430+    , 11432+    , 11433+    , 11434+    , 11435+    , 11436+    , 11437+    , 11438+    , 11439+    , 11440+    , 11441+    , 11442+    , 11444+    , 11445+    , 11446+    , 11448+    , 11449+    , 11450+    , 11451+    , 11452+    , 11453+    , 11454+    , 11455+    , 11456+    , 11457+    , 11460+    , 11461+    , 11464+    , 11465+    , 11466+    , 11467+    , 11469+    , 11470+    , 11472+    , 11473+    , 11474+    , 11475+    , 11476+    , 11477+    , 11485+    , 11486+    , 11487+    , 11489+    , 11491+    , 11498+    , 11499+    , 11500+    , 11501+    , 11502+    , 11503+    , 11512+    , 11513+    , 11514+    , 11515+    , 11517+    , 11518+    , 11519+    , 11521+    , 11522+    , 11524+    , 11525+    , 11526+    , 11527+    , 11528+    , 11529+    , 11530+    , 11531+    , 11532+    , 11533+    , 11534+    , 11535+    , 11537+    , 11538+    , 11540+    , 11541+    , 11542+    , 11543+    , 11544+    , 11545+    , 11546+    , 11547+    , 11548+    , 11549+    , 11550+    , 11551+    , 11553+    , 11554+    , 11556+    , 11557+    , 11558+    , 11559+    , 11560+    , 11561+    , 11562+    , 11563+    , 11564+    , 11565+    , 11566+    , 11567+    , 11569+    , 11570+    , 11572+    , 11573+    , 11574+    , 11575+    , 11576+    , 11577+    , 11578+    , 11579+    , 11580+    , 11581+    , 11582+    , 11583+    , 11584+    , 11585+    , 11586+    , 11588+    , 11589+    , 11590+    , 11591+    , 11592+    , 11593+    , 11594+    , 11595+    , 11596+    , 11597+    , 11598+    , 11599+    , 11600+    , 11601+    , 11602+    , 11604+    , 11605+    , 11606+    , 11607+    , 11608+    , 11609+    , 11610+    , 11611+    , 11612+    , 11613+    , 11614+    , 11615+    , 11616+    , 11617+    , 11618+    , 11620+    , 11621+    , 11622+    , 11623+    , 11624+    , 11625+    , 11626+    , 11627+    , 11628+    , 11629+    , 11630+    , 11631+    , 11632+    , 11633+    , 11634+    , 11636+    , 11637+    , 11638+    , 11639+    , 11640+    , 11641+    , 11642+    , 11643+    , 11644+    , 11645+    , 11646+    , 11647+    , 11648+    , 11649+    , 11650+    , 11652+    , 11653+    , 11654+    , 11655+    , 11656+    , 11657+    , 11658+    , 11659+    , 11660+    , 11661+    , 11662+    , 11663+    , 11664+    , 11665+    , 11666+    , 11668+    , 11669+    , 11670+    , 11671+    , 11672+    , 11673+    , 11674+    , 11675+    , 11676+    , 11677+    , 11678+    , 11679+    , 11680+    , 11681+    , 11682+    , 11684+    , 11685+    , 11686+    , 11687+    , 11688+    , 11689+    , 11690+    , 11691+    , 11692+    , 11693+    , 11694+    , 11695+    , 11696+    , 11697+    , 11698+    , 11700+    , 11701+    , 11702+    , 11703+    , 11704+    , 11705+    , 11706+    , 11707+    , 11708+    , 11709+    , 11710+    , 11711+    , 11712+    , 11713+    , 11714+    , 11716+    , 11717+    , 11718+    , 11719+    , 11720+    , 11721+    , 11722+    , 11723+    , 11724+    , 11725+    , 11726+    , 11727+    , 11728+    , 11729+    , 11730+    , 11732+    , 11733+    , 11734+    , 11735+    , 11736+    , 11737+    , 11738+    , 11739+    , 11740+    , 11741+    , 11742+    , 11743+    , 11744+    , 11745+    , 11746+    , 11748+    , 11749+    , 11750+    , 11751+    , 11752+    , 11753+    , 11754+    , 11755+    , 11756+    , 11757+    , 11758+    , 11759+    , 11760+    , 11761+    , 11762+    , 11764+    , 11765+    , 11766+    , 11767+    , 11768+    , 11769+    , 11770+    , 11771+    , 11772+    , 11773+    , 11774+    , 11775+    , 11776+    , 11777+    , 11778+    , 11779+    , 11780+    , 11781+    , 11782+    , 11783+    , 11784+    , 11785+    , 11786+    , 11787+    , 11788+    , 11789+    , 11790+    , 11791+    , 11792+    , 11793+    , 11794+    , 11795+    , 11796+    , 11797+    , 11798+    , 11799+    , 11800+    , 11801+    , 11802+    , 11803+    , 11804+    , 11805+    , 11806+    , 11807+    , 11808+    , 11809+    , 11810+    , 11811+    , 11812+    , 11813+    , 11814+    , 11815+    , 11816+    , 11817+    , 11818+    , 11819+    , 11820+    , 11821+    , 11822+    , 11823+    , 11824+    , 11825+    , 11826+    , 11827+    , 11828+    , 11829+    , 11830+    , 11831+    , 11832+    , 11833+    , 11834+    , 11835+    , 11836+    , 11837+    , 11838+    , 11839+    , 11840+    , 11841+    , 11842+    , 11843+    , 11844+    , 11845+    , 11846+    , 11847+    , 11848+    , 11849+    , 11850+    , 11851+    , 11852+    , 11853+    , 11854+    , 11855+    , 11856+    , 11857+    , 11858+    , 11859+    , 11860+    , 11861+    , 11862+    , 11863+    , 11864+    , 11865+    , 11866+    , 11867+    , 11868+    , 11869+    , 11870+    , 11871+    , 11872+    , 11873+    , 11874+    , 11875+    , 11876+    , 11877+    , 11878+    , 11879+    , 11880+    , 11881+    , 11882+    , 11883+    , 11884+    , 11885+    , 11886+    , 11887+    , 11888+    , 11889+    , 11890+    , 11891+    , 11892+    , 11893+    , 11894+    , 11895+    , 11896+    , 11897+    , 11898+    , 11899+    , 11900+    , 11901+    , 11902+    , 11903+    , 11904+    , 11905+    , 11906+    , 11907+    , 11908+    , 11909+    , 11910+    , 11911+    , 11912+    , 11913+    , 11914+    , 11915+    , 11916+    , 11917+    , 11918+    , 11919+    , 11920+    , 11921+    , 11922+    , 11923+    , 11924+    , 11925+    , 11926+    , 11927+    , 11928+    , 11929+    , 11930+    , 11931+    , 11932+    , 11933+    , 11934+    , 11935+    , 11936+    , 11937+    , 11938+    , 11939+    , 11940+    , 11941+    , 11942+    , 11943+    , 11944+    , 11945+    , 11946+    , 11947+    , 11948+    , 11949+    , 11950+    , 11951+    , 11952+    , 11953+    , 11954+    , 11955+    , 11956+    , 11957+    , 11958+    , 11959+    , 11960+    , 11961+    , 11962+    , 11963+    , 11964+    , 11965+    , 11966+    , 11967+    , 11968+    , 11969+    , 11970+    , 11971+    , 11972+    , 11973+    , 11974+    , 11975+    , 11976+    , 11977+    , 11978+    , 11979+    , 11980+    , 11981+    , 11982+    , 11983+    , 11984+    , 11985+    , 11986+    , 11987+    , 11988+    , 11989+    , 11990+    , 11991+    , 11992+    , 11993+    , 11994+    , 11995+    , 11996+    , 11997+    , 11998+    , 11999+    , 12000+    , 12001+    , 12002+    , 12003+    , 12004+    , 12005+    , 12006+    , 12007+    , 12008+    , 12009+    , 12010+    , 12011+    , 12012+    , 12013+    , 12014+    , 12015+    , 12016+    , 12017+    , 12018+    , 12019+    , 12020+    , 12021+    , 12022+    , 12023+    , 12024+    , 12025+    , 12026+    , 12027+    , 12028+    , 12029+    , 12030+    , 12031+    , 12032+    , 12033+    , 12034+    , 12035+    , 12036+    , 12037+    , 12038+    , 12039+    , 12040+    , 12041+    , 12042+    , 12043+    , 12044+    , 12045+    , 12046+    , 12047+    , 12048+    , 12049+    , 12050+    , 12051+    , 12052+    , 12053+    , 12054+    , 12055+    , 12056+    , 12057+    , 12058+    , 12059+    , 12060+    , 12061+    , 12062+    , 12063+    , 12064+    , 12065+    , 12066+    , 12067+    , 12068+    , 12069+    , 12070+    , 12071+    , 12072+    , 12073+    , 12074+    , 12075+    , 12076+    , 12077+    , 12078+    , 12079+    , 12080+    , 12081+    , 12082+    , 12083+    , 12084+    , 12085+    , 12086+    , 12087+    , 12088+    , 12089+    , 12090+    , 12091+    , 12092+    , 12093+    , 12094+    , 12095+    , 12096+    , 12097+    , 12098+    , 12099+    , 12100+    , 12101+    , 12102+    , 12103+    , 12104+    , 12105+    , 12106+    , 12107+    , 12108+    , 12109+    , 12110+    , 12111+    , 12112+    , 12113+    , 12114+    , 12115+    , 12116+    , 12117+    , 12118+    , 12119+    , 12120+    , 12121+    , 12122+    , 12123+    , 12124+    , 12125+    , 12126+    , 12127+    , 12128+    , 12129+    , 12130+    , 12131+    , 12132+    , 12133+    , 12134+    , 12135+    , 12136+    , 12137+    , 12138+    , 12139+    , 12140+    , 12141+    , 12142+    , 12143+    , 12144+    , 12145+    , 12146+    , 12147+    , 12148+    , 12149+    , 12150+    , 12151+    , 12152+    , 12153+    , 12154+    , 12155+    , 12156+    , 12157+    , 12158+    , 12159+    , 12160+    , 12161+    , 12162+    , 12163+    , 12164+    , 12165+    , 12166+    , 12167+    , 12168+    , 12169+    , 12170+    , 12171+    , 12172+    , 12173+    , 12174+    , 12175+    , 12176+    , 12177+    , 12178+    , 12179+    , 12180+    , 12181+    , 12182+    , 12183+    , 12184+    , 12185+    , 12186+    , 12187+    , 12188+    , 12189+    , 12190+    , 12191+    , 12192+    , 12193+    , 12194+    , 12195+    , 12196+    , 12197+    , 12198+    , 12199+    , 12200+    , 12201+    , 12202+    , 12203+    , 12204+    , 12205+    , 12206+    , 12207+    , 12208+    , 12209+    , 12210+    , 12211+    , 12212+    , 12213+    , 12214+    , 12215+    , 12216+    , 12217+    , 12218+    , 12219+    , 12220+    , 12221+    , 12222+    , 12223+    , 12224+    , 12225+    , 12226+    , 12227+    , 12228+    , 12229+    , 12230+    , 12231+    , 12232+    , 12233+    , 12234+    , 12235+    , 12236+    , 12237+    , 12238+    , 12239+    , 12240+    , 12241+    , 12242+    , 12243+    , 12244+    , 12245+    , 12246+    , 12247+    , 12248+    , 12249+    , 12250+    , 12251+    , 12252+    , 12253+    , 12254+    , 12255+    , 12256+    , 12257+    , 12258+    , 12259+    , 12260+    , 12261+    , 12262+    , 12263+    , 12264+    , 12265+    , 12266+    , 12267+    , 12268+    , 12269+    , 12270+    , 12271+    , 12272+    , 12273+    , 12274+    , 12275+    , 12276+    , 12277+    , 12278+    , 12279+    , 12280+    , 12281+    , 12282+    , 12283+    , 12284+    , 12285+    , 12286+    , 12287+    , 12288+    , 12289+    , 12290+    , 12291+    , 12296+    , 12297+    , 12298+    , 12299+    , 12301+    , 12302+    , 12304+    , 12305+    , 12306+    , 12307+    , 12312+    , 12313+    , 12314+    , 12315+    , 12316+    , 12317+    , 12318+    , 12320+    , 12321+    , 12322+    , 12323+    , 12328+    , 12329+    , 12330+    , 12331+    , 12333+    , 12334+    , 12335+    , 12336+    , 12337+    , 12338+    , 12339+    , 12340+    , 12341+    , 12342+    , 12343+    , 12344+    , 12345+    , 12346+    , 12347+    , 12349+    , 12350+    , 12351+    , 12352+    , 12353+    , 12354+    , 12355+    , 12356+    , 12357+    , 12358+    , 12359+    , 12360+    , 12361+    , 12362+    , 12363+    , 12364+    , 12365+    , 12366+    , 12367+    , 12368+    , 12369+    , 12370+    , 12371+    , 12372+    , 12373+    , 12374+    , 12375+    , 12376+    , 12377+    , 12378+    , 12379+    , 12380+    , 12381+    , 12382+    , 12383+    , 12384+    , 12385+    , 12386+    |]   
src/OidCode.hs view
@@ -1,6 +1,6 @@ {-# LANGUAGE BangPatterns #-} -module OidCode where+module OidCode (genRawPNG, DPI(..)) where  import Data.Word import Data.Bits@@ -142,6 +142,6 @@   -genPNG :: DPI -> Word16 -> FilePath -> IO ()-genPNG dpi code filename = writePng filename (oidImage dpi code)+genRawPNG :: DPI -> Word16 -> FilePath -> IO ()+genRawPNG dpi code filename = writePng filename (oidImage dpi code) 
+ src/TextToSpeech.hs view
@@ -0,0 +1,45 @@+{-# LANGUAGE NondecreasingIndentation #-}++module TextToSpeech where++import System.Directory+import System.IO+import System.FilePath+import System.Process+import System.Exit+import Control.Monad+import Data.Hashable+import Text.Printf++ttsFileName txt = "tts-cache" </> "tts-" ++ map go (shorten txt) <.> "ogg"+  where go '/'         = '_'+        go c | c < ' ' = '_'+        go c           = c+        shorten x | length x > 20 = printf "%s-%016X" (take 20 x) (hash x)+        shorten x                 = x++textToSpeech :: FilePath -> String -> IO ()+textToSpeech fn txt = do+    ex <- doesFileExist fn+    if ex then return () else do++    createDirectoryIfMissing True (takeDirectory fn)++    putStrLn $ "Speaking \"" ++ txt ++ "\"."  +    (tmp,h) <- openTempFile (takeDirectory fn) (takeBaseName fn <.> "wav")+    hClose h++    (ret, _, err) <- readProcessWithExitCode "pico2wave" ["--wave", tmp, "--lang", "en-GB", txt] ""+    unless (ret == ExitSuccess) $ do+        putStrLn "Failed to execute \"pico2wave\":"+        putStrLn err+        putStrLn "Do you have libttspico-utils installed?"++    (ret, _, err) <- readProcessWithExitCode "oggenc" ["-o", fn, tmp] ""+    unless (ret == ExitSuccess) $ do+        putStrLn "Failed to execute \"oggenc\":"+        putStrLn err+        putStrLn "Do you have vorbis-tools installed?"++    removeFile tmp+    return ()
src/TipToiYaml.hs view
@@ -4,6 +4,7 @@     ( tt2ttYaml, ttYaml2tt     , readTipToiYaml, writeTipToiYaml,writeTipToiCodeYaml     , ttyProduct_Id+    , debugGame     ) where @@ -40,8 +41,10 @@ import Control.Arrow import Control.Applicative ((<*>), (<*)) +import TextToSpeech import Types import Constants+import KnownCodes import PrettyPrint import OneLineParser import Utils@@ -56,6 +59,7 @@     , ttyWelcome :: Maybe String     , ttyProduct_Id :: Word32     , ttyScriptCodes :: Maybe CodeMap+    , ttySpeak :: Maybe (M.Map String String)     }     deriving Generic @@ -89,6 +93,7 @@         [ (show oid, map exportLine ls) | (oid, Just ls) <- ttScripts]     , ttyMedia_Path = Just path     , ttyScriptCodes = Nothing+    , ttySpeak = Nothing     }  @@ -101,23 +106,31 @@ scriptCodes :: [String] -> CodeMap -> Either String (String -> Word16, CodeMap) scriptCodes [] codeMap = Right (error "scriptCodes []", codeMap) scriptCodes codes codeMap-    | null strs = Right (readCode, codeMap)-    | length strs > length availableCodes = Left "Too many codes used"-    | null nums = Right (lookupCode, totalMap)+    | null strs || null nums = Right (lookupCode, totalMap)     | otherwise = Left "Cannot mix numbers and names in scripts."   where     (strs, nums) = partitionEithers $ map f codes     newStrs = filter (`M.notMember` codeMap) strs     usedCodes = S.fromList $ M.elems codeMap -    availableCodes = filter (`S.notMember` usedCodes) knownCodes-     f s = case readMaybe s of             Nothing -> Left s              Just n -> Right (n::Word16)-    newAssignments = M.fromList (zip newStrs availableCodes)-    totalMap = M.unionWithKey (\_ _ _ -> error "scriptCodes: conflict!") codeMap newAssignments +    newAssignments =+        M.fromList $+        zip newStrs $+        filter (`S.notMember` usedCodes) $+        [firstObjectCode .. lastObjectCode]++    totalMap = M.fromList+        [ (str, fromJust $+                readMaybe str `mplus`+                M.lookup str codeMap `mplus`+                M.lookup str newAssignments)+        | str <- codes+        ]+     readCode s = case readMaybe s of         Nothing -> error $ printf "Cannot jump to named script \"%s\" in a yaml with numbered scripts." s         Just c -> c@@ -198,25 +211,30 @@             , Line _ cs as _ <- ls             , r <- concatMap F.toList cs ++ concatMap F.toList as ] -+    -- Generate text-to-spech files+    forM (maybe [] M.elems ttySpeak) $ \txt -> do+        textToSpeech (ttsFileName txt) txt -    files <- forM filenames' $ \fn -> do-        let paths = [ combine dir relpath+    files <- forM filenames' $ \fn -> case ttySpeak >>= M.lookup fn of+        Just txt -> do+            B.readFile (ttsFileName txt)+        Nothing -> do+            let paths = [ combine dir relpath                     | ext <- map snd fileMagics                     , let pat = fromMaybe "%s" ttyMedia_Path                     , let relpath = printf pat fn <.> ext                     ]-        ex <- filterM doesFileExist paths-        case ex of-            [] -> do-                putStrLn "Could not find any of these files:"-                mapM_ putStrLn paths-                exitFailure-            [f] -> B.readFile f-            _  -> do-                putStrLn "Multiple matching files found:"-                mapM_ putStrLn ex-                exitFailure+            ex <- filterM doesFileExist paths+            case ex of+                [] -> do+                    putStrLn "Could not find any of these files:"+                    mapM_ putStrLn paths+                    exitFailure+                [f] -> B.readFile f+                _  -> do+                    putStrLn "Multiple matching files found:"+                    mapM_ putStrLn ex+                    exitFailure      return $ (TipToiFile         { ttProductId = ttyProduct_Id@@ -232,6 +250,11 @@         , ttAudioFilesDoubles = False         , ttChecksum = 0x00         , ttChecksumCalc = 0x00+        , ttBinaries1 = []+        , ttBinaries2 = []+        , ttBinaries3 = []+        , ttBinaries4 = []+        , ttSpecialOIDs = Nothing         }, totalMap)  @@ -399,12 +422,13 @@  writeTipToiCodeYaml :: FilePath -> TipToiYAML -> CodeMap -> CodeMap -> IO () writeTipToiCodeYaml inf tty oldMap totalMap = do-    let newCodeMap = totalMap M.\\ fromMaybe M.empty (ttyScriptCodes tty)--    ex <- doesFileExist infCodes-+    let newCodeMap =+            M.filterWithKey (\s v -> readMaybe s /= Just v) totalMap+            M.\\ fromMaybe M.empty (ttyScriptCodes tty)     if M.null newCodeMap-    then when ex $ removeFile infCodes+    then do+        ex <- doesFileExist infCodes+        when ex $ removeFile infCodes     else when (newCodeMap /= oldMap) $ encodeFileCommented infCodes codesComment (TipToiCodesYAML { ttcScriptCodes = newCodeMap })   where     infCodes = codeFileName inf@@ -428,3 +452,24 @@   where     base = dropExtension fn     ext  = takeExtension fn++debugGame :: ProductID -> IO TipToiYAML+debugGame productID = do+    return $ TipToiYAML+        { ttyProduct_Id = productID+        , ttyMedia_Path = Just "Audio/digits/%s"+        , ttyInit = Nothing+        , ttyScriptCodes = Nothing+        , ttySpeak = Nothing+        , ttyComment = Nothing+        , ttyWelcome = Just $ "blob"+        , ttyScripts = M.fromList [+            (show oid, [line])+            | oid <- [1..15000]+            , let chars = [oid `div` 10^p `mod` 10| p <-[4,3,2,1,0]]+            , let line = ppLine t $ Line 0 [] [Play n | n <- [0..5]] ([10] ++ chars)+            ]+        }+  where+    t= M.fromList $+        [ (n, "english_" ++ show n) | n <- [0..9]] ++ [(10, "blob")]
src/Types.hs view
@@ -73,6 +73,11 @@     , ttAudioFiles :: [B.ByteString]     , ttAudioFilesDoubles :: Bool     , ttAudioXor :: Word8+    , ttBinaries1 :: [(B.ByteString, B.ByteString)]+    , ttBinaries2 :: [(B.ByteString, B.ByteString)]+    , ttBinaries3 :: [(B.ByteString, B.ByteString)]+    , ttBinaries4 :: [(B.ByteString, B.ByteString)]+    , ttSpecialOIDs :: Maybe (Word16, Word16)     , ttChecksum :: Word32     , ttChecksumCalc :: Word32     }
src/tttool.hs view
@@ -1,4 +1,4 @@-{-# LANGUAGE CPP #-}+{-# LANGUAGE CPP, RecordWildCards, TupleSections #-}  import qualified Data.ByteString.Lazy as B import qualified Data.ByteString.Lazy.Char8 as BC@@ -18,13 +18,8 @@ import System.Directory import Numeric (readHex) import qualified Data.Map as M+import Data.Foldable (for_) -#if MIN_VERSION_time(1,5,0)-import Data.Time.Format (defaultTimeLocale)-#else-import System.Locale (defaultTimeLocale)-#endif-import Data.Time (getCurrentTime, formatTime) {- import Text.Blaze.Svg11 ((!), mkPath, rotate, l, m) import qualified Text.Blaze.Svg11 as S@@ -34,6 +29,7 @@  import Types import Constants+import KnownCodes import GMEParser import GMEWriter import GMERun@@ -64,6 +60,28 @@             B.writeFile filename audio             printf "Dumped sample %d as %s\n" n filename +dumpBinariesTo :: FilePath -> FilePath -> IO ()+dumpBinariesTo directory file = do+    (TipToiFile {..},_) <- parseTipToiFile <$> B.readFile file++    let binaries =+            map (1,) ttBinaries1 +++            map (2,) ttBinaries2 +++            map (3,) ttBinaries3 +++            map (4,) ttBinaries4++    printf "Binary Table entries: %d\n" (length binaries)++    createDirectoryIfMissing False directory+    forM_ binaries $ \(n,(desc,binary)) -> do+        let filename = printf "%s/%d_%s" directory (n::Int) (BC.unpack desc)+        if B.null binary+        then do+            printf "Skipping empty file %s...\n" filename+        else do+            B.writeFile filename binary+            printf "Dumped binary %s from block %d as %s\n" (BC.unpack desc) n filename+ dumpScripts :: Transscript -> Bool -> Maybe Int -> FilePath -> IO () dumpScripts t raw sel file = do     bytes <- B.readFile file@@ -83,23 +101,30 @@  dumpInfo :: Transscript -> FilePath -> IO () dumpInfo t file = do-    (tt,_) <- parseTipToiFile <$> B.readFile file-    let st = ttScripts tt+    (TipToiFile {..},_) <- parseTipToiFile <$> B.readFile file+    let st = ttScripts -    printf "Product ID: %d\n" (ttProductId tt)-    printf "Raw XOR value: 0x%08X\n" (ttRawXor tt)-    printf "Magic XOR value: 0x%02X\n" (ttAudioXor tt)-    printf "Comment: %s\n" (BC.unpack (ttComment tt))-    printf "Date: %s\n" (BC.unpack (ttDate tt))-    printf "Number of registers: %d\n" (length (ttInitialRegs tt))-    printf "Initial registers: %s\n" (show (ttInitialRegs tt))-    printf "Initial sounds: %s\n" (ppPlayListList t (ttWelcome tt))+    printf "Product ID: %d\n" ttProductId+    printf "Raw XOR value: 0x%08X\n" ttRawXor+    printf "Magic XOR value: 0x%02X\n" ttAudioXor+    printf "Comment: %s\n" (BC.unpack ttComment)+    printf "Date: %s\n" (BC.unpack ttDate)+    printf "Number of registers: %d\n" (length ttInitialRegs)+    printf "Initial registers: %s\n" (show ttInitialRegs)+    printf "Initial sounds: %s\n" (ppPlayListList t ttWelcome)     printf "Scripts for OIDs from %d to %d; %d/%d are disabled.\n"         (fst (head st)) (fst (last st))         (length (filter (isNothing . snd) st)) (length st)-    printf "Audio Table entries: %d\n" (length (ttAudioFiles tt))-    when (ttAudioFilesDoubles tt) $ printf "Audio table repeated twice\n"-    printf "Checksum found 0x%08X, calculated 0x%08X\n" (ttChecksum tt) (ttChecksumCalc tt)+    printf "Audio table entries: %d\n" (length ttAudioFiles)+    when ttAudioFilesDoubles $ printf "Audio table repeated twice\n"+    printf "Binary tables entries: %d/%d/%d/%d\n"+        (length ttBinaries1)+        (length ttBinaries2)+        (length ttBinaries3)+        (length ttBinaries4)+    for_ ttSpecialOIDs $ \(oid1, oid2) ->+        printf "Speical OIDs: %d, %d\n" oid1 oid2+    printf "Checksum found 0x%08X, calculated 0x%08X\n" ttChecksum ttChecksumCalc  lint :: FilePath -> IO () lint file = do@@ -240,44 +265,6 @@     writeTipToi out tt  ---debugGame :: ProductID -> IO TipToiFile-debugGame productID = do-    -- Files orderes so that index 0 says zero, 10 is blob-    files <- mapM B.readFile-        [ "./Audio/digits/" ++ base ++ ".ogg"-        | base <- [ "english-" ++ [n] | n <- ['0'..'9']] ++ ["blob" ]-        ]-    now <- getCurrentTime-    let date = formatTime defaultTimeLocale "%Y%m%d" now-    return $ TipToiFile-        { ttProductId = productID-        , ttRawXor = 0x00000039 -- from Bauernhof-        , ttComment = BC.pack "created with tip-toi-reveng"-        , ttDate = BC.pack date-        , ttWelcome = []-        , ttInitialRegs = [1]-        , ttScripts = [-            (oid, Just [line])-            | oid <- [1..15000]-            , let chars = [oid `div` 10^p `mod` 10| p <-[4,3,2,1,0]]-            , let line = Line 0 [] [Play n | n <- [0..5]] ([10] ++ chars)-            ]-        , ttGames = []-        , ttAudioFiles = files-        , ttAudioXor = 0xAD-        , ttAudioFilesDoubles = False-        , ttChecksum = 0x00-        , ttChecksumCalc = 0x00-        }---createDebug :: FilePath -> ProductID -> IO ()-createDebug out productID = do-    tt <- debugGame productID-    writeTipToi out tt- genPNGs :: DPI -> String -> IO () genPNGs dpi arg = do     ex <- doesFileExist arg@@ -288,23 +275,34 @@ genPNGsForFile dpi inf = do     (tty, codeMap) <- readTipToiYaml inf     (tt, totalMap) <- ttYaml2tt (takeDirectory inf) tty codeMap-    forM_ (M.toList totalMap) $ \(s,c) -> do-        let filename = printf "oid-%d-%s.png" (ttyProduct_Id tty) s-        case code2RawCode c of-            Nothing -> printf "Skipping %s, code %d not known." filename c-            Just r -> do-                printf "Writing %s.. (Code %d, raw code %d)\n" filename c r-                genPNG dpi r filename+    let codes = ("START", fromIntegral (ttProductId tt)) : M.toList totalMap+    forM_  codes $ \(s,c) -> do+        genPNG dpi c $ printf "oid-%d-%s.png" (ttProductId tt) s  genPNGsForCodes :: DPI -> String -> IO () genPNGsForCodes dpi code_str = do     codes <- parseRange code_str     forM_ codes $ \c -> do-        let filename = printf "oid%d.png" c-        printf "Writing %s...\n" filename-        genPNG dpi c filename+        genPNG dpi c $ printf "oid-%d.png" c +genPNG :: DPI -> Word16 -> String -> IO ()+genPNG dpi c filename =+    case code2RawCode c of+        Nothing -> printf "Skipping %s, code %d not known.\n" filename c+        Just r -> do+            printf "Writing %s.. (Code %d, raw code %d)\n" filename c r+            genRawPNG dpi r filename ++genPNGsForRawCodes :: DPI -> String -> IO ()+genPNGsForRawCodes dpi code_str = do+    codes <- parseRange code_str+    forM_ codes $ \r -> do+        let filename = printf "oid-raw-%d.png" r+        printf "Writing %s... (raw code %d)\n" filename r+        genRawPNG dpi r filename++ -- The main function  @@ -341,6 +339,8 @@ main' t ("raw-scripts": files)      = withEachFile (dumpScripts t True Nothing) files main' t ("raw-script": file : n:[])     | Just int <- readMaybe n       =              dumpScripts t True (Just int) file+main' t ("binaries": "-d": dir: files) = withEachFile (dumpBinariesTo dir) files+main' t ("binaries": files)            = withEachFile (dumpBinariesTo "binaries") files main' t ("games": files)            = withEachFile (dumpGames t) files main' t ("lint": files)             = withEachFile lint files main' t ("segments": files)         = withEachFile segments files@@ -352,18 +352,23 @@ main' t ("play": file : [])         =              play t file main' t ("rewrite": inf : out: [])  =              rewrite inf out main' t ("export": inf : out: [] )  =              export inf out-main' t ("assemble": inf : out: [] )  =              assemble inf out-main' t ("create-debug": out : n :[])-    | Just int <- readMaybe n       =              createDebug out int-    | [(int,[])] <- readHex n       =              createDebug out int+main' t ("assemble": inf : out: []) =              assemble inf out main' t ("oid-code": "-d" : "600" : codes@(_:_))-                                    =              genPNGs  D600 (unwords codes)+                                    =              genPNGs D600 (unwords codes) main' t ("oid-code": "-d" : "1200" : codes@(_:_))                                     =              genPNGs D1200 (unwords codes) main' t ("oid-code": "-d" : _)      = do     putStrLn $ "The parameter to -d has to be 600 or 1200"     exitFailure main' t ("oid-code": codes@(_:_))   =              genPNGs D1200 (unwords codes)+main' t ("raw-oid-code": "-d" : "600" : codes@(_:_))+                                    =              genPNGsForRawCodes D600 (unwords codes)+main' t ("raw-oid-code": "-d" : "1200" : codes@(_:_))+                                    =              genPNGsForRawCodes D1200 (unwords codes)+main' t ("raw-oid-code": "-d" : _)  = do+    putStrLn $ "The parameter to -d has to be 600 or 1200"+    exitFailure+main' t ("raw-oid-code": codes@(_:_)) =            genPNGsForRawCodes D1200 (unwords codes) main' _ _ = do     prg <- getProgName     putStrLn $ "Usage: " ++ prg ++ " [options] command"@@ -385,6 +390,8 @@     putStrLn $ "       prints the scripts for each OID, in their raw form"     putStrLn $ "    raw-script <file.gme> <n>"     putStrLn $ "       prints the scripts for the given OID, in their raw form"+    putStrLn $ "    binaries [-d dir] <file.gme>..."+    putStrLn $ "       dumps all binaries to the given directory (default: binaries/)"     putStrLn $ "    games <file.gme>..."     putStrLn $ "       prints the decoded games"     putStrLn $ "    lint <file.gme>"@@ -401,23 +408,23 @@     putStrLn $ "       interactively play: Enter OIDs, and see what happens."     putStrLn $ "    rewrite <infile.gme> <outfile.gme>"     putStrLn $ "       parses the file and serializes it again (for debugging)."-    putStrLn $ "    create-debug <outfile.gme> <productid>"-    putStrLn $ "       creates a special Debug.gme file for that productid"     putStrLn $ "    export <infile.gme> [<outfile.yaml>]"     putStrLn $ "       dumps the file in the human-readable yaml format"     putStrLn $ "    assemble <infile.yaml> <outfile.gme>"     putStrLn $ "       creates a gme file from the given source"     putStrLn $ "    oid-code [-d DPI] <codes>"-    putStrLn $ "       creates a PNG file for each given optical code"+    putStrLn $ "       creates a PNG file for each given code"     putStrLn $ "       scale this to 10cm×10cm"     putStrLn $ "       By default, it creates a 1200 dpi image. With -d 600, you"     putStrLn $ "       obtain a 600 dpi image."     putStrLn $ "       <codes> can be a range, e.g. 1,3,1000-1085."-    putStrLn $ "       The code refers to the *raw* code, not the one read by the pen."-    putStrLn $ "       Uses oid<code>.png as the file name."+    putStrLn $ "       Uses oid-<code>.png as the file name."     putStrLn $ "    oid-code [-d DPI] <infile.yaml>"     putStrLn $ "       Like above, but creates one file for each code in the yaml file."     putStrLn $ "       Uses oid-<product-id>-<scriptname or code>.png as the file name."+    putStrLn $ "    raw-oid-code [-d DPI] <raw codes>"+    putStrLn $ "       creates a PNG file with the given \"raw code\". Usually not needed."+    putStrLn $ "       Uses oid-raw-<code>.png as the file name."     exitFailure  main = getArgs >>= (main' M.empty)
tttool.cabal view
@@ -2,7 +2,7 @@ -- documentation, see http://haskell.org/cabal/users-guide/  name:                tttool-version:             0.1+version:             1.0 synopsis:            Working with files for the Tiptoi® pen description:         The Ravensburger Tiptoi® pen is programmed via special                      files. Their file format has been reverse engineered; this@@ -29,6 +29,7 @@ executable tttool   main-is:             tttool.hs   other-modules:+    BakedVector,     Constants,     Cypher,     GMEParser,@@ -40,6 +41,8 @@     PrettyPrint,     RangeParser,     TipToiYaml,+    TextToSpeech,+    KnownCodes,     Types,     Utils         @@ -50,13 +53,18 @@     containers  == 0.4.*   ||  == 0.5.*,     directory   == 1.2.*,     filepath    == 1.3.*,+    template-haskell >= 2.7 && < 2.11,     ghc-prim,      JuicyPixels == 3.1.*   ||  == 3.2.*,     aeson       == 0.7.*   ||  == 0.8.*,+    bytestring-builder >= 0.10.4.1.1,+    hashable    == 1.2.*,     mtl         == 2.1.*   ||  == 2.2.*,     text        == 0.11.*  ||  == 1.2.*,     parsec      == 3.1.*,+    process     == 1.1.*   ||  == 1.2.*,+    vector      == 0.10.*,     yaml        == 0.8.*    if flag(old-locale)@@ -68,6 +76,8 @@   default-language:    Haskell2010   ghc-options:     -fwarn-unused-imports+    -rtsopts+    -with-rtsopts=-K100M  source-repository head   type:     git