Segmentation based on paragraphs (more than just pilcrow signs)

Taking a closer look at the ways in which the texts are structured, we found (a) "paragraphs" to be a promising candidate for segmentation, provided that we do not understand "paragraph" in the typographical sense but as a section of the text that is introduced with a pilcrow sign ("¶"). As second and third criteria for segmentation, we also use (b) daggers and (c) two subsequent capital letters when no pilcrow sign is around. So this is what we try here...

After a revision of the results, we also

  • added headings as being segments of their own
  • added lists (of type "summaries") as being segments of their own

Parse input files, count some key values etc.

We parse what resolved files we find:


In [18]:
import os
import lxml
from lxml import etree

resolved_dir = "./data/processing/10000_resolved"

# we create a dictionary with our editions:
resolved = { os.path.basename(file).split(os.extsep)[0] :
                 (etree.parse(resolved_dir + "/" + file))
                     for file in sorted(os.listdir(resolved_dir))
           }

# and a list of available editions for quick lookup:
editions = list(resolved.keys())

# For now, hard-code languages
language = {}
language['azp1549'] = "pt"
language['azp1552'] = "pt"
language['azp1556'] = "es"
language['azp1573'] = "la"

print ("Parsed {} resolved files: {}".format(len(resolved), editions))


Parsed 4 resolved files: ['azp1549', 'azp1552', 'azp1556', 'azp1573']

Next, we add a switch allowing to specify whether we want to overwrite result files that might exist already:


In [19]:
import ipywidgets as widgets
from ipywidgets import interact # for interactively en-/disabling overwrite

def ow_seg(overwrite_segmented):
    global overwrite_seg
    overwrite_seg = overwrite_segmented
    
if os.listdir('./data/processing/12000_segmented_paragraphs/'):
    overwrite_seg = False
    interact(ow_seg, overwrite_segmented=True)
else:
    overwrite_seg = True



In [20]:
print('Overwrite segmented files?: {}'.format(overwrite_seg))


Overwrite segmented files?: True

Next, to have some diagnostic information, we count milestone and div elements for all editions:


In [21]:
import re

nsmap = {"tei": "http://www.tei-c.org/ns/1.0"}

string_doc = {}
string_reverse_doc = {}

find_divs = etree.XPath("//tei:body/tei:div[@type = 'chapter'][not(@n = '0')]", namespaces=nsmap)
find_ps = etree.XPath("//tei:body/tei:div[not(@n = '0')]//tei:p", namespaces=nsmap)
find_ms = etree.XPath("//tei:body//tei:milestone", namespaces=nsmap)
find_body = etree.XPath("//tei:body", namespaces=nsmap)
                      
# since python negative look*behind* assertions have to be fixed-length,
# we reverse the document and do negative look*ahead* assertions...
find_lone_daggers = re.compile(r'reggad#(?!.{0,100}¶)')  # daggers not preceded by pilcrow within 100 characters
find_lone_ms = re.compile(r'derohcnanu#(?!.{0,100}¶)')   # unanchored milestones not preceded by pilcrow within 100 characters
find_lone_caps = re.compile(r'[A-Z]{2}\b(?!.{0,100}¶)')  # two capital letters not preceded ...

ct_divs = {}
ct_ps = {}
ct_pilcrows = {}
ct_ms = {}
ct_total_daggers = {}
ct_lone_daggers = {}
ct_lone_ms = {}
ct_lone_caps = {}

for ed in resolved:
    ct_divs[ed] = len(find_divs(resolved[ed]))
    ct_ps[ed] = len(find_ps(resolved[ed]))
    ct_ms[ed] = len(find_ms(resolved[ed]))
    
    string_doc[ed] = etree.tostring(find_body(resolved[ed])[0], encoding='utf-8', method='xml').decode('utf-8')
    string_reverse_doc[ed] = string_doc[ed][::-1]
    
    ct_pilcrows[ed] = string_doc[ed].count('¶')
    ct_total_daggers[ed] = string_doc[ed].count('#dagger')
    ct_lone_daggers[ed] = len(find_lone_daggers.findall(string_reverse_doc[ed]))
    ct_lone_ms[ed] = len(find_lone_ms.findall(string_reverse_doc[ed]))
    ct_lone_caps[ed] = len(find_lone_caps.findall(string_reverse_doc[ed]))
    
print ("number of top-level divs[not(@n = '0')]: {}".format(ct_divs))
print ("number of typographical paragraphs (<tei:p>): {}".format(ct_ps))
print ("number of pilcrow signs: {}".format(ct_pilcrows))
print ("number of milestones: {}".format(ct_ms))
print ("number of total daggers: {}".format(ct_total_daggers))
print ("number of standalone daggers: {}".format(ct_lone_daggers))
print ("number of standalone unanchored milestones: {}".format(ct_lone_ms))
print ("number of standalone capital bigrams: {}".format(ct_lone_caps))


number of top-level divs[not(@n = '0')]: {'azp1549': 27, 'azp1552': 27, 'azp1556': 27, 'azp1573': 27}
number of typographical paragraphs (<tei:p>): {'azp1549': 2125, 'azp1552': 1781, 'azp1556': 1072, 'azp1573': 2344}
number of pilcrow signs: {'azp1549': 2019, 'azp1552': 1683, 'azp1556': 1862, 'azp1573': 0}
number of milestones: {'azp1549': 1319, 'azp1552': 1515, 'azp1556': 2094, 'azp1573': 1619}
number of total daggers: {'azp1549': 0, 'azp1552': 806, 'azp1556': 1500, 'azp1573': 0}
number of standalone daggers: {'azp1549': 0, 'azp1552': 611, 'azp1556': 775, 'azp1573': 0}
number of standalone unanchored milestones: {'azp1549': 1316, 'azp1552': 688, 'azp1556': 27, 'azp1573': 1619}
number of standalone capital bigrams: {'azp1549': 119, 'azp1552': 206, 'azp1556': 995, 'azp1573': 1736}

Segment editions

After some experiments with XPath and lxml's iter() method (see appendices in milestones segmentation approach), we take a third approach to segment the texts: (a) We flatten the whole text and replace the breakpoints we have identified by a key string; (b) we split the text by using the key strings. ([c] We save our results.)

Here are the rules we use for segmentation:

Add breaks

  • after "summaries"-type lists
  • after headings (except for those of "summaries"-type lists)
  • after a horizontal space that is followed by the word "Circa" (case-sensitive)
  • before paragraphs
  • before the beginning of sentences in which a dagger or marginal number occurs
    • we identify these by: punctuation, followed by whitespace, followed by a capital letter (that is itself not immediately followed by an abbreviation period), followed by a dagger or marginal number within 80 characters (that do not contain a punctuation character)
  • before a cue phrase or a numeral expression at the beginning of a sentence
  • before a word beginning with two capital letters followed by a space or lower-case letters
  • before other daggers, i.e. where that is not preceded by a break within 100 characters
  • before pilcrow signs ('¶')
  • before xml body/div elements

Then, from these, we remove breaks where they would be redundant

  • where two are present, separated only by whitespace and/or a dagger
  • where they are preceded by a single lowercase letter (with a period) which is in turn preceded by "in"
  • where up to the next segment break only words/numbers with subsequent period would occur
  • where they are preceded within 100 chars (other than a period, question mark or closing square bracket, making exceptions for 'Lo. ij.' and the like) by ¶ or an xml p element boundary
  • where they are preceded within 30 chars by another break followed by the word "Circa"

flatten

Recursively extract text, children and tail text properties. Insert ++div_xy-- and ++break-- keystrings where div breaks and breakpoints occur.


In [22]:
beginnings = { "pt": ["Se", "Mas\s+se", "E\s+se", "O\s+q[uv]e", "Os\s+q[uv]e", "Diz", "E\s+a\s+reza", "Dissemos",
                      "Acrecenamos", "Acreceto[uv]se"],
               "es": ["S[uv]mm?ario", "Preg[uv]ntas", "De\s+los\s+pecc?ados", "Diximos", "Anadiose", "Anadimos",
                      "Sig[uv]ese\s+tambien", "Acrecentose", "Allegase", "(Donde|De\s+lo\s+q[uv]al)\s+inferimos",
                      "De\s+donde\s+inferimos", "Desto\s+inferimos", "Desta\s+resol[uv]cion\s+inferimos",
                      "Pares?cenos", "Si", "Ante\s+de\s+los\s+q[uv]ales\s+a[uv]isamos",
                      "En\s+otro\s+gercero"],
               "la": ["Dixi", "Seq[uv]it[uv]r", "Pro\s+f[uv]ndam[eẽ]n?to", "Ex\s+(his|q[uv]ib[uv]s|q[uv]o)\s+infert[uv]r",
                      "Ex\s+pr(ae|æ)dictis", "Ex\s+his\s+pr(ae|æ)missis", "Et\s+conseq[uv]enter", "Adijcimus", "Admoneo",
                      "Accedit", "(Ex\s+q[uv]o|[UV]nde)\s+infer(im[uv]s|t[uv]r)", "[UV]nde\s+seq[uv]it[uv]r", "Addo", "Ante\s+quor[uv]m",
                      "Videtur", "Prior\s+cas[uv]s\s+est", "Posterior\s+cas[uv]s\s+est",
                      "S[uv]per\s+alio\s+vero\s+tertio"]
             }

numbers = ["primum", "secundum", "tertium", "quartum", "quintum", "sextum", "septimum", "octa[uv]um", "nonum", "decimum", "[uv]ndecimum",
           "prima", "prime[iy]?r[ao]", "se[cg]und[ao]", "terti[ao]", "terce[iy]?r[ao]", "quart[ao]",
           "quint[ao]", "sext[ao]", "septim[ao]", "octa[uv][ao]", "non[ao]", "decim[ao]",
           "[uv]ndecim[ao]", "duodecim[ao]", 
           "[cijlvxCIJLVX]+"
          ]
numbers_caps = ["Primum", "Secundum", "Tertium", "Quartum", "Quintum", "Sextum", "Septimum", "Octa[uv]um", "Nonum", "Decimum", "[UV]ndecimum", "D[uv]odecimum",
           "Prima", "Prime[iy]?r[ao]", "Se[cg]und[ao]", "Terti[ao]", "Terce[iy]?r[ao]", "Quart[ao]",
           "Quint[ao]", "Sext[ao]", "Septim[ao]", "Octa[uv][ao]", "Non[ao]", "Decim[ao]",
           "[UV]ndecim[ao]", "D[uv]odecim[ao]", 
           "[CIJLVX]+"
          ]


prefixes = ["Ho\.?\s+", "O\.?\s+", "El\.?\s+", "Lo\.?\s+", "A\.?\s+", "Ad\s+", "La\.?\s+", "Dela\s+",
            "Decim[ao]", "Vigesim[ao]", "Trigesim[ao]"]

suffixes = ["mente", "decimo", " infertur"]


rex_all_num = [ [ num for num in numbers_caps ],                                                 # all numbers
                [ num + suf for num in numbers_caps for suf in suffixes ],                       # all numbers plus all suffixes
                [ pref + num for num in numbers for pref in prefixes ],                          # all prefixes plus all numbers
                [ pref + num + suf for num in numbers for pref in prefixes for suf in suffixes ] # all prefixes plus all numbers plus all suffixes
              ]
num_rex = sum(rex_all_num, [])


def flatten(element: lxml.etree._Element):
    t = ""
    # Dagger milestones
    if element.get("rendition")=="#dagger":
        t += "†"
        if element.tail:
            t += str.replace(element.tail, "\n", " ")
    # asterisk milestones (additions in the 1556 ed.) - create temporary marker
    elif element.get("rendition")=="#asterisk":
        t += "*"
        if element.tail:
            t += str.replace(element.tail, "\n", " ")
    # Unanchored milestones - create temporary marker
    elif element.get("rendition")=="#unanchored":
        t += "‡"
        if element.tail:
            t += str.replace(element.tail, "\n", " ")
    # Summaries lists
    elif element.get("type")=="summaries":
        t += "++break--"
        if element.text:
            t += str.replace(element.text, "\n", " ")
        if element.getchildren():
            t += " ".join((flatten(child)) for child in element.getchildren())
        if element.tail:
            t += str.replace(element.tail, "\n", " ")
    # Headings (except for summaries headings)
    elif etree.QName(element).localname=="head" and element.getparent().get("type")!="summaries":
        if element.text:
            t += str.replace(element.text, "\n", " ")
        if element.getchildren():
            t += " ".join((flatten(child)) for child in element.getchildren())
        t += "++break--"
        if element.tail:
            t += str.replace(element.tail, "\n", " ")
    # horizontal space followed by "Circa"
    elif etree.QName(element).localname=="space" and element.tail and str.strip(element.tail)[:5] == "Circa":
        t += "++break--"
        t += str.replace(element.tail, "\n", " ")
    # paragraphs
    elif etree.QName(element).localname=="p":
        t += "<p>"
        if element.text:
            t += str.replace(element.text, "\n", " ")
        if element.getchildren():
            t += " ".join((flatten(child)) for child in element.getchildren())
        if element.tail:
            t += str.replace(element.tail, "\n", " ")
        t += "</p>"
    else:
        if element.text:
            t += str.replace(element.text, "\n", " ")
        if element.getchildren():
            t += " ".join((flatten(child)) for child in element.getchildren())
        if element.tail:
            t += str.replace(element.tail, "\n", " ")

    return t


xp_divs = etree.XPath("(//tei:body/tei:div[@type = 'chapter'][not(@n = '0')])", namespaces = nsmap)

divs = {}
flattened = {}
lera = {}

for ed in resolved:
    t, ttemp1, ttemp2, ttemp3, ttemp4, ttemp5, ttemp6, ttemp7, ttemp8, ttemp9, ttemp10, ttemp11, ttemp12, ttemp13 = ("", "", "", "", "", "", "", "", "", "", "", "", "", "")

    divs[ed] = xp_divs(resolved[ed])
    t = "".join("++div_" + str(div.get("n")) + "--" + flatten(div) for div in divs[ed])

    # Add breaks
    ttemp1  = re.sub(r'<p>', r'\n++break--<p>', t)                         # paragraphs begins
    ttemp2  = re.sub(r'¶', '++break--¶',                           ttemp1) # where pilcrow signs are
    ttemp3  = re.sub(r'([:\.\?\]])\s+([A-Z])(?!([CIJLVX]+|.)?\.)(?![^†‡*]{0,80}[:\.\?\]][^a-z]*[A-Z])(?=.{0,80}[†‡*])',
                     r'\1 ++break-- \2', ttemp2)                           # sentences beginning
                                                                           # with punctuation, whitespace, and a
                                                                           # capital letter (not immediately followed by
                                                                           # an abbreviation period)
                                                                           # and a milestone follows within 80 characters
                                                                           # (that do not contain a punctuation character)

    for rex in beginnings[language[ed]]:
        ttemp4 = re.sub('([:\.\?\]])\s+(' + rex + '\s+)', r'\1 ++break-- \2', ttemp3)

    for rex in num_rex:
        ttemp5 = re.sub('([:\.\?\]])\s+(' + rex + '\.?\s+)', r'\1 ++break-- \2', ttemp4)
    
    ttemp6  = re.sub(r'\b([A-Z]{2}\s*[a-z])', r'++break-- \1',       ttemp5)  # two capital letters
    ttemp7  = ttemp6[::-1]                                                    # reverse the string
    ttemp8  = re.sub(r'([†‡*])(?!.{0,100}--kaerb)', r'\1--kaerb++',  ttemp7)  # daggers without sentence boundaries, i.e. not covered above

    # Eliminate breaks
    ttemp9  = re.sub(r'--kaerb\+\+\s*(?=\.\s*(bil|pac|[a-z])\sni\s)', '', ttemp8)  # preceded by " in (lib|cap|[a-z])."
    ttemp10 = re.sub(r'--kaerb\+\+\s*(?=\.\s*[SP]\s+)', '',          ttemp9)  # preceded by " S." or " P."
    ttemp11 = re.sub(r'--kaerb\+\+\s*(?=[.¶†‡&* ]+--kaerb\+\+)', '', ttemp10) # redundant ones
    ttemp12 = re.sub(r'--kaerb\+\+\s*(?=--\d+_vid\+\+)', '',         ttemp11) # preceded by a "div-break"
    ttemp13 = re.sub(r'--kaerb\+\+\s*(?=(\.[cijlvx]+|\.(o[LH]|A)|[^\.?\]]){1,100}(¶|>p<))',
                     '',                                             ttemp12) # preceded within 100 chars by ¶ or <p>
    ttemp14 = re.sub(r'--kaerb\+\+\s*(?=.{0,40}(acriC\s*--kaerb\+\+))',
                     '',                                             ttemp13) # preceded within 30 chars by ++break--Circa
    ttemp15 = re.sub(r'--kaerb\+\+\s*(?=[†‡*]?\s*\.?[CIJLVXcijlvx]+\s*[†‡*]?\s*--kaerb\+\+)',
                     '',                                             ttemp14) # preceded only by a roman numeral.
    ttemp16 = ttemp15[::-1]                                                   # re-reverse i.e. restore original reading direction
    ttemp17 = re.sub(r'\+\+break--\s*(?=([A-Za-z0-9]+\.\s+)+\+\+(break|div_))',
                     '',                                             ttemp16) # followed only by words with period
    ttemp18 = re.sub(r'\+\+break--\s*(?=\+\+div_)', '',              ttemp17) # followed by a "div-break"

    # Eliminate temporary markers
    ttemp19 = re.sub(r'‡', '',                                       ttemp18) # unanchored milestones
    ttemp20 = re.sub(r'</?p>', '',                                   ttemp19) # paragraphs
    
    # Concat everything and do a final removal of redundant breaks.
    flattened[ed] = re.sub(r'\+\+break--\s*\+\+break--',    '++break--', " ".join(ttemp20.strip().split()))
    
    lera[ed] = re.sub(r'\+\+break--', r'<milestone type="lera-segment"/>', flattened[ed])
    lera[ed] = re.sub(r'\+\+div_([0-9]+)--', r'</div><div type="chapter" n="\1">', lera[ed])
    lera[ed] = '<root>' + re.sub(r'&', '&amp;', lera[ed])[6:] + '</div></root>'

Check if results make sense:


In [23]:
for ed in editions:
    print("number of divs/milestones in {}: {}/{}".format(ed,
                                                          str(lera[ed].count('<div')),
                                                          str(lera[ed].count('<milestone type="lera-segment"'))
                                                         ))


number of divs/milestones in azp1549: 27/3086
number of divs/milestones in azp1552: 27/2611
number of divs/milestones in azp1556: 27/3373
number of divs/milestones in azp1573: 27/3313

Let's save this so that we can easier check if the break marks are in the right places...


In [24]:
import glob

if overwrite_seg:
    for ed in editions:
        with open('./data/processing/12000_segmented_paragraphs/' + ed + '.xml', 'w', encoding='utf-8') as txt_file:
            txt_file.write(lera[ed])

else:
    print("Files present no overwriting requested.")

    
flattened_files = glob.glob('./data/processing/12000_segmented_paragraphs/*.xml')
print ("Flattened files: {}".format(flattened_files))


Flattened files: ['./data/processing/12000_segmented_paragraphs\\azp1549.xml', './data/processing/12000_segmented_paragraphs\\azp1552.xml', './data/processing/12000_segmented_paragraphs\\azp1556.xml', './data/processing/12000_segmented_paragraphs\\azp1573.xml']

split

Now we split our long string into actual segments (and we do this for all our editions).


In [25]:
import glob
# First load the files again (so they may be manually tweaked in-between)

fEd = []
flattened = {}

for filename in glob.glob("./data/processing/12000_segmented_paragraphs/*.xml"):
    e = os.path.basename(filename)[:-4]
    fEd.append(e)
    if e in set(editions):
        with open(filename, encoding='utf-8') as file:
            flattened[e] = file.read()
            print("File {} read.".format(filename))

for i in set(editions) ^ set(fEd):
    print("Check for problems with these editions: ".format(i))


File ./data/processing/12000_segmented_paragraphs\azp1549.xml read.
File ./data/processing/12000_segmented_paragraphs\azp1552.xml read.
File ./data/processing/12000_segmented_paragraphs\azp1556.xml read.
File ./data/processing/12000_segmented_paragraphs\azp1573.xml read.

In [26]:
import re

segmented = {}
key_prb = {}

for ed in editions:
    segmented[ed] = {}
    key_prb[ed] = []
    body = flattened[ed][5:-6]
    for div in re.split('<div', body):
        i = 0
        dlabel = div[div.find('n="')+3:div.find('">')]
        content = div[div.find('">')+2:div.find('</div>')]
        for seg in re.split(r'<milestone type="lera-segment"/>', content):
            if seg[0:31] == '<milestone type="lera-segment"/>':
                mscontent = " ".join(seg[seg.find('--')+2:].strip().split())
            else:
                mscontent = " ".join(seg.strip().split())
            if (len(mscontent) > 0):
                segmented[ed].update({dlabel.zfill(2) + '_' + str(i).zfill(3): mscontent})
                i += 1

Report how many segments we have found:


In [27]:
for ed in editions:
    print("number of segments in {}: {}".format(ed, str(len(segmented[ed]))))


number of segments in azp1549: 3113
number of segments in azp1552: 2638
number of segments in azp1556: 3400
number of segments in azp1573: 3340

save

Now we save our first intermediate results, the segmented editions:


In [28]:
import csv

if overwrite_seg:
    for ed in segmented:
        with open('./data/processing/12000_segmented_paragraphs/' + ed + '_seg.csv', 'w', encoding='utf-8') as csv_file:
            writer = csv.writer(csv_file, lineterminator="\n")
            for key, value in segmented[ed].items():
               writer.writerow([key, value])

else:
    print("Files present no overwriting requested.")

    
segmented_files = glob.glob('./data/processing/12000_segmented_paragraphs/*.csv')
print ("Segmented files: {}".format(segmented_files))


Segmented files: ['./data/processing/12000_segmented_paragraphs\\azp1549_seg.csv', './data/processing/12000_segmented_paragraphs\\azp1552_seg.csv', './data/processing/12000_segmented_paragraphs\\azp1556_seg.csv', './data/processing/12000_segmented_paragraphs\\azp1573_seg.csv']

In [34]:
segmented['azp1552'].keys()


Out[34]:
dict_keys(['oot_000', '01_000', '01_001', '01_002', '01_003', '01_004', '01_005', '01_006', '01_007', '01_008', '01_009', '01_010', '01_011', '01_012', '01_013', '01_014', '01_015', '01_016', '01_017', '01_018', '01_019', '01_020', '01_021', '01_022', '01_023', '01_024', '01_025', '01_026', '01_027', '01_028', '01_029', '01_030', '01_031', '01_032', '01_033', '01_034', '01_035', '01_036', '01_037', '01_038', '01_039', '01_040', '01_041', '01_042', '01_043', '01_044', '01_045', '01_046', '02_000', '02_001', '02_002', '02_003', '02_004', '02_005', '02_006', '02_007', '02_008', '02_009', '02_010', '02_011', '02_012', '02_013', '03_000', '03_001', '03_002', '03_003', '03_004', '03_005', '03_006', '03_007', '04_000', '04_001', '04_002', '04_003', '04_004', '04_005', '04_006', '04_007', '04_008', '05_000', '05_001', '05_002', '05_003', '05_004', '06_000', '06_001', '06_002', '06_003', '06_004', '06_005', '06_006', '06_007', '06_008', '06_009', '06_010', '06_011', '06_012', '06_013', '06_014', '06_015', '06_016', '06_017', '06_018', '06_019', '06_020', '06_021', '06_022', '06_023', '06_024', '06_025', '06_026', '07_000', '07_001', '07_002', '07_003', '07_004', '07_005', '07_006', '07_007', '07_008', '07_009', '07_010', '08_000', '08_001', '08_002', '08_003', '08_004', '08_005', '08_006', '08_007', '08_008', '08_009', '08_010', '08_011', '08_012', '08_013', '08_014', '08_015', '08_016', '08_017', '08_018', '08_019', '08_020', '08_021', '09_000', '09_001', '09_002', '09_003', '09_004', '09_005', '09_006', '09_007', '09_008', '09_009', '09_010', '09_011', '09_012', '09_013', '09_014', '09_015', '09_016', '09_017', '09_018', '10_000', '10_001', '10_002', '10_003', '10_004', '10_005', '10_006', '10_007', '11_000', '11_001', '11_002', '11_003', '11_004', '11_005', '11_006', '11_007', '11_008', '11_009', '11_010', '11_011', '11_012', '11_013', '11_014', '11_015', '11_016', '11_017', '11_018', '11_019', '11_020', '11_021', '11_022', '11_023', '11_024', '11_025', '11_026', '11_027', '11_028', '11_029', '11_030', '11_031', '11_032', '11_033', '11_034', '11_035', '11_036', '11_037', '11_038', '11_039', '11_040', '11_041', '11_042', '11_043', '11_044', '11_045', '11_046', '11_047', '11_048', '11_049', '11_050', '11_051', '11_052', '11_053', '11_054', '11_055', '11_056', '11_057', '11_058', '11_059', '11_060', '11_061', '11_062', '11_063', '11_064', '11_065', '11_066', '11_067', '11_068', '11_069', '11_070', '11_071', '11_072', '11_073', '11_074', '11_075', '11_076', '11_077', '11_078', '11_079', '12_000', '12_001', '12_002', '12_003', '12_004', '12_005', '12_006', '12_007', '12_008', '12_009', '12_010', '12_011', '12_012', '12_013', '12_014', '12_015', '12_016', '12_017', '12_018', '12_019', '12_020', '12_021', '12_022', '12_023', '12_024', '12_025', '12_026', '12_027', '12_028', '12_029', '12_030', '12_031', '12_032', '12_033', '12_034', '12_035', '12_036', '12_037', '12_038', '12_039', '12_040', '12_041', '12_042', '12_043', '12_044', '12_045', '12_046', '12_047', '12_048', '12_049', '12_050', '12_051', '12_052', '12_053', '12_054', '12_055', '12_056', '12_057', '12_058', '12_059', '12_060', '12_061', '12_062', '12_063', '12_064', '12_065', '12_066', '12_067', '12_068', '12_069', '12_070', '12_071', '12_072', '12_073', '12_074', '12_075', '12_076', '12_077', '12_078', '12_079', '12_080', '12_081', '12_082', '12_083', '12_084', '12_085', '12_086', '12_087', '12_088', '12_089', '12_090', '12_091', '12_092', '12_093', '12_094', '12_095', '12_096', '12_097', '12_098', '12_099', '12_100', '12_101', '12_102', '12_103', '12_104', '12_105', '12_106', '12_107', '12_108', '12_109', '12_110', '12_111', '12_112', '12_113', '12_114', '12_115', '12_116', '12_117', '12_118', '12_119', '12_120', '12_121', '12_122', '12_123', '12_124', '12_125', '12_126', '12_127', '12_128', '12_129', '12_130', '12_131', '12_132', '13_000', '13_001', '13_002', '13_003', '13_004', '13_005', '13_006', '13_007', '13_008', '13_009', '13_010', '13_011', '13_012', '13_013', '13_014', '13_015', '13_016', '13_017', '13_018', '13_019', '13_020', '13_021', '13_022', '13_023', '13_024', '13_025', '13_026', '14_000', '14_001', '14_002', '14_003', '14_004', '14_005', '14_006', '14_007', '14_008', '14_009', '14_010', '14_011', '14_012', '14_013', '14_014', '14_015', '14_016', '14_017', '14_018', '14_019', '14_020', '14_021', '14_022', '14_023', '14_024', '14_025', '14_026', '14_027', '14_028', '14_029', '14_030', '14_031', '14_032', '14_033', '14_034', '14_035', '14_036', '14_037', '14_038', '14_039', '14_040', '14_041', '14_042', '14_043', '14_044', '14_045', '14_046', '14_047', '14_048', '14_049', '14_050', '14_051', '14_052', '14_053', '14_054', '14_055', '14_056', '14_057', '14_058', '14_059', '14_060', '14_061', '14_062', '14_063', '14_064', '14_065', '14_066', '15_000', '15_001', '15_002', '15_003', '15_004', '15_005', '15_006', '15_007', '15_008', '15_009', '15_010', '15_011', '15_012', '15_013', '15_014', '15_015', '15_016', '15_017', '15_018', '15_019', '15_020', '15_021', '15_022', '15_023', '15_024', '15_025', '15_026', '15_027', '15_028', '15_029', '15_030', '15_031', '15_032', '15_033', '15_034', '15_035', '15_036', '15_037', '15_038', '15_039', '15_040', '15_041', '15_042', '15_043', '16_000', '16_001', '16_002', '16_003', '16_004', '16_005', '16_006', '16_007', '16_008', '16_009', '16_010', '16_011', '16_012', '16_013', '16_014', '16_015', '16_016', '16_017', '16_018', '16_019', '16_020', '16_021', '16_022', '16_023', '16_024', '16_025', '16_026', '16_027', '16_028', '16_029', '16_030', '16_031', '16_032', '16_033', '16_034', '16_035', '16_036', '16_037', '16_038', '16_039', '16_040', '16_041', '16_042', '16_043', '16_044', '16_045', '16_046', '16_047', '16_048', '16_049', '16_050', '16_051', '16_052', '16_053', '16_054', '16_055', '16_056', '16_057', '16_058', '16_059', '16_060', '16_061', '16_062', '16_063', '16_064', '16_065', '16_066', '16_067', '16_068', '16_069', '16_070', '16_071', '16_072', '16_073', '17_000', '17_001', '17_002', '17_003', '17_004', '17_005', '17_006', '17_007', '17_008', '17_009', '17_010', '17_011', '17_012', '17_013', '17_014', '17_015', '17_016', '17_017', '17_018', '17_019', '17_020', '17_021', '17_022', '17_023', '17_024', '17_025', '17_026', '17_027', '17_028', '17_029', '17_030', '17_031', '17_032', '17_033', '17_034', '17_035', '17_036', '17_037', '17_038', '17_039', '17_040', '17_041', '17_042', '17_043', '17_044', '17_045', '17_046', '17_047', '17_048', '17_049', '17_050', '17_051', '17_052', '17_053', '17_054', '17_055', '17_056', '17_057', '17_058', '17_059', '17_060', '17_061', '17_062', '17_063', '17_064', '17_065', '17_066', '17_067', '17_068', '17_069', '17_070', '17_071', '17_072', '17_073', '17_074', '17_075', '17_076', '17_077', '17_078', '17_079', '17_080', '17_081', '17_082', '17_083', '17_084', '17_085', '17_086', '17_087', '17_088', '17_089', '17_090', '17_091', '17_092', '17_093', '17_094', '17_095', '17_096', '17_097', '17_098', '17_099', '17_100', '17_101', '17_102', '17_103', '17_104', '17_105', '17_106', '17_107', '17_108', '17_109', '17_110', '17_111', '17_112', '17_113', '17_114', '17_115', '17_116', '17_117', '17_118', '17_119', '17_120', '17_121', '17_122', '17_123', '17_124', '17_125', '17_126', '17_127', '17_128', '17_129', '17_130', '17_131', '17_132', '17_133', '17_134', '17_135', '17_136', '17_137', '17_138', '17_139', '17_140', '17_141', '17_142', '17_143', '17_144', '17_145', '17_146', '17_147', '17_148', '17_149', '17_150', '17_151', '17_152', '17_153', '17_154', '17_155', '17_156', '17_157', '17_158', '17_159', '17_160', '17_161', '17_162', '17_163', '17_164', '17_165', '17_166', '17_167', '17_168', '17_169', '17_170', '17_171', '17_172', '17_173', '17_174', '17_175', '17_176', '17_177', '17_178', '17_179', '17_180', '17_181', '17_182', '17_183', '17_184', '17_185', '17_186', '17_187', '17_188', '17_189', '17_190', '17_191', '17_192', '17_193', '17_194', '17_195', '17_196', '17_197', '17_198', '17_199', '17_200', '17_201', '17_202', '17_203', '17_204', '17_205', '17_206', '17_207', '17_208', '17_209', '17_210', '17_211', '17_212', '17_213', '17_214', '17_215', '17_216', '17_217', '17_218', '17_219', '17_220', '17_221', '17_222', '17_223', '17_224', '17_225', '17_226', '17_227', '17_228', '17_229', '17_230', '17_231', '17_232', '17_233', '17_234', '17_235', '17_236', '17_237', '17_238', '17_239', '17_240', '17_241', '17_242', '17_243', '17_244', '17_245', '17_246', '17_247', '17_248', '17_249', '17_250', '17_251', '17_252', '17_253', '17_254', '17_255', '17_256', '17_257', '17_258', '17_259', '17_260', '17_261', '17_262', '17_263', '17_264', '17_265', '17_266', '17_267', '17_268', '17_269', '17_270', '17_271', '17_272', '17_273', '17_274', '17_275', '17_276', '17_277', '17_278', '17_279', '17_280', '17_281', '17_282', '17_283', '17_284', '17_285', '17_286', '17_287', '17_288', '17_289', '17_290', '17_291', '17_292', '17_293', '17_294', '17_295', '17_296', '17_297', '17_298', '17_299', '17_300', '17_301', '17_302', '17_303', '17_304', '17_305', '17_306', '17_307', '17_308', '17_309', '17_310', '17_311', '17_312', '17_313', '17_314', '17_315', '17_316', '17_317', '17_318', '17_319', '17_320', '17_321', '17_322', '17_323', '17_324', '17_325', '17_326', '17_327', '17_328', '17_329', '17_330', '17_331', '17_332', '17_333', '17_334', '17_335', '17_336', '17_337', '17_338', '17_339', '17_340', '17_341', '17_342', '17_343', '17_344', '17_345', '17_346', '17_347', '17_348', '17_349', '17_350', '17_351', '17_352', '17_353', '17_354', '17_355', '17_356', '17_357', '17_358', '17_359', '17_360', '17_361', '17_362', '17_363', '17_364', '17_365', '17_366', '17_367', '17_368', '17_369', '17_370', '17_371', '17_372', '17_373', '17_374', '17_375', '17_376', '17_377', '17_378', '17_379', '17_380', '17_381', '17_382', '17_383', '17_384', '17_385', '17_386', '17_387', '17_388', '17_389', '17_390', '17_391', '17_392', '17_393', '17_394', '17_395', '17_396', '17_397', '17_398', '17_399', '17_400', '17_401', '17_402', '17_403', '17_404', '17_405', '18_000', '18_001', '18_002', '18_003', '18_004', '18_005', '18_006', '18_007', '18_008', '18_009', '18_010', '18_011', '18_012', '18_013', '18_014', '18_015', '18_016', '18_017', '18_018', '18_019', '18_020', '18_021', '18_022', '18_023', '18_024', '18_025', '18_026', '18_027', '18_028', '18_029', '18_030', '18_031', '18_032', '18_033', '18_034', '18_035', '18_036', '18_037', '18_038', '18_039', '18_040', '18_041', '18_042', '18_043', '18_044', '18_045', '18_046', '18_047', '18_048', '18_049', '18_050', '18_051', '18_052', '18_053', '18_054', '18_055', '18_056', '18_057', '18_058', '18_059', '18_060', '18_061', '18_062', '18_063', '18_064', '18_065', '18_066', '18_067', '18_068', '18_069', '18_070', '18_071', '18_072', '18_073', '18_074', '18_075', '18_076', '18_077', '18_078', '18_079', '18_080', '18_081', '18_082', '18_083', '18_084', '18_085', '18_086', '18_087', '18_088', '18_089', '18_090', '19_000', '19_001', '19_002', '19_003', '19_004', '19_005', '19_006', '19_007', '19_008', '19_009', '19_010', '19_011', '19_012', '19_013', '19_014', '19_015', '19_016', '19_017', '19_018', '19_019', '19_020', '19_021', '19_022', '19_023', '19_024', '19_025', '19_026', '20_000', '20_001', '20_002', '20_003', '20_004', '21_000', '21_001', '21_002', '21_003', '21_004', '21_005', '21_006', '21_007', '21_008', '21_009', '21_010', '21_011', '21_012', '21_013', '21_014', '21_015', '21_016', '21_017', '21_018', '21_019', '21_020', '21_021', '21_022', '21_023', '21_024', '21_025', '21_026', '21_027', '21_028', '21_029', '21_030', '21_031', '21_032', '21_033', '21_034', '21_035', '21_036', '21_037', '21_038', '21_039', '21_040', '21_041', '21_042', '21_043', '21_044', '21_045', '21_046', '21_047', '21_048', '21_049', '21_050', '21_051', '21_052', '21_053', '21_054', '21_055', '21_056', '21_057', '21_058', '21_059', '21_060', '21_061', '21_062', '21_063', '21_064', '21_065', '21_066', '21_067', '21_068', '21_069', '21_070', '21_071', '21_072', '21_073', '21_074', '21_075', '21_076', '21_077', '21_078', '21_079', '21_080', '21_081', '21_082', '21_083', '21_084', '21_085', '21_086', '21_087', '21_088', '21_089', '21_090', '21_091', '21_092', '21_093', '21_094', '21_095', '22_000', '22_001', '22_002', '22_003', '22_004', '22_005', '22_006', '22_007', '22_008', '22_009', '22_010', '22_011', '22_012', '22_013', '22_014', '22_015', '22_016', '22_017', '22_018', '22_019', '22_020', '22_021', '22_022', '22_023', '22_024', '22_025', '22_026', '22_027', '22_028', '22_029', '22_030', '22_031', '22_032', '22_033', '22_034', '22_035', '22_036', '22_037', '22_038', '22_039', '22_040', '22_041', '22_042', '22_043', '22_044', '22_045', '22_046', '22_047', '22_048', '22_049', '22_050', '22_051', '22_052', '22_053', '22_054', '22_055', '22_056', '22_057', '22_058', '22_059', '22_060', '22_061', '22_062', '22_063', '22_064', '22_065', '22_066', '22_067', '22_068', '22_069', '22_070', '22_071', '22_072', '22_073', '22_074', '22_075', '22_076', '22_077', '22_078', '22_079', '22_080', '22_081', '22_082', '22_083', '22_084', '22_085', '22_086', '22_087', '22_088', '22_089', '22_090', '22_091', '22_092', '22_093', '22_094', '22_095', '22_096', '22_097', '22_098', '22_099', '22_100', '22_101', '22_102', '22_103', '22_104', '22_105', '22_106', '22_107', '22_108', '22_109', '22_110', '22_111', '22_112', '22_113', '22_114', '22_115', '22_116', '22_117', '22_118', '22_119', '22_120', '22_121', '22_122', '22_123', '22_124', '22_125', '22_126', '22_127', '22_128', '22_129', '22_130', '22_131', '22_132', '22_133', '22_134', '22_135', '22_136', '22_137', '22_138', '22_139', '22_140', '22_141', '22_142', '22_143', '22_144', '22_145', '22_146', '22_147', '22_148', '22_149', '22_150', '22_151', '22_152', '22_153', '22_154', '22_155', '22_156', '22_157', '22_158', '22_159', '22_160', '22_161', '22_162', '22_163', '22_164', '22_165', '22_166', '22_167', '22_168', '22_169', '22_170', '22_171', '22_172', '22_173', '22_174', '22_175', '22_176', '22_177', '22_178', '22_179', '22_180', '22_181', '22_182', '22_183', '22_184', '22_185', '22_186', '22_187', '22_188', '22_189', '22_190', '22_191', '22_192', '22_193', '22_194', '22_195', '22_196', '22_197', '22_198', '22_199', '22_200', '22_201', '22_202', '22_203', '22_204', '22_205', '22_206', '22_207', '22_208', '22_209', '22_210', '22_211', '22_212', '22_213', '22_214', '22_215', '22_216', '22_217', '23_000', '23_001', '23_002', '23_003', '23_004', '23_005', '23_006', '23_007', '23_008', '23_009', '23_010', '23_011', '23_012', '23_013', '23_014', '23_015', '23_016', '23_017', '23_018', '23_019', '23_020', '23_021', '23_022', '23_023', '23_024', '23_025', '23_026', '23_027', '23_028', '23_029', '23_030', '23_031', '23_032', '23_033', '23_034', '23_035', '23_036', '23_037', '23_038', '23_039', '23_040', '23_041', '23_042', '23_043', '23_044', '23_045', '23_046', '23_047', '23_048', '23_049', '23_050', '23_051', '23_052', '23_053', '23_054', '23_055', '23_056', '23_057', '23_058', '23_059', '23_060', '23_061', '23_062', '23_063', '23_064', '23_065', '23_066', '23_067', '23_068', '23_069', '23_070', '23_071', '23_072', '23_073', '23_074', '23_075', '23_076', '23_077', '23_078', '23_079', '23_080', '23_081', '23_082', '23_083', '23_084', '23_085', '23_086', '23_087', '23_088', '23_089', '23_090', '23_091', '23_092', '23_093', '23_094', '23_095', '23_096', '23_097', '23_098', '23_099', '23_100', '23_101', '23_102', '23_103', '23_104', '23_105', '23_106', '23_107', '23_108', '23_109', '23_110', '23_111', '23_112', '23_113', '23_114', '23_115', '23_116', '23_117', '23_118', '23_119', '23_120', '23_121', '23_122', '23_123', '23_124', '23_125', '23_126', '23_127', '23_128', '23_129', '23_130', '23_131', '23_132', '23_133', '23_134', '23_135', '23_136', '23_137', '23_138', '23_139', '23_140', '23_141', '23_142', '23_143', '23_144', '23_145', '23_146', '23_147', '23_148', '23_149', '23_150', '23_151', '23_152', '23_153', '23_154', '23_155', '23_156', '23_157', '23_158', '23_159', '23_160', '23_161', '23_162', '23_163', '23_164', '23_165', '23_166', '23_167', '23_168', '23_169', '23_170', '23_171', '23_172', '23_173', '23_174', '23_175', '23_176', '23_177', '23_178', '23_179', '23_180', '23_181', '23_182', '23_183', '23_184', '23_185', '23_186', '23_187', '23_188', '23_189', '23_190', '23_191', '23_192', '23_193', '23_194', '23_195', '23_196', '23_197', '23_198', '23_199', '23_200', '23_201', '23_202', '23_203', '23_204', '23_205', '23_206', '23_207', '23_208', '23_209', '23_210', '23_211', '23_212', '23_213', '23_214', '23_215', '23_216', '23_217', '23_218', '23_219', '23_220', '23_221', '23_222', '23_223', '23_224', '23_225', '23_226', '23_227', '23_228', '23_229', '23_230', '23_231', '23_232', '23_233', '23_234', '23_235', '23_236', '24_000', '24_001', '24_002', '24_003', '24_004', '24_005', '24_006', '24_007', '24_008', '24_009', '24_010', '24_011', '24_012', '24_013', '24_014', '24_015', '24_016', '24_017', '24_018', '24_019', '24_020', '24_021', '24_022', '24_023', '24_024', '24_025', '24_026', '24_027', '24_028', '24_029', '24_030', '24_031', '24_032', '24_033', '24_034', '24_035', '24_036', '24_037', '24_038', '24_039', '24_040', '24_041', '24_042', '24_043', '24_044', '25_000', '25_001', '25_002', '25_003', '25_004', '25_005', '25_006', '25_007', '25_008', '25_009', '25_010', '25_011', '25_012', '25_013', '25_014', '25_015', '25_016', '25_017', '25_018', '25_019', '25_020', '25_021', '25_022', '25_023', '25_024', '25_025', '25_026', '25_027', '25_028', '25_029', '25_030', '25_031', '25_032', '25_033', '25_034', '25_035', '25_036', '25_037', '25_038', '25_039', '25_040', '25_041', '25_042', '25_043', '25_044', '25_045', '25_046', '25_047', '25_048', '25_049', '25_050', '25_051', '25_052', '25_053', '25_054', '25_055', '25_056', '25_057', '25_058', '25_059', '25_060', '25_061', '25_062', '25_063', '25_064', '25_065', '25_066', '25_067', '25_068', '25_069', '25_070', '25_071', '25_072', '25_073', '25_074', '25_075', '25_076', '25_077', '25_078', '25_079', '25_080', '25_081', '25_082', '25_083', '25_084', '25_085', '25_086', '25_087', '25_088', '25_089', '25_090', '25_091', '25_092', '25_093', '25_094', '25_095', '25_096', '25_097', '25_098', '25_099', '25_100', '25_101', '25_102', '25_103', '25_104', '25_105', '25_106', '25_107', '25_108', '25_109', '25_110', '25_111', '25_112', '25_113', '25_114', '25_115', '25_116', '25_117', '25_118', '25_119', '25_120', '25_121', '25_122', '25_123', '25_124', '25_125', '25_126', '25_127', '25_128', '25_129', '25_130', '25_131', '25_132', '25_133', '25_134', '25_135', '25_136', '25_137', '25_138', '25_139', '25_140', '25_141', '25_142', '25_143', '25_144', '25_145', '25_146', '25_147', '25_148', '25_149', '25_150', '25_151', '25_152', '25_153', '25_154', '25_155', '25_156', '25_157', '25_158', '25_159', '25_160', '25_161', '25_162', '25_163', '25_164', '25_165', '25_166', '25_167', '25_168', '25_169', '25_170', '25_171', '25_172', '25_173', '25_174', '25_175', '25_176', '25_177', '25_178', '25_179', '25_180', '25_181', '25_182', '25_183', '25_184', '25_185', '25_186', '25_187', '25_188', '25_189', '25_190', '25_191', '25_192', '25_193', '25_194', '25_195', '25_196', '25_197', '25_198', '25_199', '25_200', '25_201', '25_202', '25_203', '25_204', '25_205', '25_206', '25_207', '25_208', '25_209', '25_210', '25_211', '25_212', '25_213', '25_214', '25_215', '25_216', '25_217', '25_218', '25_219', '25_220', '25_221', '25_222', '25_223', '25_224', '25_225', '25_226', '25_227', '25_228', '25_229', '25_230', '25_231', '25_232', '25_233', '25_234', '25_235', '25_236', '25_237', '25_238', '25_239', '25_240', '25_241', '25_242', '25_243', '25_244', '25_245', '25_246', '25_247', '25_248', '25_249', '25_250', '25_251', '25_252', '25_253', '25_254', '25_255', '25_256', '25_257', '25_258', '25_259', '25_260', '25_261', '25_262', '25_263', '25_264', '25_265', '25_266', '25_267', '25_268', '25_269', '25_270', '25_271', '25_272', '25_273', '25_274', '25_275', '25_276', '25_277', '25_278', '25_279', '25_280', '25_281', '25_282', '25_283', '25_284', '25_285', '25_286', '25_287', '25_288', '25_289', '25_290', '25_291', '25_292', '25_293', '25_294', '25_295', '25_296', '25_297', '25_298', '25_299', '25_300', '25_301', '25_302', '25_303', '25_304', '25_305', '25_306', '25_307', '25_308', '26_000', '26_001', '26_002', '26_003', '26_004', '26_005', '26_006', '26_007', '26_008', '26_009', '26_010', '26_011', '26_012', '26_013', '26_014', '26_015', '26_016', '26_017', '26_018', '26_019', '26_020', '26_021', '26_022', '26_023', '26_024', '26_025', '26_026', '26_027', '26_028', '26_029', '26_030', '26_031', '26_032', '26_033', '26_034', '26_035', '26_036', '26_037', '26_038', '26_039', '26_040', '26_041', '26_042', '26_043', '26_044', '26_045', '26_046', '26_047', '26_048', '26_049', '26_050', '26_051', '26_052', '26_053', '26_054', '27_000', '27_001', '27_002', '27_003', '27_004', '27_005', '27_006', '27_007', '27_008', '27_009', '27_010', '27_011', '27_012', '27_013', '27_014', '27_015', '27_016', '27_017', '27_018', '27_019', '27_020', '27_021', '27_022', '27_023', '27_024', '27_025', '27_026', '27_027', '27_028', '27_029', '27_030', '27_031', '27_032', '27_033', '27_034', '27_035', '27_036', '27_037', '27_038', '27_039', '27_040', '27_041', '27_042', '27_043', '27_044', '27_045', '27_046', '27_047', '27_048', '27_049', '27_050', '27_051', '27_052', '27_053', '27_054', '27_055', '27_056', '27_057', '27_058', '27_059', '27_060', '27_061', '27_062', '27_063', '27_064', '27_065', '27_066', '27_067', '27_068', '27_069', '27_070', '27_071', '27_072', '27_073', '27_074', '27_075', '27_076', '27_077', '27_078', '27_079', '27_080', '27_081', '27_082', '27_083', '27_084', '27_085', '27_086', '27_087', '27_088', '27_089', '27_090', '27_091', '27_092', '27_093', '27_094', '27_095', '27_096', '27_097', '27_098', '27_099', '27_100', '27_101', '27_102', '27_103', '27_104', '27_105', '27_106', '27_107', '27_108', '27_109', '27_110', '27_111', '27_112', '27_113', '27_114', '27_115', '27_116', '27_117', '27_118', '27_119', '27_120', '27_121', '27_122', '27_123', '27_124', '27_125', '27_126', '27_127', '27_128', '27_129', '27_130', '27_131', '27_132', '27_133', '27_134', '27_135', '27_136', '27_137', '27_138', '27_139', '27_140', '27_141', '27_142', '27_143', '27_144', '27_145', '27_146', '27_147', '27_148', '27_149', '27_150', '27_151', '27_152', '27_153', '27_154', '27_155', '27_156', '27_157', '27_158', '27_159', '27_160', '27_161', '27_162', '27_163', '27_164', '27_165', '27_166', '27_167', '27_168', '27_169', '27_170', '27_171', '27_172', '27_173', '27_174', '27_175', '27_176', '27_177', '27_178', '27_179', '27_180', '27_181', '27_182', '27_183', '27_184', '27_185', '27_186', '27_187', '27_188', '27_189', '27_190', '27_191', '27_192', '27_193', '27_194', '27_195', '27_196', '27_197', '27_198', '27_199', '27_200', '27_201', '27_202', '27_203', '27_204', '27_205', '27_206', '27_207', '27_208', '27_209', '27_210', '27_211', '27_212', '27_213', '27_214', '27_215', '27_216', '27_217', '27_218', '27_219', '27_220', '27_221', '27_222', '27_223', '27_224', '27_225', '27_226', '27_227', '27_228', '27_229', '27_230', '27_231', '27_232', '27_233', '27_234', '27_235', '27_236', '27_237', '27_238', '27_239', '27_240', '27_241', '27_242', '27_243', '27_244', '27_245', '27_246', '27_247', '27_248', '27_249', '27_250', '27_251', '27_252', '27_253', '27_254', '27_255', '27_256', '27_257', '27_258', '27_259', '27_260', '27_261', '27_262', '27_263', '27_264', '27_265', '27_266', '27_267', '27_268', '27_269', '27_270', '27_271', '27_272', '27_273', '27_274', '27_275', '27_276', '27_277', '27_278', '27_279', '27_280', '27_281', '27_282', '27_283', '27_284', '27_285', '27_286', '27_287', '27_288', '27_289', '27_290', '27_291', '27_292', '27_293', '27_294', '27_295', '27_296', '27_297', '27_298', '27_299', '27_300', '27_301', '27_302', '27_303', '27_304', '27_305', '27_306', '27_307', '27_308', '27_309', '27_310', '27_311', '27_312', '27_313', '27_314', '27_315', '27_316', '27_317', '27_318', '27_319', '27_320', '27_321', '27_322', '27_323', '27_324', '27_325', '27_326', '27_327', '27_328', '27_329', '27_330', '27_331', '27_332', '27_333', '27_334', '27_335', '27_336', '27_337', '27_338', '27_339', '27_340', '27_341', '27_342', '27_343', '27_344', '27_345', '27_346', '27_347', '27_348', '27_349', '27_350', '27_351', '27_352', '27_353', '27_354', '27_355', '27_356', '27_357', '27_358', '27_359', '27_360', '27_361', '27_362', '27_363', '27_364', '27_365', '27_366', '27_367', '27_368', '27_369', '27_370', '27_371', '27_372', '27_373', '27_374', '27_375', '27_376', '27_377', '27_378', '27_379', '27_380', '27_381', '27_382', '27_383', '27_384', '27_385', '27_386', '27_387', '27_388', '27_389', '27_390', '27_391', '27_392', '27_393', '27_394', '27_395', '27_396', '27_397', '27_398', '27_399', '27_400', '27_401', '27_402', '27_403', '27_404', '27_405', '27_406', '27_407', '27_408', '27_409', '27_410', '27_411', '27_412', '27_413', '27_414', '27_415', '27_416', '27_417', '27_418', '27_419', '27_420', '27_421', '27_422', '27_423', '27_424', '27_425', '27_426', '27_427', '27_428', '27_429', '27_430', '27_431', '27_432', '27_433', '27_434', '27_435', '27_436', '27_437', '27_438', '27_439', '27_440', '27_441', '27_442', '27_443', '27_444', '27_445', '27_446', '27_447', '27_448', '27_449', '27_450', '27_451', '27_452', '27_453', '27_454', '27_455', '27_456', '27_457', '27_458', '27_459', '27_460', '27_461', '27_462', '27_463', '27_464', '27_465', '27_466', '27_467', '27_468', '27_469', '27_470', '27_471', '27_472', '27_473', '27_474', '27_475', '27_476', '27_477', '27_478', '27_479', '27_480', '27_481', '27_482', '27_483', '27_484', '27_485', '27_486', '27_487', '27_488', '27_489', '27_490', '27_491', '27_492', '27_493', '27_494', '27_495', '27_496', '27_497', '27_498', '27_499', '27_500', '27_501', '27_502', '27_503', '27_504', '27_505', '27_506', '27_507', '27_508', '27_509', '27_510', '27_511', '27_512', '27_513', '27_514', '27_515', '27_516', '27_517', '27_518', '27_519', '27_520', '27_521', '27_522', '27_523', '27_524', '27_525', '27_526', '27_527', '27_528', '27_529', '27_530', '27_531', '27_532', '27_533', '27_534', '27_535', '27_536', '27_537', '27_538', '27_539', '27_540', '27_541', '27_542', '27_543', '27_544', '27_545', '27_546', '27_547', '27_548', '27_549', '27_550', '27_551', '27_552', '27_553'])

In [35]:
segmented['azp1556'].keys()


Out[35]:
dict_keys(['oot_000', '01_000', '01_001', '01_002', '01_003', '01_004', '01_005', '01_006', '01_007', '01_008', '01_009', '01_010', '01_011', '01_012', '01_013', '01_014', '01_015', '01_016', '01_017', '01_018', '01_019', '01_020', '01_021', '01_022', '01_023', '01_024', '01_025', '01_026', '01_027', '01_028', '01_029', '01_030', '01_031', '01_032', '01_033', '01_034', '01_035', '01_036', '01_037', '01_038', '01_039', '01_040', '01_041', '01_042', '01_043', '01_044', '01_045', '01_046', '01_047', '01_048', '01_049', '01_050', '01_051', '01_052', '01_053', '01_054', '01_055', '01_056', '01_057', '01_058', '01_059', '01_060', '01_061', '01_062', '01_063', '01_064', '01_065', '01_066', '02_000', '02_001', '02_002', '02_003', '02_004', '02_005', '02_006', '02_007', '02_008', '02_009', '02_010', '02_011', '02_012', '02_013', '02_014', '02_015', '02_016', '02_017', '02_018', '02_019', '02_020', '02_021', '02_022', '02_023', '02_024', '02_025', '02_026', '02_027', '02_028', '03_000', '03_001', '03_002', '03_003', '03_004', '03_005', '03_006', '03_007', '03_008', '03_009', '03_010', '03_011', '04_000', '04_001', '04_002', '04_003', '04_004', '04_005', '04_006', '04_007', '04_008', '04_009', '04_010', '04_011', '04_012', '05_000', '05_001', '05_002', '05_003', '05_004', '05_005', '06_000', '06_001', '06_002', '06_003', '06_004', '06_005', '06_006', '06_007', '06_008', '06_009', '06_010', '06_011', '06_012', '06_013', '06_014', '06_015', '06_016', '06_017', '06_018', '06_019', '06_020', '06_021', '06_022', '06_023', '06_024', '06_025', '06_026', '06_027', '06_028', '06_029', '06_030', '06_031', '06_032', '06_033', '07_000', '07_001', '07_002', '07_003', '07_004', '07_005', '07_006', '07_007', '07_008', '07_009', '07_010', '07_011', '07_012', '08_000', '08_001', '08_002', '08_003', '08_004', '08_005', '08_006', '08_007', '08_008', '08_009', '08_010', '08_011', '08_012', '08_013', '08_014', '08_015', '08_016', '08_017', '08_018', '08_019', '08_020', '08_021', '08_022', '08_023', '08_024', '08_025', '08_026', '08_027', '08_028', '09_000', '09_001', '09_002', '09_003', '09_004', '09_005', '09_006', '09_007', '09_008', '09_009', '09_010', '09_011', '09_012', '09_013', '09_014', '09_015', '09_016', '09_017', '09_018', '09_019', '09_020', '09_021', '09_022', '09_023', '09_024', '09_025', '09_026', '09_027', '09_028', '09_029', '09_030', '09_031', '10_000', '10_001', '10_002', '10_003', '10_004', '10_005', '10_006', '10_007', '10_008', '10_009', '10_010', '10_011', '10_012', '10_013', '11_000', '11_001', '11_002', '11_003', '11_004', '11_005', '11_006', '11_007', '11_008', '11_009', '11_010', '11_011', '11_012', '11_013', '11_014', '11_015', '11_016', '11_017', '11_018', '11_019', '11_020', '11_021', '11_022', '11_023', '11_024', '11_025', '11_026', '11_027', '11_028', '11_029', '11_030', '11_031', '11_032', '11_033', '11_034', '11_035', '11_036', '11_037', '11_038', '11_039', '11_040', '11_041', '11_042', '11_043', '11_044', '11_045', '11_046', '11_047', '11_048', '11_049', '11_050', '11_051', '11_052', '11_053', '11_054', '11_055', '11_056', '11_057', '11_058', '11_059', '11_060', '11_061', '11_062', '11_063', '11_064', '11_065', '11_066', '11_067', '11_068', '11_069', '11_070', '11_071', '11_072', '11_073', '11_074', '11_075', '11_076', '11_077', '11_078', '11_079', '11_080', '11_081', '11_082', '11_083', '11_084', '11_085', '11_086', '11_087', '11_088', '11_089', '11_090', '11_091', '11_092', '11_093', '11_094', '11_095', '11_096', '11_097', '11_098', '11_099', '11_100', '11_101', '11_102', '11_103', '11_104', '12_000', '12_001', '12_002', '12_003', '12_004', '12_005', '12_006', '12_007', '12_008', '12_009', '12_010', '12_011', '12_012', '12_013', '12_014', '12_015', '12_016', '12_017', '12_018', '12_019', '12_020', '12_021', '12_022', '12_023', '12_024', '12_025', '12_026', '12_027', '12_028', '12_029', '12_030', '12_031', '12_032', '12_033', '12_034', '12_035', '12_036', '12_037', '12_038', '12_039', '12_040', '12_041', '12_042', '12_043', '12_044', '12_045', '12_046', '12_047', '12_048', '12_049', '12_050', '12_051', '12_052', '12_053', '12_054', '12_055', '12_056', '12_057', '12_058', '12_059', '12_060', '12_061', '12_062', '12_063', '12_064', '12_065', '12_066', '12_067', '12_068', '12_069', '12_070', '12_071', '12_072', '12_073', '12_074', '12_075', '12_076', '12_077', '12_078', '12_079', '12_080', '12_081', '12_082', '12_083', '12_084', '12_085', '12_086', '12_087', '12_088', '12_089', '12_090', '12_091', '12_092', '12_093', '12_094', '12_095', '12_096', '12_097', '12_098', '12_099', '12_100', '12_101', '12_102', '12_103', '12_104', '12_105', '12_106', '12_107', '12_108', '12_109', '12_110', '12_111', '12_112', '12_113', '12_114', '12_115', '12_116', '12_117', '12_118', '12_119', '12_120', '12_121', '12_122', '12_123', '12_124', '12_125', '12_126', '12_127', '12_128', '12_129', '12_130', '12_131', '12_132', '12_133', '12_134', '12_135', '12_136', '12_137', '12_138', '12_139', '12_140', '12_141', '12_142', '12_143', '12_144', '12_145', '12_146', '12_147', '12_148', '12_149', '12_150', '12_151', '12_152', '12_153', '12_154', '12_155', '12_156', '12_157', '12_158', '12_159', '12_160', '12_161', '12_162', '12_163', '12_164', '12_165', '12_166', '12_167', '12_168', '12_169', '12_170', '12_171', '12_172', '12_173', '12_174', '12_175', '12_176', '12_177', '12_178', '13_000', '13_001', '13_002', '13_003', '13_004', '13_005', '13_006', '13_007', '13_008', '13_009', '13_010', '13_011', '13_012', '13_013', '13_014', '13_015', '13_016', '13_017', '13_018', '13_019', '13_020', '13_021', '13_022', '13_023', '13_024', '13_025', '13_026', '13_027', '13_028', '13_029', '13_030', '13_031', '13_032', '13_033', '13_034', '13_035', '13_036', '13_037', '13_038', '13_039', '13_040', '13_041', '13_042', '14_000', '14_001', '14_002', '14_003', '14_004', '14_005', '14_006', '14_007', '14_008', '14_009', '14_010', '14_011', '14_012', '14_013', '14_014', '14_015', '14_016', '14_017', '14_018', '14_019', '14_020', '14_021', '14_022', '14_023', '14_024', '14_025', '14_026', '14_027', '14_028', '14_029', '14_030', '14_031', '14_032', '14_033', '14_034', '14_035', '14_036', '14_037', '14_038', '14_039', '14_040', '14_041', '14_042', '14_043', '14_044', '14_045', '14_046', '14_047', '14_048', '14_049', '14_050', '14_051', '14_052', '14_053', '14_054', '14_055', '14_056', '14_057', '14_058', '14_059', '14_060', '14_061', '14_062', '14_063', '14_064', '14_065', '14_066', '14_067', '14_068', '14_069', '14_070', '14_071', '14_072', '14_073', '14_074', '14_075', '14_076', '14_077', '14_078', '14_079', '14_080', '14_081', '14_082', '14_083', '14_084', '14_085', '14_086', '14_087', '14_088', '14_089', '14_090', '14_091', '14_092', '15_000', '15_001', '15_002', '15_003', '15_004', '15_005', '15_006', '15_007', '15_008', '15_009', '15_010', '15_011', '15_012', '15_013', '15_014', '15_015', '15_016', '15_017', '15_018', '15_019', '15_020', '15_021', '15_022', '15_023', '15_024', '15_025', '15_026', '15_027', '15_028', '15_029', '15_030', '15_031', '15_032', '15_033', '15_034', '15_035', '15_036', '15_037', '15_038', '15_039', '15_040', '15_041', '15_042', '15_043', '15_044', '15_045', '15_046', '15_047', '15_048', '16_000', '16_001', '16_002', '16_003', '16_004', '16_005', '16_006', '16_007', '16_008', '16_009', '16_010', '16_011', '16_012', '16_013', '16_014', '16_015', '16_016', '16_017', '16_018', '16_019', '16_020', '16_021', '16_022', '16_023', '16_024', '16_025', '16_026', '16_027', '16_028', '16_029', '16_030', '16_031', '16_032', '16_033', '16_034', '16_035', '16_036', '16_037', '16_038', '16_039', '16_040', '16_041', '16_042', '16_043', '16_044', '16_045', '16_046', '16_047', '16_048', '16_049', '16_050', '16_051', '16_052', '16_053', '16_054', '16_055', '16_056', '16_057', '16_058', '16_059', '16_060', '16_061', '16_062', '16_063', '16_064', '16_065', '16_066', '16_067', '16_068', '16_069', '16_070', '16_071', '16_072', '16_073', '16_074', '16_075', '16_076', '16_077', '16_078', '16_079', '16_080', '16_081', '16_082', '16_083', '16_084', '16_085', '16_086', '16_087', '16_088', '16_089', '16_090', '16_091', '16_092', '16_093', '16_094', '16_095', '16_096', '16_097', '16_098', '16_099', '16_100', '17_000', '17_001', '17_002', '17_003', '17_004', '17_005', '17_006', '17_007', '17_008', '17_009', '17_010', '17_011', '17_012', '17_013', '17_014', '17_015', '17_016', '17_017', '17_018', '17_019', '17_020', '17_021', '17_022', '17_023', '17_024', '17_025', '17_026', '17_027', '17_028', '17_029', '17_030', '17_031', '17_032', '17_033', '17_034', '17_035', '17_036', '17_037', '17_038', '17_039', '17_040', '17_041', '17_042', '17_043', '17_044', '17_045', '17_046', '17_047', '17_048', '17_049', '17_050', '17_051', '17_052', '17_053', '17_054', '17_055', '17_056', '17_057', '17_058', '17_059', '17_060', '17_061', '17_062', '17_063', '17_064', '17_065', '17_066', '17_067', '17_068', '17_069', '17_070', '17_071', '17_072', '17_073', '17_074', '17_075', '17_076', '17_077', '17_078', '17_079', '17_080', '17_081', '17_082', '17_083', '17_084', '17_085', '17_086', '17_087', '17_088', '17_089', '17_090', '17_091', '17_092', '17_093', '17_094', '17_095', '17_096', '17_097', '17_098', '17_099', '17_100', '17_101', '17_102', '17_103', '17_104', '17_105', '17_106', '17_107', '17_108', '17_109', '17_110', '17_111', '17_112', '17_113', '17_114', '17_115', '17_116', '17_117', '17_118', '17_119', '17_120', '17_121', '17_122', '17_123', '17_124', '17_125', '17_126', '17_127', '17_128', '17_129', '17_130', '17_131', '17_132', '17_133', '17_134', '17_135', '17_136', '17_137', '17_138', '17_139', '17_140', '17_141', '17_142', '17_143', '17_144', '17_145', '17_146', '17_147', '17_148', '17_149', '17_150', '17_151', '17_152', '17_153', '17_154', '17_155', '17_156', '17_157', '17_158', '17_159', '17_160', '17_161', '17_162', '17_163', '17_164', '17_165', '17_166', '17_167', '17_168', '17_169', '17_170', '17_171', '17_172', '17_173', '17_174', '17_175', '17_176', '17_177', '17_178', '17_179', '17_180', '17_181', '17_182', '17_183', '17_184', '17_185', '17_186', '17_187', '17_188', '17_189', '17_190', '17_191', '17_192', '17_193', '17_194', '17_195', '17_196', '17_197', '17_198', '17_199', '17_200', '17_201', '17_202', '17_203', '17_204', '17_205', '17_206', '17_207', '17_208', '17_209', '17_210', '17_211', '17_212', '17_213', '17_214', '17_215', '17_216', '17_217', '17_218', '17_219', '17_220', '17_221', '17_222', '17_223', '17_224', '17_225', '17_226', '17_227', '17_228', '17_229', '17_230', '17_231', '17_232', '17_233', '17_234', '17_235', '17_236', '17_237', '17_238', '17_239', '17_240', '17_241', '17_242', '17_243', '17_244', '17_245', '17_246', '17_247', '17_248', '17_249', '17_250', '17_251', '17_252', '17_253', '17_254', '17_255', '17_256', '17_257', '17_258', '17_259', '17_260', '17_261', '17_262', '17_263', '17_264', '17_265', '17_266', '17_267', '17_268', '17_269', '17_270', '17_271', '17_272', '17_273', '17_274', '17_275', '17_276', '17_277', '17_278', '17_279', '17_280', '17_281', '17_282', '17_283', '17_284', '17_285', '17_286', '17_287', '17_288', '17_289', '17_290', '17_291', '17_292', '17_293', '17_294', '17_295', '17_296', '17_297', '17_298', '17_299', '17_300', '17_301', '17_302', '17_303', '17_304', '17_305', '17_306', '17_307', '17_308', '17_309', '17_310', '17_311', '17_312', '17_313', '17_314', '17_315', '17_316', '17_317', '17_318', '17_319', '17_320', '17_321', '17_322', '17_323', '17_324', '17_325', '17_326', '17_327', '17_328', '17_329', '17_330', '17_331', '17_332', '17_333', '17_334', '17_335', '17_336', '17_337', '17_338', '17_339', '17_340', '17_341', '17_342', '17_343', '17_344', '17_345', '17_346', '17_347', '17_348', '17_349', '17_350', '17_351', '17_352', '17_353', '17_354', '17_355', '17_356', '17_357', '17_358', '17_359', '17_360', '17_361', '17_362', '17_363', '17_364', '17_365', '17_366', '17_367', '17_368', '17_369', '17_370', '17_371', '17_372', '17_373', '17_374', '17_375', '17_376', '17_377', '17_378', '17_379', '17_380', '17_381', '17_382', '17_383', '17_384', '17_385', '17_386', '17_387', '17_388', '17_389', '17_390', '17_391', '17_392', '17_393', '17_394', '17_395', '17_396', '17_397', '17_398', '17_399', '17_400', '17_401', '17_402', '17_403', '17_404', '17_405', '17_406', '17_407', '17_408', '17_409', '17_410', '17_411', '17_412', '17_413', '17_414', '17_415', '17_416', '17_417', '17_418', '17_419', '17_420', '17_421', '17_422', '17_423', '17_424', '17_425', '17_426', '17_427', '17_428', '17_429', '17_430', '17_431', '17_432', '17_433', '17_434', '17_435', '17_436', '17_437', '17_438', '17_439', '17_440', '17_441', '17_442', '17_443', '17_444', '17_445', '17_446', '17_447', '17_448', '17_449', '17_450', '17_451', '17_452', '17_453', '17_454', '17_455', '17_456', '17_457', '17_458', '17_459', '17_460', '17_461', '17_462', '17_463', '17_464', '17_465', '17_466', '17_467', '17_468', '17_469', '17_470', '17_471', '17_472', '17_473', '17_474', '17_475', '17_476', '17_477', '17_478', '17_479', '17_480', '17_481', '17_482', '17_483', '17_484', '17_485', '17_486', '17_487', '17_488', '17_489', '17_490', '17_491', '17_492', '17_493', '17_494', '17_495', '17_496', '17_497', '17_498', '17_499', '17_500', '17_501', '17_502', '17_503', '17_504', '17_505', '17_506', '17_507', '17_508', '17_509', '17_510', '17_511', '17_512', '17_513', '17_514', '17_515', '17_516', '17_517', '17_518', '17_519', '17_520', '17_521', '17_522', '17_523', '17_524', '17_525', '17_526', '17_527', '17_528', '17_529', '17_530', '17_531', '17_532', '17_533', '17_534', '17_535', '17_536', '17_537', '17_538', '17_539', '17_540', '17_541', '17_542', '17_543', '17_544', '17_545', '17_546', '17_547', '17_548', '17_549', '17_550', '17_551', '17_552', '17_553', '17_554', '17_555', '17_556', '17_557', '17_558', '17_559', '18_000', '18_001', '18_002', '18_003', '18_004', '18_005', '18_006', '18_007', '18_008', '18_009', '18_010', '18_011', '18_012', '18_013', '18_014', '18_015', '18_016', '18_017', '18_018', '18_019', '18_020', '18_021', '18_022', '18_023', '18_024', '18_025', '18_026', '18_027', '18_028', '18_029', '18_030', '18_031', '18_032', '18_033', '18_034', '18_035', '18_036', '18_037', '18_038', '18_039', '18_040', '18_041', '18_042', '18_043', '18_044', '18_045', '18_046', '18_047', '18_048', '18_049', '18_050', '18_051', '18_052', '18_053', '18_054', '18_055', '18_056', '18_057', '18_058', '18_059', '18_060', '18_061', '18_062', '18_063', '18_064', '18_065', '18_066', '18_067', '18_068', '18_069', '18_070', '18_071', '18_072', '18_073', '18_074', '18_075', '18_076', '18_077', '18_078', '18_079', '18_080', '18_081', '18_082', '18_083', '18_084', '18_085', '18_086', '18_087', '18_088', '18_089', '18_090', '18_091', '18_092', '18_093', '18_094', '18_095', '18_096', '18_097', '18_098', '18_099', '18_100', '18_101', '18_102', '18_103', '18_104', '18_105', '18_106', '18_107', '18_108', '18_109', '18_110', '18_111', '18_112', '18_113', '18_114', '18_115', '18_116', '18_117', '18_118', '18_119', '18_120', '18_121', '18_122', '18_123', '18_124', '18_125', '18_126', '18_127', '18_128', '18_129', '18_130', '18_131', '18_132', '18_133', '18_134', '18_135', '18_136', '18_137', '18_138', '18_139', '18_140', '18_141', '18_142', '19_000', '19_001', '19_002', '19_003', '19_004', '19_005', '19_006', '19_007', '19_008', '19_009', '19_010', '19_011', '19_012', '19_013', '19_014', '19_015', '19_016', '19_017', '19_018', '19_019', '19_020', '19_021', '19_022', '19_023', '19_024', '19_025', '19_026', '19_027', '19_028', '19_029', '19_030', '19_031', '19_032', '19_033', '19_034', '19_035', '19_036', '19_037', '20_000', '20_001', '20_002', '20_003', '20_004', '20_005', '21_000', '21_001', '21_002', '21_003', '21_004', '21_005', '21_006', '21_007', '21_008', '21_009', '21_010', '21_011', '21_012', '21_013', '21_014', '21_015', '21_016', '21_017', '21_018', '21_019', '21_020', '21_021', '21_022', '21_023', '21_024', '21_025', '21_026', '21_027', '21_028', '21_029', '21_030', '21_031', '21_032', '21_033', '21_034', '21_035', '21_036', '21_037', '21_038', '21_039', '21_040', '21_041', '21_042', '21_043', '21_044', '21_045', '21_046', '21_047', '21_048', '21_049', '21_050', '21_051', '21_052', '21_053', '21_054', '21_055', '21_056', '21_057', '21_058', '21_059', '21_060', '21_061', '21_062', '21_063', '21_064', '21_065', '21_066', '21_067', '21_068', '21_069', '21_070', '21_071', '21_072', '21_073', '21_074', '21_075', '21_076', '21_077', '21_078', '21_079', '21_080', '21_081', '21_082', '21_083', '21_084', '21_085', '21_086', '21_087', '21_088', '21_089', '21_090', '21_091', '21_092', '21_093', '21_094', '21_095', '21_096', '21_097', '21_098', '21_099', '21_100', '21_101', '21_102', '21_103', '21_104', '21_105', '21_106', '21_107', '21_108', '21_109', '21_110', '21_111', '21_112', '21_113', '21_114', '21_115', '21_116', '21_117', '21_118', '21_119', '21_120', '21_121', '21_122', '21_123', '21_124', '21_125', '21_126', '22_000', '22_001', '22_002', '22_003', '22_004', '22_005', '22_006', '22_007', '22_008', '22_009', '22_010', '22_011', '22_012', '22_013', '22_014', '22_015', '22_016', '22_017', '22_018', '22_019', '22_020', '22_021', '22_022', '22_023', '22_024', '22_025', '22_026', '22_027', '22_028', '22_029', '22_030', '22_031', '22_032', '22_033', '22_034', '22_035', '22_036', '22_037', '22_038', '22_039', '22_040', '22_041', '22_042', '22_043', '22_044', '22_045', '22_046', '22_047', '22_048', '22_049', '22_050', '22_051', '22_052', '22_053', '22_054', '22_055', '22_056', '22_057', '22_058', '22_059', '22_060', '22_061', '22_062', '22_063', '22_064', '22_065', '22_066', '22_067', '22_068', '22_069', '22_070', '22_071', '22_072', '22_073', '22_074', '22_075', '22_076', '22_077', '22_078', '22_079', '22_080', '22_081', '22_082', '22_083', '22_084', '22_085', '22_086', '22_087', '22_088', '22_089', '22_090', '22_091', '22_092', '22_093', '22_094', '22_095', '22_096', '22_097', '22_098', '22_099', '22_100', '22_101', '22_102', '22_103', '22_104', '22_105', '22_106', '22_107', '22_108', '22_109', '22_110', '22_111', '22_112', '22_113', '22_114', '22_115', '22_116', '22_117', '22_118', '22_119', '22_120', '22_121', '22_122', '22_123', '22_124', '22_125', '22_126', '22_127', '22_128', '22_129', '22_130', '22_131', '22_132', '22_133', '22_134', '22_135', '22_136', '22_137', '22_138', '22_139', '22_140', '22_141', '22_142', '22_143', '22_144', '22_145', '22_146', '22_147', '22_148', '22_149', '22_150', '22_151', '22_152', '22_153', '22_154', '22_155', '22_156', '22_157', '22_158', '22_159', '22_160', '22_161', '22_162', '22_163', '22_164', '22_165', '22_166', '22_167', '22_168', '22_169', '22_170', '22_171', '22_172', '22_173', '22_174', '22_175', '22_176', '22_177', '22_178', '22_179', '22_180', '22_181', '22_182', '22_183', '22_184', '22_185', '22_186', '22_187', '22_188', '22_189', '22_190', '22_191', '22_192', '22_193', '22_194', '22_195', '22_196', '22_197', '22_198', '22_199', '22_200', '22_201', '22_202', '22_203', '22_204', '22_205', '22_206', '22_207', '22_208', '22_209', '22_210', '22_211', '22_212', '22_213', '22_214', '22_215', '22_216', '22_217', '22_218', '22_219', '22_220', '22_221', '22_222', '22_223', '22_224', '22_225', '22_226', '22_227', '22_228', '22_229', '22_230', '22_231', '22_232', '22_233', '22_234', '22_235', '22_236', '22_237', '22_238', '22_239', '22_240', '22_241', '22_242', '22_243', '22_244', '22_245', '22_246', '22_247', '22_248', '22_249', '22_250', '22_251', '22_252', '22_253', '22_254', '22_255', '22_256', '22_257', '22_258', '22_259', '22_260', '22_261', '22_262', '22_263', '22_264', '22_265', '23_000', '23_001', '23_002', '23_003', '23_004', '23_005', '23_006', '23_007', '23_008', '23_009', '23_010', '23_011', '23_012', '23_013', '23_014', '23_015', '23_016', '23_017', '23_018', '23_019', '23_020', '23_021', '23_022', '23_023', '23_024', '23_025', '23_026', '23_027', '23_028', '23_029', '23_030', '23_031', '23_032', '23_033', '23_034', '23_035', '23_036', '23_037', '23_038', '23_039', '23_040', '23_041', '23_042', '23_043', '23_044', '23_045', '23_046', '23_047', '23_048', '23_049', '23_050', '23_051', '23_052', '23_053', '23_054', '23_055', '23_056', '23_057', '23_058', '23_059', '23_060', '23_061', '23_062', '23_063', '23_064', '23_065', '23_066', '23_067', '23_068', '23_069', '23_070', '23_071', '23_072', '23_073', '23_074', '23_075', '23_076', '23_077', '23_078', '23_079', '23_080', '23_081', '23_082', '23_083', '23_084', '23_085', '23_086', '23_087', '23_088', '23_089', '23_090', '23_091', '23_092', '23_093', '23_094', '23_095', '23_096', '23_097', '23_098', '23_099', '23_100', '23_101', '23_102', '23_103', '23_104', '23_105', '23_106', '23_107', '23_108', '23_109', '23_110', '23_111', '23_112', '23_113', '23_114', '23_115', '23_116', '23_117', '23_118', '23_119', '23_120', '23_121', '23_122', '23_123', '23_124', '23_125', '23_126', '23_127', '23_128', '23_129', '23_130', '23_131', '23_132', '23_133', '23_134', '23_135', '23_136', '23_137', '23_138', '23_139', '23_140', '23_141', '23_142', '23_143', '23_144', '23_145', '23_146', '23_147', '23_148', '23_149', '23_150', '23_151', '23_152', '23_153', '23_154', '23_155', '23_156', '23_157', '23_158', '23_159', '23_160', '23_161', '23_162', '23_163', '23_164', '23_165', '23_166', '23_167', '23_168', '23_169', '23_170', '23_171', '23_172', '23_173', '23_174', '23_175', '23_176', '23_177', '23_178', '23_179', '23_180', '23_181', '23_182', '23_183', '23_184', '23_185', '23_186', '23_187', '23_188', '23_189', '23_190', '23_191', '23_192', '23_193', '23_194', '23_195', '23_196', '23_197', '23_198', '23_199', '23_200', '23_201', '23_202', '23_203', '23_204', '23_205', '23_206', '23_207', '23_208', '23_209', '23_210', '23_211', '23_212', '23_213', '23_214', '23_215', '23_216', '23_217', '23_218', '23_219', '23_220', '23_221', '23_222', '23_223', '23_224', '23_225', '23_226', '23_227', '23_228', '23_229', '23_230', '23_231', '23_232', '23_233', '23_234', '23_235', '23_236', '23_237', '23_238', '23_239', '23_240', '23_241', '23_242', '23_243', '23_244', '23_245', '23_246', '23_247', '23_248', '23_249', '23_250', '23_251', '23_252', '23_253', '23_254', '23_255', '23_256', '23_257', '23_258', '23_259', '23_260', '23_261', '23_262', '23_263', '23_264', '23_265', '23_266', '23_267', '23_268', '23_269', '23_270', '23_271', '23_272', '23_273', '23_274', '23_275', '23_276', '23_277', '23_278', '23_279', '23_280', '23_281', '23_282', '23_283', '23_284', '23_285', '23_286', '23_287', '23_288', '23_289', '23_290', '23_291', '23_292', '23_293', '23_294', '23_295', '23_296', '23_297', '23_298', '23_299', '23_300', '23_301', '23_302', '23_303', '23_304', '23_305', '23_306', '23_307', '23_308', '23_309', '23_310', '23_311', '23_312', '23_313', '23_314', '23_315', '23_316', '23_317', '24_000', '24_001', '24_002', '24_003', '24_004', '24_005', '24_006', '24_007', '24_008', '24_009', '24_010', '24_011', '24_012', '24_013', '24_014', '24_015', '24_016', '24_017', '24_018', '24_019', '24_020', '24_021', '24_022', '24_023', '24_024', '24_025', '24_026', '24_027', '24_028', '24_029', '24_030', '24_031', '24_032', '24_033', '24_034', '24_035', '24_036', '24_037', '24_038', '24_039', '24_040', '24_041', '24_042', '24_043', '24_044', '24_045', '24_046', '24_047', '24_048', '24_049', '24_050', '24_051', '24_052', '24_053', '25_000', '25_001', '25_002', '25_003', '25_004', '25_005', '25_006', '25_007', '25_008', '25_009', '25_010', '25_011', '25_012', '25_013', '25_014', '25_015', '25_016', '25_017', '25_018', '25_019', '25_020', '25_021', '25_022', '25_023', '25_024', '25_025', '25_026', '25_027', '25_028', '25_029', '25_030', '25_031', '25_032', '25_033', '25_034', '25_035', '25_036', '25_037', '25_038', '25_039', '25_040', '25_041', '25_042', '25_043', '25_044', '25_045', '25_046', '25_047', '25_048', '25_049', '25_050', '25_051', '25_052', '25_053', '25_054', '25_055', '25_056', '25_057', '25_058', '25_059', '25_060', '25_061', '25_062', '25_063', '25_064', '25_065', '25_066', '25_067', '25_068', '25_069', '25_070', '25_071', '25_072', '25_073', '25_074', '25_075', '25_076', '25_077', '25_078', '25_079', '25_080', '25_081', '25_082', '25_083', '25_084', '25_085', '25_086', '25_087', '25_088', '25_089', '25_090', '25_091', '25_092', '25_093', '25_094', '25_095', '25_096', '25_097', '25_098', '25_099', '25_100', '25_101', '25_102', '25_103', '25_104', '25_105', '25_106', '25_107', '25_108', '25_109', '25_110', '25_111', '25_112', '25_113', '25_114', '25_115', '25_116', '25_117', '25_118', '25_119', '25_120', '25_121', '25_122', '25_123', '25_124', '25_125', '25_126', '25_127', '25_128', '25_129', '25_130', '25_131', '25_132', '25_133', '25_134', '25_135', '25_136', '25_137', '25_138', '25_139', '25_140', '25_141', '25_142', '25_143', '25_144', '25_145', '25_146', '25_147', '25_148', '25_149', '25_150', '25_151', '25_152', '25_153', '25_154', '25_155', '25_156', '25_157', '25_158', '25_159', '25_160', '25_161', '25_162', '25_163', '25_164', '25_165', '25_166', '25_167', '25_168', '25_169', '25_170', '25_171', '25_172', '25_173', '25_174', '25_175', '25_176', '25_177', '25_178', '25_179', '25_180', '25_181', '25_182', '25_183', '25_184', '25_185', '25_186', '25_187', '25_188', '25_189', '25_190', '25_191', '25_192', '25_193', '25_194', '25_195', '25_196', '25_197', '25_198', '25_199', '25_200', '25_201', '25_202', '25_203', '25_204', '25_205', '25_206', '25_207', '25_208', '25_209', '25_210', '25_211', '25_212', '25_213', '25_214', '25_215', '25_216', '25_217', '25_218', '25_219', '25_220', '25_221', '25_222', '25_223', '25_224', '25_225', '25_226', '25_227', '25_228', '25_229', '25_230', '25_231', '25_232', '25_233', '25_234', '25_235', '25_236', '25_237', '25_238', '25_239', '25_240', '25_241', '25_242', '25_243', '25_244', '25_245', '25_246', '25_247', '25_248', '25_249', '25_250', '25_251', '25_252', '25_253', '25_254', '25_255', '25_256', '25_257', '25_258', '25_259', '25_260', '25_261', '25_262', '25_263', '25_264', '25_265', '25_266', '25_267', '25_268', '25_269', '25_270', '25_271', '25_272', '25_273', '25_274', '25_275', '25_276', '25_277', '25_278', '25_279', '25_280', '25_281', '25_282', '25_283', '25_284', '25_285', '25_286', '25_287', '25_288', '25_289', '25_290', '25_291', '25_292', '25_293', '25_294', '25_295', '25_296', '25_297', '25_298', '25_299', '25_300', '25_301', '25_302', '25_303', '25_304', '25_305', '25_306', '25_307', '25_308', '25_309', '25_310', '25_311', '25_312', '25_313', '25_314', '25_315', '25_316', '25_317', '25_318', '25_319', '25_320', '25_321', '25_322', '25_323', '25_324', '25_325', '25_326', '25_327', '25_328', '25_329', '25_330', '25_331', '25_332', '25_333', '25_334', '25_335', '25_336', '26_000', '26_001', '26_002', '26_003', '26_004', '26_005', '26_006', '26_007', '26_008', '26_009', '26_010', '26_011', '26_012', '26_013', '26_014', '26_015', '26_016', '26_017', '26_018', '26_019', '26_020', '26_021', '26_022', '26_023', '26_024', '26_025', '26_026', '26_027', '26_028', '26_029', '26_030', '26_031', '26_032', '26_033', '26_034', '26_035', '26_036', '26_037', '26_038', '26_039', '26_040', '26_041', '26_042', '26_043', '26_044', '26_045', '26_046', '26_047', '26_048', '26_049', '26_050', '26_051', '26_052', '26_053', '26_054', '26_055', '26_056', '26_057', '26_058', '26_059', '26_060', '26_061', '26_062', '26_063', '26_064', '26_065', '26_066', '26_067', '27_000', '27_001', '27_002', '27_003', '27_004', '27_005', '27_006', '27_007', '27_008', '27_009', '27_010', '27_011', '27_012', '27_013', '27_014', '27_015', '27_016', '27_017', '27_018', '27_019', '27_020', '27_021', '27_022', '27_023', '27_024', '27_025', '27_026', '27_027', '27_028', '27_029', '27_030', '27_031', '27_032', '27_033', '27_034', '27_035', '27_036', '27_037', '27_038', '27_039', '27_040', '27_041', '27_042', '27_043', '27_044', '27_045', '27_046', '27_047', '27_048', '27_049', '27_050', '27_051', '27_052', '27_053', '27_054', '27_055', '27_056', '27_057', '27_058', '27_059', '27_060', '27_061', '27_062', '27_063', '27_064', '27_065', '27_066', '27_067', '27_068', '27_069', '27_070', '27_071', '27_072', '27_073', '27_074', '27_075', '27_076', '27_077', '27_078', '27_079', '27_080', '27_081', '27_082', '27_083', '27_084', '27_085', '27_086', '27_087', '27_088', '27_089', '27_090', '27_091', '27_092', '27_093', '27_094', '27_095', '27_096', '27_097', '27_098', '27_099', '27_100', '27_101', '27_102', '27_103', '27_104', '27_105', '27_106', '27_107', '27_108', '27_109', '27_110', '27_111', '27_112', '27_113', '27_114', '27_115', '27_116', '27_117', '27_118', '27_119', '27_120', '27_121', '27_122', '27_123', '27_124', '27_125', '27_126', '27_127', '27_128', '27_129', '27_130', '27_131', '27_132', '27_133', '27_134', '27_135', '27_136', '27_137', '27_138', '27_139', '27_140', '27_141', '27_142', '27_143', '27_144', '27_145', '27_146', '27_147', '27_148', '27_149', '27_150', '27_151', '27_152', '27_153', '27_154', '27_155', '27_156', '27_157', '27_158', '27_159', '27_160', '27_161', '27_162', '27_163', '27_164', '27_165', '27_166', '27_167', '27_168', '27_169', '27_170', '27_171', '27_172', '27_173', '27_174', '27_175', '27_176', '27_177', '27_178', '27_179', '27_180', '27_181', '27_182', '27_183', '27_184', '27_185', '27_186', '27_187', '27_188', '27_189', '27_190', '27_191', '27_192', '27_193', '27_194', '27_195', '27_196', '27_197', '27_198', '27_199', '27_200', '27_201', '27_202', '27_203', '27_204', '27_205', '27_206', '27_207', '27_208', '27_209', '27_210', '27_211', '27_212', '27_213', '27_214', '27_215', '27_216', '27_217', '27_218', '27_219', '27_220', '27_221', '27_222', '27_223', '27_224', '27_225', '27_226', '27_227', '27_228', '27_229', '27_230', '27_231', '27_232', '27_233', '27_234', '27_235', '27_236', '27_237', '27_238', '27_239', '27_240', '27_241', '27_242', '27_243', '27_244', '27_245', '27_246', '27_247', '27_248', '27_249', '27_250', '27_251', '27_252', '27_253', '27_254', '27_255', '27_256', '27_257', '27_258', '27_259', '27_260', '27_261', '27_262', '27_263', '27_264', '27_265', '27_266', '27_267', '27_268', '27_269', '27_270', '27_271', '27_272', '27_273', '27_274', '27_275', '27_276', '27_277', '27_278', '27_279', '27_280', '27_281', '27_282', '27_283', '27_284', '27_285', '27_286', '27_287', '27_288', '27_289', '27_290', '27_291', '27_292', '27_293', '27_294', '27_295', '27_296', '27_297', '27_298', '27_299', '27_300', '27_301', '27_302', '27_303', '27_304', '27_305', '27_306', '27_307', '27_308', '27_309', '27_310', '27_311', '27_312', '27_313', '27_314', '27_315', '27_316', '27_317', '27_318', '27_319', '27_320', '27_321', '27_322', '27_323', '27_324', '27_325', '27_326', '27_327', '27_328', '27_329', '27_330', '27_331', '27_332', '27_333', '27_334', '27_335', '27_336', '27_337', '27_338', '27_339', '27_340', '27_341', '27_342', '27_343', '27_344', '27_345', '27_346', '27_347', '27_348', '27_349', '27_350', '27_351', '27_352', '27_353', '27_354', '27_355', '27_356', '27_357', '27_358', '27_359', '27_360', '27_361', '27_362', '27_363', '27_364', '27_365', '27_366', '27_367', '27_368', '27_369', '27_370', '27_371', '27_372', '27_373', '27_374', '27_375', '27_376', '27_377', '27_378', '27_379', '27_380', '27_381', '27_382', '27_383', '27_384', '27_385', '27_386', '27_387', '27_388', '27_389', '27_390', '27_391', '27_392', '27_393', '27_394', '27_395', '27_396', '27_397', '27_398', '27_399', '27_400', '27_401', '27_402', '27_403', '27_404', '27_405', '27_406', '27_407', '27_408', '27_409', '27_410', '27_411', '27_412', '27_413', '27_414', '27_415', '27_416', '27_417', '27_418', '27_419', '27_420', '27_421', '27_422', '27_423', '27_424', '27_425', '27_426', '27_427', '27_428', '27_429', '27_430', '27_431', '27_432', '27_433', '27_434', '27_435', '27_436', '27_437', '27_438', '27_439', '27_440', '27_441', '27_442', '27_443', '27_444', '27_445', '27_446', '27_447', '27_448', '27_449', '27_450', '27_451', '27_452', '27_453', '27_454', '27_455', '27_456', '27_457', '27_458', '27_459', '27_460', '27_461', '27_462', '27_463', '27_464', '27_465', '27_466', '27_467', '27_468', '27_469', '27_470', '27_471', '27_472', '27_473', '27_474', '27_475', '27_476', '27_477', '27_478', '27_479', '27_480', '27_481', '27_482', '27_483', '27_484', '27_485', '27_486', '27_487', '27_488', '27_489', '27_490', '27_491', '27_492', '27_493', '27_494', '27_495', '27_496', '27_497', '27_498', '27_499', '27_500', '27_501', '27_502', '27_503', '27_504', '27_505', '27_506', '27_507', '27_508', '27_509', '27_510', '27_511', '27_512', '27_513', '27_514', '27_515', '27_516', '27_517', '27_518', '27_519', '27_520', '27_521', '27_522', '27_523', '27_524', '27_525', '27_526', '27_527', '27_528', '27_529', '27_530', '27_531', '27_532', '27_533', '27_534', '27_535', '27_536', '27_537', '27_538', '27_539', '27_540', '27_541', '27_542', '27_543', '27_544', '27_545', '27_546', '27_547', '27_548', '27_549', '27_550', '27_551', '27_552', '27_553', '27_554', '27_555', '27_556', '27_557', '27_558', '27_559', '27_560', '27_561', '27_562', '27_563', '27_564', '27_565', '27_566', '27_567', '27_568', '27_569', '27_570', '27_571', '27_572', '27_573', '27_574', '27_575', '27_576', '27_577', '27_578', '27_579', '27_580', '27_581', '27_582', '27_583', '27_584', '27_585', '27_586', '27_587', '27_588', '27_589', '27_590', '27_591', '27_592', '27_593', '27_594', '27_595', '27_596', '27_597', '27_598', '27_599', '27_600', '27_601', '27_602', '27_603', '27_604', '27_605', '27_606', '27_607', '27_608', '27_609', '27_610', '27_611', '27_612', '27_613', '27_614', '27_615', '27_616', '27_617', '27_618', '27_619', '27_620', '27_621', '27_622', '27_623', '27_624', '27_625', '27_626', '27_627', '27_628', '27_629', '27_630', '27_631', '27_632', '27_633', '27_634', '27_635', '27_636', '27_637', '27_638', '27_639', '27_640', '27_641', '27_642', '27_643', '27_644', '27_645', '27_646', '27_647', '27_648', '27_649', '27_650', '27_651', '27_652', '27_653', '27_654', '27_655', '27_656', '27_657', '27_658', '27_659', '27_660', '27_661', '27_662', '27_663'])

Discussion

The next step in the workflow would be the alignment. First, we are going to try a [statistical approach](./30-alignment-statistical.ipynb) that is completely ignorant of the linguistic nature of our data...