diff --git a/.gitignore b/.gitignore index 81d3266..877f558 100644 --- a/.gitignore +++ b/.gitignore @@ -1,5 +1,9 @@ +paste.txt +*.html *~ +.*.swp /composer.lock /vendor/ .direnv/ .test.py.swp +typescript diff --git a/paste.txt b/paste.txt deleted file mode 100644 index 8555c78..0000000 --- a/paste.txt +++ /dev/null @@ -1,48 +0,0 @@ - -b -- -d - -a | b -- | - -c | d - - - - 123 -- - 456 - - -a | b | c ---------- -a | b | c - - - -synchronized | synchronously | synchronize | synchronized | synchronizing -1 | 2 | 3 | 4 | 5 - --- | :--- | ---: | === | :---: - -| synchronous | system synthesis | that | transmit -| targeted targeting tasklet | temporary | temporarily - -| synchronous | system synthesis | that | transmit - - -| synchronous | system | synthesis | that | transmit - - - - -whether whatever which whenever whether when weird will write within want workaround writing writing with zombie zombie - - -| a | b | c | -| - | - | - | -| a b c | d | -| a b c | e | f -| a | b | c | e | f -| a b | c | e | f -| a | b | c | e | f -| a | b | c | e | f | g | h | i diff --git a/test.html b/test.html deleted file mode 100644 index 280a97a..0000000 --- a/test.html +++ /dev/null @@ -1,68 +0,0 @@ - -Lorem ipsum dolor sit amet, consectetur adipiscing elit. Sed auctor, nunc non fringilla pulvinar, augue arcu tempor lacus, vel gravida justo sapien vel nibh. Curabitur eget dignissim lorem. Vivamus sit amet urna nec lorem aliquet viverra. Aliquam erat volutpat. Maecenas sed ante vitae erat feugiat faucibus. Integer porttitor nibh eu risus suscipit, ut efficitur mauris sollicitudin. Suspendisse potenti. Integer feugiat mi sed ligula sagittis, id sagittis justo ullamcorper. - - -
a b c
a b c
- - - - - -
1 2 3
4

Lorem ipsum dolor sit amet, consectetur adipiscing elit. Sed auctor, nunc non fringilla pulvinar, augue arcu tempor lacus, vel gravida justo sapien vel nibh. Curabitur eget dignissim lorem. Vivamus sit amet urna nec lorem aliquet viverra. Aliquam erat volutpat. Maecenas sed ante vitae erat feugiat faucibus. Integer porttitor nibh eu risus suscipit, ut efficitur mauris sollicitudin. Suspendisse potenti. Integer feugiat mi sed ligula sagittis, id sagittis justo ullamcorper.

6
7 8 9
- - - - -
1 2 3
4
1 2 3
4 5 6
7 8 9
6
7 8 9
- - -Lorem ipsum dolor sit amet, consectetur adipiscing elit. Sed auctor, nunc non fringilla pulvinar, augue arcu tempor lacus, vel gravida justo sapien vel nibh. Curabitur eget dignissim lorem. Vivamus sit amet urna nec lorem aliquet viverra. Aliquam erat volutpat. Maecenas sed ante vitae erat feugiat faucibus. Integer porttitor nibh eu risus suscipit, ut efficitur mauris sollicitudin. Suspendisse potenti. Integer feugiat mi sed ligula sagittis, id sagittis justo ullamcorper. - - - -
1 2 3
d
- -Lorem ipsum dolor sit amet, consectetur adipiscing elit. Sed auctor, nunc non fringilla pulvinar, augue arcu tempor lacus, vel gravida justo sapien vel nibh. Curabitur eget dignissim lorem. Vivamus sit amet urna nec lorem aliquet viverra. Aliquam erat volutpat. Maecenas sed ante vitae erat feugiat faucibus. Integer porttitor nibh eu risus suscipit, ut efficitur mauris sollicitudin. Suspendisse potenti. Integer feugiat mi sed ligula sagittis, id sagittis justo ullamcorper. - - - -
synchronized synchronously synchronize synchronized synchronizing
1 2 3 4 5
synchronous system synthesis that transmit
targeted targeting tasklet temporary temporarily
synchronous system synthesis that transmit
synchronous system synthesis that transmit
- - -Lorem ipsum dolor sit amet, consectetur adipiscing elit. Sed auctor, nunc non fringilla pulvinar, augue arcu tempor lacus, vel gravida justo sapien vel nibh. Curabitur eget dignissim lorem. Vivamus sit amet urna nec lorem aliquet viverra. Aliquam erat volutpat. Maecenas sed ante vitae erat feugiat faucibus. Integer porttitor nibh eu risus suscipit, ut efficitur mauris sollicitudin. Suspendisse potenti. Integer feugiat mi sed ligula sagittis, id sagittis justo ullamcorper. - - - -
123
456
- -Lorem ipsum dolor sit amet, consectetur adipiscing elit. Sed auctor, nunc non fringilla pulvinar, augue arcu tempor lacus, vel gravida justo sapien vel nibh. Curabitur eget dignissim lorem. Vivamus sit amet urna nec lorem aliquet viverra. Aliquam erat volutpat. Maecenas sed ante vitae erat feugiat faucibus. Integer porttitor nibh eu risus suscipit, ut efficitur mauris sollicitudin. Suspendisse potenti. Integer feugiat mi sed ligula sagittis, id sagittis justo ullamcorper. - - -
a
b
abc
- - - -
a
- - - - -
b
- - - -Lorem ipsum dolor sit amet, consectetur adipiscing elit. Sed auctor, nunc non fringilla pulvinar, augue arcu tempor lacus, vel gravida justo sapien vel nibh. Curabitur eget dignissim lorem. Vivamus sit amet urna nec lorem aliquet viverra. Aliquam erat volutpat. Maecenas sed ante vitae erat feugiat faucibus. Integer porttitor nibh eu risus suscipit, ut efficitur mauris sollicitudin. Suspendisse potenti. Integer feugiat mi sed ligula sagittis, id sagittis justo ullamcorper. - - diff --git a/test.txt b/test.md similarity index 65% rename from test.txt rename to test.md index a15a198..62393ca 100644 --- a/test.txt +++ b/test.md @@ -1,84 +1,92 @@ -Lorem ipsum dolor sit amet, consectetur adipiscing elit. Sed auctor, nunc non fringilla pulvinar, augue arcu tempor lacus, vel gravida justo sapien vel nibh. Curabitur eget dignissim lorem. Vivamus sit amet urna nec lorem aliquet viverra. Aliquam erat volutpat. Maecenas sed ante vitae erat feugiat faucibus. Integer porttitor nibh eu risus suscipit, ut efficitur mauris sollicitudin. Suspendisse potenti. Integer feugiat mi sed ligula sagittis, id sagittis justo ullamcorper. - -a | b | c ---------- -a | b | c - - - - - -| 1 | 2 | 3 | -| - | - | - | -| 4 |

Lorem ipsum dolor sit amet, consectetur adipiscing elit. Sed auctor, nunc non fringilla pulvinar, augue arcu tempor lacus, vel gravida justo sapien vel nibh. Curabitur eget dignissim lorem. Vivamus sit amet urna nec lorem aliquet viverra. Aliquam erat volutpat. Maecenas sed ante vitae erat feugiat faucibus. Integer porttitor nibh eu risus suscipit, ut efficitur mauris sollicitudin. Suspendisse potenti. Integer feugiat mi sed ligula sagittis, id sagittis justo ullamcorper.

| 6 | -| 7 | 8 | 9 | - - - - -| 1 | 2 | 3 | -| - | - | - | -| 4 |
1 2 3
4 5 6
7 8 9
| 6 | -| 7 | 8 | 9 | Lorem ipsum dolor sit amet, consectetur adipiscing elit. Sed auctor, nunc non fringilla pulvinar, augue arcu tempor lacus, vel gravida justo sapien vel nibh. Curabitur eget dignissim lorem. Vivamus sit amet urna nec lorem aliquet viverra. Aliquam erat volutpat. Maecenas sed ante vitae erat feugiat faucibus. Integer porttitor nibh eu risus suscipit, ut efficitur mauris sollicitudin. Suspendisse potenti. Integer feugiat mi sed ligula sagittis, id sagittis justo ullamcorper. -| 1 | 2 | 3 | -| - | - | - | -|d||| - - -Lorem ipsum dolor sit amet, consectetur adipiscing elit. Sed auctor, nunc non fringilla pulvinar, augue arcu tempor lacus, vel gravida justo sapien vel nibh. Curabitur eget dignissim lorem. Vivamus sit amet urna nec lorem aliquet viverra. Aliquam erat volutpat. Maecenas sed ante vitae erat feugiat faucibus. Integer porttitor nibh eu risus suscipit, ut efficitur mauris sollicitudin. Suspendisse potenti. Integer feugiat mi sed ligula sagittis, id sagittis justo ullamcorper. - - - -synchronized | synchronously | synchronize | synchronized | synchronizing -1 | 2 | 3 | 4 | 5 - --- | :--- | ---: | === | :---: - -| synchronous | system synthesis | that | transmit -| targeted targeting tasklet | temporary | temporarily - -| synchronous | system synthesis | that | transmit - - -| synchronous | system | synthesis | that | transmit -Lorem ipsum dolor sit amet, consectetur adipiscing elit. Sed auctor, nunc non fringilla pulvinar, augue arcu tempor lacus, vel gravida justo sapien vel nibh. Curabitur eget dignissim lorem. Vivamus sit amet urna nec lorem aliquet viverra. Aliquam erat volutpat. Maecenas sed ante vitae erat feugiat faucibus. Integer porttitor nibh eu risus suscipit, ut efficitur mauris sollicitudin. Suspendisse potenti. Integer feugiat mi sed ligula sagittis, id sagittis justo ullamcorper. - - 123 -- - 456 - - -Lorem ipsum dolor sit amet, consectetur adipiscing elit. Sed auctor, nunc non fringilla pulvinar, augue arcu tempor lacus, vel gravida justo sapien vel nibh. Curabitur eget dignissim lorem. Vivamus sit amet urna nec lorem aliquet viverra. Aliquam erat volutpat. Maecenas sed ante vitae erat feugiat faucibus. Integer porttitor nibh eu risus suscipit, ut efficitur mauris sollicitudin. Suspendisse potenti. Integer feugiat mi sed ligula sagittis, id sagittis justo ullamcorper. - -a -- -b - abc - - - - - a - - +
+| a | b |

c

d

| +| - | :-: | - | + | d | e | f | +| g i | + x | y | z +x | y | z +[ def ]
1 2 3 | 4 5 6 + q w e r t y
h
+ + + +Lorem ipsum dolor sit amet, consectetur adipiscing elit. Sed auctor, nunc non fringilla pulvinar, augue arcu tempor lacus, vel gravida justo sapien vel nibh. Curabitur eget dignissim lorem. Vivamus sit amet urna nec lorem aliquet viverra. Aliquam erat volutpat. Maecenas sed ante vitae erat feugiat faucibus. Integer porttitor nibh eu risus suscipit, ut efficitur mauris sollicitudin. Suspendisse potenti. Integer feugiat mi sed ligula sagittis, id sagittis justo ullamcorper. + + + + +
  1. 1
  2. 2
  3. 3
| foo +foo bar | baz +| - +| bar + + +Lorem ipsum dolor sit amet, consectetur adipiscing elit. Sed auctor, nunc non fringilla pulvinar, augue arcu tempor lacus, vel gravida justo sapien vel nibh. Curabitur eget dignissim lorem. Vivamus sit amet urna nec lorem aliquet viverra. Aliquam erat volutpat. Maecenas sed ante vitae erat feugiat faucibus. Integer porttitor nibh eu risus suscipit, ut efficitur mauris sollicitudin. Suspendisse potenti. Integer feugiat mi sed ligula sagittis, id sagittis justo ullamcorper. + + +foo | bar +--- | --- +baz | bay + +

Uh-oh | ambiguity + + +Lorem ipsum dolor sit amet, consectetur adipiscing elit. Sed auctor, nunc non fringilla pulvinar, augue arcu tempor lacus, vel gravida justo sapien vel nibh. Curabitur eget dignissim lorem. Vivamus sit amet urna nec lorem aliquet viverra. Aliquam erat volutpat. Maecenas sed ante vitae erat feugiat faucibus. Integer porttitor nibh eu risus suscipit, ut efficitur mauris sollicitudin. Suspendisse potenti. Integer feugiat mi sed ligula sagittis, id sagittis justo ullamcorper. + + + +
1 2 3
| foo +| - +| bar + + +Lorem ipsum dolor sit amet, consectetur adipiscing elit. Sed auctor, nunc non fringilla pulvinar, augue arcu tempor lacus, vel gravida justo sapien vel nibh. Curabitur eget dignissim lorem. Vivamus sit amet urna nec lorem aliquet viverra. Aliquam erat volutpat. Maecenas sed ante vitae erat feugiat faucibus. Integer porttitor nibh eu risus suscipit, ut efficitur mauris sollicitudin. Suspendisse potenti. Integer feugiat mi sed ligula sagittis, id sagittis justo ullamcorper. + + - - - b +|a +|- +
+ + + + + +|- +|b
Lorem ipsum dolor sit amet, consectetur adipiscing elit. Sed auctor, nunc non fringilla pulvinar, augue arcu tempor lacus, vel gravida justo sapien vel nibh. Curabitur eget dignissim lorem. Vivamus sit amet urna nec lorem aliquet viverra. Aliquam erat volutpat. Maecenas sed ante vitae erat feugiat faucibus. Integer porttitor nibh eu risus suscipit, ut efficitur mauris sollicitudin. Suspendisse potenti. Integer feugiat mi sed ligula sagittis, id sagittis justo ullamcorper. + + + +foo + + +1 | 2 | 3 +-- | -- | -- + +4 | 5 | 6 + + + + + + diff --git a/test.py b/test.py index 498e437..19f9456 100644 --- a/test.py +++ b/test.py @@ -1,557 +1,463 @@ import re; -def find_closer(row): - - # if (m := re.match(r"([^|<]*)([|]+)", row)): - # print(f'found vbar ("{m.group(2)}")'); - - # content = m.group(1).strip(); - - # print(f'content = "{content}"'); - - # num_vbars = len(m.group(2)); - - # if num_vbars > 1: - # attributes['colspan'] = num_vbars; - - # row = row[len(m.group(0)):]; - - # print(f'row = "{row}"'); - # elif (m := re.match(r"([^|<]*)", row)): - # print(f"found close HTML tag"); - - # content = m.group(1).strip(); - - # print(f'content = "{content}"'); - - # row = row[len(m.group(0)):]; - - # print(f'row = "{row}"'); - # elif (m := re.match(r"([^|<]*)<(th|td) ", row)): - # print(f"found open HTML tag ({m.group(2)})"); - - # content = m.group(1).strip(); - - # print(f'content = "{content}"'); - - # row = row[len(m.group(1)):]; - - # print(f'row = "{row}"'); - # elif (m := re.match(r"([^<|]*)$", row)): - # print(f"found eol"); - - # content = m.group(1).strip(); - - # print(f'content = "{content}"'); - - # row = row[len(m.group(0)):]; - - # print(f'row = "{row}"'); - # else: - # print(f"could not find valid closer? huh?!? throwing!"); - - # raise SyntaxError("could not valid closer for cell"); - - if depth: - assert(not "TODO"); - - return content, row; - -# def do_row(row, column_info, default_tag = "td"): -# print(f'row = "{row}"'); -# -# row = row.lstrip(); -# -# out = ""; -# -# column_index = 0; -# -# while row: -# print("new cell"); -# -# tag = ""; -# -# attributes = {}; -# -# if column_index < len(column_info): -# align = column_info[column_index]['align']; -# -# if align != 'default': -# attributes['align'] = align; -# -# print(f'attributes = "{attributes}"'); -# -# print("looking for starter"); -# -# if (m := re.match(r"^[|]", row)): -# print("found opening vbar"); -# -# if column_index < len(column_info): -# tag = column_info[column_index]['default-tag'] -# else: -# tag = default_tag; -# -# print(f'tag = "{tag}"'); -# -# row = row[1:]; -# -# print(f'row = "{row}"'); -# -# elif (m := re.match(r"^<([a-z]+)(?: +([^<>]*))?>", row)): -# print("found opening HTML tag"); -# -# tag = m.group(1); -# -# print(f'tag = "{tag}"'); -# -# raw_attributes = m.group(2); -# -# while raw_attributes: -# if (mm := re.match(f'\s*([a-z0-9]+)\s*=\s*"([^"]+)"', raw_attributes)): -# attribute = mm.group(1); -# -# value = mm.group(2); -# -# print(f'attribute = "{attribute}"'); -# -# print(f'value = "{value}"'); -# -# if attribute in attributes and attribute == "style": -# attributes[attribute] += '; ' + value; -# else: -# attributes[attribute] = value; -# -# print(f'attributes = "{attributes}"'); -# -# raw_attributes = raw_attributes[len(mm.group(0)):]; -# -# print(f'raw_attributes = "{raw_attributes}"'); -# else: -# print(f'could not parse HTML attributes?! huh?! throwing! '); -# -# raise SyntaxError("could not parse HTML attributes"); -# -# row = row[len(m.group(0)):]; -# -# print(f'row = "{row}"'); -# elif (m := re.match(r"^<([a-z]+)", row)): -# print("found HTML open, but it's incomplete? huh?! throwing!"); -# -# raise SyntaxError("could not find '>' for HTML open tag"); -# elif column_index < len(column_info): -# print("found nothing, defaulting to column info"); -# -# tag = column_info[column_index]['default-tag'] -# -# print(f'tag = "{tag}"'); -# else: -# print(f"found nothing, defaulting default_tag ({default_tag})"); -# -# tag = default_tag; -# -# print(f'tag = "{tag}"'); -# -# print("looking for closer"); -# -# content = ""; -# -# depth = 0; -# -# while row: -# if (m := re.match("\s+", row)): -# content += m.group(0); -# row = row[len(m.group(0)):]; -# print(f'row = "{row}"'); -# elif (m := re.match("\w+", row)): -# content += m.group(0); -# row = row[len(m.group(0)):]; -# print(f'row = "{row}"'); -# elif (m := re.match("[.,]+", row)): -# content += m.group(0); -# row = row[len(m.group(0)):]; -# print(f'row = "{row}"'); -# elif not depth and (m := re.match("<(td|tr)", row)): -# print("found HTML open tag: {m.group(1)}"); -# break; -# elif not depth and (m := re.match("", row)): -# print("found HTML close tag: {m.group(1)}"); -# row = row[len(m.group(0)):] -# print(f'row = "{row}"'); -# break; -# elif not depth and (m := re.match(r"([|]+)", row)): -# print(f'found vbar ("{m.group(1)}")'); -# -# num_vbars = len(m.group(1)); -# -# if num_vbars > 1: -# attributes['colspan'] = num_vbars; -# -# row = row[len(m.group(0)):] -# print(f'row = "{row}"'); -# -# break; -# elif (m := re.match("", row)): -# content += m.group(0); -# depth += 1; -# row = row[len(m.group(0)):] -# print(f'row = "{row}"'); -# print(f'depth = {depth}'); -# elif (m := re.match("
", row)): -# content += m.group(0); -# depth -= 1; -# row = row[len(m.group(0)):] -# print(f'row = "{row}"'); -# print(f'depth = {depth}'); -# elif (m := re.match("<[a-z]+(?:\s+[^<>]*)?>", row)): -# content += m.group(0); -# row = row[len(m.group(0)):] -# print(f'row = "{row}"'); -# elif (m := re.match("", row)): -# content += m.group(0); -# row = row[len(m.group(0)):] -# print(f'row = "{row}"'); -# elif (m := re.match(r"`[^`\n]+`", row)): -# assert(not "TODO"); -# else: -# print(f'row = "{row}"'); -# assert(not "TODO"); -# -# if attributes: -# attributes = " ".join(f'{key}="{value}"' -# for key, value in sorted(attributes.items())); -# -# cell = f"<{tag} {attributes}> {content} "; -# else: -# cell = f"<{tag}> {content} "; -# -# print(f'cell = "{cell}"'); -# -# out += cell; -# -# column_index += 1; -# -# print(f'out = "{out}"'); -# -# return out; +from itertools import product def parse_colinfo(linesep): - column_info = []; + column_info = []; - linesep = linesep.strip(); + linesep = linesep.strip(); - print(f"linesep = {linesep}"); + print(f"linesep = {linesep}"); - if linesep.startswith("|"): - linesep = linesep[1:] + if linesep.startswith("|"): + linesep = linesep[1:] - print(f"linesep = {linesep}"); + print(f"linesep = {linesep}"); - if linesep.endswith("|"): - linesep = linesep[:-1] + if linesep.endswith("|"): + linesep = linesep[:-1] - print(f"linesep = {linesep}"); + print(f"linesep = {linesep}"); - column_info = []; + column_info = []; - for sep in linesep.split("|"): - sep = sep.strip() + for sep in linesep.split("|"): + sep = sep.strip() - print(f'sep = "{sep}"'); + print(f'sep = "{sep}"'); - if re.match(r"^:-+$", sep): - appendme = {'align': 'left', 'default-tag': 'td'}; - elif re.match(r"^-+:$", sep): - appendme = {'align': 'right', 'default-tag': 'td'}; - elif re.match(r"^:-+:$", sep): - appendme = {'align': 'center', 'default-tag': 'td'}; - elif re.match(r"^-+$", sep): - appendme = {'align': 'default', 'default-tag': 'td'}; - elif re.match(r"^:=+$", sep): - appendme = {'align': 'left', 'default-tag': 'th'}; - elif re.match(r"^=+:$", sep): - appendme = {'align': 'right', 'default-tag': 'th'}; - elif re.match(r"^:=+:$", sep): - appendme = {'align': 'center', 'default-tag': 'th'}; - elif re.match(r"^=+$", sep): - appendme = {'align': 'default', 'default-tag': 'th'}; - else: - assert(not "TODO"); + if re.match(r"^:-+$", sep): + appendme = {'align': 'left', 'default-tag': 'td'}; + elif re.match(r"^-+:$", sep): + appendme = {'align': 'right', 'default-tag': 'td'}; + elif re.match(r"^:-+:$", sep): + appendme = {'align': 'center', 'default-tag': 'td'}; + elif re.match(r"^-+$", sep): + appendme = {'align': 'default', 'default-tag': 'td'}; + elif re.match(r"^:=+$", sep): + appendme = {'align': 'left', 'default-tag': 'th'}; + elif re.match(r"^=+:$", sep): + appendme = {'align': 'right', 'default-tag': 'th'}; + elif re.match(r"^:=+:$", sep): + appendme = {'align': 'center', 'default-tag': 'th'}; + elif re.match(r"^=+$", sep): + appendme = {'align': 'default', 'default-tag': 'th'}; + else: + raise SyntaxError("bad seperator!"); - print(f'appendme = {appendme}'); + print(f'appendme = {appendme}'); - column_info.append(appendme); + column_info.append(appendme); - return column_info; + return column_info; -def do_table_row(): +class State: + def __init__(self, section_tag, default_cell_tag, column_info = []): + self.section_tag = section_tag; - # we can eat zero or more table parts, which special handling for "" + self.default_cell_tag = default_cell_tag; - # we may find the end of the line after all table parts have run + self.column_info = column_info; - # when if we find something that's not a table part, it's gotta be content + self.already_opened_section = 0; - # start reading through the cells, building them up +def do_table_line(state, line): + """ + I'm supposed to return the whole HTML. + Including the if needed. + """ - assert(not "TODO"); + print(f'line = "{line}"'); -def do_table(header, linesep, body): + tags = r"(?:colgroup|col|thead|tr|tbody|tfoot)" - assert(not "TODO"); + passthrough_pattern = fr"(?:<{tags}(?:[\s]+[^>]*)?>|)"; - # passthroughs = [ - # r"", - # r"", - # r"", - # r"", - # r"", - # r"", - # ]; + start_tag_pattern = fr"<{state.section_tag}(?:[\s]+[^>]*)?>" - # output_table = ""; + open_tr_pattern = r"]*)?>[\s]*"; - # inside_thead = 0; - # inside_tr = 0; + open_caption_pattern = r"]*)?>"; - # print("processing header rows"); + cell_delimiter = r"(?:[|]|<(?:tr|th)(?:[\s]+[^<>]*)?>)"; - # for row in header.split("\n"): - # print(f'row = "{row}"'); + caption_sentinel_pattern = "(?:" + \ + '|'.join((cell_delimiter, passthrough_pattern, start_tag_pattern, + open_tr_pattern, open_caption_pattern)) + ")" - # while row: - # if (m := re.match(r'\s+', row)): - # row = row[len(m.group(0)):]; + already_open_tr = 0; - # print(f'row = "{row}"'); + out = ""; - # continue; + while line: + # Is it whatever our start tag is? + if (m := re.match(start_tag_pattern, line)): + # we'll pass this through, and remember that we don't need to do + # it ourselves + print("found our start tag"); - # for passthrough in passthroughs: - # if row.startswith(passthrough): - # assert(not "TODO"); + out += m.group(0); - # continue; + line = line[len(m.group(0)):]; - # # explicit caption with optional attributes - # if (m := re.match(r"\n]*))?>([^\n]+)", row)): - # print(f'found explicit caption tag: "{m.group(0)}"'); + print(f'line = "{line}"'); - # output_table += m.group(0); + state.already_opened_section = 1; - # row = row[len(m.group(0)):]; + continue; - # print(f'row = "{row}"'); + # Is it a we should just pass through? + if (m := re.match(open_tr_pattern, line)): - # wrote_thead = 1; + # we'll also pass this through, and remember that we don't need + # to do it ourselves. - # continue; + print("found our tr tag"); - # # send thead through, but remember we shouldn't do one outselves - # if (m := re.match(r'\n]*)?>', row)): - # print(f'found explicit thead tag: "{m.group(0)}"'); + if not state.already_opened_section: + out += f"<{state.section_tag}>"; + state.already_opened_section = 1; - # output_table += m.group(0); + out += m.group(0); - # inside_thead = 1; + line = line[len(m.group(0)):]; - # row = row[len(m.group(0)):]; + print(f'line = "{line}"'); - # print(f'row = "{row}"'); + already_open_tr = 1; - # continue; - # - # # does this row have an explicit HTML tag? - # if (m := re.match(r"\n]*)?>", row)): - # print(f'found explicit tr tag: "{m.group(0)}"'); + continue; - # output_table += m.group(0); + # Is it the ""; + # For the caption, we'll need to keep eating until we see + # the caption sentinel, or end-of-line - # wrote_thead = 1; - # - # if not inside_tr: - # output_table += ""; + while line: + if (m := re.match(r"", line)): + line = line[len(m.group(0)):]; - # # parse row line - # html_row = do_row(row, [], default_tag = "th"); - # - # print(f'html_row = "{html_row}"'); + print(f'line = "{line}"'); - # output_table += html_row; + break; - # output_table += ""; + if (m := re.match(caption_sentinel_pattern, line)): + break; - # inside_tr = 0; + out += line[0]; - # break; + line = line[1:]; - # print(f'output_table = "{output_table}"'); + print(f'line = "{line}"'); - # column_info = parse_colinfo(linesep); + out += ""; - # first_tbody = 1; + continue; - # inside_tbody = 0; - # inside_tr = 0; + # Is it some table part we should just pass through? + if (m := re.match(passthrough_pattern, line)): + print(f'found passthrough tag: "{m.group(0)}"'); - # for row in body.strip().split('\n'): - # print(f'row = "{row}"'); + out += m.group(0); - # if not row.strip(): - # print("blank line; new tbody"); + line = line[len(m.group(0)):]; - # inside_tbody = 0; + print(f'line = "{line}"'); - # continue; + continue; - # while row: - # if (m := re.match(r'\s+', row)): - # row = row[len(m.group(0)):]; + # If we made it here, it must actually be content + break; - # print(f'row = "{row}"'); + if line: + # If there's anything to read after the table parts, it's gotta be cells - # continue; + print("new table row"); - # for passthrough in passthroughs: - # if row.startswith(passthrough): - # assert(not "TODO"); + column_index = 0; - # continue; + if not state.already_opened_section: + out += f"<{state.section_tag}>"; + state.already_opened_section = 1; - # # explicit caption with optional attributes - # if (m := re.match(r"\n]*))?>([^\n]+)", row)): - # print(f'found explicit caption tag: "{m.group(0)}"'); + if not already_open_tr: + out += ""; - # # caption eat content until tablepart or delimitor + while line: + print("new cell"); - # # we don't eat either the tablepart of the delimitor, let - # # whatever future logic process that + tag = ""; - # assert(not "TODO"); - # # output_table += m.group(0); + print("loading attributes"); - # # row = row[len(m.group(0)):]; + attributes = {}; - # # print(f'row = "{row}"'); + if column_index < len(state.column_info): + align = state.column_info[column_index]['align']; - # # wrote_thead = 1; + if align != 'default': + attributes['align'] = align; - # # continue; + print(f'attributes = "{attributes}"'); - # # explicit HTML tbody. pass it through and take note - # if (m := re.match(r'', row)): - # print(f'found explicit tbody tag: "{m.group(0)}"'); + print("looking for starter"); - # output_table += m.group(0); + if (m := re.match(r"[|]", line)): + print("found opening vbar"); - # inside_tbody = 1; + if column_index < len(state.column_info): + tag = state.column_info[column_index]['default-tag'] + else: + tag = state.default_cell_tag; - # row = row[len(m.group(0)):]; + print(f'tag = "{tag}"'); - # print(f'row = "{row}"'); + line = line[1:]; - # wrote_thead = 1; + print(f'line = "{line}"'); + elif (m := re.match(r"<([a-z]+)(?:[\s]+([^<>]*))?>", line)): + print("found opening HTML tag"); - # continue; + tag = m.group(1); - # # does this row have an explicit HTML tag? - # if (m := re.match("", row)): - # print(f'found explicit tr tag: "{m.group(0)}"'); + print(f'tag = "{tag}"'); - # output_table += m.group(0); + raw_attributes = m.group(2); - # inside_tr = 1; + while raw_attributes: + if (mm := re.match(fr'\s*([a-z0-9]+)\s*=\s*"([^"]+)"', raw_attributes)): + attribute = mm.group(1); - # row = row[len(m.group(0)):]; + value = mm.group(2); - # print(f'row = "{row}"'); + print(f'attribute = "{attribute}"'); - # continue; + print(f'value = "{value}"'); - # print("tbody content"); + if attribute in attributes and attribute == "style": + attributes[attribute] += '; ' + value; + else: + attributes[attribute] = value; - # if not inside_tbody: - # output_table += ""; - # - # if not inside_tr: - # output_table += ""; + print(f'attributes = "{attributes}"'); - # html_row = do_row(row, column_info, default_tag = "td"); - # - # print(f'html_row = "{html_row}"'); + raw_attributes = raw_attributes[len(mm.group(0)):]; - # output_table += html_row; + print(f'raw_attributes = "{raw_attributes}"'); + else: + print(f'could not parse HTML attributes?! huh?! throwing! '); - # output_table += ""; + raise SyntaxError("could not parse HTML attributes"); - # inside_tr = 0; + line = line[len(m.group(0)):]; - # break; + print(f'line = "{line}"'); + elif (m := re.match(r"<([a-z]+)", line)): + print("found HTML open, but it's incomplete? huh?! throwing!"); - # # if (caption := mm.group(4)): - # # output_table += f'' + raise SyntaxError("could not find '>' for HTML open tag"); + elif column_index < len(state.column_info): + print("found nothing, defaulting to column info"); - # # assert(not "CHECK"); + tag = state.column_info[column_index]['default-tag'] - # output_table += "
" table part? + if (m := re.match(open_caption_pattern, line)): - # inside_tr = 1; + print(f'found caption tag: "{m.group(0)}"'); - # row = row[len(m.group(0)):]; + out += m.group(0); - # print(f'row = "{row}"'); + line = line[len(m.group(0)):]; - # continue; + print(f'line = "{line}"'); - # print("thead content"); - # - # if not inside_thead: - # output_table += "
{caption}
"; + print(f'tag = "{tag}"'); + else: + print(f"found nothing, defaulting default_tag ({state.default_cell_tag})"); - # return "\n\n" + output_table + "\n\n"; + tag = state.default_cell_tag; + + print(f'tag = "{tag}"'); + + print("looking for closer"); + + content = ""; + + depth = 0; + + while line: + if (m := re.match("(?:\\s|\\w|[.,-])+", line)): + content += m.group(0); + line = line[len(m.group(0)):]; + print(f'line = "{line}"'); + elif not depth and (m := re.match("<(td|th)", line)): + print(f"found HTML open tag: {m.group(1)}"); + break; + elif not depth and (m := re.match("", line)): + print(f"found HTML close tag: {m.group(1)}"); + line = line[len(m.group(0)):] + print(f'line = "{line}"'); + break; + elif not depth and (m := re.match(r"([|]+)", line)): + print(f'found vbar ("{m.group(1)}")'); + + num_vbars = len(m.group(1)); + + if num_vbars > 1: + attributes['colspan'] = num_vbars; + + line = line[len(m.group(0)):] + + print(f'line = "{line}"'); + break; + elif (m := re.match("", line)): + content += m.group(0); + depth += 1; + line = line[len(m.group(0)):] + print(f'line = "{line}"'); + print(f'depth = {depth}'); + elif (m := re.match("
", line)): + content += m.group(0); + depth -= 1; + if depth < 0: raise SyntaxError("negative depth; bad HTML"); + line = line[len(m.group(0)):] + print(f'line = "{line}"'); + print(f'depth = {depth}'); + # elif (m := re.match(fr"", line)): + # # ignore the closers for table parts, no passthrough + # line = line[len(m.group(0)):] + # print(f'line = "{line}"'); + elif (m := re.match("<[a-z]+(?:\\s+[^<>]*)?>", line)): + content += m.group(0); + line = line[len(m.group(0)):] + print(f'line = "{line}"'); + elif (m := re.match("", line)): + content += m.group(0); + line = line[len(m.group(0)):] + print(f'line = "{line}"'); + elif (m := re.match(r"`[^`\n]+`", line)): + content += m.group(0); + line = line[len(m.group(0)):] + print(f'line = "{line}"'); + else: + print(f'line = "{line}"'); + + assert(not "TODO"); + + if attributes: + attributes = " ".join(f'{key}="{value}"' + for key, value in sorted(attributes.items())); + + cell = f"<{tag} {attributes}> {content} "; + else: + cell = f"<{tag}> {content} "; + + print(f'cell = "{cell}"'); + + out += cell; + + column_index += 1; + + print(f'out = "{out}"'); + + return out; + +def do_table(table_open_tag, header_lines, seperator_line, body_lines, optional_caption): + + out = ""; + + # handle explicit table tag? + if table_open_tag: + out += table_open_tag + "\n"; + else: + # otherwise, add a default one: + out += "" + "\n"; + + state = State(section_tag = "thead", default_cell_tag = "th"); + + # Process the header lines: + for line in header_lines: + html_table_line = do_table_line(state, line); + + out += html_table_line + "\n"; + + # Handle line seperator: + column_info = parse_colinfo(seperator_line); + + # Process the body lines: + for lines in body_lines: + state = State(section_tag = "tbody", \ + default_cell_tag = "td", \ + column_info = column_info); + + for line in lines: + html_table_line = do_table_line(state, line); + + out += html_table_line + "\n"; + + # Consider the optional caption + if optional_caption: + out += f"\n"; + + out += "
{optional_caption}
\n"; + + for o in out.split("\n"): + print(o); + + return "\n\n" + out + "\n\n"; def handle_table(m): - header = m.group(1); - linesep = m.group(2); - body = m.group(3); + print("handle_table"); - try: - return "" + do_table(header, linesep, body) + "
"; - except SyntaxError as e: - print(f"caught syntax error: {e}"); - print("moving on to next table..."); - return m.group(0); + matched = m.group(0); -# def handle_table2(m): -# table_attributes = m.group(1) or ""; -# header = m.group(2); -# linesep = m.group(3); -# body = m.group(4); -# -# try: -# return f"" + do_table(header, linesep, body) + "
"; -# except SyntaxError as e: -# print(f"caught syntax error: {e}"); -# print("moving on to next table..."); -# return m.group(0); + print(f'matched = """{matched}"""'); -with open("test.txt") as stream: - text = stream.read(); + optional_table_open = m.group(1); + + one_or_more_header_lines = m.group(2); + + seperator_line = m.group(3); + + one_or_more_body_lines = m.group(4); + + optional_caption = m.group(5); + + assert(seperator_line is not None) + + try: + return do_table( + optional_table_open, + one_or_more_header_lines.strip().split("\n"), + seperator_line, + [e.strip().split("\n") + for e in one_or_more_body_lines.strip().split("\n\n")], + optional_caption, + ); + except SyntaxError as e: + print(f"caught syntax error: {e}"); + print("moving on to next table..."); + return m.group(0); + +with open("test.md") as stream: + text = stream.read(); # delimiters between cells -delimiter = r"(?: [|] | | )"; +delimiter = r"(?:[|]|<(?:tr|th)(?:[\s]+[^<>]*)?>)"; # A row is anything with at least one delimiter row = fr"(?: .* {delimiter} .*)"; # Most table parts are simple. -table_part = "(?: | | | | | )"; +table_tags = r"(?:colgroup|col|thead|tr|tbody|tfoot|caption)" +table_part = fr"(?:<{table_tags}(?:\s+[^<>]*)?>|)"; # captions eat until the next table part or delimiter -temp = fr"(?: {table_part} | )"; +# temp = fr"(?: {table_part} | )"; # caption_table_part = fr"(?: (?! (?: {delimiter} | {temp})) .*)" # caption_table_part = fr"(?: (?!{delimiter}) .*)" -caption_table_part = fr"(?: [^<>]* )" +# caption_table_part = fr"(?: [^<>]* )" +caption_table_part = fr"(?: [^<>]*)" table_part = fr"(?: {table_part} | {caption_table_part})"; # A table line can also be all table parts @@ -561,98 +467,52 @@ row = fr"(?:{row} | {table_part}+)"; seperator_line = r"\s* [|]? \s* [-=:]+ \s* (?: \s* [|] \s* [-=:]* \s* )* \s*" # Regex for whole table: -table = fr""" - # two blank lines: - [\n]{2} +for o, c in product((1, 0), repeat=2): + table = fr""" + # two blank lines: + [\n]{{2}} - # optional open table tag: - (?: ()? \n) + # optional or required open table tag: + (?:(]*)?>) \n){{{o},1}} - # one or more header rows: - ((?: {row} \n{{1,2}}))+ + # zero or one or more header rows: + ((?: {row} \n){{{1-o},}}) - # line seperator: - ({seperator_line}) \n + # line seperator: + ({seperator_line}) [\n] - # one or more body rows: - ((?: {row} \n{{1,2}}))+ + # zero or one or more body rows, with empty lines of one: + ((?: {row} [\n]{{1,2}}){{{1-c},}}) - # optional caption: - (?: \[ ([a-z0-9 "']+) \] \n)? + # optional caption: + (?: \[ ([a-z0-9 "']+) \] \n)? - # optional close table tag: - (?: (
)? \n) + # optional or required close table tag: + (?: [\n]){{{c},1}} + + # two blank lines: + [\n]{{2}} + """; + + text = re.sub(table, handle_table, text, flags=re.VERBOSE) + +text += """ + - # two blank lines: - [\n]{2} """; +with open("test.html", "w") as stream: + stream.write(text); -print(table); - -text = re.sub(table, handle_table, text, flags=re.VERBOSE) - -# -# -# -# text = re.sub(r""" -# # blank line before: -# [\n]{1} -# -# # header: -# ( (?: [^\n]+ \n)+ ) -# -# # seperator line: -# (\s* [|]? \s* [-=:]+ \s* (?: \s* [|] \s* [-=:]* \s* )* \s*) \n -# -# # body, which is nothing but table parts, or contains at least one -# -# # delimiter ("|", "", ""), or a line -# -# # "" is special table tag, that may contain anything up to: -# # the end of line -# # other tableparts -# # explicit start of cell -# -# ((?: -# # It contains a deliminator OR it's enitrely table parts -# ( .* ("|" | "" | "" ) .*) -# | ( "" -# | "" -# | "" -# | "" -# | "" -# | "" (?!^ (("|" | "" | "") | table part))+ )+ -# -# # optionally extra newline after -# \n? -# )+) -# -# # optional caption: (conflicts with tom cells, or even just normal rows) -# # (?: (\[ [^][\n]+ \]) \n )? -# -# # blank line after: -# [\n]{1} -# """, handle_table, text, flags=re.VERBOSE) -# -# print(f'text = """{text}"""'); -# -# text += """ -# -# """; -# -# with open("test.html", "w") as stream: -# stream.write(text); -# diff --git a/typescript b/typescript deleted file mode 100644 index 8f3bfee..0000000 --- a/typescript +++ /dev/null @@ -1,1254 +0,0 @@ -Script started on 2025-11-16 18:35:46-05:00 [TERM="xterm-256color" TTY="/dev/pts/2" COLUMNS="84" LINES="32"] -text = """ -Lorem ipsum dolor sit amet, consectetur adipiscing elit. Sed auctor, nunc non fringilla pulvinar, augue arcu tempor lacus, vel gravida justo sapien vel nibh. Curabitur eget dignissim lorem. Vivamus sit amet urna nec lorem aliquet viverra. Aliquam erat volutpat. Maecenas sed ante vitae erat feugiat faucibus. Integer porttitor nibh eu risus suscipit, ut efficitur mauris sollicitudin. Suspendisse potenti. Integer feugiat mi sed ligula sagittis, id sagittis justo ullamcorper. - -a | b | c ---------- -a | b | c - - - - - -| 1 | 2 | 3 | -| - | - | - | -| 4 |

Lorem ipsum dolor sit amet, consectetur adipiscing elit. Sed auctor, nunc non fringilla pulvinar, augue arcu tempor lacus, vel gravida justo sapien vel nibh. Curabitur eget dignissim lorem. Vivamus sit amet urna nec lorem aliquet viverra. Aliquam erat volutpat. Maecenas sed ante vitae erat feugiat faucibus. Integer porttitor nibh eu risus suscipit, ut efficitur mauris sollicitudin. Suspendisse potenti. Integer feugiat mi sed ligula sagittis, id sagittis justo ullamcorper.

| 6 | -| 7 | 8 | 9 | - - - - -| 1 | 2 | 3 | -| - | - | - | -| 4 |
1 2 3
4 5 6
7 8 9
| 6 | -| 7 | 8 | 9 | - - - -Lorem ipsum dolor sit amet, consectetur adipiscing elit. Sed auctor, nunc non fringilla pulvinar, augue arcu tempor lacus, vel gravida justo sapien vel nibh. Curabitur eget dignissim lorem. Vivamus sit amet urna nec lorem aliquet viverra. Aliquam erat volutpat. Maecenas sed ante vitae erat feugiat faucibus. Integer porttitor nibh eu risus suscipit, ut efficitur mauris sollicitudin. Suspendisse potenti. Integer feugiat mi sed ligula sagittis, id sagittis justo ullamcorper. - - -| 1 | 2 | 3 | -| - | - | - | -|d||| - - -Lorem ipsum dolor sit amet, consectetur adipiscing elit. Sed auctor, nunc non fringilla pulvinar, augue arcu tempor lacus, vel gravida justo sapien vel nibh. Curabitur eget dignissim lorem. Vivamus sit amet urna nec lorem aliquet viverra. Aliquam erat volutpat. Maecenas sed ante vitae erat feugiat faucibus. Integer porttitor nibh eu risus suscipit, ut efficitur mauris sollicitudin. Suspendisse potenti. Integer feugiat mi sed ligula sagittis, id sagittis justo ullamcorper. - - - -synchronized | synchronously | synchronize | synchronized | synchronizing -1 | 2 | 3 | 4 | 5 - --- | :--- | ---: | === | :---: - -| synchronous | system synthesis | that | transmit -| targeted targeting tasklet | temporary | temporarily - -| synchronous | system synthesis | that | transmit - - -| synchronous | system | synthesis | that | transmit - - - -Lorem ipsum dolor sit amet, consectetur adipiscing elit. Sed auctor, nunc non fringilla pulvinar, augue arcu tempor lacus, vel gravida justo sapien vel nibh. Curabitur eget dignissim lorem. Vivamus sit amet urna nec lorem aliquet viverra. Aliquam erat volutpat. Maecenas sed ante vitae erat feugiat faucibus. Integer porttitor nibh eu risus suscipit, ut efficitur mauris sollicitudin. Suspendisse potenti. Integer feugiat mi sed ligula sagittis, id sagittis justo ullamcorper. - - - 123 -- - 456 - - -Lorem ipsum dolor sit amet, consectetur adipiscing elit. Sed auctor, nunc non fringilla pulvinar, augue arcu tempor lacus, vel gravida justo sapien vel nibh. Curabitur eget dignissim lorem. Vivamus sit amet urna nec lorem aliquet viverra. Aliquam erat volutpat. Maecenas sed ante vitae erat feugiat faucibus. Integer porttitor nibh eu risus suscipit, ut efficitur mauris sollicitudin. Suspendisse potenti. Integer feugiat mi sed ligula sagittis, id sagittis justo ullamcorper. - -a -- -b - abc - - - - - a - - -
- - - - - - - b -
- - - -Lorem ipsum dolor sit amet, consectetur adipiscing elit. Sed auctor, nunc non fringilla pulvinar, augue arcu tempor lacus, vel gravida justo sapien vel nibh. Curabitur eget dignissim lorem. Vivamus sit amet urna nec lorem aliquet viverra. Aliquam erat volutpat. Maecenas sed ante vitae erat feugiat faucibus. Integer porttitor nibh eu risus suscipit, ut efficitur mauris sollicitudin. Suspendisse potenti. Integer feugiat mi sed ligula sagittis, id sagittis justo ullamcorper. -""" -processing header rows -row = " a" -row = "a" -thead content -row = "a" -new cell -looking for starter -found nothing, defaulting default_tag (th) -tag = "th" -looking for closer -row = "" -cell = " a " -out = " a " -html_row = " a " -row = "" -output_table = "" -linesep = - -sep = "-" -appendme = {'align': 'default', 'default-tag': 'td'} -row = "" -blank line; new tbody -processing header rows -row = "" -output_table = "
a
" -linesep = - -sep = "-" -appendme = {'align': 'default', 'default-tag': 'td'} -row = "b" -tbody content -row = "b" -new cell -looking for starter -found nothing, defaulting to column info -tag = "td" -looking for closer -row = "" -cell = "" -out = "" -html_row = "" -processing header rows -row = "a | b | c" -thead content -row = "a | b | c" -new cell -looking for starter -found nothing, defaulting default_tag (th) -tag = "th" -looking for closer -row = " | b | c" -row = "| b | c" -found vbar ("|") -row = " b | c" -cell = "" -new cell -looking for starter -found nothing, defaulting default_tag (th) -tag = "th" -looking for closer -row = "b | c" -row = " | c" -row = "| c" -found vbar ("|") -row = " c" -cell = "" -new cell -looking for starter -found nothing, defaulting default_tag (th) -tag = "th" -looking for closer -row = "c" -row = "" -cell = "" -out = "" -html_row = "" -row = "" -output_table = "
b b b a b c a b c a b c
" -linesep = --------- -sep = "---------" -appendme = {'align': 'default', 'default-tag': 'td'} -row = "a | b | c" -tbody content -row = "a | b | c" -new cell -looking for starter -found nothing, defaulting to column info -tag = "td" -looking for closer -row = " | b | c" -row = "| b | c" -found vbar ("|") -row = " b | c" -cell = "" -new cell -looking for starter -found nothing, defaulting default_tag (td) -tag = "td" -looking for closer -row = "b | c" -row = " | c" -row = "| c" -found vbar ("|") -row = " c" -cell = "" -new cell -looking for starter -found nothing, defaulting default_tag (td) -tag = "td" -looking for closer -row = "c" -row = "" -cell = "" -out = "" -html_row = "" -processing header rows -row = "| 1 | 2 | 3 |" -thead content -row = "| 1 | 2 | 3 |" -new cell -looking for starter -found opening vbar -tag = "th" -row = " 1 | 2 | 3 |" -looking for closer -row = "1 | 2 | 3 |" -row = " | 2 | 3 |" -row = "| 2 | 3 |" -found vbar ("|") -row = " 2 | 3 |" -cell = "" -new cell -looking for starter -found nothing, defaulting default_tag (th) -tag = "th" -looking for closer -row = "2 | 3 |" -row = " | 3 |" -row = "| 3 |" -found vbar ("|") -row = " 3 |" -cell = "" -new cell -looking for starter -found nothing, defaulting default_tag (th) -tag = "th" -looking for closer -row = "3 |" -row = " |" -row = "|" -found vbar ("|") -row = "" -cell = "" -out = "" -html_row = "" -row = "" -output_table = "
a b c
a b c a b c a b c 1 2 3 1 2 3 1 2 3
" -linesep = | - | - | - | -linesep = - | - | - | -linesep = - | - | - -sep = "-" -appendme = {'align': 'default', 'default-tag': 'td'} -sep = "-" -appendme = {'align': 'default', 'default-tag': 'td'} -sep = "-" -appendme = {'align': 'default', 'default-tag': 'td'} -row = "| 4 |

Lorem ipsum dolor sit amet, consectetur adipiscing elit. Sed auctor, nunc non fringilla pulvinar, augue arcu tempor lacus, vel gravida justo sapien vel nibh. Curabitur eget dignissim lorem. Vivamus sit amet urna nec lorem aliquet viverra. Aliquam erat volutpat. Maecenas sed ante vitae erat feugiat faucibus. Integer porttitor nibh eu risus suscipit, ut efficitur mauris sollicitudin. Suspendisse potenti. Integer feugiat mi sed ligula sagittis, id sagittis justo ullamcorper.

| 6 |" -tbody content -row = "| 4 |

Lorem ipsum dolor sit amet, consectetur adipiscing elit. Sed auctor, nunc non fringilla pulvinar, augue arcu tempor lacus, vel gravida justo sapien vel nibh. Curabitur eget dignissim lorem. Vivamus sit amet urna nec lorem aliquet viverra. Aliquam erat volutpat. Maecenas sed ante vitae erat feugiat faucibus. Integer porttitor nibh eu risus suscipit, ut efficitur mauris sollicitudin. Suspendisse potenti. Integer feugiat mi sed ligula sagittis, id sagittis justo ullamcorper.

| 6 |" -new cell -looking for starter -found opening vbar -tag = "td" -row = " 4 |

Lorem ipsum dolor sit amet, consectetur adipiscing elit. Sed auctor, nunc non fringilla pulvinar, augue arcu tempor lacus, vel gravida justo sapien vel nibh. Curabitur eget dignissim lorem. Vivamus sit amet urna nec lorem aliquet viverra. Aliquam erat volutpat. Maecenas sed ante vitae erat feugiat faucibus. Integer porttitor nibh eu risus suscipit, ut efficitur mauris sollicitudin. Suspendisse potenti. Integer feugiat mi sed ligula sagittis, id sagittis justo ullamcorper.

| 6 |" -looking for closer -row = "4 |

Lorem ipsum dolor sit amet, consectetur adipiscing elit. Sed auctor, nunc non fringilla pulvinar, augue arcu tempor lacus, vel gravida justo sapien vel nibh. Curabitur eget dignissim lorem. Vivamus sit amet urna nec lorem aliquet viverra. Aliquam erat volutpat. Maecenas sed ante vitae erat feugiat faucibus. Integer porttitor nibh eu risus suscipit, ut efficitur mauris sollicitudin. Suspendisse potenti. Integer feugiat mi sed ligula sagittis, id sagittis justo ullamcorper.

| 6 |" -row = " |

Lorem ipsum dolor sit amet, consectetur adipiscing elit. Sed auctor, nunc non fringilla pulvinar, augue arcu tempor lacus, vel gravida justo sapien vel nibh. Curabitur eget dignissim lorem. Vivamus sit amet urna nec lorem aliquet viverra. Aliquam erat volutpat. Maecenas sed ante vitae erat feugiat faucibus. Integer porttitor nibh eu risus suscipit, ut efficitur mauris sollicitudin. Suspendisse potenti. Integer feugiat mi sed ligula sagittis, id sagittis justo ullamcorper.

| 6 |" -row = "|

Lorem ipsum dolor sit amet, consectetur adipiscing elit. Sed auctor, nunc non fringilla pulvinar, augue arcu tempor lacus, vel gravida justo sapien vel nibh. Curabitur eget dignissim lorem. Vivamus sit amet urna nec lorem aliquet viverra. Aliquam erat volutpat. Maecenas sed ante vitae erat feugiat faucibus. Integer porttitor nibh eu risus suscipit, ut efficitur mauris sollicitudin. Suspendisse potenti. Integer feugiat mi sed ligula sagittis, id sagittis justo ullamcorper.

| 6 |" -found vbar ("|") -row = "

Lorem ipsum dolor sit amet, consectetur adipiscing elit. Sed auctor, nunc non fringilla pulvinar, augue arcu tempor lacus, vel gravida justo sapien vel nibh. Curabitur eget dignissim lorem. Vivamus sit amet urna nec lorem aliquet viverra. Aliquam erat volutpat. Maecenas sed ante vitae erat feugiat faucibus. Integer porttitor nibh eu risus suscipit, ut efficitur mauris sollicitudin. Suspendisse potenti. Integer feugiat mi sed ligula sagittis, id sagittis justo ullamcorper.

| 6 |" -cell = "" -new cell -looking for starter -found nothing, defaulting to column info -tag = "td" -looking for closer -row = "

Lorem ipsum dolor sit amet, consectetur adipiscing elit. Sed auctor, nunc non fringilla pulvinar, augue arcu tempor lacus, vel gravida justo sapien vel nibh. Curabitur eget dignissim lorem. Vivamus sit amet urna nec lorem aliquet viverra. Aliquam erat volutpat. Maecenas sed ante vitae erat feugiat faucibus. Integer porttitor nibh eu risus suscipit, ut efficitur mauris sollicitudin. Suspendisse potenti. Integer feugiat mi sed ligula sagittis, id sagittis justo ullamcorper.

| 6 |" -row = " Lorem ipsum dolor sit amet, consectetur adipiscing elit. Sed auctor, nunc non fringilla pulvinar, augue arcu tempor lacus, vel gravida justo sapien vel nibh. Curabitur eget dignissim lorem. Vivamus sit amet urna nec lorem aliquet viverra. Aliquam erat volutpat. Maecenas sed ante vitae erat feugiat faucibus. Integer porttitor nibh eu risus suscipit, ut efficitur mauris sollicitudin. Suspendisse potenti. Integer feugiat mi sed ligula sagittis, id sagittis justo ullamcorper.

| 6 |" -row = "Lorem ipsum dolor sit amet, consectetur adipiscing elit. Sed auctor, nunc non fringilla pulvinar, augue arcu tempor lacus, vel gravida justo sapien vel nibh. Curabitur eget dignissim lorem. Vivamus sit amet urna nec lorem aliquet viverra. Aliquam erat volutpat. Maecenas sed ante vitae erat feugiat faucibus. Integer porttitor nibh eu risus suscipit, ut efficitur mauris sollicitudin. Suspendisse potenti. Integer feugiat mi sed ligula sagittis, id sagittis justo ullamcorper.

| 6 |" -row = " ipsum dolor sit amet, consectetur adipiscing elit. Sed auctor, nunc non fringilla pulvinar, augue arcu tempor lacus, vel gravida justo sapien vel nibh. Curabitur eget dignissim lorem. Vivamus sit amet urna nec lorem aliquet viverra. Aliquam erat volutpat. Maecenas sed ante vitae erat feugiat faucibus. Integer porttitor nibh eu risus suscipit, ut efficitur mauris sollicitudin. Suspendisse potenti. Integer feugiat mi sed ligula sagittis, id sagittis justo ullamcorper.

| 6 |" -row = "ipsum dolor sit amet, consectetur adipiscing elit. Sed auctor, nunc non fringilla pulvinar, augue arcu tempor lacus, vel gravida justo sapien vel nibh. Curabitur eget dignissim lorem. Vivamus sit amet urna nec lorem aliquet viverra. Aliquam erat volutpat. Maecenas sed ante vitae erat feugiat faucibus. Integer porttitor nibh eu risus suscipit, ut efficitur mauris sollicitudin. Suspendisse potenti. Integer feugiat mi sed ligula sagittis, id sagittis justo ullamcorper.

| 6 |" -row = " dolor sit amet, consectetur adipiscing elit. Sed auctor, nunc non fringilla pulvinar, augue arcu tempor lacus, vel gravida justo sapien vel nibh. Curabitur eget dignissim lorem. Vivamus sit amet urna nec lorem aliquet viverra. Aliquam erat volutpat. Maecenas sed ante vitae erat feugiat faucibus. Integer porttitor nibh eu risus suscipit, ut efficitur mauris sollicitudin. Suspendisse potenti. Integer feugiat mi sed ligula sagittis, id sagittis justo ullamcorper.

| 6 |" -row = "dolor sit amet, consectetur adipiscing elit. Sed auctor, nunc non fringilla pulvinar, augue arcu tempor lacus, vel gravida justo sapien vel nibh. Curabitur eget dignissim lorem. Vivamus sit amet urna nec lorem aliquet viverra. Aliquam erat volutpat. Maecenas sed ante vitae erat feugiat faucibus. Integer porttitor nibh eu risus suscipit, ut efficitur mauris sollicitudin. Suspendisse potenti. Integer feugiat mi sed ligula sagittis, id sagittis justo ullamcorper.

| 6 |" -row = " sit amet, consectetur adipiscing elit. Sed auctor, nunc non fringilla pulvinar, augue arcu tempor lacus, vel gravida justo sapien vel nibh. Curabitur eget dignissim lorem. Vivamus sit amet urna nec lorem aliquet viverra. Aliquam erat volutpat. Maecenas sed ante vitae erat feugiat faucibus. Integer porttitor nibh eu risus suscipit, ut efficitur mauris sollicitudin. Suspendisse potenti. Integer feugiat mi sed ligula sagittis, id sagittis justo ullamcorper.

| 6 |" -row = "sit amet, consectetur adipiscing elit. Sed auctor, nunc non fringilla pulvinar, augue arcu tempor lacus, vel gravida justo sapien vel nibh. Curabitur eget dignissim lorem. Vivamus sit amet urna nec lorem aliquet viverra. Aliquam erat volutpat. Maecenas sed ante vitae erat feugiat faucibus. Integer porttitor nibh eu risus suscipit, ut efficitur mauris sollicitudin. Suspendisse potenti. Integer feugiat mi sed ligula sagittis, id sagittis justo ullamcorper.

| 6 |" -row = " amet, consectetur adipiscing elit. Sed auctor, nunc non fringilla pulvinar, augue arcu tempor lacus, vel gravida justo sapien vel nibh. Curabitur eget dignissim lorem. Vivamus sit amet urna nec lorem aliquet viverra. Aliquam erat volutpat. Maecenas sed ante vitae erat feugiat faucibus. Integer porttitor nibh eu risus suscipit, ut efficitur mauris sollicitudin. Suspendisse potenti. Integer feugiat mi sed ligula sagittis, id sagittis justo ullamcorper.

| 6 |" -row = "amet, consectetur adipiscing elit. Sed auctor, nunc non fringilla pulvinar, augue arcu tempor lacus, vel gravida justo sapien vel nibh. Curabitur eget dignissim lorem. Vivamus sit amet urna nec lorem aliquet viverra. Aliquam erat volutpat. Maecenas sed ante vitae erat feugiat faucibus. Integer porttitor nibh eu risus suscipit, ut efficitur mauris sollicitudin. Suspendisse potenti. Integer feugiat mi sed ligula sagittis, id sagittis justo ullamcorper.

| 6 |" -row = ", consectetur adipiscing elit. Sed auctor, nunc non fringilla pulvinar, augue arcu tempor lacus, vel gravida justo sapien vel nibh. Curabitur eget dignissim lorem. Vivamus sit amet urna nec lorem aliquet viverra. Aliquam erat volutpat. Maecenas sed ante vitae erat feugiat faucibus. Integer porttitor nibh eu risus suscipit, ut efficitur mauris sollicitudin. Suspendisse potenti. Integer feugiat mi sed ligula sagittis, id sagittis justo ullamcorper.

| 6 |" -row = " consectetur adipiscing elit. Sed auctor, nunc non fringilla pulvinar, augue arcu tempor lacus, vel gravida justo sapien vel nibh. Curabitur eget dignissim lorem. Vivamus sit amet urna nec lorem aliquet viverra. Aliquam erat volutpat. Maecenas sed ante vitae erat feugiat faucibus. Integer porttitor nibh eu risus suscipit, ut efficitur mauris sollicitudin. Suspendisse potenti. Integer feugiat mi sed ligula sagittis, id sagittis justo ullamcorper.

| 6 |" -row = "consectetur adipiscing elit. Sed auctor, nunc non fringilla pulvinar, augue arcu tempor lacus, vel gravida justo sapien vel nibh. Curabitur eget dignissim lorem. Vivamus sit amet urna nec lorem aliquet viverra. Aliquam erat volutpat. Maecenas sed ante vitae erat feugiat faucibus. Integer porttitor nibh eu risus suscipit, ut efficitur mauris sollicitudin. Suspendisse potenti. Integer feugiat mi sed ligula sagittis, id sagittis justo ullamcorper.

| 6 |" -row = " adipiscing elit. Sed auctor, nunc non fringilla pulvinar, augue arcu tempor lacus, vel gravida justo sapien vel nibh. Curabitur eget dignissim lorem. Vivamus sit amet urna nec lorem aliquet viverra. Aliquam erat volutpat. Maecenas sed ante vitae erat feugiat faucibus. Integer porttitor nibh eu risus suscipit, ut efficitur mauris sollicitudin. Suspendisse potenti. Integer feugiat mi sed ligula sagittis, id sagittis justo ullamcorper.

| 6 |" -row = "adipiscing elit. Sed auctor, nunc non fringilla pulvinar, augue arcu tempor lacus, vel gravida justo sapien vel nibh. Curabitur eget dignissim lorem. Vivamus sit amet urna nec lorem aliquet viverra. Aliquam erat volutpat. Maecenas sed ante vitae erat feugiat faucibus. Integer porttitor nibh eu risus suscipit, ut efficitur mauris sollicitudin. Suspendisse potenti. Integer feugiat mi sed ligula sagittis, id sagittis justo ullamcorper.

| 6 |" -row = " elit. Sed auctor, nunc non fringilla pulvinar, augue arcu tempor lacus, vel gravida justo sapien vel nibh. Curabitur eget dignissim lorem. Vivamus sit amet urna nec lorem aliquet viverra. Aliquam erat volutpat. Maecenas sed ante vitae erat feugiat faucibus. Integer porttitor nibh eu risus suscipit, ut efficitur mauris sollicitudin. Suspendisse potenti. Integer feugiat mi sed ligula sagittis, id sagittis justo ullamcorper.

| 6 |" -row = "elit. Sed auctor, nunc non fringilla pulvinar, augue arcu tempor lacus, vel gravida justo sapien vel nibh. Curabitur eget dignissim lorem. Vivamus sit amet urna nec lorem aliquet viverra. Aliquam erat volutpat. Maecenas sed ante vitae erat feugiat faucibus. Integer porttitor nibh eu risus suscipit, ut efficitur mauris sollicitudin. Suspendisse potenti. Integer feugiat mi sed ligula sagittis, id sagittis justo ullamcorper.

| 6 |" -row = ". Sed auctor, nunc non fringilla pulvinar, augue arcu tempor lacus, vel gravida justo sapien vel nibh. Curabitur eget dignissim lorem. Vivamus sit amet urna nec lorem aliquet viverra. Aliquam erat volutpat. Maecenas sed ante vitae erat feugiat faucibus. Integer porttitor nibh eu risus suscipit, ut efficitur mauris sollicitudin. Suspendisse potenti. Integer feugiat mi sed ligula sagittis, id sagittis justo ullamcorper.

| 6 |" -row = " Sed auctor, nunc non fringilla pulvinar, augue arcu tempor lacus, vel gravida justo sapien vel nibh. Curabitur eget dignissim lorem. Vivamus sit amet urna nec lorem aliquet viverra. Aliquam erat volutpat. Maecenas sed ante vitae erat feugiat faucibus. Integer porttitor nibh eu risus suscipit, ut efficitur mauris sollicitudin. Suspendisse potenti. Integer feugiat mi sed ligula sagittis, id sagittis justo ullamcorper.

| 6 |" -row = "Sed auctor, nunc non fringilla pulvinar, augue arcu tempor lacus, vel gravida justo sapien vel nibh. Curabitur eget dignissim lorem. Vivamus sit amet urna nec lorem aliquet viverra. Aliquam erat volutpat. Maecenas sed ante vitae erat feugiat faucibus. Integer porttitor nibh eu risus suscipit, ut efficitur mauris sollicitudin. Suspendisse potenti. Integer feugiat mi sed ligula sagittis, id sagittis justo ullamcorper.

| 6 |" -row = " auctor, nunc non fringilla pulvinar, augue arcu tempor lacus, vel gravida justo sapien vel nibh. Curabitur eget dignissim lorem. Vivamus sit amet urna nec lorem aliquet viverra. Aliquam erat volutpat. Maecenas sed ante vitae erat feugiat faucibus. Integer porttitor nibh eu risus suscipit, ut efficitur mauris sollicitudin. Suspendisse potenti. Integer feugiat mi sed ligula sagittis, id sagittis justo ullamcorper.

| 6 |" -row = "auctor, nunc non fringilla pulvinar, augue arcu tempor lacus, vel gravida justo sapien vel nibh. Curabitur eget dignissim lorem. Vivamus sit amet urna nec lorem aliquet viverra. Aliquam erat volutpat. Maecenas sed ante vitae erat feugiat faucibus. Integer porttitor nibh eu risus suscipit, ut efficitur mauris sollicitudin. Suspendisse potenti. Integer feugiat mi sed ligula sagittis, id sagittis justo ullamcorper.

| 6 |" -row = ", nunc non fringilla pulvinar, augue arcu tempor lacus, vel gravida justo sapien vel nibh. Curabitur eget dignissim lorem. Vivamus sit amet urna nec lorem aliquet viverra. Aliquam erat volutpat. Maecenas sed ante vitae erat feugiat faucibus. Integer porttitor nibh eu risus suscipit, ut efficitur mauris sollicitudin. Suspendisse potenti. Integer feugiat mi sed ligula sagittis, id sagittis justo ullamcorper.

| 6 |" -row = " nunc non fringilla pulvinar, augue arcu tempor lacus, vel gravida justo sapien vel nibh. Curabitur eget dignissim lorem. Vivamus sit amet urna nec lorem aliquet viverra. Aliquam erat volutpat. Maecenas sed ante vitae erat feugiat faucibus. Integer porttitor nibh eu risus suscipit, ut efficitur mauris sollicitudin. Suspendisse potenti. Integer feugiat mi sed ligula sagittis, id sagittis justo ullamcorper.

| 6 |" -row = "nunc non fringilla pulvinar, augue arcu tempor lacus, vel gravida justo sapien vel nibh. Curabitur eget dignissim lorem. Vivamus sit amet urna nec lorem aliquet viverra. Aliquam erat volutpat. Maecenas sed ante vitae erat feugiat faucibus. Integer porttitor nibh eu risus suscipit, ut efficitur mauris sollicitudin. Suspendisse potenti. Integer feugiat mi sed ligula sagittis, id sagittis justo ullamcorper.

| 6 |" -row = " non fringilla pulvinar, augue arcu tempor lacus, vel gravida justo sapien vel nibh. Curabitur eget dignissim lorem. Vivamus sit amet urna nec lorem aliquet viverra. Aliquam erat volutpat. Maecenas sed ante vitae erat feugiat faucibus. Integer porttitor nibh eu risus suscipit, ut efficitur mauris sollicitudin. Suspendisse potenti. Integer feugiat mi sed ligula sagittis, id sagittis justo ullamcorper.

| 6 |" -row = "non fringilla pulvinar, augue arcu tempor lacus, vel gravida justo sapien vel nibh. Curabitur eget dignissim lorem. Vivamus sit amet urna nec lorem aliquet viverra. Aliquam erat volutpat. Maecenas sed ante vitae erat feugiat faucibus. Integer porttitor nibh eu risus suscipit, ut efficitur mauris sollicitudin. Suspendisse potenti. Integer feugiat mi sed ligula sagittis, id sagittis justo ullamcorper.

| 6 |" -row = " fringilla pulvinar, augue arcu tempor lacus, vel gravida justo sapien vel nibh. Curabitur eget dignissim lorem. Vivamus sit amet urna nec lorem aliquet viverra. Aliquam erat volutpat. Maecenas sed ante vitae erat feugiat faucibus. Integer porttitor nibh eu risus suscipit, ut efficitur mauris sollicitudin. Suspendisse potenti. Integer feugiat mi sed ligula sagittis, id sagittis justo ullamcorper.

| 6 |" -row = "fringilla pulvinar, augue arcu tempor lacus, vel gravida justo sapien vel nibh. Curabitur eget dignissim lorem. Vivamus sit amet urna nec lorem aliquet viverra. Aliquam erat volutpat. Maecenas sed ante vitae erat feugiat faucibus. Integer porttitor nibh eu risus suscipit, ut efficitur mauris sollicitudin. Suspendisse potenti. Integer feugiat mi sed ligula sagittis, id sagittis justo ullamcorper.

| 6 |" -row = " pulvinar, augue arcu tempor lacus, vel gravida justo sapien vel nibh. Curabitur eget dignissim lorem. Vivamus sit amet urna nec lorem aliquet viverra. Aliquam erat volutpat. Maecenas sed ante vitae erat feugiat faucibus. Integer porttitor nibh eu risus suscipit, ut efficitur mauris sollicitudin. Suspendisse potenti. Integer feugiat mi sed ligula sagittis, id sagittis justo ullamcorper.

| 6 |" -row = "pulvinar, augue arcu tempor lacus, vel gravida justo sapien vel nibh. Curabitur eget dignissim lorem. Vivamus sit amet urna nec lorem aliquet viverra. Aliquam erat volutpat. Maecenas sed ante vitae erat feugiat faucibus. Integer porttitor nibh eu risus suscipit, ut efficitur mauris sollicitudin. Suspendisse potenti. Integer feugiat mi sed ligula sagittis, id sagittis justo ullamcorper.

| 6 |" -row = ", augue arcu tempor lacus, vel gravida justo sapien vel nibh. Curabitur eget dignissim lorem. Vivamus sit amet urna nec lorem aliquet viverra. Aliquam erat volutpat. Maecenas sed ante vitae erat feugiat faucibus. Integer porttitor nibh eu risus suscipit, ut efficitur mauris sollicitudin. Suspendisse potenti. Integer feugiat mi sed ligula sagittis, id sagittis justo ullamcorper.

| 6 |" -row = " augue arcu tempor lacus, vel gravida justo sapien vel nibh. Curabitur eget dignissim lorem. Vivamus sit amet urna nec lorem aliquet viverra. Aliquam erat volutpat. Maecenas sed ante vitae erat feugiat faucibus. Integer porttitor nibh eu risus suscipit, ut efficitur mauris sollicitudin. Suspendisse potenti. Integer feugiat mi sed ligula sagittis, id sagittis justo ullamcorper.

| 6 |" -row = "augue arcu tempor lacus, vel gravida justo sapien vel nibh. Curabitur eget dignissim lorem. Vivamus sit amet urna nec lorem aliquet viverra. Aliquam erat volutpat. Maecenas sed ante vitae erat feugiat faucibus. Integer porttitor nibh eu risus suscipit, ut efficitur mauris sollicitudin. Suspendisse potenti. Integer feugiat mi sed ligula sagittis, id sagittis justo ullamcorper.

| 6 |" -row = " arcu tempor lacus, vel gravida justo sapien vel nibh. Curabitur eget dignissim lorem. Vivamus sit amet urna nec lorem aliquet viverra. Aliquam erat volutpat. Maecenas sed ante vitae erat feugiat faucibus. Integer porttitor nibh eu risus suscipit, ut efficitur mauris sollicitudin. Suspendisse potenti. Integer feugiat mi sed ligula sagittis, id sagittis justo ullamcorper.

| 6 |" -row = "arcu tempor lacus, vel gravida justo sapien vel nibh. Curabitur eget dignissim lorem. Vivamus sit amet urna nec lorem aliquet viverra. Aliquam erat volutpat. Maecenas sed ante vitae erat feugiat faucibus. Integer porttitor nibh eu risus suscipit, ut efficitur mauris sollicitudin. Suspendisse potenti. Integer feugiat mi sed ligula sagittis, id sagittis justo ullamcorper.

| 6 |" -row = " tempor lacus, vel gravida justo sapien vel nibh. Curabitur eget dignissim lorem. Vivamus sit amet urna nec lorem aliquet viverra. Aliquam erat volutpat. Maecenas sed ante vitae erat feugiat faucibus. Integer porttitor nibh eu risus suscipit, ut efficitur mauris sollicitudin. Suspendisse potenti. Integer feugiat mi sed ligula sagittis, id sagittis justo ullamcorper.

| 6 |" -row = "tempor lacus, vel gravida justo sapien vel nibh. Curabitur eget dignissim lorem. Vivamus sit amet urna nec lorem aliquet viverra. Aliquam erat volutpat. Maecenas sed ante vitae erat feugiat faucibus. Integer porttitor nibh eu risus suscipit, ut efficitur mauris sollicitudin. Suspendisse potenti. Integer feugiat mi sed ligula sagittis, id sagittis justo ullamcorper.

| 6 |" -row = " lacus, vel gravida justo sapien vel nibh. Curabitur eget dignissim lorem. Vivamus sit amet urna nec lorem aliquet viverra. Aliquam erat volutpat. Maecenas sed ante vitae erat feugiat faucibus. Integer porttitor nibh eu risus suscipit, ut efficitur mauris sollicitudin. Suspendisse potenti. Integer feugiat mi sed ligula sagittis, id sagittis justo ullamcorper.

| 6 |" -row = "lacus, vel gravida justo sapien vel nibh. Curabitur eget dignissim lorem. Vivamus sit amet urna nec lorem aliquet viverra. Aliquam erat volutpat. Maecenas sed ante vitae erat feugiat faucibus. Integer porttitor nibh eu risus suscipit, ut efficitur mauris sollicitudin. Suspendisse potenti. Integer feugiat mi sed ligula sagittis, id sagittis justo ullamcorper.

| 6 |" -row = ", vel gravida justo sapien vel nibh. Curabitur eget dignissim lorem. Vivamus sit amet urna nec lorem aliquet viverra. Aliquam erat volutpat. Maecenas sed ante vitae erat feugiat faucibus. Integer porttitor nibh eu risus suscipit, ut efficitur mauris sollicitudin. Suspendisse potenti. Integer feugiat mi sed ligula sagittis, id sagittis justo ullamcorper.

| 6 |" -row = " vel gravida justo sapien vel nibh. Curabitur eget dignissim lorem. Vivamus sit amet urna nec lorem aliquet viverra. Aliquam erat volutpat. Maecenas sed ante vitae erat feugiat faucibus. Integer porttitor nibh eu risus suscipit, ut efficitur mauris sollicitudin. Suspendisse potenti. Integer feugiat mi sed ligula sagittis, id sagittis justo ullamcorper.

| 6 |" -row = "vel gravida justo sapien vel nibh. Curabitur eget dignissim lorem. Vivamus sit amet urna nec lorem aliquet viverra. Aliquam erat volutpat. Maecenas sed ante vitae erat feugiat faucibus. Integer porttitor nibh eu risus suscipit, ut efficitur mauris sollicitudin. Suspendisse potenti. Integer feugiat mi sed ligula sagittis, id sagittis justo ullamcorper.

| 6 |" -row = " gravida justo sapien vel nibh. Curabitur eget dignissim lorem. Vivamus sit amet urna nec lorem aliquet viverra. Aliquam erat volutpat. Maecenas sed ante vitae erat feugiat faucibus. Integer porttitor nibh eu risus suscipit, ut efficitur mauris sollicitudin. Suspendisse potenti. Integer feugiat mi sed ligula sagittis, id sagittis justo ullamcorper.

| 6 |" -row = "gravida justo sapien vel nibh. Curabitur eget dignissim lorem. Vivamus sit amet urna nec lorem aliquet viverra. Aliquam erat volutpat. Maecenas sed ante vitae erat feugiat faucibus. Integer porttitor nibh eu risus suscipit, ut efficitur mauris sollicitudin. Suspendisse potenti. Integer feugiat mi sed ligula sagittis, id sagittis justo ullamcorper.

| 6 |" -row = " justo sapien vel nibh. Curabitur eget dignissim lorem. Vivamus sit amet urna nec lorem aliquet viverra. Aliquam erat volutpat. Maecenas sed ante vitae erat feugiat faucibus. Integer porttitor nibh eu risus suscipit, ut efficitur mauris sollicitudin. Suspendisse potenti. Integer feugiat mi sed ligula sagittis, id sagittis justo ullamcorper.

| 6 |" -row = "justo sapien vel nibh. Curabitur eget dignissim lorem. Vivamus sit amet urna nec lorem aliquet viverra. Aliquam erat volutpat. Maecenas sed ante vitae erat feugiat faucibus. Integer porttitor nibh eu risus suscipit, ut efficitur mauris sollicitudin. Suspendisse potenti. Integer feugiat mi sed ligula sagittis, id sagittis justo ullamcorper.

| 6 |" -row = " sapien vel nibh. Curabitur eget dignissim lorem. Vivamus sit amet urna nec lorem aliquet viverra. Aliquam erat volutpat. Maecenas sed ante vitae erat feugiat faucibus. Integer porttitor nibh eu risus suscipit, ut efficitur mauris sollicitudin. Suspendisse potenti. Integer feugiat mi sed ligula sagittis, id sagittis justo ullamcorper.

| 6 |" -row = "sapien vel nibh. Curabitur eget dignissim lorem. Vivamus sit amet urna nec lorem aliquet viverra. Aliquam erat volutpat. Maecenas sed ante vitae erat feugiat faucibus. Integer porttitor nibh eu risus suscipit, ut efficitur mauris sollicitudin. Suspendisse potenti. Integer feugiat mi sed ligula sagittis, id sagittis justo ullamcorper.

| 6 |" -row = " vel nibh. Curabitur eget dignissim lorem. Vivamus sit amet urna nec lorem aliquet viverra. Aliquam erat volutpat. Maecenas sed ante vitae erat feugiat faucibus. Integer porttitor nibh eu risus suscipit, ut efficitur mauris sollicitudin. Suspendisse potenti. Integer feugiat mi sed ligula sagittis, id sagittis justo ullamcorper.

| 6 |" -row = "vel nibh. Curabitur eget dignissim lorem. Vivamus sit amet urna nec lorem aliquet viverra. Aliquam erat volutpat. Maecenas sed ante vitae erat feugiat faucibus. Integer porttitor nibh eu risus suscipit, ut efficitur mauris sollicitudin. Suspendisse potenti. Integer feugiat mi sed ligula sagittis, id sagittis justo ullamcorper.

| 6 |" -row = " nibh. Curabitur eget dignissim lorem. Vivamus sit amet urna nec lorem aliquet viverra. Aliquam erat volutpat. Maecenas sed ante vitae erat feugiat faucibus. Integer porttitor nibh eu risus suscipit, ut efficitur mauris sollicitudin. Suspendisse potenti. Integer feugiat mi sed ligula sagittis, id sagittis justo ullamcorper.

| 6 |" -row = "nibh. Curabitur eget dignissim lorem. Vivamus sit amet urna nec lorem aliquet viverra. Aliquam erat volutpat. Maecenas sed ante vitae erat feugiat faucibus. Integer porttitor nibh eu risus suscipit, ut efficitur mauris sollicitudin. Suspendisse potenti. Integer feugiat mi sed ligula sagittis, id sagittis justo ullamcorper.

| 6 |" -row = ". Curabitur eget dignissim lorem. Vivamus sit amet urna nec lorem aliquet viverra. Aliquam erat volutpat. Maecenas sed ante vitae erat feugiat faucibus. Integer porttitor nibh eu risus suscipit, ut efficitur mauris sollicitudin. Suspendisse potenti. Integer feugiat mi sed ligula sagittis, id sagittis justo ullamcorper.

| 6 |" -row = " Curabitur eget dignissim lorem. Vivamus sit amet urna nec lorem aliquet viverra. Aliquam erat volutpat. Maecenas sed ante vitae erat feugiat faucibus. Integer porttitor nibh eu risus suscipit, ut efficitur mauris sollicitudin. Suspendisse potenti. Integer feugiat mi sed ligula sagittis, id sagittis justo ullamcorper.

| 6 |" -row = "Curabitur eget dignissim lorem. Vivamus sit amet urna nec lorem aliquet viverra. Aliquam erat volutpat. Maecenas sed ante vitae erat feugiat faucibus. Integer porttitor nibh eu risus suscipit, ut efficitur mauris sollicitudin. Suspendisse potenti. Integer feugiat mi sed ligula sagittis, id sagittis justo ullamcorper.

| 6 |" -row = " eget dignissim lorem. Vivamus sit amet urna nec lorem aliquet viverra. Aliquam erat volutpat. Maecenas sed ante vitae erat feugiat faucibus. Integer porttitor nibh eu risus suscipit, ut efficitur mauris sollicitudin. Suspendisse potenti. Integer feugiat mi sed ligula sagittis, id sagittis justo ullamcorper.

| 6 |" -row = "eget dignissim lorem. Vivamus sit amet urna nec lorem aliquet viverra. Aliquam erat volutpat. Maecenas sed ante vitae erat feugiat faucibus. Integer porttitor nibh eu risus suscipit, ut efficitur mauris sollicitudin. Suspendisse potenti. Integer feugiat mi sed ligula sagittis, id sagittis justo ullamcorper.

| 6 |" -row = " dignissim lorem. Vivamus sit amet urna nec lorem aliquet viverra. Aliquam erat volutpat. Maecenas sed ante vitae erat feugiat faucibus. Integer porttitor nibh eu risus suscipit, ut efficitur mauris sollicitudin. Suspendisse potenti. Integer feugiat mi sed ligula sagittis, id sagittis justo ullamcorper.

| 6 |" -row = "dignissim lorem. Vivamus sit amet urna nec lorem aliquet viverra. Aliquam erat volutpat. Maecenas sed ante vitae erat feugiat faucibus. Integer porttitor nibh eu risus suscipit, ut efficitur mauris sollicitudin. Suspendisse potenti. Integer feugiat mi sed ligula sagittis, id sagittis justo ullamcorper.

| 6 |" -row = " lorem. Vivamus sit amet urna nec lorem aliquet viverra. Aliquam erat volutpat. Maecenas sed ante vitae erat feugiat faucibus. Integer porttitor nibh eu risus suscipit, ut efficitur mauris sollicitudin. Suspendisse potenti. Integer feugiat mi sed ligula sagittis, id sagittis justo ullamcorper.

| 6 |" -row = "lorem. Vivamus sit amet urna nec lorem aliquet viverra. Aliquam erat volutpat. Maecenas sed ante vitae erat feugiat faucibus. Integer porttitor nibh eu risus suscipit, ut efficitur mauris sollicitudin. Suspendisse potenti. Integer feugiat mi sed ligula sagittis, id sagittis justo ullamcorper.

| 6 |" -row = ". Vivamus sit amet urna nec lorem aliquet viverra. Aliquam erat volutpat. Maecenas sed ante vitae erat feugiat faucibus. Integer porttitor nibh eu risus suscipit, ut efficitur mauris sollicitudin. Suspendisse potenti. Integer feugiat mi sed ligula sagittis, id sagittis justo ullamcorper.

| 6 |" -row = " Vivamus sit amet urna nec lorem aliquet viverra. Aliquam erat volutpat. Maecenas sed ante vitae erat feugiat faucibus. Integer porttitor nibh eu risus suscipit, ut efficitur mauris sollicitudin. Suspendisse potenti. Integer feugiat mi sed ligula sagittis, id sagittis justo ullamcorper.

| 6 |" -row = "Vivamus sit amet urna nec lorem aliquet viverra. Aliquam erat volutpat. Maecenas sed ante vitae erat feugiat faucibus. Integer porttitor nibh eu risus suscipit, ut efficitur mauris sollicitudin. Suspendisse potenti. Integer feugiat mi sed ligula sagittis, id sagittis justo ullamcorper.

| 6 |" -row = " sit amet urna nec lorem aliquet viverra. Aliquam erat volutpat. Maecenas sed ante vitae erat feugiat faucibus. Integer porttitor nibh eu risus suscipit, ut efficitur mauris sollicitudin. Suspendisse potenti. Integer feugiat mi sed ligula sagittis, id sagittis justo ullamcorper.

| 6 |" -row = "sit amet urna nec lorem aliquet viverra. Aliquam erat volutpat. Maecenas sed ante vitae erat feugiat faucibus. Integer porttitor nibh eu risus suscipit, ut efficitur mauris sollicitudin. Suspendisse potenti. Integer feugiat mi sed ligula sagittis, id sagittis justo ullamcorper.

| 6 |" -row = " amet urna nec lorem aliquet viverra. Aliquam erat volutpat. Maecenas sed ante vitae erat feugiat faucibus. Integer porttitor nibh eu risus suscipit, ut efficitur mauris sollicitudin. Suspendisse potenti. Integer feugiat mi sed ligula sagittis, id sagittis justo ullamcorper.

| 6 |" -row = "amet urna nec lorem aliquet viverra. Aliquam erat volutpat. Maecenas sed ante vitae erat feugiat faucibus. Integer porttitor nibh eu risus suscipit, ut efficitur mauris sollicitudin. Suspendisse potenti. Integer feugiat mi sed ligula sagittis, id sagittis justo ullamcorper.

| 6 |" -row = " urna nec lorem aliquet viverra. Aliquam erat volutpat. Maecenas sed ante vitae erat feugiat faucibus. Integer porttitor nibh eu risus suscipit, ut efficitur mauris sollicitudin. Suspendisse potenti. Integer feugiat mi sed ligula sagittis, id sagittis justo ullamcorper.

| 6 |" -row = "urna nec lorem aliquet viverra. Aliquam erat volutpat. Maecenas sed ante vitae erat feugiat faucibus. Integer porttitor nibh eu risus suscipit, ut efficitur mauris sollicitudin. Suspendisse potenti. Integer feugiat mi sed ligula sagittis, id sagittis justo ullamcorper.

| 6 |" -row = " nec lorem aliquet viverra. Aliquam erat volutpat. Maecenas sed ante vitae erat feugiat faucibus. Integer porttitor nibh eu risus suscipit, ut efficitur mauris sollicitudin. Suspendisse potenti. Integer feugiat mi sed ligula sagittis, id sagittis justo ullamcorper.

| 6 |" -row = "nec lorem aliquet viverra. Aliquam erat volutpat. Maecenas sed ante vitae erat feugiat faucibus. Integer porttitor nibh eu risus suscipit, ut efficitur mauris sollicitudin. Suspendisse potenti. Integer feugiat mi sed ligula sagittis, id sagittis justo ullamcorper.

| 6 |" -row = " lorem aliquet viverra. Aliquam erat volutpat. Maecenas sed ante vitae erat feugiat faucibus. Integer porttitor nibh eu risus suscipit, ut efficitur mauris sollicitudin. Suspendisse potenti. Integer feugiat mi sed ligula sagittis, id sagittis justo ullamcorper.

| 6 |" -row = "lorem aliquet viverra. Aliquam erat volutpat. Maecenas sed ante vitae erat feugiat faucibus. Integer porttitor nibh eu risus suscipit, ut efficitur mauris sollicitudin. Suspendisse potenti. Integer feugiat mi sed ligula sagittis, id sagittis justo ullamcorper.

| 6 |" -row = " aliquet viverra. Aliquam erat volutpat. Maecenas sed ante vitae erat feugiat faucibus. Integer porttitor nibh eu risus suscipit, ut efficitur mauris sollicitudin. Suspendisse potenti. Integer feugiat mi sed ligula sagittis, id sagittis justo ullamcorper.

| 6 |" -row = "aliquet viverra. Aliquam erat volutpat. Maecenas sed ante vitae erat feugiat faucibus. Integer porttitor nibh eu risus suscipit, ut efficitur mauris sollicitudin. Suspendisse potenti. Integer feugiat mi sed ligula sagittis, id sagittis justo ullamcorper.

| 6 |" -row = " viverra. Aliquam erat volutpat. Maecenas sed ante vitae erat feugiat faucibus. Integer porttitor nibh eu risus suscipit, ut efficitur mauris sollicitudin. Suspendisse potenti. Integer feugiat mi sed ligula sagittis, id sagittis justo ullamcorper.

| 6 |" -row = "viverra. Aliquam erat volutpat. Maecenas sed ante vitae erat feugiat faucibus. Integer porttitor nibh eu risus suscipit, ut efficitur mauris sollicitudin. Suspendisse potenti. Integer feugiat mi sed ligula sagittis, id sagittis justo ullamcorper.

| 6 |" -row = ". Aliquam erat volutpat. Maecenas sed ante vitae erat feugiat faucibus. Integer porttitor nibh eu risus suscipit, ut efficitur mauris sollicitudin. Suspendisse potenti. Integer feugiat mi sed ligula sagittis, id sagittis justo ullamcorper.

| 6 |" -row = " Aliquam erat volutpat. Maecenas sed ante vitae erat feugiat faucibus. Integer porttitor nibh eu risus suscipit, ut efficitur mauris sollicitudin. Suspendisse potenti. Integer feugiat mi sed ligula sagittis, id sagittis justo ullamcorper.

| 6 |" -row = "Aliquam erat volutpat. Maecenas sed ante vitae erat feugiat faucibus. Integer porttitor nibh eu risus suscipit, ut efficitur mauris sollicitudin. Suspendisse potenti. Integer feugiat mi sed ligula sagittis, id sagittis justo ullamcorper.

| 6 |" -row = " erat volutpat. Maecenas sed ante vitae erat feugiat faucibus. Integer porttitor nibh eu risus suscipit, ut efficitur mauris sollicitudin. Suspendisse potenti. Integer feugiat mi sed ligula sagittis, id sagittis justo ullamcorper.

| 6 |" -row = "erat volutpat. Maecenas sed ante vitae erat feugiat faucibus. Integer porttitor nibh eu risus suscipit, ut efficitur mauris sollicitudin. Suspendisse potenti. Integer feugiat mi sed ligula sagittis, id sagittis justo ullamcorper.

| 6 |" -row = " volutpat. Maecenas sed ante vitae erat feugiat faucibus. Integer porttitor nibh eu risus suscipit, ut efficitur mauris sollicitudin. Suspendisse potenti. Integer feugiat mi sed ligula sagittis, id sagittis justo ullamcorper.

| 6 |" -row = "volutpat. Maecenas sed ante vitae erat feugiat faucibus. Integer porttitor nibh eu risus suscipit, ut efficitur mauris sollicitudin. Suspendisse potenti. Integer feugiat mi sed ligula sagittis, id sagittis justo ullamcorper.

| 6 |" -row = ". Maecenas sed ante vitae erat feugiat faucibus. Integer porttitor nibh eu risus suscipit, ut efficitur mauris sollicitudin. Suspendisse potenti. Integer feugiat mi sed ligula sagittis, id sagittis justo ullamcorper.

| 6 |" -row = " Maecenas sed ante vitae erat feugiat faucibus. Integer porttitor nibh eu risus suscipit, ut efficitur mauris sollicitudin. Suspendisse potenti. Integer feugiat mi sed ligula sagittis, id sagittis justo ullamcorper.

| 6 |" -row = "Maecenas sed ante vitae erat feugiat faucibus. Integer porttitor nibh eu risus suscipit, ut efficitur mauris sollicitudin. Suspendisse potenti. Integer feugiat mi sed ligula sagittis, id sagittis justo ullamcorper.

| 6 |" -row = " sed ante vitae erat feugiat faucibus. Integer porttitor nibh eu risus suscipit, ut efficitur mauris sollicitudin. Suspendisse potenti. Integer feugiat mi sed ligula sagittis, id sagittis justo ullamcorper.

| 6 |" -row = "sed ante vitae erat feugiat faucibus. Integer porttitor nibh eu risus suscipit, ut efficitur mauris sollicitudin. Suspendisse potenti. Integer feugiat mi sed ligula sagittis, id sagittis justo ullamcorper.

| 6 |" -row = " ante vitae erat feugiat faucibus. Integer porttitor nibh eu risus suscipit, ut efficitur mauris sollicitudin. Suspendisse potenti. Integer feugiat mi sed ligula sagittis, id sagittis justo ullamcorper.

| 6 |" -row = "ante vitae erat feugiat faucibus. Integer porttitor nibh eu risus suscipit, ut efficitur mauris sollicitudin. Suspendisse potenti. Integer feugiat mi sed ligula sagittis, id sagittis justo ullamcorper.

| 6 |" -row = " vitae erat feugiat faucibus. Integer porttitor nibh eu risus suscipit, ut efficitur mauris sollicitudin. Suspendisse potenti. Integer feugiat mi sed ligula sagittis, id sagittis justo ullamcorper.

| 6 |" -row = "vitae erat feugiat faucibus. Integer porttitor nibh eu risus suscipit, ut efficitur mauris sollicitudin. Suspendisse potenti. Integer feugiat mi sed ligula sagittis, id sagittis justo ullamcorper.

| 6 |" -row = " erat feugiat faucibus. Integer porttitor nibh eu risus suscipit, ut efficitur mauris sollicitudin. Suspendisse potenti. Integer feugiat mi sed ligula sagittis, id sagittis justo ullamcorper.

| 6 |" -row = "erat feugiat faucibus. Integer porttitor nibh eu risus suscipit, ut efficitur mauris sollicitudin. Suspendisse potenti. Integer feugiat mi sed ligula sagittis, id sagittis justo ullamcorper.

| 6 |" -row = " feugiat faucibus. Integer porttitor nibh eu risus suscipit, ut efficitur mauris sollicitudin. Suspendisse potenti. Integer feugiat mi sed ligula sagittis, id sagittis justo ullamcorper.

| 6 |" -row = "feugiat faucibus. Integer porttitor nibh eu risus suscipit, ut efficitur mauris sollicitudin. Suspendisse potenti. Integer feugiat mi sed ligula sagittis, id sagittis justo ullamcorper.

| 6 |" -row = " faucibus. Integer porttitor nibh eu risus suscipit, ut efficitur mauris sollicitudin. Suspendisse potenti. Integer feugiat mi sed ligula sagittis, id sagittis justo ullamcorper.

| 6 |" -row = "faucibus. Integer porttitor nibh eu risus suscipit, ut efficitur mauris sollicitudin. Suspendisse potenti. Integer feugiat mi sed ligula sagittis, id sagittis justo ullamcorper.

| 6 |" -row = ". Integer porttitor nibh eu risus suscipit, ut efficitur mauris sollicitudin. Suspendisse potenti. Integer feugiat mi sed ligula sagittis, id sagittis justo ullamcorper.

| 6 |" -row = " Integer porttitor nibh eu risus suscipit, ut efficitur mauris sollicitudin. Suspendisse potenti. Integer feugiat mi sed ligula sagittis, id sagittis justo ullamcorper.

| 6 |" -row = "Integer porttitor nibh eu risus suscipit, ut efficitur mauris sollicitudin. Suspendisse potenti. Integer feugiat mi sed ligula sagittis, id sagittis justo ullamcorper.

| 6 |" -row = " porttitor nibh eu risus suscipit, ut efficitur mauris sollicitudin. Suspendisse potenti. Integer feugiat mi sed ligula sagittis, id sagittis justo ullamcorper.

| 6 |" -row = "porttitor nibh eu risus suscipit, ut efficitur mauris sollicitudin. Suspendisse potenti. Integer feugiat mi sed ligula sagittis, id sagittis justo ullamcorper.

| 6 |" -row = " nibh eu risus suscipit, ut efficitur mauris sollicitudin. Suspendisse potenti. Integer feugiat mi sed ligula sagittis, id sagittis justo ullamcorper.

| 6 |" -row = "nibh eu risus suscipit, ut efficitur mauris sollicitudin. Suspendisse potenti. Integer feugiat mi sed ligula sagittis, id sagittis justo ullamcorper.

| 6 |" -row = " eu risus suscipit, ut efficitur mauris sollicitudin. Suspendisse potenti. Integer feugiat mi sed ligula sagittis, id sagittis justo ullamcorper.

| 6 |" -row = "eu risus suscipit, ut efficitur mauris sollicitudin. Suspendisse potenti. Integer feugiat mi sed ligula sagittis, id sagittis justo ullamcorper.

| 6 |" -row = " risus suscipit, ut efficitur mauris sollicitudin. Suspendisse potenti. Integer feugiat mi sed ligula sagittis, id sagittis justo ullamcorper.

| 6 |" -row = "risus suscipit, ut efficitur mauris sollicitudin. Suspendisse potenti. Integer feugiat mi sed ligula sagittis, id sagittis justo ullamcorper.

| 6 |" -row = " suscipit, ut efficitur mauris sollicitudin. Suspendisse potenti. Integer feugiat mi sed ligula sagittis, id sagittis justo ullamcorper.

| 6 |" -row = "suscipit, ut efficitur mauris sollicitudin. Suspendisse potenti. Integer feugiat mi sed ligula sagittis, id sagittis justo ullamcorper.

| 6 |" -row = ", ut efficitur mauris sollicitudin. Suspendisse potenti. Integer feugiat mi sed ligula sagittis, id sagittis justo ullamcorper.

| 6 |" -row = " ut efficitur mauris sollicitudin. Suspendisse potenti. Integer feugiat mi sed ligula sagittis, id sagittis justo ullamcorper.

| 6 |" -row = "ut efficitur mauris sollicitudin. Suspendisse potenti. Integer feugiat mi sed ligula sagittis, id sagittis justo ullamcorper.

| 6 |" -row = " efficitur mauris sollicitudin. Suspendisse potenti. Integer feugiat mi sed ligula sagittis, id sagittis justo ullamcorper.

| 6 |" -row = "efficitur mauris sollicitudin. Suspendisse potenti. Integer feugiat mi sed ligula sagittis, id sagittis justo ullamcorper.

| 6 |" -row = " mauris sollicitudin. Suspendisse potenti. Integer feugiat mi sed ligula sagittis, id sagittis justo ullamcorper.

| 6 |" -row = "mauris sollicitudin. Suspendisse potenti. Integer feugiat mi sed ligula sagittis, id sagittis justo ullamcorper.

| 6 |" -row = " sollicitudin. Suspendisse potenti. Integer feugiat mi sed ligula sagittis, id sagittis justo ullamcorper.

| 6 |" -row = "sollicitudin. Suspendisse potenti. Integer feugiat mi sed ligula sagittis, id sagittis justo ullamcorper.

| 6 |" -row = ". Suspendisse potenti. Integer feugiat mi sed ligula sagittis, id sagittis justo ullamcorper.

| 6 |" -row = " Suspendisse potenti. Integer feugiat mi sed ligula sagittis, id sagittis justo ullamcorper.

| 6 |" -row = "Suspendisse potenti. Integer feugiat mi sed ligula sagittis, id sagittis justo ullamcorper.

| 6 |" -row = " potenti. Integer feugiat mi sed ligula sagittis, id sagittis justo ullamcorper.

| 6 |" -row = "potenti. Integer feugiat mi sed ligula sagittis, id sagittis justo ullamcorper.

| 6 |" -row = ". Integer feugiat mi sed ligula sagittis, id sagittis justo ullamcorper.

| 6 |" -row = " Integer feugiat mi sed ligula sagittis, id sagittis justo ullamcorper.

| 6 |" -row = "Integer feugiat mi sed ligula sagittis, id sagittis justo ullamcorper.

| 6 |" -row = " feugiat mi sed ligula sagittis, id sagittis justo ullamcorper.

| 6 |" -row = "feugiat mi sed ligula sagittis, id sagittis justo ullamcorper.

| 6 |" -row = " mi sed ligula sagittis, id sagittis justo ullamcorper.

| 6 |" -row = "mi sed ligula sagittis, id sagittis justo ullamcorper.

| 6 |" -row = " sed ligula sagittis, id sagittis justo ullamcorper.

| 6 |" -row = "sed ligula sagittis, id sagittis justo ullamcorper.

| 6 |" -row = " ligula sagittis, id sagittis justo ullamcorper.

| 6 |" -row = "ligula sagittis, id sagittis justo ullamcorper.

| 6 |" -row = " sagittis, id sagittis justo ullamcorper.

| 6 |" -row = "sagittis, id sagittis justo ullamcorper.

| 6 |" -row = ", id sagittis justo ullamcorper.

| 6 |" -row = " id sagittis justo ullamcorper.

| 6 |" -row = "id sagittis justo ullamcorper.

| 6 |" -row = " sagittis justo ullamcorper.

| 6 |" -row = "sagittis justo ullamcorper.

| 6 |" -row = " justo ullamcorper.

| 6 |" -row = "justo ullamcorper.

| 6 |" -row = " ullamcorper.

| 6 |" -row = "ullamcorper.

| 6 |" -row = ".

| 6 |" -row = "

| 6 |" -row = "

| 6 |" -row = " | 6 |" -row = "| 6 |" -found vbar ("|") -row = " 6 |" -cell = "" -new cell -looking for starter -found nothing, defaulting to column info -tag = "td" -looking for closer -row = "6 |" -row = " |" -row = "|" -found vbar ("|") -row = "" -cell = "" -out = "" -html_row = "" -row = "| 7 | 8 | 9 |" -tbody content -row = "| 7 | 8 | 9 |" -new cell -looking for starter -found opening vbar -tag = "td" -row = " 7 | 8 | 9 |" -looking for closer -row = "7 | 8 | 9 |" -row = " | 8 | 9 |" -row = "| 8 | 9 |" -found vbar ("|") -row = " 8 | 9 |" -cell = "" -new cell -looking for starter -found nothing, defaulting to column info -tag = "td" -looking for closer -row = "8 | 9 |" -row = " | 9 |" -row = "| 9 |" -found vbar ("|") -row = " 9 |" -cell = "" -new cell -looking for starter -found nothing, defaulting to column info -tag = "td" -looking for closer -row = "9 |" -row = " |" -row = "|" -found vbar ("|") -row = "" -cell = "" -out = "" -html_row = "" -processing header rows -row = "| 1 | 2 | 3 |" -thead content -row = "| 1 | 2 | 3 |" -new cell -looking for starter -found opening vbar -tag = "th" -row = " 1 | 2 | 3 |" -looking for closer -row = "1 | 2 | 3 |" -row = " | 2 | 3 |" -row = "| 2 | 3 |" -found vbar ("|") -row = " 2 | 3 |" -cell = "" -new cell -looking for starter -found nothing, defaulting default_tag (th) -tag = "th" -looking for closer -row = "2 | 3 |" -row = " | 3 |" -row = "| 3 |" -found vbar ("|") -row = " 3 |" -cell = "" -new cell -looking for starter -found nothing, defaulting default_tag (th) -tag = "th" -looking for closer -row = "3 |" -row = " |" -row = "|" -found vbar ("|") -row = "" -cell = "" -out = "" -html_row = "" -row = "" -output_table = "
1 2 3
4

Lorem ipsum dolor sit amet, consectetur adipiscing elit. Sed auctor, nunc non fringilla pulvinar, augue arcu tempor lacus, vel gravida justo sapien vel nibh. Curabitur eget dignissim lorem. Vivamus sit amet urna nec lorem aliquet viverra. Aliquam erat volutpat. Maecenas sed ante vitae erat feugiat faucibus. Integer porttitor nibh eu risus suscipit, ut efficitur mauris sollicitudin. Suspendisse potenti. Integer feugiat mi sed ligula sagittis, id sagittis justo ullamcorper.

6 4

Lorem ipsum dolor sit amet, consectetur adipiscing elit. Sed auctor, nunc non fringilla pulvinar, augue arcu tempor lacus, vel gravida justo sapien vel nibh. Curabitur eget dignissim lorem. Vivamus sit amet urna nec lorem aliquet viverra. Aliquam erat volutpat. Maecenas sed ante vitae erat feugiat faucibus. Integer porttitor nibh eu risus suscipit, ut efficitur mauris sollicitudin. Suspendisse potenti. Integer feugiat mi sed ligula sagittis, id sagittis justo ullamcorper.

6 4

Lorem ipsum dolor sit amet, consectetur adipiscing elit. Sed auctor, nunc non fringilla pulvinar, augue arcu tempor lacus, vel gravida justo sapien vel nibh. Curabitur eget dignissim lorem. Vivamus sit amet urna nec lorem aliquet viverra. Aliquam erat volutpat. Maecenas sed ante vitae erat feugiat faucibus. Integer porttitor nibh eu risus suscipit, ut efficitur mauris sollicitudin. Suspendisse potenti. Integer feugiat mi sed ligula sagittis, id sagittis justo ullamcorper.

6 7 8 9 7 8 9 7 8 9 1 2 3 1 2 3 1 2 3
" -linesep = | - | - | - | -linesep = - | - | - | -linesep = - | - | - -sep = "-" -appendme = {'align': 'default', 'default-tag': 'td'} -sep = "-" -appendme = {'align': 'default', 'default-tag': 'td'} -sep = "-" -appendme = {'align': 'default', 'default-tag': 'td'} -row = "| 4 |
1 2 3
1 2 3
4 5 6
7 8 9
| 6 |" -tbody content -row = "| 4 |
1 2 3
4 5 6
7 8 9
| 6 |" -new cell -looking for starter -found opening vbar -tag = "td" -row = " 4 |
1 2 3
4 5 6
7 8 9
| 6 |" -looking for closer -row = "4 |
1 2 3
4 5 6
7 8 9
| 6 |" -row = " |
1 2 3
4 5 6
7 8 9
| 6 |" -row = "|
1 2 3
4 5 6
7 8 9
| 6 |" -found vbar ("|") -row = "
1 2 3
4 5 6
7 8 9
| 6 |" -cell = " 4 " -new cell -looking for starter -found nothing, defaulting to column info -tag = "td" -looking for closer -row = "
1 2 3
4 5 6
7 8 9
| 6 |" -row = " 1 2 3 4 5 6 7 8 9 | 6 |" -depth = 1 -row = " 1 2 3 4 5 6 7 8 9 | 6 |" -row = " 1 2 3 4 5 6 7 8 9 | 6 |" -row = " 1 2 3 4 5 6 7 8 9 | 6 |" -row = " 1 2 3 4 5 6 7 8 9 | 6 |" -row = " 1 2 3 4 5 6 7 8 9 | 6 |" -row = " 1 2 3 4 5 6 7 8 9 | 6 |" -row = "1 2 3 4 5 6 7 8 9 | 6 |" -row = " 2 3 4 5 6 7 8 9 | 6 |" -row = " 2 3 4 5 6 7 8 9 | 6 |" -row = " 2 3 4 5 6 7 8 9 | 6 |" -row = " 2 3 4 5 6 7 8 9 | 6 |" -row = " 2 3 4 5 6 7 8 9 | 6 |" -row = "2 3 4 5 6 7 8 9 | 6 |" -row = " 3 4 5 6 7 8 9 | 6 |" -row = " 3 4 5 6 7 8 9 | 6 |" -row = " 3 4 5 6 7 8 9 | 6 |" -row = " 3 4 5 6 7 8 9 | 6 |" -row = " 3 4 5 6 7 8 9 | 6 |" -row = "3 4 5 6 7 8 9 | 6 |" -row = " 4 5 6 7 8 9 | 6 |" -row = " 4 5 6 7 8 9 | 6 |" -row = " 4 5 6 7 8 9 | 6 |" -row = " 4 5 6 7 8 9 | 6 |" -row = " 4 5 6 7 8 9 | 6 |" -row = " 4 5 6 7 8 9 | 6 |" -row = " 4 5 6 7 8 9 | 6 |" -row = " 4 5 6 7 8 9 | 6 |" -row = " 4 5 6 7 8 9 | 6 |" -row = "4 5 6 7 8 9 | 6 |" -row = " 5 6 7 8 9 | 6 |" -row = " 5 6 7 8 9 | 6 |" -row = " 5 6 7 8 9 | 6 |" -row = " 5 6 7 8 9 | 6 |" -row = " 5 6 7 8 9 | 6 |" -row = "5 6 7 8 9 | 6 |" -row = " 6 7 8 9 | 6 |" -row = " 6 7 8 9 | 6 |" -row = " 6 7 8 9 | 6 |" -row = " 6 7 8 9 | 6 |" -row = " 6 7 8 9 | 6 |" -row = "6 7 8 9 | 6 |" -row = " 7 8 9 | 6 |" -row = " 7 8 9 | 6 |" -row = " 7 8 9 | 6 |" -row = " 7 8 9 | 6 |" -row = " 7 8 9 | 6 |" -row = " 7 8 9 | 6 |" -row = " 7 8 9 | 6 |" -row = " 7 8 9 | 6 |" -row = " 7 8 9 | 6 |" -row = "7 8 9 | 6 |" -row = " 8 9 | 6 |" -row = " 8 9 | 6 |" -row = " 8 9 | 6 |" -row = " 8 9 | 6 |" -row = " 8 9 | 6 |" -row = "8 9 | 6 |" -row = " 9 | 6 |" -row = " 9 | 6 |" -row = " 9 | 6 |" -row = " 9 | 6 |" -row = " 9 | 6 |" -row = "9 | 6 |" -row = " | 6 |" -row = " | 6 |" -row = " | 6 |" -row = " | 6 |" -row = " | 6 |" -row = " | 6 |" -row = " | 6 |" -row = " | 6 |" -row = " | 6 |" -depth = 0 -row = "| 6 |" -found vbar ("|") -row = " 6 |" -cell = "
1 2 3
4 5 6
7 8 9
" -new cell -looking for starter -found nothing, defaulting to column info -tag = "td" -looking for closer -row = "6 |" -row = " |" -row = "|" -found vbar ("|") -row = "" -cell = " 6 " -out = " 4
1 2 3
4 5 6
7 8 9
6 " -html_row = " 4
1 2 3
4 5 6
7 8 9
6 " -row = "| 7 | 8 | 9 |" -tbody content -row = "| 7 | 8 | 9 |" -new cell -looking for starter -found opening vbar -tag = "td" -row = " 7 | 8 | 9 |" -looking for closer -row = "7 | 8 | 9 |" -row = " | 8 | 9 |" -row = "| 8 | 9 |" -found vbar ("|") -row = " 8 | 9 |" -cell = " 7 " -new cell -looking for starter -found nothing, defaulting to column info -tag = "td" -looking for closer -row = "8 | 9 |" -row = " | 9 |" -row = "| 9 |" -found vbar ("|") -row = " 9 |" -cell = " 8 " -new cell -looking for starter -found nothing, defaulting to column info -tag = "td" -looking for closer -row = "9 |" -row = " |" -row = "|" -found vbar ("|") -row = "" -cell = " 9 " -out = " 7 8 9 " -html_row = " 7 8 9 " -processing header rows -row = "| 1 | 2 | 3 |" -thead content -row = "| 1 | 2 | 3 |" -new cell -looking for starter -found opening vbar -tag = "th" -row = " 1 | 2 | 3 |" -looking for closer -row = "1 | 2 | 3 |" -row = " | 2 | 3 |" -row = "| 2 | 3 |" -found vbar ("|") -row = " 2 | 3 |" -cell = " 1 " -new cell -looking for starter -found nothing, defaulting default_tag (th) -tag = "th" -looking for closer -row = "2 | 3 |" -row = " | 3 |" -row = "| 3 |" -found vbar ("|") -row = " 3 |" -cell = " 2 " -new cell -looking for starter -found nothing, defaulting default_tag (th) -tag = "th" -looking for closer -row = "3 |" -row = " |" -row = "|" -found vbar ("|") -row = "" -cell = " 3 " -out = " 1 2 3 " -html_row = " 1 2 3 " -row = "" -output_table = "" -linesep = | - | - | - | -linesep = - | - | - | -linesep = - | - | - -sep = "-" -appendme = {'align': 'default', 'default-tag': 'td'} -sep = "-" -appendme = {'align': 'default', 'default-tag': 'td'} -sep = "-" -appendme = {'align': 'default', 'default-tag': 'td'} -row = "|d|||" -tbody content -row = "|d|||" -new cell -looking for starter -found opening vbar -tag = "td" -row = "d|||" -looking for closer -row = "|||" -found vbar ("|||") -row = "" -cell = "" -out = "" -html_row = "" -processing header rows -row = "" -found explicit thead tag: "" -row = "" -row = "synchronized | synchronously | synchronize | synchronized | synchronizing" -thead content -row = "synchronized | synchronously | synchronize | synchronized | synchronizing" -new cell -looking for starter -found nothing, defaulting default_tag (th) -tag = "th" -looking for closer -row = " | synchronously | synchronize | synchronized | synchronizing" -row = "| synchronously | synchronize | synchronized | synchronizing" -found vbar ("|") -row = " synchronously | synchronize | synchronized | synchronizing" -cell = "" -new cell -looking for starter -found nothing, defaulting default_tag (th) -tag = "th" -looking for closer -row = "synchronously | synchronize | synchronized | synchronizing" -row = " | synchronize | synchronized | synchronizing" -row = "| synchronize | synchronized | synchronizing" -found vbar ("|") -row = " synchronize | synchronized | synchronizing" -cell = "" -new cell -looking for starter -found nothing, defaulting default_tag (th) -tag = "th" -looking for closer -row = "synchronize | synchronized | synchronizing" -row = " | synchronized | synchronizing" -row = "| synchronized | synchronizing" -found vbar ("|") -row = " synchronized | synchronizing" -cell = "" -new cell -looking for starter -found nothing, defaulting default_tag (th) -tag = "th" -looking for closer -row = "synchronized | synchronizing" -row = " | synchronizing" -row = "| synchronizing" -found vbar ("|") -row = " synchronizing" -cell = "" -new cell -looking for starter -found nothing, defaulting default_tag (th) -tag = "th" -looking for closer -row = "synchronizing" -row = "" -cell = "" -out = "" -html_row = "" -row = "1 | 2 | 3 | 4 | 5" -thead content -row = "1 | 2 | 3 | 4 | 5" -new cell -looking for starter -found nothing, defaulting default_tag (th) -tag = "th" -looking for closer -row = " | 2 | 3 | 4 | 5" -row = "| 2 | 3 | 4 | 5" -found vbar ("|") -row = " 2 | 3 | 4 | 5" -cell = "" -new cell -looking for starter -found nothing, defaulting default_tag (th) -tag = "th" -looking for closer -row = "2 | 3 | 4 | 5" -row = " | 3 | 4 | 5" -row = "| 3 | 4 | 5" -found vbar ("|") -row = " 3 | 4 | 5" -cell = "" -new cell -looking for starter -found nothing, defaulting default_tag (th) -tag = "th" -looking for closer -row = "3 | 4 | 5" -row = " | 4 | 5" -row = "| 4 | 5" -found vbar ("|") -row = " 4 | 5" -cell = "" -new cell -looking for starter -found nothing, defaulting default_tag (th) -tag = "th" -looking for closer -row = "4 | 5" -row = " | 5" -row = "| 5" -found vbar ("|") -row = " 5" -cell = "" -new cell -looking for starter -found nothing, defaulting default_tag (th) -tag = "th" -looking for closer -row = "5" -row = "" -cell = "" -out = "" -html_row = "" -row = "" -output_table = "
1 2 3
d d d
synchronized synchronously synchronize synchronized synchronizing synchronized synchronously synchronize synchronized synchronizing synchronized synchronously synchronize synchronized synchronizing 1 2 3 4 5 1 2 3 4 5 1 2 3 4 5
" -linesep = --- | :--- | ---: | === | :---: -sep = "---" -appendme = {'align': 'default', 'default-tag': 'td'} -sep = ":---" -appendme = {'align': 'left', 'default-tag': 'td'} -sep = "---:" -appendme = {'align': 'right', 'default-tag': 'td'} -sep = "===" -appendme = {'align': 'default', 'default-tag': 'th'} -sep = ":---:" -appendme = {'align': 'center', 'default-tag': 'td'} -row = "" -found explicit tbody tag: "" -row = "" -row = "| synchronous | system synthesis | that | transmit" -tbody content -row = "| synchronous | system synthesis | that | transmit" -new cell -looking for starter -found opening vbar -tag = "td" -row = " synchronous | system synthesis | that | transmit" -looking for closer -row = "synchronous | system synthesis | that | transmit" -row = " | system synthesis | that | transmit" -row = "| system synthesis | that | transmit" -found vbar ("|") -row = " system synthesis | that | transmit" -cell = "" -new cell -attributes = "{'align': 'left'}" -looking for starter -found nothing, defaulting to column info -tag = "td" -looking for closer -row = "system synthesis | that | transmit" -row = " synthesis | that | transmit" -row = " synthesis | that | transmit" -found HTML close tag: {m.group(1)} -row = " synthesis | that | transmit" -cell = "" -new cell -attributes = "{'align': 'right'}" -looking for starter -found nothing, defaulting to column info -tag = "td" -looking for closer -row = "synthesis | that | transmit" -row = " | that | transmit" -row = "| that | transmit" -found vbar ("|") -row = " that | transmit" -cell = "" -new cell -looking for starter -found nothing, defaulting to column info -tag = "th" -looking for closer -row = "that | transmit" -row = " | transmit" -row = "| transmit" -found vbar ("|") -row = " transmit" -cell = "" -new cell -attributes = "{'align': 'center'}" -looking for starter -found nothing, defaulting to column info -tag = "td" -looking for closer -row = "transmit" -row = "" -cell = "" -out = "" -html_row = "" -row = "| targeted " -new cell -attributes = "{'align': 'right'}" -looking for starter -found nothing, defaulting to column info -tag = "td" -looking for closer -row = "temporary | temporarily" -row = " | temporarily" -row = "| temporarily" -found vbar ("|") -row = " temporarily" -cell = "" -new cell -looking for starter -found nothing, defaulting to column info -tag = "th" -looking for closer -row = "temporarily" -row = "" -cell = "" -out = "" -html_row = "" -row = "" -blank line; new tbody -row = "| synchronous | system synthesis | that | transmit" -tbody content -row = "| synchronous | system synthesis | that | transmit" -new cell -looking for starter -found opening vbar -tag = "td" -row = " synchronous | system synthesis | that | transmit" -looking for closer -row = "synchronous | system synthesis | that | transmit" -row = " | system synthesis | that | transmit" -row = "| system synthesis | that | transmit" -found vbar ("|") -row = " system synthesis | that | transmit" -cell = "" -new cell -attributes = "{'align': 'left'}" -looking for starter -found nothing, defaulting to column info -tag = "td" -looking for closer -row = "system synthesis | that | transmit" -row = " synthesis | that | transmit" -row = " synthesis | that | transmit" -found HTML close tag: {m.group(1)} -row = " synthesis | that | transmit" -cell = "" -new cell -attributes = "{'align': 'right'}" -looking for starter -found nothing, defaulting to column info -tag = "td" -looking for closer -row = "synthesis | that | transmit" -row = " | that | transmit" -row = "| that | transmit" -found vbar ("|") -row = " that | transmit" -cell = "" -new cell -looking for starter -found nothing, defaulting to column info -tag = "th" -looking for closer -row = "that | transmit" -row = " | transmit" -row = "| transmit" -found vbar ("|") -row = " transmit" -cell = "" -new cell -attributes = "{'align': 'center'}" -looking for starter -found nothing, defaulting to column info -tag = "td" -looking for closer -row = "transmit" -row = "" -cell = "" -out = "" -html_row = "" -row = "" -blank line; new tbody -row = "" -found explicit tbody tag: "" -row = "" -row = "| synchronous | system | synthesis | that | transmit" -tbody content -row = "| synchronous | system | synthesis | that | transmit" -new cell -looking for starter -found opening vbar -tag = "td" -row = " synchronous | system | synthesis | that | transmit" -looking for closer -row = "synchronous | system | synthesis | that | transmit" -row = " | system | synthesis | that | transmit" -row = "| system | synthesis | that | transmit" -found vbar ("|") -row = " system | synthesis | that | transmit" -cell = "" -new cell -attributes = "{'align': 'left'}" -looking for starter -found nothing, defaulting to column info -tag = "td" -looking for closer -row = "system | synthesis | that | transmit" -row = " | synthesis | that | transmit" -row = "| synthesis | that | transmit" -found vbar ("|") -row = " synthesis | that | transmit" -cell = "" -new cell -attributes = "{'align': 'right'}" -looking for starter -found nothing, defaulting to column info -tag = "td" -looking for closer -row = "synthesis | that | transmit" -row = " | that | transmit" -row = "| that | transmit" -found vbar ("|") -row = " that | transmit" -cell = "" -new cell -looking for starter -found nothing, defaulting to column info -tag = "th" -looking for closer -row = "that | transmit" -row = " | transmit" -row = "| transmit" -found vbar ("|") -row = " transmit" -cell = "" -new cell -attributes = "{'align': 'center'}" -looking for starter -found nothing, defaulting to column info -tag = "td" -looking for closer -row = "transmit" -row = "" -cell = "" -out = "" -html_row = "" -processing header rows -row = "" -thead content -row = "" -new cell -looking for starter -found opening HTML tag -tag = "td" -row = " 123 " -looking for closer -row = "123 " -row = " " -row = "" -found HTML close tag: {m.group(1)} -row = "" -cell = "" -out = "" -html_row = "" -row = "" -output_table = "
synchronized synchronously synchronize synchronized synchronizing
1 2 3 4 5
synchronous system synthesis that transmit synchronous system synthesis that transmit synchronous system synthesis that transmit targeting tasklet | temporary | temporarily" -tbody content -row = "| targeted targeting tasklet | temporary | temporarily" -new cell -looking for starter -found opening vbar -tag = "td" -row = " targeted targeting tasklet | temporary | temporarily" -looking for closer -row = "targeted targeting tasklet | temporary | temporarily" -row = " targeting tasklet | temporary | temporarily" -row = " targeting tasklet | temporary | temporarily" -row = " targeting tasklet | temporary | temporarily" -row = "targeting tasklet | temporary | temporarily" -row = " tasklet | temporary | temporarily" -row = " tasklet | temporary | temporarily" -found HTML close tag: {m.group(1)} -row = " tasklet | temporary | temporarily" -cell = " targeted targeting " -new cell -attributes = "{'align': 'left'}" -looking for starter -found nothing, defaulting to column info -tag = "td" -looking for closer -row = "tasklet | temporary | temporarily" -row = " | temporary | temporarily" -row = "| temporary | temporarily" -found vbar ("|") -row = " temporary | temporarily" -cell = " tasklet temporary temporarily targeted targeting tasklet temporary temporarily targeted targeting tasklet temporary temporarily synchronous system synthesis that transmit synchronous system synthesis that transmit synchronous system synthesis that transmit
synchronous system synthesis that transmit synchronous system synthesis that transmit synchronous system synthesis that transmit 123 123 123 123 123
" -linesep = - -sep = "-" -appendme = {'align': 'default', 'default-tag': 'td'} -row = "" -tbody content -row = "" -new cell -looking for starter -found opening HTML tag -tag = "th" -row = " 456 " -looking for closer -row = "456 " -row = " " -row = "" -row = "" -cell = "" -out = "" -html_row = "" -processing header rows -row = "a" -thead content -row = "a" -new cell -looking for starter -found nothing, defaulting default_tag (th) -tag = "th" -looking for closer -row = "" -cell = "" -out = "" -html_row = "" -row = "" -output_table = "
123
456 456 456 456 456 a a a
" -linesep = - -sep = "-" -appendme = {'align': 'default', 'default-tag': 'td'} -row = "b" -tbody content -row = "b" -new cell -looking for starter -found nothing, defaulting to column info -tag = "td" -looking for closer -row = "" -cell = "" -out = "" -html_row = "" -row = "" -found explicit caption tag: "" -row = "" -text = """ -Lorem ipsum dolor sit amet, consectetur adipiscing elit. Sed auctor, nunc non fringilla pulvinar, augue arcu tempor lacus, vel gravida justo sapien vel nibh. Curabitur eget dignissim lorem. Vivamus sit amet urna nec lorem aliquet viverra. Aliquam erat volutpat. Maecenas sed ante vitae erat feugiat faucibus. Integer porttitor nibh eu risus suscipit, ut efficitur mauris sollicitudin. Suspendisse potenti. Integer feugiat mi sed ligula sagittis, id sagittis justo ullamcorper. -
a
b b b
abc abc
- -
a b c
a b c
- - - - - -
1 2 3
4

Lorem ipsum dolor sit amet, consectetur adipiscing elit. Sed auctor, nunc non fringilla pulvinar, augue arcu tempor lacus, vel gravida justo sapien vel nibh. Curabitur eget dignissim lorem. Vivamus sit amet urna nec lorem aliquet viverra. Aliquam erat volutpat. Maecenas sed ante vitae erat feugiat faucibus. Integer porttitor nibh eu risus suscipit, ut efficitur mauris sollicitudin. Suspendisse potenti. Integer feugiat mi sed ligula sagittis, id sagittis justo ullamcorper.

6
7 8 9
- - - - -
1 2 3
4
1 2 3
4 5 6
7 8 9
6
7 8 9
- - -Lorem ipsum dolor sit amet, consectetur adipiscing elit. Sed auctor, nunc non fringilla pulvinar, augue arcu tempor lacus, vel gravida justo sapien vel nibh. Curabitur eget dignissim lorem. Vivamus sit amet urna nec lorem aliquet viverra. Aliquam erat volutpat. Maecenas sed ante vitae erat feugiat faucibus. Integer porttitor nibh eu risus suscipit, ut efficitur mauris sollicitudin. Suspendisse potenti. Integer feugiat mi sed ligula sagittis, id sagittis justo ullamcorper. - - - -
1 2 3
d
- -Lorem ipsum dolor sit amet, consectetur adipiscing elit. Sed auctor, nunc non fringilla pulvinar, augue arcu tempor lacus, vel gravida justo sapien vel nibh. Curabitur eget dignissim lorem. Vivamus sit amet urna nec lorem aliquet viverra. Aliquam erat volutpat. Maecenas sed ante vitae erat feugiat faucibus. Integer porttitor nibh eu risus suscipit, ut efficitur mauris sollicitudin. Suspendisse potenti. Integer feugiat mi sed ligula sagittis, id sagittis justo ullamcorper. - - - -
synchronized synchronously synchronize synchronized synchronizing
1 2 3 4 5
synchronous system synthesis that transmit
targeted targeting tasklet temporary temporarily
synchronous system synthesis that transmit
synchronous system synthesis that transmit
- - -Lorem ipsum dolor sit amet, consectetur adipiscing elit. Sed auctor, nunc non fringilla pulvinar, augue arcu tempor lacus, vel gravida justo sapien vel nibh. Curabitur eget dignissim lorem. Vivamus sit amet urna nec lorem aliquet viverra. Aliquam erat volutpat. Maecenas sed ante vitae erat feugiat faucibus. Integer porttitor nibh eu risus suscipit, ut efficitur mauris sollicitudin. Suspendisse potenti. Integer feugiat mi sed ligula sagittis, id sagittis justo ullamcorper. - - - -
123
456
- -Lorem ipsum dolor sit amet, consectetur adipiscing elit. Sed auctor, nunc non fringilla pulvinar, augue arcu tempor lacus, vel gravida justo sapien vel nibh. Curabitur eget dignissim lorem. Vivamus sit amet urna nec lorem aliquet viverra. Aliquam erat volutpat. Maecenas sed ante vitae erat feugiat faucibus. Integer porttitor nibh eu risus suscipit, ut efficitur mauris sollicitudin. Suspendisse potenti. Integer feugiat mi sed ligula sagittis, id sagittis justo ullamcorper. - - -
a
b
abc
- - - -
a
- - - - -
b
- - - -Lorem ipsum dolor sit amet, consectetur adipiscing elit. Sed auctor, nunc non fringilla pulvinar, augue arcu tempor lacus, vel gravida justo sapien vel nibh. Curabitur eget dignissim lorem. Vivamus sit amet urna nec lorem aliquet viverra. Aliquam erat volutpat. Maecenas sed ante vitae erat feugiat faucibus. Integer porttitor nibh eu risus suscipit, ut efficitur mauris sollicitudin. Suspendisse potenti. Integer feugiat mi sed ligula sagittis, id sagittis justo ullamcorper. -""" - -Script done on 2025-11-16 18:35:46-05:00 [COMMAND_EXIT_CODE="0"]