Merge remote-tracking branch 'origin/encounters-i18n'
authorEevee <git@veekun.com>
Wed, 6 Apr 2011 05:32:51 +0000 (22:32 -0700)
committerEevee <git@veekun.com>
Wed, 6 Apr 2011 05:32:51 +0000 (22:32 -0700)
Conflicts:
pokedex/db/__init__.py

27 files changed:
pokedex/__init__.py
pokedex/data/csv/egg_groups.csv
pokedex/data/csv/encounter_condition_values.csv
pokedex/data/csv/encounter_conditions.csv
pokedex/data/csv/encounter_method_prose.csv [moved from pokedex/data/csv/encounter_terrain_prose.csv with 79% similarity]
pokedex/data/csv/encounter_methods.csv [new file with mode: 0644]
pokedex/data/csv/encounter_slots.csv
pokedex/data/csv/encounter_terrain.csv [deleted file]
pokedex/data/csv/encounters.csv
pokedex/data/csv/location_area_encounter_rates.csv
pokedex/data/csv/location_area_prose.csv
pokedex/data/csv/location_areas.csv
pokedex/data/csv/location_game_indices.csv
pokedex/data/csv/location_names.csv
pokedex/data/csv/locations.csv
pokedex/data/csv/pokemon_move_methods.csv
pokedex/db/__init__.py
pokedex/db/dependencies.py [new file with mode: 0644]
pokedex/db/load.py
pokedex/db/markdown.py
pokedex/db/tables.py
pokedex/defaults.py
pokedex/main.py [new file with mode: 0644]
pokedex/util.py
scripts/add-bw-locations.py [new file with mode: 0755]
scripts/migration-i18n.py [new file with mode: 0644]
setup.py

index e4397af..e69de29 100644 (file)
@@ -1,287 +0,0 @@
-# encoding: utf8
-from optparse import OptionParser
-import os
-import sys
-
-# XXX importing pokedex.whatever should not import all these
-import pokedex.db
-import pokedex.db.load
-import pokedex.db.tables
-import pokedex.lookup
-from pokedex import defaults
-
-def main():
-    if len(sys.argv) <= 1:
-        command_help()
-
-    command = sys.argv[1]
-    args = sys.argv[2:]
-
-    # XXX there must be a better way to get Unicode argv
-    # XXX this doesn't work on Windows durp
-    enc = sys.stdin.encoding or 'utf8'
-    args = [_.decode(enc) for _ in args]
-
-    # Find the command as a function in this file
-    func = globals().get("command_%s" % command, None)
-    if func:
-        func(*args)
-    else:
-        command_help()
-
-
-def get_parser(verbose=True):
-    """Returns an OptionParser prepopulated with the global options.
-
-    `verbose` is whether or not the options should be verbose by default.
-    """
-    parser = OptionParser()
-    parser.add_option('-e', '--engine', dest='engine_uri', default=None)
-    parser.add_option('-i', '--index', dest='index_dir', default=None)
-    parser.add_option('-q', '--quiet', dest='verbose', default=verbose, action='store_false')
-    parser.add_option('-v', '--verbose', dest='verbose', default=verbose, action='store_true')
-    return parser
-
-def get_session(options):
-    """Given a parsed options object, connects to the database and returns a
-    session.
-    """
-
-    engine_uri = options.engine_uri
-    got_from = 'command line'
-
-    if engine_uri is None:
-        engine_uri, got_from = defaults.get_default_db_uri_with_origin()
-
-    session = pokedex.db.connect(engine_uri)
-
-    if options.verbose:
-        print "Connected to database %(engine)s (from %(got_from)s)" \
-            % dict(engine=session.bind.url, got_from=got_from)
-
-    return session
-
-def get_lookup(options, session=None, recreate=False):
-    """Given a parsed options object, opens the whoosh index and returns a
-    PokedexLookup object.
-    """
-
-    if recreate and not session:
-        raise ValueError("get_lookup() needs an explicit session to regen the index")
-
-    index_dir = options.index_dir
-    got_from = 'command line'
-
-    if index_dir is None:
-        index_dir, got_from = defaults.get_default_index_dir_with_origin()
-
-    if options.verbose:
-        print "Opened lookup index %(index_dir)s (from %(got_from)s)" \
-            % dict(index_dir=index_dir, got_from=got_from)
-
-    lookup = pokedex.lookup.PokedexLookup(index_dir, session=session)
-
-    if recreate:
-        lookup.rebuild_index()
-
-    return lookup
-
-def get_csv_directory(options):
-    """Prints and returns the csv directory we're about to use."""
-
-    if not options.verbose:
-        return
-
-    csvdir = options.directory
-    got_from = 'command line'
-
-    if csvdir is None:
-        csvdir, got_from = defaults.get_default_csv_dir_with_origin()
-
-    print "Using CSV directory %(csvdir)s (from %(got_from)s)" \
-        % dict(csvdir=csvdir, got_from=got_from)
-
-    return csvdir
-
-
-### Plumbing commands
-
-def command_dump(*args):
-    parser = get_parser(verbose=True)
-    parser.add_option('-d', '--directory', dest='directory', default=None)
-    options, tables = parser.parse_args(list(args))
-
-    session = get_session(options)
-    get_csv_directory(options)
-
-    pokedex.db.load.dump(session, directory=options.directory,
-                                  tables=tables,
-                                  verbose=options.verbose)
-
-def command_load(*args):
-    parser = get_parser(verbose=True)
-    parser.add_option('-d', '--directory', dest='directory', default=None)
-    parser.add_option('-D', '--drop-tables', dest='drop_tables', default=False, action='store_true')
-    parser.add_option('-S', '--safe', dest='safe', default=False, action='store_true',
-        help="Do not use backend-specific optimalizations.")
-    options, tables = parser.parse_args(list(args))
-
-    if not options.engine_uri:
-        print "WARNING: You're reloading the default database, but not the lookup index.  They"
-        print "         might get out of sync, and pokedex commands may not work correctly!"
-        print "To fix this, run `pokedex reindex` when this command finishes.  Or, just use"
-        print "`pokedex setup` to do both at once."
-        print
-
-    session = get_session(options)
-    get_csv_directory(options)
-
-    pokedex.db.load.load(session, directory=options.directory,
-                                  drop_tables=options.drop_tables,
-                                  tables=tables,
-                                  verbose=options.verbose,
-                                  safe=options.safe)
-
-def command_reindex(*args):
-    parser = get_parser(verbose=True)
-    options, _ = parser.parse_args(list(args))
-
-    session = get_session(options)
-    lookup = get_lookup(options, session=session, recreate=True)
-
-    print "Recreated lookup index."
-
-
-def command_setup(*args):
-    parser = get_parser(verbose=False)
-    options, _ = parser.parse_args(list(args))
-
-    options.directory = None
-
-    session = get_session(options)
-    get_csv_directory(options)
-    pokedex.db.load.load(session, directory=None, drop_tables=True,
-                                  verbose=options.verbose,
-                                  safe=False)
-
-    lookup = get_lookup(options, session=session, recreate=True)
-
-    print "Recreated lookup index."
-
-
-def command_status(*args):
-    parser = get_parser(verbose=True)
-    options, _ = parser.parse_args(list(args))
-    options.verbose = True
-    options.directory = None
-
-    # Database, and a lame check for whether it's been inited at least once
-    session = get_session(options)
-    print "  - OK!  Connected successfully."
-
-    if pokedex.db.tables.Pokemon.__table__.exists(session.bind):
-        print "  - OK!  Database seems to contain some data."
-    else:
-        print "  - WARNING: Database appears to be empty."
-
-    # CSV; simple checks that the dir exists
-    csvdir = get_csv_directory(options)
-    if not os.path.exists(csvdir):
-        print "  - ERROR: No such directory!"
-    elif not os.path.isdir(csvdir):
-        print "  - ERROR: Not a directory!"
-    else:
-        print "  - OK!  Directory exists."
-
-        if os.access(csvdir, os.R_OK):
-            print "  - OK!  Can read from directory."
-        else:
-            print "  - ERROR: Can't read from directory!"
-
-        if os.access(csvdir, os.W_OK):
-            print "  - OK!  Can write to directory."
-        else:
-            print "  - WARNING: Can't write to directory!  " \
-                "`dump` will not work.  You may need to sudo."
-
-    # Index; the PokedexLookup constructor covers most tests and will
-    # cheerfully bomb if they fail
-    lookup = get_lookup(options, recreate=False)
-    print "  - OK!  Opened successfully."
-
-
-### User-facing commands
-
-def command_lookup(*args):
-    parser = get_parser(verbose=False)
-    options, words = parser.parse_args(list(args))
-
-    name = u' '.join(words)
-
-    session = get_session(options)
-    lookup = get_lookup(options, session=session, recreate=False)
-
-    results = lookup.lookup(name)
-    if not results:
-        print "No matches."
-    elif results[0].exact:
-        print "Matched:"
-    else:
-        print "Fuzzy-matched:"
-
-    for result in results:
-        if hasattr(result.object, 'full_name'):
-            name = result.object.full_name
-        else:
-            name = result.object.name
-
-        print "%s: %s" % (result.object.__tablename__, name),
-        if result.language:
-            print "(%s in %s)" % (result.name, result.language)
-        else:
-            print
-
-
-def command_help():
-    print u"""pokedex -- a command-line Pokédex interface
-usage: pokedex {command} [options...]
-Run `pokedex setup` first, or nothing will work!
-See http://bugs.veekun.com/projects/pokedex/wiki/CLI for more documentation.
-
-Commands:
-    help                Displays this message.
-    lookup [thing]      Look up something in the Pokédex.
-
-System commands:
-    load                Load Pokédex data into a database from CSV files.
-    dump                Dump Pokédex data from a database into CSV files.
-    reindex             Rebuilds the lookup index from the database.
-    setup               Combines load and reindex.
-    status              No effect, but prints which engine, index, and csv
-                        directory would be used for other commands.
-
-Global options:
-    -e|--engine=URI     By default, all commands try to use a SQLite database
-                        in the pokedex install directory.  Use this option (or
-                        a POKEDEX_DB_ENGINE environment variable) to specify an
-                        alternate database.
-    -i|--index=DIR      By default, all commands try to put the lookup index in
-                        the pokedex install directory.  Use this option (or a
-                        POKEDEX_INDEX_DIR environment variable) to specify an
-                        alternate loction.
-    -q|--quiet          Don't print system output.  This is the default for
-                        non-system commands and setup.
-    -v|--verbose        Print system output.  This is the default for system
-                        commands, except setup.
-
-System options:
-    -d|--directory=DIR  By default, load and dump will use the CSV files in the
-                        pokedex install directory.  Use this option to specify
-                        a different directory.
-    -D|--drop-tables    With load, drop all tables before loading data.
-
-    Additionally, load and dump accept a list of table names (possibly with
-    wildcards) and/or csv fileames as an argument list.
-""".encode(sys.getdefaultencoding(), 'replace')
-
-    sys.exit(0)
index 46b701b..87b5907 100644 (file)
@@ -1,16 +1,16 @@
 id,identifier
 1,monster
-2,water-1
+2,water1
 3,bug
 4,flying
 5,ground
 6,fairy
 7,plant
 8,humanshape
-9,water-3
+9,water3
 10,mineral
 11,indeterminate
-12,water-2
+12,water2
 13,ditto
 14,dragon
 15,no-eggs
index 83482a6..9db234a 100644 (file)
@@ -1,17 +1,17 @@
 id,encounter_condition_id,identifier,is_default
-1,1,during-a-swarm,0
-2,1,not-during-a-swarm,1
-3,2,in-the-morning,0
-4,2,during-the-day,1
-5,2,at-night,0
-6,3,using-pokeradar,0
-7,3,not-using-pokeradar,1
-8,4,no-game-in-slot-2,1
-9,4,ruby-in-slot-2,0
-10,4,sapphire-in-slot-2,0
-11,4,emerald-in-slot-2,0
-12,4,firered-in-slot-2,0
-13,4,leafgreen-in-slot-2,0
+1,1,swarm-yes,0
+2,1,swarm-no,1
+3,2,time-morning,0
+4,2,time-day,1
+5,2,time-night,0
+6,3,radar-on,0
+7,3,radar-off,1
+8,4,slot2-none,1
+9,4,slot2-ruby,0
+10,4,slot2-sapphire,0
+11,4,slot2-emerald,0
+12,4,slot2-firered,0
+13,4,slot2-leafgreen,0
 14,5,radio-off,1
-15,5,hoenn-radio,0
-16,5,sinnoh-radio,0
+15,5,radio-hoenn,0
+16,5,radio-sinnoh,0
index 43457a0..29a7d40 100644 (file)
@@ -1,6 +1,6 @@
 id,identifier
 1,swarm
-2,time-of-day
-3,pokeradar
-4,gen-3-game-in-slot-2
+2,time
+3,radar
+4,slot2
 5,radio
similarity index 79%
rename from pokedex/data/csv/encounter_terrain_prose.csv
rename to pokedex/data/csv/encounter_method_prose.csv
index 789ae19..026db38 100644 (file)
@@ -1,4 +1,4 @@
-encounter_terrain_id,local_language_id,name
+encounter_method_id,local_language_id,name
 1,9,Walking in tall grass or a cave
 2,9,Fishing with an Old Rod
 3,9,Fishing with a Good Rod
diff --git a/pokedex/data/csv/encounter_methods.csv b/pokedex/data/csv/encounter_methods.csv
new file mode 100644 (file)
index 0000000..268d0fd
--- /dev/null
@@ -0,0 +1,8 @@
+id,identifier
+1,walk
+2,old-rod
+3,good-rod
+4,super-rod
+5,surf
+6,rock-smash
+7,headbutt
index 3444b80..e7f46f9 100644 (file)
@@ -1,4 +1,4 @@
-id,version_group_id,encounter_terrain_id,slot,rarity
+id,version_group_id,encounter_method_id,slot,rarity
 1,8,1,1,20
 2,8,1,2,20
 3,8,1,3,10
@@ -153,3 +153,99 @@ id,version_group_id,encounter_terrain_id,slot,rarity
 152,9,5,3,5
 153,9,5,4,4
 154,9,5,5,1
+155,5,3,1,60
+156,5,3,2,20
+157,5,3,3,20
+158,5,2,1,70
+159,5,2,2,30
+160,5,4,1,40
+161,5,4,2,40
+162,5,4,3,15
+163,5,4,4,4
+164,5,4,5,1
+165,5,5,1,60
+166,5,5,2,30
+167,5,5,3,5
+168,5,5,4,4
+169,5,5,5,1
+170,5,1,1,20
+171,5,1,2,20
+172,5,1,3,10
+173,5,1,4,10
+174,5,1,5,10
+175,5,1,6,10
+176,5,1,7,5
+177,5,1,8,5
+178,5,1,9,4
+179,5,1,10,4
+180,5,1,11,1
+181,5,1,12,1
+182,5,6,1,60
+183,5,6,2,30
+184,5,6,3,5
+185,5,6,4,4
+186,5,6,5,1
+187,6,1,1,20
+188,6,1,2,20
+189,6,1,3,10
+190,6,1,4,10
+191,6,1,5,10
+192,6,1,6,10
+193,6,1,7,5
+194,6,1,8,5
+195,6,1,9,4
+196,6,1,10,4
+197,6,1,11,1
+198,6,1,12,1
+199,6,3,1,60
+200,6,3,2,20
+201,6,3,3,20
+202,6,2,1,70
+203,6,2,2,30
+204,6,4,1,40
+205,6,4,2,40
+206,6,4,3,15
+207,6,4,4,4
+208,6,4,5,1
+209,6,5,1,60
+210,6,5,2,30
+211,6,5,3,5
+212,6,5,4,4
+213,6,5,5,1
+214,6,6,1,60
+215,6,6,2,30
+216,6,6,3,5
+217,6,6,4,4
+218,6,6,5,1
+219,7,1,1,20
+220,7,1,2,20
+221,7,1,3,10
+222,7,1,4,10
+223,7,1,5,10
+224,7,1,6,10
+225,7,1,7,5
+226,7,1,8,5
+227,7,1,9,4
+228,7,1,10,4
+229,7,1,11,1
+230,7,1,12,1
+231,7,3,1,60
+232,7,3,2,20
+233,7,3,3,20
+234,7,2,1,70
+235,7,2,2,30
+236,7,4,1,40
+237,7,4,2,40
+238,7,4,3,15
+239,7,4,4,4
+240,7,4,5,1
+241,7,5,1,60
+242,7,5,2,30
+243,7,5,3,5
+244,7,5,4,4
+245,7,5,5,1
+246,7,6,1,60
+247,7,6,2,30
+248,7,6,3,5
+249,7,6,4,4
+250,7,6,5,1
diff --git a/pokedex/data/csv/encounter_terrain.csv b/pokedex/data/csv/encounter_terrain.csv
deleted file mode 100644 (file)
index 1c53ddd..0000000
+++ /dev/null
@@ -1,8 +0,0 @@
-id,identifier
-1,walking-in-tall-grass-or-a-cave
-2,fishing-with-an-old-rod
-3,fishing-with-a-good-rod
-4,fishing-with-a-super-rod
-5,surfing
-6,smashing-rocks
-7,headbutting-trees
index f27448e..7b7c8bf 100644 (file)
@@ -22952,3 +22952,8642 @@ id,version_id,location_area_id,encounter_slot_id,pokemon_id,min_level,max_level
 26662,2,349,114,90,15,15
 26663,1,349,115,90,15,15
 26664,2,349,115,90,15,15
+26665,7,350,155,129,10,30
+26666,7,350,156,118,10,30
+26667,7,350,157,341,10,30
+26668,7,350,158,129,5,10
+26669,7,350,159,118,5,10
+26670,7,350,160,341,25,30
+26671,7,350,161,341,30,35
+26672,7,350,162,341,20,25
+26673,7,350,163,341,35,40
+26674,7,350,164,341,40,45
+26675,7,350,165,183,20,30
+26676,7,350,166,183,10,20
+26677,7,350,167,183,30,35
+26678,7,350,168,183,5,10
+26679,7,350,169,183,5,10
+26680,7,351,155,129,10,30
+26681,7,351,156,72,10,30
+26682,7,351,157,320,10,30
+26683,7,351,158,129,5,10
+26684,7,351,159,72,5,10
+26685,7,351,160,320,25,30
+26686,7,351,161,320,30,35
+26687,7,351,162,320,20,25
+26688,7,351,163,320,35,40
+26689,7,351,164,320,40,45
+26690,7,351,165,72,5,35
+26691,7,351,166,278,10,30
+26692,7,351,167,278,15,25
+26693,7,351,168,279,25,30
+26694,7,351,169,279,25,30
+26695,7,352,155,129,10,30
+26696,7,352,156,72,10,30
+26697,7,352,157,320,10,30
+26698,7,352,158,129,5,10
+26699,7,352,159,72,5,10
+26700,7,352,160,320,25,30
+26701,7,352,161,320,30,35
+26702,7,352,162,120,25,30
+26703,7,352,163,320,35,40
+26704,7,352,164,320,40,45
+26705,7,352,165,72,5,35
+26706,7,352,166,278,10,30
+26707,7,352,167,278,15,25
+26708,7,352,168,279,25,30
+26709,7,352,169,279,25,30
+26710,7,353,155,129,10,30
+26711,7,353,156,72,10,30
+26712,7,353,157,320,10,30
+26713,7,353,158,129,5,10
+26714,7,353,159,72,5,10
+26715,7,353,160,319,30,35
+26716,7,353,161,320,30,35
+26717,7,353,162,320,25,30
+26718,7,353,163,320,35,40
+26719,7,353,164,320,40,45
+26720,7,353,165,72,5,35
+26721,7,353,166,278,10,30
+26722,7,353,167,278,15,25
+26723,7,353,168,279,25,30
+26724,7,353,169,279,25,30
+26725,7,354,155,129,10,30
+26726,7,354,156,129,10,30
+26727,7,354,157,129,10,30
+26728,7,354,158,129,5,10
+26729,7,354,159,129,10,15
+26730,7,354,160,129,30,35
+26731,7,354,161,129,30,35
+26732,7,354,162,130,35,40
+26733,7,354,163,130,35,45
+26734,7,354,164,130,5,45
+26735,7,354,165,129,5,35
+26736,7,354,166,129,10,30
+26737,7,354,167,129,15,25
+26738,7,354,168,129,25,30
+26739,7,354,169,129,25,30
+26740,7,355,155,129,10,30
+26741,7,355,156,370,10,30
+26742,7,355,157,320,10,30
+26743,7,355,158,129,5,10
+26744,7,355,159,72,5,10
+26745,7,355,160,370,30,35
+26746,7,355,161,320,30,35
+26747,7,355,162,222,30,35
+26748,7,355,163,320,35,40
+26749,7,355,164,320,40,45
+26750,7,355,165,72,5,35
+26751,7,355,166,278,10,30
+26752,7,355,167,278,15,25
+26753,7,355,168,279,25,30
+26754,7,355,169,279,25,30
+26755,7,356,155,129,10,30
+26756,7,356,156,118,10,30
+26757,7,356,157,339,10,30
+26758,7,356,158,129,5,10
+26759,7,356,159,118,5,10
+26760,7,356,160,339,25,30
+26761,7,356,161,339,30,35
+26762,7,356,162,339,20,25
+26763,7,356,163,339,35,40
+26764,7,356,164,339,40,45
+26765,7,356,165,41,5,35
+26766,7,356,166,41,30,35
+26767,7,356,167,338,25,35
+26768,7,356,168,338,15,25
+26769,7,356,169,338,5,15
+26770,7,356,170,41,16,16
+26771,7,356,171,41,17,17
+26772,7,356,172,41,18,18
+26773,7,356,173,41,15,15
+26774,7,356,174,41,14,14
+26775,7,356,175,338,16,16
+26776,7,356,176,338,18,18
+26777,7,356,177,338,14,14
+26778,7,356,178,41,19,19
+26779,7,356,179,41,20,20
+26780,7,356,180,41,19,19
+26781,7,356,181,41,20,20
+26782,7,357,155,129,10,30
+26783,7,357,156,118,10,30
+26784,7,357,157,339,10,30
+26785,7,357,158,129,5,10
+26786,7,357,159,118,5,10
+26787,7,357,160,339,25,30
+26788,7,357,161,339,30,35
+26789,7,357,162,340,30,35
+26790,7,357,163,340,35,40
+26791,7,357,164,340,40,45
+26792,7,357,165,42,30,35
+26793,7,357,166,42,30,35
+26794,7,357,167,338,25,35
+26795,7,357,168,338,15,25
+26796,7,357,169,338,5,15
+26797,7,357,170,42,33,33
+26798,7,357,171,42,35,35
+26799,7,357,172,42,33,33
+26800,7,357,173,338,35,35
+26801,7,357,174,338,33,33
+26802,7,357,175,338,37,37
+26803,7,357,176,42,35,35
+26804,7,357,177,338,39,39
+26805,7,357,178,42,38,38
+26806,7,357,179,42,40,40
+26807,7,357,180,42,38,38
+26808,7,357,181,42,40,40
+26809,7,358,155,129,10,30
+26810,7,358,156,118,10,30
+26811,7,358,157,339,10,30
+26812,7,358,158,129,5,10
+26813,7,358,159,118,5,10
+26814,7,358,160,339,25,30
+26815,7,358,161,339,30,35
+26816,7,358,162,340,30,35
+26817,7,358,163,340,35,40
+26818,7,358,164,340,40,45
+26819,7,358,165,42,30,35
+26820,7,358,166,42,30,35
+26821,7,358,167,338,25,35
+26822,7,358,168,338,15,25
+26823,7,358,169,338,5,15
+26824,7,358,170,42,33,33
+26825,7,358,171,42,35,35
+26826,7,358,172,42,33,33
+26827,7,358,173,338,35,35
+26828,7,358,174,338,33,33
+26829,7,358,175,338,37,37
+26830,7,358,176,42,35,35
+26831,7,358,177,338,39,39
+26832,7,358,178,42,38,38
+26833,7,358,179,42,40,40
+26834,7,358,180,42,38,38
+26835,7,358,181,42,40,40
+26836,7,359,155,129,10,30
+26837,7,359,156,118,10,30
+26838,7,359,157,339,10,30
+26839,7,359,158,129,5,10
+26840,7,359,159,118,5,10
+26841,7,359,160,339,25,30
+26842,7,359,161,339,30,35
+26843,7,359,162,340,30,35
+26844,7,359,163,340,35,40
+26845,7,359,164,340,40,45
+26846,7,359,165,42,30,35
+26847,7,359,166,42,30,35
+26848,7,359,167,338,25,35
+26849,7,359,168,338,15,25
+26850,7,359,169,338,5,15
+26851,7,359,170,42,33,33
+26852,7,359,171,42,35,35
+26853,7,359,172,371,30,30
+26854,7,359,173,338,35,35
+26855,7,359,174,371,35,35
+26856,7,359,175,338,37,37
+26857,7,359,176,371,25,25
+26858,7,359,177,338,39,39
+26859,7,359,178,42,38,38
+26860,7,359,179,42,40,40
+26861,7,359,180,42,38,38
+26862,7,359,181,42,40,40
+26863,7,360,170,293,6,6
+26864,7,360,171,293,7,7
+26865,7,360,172,293,6,6
+26866,7,360,173,293,6,6
+26867,7,360,174,293,7,7
+26868,7,360,175,293,7,7
+26869,7,360,176,293,5,5
+26870,7,360,177,293,8,8
+26871,7,360,178,293,5,5
+26872,7,360,179,293,8,8
+26873,7,360,180,293,5,5
+26874,7,360,181,293,8,8
+26875,7,361,170,41,7,7
+26876,7,361,171,296,8,8
+26877,7,361,172,296,7,7
+26878,7,361,173,41,8,8
+26879,7,361,174,296,9,9
+26880,7,361,175,63,8,8
+26881,7,361,176,296,10,10
+26882,7,361,177,296,6,6
+26883,7,361,178,74,7,7
+26884,7,361,179,74,8,8
+26885,7,361,180,74,6,6
+26886,7,361,181,74,9,9
+26887,7,362,170,41,9,9
+26888,7,362,171,304,10,10
+26889,7,362,172,304,9,9
+26890,7,362,173,304,11,11
+26891,7,362,174,41,10,10
+26892,7,362,175,63,9,9
+26893,7,362,176,296,10,10
+26894,7,362,177,296,11,11
+26895,7,362,178,303,10,10
+26896,7,362,179,303,10,10
+26897,7,362,180,303,9,9
+26898,7,362,181,303,11,11
+26899,7,363,182,74,10,15
+26900,7,363,183,299,10,20
+26901,7,363,184,74,5,10
+26902,7,363,185,74,15,20
+26903,7,363,186,74,15,20
+26904,7,363,170,41,10,10
+26905,7,363,171,304,11,11
+26906,7,363,172,304,10,10
+26907,7,363,173,41,11,11
+26908,7,363,174,304,12,12
+26909,7,363,175,63,10,10
+26910,7,363,176,303,10,10
+26911,7,363,177,303,11,11
+26912,7,363,178,303,12,12
+26913,7,363,179,303,10,10
+26914,7,363,180,303,12,12
+26915,7,363,181,303,10,10
+26916,7,364,170,41,7,7
+26917,7,364,171,296,8,8
+26918,7,364,172,296,7,7
+26919,7,364,173,41,8,8
+26920,7,364,174,296,9,9
+26921,7,364,175,63,8,8
+26922,7,364,176,296,10,10
+26923,7,364,177,296,6,6
+26924,7,364,178,304,7,7
+26925,7,364,179,304,8,8
+26926,7,364,180,304,7,7
+26927,7,364,181,304,8,8
+26928,7,365,170,263,5,5
+26929,7,365,171,265,5,5
+26930,7,365,172,285,5,5
+26931,7,365,173,263,6,6
+26932,7,365,174,266,5,5
+26933,7,365,175,268,5,5
+26934,7,365,176,265,6,6
+26935,7,365,177,285,6,6
+26936,7,365,178,276,5,5
+26937,7,365,179,287,5,5
+26938,7,365,180,276,6,6
+26939,7,365,181,287,6,6
+26940,7,366,170,322,19,19
+26941,7,366,171,322,19,19
+26942,7,366,172,66,19,19
+26943,7,366,173,322,18,18
+26944,7,366,174,325,18,18
+26945,7,366,175,66,18,18
+26946,7,366,176,325,19,19
+26947,7,366,177,66,20,20
+26948,7,366,178,322,20,20
+26949,7,366,179,325,20,20
+26950,7,366,180,322,20,20
+26951,7,366,181,325,20,20
+26952,7,367,170,322,15,15
+26953,7,367,171,109,15,15
+26954,7,367,172,322,16,16
+26955,7,367,173,66,15,15
+26956,7,367,174,324,15,15
+26957,7,367,175,218,15,15
+26958,7,367,176,109,16,16
+26959,7,367,177,66,16,16
+26960,7,367,178,324,14,14
+26961,7,367,179,324,16,16
+26962,7,367,180,88,14,14
+26963,7,367,181,88,14,14
+26964,7,368,170,355,27,27
+26965,7,368,171,355,28,28
+26966,7,368,172,355,26,26
+26967,7,368,173,355,25,25
+26968,7,368,174,355,29,29
+26969,7,368,175,355,24,24
+26970,7,368,176,355,23,23
+26971,7,368,177,355,22,22
+26972,7,368,178,355,29,29
+26973,7,368,179,355,24,24
+26974,7,368,180,355,29,29
+26975,7,368,181,355,24,24
+26976,7,369,170,355,27,27
+26977,7,369,171,355,28,28
+26978,7,369,172,355,26,26
+26979,7,369,173,355,25,25
+26980,7,369,174,355,29,29
+26981,7,369,175,355,24,24
+26982,7,369,176,355,23,23
+26983,7,369,177,355,22,22
+26984,7,369,178,355,29,29
+26985,7,369,179,355,24,24
+26986,7,369,180,355,29,29
+26987,7,369,181,355,24,24
+26988,7,370,170,355,27,27
+26989,7,370,171,355,28,28
+26990,7,370,172,355,26,26
+26991,7,370,173,355,25,25
+26992,7,370,174,355,29,29
+26993,7,370,175,355,24,24
+26994,7,370,176,355,23,23
+26995,7,370,177,355,22,22
+26996,7,370,178,355,29,29
+26997,7,370,179,355,24,24
+26998,7,370,180,355,29,29
+26999,7,370,181,355,24,24
+27000,7,371,170,355,27,27
+27001,7,371,171,355,28,28
+27002,7,371,172,355,26,26
+27003,7,371,173,355,25,25
+27004,7,371,174,355,29,29
+27005,7,371,175,355,24,24
+27006,7,371,176,355,23,23
+27007,7,371,177,355,22,22
+27008,7,371,178,353,27,27
+27009,7,371,179,353,27,27
+27010,7,371,180,353,25,25
+27011,7,371,181,353,29,29
+27012,7,372,170,355,27,27
+27013,7,372,171,355,28,28
+27014,7,372,172,355,26,26
+27015,7,372,173,355,25,25
+27016,7,372,174,355,29,29
+27017,7,372,175,355,24,24
+27018,7,372,176,355,23,23
+27019,7,372,177,355,22,22
+27020,7,372,178,353,27,27
+27021,7,372,179,353,27,27
+27022,7,372,180,353,25,25
+27023,7,372,181,353,29,29
+27024,7,373,170,355,27,27
+27025,7,373,171,355,28,28
+27026,7,373,172,355,26,26
+27027,7,373,173,355,25,25
+27028,7,373,174,355,29,29
+27029,7,373,175,355,24,24
+27030,7,373,176,355,23,23
+27031,7,373,177,355,22,22
+27032,7,373,178,353,27,27
+27033,7,373,179,353,27,27
+27034,7,373,180,353,25,25
+27035,7,373,181,353,29,29
+27036,7,374,170,355,27,27
+27037,7,374,171,307,27,27
+27038,7,374,172,355,28,28
+27039,7,374,173,307,29,29
+27040,7,374,174,355,29,29
+27041,7,374,175,37,27,27
+27042,7,374,176,37,29,29
+27043,7,374,177,37,25,25
+27044,7,374,178,278,27,27
+27045,7,374,179,278,27,27
+27046,7,374,180,278,26,26
+27047,7,374,181,278,28,28
+27048,7,375,170,355,28,28
+27049,7,375,171,355,29,29
+27050,7,375,172,355,27,27
+27051,7,375,173,355,26,26
+27052,7,375,174,355,30,30
+27053,7,375,175,355,25,25
+27054,7,375,176,355,24,24
+27055,7,375,177,353,28,28
+27056,7,375,178,353,26,26
+27057,7,375,179,353,30,30
+27058,7,375,180,358,28,28
+27059,7,375,181,358,28,28
+27060,7,376,155,129,10,30
+27061,7,376,156,72,10,30
+27062,7,376,157,320,10,30
+27063,7,376,158,129,5,10
+27064,7,376,159,72,5,10
+27065,7,376,160,320,25,30
+27066,7,376,161,320,30,35
+27067,7,376,162,320,20,25
+27068,7,376,163,320,35,40
+27069,7,376,164,320,40,45
+27070,7,376,165,72,5,35
+27071,7,376,166,41,5,35
+27072,7,376,167,41,30,35
+27073,7,376,168,42,30,35
+27074,7,376,169,42,30,35
+27075,7,376,170,41,30,30
+27076,7,376,171,41,31,31
+27077,7,376,172,41,32,32
+27078,7,376,173,41,33,33
+27079,7,376,174,41,28,28
+27080,7,376,175,41,29,29
+27081,7,376,176,41,34,34
+27082,7,376,177,41,35,35
+27083,7,376,178,42,34,34
+27084,7,376,179,42,35,35
+27085,7,376,180,42,33,33
+27086,7,376,181,42,36,36
+27087,7,377,170,41,30,30
+27088,7,377,171,41,31,31
+27089,7,377,172,41,32,32
+27090,7,377,173,41,33,33
+27091,7,377,174,41,28,28
+27092,7,377,175,41,29,29
+27093,7,377,176,41,34,34
+27094,7,377,177,41,35,35
+27095,7,377,178,42,34,34
+27096,7,377,179,42,35,35
+27097,7,377,180,42,33,33
+27098,7,377,181,42,36,36
+27099,7,378,170,41,30,30
+27100,7,378,171,41,31,31
+27101,7,378,172,41,32,32
+27102,7,378,173,303,30,30
+27103,7,378,174,303,32,32
+27104,7,378,175,303,34,34
+27105,7,378,176,41,33,33
+27106,7,378,177,41,34,34
+27107,7,378,178,42,34,34
+27108,7,378,179,42,35,35
+27109,7,378,180,42,33,33
+27110,7,378,181,42,36,36
+27111,7,379,170,41,30,30
+27112,7,379,171,41,31,31
+27113,7,379,172,41,32,32
+27114,7,379,173,303,30,30
+27115,7,379,174,303,32,32
+27116,7,379,175,303,34,34
+27117,7,379,176,41,33,33
+27118,7,379,177,41,34,34
+27119,7,379,178,42,34,34
+27120,7,379,179,42,35,35
+27121,7,379,180,42,33,33
+27122,7,379,181,42,36,36
+27123,7,380,170,41,30,30
+27124,7,380,171,41,31,31
+27125,7,380,172,41,32,32
+27126,7,380,173,303,30,30
+27127,7,380,174,303,32,32
+27128,7,380,175,303,34,34
+27129,7,380,176,41,33,33
+27130,7,380,177,41,34,34
+27131,7,380,178,42,34,34
+27132,7,380,179,42,35,35
+27133,7,380,180,42,33,33
+27134,7,380,181,42,36,36
+27135,7,381,170,41,30,30
+27136,7,381,171,41,31,31
+27137,7,381,172,41,32,32
+27138,7,381,173,303,30,30
+27139,7,381,174,303,32,32
+27140,7,381,175,303,34,34
+27141,7,381,176,41,33,33
+27142,7,381,177,41,34,34
+27143,7,381,178,42,34,34
+27144,7,381,179,42,35,35
+27145,7,381,180,42,33,33
+27146,7,381,181,42,36,36
+27147,7,382,170,42,40,40
+27148,7,382,171,297,40,40
+27149,7,382,172,305,40,40
+27150,7,382,173,294,40,40
+27151,7,382,174,41,36,36
+27152,7,382,175,296,36,36
+27153,7,382,176,42,38,38
+27154,7,382,177,297,38,38
+27155,7,382,178,304,36,36
+27156,7,382,179,293,36,36
+27157,7,382,180,304,36,36
+27158,7,382,181,293,36,36
+27159,7,383,182,75,30,40
+27160,7,383,183,74,30,40
+27161,7,383,184,75,35,40
+27162,7,383,185,75,35,40
+27163,7,383,186,75,35,40
+27164,7,383,170,42,40,40
+27165,7,383,171,297,40,40
+27166,7,383,172,305,40,40
+27167,7,383,173,308,40,40
+27168,7,383,174,42,38,38
+27169,7,383,175,297,38,38
+27170,7,383,176,42,42,42
+27171,7,383,177,297,42,42
+27172,7,383,178,305,42,42
+27173,7,383,179,307,38,38
+27174,7,383,180,305,42,42
+27175,7,383,181,307,38,38
+27176,7,384,155,129,10,30
+27177,7,384,156,118,10,30
+27178,7,384,157,339,10,30
+27179,7,384,158,129,5,10
+27180,7,384,159,118,5,10
+27181,7,384,160,339,25,30
+27182,7,384,161,339,30,35
+27183,7,384,162,340,30,35
+27184,7,384,163,340,35,40
+27185,7,384,164,340,40,45
+27186,7,384,165,42,30,35
+27187,7,384,166,42,25,30
+27188,7,384,167,42,35,40
+27189,7,384,168,42,35,40
+27190,7,384,169,42,35,40
+27191,7,384,170,42,40,40
+27192,7,384,171,303,40,40
+27193,7,384,172,305,40,40
+27194,7,384,173,308,40,40
+27195,7,384,174,42,42,42
+27196,7,384,175,303,42,42
+27197,7,384,176,42,44,44
+27198,7,384,177,303,44,44
+27199,7,384,178,305,42,42
+27200,7,384,179,308,42,42
+27201,7,384,180,305,44,44
+27202,7,384,181,308,44,44
+27203,7,385,155,129,10,30
+27204,7,385,156,72,10,30
+27205,7,385,157,320,10,30
+27206,7,385,158,129,5,10
+27207,7,385,159,72,5,10
+27208,7,385,160,320,25,30
+27209,7,385,161,320,30,35
+27210,7,385,162,320,20,25
+27211,7,385,163,320,35,40
+27212,7,385,164,320,40,45
+27213,7,385,165,72,5,35
+27214,7,385,166,41,5,35
+27215,7,385,167,363,25,30
+27216,7,385,168,363,25,30
+27217,7,385,169,363,25,35
+27218,7,385,170,41,26,26
+27219,7,385,171,363,26,26
+27220,7,385,172,41,28,28
+27221,7,385,173,363,28,28
+27222,7,385,174,41,30,30
+27223,7,385,175,363,30,30
+27224,7,385,176,41,32,32
+27225,7,385,177,363,32,32
+27226,7,385,178,42,32,32
+27227,7,385,179,363,32,32
+27228,7,385,180,42,32,32
+27229,7,385,181,363,32,32
+27230,7,386,170,41,26,26
+27231,7,386,171,363,26,26
+27232,7,386,172,41,28,28
+27233,7,386,173,363,28,28
+27234,7,386,174,41,30,30
+27235,7,386,175,363,30,30
+27236,7,386,176,361,26,26
+27237,7,386,177,363,32,32
+27238,7,386,178,42,30,30
+27239,7,386,179,361,28,28
+27240,7,386,180,42,32,32
+27241,7,386,181,361,30,30
+27242,7,387,170,100,24,24
+27243,7,387,171,81,24,24
+27244,7,387,172,100,25,25
+27245,7,387,173,81,25,25
+27246,7,387,174,100,23,23
+27247,7,387,175,81,23,23
+27248,7,387,176,100,26,26
+27249,7,387,177,81,26,26
+27250,7,387,178,100,22,22
+27251,7,387,179,81,22,22
+27252,7,387,180,100,22,22
+27253,7,387,181,81,22,22
+27254,7,388,170,100,24,24
+27255,7,388,171,81,24,24
+27256,7,388,172,100,25,25
+27257,7,388,173,81,25,25
+27258,7,388,174,100,23,23
+27259,7,388,175,81,23,23
+27260,7,388,176,100,26,26
+27261,7,388,177,81,26,26
+27262,7,388,178,100,22,22
+27263,7,388,179,81,22,22
+27264,7,388,180,101,26,26
+27265,7,388,181,82,26,26
+27266,7,389,155,129,10,30
+27267,7,389,156,72,10,30
+27268,7,389,157,72,10,30
+27269,7,389,158,129,5,10
+27270,7,389,159,72,5,10
+27271,7,389,160,72,25,30
+27272,7,389,161,72,30,35
+27273,7,389,162,73,30,35
+27274,7,389,163,73,25,30
+27275,7,389,164,73,20,25
+27276,7,389,165,72,5,35
+27277,7,389,166,72,5,35
+27278,7,389,167,72,5,35
+27279,7,389,168,72,5,35
+27280,7,389,169,73,30,35
+27281,7,390,170,303,48,48
+27282,7,390,171,42,48,48
+27283,7,390,172,42,50,50
+27284,7,390,173,303,50,50
+27285,7,390,174,344,48,48
+27286,7,390,175,356,48,48
+27287,7,390,176,356,50,50
+27288,7,390,177,344,49,49
+27289,7,390,178,344,47,47
+27290,7,390,179,344,50,50
+27291,7,390,180,344,47,47
+27292,7,390,181,344,50,50
+27293,7,391,170,303,51,51
+27294,7,391,171,42,51,51
+27295,7,391,172,42,53,53
+27296,7,391,173,303,53,53
+27297,7,391,174,344,51,51
+27298,7,391,175,356,51,51
+27299,7,391,176,356,53,53
+27300,7,391,177,344,52,52
+27301,7,391,178,344,50,50
+27302,7,391,179,344,53,53
+27303,7,391,180,344,50,50
+27304,7,391,181,344,53,53
+27305,7,392,170,303,54,54
+27306,7,392,171,42,54,54
+27307,7,392,172,42,56,56
+27308,7,392,173,303,56,56
+27309,7,392,174,344,54,54
+27310,7,392,175,356,54,54
+27311,7,392,176,356,56,56
+27312,7,392,177,344,55,55
+27313,7,392,178,344,56,56
+27314,7,392,179,334,57,57
+27315,7,392,180,334,54,54
+27316,7,392,181,334,60,60
+27317,7,393,170,265,2,2
+27318,7,393,171,263,2,2
+27319,7,393,172,265,2,2
+27320,7,393,173,265,3,3
+27321,7,393,174,263,3,3
+27322,7,393,175,263,3,3
+27323,7,393,176,265,3,3
+27324,7,393,177,263,3,3
+27325,7,393,178,261,2,2
+27326,7,393,179,261,2,2
+27327,7,393,180,261,3,3
+27328,7,393,181,261,3,3
+27329,7,394,155,129,10,30
+27330,7,394,156,118,10,30
+27331,7,394,157,341,10,30
+27332,7,394,158,129,5,10
+27333,7,394,159,118,5,10
+27334,7,394,160,341,25,30
+27335,7,394,161,341,30,35
+27336,7,394,162,341,20,25
+27337,7,394,163,341,35,40
+27338,7,394,164,341,40,45
+27339,7,394,165,183,20,30
+27340,7,394,166,183,10,20
+27341,7,394,167,183,30,35
+27342,7,394,168,183,5,10
+27343,7,394,169,283,20,30
+27344,7,394,170,263,3,3
+27345,7,394,171,265,3,3
+27346,7,394,172,263,4,4
+27347,7,394,173,265,4,4
+27348,7,394,174,273,3,3
+27349,7,394,175,273,4,4
+27350,7,394,176,261,3,3
+27351,7,394,177,261,3,3
+27352,7,394,178,261,4,4
+27353,7,394,179,280,4,4
+27354,7,394,180,261,4,4
+27355,7,394,181,283,3,3
+27356,7,395,155,129,10,30
+27357,7,395,156,72,10,30
+27358,7,395,157,320,10,30
+27359,7,395,158,129,5,10
+27360,7,395,159,72,5,10
+27361,7,395,160,319,30,35
+27362,7,395,161,320,30,35
+27363,7,395,162,320,25,30
+27364,7,395,163,320,35,40
+27365,7,395,164,320,40,45
+27366,7,395,165,72,5,35
+27367,7,395,166,278,10,30
+27368,7,395,167,278,15,25
+27369,7,395,168,279,25,30
+27370,7,395,169,279,25,30
+27371,7,395,170,263,2,2
+27372,7,395,171,263,3,3
+27373,7,395,172,263,3,3
+27374,7,395,173,263,4,4
+27375,7,395,174,261,2,2
+27376,7,395,175,261,3,3
+27377,7,395,176,261,3,3
+27378,7,395,177,261,4,4
+27379,7,395,178,278,3,3
+27380,7,395,179,278,3,3
+27381,7,395,180,278,2,2
+27382,7,395,181,278,4,4
+27383,7,396,155,129,10,30
+27384,7,396,156,129,10,30
+27385,7,396,157,129,10,30
+27386,7,396,158,129,5,10
+27387,7,396,159,129,5,10
+27388,7,396,160,129,25,30
+27389,7,396,161,129,30,35
+27390,7,396,162,129,20,25
+27391,7,396,163,129,35,40
+27392,7,396,164,129,40,45
+27393,7,396,165,278,10,30
+27394,7,396,166,278,15,25
+27395,7,396,167,278,15,25
+27396,7,396,168,279,25,30
+27397,7,396,169,279,25,30
+27398,7,396,170,263,4,4
+27399,7,396,171,265,4,4
+27400,7,396,172,263,5,5
+27401,7,396,173,265,5,5
+27402,7,396,174,263,4,4
+27403,7,396,175,263,5,5
+27404,7,396,176,276,4,4
+27405,7,396,177,276,5,5
+27406,7,396,178,278,4,4
+27407,7,396,179,278,4,4
+27408,7,396,180,278,3,3
+27409,7,396,181,278,5,5
+27410,7,397,155,129,10,30
+27411,7,397,156,72,10,30
+27412,7,397,157,320,10,30
+27413,7,397,158,129,5,10
+27414,7,397,159,72,5,10
+27415,7,397,160,320,25,30
+27416,7,397,161,320,30,35
+27417,7,397,162,320,20,25
+27418,7,397,163,320,35,40
+27419,7,397,164,320,40,45
+27420,7,397,165,72,5,35
+27421,7,397,166,278,10,30
+27422,7,397,167,278,15,25
+27423,7,397,168,279,25,30
+27424,7,397,169,279,25,30
+27425,7,398,155,129,10,30
+27426,7,398,156,72,10,30
+27427,7,398,157,320,10,30
+27428,7,398,158,129,5,10
+27429,7,398,159,72,5,10
+27430,7,398,160,320,25,30
+27431,7,398,161,320,30,35
+27432,7,398,162,320,20,25
+27433,7,398,163,320,35,40
+27434,7,398,164,320,40,45
+27435,7,398,165,72,5,35
+27436,7,398,166,278,10,30
+27437,7,398,167,278,15,25
+27438,7,398,168,279,25,30
+27439,7,398,169,279,25,30
+27440,7,399,155,129,10,30
+27441,7,399,156,72,10,30
+27442,7,399,157,320,10,30
+27443,7,399,158,129,5,10
+27444,7,399,159,72,5,10
+27445,7,399,160,320,25,30
+27446,7,399,161,320,30,35
+27447,7,399,162,320,20,25
+27448,7,399,163,320,35,40
+27449,7,399,164,320,40,45
+27450,7,399,165,72,5,35
+27451,7,399,166,278,10,30
+27452,7,399,167,278,15,25
+27453,7,399,168,279,25,30
+27454,7,399,169,279,25,30
+27455,7,400,155,129,10,30
+27456,7,400,156,72,10,30
+27457,7,400,157,320,10,30
+27458,7,400,158,129,5,10
+27459,7,400,159,72,5,10
+27460,7,400,160,320,25,30
+27461,7,400,161,320,30,35
+27462,7,400,162,320,20,25
+27463,7,400,163,320,35,40
+27464,7,400,164,320,40,45
+27465,7,400,165,72,5,35
+27466,7,400,166,278,10,30
+27467,7,400,167,278,15,25
+27468,7,400,168,279,25,30
+27469,7,400,169,279,25,30
+27470,7,401,155,129,10,30
+27471,7,401,156,72,10,30
+27472,7,401,157,320,10,30
+27473,7,401,158,129,5,10
+27474,7,401,159,72,5,10
+27475,7,401,160,320,25,30
+27476,7,401,161,320,30,35
+27477,7,401,162,320,20,25
+27478,7,401,163,320,35,40
+27479,7,401,164,320,40,45
+27480,7,401,165,72,5,35
+27481,7,401,166,278,10,30
+27482,7,401,167,278,15,25
+27483,7,401,168,279,25,30
+27484,7,401,169,279,25,30
+27485,7,402,155,129,10,30
+27486,7,402,156,72,10,30
+27487,7,402,157,320,10,30
+27488,7,402,158,129,5,10
+27489,7,402,159,72,5,10
+27490,7,402,160,320,25,30
+27491,7,402,161,320,30,35
+27492,7,402,162,320,20,25
+27493,7,402,163,320,35,40
+27494,7,402,164,320,40,45
+27495,7,402,165,72,5,35
+27496,7,402,166,278,10,30
+27497,7,402,167,278,15,25
+27498,7,402,168,279,25,30
+27499,7,402,169,279,25,30
+27500,7,402,170,263,12,12
+27501,7,402,171,309,12,12
+27502,7,402,172,316,12,12
+27503,7,402,173,309,13,13
+27504,7,402,174,312,13,13
+27505,7,402,175,43,13,13
+27506,7,402,176,312,13,13
+27507,7,402,177,316,13,13
+27508,7,402,178,278,12,12
+27509,7,402,179,278,12,12
+27510,7,402,180,311,12,12
+27511,7,402,181,311,13,13
+27512,7,403,155,129,10,30
+27513,7,403,156,118,10,30
+27514,7,403,157,339,10,30
+27515,7,403,158,129,5,10
+27516,7,403,159,118,5,10
+27517,7,403,182,74,10,15
+27518,7,403,183,74,5,10
+27519,7,403,184,74,15,20
+27520,7,403,185,74,15,20
+27521,7,403,186,74,15,20
+27522,7,403,160,339,25,30
+27523,7,403,161,339,30,35
+27524,7,403,162,339,20,25
+27525,7,403,163,339,35,40
+27526,7,403,164,339,40,45
+27527,7,403,165,183,20,30
+27528,7,403,166,183,10,20
+27529,7,403,167,183,30,35
+27530,7,403,168,183,5,10
+27531,7,403,169,283,20,30
+27532,7,403,170,27,20,20
+27533,7,403,171,328,20,20
+27534,7,403,172,27,21,21
+27535,7,403,173,328,21,21
+27536,7,403,174,331,19,19
+27537,7,403,175,331,21,21
+27538,7,403,176,27,19,19
+27539,7,403,177,328,19,19
+27540,7,403,178,343,20,20
+27541,7,403,179,343,20,20
+27542,7,403,180,343,22,22
+27543,7,403,181,343,22,22
+27544,7,404,170,322,15,15
+27545,7,404,171,322,15,15
+27546,7,404,172,66,15,15
+27547,7,404,173,322,14,14
+27548,7,404,174,322,14,14
+27549,7,404,175,66,14,14
+27550,7,404,176,322,16,16
+27551,7,404,177,66,16,16
+27552,7,404,178,322,16,16
+27553,7,404,179,322,16,16
+27554,7,404,180,322,16,16
+27555,7,404,181,322,16,16
+27556,7,405,170,327,15,15
+27557,7,405,171,327,15,15
+27558,7,405,172,27,15,15
+27559,7,405,173,327,14,14
+27560,7,405,174,327,14,14
+27561,7,405,175,27,14,14
+27562,7,405,176,327,16,16
+27563,7,405,177,27,16,16
+27564,7,405,178,327,16,16
+27565,7,405,179,227,16,16
+27566,7,405,180,327,16,16
+27567,7,405,181,227,16,16
+27568,7,406,155,129,10,30
+27569,7,406,156,118,10,30
+27570,7,406,157,339,10,30
+27571,7,406,158,129,5,10
+27572,7,406,159,118,5,10
+27573,7,406,182,74,10,15
+27574,7,406,183,74,5,10
+27575,7,406,184,74,15,20
+27576,7,406,185,74,15,20
+27577,7,406,186,74,15,20
+27578,7,406,160,339,25,30
+27579,7,406,161,339,30,35
+27580,7,406,162,339,20,25
+27581,7,406,163,339,35,40
+27582,7,406,164,339,40,45
+27583,7,406,165,183,20,30
+27584,7,406,166,183,10,20
+27585,7,406,167,183,30,35
+27586,7,406,168,183,5,10
+27587,7,406,169,283,20,30
+27588,7,406,170,333,16,16
+27589,7,406,171,273,16,16
+27590,7,406,172,333,17,17
+27591,7,406,173,333,15,15
+27592,7,406,174,273,15,15
+27593,7,406,175,335,16,16
+27594,7,406,176,274,16,16
+27595,7,406,177,274,18,18
+27596,7,406,178,335,17,17
+27597,7,406,179,335,15,15
+27598,7,406,180,335,17,17
+27599,7,406,181,283,15,15
+27600,7,407,155,129,10,30
+27601,7,407,156,72,10,30
+27602,7,407,157,320,10,30
+27603,7,407,158,129,5,10
+27604,7,407,159,72,5,10
+27605,7,407,160,320,25,30
+27606,7,407,161,320,30,35
+27607,7,407,162,320,20,25
+27608,7,407,163,320,35,40
+27609,7,407,164,320,40,45
+27610,7,407,165,72,5,35
+27611,7,407,166,278,10,30
+27612,7,407,167,278,15,25
+27613,7,407,168,279,25,30
+27614,7,407,169,279,25,30
+27615,7,407,170,333,23,23
+27616,7,407,171,276,23,23
+27617,7,407,172,333,25,25
+27618,7,407,173,276,24,24
+27619,7,407,174,276,25,25
+27620,7,407,175,277,25,25
+27621,7,407,176,39,24,24
+27622,7,407,177,39,25,25
+27623,7,407,178,278,24,24
+27624,7,407,179,278,24,24
+27625,7,407,180,278,26,26
+27626,7,407,181,278,25,25
+27627,7,408,170,263,6,6
+27628,7,408,171,293,6,6
+27629,7,408,172,290,6,6
+27630,7,408,173,293,7,7
+27631,7,408,174,290,7,7
+27632,7,408,175,276,6,6
+27633,7,408,176,276,7,7
+27634,7,408,177,276,8,8
+27635,7,408,178,263,7,7
+27636,7,408,179,263,8,8
+27637,7,408,180,300,7,7
+27638,7,408,181,300,8,8
+27639,7,409,155,129,10,30
+27640,7,409,156,118,10,30
+27641,7,409,157,341,10,30
+27642,7,409,158,129,5,10
+27643,7,409,159,118,5,10
+27644,7,409,160,341,25,30
+27645,7,409,161,341,30,35
+27646,7,409,162,341,20,25
+27647,7,409,163,341,35,40
+27648,7,409,164,341,40,45
+27649,7,409,165,183,20,30
+27650,7,409,166,183,10,20
+27651,7,409,167,183,30,35
+27652,7,409,168,183,5,10
+27653,7,409,169,283,20,30
+27654,7,409,170,263,13,13
+27655,7,409,171,315,13,13
+27656,7,409,172,263,14,14
+27657,7,409,173,315,14,14
+27658,7,409,174,183,13,13
+27659,7,409,175,43,13,13
+27660,7,409,176,314,13,13
+27661,7,409,177,314,13,13
+27662,7,409,178,314,14,14
+27663,7,409,179,314,14,14
+27664,7,409,180,313,13,13
+27665,7,409,181,283,13,13
+27666,7,410,155,129,10,30
+27667,7,410,156,72,10,30
+27668,7,410,157,318,10,30
+27669,7,410,158,129,5,10
+27670,7,410,159,72,5,10
+27671,7,410,160,319,30,35
+27672,7,410,161,318,30,35
+27673,7,410,162,318,20,25
+27674,7,410,163,318,35,40
+27675,7,410,164,318,40,45
+27676,7,410,165,72,5,35
+27677,7,410,166,278,10,30
+27678,7,410,167,278,15,25
+27679,7,410,168,279,25,30
+27680,7,410,169,279,25,30
+27681,7,410,170,263,24,24
+27682,7,410,171,309,24,24
+27683,7,410,172,263,26,26
+27684,7,410,173,309,26,26
+27685,7,410,174,264,26,26
+27686,7,410,175,310,26,26
+27687,7,410,176,278,25,25
+27688,7,410,177,278,25,25
+27689,7,410,178,278,26,26
+27690,7,410,179,278,26,26
+27691,7,410,180,278,27,27
+27692,7,410,181,352,25,25
+27693,7,411,155,129,10,30
+27694,7,411,156,72,10,30
+27695,7,411,157,318,10,30
+27696,7,411,158,129,5,10
+27697,7,411,159,72,5,10
+27698,7,411,160,318,25,30
+27699,7,411,161,318,30,35
+27700,7,411,162,318,20,25
+27701,7,411,163,318,35,40
+27702,7,411,164,318,40,45
+27703,7,411,165,72,5,35
+27704,7,411,166,278,10,30
+27705,7,411,167,278,15,25
+27706,7,411,168,279,25,30
+27707,7,411,169,279,25,30
+27708,7,411,170,263,25,25
+27709,7,411,171,264,25,25
+27710,7,411,172,263,27,27
+27711,7,411,173,43,25,25
+27712,7,411,174,264,27,27
+27713,7,411,175,43,26,26
+27714,7,411,176,43,27,27
+27715,7,411,177,43,24,24
+27716,7,411,178,357,25,25
+27717,7,411,179,357,26,26
+27718,7,411,180,357,27,27
+27719,7,411,181,352,25,25
+27720,7,412,155,129,10,30
+27721,7,412,156,118,10,30
+27722,7,412,157,339,10,30
+27723,7,412,158,129,5,10
+27724,7,412,159,118,5,10
+27725,7,412,160,339,25,30
+27726,7,412,161,339,30,35
+27727,7,412,162,339,20,25
+27728,7,412,163,339,35,40
+27729,7,412,164,339,40,45
+27730,7,412,165,183,20,30
+27731,7,412,166,183,10,20
+27732,7,412,167,183,30,35
+27733,7,412,168,183,5,10
+27734,7,412,169,283,20,30
+27735,7,412,170,263,25,25
+27736,7,412,171,264,25,25
+27737,7,412,172,264,27,27
+27738,7,412,173,43,25,25
+27739,7,412,174,183,25,25
+27740,7,412,175,43,26,26
+27741,7,412,176,43,27,27
+27742,7,412,177,183,27,27
+27743,7,412,178,359,25,25
+27744,7,412,179,359,27,27
+27745,7,412,180,352,25,25
+27746,7,412,181,283,25,25
+27747,7,413,155,129,10,30
+27748,7,413,156,72,10,30
+27749,7,413,157,320,10,30
+27750,7,413,158,129,5,10
+27751,7,413,159,72,5,10
+27752,7,413,160,320,25,30
+27753,7,413,161,320,30,35
+27754,7,413,162,320,20,25
+27755,7,413,163,320,35,40
+27756,7,413,164,320,40,45
+27757,7,413,165,72,5,35
+27758,7,413,166,278,10,30
+27759,7,413,167,278,15,25
+27760,7,413,168,279,25,30
+27761,7,413,169,279,25,30
+27762,7,413,170,263,26,26
+27763,7,413,171,355,26,26
+27764,7,413,172,264,26,26
+27765,7,413,173,355,28,28
+27766,7,413,174,264,28,28
+27767,7,413,175,43,26,26
+27768,7,413,176,43,28,28
+27769,7,413,177,44,28,28
+27770,7,413,178,278,26,26
+27771,7,413,179,278,27,27
+27772,7,413,180,278,28,28
+27773,7,413,181,352,25,25
+27774,7,414,155,129,10,30
+27775,7,414,156,72,10,30
+27776,7,414,157,320,10,30
+27777,7,414,158,129,5,10
+27778,7,414,159,72,5,10
+27779,7,414,160,319,30,35
+27780,7,414,161,320,30,35
+27781,7,414,162,320,25,30
+27782,7,414,163,320,35,40
+27783,7,414,164,320,40,45
+27784,7,414,165,72,5,35
+27785,7,414,166,278,10,30
+27786,7,414,167,278,15,25
+27787,7,414,168,279,25,30
+27788,7,414,169,279,25,30
+27789,7,415,155,129,10,30
+27790,7,415,156,72,10,30
+27791,7,415,157,320,10,30
+27792,7,415,158,129,5,10
+27793,7,415,159,72,5,10
+27794,7,415,160,320,25,30
+27795,7,415,161,320,30,35
+27796,7,415,162,320,20,25
+27797,7,415,163,320,35,40
+27798,7,415,164,320,40,45
+27799,7,415,165,72,5,35
+27800,7,415,166,278,10,30
+27801,7,415,167,278,15,25
+27802,7,415,168,279,25,30
+27803,7,415,169,279,25,30
+27804,7,415,170,263,26,26
+27805,7,415,171,355,26,26
+27806,7,415,172,264,26,26
+27807,7,415,173,355,28,28
+27808,7,415,174,264,28,28
+27809,7,415,175,43,26,26
+27810,7,415,176,43,28,28
+27811,7,415,177,44,28,28
+27812,7,415,178,278,26,26
+27813,7,415,179,278,27,27
+27814,7,415,180,278,28,28
+27815,7,415,181,352,25,25
+27816,7,416,155,129,10,30
+27817,7,416,156,72,10,30
+27818,7,416,157,320,10,30
+27819,7,416,158,129,5,10
+27820,7,416,159,72,5,10
+27821,7,416,160,319,30,35
+27822,7,416,161,320,30,35
+27823,7,416,162,320,25,30
+27824,7,416,163,320,35,40
+27825,7,416,164,320,40,45
+27826,7,416,165,72,5,35
+27827,7,416,166,278,10,30
+27828,7,416,167,278,15,25
+27829,7,416,168,279,25,30
+27830,7,416,169,279,25,30
+27831,7,417,165,366,20,30
+27832,7,417,166,170,20,30
+27833,7,417,167,366,30,35
+27834,7,417,168,369,30,35
+27835,7,417,169,369,30,35
+27836,7,418,155,129,10,30
+27837,7,418,156,72,10,30
+27838,7,418,157,320,10,30
+27839,7,418,158,129,5,10
+27840,7,418,159,72,5,10
+27841,7,418,160,319,30,35
+27842,7,418,161,320,30,35
+27843,7,418,162,320,25,30
+27844,7,418,163,320,35,40
+27845,7,418,164,320,40,45
+27846,7,418,165,72,5,35
+27847,7,418,166,278,10,30
+27848,7,418,167,278,15,25
+27849,7,418,168,279,25,30
+27850,7,418,169,279,25,30
+27851,7,419,155,129,10,30
+27852,7,419,156,72,10,30
+27853,7,419,157,320,10,30
+27854,7,419,158,129,5,10
+27855,7,419,159,72,5,10
+27856,7,419,160,319,30,35
+27857,7,419,161,320,30,35
+27858,7,419,162,320,25,30
+27859,7,419,163,320,35,40
+27860,7,419,164,320,40,45
+27861,7,419,165,72,5,35
+27862,7,419,166,278,10,30
+27863,7,419,167,278,15,25
+27864,7,419,168,279,25,30
+27865,7,419,169,279,25,30
+27866,7,420,165,366,20,30
+27867,7,420,166,170,20,30
+27868,7,420,167,366,30,35
+27869,7,420,168,369,30,35
+27870,7,420,169,369,30,35
+27871,7,421,155,129,10,30
+27872,7,421,156,72,10,30
+27873,7,421,157,320,10,30
+27874,7,421,158,129,5,10
+27875,7,421,159,72,5,10
+27876,7,421,160,319,30,35
+27877,7,421,161,320,30,35
+27878,7,421,162,320,25,30
+27879,7,421,163,320,35,40
+27880,7,421,164,320,40,45
+27881,7,421,165,72,5,35
+27882,7,421,166,278,10,30
+27883,7,421,167,278,15,25
+27884,7,421,168,279,25,30
+27885,7,421,169,279,25,30
+27886,7,422,155,129,10,30
+27887,7,422,156,370,10,30
+27888,7,422,157,320,10,30
+27889,7,422,158,129,5,10
+27890,7,422,159,72,5,10
+27891,7,422,160,370,30,35
+27892,7,422,161,320,30,35
+27893,7,422,162,222,30,35
+27894,7,422,163,320,35,40
+27895,7,422,164,320,40,45
+27896,7,422,165,72,5,35
+27897,7,422,166,278,10,30
+27898,7,422,167,278,15,25
+27899,7,422,168,279,25,30
+27900,7,422,169,279,25,30
+27901,7,423,155,129,10,30
+27902,7,423,156,72,10,30
+27903,7,423,157,320,10,30
+27904,7,423,158,129,5,10
+27905,7,423,159,72,5,10
+27906,7,423,160,319,30,35
+27907,7,423,161,320,30,35
+27908,7,423,162,320,25,30
+27909,7,423,163,320,35,40
+27910,7,423,164,320,40,45
+27911,7,423,165,72,5,35
+27912,7,423,166,278,10,30
+27913,7,423,167,278,15,25
+27914,7,423,168,279,25,30
+27915,7,423,169,321,35,40
+27916,7,424,155,129,10,30
+27917,7,424,156,72,10,30
+27918,7,424,157,320,10,30
+27919,7,424,158,129,5,10
+27920,7,424,159,72,5,10
+27921,7,424,160,319,30,35
+27922,7,424,161,320,30,35
+27923,7,424,162,320,25,30
+27924,7,424,163,320,35,40
+27925,7,424,164,320,40,45
+27926,7,424,165,72,5,35
+27927,7,424,166,278,10,30
+27928,7,424,167,278,15,25
+27929,7,424,168,279,25,30
+27930,7,424,169,279,25,30
+27931,7,424,170,360,30,30
+27932,7,424,171,360,35,35
+27933,7,424,172,360,25,25
+27934,7,424,173,360,40,40
+27935,7,424,174,360,20,20
+27936,7,424,175,360,45,45
+27937,7,424,176,360,15,15
+27938,7,424,177,360,50,50
+27939,7,424,178,360,10,10
+27940,7,424,179,360,5,5
+27941,7,424,180,360,10,10
+27942,7,424,181,360,5,5
+27943,7,425,155,129,10,30
+27944,7,425,156,72,10,30
+27945,7,425,157,320,10,30
+27946,7,425,158,129,5,10
+27947,7,425,159,72,5,10
+27948,7,425,160,319,30,35
+27949,7,425,161,320,30,35
+27950,7,425,162,320,25,30
+27951,7,425,163,320,35,40
+27952,7,425,164,320,40,45
+27953,7,425,165,72,5,35
+27954,7,425,166,278,10,30
+27955,7,425,167,278,15,25
+27956,7,425,168,279,25,30
+27957,7,425,169,279,25,30
+27958,7,426,155,129,10,30
+27959,7,426,156,72,10,30
+27960,7,426,157,320,10,30
+27961,7,426,158,129,5,10
+27962,7,426,159,72,5,10
+27963,7,426,160,319,30,35
+27964,7,426,161,320,30,35
+27965,7,426,162,116,25,30
+27966,7,426,163,320,35,40
+27967,7,426,164,320,40,45
+27968,7,426,165,72,5,35
+27969,7,426,166,278,10,30
+27970,7,426,167,278,15,25
+27971,7,426,168,279,25,30
+27972,7,426,169,279,25,30
+27973,7,427,155,129,10,30
+27974,7,427,156,72,10,30
+27975,7,427,157,320,10,30
+27976,7,427,158,129,5,10
+27977,7,427,159,72,5,10
+27978,7,427,160,319,30,35
+27979,7,427,161,320,30,35
+27980,7,427,162,116,25,30
+27981,7,427,163,320,35,40
+27982,7,427,164,320,40,45
+27983,7,427,165,72,5,35
+27984,7,427,166,278,10,30
+27985,7,427,167,278,15,25
+27986,7,427,168,279,25,30
+27987,7,427,169,279,25,30
+27988,7,428,155,129,10,30
+27989,7,428,156,72,10,30
+27990,7,428,157,320,10,30
+27991,7,428,158,129,5,10
+27992,7,428,159,72,5,10
+27993,7,428,160,319,30,35
+27994,7,428,161,320,30,35
+27995,7,428,162,116,25,30
+27996,7,428,163,320,35,40
+27997,7,428,164,320,40,45
+27998,7,428,165,72,5,35
+27999,7,428,166,278,10,30
+28000,7,428,167,278,15,25
+28001,7,428,168,279,25,30
+28002,7,428,169,279,25,30
+28003,7,429,155,129,10,30
+28004,7,429,156,118,10,25
+28005,7,429,157,118,10,30
+28006,7,429,158,129,5,10
+28007,7,429,159,118,5,10
+28008,7,429,160,118,25,30
+28009,7,429,161,118,30,35
+28010,7,429,162,119,30,35
+28011,7,429,163,119,35,40
+28012,7,429,164,119,25,30
+28013,7,429,165,54,20,30
+28014,7,429,166,54,20,30
+28015,7,429,167,54,30,35
+28016,7,429,168,55,30,35
+28017,7,429,169,55,25,40
+28018,7,429,170,111,27,27
+28019,7,429,171,43,27,27
+28020,7,429,172,111,29,29
+28021,7,429,173,43,29,29
+28022,7,429,174,84,27,27
+28023,7,429,175,44,29,29
+28024,7,429,176,44,31,31
+28025,7,429,177,84,29,29
+28026,7,429,178,85,29,29
+28027,7,429,179,127,27,27
+28028,7,429,180,85,31,31
+28029,7,429,181,127,29,29
+28030,7,430,182,74,10,15
+28031,7,430,183,74,5,10
+28032,7,430,184,74,15,20
+28033,7,430,185,74,20,25
+28034,7,430,186,74,25,30
+28035,7,430,170,231,27,27
+28036,7,430,171,43,27,27
+28037,7,430,172,231,29,29
+28038,7,430,173,43,29,29
+28039,7,430,174,177,27,27
+28040,7,430,175,44,29,29
+28041,7,430,176,44,31,31
+28042,7,430,177,177,29,29
+28043,7,430,178,178,29,29
+28044,7,430,179,214,27,27
+28045,7,430,180,178,31,31
+28046,7,430,181,214,29,29
+28047,7,431,155,129,10,30
+28048,7,431,156,118,10,25
+28049,7,431,157,118,10,30
+28050,7,431,158,129,5,10
+28051,7,431,159,118,5,10
+28052,7,431,160,118,25,30
+28053,7,431,161,118,30,35
+28054,7,431,162,119,30,35
+28055,7,431,163,119,35,40
+28056,7,431,164,119,25,30
+28057,7,431,165,54,20,30
+28058,7,431,166,54,20,30
+28059,7,431,167,54,30,35
+28060,7,431,168,54,30,35
+28061,7,431,169,54,30,35
+28062,7,431,170,43,25,25
+28063,7,431,171,43,27,27
+28064,7,431,172,203,25,25
+28065,7,431,173,203,27,27
+28066,7,431,174,177,25,25
+28067,7,431,175,84,25,25
+28068,7,431,176,44,25,25
+28069,7,431,177,202,27,27
+28070,7,431,178,25,25,25
+28071,7,431,179,202,27,27
+28072,7,431,180,25,27,27
+28073,7,431,181,202,29,29
+28074,7,432,170,43,25,25
+28075,7,432,171,43,27,27
+28076,7,432,172,203,25,25
+28077,7,432,173,203,27,27
+28078,7,432,174,177,25,25
+28079,7,432,175,84,25,25
+28080,7,432,176,44,25,25
+28081,7,432,177,202,27,27
+28082,7,432,178,25,25,25
+28083,7,432,179,202,27,27
+28084,7,432,180,25,27,27
+28085,7,432,181,202,29,29
+28086,7,433,155,129,10,30
+28087,7,433,156,72,10,30
+28088,7,433,157,320,10,30
+28089,7,433,158,129,5,10
+28090,7,433,159,72,5,10
+28091,7,433,160,320,25,30
+28092,7,433,161,320,30,35
+28093,7,433,162,320,20,25
+28094,7,433,163,320,35,40
+28095,7,433,164,320,40,45
+28096,7,433,165,72,5,35
+28097,7,433,166,278,10,30
+28098,7,433,167,278,15,25
+28099,7,433,168,279,25,30
+28100,7,433,169,279,25,30
+28101,7,434,155,129,10,30
+28102,7,434,156,72,10,30
+28103,7,434,157,320,10,30
+28104,7,434,158,129,5,10
+28105,7,434,159,72,5,10
+28106,7,434,160,319,30,35
+28107,7,434,161,320,30,35
+28108,7,434,162,320,25,30
+28109,7,434,163,320,35,40
+28110,7,434,164,320,40,45
+28111,7,434,165,72,5,35
+28112,7,434,166,278,10,30
+28113,7,434,167,278,15,25
+28114,7,434,168,279,25,30
+28115,7,434,169,279,25,30
+28116,8,350,155,129,10,30
+28117,8,350,156,118,10,30
+28118,8,350,157,341,10,30
+28119,8,350,158,129,5,10
+28120,8,350,159,118,5,10
+28121,8,350,160,341,25,30
+28122,8,350,161,341,30,35
+28123,8,350,162,341,20,25
+28124,8,350,163,341,35,40
+28125,8,350,164,341,40,45
+28126,8,350,165,183,20,30
+28127,8,350,166,183,10,20
+28128,8,350,167,183,30,35
+28129,8,350,168,183,5,10
+28130,8,350,169,183,5,10
+28131,8,351,155,129,10,30
+28132,8,351,156,72,10,30
+28133,8,351,157,320,10,30
+28134,8,351,158,129,5,10
+28135,8,351,159,72,5,10
+28136,8,351,160,320,25,30
+28137,8,351,161,320,30,35
+28138,8,351,162,320,20,25
+28139,8,351,163,320,35,40
+28140,8,351,164,320,40,45
+28141,8,351,165,72,5,35
+28142,8,351,166,278,10,30
+28143,8,351,167,278,15,25
+28144,8,351,168,279,25,30
+28145,8,351,169,279,25,30
+28146,8,352,155,129,10,30
+28147,8,352,156,72,10,30
+28148,8,352,157,320,10,30
+28149,8,352,158,129,5,10
+28150,8,352,159,72,5,10
+28151,8,352,160,320,25,30
+28152,8,352,161,320,30,35
+28153,8,352,162,120,25,30
+28154,8,352,163,320,35,40
+28155,8,352,164,320,40,45
+28156,8,352,165,72,5,35
+28157,8,352,166,278,10,30
+28158,8,352,167,278,15,25
+28159,8,352,168,279,25,30
+28160,8,352,169,279,25,30
+28161,8,353,155,129,10,30
+28162,8,353,156,72,10,30
+28163,8,353,157,320,10,30
+28164,8,353,158,129,5,10
+28165,8,353,159,72,5,10
+28166,8,353,160,319,30,35
+28167,8,353,161,320,30,35
+28168,8,353,162,320,25,30
+28169,8,353,163,320,35,40
+28170,8,353,164,320,40,45
+28171,8,353,165,72,5,35
+28172,8,353,166,278,10,30
+28173,8,353,167,278,15,25
+28174,8,353,168,279,25,30
+28175,8,353,169,279,25,30
+28176,8,354,155,129,10,30
+28177,8,354,156,129,10,30
+28178,8,354,157,129,10,30
+28179,8,354,158,129,5,10
+28180,8,354,159,72,5,10
+28181,8,354,160,129,30,35
+28182,8,354,161,129,30,35
+28183,8,354,162,130,35,40
+28184,8,354,163,130,35,45
+28185,8,354,164,130,5,45
+28186,8,354,165,129,5,35
+28187,8,354,166,129,10,30
+28188,8,354,167,129,15,25
+28189,8,354,168,129,25,30
+28190,8,354,169,129,25,30
+28191,8,355,155,129,10,30
+28192,8,355,156,370,10,30
+28193,8,355,157,320,10,30
+28194,8,355,158,129,5,10
+28195,8,355,159,72,5,10
+28196,8,355,160,370,30,35
+28197,8,355,161,320,30,35
+28198,8,355,162,222,30,35
+28199,8,355,163,320,35,40
+28200,8,355,164,320,40,45
+28201,8,355,165,72,5,35
+28202,8,355,166,278,10,30
+28203,8,355,167,278,15,25
+28204,8,355,168,279,25,30
+28205,8,355,169,279,25,30
+28206,8,356,155,129,10,30
+28207,8,356,156,118,10,30
+28208,8,356,157,339,10,30
+28209,8,356,158,129,5,10
+28210,8,356,159,118,5,10
+28211,8,356,160,339,25,30
+28212,8,356,161,339,30,35
+28213,8,356,162,339,20,25
+28214,8,356,163,339,35,40
+28215,8,356,164,339,40,45
+28216,8,356,165,41,5,35
+28217,8,356,166,41,30,35
+28218,8,356,167,337,25,35
+28219,8,356,168,337,15,25
+28220,8,356,169,337,5,15
+28221,8,356,170,41,16,16
+28222,8,356,171,41,17,17
+28223,8,356,172,41,18,18
+28224,8,356,173,41,15,15
+28225,8,356,174,41,14,14
+28226,8,356,175,337,16,16
+28227,8,356,176,337,18,18
+28228,8,356,177,337,14,14
+28229,8,356,178,41,19,19
+28230,8,356,179,41,20,20
+28231,8,356,180,41,19,19
+28232,8,356,181,41,20,20
+28233,8,357,155,129,10,30
+28234,8,357,156,118,10,30
+28235,8,357,157,339,10,30
+28236,8,357,158,129,5,10
+28237,8,357,159,118,5,10
+28238,8,357,160,339,25,30
+28239,8,357,161,339,30,35
+28240,8,357,162,340,30,35
+28241,8,357,163,340,35,40
+28242,8,357,164,340,40,45
+28243,8,357,165,42,30,35
+28244,8,357,166,42,30,35
+28245,8,357,167,337,25,35
+28246,8,357,168,337,15,25
+28247,8,357,169,337,5,15
+28248,8,357,170,42,33,33
+28249,8,357,171,42,35,35
+28250,8,357,172,42,33,33
+28251,8,357,173,337,35,35
+28252,8,357,174,337,33,33
+28253,8,357,175,337,37,37
+28254,8,357,176,42,35,35
+28255,8,357,177,337,39,39
+28256,8,357,178,42,38,38
+28257,8,357,179,42,40,40
+28258,8,357,180,42,38,38
+28259,8,357,181,42,40,40
+28260,8,358,155,129,10,30
+28261,8,358,156,118,10,30
+28262,8,358,157,339,10,30
+28263,8,358,158,129,5,10
+28264,8,358,159,118,5,10
+28265,8,358,160,339,25,30
+28266,8,358,161,339,30,35
+28267,8,358,162,340,30,35
+28268,8,358,163,340,35,40
+28269,8,358,164,340,40,45
+28270,8,358,165,42,30,35
+28271,8,358,166,42,30,35
+28272,8,358,167,337,25,35
+28273,8,358,168,337,15,25
+28274,8,358,169,337,5,15
+28275,8,358,170,42,33,33
+28276,8,358,171,42,35,35
+28277,8,358,172,42,33,33
+28278,8,358,173,337,35,35
+28279,8,358,174,337,33,33
+28280,8,358,175,337,37,37
+28281,8,358,176,42,35,35
+28282,8,358,177,337,39,39
+28283,8,358,178,42,38,38
+28284,8,358,179,42,40,40
+28285,8,358,180,42,38,38
+28286,8,358,181,42,40,40
+28287,8,359,155,129,10,30
+28288,8,359,156,118,10,30
+28289,8,359,157,339,10,30
+28290,8,359,158,129,5,10
+28291,8,359,159,118,5,10
+28292,8,359,160,339,25,30
+28293,8,359,161,339,30,35
+28294,8,359,162,340,30,35
+28295,8,359,163,340,35,40
+28296,8,359,164,340,40,45
+28297,8,359,165,42,30,35
+28298,8,359,166,42,30,35
+28299,8,359,167,337,25,35
+28300,8,359,168,337,15,25
+28301,8,359,169,337,5,15
+28302,8,359,170,42,33,33
+28303,8,359,171,42,35,35
+28304,8,359,172,371,30,30
+28305,8,359,173,337,35,35
+28306,8,359,174,371,35,35
+28307,8,359,175,337,37,37
+28308,8,359,176,371,25,25
+28309,8,359,177,337,39,39
+28310,8,359,178,42,38,38
+28311,8,359,179,42,40,40
+28312,8,359,180,42,38,38
+28313,8,359,181,42,40,40
+28314,8,360,170,293,6,6
+28315,8,360,171,293,7,7
+28316,8,360,172,293,6,6
+28317,8,360,173,293,6,6
+28318,8,360,174,293,7,7
+28319,8,360,175,293,7,7
+28320,8,360,176,293,5,5
+28321,8,360,177,293,8,8
+28322,8,360,178,293,5,5
+28323,8,360,179,293,8,8
+28324,8,360,180,293,5,5
+28325,8,360,181,293,8,8
+28326,8,361,170,41,7,7
+28327,8,361,171,296,8,8
+28328,8,361,172,296,7,7
+28329,8,361,173,41,8,8
+28330,8,361,174,296,9,9
+28331,8,361,175,63,8,8
+28332,8,361,176,296,10,10
+28333,8,361,177,296,6,6
+28334,8,361,178,74,7,7
+28335,8,361,179,74,8,8
+28336,8,361,180,74,6,6
+28337,8,361,181,74,9,9
+28338,8,362,170,41,9,9
+28339,8,362,171,304,10,10
+28340,8,362,172,304,9,9
+28341,8,362,173,304,11,11
+28342,8,362,174,41,10,10
+28343,8,362,175,63,9,9
+28344,8,362,176,296,10,10
+28345,8,362,177,296,11,11
+28346,8,362,178,302,10,10
+28347,8,362,179,302,10,10
+28348,8,362,180,302,9,9
+28349,8,362,181,302,11,11
+28350,8,363,182,74,10,15
+28351,8,363,183,299,10,20
+28352,8,363,184,74,5,10
+28353,8,363,185,74,15,20
+28354,8,363,186,74,15,20
+28355,8,363,170,41,10,10
+28356,8,363,171,304,11,11
+28357,8,363,172,304,10,10
+28358,8,363,173,41,11,11
+28359,8,363,174,304,12,12
+28360,8,363,175,63,10,10
+28361,8,363,176,302,10,10
+28362,8,363,177,302,11,11
+28363,8,363,178,302,12,12
+28364,8,363,179,302,10,10
+28365,8,363,180,302,12,12
+28366,8,363,181,302,10,10
+28367,8,364,170,41,7,7
+28368,8,364,171,296,8,8
+28369,8,364,172,296,7,7
+28370,8,364,173,41,8,8
+28371,8,364,174,296,9,9
+28372,8,364,175,63,8,8
+28373,8,364,176,296,10,10
+28374,8,364,177,296,6,6
+28375,8,364,178,304,7,7
+28376,8,364,179,304,8,8
+28377,8,364,180,304,7,7
+28378,8,364,181,304,8,8
+28379,8,365,170,263,5,5
+28380,8,365,171,265,5,5
+28381,8,365,172,285,5,5
+28382,8,365,173,263,6,6
+28383,8,365,174,266,5,5
+28384,8,365,175,268,5,5
+28385,8,365,176,265,6,6
+28386,8,365,177,285,6,6
+28387,8,365,178,276,5,5
+28388,8,365,179,287,5,5
+28389,8,365,180,276,6,6
+28390,8,365,181,287,6,6
+28391,8,366,170,322,21,21
+28392,8,366,171,322,21,21
+28393,8,366,172,66,21,21
+28394,8,366,173,322,20,20
+28395,8,366,174,325,20,20
+28396,8,366,175,66,20,20
+28397,8,366,176,325,21,21
+28398,8,366,177,66,22,22
+28399,8,366,178,322,22,22
+28400,8,366,179,325,22,22
+28401,8,366,180,322,22,22
+28402,8,366,181,325,22,22
+28403,8,367,170,322,15,15
+28404,8,367,171,88,15,15
+28405,8,367,172,322,16,16
+28406,8,367,173,66,15,15
+28407,8,367,174,324,15,15
+28408,8,367,175,218,15,15
+28409,8,367,176,88,16,16
+28410,8,367,177,66,16,16
+28411,8,367,178,324,14,14
+28412,8,367,179,324,16,16
+28413,8,367,180,109,14,14
+28414,8,367,181,109,14,14
+28415,8,368,170,353,27,27
+28416,8,368,171,353,28,28
+28417,8,368,172,353,26,26
+28418,8,368,173,353,25,25
+28419,8,368,174,353,29,29
+28420,8,368,175,353,24,24
+28421,8,368,176,353,23,23
+28422,8,368,177,353,22,22
+28423,8,368,178,353,29,29
+28424,8,368,179,353,24,24
+28425,8,368,180,353,29,29
+28426,8,368,181,353,24,24
+28427,8,369,170,353,27,27
+28428,8,369,171,353,28,28
+28429,8,369,172,353,26,26
+28430,8,369,173,353,25,25
+28431,8,369,174,353,29,29
+28432,8,369,175,353,24,24
+28433,8,369,176,353,23,23
+28434,8,369,177,353,22,22
+28435,8,369,178,353,29,29
+28436,8,369,179,353,24,24
+28437,8,369,180,353,29,29
+28438,8,369,181,353,24,24
+28439,8,370,170,353,27,27
+28440,8,370,171,353,28,28
+28441,8,370,172,353,26,26
+28442,8,370,173,353,25,25
+28443,8,370,174,353,29,29
+28444,8,370,175,353,24,24
+28445,8,370,176,353,23,23
+28446,8,370,177,353,22,22
+28447,8,370,178,353,29,29
+28448,8,370,179,353,24,24
+28449,8,370,180,353,29,29
+28450,8,370,181,353,24,24
+28451,8,371,170,353,27,27
+28452,8,371,171,353,28,28
+28453,8,371,172,353,26,26
+28454,8,371,173,353,25,25
+28455,8,371,174,353,29,29
+28456,8,371,175,353,24,24
+28457,8,371,176,353,23,23
+28458,8,371,177,353,22,22
+28459,8,371,178,355,27,27
+28460,8,371,179,355,27,27
+28461,8,371,180,355,25,25
+28462,8,371,181,355,29,29
+28463,8,372,170,353,27,27
+28464,8,372,171,353,28,28
+28465,8,372,172,353,26,26
+28466,8,372,173,353,25,25
+28467,8,372,174,353,29,29
+28468,8,372,175,353,24,24
+28469,8,372,176,353,23,23
+28470,8,372,177,353,22,22
+28471,8,372,178,355,27,27
+28472,8,372,179,355,27,27
+28473,8,372,180,355,25,25
+28474,8,372,181,355,29,29
+28475,8,373,170,353,27,27
+28476,8,373,171,353,28,28
+28477,8,373,172,353,26,26
+28478,8,373,173,353,25,25
+28479,8,373,174,353,29,29
+28480,8,373,175,353,24,24
+28481,8,373,176,353,23,23
+28482,8,373,177,353,22,22
+28483,8,373,178,355,27,27
+28484,8,373,179,355,27,27
+28485,8,373,180,355,25,25
+28486,8,373,181,355,29,29
+28487,8,374,170,353,27,27
+28488,8,374,171,307,27,27
+28489,8,374,172,353,28,28
+28490,8,374,173,307,29,29
+28491,8,374,174,353,29,29
+28492,8,374,175,37,27,27
+28493,8,374,176,37,29,29
+28494,8,374,177,37,25,25
+28495,8,374,178,278,27,27
+28496,8,374,179,278,27,27
+28497,8,374,180,278,26,26
+28498,8,374,181,278,28,28
+28499,8,375,170,353,28,28
+28500,8,375,171,353,29,29
+28501,8,375,172,353,27,27
+28502,8,375,173,353,26,26
+28503,8,375,174,353,30,30
+28504,8,375,175,353,25,25
+28505,8,375,176,353,24,24
+28506,8,375,177,355,28,28
+28507,8,375,178,355,26,26
+28508,8,375,179,355,30,30
+28509,8,375,180,358,28,28
+28510,8,375,181,358,28,28
+28511,8,376,155,129,10,30
+28512,8,376,156,72,10,30
+28513,8,376,157,320,10,30
+28514,8,376,158,129,5,10
+28515,8,376,159,72,5,10
+28516,8,376,160,320,25,30
+28517,8,376,161,320,30,35
+28518,8,376,162,320,20,25
+28519,8,376,163,320,35,40
+28520,8,376,164,320,40,45
+28521,8,376,165,72,5,35
+28522,8,376,166,41,5,35
+28523,8,376,167,41,30,35
+28524,8,376,168,42,30,35
+28525,8,376,169,42,30,35
+28526,8,376,170,41,30,30
+28527,8,376,171,41,31,31
+28528,8,376,172,41,32,32
+28529,8,376,173,41,33,33
+28530,8,376,174,41,28,28
+28531,8,376,175,41,29,29
+28532,8,376,176,41,34,34
+28533,8,376,177,41,35,35
+28534,8,376,178,42,34,34
+28535,8,376,179,42,35,35
+28536,8,376,180,42,33,33
+28537,8,376,181,42,36,36
+28538,8,377,170,41,30,30
+28539,8,377,171,41,31,31
+28540,8,377,172,41,32,32
+28541,8,377,173,41,33,33
+28542,8,377,174,41,28,28
+28543,8,377,175,41,29,29
+28544,8,377,176,41,34,34
+28545,8,377,177,41,35,35
+28546,8,377,178,42,34,34
+28547,8,377,179,42,35,35
+28548,8,377,180,42,33,33
+28549,8,377,181,42,36,36
+28550,8,378,170,41,30,30
+28551,8,378,171,41,31,31
+28552,8,378,172,41,32,32
+28553,8,378,173,302,30,30
+28554,8,378,174,302,32,32
+28555,8,378,175,302,34,34
+28556,8,378,176,41,33,33
+28557,8,378,177,41,34,34
+28558,8,378,178,42,34,34
+28559,8,378,179,42,35,35
+28560,8,378,180,42,33,33
+28561,8,378,181,42,36,36
+28562,8,379,170,41,30,30
+28563,8,379,171,41,31,31
+28564,8,379,172,41,32,32
+28565,8,379,173,302,30,30
+28566,8,379,174,302,32,32
+28567,8,379,175,302,34,34
+28568,8,379,176,41,33,33
+28569,8,379,177,41,34,34
+28570,8,379,178,42,34,34
+28571,8,379,179,42,35,35
+28572,8,379,180,42,33,33
+28573,8,379,181,42,36,36
+28574,8,380,170,41,30,30
+28575,8,380,171,41,31,31
+28576,8,380,172,41,32,32
+28577,8,380,173,302,30,30
+28578,8,380,174,302,32,32
+28579,8,380,175,302,34,34
+28580,8,380,176,41,33,33
+28581,8,380,177,41,34,34
+28582,8,380,178,42,34,34
+28583,8,380,179,42,35,35
+28584,8,380,180,42,33,33
+28585,8,380,181,42,36,36
+28586,8,381,170,41,30,30
+28587,8,381,171,41,31,31
+28588,8,381,172,41,32,32
+28589,8,381,173,302,30,30
+28590,8,381,174,302,32,32
+28591,8,381,175,302,34,34
+28592,8,381,176,41,33,33
+28593,8,381,177,41,34,34
+28594,8,381,178,42,34,34
+28595,8,381,179,42,35,35
+28596,8,381,180,42,33,33
+28597,8,381,181,42,36,36
+28598,8,382,170,42,40,40
+28599,8,382,171,297,40,40
+28600,8,382,172,305,40,40
+28601,8,382,173,294,40,40
+28602,8,382,174,41,36,36
+28603,8,382,175,296,36,36
+28604,8,382,176,42,38,38
+28605,8,382,177,297,38,38
+28606,8,382,178,304,36,36
+28607,8,382,179,293,36,36
+28608,8,382,180,304,36,36
+28609,8,382,181,293,36,36
+28610,8,383,182,75,30,40
+28611,8,383,183,74,30,40
+28612,8,383,184,75,35,40
+28613,8,383,185,75,35,40
+28614,8,383,186,75,35,40
+28615,8,383,170,42,40,40
+28616,8,383,171,297,40,40
+28617,8,383,172,305,40,40
+28618,8,383,173,308,40,40
+28619,8,383,174,42,38,38
+28620,8,383,175,297,38,38
+28621,8,383,176,42,42,42
+28622,8,383,177,297,42,42
+28623,8,383,178,305,42,42
+28624,8,383,179,307,38,38
+28625,8,383,180,305,42,42
+28626,8,383,181,307,38,38
+28627,8,384,155,129,10,30
+28628,8,384,156,118,10,30
+28629,8,384,157,339,10,30
+28630,8,384,158,129,5,10
+28631,8,384,159,118,5,10
+28632,8,384,160,339,25,30
+28633,8,384,161,339,30,35
+28634,8,384,162,340,30,35
+28635,8,384,163,340,35,40
+28636,8,384,164,340,40,45
+28637,8,384,165,42,30,35
+28638,8,384,166,42,25,30
+28639,8,384,167,42,35,40
+28640,8,384,168,42,35,40
+28641,8,384,169,42,35,40
+28642,8,384,170,42,40,40
+28643,8,384,171,302,40,40
+28644,8,384,172,305,40,40
+28645,8,384,173,308,40,40
+28646,8,384,174,42,42,42
+28647,8,384,175,302,42,42
+28648,8,384,176,42,44,44
+28649,8,384,177,302,44,44
+28650,8,384,178,305,42,42
+28651,8,384,179,308,42,42
+28652,8,384,180,305,44,44
+28653,8,384,181,308,44,44
+28654,8,385,155,129,10,30
+28655,8,385,156,72,10,30
+28656,8,385,157,320,10,30
+28657,8,385,158,129,5,10
+28658,8,385,159,72,5,10
+28659,8,385,160,320,25,30
+28660,8,385,161,320,30,35
+28661,8,385,162,320,20,25
+28662,8,385,163,320,35,40
+28663,8,385,164,320,40,45
+28664,8,385,165,72,5,35
+28665,8,385,166,41,5,35
+28666,8,385,167,363,25,30
+28667,8,385,168,363,25,30
+28668,8,385,169,363,25,35
+28669,8,385,170,41,26,26
+28670,8,385,171,363,26,26
+28671,8,385,172,41,28,28
+28672,8,385,173,363,28,28
+28673,8,385,174,41,30,30
+28674,8,385,175,363,30,30
+28675,8,385,176,41,32,32
+28676,8,385,177,363,32,32
+28677,8,385,178,42,32,32
+28678,8,385,179,363,32,32
+28679,8,385,180,42,32,32
+28680,8,385,181,363,32,32
+28681,8,386,170,41,26,26
+28682,8,386,171,363,26,26
+28683,8,386,172,41,28,28
+28684,8,386,173,363,28,28
+28685,8,386,174,41,30,30
+28686,8,386,175,363,30,30
+28687,8,386,176,361,26,26
+28688,8,386,177,363,32,32
+28689,8,386,178,42,30,30
+28690,8,386,179,361,28,28
+28691,8,386,180,42,32,32
+28692,8,386,181,361,30,30
+28693,8,387,170,100,24,24
+28694,8,387,171,81,24,24
+28695,8,387,172,100,25,25
+28696,8,387,173,81,25,25
+28697,8,387,174,100,23,23
+28698,8,387,175,81,23,23
+28699,8,387,176,100,26,26
+28700,8,387,177,81,26,26
+28701,8,387,178,100,22,22
+28702,8,387,179,81,22,22
+28703,8,387,180,100,22,22
+28704,8,387,181,81,22,22
+28705,8,388,170,100,24,24
+28706,8,388,171,81,24,24
+28707,8,388,172,100,25,25
+28708,8,388,173,81,25,25
+28709,8,388,174,100,23,23
+28710,8,388,175,81,23,23
+28711,8,388,176,100,26,26
+28712,8,388,177,81,26,26
+28713,8,388,178,100,22,22
+28714,8,388,179,81,22,22
+28715,8,388,180,101,26,26
+28716,8,388,181,82,26,26
+28717,8,389,155,129,10,30
+28718,8,389,156,72,10,30
+28719,8,389,157,72,10,30
+28720,8,389,158,129,5,10
+28721,8,389,159,72,5,10
+28722,8,389,160,72,25,30
+28723,8,389,161,72,30,35
+28724,8,389,162,73,30,35
+28725,8,389,163,73,25,30
+28726,8,389,164,73,20,25
+28727,8,389,165,72,5,35
+28728,8,389,166,72,5,35
+28729,8,389,167,72,5,35
+28730,8,389,168,72,5,35
+28731,8,389,169,73,30,35
+28732,8,390,170,302,48,48
+28733,8,390,171,42,48,48
+28734,8,390,172,42,50,50
+28735,8,390,173,302,50,50
+28736,8,390,174,344,48,48
+28737,8,390,175,354,48,48
+28738,8,390,176,354,50,50
+28739,8,390,177,344,49,49
+28740,8,390,178,344,47,47
+28741,8,390,179,344,50,50
+28742,8,390,180,344,47,47
+28743,8,390,181,344,50,50
+28744,8,391,170,302,51,51
+28745,8,391,171,42,51,51
+28746,8,391,172,42,53,53
+28747,8,391,173,302,53,53
+28748,8,391,174,344,51,51
+28749,8,391,175,354,51,51
+28750,8,391,176,354,53,53
+28751,8,391,177,344,52,52
+28752,8,391,178,344,50,50
+28753,8,391,179,344,53,53
+28754,8,391,180,344,50,50
+28755,8,391,181,344,53,53
+28756,8,392,170,302,54,54
+28757,8,392,171,42,54,54
+28758,8,392,172,42,56,56
+28759,8,392,173,302,56,56
+28760,8,392,174,344,54,54
+28761,8,392,175,354,54,54
+28762,8,392,176,354,56,56
+28763,8,392,177,344,55,55
+28764,8,392,178,344,56,56
+28765,8,392,179,334,57,57
+28766,8,392,180,334,54,54
+28767,8,392,181,334,60,60
+28768,8,393,170,265,2,2
+28769,8,393,171,263,2,2
+28770,8,393,172,265,2,2
+28771,8,393,173,265,3,3
+28772,8,393,174,263,3,3
+28773,8,393,175,263,3,3
+28774,8,393,176,265,3,3
+28775,8,393,177,263,3,3
+28776,8,393,178,261,2,2
+28777,8,393,179,261,2,2
+28778,8,393,180,261,3,3
+28779,8,393,181,261,3,3
+28780,8,394,155,129,10,30
+28781,8,394,156,118,10,30
+28782,8,394,157,341,10,30
+28783,8,394,158,129,5,10
+28784,8,394,159,118,5,10
+28785,8,394,160,341,25,30
+28786,8,394,161,341,30,35
+28787,8,394,162,341,20,25
+28788,8,394,163,341,35,40
+28789,8,394,164,341,40,45
+28790,8,394,165,183,20,30
+28791,8,394,166,183,10,20
+28792,8,394,167,183,30,35
+28793,8,394,168,183,5,10
+28794,8,394,169,283,20,30
+28795,8,394,170,263,3,3
+28796,8,394,171,265,3,3
+28797,8,394,172,263,4,4
+28798,8,394,173,265,4,4
+28799,8,394,174,270,3,3
+28800,8,394,175,270,4,4
+28801,8,394,176,261,3,3
+28802,8,394,177,261,3,3
+28803,8,394,178,261,4,4
+28804,8,394,179,280,4,4
+28805,8,394,180,261,4,4
+28806,8,394,181,283,3,3
+28807,8,395,155,129,10,30
+28808,8,395,156,72,10,30
+28809,8,395,157,320,10,30
+28810,8,395,158,129,5,10
+28811,8,395,159,72,5,10
+28812,8,395,160,319,30,35
+28813,8,395,161,320,30,35
+28814,8,395,162,320,25,30
+28815,8,395,163,320,35,40
+28816,8,395,164,320,40,45
+28817,8,395,165,72,5,35
+28818,8,395,166,278,10,30
+28819,8,395,167,278,15,25
+28820,8,395,168,279,25,30
+28821,8,395,169,279,25,30
+28822,8,395,170,263,2,2
+28823,8,395,171,263,3,3
+28824,8,395,172,263,3,3
+28825,8,395,173,263,4,4
+28826,8,395,174,261,2,2
+28827,8,395,175,261,3,3
+28828,8,395,176,261,3,3
+28829,8,395,177,261,4,4
+28830,8,395,178,278,3,3
+28831,8,395,179,278,3,3
+28832,8,395,180,278,2,2
+28833,8,395,181,278,4,4
+28834,8,396,155,129,10,30
+28835,8,396,156,129,10,30
+28836,8,396,157,129,10,30
+28837,8,396,158,129,5,10
+28838,8,396,159,129,5,10
+28839,8,396,160,129,25,30
+28840,8,396,161,129,30,35
+28841,8,396,162,129,20,25
+28842,8,396,163,129,35,40
+28843,8,396,164,129,40,45
+28844,8,396,165,278,10,30
+28845,8,396,166,278,15,25
+28846,8,396,167,278,15,25
+28847,8,396,168,279,25,30
+28848,8,396,169,279,25,30
+28849,8,396,170,263,4,4
+28850,8,396,171,265,4,4
+28851,8,396,172,263,5,5
+28852,8,396,173,265,5,5
+28853,8,396,174,263,4,4
+28854,8,396,175,263,5,5
+28855,8,396,176,276,4,4
+28856,8,396,177,276,5,5
+28857,8,396,178,278,4,4
+28858,8,396,179,278,4,4
+28859,8,396,180,278,3,3
+28860,8,396,181,278,5,5
+28861,8,397,155,129,10,30
+28862,8,397,156,72,10,30
+28863,8,397,157,320,10,30
+28864,8,397,158,129,5,10
+28865,8,397,159,72,5,10
+28866,8,397,160,320,25,30
+28867,8,397,161,320,30,35
+28868,8,397,162,320,20,25
+28869,8,397,163,320,35,40
+28870,8,397,164,320,40,45
+28871,8,397,165,72,5,35
+28872,8,397,166,278,10,30
+28873,8,397,167,278,15,25
+28874,8,397,168,279,25,30
+28875,8,397,169,279,25,30
+28876,8,398,155,129,10,30
+28877,8,398,156,72,10,30
+28878,8,398,157,320,10,30
+28879,8,398,158,129,5,10
+28880,8,398,159,72,5,10
+28881,8,398,160,320,25,30
+28882,8,398,161,320,30,35
+28883,8,398,162,320,20,25
+28884,8,398,163,320,35,40
+28885,8,398,164,320,40,45
+28886,8,398,165,72,5,35
+28887,8,398,166,278,10,30
+28888,8,398,167,278,15,25
+28889,8,398,168,279,25,30
+28890,8,398,169,279,25,30
+28891,8,399,155,129,10,30
+28892,8,399,156,72,10,30
+28893,8,399,157,320,10,30
+28894,8,399,158,129,5,10
+28895,8,399,159,72,5,10
+28896,8,399,160,320,25,30
+28897,8,399,161,320,30,35
+28898,8,399,162,320,20,25
+28899,8,399,163,320,35,40
+28900,8,399,164,320,40,45
+28901,8,399,165,72,5,35
+28902,8,399,166,278,10,30
+28903,8,399,167,278,15,25
+28904,8,399,168,279,25,30
+28905,8,399,169,279,25,30
+28906,8,400,155,129,10,30
+28907,8,400,156,72,10,30
+28908,8,400,157,320,10,30
+28909,8,400,158,129,5,10
+28910,8,400,159,72,5,10
+28911,8,400,160,320,25,30
+28912,8,400,161,320,30,35
+28913,8,400,162,320,20,25
+28914,8,400,163,320,35,40
+28915,8,400,164,320,40,45
+28916,8,400,165,72,5,35
+28917,8,400,166,278,10,30
+28918,8,400,167,278,15,25
+28919,8,400,168,279,25,30
+28920,8,400,169,279,25,30
+28921,8,401,155,129,10,30
+28922,8,401,156,72,10,30
+28923,8,401,157,320,10,30
+28924,8,401,158,129,5,10
+28925,8,401,159,72,5,10
+28926,8,401,160,320,25,30
+28927,8,401,161,320,30,35
+28928,8,401,162,320,20,25
+28929,8,401,163,320,35,40
+28930,8,401,164,320,40,45
+28931,8,401,165,72,5,35
+28932,8,401,166,278,10,30
+28933,8,401,167,278,15,25
+28934,8,401,168,279,25,30
+28935,8,401,169,279,25,30
+28936,8,402,155,129,10,30
+28937,8,402,156,72,10,30
+28938,8,402,157,320,10,30
+28939,8,402,158,129,5,10
+28940,8,402,159,72,5,10
+28941,8,402,160,320,25,30
+28942,8,402,161,320,30,35
+28943,8,402,162,320,20,25
+28944,8,402,163,320,35,40
+28945,8,402,164,320,40,45
+28946,8,402,165,72,5,35
+28947,8,402,166,278,10,30
+28948,8,402,167,278,15,25
+28949,8,402,168,279,25,30
+28950,8,402,169,279,25,30
+28951,8,402,170,263,12,12
+28952,8,402,171,309,12,12
+28953,8,402,172,316,12,12
+28954,8,402,173,309,13,13
+28955,8,402,174,311,13,13
+28956,8,402,175,43,13,13
+28957,8,402,176,311,13,13
+28958,8,402,177,316,13,13
+28959,8,402,178,278,12,12
+28960,8,402,179,278,12,12
+28961,8,402,180,312,12,12
+28962,8,402,181,312,13,13
+28963,8,403,155,129,10,30
+28964,8,403,156,118,10,30
+28965,8,403,157,339,10,30
+28966,8,403,158,129,5,10
+28967,8,403,159,118,5,10
+28968,8,403,182,74,10,15
+28969,8,403,183,74,5,10
+28970,8,403,184,74,15,20
+28971,8,403,185,74,15,20
+28972,8,403,186,74,15,20
+28973,8,403,160,339,25,30
+28974,8,403,161,339,30,35
+28975,8,403,162,339,20,25
+28976,8,403,163,339,35,40
+28977,8,403,164,339,40,45
+28978,8,403,165,183,20,30
+28979,8,403,166,183,10,20
+28980,8,403,167,183,30,35
+28981,8,403,168,183,5,10
+28982,8,403,169,283,20,30
+28983,8,403,170,27,20,20
+28984,8,403,171,328,20,20
+28985,8,403,172,27,21,21
+28986,8,403,173,328,21,21
+28987,8,403,174,331,19,19
+28988,8,403,175,331,21,21
+28989,8,403,176,27,19,19
+28990,8,403,177,328,19,19
+28991,8,403,178,343,20,20
+28992,8,403,179,343,20,20
+28993,8,403,180,343,22,22
+28994,8,403,181,343,22,22
+28995,8,404,170,322,15,15
+28996,8,404,171,322,15,15
+28997,8,404,172,66,15,15
+28998,8,404,173,322,14,14
+28999,8,404,174,322,14,14
+29000,8,404,175,66,14,14
+29001,8,404,176,322,16,16
+29002,8,404,177,66,16,16
+29003,8,404,178,322,16,16
+29004,8,404,179,322,16,16
+29005,8,404,180,322,16,16
+29006,8,404,181,322,16,16
+29007,8,405,170,327,15,15
+29008,8,405,171,327,15,15
+29009,8,405,172,27,15,15
+29010,8,405,173,327,14,14
+29011,8,405,174,327,14,14
+29012,8,405,175,27,14,14
+29013,8,405,176,327,16,16
+29014,8,405,177,27,16,16
+29015,8,405,178,327,16,16
+29016,8,405,179,227,16,16
+29017,8,405,180,327,16,16
+29018,8,405,181,227,16,16
+29019,8,406,155,129,10,30
+29020,8,406,156,118,10,30
+29021,8,406,157,339,10,30
+29022,8,406,158,129,5,10
+29023,8,406,159,118,5,10
+29024,8,406,182,74,10,15
+29025,8,406,183,74,5,10
+29026,8,406,184,74,15,20
+29027,8,406,185,74,15,20
+29028,8,406,186,74,15,20
+29029,8,406,160,339,25,30
+29030,8,406,161,339,30,35
+29031,8,406,162,339,20,25
+29032,8,406,163,339,35,40
+29033,8,406,164,339,40,45
+29034,8,406,165,183,20,30
+29035,8,406,166,183,10,20
+29036,8,406,167,183,30,35
+29037,8,406,168,183,5,10
+29038,8,406,169,283,20,30
+29039,8,406,170,333,16,16
+29040,8,406,171,270,16,16
+29041,8,406,172,333,17,17
+29042,8,406,173,333,15,15
+29043,8,406,174,270,15,15
+29044,8,406,175,336,16,16
+29045,8,406,176,271,16,16
+29046,8,406,177,271,18,18
+29047,8,406,178,336,17,17
+29048,8,406,179,336,15,15
+29049,8,406,180,336,17,17
+29050,8,406,181,283,15,15
+29051,8,407,155,129,10,30
+29052,8,407,156,72,10,30
+29053,8,407,157,320,10,30
+29054,8,407,158,129,5,10
+29055,8,407,159,72,5,10
+29056,8,407,160,320,25,30
+29057,8,407,161,320,30,35
+29058,8,407,162,320,20,25
+29059,8,407,163,320,35,40
+29060,8,407,164,320,40,45
+29061,8,407,165,72,5,35
+29062,8,407,166,278,10,30
+29063,8,407,167,278,15,25
+29064,8,407,168,279,25,30
+29065,8,407,169,279,25,30
+29066,8,407,170,333,23,23
+29067,8,407,171,276,23,23
+29068,8,407,172,333,25,25
+29069,8,407,173,276,24,24
+29070,8,407,174,276,25,25
+29071,8,407,175,277,25,25
+29072,8,407,176,39,24,24
+29073,8,407,177,39,25,25
+29074,8,407,178,278,24,24
+29075,8,407,179,278,24,24
+29076,8,407,180,278,26,26
+29077,8,407,181,278,25,25
+29078,8,408,170,263,6,6
+29079,8,408,171,293,6,6
+29080,8,408,172,290,6,6
+29081,8,408,173,293,7,7
+29082,8,408,174,290,7,7
+29083,8,408,175,276,6,6
+29084,8,408,176,276,7,7
+29085,8,408,177,276,8,8
+29086,8,408,178,263,7,7
+29087,8,408,179,263,8,8
+29088,8,408,180,300,7,7
+29089,8,408,181,300,8,8
+29090,8,409,155,129,10,30
+29091,8,409,156,118,10,30
+29092,8,409,157,341,10,30
+29093,8,409,158,129,5,10
+29094,8,409,159,118,5,10
+29095,8,409,160,341,25,30
+29096,8,409,161,341,30,35
+29097,8,409,162,341,20,25
+29098,8,409,163,341,35,40
+29099,8,409,164,341,40,45
+29100,8,409,165,183,20,30
+29101,8,409,166,183,10,20
+29102,8,409,167,183,30,35
+29103,8,409,168,183,5,10
+29104,8,409,169,283,20,30
+29105,8,409,170,263,13,13
+29106,8,409,171,315,13,13
+29107,8,409,172,263,14,14
+29108,8,409,173,315,14,14
+29109,8,409,174,183,13,13
+29110,8,409,175,43,13,13
+29111,8,409,176,313,13,13
+29112,8,409,177,313,13,13
+29113,8,409,178,313,14,14
+29114,8,409,179,313,14,14
+29115,8,409,180,314,13,13
+29116,8,409,181,283,13,13
+29117,8,410,155,129,10,30
+29118,8,410,156,72,10,30
+29119,8,410,157,318,10,30
+29120,8,410,158,129,5,10
+29121,8,410,159,72,5,10
+29122,8,410,160,319,30,35
+29123,8,410,161,318,30,35
+29124,8,410,162,318,20,25
+29125,8,410,163,318,35,40
+29126,8,410,164,318,40,45
+29127,8,410,165,72,5,35
+29128,8,410,166,278,10,30
+29129,8,410,167,278,15,25
+29130,8,410,168,279,25,30
+29131,8,410,169,279,25,30
+29132,8,410,170,263,24,24
+29133,8,410,171,309,24,24
+29134,8,410,172,263,26,26
+29135,8,410,173,309,26,26
+29136,8,410,174,264,26,26
+29137,8,410,175,310,26,26
+29138,8,410,176,278,25,25
+29139,8,410,177,278,25,25
+29140,8,410,178,278,26,26
+29141,8,410,179,278,26,26
+29142,8,410,180,278,27,27
+29143,8,410,181,352,25,25
+29144,8,411,155,129,10,30
+29145,8,411,156,72,10,30
+29146,8,411,157,318,10,30
+29147,8,411,158,129,5,10
+29148,8,411,159,72,5,10
+29149,8,411,160,318,25,30
+29150,8,411,161,318,30,35
+29151,8,411,162,318,20,25
+29152,8,411,163,318,35,40
+29153,8,411,164,318,40,45
+29154,8,411,165,72,5,35
+29155,8,411,166,278,10,30
+29156,8,411,167,278,15,25
+29157,8,411,168,279,25,30
+29158,8,411,169,279,25,30
+29159,8,411,170,263,25,25
+29160,8,411,171,264,25,25
+29161,8,411,172,263,27,27
+29162,8,411,173,43,25,25
+29163,8,411,174,264,27,27
+29164,8,411,175,43,26,26
+29165,8,411,176,43,27,27
+29166,8,411,177,43,24,24
+29167,8,411,178,357,25,25
+29168,8,411,179,357,26,26
+29169,8,411,180,357,27,27
+29170,8,411,181,352,25,25
+29171,8,412,155,129,10,30
+29172,8,412,156,118,10,30
+29173,8,412,157,339,10,30
+29174,8,412,158,129,5,10
+29175,8,412,159,118,5,10
+29176,8,412,160,339,25,30
+29177,8,412,161,339,30,35
+29178,8,412,162,339,20,25
+29179,8,412,163,339,35,40
+29180,8,412,164,339,40,45
+29181,8,412,165,183,20,30
+29182,8,412,166,183,10,20
+29183,8,412,167,183,30,35
+29184,8,412,168,183,5,10
+29185,8,412,169,283,20,30
+29186,8,412,170,263,25,25
+29187,8,412,171,264,25,25
+29188,8,412,172,264,27,27
+29189,8,412,173,43,25,25
+29190,8,412,174,183,25,25
+29191,8,412,175,43,26,26
+29192,8,412,176,43,27,27
+29193,8,412,177,183,27,27
+29194,8,412,178,359,25,25
+29195,8,412,179,359,27,27
+29196,8,412,180,352,25,25
+29197,8,412,181,283,25,25
+29198,8,413,155,129,10,30
+29199,8,413,156,72,10,30
+29200,8,413,157,320,10,30
+29201,8,413,158,129,5,10
+29202,8,413,159,72,5,10
+29203,8,413,160,320,25,30
+29204,8,413,161,320,30,35
+29205,8,413,162,320,20,25
+29206,8,413,163,320,35,40
+29207,8,413,164,320,40,45
+29208,8,413,165,72,5,35
+29209,8,413,166,278,10,30
+29210,8,413,167,278,15,25
+29211,8,413,168,279,25,30
+29212,8,413,169,279,25,30
+29213,8,413,170,263,26,26
+29214,8,413,171,353,26,26
+29215,8,413,172,264,26,26
+29216,8,413,173,353,28,28
+29217,8,413,174,264,28,28
+29218,8,413,175,43,26,26
+29219,8,413,176,43,28,28
+29220,8,413,177,44,28,28
+29221,8,413,178,278,26,26
+29222,8,413,179,278,27,27
+29223,8,413,180,278,28,28
+29224,8,413,181,352,25,25
+29225,8,414,155,129,10,30
+29226,8,414,156,72,10,30
+29227,8,414,157,320,10,30
+29228,8,414,158,129,5,10
+29229,8,414,159,72,5,10
+29230,8,414,160,319,30,35
+29231,8,414,161,320,30,35
+29232,8,414,162,320,25,30
+29233,8,414,163,320,35,40
+29234,8,414,164,320,40,45
+29235,8,414,165,72,5,35
+29236,8,414,166,278,10,30
+29237,8,414,167,278,15,25
+29238,8,414,168,279,25,30
+29239,8,414,169,279,25,30
+29240,8,415,155,129,10,30
+29241,8,415,156,72,10,30
+29242,8,415,157,320,10,30
+29243,8,415,158,129,5,10
+29244,8,415,159,72,5,10
+29245,8,415,160,320,25,30
+29246,8,415,161,320,30,35
+29247,8,415,162,320,20,25
+29248,8,415,163,320,35,40
+29249,8,415,164,320,40,45
+29250,8,415,165,72,5,35
+29251,8,415,166,278,10,30
+29252,8,415,167,278,15,25
+29253,8,415,168,279,25,30
+29254,8,415,169,279,25,30
+29255,8,415,170,263,26,26
+29256,8,415,171,353,26,26
+29257,8,415,172,264,26,26
+29258,8,415,173,353,28,28
+29259,8,415,174,264,28,28
+29260,8,415,175,43,26,26
+29261,8,415,176,43,28,28
+29262,8,415,177,44,28,28
+29263,8,415,178,278,26,26
+29264,8,415,179,278,27,27
+29265,8,415,180,278,28,28
+29266,8,415,181,352,25,25
+29267,8,416,155,129,10,30
+29268,8,416,156,72,10,30
+29269,8,416,157,320,10,30
+29270,8,416,158,129,5,10
+29271,8,416,159,72,5,10
+29272,8,416,160,319,30,35
+29273,8,416,161,320,30,35
+29274,8,416,162,320,25,30
+29275,8,416,163,320,35,40
+29276,8,416,164,320,40,45
+29277,8,416,165,72,5,35
+29278,8,416,166,278,10,30
+29279,8,416,167,278,15,25
+29280,8,416,168,279,25,30
+29281,8,416,169,279,25,30
+29282,8,417,165,366,20,30
+29283,8,417,166,170,20,30
+29284,8,417,167,366,30,35
+29285,8,417,168,369,30,35
+29286,8,417,169,369,30,35
+29287,8,418,155,129,10,30
+29288,8,418,156,72,10,30
+29289,8,418,157,320,10,30
+29290,8,418,158,129,5,10
+29291,8,418,159,72,5,10
+29292,8,418,160,319,30,35
+29293,8,418,161,320,30,35
+29294,8,418,162,320,25,30
+29295,8,418,163,320,35,40
+29296,8,418,164,320,40,45
+29297,8,418,165,72,5,35
+29298,8,418,166,278,10,30
+29299,8,418,167,278,15,25
+29300,8,418,168,279,25,30
+29301,8,418,169,279,25,30
+29302,8,419,155,129,10,30
+29303,8,419,156,72,10,30
+29304,8,419,157,320,10,30
+29305,8,419,158,129,5,10
+29306,8,419,159,72,5,10
+29307,8,419,160,319,30,35
+29308,8,419,161,320,30,35
+29309,8,419,162,320,25,30
+29310,8,419,163,320,35,40
+29311,8,419,164,320,40,45
+29312,8,419,165,72,5,35
+29313,8,419,166,278,10,30
+29314,8,419,167,278,15,25
+29315,8,419,168,279,25,30
+29316,8,419,169,279,25,30
+29317,8,420,165,366,20,30
+29318,8,420,166,170,20,30
+29319,8,420,167,366,30,35
+29320,8,420,168,369,30,35
+29321,8,420,169,369,30,35
+29322,8,421,155,129,10,30
+29323,8,421,156,72,10,30
+29324,8,421,157,320,10,30
+29325,8,421,158,129,5,10
+29326,8,421,159,72,5,10
+29327,8,421,160,319,30,35
+29328,8,421,161,320,30,35
+29329,8,421,162,320,25,30
+29330,8,421,163,320,35,40
+29331,8,421,164,320,40,45
+29332,8,421,165,72,5,35
+29333,8,421,166,278,10,30
+29334,8,421,167,278,15,25
+29335,8,421,168,279,25,30
+29336,8,421,169,279,25,30
+29337,8,422,155,129,10,30
+29338,8,422,156,370,10,30
+29339,8,422,157,320,10,30
+29340,8,422,158,129,5,10
+29341,8,422,159,72,5,10
+29342,8,422,160,370,30,35
+29343,8,422,161,320,30,35
+29344,8,422,162,222,30,35
+29345,8,422,163,320,35,40
+29346,8,422,164,320,40,45
+29347,8,422,165,72,5,35
+29348,8,422,166,278,10,30
+29349,8,422,167,278,15,25
+29350,8,422,168,279,25,30
+29351,8,422,169,279,25,30
+29352,8,423,155,129,10,30
+29353,8,423,156,72,10,30
+29354,8,423,157,320,10,30
+29355,8,423,158,129,5,10
+29356,8,423,159,72,5,10
+29357,8,423,160,319,30,35
+29358,8,423,161,320,30,35
+29359,8,423,162,320,25,30
+29360,8,423,163,320,35,40
+29361,8,423,164,320,40,45
+29362,8,423,165,72,5,35
+29363,8,423,166,278,10,30
+29364,8,423,167,278,15,25
+29365,8,423,168,279,25,30
+29366,8,423,169,321,25,30
+29367,8,424,155,129,10,30
+29368,8,424,156,72,10,30
+29369,8,424,157,320,10,30
+29370,8,424,158,129,5,10
+29371,8,424,159,72,5,10
+29372,8,424,160,319,30,35
+29373,8,424,161,320,30,35
+29374,8,424,162,320,25,30
+29375,8,424,163,320,35,40
+29376,8,424,164,320,40,45
+29377,8,424,165,72,5,35
+29378,8,424,166,278,10,30
+29379,8,424,167,278,15,25
+29380,8,424,168,279,25,30
+29381,8,424,169,279,25,30
+29382,8,424,170,360,30,30
+29383,8,424,171,360,35,35
+29384,8,424,172,360,25,25
+29385,8,424,173,360,40,40
+29386,8,424,174,360,20,20
+29387,8,424,175,360,45,45
+29388,8,424,176,360,15,15
+29389,8,424,177,360,50,50
+29390,8,424,178,360,10,10
+29391,8,424,179,360,5,5
+29392,8,424,180,360,10,10
+29393,8,424,181,360,5,5
+29394,8,425,155,129,10,30
+29395,8,425,156,72,10,30
+29396,8,425,157,320,10,30
+29397,8,425,158,129,5,10
+29398,8,425,159,72,5,10
+29399,8,425,160,319,30,35
+29400,8,425,161,320,30,35
+29401,8,425,162,320,25,30
+29402,8,425,163,320,35,40
+29403,8,425,164,320,40,45
+29404,8,425,165,72,5,35
+29405,8,425,166,278,10,30
+29406,8,425,167,278,15,25
+29407,8,425,168,279,25,30
+29408,8,425,169,279,25,30
+29409,8,426,155,129,10,30
+29410,8,426,156,72,10,30
+29411,8,426,157,320,10,30
+29412,8,426,158,129,5,10
+29413,8,426,159,72,5,10
+29414,8,426,160,319,30,35
+29415,8,426,161,320,30,35
+29416,8,426,162,116,25,30
+29417,8,426,163,320,35,40
+29418,8,426,164,320,40,45
+29419,8,426,165,72,5,35
+29420,8,426,166,278,10,30
+29421,8,426,167,278,15,25
+29422,8,426,168,279,25,30
+29423,8,426,169,279,25,30
+29424,8,427,155,129,10,30
+29425,8,427,156,72,10,30
+29426,8,427,157,320,10,30
+29427,8,427,158,129,5,10
+29428,8,427,159,72,5,10
+29429,8,427,160,319,30,35
+29430,8,427,161,320,30,35
+29431,8,427,162,116,25,30
+29432,8,427,163,320,35,40
+29433,8,427,164,320,40,45
+29434,8,427,165,72,5,35
+29435,8,427,166,278,10,30
+29436,8,427,167,278,15,25
+29437,8,427,168,279,25,30
+29438,8,427,169,279,25,30
+29439,8,428,155,129,10,30
+29440,8,428,156,72,10,30
+29441,8,428,157,320,10,30
+29442,8,428,158,129,5,10
+29443,8,428,159,72,5,10
+29444,8,428,160,319,30,35
+29445,8,428,161,320,30,35
+29446,8,428,162,116,25,30
+29447,8,428,163,320,35,40
+29448,8,428,164,320,40,45
+29449,8,428,165,72,5,35
+29450,8,428,166,278,10,30
+29451,8,428,167,278,15,25
+29452,8,428,168,279,25,30
+29453,8,428,169,279,25,30
+29454,8,429,155,129,10,30
+29455,8,429,156,118,10,25
+29456,8,429,157,118,10,30
+29457,8,429,158,129,5,10
+29458,8,429,159,118,5,10
+29459,8,429,160,118,25,30
+29460,8,429,161,118,30,35
+29461,8,429,162,119,30,35
+29462,8,429,163,119,35,40
+29463,8,429,164,119,25,30
+29464,8,429,165,54,20,30
+29465,8,429,166,54,20,30
+29466,8,429,167,54,30,35
+29467,8,429,168,55,30,35
+29468,8,429,169,55,25,40
+29469,8,429,170,111,27,27
+29470,8,429,171,43,27,27
+29471,8,429,172,111,29,29
+29472,8,429,173,43,29,29
+29473,8,429,174,84,27,27
+29474,8,429,175,44,29,29
+29475,8,429,176,44,31,31
+29476,8,429,177,84,29,29
+29477,8,429,178,85,29,29
+29478,8,429,179,127,27,27
+29479,8,429,180,85,31,31
+29480,8,429,181,127,29,29
+29481,8,430,182,74,10,15
+29482,8,430,183,74,5,10
+29483,8,430,184,74,15,20
+29484,8,430,185,74,20,25
+29485,8,430,186,74,25,30
+29486,8,430,170,231,27,27
+29487,8,430,171,43,27,27
+29488,8,430,172,231,29,29
+29489,8,430,173,43,29,29
+29490,8,430,174,177,27,27
+29491,8,430,175,44,29,29
+29492,8,430,176,44,31,31
+29493,8,430,177,177,29,29
+29494,8,430,178,178,29,29
+29495,8,430,179,214,27,27
+29496,8,430,180,178,31,31
+29497,8,430,181,214,29,29
+29498,8,431,155,129,10,30
+29499,8,431,156,118,10,25
+29500,8,431,157,118,10,30
+29501,8,431,158,129,5,10
+29502,8,431,159,118,5,10
+29503,8,431,160,118,25,30
+29504,8,431,161,118,30,35
+29505,8,431,162,119,30,35
+29506,8,431,163,119,35,40
+29507,8,431,164,119,25,30
+29508,8,431,165,54,20,30
+29509,8,431,166,54,20,30
+29510,8,431,167,54,30,35
+29511,8,431,168,54,30,35
+29512,8,431,169,54,30,35
+29513,8,431,170,43,25,25
+29514,8,431,171,43,27,27
+29515,8,431,172,203,25,25
+29516,8,431,173,203,27,27
+29517,8,431,174,177,25,25
+29518,8,431,175,84,27,27
+29519,8,431,176,44,25,25
+29520,8,431,177,202,27,27
+29521,8,431,178,25,25,25
+29522,8,431,179,202,27,27
+29523,8,431,180,25,27,27
+29524,8,431,181,202,29,29
+29525,8,432,170,43,25,25
+29526,8,432,171,43,27,27
+29527,8,432,172,203,25,25
+29528,8,432,173,203,27,27
+29529,8,432,174,177,25,25
+29530,8,432,175,84,25,25
+29531,8,432,176,44,25,25
+29532,8,432,177,202,27,27
+29533,8,432,178,25,25,25
+29534,8,432,179,202,27,27
+29535,8,432,180,25,27,27
+29536,8,432,181,202,29,29
+29537,8,433,155,129,10,30
+29538,8,433,156,72,10,30
+29539,8,433,157,320,10,30
+29540,8,433,158,129,5,10
+29541,8,433,159,72,5,10
+29542,8,433,160,320,25,30
+29543,8,433,161,320,30,35
+29544,8,433,162,320,20,25
+29545,8,433,163,320,35,40
+29546,8,433,164,320,40,45
+29547,8,433,165,72,5,35
+29548,8,433,166,278,10,30
+29549,8,433,167,278,15,25
+29550,8,433,168,279,25,30
+29551,8,433,169,279,25,30
+29552,8,434,155,129,10,30
+29553,8,434,156,72,10,30
+29554,8,434,157,320,10,30
+29555,8,434,158,129,5,10
+29556,8,434,159,72,5,10
+29557,8,434,160,319,30,35
+29558,8,434,161,320,30,35
+29559,8,434,162,320,25,30
+29560,8,434,163,320,35,40
+29561,8,434,164,320,40,45
+29562,8,434,165,72,5,35
+29563,8,434,166,278,10,30
+29564,8,434,167,278,15,25
+29565,8,434,168,279,25,30
+29566,8,434,169,279,25,30
+29567,9,393,187,265,2,2
+29568,9,393,188,261,2,2
+29569,9,393,189,265,2,2
+29570,9,393,190,265,3,3
+29571,9,393,191,261,3,3
+29572,9,393,192,261,3,3
+29573,9,393,193,265,3,3
+29574,9,393,194,261,3,3
+29575,9,393,195,263,2,2
+29576,9,393,196,263,2,2
+29577,9,393,197,263,3,3
+29578,9,393,198,263,3,3
+29579,9,394,199,129,10,30
+29580,9,394,200,118,10,30
+29581,9,394,201,341,10,30
+29582,9,394,202,129,5,10
+29583,9,394,203,118,5,10
+29584,9,394,204,341,25,30
+29585,9,394,205,341,30,35
+29586,9,394,206,341,20,25
+29587,9,394,207,341,35,40
+29588,9,394,208,341,40,45
+29589,9,394,209,183,20,30
+29590,9,394,210,183,10,20
+29591,9,394,211,183,30,35
+29592,9,394,212,183,5,10
+29593,9,394,213,118,20,30
+29594,9,394,187,261,3,3
+29595,9,394,188,265,3,3
+29596,9,394,189,261,4,4
+29597,9,394,190,265,4,4
+29598,9,394,191,270,3,3
+29599,9,394,192,270,4,4
+29600,9,394,193,263,3,3
+29601,9,394,194,263,3,3
+29602,9,394,195,263,4,4
+29603,9,394,196,280,4,4
+29604,9,394,197,263,4,4
+29605,9,394,198,273,3,3
+29606,9,395,199,129,10,30
+29607,9,395,200,72,10,30
+29608,9,395,201,320,10,30
+29609,9,395,202,129,5,10
+29610,9,395,203,72,5,10
+29611,9,395,204,319,30,35
+29612,9,395,205,320,30,35
+29613,9,395,206,320,25,30
+29614,9,395,207,320,35,40
+29615,9,395,208,320,40,45
+29616,9,395,209,72,5,35
+29617,9,395,210,278,10,30
+29618,9,395,211,278,15,25
+29619,9,395,212,279,25,30
+29620,9,395,213,279,25,30
+29621,9,395,187,261,2,2
+29622,9,395,188,261,3,3
+29623,9,395,189,261,3,3
+29624,9,395,190,261,4,4
+29625,9,395,191,278,2,2
+29626,9,395,192,263,3,3
+29627,9,395,193,263,3,3
+29628,9,395,194,263,4,4
+29629,9,395,195,278,3,3
+29630,9,395,196,278,3,3
+29631,9,395,197,278,2,2
+29632,9,395,198,278,4,4
+29633,9,396,199,129,10,30
+29634,9,396,200,129,10,30
+29635,9,396,201,129,10,30
+29636,9,396,202,129,5,10
+29637,9,396,203,129,5,10
+29638,9,396,204,129,25,30
+29639,9,396,205,129,30,35
+29640,9,396,206,129,20,25
+29641,9,396,207,129,35,40
+29642,9,396,208,129,40,45
+29643,9,396,209,278,10,30
+29644,9,396,210,278,15,25
+29645,9,396,211,278,15,25
+29646,9,396,212,279,25,30
+29647,9,396,213,279,25,30
+29648,9,396,187,261,4,4
+29649,9,396,188,265,4,4
+29650,9,396,189,261,5,5
+29651,9,396,190,183,5,5
+29652,9,396,191,183,4,4
+29653,9,396,192,261,5,5
+29654,9,396,193,276,4,4
+29655,9,396,194,276,5,5
+29656,9,396,195,278,4,4
+29657,9,396,196,278,4,4
+29658,9,396,197,278,3,3
+29659,9,396,198,278,5,5
+29660,9,397,199,129,10,30
+29661,9,397,200,72,10,30
+29662,9,397,201,320,10,30
+29663,9,397,202,129,5,10
+29664,9,397,203,72,5,10
+29665,9,397,204,320,25,30
+29666,9,397,205,320,30,35
+29667,9,397,206,320,20,25
+29668,9,397,207,320,35,40
+29669,9,397,208,320,40,45
+29670,9,397,209,72,5,35
+29671,9,397,210,278,10,30
+29672,9,397,211,278,15,25
+29673,9,397,212,279,25,30
+29674,9,397,213,279,25,30
+29675,9,402,199,129,10,30
+29676,9,402,200,72,10,30
+29677,9,402,201,320,10,30
+29678,9,402,202,129,5,10
+29679,9,402,203,72,5,10
+29680,9,402,204,320,25,30
+29681,9,402,205,320,30,35
+29682,9,402,206,320,20,25
+29683,9,402,207,320,35,40
+29684,9,402,208,320,40,45
+29685,9,402,209,72,5,35
+29686,9,402,210,278,10,30
+29687,9,402,211,278,15,25
+29688,9,402,212,279,25,30
+29689,9,402,213,279,25,30
+29690,9,402,187,261,12,12
+29691,9,402,188,309,12,12
+29692,9,402,189,316,12,12
+29693,9,402,190,309,13,13
+29694,9,402,191,312,13,13
+29695,9,402,192,43,13,13
+29696,9,402,193,312,13,13
+29697,9,402,194,316,13,13
+29698,9,402,195,278,12,12
+29699,9,402,196,278,12,12
+29700,9,402,197,311,12,12
+29701,9,402,198,311,13,13
+29702,9,403,199,129,10,30
+29703,9,403,200,118,10,30
+29704,9,403,201,339,10,30
+29705,9,403,202,129,5,10
+29706,9,403,203,118,5,10
+29707,9,403,214,74,10,15
+29708,9,403,215,74,5,10
+29709,9,403,216,74,15,20
+29710,9,403,217,74,15,20
+29711,9,403,218,74,15,20
+29712,9,403,204,339,25,30
+29713,9,403,205,339,30,35
+29714,9,403,206,339,20,25
+29715,9,403,207,339,35,40
+29716,9,403,208,339,40,45
+29717,9,403,209,183,20,30
+29718,9,403,210,183,10,20
+29719,9,403,211,183,30,35
+29720,9,403,212,183,5,10
+29721,9,403,213,118,20,30
+29722,9,403,187,27,20,20
+29723,9,403,188,328,20,20
+29724,9,403,189,27,21,21
+29725,9,403,190,328,21,21
+29726,9,403,191,343,19,19
+29727,9,403,192,343,21,21
+29728,9,403,193,27,19,19
+29729,9,403,194,328,19,19
+29730,9,403,195,343,20,20
+29731,9,403,196,331,20,20
+29732,9,403,197,331,22,22
+29733,9,403,198,331,22,22
+29734,9,404,187,322,15,15
+29735,9,404,188,322,15,15
+29736,9,404,189,183,15,15
+29737,9,404,190,322,14,14
+29738,9,404,191,322,14,14
+29739,9,404,192,183,14,14
+29740,9,404,193,322,16,16
+29741,9,404,194,183,16,16
+29742,9,404,195,322,16,16
+29743,9,404,196,322,16,16
+29744,9,404,197,322,16,16
+29745,9,404,198,322,16,16
+29746,9,405,187,327,15,15
+29747,9,405,188,327,15,15
+29748,9,405,189,218,15,15
+29749,9,405,190,327,14,14
+29750,9,405,191,327,14,14
+29751,9,405,192,218,14,14
+29752,9,405,193,327,16,16
+29753,9,405,194,218,16,16
+29754,9,405,195,327,16,16
+29755,9,405,196,227,16,16
+29756,9,405,197,327,16,16
+29757,9,405,198,227,16,16
+29758,9,406,199,129,10,30
+29759,9,406,200,118,10,30
+29760,9,406,201,339,10,30
+29761,9,406,202,129,5,10
+29762,9,406,203,118,5,10
+29763,9,406,214,74,10,15
+29764,9,406,215,74,5,10
+29765,9,406,216,74,15,20
+29766,9,406,217,74,15,20
+29767,9,406,218,74,15,20
+29768,9,406,204,339,25,30
+29769,9,406,205,339,30,35
+29770,9,406,206,339,20,25
+29771,9,406,207,339,35,40
+29772,9,406,208,339,40,45
+29773,9,406,209,183,20,30
+29774,9,406,210,183,10,20
+29775,9,406,211,183,30,35
+29776,9,406,212,183,5,10
+29777,9,406,213,118,20,30
+29778,9,406,187,333,16,16
+29779,9,406,188,270,16,16
+29780,9,406,189,333,17,17
+29781,9,406,190,333,15,15
+29782,9,406,191,270,15,15
+29783,9,406,192,271,16,16
+29784,9,406,193,271,16,16
+29785,9,406,194,271,18,18
+29786,9,406,195,336,17,17
+29787,9,406,196,336,15,15
+29788,9,406,197,336,17,17
+29789,9,406,198,274,15,15
+29790,9,408,187,261,6,6
+29791,9,408,188,293,6,6
+29792,9,408,189,290,6,6
+29793,9,408,190,63,7,7
+29794,9,408,191,290,7,7
+29795,9,408,192,276,6,6
+29796,9,408,193,276,7,7
+29797,9,408,194,276,8,8
+29798,9,408,195,261,7,7
+29799,9,408,196,261,8,8
+29800,9,408,197,300,7,7
+29801,9,408,198,300,8,8
+29802,9,409,199,129,10,30
+29803,9,409,200,118,10,30
+29804,9,409,201,341,10,30
+29805,9,409,202,129,5,10
+29806,9,409,203,118,5,10
+29807,9,409,204,341,25,30
+29808,9,409,205,341,30,35
+29809,9,409,206,341,20,25
+29810,9,409,207,341,35,40
+29811,9,409,208,341,40,45
+29812,9,409,209,183,20,30
+29813,9,409,210,183,10,20
+29814,9,409,211,183,30,35
+29815,9,409,212,183,5,10
+29816,9,409,213,118,20,30
+29817,9,409,187,261,13,13
+29818,9,409,188,43,13,13
+29819,9,409,189,261,14,14
+29820,9,409,190,43,14,14
+29821,9,409,191,183,13,13
+29822,9,409,192,43,13,13
+29823,9,409,193,314,13,13
+29824,9,409,194,314,13,13
+29825,9,409,195,314,14,14
+29826,9,409,196,314,14,14
+29827,9,409,197,313,13,13
+29828,9,409,198,273,13,13
+29829,9,410,199,129,10,30
+29830,9,410,200,72,10,30
+29831,9,410,201,318,10,30
+29832,9,410,202,129,5,10
+29833,9,410,203,72,5,10
+29834,9,410,204,319,30,35
+29835,9,410,205,318,30,35
+29836,9,410,206,318,20,25
+29837,9,410,207,318,35,40
+29838,9,410,208,318,40,45
+29839,9,410,209,72,5,35
+29840,9,410,210,278,10,30
+29841,9,410,211,278,15,25
+29842,9,410,212,279,25,30
+29843,9,410,213,279,25,30
+29844,9,410,187,263,24,24
+29845,9,410,188,309,24,24
+29846,9,410,189,263,26,26
+29847,9,410,190,309,26,26
+29848,9,410,191,264,26,26
+29849,9,410,192,310,26,26
+29850,9,410,193,278,25,25
+29851,9,410,194,278,25,25
+29852,9,410,195,278,26,26
+29853,9,410,196,278,26,26
+29854,9,410,197,278,27,27
+29855,9,410,198,352,25,25
+29856,9,416,199,129,10,30
+29857,9,416,200,72,10,30
+29858,9,416,201,320,10,30
+29859,9,416,202,129,5,10
+29860,9,416,203,72,5,10
+29861,9,416,204,319,30,35
+29862,9,416,205,320,30,35
+29863,9,416,206,320,25,30
+29864,9,416,207,320,35,40
+29865,9,416,208,320,40,45
+29866,9,416,209,72,5,35
+29867,9,416,210,278,10,30
+29868,9,416,211,278,15,25
+29869,9,416,212,279,25,30
+29870,9,416,213,279,25,30
+29871,9,417,209,366,20,30
+29872,9,417,210,170,20,30
+29873,9,417,211,366,30,35
+29874,9,417,212,369,30,35
+29875,9,417,213,369,30,35
+29876,9,365,187,261,5,5
+29877,9,365,188,265,5,5
+29878,9,365,189,285,5,5
+29879,9,365,190,261,6,6
+29880,9,365,191,266,5,5
+29881,9,365,192,268,5,5
+29882,9,365,193,265,6,6
+29883,9,365,194,285,6,6
+29884,9,365,195,276,5,5
+29885,9,365,196,287,5,5
+29886,9,365,197,276,6,6
+29887,9,365,198,287,6,6
+29888,9,360,187,293,6,6
+29889,9,360,188,293,7,7
+29890,9,360,189,293,6,6
+29891,9,360,190,293,6,6
+29892,9,360,191,293,7,7
+29893,9,360,192,293,7,7
+29894,9,360,193,293,5,5
+29895,9,360,194,293,8,8
+29896,9,360,195,293,5,5
+29897,9,360,196,293,8,8
+29898,9,360,197,293,5,5
+29899,9,360,198,293,8,8
+29900,9,361,187,41,7,7
+29901,9,361,188,296,8,8
+29902,9,361,189,296,7,7
+29903,9,361,190,41,8,8
+29904,9,361,191,296,9,9
+29905,9,361,192,63,8,8
+29906,9,361,193,296,10,10
+29907,9,361,194,296,6,6
+29908,9,361,195,74,7,7
+29909,9,361,196,74,8,8
+29910,9,361,197,74,6,6
+29911,9,361,198,74,9,9
+29912,9,362,187,41,9,9
+29913,9,362,188,304,10,10
+29914,9,362,189,304,9,9
+29915,9,362,190,304,11,11
+29916,9,362,191,41,10,10
+29917,9,362,192,63,9,9
+29918,9,362,193,296,10,10
+29919,9,362,194,296,11,11
+29920,9,362,195,302,10,10
+29921,9,362,196,302,10,10
+29922,9,362,197,302,9,9
+29923,9,362,198,302,11,11
+29924,9,363,214,74,10,15
+29925,9,363,215,299,10,20
+29926,9,363,216,74,5,10
+29927,9,363,217,74,15,20
+29928,9,363,218,74,15,20
+29929,9,363,187,41,10,10
+29930,9,363,188,304,11,11
+29931,9,363,189,304,10,10
+29932,9,363,190,41,11,11
+29933,9,363,191,304,12,12
+29934,9,363,192,63,10,10
+29935,9,363,193,302,10,10
+29936,9,363,194,302,11,11
+29937,9,363,195,302,12,12
+29938,9,363,196,302,10,10
+29939,9,363,197,302,12,12
+29940,9,363,198,302,10,10
+29941,9,364,187,41,7,7
+29942,9,364,188,296,8,8
+29943,9,364,189,296,7,7
+29944,9,364,190,41,8,8
+29945,9,364,191,296,9,9
+29946,9,364,192,63,8,8
+29947,9,364,193,296,10,10
+29948,9,364,194,296,6,6
+29949,9,364,195,304,7,7
+29950,9,364,196,304,8,8
+29951,9,364,197,304,7,7
+29952,9,364,198,304,8,8
+29953,9,368,187,353,27,27
+29954,9,368,188,353,28,28
+29955,9,368,189,353,26,26
+29956,9,368,190,353,25,25
+29957,9,368,191,353,29,29
+29958,9,368,192,353,24,24
+29959,9,368,193,353,23,23
+29960,9,368,194,353,22,22
+29961,9,368,195,353,29,29
+29962,9,368,196,353,24,24
+29963,9,368,197,353,29,29
+29964,9,368,198,353,24,24
+29965,9,369,187,353,27,27
+29966,9,369,188,353,28,28
+29967,9,369,189,353,26,26
+29968,9,369,190,353,25,25
+29969,9,369,191,353,29,29
+29970,9,369,192,353,24,24
+29971,9,369,193,353,23,23
+29972,9,369,194,353,22,22
+29973,9,369,195,353,29,29
+29974,9,369,196,353,24,24
+29975,9,369,197,353,29,29
+29976,9,369,198,353,24,24
+29977,9,370,187,353,27,27
+29978,9,370,188,353,28,28
+29979,9,370,189,353,26,26
+29980,9,370,190,353,25,25
+29981,9,370,191,353,29,29
+29982,9,370,192,353,24,24
+29983,9,370,193,353,23,23
+29984,9,370,194,353,22,22
+29985,9,370,195,353,29,29
+29986,9,370,196,353,24,24
+29987,9,370,197,353,29,29
+29988,9,370,198,353,24,24
+29989,9,371,187,353,27,27
+29990,9,371,188,353,28,28
+29991,9,371,189,353,26,26
+29992,9,371,190,353,25,25
+29993,9,371,191,353,29,29
+29994,9,371,192,353,24,24
+29995,9,371,193,353,23,23
+29996,9,371,194,353,22,22
+29997,9,371,195,355,27,27
+29998,9,371,196,355,27,27
+29999,9,371,197,355,25,25
+30000,9,371,198,355,29,29
+30001,9,372,187,353,27,27
+30002,9,372,188,353,28,28
+30003,9,372,189,353,26,26
+30004,9,372,190,353,25,25
+30005,9,372,191,353,29,29
+30006,9,372,192,353,24,24
+30007,9,372,193,353,23,23
+30008,9,372,194,353,22,22
+30009,9,372,195,355,27,27
+30010,9,372,196,355,27,27
+30011,9,372,197,355,25,25
+30012,9,372,198,355,29,29
+30013,9,373,187,353,27,27
+30014,9,373,188,353,28,28
+30015,9,373,189,353,26,26
+30016,9,373,190,353,25,25
+30017,9,373,191,353,29,29
+30018,9,373,192,353,24,24
+30019,9,373,193,353,23,23
+30020,9,373,194,353,22,22
+30021,9,373,195,355,27,27
+30022,9,373,196,355,27,27
+30023,9,373,197,355,25,25
+30024,9,373,198,355,29,29
+30025,9,374,187,353,27,27
+30026,9,374,188,353,27,27
+30027,9,374,189,353,28,28
+30028,9,374,190,353,29,29
+30029,9,374,191,37,29,29
+30030,9,374,192,37,27,27
+30031,9,374,193,37,29,29
+30032,9,374,194,37,25,25
+30033,9,374,195,278,27,27
+30034,9,374,196,278,27,27
+30035,9,374,197,278,26,26
+30036,9,374,198,278,28,28
+30037,9,375,187,353,28,28
+30038,9,375,188,353,29,29
+30039,9,375,189,353,27,27
+30040,9,375,190,353,26,26
+30041,9,375,191,353,30,30
+30042,9,375,192,353,25,25
+30043,9,375,193,353,24,24
+30044,9,375,194,355,28,28
+30045,9,375,195,355,26,26
+30046,9,375,196,355,30,30
+30047,9,375,197,358,28,28
+30048,9,375,198,358,28,28
+30049,9,382,187,42,40,40
+30050,9,382,188,297,40,40
+30051,9,382,189,305,40,40
+30052,9,382,190,294,40,40
+30053,9,382,191,41,36,36
+30054,9,382,192,296,36,36
+30055,9,382,193,42,38,38
+30056,9,382,194,297,38,38
+30057,9,382,195,304,36,36
+30058,9,382,196,293,36,36
+30059,9,382,197,304,36,36
+30060,9,382,198,293,36,36
+30061,9,383,214,75,30,40
+30062,9,383,215,74,30,40
+30063,9,383,216,75,35,40
+30064,9,383,217,75,35,40
+30065,9,383,218,75,35,40
+30066,9,383,187,42,40,40
+30067,9,383,188,297,40,40
+30068,9,383,189,305,40,40
+30069,9,383,190,305,40,40
+30070,9,383,191,42,38,38
+30071,9,383,192,297,38,38
+30072,9,383,193,42,42,42
+30073,9,383,194,297,42,42
+30074,9,383,195,305,42,42
+30075,9,383,196,303,38,38
+30076,9,383,197,305,42,42
+30077,9,383,198,303,38,38
+30078,9,384,199,129,10,30
+30079,9,384,200,118,10,30
+30080,9,384,201,339,10,30
+30081,9,384,202,129,5,10
+30082,9,384,203,118,5,10
+30083,9,384,204,339,25,30
+30084,9,384,205,339,30,35
+30085,9,384,206,340,30,35
+30086,9,384,207,340,35,40
+30087,9,384,208,340,40,45
+30088,9,384,209,42,30,35
+30089,9,384,210,42,25,30
+30090,9,384,211,42,35,40
+30091,9,384,212,42,35,40
+30092,9,384,213,42,35,40
+30093,9,384,187,42,40,40
+30094,9,384,188,302,40,40
+30095,9,384,189,305,40,40
+30096,9,384,190,305,40,40
+30097,9,384,191,42,42,42
+30098,9,384,192,302,42,42
+30099,9,384,193,42,44,44
+30100,9,384,194,302,44,44
+30101,9,384,195,305,42,42
+30102,9,384,196,303,42,42
+30103,9,384,197,305,44,44
+30104,9,384,198,303,44,44
+30105,9,432,187,43,25,25
+30106,9,432,188,43,27,27
+30107,9,432,189,203,25,25
+30108,9,432,190,203,27,27
+30109,9,432,191,177,25,25
+30110,9,432,192,84,25,25
+30111,9,432,193,44,25,25
+30112,9,432,194,202,27,27
+30113,9,432,195,25,25,25
+30114,9,432,196,202,27,27
+30115,9,432,197,25,27,27
+30116,9,432,198,202,29,29
+30117,9,431,199,129,10,30
+30118,9,431,200,118,10,25
+30119,9,431,201,118,10,30
+30120,9,431,202,129,5,10
+30121,9,431,203,118,5,10
+30122,9,431,204,118,25,30
+30123,9,431,205,118,30,35
+30124,9,431,206,119,30,35
+30125,9,431,207,119,35,40
+30126,9,431,208,119,25,30
+30127,9,431,209,54,20,30
+30128,9,431,210,54,20,30
+30129,9,431,211,54,30,35
+30130,9,431,212,54,30,35
+30131,9,431,213,54,30,35
+30132,9,431,187,43,25,25
+30133,9,431,188,43,27,27
+30134,9,431,189,203,25,25
+30135,9,431,190,203,27,27
+30136,9,431,191,177,25,25
+30137,9,431,192,84,27,27
+30138,9,431,193,44,25,25
+30139,9,431,194,202,27,27
+30140,9,431,195,25,25,25
+30141,9,431,196,202,27,27
+30142,9,431,197,25,27,27
+30143,9,431,198,202,29,29
+30144,9,430,214,74,10,15
+30145,9,430,215,74,5,10
+30146,9,430,216,74,15,20
+30147,9,430,217,74,20,25
+30148,9,430,218,74,25,30
+30149,9,430,187,231,27,27
+30150,9,430,188,43,27,27
+30151,9,430,189,231,29,29
+30152,9,430,190,43,29,29
+30153,9,430,191,177,27,27
+30154,9,430,192,44,29,29
+30155,9,430,193,44,31,31
+30156,9,430,194,177,29,29
+30157,9,430,195,178,29,29
+30158,9,430,196,214,27,27
+30159,9,430,197,178,31,31
+30160,9,430,198,214,29,29
+30161,9,429,199,129,10,30
+30162,9,429,200,118,10,25
+30163,9,429,201,118,10,30
+30164,9,429,202,129,5,10
+30165,9,429,203,118,5,10
+30166,9,429,204,118,25,30
+30167,9,429,205,118,30,35
+30168,9,429,206,119,30,35
+30169,9,429,207,119,35,40
+30170,9,429,208,119,25,30
+30171,9,429,209,54,20,30
+30172,9,429,210,54,20,30
+30173,9,429,211,54,30,35
+30174,9,429,212,55,30,35
+30175,9,429,213,55,25,40
+30176,9,429,187,111,27,27
+30177,9,429,188,43,27,27
+30178,9,429,189,111,29,29
+30179,9,429,190,43,29,29
+30180,9,429,191,84,27,27
+30181,9,429,192,44,29,29
+30182,9,429,193,44,31,31
+30183,9,429,194,84,29,29
+30184,9,429,195,85,29,29
+30185,9,429,196,127,27,27
+30186,9,429,197,85,31,31
+30187,9,429,198,127,29,29
+30188,9,435,199,129,25,30
+30189,9,435,200,118,25,30
+30190,9,435,201,223,30,35
+30191,9,435,202,129,25,30
+30192,9,435,203,118,25,30
+30193,9,435,204,118,25,30
+30194,9,435,205,223,25,30
+30195,9,435,206,223,30,35
+30196,9,435,207,223,30,35
+30197,9,435,208,224,35,40
+30198,9,435,209,194,25,30
+30199,9,435,210,183,25,30
+30200,9,435,211,183,25,30
+30201,9,435,212,183,30,35
+30202,9,435,213,195,35,40
+30203,9,435,187,191,33,33
+30204,9,435,188,179,34,34
+30205,9,435,189,191,35,35
+30206,9,435,190,179,36,36
+30207,9,435,191,190,34,34
+30208,9,435,192,167,33,33
+30209,9,435,193,163,35,35
+30210,9,435,194,209,34,34
+30211,9,435,195,234,36,36
+30212,9,435,196,207,37,37
+30213,9,435,197,234,39,39
+30214,9,435,198,207,40,40
+30215,9,436,214,213,25,30
+30216,9,436,215,213,20,25
+30217,9,436,216,213,30,35
+30218,9,436,217,213,30,35
+30219,9,436,218,213,35,40
+30220,9,436,187,190,33,33
+30221,9,436,188,216,34,34
+30222,9,436,189,190,35,35
+30223,9,436,190,216,36,36
+30224,9,436,191,191,34,34
+30225,9,436,192,165,33,33
+30226,9,436,193,163,35,35
+30227,9,436,194,204,34,34
+30228,9,436,195,228,36,36
+30229,9,436,196,241,37,37
+30230,9,436,197,228,39,39
+30231,9,436,198,241,40,40
+30232,9,420,209,366,20,30
+30233,9,420,210,170,20,30
+30234,9,420,211,366,30,35
+30235,9,420,212,369,30,35
+30236,9,420,213,369,30,35
+30237,9,419,199,129,10,30
+30238,9,419,200,72,10,30
+30239,9,419,201,320,10,30
+30240,9,419,202,129,5,10
+30241,9,419,203,72,5,10
+30242,9,419,204,319,30,35
+30243,9,419,205,320,30,35
+30244,9,419,206,320,25,30
+30245,9,419,207,320,35,40
+30246,9,419,208,320,40,45
+30247,9,419,209,72,5,35
+30248,9,419,210,278,10,30
+30249,9,419,211,278,15,25
+30250,9,419,212,279,25,30
+30251,9,419,213,279,25,30
+30252,9,389,199,129,10,30
+30253,9,389,200,72,10,30
+30254,9,389,201,72,10,30
+30255,9,389,202,129,5,10
+30256,9,389,203,72,5,10
+30257,9,389,204,72,25,30
+30258,9,389,205,72,30,35
+30259,9,389,206,73,30,35
+30260,9,389,207,73,25,30
+30261,9,389,208,73,20,25
+30262,9,389,209,72,5,35
+30263,9,389,210,72,5,35
+30264,9,389,211,72,5,35
+30265,9,389,212,72,5,35
+30266,9,389,213,73,30,35
+30267,9,367,187,322,15,15
+30268,9,367,188,109,15,15
+30269,9,367,189,322,16,16
+30270,9,367,190,66,15,15
+30271,9,367,191,324,15,15
+30272,9,367,192,218,15,15
+30273,9,367,193,109,16,16
+30274,9,367,194,66,16,16
+30275,9,367,195,324,14,14
+30276,9,367,196,324,16,16
+30277,9,367,197,88,14,14
+30278,9,367,198,88,14,14
+30279,9,359,199,129,10,30
+30280,9,359,200,118,10,30
+30281,9,359,201,339,10,30
+30282,9,359,202,129,5,10
+30283,9,359,203,118,5,10
+30284,9,359,204,339,25,30
+30285,9,359,205,339,30,35
+30286,9,359,206,340,30,35
+30287,9,359,207,340,35,40
+30288,9,359,208,340,40,45
+30289,9,359,209,42,30,35
+30290,9,359,210,42,30,35
+30291,9,359,211,338,25,35
+30292,9,359,212,338,15,25
+30293,9,359,213,338,5,15
+30294,9,359,187,42,33,33
+30295,9,359,188,42,35,35
+30296,9,359,189,371,30,30
+30297,9,359,190,338,35,35
+30298,9,359,191,371,35,35
+30299,9,359,192,338,37,37
+30300,9,359,193,371,25,25
+30301,9,359,194,338,39,39
+30302,9,359,195,42,38,38
+30303,9,359,196,42,40,40
+30304,9,359,197,42,38,38
+30305,9,359,198,42,40,40
+30306,9,356,199,129,10,30
+30307,9,356,200,118,10,30
+30308,9,356,201,339,10,30
+30309,9,356,202,129,5,10
+30310,9,356,203,118,5,10
+30311,9,356,204,339,25,30
+30312,9,356,205,339,30,35
+30313,9,356,206,339,20,25
+30314,9,356,207,339,35,40
+30315,9,356,208,339,40,45
+30316,9,356,209,41,5,35
+30317,9,356,210,41,30,35
+30318,9,356,211,338,25,35
+30319,9,356,212,338,15,25
+30320,9,356,213,338,5,15
+30321,9,356,187,41,16,16
+30322,9,356,188,41,17,17
+30323,9,356,189,41,18,18
+30324,9,356,190,41,15,15
+30325,9,356,191,41,14,14
+30326,9,356,192,338,16,16
+30327,9,356,193,338,18,18
+30328,9,356,194,338,14,14
+30329,9,356,195,41,19,19
+30330,9,356,196,41,20,20
+30331,9,356,197,41,19,19
+30332,9,356,198,41,20,20
+30333,9,357,199,129,10,30
+30334,9,357,200,118,10,30
+30335,9,357,201,339,10,30
+30336,9,357,202,129,5,10
+30337,9,357,203,118,5,10
+30338,9,357,204,339,25,30
+30339,9,357,205,339,30,35
+30340,9,357,206,340,30,35
+30341,9,357,207,340,35,40
+30342,9,357,208,340,40,45
+30343,9,357,209,42,30,35
+30344,9,357,210,42,30,35
+30345,9,357,211,338,25,35
+30346,9,357,212,338,15,25
+30347,9,357,213,338,5,15
+30348,9,357,187,42,33,33
+30349,9,357,188,42,35,35
+30350,9,357,189,42,33,33
+30351,9,357,190,338,35,35
+30352,9,357,191,338,33,33
+30353,9,357,192,338,37,37
+30354,9,357,193,42,35,35
+30355,9,357,194,338,39,39
+30356,9,357,195,42,38,38
+30357,9,357,196,42,40,40
+30358,9,357,197,42,38,38
+30359,9,357,198,42,40,40
+30360,9,358,199,129,10,30
+30361,9,358,200,118,10,30
+30362,9,358,201,339,10,30
+30363,9,358,202,129,5,10
+30364,9,358,203,118,5,10
+30365,9,358,204,339,25,30
+30366,9,358,205,339,30,35
+30367,9,358,206,340,30,35
+30368,9,358,207,340,35,40
+30369,9,358,208,340,40,45
+30370,9,358,209,42,30,35
+30371,9,358,210,42,30,35
+30372,9,358,211,338,25,35
+30373,9,358,212,338,15,25
+30374,9,358,213,338,5,15
+30375,9,358,187,42,33,33
+30376,9,358,188,42,35,35
+30377,9,358,189,42,33,33
+30378,9,358,190,338,35,35
+30379,9,358,191,338,33,33
+30380,9,358,192,338,37,37
+30381,9,358,193,42,35,35
+30382,9,358,194,338,39,39
+30383,9,358,195,42,38,38
+30384,9,358,196,42,40,40
+30385,9,358,197,42,38,38
+30386,9,358,198,42,40,40
+30387,9,366,187,322,21,21
+30388,9,366,188,322,21,21
+30389,9,366,189,66,21,21
+30390,9,366,190,322,20,20
+30391,9,366,191,325,20,20
+30392,9,366,192,66,20,20
+30393,9,366,193,325,21,21
+30394,9,366,194,66,22,22
+30395,9,366,195,322,22,22
+30396,9,366,196,325,22,22
+30397,9,366,197,322,22,22
+30398,9,366,198,325,22,22
+30399,9,398,199,129,10,30
+30400,9,398,200,72,10,30
+30401,9,398,201,320,10,30
+30402,9,398,202,129,5,10
+30403,9,398,203,72,5,10
+30404,9,398,204,320,25,30
+30405,9,398,205,320,30,35
+30406,9,398,206,320,20,25
+30407,9,398,207,320,35,40
+30408,9,398,208,320,40,45
+30409,9,398,209,72,5,35
+30410,9,398,210,278,10,30
+30411,9,398,211,278,15,25
+30412,9,398,212,279,25,30
+30413,9,398,213,279,25,30
+30414,9,399,199,129,10,30
+30415,9,399,200,72,10,30
+30416,9,399,201,320,10,30
+30417,9,399,202,129,5,10
+30418,9,399,203,72,5,10
+30419,9,399,204,320,25,30
+30420,9,399,205,320,30,35
+30421,9,399,206,320,20,25
+30422,9,399,207,320,35,40
+30423,9,399,208,320,40,45
+30424,9,399,209,72,5,35
+30425,9,399,210,278,10,30
+30426,9,399,211,278,15,25
+30427,9,399,212,279,25,30
+30428,9,399,213,279,25,30
+30429,9,400,199,129,10,30
+30430,9,400,200,72,10,30
+30431,9,400,201,320,10,30
+30432,9,400,202,129,5,10
+30433,9,400,203,72,5,10
+30434,9,400,204,320,25,30
+30435,9,400,205,320,30,35
+30436,9,400,206,320,20,25
+30437,9,400,207,320,35,40
+30438,9,400,208,320,40,45
+30439,9,400,209,72,5,35
+30440,9,400,210,278,10,30
+30441,9,400,211,278,15,25
+30442,9,400,212,279,25,30
+30443,9,400,213,279,25,30
+30444,9,401,199,129,10,30
+30445,9,401,200,72,10,30
+30446,9,401,201,320,10,30
+30447,9,401,202,129,5,10
+30448,9,401,203,72,5,10
+30449,9,401,204,320,25,30
+30450,9,401,205,320,30,35
+30451,9,401,206,320,20,25
+30452,9,401,207,320,35,40
+30453,9,401,208,320,40,45
+30454,9,401,209,72,5,35
+30455,9,401,210,278,10,30
+30456,9,401,211,278,15,25
+30457,9,401,212,279,25,30
+30458,9,401,213,279,25,30
+30459,9,407,199,129,10,30
+30460,9,407,200,72,10,30
+30461,9,407,201,320,10,30
+30462,9,407,202,129,5,10
+30463,9,407,203,72,5,10
+30464,9,407,204,320,25,30
+30465,9,407,205,320,30,35
+30466,9,407,206,320,20,25
+30467,9,407,207,320,35,40
+30468,9,407,208,320,40,45
+30469,9,407,209,72,5,35
+30470,9,407,210,278,10,30
+30471,9,407,211,278,15,25
+30472,9,407,212,279,25,30
+30473,9,407,213,279,25,30
+30474,9,407,187,333,23,23
+30475,9,407,188,276,23,23
+30476,9,407,189,333,25,25
+30477,9,407,190,276,24,24
+30478,9,407,191,276,25,25
+30479,9,407,192,277,25,25
+30480,9,407,193,39,24,24
+30481,9,407,194,39,25,25
+30482,9,407,195,278,24,24
+30483,9,407,196,278,24,24
+30484,9,407,197,278,26,26
+30485,9,407,198,278,25,25
+30486,9,388,187,100,24,24
+30487,9,388,188,81,24,24
+30488,9,388,189,100,25,25
+30489,9,388,190,81,25,25
+30490,9,388,191,100,23,23
+30491,9,388,192,81,23,23
+30492,9,388,193,100,26,26
+30493,9,388,194,81,26,26
+30494,9,388,195,100,22,22
+30495,9,388,196,81,22,22
+30496,9,388,197,101,26,26
+30497,9,388,198,82,26,26
+30498,9,387,187,100,24,24
+30499,9,387,188,81,24,24
+30500,9,387,189,100,25,25
+30501,9,387,190,81,25,25
+30502,9,387,191,100,23,23
+30503,9,387,192,81,23,23
+30504,9,387,193,100,26,26
+30505,9,387,194,81,26,26
+30506,9,387,195,100,22,22
+30507,9,387,196,81,22,22
+30508,9,387,197,100,22,22
+30509,9,387,198,81,22,22
+30510,9,411,199,129,10,30
+30511,9,411,200,72,10,30
+30512,9,411,201,318,10,30
+30513,9,411,202,129,5,10
+30514,9,411,203,72,5,10
+30515,9,411,204,318,25,30
+30516,9,411,205,318,30,35
+30517,9,411,206,318,20,25
+30518,9,411,207,318,35,40
+30519,9,411,208,318,40,45
+30520,9,411,209,72,5,35
+30521,9,411,210,278,10,30
+30522,9,411,211,278,15,25
+30523,9,411,212,279,25,30
+30524,9,411,213,279,25,30
+30525,9,411,187,263,25,25
+30526,9,411,188,264,25,25
+30527,9,411,189,263,27,27
+30528,9,411,190,43,25,25
+30529,9,411,191,264,27,27
+30530,9,411,192,43,26,26
+30531,9,411,193,43,27,27
+30532,9,411,194,43,24,24
+30533,9,411,195,357,25,25
+30534,9,411,196,357,26,26
+30535,9,411,197,357,27,27
+30536,9,411,198,352,25,25
+30537,9,412,199,129,10,30
+30538,9,412,200,118,10,30
+30539,9,412,201,339,10,30
+30540,9,412,202,129,5,10
+30541,9,412,203,118,5,10
+30542,9,412,204,339,25,30
+30543,9,412,205,339,30,35
+30544,9,412,206,339,20,25
+30545,9,412,207,339,35,40
+30546,9,412,208,339,40,45
+30547,9,412,209,183,20,30
+30548,9,412,210,183,10,20
+30549,9,412,211,183,30,35
+30550,9,412,212,183,5,10
+30551,9,412,213,118,20,30
+30552,9,412,187,261,25,25
+30553,9,412,188,262,25,25
+30554,9,412,189,262,27,27
+30555,9,412,190,43,25,25
+30556,9,412,191,183,25,25
+30557,9,412,192,43,26,26
+30558,9,412,193,43,27,27
+30559,9,412,194,183,27,27
+30560,9,412,195,359,25,25
+30561,9,412,196,359,27,27
+30562,9,412,197,352,25,25
+30563,9,412,198,273,25,25
+30564,9,413,199,129,10,30
+30565,9,413,200,72,10,30
+30566,9,413,201,320,10,30
+30567,9,413,202,129,5,10
+30568,9,413,203,72,5,10
+30569,9,413,204,320,25,30
+30570,9,413,205,320,30,35
+30571,9,413,206,320,20,25
+30572,9,413,207,320,35,40
+30573,9,413,208,320,40,45
+30574,9,413,209,72,5,35
+30575,9,413,210,278,10,30
+30576,9,413,211,278,15,25
+30577,9,413,212,279,25,30
+30578,9,413,213,279,25,30
+30579,9,413,187,261,26,26
+30580,9,413,188,353,26,26
+30581,9,413,189,262,26,26
+30582,9,413,190,353,28,28
+30583,9,413,191,262,28,28
+30584,9,413,192,43,26,26
+30585,9,413,193,43,28,28
+30586,9,413,194,44,28,28
+30587,9,413,195,278,26,26
+30588,9,413,196,278,27,27
+30589,9,413,197,278,28,28
+30590,9,413,198,352,25,25
+30591,9,414,199,129,10,30
+30592,9,414,200,72,10,30
+30593,9,414,201,320,10,30
+30594,9,414,202,129,5,10
+30595,9,414,203,72,5,10
+30596,9,414,204,319,30,35
+30597,9,414,205,320,30,35
+30598,9,414,206,320,25,30
+30599,9,414,207,320,35,40
+30600,9,414,208,320,40,45
+30601,9,414,209,72,5,35
+30602,9,414,210,278,10,30
+30603,9,414,211,278,15,25
+30604,9,414,212,279,25,30
+30605,9,414,213,279,25,30
+30606,9,415,199,129,10,30
+30607,9,415,200,72,10,30
+30608,9,415,201,320,10,30
+30609,9,415,202,129,5,10
+30610,9,415,203,72,5,10
+30611,9,415,204,320,25,30
+30612,9,415,205,320,30,35
+30613,9,415,206,320,20,25
+30614,9,415,207,320,35,40
+30615,9,415,208,320,40,45
+30616,9,415,209,72,5,35
+30617,9,415,210,278,10,30
+30618,9,415,211,278,15,25
+30619,9,415,212,279,25,30
+30620,9,415,213,279,25,30
+30621,9,415,187,261,26,26
+30622,9,415,188,353,26,26
+30623,9,415,189,262,26,26
+30624,9,415,190,353,28,28
+30625,9,415,191,262,28,28
+30626,9,415,192,43,26,26
+30627,9,415,193,43,28,28
+30628,9,415,194,44,28,28
+30629,9,415,195,278,26,26
+30630,9,415,196,278,27,27
+30631,9,415,197,278,28,28
+30632,9,415,198,352,25,25
+30633,9,418,199,129,10,30
+30634,9,418,200,72,10,30
+30635,9,418,201,320,10,30
+30636,9,418,202,129,5,10
+30637,9,418,203,72,5,10
+30638,9,418,204,319,30,35
+30639,9,418,205,320,30,35
+30640,9,418,206,320,25,30
+30641,9,418,207,320,35,40
+30642,9,418,208,320,40,45
+30643,9,418,209,72,5,35
+30644,9,418,210,278,10,30
+30645,9,418,211,278,15,25
+30646,9,418,212,279,25,30
+30647,9,418,213,279,25,30
+30648,9,421,199,129,10,30
+30649,9,421,200,72,10,30
+30650,9,421,201,320,10,30
+30651,9,421,202,129,5,10
+30652,9,421,203,72,5,10
+30653,9,421,204,319,30,35
+30654,9,421,205,320,30,35
+30655,9,421,206,320,25,30
+30656,9,421,207,320,35,40
+30657,9,421,208,320,40,45
+30658,9,421,209,72,5,35
+30659,9,421,210,278,10,30
+30660,9,421,211,278,15,25
+30661,9,421,212,279,25,30
+30662,9,421,213,279,25,30
+30663,9,422,199,129,10,30
+30664,9,422,200,370,10,30
+30665,9,422,201,320,10,30
+30666,9,422,202,129,5,10
+30667,9,422,203,72,5,10
+30668,9,422,204,370,30,35
+30669,9,422,205,320,30,35
+30670,9,422,206,222,30,35
+30671,9,422,207,320,35,40
+30672,9,422,208,320,40,45
+30673,9,422,209,72,5,35
+30674,9,422,210,278,10,30
+30675,9,422,211,278,15,25
+30676,9,422,212,279,25,30
+30677,9,422,213,279,25,30
+30678,9,423,199,129,10,30
+30679,9,423,200,72,10,30
+30680,9,423,201,320,10,30
+30681,9,423,202,129,5,10
+30682,9,423,203,72,5,10
+30683,9,423,204,319,30,35
+30684,9,423,205,320,30,35
+30685,9,423,206,320,25,30
+30686,9,423,207,320,35,40
+30687,9,423,208,320,40,45
+30688,9,423,209,72,5,35
+30689,9,423,210,278,10,30
+30690,9,423,211,278,15,25
+30691,9,423,212,279,25,30
+30692,9,423,213,321,25,30
+30693,9,424,199,129,10,30
+30694,9,424,200,72,10,30
+30695,9,424,201,320,10,30
+30696,9,424,202,129,5,10
+30697,9,424,203,72,5,10
+30698,9,424,204,319,30,35
+30699,9,424,205,320,30,35
+30700,9,424,206,320,25,30
+30701,9,424,207,320,35,40
+30702,9,424,208,320,40,45
+30703,9,424,209,72,5,35
+30704,9,424,210,278,10,30
+30705,9,424,211,278,15,25
+30706,9,424,212,279,25,30
+30707,9,424,213,279,25,30
+30708,9,424,187,360,30,30
+30709,9,424,188,360,35,35
+30710,9,424,189,360,25,25
+30711,9,424,190,360,40,40
+30712,9,424,191,360,20,20
+30713,9,424,192,360,45,45
+30714,9,424,193,360,15,15
+30715,9,424,194,360,50,50
+30716,9,424,195,360,10,10
+30717,9,424,196,360,5,5
+30718,9,424,197,360,10,10
+30719,9,424,198,360,5,5
+30720,9,425,199,129,10,30
+30721,9,425,200,72,10,30
+30722,9,425,201,320,10,30
+30723,9,425,202,129,5,10
+30724,9,425,203,72,5,10
+30725,9,425,204,319,30,35
+30726,9,425,205,320,30,35
+30727,9,425,206,320,25,30
+30728,9,425,207,320,35,40
+30729,9,425,208,320,40,45
+30730,9,425,209,72,5,35
+30731,9,425,210,278,10,30
+30732,9,425,211,278,15,25
+30733,9,425,212,279,25,30
+30734,9,425,213,279,25,30
+30735,9,426,199,129,10,30
+30736,9,426,200,72,10,30
+30737,9,426,201,320,10,30
+30738,9,426,202,129,5,10
+30739,9,426,203,72,5,10
+30740,9,426,204,319,30,35
+30741,9,426,205,320,30,35
+30742,9,426,206,116,25,30
+30743,9,426,207,320,35,40
+30744,9,426,208,320,40,45
+30745,9,426,209,72,5,35
+30746,9,426,210,278,10,30
+30747,9,426,211,278,15,25
+30748,9,426,212,279,25,30
+30749,9,426,213,279,25,30
+30750,9,427,199,129,10,30
+30751,9,427,200,72,10,30
+30752,9,427,201,320,10,30
+30753,9,427,202,129,5,10
+30754,9,427,203,72,5,10
+30755,9,427,204,319,30,35
+30756,9,427,205,320,30,35
+30757,9,427,206,116,25,30
+30758,9,427,207,320,35,40
+30759,9,427,208,320,40,45
+30760,9,427,209,72,5,35
+30761,9,427,210,278,10,30
+30762,9,427,211,278,15,25
+30763,9,427,212,279,25,30
+30764,9,427,213,279,25,30
+30765,9,428,199,129,10,30
+30766,9,428,200,72,10,30
+30767,9,428,201,320,10,30
+30768,9,428,202,129,5,10
+30769,9,428,203,72,5,10
+30770,9,428,204,319,30,35
+30771,9,428,205,320,30,35
+30772,9,428,206,116,25,30
+30773,9,428,207,320,35,40
+30774,9,428,208,320,40,45
+30775,9,428,209,72,5,35
+30776,9,428,210,278,10,30
+30777,9,428,211,278,15,25
+30778,9,428,212,279,25,30
+30779,9,428,213,279,25,30
+30780,9,376,199,129,10,30
+30781,9,376,200,72,10,30
+30782,9,376,201,320,10,30
+30783,9,376,202,129,5,10
+30784,9,376,203,72,5,10
+30785,9,376,204,320,25,30
+30786,9,376,205,320,30,35
+30787,9,376,206,320,20,25
+30788,9,376,207,320,35,40
+30789,9,376,208,320,40,45
+30790,9,376,209,72,5,35
+30791,9,376,210,41,5,35
+30792,9,376,211,41,30,35
+30793,9,376,212,42,30,35
+30794,9,376,213,42,30,35
+30795,9,376,187,41,30,30
+30796,9,376,188,41,31,31
+30797,9,376,189,41,32,32
+30798,9,376,190,41,33,33
+30799,9,376,191,41,28,28
+30800,9,376,192,41,29,29
+30801,9,376,193,41,34,34
+30802,9,376,194,41,35,35
+30803,9,376,195,42,34,34
+30804,9,376,196,42,35,35
+30805,9,376,197,42,33,33
+30806,9,376,198,42,36,36
+30807,9,377,187,41,30,30
+30808,9,377,188,41,31,31
+30809,9,377,189,41,32,32
+30810,9,377,190,41,33,33
+30811,9,377,191,41,28,28
+30812,9,377,192,41,29,29
+30813,9,377,193,41,34,34
+30814,9,377,194,41,35,35
+30815,9,377,195,42,34,34
+30816,9,377,196,42,35,35
+30817,9,377,197,42,33,33
+30818,9,377,198,42,36,36
+30819,9,378,187,41,30,30
+30820,9,378,188,41,31,31
+30821,9,378,189,41,32,32
+30822,9,378,190,302,30,30
+30823,9,378,191,302,32,32
+30824,9,378,192,302,34,34
+30825,9,378,193,41,33,33
+30826,9,378,194,41,34,34
+30827,9,378,195,42,34,34
+30828,9,378,196,42,35,35
+30829,9,378,197,42,33,33
+30830,9,378,198,42,36,36
+30831,9,379,187,41,30,30
+30832,9,379,188,41,31,31
+30833,9,379,189,41,32,32
+30834,9,379,190,302,30,30
+30835,9,379,191,302,32,32
+30836,9,379,192,302,34,34
+30837,9,379,193,41,33,33
+30838,9,379,194,41,34,34
+30839,9,379,195,42,34,34
+30840,9,379,196,42,35,35
+30841,9,379,197,42,33,33
+30842,9,379,198,42,36,36
+30843,9,380,187,41,30,30
+30844,9,380,188,41,31,31
+30845,9,380,189,41,32,32
+30846,9,380,190,302,30,30
+30847,9,380,191,302,32,32
+30848,9,380,192,302,34,34
+30849,9,380,193,41,33,33
+30850,9,380,194,41,34,34
+30851,9,380,195,42,34,34
+30852,9,380,196,42,35,35
+30853,9,380,197,42,33,33
+30854,9,380,198,42,36,36
+30855,9,381,187,41,30,30
+30856,9,381,188,41,31,31
+30857,9,381,189,41,32,32
+30858,9,381,190,302,30,30
+30859,9,381,191,302,32,32
+30860,9,381,192,302,34,34
+30861,9,381,193,41,33,33
+30862,9,381,194,41,34,34
+30863,9,381,195,42,34,34
+30864,9,381,196,42,35,35
+30865,9,381,197,42,33,33
+30866,9,381,198,42,36,36
+30867,9,385,199,129,10,30
+30868,9,385,200,72,10,30
+30869,9,385,201,320,10,30
+30870,9,385,202,129,5,10
+30871,9,385,203,72,5,10
+30872,9,385,204,320,25,30
+30873,9,385,205,320,30,35
+30874,9,385,206,320,20,25
+30875,9,385,207,320,35,40
+30876,9,385,208,320,40,45
+30877,9,385,209,72,5,35
+30878,9,385,210,41,5,35
+30879,9,385,211,363,25,30
+30880,9,385,212,363,25,30
+30881,9,385,213,363,25,35
+30882,9,385,187,41,26,26
+30883,9,385,188,363,26,26
+30884,9,385,189,41,28,28
+30885,9,385,190,363,28,28
+30886,9,385,191,41,30,30
+30887,9,385,192,363,30,30
+30888,9,385,193,41,32,32
+30889,9,385,194,363,32,32
+30890,9,385,195,42,32,32
+30891,9,385,196,363,32,32
+30892,9,385,197,42,32,32
+30893,9,385,198,363,32,32
+30894,9,386,187,41,26,26
+30895,9,386,188,363,26,26
+30896,9,386,189,41,28,28
+30897,9,386,190,363,28,28
+30898,9,386,191,41,30,30
+30899,9,386,192,363,30,30
+30900,9,386,193,361,26,26
+30901,9,386,194,363,32,32
+30902,9,386,195,42,30,30
+30903,9,386,196,361,28,28
+30904,9,386,197,42,32,32
+30905,9,386,198,361,30,30
+30906,9,352,199,129,10,30
+30907,9,352,200,72,10,30
+30908,9,352,201,320,10,30
+30909,9,352,202,129,5,10
+30910,9,352,203,72,5,10
+30911,9,352,204,320,25,30
+30912,9,352,205,320,30,35
+30913,9,352,206,120,25,30
+30914,9,352,207,320,35,40
+30915,9,352,208,320,40,45
+30916,9,352,209,72,5,35
+30917,9,352,210,278,10,30
+30918,9,352,211,278,15,25
+30919,9,352,212,279,25,30
+30920,9,352,213,279,25,30
+30921,9,433,199,129,10,30
+30922,9,433,200,72,10,30
+30923,9,433,201,320,10,30
+30924,9,433,202,129,5,10
+30925,9,433,203,72,5,10
+30926,9,433,204,320,25,30
+30927,9,433,205,320,30,35
+30928,9,433,206,320,20,25
+30929,9,433,207,320,35,40
+30930,9,433,208,320,40,45
+30931,9,433,209,72,5,35
+30932,9,433,210,278,10,30
+30933,9,433,211,278,15,25
+30934,9,433,212,279,25,30
+30935,9,433,213,279,25,30
+30936,9,351,199,129,10,30
+30937,9,351,200,72,10,30
+30938,9,351,201,320,10,30
+30939,9,351,202,129,5,10
+30940,9,351,203,72,5,10
+30941,9,351,204,320,25,30
+30942,9,351,205,320,30,35
+30943,9,351,206,320,20,25
+30944,9,351,207,320,35,40
+30945,9,351,208,320,40,45
+30946,9,351,209,72,5,35
+30947,9,351,210,278,10,30
+30948,9,351,211,278,15,25
+30949,9,351,212,279,25,30
+30950,9,351,213,279,25,30
+30951,9,353,199,129,10,30
+30952,9,353,200,72,10,30
+30953,9,353,201,320,10,30
+30954,9,353,202,129,5,10
+30955,9,353,203,72,5,10
+30956,9,353,204,319,30,35
+30957,9,353,205,320,30,35
+30958,9,353,206,320,25,30
+30959,9,353,207,320,35,40
+30960,9,353,208,320,40,45
+30961,9,353,209,72,5,35
+30962,9,353,210,278,10,30
+30963,9,353,211,278,15,25
+30964,9,353,212,279,25,30
+30965,9,353,213,279,25,30
+30966,9,434,199,129,10,30
+30967,9,434,200,72,10,30
+30968,9,434,201,320,10,30
+30969,9,434,202,129,5,10
+30970,9,434,203,72,5,10
+30971,9,434,204,319,30,35
+30972,9,434,205,320,30,35
+30973,9,434,206,320,25,30
+30974,9,434,207,320,35,40
+30975,9,434,208,320,40,45
+30976,9,434,209,72,5,35
+30977,9,434,210,278,10,30
+30978,9,434,211,278,15,25
+30979,9,434,212,279,25,30
+30980,9,434,213,279,25,30
+30981,9,355,199,129,10,30
+30982,9,355,200,370,10,30
+30983,9,355,201,320,10,30
+30984,9,355,202,129,5,10
+30985,9,355,203,72,5,10
+30986,9,355,204,370,30,35
+30987,9,355,205,320,30,35
+30988,9,355,206,222,30,35
+30989,9,355,207,320,35,40
+30990,9,355,208,320,40,45
+30991,9,355,209,72,5,35
+30992,9,355,210,278,10,30
+30993,9,355,211,278,15,25
+30994,9,355,212,279,25,30
+30995,9,355,213,279,25,30
+30996,9,350,199,129,10,30
+30997,9,350,200,118,10,30
+30998,9,350,201,341,10,30
+30999,9,350,202,129,5,10
+31000,9,350,203,118,5,10
+31001,9,350,204,341,25,30
+31002,9,350,205,341,30,35
+31003,9,350,206,341,20,25
+31004,9,350,207,341,35,40
+31005,9,350,208,341,40,45
+31006,9,350,209,183,20,30
+31007,9,350,210,183,10,20
+31008,9,350,211,183,30,35
+31009,9,350,212,183,5,10
+31010,9,350,213,183,5,10
+31011,9,390,187,302,33,33
+31012,9,390,188,42,34,34
+31013,9,390,189,42,35,35
+31014,9,390,190,302,34,34
+31015,9,390,191,344,36,36
+31016,9,390,192,354,37,37
+31017,9,390,193,354,38,38
+31018,9,390,194,344,36,36
+31019,9,390,195,344,37,37
+31020,9,390,196,344,38,38
+31021,9,390,197,344,37,37
+31022,9,390,198,344,38,38
+31023,9,391,187,302,33,33
+31024,9,391,188,42,34,34
+31025,9,391,189,42,35,35
+31026,9,391,190,302,34,34
+31027,9,391,191,344,36,36
+31028,9,391,192,354,37,37
+31029,9,391,193,354,38,38
+31030,9,391,194,344,36,36
+31031,9,391,195,344,37,37
+31032,9,391,196,344,38,38
+31033,9,391,197,344,37,37
+31034,9,391,198,344,38,38
+31035,9,392,187,302,33,33
+31036,9,392,188,42,34,34
+31037,9,392,189,42,35,35
+31038,9,392,190,302,34,34
+31039,9,392,191,344,36,36
+31040,9,392,192,354,37,37
+31041,9,392,193,354,38,38
+31042,9,392,194,344,36,36
+31043,9,392,195,344,37,37
+31044,9,392,196,334,38,38
+31045,9,392,197,334,39,39
+31046,9,392,198,334,39,39
+31047,9,354,199,129,10,30
+31048,9,354,200,129,10,30
+31049,9,354,201,129,10,30
+31050,9,354,202,129,5,10
+31051,9,354,203,72,5,10
+31052,9,354,204,129,30,35
+31053,9,354,205,129,30,35
+31054,9,354,206,130,35,40
+31055,9,354,207,130,35,45
+31056,9,354,208,130,5,45
+31057,9,354,209,129,5,35
+31058,9,354,210,129,10,30
+31059,9,354,211,129,15,25
+31060,9,354,212,129,25,30
+31061,9,354,213,129,25,30
+31062,9,437,187,74,27,27
+31063,9,437,188,324,28,28
+31064,9,437,189,74,28,28
+31065,9,437,190,324,30,30
+31066,9,437,191,74,29,29
+31067,9,437,192,74,30,30
+31068,9,437,193,74,30,30
+31069,9,437,194,75,30,30
+31070,9,437,195,75,30,30
+31071,9,437,196,75,31,31
+31072,9,437,197,75,32,32
+31073,9,437,198,75,33,33
+31074,9,438,187,27,21,21
+31075,9,438,188,328,21,21
+31076,9,438,189,27,20,20
+31077,9,438,190,328,20,20
+31078,9,438,191,27,20,20
+31079,9,438,192,328,20,20
+31080,9,438,193,27,22,22
+31081,9,438,194,328,22,22
+31082,9,438,195,27,23,23
+31083,9,438,196,328,23,23
+31084,9,438,197,27,24,24
+31085,9,438,198,328,24,24
+31086,9,439,187,132,38,38
+31087,9,439,188,293,35,35
+31088,9,439,189,132,40,40
+31089,9,439,190,294,40,40
+31090,9,439,191,132,41,41
+31091,9,439,192,293,36,36
+31092,9,439,193,294,38,38
+31093,9,439,194,132,42,42
+31094,9,439,195,293,38,38
+31095,9,439,196,132,43,43
+31096,9,439,197,294,44,44
+31097,9,439,198,132,45,45
+31098,9,440,187,235,40,40
+31099,9,440,188,235,41,41
+31100,9,440,189,235,42,42
+31101,9,440,190,235,43,43
+31102,9,440,191,235,44,44
+31103,9,440,192,235,45,45
+31104,9,440,193,235,46,46
+31105,9,440,194,235,47,47
+31106,9,440,195,235,48,48
+31107,9,440,196,235,49,49
+31108,9,440,197,235,50,50
+31109,9,440,198,235,50,50
+31110,9,441,187,41,10,10
+31111,9,441,188,41,12,12
+31112,9,441,189,41,8,8
+31113,9,441,190,41,14,14
+31114,9,441,191,41,10,10
+31115,9,441,192,41,12,12
+31116,9,441,193,41,16,16
+31117,9,441,194,41,6,6
+31118,9,441,195,41,8,8
+31119,9,441,196,41,14,14
+31120,9,441,197,41,8,8
+31121,9,441,198,41,14,14
+31122,9,442,187,179,7,7
+31123,9,442,188,179,9,9
+31124,9,442,189,179,5,5
+31125,9,442,190,179,11,11
+31126,9,442,191,179,7,7
+31127,9,442,192,179,9,9
+31128,9,442,193,179,13,13
+31129,9,442,194,179,3,3
+31130,9,442,195,179,5,5
+31131,9,442,196,179,11,11
+31132,9,442,197,179,5,5
+31133,9,442,198,179,11,11
+31134,9,443,187,204,23,23
+31135,9,443,188,204,25,25
+31136,9,443,189,204,22,22
+31137,9,443,190,204,27,27
+31138,9,443,191,204,23,23
+31139,9,443,192,204,25,25
+31140,9,443,193,204,29,29
+31141,9,443,194,204,19,19
+31142,9,443,195,204,21,21
+31143,9,443,196,204,27,27
+31144,9,443,197,204,21,21
+31145,9,443,198,204,27,27
+31146,9,444,187,228,16,16
+31147,9,444,188,228,18,18
+31148,9,444,189,228,14,14
+31149,9,444,190,228,20,20
+31150,9,444,191,228,16,16
+31151,9,444,192,228,18,18
+31152,9,444,193,228,22,22
+31153,9,444,194,228,12,12
+31154,9,444,195,228,14,14
+31155,9,444,196,228,20,20
+31156,9,444,197,228,14,14
+31157,9,444,198,228,20,20
+31158,9,445,187,216,10,10
+31159,9,445,188,216,12,12
+31160,9,445,189,216,8,8
+31161,9,445,190,216,14,14
+31162,9,445,191,216,10,10
+31163,9,445,192,216,12,12
+31164,9,445,193,216,16,16
+31165,9,445,194,216,6,6
+31166,9,445,195,216,8,8
+31167,9,445,196,216,14,14
+31168,9,445,197,216,8,8
+31169,9,445,198,216,14,14
+31170,9,446,187,190,22,22
+31171,9,446,188,190,24,24
+31172,9,446,189,190,20,20
+31173,9,446,190,190,26,26
+31174,9,446,191,190,22,22
+31175,9,446,192,190,24,24
+31176,9,446,193,190,28,28
+31177,9,446,194,190,18,18
+31178,9,446,195,190,20,20
+31179,9,446,196,190,26,26
+31180,9,446,197,190,20,20
+31181,9,446,198,190,26,26
+31182,9,447,187,213,22,22
+31183,9,447,188,213,24,24
+31184,9,447,189,213,20,20
+31185,9,447,190,213,26,26
+31186,9,447,191,213,22,22
+31187,9,447,192,213,24,24
+31188,9,447,193,213,28,28
+31189,9,447,194,213,18,18
+31190,9,447,195,213,20,20
+31191,9,447,196,213,26,26
+31192,9,447,197,213,20,20
+31193,9,447,198,213,26,26
+31194,9,448,187,234,22,22
+31195,9,448,188,234,24,24
+31196,9,448,189,234,20,20
+31197,9,448,190,234,26,26
+31198,9,448,191,234,22,22
+31199,9,448,192,234,24,24
+31200,9,448,193,234,28,28
+31201,9,448,194,234,18,18
+31202,9,448,195,234,20,20
+31203,9,448,196,234,26,26
+31204,9,448,197,234,20,20
+31205,9,448,198,234,26,26
+31206,9,449,187,235,22,22
+31207,9,449,188,235,24,24
+31208,9,449,189,235,20,20
+31209,9,449,190,235,26,26
+31210,9,449,191,235,22,22
+31211,9,449,192,235,24,24
+31212,9,449,193,235,28,28
+31213,9,449,194,235,18,18
+31214,9,449,195,235,20,20
+31215,9,449,196,235,26,26
+31216,9,449,197,235,20,20
+31217,9,449,198,235,26,26
+31218,10,450,219,201,25,25
+31219,10,450,220,201,25,25
+31220,10,450,221,201,25,25
+31221,10,450,222,201,25,25
+31222,10,450,223,201,25,25
+31223,10,450,224,201,25,25
+31224,10,450,225,201,25,25
+31225,10,450,226,201,25,25
+31226,10,450,227,201,25,25
+31227,10,450,228,201,25,25
+31228,10,450,229,201,25,25
+31229,10,450,230,201,25,25
+31230,10,451,219,201,25,25
+31231,10,451,220,201,25,25
+31232,10,451,221,201,25,25
+31233,10,451,222,201,25,25
+31234,10,451,223,201,25,25
+31235,10,451,224,201,25,25
+31236,10,451,225,201,25,25
+31237,10,451,226,201,25,25
+31238,10,451,227,201,25,25
+31239,10,451,228,201,25,25
+31240,10,451,229,201,25,25
+31241,10,451,230,201,25,25
+31242,10,452,219,201,25,25
+31243,10,452,220,201,25,25
+31244,10,452,221,201,25,25
+31245,10,452,222,201,25,25
+31246,10,452,223,201,25,25
+31247,10,452,224,201,25,25
+31248,10,452,225,201,25,25
+31249,10,452,226,201,25,25
+31250,10,452,227,201,25,25
+31251,10,452,228,201,25,25
+31252,10,452,229,201,25,25
+31253,10,452,230,201,25,25
+31254,10,453,219,201,25,25
+31255,10,453,220,201,25,25
+31256,10,453,221,201,25,25
+31257,10,453,222,201,25,25
+31258,10,453,223,201,25,25
+31259,10,453,224,201,25,25
+31260,10,453,225,201,25,25
+31261,10,453,226,201,25,25
+31262,10,453,227,201,25,25
+31263,10,453,228,201,25,25
+31264,10,453,229,201,25,25
+31265,10,453,230,201,25,25
+31266,10,454,219,201,25,25
+31267,10,454,220,201,25,25
+31268,10,454,221,201,25,25
+31269,10,454,222,201,25,25
+31270,10,454,223,201,25,25
+31271,10,454,224,201,25,25
+31272,10,454,225,201,25,25
+31273,10,454,226,201,25,25
+31274,10,454,227,201,25,25
+31275,10,454,228,201,25,25
+31276,10,454,229,201,25,25
+31277,10,454,230,201,25,25
+31278,10,455,219,201,25,25
+31279,10,455,220,201,25,25
+31280,10,455,221,201,25,25
+31281,10,455,222,201,25,25
+31282,10,455,223,201,25,25
+31283,10,455,224,201,25,25
+31284,10,455,225,201,25,25
+31285,10,455,226,201,25,25
+31286,10,455,227,201,25,25
+31287,10,455,228,201,25,25
+31288,10,455,229,201,25,25
+31289,10,455,230,201,25,25
+31290,10,456,219,201,25,25
+31291,10,456,220,201,25,25
+31292,10,456,221,201,25,25
+31293,10,456,222,201,25,25
+31294,10,456,223,201,25,25
+31295,10,456,224,201,25,25
+31296,10,456,225,201,25,25
+31297,10,456,226,201,25,25
+31298,10,456,227,201,25,25
+31299,10,456,228,201,25,25
+31300,10,456,229,201,25,25
+31301,10,456,230,201,25,25
+31302,10,457,219,10,4,4
+31303,10,457,220,13,4,4
+31304,10,457,221,10,5,5
+31305,10,457,222,13,5,5
+31306,10,457,223,10,3,3
+31307,10,457,224,13,3,3
+31308,10,457,225,11,5,5
+31309,10,457,226,14,5,5
+31310,10,457,227,14,4,4
+31311,10,457,228,25,3,3
+31312,10,457,229,14,6,6
+31313,10,457,230,25,5,5
+31314,10,458,219,41,7,7
+31315,10,458,220,41,8,8
+31316,10,458,221,74,7,7
+31317,10,458,222,41,9,9
+31318,10,458,223,41,10,10
+31319,10,458,224,74,8,8
+31320,10,458,225,74,9,9
+31321,10,458,226,46,8,8
+31322,10,458,227,41,7,7
+31323,10,458,228,41,7,7
+31324,10,458,229,41,7,7
+31325,10,458,230,35,8,8
+31326,10,459,219,46,7,7
+31327,10,459,220,46,8,8
+31328,10,459,221,46,5,5
+31329,10,459,222,46,6,6
+31330,10,459,223,46,9,9
+31331,10,459,224,46,10,10
+31332,10,459,225,46,7,7
+31333,10,459,226,46,8,8
+31334,10,459,227,46,5,5
+31335,10,459,228,46,6,6
+31336,10,459,229,46,9,9
+31337,10,459,230,46,10,10
+31338,10,460,219,41,8,8
+31339,10,460,220,74,9,9
+31340,10,460,221,41,9,9
+31341,10,460,222,41,10,10
+31342,10,460,223,74,10,10
+31343,10,460,224,46,10,10
+31344,10,460,225,46,12,12
+31345,10,460,226,35,10,10
+31346,10,460,227,41,11,11
+31347,10,460,228,41,11,11
+31348,10,460,229,41,11,11
+31349,10,460,230,35,12,12
+31350,10,461,231,116,5,15
+31351,10,461,232,129,5,15
+31352,10,461,233,98,5,15
+31353,10,461,234,129,5,5
+31354,10,461,235,129,5,5
+31355,10,461,236,116,15,25
+31356,10,461,237,90,15,25
+31357,10,461,238,130,15,25
+31358,10,461,239,116,25,35
+31359,10,461,240,54,25,35
+31360,10,461,241,72,5,10
+31361,10,461,242,72,10,20
+31362,10,461,243,72,20,30
+31363,10,461,244,72,30,35
+31364,10,461,245,72,35,40
+31365,10,462,219,50,18,18
+31366,10,462,220,50,19,19
+31367,10,462,221,50,17,17
+31368,10,462,222,50,15,15
+31369,10,462,223,50,16,16
+31370,10,462,224,50,20,20
+31371,10,462,225,50,21,21
+31372,10,462,226,50,22,22
+31373,10,462,227,50,17,17
+31374,10,462,228,51,29,29
+31375,10,462,229,50,17,17
+31376,10,462,230,51,31,31
+31377,10,463,219,66,32,32
+31378,10,463,220,74,32,32
+31379,10,463,221,95,40,40
+31380,10,463,222,95,43,43
+31381,10,463,223,95,46,46
+31382,10,463,224,41,32,32
+31383,10,463,225,24,44,44
+31384,10,463,226,42,44,44
+31385,10,463,227,105,44,44
+31386,10,463,228,67,44,44
+31387,10,463,229,67,46,46
+31388,10,463,230,105,46,46
+31389,10,464,219,66,34,34
+31390,10,464,220,74,34,34
+31391,10,464,221,57,42,42
+31392,10,464,222,95,45,45
+31393,10,464,223,95,48,48
+31394,10,464,224,41,34,34
+31395,10,464,225,24,46,46
+31396,10,464,226,42,46,46
+31397,10,464,227,105,46,46
+31398,10,464,228,67,46,46
+31399,10,464,229,67,48,48
+31400,10,464,230,105,48,48
+31401,10,465,219,66,32,32
+31402,10,465,220,74,32,32
+31403,10,465,221,95,40,40
+31404,10,465,222,95,43,43
+31405,10,465,223,95,46,46
+31406,10,465,224,41,32,32
+31407,10,465,225,24,44,44
+31408,10,465,226,42,44,44
+31409,10,465,227,105,44,44
+31410,10,465,228,67,44,44
+31411,10,465,229,67,46,46
+31412,10,465,230,105,46,46
+31413,10,466,219,109,28,28
+31414,10,466,220,20,32,32
+31415,10,466,221,109,30,30
+31416,10,466,222,20,36,36
+31417,10,466,223,58,30,30
+31418,10,466,224,19,28,28
+31419,10,466,225,88,28,28
+31420,10,466,226,110,32,32
+31421,10,466,227,58,32,32
+31422,10,466,228,19,26,26
+31423,10,466,229,58,32,32
+31424,10,466,230,19,26,26
+31425,10,467,219,109,28,28
+31426,10,467,220,20,34,34
+31427,10,467,221,109,30,30
+31428,10,467,222,132,30,30
+31429,10,467,223,58,30,30
+31430,10,467,224,20,38,38
+31431,10,467,225,88,28,28
+31432,10,467,226,110,34,34
+31433,10,467,227,58,32,32
+31434,10,467,228,19,26,26
+31435,10,467,229,58,32,32
+31436,10,467,230,19,26,26
+31437,10,468,231,118,5,15
+31438,10,468,232,129,5,15
+31439,10,468,233,60,5,15
+31440,10,468,234,129,5,5
+31441,10,468,235,129,5,5
+31442,10,468,236,118,15,25
+31443,10,468,237,119,20,30
+31444,10,468,238,147,15,25
+31445,10,468,239,54,15,35
+31446,10,468,240,148,25,35
+31447,10,468,241,54,20,25
+31448,10,468,242,54,20,25
+31449,10,468,243,54,25,30
+31450,10,468,244,54,30,35
+31451,10,468,245,54,35,40
+31452,10,468,219,111,25,25
+31453,10,468,220,32,22,22
+31454,10,468,221,102,24,24
+31455,10,468,222,102,25,25
+31456,10,468,223,48,22,22
+31457,10,468,224,33,31,31
+31458,10,468,225,30,31,31
+31459,10,468,226,47,30,30
+31460,10,468,227,48,22,22
+31461,10,468,228,123,23,23
+31462,10,468,229,48,22,22
+31463,10,468,230,113,23,23
+31464,10,469,231,118,5,15
+31465,10,469,232,129,5,15
+31466,10,469,233,60,5,15
+31467,10,469,234,129,5,5
+31468,10,469,235,129,5,5
+31469,10,469,236,118,15,25
+31470,10,469,237,119,20,30
+31471,10,469,238,147,15,25
+31472,10,469,239,54,15,35
+31473,10,469,240,148,25,35
+31474,10,469,241,54,20,25
+31475,10,469,242,54,20,25
+31476,10,469,243,54,25,30
+31477,10,469,244,54,30,35
+31478,10,469,245,54,35,40
+31479,10,469,219,32,24,24
+31480,10,469,220,84,26,26
+31481,10,469,221,102,23,23
+31482,10,469,222,102,25,25
+31483,10,469,223,46,22,22
+31484,10,469,224,33,33,33
+31485,10,469,225,29,24,24
+31486,10,469,226,47,25,25
+31487,10,469,227,46,22,22
+31488,10,469,228,115,25,25
+31489,10,469,229,46,22,22
+31490,10,469,230,123,28,28
+31491,10,470,231,118,5,15
+31492,10,470,232,129,5,15
+31493,10,470,233,60,5,15
+31494,10,470,234,129,5,5
+31495,10,470,235,129,5,5
+31496,10,470,236,118,15,25
+31497,10,470,237,119,20,30
+31498,10,470,238,147,15,25
+31499,10,470,239,54,15,35
+31500,10,470,240,148,25,35
+31501,10,470,241,54,20,25
+31502,10,470,242,54,20,25
+31503,10,470,243,54,25,30
+31504,10,470,244,54,30,35
+31505,10,470,245,54,35,40
+31506,10,470,219,111,26,26
+31507,10,470,220,32,30,30
+31508,10,470,221,102,25,25
+31509,10,470,222,102,27,27
+31510,10,470,223,46,23,23
+31511,10,470,224,33,30,30
+31512,10,470,225,30,30,30
+31513,10,470,226,49,32,32
+31514,10,470,227,46,23,23
+31515,10,470,228,113,26,26
+31516,10,470,229,46,23,23
+31517,10,470,230,128,28,28
+31518,10,471,231,118,5,15
+31519,10,471,232,129,5,15
+31520,10,471,233,60,5,15
+31521,10,471,234,129,5,5
+31522,10,471,235,129,5,5
+31523,10,471,236,118,15,25
+31524,10,471,237,119,20,30
+31525,10,471,238,147,15,25
+31526,10,471,239,54,15,35
+31527,10,471,240,148,25,35
+31528,10,471,241,54,20,25
+31529,10,471,242,54,20,25
+31530,10,471,243,54,25,30
+31531,10,471,244,54,30,35
+31532,10,471,245,54,35,40
+31533,10,471,219,84,26,26
+31534,10,471,220,32,22,22
+31535,10,471,221,102,25,25
+31536,10,471,222,102,27,27
+31537,10,471,223,48,23,23
+31538,10,471,224,33,30,30
+31539,10,471,225,29,30,30
+31540,10,471,226,49,32,32
+31541,10,471,227,48,23,23
+31542,10,471,228,128,25,25
+31543,10,471,229,48,23,23
+31544,10,471,230,115,28,28
+31545,10,472,231,60,5,15
+31546,10,472,232,129,5,15
+31547,10,472,233,118,5,15
+31548,10,472,234,129,5,5
+31549,10,472,235,129,5,5
+31550,10,472,246,74,30,40
+31551,10,472,247,75,40,50
+31552,10,472,248,75,45,55
+31553,10,472,249,74,40,50
+31554,10,472,250,74,40,50
+31555,10,472,236,60,15,25
+31556,10,472,237,61,20,30
+31557,10,472,238,130,15,25
+31558,10,472,239,54,15,25
+31559,10,472,240,54,25,35
+31560,10,472,241,54,30,40
+31561,10,472,242,55,40,50
+31562,10,472,243,55,45,55
+31563,10,472,244,54,40,50
+31564,10,472,245,54,40,50
+31565,10,472,219,82,49,49
+31566,10,472,220,47,49,49
+31567,10,472,221,42,46,46
+31568,10,472,222,67,46,46
+31569,10,472,223,57,52,52
+31570,10,472,224,132,52,52
+31571,10,472,225,101,58,58
+31572,10,472,226,47,58,58
+31573,10,472,227,42,55,55
+31574,10,472,228,202,55,55
+31575,10,472,229,57,61,61
+31576,10,472,230,132,61,61
+31577,10,473,246,74,35,45
+31578,10,473,247,75,45,55
+31579,10,473,248,75,50,60
+31580,10,473,249,74,45,55
+31581,10,473,250,74,45,55
+31582,10,473,219,42,49,49
+31583,10,473,220,67,49,49
+31584,10,473,221,82,52,52
+31585,10,473,222,47,52,52
+31586,10,473,223,64,55,55
+31587,10,473,224,132,55,55
+31588,10,473,225,42,58,58
+31589,10,473,226,202,58,58
+31590,10,473,227,101,61,61
+31591,10,473,228,47,61,61
+31592,10,473,229,64,64,64
+31593,10,473,230,132,64,64
+31594,10,474,231,60,5,15
+31595,10,474,232,129,5,15
+31596,10,474,233,118,5,15
+31597,10,474,234,129,5,5
+31598,10,474,235,129,5,5
+31599,10,474,246,74,40,50
+31600,10,474,247,75,50,60
+31601,10,474,248,75,55,65
+31602,10,474,249,74,50,60
+31603,10,474,250,74,50,60
+31604,10,474,236,60,15,25
+31605,10,474,237,61,20,30
+31606,10,474,238,130,15,25
+31607,10,474,239,54,15,25
+31608,10,474,240,130,25,35
+31609,10,474,241,54,40,50
+31610,10,474,242,55,50,60
+31611,10,474,243,55,55,65
+31612,10,474,244,54,50,60
+31613,10,474,245,54,50,60
+31614,10,474,219,64,58,58
+31615,10,474,220,132,58,58
+31616,10,474,221,82,55,55
+31617,10,474,222,47,55,55
+31618,10,474,223,42,52,52
+31619,10,474,224,67,52,52
+31620,10,474,225,64,67,67
+31621,10,474,226,132,67,67
+31622,10,474,227,101,64,64
+31623,10,474,228,47,64,64
+31624,10,474,229,42,61,61
+31625,10,474,230,202,61,61
+31626,10,475,219,41,15,15
+31627,10,475,220,74,16,16
+31628,10,475,221,56,16,16
+31629,10,475,222,74,17,17
+31630,10,475,223,41,16,16
+31631,10,475,224,66,16,16
+31632,10,475,225,56,17,17
+31633,10,475,226,66,17,17
+31634,10,475,227,74,15,15
+31635,10,475,228,95,13,13
+31636,10,475,229,74,15,15
+31637,10,475,230,95,15,15
+31638,10,476,246,74,5,20
+31639,10,476,247,74,10,20
+31640,10,476,248,74,15,30
+31641,10,476,249,75,25,40
+31642,10,476,250,75,30,40
+31643,10,476,219,41,16,16
+31644,10,476,220,74,17,17
+31645,10,476,221,56,17,17
+31646,10,476,222,74,16,16
+31647,10,476,223,41,15,15
+31648,10,476,224,66,17,17
+31649,10,476,225,56,16,16
+31650,10,476,226,95,13,13
+31651,10,476,227,74,15,15
+31652,10,476,228,95,15,15
+31653,10,476,229,74,15,15
+31654,10,476,230,95,17,17
+31655,10,477,219,54,27,27
+31656,10,477,220,54,29,29
+31657,10,477,221,54,31,31
+31658,10,477,222,41,22,22
+31659,10,477,223,41,22,22
+31660,10,477,224,41,24,24
+31661,10,477,225,42,26,26
+31662,10,477,226,42,28,28
+31663,10,477,227,54,33,33
+31664,10,477,228,41,26,26
+31665,10,477,229,54,26,26
+31666,10,477,230,42,30,30
+31667,10,478,219,54,29,29
+31668,10,478,220,54,31,31
+31669,10,478,221,86,28,28
+31670,10,478,222,41,22,22
+31671,10,478,223,41,22,22
+31672,10,478,224,41,24,24
+31673,10,478,225,42,26,26
+31674,10,478,226,42,28,28
+31675,10,478,227,55,33,33
+31676,10,478,228,41,26,26
+31677,10,478,229,55,35,35
+31678,10,478,230,42,30,30
+31679,10,479,219,54,30,30
+31680,10,479,220,54,32,32
+31681,10,479,221,86,30,30
+31682,10,479,222,86,32,32
+31683,10,479,223,41,22,22
+31684,10,479,224,41,24,24
+31685,10,479,225,42,26,26
+31686,10,479,226,55,34,34
+31687,10,479,227,55,32,32
+31688,10,479,228,42,28,28
+31689,10,479,229,55,32,32
+31690,10,479,230,42,30,30
+31691,10,480,231,116,5,15
+31692,10,480,232,129,5,15
+31693,10,480,233,98,5,15
+31694,10,480,234,129,5,5
+31695,10,480,235,129,5,5
+31696,10,480,236,116,15,25
+31697,10,480,237,116,20,30
+31698,10,480,238,130,15,25
+31699,10,480,239,54,15,25
+31700,10,480,240,130,25,35
+31701,10,480,241,86,25,35
+31702,10,480,242,116,25,30
+31703,10,480,243,87,35,40
+31704,10,480,244,54,30,40
+31705,10,480,245,55,35,40
+31706,10,480,219,86,30,30
+31707,10,480,220,86,32,32
+31708,10,480,221,54,32,32
+31709,10,480,222,54,30,30
+31710,10,480,223,55,32,32
+31711,10,480,224,41,24,24
+31712,10,480,225,42,26,26
+31713,10,480,226,55,34,34
+31714,10,480,227,87,32,32
+31715,10,480,228,42,28,28
+31716,10,480,229,87,34,34
+31717,10,480,230,42,30,30
+31718,10,481,231,116,5,15
+31719,10,481,232,129,5,15
+31720,10,481,233,98,5,15
+31721,10,481,234,129,5,5
+31722,10,481,235,129,5,5
+31723,10,481,236,116,15,25
+31724,10,481,237,116,20,30
+31725,10,481,238,130,15,25
+31726,10,481,239,54,15,25
+31727,10,481,240,130,25,35
+31728,10,481,241,86,25,35
+31729,10,481,242,116,25,30
+31730,10,481,243,87,35,40
+31731,10,481,244,54,30,40
+31732,10,481,245,55,35,40
+31733,10,481,219,86,30,30
+31734,10,481,220,86,32,32
+31735,10,481,221,54,32,32
+31736,10,481,222,86,34,34
+31737,10,481,223,55,32,32
+31738,10,481,224,42,26,26
+31739,10,481,225,87,34,34
+31740,10,481,226,55,34,34
+31741,10,481,227,87,36,36
+31742,10,481,228,42,28,28
+31743,10,481,229,87,36,36
+31744,10,481,230,42,30,30
+31745,10,482,219,92,15,15
+31746,10,482,220,92,16,16
+31747,10,482,221,92,17,17
+31748,10,482,222,92,13,13
+31749,10,482,223,92,14,14
+31750,10,482,224,92,18,18
+31751,10,482,225,92,19,19
+31752,10,482,226,104,15,15
+31753,10,482,227,92,17,17
+31754,10,482,228,104,17,17
+31755,10,482,229,92,17,17
+31756,10,482,230,93,20,20
+31757,10,483,219,92,15,15
+31758,10,483,220,92,16,16
+31759,10,483,221,92,17,17
+31760,10,483,222,92,13,13
+31761,10,483,223,92,14,14
+31762,10,483,224,92,18,18
+31763,10,483,225,93,20,20
+31764,10,483,226,104,15,15
+31765,10,483,227,92,17,17
+31766,10,483,228,104,17,17
+31767,10,483,229,92,17,17
+31768,10,483,230,92,19,19
+31769,10,484,219,92,15,15
+31770,10,484,220,92,16,16
+31771,10,484,221,92,17,17
+31772,10,484,222,92,13,13
+31773,10,484,223,92,14,14
+31774,10,484,224,92,18,18
+31775,10,484,225,93,20,20
+31776,10,484,226,104,15,15
+31777,10,484,227,92,17,17
+31778,10,484,228,104,17,17
+31779,10,484,229,92,17,17
+31780,10,484,230,92,19,19
+31781,10,485,219,92,16,16
+31782,10,485,220,92,17,17
+31783,10,485,221,92,18,18
+31784,10,485,222,92,14,14
+31785,10,485,223,92,15,15
+31786,10,485,224,92,19,19
+31787,10,485,225,93,21,21
+31788,10,485,226,104,17,17
+31789,10,485,227,92,18,18
+31790,10,485,228,104,19,19
+31791,10,485,229,92,18,18
+31792,10,485,230,93,23,23
+31793,10,486,219,92,16,16
+31794,10,486,220,92,17,17
+31795,10,486,221,92,18,18
+31796,10,486,222,92,15,15
+31797,10,486,223,92,19,19
+31798,10,486,224,93,23,23
+31799,10,486,225,104,17,17
+31800,10,486,226,104,19,19
+31801,10,486,227,92,18,18
+31802,10,486,228,93,23,23
+31803,10,486,229,92,18,18
+31804,10,486,230,93,25,25
+31805,10,487,219,100,22,22
+31806,10,487,220,81,22,22
+31807,10,487,221,100,25,25
+31808,10,487,222,81,25,25
+31809,10,487,223,25,22,22
+31810,10,487,224,25,24,24
+31811,10,487,225,82,31,31
+31812,10,487,226,82,34,34
+31813,10,487,227,25,26,26
+31814,10,487,228,125,32,32
+31815,10,487,229,25,26,26
+31816,10,487,230,125,35,35
+31817,10,488,246,74,5,20
+31818,10,488,247,74,10,20
+31819,10,488,248,74,15,30
+31820,10,488,249,75,25,40
+31821,10,488,250,75,30,40
+31822,10,488,219,77,30,30
+31823,10,488,220,22,38,38
+31824,10,488,221,77,33,33
+31825,10,488,222,21,32,32
+31826,10,488,223,66,35,35
+31827,10,488,224,74,33,33
+31828,10,488,225,77,36,36
+31829,10,488,226,22,40,40
+31830,10,488,227,21,30,30
+31831,10,488,228,78,39,39
+31832,10,488,229,21,30,30
+31833,10,488,230,78,42,42
+31834,10,489,219,74,33,33
+31835,10,489,220,66,35,35
+31836,10,489,221,74,29,29
+31837,10,489,222,74,31,31
+31838,10,489,223,66,31,31
+31839,10,489,224,66,33,33
+31840,10,489,225,74,35,35
+31841,10,489,226,66,37,37
+31842,10,489,227,74,37,37
+31843,10,489,228,66,39,39
+31844,10,489,229,74,37,37
+31845,10,489,230,66,39,39
+31846,10,490,246,74,5,20
+31847,10,490,247,74,10,20
+31848,10,490,248,74,15,30
+31849,10,490,249,75,25,40
+31850,10,490,250,75,30,40
+31851,10,490,219,74,34,34
+31852,10,490,220,66,36,36
+31853,10,490,221,74,30,30
+31854,10,490,222,74,32,32
+31855,10,490,223,66,32,32
+31856,10,490,224,66,34,34
+31857,10,490,225,67,38,38
+31858,10,490,226,67,38,38
+31859,10,490,227,67,40,40
+31860,10,490,228,67,40,40
+31861,10,490,229,67,40,40
+31862,10,490,230,67,40,40
+31863,10,491,246,74,25,35
+31864,10,491,247,75,30,45
+31865,10,491,248,75,35,50
+31866,10,491,249,74,30,40
+31867,10,491,250,74,30,40
+31868,10,491,219,74,36,36
+31869,10,491,220,66,38,38
+31870,10,491,221,74,32,32
+31871,10,491,222,74,34,34
+31872,10,491,223,66,34,34
+31873,10,491,224,66,36,36
+31874,10,491,225,74,38,38
+31875,10,491,226,67,40,40
+31876,10,491,227,74,40,40
+31877,10,491,228,67,42,42
+31878,10,491,229,74,40,40
+31879,10,491,230,67,42,42
+31880,10,492,246,74,25,35
+31881,10,492,247,75,30,45
+31882,10,492,248,75,35,50
+31883,10,492,249,74,30,40
+31884,10,492,250,74,30,40
+31885,10,492,219,74,38,38
+31886,10,492,220,74,36,36
+31887,10,492,221,74,34,34
+31888,10,492,222,74,40,40
+31889,10,492,223,218,24,24
+31890,10,492,224,218,26,26
+31891,10,492,225,74,42,42
+31892,10,492,226,218,28,28
+31893,10,492,227,74,42,42
+31894,10,492,228,218,30,30
+31895,10,492,229,74,42,42
+31896,10,492,230,218,30,30
+31897,10,493,246,74,25,35
+31898,10,493,247,75,30,45
+31899,10,493,248,75,35,50
+31900,10,493,249,74,30,40
+31901,10,493,250,74,30,40
+31902,10,493,219,74,40,40
+31903,10,493,220,218,26,26
+31904,10,493,221,74,42,42
+31905,10,493,222,218,24,24
+31906,10,493,223,218,28,28
+31907,10,493,224,218,30,30
+31908,10,493,225,74,44,44
+31909,10,493,226,218,32,32
+31910,10,493,227,74,44,44
+31911,10,493,228,218,22,22
+31912,10,493,229,74,44,44
+31913,10,493,230,218,22,22
+31914,10,494,246,218,15,25
+31915,10,494,247,218,25,35
+31916,10,494,248,219,40,45
+31917,10,494,249,219,35,45
+31918,10,494,250,219,25,35
+31919,10,494,219,218,26,26
+31920,10,494,220,218,28,28
+31921,10,494,221,218,30,30
+31922,10,494,222,218,32,32
+31923,10,494,223,218,24,24
+31924,10,494,224,218,22,22
+31925,10,494,225,218,20,20
+31926,10,494,226,218,34,34
+31927,10,494,227,218,36,36
+31928,10,494,228,218,18,18
+31929,10,494,229,218,36,36
+31930,10,494,230,218,18,18
+31931,10,495,231,118,5,15
+31932,10,495,232,129,5,15
+31933,10,495,233,60,5,15
+31934,10,495,234,129,5,5
+31935,10,495,235,129,5,5
+31936,10,495,236,118,15,25
+31937,10,495,237,119,20,30
+31938,10,495,238,130,15,25
+31939,10,495,239,54,15,25
+31940,10,495,240,54,25,35
+31941,10,495,241,54,5,20
+31942,10,495,242,54,20,35
+31943,10,495,243,54,35,40
+31944,10,495,244,55,35,40
+31945,10,495,245,55,35,40
+31946,10,495,219,17,37,37
+31947,10,495,220,44,35,35
+31948,10,495,221,16,32,32
+31949,10,495,222,43,30,30
+31950,10,495,223,48,34,34
+31951,10,495,224,96,34,34
+31952,10,495,225,102,35,35
+31953,10,495,226,54,31,31
+31954,10,495,227,49,37,37
+31955,10,495,228,97,37,37
+31956,10,495,229,49,40,40
+31957,10,495,230,97,40,40
+31958,10,496,231,60,5,15
+31959,10,496,232,129,5,15
+31960,10,496,233,118,5,15
+31961,10,496,234,129,5,5
+31962,10,496,235,129,5,5
+31963,10,496,236,60,15,25
+31964,10,496,237,61,20,30
+31965,10,496,238,130,15,25
+31966,10,496,239,54,15,25
+31967,10,496,240,54,25,35
+31968,10,496,241,86,5,35
+31969,10,496,242,54,5,35
+31970,10,496,243,87,35,40
+31971,10,496,244,194,5,15
+31972,10,496,245,194,5,15
+31973,10,496,219,86,43,43
+31974,10,496,220,42,45,45
+31975,10,496,221,86,45,45
+31976,10,496,222,86,47,47
+31977,10,496,223,41,40,40
+31978,10,496,224,87,49,49
+31979,10,496,225,87,51,51
+31980,10,496,226,54,41,41
+31981,10,496,227,42,48,48
+31982,10,496,228,87,53,53
+31983,10,496,229,42,48,48
+31984,10,496,230,87,53,53
+31985,10,497,219,220,25,25
+31986,10,497,220,42,45,45
+31987,10,497,221,86,45,45
+31988,10,497,222,220,27,27
+31989,10,497,223,41,40,40
+31990,10,497,224,220,29,29
+31991,10,497,225,225,30,30
+31992,10,497,226,220,31,31
+31993,10,497,227,42,48,48
+31994,10,497,228,220,23,23
+31995,10,497,229,42,48,48
+31996,10,497,230,220,23,23
+31997,10,498,219,220,25,25
+31998,10,498,220,42,45,45
+31999,10,498,221,86,45,45
+32000,10,498,222,220,27,27
+32001,10,498,223,41,40,40
+32002,10,498,224,220,29,29
+32003,10,498,225,225,30,30
+32004,10,498,226,220,31,31
+32005,10,498,227,42,48,48
+32006,10,498,228,220,23,23
+32007,10,498,229,42,48,48
+32008,10,498,230,220,23,23
+32009,10,499,231,116,5,15
+32010,10,499,232,129,5,15
+32011,10,499,233,116,5,15
+32012,10,499,234,129,5,5
+32013,10,499,235,129,5,5
+32014,10,499,236,116,15,25
+32015,10,499,237,90,15,25
+32016,10,499,238,130,15,25
+32017,10,499,239,117,25,35
+32018,10,499,240,54,25,35
+32019,10,499,241,72,5,20
+32020,10,499,242,72,20,35
+32021,10,499,243,72,35,45
+32022,10,499,244,73,35,45
+32023,10,499,245,131,30,45
+32024,10,499,219,86,43,43
+32025,10,499,220,42,45,45
+32026,10,499,221,86,45,45
+32027,10,499,222,86,47,47
+32028,10,499,223,41,40,40
+32029,10,499,224,87,49,49
+32030,10,499,225,87,51,51
+32031,10,499,226,54,41,41
+32032,10,499,227,42,48,48
+32033,10,499,228,87,53,53
+32034,10,499,229,42,48,48
+32035,10,499,230,87,53,53
+32036,10,500,219,167,9,9
+32037,10,500,220,14,9,9
+32038,10,500,221,167,14,14
+32039,10,500,222,10,6,6
+32040,10,500,223,13,6,6
+32041,10,500,224,214,15,15
+32042,10,500,225,11,9,9
+32043,10,500,226,214,20,20
+32044,10,500,227,165,9,9
+32045,10,500,228,214,25,25
+32046,10,500,229,165,14,14
+32047,10,500,230,214,30,30
+32048,10,501,219,92,40,40
+32049,10,501,220,41,37,37
+32050,10,501,221,93,44,44
+32051,10,501,222,93,46,46
+32052,10,501,223,42,41,41
+32053,10,501,224,42,43,43
+32054,10,501,225,92,38,38
+32055,10,501,226,93,48,48
+32056,10,501,227,93,50,50
+32057,10,501,228,198,22,22
+32058,10,501,229,93,52,52
+32059,10,501,230,198,22,22
+32060,10,502,219,92,40,40
+32061,10,502,220,41,37,37
+32062,10,502,221,93,44,44
+32063,10,502,222,93,46,46
+32064,10,502,223,42,41,41
+32065,10,502,224,42,43,43
+32066,10,502,225,92,38,38
+32067,10,502,226,93,48,48
+32068,10,502,227,93,50,50
+32069,10,502,228,198,22,22
+32070,10,502,229,93,52,52
+32071,10,502,230,198,22,22
+32072,10,503,219,92,40,40
+32073,10,503,220,41,37,37
+32074,10,503,221,93,44,44
+32075,10,503,222,93,46,46
+32076,10,503,223,42,41,41
+32077,10,503,224,42,43,43
+32078,10,503,225,92,38,38
+32079,10,503,226,93,48,48
+32080,10,503,227,93,50,50
+32081,10,503,228,198,22,22
+32082,10,503,229,93,52,52
+32083,10,503,230,198,22,22
+32084,10,504,219,92,40,40
+32085,10,504,220,41,37,37
+32086,10,504,221,93,44,44
+32087,10,504,222,93,46,46
+32088,10,504,223,42,41,41
+32089,10,504,224,42,43,43
+32090,10,504,225,92,38,38
+32091,10,504,226,93,48,48
+32092,10,504,227,93,50,50
+32093,10,504,228,198,22,22
+32094,10,504,229,93,52,52
+32095,10,504,230,198,22,22
+32096,10,505,219,92,40,40
+32097,10,505,220,41,37,37
+32098,10,505,221,93,44,44
+32099,10,505,222,93,46,46
+32100,10,505,223,42,41,41
+32101,10,505,224,42,43,43
+32102,10,505,225,92,38,38
+32103,10,505,226,93,48,48
+32104,10,505,227,93,50,50
+32105,10,505,228,198,22,22
+32106,10,505,229,93,52,52
+32107,10,505,230,198,22,22
+32108,10,506,219,92,40,40
+32109,10,506,220,41,37,37
+32110,10,506,221,93,44,44
+32111,10,506,222,93,46,46
+32112,10,506,223,42,41,41
+32113,10,506,224,42,43,43
+32114,10,506,225,92,38,38
+32115,10,506,226,93,48,48
+32116,10,506,227,93,50,50
+32117,10,506,228,198,22,22
+32118,10,506,229,93,52,52
+32119,10,506,230,198,22,22
+32120,10,507,219,92,40,40
+32121,10,507,220,41,37,37
+32122,10,507,221,93,44,44
+32123,10,507,222,93,46,46
+32124,10,507,223,42,41,41
+32125,10,507,224,42,43,43
+32126,10,507,225,92,38,38
+32127,10,507,226,93,48,48
+32128,10,507,227,93,50,50
+32129,10,507,228,198,22,22
+32130,10,507,229,93,52,52
+32131,10,507,230,198,22,22
+32132,10,508,219,92,40,40
+32133,10,508,220,41,37,37
+32134,10,508,221,93,44,44
+32135,10,508,222,93,46,46
+32136,10,508,223,42,41,41
+32137,10,508,224,42,43,43
+32138,10,508,225,92,38,38
+32139,10,508,226,93,48,48
+32140,10,508,227,93,50,50
+32141,10,508,228,198,22,22
+32142,10,508,229,93,52,52
+32143,10,508,230,198,22,22
+32144,10,509,219,92,40,40
+32145,10,509,220,41,37,37
+32146,10,509,221,93,44,44
+32147,10,509,222,93,46,46
+32148,10,509,223,42,41,41
+32149,10,509,224,42,43,43
+32150,10,509,225,92,38,38
+32151,10,509,226,93,48,48
+32152,10,509,227,93,50,50
+32153,10,509,228,198,22,22
+32154,10,509,229,93,52,52
+32155,10,509,230,198,22,22
+32156,10,510,219,92,40,40
+32157,10,510,220,41,37,37
+32158,10,510,221,93,44,44
+32159,10,510,222,93,46,46
+32160,10,510,223,42,41,41
+32161,10,510,224,42,43,43
+32162,10,510,225,92,38,38
+32163,10,510,226,93,48,48
+32164,10,510,227,93,50,50
+32165,10,510,228,198,22,22
+32166,10,510,229,93,52,52
+32167,10,510,230,198,22,22
+32168,10,511,219,92,40,40
+32169,10,511,220,41,37,37
+32170,10,511,221,93,44,44
+32171,10,511,222,93,46,46
+32172,10,511,223,42,41,41
+32173,10,511,224,198,15,15
+32174,10,511,225,198,20,20
+32175,10,511,226,93,48,48
+32176,10,511,227,93,50,50
+32177,10,511,228,198,22,22
+32178,10,511,229,93,52,52
+32179,10,511,230,198,22,22
+32180,10,512,231,116,5,15
+32181,10,512,232,129,5,15
+32182,10,512,233,116,5,15
+32183,10,512,234,129,5,5
+32184,10,512,235,129,5,5
+32185,10,512,246,74,5,20
+32186,10,512,247,74,10,20
+32187,10,512,248,74,15,30
+32188,10,512,249,75,25,40
+32189,10,512,250,75,30,40
+32190,10,512,236,116,15,25
+32191,10,512,237,116,15,25
+32192,10,512,238,130,15,25
+32193,10,512,239,117,25,35
+32194,10,512,240,54,25,35
+32195,10,512,241,72,5,20
+32196,10,512,242,72,20,35
+32197,10,512,243,72,35,40
+32198,10,512,244,73,35,40
+32199,10,512,245,73,35,40
+32200,10,512,219,21,32,32
+32201,10,512,220,77,34,34
+32202,10,512,221,22,36,36
+32203,10,512,222,77,31,31
+32204,10,512,223,74,31,31
+32205,10,512,224,52,31,31
+32206,10,512,225,21,30,30
+32207,10,512,226,54,34,34
+32208,10,512,227,78,37,37
+32209,10,512,228,53,37,37
+32210,10,512,229,78,40,40
+32211,10,512,230,53,40,40
+32212,10,513,231,116,5,15
+32213,10,513,232,129,5,15
+32214,10,513,233,116,5,15
+32215,10,513,234,129,5,5
+32216,10,513,235,129,5,5
+32217,10,513,236,116,15,25
+32218,10,513,237,116,15,25
+32219,10,513,238,130,15,25
+32220,10,513,239,117,25,35
+32221,10,513,240,54,25,35
+32222,10,513,241,72,5,20
+32223,10,513,242,72,20,35
+32224,10,513,243,72,35,40
+32225,10,513,244,73,35,40
+32226,10,513,245,73,35,40
+32227,10,513,219,21,32,32
+32228,10,513,220,114,33,33
+32229,10,513,221,21,31,31
+32230,10,513,222,114,35,35
+32231,10,513,223,22,36,36
+32232,10,513,224,52,31,31
+32233,10,513,225,22,38,38
+32234,10,513,226,54,31,31
+32235,10,513,227,22,40,40
+32236,10,513,228,53,37,37
+32237,10,513,229,22,40,40
+32238,10,513,230,53,40,40
+32239,10,514,231,60,5,15
+32240,10,514,232,129,5,15
+32241,10,514,233,118,5,15
+32242,10,514,234,129,5,5
+32243,10,514,235,129,5,5
+32244,10,514,236,60,15,25
+32245,10,514,237,61,20,30
+32246,10,514,238,130,15,25
+32247,10,514,239,54,15,25
+32248,10,514,240,54,25,35
+32249,10,514,241,54,5,20
+32250,10,514,242,54,20,35
+32251,10,514,243,54,35,40
+32252,10,514,244,55,35,40
+32253,10,514,245,55,35,40
+32254,10,514,219,21,31,31
+32255,10,514,220,43,30,30
+32256,10,514,221,43,32,32
+32257,10,514,222,44,36,36
+32258,10,514,223,22,36,36
+32259,10,514,224,52,31,31
+32260,10,514,225,44,38,38
+32261,10,514,226,54,31,31
+32262,10,514,227,55,37,37
+32263,10,514,228,53,37,37
+32264,10,514,229,55,40,40
+32265,10,514,230,53,40,40
+32266,10,515,231,116,5,15
+32267,10,515,232,129,5,15
+32268,10,515,233,116,5,15
+32269,10,515,234,129,5,5
+32270,10,515,235,129,5,5
+32271,10,515,236,116,15,25
+32272,10,515,237,116,15,25
+32273,10,515,238,130,15,25
+32274,10,515,239,117,25,35
+32275,10,515,240,54,25,35
+32276,10,515,241,72,5,20
+32277,10,515,242,72,20,35
+32278,10,515,243,72,35,40
+32279,10,515,244,73,35,40
+32280,10,515,245,73,35,40
+32281,10,515,219,16,32,32
+32282,10,515,220,43,31,31
+32283,10,515,221,16,29,29
+32284,10,515,222,44,36,36
+32285,10,515,223,17,34,34
+32286,10,515,224,52,31,31
+32287,10,515,225,48,34,34
+32288,10,515,226,54,31,31
+32289,10,515,227,17,37,37
+32290,10,515,228,53,37,37
+32291,10,515,229,17,40,40
+32292,10,515,230,53,40,40
+32293,10,516,219,206,15,15
+32294,10,516,220,206,15,15
+32295,10,516,221,206,10,10
+32296,10,516,222,206,10,10
+32297,10,516,223,206,20,20
+32298,10,516,224,206,20,20
+32299,10,516,225,206,25,25
+32300,10,516,226,206,30,30
+32301,10,516,227,206,25,25
+32302,10,516,228,206,30,30
+32303,10,516,229,206,5,5
+32304,10,516,230,206,35,35
+32305,10,517,231,116,5,15
+32306,10,517,232,129,5,15
+32307,10,517,233,116,5,15
+32308,10,517,234,129,5,5
+32309,10,517,235,129,5,5
+32310,10,517,236,116,15,25
+32311,10,517,237,211,15,25
+32312,10,517,238,130,15,25
+32313,10,517,239,117,25,35
+32314,10,517,240,54,25,35
+32315,10,517,241,72,5,35
+32316,10,517,242,187,5,15
+32317,10,517,243,72,35,40
+32318,10,517,244,73,35,40
+32319,10,517,245,73,35,40
+32320,10,518,231,116,5,15
+32321,10,518,232,129,5,15
+32322,10,518,233,116,5,15
+32323,10,518,234,129,5,5
+32324,10,518,235,129,5,5
+32325,10,518,236,116,15,25
+32326,10,518,237,211,15,25
+32327,10,518,238,130,15,25
+32328,10,518,239,117,25,35
+32329,10,518,240,54,25,35
+32330,10,518,241,72,5,20
+32331,10,518,242,187,5,15
+32332,10,518,243,72,35,40
+32333,10,518,244,73,35,40
+32334,10,518,245,73,35,40
+32335,10,519,231,116,5,15
+32336,10,519,232,129,5,15
+32337,10,519,233,116,5,15
+32338,10,519,234,129,5,5
+32339,10,519,235,129,5,5
+32340,10,519,236,116,15,25
+32341,10,519,237,211,15,25
+32342,10,519,238,130,15,25
+32343,10,519,239,117,25,35
+32344,10,519,240,54,25,35
+32345,10,519,241,72,5,35
+32346,10,519,242,187,5,15
+32347,10,519,243,72,35,40
+32348,10,519,244,73,35,40
+32349,10,519,245,73,35,40
+32350,10,519,219,16,44,44
+32351,10,519,220,161,10,10
+32352,10,519,221,17,48,48
+32353,10,519,222,187,10,10
+32354,10,519,223,161,15,15
+32355,10,519,224,52,41,41
+32356,10,519,225,187,15,15
+32357,10,519,226,54,41,41
+32358,10,519,227,17,50,50
+32359,10,519,228,53,47,47
+32360,10,519,229,17,50,50
+32361,10,519,230,53,50,50
+32362,10,520,231,116,5,15
+32363,10,520,232,129,5,15
+32364,10,520,233,116,5,15
+32365,10,520,234,129,5,5
+32366,10,520,235,129,5,5
+32367,10,520,236,116,15,25
+32368,10,520,237,211,15,25
+32369,10,520,238,130,15,25
+32370,10,520,239,117,25,35
+32371,10,520,240,54,25,35
+32372,10,520,241,72,5,35
+32373,10,520,242,187,5,15
+32374,10,520,243,72,35,40
+32375,10,520,244,73,35,40
+32376,10,520,245,73,35,40
+32377,10,520,219,187,10,10
+32378,10,520,220,187,12,12
+32379,10,520,221,187,8,8
+32380,10,520,222,187,14,14
+32381,10,520,223,187,10,10
+32382,10,520,224,187,12,12
+32383,10,520,225,187,16,16
+32384,10,520,226,187,6,6
+32385,10,520,227,187,8,8
+32386,10,520,228,187,14,14
+32387,10,520,229,187,8,8
+32388,10,520,230,187,14,14
+32389,10,521,231,116,5,15
+32390,10,521,232,129,5,15
+32391,10,521,233,116,5,15
+32392,10,521,234,129,5,5
+32393,10,521,235,129,5,5
+32394,10,521,236,116,15,25
+32395,10,521,237,211,15,25
+32396,10,521,238,130,15,25
+32397,10,521,239,117,25,35
+32398,10,521,240,54,25,35
+32399,10,521,241,72,5,20
+32400,10,521,242,72,20,35
+32401,10,521,243,72,35,40
+32402,10,521,244,73,35,40
+32403,10,521,245,73,35,40
+32404,10,522,231,116,5,15
+32405,10,522,232,129,5,15
+32406,10,522,233,116,5,15
+32407,10,522,234,129,5,5
+32408,10,522,235,129,5,5
+32409,10,522,236,116,15,25
+32410,10,522,237,211,15,25
+32411,10,522,238,130,15,25
+32412,10,522,239,117,25,35
+32413,10,522,240,54,25,35
+32414,10,522,241,72,5,20
+32415,10,522,242,72,20,35
+32416,10,522,243,72,35,40
+32417,10,522,244,73,35,40
+32418,10,522,245,73,35,40
+32419,10,523,231,116,5,15
+32420,10,523,232,129,5,15
+32421,10,523,233,116,5,15
+32422,10,523,234,129,5,5
+32423,10,523,235,129,5,5
+32424,10,523,236,116,15,25
+32425,10,523,237,211,15,25
+32426,10,523,238,130,15,25
+32427,10,523,239,117,25,35
+32428,10,523,240,54,25,35
+32429,10,523,241,72,5,20
+32430,10,523,242,72,20,35
+32431,10,523,243,72,35,40
+32432,10,523,244,73,35,40
+32433,10,523,245,73,35,40
+32434,10,523,219,21,44,44
+32435,10,523,220,161,10,10
+32436,10,523,221,43,44,44
+32437,10,523,222,22,48,48
+32438,10,523,223,161,15,15
+32439,10,523,224,52,41,41
+32440,10,523,225,44,48,48
+32441,10,523,226,54,41,41
+32442,10,523,227,22,50,50
+32443,10,523,228,53,47,47
+32444,10,523,229,22,50,50
+32445,10,523,230,53,50,50
+32446,10,524,231,60,5,15
+32447,10,524,232,129,5,15
+32448,10,524,233,118,5,15
+32449,10,524,234,129,5,5
+32450,10,524,235,129,5,5
+32451,10,524,236,60,15,25
+32452,10,524,237,61,20,30
+32453,10,524,238,130,15,25
+32454,10,524,239,54,15,25
+32455,10,524,240,54,25,35
+32456,10,524,241,194,5,20
+32457,10,524,242,194,10,20
+32458,10,524,243,194,15,25
+32459,10,524,244,194,20,25
+32460,10,524,245,194,20,25
+32461,10,524,219,177,15,15
+32462,10,524,220,21,44,44
+32463,10,524,221,193,18,18
+32464,10,524,222,194,15,15
+32465,10,524,223,22,49,49
+32466,10,524,224,52,43,43
+32467,10,524,225,202,25,25
+32468,10,524,226,54,41,41
+32469,10,524,227,177,20,20
+32470,10,524,228,53,49,49
+32471,10,524,229,177,20,20
+32472,10,524,230,53,52,52
+32473,10,525,231,116,5,15
+32474,10,525,232,129,5,15
+32475,10,525,233,116,5,15
+32476,10,525,234,129,5,5
+32477,10,525,235,129,5,5
+32478,10,525,236,116,15,25
+32479,10,525,237,211,15,25
+32480,10,525,238,130,15,25
+32481,10,525,239,117,25,35
+32482,10,525,240,54,25,35
+32483,10,525,241,72,5,20
+32484,10,525,242,72,20,35
+32485,10,525,243,72,35,40
+32486,10,525,244,73,35,40
+32487,10,525,245,73,35,40
+32488,10,526,219,21,44,44
+32489,10,526,220,161,10,10
+32490,10,526,221,231,10,10
+32491,10,526,222,22,48,48
+32492,10,526,223,161,15,15
+32493,10,526,224,52,41,41
+32494,10,526,225,22,50,50
+32495,10,526,226,54,41,41
+32496,10,526,227,231,15,15
+32497,10,526,228,53,47,47
+32498,10,526,229,231,15,15
+32499,10,526,230,53,50,50
+32500,10,527,246,74,25,35
+32501,10,527,247,75,30,45
+32502,10,527,248,75,35,50
+32503,10,527,249,74,30,40
+32504,10,527,250,74,30,40
+32505,10,527,219,74,46,46
+32506,10,527,220,231,15,15
+32507,10,527,221,104,46,46
+32508,10,527,222,22,50,50
+32509,10,527,223,105,52,52
+32510,10,527,224,52,43,43
+32511,10,527,225,95,54,54
+32512,10,527,226,227,30,30
+32513,10,527,227,246,15,15
+32514,10,527,228,53,49,49
+32515,10,527,229,246,20,20
+32516,10,527,230,53,52,52
+32517,10,528,231,116,5,15
+32518,10,528,232,129,5,15
+32519,10,528,233,116,5,15
+32520,10,528,234,129,5,5
+32521,10,528,235,129,5,5
+32522,10,528,236,116,15,25
+32523,10,528,237,211,15,25
+32524,10,528,238,130,15,25
+32525,10,528,239,117,25,35
+32526,10,528,240,54,25,35
+32527,10,528,241,72,5,20
+32528,10,528,242,72,20,35
+32529,10,528,243,72,35,40
+32530,10,528,244,73,35,40
+32531,10,528,245,73,35,40
+32532,10,529,219,16,3,3
+32533,10,529,220,19,3,3
+32534,10,529,221,16,3,3
+32535,10,529,222,19,3,3
+32536,10,529,223,16,2,2
+32537,10,529,224,19,2,2
+32538,10,529,225,16,3,3
+32539,10,529,226,19,3,3
+32540,10,529,227,16,4,4
+32541,10,529,228,19,4,4
+32542,10,529,229,16,5,5
+32543,10,529,230,19,4,4
+32544,10,530,219,19,3,3
+32545,10,530,220,16,3,3
+32546,10,530,221,19,4,4
+32547,10,530,222,16,4,4
+32548,10,530,223,19,2,2
+32549,10,530,224,16,2,2
+32550,10,530,225,19,5,5
+32551,10,530,226,16,5,5
+32552,10,530,227,10,4,4
+32553,10,530,228,13,4,4
+32554,10,530,229,10,5,5
+32555,10,530,230,13,5,5
+32556,10,531,219,21,6,6
+32557,10,531,220,16,6,6
+32558,10,531,221,21,7,7
+32559,10,531,222,56,7,7
+32560,10,531,223,32,6,6
+32561,10,531,224,16,7,7
+32562,10,531,225,21,8,8
+32563,10,531,226,39,3,3
+32564,10,531,227,32,7,7
+32565,10,531,228,39,5,5
+32566,10,531,229,29,6,6
+32567,10,531,230,39,7,7
+32568,10,532,231,116,5,15
+32569,10,532,232,129,5,15
+32570,10,532,233,98,5,15
+32571,10,532,234,129,5,5
+32572,10,532,235,129,5,5
+32573,10,532,236,116,15,25
+32574,10,532,237,116,15,25
+32575,10,532,238,130,15,25
+32576,10,532,239,116,25,35
+32577,10,532,240,54,25,35
+32578,10,532,241,72,5,10
+32579,10,532,242,72,10,20
+32580,10,532,243,72,20,30
+32581,10,532,244,72,30,35
+32582,10,532,245,72,35,40
+32583,10,532,219,21,10,10
+32584,10,532,220,19,10,10
+32585,10,532,221,23,6,6
+32586,10,532,222,23,10,10
+32587,10,532,223,21,8,8
+32588,10,532,224,19,8,8
+32589,10,532,225,21,12,12
+32590,10,532,226,19,12,12
+32591,10,532,227,56,10,10
+32592,10,532,228,23,8,8
+32593,10,532,229,56,12,12
+32594,10,532,230,23,12,12
+32595,10,533,219,52,10,10
+32596,10,533,220,16,13,13
+32597,10,533,221,43,13,13
+32598,10,533,222,52,12,12
+32599,10,533,223,43,15,15
+32600,10,533,224,16,15,15
+32601,10,533,225,43,16,16
+32602,10,533,226,16,16,16
+32603,10,533,227,16,15,15
+32604,10,533,228,52,14,14
+32605,10,533,229,16,15,15
+32606,10,533,230,52,16,16
+32607,10,534,231,60,5,15
+32608,10,534,232,129,5,15
+32609,10,534,233,118,5,15
+32610,10,534,234,129,5,5
+32611,10,534,235,129,5,5
+32612,10,534,236,60,15,25
+32613,10,534,237,61,20,30
+32614,10,534,238,130,15,25
+32615,10,534,239,54,15,25
+32616,10,534,240,54,25,35
+32617,10,534,241,54,20,25
+32618,10,534,242,54,20,25
+32619,10,534,243,54,25,30
+32620,10,534,244,54,30,35
+32621,10,534,245,54,35,40
+32622,10,534,219,52,10,10
+32623,10,534,220,16,13,13
+32624,10,534,221,43,13,13
+32625,10,534,222,52,12,12
+32626,10,534,223,43,15,15
+32627,10,534,224,16,15,15
+32628,10,534,225,43,16,16
+32629,10,534,226,16,16,16
+32630,10,534,227,16,15,15
+32631,10,534,228,52,14,14
+32632,10,534,229,16,15,15
+32633,10,534,230,52,16,16
+32634,10,535,219,16,19,19
+32635,10,535,220,52,17,17
+32636,10,535,221,43,19,19
+32637,10,535,222,52,18,18
+32638,10,535,223,16,22,22
+32639,10,535,224,43,22,22
+32640,10,535,225,58,18,18
+32641,10,535,226,58,20,20
+32642,10,535,227,52,17,17
+32643,10,535,228,52,19,19
+32644,10,535,229,52,17,17
+32645,10,535,230,52,20,20
+32646,10,536,219,16,18,18
+32647,10,536,220,52,18,18
+32648,10,536,221,58,16,16
+32649,10,536,222,16,20,20
+32650,10,536,223,52,20,20
+32651,10,536,224,23,17,17
+32652,10,536,225,58,17,17
+32653,10,536,226,23,19,19
+32654,10,536,227,23,17,17
+32655,10,536,228,58,15,15
+32656,10,536,229,23,17,17
+32657,10,536,230,58,18,18
+32658,10,537,219,21,16,16
+32659,10,537,220,19,16,16
+32660,10,537,221,23,11,11
+32661,10,537,222,23,15,15
+32662,10,537,223,21,13,13
+32663,10,537,224,19,14,14
+32664,10,537,225,21,17,17
+32665,10,537,226,19,17,17
+32666,10,537,227,19,14,14
+32667,10,537,228,23,13,13
+32668,10,537,229,19,14,14
+32669,10,537,230,23,17,17
+32670,10,538,231,116,5,15
+32671,10,538,232,129,5,15
+32672,10,538,233,98,5,15
+32673,10,538,234,129,5,5
+32674,10,538,235,129,5,5
+32675,10,538,236,116,15,25
+32676,10,538,237,116,15,25
+32677,10,538,238,130,15,25
+32678,10,538,239,116,25,35
+32679,10,538,240,54,25,35
+32680,10,538,241,72,5,10
+32681,10,538,242,72,10,20
+32682,10,538,243,72,20,30
+32683,10,538,244,72,30,35
+32684,10,538,245,72,35,40
+32685,10,538,219,21,16,16
+32686,10,538,220,100,16,16
+32687,10,538,221,23,11,11
+32688,10,538,222,23,15,15
+32689,10,538,223,21,13,13
+32690,10,538,224,100,14,14
+32691,10,538,225,21,17,17
+32692,10,538,226,100,17,17
+32693,10,538,227,100,14,14
+32694,10,538,228,23,13,13
+32695,10,538,229,100,14,14
+32696,10,538,230,23,17,17
+32697,10,539,231,116,5,15
+32698,10,539,232,129,5,15
+32699,10,539,233,98,5,15
+32700,10,539,234,129,5,5
+32701,10,539,235,129,5,5
+32702,10,539,236,116,15,25
+32703,10,539,237,116,15,25
+32704,10,539,238,130,15,25
+32705,10,539,239,116,25,35
+32706,10,539,240,54,25,35
+32707,10,539,241,72,5,10
+32708,10,539,242,72,10,20
+32709,10,539,243,72,20,30
+32710,10,539,244,72,30,35
+32711,10,539,245,72,35,40
+32712,10,539,219,23,14,14
+32713,10,539,220,21,15,15
+32714,10,539,221,23,12,12
+32715,10,539,222,21,13,13
+32716,10,539,223,96,11,11
+32717,10,539,224,96,13,13
+32718,10,539,225,23,15,15
+32719,10,539,226,21,17,17
+32720,10,539,227,23,12,12
+32721,10,539,228,96,15,15
+32722,10,539,229,23,12,12
+32723,10,539,230,96,15,15
+32724,10,540,231,116,5,15
+32725,10,540,232,129,5,15
+32726,10,540,233,98,5,15
+32727,10,540,234,129,5,5
+32728,10,540,235,129,5,5
+32729,10,540,236,116,15,25
+32730,10,540,237,116,15,25
+32731,10,540,238,130,15,25
+32732,10,540,239,116,25,35
+32733,10,540,240,54,25,35
+32734,10,540,241,72,5,10
+32735,10,540,242,72,10,20
+32736,10,540,243,72,20,30
+32737,10,540,244,72,30,35
+32738,10,540,245,72,35,40
+32739,10,540,219,43,24,24
+32740,10,540,220,48,24,24
+32741,10,540,221,43,22,22
+32742,10,540,222,16,23,23
+32743,10,540,223,16,25,25
+32744,10,540,224,48,26,26
+32745,10,540,225,43,26,26
+32746,10,540,226,16,27,27
+32747,10,540,227,16,23,23
+32748,10,540,228,44,28,28
+32749,10,540,229,16,23,23
+32750,10,540,230,44,30,30
+32751,10,541,231,116,5,15
+32752,10,541,232,129,5,15
+32753,10,541,233,98,5,15
+32754,10,541,234,129,5,5
+32755,10,541,235,129,5,5
+32756,10,541,236,116,15,25
+32757,10,541,237,116,15,25
+32758,10,541,238,130,15,25
+32759,10,541,239,116,25,35
+32760,10,541,240,54,25,35
+32761,10,541,241,72,5,10
+32762,10,541,242,72,10,20
+32763,10,541,243,72,20,30
+32764,10,541,244,72,30,35
+32765,10,541,245,72,35,40
+32766,10,541,219,43,24,24
+32767,10,541,220,48,24,24
+32768,10,541,221,43,22,22
+32769,10,541,222,16,27,27
+32770,10,541,223,16,25,25
+32771,10,541,224,48,26,26
+32772,10,541,225,43,26,26
+32773,10,541,226,132,25,25
+32774,10,541,227,17,29,29
+32775,10,541,228,44,28,28
+32776,10,541,229,17,29,29
+32777,10,541,230,44,30,30
+32778,10,542,219,43,24,24
+32779,10,542,220,48,24,24
+32780,10,542,221,43,22,22
+32781,10,542,222,132,23,23
+32782,10,542,223,16,27,27
+32783,10,542,224,48,26,26
+32784,10,542,225,43,26,26
+32785,10,542,226,44,30,30
+32786,10,542,227,132,23,23
+32787,10,542,228,17,29,29
+32788,10,542,229,132,23,23
+32789,10,542,230,17,29,29
+32790,10,543,219,43,24,24
+32791,10,543,220,48,24,24
+32792,10,543,221,43,22,22
+32793,10,543,222,16,27,27
+32794,10,543,223,16,25,25
+32795,10,543,224,48,26,26
+32796,10,543,225,43,26,26
+32797,10,543,226,132,25,25
+32798,10,543,227,17,29,29
+32799,10,543,228,44,28,28
+32800,10,543,229,17,29,29
+32801,10,543,230,44,30,30
+32802,10,544,219,21,20,20
+32803,10,544,220,84,18,18
+32804,10,544,221,19,18,18
+32805,10,544,222,19,20,20
+32806,10,544,223,21,22,22
+32807,10,544,224,84,20,20
+32808,10,544,225,19,22,22
+32809,10,544,226,84,22,22
+32810,10,544,227,19,18,18
+32811,10,544,228,20,23,23
+32812,10,544,229,19,18,18
+32813,10,544,230,20,25,25
+32814,10,545,219,21,20,20
+32815,10,545,220,84,24,24
+32816,10,545,221,21,22,22
+32817,10,545,222,84,26,26
+32818,10,545,223,20,25,25
+32819,10,545,224,20,27,27
+32820,10,545,225,84,28,28
+32821,10,545,226,20,29,29
+32822,10,545,227,19,22,22
+32823,10,545,228,22,25,25
+32824,10,545,229,19,22,22
+32825,10,545,230,22,27,27
+32826,10,546,219,21,20,20
+32827,10,546,220,84,24,24
+32828,10,546,221,21,22,22
+32829,10,546,222,84,26,26
+32830,10,546,223,20,25,25
+32831,10,546,224,22,25,25
+32832,10,546,225,84,28,28
+32833,10,546,226,20,29,29
+32834,10,546,227,19,22,22
+32835,10,546,228,22,27,27
+32836,10,546,229,19,22,22
+32837,10,546,230,22,29,29
+32838,10,547,231,116,5,15
+32839,10,547,232,129,5,15
+32840,10,547,233,98,5,15
+32841,10,547,234,129,5,5
+32842,10,547,235,129,5,5
+32843,10,547,236,116,15,25
+32844,10,547,237,116,15,25
+32845,10,547,238,130,15,25
+32846,10,547,239,117,25,35
+32847,10,547,240,54,25,35
+32848,10,547,241,72,5,10
+32849,10,547,242,72,10,20
+32850,10,547,243,72,20,30
+32851,10,547,244,72,30,35
+32852,10,547,245,72,35,40
+32853,10,548,231,116,5,15
+32854,10,548,232,129,5,15
+32855,10,548,233,98,5,15
+32856,10,548,234,129,5,5
+32857,10,548,235,129,5,5
+32858,10,548,236,116,15,25
+32859,10,548,237,116,15,25
+32860,10,548,238,130,15,25
+32861,10,548,239,117,25,35
+32862,10,548,240,54,25,35
+32863,10,548,241,72,5,10
+32864,10,548,242,72,10,20
+32865,10,548,243,72,20,30
+32866,10,548,244,72,30,35
+32867,10,548,245,72,35,40
+32868,10,549,231,116,5,15
+32869,10,549,232,129,5,15
+32870,10,549,233,98,5,15
+32871,10,549,234,129,5,5
+32872,10,549,235,129,5,5
+32873,10,549,236,116,15,25
+32874,10,549,237,116,15,25
+32875,10,549,238,130,15,25
+32876,10,549,239,117,25,35
+32877,10,549,240,54,25,35
+32878,10,549,241,72,5,10
+32879,10,549,242,72,10,20
+32880,10,549,243,72,20,30
+32881,10,549,244,72,30,35
+32882,10,549,245,72,35,40
+32883,10,549,219,114,22,22
+32884,10,549,220,114,23,23
+32885,10,549,221,114,24,24
+32886,10,549,222,114,21,21
+32887,10,549,223,114,25,25
+32888,10,549,224,114,20,20
+32889,10,549,225,114,19,19
+32890,10,549,226,114,26,26
+32891,10,549,227,114,18,18
+32892,10,549,228,114,27,27
+32893,10,549,229,114,17,17
+32894,10,549,230,114,28,28
+32895,10,550,231,60,5,15
+32896,10,550,232,129,5,15
+32897,10,550,233,118,5,15
+32898,10,550,234,129,5,5
+32899,10,550,235,129,5,5
+32900,10,550,236,60,15,25
+32901,10,550,237,61,20,30
+32902,10,550,238,130,15,25
+32903,10,550,239,54,15,25
+32904,10,550,240,54,25,35
+32905,10,550,241,54,20,25
+32906,10,550,242,54,20,25
+32907,10,550,243,54,25,30
+32908,10,550,244,54,30,35
+32909,10,550,245,54,35,40
+32910,10,550,219,19,3,3
+32911,10,550,220,56,3,3
+32912,10,550,221,19,4,4
+32913,10,550,222,56,4,4
+32914,10,550,223,19,2,2
+32915,10,550,224,56,2,2
+32916,10,550,225,21,3,3
+32917,10,550,226,21,5,5
+32918,10,550,227,19,5,5
+32919,10,550,228,56,5,5
+32920,10,550,229,19,5,5
+32921,10,550,230,56,5,5
+32922,10,551,231,60,5,15
+32923,10,551,232,129,5,15
+32924,10,551,233,118,5,15
+32925,10,551,234,129,5,5
+32926,10,551,235,129,5,5
+32927,10,551,236,60,15,25
+32928,10,551,237,61,20,30
+32929,10,551,238,130,15,25
+32930,10,551,239,54,15,25
+32931,10,551,240,54,25,35
+32932,10,551,241,54,20,25
+32933,10,551,242,54,20,25
+32934,10,551,243,54,25,30
+32935,10,551,244,54,30,35
+32936,10,551,245,54,35,40
+32937,10,551,219,56,32,32
+32938,10,551,220,22,40,40
+32939,10,551,221,56,34,34
+32940,10,551,222,21,34,34
+32941,10,551,223,23,32,32
+32942,10,551,224,23,34,34
+32943,10,551,225,57,42,42
+32944,10,551,226,24,44,44
+32945,10,551,227,21,32,32
+32946,10,551,228,22,42,42
+32947,10,551,229,21,32,32
+32948,10,551,230,22,44,44
+32949,10,552,231,116,5,15
+32950,10,552,232,129,5,15
+32951,10,552,233,98,5,15
+32952,10,552,234,129,5,5
+32953,10,552,235,129,5,5
+32954,10,552,236,116,15,25
+32955,10,552,237,116,15,25
+32956,10,552,238,130,15,25
+32957,10,552,239,116,25,35
+32958,10,552,240,54,25,35
+32959,10,552,241,72,5,10
+32960,10,552,242,72,10,20
+32961,10,552,243,72,20,30
+32962,10,552,244,72,30,35
+32963,10,552,245,72,35,40
+32964,10,552,219,13,7,7
+32965,10,552,220,10,7,7
+32966,10,552,221,16,11,11
+32967,10,552,222,43,12,12
+32968,10,552,223,43,13,13
+32969,10,552,224,63,10,10
+32970,10,552,225,16,13,13
+32971,10,552,226,43,14,14
+32972,10,552,227,14,8,8
+32973,10,552,228,63,8,8
+32974,10,552,229,11,8,8
+32975,10,552,230,63,12,12
+32976,10,553,231,60,5,15
+32977,10,553,232,129,5,15
+32978,10,553,233,118,5,15
+32979,10,553,234,129,5,5
+32980,10,553,235,129,5,5
+32981,10,553,236,60,15,25
+32982,10,553,237,61,20,30
+32983,10,553,238,130,15,25
+32984,10,553,239,54,15,25
+32985,10,553,240,54,25,35
+32986,10,553,241,54,20,25
+32987,10,553,242,54,20,25
+32988,10,553,243,54,25,30
+32989,10,553,244,54,30,35
+32990,10,553,245,54,35,40
+32991,10,553,219,13,8,8
+32992,10,553,220,10,8,8
+32993,10,553,221,16,13,13
+32994,10,553,222,43,14,14
+32995,10,553,223,43,13,13
+32996,10,553,224,63,11,11
+32997,10,553,225,16,11,11
+32998,10,553,226,43,12,12
+32999,10,553,227,14,9,9
+33000,10,553,228,63,9,9
+33001,10,553,229,11,9,9
+33002,10,553,230,63,13,13
+33003,10,554,231,116,5,15
+33004,10,554,232,129,5,15
+33005,10,554,233,98,5,15
+33006,10,554,234,129,5,10
+33007,10,554,235,129,5,10
+33008,10,554,236,116,15,25
+33009,10,554,237,90,15,25
+33010,10,554,238,130,15,25
+33011,10,554,239,117,25,35
+33012,10,554,240,54,25,35
+33013,10,554,241,72,5,10
+33014,10,554,242,72,10,20
+33015,10,554,243,72,20,30
+33016,10,554,244,72,30,35
+33017,10,554,245,72,35,40
+33018,10,555,231,60,5,15
+33019,10,555,232,129,5,15
+33020,10,555,233,118,5,15
+33021,10,555,234,129,5,5
+33022,10,555,235,129,5,5
+33023,10,555,236,60,15,25
+33024,10,555,237,61,20,30
+33025,10,555,238,130,15,25
+33026,10,555,239,54,15,25
+33027,10,555,240,54,25,35
+33028,10,555,241,54,20,25
+33029,10,555,242,54,20,25
+33030,10,555,243,54,25,30
+33031,10,555,244,54,30,35
+33032,10,555,245,54,35,40
+33033,10,556,231,116,5,15
+33034,10,556,232,129,5,15
+33035,10,556,233,98,5,15
+33036,10,556,234,129,5,5
+33037,10,556,235,129,5,5
+33038,10,556,236,116,15,25
+33039,10,556,237,116,15,25
+33040,10,556,238,130,15,25
+33041,10,556,239,116,25,35
+33042,10,556,240,54,25,35
+33043,10,556,241,72,5,10
+33044,10,556,242,72,10,20
+33045,10,556,243,72,20,30
+33046,10,556,244,72,30,35
+33047,10,556,245,72,35,40
+33048,10,557,231,116,5,15
+33049,10,557,232,129,5,15
+33050,10,557,233,98,5,15
+33051,10,557,234,129,5,5
+33052,10,557,235,129,5,5
+33053,10,557,236,116,15,25
+33054,10,557,237,90,15,25
+33055,10,557,238,130,15,25
+33056,10,557,239,116,25,35
+33057,10,557,240,54,25,35
+33058,10,557,241,72,5,10
+33059,10,557,242,72,10,20
+33060,10,557,243,72,20,30
+33061,10,557,244,72,30,35
+33062,10,557,245,72,35,40
+33063,10,558,231,129,5,15
+33064,10,558,232,129,5,15
+33065,10,558,233,129,5,15
+33066,10,558,234,129,5,5
+33067,10,558,235,129,5,5
+33068,10,558,236,129,15,25
+33069,10,558,237,129,15,25
+33070,10,558,238,129,15,25
+33071,10,558,239,129,25,35
+33072,10,558,240,88,30,40
+33073,10,558,241,54,5,10
+33074,10,558,242,54,10,20
+33075,10,558,243,54,20,30
+33076,10,558,244,54,30,40
+33077,10,558,245,109,30,40
+33078,10,559,231,118,5,15
+33079,10,559,232,129,5,15
+33080,10,559,233,60,5,15
+33081,10,559,234,129,5,5
+33082,10,559,235,129,5,5
+33083,10,559,236,118,15,25
+33084,10,559,237,119,20,30
+33085,10,559,238,130,15,25
+33086,10,559,239,54,15,25
+33087,10,559,240,54,25,35
+33088,10,559,241,54,20,25
+33089,10,559,242,54,20,25
+33090,10,559,243,54,25,30
+33091,10,559,244,54,30,35
+33092,10,559,245,54,35,40
+33093,10,560,231,116,5,15
+33094,10,560,232,129,5,15
+33095,10,560,233,98,5,15
+33096,10,560,234,129,5,5
+33097,10,560,235,129,5,5
+33098,10,560,236,116,15,25
+33099,10,560,237,90,15,25
+33100,10,560,238,130,15,25
+33101,10,560,239,117,25,35
+33102,10,560,240,54,25,35
+33103,10,560,241,72,5,10
+33104,10,560,242,72,10,20
+33105,10,560,243,72,20,30
+33106,10,560,244,72,30,35
+33107,10,560,245,72,35,40
+33108,10,561,231,116,5,15
+33109,10,561,232,129,5,15
+33110,10,561,233,116,5,15
+33111,10,561,234,129,5,5
+33112,10,561,235,129,5,5
+33113,10,561,236,116,15,25
+33114,10,561,237,90,15,25
+33115,10,561,238,130,15,25
+33116,10,561,239,117,25,35
+33117,10,561,240,54,25,35
+33118,10,561,241,72,5,20
+33119,10,561,242,72,20,35
+33120,10,561,243,72,35,40
+33121,10,561,244,73,35,40
+33122,10,561,245,73,35,40
+33123,10,562,231,60,5,15
+33124,10,562,232,129,5,15
+33125,10,562,233,118,5,15
+33126,10,562,234,129,5,5
+33127,10,562,235,129,5,5
+33128,10,562,236,60,15,25
+33129,10,562,237,61,20,30
+33130,10,562,238,130,15,25
+33131,10,562,239,54,15,25
+33132,10,562,240,54,25,35
+33133,10,562,241,194,5,15
+33134,10,562,242,54,5,35
+33135,10,562,243,194,15,25
+33136,10,562,244,194,15,25
+33137,10,562,245,194,15,25
+33138,10,563,231,116,5,15
+33139,10,563,232,129,5,15
+33140,10,563,233,116,5,15
+33141,10,563,234,129,5,5
+33142,10,563,235,129,5,5
+33143,10,563,236,116,15,25
+33144,10,563,237,90,15,25
+33145,10,563,238,130,15,25
+33146,10,563,239,117,25,35
+33147,10,563,240,54,25,35
+33148,10,563,241,72,5,35
+33149,10,563,242,187,5,15
+33150,10,563,243,72,35,40
+33151,10,563,244,73,35,40
+33152,10,563,245,73,35,40
+33153,10,564,219,41,10,10
+33154,10,564,220,41,12,12
+33155,10,564,221,41,8,8
+33156,10,564,222,41,14,14
+33157,10,564,223,41,10,10
+33158,10,564,224,41,12,12
+33159,10,564,225,41,16,16
+33160,10,564,226,41,6,6
+33161,10,564,227,41,8,8
+33162,10,564,228,41,14,14
+33163,10,564,229,41,8,8
+33164,10,564,230,41,14,14
+33165,10,565,219,179,7,7
+33166,10,565,220,179,9,9
+33167,10,565,221,179,5,5
+33168,10,565,222,179,11,11
+33169,10,565,223,179,7,7
+33170,10,565,224,179,9,9
+33171,10,565,225,179,13,13
+33172,10,565,226,179,3,3
+33173,10,565,227,179,5,5
+33174,10,565,228,179,11,11
+33175,10,565,229,179,5,5
+33176,10,565,230,179,11,11
+33177,10,566,219,204,23,23
+33178,10,566,220,204,25,25
+33179,10,566,221,204,22,22
+33180,10,566,222,204,27,27
+33181,10,566,223,204,23,23
+33182,10,566,224,204,25,25
+33183,10,566,225,204,29,29
+33184,10,566,226,204,19,19
+33185,10,566,227,204,21,21
+33186,10,566,228,204,27,27
+33187,10,566,229,204,21,21
+33188,10,566,230,204,27,27
+33189,10,567,219,228,16,16
+33190,10,567,220,228,18,18
+33191,10,567,221,228,14,14
+33192,10,567,222,228,20,20
+33193,10,567,223,228,16,16
+33194,10,567,224,228,18,18
+33195,10,567,225,228,22,22
+33196,10,567,226,228,12,12
+33197,10,567,227,228,14,14
+33198,10,567,228,228,20,20
+33199,10,567,229,228,14,14
+33200,10,567,230,228,20,20
+33201,10,568,219,216,22,22
+33202,10,568,220,216,24,24
+33203,10,568,221,216,20,20
+33204,10,568,222,216,26,26
+33205,10,568,223,216,22,22
+33206,10,568,224,216,24,24
+33207,10,568,225,216,28,28
+33208,10,568,226,216,18,18
+33209,10,568,227,216,20,20
+33210,10,568,228,216,26,26
+33211,10,568,229,216,20,20
+33212,10,568,230,216,26,26
+33213,10,569,219,190,22,22
+33214,10,569,220,190,24,24
+33215,10,569,221,190,20,20
+33216,10,569,222,190,26,26
+33217,10,569,223,190,22,22
+33218,10,569,224,190,24,24
+33219,10,569,225,190,28,28
+33220,10,569,226,190,18,18
+33221,10,569,227,190,20,20
+33222,10,569,228,190,26,26
+33223,10,569,229,190,20,20
+33224,10,569,230,190,26,26
+33225,10,570,219,213,22,22
+33226,10,570,220,213,24,24
+33227,10,570,221,213,20,20
+33228,10,570,222,213,26,26
+33229,10,570,223,213,22,22
+33230,10,570,224,213,24,24
+33231,10,570,225,213,28,28
+33232,10,570,226,213,18,18
+33233,10,570,227,213,20,20
+33234,10,570,228,213,26,26
+33235,10,570,229,213,20,20
+33236,10,570,230,213,26,26
+33237,10,571,219,234,22,22
+33238,10,571,220,234,24,24
+33239,10,571,221,234,20,20
+33240,10,571,222,234,26,26
+33241,10,571,223,234,22,22
+33242,10,571,224,234,24,24
+33243,10,571,225,234,28,28
+33244,10,571,226,234,18,18
+33245,10,571,227,234,20,20
+33246,10,571,228,234,26,26
+33247,10,571,229,234,20,20
+33248,10,571,230,234,26,26
+33249,10,572,219,235,22,22
+33250,10,572,220,235,24,24
+33251,10,572,221,235,20,20
+33252,10,572,222,235,26,26
+33253,10,572,223,235,22,22
+33254,10,572,224,235,24,24
+33255,10,572,225,235,28,28
+33256,10,572,226,235,18,18
+33257,10,572,227,235,20,20
+33258,10,572,228,235,26,26
+33259,10,572,229,235,20,20
+33260,10,572,230,235,26,26
+33261,11,450,219,201,25,25
+33262,11,450,220,201,25,25
+33263,11,450,221,201,25,25
+33264,11,450,222,201,25,25
+33265,11,450,223,201,25,25
+33266,11,450,224,201,25,25
+33267,11,450,225,201,25,25
+33268,11,450,226,201,25,25
+33269,11,450,227,201,25,25
+33270,11,450,228,201,25,25
+33271,11,450,229,201,25,25
+33272,11,450,230,201,25,25
+33273,11,451,219,201,25,25
+33274,11,451,220,201,25,25
+33275,11,451,221,201,25,25
+33276,11,451,222,201,25,25
+33277,11,451,223,201,25,25
+33278,11,451,224,201,25,25
+33279,11,451,225,201,25,25
+33280,11,451,226,201,25,25
+33281,11,451,227,201,25,25
+33282,11,451,228,201,25,25
+33283,11,451,229,201,25,25
+33284,11,451,230,201,25,25
+33285,11,452,219,201,25,25
+33286,11,452,220,201,25,25
+33287,11,452,221,201,25,25
+33288,11,452,222,201,25,25
+33289,11,452,223,201,25,25
+33290,11,452,224,201,25,25
+33291,11,452,225,201,25,25
+33292,11,452,226,201,25,25
+33293,11,452,227,201,25,25
+33294,11,452,228,201,25,25
+33295,11,452,229,201,25,25
+33296,11,452,230,201,25,25
+33297,11,453,219,201,25,25
+33298,11,453,220,201,25,25
+33299,11,453,221,201,25,25
+33300,11,453,222,201,25,25
+33301,11,453,223,201,25,25
+33302,11,453,224,201,25,25
+33303,11,453,225,201,25,25
+33304,11,453,226,201,25,25
+33305,11,453,227,201,25,25
+33306,11,453,228,201,25,25
+33307,11,453,229,201,25,25
+33308,11,453,230,201,25,25
+33309,11,454,219,201,25,25
+33310,11,454,220,201,25,25
+33311,11,454,221,201,25,25
+33312,11,454,222,201,25,25
+33313,11,454,223,201,25,25
+33314,11,454,224,201,25,25
+33315,11,454,225,201,25,25
+33316,11,454,226,201,25,25
+33317,11,454,227,201,25,25
+33318,11,454,228,201,25,25
+33319,11,454,229,201,25,25
+33320,11,454,230,201,25,25
+33321,11,455,219,201,25,25
+33322,11,455,220,201,25,25
+33323,11,455,221,201,25,25
+33324,11,455,222,201,25,25
+33325,11,455,223,201,25,25
+33326,11,455,224,201,25,25
+33327,11,455,225,201,25,25
+33328,11,455,226,201,25,25
+33329,11,455,227,201,25,25
+33330,11,455,228,201,25,25
+33331,11,455,229,201,25,25
+33332,11,455,230,201,25,25
+33333,11,456,219,201,25,25
+33334,11,456,220,201,25,25
+33335,11,456,221,201,25,25
+33336,11,456,222,201,25,25
+33337,11,456,223,201,25,25
+33338,11,456,224,201,25,25
+33339,11,456,225,201,25,25
+33340,11,456,226,201,25,25
+33341,11,456,227,201,25,25
+33342,11,456,228,201,25,25
+33343,11,456,229,201,25,25
+33344,11,456,230,201,25,25
+33345,11,457,219,10,4,4
+33346,11,457,220,13,4,4
+33347,11,457,221,10,5,5
+33348,11,457,222,13,5,5
+33349,11,457,223,10,3,3
+33350,11,457,224,13,3,3
+33351,11,457,225,14,5,5
+33352,11,457,226,11,5,5
+33353,11,457,227,11,4,4
+33354,11,457,228,25,3,3
+33355,11,457,229,11,6,6
+33356,11,457,230,25,5,5
+33357,11,458,219,41,7,7
+33358,11,458,220,41,8,8
+33359,11,458,221,74,7,7
+33360,11,458,222,41,9,9
+33361,11,458,223,41,10,10
+33362,11,458,224,74,8,8
+33363,11,458,225,74,9,9
+33364,11,458,226,46,8,8
+33365,11,458,227,41,7,7
+33366,11,458,228,41,7,7
+33367,11,458,229,41,7,7
+33368,11,458,230,35,8,8
+33369,11,459,219,46,7,7
+33370,11,459,220,46,8,8
+33371,11,459,221,46,5,5
+33372,11,459,222,46,6,6
+33373,11,459,223,46,9,9
+33374,11,459,224,46,10,10
+33375,11,459,225,46,7,7
+33376,11,459,226,46,8,8
+33377,11,459,227,46,5,5
+33378,11,459,228,46,6,6
+33379,11,459,229,46,9,9
+33380,11,459,230,46,10,10
+33381,11,460,219,41,8,8
+33382,11,460,220,74,9,9
+33383,11,460,221,41,9,9
+33384,11,460,222,41,10,10
+33385,11,460,223,74,10,10
+33386,11,460,224,46,10,10
+33387,11,460,225,46,12,12
+33388,11,460,226,35,10,10
+33389,11,460,227,41,11,11
+33390,11,460,228,41,11,11
+33391,11,460,229,41,11,11
+33392,11,460,230,35,12,12
+33393,11,461,231,98,5,15
+33394,11,461,232,129,5,15
+33395,11,461,233,116,5,15
+33396,11,461,234,129,5,5
+33397,11,461,235,129,5,5
+33398,11,461,236,98,15,25
+33399,11,461,237,120,15,25
+33400,11,461,238,130,15,25
+33401,11,461,239,98,25,35
+33402,11,461,240,79,25,35
+33403,11,461,241,72,5,10
+33404,11,461,242,72,10,20
+33405,11,461,243,72,20,30
+33406,11,461,244,72,30,35
+33407,11,461,245,72,35,40
+33408,11,462,219,50,18,18
+33409,11,462,220,50,19,19
+33410,11,462,221,50,17,17
+33411,11,462,222,50,15,15
+33412,11,462,223,50,16,16
+33413,11,462,224,50,20,20
+33414,11,462,225,50,21,21
+33415,11,462,226,50,22,22
+33416,11,462,227,50,17,17
+33417,11,462,228,51,29,29
+33418,11,462,229,50,17,17
+33419,11,462,230,51,31,31
+33420,11,573,219,66,32,32
+33421,11,573,220,74,32,32
+33422,11,573,221,95,40,40
+33423,11,573,222,95,43,43
+33424,11,573,223,95,46,46
+33425,11,573,224,41,32,32
+33426,11,573,225,28,44,44
+33427,11,573,226,42,44,44
+33428,11,573,227,105,44,44
+33429,11,573,228,67,44,44
+33430,11,573,229,67,46,46
+33431,11,573,230,105,46,46
+33432,11,574,219,66,34,34
+33433,11,574,220,74,34,34
+33434,11,574,221,57,42,42
+33435,11,574,222,95,45,45
+33436,11,574,223,95,48,48
+33437,11,574,224,41,34,34
+33438,11,574,225,28,46,46
+33439,11,574,226,42,46,46
+33440,11,574,227,105,46,46
+33441,11,574,228,67,46,46
+33442,11,574,229,67,48,48
+33443,11,574,230,105,48,48
+33444,11,575,219,66,32,32
+33445,11,575,220,74,32,32
+33446,11,575,221,95,40,40
+33447,11,575,222,95,43,43
+33448,11,575,223,95,46,46
+33449,11,575,224,41,32,32
+33450,11,575,225,28,44,44
+33451,11,575,226,42,44,44
+33452,11,575,227,105,44,44
+33453,11,575,228,67,44,44
+33454,11,575,229,67,46,46
+33455,11,575,230,105,46,46
+33456,11,466,219,88,28,28
+33457,11,466,220,20,32,32
+33458,11,466,221,88,30,30
+33459,11,466,222,20,36,36
+33460,11,466,223,37,30,30
+33461,11,466,224,19,28,28
+33462,11,466,225,109,28,28
+33463,11,466,226,89,32,32
+33464,11,466,227,37,32,32
+33465,11,466,228,19,26,26
+33466,11,466,229,37,32,32
+33467,11,466,230,19,26,26
+33468,11,467,219,88,28,28
+33469,11,467,220,20,34,34
+33470,11,467,221,88,30,30
+33471,11,467,222,132,30,30
+33472,11,467,223,37,30,30
+33473,11,467,224,20,38,38
+33474,11,467,225,109,28,28
+33475,11,467,226,89,34,34
+33476,11,467,227,37,32,32
+33477,11,467,228,19,26,26
+33478,11,467,229,37,32,32
+33479,11,467,230,19,26,26
+33480,11,468,231,118,5,15
+33481,11,468,232,129,5,15
+33482,11,468,233,60,5,15
+33483,11,468,234,129,5,5
+33484,11,468,235,129,5,5
+33485,11,468,236,118,15,25
+33486,11,468,237,119,20,30
+33487,11,468,238,147,15,25
+33488,11,468,239,79,15,35
+33489,11,468,240,148,25,35
+33490,11,468,241,79,20,25
+33491,11,468,242,79,20,25
+33492,11,468,243,79,25,30
+33493,11,468,244,79,30,35
+33494,11,468,245,79,35,40
+33495,11,468,219,111,25,25
+33496,11,468,220,29,22,22
+33497,11,468,221,102,24,24
+33498,11,468,222,102,25,25
+33499,11,468,223,48,22,22
+33500,11,468,224,30,31,31
+33501,11,468,225,33,31,31
+33502,11,468,226,47,30,30
+33503,11,468,227,48,22,22
+33504,11,468,228,127,23,23
+33505,11,468,229,48,22,22
+33506,11,468,230,113,23,23
+33507,11,469,231,118,5,15
+33508,11,469,232,129,5,15
+33509,11,469,233,60,5,15
+33510,11,469,234,129,5,5
+33511,11,469,235,129,5,5
+33512,11,469,236,118,15,25
+33513,11,469,237,119,20,30
+33514,11,469,238,147,15,25
+33515,11,469,239,79,15,35
+33516,11,469,240,148,25,35
+33517,11,469,241,79,20,25
+33518,11,469,242,79,20,25
+33519,11,469,243,79,25,30
+33520,11,469,244,79,30,35
+33521,11,469,245,79,35,40
+33522,11,469,219,29,24,24
+33523,11,469,220,84,26,26
+33524,11,469,221,102,23,23
+33525,11,469,222,102,25,25
+33526,11,469,223,46,22,22
+33527,11,469,224,30,33,33
+33528,11,469,225,32,24,24
+33529,11,469,226,47,25,25
+33530,11,469,227,46,22,22
+33531,11,469,228,115,25,25
+33532,11,469,229,46,22,22
+33533,11,469,230,127,28,28
+33534,11,470,231,118,5,15
+33535,11,470,232,129,5,15
+33536,11,470,233,60,5,15
+33537,11,470,234,129,5,5
+33538,11,470,235,129,5,5
+33539,11,470,236,118,15,25
+33540,11,470,237,119,20,30
+33541,11,470,238,147,15,25
+33542,11,470,239,79,15,35
+33543,11,470,240,148,25,35
+33544,11,470,241,79,20,25
+33545,11,470,242,79,20,25
+33546,11,470,243,79,25,30
+33547,11,470,244,79,30,35
+33548,11,470,245,79,35,40
+33549,11,470,219,111,26,26
+33550,11,470,220,29,30,30
+33551,11,470,221,102,25,25
+33552,11,470,222,102,27,27
+33553,11,470,223,46,23,23
+33554,11,470,224,30,30,30
+33555,11,470,225,33,30,30
+33556,11,470,226,49,32,32
+33557,11,470,227,46,23,23
+33558,11,470,228,113,26,26
+33559,11,470,229,46,23,23
+33560,11,470,230,128,28,28
+33561,11,471,231,118,5,15
+33562,11,471,232,129,5,15
+33563,11,471,233,60,5,15
+33564,11,471,234,129,5,5
+33565,11,471,235,129,5,5
+33566,11,471,236,118,15,25
+33567,11,471,237,119,20,30
+33568,11,471,238,147,15,25
+33569,11,471,239,79,15,35
+33570,11,471,240,148,25,35
+33571,11,471,241,79,20,25
+33572,11,471,242,79,20,25
+33573,11,471,243,79,25,30
+33574,11,471,244,79,30,35
+33575,11,471,245,79,35,40
+33576,11,471,219,84,26,26
+33577,11,471,220,29,22,22
+33578,11,471,221,102,25,25
+33579,11,471,222,102,27,27
+33580,11,471,223,48,23,23
+33581,11,471,224,30,30,30
+33582,11,471,225,32,30,30
+33583,11,471,226,49,32,32
+33584,11,471,227,48,23,23
+33585,11,471,228,128,25,25
+33586,11,471,229,48,23,23
+33587,11,471,230,115,28,28
+33588,11,472,231,60,5,15
+33589,11,472,232,129,5,15
+33590,11,472,233,118,5,15
+33591,11,472,234,129,5,5
+33592,11,472,235,129,5,5
+33593,11,472,246,74,30,40
+33594,11,472,247,75,40,50
+33595,11,472,248,75,45,55
+33596,11,472,249,74,40,50
+33597,11,472,250,74,40,50
+33598,11,472,236,60,15,25
+33599,11,472,237,61,20,30
+33600,11,472,238,130,15,25
+33601,11,472,239,79,15,25
+33602,11,472,240,79,25,35
+33603,11,472,241,79,30,40
+33604,11,472,242,80,40,50
+33605,11,472,243,80,45,55
+33606,11,472,244,79,40,50
+33607,11,472,245,79,40,50
+33608,11,472,219,82,49,49
+33609,11,472,220,47,49,49
+33610,11,472,221,42,46,46
+33611,11,472,222,67,46,46
+33612,11,472,223,57,52,52
+33613,11,472,224,132,52,52
+33614,11,472,225,101,58,58
+33615,11,472,226,47,58,58
+33616,11,472,227,42,55,55
+33617,11,472,228,202,55,55
+33618,11,472,229,57,61,61
+33619,11,472,230,132,61,61
+33620,11,473,246,74,35,45
+33621,11,473,247,75,45,55
+33622,11,473,248,75,50,60
+33623,11,473,249,74,45,55
+33624,11,473,250,74,45,55
+33625,11,473,219,42,49,49
+33626,11,473,220,67,49,49
+33627,11,473,221,82,52,52
+33628,11,473,222,47,52,52
+33629,11,473,223,64,55,55
+33630,11,473,224,132,55,55
+33631,11,473,225,42,58,58
+33632,11,473,226,202,58,58
+33633,11,473,227,101,61,61
+33634,11,473,228,47,61,61
+33635,11,473,229,64,64,64
+33636,11,473,230,132,64,64
+33637,11,474,231,60,5,15
+33638,11,474,232,129,5,15
+33639,11,474,233,118,5,15
+33640,11,474,234,129,5,5
+33641,11,474,235,129,5,5
+33642,11,474,246,74,40,50
+33643,11,474,247,75,50,60
+33644,11,474,248,75,55,65
+33645,11,474,249,74,50,60
+33646,11,474,250,74,50,60
+33647,11,474,236,60,15,25
+33648,11,474,237,61,20,30
+33649,11,474,238,130,15,25
+33650,11,474,239,79,15,25
+33651,11,474,240,130,25,35
+33652,11,474,241,79,40,50
+33653,11,474,242,80,50,60
+33654,11,474,243,80,55,65
+33655,11,474,244,79,50,60
+33656,11,474,245,79,50,60
+33657,11,474,219,64,58,58
+33658,11,474,220,132,58,58
+33659,11,474,221,82,55,55
+33660,11,474,222,47,55,55
+33661,11,474,223,42,52,52
+33662,11,474,224,67,52,52
+33663,11,474,225,64,67,67
+33664,11,474,226,132,67,67
+33665,11,474,227,101,64,64
+33666,11,474,228,47,64,64
+33667,11,474,229,42,61,61
+33668,11,474,230,202,61,61
+33669,11,475,219,41,15,15
+33670,11,475,220,74,16,16
+33671,11,475,221,56,16,16
+33672,11,475,222,74,17,17
+33673,11,475,223,41,16,16
+33674,11,475,224,66,16,16
+33675,11,475,225,56,17,17
+33676,11,475,226,66,17,17
+33677,11,475,227,74,15,15
+33678,11,475,228,95,13,13
+33679,11,475,229,74,15,15
+33680,11,475,230,95,15,15
+33681,11,476,246,74,5,20
+33682,11,476,247,74,10,20
+33683,11,476,248,74,15,30
+33684,11,476,249,75,25,40
+33685,11,476,250,75,30,40
+33686,11,476,219,41,16,16
+33687,11,476,220,74,17,17
+33688,11,476,221,56,17,17
+33689,11,476,222,74,16,16
+33690,11,476,223,41,15,15
+33691,11,476,224,66,17,17
+33692,11,476,225,56,16,16
+33693,11,476,226,95,13,13
+33694,11,476,227,74,15,15
+33695,11,476,228,95,15,15
+33696,11,476,229,74,15,15
+33697,11,476,230,95,17,17
+33698,11,477,219,79,27,27
+33699,11,477,220,79,29,29
+33700,11,477,221,79,31,31
+33701,11,477,222,41,22,22
+33702,11,477,223,41,22,22
+33703,11,477,224,41,24,24
+33704,11,477,225,42,26,26
+33705,11,477,226,42,28,28
+33706,11,477,227,79,33,33
+33707,11,477,228,41,26,26
+33708,11,477,229,79,26,26
+33709,11,477,230,42,30,30
+33710,11,478,219,79,29,29
+33711,11,478,220,79,31,31
+33712,11,478,221,86,28,28
+33713,11,478,222,41,22,22
+33714,11,478,223,41,22,22
+33715,11,478,224,41,24,24
+33716,11,478,225,42,26,26
+33717,11,478,226,42,28,28
+33718,11,478,227,80,33,33
+33719,11,478,228,41,26,26
+33720,11,478,229,80,35,35
+33721,11,478,230,42,30,30
+33722,11,479,219,79,30,30
+33723,11,479,220,79,32,32
+33724,11,479,221,86,30,30
+33725,11,479,222,86,32,32
+33726,11,479,223,41,22,22
+33727,11,479,224,41,24,24
+33728,11,479,225,42,26,26
+33729,11,479,226,80,34,34
+33730,11,479,227,80,32,32
+33731,11,479,228,42,28,28
+33732,11,479,229,80,32,32
+33733,11,479,230,42,30,30
+33734,11,480,231,98,5,15
+33735,11,480,232,129,5,15
+33736,11,480,233,116,5,15
+33737,11,480,234,129,5,5
+33738,11,480,235,129,5,5
+33739,11,480,236,98,15,25
+33740,11,480,237,98,20,30
+33741,11,480,238,130,15,25
+33742,11,480,239,79,15,25
+33743,11,480,240,130,25,35
+33744,11,480,241,86,25,35
+33745,11,480,242,98,25,30
+33746,11,480,243,87,35,40
+33747,11,480,244,79,30,40
+33748,11,480,245,80,35,40
+33749,11,480,219,86,30,30
+33750,11,480,220,86,32,32
+33751,11,480,221,79,32,32
+33752,11,480,222,79,30,30
+33753,11,480,223,80,32,32
+33754,11,480,224,41,24,24
+33755,11,480,225,42,26,26
+33756,11,480,226,80,34,34
+33757,11,480,227,87,32,32
+33758,11,480,228,42,28,28
+33759,11,480,229,87,34,34
+33760,11,480,230,42,30,30
+33761,11,481,231,98,5,15
+33762,11,481,232,129,5,15
+33763,11,481,233,116,5,15
+33764,11,481,234,129,5,5
+33765,11,481,235,129,5,5
+33766,11,481,236,98,15,25
+33767,11,481,237,98,20,30
+33768,11,481,238,130,15,25
+33769,11,481,239,79,15,25
+33770,11,481,240,130,25,35
+33771,11,481,241,86,25,35
+33772,11,481,242,98,25,30
+33773,11,481,243,87,35,40
+33774,11,481,244,79,30,40
+33775,11,481,245,80,35,40
+33776,11,481,219,86,30,30
+33777,11,481,220,86,32,32
+33778,11,481,221,79,32,32
+33779,11,481,222,86,34,34
+33780,11,481,223,80,32,32
+33781,11,481,224,42,26,26
+33782,11,481,225,87,34,34
+33783,11,481,226,80,34,34
+33784,11,481,227,87,36,36
+33785,11,481,228,42,28,28
+33786,11,481,229,87,36,36
+33787,11,481,230,42,30,30
+33788,11,482,219,92,15,15
+33789,11,482,220,92,16,16
+33790,11,482,221,92,17,17
+33791,11,482,222,92,13,13
+33792,11,482,223,92,14,14
+33793,11,482,224,92,18,18
+33794,11,482,225,92,19,19
+33795,11,482,226,104,15,15
+33796,11,482,227,92,17,17
+33797,11,482,228,104,17,17
+33798,11,482,229,92,17,17
+33799,11,482,230,93,20,20
+33800,11,483,219,92,15,15
+33801,11,483,220,92,16,16
+33802,11,483,221,92,17,17
+33803,11,483,222,92,13,13
+33804,11,483,223,92,14,14
+33805,11,483,224,92,18,18
+33806,11,483,225,93,20,20
+33807,11,483,226,104,15,15
+33808,11,483,227,92,17,17
+33809,11,483,228,104,17,17
+33810,11,483,229,92,17,17
+33811,11,483,230,92,19,19
+33812,11,484,219,92,15,15
+33813,11,484,220,92,16,16
+33814,11,484,221,92,17,17
+33815,11,484,222,92,13,13
+33816,11,484,223,92,14,14
+33817,11,484,224,92,18,18
+33818,11,484,225,93,20,20
+33819,11,484,226,104,15,15
+33820,11,484,227,92,17,17
+33821,11,484,228,104,17,17
+33822,11,484,229,92,17,17
+33823,11,484,230,92,19,19
+33824,11,485,219,92,16,16
+33825,11,485,220,92,17,17
+33826,11,485,221,92,18,18
+33827,11,485,222,92,14,14
+33828,11,485,223,92,15,15
+33829,11,485,224,92,19,19
+33830,11,485,225,93,21,21
+33831,11,485,226,104,17,17
+33832,11,485,227,92,18,18
+33833,11,485,228,104,19,19
+33834,11,485,229,92,18,18
+33835,11,485,230,93,23,23
+33836,11,486,219,92,16,16
+33837,11,486,220,92,17,17
+33838,11,486,221,92,18,18
+33839,11,486,222,92,15,15
+33840,11,486,223,92,19,19
+33841,11,486,224,93,23,23
+33842,11,486,225,104,17,17
+33843,11,486,226,104,19,19
+33844,11,486,227,92,18,18
+33845,11,486,228,93,23,23
+33846,11,486,229,92,18,18
+33847,11,486,230,93,25,25
+33848,11,487,219,100,22,22
+33849,11,487,220,81,22,22
+33850,11,487,221,100,25,25
+33851,11,487,222,81,25,25
+33852,11,487,223,25,22,22
+33853,11,487,224,25,24,24
+33854,11,487,225,82,31,31
+33855,11,487,226,82,34,34
+33856,11,487,227,25,26,26
+33857,11,487,228,82,31,31
+33858,11,487,229,25,26,26
+33859,11,487,230,82,34,34
+33860,11,488,246,74,5,20
+33861,11,488,247,74,10,20
+33862,11,488,248,74,15,30
+33863,11,488,249,75,25,40
+33864,11,488,250,75,30,40
+33865,11,488,219,77,30,30
+33866,11,488,220,22,38,38
+33867,11,488,221,77,33,33
+33868,11,488,222,21,32,32
+33869,11,488,223,66,35,35
+33870,11,488,224,74,33,33
+33871,11,488,225,77,36,36
+33872,11,488,226,22,40,40
+33873,11,488,227,126,38,38
+33874,11,488,228,78,39,39
+33875,11,488,229,126,40,40
+33876,11,488,230,78,42,42
+33877,11,489,219,74,33,33
+33878,11,489,220,66,35,35
+33879,11,489,221,74,29,29
+33880,11,489,222,74,31,31
+33881,11,489,223,66,31,31
+33882,11,489,224,66,33,33
+33883,11,489,225,74,35,35
+33884,11,489,226,66,37,37
+33885,11,489,227,74,37,37
+33886,11,489,228,66,39,39
+33887,11,489,229,74,37,37
+33888,11,489,230,66,39,39
+33889,11,490,246,74,5,20
+33890,11,490,247,74,10,20
+33891,11,490,248,74,15,30
+33892,11,490,249,75,25,40
+33893,11,490,250,75,30,40
+33894,11,490,219,74,34,34
+33895,11,490,220,66,36,36
+33896,11,490,221,74,30,30
+33897,11,490,222,74,32,32
+33898,11,490,223,66,32,32
+33899,11,490,224,66,34,34
+33900,11,490,225,67,38,38
+33901,11,490,226,67,38,38
+33902,11,490,227,67,40,40
+33903,11,490,228,67,40,40
+33904,11,490,229,67,40,40
+33905,11,490,230,67,40,40
+33906,11,491,246,74,25,35
+33907,11,491,247,75,30,45
+33908,11,491,248,75,35,50
+33909,11,491,249,74,30,40
+33910,11,491,250,74,30,40
+33911,11,491,219,74,36,36
+33912,11,491,220,66,38,38
+33913,11,491,221,74,32,32
+33914,11,491,222,74,34,34
+33915,11,491,223,66,34,34
+33916,11,491,224,66,36,36
+33917,11,491,225,74,38,38
+33918,11,491,226,67,40,40
+33919,11,491,227,74,40,40
+33920,11,491,228,67,42,42
+33921,11,491,229,74,40,40
+33922,11,491,230,67,42,42
+33923,11,492,246,74,25,35
+33924,11,492,247,75,30,45
+33925,11,492,248,75,35,50
+33926,11,492,249,74,30,40
+33927,11,492,250,74,30,40
+33928,11,492,219,74,38,38
+33929,11,492,220,74,36,36
+33930,11,492,221,74,34,34
+33931,11,492,222,74,40,40
+33932,11,492,223,218,24,24
+33933,11,492,224,218,26,26
+33934,11,492,225,74,42,42
+33935,11,492,226,218,28,28
+33936,11,492,227,74,42,42
+33937,11,492,228,218,30,30
+33938,11,492,229,74,42,42
+33939,11,492,230,218,30,30
+33940,11,493,246,74,25,35
+33941,11,493,247,75,30,45
+33942,11,493,248,75,35,50
+33943,11,493,249,74,30,40
+33944,11,493,250,74,30,40
+33945,11,493,219,74,40,40
+33946,11,493,220,218,26,26
+33947,11,493,221,74,42,42
+33948,11,493,222,218,24,24
+33949,11,493,223,218,28,28
+33950,11,493,224,218,30,30
+33951,11,493,225,74,44,44
+33952,11,493,226,218,32,32
+33953,11,493,227,74,44,44
+33954,11,493,228,218,22,22
+33955,11,493,229,74,44,44
+33956,11,493,230,218,22,22
+33957,11,494,246,218,15,25
+33958,11,494,247,218,25,35
+33959,11,494,248,219,40,45
+33960,11,494,249,219,35,45
+33961,11,494,250,219,25,35
+33962,11,494,219,218,26,26
+33963,11,494,220,218,28,28
+33964,11,494,221,218,30,30
+33965,11,494,222,218,32,32
+33966,11,494,223,218,24,24
+33967,11,494,224,218,22,22
+33968,11,494,225,218,20,20
+33969,11,494,226,218,34,34
+33970,11,494,227,218,36,36
+33971,11,494,228,218,18,18
+33972,11,494,229,218,36,36
+33973,11,494,230,218,18,18
+33974,11,495,231,118,5,15
+33975,11,495,232,129,5,15
+33976,11,495,233,60,5,15
+33977,11,495,234,129,5,5
+33978,11,495,235,129,5,5
+33979,11,495,236,118,15,25
+33980,11,495,237,119,20,30
+33981,11,495,238,130,15,25
+33982,11,495,239,79,15,25
+33983,11,495,240,79,25,35
+33984,11,495,241,79,5,20
+33985,11,495,242,79,20,35
+33986,11,495,243,79,35,40
+33987,11,495,244,80,35,40
+33988,11,495,245,80,35,40
+33989,11,495,219,17,37,37
+33990,11,495,220,70,35,35
+33991,11,495,221,16,32,32
+33992,11,495,222,69,30,30
+33993,11,495,223,48,34,34
+33994,11,495,224,96,34,34
+33995,11,495,225,102,35,35
+33996,11,495,226,79,31,31
+33997,11,495,227,49,37,37
+33998,11,495,228,97,37,37
+33999,11,495,229,49,40,40
+34000,11,495,230,97,40,40
+34001,11,496,231,60,5,15
+34002,11,496,232,129,5,15
+34003,11,496,233,118,5,15
+34004,11,496,234,129,5,5
+34005,11,496,235,129,5,5
+34006,11,496,236,60,15,25
+34007,11,496,237,61,20,30
+34008,11,496,238,130,15,25
+34009,11,496,239,79,15,25
+34010,11,496,240,79,25,35
+34011,11,496,241,86,5,35
+34012,11,496,242,79,5,35
+34013,11,496,243,87,35,40
+34014,11,496,244,183,5,15
+34015,11,496,245,183,5,15
+34016,11,496,219,86,43,43
+34017,11,496,220,42,45,45
+34018,11,496,221,86,45,45
+34019,11,496,222,86,47,47
+34020,11,496,223,41,40,40
+34021,11,496,224,87,49,49
+34022,11,496,225,87,51,51
+34023,11,496,226,79,41,41
+34024,11,496,227,42,48,48
+34025,11,496,228,87,53,53
+34026,11,496,229,42,48,48
+34027,11,496,230,87,53,53
+34028,11,497,219,220,25,25
+34029,11,497,220,42,45,45
+34030,11,497,221,86,45,45
+34031,11,497,222,220,27,27
+34032,11,497,223,41,40,40
+34033,11,497,224,220,29,29
+34034,11,497,225,215,30,30
+34035,11,497,226,220,31,31
+34036,11,497,227,42,48,48
+34037,11,497,228,220,23,23
+34038,11,497,229,42,48,48
+34039,11,497,230,220,23,23
+34040,11,498,219,220,25,25
+34041,11,498,220,42,45,45
+34042,11,498,221,86,45,45
+34043,11,498,222,220,27,27
+34044,11,498,223,41,40,40
+34045,11,498,224,220,29,29
+34046,11,498,225,215,30,30
+34047,11,498,226,220,31,31
+34048,11,498,227,42,48,48
+34049,11,498,228,220,23,23
+34050,11,498,229,42,48,48
+34051,11,498,230,220,23,23
+34052,11,499,231,98,5,15
+34053,11,499,232,129,5,15
+34054,11,499,233,98,5,15
+34055,11,499,234,129,5,5
+34056,11,499,235,129,5,5
+34057,11,499,236,98,15,25
+34058,11,499,237,120,15,25
+34059,11,499,238,130,15,25
+34060,11,499,239,99,25,35
+34061,11,499,240,79,25,35
+34062,11,499,241,72,5,20
+34063,11,499,242,72,20,35
+34064,11,499,243,72,35,45
+34065,11,499,244,73,35,45
+34066,11,499,245,131,30,45
+34067,11,499,219,86,43,43
+34068,11,499,220,42,45,45
+34069,11,499,221,86,45,45
+34070,11,499,222,86,47,47
+34071,11,499,223,41,40,40
+34072,11,499,224,87,49,49
+34073,11,499,225,87,51,51
+34074,11,499,226,79,41,41
+34075,11,499,227,42,48,48
+34076,11,499,228,87,53,53
+34077,11,499,229,42,48,48
+34078,11,499,230,87,53,53
+34079,11,500,219,165,9,9
+34080,11,500,220,14,9,9
+34081,11,500,221,165,14,14
+34082,11,500,222,10,6,6
+34083,11,500,223,13,6,6
+34084,11,500,224,214,15,15
+34085,11,500,225,11,9,9
+34086,11,500,226,214,20,20
+34087,11,500,227,167,9,9
+34088,11,500,228,214,25,25
+34089,11,500,229,167,14,14
+34090,11,500,230,214,30,30
+34091,11,501,219,92,40,40
+34092,11,501,220,41,37,37
+34093,11,501,221,93,44,44
+34094,11,501,222,93,46,46
+34095,11,501,223,42,41,41
+34096,11,501,224,42,43,43
+34097,11,501,225,92,38,38
+34098,11,501,226,93,48,48
+34099,11,501,227,93,50,50
+34100,11,501,228,200,22,22
+34101,11,501,229,93,52,52
+34102,11,501,230,200,22,22
+34103,11,502,219,92,40,40
+34104,11,502,220,41,37,37
+34105,11,502,221,93,44,44
+34106,11,502,222,93,46,46
+34107,11,502,223,42,41,41
+34108,11,502,224,42,43,43
+34109,11,502,225,92,38,38
+34110,11,502,226,93,48,48
+34111,11,502,227,93,50,50
+34112,11,502,228,200,22,22
+34113,11,502,229,93,52,52
+34114,11,502,230,200,22,22
+34115,11,503,219,92,40,40
+34116,11,503,220,41,37,37
+34117,11,503,221,93,44,44
+34118,11,503,222,93,46,46
+34119,11,503,223,42,41,41
+34120,11,503,224,42,43,43
+34121,11,503,225,92,38,38
+34122,11,503,226,93,48,48
+34123,11,503,227,93,50,50
+34124,11,503,228,200,22,22
+34125,11,503,229,93,52,52
+34126,11,503,230,200,22,22
+34127,11,504,219,92,40,40
+34128,11,504,220,41,37,37
+34129,11,504,221,93,44,44
+34130,11,504,222,93,46,46
+34131,11,504,223,42,41,41
+34132,11,504,224,42,43,43
+34133,11,504,225,92,38,38
+34134,11,504,226,93,48,48
+34135,11,504,227,93,50,50
+34136,11,504,228,200,22,22
+34137,11,504,229,93,52,52
+34138,11,504,230,200,22,22
+34139,11,505,219,92,40,40
+34140,11,505,220,41,37,37
+34141,11,505,221,93,44,44
+34142,11,505,222,93,46,46
+34143,11,505,223,42,41,41
+34144,11,505,224,42,43,43
+34145,11,505,225,92,38,38
+34146,11,505,226,93,48,48
+34147,11,505,227,93,50,50
+34148,11,505,228,200,22,22
+34149,11,505,229,93,52,52
+34150,11,505,230,200,22,22
+34151,11,506,219,92,40,40
+34152,11,506,220,41,37,37
+34153,11,506,221,93,44,44
+34154,11,506,222,93,46,46
+34155,11,506,223,42,41,41
+34156,11,506,224,42,43,43
+34157,11,506,225,92,38,38
+34158,11,506,226,93,48,48
+34159,11,506,227,93,50,50
+34160,11,506,228,200,22,22
+34161,11,506,229,93,52,52
+34162,11,506,230,200,22,22
+34163,11,507,219,92,40,40
+34164,11,507,220,41,37,37
+34165,11,507,221,93,44,44
+34166,11,507,222,93,46,46
+34167,11,507,223,42,41,41
+34168,11,507,224,42,43,43
+34169,11,507,225,92,38,38
+34170,11,507,226,93,48,48
+34171,11,507,227,93,50,50
+34172,11,507,228,200,22,22
+34173,11,507,229,93,52,52
+34174,11,507,230,200,22,22
+34175,11,508,219,92,40,40
+34176,11,508,220,41,37,37
+34177,11,508,221,93,44,44
+34178,11,508,222,93,46,46
+34179,11,508,223,42,41,41
+34180,11,508,224,42,43,43
+34181,11,508,225,92,38,38
+34182,11,508,226,93,48,48
+34183,11,508,227,93,50,50
+34184,11,508,228,200,22,22
+34185,11,508,229,93,52,52
+34186,11,508,230,200,22,22
+34187,11,509,219,92,40,40
+34188,11,509,220,41,37,37
+34189,11,509,221,93,44,44
+34190,11,509,222,93,46,46
+34191,11,509,223,42,41,41
+34192,11,509,224,42,43,43
+34193,11,509,225,92,38,38
+34194,11,509,226,93,48,48
+34195,11,509,227,93,50,50
+34196,11,509,228,200,22,22
+34197,11,509,229,93,52,52
+34198,11,509,230,200,22,22
+34199,11,510,219,92,40,40
+34200,11,510,220,41,37,37
+34201,11,510,221,93,44,44
+34202,11,510,222,93,46,46
+34203,11,510,223,42,41,41
+34204,11,510,224,42,43,43
+34205,11,510,225,92,38,38
+34206,11,510,226,93,48,48
+34207,11,510,227,93,50,50
+34208,11,510,228,200,22,22
+34209,11,510,229,93,52,52
+34210,11,510,230,200,22,22
+34211,11,511,219,92,40,40
+34212,11,511,220,41,37,37
+34213,11,511,221,93,44,44
+34214,11,511,222,93,46,46
+34215,11,511,223,42,41,41
+34216,11,511,224,200,15,15
+34217,11,511,225,200,20,20
+34218,11,511,226,93,48,48
+34219,11,511,227,93,50,50
+34220,11,511,228,200,22,22
+34221,11,511,229,93,52,52
+34222,11,511,230,200,22,22
+34223,11,512,231,98,5,15
+34224,11,512,232,129,5,15
+34225,11,512,233,98,5,15
+34226,11,512,234,129,5,5
+34227,11,512,235,129,5,5
+34228,11,512,246,74,5,20
+34229,11,512,247,74,10,20
+34230,11,512,248,74,15,30
+34231,11,512,249,75,25,40
+34232,11,512,250,75,30,40
+34233,11,512,236,98,15,25
+34234,11,512,237,98,15,25
+34235,11,512,238,130,15,25
+34236,11,512,239,99,25,35
+34237,11,512,240,79,25,35
+34238,11,512,241,72,5,20
+34239,11,512,242,72,20,35
+34240,11,512,243,72,35,40
+34241,11,512,244,73,35,40
+34242,11,512,245,73,35,40
+34243,11,512,219,21,32,32
+34244,11,512,220,77,34,34
+34245,11,512,221,22,36,36
+34246,11,512,222,77,31,31
+34247,11,512,223,74,31,31
+34248,11,512,224,52,31,31
+34249,11,512,225,21,30,30
+34250,11,512,226,79,34,34
+34251,11,512,227,78,37,37
+34252,11,512,228,53,37,37
+34253,11,512,229,78,40,40
+34254,11,512,230,53,40,40
+34255,11,513,231,98,5,15
+34256,11,513,232,129,5,15
+34257,11,513,233,98,5,15
+34258,11,513,234,129,5,5
+34259,11,513,235,129,5,5
+34260,11,513,236,98,15,25
+34261,11,513,237,98,15,25
+34262,11,513,238,130,15,25
+34263,11,513,239,99,25,35
+34264,11,513,240,79,25,35
+34265,11,513,241,72,5,20
+34266,11,513,242,72,20,35
+34267,11,513,243,72,35,40
+34268,11,513,244,73,35,40
+34269,11,513,245,73,35,40
+34270,11,513,219,21,32,32
+34271,11,513,220,114,33,33
+34272,11,513,221,21,31,31
+34273,11,513,222,114,35,35
+34274,11,513,223,22,36,36
+34275,11,513,224,52,31,31
+34276,11,513,225,22,38,38
+34277,11,513,226,79,31,31
+34278,11,513,227,22,40,40
+34279,11,513,228,53,37,37
+34280,11,513,229,22,40,40
+34281,11,513,230,53,40,40
+34282,11,514,231,60,5,15
+34283,11,514,232,129,5,15
+34284,11,514,233,118,5,15
+34285,11,514,234,129,5,5
+34286,11,514,235,129,5,5
+34287,11,514,236,60,15,25
+34288,11,514,237,61,20,30
+34289,11,514,238,130,15,25
+34290,11,514,239,79,15,25
+34291,11,514,240,79,25,35
+34292,11,514,241,79,5,20
+34293,11,514,242,79,20,35
+34294,11,514,243,79,35,40
+34295,11,514,244,80,35,40
+34296,11,514,245,80,35,40
+34297,11,514,219,21,31,31
+34298,11,514,220,69,30,30
+34299,11,514,221,69,32,32
+34300,11,514,222,70,36,36
+34301,11,514,223,22,36,36
+34302,11,514,224,52,31,31
+34303,11,514,225,70,38,38
+34304,11,514,226,79,31,31
+34305,11,514,227,80,37,37
+34306,11,514,228,53,37,37
+34307,11,514,229,80,40,40
+34308,11,514,230,53,40,40
+34309,11,515,231,98,5,15
+34310,11,515,232,129,5,15
+34311,11,515,233,98,5,15
+34312,11,515,234,129,5,5
+34313,11,515,235,129,5,5
+34314,11,515,236,98,15,25
+34315,11,515,237,98,15,25
+34316,11,515,238,130,15,25
+34317,11,515,239,99,25,35
+34318,11,515,240,79,25,35
+34319,11,515,241,72,5,20
+34320,11,515,242,72,20,35
+34321,11,515,243,72,35,40
+34322,11,515,244,73,35,40
+34323,11,515,245,73,35,40
+34324,11,515,219,16,32,32
+34325,11,515,220,69,31,31
+34326,11,515,221,16,29,29
+34327,11,515,222,70,36,36
+34328,11,515,223,17,34,34
+34329,11,515,224,52,31,31
+34330,11,515,225,48,34,34
+34331,11,515,226,79,31,31
+34332,11,515,227,17,37,37
+34333,11,515,228,53,37,37
+34334,11,515,229,17,40,40
+34335,11,515,230,53,40,40
+34336,11,516,219,206,15,15
+34337,11,516,220,206,15,15
+34338,11,516,221,206,10,10
+34339,11,516,222,206,10,10
+34340,11,516,223,206,20,20
+34341,11,516,224,206,20,20
+34342,11,516,225,206,25,25
+34343,11,516,226,206,30,30
+34344,11,516,227,206,25,25
+34345,11,516,228,206,30,30
+34346,11,516,229,206,5,5
+34347,11,516,230,206,35,35
+34348,11,517,231,98,5,15
+34349,11,517,232,129,5,15
+34350,11,517,233,98,5,15
+34351,11,517,234,129,5,5
+34352,11,517,235,129,5,5
+34353,11,517,236,98,15,25
+34354,11,517,237,223,15,25
+34355,11,517,238,130,15,25
+34356,11,517,239,99,25,35
+34357,11,517,240,79,25,35
+34358,11,517,241,72,5,35
+34359,11,517,242,187,5,15
+34360,11,517,243,72,35,40
+34361,11,517,244,73,35,40
+34362,11,517,245,73,35,40
+34363,11,518,231,98,5,15
+34364,11,518,232,129,5,15
+34365,11,518,233,98,5,15
+34366,11,518,234,129,5,5
+34367,11,518,235,129,5,5
+34368,11,518,236,98,15,25
+34369,11,518,237,223,15,25
+34370,11,518,238,130,15,25
+34371,11,518,239,99,25,35
+34372,11,518,240,79,25,35
+34373,11,518,241,72,5,35
+34374,11,518,242,187,5,15
+34375,11,518,243,72,35,40
+34376,11,518,244,73,35,40
+34377,11,518,245,73,35,40
+34378,11,519,231,98,5,15
+34379,11,519,232,129,5,15
+34380,11,519,233,98,5,15
+34381,11,519,234,129,5,5
+34382,11,519,235,129,5,5
+34383,11,519,236,98,15,25
+34384,11,519,237,223,15,25
+34385,11,519,238,130,15,25
+34386,11,519,239,99,25,35
+34387,11,519,240,79,25,35
+34388,11,519,241,72,5,35
+34389,11,519,242,187,5,15
+34390,11,519,243,72,35,40
+34391,11,519,244,73,35,40
+34392,11,519,245,73,35,40
+34393,11,519,219,16,44,44
+34394,11,519,220,161,10,10
+34395,11,519,221,17,48,48
+34396,11,519,222,187,10,10
+34397,11,519,223,161,15,15
+34398,11,519,224,52,41,41
+34399,11,519,225,187,15,15
+34400,11,519,226,79,41,41
+34401,11,519,227,17,50,50
+34402,11,519,228,53,47,47
+34403,11,519,229,17,50,50
+34404,11,519,230,53,50,50
+34405,11,520,231,98,5,15
+34406,11,520,232,129,5,15
+34407,11,520,233,98,5,15
+34408,11,520,234,129,5,5
+34409,11,520,235,129,5,5
+34410,11,520,236,98,15,25
+34411,11,520,237,223,15,25
+34412,11,520,238,130,15,25
+34413,11,520,239,99,25,35
+34414,11,520,240,79,25,35
+34415,11,520,241,72,5,35
+34416,11,520,242,187,5,15
+34417,11,520,243,72,35,40
+34418,11,520,244,73,35,40
+34419,11,520,245,73,35,40
+34420,11,520,219,187,10,10
+34421,11,520,220,187,12,12
+34422,11,520,221,187,8,8
+34423,11,520,222,187,14,14
+34424,11,520,223,187,10,10
+34425,11,520,224,187,12,12
+34426,11,520,225,187,16,16
+34427,11,520,226,187,6,6
+34428,11,520,227,187,8,8
+34429,11,520,228,187,14,14
+34430,11,520,229,187,8,8
+34431,11,520,230,187,14,14
+34432,11,521,231,98,5,15
+34433,11,521,232,129,5,15
+34434,11,521,233,98,5,15
+34435,11,521,234,129,5,5
+34436,11,521,235,129,5,5
+34437,11,521,236,98,15,25
+34438,11,521,237,223,15,25
+34439,11,521,238,130,15,25
+34440,11,521,239,99,25,35
+34441,11,521,240,79,25,35
+34442,11,521,241,72,5,20
+34443,11,521,242,72,20,35
+34444,11,521,243,72,35,40
+34445,11,521,244,73,35,40
+34446,11,521,245,73,35,40
+34447,11,522,231,98,5,15
+34448,11,522,232,129,5,15
+34449,11,522,233,98,5,15
+34450,11,522,234,129,5,5
+34451,11,522,235,129,5,5
+34452,11,522,236,98,15,25
+34453,11,522,237,223,15,25
+34454,11,522,238,130,15,25
+34455,11,522,239,99,25,35
+34456,11,522,240,79,25,35
+34457,11,522,241,72,5,20
+34458,11,522,242,72,20,35
+34459,11,522,243,72,35,40
+34460,11,522,244,73,35,40
+34461,11,522,245,73,35,40
+34462,11,523,231,98,5,15
+34463,11,523,232,129,5,15
+34464,11,523,233,98,5,15
+34465,11,523,234,129,5,5
+34466,11,523,235,129,5,5
+34467,11,523,236,98,15,25
+34468,11,523,237,223,15,25
+34469,11,523,238,130,15,25
+34470,11,523,239,99,25,35
+34471,11,523,240,79,25,35
+34472,11,523,241,72,5,20
+34473,11,523,242,72,20,35
+34474,11,523,243,72,35,40
+34475,11,523,244,73,35,40
+34476,11,523,245,73,35,40
+34477,11,523,219,21,44,44
+34478,11,523,220,161,10,10
+34479,11,523,221,69,44,44
+34480,11,523,222,22,48,48
+34481,11,523,223,161,15,15
+34482,11,523,224,52,41,41
+34483,11,523,225,70,48,48
+34484,11,523,226,79,41,41
+34485,11,523,227,22,50,50
+34486,11,523,228,53,47,47
+34487,11,523,229,22,50,50
+34488,11,523,230,53,50,50
+34489,11,524,231,60,5,15
+34490,11,524,232,129,5,15
+34491,11,524,233,118,5,15
+34492,11,524,234,129,5,5
+34493,11,524,235,129,5,5
+34494,11,524,236,60,15,25
+34495,11,524,237,61,20,30
+34496,11,524,238,130,15,25
+34497,11,524,239,79,15,25
+34498,11,524,240,79,25,35
+34499,11,524,241,183,5,20
+34500,11,524,242,183,10,20
+34501,11,524,243,183,15,25
+34502,11,524,244,183,20,25
+34503,11,524,245,183,20,25
+34504,11,524,219,177,15,15
+34505,11,524,220,21,44,44
+34506,11,524,221,193,18,18
+34507,11,524,222,183,15,15
+34508,11,524,223,22,49,49
+34509,11,524,224,52,43,43
+34510,11,524,225,202,25,25
+34511,11,524,226,79,41,41
+34512,11,524,227,177,20,20
+34513,11,524,228,53,49,49
+34514,11,524,229,177,20,20
+34515,11,524,230,53,52,52
+34516,11,525,231,98,5,15
+34517,11,525,232,129,5,15
+34518,11,525,233,98,5,15
+34519,11,525,234,129,5,5
+34520,11,525,235,129,5,5
+34521,11,525,236,98,15,25
+34522,11,525,237,223,15,25
+34523,11,525,238,130,15,25
+34524,11,525,239,99,25,35
+34525,11,525,240,79,25,35
+34526,11,525,241,72,5,20
+34527,11,525,242,72,20,35
+34528,11,525,243,226,35,40
+34529,11,525,244,73,35,40
+34530,11,525,245,73,35,40
+34531,11,526,219,21,44,44
+34532,11,526,220,161,10,10
+34533,11,526,221,231,10,10
+34534,11,526,222,22,48,48
+34535,11,526,223,161,15,15
+34536,11,526,224,52,41,41
+34537,11,526,225,22,50,50
+34538,11,526,226,79,41,41
+34539,11,526,227,231,15,15
+34540,11,526,228,53,47,47
+34541,11,526,229,231,15,15
+34542,11,526,230,53,50,50
+34543,11,527,246,74,25,35
+34544,11,527,247,75,30,45
+34545,11,527,248,75,35,50
+34546,11,527,249,74,30,40
+34547,11,527,250,74,30,40
+34548,11,527,219,74,46,46
+34549,11,527,220,231,15,15
+34550,11,527,221,104,46,46
+34551,11,527,222,22,50,50
+34552,11,527,223,105,52,52
+34553,11,527,224,52,43,43
+34554,11,527,225,95,54,54
+34555,11,527,226,22,50,50
+34556,11,527,227,246,15,15
+34557,11,527,228,53,49,49
+34558,11,527,229,246,20,20
+34559,11,527,230,53,52,52
+34560,11,528,231,98,5,15
+34561,11,528,232,129,5,15
+34562,11,528,233,98,5,15
+34563,11,528,234,129,5,5
+34564,11,528,235,129,5,5
+34565,11,528,236,98,15,25
+34566,11,528,237,223,15,25
+34567,11,528,238,130,15,25
+34568,11,528,239,99,25,35
+34569,11,528,240,79,25,35
+34570,11,528,241,72,5,20
+34571,11,528,242,72,20,35
+34572,11,528,243,226,35,40
+34573,11,528,244,73,35,40
+34574,11,528,245,73,35,40
+34575,11,529,219,16,3,3
+34576,11,529,220,19,3,3
+34577,11,529,221,16,3,3
+34578,11,529,222,19,3,3
+34579,11,529,223,16,2,2
+34580,11,529,224,19,2,2
+34581,11,529,225,16,3,3
+34582,11,529,226,19,3,3
+34583,11,529,227,16,4,4
+34584,11,529,228,19,4,4
+34585,11,529,229,16,5,5
+34586,11,529,230,19,4,4
+34587,11,530,219,19,3,3
+34588,11,530,220,16,3,3
+34589,11,530,221,19,4,4
+34590,11,530,222,16,4,4
+34591,11,530,223,19,2,2
+34592,11,530,224,16,2,2
+34593,11,530,225,19,5,5
+34594,11,530,226,16,5,5
+34595,11,530,227,10,4,4
+34596,11,530,228,13,4,4
+34597,11,530,229,10,5,5
+34598,11,530,230,13,5,5
+34599,11,531,219,21,6,6
+34600,11,531,220,16,6,6
+34601,11,531,221,21,7,7
+34602,11,531,222,56,7,7
+34603,11,531,223,29,6,6
+34604,11,531,224,16,7,7
+34605,11,531,225,21,8,8
+34606,11,531,226,39,3,3
+34607,11,531,227,29,7,7
+34608,11,531,228,39,5,5
+34609,11,531,229,32,6,6
+34610,11,531,230,39,7,7
+34611,11,532,231,98,5,15
+34612,11,532,232,129,5,15
+34613,11,532,233,116,5,15
+34614,11,532,234,129,5,5
+34615,11,532,235,129,5,5
+34616,11,532,236,98,15,25
+34617,11,532,237,98,15,25
+34618,11,532,238,130,15,25
+34619,11,532,239,98,25,35
+34620,11,532,240,79,25,35
+34621,11,532,241,72,5,10
+34622,11,532,242,72,10,20
+34623,11,532,243,72,20,30
+34624,11,532,244,72,30,35
+34625,11,532,245,72,35,40
+34626,11,532,219,21,10,10
+34627,11,532,220,19,10,10
+34628,11,532,221,27,6,6
+34629,11,532,222,27,10,10
+34630,11,532,223,21,8,8
+34631,11,532,224,19,8,8
+34632,11,532,225,21,12,12
+34633,11,532,226,19,12,12
+34634,11,532,227,56,10,10
+34635,11,532,228,27,8,8
+34636,11,532,229,56,12,12
+34637,11,532,230,27,12,12
+34638,11,533,219,52,10,10
+34639,11,533,220,16,13,13
+34640,11,533,221,69,13,13
+34641,11,533,222,52,12,12
+34642,11,533,223,69,15,15
+34643,11,533,224,16,15,15
+34644,11,533,225,69,16,16
+34645,11,533,226,16,16,16
+34646,11,533,227,16,15,15
+34647,11,533,228,52,14,14
+34648,11,533,229,16,15,15
+34649,11,533,230,52,16,16
+34650,11,534,231,60,5,15
+34651,11,534,232,129,5,15
+34652,11,534,233,118,5,15
+34653,11,534,234,129,5,5
+34654,11,534,235,129,5,5
+34655,11,534,236,60,15,25
+34656,11,534,237,61,20,30
+34657,11,534,238,130,15,25
+34658,11,534,239,79,15,25
+34659,11,534,240,79,25,35
+34660,11,534,241,79,20,25
+34661,11,534,242,79,20,25
+34662,11,534,243,79,25,30
+34663,11,534,244,79,30,35
+34664,11,534,245,79,35,40
+34665,11,534,219,52,10,10
+34666,11,534,220,16,13,13
+34667,11,534,221,69,13,13
+34668,11,534,222,52,12,12
+34669,11,534,223,69,15,15
+34670,11,534,224,16,15,15
+34671,11,534,225,69,16,16
+34672,11,534,226,16,16,16
+34673,11,534,227,16,15,15
+34674,11,534,228,52,14,14
+34675,11,534,229,16,15,15
+34676,11,534,230,52,16,16
+34677,11,535,219,16,19,19
+34678,11,535,220,52,17,17
+34679,11,535,221,69,19,19
+34680,11,535,222,52,18,18
+34681,11,535,223,16,22,22
+34682,11,535,224,69,22,22
+34683,11,535,225,37,18,18
+34684,11,535,226,37,20,20
+34685,11,535,227,52,17,17
+34686,11,535,228,52,19,19
+34687,11,535,229,52,17,17
+34688,11,535,230,52,20,20
+34689,11,536,219,16,18,18
+34690,11,536,220,52,18,18
+34691,11,536,221,37,16,16
+34692,11,536,222,16,20,20
+34693,11,536,223,52,20,20
+34694,11,536,224,27,17,17
+34695,11,536,225,37,17,17
+34696,11,536,226,27,19,19
+34697,11,536,227,27,17,17
+34698,11,536,228,37,15,15
+34699,11,536,229,27,17,17
+34700,11,536,230,37,18,18
+34701,11,537,219,21,16,16
+34702,11,537,220,19,16,16
+34703,11,537,221,27,11,11
+34704,11,537,222,27,15,15
+34705,11,537,223,21,13,13
+34706,11,537,224,19,14,14
+34707,11,537,225,21,17,17
+34708,11,537,226,19,17,17
+34709,11,537,227,19,14,14
+34710,11,537,228,27,13,13
+34711,11,537,229,19,14,14
+34712,11,537,230,27,17,17
+34713,11,538,231,98,5,15
+34714,11,538,232,129,5,15
+34715,11,538,233,116,5,15
+34716,11,538,234,129,5,5
+34717,11,538,235,129,5,5
+34718,11,538,236,98,15,25
+34719,11,538,237,98,15,25
+34720,11,538,238,130,15,25
+34721,11,538,239,98,25,35
+34722,11,538,240,79,25,35
+34723,11,538,241,72,5,10
+34724,11,538,242,72,10,20
+34725,11,538,243,72,20,30
+34726,11,538,244,72,30,35
+34727,11,538,245,72,35,40
+34728,11,538,219,21,16,16
+34729,11,538,220,100,16,16
+34730,11,538,221,27,11,11
+34731,11,538,222,27,15,15
+34732,11,538,223,21,13,13
+34733,11,538,224,100,14,14
+34734,11,538,225,21,17,17
+34735,11,538,226,100,17,17
+34736,11,538,227,100,14,14
+34737,11,538,228,27,13,13
+34738,11,538,229,100,14,14
+34739,11,538,230,27,17,17
+34740,11,539,231,98,5,15
+34741,11,539,232,129,5,15
+34742,11,539,233,116,5,15
+34743,11,539,234,129,5,5
+34744,11,539,235,129,5,5
+34745,11,539,236,98,15,25
+34746,11,539,237,98,15,25
+34747,11,539,238,130,15,25
+34748,11,539,239,98,25,35
+34749,11,539,240,79,25,35
+34750,11,539,241,72,5,10
+34751,11,539,242,72,10,20
+34752,11,539,243,72,20,30
+34753,11,539,244,72,30,35
+34754,11,539,245,72,35,40
+34755,11,539,219,27,14,14
+34756,11,539,220,21,15,15
+34757,11,539,221,27,12,12
+34758,11,539,222,21,13,13
+34759,11,539,223,96,11,11
+34760,11,539,224,96,13,13
+34761,11,539,225,27,15,15
+34762,11,539,226,21,17,17
+34763,11,539,227,27,12,12
+34764,11,539,228,96,15,15
+34765,11,539,229,27,12,12
+34766,11,539,230,96,15,15
+34767,11,540,231,98,5,15
+34768,11,540,232,129,5,15
+34769,11,540,233,116,5,15
+34770,11,540,234,129,5,5
+34771,11,540,235,129,5,5
+34772,11,540,236,98,15,25
+34773,11,540,237,98,15,25
+34774,11,540,238,130,15,25
+34775,11,540,239,98,25,35
+34776,11,540,240,79,25,35
+34777,11,540,241,72,5,10
+34778,11,540,242,72,10,20
+34779,11,540,243,72,20,30
+34780,11,540,244,72,30,35
+34781,11,540,245,72,35,40
+34782,11,540,219,69,24,24
+34783,11,540,220,48,24,24
+34784,11,540,221,69,22,22
+34785,11,540,222,16,23,23
+34786,11,540,223,16,25,25
+34787,11,540,224,48,26,26
+34788,11,540,225,69,26,26
+34789,11,540,226,16,27,27
+34790,11,540,227,16,23,23
+34791,11,540,228,70,28,28
+34792,11,540,229,16,23,23
+34793,11,540,230,70,30,30
+34794,11,541,231,98,5,15
+34795,11,541,232,129,5,15
+34796,11,541,233,116,5,15
+34797,11,541,234,129,5,5
+34798,11,541,235,129,5,5
+34799,11,541,236,98,15,25
+34800,11,541,237,98,15,25
+34801,11,541,238,130,15,25
+34802,11,541,239,98,25,35
+34803,11,541,240,79,25,35
+34804,11,541,241,72,5,10
+34805,11,541,242,72,10,20
+34806,11,541,243,72,20,30
+34807,11,541,244,72,30,35
+34808,11,541,245,72,35,40
+34809,11,541,219,69,24,24
+34810,11,541,220,48,24,24
+34811,11,541,221,69,22,22
+34812,11,541,222,16,27,27
+34813,11,541,223,16,25,25
+34814,11,541,224,48,26,26
+34815,11,541,225,69,26,26
+34816,11,541,226,132,25,25
+34817,11,541,227,17,29,29
+34818,11,541,228,70,28,28
+34819,11,541,229,17,29,29
+34820,11,541,230,70,30,30
+34821,11,542,219,69,24,24
+34822,11,542,220,48,24,24
+34823,11,542,221,69,22,22
+34824,11,542,222,132,23,23
+34825,11,542,223,16,27,27
+34826,11,542,224,48,26,26
+34827,11,542,225,69,26,26
+34828,11,542,226,70,30,30
+34829,11,542,227,132,23,23
+34830,11,542,228,17,29,29
+34831,11,542,229,132,23,23
+34832,11,542,230,17,29,29
+34833,11,543,219,69,24,24
+34834,11,543,220,48,24,24
+34835,11,543,221,69,22,22
+34836,11,543,222,16,27,27
+34837,11,543,223,16,25,25
+34838,11,543,224,48,26,26
+34839,11,543,225,69,26,26
+34840,11,543,226,132,25,25
+34841,11,543,227,17,29,29
+34842,11,543,228,70,28,28
+34843,11,543,229,17,29,29
+34844,11,543,230,70,30,30
+34845,11,544,219,21,20,20
+34846,11,544,220,84,18,18
+34847,11,544,221,19,18,18
+34848,11,544,222,19,20,20
+34849,11,544,223,21,22,22
+34850,11,544,224,84,20,20
+34851,11,544,225,19,22,22
+34852,11,544,226,84,22,22
+34853,11,544,227,19,18,18
+34854,11,544,228,20,23,23
+34855,11,544,229,19,18,18
+34856,11,544,230,20,25,25
+34857,11,545,219,21,20,20
+34858,11,545,220,84,24,24
+34859,11,545,221,21,22,22
+34860,11,545,222,84,26,26
+34861,11,545,223,20,25,25
+34862,11,545,224,20,27,27
+34863,11,545,225,84,28,28
+34864,11,545,226,20,29,29
+34865,11,545,227,19,22,22
+34866,11,545,228,22,25,25
+34867,11,545,229,19,22,22
+34868,11,545,230,22,27,27
+34869,11,546,219,21,20,20
+34870,11,546,220,84,24,24
+34871,11,546,221,21,22,22
+34872,11,546,222,84,26,26
+34873,11,546,223,20,25,25
+34874,11,546,224,22,25,25
+34875,11,546,225,84,28,28
+34876,11,546,226,20,29,29
+34877,11,546,227,19,22,22
+34878,11,546,228,22,27,27
+34879,11,546,229,19,22,22
+34880,11,546,230,22,29,29
+34881,11,547,231,98,5,15
+34882,11,547,232,129,5,15
+34883,11,547,233,116,5,15
+34884,11,547,234,129,5,5
+34885,11,547,235,129,5,5
+34886,11,547,236,98,15,25
+34887,11,547,237,98,15,25
+34888,11,547,238,130,15,25
+34889,11,547,239,99,25,35
+34890,11,547,240,79,25,35
+34891,11,547,241,72,5,10
+34892,11,547,242,72,10,20
+34893,11,547,243,72,20,30
+34894,11,547,244,72,30,35
+34895,11,547,245,72,35,40
+34896,11,548,231,98,5,15
+34897,11,548,232,129,5,15
+34898,11,548,233,116,5,15
+34899,11,548,234,129,5,5
+34900,11,548,235,129,5,5
+34901,11,548,236,98,15,25
+34902,11,548,237,98,15,25
+34903,11,548,238,130,15,25
+34904,11,548,239,99,25,35
+34905,11,548,240,79,25,35
+34906,11,548,241,72,5,10
+34907,11,548,242,72,10,20
+34908,11,548,243,72,20,30
+34909,11,548,244,72,30,35
+34910,11,548,245,72,35,40
+34911,11,549,231,98,5,15
+34912,11,549,232,129,5,15
+34913,11,549,233,116,5,15
+34914,11,549,234,129,5,5
+34915,11,549,235,129,5,5
+34916,11,549,236,98,15,25
+34917,11,549,237,98,15,25
+34918,11,549,238,130,15,25
+34919,11,549,239,99,25,35
+34920,11,549,240,79,25,35
+34921,11,549,241,72,5,10
+34922,11,549,242,72,10,20
+34923,11,549,243,72,20,30
+34924,11,549,244,72,30,35
+34925,11,549,245,72,35,40
+34926,11,549,219,114,22,22
+34927,11,549,220,114,23,23
+34928,11,549,221,114,24,24
+34929,11,549,222,114,21,21
+34930,11,549,223,114,25,25
+34931,11,549,224,114,20,20
+34932,11,549,225,114,19,19
+34933,11,549,226,114,26,26
+34934,11,549,227,114,18,18
+34935,11,549,228,114,27,27
+34936,11,549,229,114,17,17
+34937,11,549,230,114,28,28
+34938,11,550,231,60,5,15
+34939,11,550,232,129,5,15
+34940,11,550,233,118,5,15
+34941,11,550,234,129,5,5
+34942,11,550,235,129,5,5
+34943,11,550,236,60,15,25
+34944,11,550,237,61,20,30
+34945,11,550,238,130,15,25
+34946,11,550,239,79,15,25
+34947,11,550,240,79,25,35
+34948,11,550,241,79,20,25
+34949,11,550,242,79,20,25
+34950,11,550,243,79,25,30
+34951,11,550,244,79,30,35
+34952,11,550,245,79,35,40
+34953,11,550,219,19,3,3
+34954,11,550,220,56,3,3
+34955,11,550,221,19,4,4
+34956,11,550,222,56,4,4
+34957,11,550,223,19,2,2
+34958,11,550,224,56,2,2
+34959,11,550,225,21,3,3
+34960,11,550,226,21,5,5
+34961,11,550,227,19,5,5
+34962,11,550,228,56,5,5
+34963,11,550,229,19,5,5
+34964,11,550,230,56,5,5
+34965,11,551,231,60,5,15
+34966,11,551,232,129,5,15
+34967,11,551,233,118,5,15
+34968,11,551,234,129,5,5
+34969,11,551,235,129,5,5
+34970,11,551,236,60,15,25
+34971,11,551,237,61,20,30
+34972,11,551,238,130,15,25
+34973,11,551,239,79,15,25
+34974,11,551,240,79,25,35
+34975,11,551,241,79,20,25
+34976,11,551,242,79,20,25
+34977,11,551,243,79,25,30
+34978,11,551,244,79,30,35
+34979,11,551,245,79,35,40
+34980,11,551,219,56,32,32
+34981,11,551,220,22,40,40
+34982,11,551,221,56,34,34
+34983,11,551,222,21,34,34
+34984,11,551,223,27,32,32
+34985,11,551,224,27,34,34
+34986,11,551,225,57,42,42
+34987,11,551,226,28,44,44
+34988,11,551,227,21,32,32
+34989,11,551,228,22,42,42
+34990,11,551,229,21,32,32
+34991,11,551,230,22,44,44
+34992,11,552,231,98,5,15
+34993,11,552,232,129,5,15
+34994,11,552,233,116,5,15
+34995,11,552,234,129,5,5
+34996,11,552,235,129,5,5
+34997,11,552,236,98,15,25
+34998,11,552,237,98,15,25
+34999,11,552,238,130,15,25
+35000,11,552,239,98,25,35
+35001,11,552,240,79,25,35
+35002,11,552,241,72,5,10
+35003,11,552,242,72,10,20
+35004,11,552,243,72,20,30
+35005,11,552,244,72,30,35
+35006,11,552,245,72,35,40
+35007,11,552,219,13,7,7
+35008,11,552,220,10,7,7
+35009,11,552,221,16,11,11
+35010,11,552,222,69,12,12
+35011,11,552,223,69,13,13
+35012,11,552,224,63,10,10
+35013,11,552,225,16,13,13
+35014,11,552,226,69,14,14
+35015,11,552,227,11,8,8
+35016,11,552,228,63,8,8
+35017,11,552,229,14,8,8
+35018,11,552,230,63,12,12
+35019,11,553,231,60,5,15
+35020,11,553,232,129,5,15
+35021,11,553,233,118,5,15
+35022,11,553,234,129,5,5
+35023,11,553,235,129,5,5
+35024,11,553,236,60,15,25
+35025,11,553,237,61,20,30
+35026,11,553,238,130,15,25
+35027,11,553,239,79,15,25
+35028,11,553,240,79,25,35
+35029,11,553,241,79,20,25
+35030,11,553,242,79,20,25
+35031,11,553,243,79,25,30
+35032,11,553,244,79,30,35
+35033,11,553,245,79,35,40
+35034,11,553,219,13,8,8
+35035,11,553,220,10,8,8
+35036,11,553,221,16,13,13
+35037,11,553,222,69,14,14
+35038,11,553,223,69,13,13
+35039,11,553,224,63,11,11
+35040,11,553,225,16,11,11
+35041,11,553,226,69,12,12
+35042,11,553,227,11,9,9
+35043,11,553,228,63,9,9
+35044,11,553,229,14,9,9
+35045,11,553,230,63,13,13
+35046,11,554,231,98,5,15
+35047,11,554,232,129,5,15
+35048,11,554,233,116,5,15
+35049,11,554,234,129,5,10
+35050,11,554,235,129,5,10
+35051,11,554,236,98,15,25
+35052,11,554,237,120,15,25
+35053,11,554,238,130,15,25
+35054,11,554,239,99,25,35
+35055,11,554,240,79,25,35
+35056,11,554,241,72,5,10
+35057,11,554,242,72,10,20
+35058,11,554,243,72,20,30
+35059,11,554,244,72,30,35
+35060,11,554,245,72,35,40
+35061,11,555,231,60,5,15
+35062,11,555,232,129,5,15
+35063,11,555,233,118,5,15
+35064,11,555,234,129,5,5
+35065,11,555,235,129,5,5
+35066,11,555,236,60,15,25
+35067,11,555,237,61,20,30
+35068,11,555,238,130,15,25
+35069,11,555,239,79,15,25
+35070,11,555,240,79,25,35
+35071,11,555,241,79,20,25
+35072,11,555,242,79,20,25
+35073,11,555,243,79,25,30
+35074,11,555,244,79,30,35
+35075,11,555,245,79,35,40
+35076,11,556,231,98,5,15
+35077,11,556,232,129,5,15
+35078,11,556,233,116,5,15
+35079,11,556,234,129,5,5
+35080,11,556,235,129,5,5
+35081,11,556,236,98,15,25
+35082,11,556,237,98,15,25
+35083,11,556,238,130,15,25
+35084,11,556,239,98,25,35
+35085,11,556,240,79,25,35
+35086,11,556,241,72,5,10
+35087,11,556,242,72,10,20
+35088,11,556,243,72,20,30
+35089,11,556,244,72,30,35
+35090,11,556,245,72,35,40
+35091,11,557,231,98,5,15
+35092,11,557,232,129,5,15
+35093,11,557,233,116,5,15
+35094,11,557,234,129,5,5
+35095,11,557,235,129,5,5
+35096,11,557,236,98,15,25
+35097,11,557,237,120,15,25
+35098,11,557,238,130,15,25
+35099,11,557,239,116,25,35
+35100,11,557,240,79,25,35
+35101,11,557,241,72,5,10
+35102,11,557,242,72,10,20
+35103,11,557,243,72,20,30
+35104,11,557,244,72,30,35
+35105,11,557,245,72,35,40
+35106,11,558,231,129,5,15
+35107,11,558,232,129,5,15
+35108,11,558,233,129,5,15
+35109,11,558,234,129,5,5
+35110,11,558,235,129,5,5
+35111,11,558,236,129,15,25
+35112,11,558,237,129,15,25
+35113,11,558,238,129,15,25
+35114,11,558,239,129,25,35
+35115,11,558,240,88,30,40
+35116,11,558,241,79,5,10
+35117,11,558,242,79,10,20
+35118,11,558,243,79,20,30
+35119,11,558,244,79,30,40
+35120,11,558,245,109,30,40
+35121,11,559,231,118,5,15
+35122,11,559,232,129,5,15
+35123,11,559,233,60,5,15
+35124,11,559,234,129,5,5
+35125,11,559,235,129,5,5
+35126,11,559,236,118,15,25
+35127,11,559,237,119,20,30
+35128,11,559,238,130,15,25
+35129,11,559,239,79,15,25
+35130,11,559,240,79,25,35
+35131,11,559,241,79,20,25
+35132,11,559,242,79,20,25
+35133,11,559,243,79,25,30
+35134,11,559,244,79,30,35
+35135,11,559,245,79,35,40
+35136,11,560,231,98,5,15
+35137,11,560,232,129,5,15
+35138,11,560,233,116,5,15
+35139,11,560,234,129,5,5
+35140,11,560,235,129,5,5
+35141,11,560,236,98,15,25
+35142,11,560,237,120,15,25
+35143,11,560,238,130,15,25
+35144,11,560,239,80,25,35
+35145,11,560,240,79,25,35
+35146,11,560,241,72,5,10
+35147,11,560,242,72,10,20
+35148,11,560,243,72,20,30
+35149,11,560,244,72,30,35
+35150,11,560,245,72,35,40
+35151,11,561,231,98,5,15
+35152,11,561,232,129,5,15
+35153,11,561,233,98,5,15
+35154,11,561,234,129,5,5
+35155,11,561,235,129,5,5
+35156,11,561,236,98,15,25
+35157,11,561,237,120,15,25
+35158,11,561,238,130,15,25
+35159,11,561,239,99,25,35
+35160,11,561,240,79,25,35
+35161,11,561,241,72,5,20
+35162,11,561,242,72,20,35
+35163,11,561,243,72,35,40
+35164,11,561,244,73,35,40
+35165,11,561,245,73,35,40
+35166,11,562,231,60,5,15
+35167,11,562,232,129,5,15
+35168,11,562,233,118,5,15
+35169,11,562,234,129,5,5
+35170,11,562,235,129,5,5
+35171,11,562,236,60,15,25
+35172,11,562,237,61,20,30
+35173,11,562,238,130,15,25
+35174,11,562,239,79,15,25
+35175,11,562,240,79,25,35
+35176,11,562,241,183,5,15
+35177,11,562,242,79,5,35
+35178,11,562,243,183,15,25
+35179,11,562,244,183,15,25
+35180,11,562,245,183,15,25
+35181,11,563,231,98,5,15
+35182,11,563,232,129,5,15
+35183,11,563,233,98,5,15
+35184,11,563,234,129,5,5
+35185,11,563,235,129,5,5
+35186,11,563,236,98,15,25
+35187,11,563,237,120,15,25
+35188,11,563,238,130,15,25
+35189,11,563,239,99,25,35
+35190,11,563,240,79,25,35
+35191,11,563,241,72,5,35
+35192,11,563,242,187,5,15
+35193,11,563,243,72,35,40
+35194,11,563,244,73,35,40
+35195,11,563,245,73,35,40
+35196,11,564,219,41,10,10
+35197,11,564,220,41,12,12
+35198,11,564,221,41,8,8
+35199,11,564,222,41,14,14
+35200,11,564,223,41,10,10
+35201,11,564,224,41,12,12
+35202,11,564,225,41,16,16
+35203,11,564,226,41,6,6
+35204,11,564,227,41,8,8
+35205,11,564,228,41,14,14
+35206,11,564,229,41,8,8
+35207,11,564,230,41,14,14
+35208,11,565,219,179,7,7
+35209,11,565,220,179,9,9
+35210,11,565,221,179,5,5
+35211,11,565,222,179,11,11
+35212,11,565,223,179,7,7
+35213,11,565,224,179,9,9
+35214,11,565,225,179,13,13
+35215,11,565,226,179,3,3
+35216,11,565,227,179,5,5
+35217,11,565,228,179,11,11
+35218,11,565,229,179,5,5
+35219,11,565,230,179,11,11
+35220,11,566,219,204,23,23
+35221,11,566,220,204,25,25
+35222,11,566,221,204,22,22
+35223,11,566,222,204,27,27
+35224,11,566,223,204,23,23
+35225,11,566,224,204,25,25
+35226,11,566,225,204,29,29
+35227,11,566,226,204,19,19
+35228,11,566,227,204,21,21
+35229,11,566,228,204,27,27
+35230,11,566,229,204,21,21
+35231,11,566,230,204,27,27
+35232,11,567,219,228,16,16
+35233,11,567,220,228,18,18
+35234,11,567,221,228,14,14
+35235,11,567,222,228,20,20
+35236,11,567,223,228,16,16
+35237,11,567,224,228,18,18
+35238,11,567,225,228,22,22
+35239,11,567,226,228,12,12
+35240,11,567,227,228,14,14
+35241,11,567,228,228,20,20
+35242,11,567,229,228,14,14
+35243,11,567,230,228,20,20
+35244,11,568,219,216,22,22
+35245,11,568,220,216,24,24
+35246,11,568,221,216,20,20
+35247,11,568,222,216,26,26
+35248,11,568,223,216,22,22
+35249,11,568,224,216,24,24
+35250,11,568,225,216,28,28
+35251,11,568,226,216,18,18
+35252,11,568,227,216,20,20
+35253,11,568,228,216,26,26
+35254,11,568,229,216,20,20
+35255,11,568,230,216,26,26
+35256,11,569,219,190,22,22
+35257,11,569,220,190,24,24
+35258,11,569,221,190,20,20
+35259,11,569,222,190,26,26
+35260,11,569,223,190,22,22
+35261,11,569,224,190,24,24
+35262,11,569,225,190,28,28
+35263,11,569,226,190,18,18
+35264,11,569,227,190,20,20
+35265,11,569,228,190,26,26
+35266,11,569,229,190,20,20
+35267,11,569,230,190,26,26
+35268,11,570,219,213,22,22
+35269,11,570,220,213,24,24
+35270,11,570,221,213,20,20
+35271,11,570,222,213,26,26
+35272,11,570,223,213,22,22
+35273,11,570,224,213,24,24
+35274,11,570,225,213,28,28
+35275,11,570,226,213,18,18
+35276,11,570,227,213,20,20
+35277,11,570,228,213,26,26
+35278,11,570,229,213,20,20
+35279,11,570,230,213,26,26
+35280,11,571,219,234,22,22
+35281,11,571,220,234,24,24
+35282,11,571,221,234,20,20
+35283,11,571,222,234,26,26
+35284,11,571,223,234,22,22
+35285,11,571,224,234,24,24
+35286,11,571,225,234,28,28
+35287,11,571,226,234,18,18
+35288,11,571,227,234,20,20
+35289,11,571,228,234,26,26
+35290,11,571,229,234,20,20
+35291,11,571,230,234,26,26
+35292,11,572,219,235,22,22
+35293,11,572,220,235,24,24
+35294,11,572,221,235,20,20
+35295,11,572,222,235,26,26
+35296,11,572,223,235,22,22
+35297,11,572,224,235,24,24
+35298,11,572,225,235,28,28
+35299,11,572,226,235,18,18
+35300,11,572,227,235,20,20
+35301,11,572,228,235,26,26
+35302,11,572,229,235,20,20
+35303,11,572,230,235,26,26
index e75b9b7..dd2969f 100644 (file)
@@ -1,4 +1,4 @@
-location_area_id,encounter_terrain_id,version_id,rate
+location_area_id,encounter_method_id,version_id,rate
 1,2,12,25
 1,2,13,25
 1,2,14,25
@@ -1843,3 +1843,1418 @@ location_area_id,encounter_terrain_id,version_id,rate
 325,5,16,10
 325,6,15,5
 325,6,16,5
+350,2,7,10
+350,2,8,10
+350,2,9,10
+350,3,7,10
+350,3,8,10
+350,3,9,10
+350,4,7,10
+350,4,8,10
+350,4,9,10
+350,5,7,1
+350,5,8,1
+350,5,9,1
+351,2,7,10
+351,2,8,10
+351,2,9,10
+351,3,7,10
+351,3,8,10
+351,3,9,10
+351,4,7,10
+351,4,8,10
+351,4,9,10
+351,5,7,4
+351,5,8,4
+351,5,9,4
+352,2,7,10
+352,2,8,10
+352,2,9,10
+352,3,7,10
+352,3,8,10
+352,3,9,10
+352,4,7,10
+352,4,8,10
+352,4,9,10
+352,5,7,4
+352,5,8,4
+352,5,9,4
+353,2,7,10
+353,2,8,10
+353,2,9,10
+353,3,7,10
+353,3,8,10
+353,3,9,10
+353,4,7,10
+353,4,8,10
+353,4,9,10
+353,5,7,4
+353,5,8,4
+353,5,9,4
+354,2,7,10
+354,2,8,10
+354,2,9,10
+354,3,7,10
+354,3,8,10
+354,3,9,10
+354,4,7,10
+354,4,8,10
+354,4,9,10
+354,5,7,1
+354,5,8,1
+354,5,9,1
+355,2,7,10
+355,2,8,10
+355,2,9,10
+355,3,7,10
+355,3,8,10
+355,3,9,10
+355,4,7,10
+355,4,8,10
+355,4,9,10
+355,5,7,4
+355,5,8,4
+355,5,9,4
+356,1,7,10
+356,1,8,10
+356,1,9,10
+356,2,7,30
+356,2,8,30
+356,2,9,30
+356,3,7,30
+356,3,8,30
+356,3,9,30
+356,4,7,30
+356,4,8,30
+356,4,9,30
+356,5,7,4
+356,5,8,4
+356,5,9,4
+357,1,7,10
+357,1,8,10
+357,1,9,10
+357,2,7,30
+357,2,8,30
+357,2,9,30
+357,3,7,30
+357,3,8,30
+357,3,9,30
+357,4,7,30
+357,4,8,30
+357,4,9,30
+357,5,7,4
+357,5,8,4
+357,5,9,4
+358,1,7,10
+358,1,8,10
+358,1,9,10
+358,2,7,30
+358,2,8,30
+358,2,9,30
+358,3,7,30
+358,3,8,30
+358,3,9,30
+358,4,7,30
+358,4,8,30
+358,4,9,30
+358,5,7,4
+358,5,8,4
+358,5,9,4
+359,1,7,10
+359,1,8,10
+359,1,9,10
+359,2,7,30
+359,2,8,30
+359,2,9,30
+359,3,7,30
+359,3,8,30
+359,3,9,30
+359,4,7,30
+359,4,8,30
+359,4,9,30
+359,5,7,4
+359,5,8,4
+359,5,9,4
+360,1,7,10
+360,1,8,10
+360,1,9,10
+361,1,7,10
+361,1,8,10
+361,1,9,10
+362,1,7,10
+362,1,8,10
+362,1,9,10
+363,1,7,10
+363,1,8,10
+363,1,9,10
+363,6,7,20
+363,6,8,20
+363,6,9,20
+364,1,7,10
+364,1,8,10
+364,1,9,10
+365,1,7,20
+365,1,8,20
+365,1,9,20
+366,1,7,20
+366,1,8,20
+366,1,9,20
+367,1,7,10
+367,1,8,10
+367,1,9,10
+368,1,7,10
+368,1,8,10
+368,1,9,10
+369,1,7,10
+369,1,8,10
+369,1,9,10
+370,1,7,10
+370,1,8,10
+370,1,9,10
+371,1,7,10
+371,1,8,10
+371,1,9,10
+372,1,7,10
+372,1,8,10
+372,1,9,10
+373,1,7,10
+373,1,8,10
+373,1,9,10
+374,1,7,10
+374,1,8,10
+374,1,9,10
+375,1,7,10
+375,1,8,10
+375,1,9,10
+376,1,7,4
+376,1,8,4
+376,1,9,4
+376,2,7,10
+376,2,8,10
+376,2,9,10
+376,3,7,10
+376,3,8,10
+376,3,9,10
+376,4,7,10
+376,4,8,10
+376,4,9,10
+376,5,7,4
+376,5,8,4
+376,5,9,4
+377,1,7,4
+377,1,8,4
+377,1,9,4
+378,1,7,4
+378,1,8,4
+378,1,9,4
+379,1,7,4
+379,1,8,4
+379,1,9,4
+380,1,7,4
+380,1,8,4
+380,1,9,4
+381,1,7,4
+381,1,8,4
+381,1,9,4
+382,1,7,10
+382,1,8,10
+382,1,9,10
+383,1,7,10
+383,1,8,10
+383,1,9,10
+383,6,7,20
+383,6,8,20
+383,6,9,20
+384,1,7,10
+384,1,8,10
+384,1,9,10
+384,2,7,30
+384,2,8,30
+384,2,9,30
+384,3,7,30
+384,3,8,30
+384,3,9,30
+384,4,7,30
+384,4,8,30
+384,4,9,30
+384,5,7,4
+384,5,8,4
+384,5,9,4
+385,1,7,10
+385,1,8,10
+385,1,9,10
+385,2,7,10
+385,2,8,10
+385,2,9,10
+385,3,7,10
+385,3,8,10
+385,3,9,10
+385,4,7,10
+385,4,8,10
+385,4,9,10
+385,5,7,4
+385,5,8,4
+385,5,9,4
+386,1,7,10
+386,1,8,10
+386,1,9,10
+387,1,7,10
+387,1,8,10
+387,1,9,10
+388,1,7,10
+388,1,8,10
+388,1,9,10
+389,2,7,20
+389,2,8,20
+389,2,9,20
+389,3,7,20
+389,3,8,20
+389,3,9,20
+389,4,7,20
+389,4,8,20
+389,4,9,20
+389,5,7,4
+389,5,8,4
+389,5,9,4
+390,1,7,10
+390,1,8,10
+390,1,9,10
+391,1,7,10
+391,1,8,10
+391,1,9,10
+392,1,7,10
+392,1,8,10
+392,1,9,10
+393,1,7,20
+393,1,8,20
+393,1,9,20
+394,1,7,20
+394,1,8,20
+394,1,9,20
+394,2,7,30
+394,2,8,30
+394,2,9,30
+394,3,7,30
+394,3,8,30
+394,3,9,30
+394,4,7,30
+394,4,8,30
+394,4,9,30
+394,5,7,4
+394,5,8,4
+394,5,9,4
+395,1,7,20
+395,1,8,20
+395,1,9,20
+395,2,7,30
+395,2,8,30
+395,2,9,30
+395,3,7,30
+395,3,8,30
+395,3,9,30
+395,4,7,30
+395,4,8,30
+395,4,9,30
+395,5,7,4
+395,5,8,4
+395,5,9,4
+396,1,7,20
+396,1,8,20
+396,1,9,20
+396,2,7,30
+396,2,8,30
+396,2,9,30
+396,3,7,30
+396,3,8,30
+396,3,9,30
+396,4,7,30
+396,4,8,30
+396,4,9,30
+396,5,7,4
+396,5,8,4
+396,5,9,4
+397,2,7,30
+397,2,8,30
+397,2,9,30
+397,3,7,30
+397,3,8,30
+397,3,9,30
+397,4,7,30
+397,4,8,30
+397,4,9,30
+397,5,7,4
+397,5,8,4
+397,5,9,4
+398,2,7,30
+398,2,8,30
+398,2,9,30
+398,3,7,30
+398,3,8,30
+398,3,9,30
+398,4,7,30
+398,4,8,30
+398,4,9,30
+398,5,7,4
+398,5,8,4
+398,5,9,4
+399,2,7,30
+399,2,8,30
+399,2,9,30
+399,3,7,30
+399,3,8,30
+399,3,9,30
+399,4,7,30
+399,4,8,30
+399,4,9,30
+399,5,7,4
+399,5,8,4
+399,5,9,4
+400,2,7,30
+400,2,8,30
+400,2,9,30
+400,3,7,30
+400,3,8,30
+400,3,9,30
+400,4,7,30
+400,4,8,30
+400,4,9,30
+400,5,7,4
+400,5,8,4
+400,5,9,4
+401,2,7,30
+401,2,8,30
+401,2,9,30
+401,3,7,30
+401,3,8,30
+401,3,9,30
+401,4,7,30
+401,4,8,30
+401,4,9,30
+401,5,7,4
+401,5,8,4
+401,5,9,4
+402,1,7,20
+402,1,8,20
+402,1,9,20
+402,2,7,30
+402,2,8,30
+402,2,9,30
+402,3,7,30
+402,3,8,30
+402,3,9,30
+402,4,7,30
+402,4,8,30
+402,4,9,30
+402,5,7,4
+402,5,8,4
+402,5,9,4
+403,1,7,10
+403,1,8,10
+403,1,9,10
+403,2,7,30
+403,2,8,30
+403,2,9,30
+403,3,7,30
+403,3,8,30
+403,3,9,30
+403,4,7,30
+403,4,8,30
+403,4,9,30
+403,5,7,4
+403,5,8,4
+403,5,9,4
+403,6,7,20
+403,6,8,20
+403,6,9,20
+404,1,7,20
+404,1,8,20
+404,1,9,20
+405,1,7,20
+405,1,8,20
+405,1,9,20
+406,1,7,20
+406,1,8,20
+406,1,9,20
+406,2,7,30
+406,2,8,30
+406,2,9,30
+406,3,7,30
+406,3,8,30
+406,3,9,30
+406,4,7,30
+406,4,8,30
+406,4,9,30
+406,5,7,4
+406,5,8,4
+406,5,9,4
+406,6,7,20
+406,6,8,20
+406,6,9,20
+407,1,7,20
+407,1,8,20
+407,1,9,20
+407,2,7,30
+407,2,8,30
+407,2,9,30
+407,3,7,30
+407,3,8,30
+407,3,9,30
+407,4,7,30
+407,4,8,30
+407,4,9,30
+407,5,7,4
+407,5,8,4
+407,5,9,4
+408,1,7,20
+408,1,8,20
+408,1,9,20
+409,1,7,20
+409,1,8,20
+409,1,9,20
+409,2,7,30
+409,2,8,30
+409,2,9,30
+409,3,7,30
+409,3,8,30
+409,3,9,30
+409,4,7,30
+409,4,8,30
+409,4,9,30
+409,5,7,4
+409,5,8,4
+409,5,9,4
+410,1,7,20
+410,1,8,20
+410,1,9,20
+410,2,7,30
+410,2,8,30
+410,2,9,30
+410,3,7,30
+410,3,8,30
+410,3,9,30
+410,4,7,30
+410,4,8,30
+410,4,9,30
+410,5,7,4
+410,5,8,4
+410,5,9,4
+411,1,7,15
+411,1,8,15
+411,1,9,15
+411,2,7,30
+411,2,8,30
+411,2,9,30
+411,3,7,30
+411,3,8,30
+411,3,9,30
+411,4,7,30
+411,4,8,30
+411,4,9,30
+411,5,7,4
+411,5,8,4
+411,5,9,4
+412,1,7,20
+412,1,8,20
+412,1,9,20
+412,2,7,30
+412,2,8,30
+412,2,9,30
+412,3,7,30
+412,3,8,30
+412,3,9,30
+412,4,7,30
+412,4,8,30
+412,4,9,30
+412,5,7,4
+412,5,8,4
+412,5,9,4
+413,1,7,20
+413,1,8,20
+413,1,9,20
+413,2,7,30
+413,2,8,30
+413,2,9,30
+413,3,7,30
+413,3,8,30
+413,3,9,30
+413,4,7,30
+413,4,8,30
+413,4,9,30
+413,5,7,4
+413,5,8,4
+413,5,9,4
+414,2,7,30
+414,2,8,30
+414,2,9,30
+414,3,7,30
+414,3,8,30
+414,3,9,30
+414,4,7,30
+414,4,8,30
+414,4,9,30
+414,5,7,4
+414,5,8,4
+414,5,9,4
+415,1,7,20
+415,1,8,20
+415,1,9,20
+415,2,7,30
+415,2,8,30
+415,2,9,30
+415,3,7,30
+415,3,8,30
+415,3,9,30
+415,4,7,30
+415,4,8,30
+415,4,9,30
+415,5,7,4
+415,5,8,4
+415,5,9,4
+416,2,7,30
+416,2,8,30
+416,2,9,30
+416,3,7,30
+416,3,8,30
+416,3,9,30
+416,4,7,30
+416,4,8,30
+416,4,9,30
+416,5,7,4
+416,5,8,4
+416,5,9,4
+417,5,7,4
+417,5,8,4
+417,5,9,4
+418,2,7,30
+418,2,8,30
+418,2,9,30
+418,3,7,30
+418,3,8,30
+418,3,9,30
+418,4,7,30
+418,4,8,30
+418,4,9,30
+418,5,7,4
+418,5,8,4
+418,5,9,4
+419,2,7,30
+419,2,8,30
+419,2,9,30
+419,3,7,30
+419,3,8,30
+419,3,9,30
+419,4,7,30
+419,4,8,30
+419,4,9,30
+419,5,7,4
+419,5,8,4
+419,5,9,4
+420,5,7,4
+420,5,8,4
+420,5,9,4
+421,2,7,30
+421,2,8,30
+421,2,9,30
+421,3,7,30
+421,3,8,30
+421,3,9,30
+421,4,7,30
+421,4,8,30
+421,4,9,30
+421,5,7,4
+421,5,8,4
+421,5,9,4
+422,2,7,30
+422,2,8,30
+422,2,9,30
+422,3,7,30
+422,3,8,30
+422,3,9,30
+422,4,7,30
+422,4,8,30
+422,4,9,30
+422,5,7,4
+422,5,8,4
+422,5,9,4
+423,2,7,30
+423,2,8,30
+423,2,9,30
+423,3,7,30
+423,3,8,30
+423,3,9,30
+423,4,7,30
+423,4,8,30
+423,4,9,30
+423,5,7,4
+423,5,8,4
+423,5,9,4
+424,1,7,20
+424,1,8,20
+424,1,9,20
+424,2,7,30
+424,2,8,30
+424,2,9,30
+424,3,7,30
+424,3,8,30
+424,3,9,30
+424,4,7,30
+424,4,8,30
+424,4,9,30
+424,5,7,4
+424,5,8,4
+424,5,9,4
+425,2,7,30
+425,2,8,30
+425,2,9,30
+425,3,7,30
+425,3,8,30
+425,3,9,30
+425,4,7,30
+425,4,8,30
+425,4,9,30
+425,5,7,4
+425,5,8,4
+425,5,9,4
+426,2,7,30
+426,2,8,30
+426,2,9,30
+426,3,7,30
+426,3,8,30
+426,3,9,30
+426,4,7,30
+426,4,8,30
+426,4,9,30
+426,5,7,4
+426,5,8,4
+426,5,9,4
+427,2,7,30
+427,2,8,30
+427,2,9,30
+427,3,7,30
+427,3,8,30
+427,3,9,30
+427,4,7,30
+427,4,8,30
+427,4,9,30
+427,5,7,4
+427,5,8,4
+427,5,9,4
+428,2,7,30
+428,2,8,30
+428,2,9,30
+428,3,7,30
+428,3,8,30
+428,3,9,30
+428,4,7,30
+428,4,8,30
+428,4,9,30
+428,5,7,4
+428,5,8,4
+428,5,9,4
+429,1,7,25
+429,1,8,25
+429,1,9,25
+429,2,7,35
+429,2,8,35
+429,2,9,35
+429,3,7,35
+429,3,8,35
+429,3,9,35
+429,4,7,35
+429,4,8,35
+429,4,9,35
+429,5,7,9
+429,5,8,9
+429,5,9,9
+430,1,7,25
+430,1,8,25
+430,1,9,25
+430,6,7,25
+430,6,8,25
+430,6,9,25
+431,1,7,25
+431,1,8,25
+431,1,9,25
+431,2,7,35
+431,2,8,35
+431,2,9,35
+431,3,7,35
+431,3,8,35
+431,3,9,35
+431,4,7,35
+431,4,8,35
+431,4,9,35
+431,5,7,9
+431,5,8,9
+431,5,9,9
+432,1,7,25
+432,1,8,25
+432,1,9,25
+433,2,7,10
+433,2,8,10
+433,2,9,10
+433,3,7,10
+433,3,8,10
+433,3,9,10
+433,4,7,10
+433,4,8,10
+433,4,9,10
+433,5,7,4
+433,5,8,4
+433,5,9,4
+434,2,7,10
+434,2,8,10
+434,2,9,10
+434,3,7,10
+434,3,8,10
+434,3,9,10
+434,4,7,10
+434,4,8,10
+434,4,9,10
+434,5,7,4
+434,5,8,4
+434,5,9,4
+435,1,9,25
+435,2,9,35
+435,3,9,35
+435,4,9,35
+435,5,9,9
+436,1,9,25
+436,6,9,25
+437,1,9,10
+438,1,9,10
+439,1,9,10
+440,1,9,10
+441,1,9,7
+442,1,9,7
+443,1,9,7
+444,1,9,7
+445,1,9,7
+446,1,9,7
+447,1,9,7
+448,1,9,7
+449,1,9,7
+450,1,10,7
+450,1,11,7
+451,1,10,7
+451,1,11,7
+452,1,10,7
+452,1,11,7
+453,1,10,7
+453,1,11,7
+454,1,10,7
+454,1,11,7
+455,1,10,7
+455,1,11,7
+456,1,10,7
+456,1,11,7
+457,1,10,14
+457,1,11,14
+458,1,10,7
+458,1,11,7
+459,1,10,5
+459,1,11,5
+460,1,10,7
+460,1,11,7
+461,2,10,10
+461,2,11,10
+461,3,10,10
+461,3,11,10
+461,4,10,10
+461,4,11,10
+461,5,10,1
+461,5,11,1
+462,1,10,5
+462,1,11,5
+463,1,10,7
+464,1,10,7
+465,1,10,7
+466,1,10,7
+466,1,11,7
+467,1,10,5
+467,1,11,5
+468,1,10,21
+468,1,11,21
+468,2,10,20
+468,2,11,20
+468,3,10,20
+468,3,11,20
+468,4,10,20
+468,4,11,20
+468,5,10,2
+468,5,11,2
+469,1,10,21
+469,1,11,21
+469,2,10,20
+469,2,11,20
+469,3,10,20
+469,3,11,20
+469,4,10,20
+469,4,11,20
+469,5,10,2
+469,5,11,2
+470,1,10,21
+470,1,11,21
+470,2,10,20
+470,2,11,20
+470,3,10,20
+470,3,11,20
+470,4,10,20
+470,4,11,20
+470,5,10,2
+470,5,11,2
+471,1,10,21
+471,1,11,21
+471,2,10,20
+471,2,11,20
+471,3,10,20
+471,3,11,20
+471,4,10,20
+471,4,11,20
+471,5,10,2
+471,5,11,2
+472,1,10,7
+472,1,11,7
+472,2,10,20
+472,2,11,20
+472,3,10,20
+472,3,11,20
+472,4,10,20
+472,4,11,20
+472,5,10,2
+472,5,11,2
+472,6,10,50
+472,6,11,50
+473,1,10,7
+473,1,11,7
+473,6,10,50
+473,6,11,50
+474,1,10,7
+474,1,11,7
+474,2,10,20
+474,2,11,20
+474,3,10,20
+474,3,11,20
+474,4,10,20
+474,4,11,20
+474,5,10,2
+474,5,11,2
+474,6,10,50
+474,6,11,50
+475,1,10,7
+475,1,11,7
+476,1,10,7
+476,1,11,7
+476,6,10,50
+476,6,11,50
+477,1,10,7
+477,1,11,7
+478,1,10,7
+478,1,11,7
+479,1,10,7
+479,1,11,7
+480,1,10,7
+480,1,11,7
+480,2,10,20
+480,2,11,20
+480,3,10,20
+480,3,11,20
+480,4,10,20
+480,4,11,20
+480,5,10,2
+480,5,11,2
+481,1,10,7
+481,1,11,7
+481,2,10,20
+481,2,11,20
+481,3,10,20
+481,3,11,20
+481,4,10,20
+481,4,11,20
+481,5,10,2
+481,5,11,2
+482,1,10,2
+482,1,11,2
+483,1,10,4
+483,1,11,4
+484,1,10,6
+484,1,11,6
+485,1,10,8
+485,1,11,8
+486,1,10,10
+486,1,11,10
+487,1,10,7
+487,1,11,7
+488,1,10,21
+488,1,11,21
+488,6,10,50
+488,6,11,50
+489,1,10,7
+489,1,11,7
+490,1,10,7
+490,1,11,7
+490,6,10,50
+490,6,11,50
+491,1,10,7
+491,1,11,7
+491,6,10,50
+491,6,11,50
+492,1,10,7
+492,1,11,7
+492,6,10,50
+492,6,11,50
+493,1,10,7
+493,1,11,7
+493,6,10,50
+493,6,11,50
+494,1,10,7
+494,1,11,7
+494,6,10,50
+494,6,11,50
+495,1,10,21
+495,1,11,21
+495,2,10,20
+495,2,11,20
+495,3,10,20
+495,3,11,20
+495,4,10,20
+495,4,11,20
+495,5,10,2
+495,5,11,2
+496,1,10,7
+496,1,11,7
+496,2,10,20
+496,2,11,20
+496,3,10,20
+496,3,11,20
+496,4,10,20
+496,4,11,20
+496,5,10,2
+496,5,11,2
+497,1,10,7
+497,1,11,7
+498,1,10,7
+498,1,11,7
+499,1,10,7
+499,1,11,7
+499,2,10,20
+499,2,11,20
+499,3,10,20
+499,3,11,20
+499,4,10,20
+499,4,11,20
+499,5,10,2
+499,5,11,2
+500,1,10,21
+500,1,11,21
+501,1,10,1
+501,1,11,1
+502,1,10,2
+502,1,11,2
+503,1,10,3
+503,1,11,3
+504,1,10,4
+504,1,11,4
+505,1,10,5
+505,1,11,5
+506,1,10,6
+506,1,11,6
+507,1,10,7
+507,1,11,7
+508,1,10,8
+508,1,11,8
+509,1,10,9
+509,1,11,9
+510,1,10,10
+510,1,11,10
+511,1,10,5
+511,1,11,5
+512,1,10,21
+512,1,11,21
+512,2,10,20
+512,2,11,20
+512,3,10,20
+512,3,11,20
+512,4,10,20
+512,4,11,20
+512,5,10,2
+512,5,11,2
+512,6,10,25
+512,6,11,25
+513,1,10,21
+513,1,11,21
+513,2,10,20
+513,2,11,20
+513,3,10,20
+513,3,11,20
+513,4,10,20
+513,4,11,20
+513,5,10,2
+513,5,11,2
+514,1,10,21
+514,1,11,21
+514,2,10,20
+514,2,11,20
+514,3,10,20
+514,3,11,20
+514,4,10,20
+514,4,11,20
+514,5,10,2
+514,5,11,2
+515,1,10,21
+515,1,11,21
+515,2,10,20
+515,2,11,20
+515,3,10,20
+515,3,11,20
+515,4,10,20
+515,4,11,20
+515,5,10,2
+515,5,11,2
+516,1,10,1
+516,1,11,1
+517,2,10,20
+517,2,11,20
+517,3,10,20
+517,3,11,20
+517,4,10,20
+517,4,11,20
+517,5,10,2
+517,5,11,2
+518,2,10,20
+518,2,11,20
+518,3,10,20
+518,3,11,20
+518,4,10,20
+518,4,11,20
+518,5,10,2
+518,5,11,2
+519,1,10,21
+519,1,11,21
+519,2,10,20
+519,2,11,20
+519,3,10,20
+519,3,11,20
+519,4,10,20
+519,4,11,20
+519,5,10,2
+519,5,11,2
+520,1,10,21
+520,1,11,21
+520,2,10,20
+520,2,11,20
+520,3,10,20
+520,3,11,20
+520,4,10,20
+520,4,11,20
+520,5,10,2
+520,5,11,2
+521,2,10,20
+521,2,11,20
+521,3,10,20
+521,3,11,20
+521,4,10,20
+521,4,11,20
+521,5,10,2
+521,5,11,2
+522,2,10,20
+522,2,11,20
+522,3,10,20
+522,3,11,20
+522,4,10,20
+522,4,11,20
+522,5,10,2
+522,5,11,2
+523,1,10,21
+523,1,11,21
+523,2,10,20
+523,2,11,20
+523,3,10,20
+523,3,11,20
+523,4,10,20
+523,4,11,20
+523,5,10,2
+523,5,11,2
+524,1,10,21
+524,1,11,21
+524,2,10,20
+524,2,11,20
+524,3,10,20
+524,3,11,20
+524,4,10,20
+524,4,11,20
+524,5,10,2
+524,5,11,2
+525,2,10,20
+525,2,11,20
+525,3,10,20
+525,3,11,20
+525,4,10,20
+525,4,11,20
+525,5,10,2
+525,5,11,2
+526,1,10,21
+526,1,11,21
+527,1,10,21
+527,1,11,21
+527,6,10,25
+527,6,11,25
+528,2,10,20
+528,2,11,20
+528,3,10,20
+528,3,11,20
+528,4,10,20
+528,4,11,20
+528,5,10,2
+528,5,11,2
+529,1,10,21
+529,1,11,21
+530,1,10,21
+530,1,11,21
+531,1,10,21
+531,1,11,21
+532,1,10,21
+532,1,11,21
+532,2,10,20
+532,2,11,20
+532,3,10,20
+532,3,11,20
+532,4,10,20
+532,4,11,20
+532,5,10,2
+532,5,11,2
+533,1,10,21
+533,1,11,21
+534,1,10,21
+534,1,11,21
+534,2,10,20
+534,2,11,20
+534,3,10,20
+534,3,11,20
+534,4,10,20
+534,4,11,20
+534,5,10,2
+534,5,11,2
+535,1,10,21
+535,1,11,21
+536,1,10,21
+536,1,11,21
+537,1,10,21
+537,1,11,21
+538,1,10,21
+538,1,11,21
+538,2,10,20
+538,2,11,20
+538,3,10,20
+538,3,11,20
+538,4,10,20
+538,4,11,20
+538,5,10,2
+538,5,11,2
+539,1,10,21
+539,1,11,21
+539,2,10,20
+539,2,11,20
+539,3,10,20
+539,3,11,20
+539,4,10,20
+539,4,11,20
+539,5,10,2
+539,5,11,2
+540,1,10,21
+540,1,11,21
+540,2,10,60
+540,2,11,60
+540,3,10,60
+540,3,11,60
+540,4,10,60
+540,4,11,60
+540,5,10,2
+540,5,11,2
+541,1,10,21
+541,1,11,21
+541,2,10,20
+541,2,11,20
+541,3,10,20
+541,3,11,20
+541,4,10,20
+541,4,11,20
+541,5,10,2
+541,5,11,2
+542,1,10,21
+542,1,11,21
+543,1,10,21
+543,1,11,21
+544,1,10,21
+544,1,11,21
+545,1,10,21
+545,1,11,21
+546,1,10,21
+546,1,11,21
+547,2,10,20
+547,2,11,20
+547,3,10,20
+547,3,11,20
+547,4,10,20
+547,4,11,20
+547,5,10,2
+547,5,11,2
+548,2,10,20
+548,2,11,20
+548,3,10,20
+548,3,11,20
+548,4,10,20
+548,4,11,20
+548,5,10,2
+548,5,11,2
+549,1,10,14
+549,1,11,14
+549,2,10,20
+549,2,11,20
+549,3,10,20
+549,3,11,20
+549,4,10,20
+549,4,11,20
+549,5,10,2
+549,5,11,2
+550,1,10,21
+550,1,11,21
+550,2,10,20
+550,2,11,20
+550,3,10,20
+550,3,11,20
+550,4,10,20
+550,4,11,20
+550,5,10,2
+550,5,11,2
+551,1,10,21
+551,1,11,21
+551,2,10,20
+551,2,11,20
+551,3,10,20
+551,3,11,20
+551,4,10,20
+551,4,11,20
+551,5,10,2
+551,5,11,2
+552,1,10,21
+552,1,11,21
+552,2,10,20
+552,2,11,20
+552,3,10,20
+552,3,11,20
+552,4,10,20
+552,4,11,20
+552,5,10,2
+552,5,11,2
+553,1,10,21
+553,1,11,21
+553,2,10,20
+553,2,11,20
+553,3,10,20
+553,3,11,20
+553,4,10,20
+553,4,11,20
+553,5,10,2
+553,5,11,2
+554,2,10,10
+554,2,11,10
+554,3,10,10
+554,3,11,10
+554,4,10,10
+554,4,11,10
+554,5,10,1
+554,5,11,1
+555,2,10,10
+555,2,11,10
+555,3,10,10
+555,3,11,10
+555,4,10,10
+555,4,11,10
+555,5,10,1
+555,5,11,1
+556,2,10,10
+556,2,11,10
+556,3,10,10
+556,3,11,10
+556,4,10,10
+556,4,11,10
+556,5,10,1
+556,5,11,1
+557,2,10,10
+557,2,11,10
+557,3,10,10
+557,3,11,10
+557,4,10,10
+557,4,11,10
+557,5,10,1
+557,5,11,1
+558,2,10,10
+558,2,11,10
+558,3,10,10
+558,3,11,10
+558,4,10,10
+558,4,11,10
+558,5,10,1
+558,5,11,1
+559,2,10,10
+559,2,11,10
+559,3,10,10
+559,3,11,10
+559,4,10,10
+559,4,11,10
+559,5,10,1
+559,5,11,1
+560,2,10,10
+560,2,11,10
+560,3,10,10
+560,3,11,10
+560,4,10,10
+560,4,11,10
+560,5,10,1
+560,5,11,1
+561,2,10,10
+561,2,11,10
+561,3,10,10
+561,3,11,10
+561,4,10,10
+561,4,11,10
+561,5,10,1
+561,5,11,1
+562,2,10,20
+562,2,11,20
+562,3,10,20
+562,3,11,20
+562,4,10,20
+562,4,11,20
+562,5,10,2
+562,5,11,2
+563,2,10,10
+563,2,11,10
+563,3,10,10
+563,3,11,10
+563,4,10,10
+563,4,11,10
+563,5,10,1
+563,5,11,1
+564,1,10,5
+564,1,11,7
+565,1,10,5
+565,1,11,7
+566,1,10,5
+566,1,11,7
+567,1,10,5
+567,1,11,7
+568,1,10,5
+568,1,11,7
+569,1,10,5
+569,1,11,7
+570,1,10,5
+570,1,11,7
+571,1,10,5
+571,1,11,7
+572,1,10,5
+572,1,11,7
+573,1,11,7
+574,1,11,7
+575,1,11,7
index 5aec6b5..8038cab 100644 (file)
@@ -304,3 +304,229 @@ location_area_id,local_language_id,name
 347,9,"Area 2, north"
 348,9,"Area 3, west"
 349,9,S.S. Anne dock
+350,9,
+351,9,
+352,9,
+353,9,
+354,9,
+355,9,
+356,9,
+357,9,back
+358,9,B1F
+359,9,back/small room
+360,9,
+361,9,1F
+362,9,B1F
+363,9,B2F
+364,9,1F/small Room
+365,9,
+366,9,
+367,9,
+368,9,1F
+369,9,2F
+370,9,3F
+371,9,4F
+372,9,5F
+373,9,6F
+374,9,outside
+375,9,summit
+376,9,
+377,9,entrance
+378,9,1F
+379,9,B1F
+380,9,B2F
+381,9,B3F
+382,9,1F
+383,9,B1F
+384,9,B2F
+385,9,
+386,9,B1F
+387,9,Entrance
+388,9,
+389,9,
+390,9,1F
+391,9,3F
+392,9,5F
+393,9,
+394,9,
+395,9,
+396,9,
+397,9,
+398,9,
+399,9,
+400,9,
+401,9,
+402,9,
+403,9,
+404,9,
+405,9,
+406,9,
+407,9,
+408,9,
+409,9,
+410,9,
+411,9,
+412,9,
+413,9,
+414,9,
+415,9,
+416,9,
+417,9,underwater
+418,9,
+419,9,
+420,9,underwater
+421,9,
+422,9,
+423,9,
+424,9,
+425,9,
+426,9,
+427,9,
+428,9,
+429,9,NW/mach bike area
+430,9,NE/acro bike area
+431,9,SW
+432,9,SE
+433,9,
+434,9,
+435,9,expansion south
+436,9,expansion north
+437,9,
+438,9,
+439,9,
+440,9,
+441,9,a
+442,9,b
+443,9,c
+444,9,d
+445,9,e
+446,9,f
+447,9,g
+448,9,h
+449,9,i
+450,9,
+451,9,
+452,9,
+453,9,
+454,9,
+455,9,
+456,9,
+457,9,
+458,9,1F
+459,9,B1F
+460,9,B2F
+461,9,
+462,9,
+463,9,1F
+464,9,2F
+465,9,3F
+466,9,
+467,9,B1F
+468,9,center
+469,9,"Area 1, east"
+470,9,"Area 2, north"
+471,9,"Area 3, west"
+472,9,1F
+473,9,2F
+474,9,B1F
+475,9,1F
+476,9,B1F
+477,9,1F
+478,9,B1F
+479,9,B2F
+480,9,B3F
+481,9,B4F
+482,9,3F
+483,9,4F
+484,9,5F
+485,9,6F
+486,9,7F
+487,9,
+488,9,
+489,9,cave
+490,9,inside
+491,9,"1F, cave behind team rocket"
+492,9,B1F
+493,9,B2F
+494,9,B3F
+495,9,
+496,9,entrance
+497,9,1F
+498,9,B1F
+499,9,waterfall
+500,9,
+501,9,room 1
+502,9,room 2
+503,9,room 3
+504,9,room 4
+505,9,room 5
+506,9,room 6
+507,9,room 7
+508,9,room 8
+509,9,room 9
+510,9,room 10
+511,9,item rooms
+512,9,
+513,9,
+514,9,
+515,9,
+516,9,
+517,9,
+518,9,
+519,9,
+520,9,
+521,9,
+522,9,
+523,9,
+524,9,
+525,9,
+526,9,
+527,9,
+528,9,
+529,9,
+530,9,
+531,9,
+532,9,
+533,9,
+534,9,
+535,9,
+536,9,
+537,9,
+538,9,
+539,9,
+540,9,
+541,9,
+542,9,
+543,9,
+544,9,
+545,9,
+546,9,
+547,9,
+548,9,
+549,9,
+550,9,
+551,9,
+552,9,
+553,9,
+554,9,
+555,9,
+556,9,
+557,9,
+558,9,
+559,9,
+560,9,
+561,9,
+562,9,
+563,9,
+564,9,a
+565,9,b
+566,9,c
+567,9,d
+568,9,e
+569,9,f
+570,9,g
+571,9,h
+572,9,i
+573,9,1F
+574,9,2F
+575,9,3F
index 648446b..a471199 100644 (file)
@@ -304,3 +304,229 @@ id,location_id,game_index,identifier
 347,162,0,area-2-north
 348,162,0,area-3-west
 349,151,0,ss-anne-dock
+350,429,0,
+351,430,1,
+352,431,2,
+353,432,3,
+354,433,4,
+355,434,5,
+356,435,6,
+357,435,7,back
+358,435,8,b1f
+359,435,9,backsmall-room
+360,436,10,
+361,437,11,1f
+362,437,12,b1f
+363,437,13,b2f
+364,437,14,1fsmall-room
+365,438,15,
+366,439,16,
+367,440,17,
+368,441,18,1f
+369,441,19,2f
+370,441,20,3f
+371,441,21,4f
+372,441,22,5f
+373,441,23,6f
+374,441,24,outside
+375,441,25,summit
+376,442,26,
+377,443,35,entrance
+378,443,36,1f
+379,443,37,b1f
+380,443,38,b2f
+381,443,39,b3f
+382,444,40,1f
+383,444,41,b1f
+384,444,42,b2f
+385,445,43,
+386,445,47,b1f
+387,446,48,entrance
+388,446,49,
+389,447,50,
+390,448,52,1f
+391,448,53,3f
+392,448,54,5f
+393,449,55,
+394,450,56,
+395,451,57,
+396,452,58,
+397,453,59,
+398,454,60,
+399,455,61,
+400,456,62,
+401,457,63,
+402,458,64,
+403,459,65,
+404,460,66,
+405,461,67,
+406,462,68,
+407,463,69,
+408,464,70,
+409,465,71,
+410,466,72,
+411,467,73,
+412,468,74,
+413,469,75,
+414,470,76,
+415,471,77,
+416,472,78,
+417,472,95,underwater
+418,473,79,
+419,474,80,
+420,474,96,underwater
+421,475,81,
+422,476,82,
+423,477,83,
+424,478,84,
+425,479,85,
+426,480,86,
+427,481,87,
+428,482,88,
+429,483,89,nwmach-bike-area
+430,483,90,neacro-bike-area
+431,483,91,sw
+432,483,92,se
+433,484,93,
+434,485,94,
+435,483,97,expansion-south
+436,483,98,expansion-north
+437,486,99,
+438,487,107,
+439,488,111,
+440,489,112,
+441,490,114,a
+442,490,115,b
+443,490,116,c
+444,490,117,d
+445,490,118,e
+446,490,119,f
+447,490,120,g
+448,490,121,h
+449,490,122,i
+450,491,0,
+451,492,1,
+452,493,2,
+453,494,3,
+454,495,4,
+455,496,5,
+456,497,6,
+457,155,7,
+458,80,8,1f
+459,80,9,b1f
+460,80,10,b2f
+461,498,11,
+462,73,12,
+463,499,13,1f
+464,499,14,2f
+465,499,15,3f
+466,161,16,
+467,161,19,b1f
+468,162,20,center
+469,162,21,area-1-east
+470,162,22,area-2-north
+471,162,23,area-3-west
+472,147,24,1f
+473,147,25,2f
+474,147,26,b1f
+475,87,27,1f
+476,87,28,b1f
+477,136,29,1f
+478,136,30,b1f
+479,136,31,b2f
+480,136,32,b3f
+481,136,33,b4f
+482,160,34,3f
+483,160,35,4f
+484,160,36,5f
+485,160,37,6f
+486,160,38,7f
+487,158,39,
+488,500,40,
+489,500,41,cave
+490,500,42,inside
+491,500,44,1f-cave-behind-team-rocket
+492,500,45,b1f
+493,500,46,b2f
+494,500,47,b3f
+495,501,50,
+496,502,51,entrance
+497,502,52,1f
+498,502,53,b1f
+499,502,54,waterfall
+500,503,55,
+501,504,56,room-1
+502,504,57,room-2
+503,504,58,room-3
+504,504,59,room-4
+505,504,60,room-5
+506,504,61,room-6
+507,504,62,room-7
+508,504,63,room-8
+509,504,64,room-9
+510,504,65,room-10
+511,504,66,item-rooms
+512,505,70,
+513,506,71,
+514,507,72,
+515,508,73,
+516,509,74,
+517,510,75,
+518,511,76,
+519,512,77,
+520,513,78,
+521,514,79,
+522,515,80,
+523,516,81,
+524,517,82,
+525,518,83,
+526,519,84,
+527,520,85,
+528,521,86,
+529,88,87,
+530,99,88,
+531,109,89,
+532,120,90,
+533,130,91,
+534,131,92,
+535,132,93,
+536,133,94,
+537,134,95,
+538,89,96,
+539,90,97,
+540,91,98,
+541,92,99,
+542,93,100,
+543,94,101,
+544,95,102,
+545,96,103,
+546,97,104,
+547,522,105,
+548,523,106,
+549,524,107,
+550,102,109,
+551,157,110,
+552,103,111,
+553,104,112,
+554,86,113,
+555,154,114,
+556,68,115,
+557,525,116,
+558,67,117,
+559,76,118,
+560,71,119,
+561,526,120,
+562,527,121,
+563,528,122,
+564,529,123,a
+565,529,124,b
+566,529,125,c
+567,529,126,d
+568,529,127,e
+569,529,128,f
+570,529,129,g
+571,529,130,h
+572,529,131,i
+573,530,13,1f
+574,530,14,2f
+575,530,15,3f
index 798db39..51d03d6 100644 (file)
@@ -324,3 +324,118 @@ location_id,generation_id,game_index
 341,4,3076
 342,4,2013
 343,4,2014
+344,5,1
+345,5,2
+346,5,4
+346,5,81
+347,5,5
+348,5,6
+349,5,7
+350,5,8
+351,5,9
+351,5,76
+352,5,10
+352,5,77
+353,5,11
+353,5,78
+354,5,12
+354,5,79
+355,5,13
+355,5,80
+356,5,14
+357,5,15
+358,5,16
+359,5,17
+360,5,18
+360,5,93
+361,5,19
+361,5,94
+362,5,20
+362,5,95
+363,5,21
+363,5,96
+364,5,22
+364,5,97
+365,5,23
+366,5,24
+366,5,98
+367,5,25
+367,5,99
+368,5,26
+368,5,100
+369,5,27
+369,5,101
+370,5,28
+370,5,102
+371,5,29
+371,5,103
+372,5,30
+373,5,31
+374,5,32
+375,5,33
+376,5,34
+377,5,35
+378,5,36
+378,5,84
+379,5,37
+379,5,85
+380,5,38
+380,5,86
+381,5,39
+381,5,87
+382,5,40
+383,5,41
+383,5,104
+384,5,42
+384,5,105
+385,5,43
+386,5,44
+387,5,45
+388,5,46
+389,5,47
+390,5,48
+391,5,49
+392,5,50
+392,5,83
+393,5,51
+393,5,82
+394,5,52
+395,5,53
+396,5,54
+397,5,55
+398,5,56
+399,5,57
+400,5,58
+401,5,59
+402,5,60
+403,5,61
+403,5,88
+404,5,62
+405,5,63
+406,5,64
+407,5,65
+407,5,89
+408,5,66
+408,5,90
+409,5,67
+409,5,91
+410,5,68
+410,5,92
+411,5,69
+412,5,70
+413,5,71
+414,5,72
+415,5,73
+416,5,74
+417,5,75
+418,5,106
+419,5,107
+420,5,108
+421,5,109
+422,5,110
+423,5,111
+424,5,112
+425,5,113
+426,5,114
+427,5,115
+428,5,116
index ae74b6a..2047ad6 100644 (file)
@@ -331,3 +331,275 @@ location_id,local_language_id,name
 341,9,Concert Event
 342,9,Mr. Pokémon
 343,9,Primo
+344,1,なぞの場所
+344,9,Mystery Zone
+345,1,遠い場所
+345,9,Faraway place
+346,1,カノコタウン
+346,9,Nuvema Town
+347,1,カラクサタウン
+347,9,Accumula Town
+348,1,サンヨウシティ
+348,9,Striaton City
+349,1,シッポウシティ
+349,9,Nacrene City
+350,1,ヒウンシティ
+350,9,Castelia City
+351,1,ライモンシティ
+351,9,Nimbasa City
+352,1,ホドモエシティ
+352,9,Driftveil City
+353,1,フキヨセシティ
+353,9,Mistralton City
+354,1,セッカシティ
+354,9,Icirrus City
+355,1,ソウリュウシティ
+355,9,Opelucid City
+356,1,1番道路
+356,9,Route 1
+357,1,2番道路
+357,9,Route 2
+358,1,3番道路
+358,9,Route 3
+359,1,4番道路
+359,9,Route 4
+360,1,5番道路
+360,9,Route 5
+361,1,6番道路
+361,9,Route 6
+362,1,7番道路
+362,9,Route 7
+363,1,8番道路
+363,9,Route 8
+364,1,9番道路
+364,9,Route 9
+365,1,10番道路
+365,9,Route 10
+366,1,11番道路
+366,9,Route 11
+367,1,12番道路
+367,9,Route 12
+368,1,13番道路
+368,9,Route 13
+369,1,14番道路
+369,9,Route 14
+370,1,15番道路
+370,9,Route 15
+371,1,16番道路
+371,9,Route 16
+372,1,17番水道
+372,9,Route 17
+373,1,18番道路
+373,9,Route 18
+374,1,夢の跡地
+374,9,Dreamyard
+375,1,ヤグルマの森
+375,9,Pinwheel Forest
+376,1,リゾートデザート
+376,9,Desert Resort
+377,1,古代の城
+377,9,Relic Castle
+378,1,冷凍コンテナ
+378,9,Cold Storage
+379,1,電気石の洞穴
+379,9,Chargestone Cave
+380,1,ネジ山
+380,9,Twist Mountain
+381,1,リュウラセンの塔
+381,9,Dragonspiral Tower
+382,1,チャンピオンロード
+382,9,Victory Road
+383,1,カゴメタウン
+383,9,Lacunosa Town
+384,1,サザナミタウン
+384,9,Undella Town
+385,1,カナワタウン
+385,9,Anville Town
+386,1,ポケモンリーグ
+386,9,Pokémon League
+387,1,Nの城
+387,9,N's Castle
+388,1,ロイヤルイッシュ号
+388,9,Royal Unova
+389,1,ギアステーション
+389,9,Gear Station
+390,1,バトルサブウェイ
+390,9,Battle Subway
+391,1,ミュージカルホール
+391,9,Musical Theater
+392,1,ブラックシティ
+392,9,Black City
+393,1,ホワイトフォレスト
+393,9,White Forest
+394,1,ユナイテッドタワー
+394,9,Unity Tower
+395,1,地下水脈の穴
+395,9,Wellspring Cave
+396,1,フキヨセの洞穴
+396,9,Mistralton Cave
+397,1,思索の原
+397,9,Rumination Field
+398,1,タワーオブヘブン
+398,9,Celestial Tower
+399,1,セッカの湿原
+399,9,Moor of Icirrus
+400,1,ショッピングモール
+400,9,Shopping Mall
+401,1,修行の岩屋
+401,9,Challenger's Cave
+402,1,シフトファクトリー
+402,9,Poké Transfer Lab
+403,1,ジャイアントホール
+403,9,Giant Chasm
+404,1,リバティガーデン島
+404,9,Liberty Garden
+405,1,P2ラボ
+405,9,P2 Laboratory
+406,1,スカイアローブリッジ
+406,9,Skyarrow Bridge
+407,1,ホドモエの跳ね橋
+407,9,Driftveil Drawbridge
+408,1,シリンダーブリッジ
+408,9,Tubeline Bridge
+409,1,ビレッジブリッジ
+409,9,Village Bridge
+410,1,ワンダーブリッジ
+410,9,Marvelous Bridge
+411,1,ハイリンク
+411,9,Entralink
+412,1,ほうじょうの社
+412,9,Abundant Shrine
+413,1,サザナミ湾
+413,9,Undella Bay
+414,1,迷いの森
+414,9,Lostlorn Forest
+415,1,試練の室
+415,9,Trial Chamber
+416,1,導の間
+416,9,Guidance Chamber
+417,1,ハイリンクの森
+417,9,Entree Forest
+418,1,カラクサゲート
+418,9,Accumula Gate
+419,1,サザナミゲート
+419,9,Undella Gate
+420,1,シッポウゲート
+420,9,Nacrene Gate
+421,1,ヒウンゲート
+421,9,Castelia Gate
+422,1,ライモンゲート
+422,9,Nimbasa Gate
+423,1,ソウリュウゲート
+423,9,Opelucid Gate
+424,1,ブラックゲート
+424,9,Black Gate
+425,1,ホワイトゲート
+425,9,White Gate
+426,1,ブリッジゲート
+426,9,Bridge Gate
+427,1,ロードゲート
+427,9,Route Gate
+428,1,海底遺跡
+428,9,Abyssal Ruins
+429,9,Petalburg City
+430,9,Slateport City
+431,9,Lilycove City
+432,9,Mossdeep City
+433,9,Sootopolis City
+434,9,Ever Grande City
+435,9,Meteor Falls
+436,9,Rusturf Tunnel
+437,9,Granite Cave
+438,9,Petalburg Woods
+439,9,Jagged Pass
+440,9,Fiery Pass
+441,9,Mt. Pyre
+442,9,Seafloor Cavern
+443,9,Cave of Origin
+444,9,Victory Road
+445,9,Shoal Cave
+446,9,New Mauville
+447,9,Abandoned Ship
+448,9,Sky Pillar
+449,9,Route 101
+450,9,Route 102
+451,9,Route 103
+452,9,Route 104
+453,9,Route 105
+454,9,Route 106
+455,9,Route 107
+456,9,Route 108
+457,9,Route 109
+458,9,Route 110
+459,9,Route 111
+460,9,Route 112
+461,9,Route 113
+462,9,Route 114
+463,9,Route 115
+464,9,Route 116
+465,9,Route 117
+466,9,Route 118
+467,9,Route 119
+468,9,Route 120
+469,9,Route 121
+470,9,Route 122
+471,9,Route 123
+472,9,Route 124
+473,9,Route 125
+474,9,Route 126
+475,9,Route 127
+476,9,Route 128
+477,9,Route 129
+478,9,Route 130
+479,9,Route 131
+480,9,Route 132
+481,9,Route 133
+482,9,Route 134
+483,9,Safari Zone
+484,9,Dewford Town
+485,9,Pacifidlog Town
+486,9,Magma Hideout
+487,9,Mirage Tower
+488,9,Desert Underpass
+489,9,Artisan Cave
+490,9,Altering Cave
+491,9,Monean Chamber
+492,9,Liptoo Chamber
+493,9,Weepth Chamber
+494,9,Dilford Chamber
+495,9,Scufib Chamber
+496,9,Rixy Chamber
+497,9,Viapos Chamber
+498,9,S.S. Anne
+499,9,Victory Road
+500,9,Mt. Ember
+501,9,Berry Forest
+502,9,Icefall Cave
+503,9,Patern Bush
+504,9,Lost Cave
+505,9,Kindle Road
+506,9,Treasure Beach
+507,9,Cape Brink
+508,9,Bond Bridge
+509,9,Three Isle Port
+510,9,Resort Gorgeous
+511,9,Water Labyrinth
+512,9,Five Isle Meadow
+513,9,Memorial Pillar
+514,9,Outcast Island
+515,9,Green Path
+516,9,Water Path
+517,9,Ruin Valley
+518,9,Trainer Tower
+519,9,Canyon Entrance
+520,9,Sevault Canyon
+521,9,Tanoby Ruins
+522,9,Route 19
+523,9,Route 20
+524,9,Route 21
+525,9,Vermillion City
+526,9,One Island
+527,9,Four Island
+528,9,Five Island
+529,9,Altering Cave
+530,9,Victory Road
index bca61c5..8021d36 100644 (file)
@@ -331,3 +331,190 @@ id,region_id,identifier
 341,,concert-event
 342,,mr-pokemon
 343,,primo
+344,5,mystery-zone
+345,5,faraway-place
+346,5,nuvema-town
+347,5,accumula-town
+348,5,striaton-city
+349,5,nacrene-city
+350,5,castelia-city
+351,5,nimbasa-city
+352,5,driftveil-city
+353,5,mistralton-city
+354,5,icirrus-city
+355,5,opelucid-city
+356,5,route-1
+357,5,route-2
+358,5,route-3
+359,5,route-4
+360,5,route-5
+361,5,route-6
+362,5,route-7
+363,5,route-8
+364,5,route-9
+365,5,route-10
+366,5,route-11
+367,5,route-12
+368,5,route-13
+369,5,route-14
+370,5,route-15
+371,5,route-16
+372,5,route-17
+373,5,route-18
+374,5,dreamyard
+375,5,pinwheel-forest
+376,5,desert-resort
+377,5,relic-castle
+378,5,cold-storage
+379,5,chargestone-cave
+380,5,twist-mountain
+381,5,dragonspiral-tower
+382,5,victory-road
+383,5,lacunosa-town
+384,5,undella-town
+385,5,anville-town
+386,5,pokemon-league
+387,5,ns-castle
+388,5,royal-unova
+389,5,gear-station
+390,5,battle-subway
+391,5,musical-theater
+392,5,black-city
+393,5,white-forest
+394,5,unity-tower
+395,5,wellspring-cave
+396,5,mistralton-cave
+397,5,rumination-field
+398,5,celestial-tower
+399,5,moor-of-icirrus
+400,5,shopping-mall
+401,5,challengers-cave
+402,5,poke-transfer-lab
+403,5,giant-chasm
+404,5,liberty-garden
+405,5,p2-laboratory
+406,5,skyarrow-bridge
+407,5,driftveil-drawbridge
+408,5,tubeline-bridge
+409,5,village-bridge
+410,5,marvelous-bridge
+411,5,entralink
+412,5,abundant-shrine
+413,5,undella-bay
+414,5,lostlorn-forest
+415,5,trial-chamber
+416,5,guidance-chamber
+417,5,entree-forest
+418,5,accumula-gate
+419,5,undella-gate
+420,5,nacrene-gate
+421,5,castelia-gate
+422,5,nimbasa-gate
+423,5,opelucid-gate
+424,5,black-gate
+425,5,white-gate
+426,5,bridge-gate
+427,5,route-gate
+428,5,abyssal-ruins
+429,3,petalburg-city
+430,3,slateport-city
+431,3,lilycove-city
+432,3,mossdeep-city
+433,3,sootopolis-city
+434,3,ever-grande-city
+435,3,meteor-falls
+436,3,rusturf-tunnel
+437,3,granite-cave
+438,3,petalburg-woods
+439,3,jagged-pass
+440,3,fiery-pass
+441,3,mt-pyre
+442,3,seafloor-cavern
+443,3,cave-of-origin
+444,3,victory-road
+445,3,shoal-cave
+446,3,new-mauville
+447,3,abandoned-ship
+448,3,sky-pillar
+449,3,route-101
+450,3,route-102
+451,3,route-103
+452,3,route-104
+453,3,route-105
+454,3,route-106
+455,3,route-107
+456,3,route-108
+457,3,route-109
+458,3,route-110
+459,3,route-111
+460,3,route-112
+461,3,route-113
+462,3,route-114
+463,3,route-115
+464,3,route-116
+465,3,route-117
+466,3,route-118
+467,3,route-119
+468,3,route-120
+469,3,route-121
+470,3,route-122
+471,3,route-123
+472,3,route-124
+473,3,route-125
+474,3,route-126
+475,3,route-127
+476,3,route-128
+477,3,route-129
+478,3,route-130
+479,3,route-131
+480,3,route-132
+481,3,route-133
+482,3,route-134
+483,3,safari-zone
+484,3,dewford-town
+485,3,pacifidlog-town
+486,3,magma-hideout
+487,3,mirage-tower
+488,3,desert-underpass
+489,3,artisan-cave
+490,3,altering-cave
+491,1,monean-chamber
+492,1,liptoo-chamber
+493,1,weepth-chamber
+494,1,dilford-chamber
+495,1,scufib-chamber
+496,1,rixy-chamber
+497,1,viapos-chamber
+498,1,ss-anne
+499,1,victory-road
+500,1,mt-ember
+501,1,berry-forest
+502,1,icefall-cave
+503,1,patern-bush
+504,1,lost-cave
+505,1,kindle-road
+506,1,treasure-beach
+507,1,cape-brink
+508,1,bond-bridge
+509,1,three-isle-port
+510,1,resort-gorgeous
+511,1,water-labyrinth
+512,1,five-isle-meadow
+513,1,memorial-pillar
+514,1,outcast-island
+515,1,green-path
+516,1,water-path
+517,1,ruin-valley
+518,1,trainer-tower
+519,1,canyon-entrance
+520,1,sevault-canyon
+521,1,tanoby-ruins
+522,1,route-19
+523,1,route-20
+524,1,route-21
+525,1,vermillion-city
+526,1,one-island
+527,1,four-island
+528,1,five-island
+529,1,altering-cave
+530,1,victory-road
index 322233b..dece385 100644 (file)
@@ -4,8 +4,8 @@ id,identifier
 3,tutor
 4,machine
 5,stadium-surfing-pikachu
-6,volt-tackle-pichu
+6,light-ball-egg
 7,colosseum-purification
 8,xd-shadow
 9,xd-purification
-10,rotom-form
+10,form-change
index c4013f4..ae06c1b 100644 (file)
@@ -1,3 +1,6 @@
+# encoding: utf-8
+import re
+
 from sqlalchemy import engine_from_config, orm
 
 from ..defaults import get_default_db_uri
@@ -21,7 +24,7 @@ def connect(uri=None, session_args={}, engine_args={}, engine_prefix=''):
         uri = get_default_db_uri()
 
     ### Do some fixery for MySQL
-    if uri[0:5] == 'mysql':
+    if uri.startswith('mysql:'):
         # MySQL uses latin1 for connections by default even if the server is
         # otherwise oozing with utf8; charset fixes this
         if 'charset' not in uri:
@@ -51,3 +54,33 @@ def connect(uri=None, session_args={}, engine_args={}, engine_prefix=''):
     session._default_language_id = 9
 
     return session
+
+def identifier_from_name(name):
+    """Make a string safe to use as an identifier.
+
+    Valid characters are lowercase alphanumerics and "-". This function may
+    raise ValueError if it can't come up with a suitable identifier.
+
+    This function is useful for scripts which add things with names.
+    """
+    if isinstance(name, str):
+        identifier = name.decode('utf-8')
+    else:
+        identifier = name
+    identifier = identifier.lower()
+    identifier = identifier.replace(u'+', u' plus ')
+    identifier = re.sub(u'[ _–]+', u'-', identifier)
+    identifier = re.sub(u"['./;’(),:]", u'', identifier)
+    identifier = identifier.replace(u'é', u'e')
+    identifier = identifier.replace(u'♀', u'-f')
+    identifier = identifier.replace(u'♂', u'-m')
+    if identifier in (u'???', u'????'):
+        identifier = u'unknown'
+    elif identifier == u'!':
+        identifier = u'exclamation'
+    elif identifier == u'?':
+        identifier = u'question'
+
+    if not identifier.replace(u"-", u"").isalnum():
+        raise ValueError(identifier)
+    return identifier
diff --git a/pokedex/db/dependencies.py b/pokedex/db/dependencies.py
new file mode 100644 (file)
index 0000000..1f1b118
--- /dev/null
@@ -0,0 +1,54 @@
+import sqlalchemy.sql.visitors as visitors
+
+from pokedex.db.tables import metadata
+
+# stolen from sqlalchemy.sql.util.sort_tables
+def compute_dependencies(tables):
+    """Construct a reverse dependency graph for the given tables.
+
+    Returns a dict which maps a table to the list of tables which depend on it.
+    """
+    tables = list(tables)
+    graph = {}
+    def visit_foreign_key(fkey):
+        if fkey.use_alter:
+            return
+        parent_table = fkey.column.table
+        if parent_table in tables:
+            child_table = fkey.parent.table
+            if parent_table is not child_table:
+                graph.setdefault(parent_table, []).append(child_table)
+
+    for table in tables:
+        visitors.traverse(table,
+                          {'schema_visitor': True},
+                          {'foreign_key': visit_foreign_key})
+
+        graph.setdefault(table, []).extend(table._extra_dependencies)
+
+    return graph
+
+#: The dependency graph for pokedex.db.tables
+_pokedex_graph = compute_dependencies(metadata.tables.values())
+
+def find_dependent_tables(tables, graph=None):
+    """Recursively find all tables which depend on the given tables.
+
+    The returned set does not include the original tables.
+    """
+    if graph is None:
+        graph = _pokedex_graph
+    tables = list(tables)
+    dependents = set()
+    def add_dependents_of(table):
+        for dependent_table in graph.get(table, []):
+            if dependent_table not in dependents:
+                dependents.add(dependent_table)
+                add_dependents_of(dependent_table)
+
+    for table in tables:
+        add_dependents_of(table)
+
+    dependents -= set(tables)
+
+    return dependents
index 6a548b8..5740f42 100644 (file)
@@ -11,6 +11,7 @@ import sqlalchemy.types
 from pokedex.db import metadata
 import pokedex.db.tables as tables
 from pokedex.defaults import get_default_csv_dir
+from pokedex.db.dependencies import find_dependent_tables
 
 
 def _get_table_names(metadata, patterns):
@@ -52,7 +53,7 @@ def _get_verbose_prints(verbose):
     def print_start(thing):
         # Truncate to 66 characters, leaving 10 characters for a success
         # or failure message
-        truncated_thing = thing[0:66]
+        truncated_thing = thing[:66]
 
         # Also, space-pad to keep the cursor in a known column
         num_spaces = 66 - len(truncated_thing)
@@ -95,7 +96,7 @@ def _get_verbose_prints(verbose):
     return print_start, print_status, print_done
 
 
-def load(session, tables=[], directory=None, drop_tables=False, verbose=False, safe=True):
+def load(session, tables=[], directory=None, drop_tables=False, verbose=False, safe=True, recursive=False):
     """Load data from CSV files into the given database session.
 
     Tables are created automatically.
@@ -119,6 +120,9 @@ def load(session, tables=[], directory=None, drop_tables=False, verbose=False, s
     `safe`
         If set to False, load can be faster, but can corrupt the database if
         it crashes or is interrupted.
+
+    `recursive`
+        If set to True, load all dependent tables too.
     """
 
     # First take care of verbosity
@@ -128,8 +132,13 @@ def load(session, tables=[], directory=None, drop_tables=False, verbose=False, s
     if directory is None:
         directory = get_default_csv_dir()
 
+    # XXX why isn't this done in command_load
     table_names = _get_table_names(metadata, tables)
     table_objs = [metadata.tables[name] for name in table_names]
+
+    if recursive:
+        table_objs.extend(find_dependent_tables(table_objs))
+
     table_objs = sqlalchemy.sql.util.sort_tables(table_objs)
 
     # SQLite speed tweaks
@@ -185,15 +194,15 @@ def load(session, tables=[], directory=None, drop_tables=False, verbose=False, s
                 force_not_null = 'FORCE NOT NULL ' + ','.join('"%s"' % c for c in not_null_cols)
             else:
                 force_not_null = ''
-            command = "COPY {table_name} ({columns}) FROM '{csvpath}' CSV HEADER {force_not_null}"
+            command = "COPY %(table_name)s (%(columns)s) FROM '%(csvpath)s' CSV HEADER %(force_not_null)s"
             session.connection().execute(
-                    command.format(
-                            table_name=table_name,
-                            csvpath=csvpath,
-                            columns=','.join('"%s"' % c for c in column_names),
-                            force_not_null=force_not_null,
-                        )
+                command % dict(
+                    table_name=table_name,
+                    csvpath=csvpath,
+                    columns=','.join('"%s"' % c for c in column_names),
+                    force_not_null=force_not_null,
                 )
+            )
             session.commit()
             print_done()
             continue
@@ -203,12 +212,12 @@ def load(session, tables=[], directory=None, drop_tables=False, verbose=False, s
         # them to the session last
         # ASSUMPTION: Self-referential tables have a single PK called "id"
         deferred_rows = []  # ( row referring to id, [foreign ids we need] )
-        seen_ids = {}       # primary key we've seen => 1
+        seen_ids = set()    # primary keys we've seen
 
         # Fetch foreign key columns that point at this table, if any
         self_ref_columns = []
         for column in table_obj.c:
-            if any(_.references(table_obj) for _ in column.foreign_keys):
+            if any(x.references(table_obj) for x in column.foreign_keys):
                 self_ref_columns.append(column)
 
         new_rows = []
@@ -247,18 +256,18 @@ def load(session, tables=[], directory=None, drop_tables=False, verbose=False, s
             # May need to stash this row and add it later if it refers to a
             # later row in this table
             if self_ref_columns:
-                foreign_ids = [row_data[_.name] for _ in self_ref_columns]
-                foreign_ids = [_ for _ in foreign_ids if _]  # remove NULL ids
+                foreign_ids = set(row_data[x.name] for x in self_ref_columns)
+                foreign_ids.discard(None)  # remove NULL ids
 
                 if not foreign_ids:
                     # NULL key.  Remember this row and add as usual.
-                    seen_ids[row_data['id']] = 1
+                    seen_ids.add(row_data['id'])
 
-                elif all(_ in seen_ids for _ in foreign_ids):
+                elif foreign_ids.issubset(seen_ids):
                     # Non-NULL key we've already seen.  Remember it and commit
                     # so we know the old row exists when we add the new one
                     insert_and_commit()
-                    seen_ids[row_data['id']] = 1
+                    seen_ids.add(row_data['id'])
 
                 else:
                     # Non-NULL future id.  Save this and insert it later!
@@ -277,7 +286,7 @@ def load(session, tables=[], directory=None, drop_tables=False, verbose=False, s
 
         # Attempt to add any spare rows we've collected
         for row_data, foreign_ids in deferred_rows:
-            if not all(_ in seen_ids for _ in foreign_ids):
+            if not foreign_ids.issubset(seen_ids):
                 # Could happen if row A refers to B which refers to C.
                 # This is ridiculous and doesn't happen in my data so far
                 raise ValueError("Too many levels of self-reference!  "
index 257c8de..c82ce68 100644 (file)
@@ -31,11 +31,17 @@ class MarkdownString(object):
     def __unicode__(self):
         return self.source_text
 
+    def __str__(self):
+        return unicode(self.source_text).encode()
+
+    def __html__(self):
+        return self.as_html
+
     @property
     def as_html(self):
         """Returns the string as HTML4."""
 
-        if self._as_html:
+        if self._as_html is not None:
             return self._as_html
 
         md = markdown.Markdown(
index 55cd487..6747d88 100644 (file)
@@ -84,7 +84,7 @@ class Language(TableBase):
     """
     __tablename__ = 'languages'
     __singlename__ = 'language'
-    id = Column(Integer, primary_key=True, nullable=False, autoincrement=False,
+    id = Column(Integer, primary_key=True, nullable=False,
         info=dict(description="A numeric ID"))
     iso639 = Column(Unicode(2), nullable=False,
         info=dict(description="The two-letter code of the country where this language is spoken. Note that it is not unique.", format='identifier'))
@@ -111,7 +111,7 @@ class Ability(TableBase):
     """
     __tablename__ = 'abilities'
     __singlename__ = 'ability'
-    id = Column(Integer, primary_key=True, nullable=False, autoincrement=False,
+    id = Column(Integer, primary_key=True, nullable=False,
         info=dict(description="This ability's unique ID; matches the games' internal ID"))
     identifier = Column(Unicode(24), nullable=False,
         info=dict(description="An identifier", format='identifier'))
@@ -134,7 +134,7 @@ class AbilityChangelog(TableBase):
     """History of changes to abilities across main game versions."""
     __tablename__ = 'ability_changelog'
     __singlename__ = 'ability_changelog'
-    id = Column(Integer, primary_key=True, nullable=False, autoincrement=False,
+    id = Column(Integer, primary_key=True, nullable=False,
         info=dict(description="This change's unique ID"))
     ability_id = Column(Integer, ForeignKey('abilities.id'), nullable=False,
         info=dict(description="The ID of the ability that changed"))
@@ -154,7 +154,7 @@ class AbilityFlavorText(TableBase):
         info=dict(description="The ID of the ability"))
     version_group_id = Column(Integer, ForeignKey('version_groups.id'), primary_key=True, nullable=False, autoincrement=False,
         info=dict(description="The ID of the version group this flavor text is taken from"))
-    language_id = Column(Integer, ForeignKey('languages.id'), primary_key=True, nullable=False, autoincrement=False,
+    language_id = Column(Integer, ForeignKey('languages.id'), primary_key=True, nullable=False,
         info=dict(description="The language"))
     flavor_text = Column(Unicode(64), nullable=False,
         info=dict(description="The actual flavor text", official=True, format='gametext'))
@@ -165,7 +165,7 @@ class Berry(TableBase):
     For data common to all items, such as the name, see the corresponding item entry.
     """
     __tablename__ = 'berries'
-    id = Column(Integer, primary_key=True, nullable=False, autoincrement=False,
+    id = Column(Integer, primary_key=True, nullable=False,
         info=dict(description="This Berry's in-game number"))
     item_id = Column(Integer, ForeignKey('items.id'), nullable=False,
         info=dict(description="The ID of the item that represents this Berry"))
@@ -191,7 +191,7 @@ class BerryFirmness(TableBase):
     """
     __tablename__ = 'berry_firmness'
     __singlename__ = 'berry_firmness'
-    id = Column(Integer, primary_key=True, nullable=False, autoincrement=False,
+    id = Column(Integer, primary_key=True, nullable=False,
         info=dict(description="A unique ID for this firmness"))
     identifier = Column(Unicode(10), nullable=False,
         info=dict(description="An identifier", format='identifier'))
@@ -227,7 +227,7 @@ class ContestEffect(TableBase):
     """
     __tablename__ = 'contest_effects'
     __singlename__ = 'contest_effect'
-    id = Column(Integer, primary_key=True, nullable=False, autoincrement=False,
+    id = Column(Integer, primary_key=True, nullable=False,
         info=dict(description="A unique ID for this effect"))
     appeal = Column(SmallInteger, nullable=False,
         info=dict(description="The base number of hearts the user of this move gets"))
@@ -246,7 +246,7 @@ class ContestType(TableBase):
     """
     __tablename__ = 'contest_types'
     __singlename__ = 'contest_type'
-    id = Column(Integer, primary_key=True, nullable=False, autoincrement=False,
+    id = Column(Integer, primary_key=True, nullable=False,
         info=dict(description="A unique ID for this Contest type"))
     identifier = Column(Unicode(6), nullable=False,
         info=dict(description="An identifier", format='identifier'))
@@ -268,7 +268,7 @@ class EggGroup(TableBase):
     """
     __tablename__ = 'egg_groups'
     __singlename__ = 'egg_group'
-    id = Column(Integer, primary_key=True, nullable=False, autoincrement=False,
+    id = Column(Integer, primary_key=True, nullable=False,
         info=dict(description="A unique ID for this group"))
     identifier = Column(Unicode(16), nullable=False,
         info=dict(description=u"An identifier.", format='identifier'))
@@ -288,10 +288,10 @@ class Encounter(TableBase):
     "slot" they are in and the state of the game world.
 
     What the player is doing to get an encounter, such as surfing or walking
-    through tall grass, is called terrain.  Each terrain has its own set of
+    through tall grass, is called a method.  Each method has its own set of
     encounter slots.
 
-    Within a terrain, slots are defined primarily by rarity.  Each slot can
+    Within a method, slots are defined primarily by rarity.  Each slot can
     also be affected by world conditions; for example, the 20% slot for walking
     in tall grass is affected by whether a swarm is in effect in that area.
     "Is there a swarm?" is a condition; "there is a swarm" and "there is not a
@@ -304,14 +304,14 @@ class Encounter(TableBase):
     """
 
     __tablename__ = 'encounters'
-    id = Column(Integer, primary_key=True, nullable=False, autoincrement=False,
+    id = Column(Integer, primary_key=True, nullable=False,
         info=dict(description="A unique ID for this encounter"))
     version_id = Column(Integer, ForeignKey('versions.id'), nullable=False, autoincrement=False,
         info=dict(description="The ID of the version this applies to"))
     location_area_id = Column(Integer, ForeignKey('location_areas.id'), nullable=False, autoincrement=False,
         info=dict(description="The ID of the location of this encounter"))
     encounter_slot_id = Column(Integer, ForeignKey('encounter_slots.id'), nullable=False, autoincrement=False,
-        info=dict(description="The ID of the encounter slot, which determines terrain and rarity"))
+        info=dict(description="The ID of the encounter slot, which determines method and rarity"))
     pokemon_id = Column(Integer, ForeignKey('pokemon.id'), nullable=False, autoincrement=False,
         info=dict(description=u"The ID of the encountered Pokémon"))
     min_level = Column(Integer, nullable=False, autoincrement=False,
@@ -325,7 +325,7 @@ class EncounterCondition(TableBase):
 
     __tablename__ = 'encounter_conditions'
     __singlename__ = 'encounter_condition'
-    id = Column(Integer, primary_key=True, nullable=False, autoincrement=False,
+    id = Column(Integer, primary_key=True, nullable=False,
         info=dict(description="A unique ID for this condition"))
     identifier = Column(Unicode(64), nullable=False,
         info=dict(description="An identifier", format='identifier'))
@@ -341,7 +341,7 @@ class EncounterConditionValue(TableBase):
 
     __tablename__ = 'encounter_condition_values'
     __singlename__ = 'encounter_condition_value'
-    id = Column(Integer, primary_key=True, nullable=False, autoincrement=False,
+    id = Column(Integer, primary_key=True, nullable=False,
         info=dict(description="A numeric ID"))
     encounter_condition_id = Column(Integer, ForeignKey('encounter_conditions.id'), primary_key=False, nullable=False, autoincrement=False,
         info=dict(description="The ID of the encounter condition this is a value of"))
@@ -364,46 +364,46 @@ class EncounterConditionValueMap(TableBase):
     encounter_condition_value_id = Column(Integer, ForeignKey('encounter_condition_values.id'), primary_key=True, nullable=False, autoincrement=False,
         info=dict(description="The ID of the encounter condition value"))
 
+class EncounterMethod(TableBase):
+    u"""A way the player can enter a wild encounter, e.g., surfing, fishing, or walking through tall grass.
+    """
+
+    __tablename__ = 'encounter_methods'
+    __singlename__ = 'encounter_method'
+    id = Column(Integer, primary_key=True, nullable=False,
+        info=dict(description="A unique ID for the method"))
+    identifier = Column(Unicode(16), nullable=False, unique=True,
+        info=dict(description="An identifier", format='identifier'))
+
+create_translation_table('encounter_method_prose', EncounterMethod, 'prose',
+    name = Column(Unicode(64), nullable=False, index=True,
+        info=dict(description="The name", format='plaintext', official=False)),
+)
+
 class EncounterSlot(TableBase):
-    u"""An abstract "slot" within a terrain, associated with both some set of conditions and a rarity.
+    u"""An abstract "slot" within a method, associated with both some set of conditions and a rarity.
 
     Note that there are two encounters per slot, so the rarities will only add
     up to 50.
     """
 
     __tablename__ = 'encounter_slots'
-    id = Column(Integer, primary_key=True, nullable=False, autoincrement=False,
+    id = Column(Integer, primary_key=True, nullable=False,
         info=dict(description="A unique ID for this slot"))
     version_group_id = Column(Integer, ForeignKey('version_groups.id'), nullable=False, autoincrement=False,
         info=dict(description="The ID of the version group this slot is in"))
-    encounter_terrain_id = Column(Integer, ForeignKey('encounter_terrain.id'), primary_key=False, nullable=False, autoincrement=False,
-        info=dict(description="The ID of the terrain"))
+    encounter_method_id = Column(Integer, ForeignKey('encounter_methods.id'), primary_key=False, nullable=False, autoincrement=False,
+        info=dict(description="The ID of the method"))
     slot = Column(Integer, nullable=True,
-        info=dict(description="This slot's order for the location and terrain"))
-    rarity = Column(Integer, nullable=False,
+        info=dict(description="This slot's order for the location and method"))
+    rarity = Column(Integer, nullable=True,
         info=dict(description="The chance of the encounter as a percentage"))
 
-class EncounterTerrain(TableBase):
-    u"""A way the player can enter a wild encounter, e.g., surfing, fishing, or walking through tall grass.
-    """
-
-    __tablename__ = 'encounter_terrain'
-    __singlename__ = __tablename__
-    id = Column(Integer, primary_key=True, nullable=False, autoincrement=False,
-        info=dict(description="A unique ID for the terrain"))
-    identifier = Column(Unicode(64), nullable=False,
-        info=dict(description="An identifier", format='identifier'))
-
-create_translation_table('encounter_terrain_prose', EncounterTerrain, 'prose',
-    name = Column(Unicode(64), nullable=False, index=True,
-        info=dict(description="The name", format='plaintext', official=False)),
-)
-
 class EvolutionChain(TableBase):
     u"""A family of Pokémon that are linked by evolution
     """
     __tablename__ = 'evolution_chains'
-    id = Column(Integer, primary_key=True, nullable=False, autoincrement=False,
+    id = Column(Integer, primary_key=True, nullable=False,
         info=dict(description="A numeric ID"))
     growth_rate_id = Column(Integer, ForeignKey('growth_rates.id'), nullable=False,
         info=dict(description="ID of the growth rate for this family"))
@@ -415,7 +415,7 @@ class EvolutionTrigger(TableBase):
     """
     __tablename__ = 'evolution_triggers'
     __singlename__ = 'evolution_trigger'
-    id = Column(Integer, primary_key=True, nullable=False, autoincrement=False,
+    id = Column(Integer, primary_key=True, nullable=False,
         info=dict(description="A numeric ID"))
     identifier = Column(Unicode(16), nullable=False,
         info=dict(description="An identifier", format='identifier'))
@@ -429,7 +429,7 @@ class Experience(TableBase):
     u"""EXP needed for a certain level with a certain growth rate
     """
     __tablename__ = 'experience'
-    growth_rate_id = Column(Integer, ForeignKey('growth_rates.id'), primary_key=True, nullable=False, autoincrement=False,
+    growth_rate_id = Column(Integer, ForeignKey('growth_rates.id'), primary_key=True, nullable=False,
         info=dict(description="ID of the growth rate"))
     level = Column(Integer, primary_key=True, nullable=False, autoincrement=False,
         info=dict(description="The level"))
@@ -441,7 +441,7 @@ class Generation(TableBase):
     """
     __tablename__ = 'generations'
     __singlename__ = 'generation'
-    id = Column(Integer, primary_key=True, nullable=False, autoincrement=False,
+    id = Column(Integer, primary_key=True, nullable=False,
         info=dict(description="A numeric ID"))
     main_region_id = Column(Integer, ForeignKey('regions.id'), nullable=False,
         info=dict(description="ID of the region this generation's main games take place in"))
@@ -461,7 +461,7 @@ class GrowthRate(TableBase):
     """
     __tablename__ = 'growth_rates'
     __singlename__ = 'growth_rate'
-    id = Column(Integer, primary_key=True, nullable=False, autoincrement=False,
+    id = Column(Integer, primary_key=True, nullable=False,
         info=dict(description="A numeric ID"))
     identifier = Column(Unicode(20), nullable=False,
         info=dict(description="An identifier", format='identifier'))
@@ -478,7 +478,7 @@ class Item(TableBase):
     """
     __tablename__ = 'items'
     __singlename__ = 'item'
-    id = Column(Integer, primary_key=True, nullable=False, autoincrement=False,
+    id = Column(Integer, primary_key=True, nullable=False,
         info=dict(description="A numeric ID"))
     identifier = Column(Unicode(20), nullable=False,
         info=dict(description="An identifier", format='identifier'))
@@ -519,7 +519,7 @@ class ItemCategory(TableBase):
     # XXX: This is fanon, right?
     __tablename__ = 'item_categories'
     __singlename__ = 'item_category'
-    id = Column(Integer, primary_key=True, nullable=False, autoincrement=False,
+    id = Column(Integer, primary_key=True, nullable=False,
         info=dict(description="A numeric ID"))
     pocket_id = Column(Integer, ForeignKey('item_pockets.id'), nullable=False,
         info=dict(description="ID of the pocket these items go to"))
@@ -537,7 +537,7 @@ class ItemFlag(TableBase):
     """
     __tablename__ = 'item_flags'
     __singlename__ = 'item_flag'
-    id = Column(Integer, primary_key=True, nullable=False, autoincrement=False,
+    id = Column(Integer, primary_key=True, nullable=False,
         info=dict(description="A numeric ID"))
     identifier = Column(Unicode(24), nullable=False,
         info=dict(description="Identifier of the flag", format='identifier'))
@@ -568,7 +568,7 @@ class ItemFlavorText(TableBase):
         info=dict(description="The ID of the item"))
     version_group_id = Column(Integer, ForeignKey('version_groups.id'), primary_key=True, autoincrement=False, nullable=False,
         info=dict(description="ID of the version group that sports this text"))
-    language_id = Column(Integer, ForeignKey('languages.id'), primary_key=True, nullable=False, autoincrement=False,
+    language_id = Column(Integer, ForeignKey('languages.id'), primary_key=True, nullable=False,
         info=dict(description="The language"))
     flavor_text = Column(Unicode(255), nullable=False,
         info=dict(description="The flavor text itself", official=True, format='gametext'))
@@ -578,7 +578,7 @@ class ItemFlingEffect(TableBase):
     """
     __tablename__ = 'item_fling_effects'
     __singlename__ = 'item_fling_effect'
-    id = Column(Integer, primary_key=True, nullable=False, autoincrement=False,
+    id = Column(Integer, primary_key=True, nullable=False,
         info=dict(description="A numeric ID"))
 
 create_translation_table('item_fling_effect_prose', ItemFlingEffect, 'prose',
@@ -602,7 +602,7 @@ class ItemPocket(TableBase):
     """
     __tablename__ = 'item_pockets'
     __singlename__ = 'item_pocket'
-    id = Column(Integer, primary_key=True, nullable=False, autoincrement=False,
+    id = Column(Integer, primary_key=True, nullable=False,
         info=dict(description="A numeric ID"))
     identifier = Column(Unicode(16), nullable=False,
         info=dict(description="An identifier of this pocket", format='identifier'))
@@ -618,7 +618,7 @@ class Location(TableBase):
     """
     __tablename__ = 'locations'
     __singlename__ = 'location'
-    id = Column(Integer, primary_key=True, nullable=False, autoincrement=False,
+    id = Column(Integer, primary_key=True, nullable=False,
         info=dict(description="A numeric ID"))
     region_id = Column(Integer, ForeignKey('regions.id'),
         info=dict(description="ID of the region this location is in"))
@@ -636,7 +636,7 @@ class LocationArea(TableBase):
     """
     __tablename__ = 'location_areas'
     __singlename__ = 'location_area'
-    id = Column(Integer, primary_key=True, nullable=False, autoincrement=False,
+    id = Column(Integer, primary_key=True, nullable=False,
         info=dict(description="A numeric ID"))
     location_id = Column(Integer, ForeignKey('locations.id'), nullable=False,
         info=dict(description="ID of the location this area is part of"))
@@ -656,8 +656,8 @@ class LocationAreaEncounterRate(TableBase):
     __tablename__ = 'location_area_encounter_rates'
     location_area_id = Column(Integer, ForeignKey('location_areas.id'), primary_key=True, nullable=False, autoincrement=False,
         info=dict(description="ID of the area"))
-    encounter_terrain_id = Column(Integer, ForeignKey('encounter_terrain.id'), primary_key=True, nullable=False, autoincrement=False,
-        info=dict(description="ID of the terrain"))
+    encounter_method_id = Column(Integer, ForeignKey('encounter_methods.id'), primary_key=True, nullable=False, autoincrement=False,
+        info=dict(description="ID of the method"))
     version_id = Column(Integer, ForeignKey('versions.id'), primary_key=True, autoincrement=False,
         info=dict(description="ID of the version"))
     rate = Column(Integer, nullable=True,
@@ -667,11 +667,11 @@ class LocationGameIndex(TableBase):
     u"""IDs the games use internally for locations
     """
     __tablename__ = 'location_game_indices'
-    location_id = Column(Integer, ForeignKey('locations.id'), nullable=False, primary_key=True, autoincrement=False,
+    location_id = Column(Integer, ForeignKey('locations.id'), nullable=False, primary_key=True,
         info=dict(description="Database ID of the locaion"))
-    generation_id = Column(Integer, ForeignKey('generations.id'), nullable=False, primary_key=True, autoincrement=False,
+    generation_id = Column(Integer, ForeignKey('generations.id'), nullable=False, primary_key=True,
         info=dict(description="ID of the generation this entry to"))
-    game_index = Column(Integer, nullable=False,
+    game_index = Column(Integer, nullable=False, primary_key=True, autoincrement=False,
         info=dict(description="Internal game ID of the location"))
 
 class Machine(TableBase):
@@ -698,7 +698,7 @@ class Move(TableBase):
     """
     __tablename__ = 'moves'
     __singlename__ = 'move'
-    id = Column(Integer, primary_key=True, nullable=False, autoincrement=False,
+    id = Column(Integer, primary_key=True, nullable=False,
         info=dict(description="A numeric ID"))
     identifier = Column(Unicode(24), nullable=False,
         info=dict(description="An identifier", format='identifier'))
@@ -743,7 +743,7 @@ class MoveBattleStyle(TableBase):
     u"""A battle style of a move"""  # XXX: Explain better
     __tablename__ = 'move_battle_styles'
     __singlename__ = 'move_battle_style'
-    id = Column(Integer, primary_key=True, nullable=False, autoincrement=False,
+    id = Column(Integer, primary_key=True, nullable=False,
         info=dict(description="A numeric ID"))
     identifier = Column(Unicode(8), nullable=False,
         info=dict(description="An identifier", format='identifier'))
@@ -758,9 +758,9 @@ class MoveChangelog(TableBase):
     """History of changes to moves across main game versions."""
     __tablename__ = 'move_changelog'
     __singlename__ = 'move_changelog'
-    move_id = Column(Integer, ForeignKey('moves.id'), primary_key=True, nullable=False, autoincrement=False,
+    move_id = Column(Integer, ForeignKey('moves.id'), primary_key=True, nullable=False,
         info=dict(description="ID of the move that changed"))
-    changed_in_version_group_id = Column(Integer, ForeignKey('version_groups.id'), primary_key=True, nullable=False, autoincrement=False,
+    changed_in_version_group_id = Column(Integer, ForeignKey('version_groups.id'), primary_key=True, nullable=False,
         info=dict(description="ID of the version group in which the move changed"))
     type_id = Column(Integer, ForeignKey('types.id'), nullable=True,
         info=dict(description="Prior type of the move, or NULL if unchanged"))
@@ -780,7 +780,7 @@ class MoveDamageClass(TableBase):
     """
     __tablename__ = 'move_damage_classes'
     __singlename__ = 'move_damage_class'
-    id = Column(Integer, primary_key=True, nullable=False, autoincrement=False,
+    id = Column(Integer, primary_key=True, nullable=False,
         info=dict(description="A numeric ID"))
     identifier = Column(Unicode(16), nullable=False,
         info=dict(description="An identifier", format='identifier'))
@@ -798,7 +798,7 @@ class MoveEffect(TableBase):
     """
     __tablename__ = 'move_effects'
     __singlename__ = 'move_effect'
-    id = Column(Integer, primary_key=True, nullable=False, autoincrement=False,
+    id = Column(Integer, primary_key=True, nullable=False,
         info=dict(description="A numeric ID"))
 
 create_translation_table('move_effect_prose', MoveEffect, 'prose',
@@ -813,7 +813,7 @@ class MoveEffectCategory(TableBase):
     """
     __tablename__ = 'move_effect_categories'
     __singlename__ = 'move_effect_category'
-    id = Column(Integer, primary_key=True, nullable=False, autoincrement=False,
+    id = Column(Integer, primary_key=True, nullable=False,
         info=dict(description="A numeric ID"))
     identifier = Column(Unicode(64), nullable=False,
         info=dict(description="An identifier", format='identifier'))
@@ -829,18 +829,18 @@ class MoveEffectCategoryMap(TableBase):
     u"""Maps a move effect category to a move effect
     """
     __tablename__ = 'move_effect_category_map'
-    move_effect_id = Column(Integer, ForeignKey('move_effects.id'), primary_key=True, nullable=False, autoincrement=False,
+    move_effect_id = Column(Integer, ForeignKey('move_effects.id'), primary_key=True, nullable=False,
         info=dict(description="ID of the move effect"))
-    move_effect_category_id = Column(Integer, ForeignKey('move_effect_categories.id'), primary_key=True, nullable=False, autoincrement=False,
+    move_effect_category_id = Column(Integer, ForeignKey('move_effect_categories.id'), primary_key=True, nullable=False,
         info=dict(description="ID of the category"))
-    affects_user = Column(Boolean, primary_key=True, nullable=False, autoincrement=False,
+    affects_user = Column(Boolean, primary_key=True, nullable=False,
         info=dict(description="Set if the user is affected"))
 
 class MoveEffectChangelog(TableBase):
     """History of changes to move effects across main game versions."""
     __tablename__ = 'move_effect_changelog'
     __singlename__ = 'move_effect_changelog'
-    id = Column(Integer, primary_key=True, nullable=False, autoincrement=False,
+    id = Column(Integer, primary_key=True, nullable=False,
         info=dict(description="A numeric ID"))
     effect_id = Column(Integer, ForeignKey('move_effects.id'), nullable=False,
         info=dict(description="The ID of the effect that changed"))
@@ -873,7 +873,7 @@ class MoveFlagType(TableBase):
     """
     __tablename__ = 'move_flag_types'
     __singlename__ = 'move_flag_type'
-    id = Column(Integer, primary_key=True, nullable=False, autoincrement=False,
+    id = Column(Integer, primary_key=True, nullable=False,
         info=dict(description="A numeric ID"))
     identifier = Column(Unicode(32), nullable=False,
         info=dict(description="A short identifier for the flag", format='identifier'))
@@ -895,7 +895,7 @@ class MoveFlavorText(TableBase):
         info=dict(description="ID of the move"))
     version_group_id = Column(Integer, ForeignKey('version_groups.id'), primary_key=True, nullable=False, autoincrement=False,
         info=dict(description="ID of the version group this text appears in"))
-    language_id = Column(Integer, ForeignKey('languages.id'), primary_key=True, nullable=False, autoincrement=False,
+    language_id = Column(Integer, ForeignKey('languages.id'), primary_key=True, nullable=False,
         info=dict(description="The language"))
     flavor_text = Column(Unicode(255), nullable=False,
         info=dict(description="The flavor text", official=True, format='gametext'))
@@ -951,7 +951,7 @@ class MoveMetaCategory(TableBase):
     u"""Very general categories that loosely group move effects."""
     __tablename__ = 'move_meta_categories'
     __singlename__ = 'move_meta_category'
-    id = Column(Integer, primary_key=True, nullable=False, autoincrement=False,
+    id = Column(Integer, primary_key=True, nullable=False,
         info=dict(description="A numeric ID"))
 
 create_translation_table('move_meta_category_prose', MoveMetaCategory, 'prose',
@@ -975,7 +975,7 @@ class MoveTarget(TableBase):
     """
     __tablename__ = 'move_targets'
     __singlename__ = 'move_target'
-    id = Column(Integer, primary_key=True, nullable=False, autoincrement=False,
+    id = Column(Integer, primary_key=True, nullable=False,
         info=dict(description="A numeric ID"))
     identifier = Column(Unicode(32), nullable=False,
         info=dict(description="An identifier", format='identifier'))
@@ -993,7 +993,7 @@ class Nature(TableBase):
     """
     __tablename__ = 'natures'
     __singlename__ = 'nature'
-    id = Column(Integer, primary_key=True, nullable=False, autoincrement=False,
+    id = Column(Integer, primary_key=True, nullable=False,
         info=dict(description="A numeric ID"))
     identifier = Column(Unicode(8), nullable=False,
         info=dict(description="An identifier", format='identifier'))
@@ -1026,9 +1026,9 @@ class NatureBattleStylePreference(TableBase):
     a particular battl style in Battle Palace or Battle Tent
     """
     __tablename__ = 'nature_battle_style_preferences'
-    nature_id = Column(Integer, ForeignKey('natures.id'), primary_key=True, nullable=False, autoincrement=False,
+    nature_id = Column(Integer, ForeignKey('natures.id'), primary_key=True, nullable=False,
         info=dict(description=u"ID of the Pokémon's nature"))
-    move_battle_style_id = Column(Integer, ForeignKey('move_battle_styles.id'), primary_key=True, nullable=False, autoincrement=False,
+    move_battle_style_id = Column(Integer, ForeignKey('move_battle_styles.id'), primary_key=True, nullable=False,
         info=dict(description="ID of the battle style"))
     low_hp_preference = Column(Integer, nullable=False,
         info=dict(description=u"Chance of using the move, in percent, if HP is under ½"))
@@ -1039,9 +1039,9 @@ class NaturePokeathlonStat(TableBase):
     u"""Specifies how a Nature affects a Pokéathlon stat
     """
     __tablename__ = 'nature_pokeathlon_stats'
-    nature_id = Column(Integer, ForeignKey('natures.id'), primary_key=True, nullable=False, autoincrement=False,
+    nature_id = Column(Integer, ForeignKey('natures.id'), primary_key=True, nullable=False,
         info=dict(description="ID of the nature"))
-    pokeathlon_stat_id = Column(Integer, ForeignKey('pokeathlon_stats.id'), primary_key=True, nullable=False, autoincrement=False,
+    pokeathlon_stat_id = Column(Integer, ForeignKey('pokeathlon_stats.id'), primary_key=True, nullable=False,
         info=dict(description="ID of the stat"))
     max_change = Column(Integer, nullable=False,
         info=dict(description="Maximum change"))
@@ -1051,7 +1051,7 @@ class PokeathlonStat(TableBase):
     """
     __tablename__ = 'pokeathlon_stats'
     __singlename__ = 'pokeathlon_stat'
-    id = Column(Integer, primary_key=True, nullable=False, autoincrement=False,
+    id = Column(Integer, primary_key=True, nullable=False,
         info=dict(description="A numeric ID"))
     identifier = Column(Unicode(8), nullable=False,
         info=dict(description="An identifier", format='identifier'))
@@ -1066,7 +1066,7 @@ class Pokedex(TableBase):
     """
     __tablename__ = 'pokedexes'
     __singlename__ = 'pokedex'
-    id = Column(Integer, primary_key=True, nullable=False, autoincrement=False,
+    id = Column(Integer, primary_key=True, nullable=False,
         info=dict(description="A numeric ID"))
     region_id = Column(Integer, ForeignKey('regions.id'), nullable=True,
         info=dict(description=u"ID of the region this Pokédex is used in, or None if it's global"))
@@ -1086,7 +1086,7 @@ class Pokemon(TableBase):
     """
     __tablename__ = 'pokemon'
     __singlename__ = 'pokemon'
-    id = Column(Integer, primary_key=True, nullable=False, autoincrement=False,
+    id = Column(Integer, primary_key=True, nullable=False,
         info=dict(description=u"A numeric ID"))
     identifier = Column(Unicode(20), nullable=False,
         info=dict(description=u"An identifier", format='identifier'))
@@ -1153,7 +1153,7 @@ class Pokemon(TableBase):
         u"""Returns the Pokémon's name, including its form if applicable."""
 
         if self.form_name:
-            return u'{0} {1}'.format(self.form_name, self.name)
+            return u'%s %s' % (self.form_name, self.name)
         else:
             return self.name
 
@@ -1315,7 +1315,7 @@ class PokemonFlavorText(TableBase):
         info=dict(description=u"ID of the Pokémon"))
     version_id = Column(Integer, ForeignKey('versions.id'), primary_key=True, nullable=False, autoincrement=False,
         info=dict(description=u"ID of the version that has this flavor text"))
-    language_id = Column(Integer, ForeignKey('languages.id'), primary_key=True, nullable=False, autoincrement=False,
+    language_id = Column(Integer, ForeignKey('languages.id'), primary_key=True, nullable=False,
         info=dict(description="The language"))
     flavor_text = Column(Unicode(255), nullable=False,
         info=dict(description=u"The flavor text", official=True, format='gametext'))
@@ -1328,7 +1328,7 @@ class PokemonForm(TableBase):
     """
     __tablename__ = 'pokemon_forms'
     __singlename__ = 'pokemon_form'
-    id = Column(Integer, primary_key=True, nullable=False, autoincrement=False,
+    id = Column(Integer, primary_key=True, nullable=False,
         info=dict(description=u'A unique ID for this form.'))
     identifier = Column(Unicode(16), nullable=True,
         info=dict(description=u"An identifier", format='identifier'))
@@ -1357,7 +1357,7 @@ class PokemonForm(TableBase):
         if not self.name:
             return None
         elif self.form_group and self.form_group.term:
-            return u'{0} {1}'.format(self.name, self.form_group.term)
+            return u'%s %s' % (self.name, self.form_group.term)
         else:
             return self.name
 
@@ -1368,7 +1368,7 @@ class PokemonForm(TableBase):
         """
 
         if self.name:
-            return u'{0} {1}'.format(self.name, self.form_base_pokemon.name)
+            return u'%s %s' % (self.name, self.form_base_pokemon.name)
         else:
             return self.form_base_pokemon.name
 
@@ -1495,7 +1495,7 @@ class PokemonShape(TableBase):
     """
     __tablename__ = 'pokemon_shapes'
     __singlename__ = 'pokemon_shape'
-    id = Column(Integer, primary_key=True, nullable=False, autoincrement=False,
+    id = Column(Integer, primary_key=True, nullable=False,
         info=dict(description=u"A numeric ID"))
     identifier = Column(Unicode(24), nullable=False,
         info=dict(description=u"An identifier", format='identifier'))
@@ -1537,7 +1537,7 @@ class Region(TableBase):
     """
     __tablename__ = 'regions'
     __singlename__ = 'region'
-    id = Column(Integer, primary_key=True, nullable=False, autoincrement=False,
+    id = Column(Integer, primary_key=True, nullable=False,
         info=dict(description=u"A numeric ID"))
     identifier = Column(Unicode(16), nullable=False,
         info=dict(description=u"An identifier", format='identifier'))
@@ -1553,7 +1553,7 @@ class Stat(TableBase):
     """
     __tablename__ = 'stats'
     __singlename__ = 'stat'
-    id = Column(Integer, primary_key=True, nullable=False, autoincrement=False,
+    id = Column(Integer, primary_key=True, nullable=False,
         info=dict(description=u"A numeric ID"))
     damage_class_id = Column(Integer, ForeignKey('move_damage_classes.id'), nullable=True,
         info=dict(description=u"For offensive and defensive stats, the damage this stat relates to; otherwise None (the NULL value)"))
@@ -1574,7 +1574,7 @@ class StatHint(TableBase):
     """
     __tablename__ = 'stat_hints'
     __singlename__ = 'stat_hint'
-    id = Column(Integer, primary_key=True, nullable=False, autoincrement=False,
+    id = Column(Integer, primary_key=True, nullable=False,
         info=dict(description=u"A numeric ID"))
     stat_id = Column(Integer, ForeignKey('stats.id'), nullable=False,
         info=dict(description=u"ID of the highest stat"))
@@ -1601,7 +1601,7 @@ class SuperContestEffect(TableBase):
     """
     __tablename__ = 'super_contest_effects'
     __singlename__ = 'super_contest_effect'
-    id = Column(Integer, primary_key=True, nullable=False, autoincrement=False,
+    id = Column(Integer, primary_key=True, nullable=False,
         info=dict(description=u"This effect's unique ID."))
     appeal = Column(SmallInteger, nullable=False,
         info=dict(description=u"The number of hearts the user gains."))
@@ -1615,7 +1615,7 @@ class Type(TableBase):
     u"""Any of the elemental types Pokémon and moves can have."""
     __tablename__ = 'types'
     __singlename__ = 'type'
-    id = Column(Integer, primary_key=True, nullable=False, autoincrement=False,
+    id = Column(Integer, primary_key=True, nullable=False,
         info=dict(description=u"A unique ID for this type."))
     identifier = Column(Unicode(12), nullable=False,
         info=dict(description=u"An identifier", format='identifier'))
@@ -1646,7 +1646,7 @@ class Version(TableBase):
     u"""An individual main-series Pokémon game."""
     __tablename__ = 'versions'
     __singlename__ = 'version'
-    id = Column(Integer, primary_key=True, nullable=False, autoincrement=False,
+    id = Column(Integer, primary_key=True, nullable=False,
         info=dict(description=u"A unique ID for this version."))
     version_group_id = Column(Integer, ForeignKey('version_groups.id'), nullable=False,
         info=dict(description=u"The ID of the version group this game belongs to."))
@@ -1664,7 +1664,7 @@ class VersionGroup(TableBase):
     and Blue) or a single game (such as Yellow.)
     """
     __tablename__ = 'version_groups'
-    id = Column(Integer, primary_key=True, nullable=False, autoincrement=False,
+    id = Column(Integer, primary_key=True, nullable=False,
         info=dict(description=u"This version group's unique ID."))
     generation_id = Column(Integer, ForeignKey('generations.id'), nullable=False,
         info=dict(description=u"The ID of the generation the games in this group belong to."))
@@ -1674,9 +1674,9 @@ class VersionGroup(TableBase):
 class VersionGroupRegion(TableBase):
     u"""Maps a version group to a region that appears in it."""
     __tablename__ = 'version_group_regions'
-    version_group_id = Column(Integer, ForeignKey('version_groups.id'), primary_key=True, nullable=False, autoincrement=False,
+    version_group_id = Column(Integer, ForeignKey('version_groups.id'), primary_key=True, nullable=False,
         info=dict(description=u"The ID of the version group."))
-    region_id = Column(Integer, ForeignKey('regions.id'), primary_key=True, nullable=False, autoincrement=False,
+    region_id = Column(Integer, ForeignKey('regions.id'), primary_key=True, nullable=False,
         info=dict(description=u"The ID of the region."))
 
 
@@ -1747,7 +1747,7 @@ EncounterConditionValueMap.condition_value = relation(EncounterConditionValue,
     innerjoin=True, lazy='joined',
     backref='encounter_map')
 
-EncounterSlot.terrain = relation(EncounterTerrain,
+EncounterSlot.method = relation(EncounterMethod,
     innerjoin=True, lazy='joined',
     backref='slots')
 EncounterSlot.version_group = relation(VersionGroup, innerjoin=True)
@@ -1824,6 +1824,12 @@ LocationArea.location = relation(Location,
     innerjoin=True, lazy='joined',
     backref='areas')
 
+LocationAreaEncounterRate.location_area = relation(LocationArea,
+    innerjoin=True,
+    backref='encounter_rates')
+LocationAreaEncounterRate.method = relation(EncounterMethod,
+    innerjoin=True)
+
 LocationGameIndex.location = relation(Location,
     innerjoin=True, lazy='joined',
     backref='game_indices')
index 7321291..b2b0adf 100644 (file)
@@ -1,13 +1,13 @@
 """ pokedex.defaults - logic for finding default paths """
 
 import os
-import pkg_resources
 
 def get_default_db_uri_with_origin():
     uri = os.environ.get('POKEDEX_DB_ENGINE', None)
     origin = 'environment'
 
     if uri is None:
+        import pkg_resources
         sqlite_path = pkg_resources.resource_filename('pokedex',
                                                       'data/pokedex.sqlite')
         uri = 'sqlite:///' + sqlite_path
@@ -20,6 +20,7 @@ def get_default_index_dir_with_origin():
     origin = 'environment'
 
     if index_dir is None:
+        import pkg_resources
         index_dir = pkg_resources.resource_filename('pokedex',
                                                     'data/whoosh-index')
         origin = 'default'
@@ -27,6 +28,7 @@ def get_default_index_dir_with_origin():
     return index_dir, origin
 
 def get_default_csv_dir_with_origin():
+    import pkg_resources
     csv_dir = pkg_resources.resource_filename('pokedex', 'data/csv')
     origin = 'default'
 
diff --git a/pokedex/main.py b/pokedex/main.py
new file mode 100644 (file)
index 0000000..abd4597
--- /dev/null
@@ -0,0 +1,292 @@
+# encoding: utf8
+from optparse import OptionParser
+import os
+import sys
+
+import pokedex.db
+import pokedex.db.load
+import pokedex.db.tables
+import pokedex.lookup
+from pokedex import defaults
+
+def main():
+    if len(sys.argv) <= 1:
+        command_help()
+
+    command = sys.argv[1]
+    args = sys.argv[2:]
+
+    # XXX there must be a better way to get Unicode argv
+    # XXX this doesn't work on Windows durp
+    enc = sys.stdin.encoding or 'utf8'
+    args = [_.decode(enc) for _ in args]
+
+    # Find the command as a function in this file
+    func = globals().get("command_%s" % command, None)
+    if func:
+        func(*args)
+    else:
+        command_help()
+
+
+def get_parser(verbose=True):
+    """Returns an OptionParser prepopulated with the global options.
+
+    `verbose` is whether or not the options should be verbose by default.
+    """
+    parser = OptionParser()
+    parser.add_option('-e', '--engine', dest='engine_uri', default=None)
+    parser.add_option('-i', '--index', dest='index_dir', default=None)
+    parser.add_option('-q', '--quiet', dest='verbose', default=verbose, action='store_false')
+    parser.add_option('-v', '--verbose', dest='verbose', default=verbose, action='store_true')
+    return parser
+
+def get_session(options):
+    """Given a parsed options object, connects to the database and returns a
+    session.
+    """
+
+    engine_uri = options.engine_uri
+    got_from = 'command line'
+
+    if engine_uri is None:
+        engine_uri, got_from = defaults.get_default_db_uri_with_origin()
+
+    session = pokedex.db.connect(engine_uri)
+
+    if options.verbose:
+        print "Connected to database %(engine)s (from %(got_from)s)" \
+            % dict(engine=session.bind.url, got_from=got_from)
+
+    return session
+
+def get_lookup(options, session=None, recreate=False):
+    """Given a parsed options object, opens the whoosh index and returns a
+    PokedexLookup object.
+    """
+
+    if recreate and not session:
+        raise ValueError("get_lookup() needs an explicit session to regen the index")
+
+    index_dir = options.index_dir
+    got_from = 'command line'
+
+    if index_dir is None:
+        index_dir, got_from = defaults.get_default_index_dir_with_origin()
+
+    if options.verbose:
+        print "Opened lookup index %(index_dir)s (from %(got_from)s)" \
+            % dict(index_dir=index_dir, got_from=got_from)
+
+    lookup = pokedex.lookup.PokedexLookup(index_dir, session=session)
+
+    if recreate:
+        lookup.rebuild_index()
+
+    return lookup
+
+def get_csv_directory(options):
+    """Prints and returns the csv directory we're about to use."""
+
+    if not options.verbose:
+        return
+
+    csvdir = options.directory
+    got_from = 'command line'
+
+    if csvdir is None:
+        csvdir, got_from = defaults.get_default_csv_dir_with_origin()
+
+    print "Using CSV directory %(csvdir)s (from %(got_from)s)" \
+        % dict(csvdir=csvdir, got_from=got_from)
+
+    return csvdir
+
+
+### Plumbing commands
+
+def command_dump(*args):
+    parser = get_parser(verbose=True)
+    parser.add_option('-d', '--directory', dest='directory', default=None)
+    options, tables = parser.parse_args(list(args))
+
+    session = get_session(options)
+    get_csv_directory(options)
+
+    pokedex.db.load.dump(session, directory=options.directory,
+                                  tables=tables,
+                                  verbose=options.verbose)
+
+def command_load(*args):
+    parser = get_parser(verbose=True)
+    parser.add_option('-d', '--directory', dest='directory', default=None)
+    parser.add_option('-D', '--drop-tables', dest='drop_tables', default=False, action='store_true')
+    parser.add_option('-r', '--recursive', dest='recursive', default=False, action='store_true')
+    parser.add_option('-S', '--safe', dest='safe', default=False, action='store_true',
+        help="Do not use backend-specific optimalizations.")
+    options, tables = parser.parse_args(list(args))
+
+    if not options.engine_uri:
+        print "WARNING: You're reloading the default database, but not the lookup index.  They"
+        print "         might get out of sync, and pokedex commands may not work correctly!"
+        print "To fix this, run `pokedex reindex` when this command finishes.  Or, just use"
+        print "`pokedex setup` to do both at once."
+        print
+
+    session = get_session(options)
+    get_csv_directory(options)
+
+    pokedex.db.load.load(session, directory=options.directory,
+                                  drop_tables=options.drop_tables,
+                                  tables=tables,
+                                  verbose=options.verbose,
+                                  safe=options.safe,
+                                  recursive=options.recursive)
+
+def command_reindex(*args):
+    parser = get_parser(verbose=True)
+    options, _ = parser.parse_args(list(args))
+
+    session = get_session(options)
+    lookup = get_lookup(options, session=session, recreate=True)
+
+    print "Recreated lookup index."
+
+
+def command_setup(*args):
+    parser = get_parser(verbose=False)
+    options, _ = parser.parse_args(list(args))
+
+    options.directory = None
+
+    session = get_session(options)
+    get_csv_directory(options)
+    pokedex.db.load.load(session, directory=None, drop_tables=True,
+                                  verbose=options.verbose,
+                                  safe=False)
+
+    lookup = get_lookup(options, session=session, recreate=True)
+
+    print "Recreated lookup index."
+
+
+def command_status(*args):
+    parser = get_parser(verbose=True)
+    options, _ = parser.parse_args(list(args))
+    options.verbose = True
+    options.directory = None
+
+    # Database, and a lame check for whether it's been inited at least once
+    session = get_session(options)
+    print "  - OK!  Connected successfully."
+
+    if pokedex.db.tables.Pokemon.__table__.exists(session.bind):
+        print "  - OK!  Database seems to contain some data."
+    else:
+        print "  - WARNING: Database appears to be empty."
+
+    # CSV; simple checks that the dir exists
+    csvdir = get_csv_directory(options)
+    if not os.path.exists(csvdir):
+        print "  - ERROR: No such directory!"
+    elif not os.path.isdir(csvdir):
+        print "  - ERROR: Not a directory!"
+    else:
+        print "  - OK!  Directory exists."
+
+        if os.access(csvdir, os.R_OK):
+            print "  - OK!  Can read from directory."
+        else:
+            print "  - ERROR: Can't read from directory!"
+
+        if os.access(csvdir, os.W_OK):
+            print "  - OK!  Can write to directory."
+        else:
+            print "  - WARNING: Can't write to directory!  " \
+                "`dump` will not work.  You may need to sudo."
+
+    # Index; the PokedexLookup constructor covers most tests and will
+    # cheerfully bomb if they fail
+    lookup = get_lookup(options, recreate=False)
+    print "  - OK!  Opened successfully."
+
+
+### User-facing commands
+
+def command_lookup(*args):
+    parser = get_parser(verbose=False)
+    options, words = parser.parse_args(list(args))
+
+    name = u' '.join(words)
+
+    session = get_session(options)
+    lookup = get_lookup(options, session=session, recreate=False)
+
+    results = lookup.lookup(name)
+    if not results:
+        print "No matches."
+    elif results[0].exact:
+        print "Matched:"
+    else:
+        print "Fuzzy-matched:"
+
+    for result in results:
+        if hasattr(result.object, 'full_name'):
+            name = result.object.full_name
+        else:
+            name = result.object.name
+
+        print "%s: %s" % (result.object.__tablename__, name),
+        if result.language:
+            print "(%s in %s)" % (result.name, result.language)
+        else:
+            print
+
+
+def command_help():
+    print u"""pokedex -- a command-line Pokédex interface
+usage: pokedex {command} [options...]
+Run `pokedex setup` first, or nothing will work!
+See http://bugs.veekun.com/projects/pokedex/wiki/CLI for more documentation.
+
+Commands:
+    help                Displays this message.
+    lookup [thing]      Look up something in the Pokédex.
+
+System commands:
+    load                Load Pokédex data into a database from CSV files.
+    dump                Dump Pokédex data from a database into CSV files.
+    reindex             Rebuilds the lookup index from the database.
+    setup               Combines load and reindex.
+    status              No effect, but prints which engine, index, and csv
+                        directory would be used for other commands.
+
+Global options:
+    -e|--engine=URI     By default, all commands try to use a SQLite database
+                        in the pokedex install directory.  Use this option (or
+                        a POKEDEX_DB_ENGINE environment variable) to specify an
+                        alternate database.
+    -i|--index=DIR      By default, all commands try to put the lookup index in
+                        the pokedex install directory.  Use this option (or a
+                        POKEDEX_INDEX_DIR environment variable) to specify an
+                        alternate loction.
+    -q|--quiet          Don't print system output.  This is the default for
+                        non-system commands and setup.
+    -v|--verbose        Print system output.  This is the default for system
+                        commands, except setup.
+
+System options:
+    -d|--directory=DIR  By default, load and dump will use the CSV files in the
+                        pokedex install directory.  Use this option to specify
+                        a different directory.
+
+Load options:
+    -D|--drop-tables    Drop all tables before loading data.
+    -S|--safe           Disable engine-specific optimizations.
+    -r|--recursive      Load (and drop) all dependent tables.
+
+    Additionally, load and dump accept a list of table names (possibly with
+    wildcards) and/or csv fileames as an argument list.
+""".encode(sys.getdefaultencoding(), 'replace')
+
+    sys.exit(0)
index 5231259..d9aec70 100644 (file)
@@ -145,4 +145,3 @@ except ImportError:
             pass
 
         return result
-
diff --git a/scripts/add-bw-locations.py b/scripts/add-bw-locations.py
new file mode 100755 (executable)
index 0000000..5f031a0
--- /dev/null
@@ -0,0 +1,49 @@
+#!/usr/bin/env python2
+
+from codecs import open
+
+from pokedex.db import connect, identifier_from_name
+from pokedex.db.tables import Language
+from pokedex.db.tables import Location, LocationGameIndex
+
+session = connect()
+
+en = session.query(Language).filter_by(identifier='en').one() # English
+ja = session.query(Language).filter_by(identifier='ja').one() # Japanese
+
+with open("bw-location-names-en", "r", "utf-8") as f:
+    en_names = [line.rstrip("\n") for line in f]
+with open("bw-location-names-kanji", "r", "utf-8") as f:
+    ja_names = [line.rstrip("\n") for line in f]
+
+locations = {}
+for i, name in enumerate(zip(en_names, ja_names)):
+    if i == 0:
+        continue
+
+    en_name, ja_name = name
+    if not en_name:
+        continue
+
+    if name in locations:
+        loc = locations[name]
+    else:
+        loc = Location()
+        if en_name:
+            loc.name_map[en] = en_name
+        if ja_name:
+            loc.name_map[ja] = ja_name
+        loc.region_id = 5 # Unova
+        loc.identifier = identifier_from_name(en_name)
+
+        locations[name] = loc
+
+    lgi = LocationGameIndex()
+    lgi.location = loc
+    lgi.generation_id = 5 # Gen 5
+    lgi.game_index = i
+
+    session.add(loc)
+    session.add(lgi)
+
+session.commit()
diff --git a/scripts/migration-i18n.py b/scripts/migration-i18n.py
new file mode 100644 (file)
index 0000000..4c1f99c
--- /dev/null
@@ -0,0 +1,272 @@
+# Encoding: UTF-8
+
+"""Moves/transforms values in CSVs in an ad-hoc way, based mainly on column name
+
+Auto-creates identifiers from names
+Auto-creates names from identifiers
+Copies IDs for foreign keys
+Creates autoincrement-style IDs when missing
+Sets text language to 9 (en), except when it sets to 1 (jp)
+
+And looks good doing it!
+"""
+
+import csv
+import re
+import os
+from StringIO import StringIO
+from collections import namedtuple, defaultdict
+
+from sqlalchemy.orm import class_mapper
+
+from pokedex.db import tables, load
+
+english_id = 9
+japanese_id = 1
+
+bw_version_group_id = 11
+
+dir = load.get_default_csv_dir()
+
+def tuple_key(tup):
+    """Return a sort key for mixed int/string tuples.
+
+    Strings sort first.
+    """
+    def generator():
+        for item in tup:
+            try:
+                yield (1, int(item))
+            except ValueError:
+                yield (0, item)
+    return tuple(generator())
+
+class MakeFieldFuncs:
+    """Various ways to get a new value from the old one"""
+    @staticmethod
+    def copy(field_name, source, **kwargs):
+        """Plain copy"""
+        return source[field_name]
+
+    @staticmethod
+    def main(field_name, source, **kwargs):
+        """Populate aux table from the main table"""
+        return source[field_name]
+
+    @staticmethod
+    def Main(field_name, source, **kwargs):
+        """Capitalize"""
+        return source[field_name].capitalize()
+
+    @staticmethod
+    def ident(source, **kwargs):
+        """Craft an identifier from the 'identifier' or 'name' column"""
+        return name2ident(source.get('identifier', source.get('name')))
+
+    @staticmethod
+    def Name(source, **kwargs):
+        """Capitalize the name (or identifier) column"""
+        name = source.get('name', source.get('identifier', None))
+        name = ' '.join(word.capitalize() for word in name.split(' '))
+        return name
+
+    @staticmethod
+    def f_id(source, **kwargs):
+        """Capitalize the identifier column"""
+        return source['identifier'].capitalize()
+
+    @staticmethod
+    def name(source, **kwargs):
+        """Get the original name"""
+        return source['name']
+
+    @staticmethod
+    def newid(i, source, **kwargs):
+        """Assign a new "auto-incremented" id"""
+        source['id'] = i  # hack to make srcid work
+        return i
+
+    @staticmethod
+    def en(source, **kwargs):
+        """Assign the value for English -- unless it's Japanese"""
+        if source.get('version_group_id', None) == str(bw_version_group_id):
+            return japanese_id
+        return english_id
+
+    @staticmethod
+    def srcid(source, field_name, **kwargs):
+        """The original table's id"""
+        try:
+            return source['id']
+        except KeyError:
+            if field_name == 'pokemon_form_group_id':
+                # This one reuses another table's ID
+                return source['pokemon_id']
+            else:
+                raise
+
+def name2ident(name):
+    ident = name.decode('utf-8').lower()
+    ident = ident.replace(u'+', ' plus ')
+    ident = re.sub(u'[ _–]+', u'-', ident)
+    ident = re.sub(u'[\'./;’(),:]', u'', ident)
+    ident = ident.replace(u'é', 'e')
+    ident = ident.replace(u'♀', '-f')
+    ident = ident.replace(u'♂', '-m')
+    if ident in ('???', '????'):
+        ident = 'unknown'
+    elif ident == '!':
+        ident = 'exclamation'
+    elif ident == '?':
+        ident = 'question'
+    for c in ident:
+        assert c in "abcdefghijklmnopqrstuvwxyz0123456789-", repr(ident)
+    return ident
+
+
+FieldSpec = namedtuple('FieldSpec', 'out name func')
+
+def main():
+    for table in sorted(tables.all_tables(), key=lambda t: t.__name__):
+        datafilename = dir + '/' + table.__tablename__ + '.csv'
+        classname = table.__name__
+        if hasattr(table, 'object_table'):
+            # This is an auxilliary table; it'll be processed with the main one
+            continue
+        else:
+            print "%s: %s" % (classname, table.__tablename__)
+        with open(datafilename) as datafile:
+            datacsv = csv.reader(datafile, lineterminator='\n')
+            orig_fields = datacsv.next()
+            columns = class_mapper(table).c
+            new_fields = []
+            main_out = []
+            outputs = {datafilename: main_out}
+            name_out = None
+            srcfiles = [datafilename]
+            # Set new_fields to a list of FieldSpec object, one for each field we want in the csv
+            for column in columns:
+                name = column.name
+                if name == 'identifier':
+                    new_fields.append(FieldSpec(datafilename, column.name, MakeFieldFuncs.ident))
+                elif name in orig_fields:
+                    new_fields.append(FieldSpec(datafilename, column.name, MakeFieldFuncs.copy))
+                elif name == 'id':
+                    new_fields.append(FieldSpec(datafilename, column.name, MakeFieldFuncs.newid))
+                elif name == 'language_id':
+                    new_fields.insert(2, FieldSpec(datafilename, column.name, MakeFieldFuncs.en))
+                else:
+                    raise AssertionError(name)
+            # Remember headers
+            headers = {datafilename: list(field.name for field in new_fields)}
+            # Pretty prnt :)
+            for field in new_fields:
+                print '    [{0.func.func_name:5}] {0.name}'.format(field)
+            # Do pretty much the same for aux tables
+            aux_tables = []
+            for attrname in 'text_table prose_table'.split():
+                aux_table = getattr(table, attrname, None)
+                if aux_table:
+                    aux_datafilename = dir + '/' + aux_table.__tablename__ + '.csv'
+                    print "  %s: %s" % (aux_table.__name__, aux_table.__tablename__)
+                    srcfiles.append(datafilename)
+                    aux_tables.append(aux_table)
+                    columns = class_mapper(aux_table).c
+                    aux_out = []
+                    outputs[aux_datafilename] = aux_out
+                    aux_fields = []
+                    for column in columns:
+                        name = column.name
+                        if name == 'language_id':
+                            aux_fields.insert(1, FieldSpec(aux_datafilename, column.name, MakeFieldFuncs.en))
+                        elif name == 'name' and table.__name__ == 'ItemFlag':
+                            aux_fields.append(FieldSpec(aux_datafilename, column.name, MakeFieldFuncs.f_id))
+                        elif name == 'description' and table.__name__ == 'ItemFlag':
+                            aux_fields.append(FieldSpec(aux_datafilename, column.name, MakeFieldFuncs.name))
+                        elif name in orig_fields and name == 'name' and table.__name__ in 'PokemonColor ContestType BerryFirmness'.split():
+                            # Capitalize these names
+                            aux_fields.append(FieldSpec(aux_datafilename, column.name, MakeFieldFuncs.Name))
+                        elif name in orig_fields and name in 'color flavor'.split() and table.__name__ == 'ContestType':
+                            aux_fields.append(FieldSpec(aux_datafilename, column.name, MakeFieldFuncs.Main))
+                        elif name in orig_fields:
+                            aux_fields.append(FieldSpec(aux_datafilename, column.name, MakeFieldFuncs.main))
+                        elif name == table.__singlename__ + '_id':
+                            aux_fields.append(FieldSpec(aux_datafilename, column.name, MakeFieldFuncs.srcid))
+                        elif name == 'name':
+                            aux_fields.append(FieldSpec(aux_datafilename, column.name, MakeFieldFuncs.Name))
+                        elif name == 'lang_id':
+                            aux_fields.append(FieldSpec(aux_datafilename, column.name, MakeFieldFuncs.srcid))
+                        else:
+                            print orig_fields
+                            raise AssertionError(name)
+                        if name == 'name':
+                            # If this table contains the name, remember that
+                            name_fields = aux_fields
+                            name_out = aux_out
+                    # Sort aux tables nicely
+                    def key(f):
+                        if f.func == MakeFieldFuncs.srcid:
+                            return 0
+                        elif f.name == 'language_id':
+                            return 1
+                        elif f.name == 'name':
+                            return 2
+                        else:
+                            return 10
+                    aux_fields.sort(key=key)
+                    new_fields += aux_fields
+                    headers[aux_datafilename] = list(field.name for field in aux_fields)
+                    # Pretty print :)
+                    for field in aux_fields:
+                        print '    [{0.func.func_name:5}] {0.name}'.format(field)
+            # Do nothing if the table's the same
+            if all(field.func == MakeFieldFuncs.copy for field in new_fields):
+                print u'  → skipping'
+                continue
+            # Otherwise read the file
+            # outputs will be a (filename -> list of rows) dict
+            print u'  → reading'
+            for autoincrement_id, src_row in enumerate(datacsv, start=1):
+                row = dict(zip(orig_fields, src_row))
+                new_rows = defaultdict(list)
+                for field in new_fields:
+                    new_rows[field.out].append(field.func(
+                            source=row,
+                            field_name=field.name,
+                            i=autoincrement_id,
+                        ))
+                for name, row in new_rows.items():
+                    outputs[name].append(row)
+        # If there was a _names table, read that and append it to the
+        # aux table that has names
+        try:
+            name_datafilename = dir + '/' + table.__singlename__ + '_names.csv'
+            name_file = open(name_datafilename)
+        except (AttributeError, IOError):
+            pass
+        else:
+            print u'  → reading foreign names'
+            with name_file:
+                namecsv = csv.reader(name_file, lineterminator='\n')
+                src_fields = namecsv.next()
+                obj_id_fieldname = table.__singlename__ + '_id'
+                assert src_fields == [obj_id_fieldname, 'language_id', 'name']
+                for name_row in namecsv:
+                    name_dict = dict(zip(src_fields, name_row))
+                    row = []
+                    for field in name_fields:
+                        row.append(name_dict.get(field.name, ''))
+                    name_out.append(row)
+            os.unlink(name_datafilename)
+        # For all out files, write a header & sorted rows
+        print u'  → writing'
+        for filename, rows in outputs.items():
+            with open(filename, 'w') as outfile:
+                outcsv = csv.writer(outfile, lineterminator='\n')
+                outcsv.writerow(headers[filename])
+                rows.sort(key=tuple_key)
+                for row in rows:
+                    outcsv.writerow(row)
+
+if __name__ == '__main__':
+    main()
index 7527672..3bc7028 100644 (file)
--- a/setup.py
+++ b/setup.py
@@ -16,7 +16,7 @@ setup(
 
     entry_points = {
         'console_scripts': [
-            'pokedex = pokedex:main',
+            'pokedex = pokedex.main:main',
         ],
     },
 )