noise2art version:
branch: main
commits: 78
git_hash: b0e59f9021c9f65bea9f86a8c792474bfab05049
clean
using the following text as input for art generation:
1: port 3389 scanned from 65.108.225.201:61501
2: 2022-05-25 23:54:02.650024
3:
4: port 3389 scanned from 95.217.57.33:54559
5: 2022-05-25 23:54:08.749945
6:
7: port 3389 scanned from 95.217.57.33:52784
8: 2022-05-25 23:54:30.540609
9:
10: port 3389 scanned from 65.108.225.201:49998
11: 2022-05-25 23:54:47.170988
12:
13: port 3389 scanned from 80.147.180.169:29070
14: 2022-05-25 23:54:48.513328
15:
16: port 3389 scanned from 95.217.57.33:49735
17: 2022-05-25 23:54:57.785135
18:
19: Wed 25 May 2022 11:55:01 PM CEST
20:
21: 23:55:01 up 190 days, 8:05, 0 users, load average: 0.00, 0.00, 0.00
22:
generating Mondrian-style image using lattice approach
generating canvas
canvas width
generating a value from range 300..800
getting next value from text data source
using next digit/letter "p" from line 1 column 1
using position 16 of lower case letter "p" in alphabet as value
value [16 from 1..26]
range of [16 from 1..26] is too small
enlarging range by combining with next value
getting next value from text data source
using next digit/letter "o" from line 1 column 2
using position 15 of lower case letter "o" in alphabet as value
value [15 from 1..26]
combining v1=[16 from 1..26] with v2=[15 from 1..26]
computing combined value v1*(size(v2)+1)+v2
combined value is [431 from 27..702]
[431 from 27..702] is at 59.85% of range
59.85% of range 300..800 is 599.26
generated value 599
canvas height
generating a value from range 300..800
getting next value from text data source
using next digit/letter "r" from line 1 column 3
using position 18 of lower case letter "r" in alphabet as value
value [18 from 1..26]
range of [18 from 1..26] is too small
enlarging range by combining with next value
getting next value from text data source
using next digit/letter "t" from line 1 column 4
using position 20 of lower case letter "t" in alphabet as value
value [20 from 1..26]
combining v1=[18 from 1..26] with v2=[20 from 1..26]
computing combined value v1*(size(v2)+1)+v2
combined value is [488 from 27..702]
[488 from 27..702] is at 68.30% of range
68.30% of range 300..800 is 641.48
generated value 641
canvas size: 599 pixels wide, 641 pixels high
deciding line width
shorter side is 599 pixels
using 3% of shorter side as line width: 18 pixels
deciding minimum rectangle size
shorter side is 599 pixels
using 5% of shorter side as minimum rectangle size: 30 pixels
new rectangle 0: x=0 y=0 width=599 height=641
dividing rectangle 0 into lattice
selecting horizontal lattice parameters for rectangle 0
width is 599 pixels
splitting 599 pixels
599 pixels plus line width 18 -> 617 pixels
minimum rectangle size 30 pixels plus line width 18 -> minimum part size 48 pixels
maximum number of parts: 12
determine number of splits
maximum number of splits limited to 10
minimum number of splits limited to 3
generating a value from range 3..10
getting next value from text data source
using next digit/letter "3" from line 1 column 6
using digit "3" as value
value [3 from 0..9]
[3 from 0..9] is at 33.33% of range
33.33% of range 3..10 is 5.33
generated value 5
number of splits: 5
determine position of splits
number of total pixels 599
considering 5 lines of 18 pixels
considering 6 times minimum rectangle size of 30 pixels
329 possible split positions
generating 5 value(s) from range 0..328
generating value 1
generating a value from range 0..328
getting next value from text data source
using next digit/letter "3" from line 1 column 7
using digit "3" as value
value [3 from 0..9]
range of [3 from 0..9] is too small
enlarging range by combining with next value
getting next value from text data source
using next digit/letter "8" from line 1 column 8
using digit "8" as value
value [8 from 0..9]
combining v1=[3 from 0..9] with v2=[8 from 0..9]
computing combined value v1*(size(v2)+1)+v2
combined value is [38 from 0..99]
range of [38 from 0..99] is too small
enlarging range by combining with next value
getting next value from text data source
using next digit/letter "9" from line 1 column 9
using digit "9" as value
value [9 from 0..9]
combining v1=[38 from 0..99] with v2=[9 from 0..9]
computing combined value v1*(size(v2)+1)+v2
combined value is [389 from 0..999]
[389 from 0..999] is at 38.94% of range
38.94% of range 0..328 is 127.72
generated value 128
value has been picked, shrinking pick range by one
generating value 2
generating a value from range 0..327
getting next value from text data source
using next digit/letter "s" from line 1 column 11
using position 19 of lower case letter "s" in alphabet as value
value [19 from 1..26]
range of [19 from 1..26] is too small
enlarging range by combining with next value
getting next value from text data source
using next digit/letter "c" from line 1 column 12
using position 3 of lower case letter "c" in alphabet as value
value [3 from 1..26]
combining v1=[19 from 1..26] with v2=[3 from 1..26]
computing combined value v1*(size(v2)+1)+v2
combined value is [497 from 27..702]
[497 from 27..702] is at 69.63% of range
69.63% of range 0..327 is 227.69
generated value 228
adapting picked number to original range
values picked before: 128
value 228 >= 128 -> adapting to 229
value has been picked, shrinking pick range by one
generating value 3
generating a value from range 0..326
getting next value from text data source
using next digit/letter "a" from line 1 column 13
using position 1 of lower case letter "a" in alphabet as value
value [1 from 1..26]
range of [1 from 1..26] is too small
enlarging range by combining with next value
getting next value from text data source
using next digit/letter "n" from line 1 column 14
using position 14 of lower case letter "n" in alphabet as value
value [14 from 1..26]
combining v1=[1 from 1..26] with v2=[14 from 1..26]
computing combined value v1*(size(v2)+1)+v2
combined value is [40 from 27..702]
[40 from 27..702] is at 1.93% of range
1.93% of range 0..326 is 6.28
generated value 6
adapting picked number to original range
values picked before: 128, 229
value has been picked, shrinking pick range by one
generating value 4
generating a value from range 0..325
getting next value from text data source
using next digit/letter "n" from line 1 column 15
using position 14 of lower case letter "n" in alphabet as value
value [14 from 1..26]
range of [14 from 1..26] is too small
enlarging range by combining with next value
getting next value from text data source
using next digit/letter "e" from line 1 column 16
using position 5 of lower case letter "e" in alphabet as value
value [5 from 1..26]
combining v1=[14 from 1..26] with v2=[5 from 1..26]
computing combined value v1*(size(v2)+1)+v2
combined value is [369 from 27..702]
[369 from 27..702] is at 50.67% of range
50.67% of range 0..325 is 164.67
generated value 165
adapting picked number to original range
values picked before: 6, 128, 229
value 165 >= 6 -> adapting to 166
value 166 >= 128 -> adapting to 167
value has been picked, shrinking pick range by one
generating value 5
generating a value from range 0..324
getting next value from text data source
using next digit/letter "d" from line 1 column 17
using position 4 of lower case letter "d" in alphabet as value
value [4 from 1..26]
range of [4 from 1..26] is too small
enlarging range by combining with next value
getting next value from text data source
using next digit/letter "f" from line 1 column 19
using position 6 of lower case letter "f" in alphabet as value
value [6 from 1..26]
combining v1=[4 from 1..26] with v2=[6 from 1..26]
computing combined value v1*(size(v2)+1)+v2
combined value is [110 from 27..702]
[110 from 27..702] is at 12.30% of range
12.30% of range 0..324 is 39.84
generated value 40
adapting picked number to original range
values picked before: 6, 128, 167, 229
value 40 >= 6 -> adapting to 41
value has been picked, shrinking pick range by one
values picked: 6, 41, 128, 167, 229
split positions: 6, 41, 128, 167, 229
split positions plus borders: 0, 6, 41, 128, 167, 229, 329
additional sizes (to minimum size 30): 6, 35, 87, 39, 62, 100
final sizes: 36, 65, 117, 69, 92, 130
widths for new rectangles: 36, 65, 117, 69, 92, 130 pixels
selecting vertical lattice parameters for rectangle 0
height is 641 pixels
splitting 641 pixels
641 pixels plus line width 18 -> 659 pixels
minimum rectangle size 30 pixels plus line width 18 -> minimum part size 48 pixels
maximum number of parts: 13
determine number of splits
maximum number of splits limited to 10
minimum number of splits limited to 3
generating a value from range 3..10
getting next value from text data source
using next digit/letter "r" from line 1 column 20
using position 18 of lower case letter "r" in alphabet as value
value [18 from 1..26]
[18 from 1..26] is at 68.00% of range
68.00% of range 3..10 is 7.76
generated value 8
number of splits: 8
determine position of splits
number of total pixels 641
considering 8 lines of 18 pixels
considering 9 times minimum rectangle size of 30 pixels
227 possible split positions
generating 8 value(s) from range 0..226
generating value 1
generating a value from range 0..226
getting next value from text data source
using next digit/letter "o" from line 1 column 21
using position 15 of lower case letter "o" in alphabet as value
value [15 from 1..26]
range of [15 from 1..26] is too small
enlarging range by combining with next value
getting next value from text data source
using next digit/letter "m" from line 1 column 22
using position 13 of lower case letter "m" in alphabet as value
value [13 from 1..26]
combining v1=[15 from 1..26] with v2=[13 from 1..26]
computing combined value v1*(size(v2)+1)+v2
combined value is [403 from 27..702]
[403 from 27..702] is at 55.70% of range
55.70% of range 0..226 is 125.89
generated value 126
value has been picked, shrinking pick range by one
generating value 2
generating a value from range 0..225
getting next value from text data source
using next digit/letter "6" from line 1 column 24
using digit "6" as value
value [6 from 0..9]
range of [6 from 0..9] is too small
enlarging range by combining with next value
getting next value from text data source
using next digit/letter "5" from line 1 column 25
using digit "5" as value
value [5 from 0..9]
combining v1=[6 from 0..9] with v2=[5 from 0..9]
computing combined value v1*(size(v2)+1)+v2
combined value is [65 from 0..99]
range of [65 from 0..99] is too small
enlarging range by combining with next value
getting next value from text data source
using next digit/letter "1" from line 1 column 27
using digit "1" as value
value [1 from 0..9]
combining v1=[65 from 0..99] with v2=[1 from 0..9]
computing combined value v1*(size(v2)+1)+v2
combined value is [651 from 0..999]
[651 from 0..999] is at 65.17% of range
65.17% of range 0..225 is 146.62
generated value 147
adapting picked number to original range
values picked before: 126
value 147 >= 126 -> adapting to 148
value has been picked, shrinking pick range by one
generating value 3
generating a value from range 0..224
getting next value from text data source
using next digit/letter "0" from line 1 column 28
using digit "0" as value
value [0 from 0..9]
range of [0 from 0..9] is too small
enlarging range by combining with next value
getting next value from text data source
using next digit/letter "8" from line 1 column 29
using digit "8" as value
value [8 from 0..9]
combining v1=[0 from 0..9] with v2=[8 from 0..9]
computing combined value v1*(size(v2)+1)+v2
combined value is [8 from 0..99]
range of [8 from 0..99] is too small
enlarging range by combining with next value
getting next value from text data source
using next digit/letter "2" from line 1 column 31
using digit "2" as value
value [2 from 0..9]
combining v1=[8 from 0..99] with v2=[2 from 0..9]
computing combined value v1*(size(v2)+1)+v2
combined value is [82 from 0..999]
[82 from 0..999] is at 8.21% of range
8.21% of range 0..224 is 18.39
generated value 18
adapting picked number to original range
values picked before: 126, 148
value has been picked, shrinking pick range by one
generating value 4
generating a value from range 0..223
getting next value from text data source
using next digit/letter "2" from line 1 column 32
using digit "2" as value
value [2 from 0..9]
range of [2 from 0..9] is too small
enlarging range by combining with next value
getting next value from text data source
using next digit/letter "5" from line 1 column 33
using digit "5" as value
value [5 from 0..9]
combining v1=[2 from 0..9] with v2=[5 from 0..9]
computing combined value v1*(size(v2)+1)+v2
combined value is [25 from 0..99]
range of [25 from 0..99] is too small
enlarging range by combining with next value
getting next value from text data source
using next digit/letter "2" from line 1 column 35
using digit "2" as value
value [2 from 0..9]
combining v1=[25 from 0..99] with v2=[2 from 0..9]
computing combined value v1*(size(v2)+1)+v2
combined value is [252 from 0..999]
[252 from 0..999] is at 25.23% of range
25.23% of range 0..223 is 56.25
generated value 56
adapting picked number to original range
values picked before: 18, 126, 148
value 56 >= 18 -> adapting to 57
value has been picked, shrinking pick range by one
generating value 5
generating a value from range 0..222
getting next value from text data source
using next digit/letter "0" from line 1 column 36
using digit "0" as value
value [0 from 0..9]
range of [0 from 0..9] is too small
enlarging range by combining with next value
getting next value from text data source
using next digit/letter "1" from line 1 column 37
using digit "1" as value
value [1 from 0..9]
combining v1=[0 from 0..9] with v2=[1 from 0..9]
computing combined value v1*(size(v2)+1)+v2
combined value is [1 from 0..99]
range of [1 from 0..99] is too small
enlarging range by combining with next value
getting next value from text data source
using next digit/letter "6" from line 1 column 39
using digit "6" as value
value [6 from 0..9]
combining v1=[1 from 0..99] with v2=[6 from 0..9]
computing combined value v1*(size(v2)+1)+v2
combined value is [16 from 0..999]
[16 from 0..999] is at 1.60% of range
1.60% of range 0..222 is 3.56
generated value 4
adapting picked number to original range
values picked before: 18, 57, 126, 148
value has been picked, shrinking pick range by one
generating value 6
generating a value from range 0..221
getting next value from text data source
using next digit/letter "1" from line 1 column 40
using digit "1" as value
value [1 from 0..9]
range of [1 from 0..9] is too small
enlarging range by combining with next value
getting next value from text data source
using next digit/letter "5" from line 1 column 41
using digit "5" as value
value [5 from 0..9]
combining v1=[1 from 0..9] with v2=[5 from 0..9]
computing combined value v1*(size(v2)+1)+v2
combined value is [15 from 0..99]
range of [15 from 0..99] is too small
enlarging range by combining with next value
getting next value from text data source
using next digit/letter "0" from line 1 column 42
using digit "0" as value
value [0 from 0..9]
combining v1=[15 from 0..99] with v2=[0 from 0..9]
computing combined value v1*(size(v2)+1)+v2
combined value is [150 from 0..999]
[150 from 0..999] is at 15.02% of range
15.02% of range 0..221 is 33.18
generated value 33
adapting picked number to original range
values picked before: 4, 18, 57, 126, 148
value 33 >= 4 -> adapting to 34
value 34 >= 18 -> adapting to 35
value has been picked, shrinking pick range by one
generating value 7
generating a value from range 0..220
getting next value from text data source
using next digit/letter "1" from line 1 column 43
using digit "1" as value
value [1 from 0..9]
range of [1 from 0..9] is too small
enlarging range by combining with next value
getting next value from text data source
using next digit/letter "2" from line 2 column 1
using digit "2" as value
value [2 from 0..9]
combining v1=[1 from 0..9] with v2=[2 from 0..9]
computing combined value v1*(size(v2)+1)+v2
combined value is [12 from 0..99]
range of [12 from 0..99] is too small
enlarging range by combining with next value
getting next value from text data source
using next digit/letter "0" from line 2 column 2
using digit "0" as value
value [0 from 0..9]
combining v1=[12 from 0..99] with v2=[0 from 0..9]
computing combined value v1*(size(v2)+1)+v2
combined value is [120 from 0..999]
[120 from 0..999] is at 12.01% of range
12.01% of range 0..220 is 26.43
generated value 26
adapting picked number to original range
values picked before: 4, 18, 35, 57, 126, 148
value 26 >= 4 -> adapting to 27
value 27 >= 18 -> adapting to 28
value has been picked, shrinking pick range by one
generating value 8
generating a value from range 0..219
getting next value from text data source
using next digit/letter "2" from line 2 column 3
using digit "2" as value
value [2 from 0..9]
range of [2 from 0..9] is too small
enlarging range by combining with next value
getting next value from text data source
using next digit/letter "2" from line 2 column 4
using digit "2" as value
value [2 from 0..9]
combining v1=[2 from 0..9] with v2=[2 from 0..9]
computing combined value v1*(size(v2)+1)+v2
combined value is [22 from 0..99]
range of [22 from 0..99] is too small
enlarging range by combining with next value
getting next value from text data source
using next digit/letter "0" from line 2 column 6
using digit "0" as value
value [0 from 0..9]
combining v1=[22 from 0..99] with v2=[0 from 0..9]
computing combined value v1*(size(v2)+1)+v2
combined value is [220 from 0..999]
[220 from 0..999] is at 22.02% of range
22.02% of range 0..219 is 48.23
generated value 48
adapting picked number to original range
values picked before: 4, 18, 28, 35, 57, 126, 148
value 48 >= 4 -> adapting to 49
value 49 >= 18 -> adapting to 50
value 50 >= 28 -> adapting to 51
value 51 >= 35 -> adapting to 52
value has been picked, shrinking pick range by one
values picked: 4, 18, 28, 35, 52, 57, 126, 148
split positions: 4, 18, 28, 35, 52, 57, 126, 148
split positions plus borders: 0, 4, 18, 28, 35, 52, 57, 126, 148, 227
additional sizes (to minimum size 30): 4, 14, 10, 7, 17, 5, 69, 22, 79
final sizes: 34, 44, 40, 37, 47, 35, 99, 52, 109
heights for new rectangles: 34, 44, 40, 37, 47, 35, 99, 52, 109 pixels
generating lattice rectangles for rectangle 0
new rectangle 1: x=0 y=0 width=36 height=34
new rectangle 2: x=54 y=0 width=65 height=34
new rectangle 3: x=137 y=0 width=117 height=34
new rectangle 4: x=272 y=0 width=69 height=34
new rectangle 5: x=359 y=0 width=92 height=34
new rectangle 6: x=469 y=0 width=130 height=34
new rectangle 7: x=0 y=52 width=36 height=44
new rectangle 8: x=54 y=52 width=65 height=44
new rectangle 9: x=137 y=52 width=117 height=44
new rectangle 10: x=272 y=52 width=69 height=44
new rectangle 11: x=359 y=52 width=92 height=44
new rectangle 12: x=469 y=52 width=130 height=44
new rectangle 13: x=0 y=114 width=36 height=40
new rectangle 14: x=54 y=114 width=65 height=40
new rectangle 15: x=137 y=114 width=117 height=40
new rectangle 16: x=272 y=114 width=69 height=40
new rectangle 17: x=359 y=114 width=92 height=40
new rectangle 18: x=469 y=114 width=130 height=40
new rectangle 19: x=0 y=172 width=36 height=37
new rectangle 20: x=54 y=172 width=65 height=37
new rectangle 21: x=137 y=172 width=117 height=37
new rectangle 22: x=272 y=172 width=69 height=37
new rectangle 23: x=359 y=172 width=92 height=37
new rectangle 24: x=469 y=172 width=130 height=37
new rectangle 25: x=0 y=227 width=36 height=47
new rectangle 26: x=54 y=227 width=65 height=47
new rectangle 27: x=137 y=227 width=117 height=47
new rectangle 28: x=272 y=227 width=69 height=47
new rectangle 29: x=359 y=227 width=92 height=47
new rectangle 30: x=469 y=227 width=130 height=47
new rectangle 31: x=0 y=292 width=36 height=35
new rectangle 32: x=54 y=292 width=65 height=35
new rectangle 33: x=137 y=292 width=117 height=35
new rectangle 34: x=272 y=292 width=69 height=35
new rectangle 35: x=359 y=292 width=92 height=35
new rectangle 36: x=469 y=292 width=130 height=35
new rectangle 37: x=0 y=345 width=36 height=99
new rectangle 38: x=54 y=345 width=65 height=99
new rectangle 39: x=137 y=345 width=117 height=99
new rectangle 40: x=272 y=345 width=69 height=99
new rectangle 41: x=359 y=345 width=92 height=99
new rectangle 42: x=469 y=345 width=130 height=99
new rectangle 43: x=0 y=462 width=36 height=52
new rectangle 44: x=54 y=462 width=65 height=52
new rectangle 45: x=137 y=462 width=117 height=52
new rectangle 46: x=272 y=462 width=69 height=52
new rectangle 47: x=359 y=462 width=92 height=52
new rectangle 48: x=469 y=462 width=130 height=52
new rectangle 49: x=0 y=532 width=36 height=109
new rectangle 50: x=54 y=532 width=65 height=109
new rectangle 51: x=137 y=532 width=117 height=109
new rectangle 52: x=272 y=532 width=69 height=109
new rectangle 53: x=359 y=532 width=92 height=109
new rectangle 54: x=469 y=532 width=130 height=109
removed old rectangle 0 from image
added new rectangle 1 to image
added new rectangle 2 to image
added new rectangle 3 to image
added new rectangle 4 to image
added new rectangle 5 to image
added new rectangle 6 to image
added new rectangle 7 to image
added new rectangle 8 to image
added new rectangle 9 to image
added new rectangle 10 to image
added new rectangle 11 to image
added new rectangle 12 to image
added new rectangle 13 to image
added new rectangle 14 to image
added new rectangle 15 to image
added new rectangle 16 to image
added new rectangle 17 to image
added new rectangle 18 to image
added new rectangle 19 to image
added new rectangle 20 to image
added new rectangle 21 to image
added new rectangle 22 to image
added new rectangle 23 to image
added new rectangle 24 to image
added new rectangle 25 to image
added new rectangle 26 to image
added new rectangle 27 to image
added new rectangle 28 to image
added new rectangle 29 to image
added new rectangle 30 to image
added new rectangle 31 to image
added new rectangle 32 to image
added new rectangle 33 to image
added new rectangle 34 to image
added new rectangle 35 to image
added new rectangle 36 to image
added new rectangle 37 to image
added new rectangle 38 to image
added new rectangle 39 to image
added new rectangle 40 to image
added new rectangle 41 to image
added new rectangle 42 to image
added new rectangle 43 to image
added new rectangle 44 to image
added new rectangle 45 to image
added new rectangle 46 to image
added new rectangle 47 to image
added new rectangle 48 to image
added new rectangle 49 to image
added new rectangle 50 to image
added new rectangle 51 to image
added new rectangle 52 to image
added new rectangle 53 to image
added new rectangle 54 to image
merging rectangles
determining targeted number of rectangles
generating a value from range 8..20
getting next value from text data source
using next digit/letter "5" from line 2 column 7
using digit "5" as value
value [5 from 0..9]
range of [5 from 0..9] is too small
enlarging range by combining with next value
getting next value from text data source
using next digit/letter "2" from line 2 column 9
using digit "2" as value
value [2 from 0..9]
combining v1=[5 from 0..9] with v2=[2 from 0..9]
computing combined value v1*(size(v2)+1)+v2
combined value is [52 from 0..99]
[52 from 0..99] is at 52.53% of range
52.53% of range 8..20 is 14.30
generated value 14
reducing number of rectangles to 14
number of rectangles: 54
merging two rectangles
choosing from 93 options
1 means merge rectangles 1 and 2
2 means merge rectangles 1 and 7
3 means merge rectangles 2 and 3
4 means merge rectangles 2 and 8
5 means merge rectangles 3 and 4
6 means merge rectangles 3 and 9
7 means merge rectangles 4 and 5
8 means merge rectangles 4 and 10
9 means merge rectangles 5 and 6
10 means merge rectangles 5 and 11
11 means merge rectangles 6 and 12
12 means merge rectangles 7 and 8
13 means merge rectangles 7 and 13
14 means merge rectangles 8 and 9
15 means merge rectangles 8 and 14
16 means merge rectangles 9 and 10
17 means merge rectangles 9 and 15
18 means merge rectangles 10 and 11
19 means merge rectangles 10 and 16
20 means merge rectangles 11 and 12
21 means merge rectangles 11 and 17
22 means merge rectangles 12 and 18
23 means merge rectangles 13 and 14
24 means merge rectangles 13 and 19
25 means merge rectangles 14 and 15
26 means merge rectangles 14 and 20
27 means merge rectangles 15 and 16
28 means merge rectangles 15 and 21
29 means merge rectangles 16 and 17
30 means merge rectangles 16 and 22
31 means merge rectangles 17 and 18
32 means merge rectangles 17 and 23
33 means merge rectangles 18 and 24
34 means merge rectangles 19 and 20
35 means merge rectangles 19 and 25
36 means merge rectangles 20 and 21
37 means merge rectangles 20 and 26
38 means merge rectangles 21 and 22
39 means merge rectangles 21 and 27
40 means merge rectangles 22 and 23
41 means merge rectangles 22 and 28
42 means merge rectangles 23 and 24
43 means merge rectangles 23 and 29
44 means merge rectangles 24 and 30
45 means merge rectangles 25 and 26
46 means merge rectangles 25 and 31
47 means merge rectangles 26 and 27
48 means merge rectangles 26 and 32
49 means merge rectangles 27 and 28
50 means merge rectangles 27 and 33
51 means merge rectangles 28 and 29
52 means merge rectangles 28 and 34
53 means merge rectangles 29 and 30
54 means merge rectangles 29 and 35
55 means merge rectangles 30 and 36
56 means merge rectangles 31 and 32
57 means merge rectangles 31 and 37
58 means merge rectangles 32 and 33
59 means merge rectangles 32 and 38
60 means merge rectangles 33 and 34
61 means merge rectangles 33 and 39
62 means merge rectangles 34 and 35
63 means merge rectangles 34 and 40
64 means merge rectangles 35 and 36
65 means merge rectangles 35 and 41
66 means merge rectangles 36 and 42
67 means merge rectangles 37 and 38
68 means merge rectangles 37 and 43
69 means merge rectangles 38 and 39
70 means merge rectangles 38 and 44
71 means merge rectangles 39 and 40
72 means merge rectangles 39 and 45
73 means merge rectangles 40 and 41
74 means merge rectangles 40 and 46
75 means merge rectangles 41 and 42
76 means merge rectangles 41 and 47
77 means merge rectangles 42 and 48
78 means merge rectangles 43 and 44
79 means merge rectangles 43 and 49
80 means merge rectangles 44 and 45
81 means merge rectangles 44 and 50
82 means merge rectangles 45 and 46
83 means merge rectangles 45 and 51
84 means merge rectangles 46 and 47
85 means merge rectangles 46 and 52
86 means merge rectangles 47 and 48
87 means merge rectangles 47 and 53
88 means merge rectangles 48 and 54
89 means merge rectangles 49 and 50
90 means merge rectangles 50 and 51
91 means merge rectangles 51 and 52
92 means merge rectangles 52 and 53
93 means merge rectangles 53 and 54
generating a value from range 1..93
getting next value from text data source
using next digit/letter "5" from line 2 column 10
using digit "5" as value
value [5 from 0..9]
range of [5 from 0..9] is too small
enlarging range by combining with next value
getting next value from text data source
using next digit/letter "2" from line 2 column 12
using digit "2" as value
value [2 from 0..9]
combining v1=[5 from 0..9] with v2=[2 from 0..9]
computing combined value v1*(size(v2)+1)+v2
combined value is [52 from 0..99]
[52 from 0..99] is at 52.53% of range
52.53% of range 1..93 is 49.32
generated value 49
49 means merge rectangles 27 and 28
merging rectangles 27 and 28
new rectangle 55: x=137 y=227 width=204 height=47
removed old rectangles 27 and 28 from image
added new rectangle 55 to image
number of rectangles: 53
merging two rectangles
choosing from 88 options
1 means merge rectangles 1 and 2
2 means merge rectangles 1 and 7
3 means merge rectangles 2 and 3
4 means merge rectangles 2 and 8
5 means merge rectangles 3 and 4
6 means merge rectangles 3 and 9
7 means merge rectangles 4 and 5
8 means merge rectangles 4 and 10
9 means merge rectangles 5 and 6
10 means merge rectangles 5 and 11
11 means merge rectangles 6 and 12
12 means merge rectangles 7 and 8
13 means merge rectangles 7 and 13
14 means merge rectangles 8 and 9
15 means merge rectangles 8 and 14
16 means merge rectangles 9 and 10
17 means merge rectangles 9 and 15
18 means merge rectangles 10 and 11
19 means merge rectangles 10 and 16
20 means merge rectangles 11 and 12
21 means merge rectangles 11 and 17
22 means merge rectangles 12 and 18
23 means merge rectangles 13 and 14
24 means merge rectangles 13 and 19
25 means merge rectangles 14 and 15
26 means merge rectangles 14 and 20
27 means merge rectangles 15 and 16
28 means merge rectangles 15 and 21
29 means merge rectangles 16 and 17
30 means merge rectangles 16 and 22
31 means merge rectangles 17 and 18
32 means merge rectangles 17 and 23
33 means merge rectangles 18 and 24
34 means merge rectangles 19 and 20
35 means merge rectangles 19 and 25
36 means merge rectangles 20 and 21
37 means merge rectangles 20 and 26
38 means merge rectangles 21 and 22
39 means merge rectangles 22 and 23
40 means merge rectangles 23 and 24
41 means merge rectangles 23 and 29
42 means merge rectangles 24 and 30
43 means merge rectangles 25 and 26
44 means merge rectangles 25 and 31
45 means merge rectangles 26 and 32
46 means merge rectangles 26 and 55
47 means merge rectangles 29 and 30
48 means merge rectangles 29 and 35
49 means merge rectangles 30 and 36
50 means merge rectangles 31 and 32
51 means merge rectangles 31 and 37
52 means merge rectangles 32 and 33
53 means merge rectangles 32 and 38
54 means merge rectangles 33 and 34
55 means merge rectangles 33 and 39
56 means merge rectangles 34 and 35
57 means merge rectangles 34 and 40
58 means merge rectangles 35 and 36
59 means merge rectangles 35 and 41
60 means merge rectangles 36 and 42
61 means merge rectangles 37 and 38
62 means merge rectangles 37 and 43
63 means merge rectangles 38 and 39
64 means merge rectangles 38 and 44
65 means merge rectangles 39 and 40
66 means merge rectangles 39 and 45
67 means merge rectangles 40 and 41
68 means merge rectangles 40 and 46
69 means merge rectangles 41 and 42
70 means merge rectangles 41 and 47
71 means merge rectangles 42 and 48
72 means merge rectangles 43 and 44
73 means merge rectangles 43 and 49
74 means merge rectangles 44 and 45
75 means merge rectangles 44 and 50
76 means merge rectangles 45 and 46
77 means merge rectangles 45 and 51
78 means merge rectangles 46 and 47
79 means merge rectangles 46 and 52
80 means merge rectangles 47 and 48
81 means merge rectangles 47 and 53
82 means merge rectangles 48 and 54
83 means merge rectangles 49 and 50
84 means merge rectangles 50 and 51
85 means merge rectangles 51 and 52
86 means merge rectangles 52 and 53
87 means merge rectangles 53 and 54
88 means merge rectangles 55 and 29
generating a value from range 1..88
getting next value from text data source
using next digit/letter "3" from line 2 column 13
using digit "3" as value
value [3 from 0..9]
range of [3 from 0..9] is too small
enlarging range by combining with next value
getting next value from text data source
using next digit/letter "5" from line 2 column 15
using digit "5" as value
value [5 from 0..9]
combining v1=[3 from 0..9] with v2=[5 from 0..9]
computing combined value v1*(size(v2)+1)+v2
combined value is [35 from 0..99]
[35 from 0..99] is at 35.35% of range
35.35% of range 1..88 is 31.76
generated value 32
32 means merge rectangles 17 and 23
merging rectangles 17 and 23
new rectangle 56: x=359 y=114 width=92 height=95
removed old rectangles 17 and 23 from image
added new rectangle 56 to image
number of rectangles: 52
merging two rectangles
choosing from 83 options
1 means merge rectangles 1 and 2
2 means merge rectangles 1 and 7
3 means merge rectangles 2 and 3
4 means merge rectangles 2 and 8
5 means merge rectangles 3 and 4
6 means merge rectangles 3 and 9
7 means merge rectangles 4 and 5
8 means merge rectangles 4 and 10
9 means merge rectangles 5 and 6
10 means merge rectangles 5 and 11
11 means merge rectangles 6 and 12
12 means merge rectangles 7 and 8
13 means merge rectangles 7 and 13
14 means merge rectangles 8 and 9
15 means merge rectangles 8 and 14
16 means merge rectangles 9 and 10
17 means merge rectangles 9 and 15
18 means merge rectangles 10 and 11
19 means merge rectangles 10 and 16
20 means merge rectangles 11 and 12
21 means merge rectangles 11 and 56
22 means merge rectangles 12 and 18
23 means merge rectangles 13 and 14
24 means merge rectangles 13 and 19
25 means merge rectangles 14 and 15
26 means merge rectangles 14 and 20
27 means merge rectangles 15 and 16
28 means merge rectangles 15 and 21
29 means merge rectangles 16 and 22
30 means merge rectangles 18 and 24
31 means merge rectangles 19 and 20
32 means merge rectangles 19 and 25
33 means merge rectangles 20 and 21
34 means merge rectangles 20 and 26
35 means merge rectangles 21 and 22
36 means merge rectangles 24 and 30
37 means merge rectangles 25 and 26
38 means merge rectangles 25 and 31
39 means merge rectangles 26 and 32
40 means merge rectangles 26 and 55
41 means merge rectangles 29 and 30
42 means merge rectangles 29 and 35
43 means merge rectangles 30 and 36
44 means merge rectangles 31 and 32
45 means merge rectangles 31 and 37
46 means merge rectangles 32 and 33
47 means merge rectangles 32 and 38
48 means merge rectangles 33 and 34
49 means merge rectangles 33 and 39
50 means merge rectangles 34 and 35
51 means merge rectangles 34 and 40
52 means merge rectangles 35 and 36
53 means merge rectangles 35 and 41
54 means merge rectangles 36 and 42
55 means merge rectangles 37 and 38
56 means merge rectangles 37 and 43
57 means merge rectangles 38 and 39
58 means merge rectangles 38 and 44
59 means merge rectangles 39 and 40
60 means merge rectangles 39 and 45
61 means merge rectangles 40 and 41
62 means merge rectangles 40 and 46
63 means merge rectangles 41 and 42
64 means merge rectangles 41 and 47
65 means merge rectangles 42 and 48
66 means merge rectangles 43 and 44
67 means merge rectangles 43 and 49
68 means merge rectangles 44 and 45
69 means merge rectangles 44 and 50
70 means merge rectangles 45 and 46
71 means merge rectangles 45 and 51
72 means merge rectangles 46 and 47
73 means merge rectangles 46 and 52
74 means merge rectangles 47 and 48
75 means merge rectangles 47 and 53
76 means merge rectangles 48 and 54
77 means merge rectangles 49 and 50
78 means merge rectangles 50 and 51
79 means merge rectangles 51 and 52
80 means merge rectangles 52 and 53
81 means merge rectangles 53 and 54
82 means merge rectangles 55 and 29
83 means merge rectangles 56 and 29
generating a value from range 1..83
getting next value from text data source
using next digit/letter "4" from line 2 column 16
using digit "4" as value
value [4 from 0..9]
range of [4 from 0..9] is too small
enlarging range by combining with next value
getting next value from text data source
using next digit/letter "0" from line 2 column 18
using digit "0" as value
value [0 from 0..9]
combining v1=[4 from 0..9] with v2=[0 from 0..9]
computing combined value v1*(size(v2)+1)+v2
combined value is [40 from 0..99]
[40 from 0..99] is at 40.40% of range
40.40% of range 1..83 is 34.13
generated value 34
34 means merge rectangles 20 and 26
merging rectangles 20 and 26
new rectangle 57: x=54 y=172 width=65 height=102
removed old rectangles 20 and 26 from image
added new rectangle 57 to image
number of rectangles: 51
merging two rectangles
choosing from 78 options
1 means merge rectangles 1 and 2
2 means merge rectangles 1 and 7
3 means merge rectangles 2 and 3
4 means merge rectangles 2 and 8
5 means merge rectangles 3 and 4
6 means merge rectangles 3 and 9
7 means merge rectangles 4 and 5
8 means merge rectangles 4 and 10
9 means merge rectangles 5 and 6
10 means merge rectangles 5 and 11
11 means merge rectangles 6 and 12
12 means merge rectangles 7 and 8
13 means merge rectangles 7 and 13
14 means merge rectangles 8 and 9
15 means merge rectangles 8 and 14
16 means merge rectangles 9 and 10
17 means merge rectangles 9 and 15
18 means merge rectangles 10 and 11
19 means merge rectangles 10 and 16
20 means merge rectangles 11 and 12
21 means merge rectangles 11 and 56
22 means merge rectangles 12 and 18
23 means merge rectangles 13 and 14
24 means merge rectangles 13 and 19
25 means merge rectangles 14 and 15
26 means merge rectangles 14 and 57
27 means merge rectangles 15 and 16
28 means merge rectangles 15 and 21
29 means merge rectangles 16 and 22
30 means merge rectangles 18 and 24
31 means merge rectangles 19 and 25
32 means merge rectangles 21 and 22
33 means merge rectangles 24 and 30
34 means merge rectangles 25 and 31
35 means merge rectangles 29 and 30
36 means merge rectangles 29 and 35
37 means merge rectangles 30 and 36
38 means merge rectangles 31 and 32
39 means merge rectangles 31 and 37
40 means merge rectangles 32 and 33
41 means merge rectangles 32 and 38
42 means merge rectangles 33 and 34
43 means merge rectangles 33 and 39
44 means merge rectangles 34 and 35
45 means merge rectangles 34 and 40
46 means merge rectangles 35 and 36
47 means merge rectangles 35 and 41
48 means merge rectangles 36 and 42
49 means merge rectangles 37 and 38
50 means merge rectangles 37 and 43
51 means merge rectangles 38 and 39
52 means merge rectangles 38 and 44
53 means merge rectangles 39 and 40
54 means merge rectangles 39 and 45
55 means merge rectangles 40 and 41
56 means merge rectangles 40 and 46
57 means merge rectangles 41 and 42
58 means merge rectangles 41 and 47
59 means merge rectangles 42 and 48
60 means merge rectangles 43 and 44
61 means merge rectangles 43 and 49
62 means merge rectangles 44 and 45
63 means merge rectangles 44 and 50
64 means merge rectangles 45 and 46
65 means merge rectangles 45 and 51
66 means merge rectangles 46 and 47
67 means merge rectangles 46 and 52
68 means merge rectangles 47 and 48
69 means merge rectangles 47 and 53
70 means merge rectangles 48 and 54
71 means merge rectangles 49 and 50
72 means merge rectangles 50 and 51
73 means merge rectangles 51 and 52
74 means merge rectangles 52 and 53
75 means merge rectangles 53 and 54
76 means merge rectangles 55 and 29
77 means merge rectangles 56 and 29
78 means merge rectangles 57 and 32
generating a value from range 1..78
getting next value from text data source
using next digit/letter "2" from line 2 column 19
using digit "2" as value
value [2 from 0..9]
range of [2 from 0..9] is too small
enlarging range by combining with next value
getting next value from text data source
using next digit/letter "6" from line 2 column 21
using digit "6" as value
value [6 from 0..9]
combining v1=[2 from 0..9] with v2=[6 from 0..9]
computing combined value v1*(size(v2)+1)+v2
combined value is [26 from 0..99]
[26 from 0..99] is at 26.26% of range
26.26% of range 1..78 is 21.22
generated value 21
21 means merge rectangles 11 and 56
merging rectangles 11 and 56
new rectangle 58: x=359 y=52 width=92 height=157
removed old rectangles 11 and 56 from image
added new rectangle 58 to image
number of rectangles: 50
merging two rectangles
choosing from 75 options
1 means merge rectangles 1 and 2
2 means merge rectangles 1 and 7
3 means merge rectangles 2 and 3
4 means merge rectangles 2 and 8
5 means merge rectangles 3 and 4
6 means merge rectangles 3 and 9
7 means merge rectangles 4 and 5
8 means merge rectangles 4 and 10
9 means merge rectangles 5 and 6
10 means merge rectangles 5 and 58
11 means merge rectangles 6 and 12
12 means merge rectangles 7 and 8
13 means merge rectangles 7 and 13
14 means merge rectangles 8 and 9
15 means merge rectangles 8 and 14
16 means merge rectangles 9 and 10
17 means merge rectangles 9 and 15
18 means merge rectangles 10 and 16
19 means merge rectangles 12 and 18
20 means merge rectangles 13 and 14
21 means merge rectangles 13 and 19
22 means merge rectangles 14 and 15
23 means merge rectangles 14 and 57
24 means merge rectangles 15 and 16
25 means merge rectangles 15 and 21
26 means merge rectangles 16 and 22
27 means merge rectangles 18 and 24
28 means merge rectangles 19 and 25
29 means merge rectangles 21 and 22
30 means merge rectangles 24 and 30
31 means merge rectangles 25 and 31
32 means merge rectangles 29 and 30
33 means merge rectangles 29 and 35
34 means merge rectangles 30 and 36
35 means merge rectangles 31 and 32
36 means merge rectangles 31 and 37
37 means merge rectangles 32 and 33
38 means merge rectangles 32 and 38
39 means merge rectangles 33 and 34
40 means merge rectangles 33 and 39
41 means merge rectangles 34 and 35
42 means merge rectangles 34 and 40
43 means merge rectangles 35 and 36
44 means merge rectangles 35 and 41
45 means merge rectangles 36 and 42
46 means merge rectangles 37 and 38
47 means merge rectangles 37 and 43
48 means merge rectangles 38 and 39
49 means merge rectangles 38 and 44
50 means merge rectangles 39 and 40
51 means merge rectangles 39 and 45
52 means merge rectangles 40 and 41
53 means merge rectangles 40 and 46
54 means merge rectangles 41 and 42
55 means merge rectangles 41 and 47
56 means merge rectangles 42 and 48
57 means merge rectangles 43 and 44
58 means merge rectangles 43 and 49
59 means merge rectangles 44 and 45
60 means merge rectangles 44 and 50
61 means merge rectangles 45 and 46
62 means merge rectangles 45 and 51
63 means merge rectangles 46 and 47
64 means merge rectangles 46 and 52
65 means merge rectangles 47 and 48
66 means merge rectangles 47 and 53
67 means merge rectangles 48 and 54
68 means merge rectangles 49 and 50
69 means merge rectangles 50 and 51
70 means merge rectangles 51 and 52
71 means merge rectangles 52 and 53
72 means merge rectangles 53 and 54
73 means merge rectangles 55 and 29
74 means merge rectangles 57 and 32
75 means merge rectangles 58 and 29
generating a value from range 1..75
getting next value from text data source
using next digit/letter "5" from line 2 column 22
using digit "5" as value
value [5 from 0..9]
range of [5 from 0..9] is too small
enlarging range by combining with next value
getting next value from text data source
using next digit/letter "0" from line 2 column 23
using digit "0" as value
value [0 from 0..9]
combining v1=[5 from 0..9] with v2=[0 from 0..9]
computing combined value v1*(size(v2)+1)+v2
combined value is [50 from 0..99]
[50 from 0..99] is at 50.51% of range
50.51% of range 1..75 is 38.37
generated value 38
38 means merge rectangles 32 and 38
merging rectangles 32 and 38
new rectangle 59: x=54 y=292 width=65 height=152
removed old rectangles 32 and 38 from image
added new rectangle 59 to image
number of rectangles: 49
merging two rectangles
choosing from 70 options
1 means merge rectangles 1 and 2
2 means merge rectangles 1 and 7
3 means merge rectangles 2 and 3
4 means merge rectangles 2 and 8
5 means merge rectangles 3 and 4
6 means merge rectangles 3 and 9
7 means merge rectangles 4 and 5
8 means merge rectangles 4 and 10
9 means merge rectangles 5 and 6
10 means merge rectangles 5 and 58
11 means merge rectangles 6 and 12
12 means merge rectangles 7 and 8
13 means merge rectangles 7 and 13
14 means merge rectangles 8 and 9
15 means merge rectangles 8 and 14
16 means merge rectangles 9 and 10
17 means merge rectangles 9 and 15
18 means merge rectangles 10 and 16
19 means merge rectangles 12 and 18
20 means merge rectangles 13 and 14
21 means merge rectangles 13 and 19
22 means merge rectangles 14 and 15
23 means merge rectangles 14 and 57
24 means merge rectangles 15 and 16
25 means merge rectangles 15 and 21
26 means merge rectangles 16 and 22
27 means merge rectangles 18 and 24
28 means merge rectangles 19 and 25
29 means merge rectangles 21 and 22
30 means merge rectangles 24 and 30
31 means merge rectangles 25 and 31
32 means merge rectangles 29 and 30
33 means merge rectangles 29 and 35
34 means merge rectangles 30 and 36
35 means merge rectangles 31 and 37
36 means merge rectangles 33 and 34
37 means merge rectangles 33 and 39
38 means merge rectangles 34 and 35
39 means merge rectangles 34 and 40
40 means merge rectangles 35 and 36
41 means merge rectangles 35 and 41
42 means merge rectangles 36 and 42
43 means merge rectangles 37 and 43
44 means merge rectangles 39 and 40
45 means merge rectangles 39 and 45
46 means merge rectangles 40 and 41
47 means merge rectangles 40 and 46
48 means merge rectangles 41 and 42
49 means merge rectangles 41 and 47
50 means merge rectangles 42 and 48
51 means merge rectangles 43 and 44
52 means merge rectangles 43 and 49
53 means merge rectangles 44 and 45
54 means merge rectangles 44 and 50
55 means merge rectangles 45 and 46
56 means merge rectangles 45 and 51
57 means merge rectangles 46 and 47
58 means merge rectangles 46 and 52
59 means merge rectangles 47 and 48
60 means merge rectangles 47 and 53
61 means merge rectangles 48 and 54
62 means merge rectangles 49 and 50
63 means merge rectangles 50 and 51
64 means merge rectangles 51 and 52
65 means merge rectangles 52 and 53
66 means merge rectangles 53 and 54
67 means merge rectangles 55 and 29
68 means merge rectangles 57 and 59
69 means merge rectangles 58 and 29
70 means merge rectangles 59 and 44
generating a value from range 1..70
getting next value from text data source
using next digit/letter "0" from line 2 column 24
using digit "0" as value
value [0 from 0..9]
range of [0 from 0..9] is too small
enlarging range by combining with next value
getting next value from text data source
using next digit/letter "2" from line 2 column 25
using digit "2" as value
value [2 from 0..9]
combining v1=[0 from 0..9] with v2=[2 from 0..9]
computing combined value v1*(size(v2)+1)+v2
combined value is [2 from 0..99]
[2 from 0..99] is at 2.02% of range
2.02% of range 1..70 is 2.39
generated value 2
2 means merge rectangles 1 and 7
merging rectangles 1 and 7
new rectangle 60: x=0 y=0 width=36 height=96
removed old rectangles 1 and 7 from image
added new rectangle 60 to image
number of rectangles: 48
merging two rectangles
choosing from 67 options
1 means merge rectangles 2 and 3
2 means merge rectangles 2 and 8
3 means merge rectangles 3 and 4
4 means merge rectangles 3 and 9
5 means merge rectangles 4 and 5
6 means merge rectangles 4 and 10
7 means merge rectangles 5 and 6
8 means merge rectangles 5 and 58
9 means merge rectangles 6 and 12
10 means merge rectangles 8 and 9
11 means merge rectangles 8 and 14
12 means merge rectangles 9 and 10
13 means merge rectangles 9 and 15
14 means merge rectangles 10 and 16
15 means merge rectangles 12 and 18
16 means merge rectangles 13 and 14
17 means merge rectangles 13 and 19
18 means merge rectangles 14 and 15
19 means merge rectangles 14 and 57
20 means merge rectangles 15 and 16
21 means merge rectangles 15 and 21
22 means merge rectangles 16 and 22
23 means merge rectangles 18 and 24
24 means merge rectangles 19 and 25
25 means merge rectangles 21 and 22
26 means merge rectangles 24 and 30
27 means merge rectangles 25 and 31
28 means merge rectangles 29 and 30
29 means merge rectangles 29 and 35
30 means merge rectangles 30 and 36
31 means merge rectangles 31 and 37
32 means merge rectangles 33 and 34
33 means merge rectangles 33 and 39
34 means merge rectangles 34 and 35
35 means merge rectangles 34 and 40
36 means merge rectangles 35 and 36
37 means merge rectangles 35 and 41
38 means merge rectangles 36 and 42
39 means merge rectangles 37 and 43
40 means merge rectangles 39 and 40
41 means merge rectangles 39 and 45
42 means merge rectangles 40 and 41
43 means merge rectangles 40 and 46
44 means merge rectangles 41 and 42
45 means merge rectangles 41 and 47
46 means merge rectangles 42 and 48
47 means merge rectangles 43 and 44
48 means merge rectangles 43 and 49
49 means merge rectangles 44 and 45
50 means merge rectangles 44 and 50
51 means merge rectangles 45 and 46
52 means merge rectangles 45 and 51
53 means merge rectangles 46 and 47
54 means merge rectangles 46 and 52
55 means merge rectangles 47 and 48
56 means merge rectangles 47 and 53
57 means merge rectangles 48 and 54
58 means merge rectangles 49 and 50
59 means merge rectangles 50 and 51
60 means merge rectangles 51 and 52
61 means merge rectangles 52 and 53
62 means merge rectangles 53 and 54
63 means merge rectangles 55 and 29
64 means merge rectangles 57 and 59
65 means merge rectangles 58 and 29
66 means merge rectangles 59 and 44
67 means merge rectangles 60 and 13
generating a value from range 1..67
getting next value from text data source
using next digit/letter "4" from line 2 column 26
using digit "4" as value
value [4 from 0..9]
range of [4 from 0..9] is too small
enlarging range by combining with next value
getting next value from text data source
using next digit/letter "p" from line 4 column 1
using position 16 of lower case letter "p" in alphabet as value
value [16 from 1..26]
combining v1=[4 from 0..9] with v2=[16 from 1..26]
computing combined value v1*(size(v2)+1)+v2
combined value is [120 from 1..260]
[120 from 1..260] is at 45.95% of range
45.95% of range 1..67 is 31.32
generated value 31
31 means merge rectangles 31 and 37
merging rectangles 31 and 37
new rectangle 61: x=0 y=292 width=36 height=152
removed old rectangles 31 and 37 from image
added new rectangle 61 to image
number of rectangles: 47
merging two rectangles
choosing from 67 options
1 means merge rectangles 2 and 3
2 means merge rectangles 2 and 8
3 means merge rectangles 3 and 4
4 means merge rectangles 3 and 9
5 means merge rectangles 4 and 5
6 means merge rectangles 4 and 10
7 means merge rectangles 5 and 6
8 means merge rectangles 5 and 58
9 means merge rectangles 6 and 12
10 means merge rectangles 8 and 9
11 means merge rectangles 8 and 14
12 means merge rectangles 9 and 10
13 means merge rectangles 9 and 15
14 means merge rectangles 10 and 16
15 means merge rectangles 12 and 18
16 means merge rectangles 13 and 14
17 means merge rectangles 13 and 19
18 means merge rectangles 14 and 15
19 means merge rectangles 14 and 57
20 means merge rectangles 15 and 16
21 means merge rectangles 15 and 21
22 means merge rectangles 16 and 22
23 means merge rectangles 18 and 24
24 means merge rectangles 19 and 25
25 means merge rectangles 21 and 22
26 means merge rectangles 24 and 30
27 means merge rectangles 25 and 61
28 means merge rectangles 29 and 30
29 means merge rectangles 29 and 35
30 means merge rectangles 30 and 36
31 means merge rectangles 33 and 34
32 means merge rectangles 33 and 39
33 means merge rectangles 34 and 35
34 means merge rectangles 34 and 40
35 means merge rectangles 35 and 36
36 means merge rectangles 35 and 41
37 means merge rectangles 36 and 42
38 means merge rectangles 39 and 40
39 means merge rectangles 39 and 45
40 means merge rectangles 40 and 41
41 means merge rectangles 40 and 46
42 means merge rectangles 41 and 42
43 means merge rectangles 41 and 47
44 means merge rectangles 42 and 48
45 means merge rectangles 43 and 44
46 means merge rectangles 43 and 49
47 means merge rectangles 44 and 45
48 means merge rectangles 44 and 50
49 means merge rectangles 45 and 46
50 means merge rectangles 45 and 51
51 means merge rectangles 46 and 47
52 means merge rectangles 46 and 52
53 means merge rectangles 47 and 48
54 means merge rectangles 47 and 53
55 means merge rectangles 48 and 54
56 means merge rectangles 49 and 50
57 means merge rectangles 50 and 51
58 means merge rectangles 51 and 52
59 means merge rectangles 52 and 53
60 means merge rectangles 53 and 54
61 means merge rectangles 55 and 29
62 means merge rectangles 57 and 59
63 means merge rectangles 58 and 29
64 means merge rectangles 59 and 44
65 means merge rectangles 60 and 13
66 means merge rectangles 61 and 43
67 means merge rectangles 61 and 59
generating a value from range 1..67
getting next value from text data source
using next digit/letter "o" from line 4 column 2
using position 15 of lower case letter "o" in alphabet as value
value [15 from 1..26]
range of [15 from 1..26] is too small
enlarging range by combining with next value
getting next value from text data source
using next digit/letter "r" from line 4 column 3
using position 18 of lower case letter "r" in alphabet as value
value [18 from 1..26]
combining v1=[15 from 1..26] with v2=[18 from 1..26]
computing combined value v1*(size(v2)+1)+v2
combined value is [408 from 27..702]
[408 from 27..702] is at 56.44% of range
56.44% of range 1..67 is 38.25
generated value 38
38 means merge rectangles 39 and 40
merging rectangles 39 and 40
new rectangle 62: x=137 y=345 width=204 height=99
removed old rectangles 39 and 40 from image
added new rectangle 62 to image
number of rectangles: 46
merging two rectangles
choosing from 62 options
1 means merge rectangles 2 and 3
2 means merge rectangles 2 and 8
3 means merge rectangles 3 and 4
4 means merge rectangles 3 and 9
5 means merge rectangles 4 and 5
6 means merge rectangles 4 and 10
7 means merge rectangles 5 and 6
8 means merge rectangles 5 and 58
9 means merge rectangles 6 and 12
10 means merge rectangles 8 and 9
11 means merge rectangles 8 and 14
12 means merge rectangles 9 and 10
13 means merge rectangles 9 and 15
14 means merge rectangles 10 and 16
15 means merge rectangles 12 and 18
16 means merge rectangles 13 and 14
17 means merge rectangles 13 and 19
18 means merge rectangles 14 and 15
19 means merge rectangles 14 and 57
20 means merge rectangles 15 and 16
21 means merge rectangles 15 and 21
22 means merge rectangles 16 and 22
23 means merge rectangles 18 and 24
24 means merge rectangles 19 and 25
25 means merge rectangles 21 and 22
26 means merge rectangles 24 and 30
27 means merge rectangles 25 and 61
28 means merge rectangles 29 and 30
29 means merge rectangles 29 and 35
30 means merge rectangles 30 and 36
31 means merge rectangles 33 and 34
32 means merge rectangles 34 and 35
33 means merge rectangles 35 and 36
34 means merge rectangles 35 and 41
35 means merge rectangles 36 and 42
36 means merge rectangles 41 and 42
37 means merge rectangles 41 and 47
38 means merge rectangles 42 and 48
39 means merge rectangles 43 and 44
40 means merge rectangles 43 and 49
41 means merge rectangles 44 and 45
42 means merge rectangles 44 and 50
43 means merge rectangles 45 and 46
44 means merge rectangles 45 and 51
45 means merge rectangles 46 and 47
46 means merge rectangles 46 and 52
47 means merge rectangles 47 and 48
48 means merge rectangles 47 and 53
49 means merge rectangles 48 and 54
50 means merge rectangles 49 and 50
51 means merge rectangles 50 and 51
52 means merge rectangles 51 and 52
53 means merge rectangles 52 and 53
54 means merge rectangles 53 and 54
55 means merge rectangles 55 and 29
56 means merge rectangles 57 and 59
57 means merge rectangles 58 and 29
58 means merge rectangles 59 and 44
59 means merge rectangles 60 and 13
60 means merge rectangles 61 and 43
61 means merge rectangles 61 and 59
62 means merge rectangles 62 and 41
generating a value from range 1..62
getting next value from text data source
using next digit/letter "t" from line 4 column 4
using position 20 of lower case letter "t" in alphabet as value
value [20 from 1..26]
range of [20 from 1..26] is too small
enlarging range by combining with next value
getting next value from text data source
using next digit/letter "3" from line 4 column 6
using digit "3" as value
value [3 from 0..9]
combining v1=[20 from 1..26] with v2=[3 from 0..9]
computing combined value v1*(size(v2)+1)+v2
combined value is [203 from 10..269]
[203 from 10..269] is at 74.52% of range
74.52% of range 1..62 is 46.46
generated value 46
46 means merge rectangles 46 and 52
merging rectangles 46 and 52
new rectangle 63: x=272 y=462 width=69 height=179
removed old rectangles 46 and 52 from image
added new rectangle 63 to image
number of rectangles: 45
merging two rectangles
choosing from 57 options
1 means merge rectangles 2 and 3
2 means merge rectangles 2 and 8
3 means merge rectangles 3 and 4
4 means merge rectangles 3 and 9
5 means merge rectangles 4 and 5
6 means merge rectangles 4 and 10
7 means merge rectangles 5 and 6
8 means merge rectangles 5 and 58
9 means merge rectangles 6 and 12
10 means merge rectangles 8 and 9
11 means merge rectangles 8 and 14
12 means merge rectangles 9 and 10
13 means merge rectangles 9 and 15
14 means merge rectangles 10 and 16
15 means merge rectangles 12 and 18
16 means merge rectangles 13 and 14
17 means merge rectangles 13 and 19
18 means merge rectangles 14 and 15
19 means merge rectangles 14 and 57
20 means merge rectangles 15 and 16
21 means merge rectangles 15 and 21
22 means merge rectangles 16 and 22
23 means merge rectangles 18 and 24
24 means merge rectangles 19 and 25
25 means merge rectangles 21 and 22
26 means merge rectangles 24 and 30
27 means merge rectangles 25 and 61
28 means merge rectangles 29 and 30
29 means merge rectangles 29 and 35
30 means merge rectangles 30 and 36
31 means merge rectangles 33 and 34
32 means merge rectangles 34 and 35
33 means merge rectangles 35 and 36
34 means merge rectangles 35 and 41
35 means merge rectangles 36 and 42
36 means merge rectangles 41 and 42
37 means merge rectangles 41 and 47
38 means merge rectangles 42 and 48
39 means merge rectangles 43 and 44
40 means merge rectangles 43 and 49
41 means merge rectangles 44 and 45
42 means merge rectangles 44 and 50
43 means merge rectangles 45 and 51
44 means merge rectangles 47 and 48
45 means merge rectangles 47 and 53
46 means merge rectangles 48 and 54
47 means merge rectangles 49 and 50
48 means merge rectangles 50 and 51
49 means merge rectangles 53 and 54
50 means merge rectangles 55 and 29
51 means merge rectangles 57 and 59
52 means merge rectangles 58 and 29
53 means merge rectangles 59 and 44
54 means merge rectangles 60 and 13
55 means merge rectangles 61 and 43
56 means merge rectangles 61 and 59
57 means merge rectangles 62 and 41
generating a value from range 1..57
getting next value from text data source
using next digit/letter "3" from line 4 column 7
using digit "3" as value
value [3 from 0..9]
range of [3 from 0..9] is too small
enlarging range by combining with next value
getting next value from text data source
using next digit/letter "8" from line 4 column 8
using digit "8" as value
value [8 from 0..9]
combining v1=[3 from 0..9] with v2=[8 from 0..9]
computing combined value v1*(size(v2)+1)+v2
combined value is [38 from 0..99]
[38 from 0..99] is at 38.38% of range
38.38% of range 1..57 is 22.49
generated value 22
22 means merge rectangles 16 and 22
merging rectangles 16 and 22
new rectangle 64: x=272 y=114 width=69 height=95
removed old rectangles 16 and 22 from image
added new rectangle 64 to image
number of rectangles: 44
merging two rectangles
choosing from 54 options
1 means merge rectangles 2 and 3
2 means merge rectangles 2 and 8
3 means merge rectangles 3 and 4
4 means merge rectangles 3 and 9
5 means merge rectangles 4 and 5
6 means merge rectangles 4 and 10
7 means merge rectangles 5 and 6
8 means merge rectangles 5 and 58
9 means merge rectangles 6 and 12
10 means merge rectangles 8 and 9
11 means merge rectangles 8 and 14
12 means merge rectangles 9 and 10
13 means merge rectangles 9 and 15
14 means merge rectangles 10 and 64
15 means merge rectangles 12 and 18
16 means merge rectangles 13 and 14
17 means merge rectangles 13 and 19
18 means merge rectangles 14 and 15
19 means merge rectangles 14 and 57
20 means merge rectangles 15 and 21
21 means merge rectangles 18 and 24
22 means merge rectangles 19 and 25
23 means merge rectangles 24 and 30
24 means merge rectangles 25 and 61
25 means merge rectangles 29 and 30
26 means merge rectangles 29 and 35
27 means merge rectangles 30 and 36
28 means merge rectangles 33 and 34
29 means merge rectangles 34 and 35
30 means merge rectangles 35 and 36
31 means merge rectangles 35 and 41
32 means merge rectangles 36 and 42
33 means merge rectangles 41 and 42
34 means merge rectangles 41 and 47
35 means merge rectangles 42 and 48
36 means merge rectangles 43 and 44
37 means merge rectangles 43 and 49
38 means merge rectangles 44 and 45
39 means merge rectangles 44 and 50
40 means merge rectangles 45 and 51
41 means merge rectangles 47 and 48
42 means merge rectangles 47 and 53
43 means merge rectangles 48 and 54
44 means merge rectangles 49 and 50
45 means merge rectangles 50 and 51
46 means merge rectangles 53 and 54
47 means merge rectangles 55 and 29
48 means merge rectangles 57 and 59
49 means merge rectangles 58 and 29
50 means merge rectangles 59 and 44
51 means merge rectangles 60 and 13
52 means merge rectangles 61 and 43
53 means merge rectangles 61 and 59
54 means merge rectangles 62 and 41
generating a value from range 1..54
getting next value from text data source
using next digit/letter "9" from line 4 column 9
using digit "9" as value
value [9 from 0..9]
range of [9 from 0..9] is too small
enlarging range by combining with next value
getting next value from text data source
using next digit/letter "s" from line 4 column 11
using position 19 of lower case letter "s" in alphabet as value
value [19 from 1..26]
combining v1=[9 from 0..9] with v2=[19 from 1..26]
computing combined value v1*(size(v2)+1)+v2
combined value is [253 from 1..260]
[253 from 1..260] is at 97.30% of range
97.30% of range 1..54 is 52.57
generated value 53
53 means merge rectangles 61 and 59
merging rectangles 61 and 59
new rectangle 65: x=0 y=292 width=119 height=152
removed old rectangles 61 and 59 from image
added new rectangle 65 to image
number of rectangles: 43
merging two rectangles
choosing from 49 options
1 means merge rectangles 2 and 3
2 means merge rectangles 2 and 8
3 means merge rectangles 3 and 4
4 means merge rectangles 3 and 9
5 means merge rectangles 4 and 5
6 means merge rectangles 4 and 10
7 means merge rectangles 5 and 6
8 means merge rectangles 5 and 58
9 means merge rectangles 6 and 12
10 means merge rectangles 8 and 9
11 means merge rectangles 8 and 14
12 means merge rectangles 9 and 10
13 means merge rectangles 9 and 15
14 means merge rectangles 10 and 64
15 means merge rectangles 12 and 18
16 means merge rectangles 13 and 14
17 means merge rectangles 13 and 19
18 means merge rectangles 14 and 15
19 means merge rectangles 14 and 57
20 means merge rectangles 15 and 21
21 means merge rectangles 18 and 24
22 means merge rectangles 19 and 25
23 means merge rectangles 24 and 30
24 means merge rectangles 29 and 30
25 means merge rectangles 29 and 35
26 means merge rectangles 30 and 36
27 means merge rectangles 33 and 34
28 means merge rectangles 34 and 35
29 means merge rectangles 35 and 36
30 means merge rectangles 35 and 41
31 means merge rectangles 36 and 42
32 means merge rectangles 41 and 42
33 means merge rectangles 41 and 47
34 means merge rectangles 42 and 48
35 means merge rectangles 43 and 44
36 means merge rectangles 43 and 49
37 means merge rectangles 44 and 45
38 means merge rectangles 44 and 50
39 means merge rectangles 45 and 51
40 means merge rectangles 47 and 48
41 means merge rectangles 47 and 53
42 means merge rectangles 48 and 54
43 means merge rectangles 49 and 50
44 means merge rectangles 50 and 51
45 means merge rectangles 53 and 54
46 means merge rectangles 55 and 29
47 means merge rectangles 58 and 29
48 means merge rectangles 60 and 13
49 means merge rectangles 62 and 41
generating a value from range 1..49
getting next value from text data source
using next digit/letter "c" from line 4 column 12
using position 3 of lower case letter "c" in alphabet as value
value [3 from 1..26]
range of [3 from 1..26] is too small
enlarging range by combining with next value
getting next value from text data source
using next digit/letter "a" from line 4 column 13
using position 1 of lower case letter "a" in alphabet as value
value [1 from 1..26]
combining v1=[3 from 1..26] with v2=[1 from 1..26]
computing combined value v1*(size(v2)+1)+v2
combined value is [79 from 27..702]
[79 from 27..702] is at 7.70% of range
7.70% of range 1..49 is 4.70
generated value 5
5 means merge rectangles 4 and 5
merging rectangles 4 and 5
new rectangle 66: x=272 y=0 width=179 height=34
removed old rectangles 4 and 5 from image
added new rectangle 66 to image
number of rectangles: 42
merging two rectangles
choosing from 46 options
1 means merge rectangles 2 and 3
2 means merge rectangles 2 and 8
3 means merge rectangles 3 and 9
4 means merge rectangles 3 and 66
5 means merge rectangles 6 and 12
6 means merge rectangles 8 and 9
7 means merge rectangles 8 and 14
8 means merge rectangles 9 and 10
9 means merge rectangles 9 and 15
10 means merge rectangles 10 and 64
11 means merge rectangles 12 and 18
12 means merge rectangles 13 and 14
13 means merge rectangles 13 and 19
14 means merge rectangles 14 and 15
15 means merge rectangles 14 and 57
16 means merge rectangles 15 and 21
17 means merge rectangles 18 and 24
18 means merge rectangles 19 and 25
19 means merge rectangles 24 and 30
20 means merge rectangles 29 and 30
21 means merge rectangles 29 and 35
22 means merge rectangles 30 and 36
23 means merge rectangles 33 and 34
24 means merge rectangles 34 and 35
25 means merge rectangles 35 and 36
26 means merge rectangles 35 and 41
27 means merge rectangles 36 and 42
28 means merge rectangles 41 and 42
29 means merge rectangles 41 and 47
30 means merge rectangles 42 and 48
31 means merge rectangles 43 and 44
32 means merge rectangles 43 and 49
33 means merge rectangles 44 and 45
34 means merge rectangles 44 and 50
35 means merge rectangles 45 and 51
36 means merge rectangles 47 and 48
37 means merge rectangles 47 and 53
38 means merge rectangles 48 and 54
39 means merge rectangles 49 and 50
40 means merge rectangles 50 and 51
41 means merge rectangles 53 and 54
42 means merge rectangles 55 and 29
43 means merge rectangles 58 and 29
44 means merge rectangles 60 and 13
45 means merge rectangles 62 and 41
46 means merge rectangles 66 and 6
generating a value from range 1..46
getting next value from text data source
using next digit/letter "n" from line 4 column 14
using position 14 of lower case letter "n" in alphabet as value
value [14 from 1..26]
range of [14 from 1..26] is too small
enlarging range by combining with next value
getting next value from text data source
using next digit/letter "n" from line 4 column 15
using position 14 of lower case letter "n" in alphabet as value
value [14 from 1..26]
combining v1=[14 from 1..26] with v2=[14 from 1..26]
computing combined value v1*(size(v2)+1)+v2
combined value is [378 from 27..702]
[378 from 27..702] is at 52.00% of range
52.00% of range 1..46 is 24.40
generated value 24
24 means merge rectangles 34 and 35
merging rectangles 34 and 35
new rectangle 67: x=272 y=292 width=179 height=35
removed old rectangles 34 and 35 from image
added new rectangle 67 to image
number of rectangles: 41
merging two rectangles
choosing from 43 options
1 means merge rectangles 2 and 3
2 means merge rectangles 2 and 8
3 means merge rectangles 3 and 9
4 means merge rectangles 3 and 66
5 means merge rectangles 6 and 12
6 means merge rectangles 8 and 9
7 means merge rectangles 8 and 14
8 means merge rectangles 9 and 10
9 means merge rectangles 9 and 15
10 means merge rectangles 10 and 64
11 means merge rectangles 12 and 18
12 means merge rectangles 13 and 14
13 means merge rectangles 13 and 19
14 means merge rectangles 14 and 15
15 means merge rectangles 14 and 57
16 means merge rectangles 15 and 21
17 means merge rectangles 18 and 24
18 means merge rectangles 19 and 25
19 means merge rectangles 24 and 30
20 means merge rectangles 29 and 30
21 means merge rectangles 30 and 36
22 means merge rectangles 33 and 67
23 means merge rectangles 36 and 42
24 means merge rectangles 41 and 42
25 means merge rectangles 41 and 47
26 means merge rectangles 42 and 48
27 means merge rectangles 43 and 44
28 means merge rectangles 43 and 49
29 means merge rectangles 44 and 45
30 means merge rectangles 44 and 50
31 means merge rectangles 45 and 51
32 means merge rectangles 47 and 48
33 means merge rectangles 47 and 53
34 means merge rectangles 48 and 54
35 means merge rectangles 49 and 50
36 means merge rectangles 50 and 51
37 means merge rectangles 53 and 54
38 means merge rectangles 55 and 29
39 means merge rectangles 58 and 29
40 means merge rectangles 60 and 13
41 means merge rectangles 62 and 41
42 means merge rectangles 66 and 6
43 means merge rectangles 67 and 36
generating a value from range 1..43
getting next value from text data source
using next digit/letter "e" from line 4 column 16
using position 5 of lower case letter "e" in alphabet as value
value [5 from 1..26]
range of [5 from 1..26] is too small
enlarging range by combining with next value
getting next value from text data source
using next digit/letter "d" from line 4 column 17
using position 4 of lower case letter "d" in alphabet as value
value [4 from 1..26]
combining v1=[5 from 1..26] with v2=[4 from 1..26]
computing combined value v1*(size(v2)+1)+v2
combined value is [134 from 27..702]
[134 from 27..702] is at 15.85% of range
15.85% of range 1..43 is 7.66
generated value 8
8 means merge rectangles 9 and 10
merging rectangles 9 and 10
new rectangle 68: x=137 y=52 width=204 height=44
removed old rectangles 9 and 10 from image
added new rectangle 68 to image
number of rectangles: 40
merging two rectangles
choosing from 39 options
1 means merge rectangles 2 and 3
2 means merge rectangles 2 and 8
3 means merge rectangles 3 and 66
4 means merge rectangles 6 and 12
5 means merge rectangles 8 and 14
6 means merge rectangles 8 and 68
7 means merge rectangles 12 and 18
8 means merge rectangles 13 and 14
9 means merge rectangles 13 and 19
10 means merge rectangles 14 and 15
11 means merge rectangles 14 and 57
12 means merge rectangles 15 and 21
13 means merge rectangles 18 and 24
14 means merge rectangles 19 and 25
15 means merge rectangles 24 and 30
16 means merge rectangles 29 and 30
17 means merge rectangles 30 and 36
18 means merge rectangles 33 and 67
19 means merge rectangles 36 and 42
20 means merge rectangles 41 and 42
21 means merge rectangles 41 and 47
22 means merge rectangles 42 and 48
23 means merge rectangles 43 and 44
24 means merge rectangles 43 and 49
25 means merge rectangles 44 and 45
26 means merge rectangles 44 and 50
27 means merge rectangles 45 and 51
28 means merge rectangles 47 and 48
29 means merge rectangles 47 and 53
30 means merge rectangles 48 and 54
31 means merge rectangles 49 and 50
32 means merge rectangles 50 and 51
33 means merge rectangles 53 and 54
34 means merge rectangles 55 and 29
35 means merge rectangles 58 and 29
36 means merge rectangles 60 and 13
37 means merge rectangles 62 and 41
38 means merge rectangles 66 and 6
39 means merge rectangles 67 and 36
generating a value from range 1..39
getting next value from text data source
using next digit/letter "f" from line 4 column 19
using position 6 of lower case letter "f" in alphabet as value
value [6 from 1..26]
range of [6 from 1..26] is too small
enlarging range by combining with next value
getting next value from text data source
using next digit/letter "r" from line 4 column 20
using position 18 of lower case letter "r" in alphabet as value
value [18 from 1..26]
combining v1=[6 from 1..26] with v2=[18 from 1..26]
computing combined value v1*(size(v2)+1)+v2
combined value is [174 from 27..702]
[174 from 27..702] is at 21.78% of range
21.78% of range 1..39 is 9.28
generated value 9
9 means merge rectangles 13 and 19
merging rectangles 13 and 19
new rectangle 69: x=0 y=114 width=36 height=95
removed old rectangles 13 and 19 from image
added new rectangle 69 to image
number of rectangles: 39
merging two rectangles
choosing from 37 options
1 means merge rectangles 2 and 3
2 means merge rectangles 2 and 8
3 means merge rectangles 3 and 66
4 means merge rectangles 6 and 12
5 means merge rectangles 8 and 14
6 means merge rectangles 8 and 68
7 means merge rectangles 12 and 18
8 means merge rectangles 14 and 15
9 means merge rectangles 14 and 57
10 means merge rectangles 15 and 21
11 means merge rectangles 18 and 24
12 means merge rectangles 24 and 30
13 means merge rectangles 29 and 30
14 means merge rectangles 30 and 36
15 means merge rectangles 33 and 67
16 means merge rectangles 36 and 42
17 means merge rectangles 41 and 42
18 means merge rectangles 41 and 47
19 means merge rectangles 42 and 48
20 means merge rectangles 43 and 44
21 means merge rectangles 43 and 49
22 means merge rectangles 44 and 45
23 means merge rectangles 44 and 50
24 means merge rectangles 45 and 51
25 means merge rectangles 47 and 48
26 means merge rectangles 47 and 53
27 means merge rectangles 48 and 54
28 means merge rectangles 49 and 50
29 means merge rectangles 50 and 51
30 means merge rectangles 53 and 54
31 means merge rectangles 55 and 29
32 means merge rectangles 58 and 29
33 means merge rectangles 60 and 69
34 means merge rectangles 62 and 41
35 means merge rectangles 66 and 6
36 means merge rectangles 67 and 36
37 means merge rectangles 69 and 25
generating a value from range 1..37
getting next value from text data source
using next digit/letter "o" from line 4 column 21
using position 15 of lower case letter "o" in alphabet as value
value [15 from 1..26]
range of [15 from 1..26] is too small
enlarging range by combining with next value
getting next value from text data source
using next digit/letter "m" from line 4 column 22
using position 13 of lower case letter "m" in alphabet as value
value [13 from 1..26]
combining v1=[15 from 1..26] with v2=[13 from 1..26]
computing combined value v1*(size(v2)+1)+v2
combined value is [403 from 27..702]
[403 from 27..702] is at 55.70% of range
55.70% of range 1..37 is 21.05
generated value 21
21 means merge rectangles 43 and 49
merging rectangles 43 and 49
new rectangle 70: x=0 y=462 width=36 height=179
removed old rectangles 43 and 49 from image
added new rectangle 70 to image
number of rectangles: 38
merging two rectangles
choosing from 34 options
1 means merge rectangles 2 and 3
2 means merge rectangles 2 and 8
3 means merge rectangles 3 and 66
4 means merge rectangles 6 and 12
5 means merge rectangles 8 and 14
6 means merge rectangles 8 and 68
7 means merge rectangles 12 and 18
8 means merge rectangles 14 and 15
9 means merge rectangles 14 and 57
10 means merge rectangles 15 and 21
11 means merge rectangles 18 and 24
12 means merge rectangles 24 and 30
13 means merge rectangles 29 and 30
14 means merge rectangles 30 and 36
15 means merge rectangles 33 and 67
16 means merge rectangles 36 and 42
17 means merge rectangles 41 and 42
18 means merge rectangles 41 and 47
19 means merge rectangles 42 and 48
20 means merge rectangles 44 and 45
21 means merge rectangles 44 and 50
22 means merge rectangles 45 and 51
23 means merge rectangles 47 and 48
24 means merge rectangles 47 and 53
25 means merge rectangles 48 and 54
26 means merge rectangles 50 and 51
27 means merge rectangles 53 and 54
28 means merge rectangles 55 and 29
29 means merge rectangles 58 and 29
30 means merge rectangles 60 and 69
31 means merge rectangles 62 and 41
32 means merge rectangles 66 and 6
33 means merge rectangles 67 and 36
34 means merge rectangles 69 and 25
generating a value from range 1..34
getting next value from text data source
using next digit/letter "9" from line 4 column 24
using digit "9" as value
value [9 from 0..9]
range of [9 from 0..9] is too small
enlarging range by combining with next value
getting next value from text data source
using next digit/letter "5" from line 4 column 25
using digit "5" as value
value [5 from 0..9]
combining v1=[9 from 0..9] with v2=[5 from 0..9]
computing combined value v1*(size(v2)+1)+v2
combined value is [95 from 0..99]
[95 from 0..99] is at 95.96% of range
95.96% of range 1..34 is 32.67
generated value 33
33 means merge rectangles 67 and 36
merging rectangles 67 and 36
new rectangle 71: x=272 y=292 width=327 height=35
removed old rectangles 67 and 36 from image
added new rectangle 71 to image
number of rectangles: 37
merging two rectangles
choosing from 31 options
1 means merge rectangles 2 and 3
2 means merge rectangles 2 and 8
3 means merge rectangles 3 and 66
4 means merge rectangles 6 and 12
5 means merge rectangles 8 and 14
6 means merge rectangles 8 and 68
7 means merge rectangles 12 and 18
8 means merge rectangles 14 and 15
9 means merge rectangles 14 and 57
10 means merge rectangles 15 and 21
11 means merge rectangles 18 and 24
12 means merge rectangles 24 and 30
13 means merge rectangles 29 and 30
14 means merge rectangles 33 and 71
15 means merge rectangles 41 and 42
16 means merge rectangles 41 and 47
17 means merge rectangles 42 and 48
18 means merge rectangles 44 and 45
19 means merge rectangles 44 and 50
20 means merge rectangles 45 and 51
21 means merge rectangles 47 and 48
22 means merge rectangles 47 and 53
23 means merge rectangles 48 and 54
24 means merge rectangles 50 and 51
25 means merge rectangles 53 and 54
26 means merge rectangles 55 and 29
27 means merge rectangles 58 and 29
28 means merge rectangles 60 and 69
29 means merge rectangles 62 and 41
30 means merge rectangles 66 and 6
31 means merge rectangles 69 and 25
generating a value from range 1..31
getting next value from text data source
using next digit/letter "2" from line 4 column 27
using digit "2" as value
value [2 from 0..9]
range of [2 from 0..9] is too small
enlarging range by combining with next value
getting next value from text data source
using next digit/letter "1" from line 4 column 28
using digit "1" as value
value [1 from 0..9]
combining v1=[2 from 0..9] with v2=[1 from 0..9]
computing combined value v1*(size(v2)+1)+v2
combined value is [21 from 0..99]
[21 from 0..99] is at 21.21% of range
21.21% of range 1..31 is 7.36
generated value 7
7 means merge rectangles 12 and 18
merging rectangles 12 and 18
new rectangle 72: x=469 y=52 width=130 height=102
removed old rectangles 12 and 18 from image
added new rectangle 72 to image
number of rectangles: 36
merging two rectangles
choosing from 30 options
1 means merge rectangles 2 and 3
2 means merge rectangles 2 and 8
3 means merge rectangles 3 and 66
4 means merge rectangles 6 and 72
5 means merge rectangles 8 and 14
6 means merge rectangles 8 and 68
7 means merge rectangles 14 and 15
8 means merge rectangles 14 and 57
9 means merge rectangles 15 and 21
10 means merge rectangles 24 and 30
11 means merge rectangles 29 and 30
12 means merge rectangles 33 and 71
13 means merge rectangles 41 and 42
14 means merge rectangles 41 and 47
15 means merge rectangles 42 and 48
16 means merge rectangles 44 and 45
17 means merge rectangles 44 and 50
18 means merge rectangles 45 and 51
19 means merge rectangles 47 and 48
20 means merge rectangles 47 and 53
21 means merge rectangles 48 and 54
22 means merge rectangles 50 and 51
23 means merge rectangles 53 and 54
24 means merge rectangles 55 and 29
25 means merge rectangles 58 and 29
26 means merge rectangles 60 and 69
27 means merge rectangles 62 and 41
28 means merge rectangles 66 and 6
29 means merge rectangles 69 and 25
30 means merge rectangles 72 and 24
generating a value from range 1..30
getting next value from text data source
using next digit/letter "7" from line 4 column 29
using digit "7" as value
value [7 from 0..9]
range of [7 from 0..9] is too small
enlarging range by combining with next value
getting next value from text data source
using next digit/letter "5" from line 4 column 31
using digit "5" as value
value [5 from 0..9]
combining v1=[7 from 0..9] with v2=[5 from 0..9]
computing combined value v1*(size(v2)+1)+v2
combined value is [75 from 0..99]
[75 from 0..99] is at 75.76% of range
75.76% of range 1..30 is 22.97
generated value 23
23 means merge rectangles 53 and 54
merging rectangles 53 and 54
new rectangle 73: x=359 y=532 width=240 height=109
removed old rectangles 53 and 54 from image
added new rectangle 73 to image
number of rectangles: 35
merging two rectangles
choosing from 27 options
1 means merge rectangles 2 and 3
2 means merge rectangles 2 and 8
3 means merge rectangles 3 and 66
4 means merge rectangles 6 and 72
5 means merge rectangles 8 and 14
6 means merge rectangles 8 and 68
7 means merge rectangles 14 and 15
8 means merge rectangles 14 and 57
9 means merge rectangles 15 and 21
10 means merge rectangles 24 and 30
11 means merge rectangles 29 and 30
12 means merge rectangles 33 and 71
13 means merge rectangles 41 and 42
14 means merge rectangles 41 and 47
15 means merge rectangles 42 and 48
16 means merge rectangles 44 and 45
17 means merge rectangles 44 and 50
18 means merge rectangles 45 and 51
19 means merge rectangles 47 and 48
20 means merge rectangles 50 and 51
21 means merge rectangles 55 and 29
22 means merge rectangles 58 and 29
23 means merge rectangles 60 and 69
24 means merge rectangles 62 and 41
25 means merge rectangles 66 and 6
26 means merge rectangles 69 and 25
27 means merge rectangles 72 and 24
generating a value from range 1..27
getting next value from text data source
using next digit/letter "7" from line 4 column 32
using digit "7" as value
value [7 from 0..9]
range of [7 from 0..9] is too small
enlarging range by combining with next value
getting next value from text data source
using next digit/letter "3" from line 4 column 34
using digit "3" as value
value [3 from 0..9]
combining v1=[7 from 0..9] with v2=[3 from 0..9]
computing combined value v1*(size(v2)+1)+v2
combined value is [73 from 0..99]
[73 from 0..99] is at 73.74% of range
73.74% of range 1..27 is 20.17
generated value 20
20 means merge rectangles 50 and 51
merging rectangles 50 and 51
new rectangle 74: x=54 y=532 width=200 height=109
removed old rectangles 50 and 51 from image
added new rectangle 74 to image
number of rectangles: 34
merging two rectangles
choosing from 24 options
1 means merge rectangles 2 and 3
2 means merge rectangles 2 and 8
3 means merge rectangles 3 and 66
4 means merge rectangles 6 and 72
5 means merge rectangles 8 and 14
6 means merge rectangles 8 and 68
7 means merge rectangles 14 and 15
8 means merge rectangles 14 and 57
9 means merge rectangles 15 and 21
10 means merge rectangles 24 and 30
11 means merge rectangles 29 and 30
12 means merge rectangles 33 and 71
13 means merge rectangles 41 and 42
14 means merge rectangles 41 and 47
15 means merge rectangles 42 and 48
16 means merge rectangles 44 and 45
17 means merge rectangles 47 and 48
18 means merge rectangles 55 and 29
19 means merge rectangles 58 and 29
20 means merge rectangles 60 and 69
21 means merge rectangles 62 and 41
22 means merge rectangles 66 and 6
23 means merge rectangles 69 and 25
24 means merge rectangles 72 and 24
generating a value from range 1..24
getting next value from text data source
using next digit/letter "3" from line 4 column 35
using digit "3" as value
value [3 from 0..9]
range of [3 from 0..9] is too small
enlarging range by combining with next value
getting next value from text data source
using next digit/letter "5" from line 4 column 37
using digit "5" as value
value [5 from 0..9]
combining v1=[3 from 0..9] with v2=[5 from 0..9]
computing combined value v1*(size(v2)+1)+v2
combined value is [35 from 0..99]
[35 from 0..99] is at 35.35% of range
35.35% of range 1..24 is 9.13
generated value 9
9 means merge rectangles 15 and 21
merging rectangles 15 and 21
new rectangle 75: x=137 y=114 width=117 height=95
removed old rectangles 15 and 21 from image
added new rectangle 75 to image
number of rectangles: 33
merging two rectangles
choosing from 23 options
1 means merge rectangles 2 and 3
2 means merge rectangles 2 and 8
3 means merge rectangles 3 and 66
4 means merge rectangles 6 and 72
5 means merge rectangles 8 and 14
6 means merge rectangles 8 and 68
7 means merge rectangles 14 and 57
8 means merge rectangles 24 and 30
9 means merge rectangles 29 and 30
10 means merge rectangles 33 and 71
11 means merge rectangles 41 and 42
12 means merge rectangles 41 and 47
13 means merge rectangles 42 and 48
14 means merge rectangles 44 and 45
15 means merge rectangles 47 and 48
16 means merge rectangles 55 and 29
17 means merge rectangles 58 and 29
18 means merge rectangles 60 and 69
19 means merge rectangles 62 and 41
20 means merge rectangles 66 and 6
21 means merge rectangles 69 and 25
22 means merge rectangles 72 and 24
23 means merge rectangles 75 and 64
generating a value from range 1..23
getting next value from text data source
using next digit/letter "4" from line 4 column 38
using digit "4" as value
value [4 from 0..9]
range of [4 from 0..9] is too small
enlarging range by combining with next value
getting next value from text data source
using next digit/letter "5" from line 4 column 39
using digit "5" as value
value [5 from 0..9]
combining v1=[4 from 0..9] with v2=[5 from 0..9]
computing combined value v1*(size(v2)+1)+v2
combined value is [45 from 0..99]
[45 from 0..99] is at 45.45% of range
45.45% of range 1..23 is 11.00
generated value 11
11 means merge rectangles 41 and 42
merging rectangles 41 and 42
new rectangle 76: x=359 y=345 width=240 height=99
removed old rectangles 41 and 42 from image
added new rectangle 76 to image
number of rectangles: 32
merging two rectangles
choosing from 20 options
1 means merge rectangles 2 and 3
2 means merge rectangles 2 and 8
3 means merge rectangles 3 and 66
4 means merge rectangles 6 and 72
5 means merge rectangles 8 and 14
6 means merge rectangles 8 and 68
7 means merge rectangles 14 and 57
8 means merge rectangles 24 and 30
9 means merge rectangles 29 and 30
10 means merge rectangles 33 and 71
11 means merge rectangles 44 and 45
12 means merge rectangles 47 and 48
13 means merge rectangles 55 and 29
14 means merge rectangles 58 and 29
15 means merge rectangles 60 and 69
16 means merge rectangles 62 and 76
17 means merge rectangles 66 and 6
18 means merge rectangles 69 and 25
19 means merge rectangles 72 and 24
20 means merge rectangles 75 and 64
generating a value from range 1..20
getting next value from text data source
using next digit/letter "5" from line 4 column 40
using digit "5" as value
value [5 from 0..9]
range of [5 from 0..9] is too small
enlarging range by combining with next value
getting next value from text data source
using next digit/letter "9" from line 4 column 41
using digit "9" as value
value [9 from 0..9]
combining v1=[5 from 0..9] with v2=[9 from 0..9]
computing combined value v1*(size(v2)+1)+v2
combined value is [59 from 0..99]
[59 from 0..99] is at 59.60% of range
59.60% of range 1..20 is 12.32
generated value 12
12 means merge rectangles 47 and 48
merging rectangles 47 and 48
new rectangle 77: x=359 y=462 width=240 height=52
removed old rectangles 47 and 48 from image
added new rectangle 77 to image
number of rectangles: 31
merging two rectangles
choosing from 21 options
1 means merge rectangles 2 and 3
2 means merge rectangles 2 and 8
3 means merge rectangles 3 and 66
4 means merge rectangles 6 and 72
5 means merge rectangles 8 and 14
6 means merge rectangles 8 and 68
7 means merge rectangles 14 and 57
8 means merge rectangles 24 and 30
9 means merge rectangles 29 and 30
10 means merge rectangles 33 and 71
11 means merge rectangles 44 and 45
12 means merge rectangles 55 and 29
13 means merge rectangles 58 and 29
14 means merge rectangles 60 and 69
15 means merge rectangles 62 and 76
16 means merge rectangles 66 and 6
17 means merge rectangles 69 and 25
18 means merge rectangles 72 and 24
19 means merge rectangles 75 and 64
20 means merge rectangles 76 and 77
21 means merge rectangles 77 and 73
generating a value from range 1..21
getting next value from text data source
using next digit/letter "2" from line 5 column 1
using digit "2" as value
value [2 from 0..9]
range of [2 from 0..9] is too small
enlarging range by combining with next value
getting next value from text data source
using next digit/letter "0" from line 5 column 2
using digit "0" as value
value [0 from 0..9]
combining v1=[2 from 0..9] with v2=[0 from 0..9]
computing combined value v1*(size(v2)+1)+v2
combined value is [20 from 0..99]
[20 from 0..99] is at 20.20% of range
20.20% of range 1..21 is 5.04
generated value 5
5 means merge rectangles 8 and 14
merging rectangles 8 and 14
new rectangle 78: x=54 y=52 width=65 height=102
removed old rectangles 8 and 14 from image
added new rectangle 78 to image
number of rectangles: 30
merging two rectangles
choosing from 19 options
1 means merge rectangles 2 and 3
2 means merge rectangles 2 and 78
3 means merge rectangles 3 and 66
4 means merge rectangles 6 and 72
5 means merge rectangles 24 and 30
6 means merge rectangles 29 and 30
7 means merge rectangles 33 and 71
8 means merge rectangles 44 and 45
9 means merge rectangles 55 and 29
10 means merge rectangles 58 and 29
11 means merge rectangles 60 and 69
12 means merge rectangles 62 and 76
13 means merge rectangles 66 and 6
14 means merge rectangles 69 and 25
15 means merge rectangles 72 and 24
16 means merge rectangles 75 and 64
17 means merge rectangles 76 and 77
18 means merge rectangles 77 and 73
19 means merge rectangles 78 and 57
generating a value from range 1..19
getting next value from text data source
using next digit/letter "2" from line 5 column 3
using digit "2" as value
value [2 from 0..9]
range of [2 from 0..9] is too small
enlarging range by combining with next value
getting next value from text data source
using next digit/letter "2" from line 5 column 4
using digit "2" as value
value [2 from 0..9]
combining v1=[2 from 0..9] with v2=[2 from 0..9]
computing combined value v1*(size(v2)+1)+v2
combined value is [22 from 0..99]
[22 from 0..99] is at 22.22% of range
22.22% of range 1..19 is 5.00
generated value 5
5 means merge rectangles 24 and 30
merging rectangles 24 and 30
new rectangle 79: x=469 y=172 width=130 height=102
removed old rectangles 24 and 30 from image
added new rectangle 79 to image
number of rectangles: 29
merging two rectangles
choosing from 17 options
1 means merge rectangles 2 and 3
2 means merge rectangles 2 and 78
3 means merge rectangles 3 and 66
4 means merge rectangles 6 and 72
5 means merge rectangles 33 and 71
6 means merge rectangles 44 and 45
7 means merge rectangles 55 and 29
8 means merge rectangles 58 and 29
9 means merge rectangles 60 and 69
10 means merge rectangles 62 and 76
11 means merge rectangles 66 and 6
12 means merge rectangles 69 and 25
13 means merge rectangles 72 and 79
14 means merge rectangles 75 and 64
15 means merge rectangles 76 and 77
16 means merge rectangles 77 and 73
17 means merge rectangles 78 and 57
generating a value from range 1..17
getting next value from text data source
using next digit/letter "0" from line 5 column 6
using digit "0" as value
value [0 from 0..9]
range of [0 from 0..9] is too small
enlarging range by combining with next value
getting next value from text data source
using next digit/letter "5" from line 5 column 7
using digit "5" as value
value [5 from 0..9]
combining v1=[0 from 0..9] with v2=[5 from 0..9]
computing combined value v1*(size(v2)+1)+v2
combined value is [5 from 0..99]
[5 from 0..99] is at 5.05% of range
5.05% of range 1..17 is 1.81
generated value 2
2 means merge rectangles 2 and 78
merging rectangles 2 and 78
new rectangle 80: x=54 y=0 width=65 height=154
removed old rectangles 2 and 78 from image
added new rectangle 80 to image
number of rectangles: 28
merging two rectangles
choosing from 15 options
1 means merge rectangles 3 and 66
2 means merge rectangles 6 and 72
3 means merge rectangles 33 and 71
4 means merge rectangles 44 and 45
5 means merge rectangles 55 and 29
6 means merge rectangles 58 and 29
7 means merge rectangles 60 and 69
8 means merge rectangles 62 and 76
9 means merge rectangles 66 and 6
10 means merge rectangles 69 and 25
11 means merge rectangles 72 and 79
12 means merge rectangles 75 and 64
13 means merge rectangles 76 and 77
14 means merge rectangles 77 and 73
15 means merge rectangles 80 and 57
generating a value from range 1..15
getting next value from text data source
using next digit/letter "2" from line 5 column 9
using digit "2" as value
value [2 from 0..9]
range of [2 from 0..9] is too small
enlarging range by combining with next value
getting next value from text data source
using next digit/letter "5" from line 5 column 10
using digit "5" as value
value [5 from 0..9]
combining v1=[2 from 0..9] with v2=[5 from 0..9]
computing combined value v1*(size(v2)+1)+v2
combined value is [25 from 0..99]
[25 from 0..99] is at 25.25% of range
25.25% of range 1..15 is 4.54
generated value 5
5 means merge rectangles 55 and 29
merging rectangles 55 and 29
new rectangle 81: x=137 y=227 width=314 height=47
removed old rectangles 55 and 29 from image
added new rectangle 81 to image
number of rectangles: 27
merging two rectangles
choosing from 13 options
1 means merge rectangles 3 and 66
2 means merge rectangles 6 and 72
3 means merge rectangles 33 and 71
4 means merge rectangles 44 and 45
5 means merge rectangles 60 and 69
6 means merge rectangles 62 and 76
7 means merge rectangles 66 and 6
8 means merge rectangles 69 and 25
9 means merge rectangles 72 and 79
10 means merge rectangles 75 and 64
11 means merge rectangles 76 and 77
12 means merge rectangles 77 and 73
13 means merge rectangles 80 and 57
generating a value from range 1..13
getting next value from text data source
using next digit/letter "2" from line 5 column 12
using digit "2" as value
value [2 from 0..9]
range of [2 from 0..9] is too small
enlarging range by combining with next value
getting next value from text data source
using next digit/letter "3" from line 5 column 13
using digit "3" as value
value [3 from 0..9]
combining v1=[2 from 0..9] with v2=[3 from 0..9]
computing combined value v1*(size(v2)+1)+v2
combined value is [23 from 0..99]
[23 from 0..99] is at 23.23% of range
23.23% of range 1..13 is 3.79
generated value 4
4 means merge rectangles 44 and 45
merging rectangles 44 and 45
new rectangle 82: x=54 y=462 width=200 height=52
removed old rectangles 44 and 45 from image
added new rectangle 82 to image
number of rectangles: 26
merging two rectangles
choosing from 13 options
1 means merge rectangles 3 and 66
2 means merge rectangles 6 and 72
3 means merge rectangles 33 and 71
4 means merge rectangles 60 and 69
5 means merge rectangles 62 and 76
6 means merge rectangles 66 and 6
7 means merge rectangles 69 and 25
8 means merge rectangles 72 and 79
9 means merge rectangles 75 and 64
10 means merge rectangles 76 and 77
11 means merge rectangles 77 and 73
12 means merge rectangles 80 and 57
13 means merge rectangles 82 and 74
generating a value from range 1..13
getting next value from text data source
using next digit/letter "5" from line 5 column 15
using digit "5" as value
value [5 from 0..9]
range of [5 from 0..9] is too small
enlarging range by combining with next value
getting next value from text data source
using next digit/letter "4" from line 5 column 16
using digit "4" as value
value [4 from 0..9]
combining v1=[5 from 0..9] with v2=[4 from 0..9]
computing combined value v1*(size(v2)+1)+v2
combined value is [54 from 0..99]
[54 from 0..99] is at 54.55% of range
54.55% of range 1..13 is 7.55
generated value 8
8 means merge rectangles 72 and 79
merging rectangles 72 and 79
new rectangle 83: x=469 y=52 width=130 height=222
removed old rectangles 72 and 79 from image
added new rectangle 83 to image
number of rectangles: 25
merging two rectangles
choosing from 12 options
1 means merge rectangles 3 and 66
2 means merge rectangles 6 and 83
3 means merge rectangles 33 and 71
4 means merge rectangles 60 and 69
5 means merge rectangles 62 and 76
6 means merge rectangles 66 and 6
7 means merge rectangles 69 and 25
8 means merge rectangles 75 and 64
9 means merge rectangles 76 and 77
10 means merge rectangles 77 and 73
11 means merge rectangles 80 and 57
12 means merge rectangles 82 and 74
generating a value from range 1..12
getting next value from text data source
using next digit/letter "0" from line 5 column 18
using digit "0" as value
value [0 from 0..9]
range of [0 from 0..9] is too small
enlarging range by combining with next value
getting next value from text data source
using next digit/letter "8" from line 5 column 19
using digit "8" as value
value [8 from 0..9]
combining v1=[0 from 0..9] with v2=[8 from 0..9]
computing combined value v1*(size(v2)+1)+v2
combined value is [8 from 0..99]
[8 from 0..99] is at 8.08% of range
8.08% of range 1..12 is 1.89
generated value 2
2 means merge rectangles 6 and 83
merging rectangles 6 and 83
new rectangle 84: x=469 y=0 width=130 height=274
removed old rectangles 6 and 83 from image
added new rectangle 84 to image
number of rectangles: 24
merging two rectangles
choosing from 10 options
1 means merge rectangles 3 and 66
2 means merge rectangles 33 and 71
3 means merge rectangles 60 and 69
4 means merge rectangles 62 and 76
5 means merge rectangles 69 and 25
6 means merge rectangles 75 and 64
7 means merge rectangles 76 and 77
8 means merge rectangles 77 and 73
9 means merge rectangles 80 and 57
10 means merge rectangles 82 and 74
generating a value from range 1..10
getting next value from text data source
using next digit/letter "7" from line 5 column 21
using digit "7" as value
value [7 from 0..9]
[7 from 0..9] is at 77.78% of range
77.78% of range 1..10 is 8.00
generated value 8
8 means merge rectangles 77 and 73
merging rectangles 77 and 73
new rectangle 85: x=359 y=462 width=240 height=179
removed old rectangles 77 and 73 from image
added new rectangle 85 to image
number of rectangles: 23
merging two rectangles
choosing from 10 options
1 means merge rectangles 3 and 66
2 means merge rectangles 33 and 71
3 means merge rectangles 60 and 69
4 means merge rectangles 62 and 76
5 means merge rectangles 63 and 85
6 means merge rectangles 69 and 25
7 means merge rectangles 75 and 64
8 means merge rectangles 76 and 85
9 means merge rectangles 80 and 57
10 means merge rectangles 82 and 74
generating a value from range 1..10
getting next value from text data source
using next digit/letter "4" from line 5 column 22
using digit "4" as value
value [4 from 0..9]
[4 from 0..9] is at 44.44% of range
44.44% of range 1..10 is 5.00
generated value 5
5 means merge rectangles 63 and 85
merging rectangles 63 and 85
new rectangle 86: x=272 y=462 width=327 height=179
removed old rectangles 63 and 85 from image
added new rectangle 86 to image
number of rectangles: 22
merging two rectangles
choosing from 8 options
1 means merge rectangles 3 and 66
2 means merge rectangles 33 and 71
3 means merge rectangles 60 and 69
4 means merge rectangles 62 and 76
5 means merge rectangles 69 and 25
6 means merge rectangles 75 and 64
7 means merge rectangles 80 and 57
8 means merge rectangles 82 and 74
generating a value from range 1..8
getting next value from text data source
using next digit/letter "9" from line 5 column 23
using digit "9" as value
value [9 from 0..9]
[9 from 0..9] is at 100.00% of range
100.00% of range 1..8 is 8.00
generated value 8
8 means merge rectangles 82 and 74
merging rectangles 82 and 74
new rectangle 87: x=54 y=462 width=200 height=179
removed old rectangles 82 and 74 from image
added new rectangle 87 to image
number of rectangles: 21
merging two rectangles
choosing from 9 options
1 means merge rectangles 3 and 66
2 means merge rectangles 33 and 71
3 means merge rectangles 60 and 69
4 means merge rectangles 62 and 76
5 means merge rectangles 69 and 25
6 means merge rectangles 70 and 87
7 means merge rectangles 75 and 64
8 means merge rectangles 80 and 57
9 means merge rectangles 87 and 86
generating a value from range 1..9
getting next value from text data source
using next digit/letter "9" from line 5 column 24
using digit "9" as value
value [9 from 0..9]
[9 from 0..9] is at 100.00% of range
100.00% of range 1..9 is 9.00
generated value 9
9 means merge rectangles 87 and 86
merging rectangles 87 and 86
new rectangle 88: x=54 y=462 width=545 height=179
removed old rectangles 87 and 86 from image
added new rectangle 88 to image
number of rectangles: 20
merging two rectangles
choosing from 8 options
1 means merge rectangles 3 and 66
2 means merge rectangles 33 and 71
3 means merge rectangles 60 and 69
4 means merge rectangles 62 and 76
5 means merge rectangles 69 and 25
6 means merge rectangles 70 and 88
7 means merge rectangles 75 and 64
8 means merge rectangles 80 and 57
generating a value from range 1..8
getting next value from text data source
using next digit/letter "4" from line 5 column 25
using digit "4" as value
value [4 from 0..9]
[4 from 0..9] is at 44.44% of range
44.44% of range 1..8 is 4.11
generated value 4
4 means merge rectangles 62 and 76
merging rectangles 62 and 76
new rectangle 89: x=137 y=345 width=462 height=99
removed old rectangles 62 and 76 from image
added new rectangle 89 to image
number of rectangles: 19
merging two rectangles
choosing from 7 options
1 means merge rectangles 3 and 66
2 means merge rectangles 33 and 71
3 means merge rectangles 60 and 69
4 means merge rectangles 69 and 25
5 means merge rectangles 70 and 88
6 means merge rectangles 75 and 64
7 means merge rectangles 80 and 57
generating a value from range 1..7
getting next value from text data source
using next digit/letter "5" from line 5 column 26
using digit "5" as value
value [5 from 0..9]
[5 from 0..9] is at 55.56% of range
55.56% of range 1..7 is 4.33
generated value 4
4 means merge rectangles 69 and 25
merging rectangles 69 and 25
new rectangle 90: x=0 y=114 width=36 height=160
removed old rectangles 69 and 25 from image
added new rectangle 90 to image
number of rectangles: 18
merging two rectangles
choosing from 6 options
1 means merge rectangles 3 and 66
2 means merge rectangles 33 and 71
3 means merge rectangles 60 and 90
4 means merge rectangles 70 and 88
5 means merge rectangles 75 and 64
6 means merge rectangles 80 and 57
generating a value from range 1..6
getting next value from text data source
using next digit/letter "p" from line 7 column 1
using position 16 of lower case letter "p" in alphabet as value
value [16 from 1..26]
[16 from 1..26] is at 60.00% of range
60.00% of range 1..6 is 4.00
generated value 4
4 means merge rectangles 70 and 88
merging rectangles 70 and 88
new rectangle 91: x=0 y=462 width=599 height=179
removed old rectangles 70 and 88 from image
added new rectangle 91 to image
number of rectangles: 17
merging two rectangles
choosing from 5 options
1 means merge rectangles 3 and 66
2 means merge rectangles 33 and 71
3 means merge rectangles 60 and 90
4 means merge rectangles 75 and 64
5 means merge rectangles 80 and 57
generating a value from range 1..5
getting next value from text data source
using next digit/letter "o" from line 7 column 2
using position 15 of lower case letter "o" in alphabet as value
value [15 from 1..26]
[15 from 1..26] is at 56.00% of range
56.00% of range 1..5 is 3.24
generated value 3
3 means merge rectangles 60 and 90
merging rectangles 60 and 90
new rectangle 92: x=0 y=0 width=36 height=274
removed old rectangles 60 and 90 from image
added new rectangle 92 to image
number of rectangles: 16
merging two rectangles
choosing from 4 options
1 means merge rectangles 3 and 66
2 means merge rectangles 33 and 71
3 means merge rectangles 75 and 64
4 means merge rectangles 80 and 57
generating a value from range 1..4
getting next value from text data source
using next digit/letter "r" from line 7 column 3
using position 18 of lower case letter "r" in alphabet as value
value [18 from 1..26]
[18 from 1..26] is at 68.00% of range
68.00% of range 1..4 is 3.04
generated value 3
3 means merge rectangles 75 and 64
merging rectangles 75 and 64
new rectangle 93: x=137 y=114 width=204 height=95
removed old rectangles 75 and 64 from image
added new rectangle 93 to image
number of rectangles: 15
merging two rectangles
choosing from 4 options
1 means merge rectangles 3 and 66
2 means merge rectangles 33 and 71
3 means merge rectangles 68 and 93
4 means merge rectangles 80 and 57
generating a value from range 1..4
getting next value from text data source
using next digit/letter "t" from line 7 column 4
using position 20 of lower case letter "t" in alphabet as value
value [20 from 1..26]
[20 from 1..26] is at 76.00% of range
76.00% of range 1..4 is 3.28
generated value 3
3 means merge rectangles 68 and 93
merging rectangles 68 and 93
new rectangle 94: x=137 y=52 width=204 height=157
removed old rectangles 68 and 93 from image
added new rectangle 94 to image
number of rectangles: 14
computing number of rectangles for each color
color rates (in 39 rectangles):
white: 24 time(s)
red: 4 time(s)
yellow: 4 time(s)
blue: 4 time(s)
gray: 2 time(s)
black: 1 time(s)
number of rectangles per color:
white: 9 time(s)
red: 2 time(s)
yellow: 1 time(s)
blue: 1 time(s)
gray: 1 time(s)
black: 0 time(s)
assigning colors
assigning color to rectangle 3
choosing from 5 options
1..9 means white
10..11 means red
12 means yellow
13 means blue
14 means gray
generating a value from range 1..14
getting next value from text data source
using next digit/letter "3" from line 7 column 6
using digit "3" as value
value [3 from 0..9]
range of [3 from 0..9] is too small
enlarging range by combining with next value
getting next value from text data source
using next digit/letter "3" from line 7 column 7
using digit "3" as value
value [3 from 0..9]
combining v1=[3 from 0..9] with v2=[3 from 0..9]
computing combined value v1*(size(v2)+1)+v2
combined value is [33 from 0..99]
[33 from 0..99] is at 33.33% of range
33.33% of range 1..14 is 5.33
generated value 5
5 means white
assigning color to rectangle 33
choosing from 5 options
1..8 means white
9..10 means red
11 means yellow
12 means blue
13 means gray
generating a value from range 1..13
getting next value from text data source
using next digit/letter "8" from line 7 column 8
using digit "8" as value
value [8 from 0..9]
range of [8 from 0..9] is too small
enlarging range by combining with next value
getting next value from text data source
using next digit/letter "9" from line 7 column 9
using digit "9" as value
value [9 from 0..9]
combining v1=[8 from 0..9] with v2=[9 from 0..9]
computing combined value v1*(size(v2)+1)+v2
combined value is [89 from 0..99]
[89 from 0..99] is at 89.90% of range
89.90% of range 1..13 is 11.79
generated value 12
12 means blue
assigning color to rectangle 57
choosing from 4 options
1..8 means white
9..10 means red
11 means yellow
12 means gray
generating a value from range 1..12
getting next value from text data source
using next digit/letter "s" from line 7 column 11
using position 19 of lower case letter "s" in alphabet as value
value [19 from 1..26]
[19 from 1..26] is at 72.00% of range
72.00% of range 1..12 is 8.92
generated value 9
9 means red
assigning color to rectangle 58
choosing from 4 options
1..8 means white
9 means red
10 means yellow
11 means gray
generating a value from range 1..11
getting next value from text data source
using next digit/letter "c" from line 7 column 12
using position 3 of lower case letter "c" in alphabet as value
value [3 from 1..26]
[3 from 1..26] is at 8.00% of range
8.00% of range 1..11 is 1.80
generated value 2
2 means white
assigning color to rectangle 65
choosing from 4 options
1..7 means white
8 means red
9 means yellow
10 means gray
generating a value from range 1..10
getting next value from text data source
using next digit/letter "a" from line 7 column 13
using position 1 of lower case letter "a" in alphabet as value
value [1 from 1..26]
[1 from 1..26] is at 0.00% of range
0.00% of range 1..10 is 1.00
generated value 1
1 means white
assigning color to rectangle 66
choosing from 4 options
1..6 means white
7 means red
8 means yellow
9 means gray
generating a value from range 1..9
getting next value from text data source
using next digit/letter "n" from line 7 column 14
using position 14 of lower case letter "n" in alphabet as value
value [14 from 1..26]
[14 from 1..26] is at 52.00% of range
52.00% of range 1..9 is 5.16
generated value 5
5 means white
assigning color to rectangle 71
choosing from 4 options
1..5 means white
6 means red
7 means yellow
8 means gray
generating a value from range 1..8
getting next value from text data source
using next digit/letter "n" from line 7 column 15
using position 14 of lower case letter "n" in alphabet as value
value [14 from 1..26]
[14 from 1..26] is at 52.00% of range
52.00% of range 1..8 is 4.64
generated value 5
5 means white
assigning color to rectangle 80
choosing from 4 options
1..4 means white
5 means red
6 means yellow
7 means gray
generating a value from range 1..7
getting next value from text data source
using next digit/letter "e" from line 7 column 16
using position 5 of lower case letter "e" in alphabet as value
value [5 from 1..26]
[5 from 1..26] is at 16.00% of range
16.00% of range 1..7 is 1.96
generated value 2
2 means white
assigning color to rectangle 81
choosing from 4 options
1..3 means white
4 means red
5 means yellow
6 means gray
generating a value from range 1..6
getting next value from text data source
using next digit/letter "d" from line 7 column 17
using position 4 of lower case letter "d" in alphabet as value
value [4 from 1..26]
[4 from 1..26] is at 12.00% of range
12.00% of range 1..6 is 1.60
generated value 2
2 means white
assigning color to rectangle 84
choosing from 4 options
1..2 means white
3 means red
4 means yellow
5 means gray
generating a value from range 1..5
getting next value from text data source
using next digit/letter "f" from line 7 column 19
using position 6 of lower case letter "f" in alphabet as value
value [6 from 1..26]
[6 from 1..26] is at 20.00% of range
20.00% of range 1..5 is 1.80
generated value 2
2 means white
assigning color to rectangle 89
choosing from 4 options
1 means white
2 means red
3 means yellow
4 means gray
generating a value from range 1..4
getting next value from text data source
using next digit/letter "r" from line 7 column 20
using position 18 of lower case letter "r" in alphabet as value
value [18 from 1..26]
[18 from 1..26] is at 68.00% of range
68.00% of range 1..4 is 3.04
generated value 3
3 means yellow
assigning color to rectangle 91
choosing from 3 options
1 means white
2 means red
3 means gray
generating a value from range 1..3
getting next value from text data source
using next digit/letter "o" from line 7 column 21
using position 15 of lower case letter "o" in alphabet as value
value [15 from 1..26]
[15 from 1..26] is at 56.00% of range
56.00% of range 1..3 is 2.12
generated value 2
2 means red
assigning color to rectangle 92
choosing from 2 options
1 means white
2 means gray
generating a value from range 1..2
getting next value from text data source
using next digit/letter "m" from line 7 column 22
using position 13 of lower case letter "m" in alphabet as value
value [13 from 1..26]
[13 from 1..26] is at 48.00% of range
48.00% of range 1..2 is 1.48
generated value 1
1 means white
assigning color to rectangle 94
choosing from 1 options
1 means gray
generating a value from range 1..1
value 1 is the only option
1 means gray
image generation complete