apgsearch: a high-performance soup searcher

For general discussion about Conway's Game of Life.
User avatar
lukebradford
Posts: 101
Joined: October 11th, 2013, 8:07 pm
Location: Cambridge, MA
Contact:

Re: apgsearch: a high-performance soup searcher

Post by lukebradford » October 3rd, 2014, 7:54 am

Just wanted to share this awesome double pulsar reaction that appeared in my highest-scoring soup so far:

Code: Select all

x = 15, y = 3, rule = B3/S23
2o5bo$2o5b2o4b2o$6bo2bo3b2o!

User avatar
dvgrn
Moderator
Posts: 10610
Joined: May 17th, 2009, 11:00 pm
Location: Madison, WI
Contact:

Re: apgsearch: a high-performance soup searcher

Post by dvgrn » October 3rd, 2014, 9:43 am

lukebradford wrote:Just wanted to share this awesome double pulsar reaction that appeared in my highest-scoring soup so far...
The same thing happened to me a couple of weeks ago. Looks like multiple pulsars are one of the most common ways to get a high score under the current scoring rules.

-- I wonder if it's worth thinking about adjusting those rules a bit? In the official eventual non-beta version of apgsearch, it might make sense to either reduce the score for pulsars, or increase the score for clocks as mentioned above, or both, since clocks are so much less common.

User avatar
dvgrn
Moderator
Posts: 10610
Joined: May 17th, 2009, 11:00 pm
Location: Madison, WI
Contact:

Re: apgsearch: a high-performance soup searcher

Post by dvgrn » October 5th, 2014, 2:05 pm

EDIT: Here's a link to version 0.45 of apgsearch, fixing a very minor bug. It writes first-occurrence and rare-object soups to new sections of the progress text files, instead of just to the temporary census HTML.

A few other minor changes are noted in the comments:

Code: Select all

# Changes DMG 8 Oct 2014:
#   * make temporary links for all instances of rare objects,
#     not just first occurrences
#   * save rare-object soupids to the progress folder:
#     new sections in search*.txt, @SAMPLE_SOUPIDS and @RARE_OBJ_SOUPIDS
#   * objects from Achim Flammenkamp's top-100 are added to common-objects list
#   * a few objects not found in Achim's top 100 have names in [square brackets]
#   * added loafer -- "xq7_3nw17862z6952": ("loafer", 60)
#   * clock score increased to 16, slightly higher than a pentadecathlon
#   * WORKAROUND: added alloccur dictionary presence test, because 
#     blocks and gliders have no entry in this list 
#   * v0.45: fixed a typo with the common-name definition of "bi-loaf2"
# TODO: extend the common-objects list further with top 1800 objects from
#       http://wwwhomes.uni-bielefeld.de/achim/ash-pattern.txt
Objects that are counted with special custom rule trickery only seem to show up on the first-occurrence list when they appear as part of a pseudo-object. I don't mind this, but it seems maybe worth mentioning. I don't understand exactly why gliders and blinkers are never assigned a first occurrence, so I'm leaving that for someone else to fix.

I was going to write that I also didn't understand why the first soup reported for some objects isn't actually the numerically earliest soup, but just realized that this effect would probably go away if soups were run one at a time instead of in groups of 100.

Also, if anyone has an apgsearch progress folder with a lot of results from B3/S23 searches, any good results from a quick run of this post-search survey script might come in handy to help locate syntheses of 18-bit still lifes. Or of course the script could be adapted to look for any object(s) that you might be interested in -- just change the object list at the beginning, or read the objects from a separate file or whatever.

At least according to my theories, progress filed saved by v0.44 should allow all soup IDs for rare 18-bit still lifes to be recovered immediately, without having to re-run the search.

Another thought in passing: it might be worth putting together a script that builds a stamp collection of objects found in the apgsearch/objects/B3S23 folder. A graph of the relative frequencies of still lifes sorted by number of bits might be interesting too.

User avatar
codeholic
Moderator
Posts: 1147
Joined: September 13th, 2011, 8:23 am
Location: Hamburg, Germany

Re: apgsearch: a high-performance soup searcher

Post by codeholic » October 7th, 2014, 4:40 pm

I've compiled a list of eater2 variants. Here it is in the form of apgsearch.py code fragment:

Code: Select all

                   "xs18_c9b88gozw39c": ("eater2", 40),
                   "xs18_c9b88gozwbd": ("eater2", 40),
                   "xs18_g0ggm96z110qm": ("eater2", 40),
                   "xs18_g0ggm96z11oi6": ("eater2", 40),
                   "xs19_2552s0c453zy023": ("eater2", 40),
                   "xs19_3pm0mmzw343": ("eater2", 40),
                   "xs19_4aab88gozx39c": ("eater2", 40),
                   "xs19_4aab88gozxbd": ("eater2", 40),
                   "xs19_4aar0rbzx121": ("eater2", 40),
                   "xs19_8e1e8z33039c": ("eater2", 40),
                   "xs19_br0raa4z23": ("eater2", 40),
                   "xs19_c9b88gozc871": ("eater2", 40),
                   "xs19_ggmkiarz146": ("eater2", 40),
                   "xs19_wmkiarz696": ("eater2", 40),
                   "xs20_08e1e8z253039c": ("eater2", 40),
                   "xs20_0ggmkiarz1226": ("eater2", 40),
                   "xs20_2lm0mk46zw343": ("eater2", 40),
                   "xs20_2lm0mkk8zw343": ("eater2", 40),
                   "xs20_2lm0mp3zw343": ("eater2", 40),
                   "xs20_69ar0rbzx121": ("eater2", 40),
                   "xs20_8e1u0o8a6zx56": ("eater2", 40),
                   "xs20_ad1e8z33039c": ("eater2", 40),
                   "xs20_br0ra96z23": ("eater2", 40),
                   "xs21_08e1dazc930352": ("eater2", 40),
                   "xs21_br0ra96z1221": ("eater2", 40),
                   "xs21_2lm0mk46z02543": ("eater2", 40),
                   "xs21_2lm0mkiczw343": ("eater2", 40),
                   "xs22_3iakg8ozc96066": ("eater2", 40),
                   "xs22_2lm0mkicz02543": ("eater2", 40),
                   "xs23_3iakg8ozc9606a4": ("eater2", 40),
                   "xs24_0gg0bdz8l5ob96zw1": ("eater2", 40),
                   "xs24_0gg39cz8l5ob96zw1": ("eater2", 40),
                   "xs26_wo44mharzad1cb": ("eater2", 40),
                   "xs29_3pa38r3og4cz64311": ("eater2", 40),
                   "xs29_3pa38r3og8oz64311": ("eater2", 40),
And here is the rle:

Code: Select all

x = 91, y = 131, rule = B3/S23
b2o18b2o22bo19bo15b2o5b2o$2bo19bo21bobo17bobo13bo2bo5bo$o19bo23bobo17b
obo14b2obob3o$5obo13b5obo18bo19bo18bobo$5b2o18b2o13bob3o15bob3o19bo$2b
2o18b2o16b2o18b2o23bo$2bo19bo20b2o18b2o19b2o$4bo18bo20bo19bo$3b2o17b2o
19bo18bo$43b2o17b2o11$2o21bo19bo19bob2o15bo$obob2o15b3o17b3o17b3ob2o
14bobo$2bob2o14bo19bo19bo20bobo$bo19b5obo13b5obo13b3ob2o13b2ob2o$b2ob
2o20b2o18b2o15bobo$2bobo18b2o18b2o18bobo14b2ob2o$2bobo18bo19bo20bo15b
2obo$3bo21bo18bo40bo$24b2o17b2o39b2o12$2obo17b2o23bo19bo16bo$2ob3o16bo
19bob3o15bob3o15bobo$6bo13bo21b2o18b2o18bobo$2ob3o14b5obo18b2o18b2o14b
2ob2o$bobo21b2o13b5obo15b3obo$bo20b2o16bo20bo19b2ob2o$2o20bo19bo17bobo
17bobobo$20bobo18b2o17bobo18bo4bo$20b2o39bo23b2o12$7bo13bo19bo19bo3b2o
14bobob2o$3bob3o12bobobo2bo12bobobo15bobobobo13bob2ob2o$3b2o16b2ob4o
13b2ob3o14b2obo15bo$6b2o39bo17bo15b3ob2o$b5obo13b2ob2o15b2ob3o14b2ob2o
17bobo$o21bobo17bobo17bobo18bobo$b3o18bobo17bobo17bobo19bo$3bo19bo19bo
19bo13$2bo18b2o17b2obobo17b2o15b2obobo$bobo3b2o11bo2bo16b2ob2obo15bo2b
o14b2ob2obo$bobo4bo12bobo22bo15bobo21bo$2obob3o12b2ob2o15b2ob3o15b2ob
2o14b2ob3o$3bobo35bobo37bobo$3bo16b2ob2o16bo19b2ob2o14bo2bo$4bo15b2obo
16b2o20bobobo14b2o$3b2o20bo34bo4bo$24b2o34b2o12$bo19bo18bo20bo18bo$obo
bo2bo12bobobobo13b3o17bobobobo13b3o$b2ob4o13b2ob2obo15bo17b2ob2obo15bo
$27bo14bo2b2o20bo14bo2b2o$b2ob2o15b2ob3o14bob2obo14b2ob3o14bob2obo$2bo
bo17bobo16bo20bobo16bo$bo2bo17bobo17bob2o15bo2bo17bob2o$2b2o19bo16bobo
b2o16b2o16bobobobo$40b2o38b2o3bo12$4b2o17b2o21bobo11b2obob2o13b2obob2o
$4bo18bo21bob2o11bob2ob2o13bob2ob2o$5bo19bo17b3o23b2o$4b2o18b2o16bo4b
2o12b2ob2obo2bo10b2ob2obob2o$b2o18b2o19bo2b2obo12bo3bob2o12bo3bob2obo$
b2ob2o15b2ob2o15b2obo17b3o17b3o$4bobo17bobo13bo3bo15bobo17bobo$b2o3bo
14b2o3bo14bobo16b2o18b2o$o2b3o14bo2b3o14b2ob2o$bobo17bobo$2bo19bo!
I've just realized, that the following variants are probably treated as separate still-lifes by apgsearch. It's a pity.

Code: Select all

x = 91, y = 28, rule = B3/S23
2bo20bo17b2o20b2o15b2obob2o$bobo18bobo15bo2bo18bo2bo14bob2ob2o$bobo18b
obo16bobo18bobo24b2o$2ob2o16b2ob2o14b2ob2o16b2ob2o15b2ob2obo2bo$81bo3b
ob2o$2ob2o16b2ob2o14b2ob2o16b2ob2o16b3o$2obo16bobobo15b2obo18bobobo13b
obo$5bo15bo4bo18bo14bo4bo14b2o$4b2o19b2o17b2o14b2o12$2obob2o$ob2ob2o2$
b2ob2obob2o$bo3bob2obo$2b3o$obo$2o!
Ivan Fomichev

User avatar
dvgrn
Moderator
Posts: 10610
Joined: May 17th, 2009, 11:00 pm
Location: Madison, WI
Contact:

Re: apgsearch: a high-performance soup searcher

Post by dvgrn » October 8th, 2014, 11:43 am

codeholic wrote:I've compiled a list of eater2 variants...
Very nice! Half of those didn't look like eater2 variants at all on first glance, but of course a lot of them can catch a glider and turn it into a boat-bit, and then boats can be converted to blocks with one glider.
codeholic wrote:I've just realized, that the following variants are probably treated as separate still-lifes by apgsearch. It's a pity.
There seem to be quite a few more variants that might be worth adding to that last list -- various permutations of the two-sided eater2, many of which remove one of the two eater sites but are still fully functional from one side:

Code: Select all

x = 75, y = 16, rule = B3/S23
15bo29b2o$15bobo9b2o16b2o$15b2o10bo45b2o$6b2o20bo16b4o3b2o12b2o5bo$6bo
2bob2o16bob2o12bo3bobobo12bo2bobobo$8b2ob2o15b2ob2o15b2ob2o15b2ob2o2$
8b2ob2o15b2ob2o15b2ob2o15b2ob2o$8b2obo2bo13b2obobo14b2obobo14b2obo$13b
2o18bo19bo19bo$33b2o18b2o17b2o3$b2o20b2o18b2o16b2o$obo19bobo17bobo15bo
bo$2bo21bo19bo17bo!
It would probably work to add a list of specific objects to apgsearch -- if the pseudo_bangbang() function sees an eater2 variant that's on the list, it can send it back to be catalogued without breaking it into its component pieces. I haven't checked to see if this would actually work, but it seems as if it should.

-- But maybe the first question should be whether it's worth adding this kind of special-purpose hack to apgsearch. We're getting to where we might have enough data to be able to calculate how long it might take before a specific randomly chosen N-cell object shows up in apgsearch -- at least very roughly.

Your list starts with 18-cell objects, so maybe there's some hope there -- but there are 29-cell objects toward the bottom of the list (and in my above 2-sided-eater contribution). I suspect the run time is millions of years on planet-sized computers before anything like that is likely to show up... Can anyone come up with a more specific estimate?

I guess maybe I started this line of research (?) by wondering if there was an easy conversion of known 18-bitters into eater2 variants. But here's another question: what exactly could we do with cheap eater2 recipes if we had them?

There are a number of really useful Herschel conduits that include eater2s, and it's annoying to not be able to include them in self-constructing circuitry. I've done a lot of wishful thinking along these lines -- but there's a serious problem: any even moderately complex construction recipe for a large object like an eater2 will have a sizable construction envelope around it, which will place painful constraints on the order of construction.

Spartan universal constructors work because they're building only small well-separated objects. You don't have to worry about construction order constraints, because lots of recipes are available to build blocks or boats or beehives or even any orientation of eaters, without disturbing other already-constructed objects -- even very close to the construction site.

With one of these eater2 variants we might need to find not just one recipe but four or eight different ones, to build different orientations of eater2s near the edge of their construction envelopes. Until then, we don't have an easy "drop-in" solution for building eater2s.

We can already slow-construct eater2s if we really really want them -- basically, construct them first, then painfully work around them to construct the other nearby circuitry. Experience so far suggests that customized constructions of this sort can definitely be done, but they're very hard to write an automatic compiler for, and generally they're worth avoiding if at all possible. Measuring be the length of the final recipe, it's much cheaper to build an extra dozen or two dozen Spartan still lifes, to replace an eater2-containing Herschel conduit.

-- All that said, I'd still absolutely love to see an eater2 pop out of a random soup sometime.

User avatar
dvgrn
Moderator
Posts: 10610
Joined: May 17th, 2009, 11:00 pm
Location: Madison, WI
Contact:

Re: apgsearch: a high-performance soup searcher

Post by dvgrn » October 8th, 2014, 4:18 pm

dvgrn wrote:Also, if anyone has an apgsearch progress folder with a lot of results from B3/S23 searches, any good results from a quick run of this post-search survey script might come in handy to help locate syntheses of 18-bit still lifes. Or of course the script could be adapted to look for any object(s) that you might be interested in -- just change the object list at the beginning, or read the objects from a separate file or whatever.
I recently posted on the 18-bit still life thread a script that makes a stamp collection of all the high-bit-count still lifes reported in the apgsearch/progress folder. It's impressive how much variety can be sieved out of the soup after a few days' worth of searches.

All those same objects are also saved separately as RLE files in the apgsearch/objects folder, of course. The main advantage of the script is the report that's written to the clipboard, which gives the seed string(s) for the source soup for each rare object.

This only works if you've been running apgsearch v0.44+. Otherwise the script just reports what information there is in the pre-v0.44 progress files; to find the actual soup you'd have to re-run the search with the reported root string for the specified number of soups, and stop whenever the object shows up again.

Here's part of the stamp collection for the computer I've been running the most searches on: 588 objects between 18 and 31 bits. I've also thrown in the 16- and 17-bit objects at the top -- it makes for a fairly nice progression. The script actually starts at 10 cells, but the full pattern overflows the conwaylife.com message limit:

Code: Select all

x = 491, y = 1309, rule = B3/S23
2b2o18b2o18bo19b2o17b2o18b2o18b2o18b2o18b2o18b2o18b2o18b2o18b2o18b2o
21b2o19b2o17b2o17b2o18b2o18bo17b2o18b2o18bo19bo23bo$bo2bo16bo2bo16bobo
17bo2bo16bobo17bobo17bobo17bobo17bobo17bobo17bo19bo2b2o15bo2bo16bo22bo
bo17bobo16bobo16bo2bo16bo2bo16bobo17bo2bo16bo18b3o17b3o20bobo$2bo2bo
16bo2bo16bobo17b2obo17bo18bo2bo16bo2bo17b3o17bo18bobo17b3obo15b2obo16b
2obo16b3o16b2obobo17bo18bo18bob2o16bobobo15bobo17bobobo15bob2o18bo19bo
16bo3bo$3b3o17b3o18bo20bo17b2o18b3o17b3o16bo3bo15b2ob2o17bo20b2o17bo
20bo19bo16bob2o15b2obobo14b2o2bo15b2o18b2ob2o15b2obobo14b2ob2o15b2obob
o14b2o2bo15b2obo16b4o$42bob2o16b3o20bo57bob2o16bob2o15bob2o16b2o18b2o
18b3o17b3o17bo19bo2b2o15bob2o16bo19bo19bo2b2o15bo19bo2bo16bob2o16bob2o
$b3o17b3o17bobo18bo20b2o16b3o17b3o16b3o17b3o18bobo18bo19bo19bo18bo18bo
bo17bobo19bo18bo18bobo17bobo17bobo17bobo19bo19bo18b2o$o2bo16bo2bo16bo
2bo16bobo20bo16bo2bo16bo2bo16bo19bo19bo2bo16bobo17bobo17bobo17bobo17b
2o18b2o18bobo17bo19b2o18b2o18b2o18b2o18bobo17bobo17bo2bo$b2o17b2o18bob
o17b2o19bobo17b2o17b2o59b2o17b2o18b2o18b2o18bobo57b2o19b3o96b2o18b2o
19bobo$41bo38bobo178bo81bo138bo$81bo11$5b2o18b2o17b2o18b2o18b2o18bo19b
2o18b2o16b2o18b2o19b2o18b2o19b2o20bo16b2o19b2o19b2o18b2o18bo16bo22bo
20bo16bo22bo15b2o$4bobo17bobo17bobo17bobo17b2o17bobo17bobo17bobo17bo
19bo18bo2bo16bo2bo17bo2bo17b3o15bobo18bo2bo17bo2bo16bobo17bobo15b3o19b
obo17b3o15bobo17b2obobo14bobo$bo3bo15bo3bo15bo3bo15bo3bo15bo19bo2bo16b
o2bo16bo2bo16bo19bo19bo2bo16bo2bo16bo2bobo16bo18bo21bobo16bo2bo17b2o
18bo2bo17bo17bo2bo16bo19bobo17bobobo15bobo$b4o16b4o16b4o16b4o16b5o15b
3o17b3o17b3o17b2o18b5o15b3o17b3o17b2ob2o17bob2o16b4o15bob2o16bob2o16b
2o18b2ob2o15b2obo17b3o17bob2o18bo17bo2bo18bo$85bo99bo56bo18bobob2o14bo
bo2bo14bobo17bobo17bobo17bobo17bobob2o14b2o18b3ob2o14b4o16b3o17b4o$b2o
18b2o18b2o18b2o18b2o18b3o17b3o17b3o17b4o16b2o18b3o17b3o16bobo17bobo17b
obo17bo2bo16bo2bo16bobo17bo2bo16bobo17bo2bo16bo19bo19bo19bo$o2bo16bobo
17bo2bo16bobo17bobo17bo2bo16bo2bo16bo2bo16bo4bo14bo2bo16bo2bo16bo2bo
16b2o18b2o18b2o18bobo17bobo17bo19bobo17b2o18bo2bo16b2o18bobo17b2o18bob
o$b2o17b2o19b2o17b2o19bo18bobo18b2o17b2o18b2o2b2o15b2o18b2o17b2o79bo
19bo19bo19bo39b2o38bobo37b2o$101bo238b2o100bo12$2b2o20bo17b2o17b2o18b
2o18b2o18b2o18b2o18b2o21b2o16bo19bo20b2o20bo15b2ob2o14b2o3b2o13b2ob2o
15b2ob2o15b2obo17bo19b2ob2o15b2o18bo19b2o18b2o$2bo20bobo15bo2bo16bobob
2o14bobob2o14bobo17bobo17bobob2o14bobo17bo3bo15bobo17bobo19bobo18bobo
15bob2o15bo2bobo14bobobo15bobo2b2o13bob3o14bobo17bobobo15bo2bo16bobo2b
2o13bo2bo16bo2bo$3b3o16bo2bo16b2obo17bob2o16bobobo15bo19b3o17bob2o16bo
17b4o16b2obo16bo2bo20bo18bobo15bo18bobobo15bobobo15bo2bob2o13bo4bo14bo
bob2o14bo2bo16b2obo16b2o3bo14bo2bo16bo2bo$5bo16bobo18bobo17bo19bo2bo
16bob2o15bo3bo16bo19bob2o37bo17bobo16b4o16bo3bo15b2o19b2obobo14b2obobo
14bobo17bobobo16bob2o17bob2o16bo18b3o16b3o17b3o$b4o16b2ob2o15bobob2o
14bobo17bobo17bobob2o14bobob2o14b3o17b3ob2o14b2o18b2ob2o15b2ob2o15bo
19b4o16bo24b2o18b2o15b2o16b2ob2o17bo19b2ob2o16b2o17bo$o21bo17bobo17bob
o17bobo17bobo17bobo17bo19bo19bo2bo16bo2bo18bo19bo39bo98bobo38b2o17bobo
20b3o17b3o$obo17bobo18bo18b2o19bo18b2o19bo18b2o18b2o18bo2bo17bobo16bob
o20bo17b2o17bobo97bobo38bobo17b2o20bo2bo16bo2bo$b2o17b2o159b2o19bo17b
2o18b3o17bobo17b2o99bo39b2o41b2o17b2o$240bo20bo12$b2obo16b2o3b2o13b2o
18b2o18bo19bo19bo19b2o18b2o2b2o14bo19bo22b2o18b2o18b2o18bo20bo15b2o17b
2o18b2o4b2o12b2o3b2o13b2o18bob2ob2o13b2ob2obo13b2o5b2o11b2o$o2b4o13bo
2bobo2bo11bo2bob2o13bo2bo16bobo2b2o13bobo17bobo17bobo2b2o13bobo2bobo
12bobo17bobo3b2o12b2obob3o12b2obo2bo13b2obobo14b2obobo14b2o2bobo13bo2b
o16bobo17bo2bo2b2o12bobobo2bo12bobo17b2obob2o13b2obob2o13bo2b2obobo11b
o3bo$bo5bo13bobobobo13bobobobo13bobo17bo4bo14bo2bo16bobo17bo4bo14bo5bo
13bobo17bobobo2bo12bobo4bo12bobobobo13bobo17bobobo15bo3bobo13b2o2bo17b
o18b2o18bobob2o14bo20bo19bo17b2obobo14b4o$2b3obo15b2ob2o15b2obo2bo13bo
3bo15b4o16b3o17b2o18b4o16b5o16bo19bobobo13bobo3b2o12bobobobo13bob2o16b
ob2o16bobobobo15b3o18bo19b4o14bobo17b2o19bob2o16bob2o18bobo$4b2o40b2o
15b4o97bo17bo19b2ob2o15bo19bo3bo15bo19bo19b2ob2o14b2o20b2o19bo2bo15b2o
18bo20bobo17bobo19bo16b2o$82b2o20b3o15b4o16b2o38b4o74bobo17bobo37bo2bo
18bo60bob2o76bobo$63b2o16bobo20bo2bo14bo3bo15b2o42bo73b2o18b2o39b2o20b
2o59bo2bo76bobo$63b2o17bo23bobo16bobo56bobo157bo60bobo77b2o$107bo18bo
57b2o158bobo59bo$345b2o11$2o3b2o13b2o2b2o14b2o2b2o14b2o18b2o18b2o18b2o
18b2o3b2o13b2o3b2o13b2o18b2o18b2o18b2o18b2o18b2o3b2o13b2o18b2o18b2o18b
2o3b2o13b2o3b2o13b2o18bo2bo16b2o2b2o14b2o3bo14b2o$obo2b2o13bo2bo2bo13b
o2bo2bo13bo5b2o12bo19bobo17bobo17bobo2bobo12bobo2bobo12bobo3b2o12bobo
3b2o12bobo3bo13bo2b2o15bo19bobobobo13bobob2o14bo4bo14bobob2o14bobobo2b
o12bobobobo13bobob2o14b6o14bo4bo14bo2b3o14bobo$b2o18bobobobo13bobobo
15bo4bobo12bo19bo2bo16bo2bo16bo5bo13bobobobo13bobo2bo14bobobobo13bobob
obo13b2o2bo16bo19bobo17bobobo15bobobo15bobobo15bobo2bo14bobo17bobobo
19bo14b4o16b2o19bo$3b4o15b2obobo14b2obobo14bobobobo13bo19b3o17b3o17b5o
15b2ob2o15bobobo16bobo17bobobo14bob2o15b2o18b2obobo14b2o3bo14b2ob2o15b
2o2bo16bo2b2o15bobo17bobobo15bo2b2o37b2o15bo$3bo2bo19bo19b2o15b2ob2o
15bo60bo38b2ob2o14b2ob2o15b2ob2o15bo42b2o16b3o16bo19bo18b2o18b2ob2o15b
2ob2o15bobo17b2o18b3obo15b2o$84bo19b3o17b3o113bobo18b4o38bo16bobo18bo
79b2o17bobo18bo20bo$83b2o18bo2bo16bo2bo113b2o18bo4bo54b2o19b2o97b2o40b
ob2o$84bob2o16b2o17b2o135b2o2b2o217bo2bo$84bo2bo396b2o$85b2o11$2b2o18b
2o18b2o18b2o18b2obo17bo19b2o18b2o18bo19b2o19b2o15b2o18b2obo16b2o18b2ob
2o15b2o3bo14b2o18b2o18bo19bob2o16bobobo15b2o18b2o18b2o18b2o$bo2bo16bob
o2b2o13bobo17bo2bo16bob2obo14b3o17b3obo15b3obo15b3o17b3obo14b2o2bo15bo
2bob2o13bo2b2o15bo2bo16bobobobo13bobo2bobo12bobo2bo14bo2bob2o13bobo17b
ob2obo14bob3obo13bobo17bobo17bobo17bob3o$obo2bo14bo2bobo2bo11bo5bo13bo
2bobo14bo5bo13bo5bo13bo4bo14bo4bo14bo19bo4bo14bobobo15b4obo14b2o3b2o
13bobo2bo14bobobo2bo12bobobo2bo12bobobobo13bo2bobobo12bo2bo16bo5bo13bo
5bo13bo4bo14bo4bo14bo19bo4bo$bob2obo14b2o2bobo13b6o14b2obobo14b3obo15b
6o14b4o16b4o16b3o17b4o17bob2o19bo16b2o2bo14bob2obo14bo3bobo13bo2bobo
14bobo2bo14b2o2bobo13b3o17b4obo14b5o15b5o15b5o15b4o16b3obo$3bo2bo18b2o
36bo2bo16bob2o76bo18bo19bo19b3o17bob2o17bo2bo19bo17b2o17bobo19b2o36bob
o17bo61bo18bo$3bobo37b2o18bobo37b2o16b2o20b2o18bob2o13bo19bobo19bo40bo
bo57b2o38b3o57bo19bo19b2o18bo$4bo38b2o19bo38b2o16b2o20b2o19bo2bo12b2o
18b2o62bo97bo2bo56bobo17bobo18bo19b2o$165b2o195bobo58b2o17b2o20bo$363b
o99b2o12$b2ob2o15bo3b2o14bo19b2ob2o15bo19bo19bo3b2o14bo19b2o18bo19b2ob
2o15b2o21b2o18b2o20bo15b2o19b2o17b2o20b2o17b2o20bo17b2o18b2o19bo19b2o$
obobobo13bobobobo13bobob2o14bobobobo13bobo17bobo17bobo2bo14bobo3b2o12b
o2bo16bobo17bobob2o14bo2bo16b2o2bobo13b2o2b2o14b2o2b3o14bo2bo17bo2bo
15bo2bo20bo17bobo18bobo16bo19bobo17bobo17bo2bo$o5bo13bobobo15bobobobo
13bobobobo13bo2bo16bo2bo16bo2bobobo12bo2bobobo12bobo17bobo17bobo17bo2b
3o14bo4bo14bo19bo2bo17bob2o17bo2bo15bobobo14b2obo16b2obobo14b2o2bobo
13b2obobo14b2obo2bo13bo2bobo14bo3b2o$b5o15b2obobo14b2o3bo14b2ob2o15bob
o17bobo17bobo2b2o13bobobo15bo3bo15bo3bo15bo2b2o15b2o3bo14b4o16b5o15bob
ob2o13b2obo16b2ob2o15b2o2bo15bob3o15bo2b2o15bobob2o14bobob2o14bobobobo
13b4ob2o13b4o$3bo21b2o16b3o36bo19bo19b2o18b2ob2o15b4o16b4o16b2obo16bo
2bo39bo16b2ob2o16bo17bobo17bo40bo19bo19bo19bo2bo37bo$43bo39b3o17b3o
116bobo16b2o20bo39bobo14bo2bo16bo20b2o17bobo17bobo17bobo18b2o17b2o18b
3o$86bo19bo55b2o18b2o39bo17b2o20b2o39bobo14b2o17bobo17bo2bo16b2o18b2o
18b2o38b2o18bo$85bobo15b3o56b2o17bobo121bo35b2o18b2o$86b2o15bo78bo12$b
2ob2o16b2o18b2o18bo19b2o18b2o21b2o17b2o17b2o19b2o18b2o18b2o17bo18b2o
17bob2o16b2o19b2o20bo15b2ob2o15b2o3bo14b2o18b2o18b2o22b2o18b2o$2bobo
16bo2bo16bo2bo16bobo19bo19bo17b2obobo16bobo17bobo17bobo17bo2bo16bo2bo
16b3o17bo2bo14b2o2bo15b2o2b2o14bo2bo17b3o16bobobo14bobobobo13bobob2o
14bobob2o14bobob2o14b2o2bobo13b2o2bo$o3bo15bo2b2o15bob2obo14bob2o16b3o
17b3o19bobo19bo20bo17bo19bo2bo17bobo19bo16bobobo16b2o20bo15b2o17bo19bo
3bo16bobobo15bobobo15bobo17bobo15bobobobo13bobobobo$4o16b2obo16bo2bobo
14bo19bo19bo21bobo16b3o17b4o16b3o17b2ob2o15b3obo15b3obo15b3obobo13b3o
17b5o35bo2b3o15b3o17bo2bo16bo2b2o15bo3bo15bobo17bo2bo16bo2b2o$23bo17bo
bob2o14b3o17bobo17b2o17bobob2o14bo19bo19bo19bo2bo16bo2bo16bo2bob2o13bo
5bo13bo2bo16bo2bo16b4o16b2obo2bo13bobo17bobo17bobo17bobo2b2o13bobob2o
14bobo17bobo$2o21bobo16bo20bo18b2o18bo2b2o13b2o18b2o19b2o17b2o18bo2bo
16bo2bo16bobo17b2o18bobo17b2o18bo3bo18bo16b2o18b2o18b2o18b2o18b2o18b2o
18b2o$2o22bobo36bobo18b2o16bobobo34bo20bo18bo19b2o18b2o18bo39bo41bobo
17b2o$25bo38bobo17bobo16bo37bobo16bo20bobo139b2o$65bo19bo56b2o16b2o20b
2o12$2b2o17bo22bo18b2o18b2o18b2o20bo18b2o20bo13bo2bo22b2o17b2o18b2o19b
o17bo20b2o19b2o18bo18b2o18b2o17b2o17b2o20b2o18b2o20b2o$o2bo16bobo17b2o
bobo16bo2bo17bobo16bo2bo18bobo16bo2bo18bobo12b4o21bobo16bo2bo16bo2bo
17bobo15bobo19bobo17bobo17bobo16bo2bo16bo2bo15bo2bo15bo2bo18bo2bo16bo
2bo18bobo$2obob2o13b2o18b2obobo15bobobo15bobo2bo14bob2obo16bobo17bobo
20bo36bo2bo17bobo17bo2bo16bo2bo15bo2bo20bo16bobo17bo2bo16bobo17bobo17b
obo15b3obo16bo2bo16bo2bo19bo$3bob2o36bob2o13bo2bobobo12bobobobo13bobo
3bo13b2o2bo15bo3bo15bo2b3o14b4o18bob2o16b2obo16b2ob2o17bobo17bobo16b4o
17b2o18bobo18bo19bo19bo19bo17b3o17b3o18bobo$3o17b4o16b3o17bobo3b2o12bo
bob2o14bobo3b2o12bob2o16b4o16b4o16bo2bo19bo19bo19bo18bob2o16bobob2o14b
obo17b2o18b2obo16b3o17b3o17b3o17b2o59bobo$o19bo3bo15bo20bo19bo19bo20bo
60bobo15bobo17bobo17bobo17bobo17bobo18bo18bobo17bobo17bo19bo19bo20bo
18b3o17b3o19bo$23bobo94bobo17b2o18b2o22b2o14bobo17bobo17bobo17bo2bo16b
obo17bobo17bobo17bo2bo16bobo19bo17bobo17bobo17bo2bo16bo2bo17b3o$23bobo
94b2o18b2o18b2o38b2o18b2o19bo19b2o18bo18b2o18b2o19b2o17bobo17bobo17bob
o17b2o19b2o17b2o18bo$24bo336bo18b2o19bo78b2o12$7b2o17b2o$7bo17bobo$5bo
bo16bobo$4bobo16bobo$3bobo17b2o$3bo17b2o$b3o16bobo$o19b2o$2o32$2b2o18b
o19bo18b2o18b2o18bo19b2o18b2ob2o15b2o2b2o14b2o2b2o14b2o2b2o14b2o18b2o
19b2o18bo19bo19b2o18b2o19b2o16b2o18b2ob2o19b2o17b2o18b2o18b2o$bo2bo16b
obo17bobo17bobo17bobo17b3o17bobo17b2obo16bo4bo14bo4bo14bo4bo14bo2b2o
15bo19bo2bo16bobo17bobo17bobo17bo2bo17bo2bo16bo2bo16bobo19bobo17bobo
17b2o18b2o$2bo2bo16bobo17bobo18bo19bo20bo17b2o20bo17b4o16b4o16b4o16b2o
2bo15b3o16b2obo16bobo17bo2bo16bo19b2obo17bob2o16bobobo15bobo16bo3bo15b
o3bo15bo19bo$3b3o17bobo17bo19b2o18b2o18bobo18b2o18b2o79bo19bo18b2o16bo
19b2obo16b4o16bobobo14b2obo16b2obobo14b2ob2o15b4o16b4o16b5o15b5o$25bo
39bo19bo17bobo18bo17b2o18b2o18b2o18b2o18b3o17b3o19bo40bo19bo16bo2b2o
17bo17bo2bo16bo62bo19bo$b3o17b4o16b5o15b4o18b2o16b2obo16b2obo16bobo17b
obo17bobo18bo19bo18bo20bobo15b5o17b3o17b3o15bobo18b3o16bobo17bobo18b2o
18b2o18b2o18b2o$o2bo16bo19bo4bo14bo22bo16bobo17bo2bo16bobo17bobo18bo
18bobo17bobo17bobo18bobo16bo4bo16bo18bo18b2o18bo19b2o18b2o18bo2bo16bo
2bo16bo2bo16bobo$obo17bobo17bobo17bobo17b2obo16bobo17bobo18bo19bo18b2o
18b2o18b2o18bo2bo16bobo20bobo14bobo17bobo37b2o59bobo17bobo17b2o17b2o$b
o19b2o18b2o18b2o17bobo18bo19bo119b2o18bo21b2o15b2o19bo100bo19bo$81bo
11$4b2o16b2ob2o16b2o18b2o17b2o21b2o17b2o16bo2bo16b2ob2o15b2ob2o15b2o
22bo17bo19bo19bo20bo15b2o3bo14b2o18b2o18b2o19b2o18bo19bo19b2o21bo$3bob
o17bobo16bo2bo16bo2bo17b3o18bo2bo16bobo15b4o16b2obo16b2obo16b2o2b2o16b
3o16bobo17bobo17bobo17b3o15bobobobo13bobob2o14bobob2o14bobob2o14bo2bo
16bobo17bobo17bo2bo19bobo$bo2bo16bo3bo15bo2b2o15bo2bo16bo4bo17bo2bo18b
o38bo19bo21bo15bo19bobo17bo2bo15bo2bo16bo20bobobo15bobobo15bobo17bobob
o13b2obo16b2o2b2o14b2o18b3obo18bobo$b3o17b4o16b2obo16b3o17b2obobo15b2o
b2o15b4o16b4o16b3o17b3o17b5o16bob2o17bo19bobo15bobo17bob2o17bo2bo16bo
2bo15b2obo17bo2bo17b2o20bo37bo16bo3bo$44bo37bob2o15bobo17bobo17bo3bo
15bo19bo19bo2bo16b2obobo14b3o17b3obo15b2ob2o15b2ob2o15bobo17bobo17bo2b
o16b3o17b3o17b5o15b4o16b3o17b4o$b3o17b2o18b3o17b3o16bo19bo2bo17bo18bob
o17bobo19bo17bobo17bo2bo16bo19bo2bo16bo2bo18bo17bobo17bobo17bo2bo16bo
19bo2bo16bo2bo16bo4bo14bo$o2bo16bobo17bo19bo2bo16b2o18bobo19bo17bobo
17bobo17bobo18bo18bobo17b2o18bo2bo16bo2bo16bobo18bo18b2o19b2o17b2o18bo
bo17b2o18b2o2bobo14bo19b2o$obo18bo18b2o18bobo38bo18bobo18bo19bo18b2o
39bo19bo19b2o18b2o17b2o99bo42b2o16bo17bo2bo$bo59bo58b2o119bobo217b2o
18b2o$242b2o11$4b2o19bo19bo16b2o16b2ob2o15b2o2b2o15b2o18b2o18b2o18b2o
3b2o13bo19bo19bo19bo19bo5bo16bo19b2o18b2o18bobo14b2o18b2o18b2o18b2o18b
2o18b2o$3bo2bo17bobo16b3o17bo17bobobo15bo3bo14bo2bo16bo2bo16bo2bo16bo
2bobobo12bobo17bobo17bobo3b2o12bobo17bobo3bobo11b2obobob2o11b2obo2bo
13b2obo2bo13b2obob2o13bo2bo16bo2bo16bo2bo16bo2bo16bo2bo16bo2bo$4bobo
16bobo16bo19bo18bo4bo14bobobob2o12b3o2bo14bo2bo16bo2bo16bobobo15bo19bo
bo2b2o13bobo2bobo12bobo17bobobo2bo12bobobobo13bobob2o14bobobo15bobo17b
2obo16b2obo16b2obo16b2obo16b2o18b2o$bo3bo15bo2bo16bo2b2o15bo20b4o16b2o
bo2bo15b3o15b3o17b3o17b2obobo14b3o17bo4bo14bobobobo14bo19bobobo13bobob
obo13bobobo15bob2o16bobob2o17bo19bo19bo19bo20bo$b4o16b3o17b2ob2o15b2o
43b2o15bo62b2o17bo17b4o16b2ob2o14bo19b2ob2o15bo3bo15bo2bo16bo19b2ob2o
14b2ob2o15b2ob2o15b2ob2o15b2ob2o15b5o15b4o$42bo39b2o38bobo17b3o19b3o
33b5o57bobo58b2o15bobo37bo2bo16bobo19bo19bobo15bo19bo4bo$b2o18b3o16bob
o18b4o17b2o38bobo17bo2bo17bo2bo33bo22b2o38b2o75b2o39bobo16bobo17bobo
19bobo16b3o16b2o2bo$obo17bo2bo16b2o18bo4bo57bo20bobo16bobo36bo20b2o40b
2o115bo18bo18b2o21bo19bo20b2o$bo19b2o37b2o2b2o79bo18bo36b2o62bobo$266b
2o11$2o18b2o18bo2b2o15b2ob2o15b2ob2o15b2o2b2o14b2o18b2o18b2o18b2o18b2o
18b2o18b2o18bo19b2ob2o15b2o2b2o14b2o2b2o14b2o2b2o14b2o2bo15b2o18b2o2bo
15b2o18b2obo16b2obo18b2ob2o$obo17bobo17b4obo14b2obo3b2o11b2obo16bo4bo
14bobo2b2o13bobo17bobo3b2o12bobo17bobo17bobo17bobob2o14b3o17b2obobo14b
o4bo14bo4bo14bo4bo14bo2bobo14bo2b2o15bo2bobo14bo2bo16bob2o16bob4o15bob
obobo$2bo19bo22bo17bo4bo14bo3b2o12b4o16b2o3bo14bobo17bobobo2bo13bo2b2o
15bo2b2o15bo19bobo18bo19bobo15b4o16b4o16b4o16b2o2bo15b2o2bo15b3obo15b
3o42bo13bo2bobo2bo$2b3o17b2o18b3o18bob3o15bobo2bo34b3o16bobo18bobobo
13bo4bo14b2obobo14b2ob2o15b2obo17b2o19b2o78b2o19b2o18bo36b3o17b4obo14b
2o3bobo$5bo36bo21b2o16b2ob2o16b2o18bo19b2o17b2ob2o15b4o16bo2bo16bob2o
16bob2o15bo19b2o18b2o18b2o18b2o18b2o18b3o17b3o17b3o17bo2bo16bo2b2o21bo
$2b3o17b4o14bobo60bo17bobo21b2o53bobo19bo19bo19b4o14bobo17bo2bo16bo2bo
18bo17bobo17bo2bo16bo19bo3bo18bobo$2bo19bo3bo13b2o59bobo17b2o22bobo34b
2o16b2o18bobo18b2o23bo14bo19bobo16bobo18bo18b2o19b2o17b2o18b2obobo18bo
bo$obo22bobo73b2o43bobo33b2o36b2o42bobo35bo18bo18bo83bo20b2o$2o23b2o
120bo116b2o74b2o12$2b2o3bo14b2o18b2ob2o15b2o2bo15b2o2bo16bob2o16b2o18b
2o18bo2bo16bob2o16b2obo15bo20bo21bo14b2ob2o15b2ob2o15b2ob2o21bo17bo19b
o16b2o18bobo17bob2o16bo19bo$bobo2bobo12bob3o15bobob2o14bob4o14bob4o14b
3obo15b3obo15b3obo15b6o14b4obo14b3ob2o14bobo17b3o20bobo14bobobo15bobob
o15bobo16b2o3bobo12b2obobo14b2obobo14bo2bo16bob2o16bob2obo14bobo17bobo
$o2bobo2bo11bo5bo13bo19bo19bo19bo4bo14bo4bo14bo4bo14bo19bo19bo19bobo2b
2o13bo3b2o14b2obobo14bo4bo14bo4bo14bo3bo15bobobo2bo12b2obo2bo13b2obobo
14bo2b3o14bo5bo13bo4bo14bo2bo16bo2bo$b2o2bobo13b4obo14b6o14b6o14b3ob2o
14b4o16b4o16b4o16b6o14b4obo14b3ob2o14bo4bo14b2obobo14bobo17b4o16b4o16b
2obo17bobobo16bob2o16bob2o14b2o3bo14b6o14b4o16b3o17b3o$5b2o18bo17bo2bo
16bo2bo16b2obo76bo2bo16bob2o16b2obo15b4o16bo2bo15bob2o57bob2o16bobob2o
15bo19bo19b2obo$23bo77b2o18b2o20b2o95bobo19bo18b2o20b2o17bo20bo17bobo
17bobo19bobo17b2o16b2o20b3o17b3o$23b2o76b2o17bobo19bobo77b2o16b2o18bob
o18b2o20b2o16b2o38b2o18b2o21bo18b2o16b2o19bo3bo16bo2bo$121bo21bo78b2o
36b2o200b2ob2o17bo2bo$485b2o12$b2o18b2o18b2o18b2o18b2o18b2o2b2o14bobob
2o14bo23b2o17b2o19bo16b2o20bo15b2o18b2o22b2o17b2o17b2ob2o14b2o18b2ob2o
15b2o19b2o18bo20b2o18bo$obo2b2o13bob3o15bob3o15bob3o15bob3o15bobo2b2o
13bob2obo14bobo17b2o2bobo13b2o2b2o14b2o2bobo14bo2bo17b3o16bo2b2o15bo2b
o18bobo17bobo17bob2o15bo19bobo17b3o16bo2bo16bobo19bo2bo14b3o$o5bo13bo
4bo14bo4bo14bo4bo14bo4bo14bo19bo5bo13bobo2b2o13bo4bo14bo19bo2bo2bo14bo
b2o16bo19bobobo15bobobo14b2o2bo15b2obo2bo13bo2bo16bobob2o14bo3bo15bo4b
o14bo2b2o15bo2bo16b2obob2o13bo$b5o15b4o16b5o15b4obo14b3obo15b6o14bob2o
bo14bo4bo14b4o16b5o15b2ob2o14b2obo16bobo17b2obo16b2obobo14bob2o16bobob
2o14b4o16b2obo2bo13b4o16b6o14b2obo16b3o17b2obo16bob2o$65bo18bo18bo2bo
15b2obo16b4o39bo16bo20bo17b2o18bob2o16bob2o37bo40bob2o56bo39bo17bobo$
3bo17b2o20bo19bo19bo77b2o18b2o17bobo20bobo17b2o16bo19bo19b3o16bobo17b
2o21bo16b2o20b2o19bobo16b3o15b3o20bob2o$2bobo15bobo19bobo18b2o17bo59b
2o16bobo18b2o17b2o22bobo16bobo14b2o18b2o18bo2bo16b2o18b2o20b2o16bobo
19b2o20bobo14bo3bo14bo22bo2bo$3bo17bo21bo38b2o58b2o17bo63b2o17bobo54b
2o78bo43b2o14b2ob2o38b2o$245b2o12$2bo23b2o18bo19bo18bo15b2o19b2o22bo
15b2obo18b2o15bob2o16b2ob2o15b2o18bob2o18b2o20b2o16b2o20bo18bo15b2o18b
2o18b2o3b2o13b2o2b2o18b2o16b2o$bobo17b2o2bobo13b2o2bobo17bobo16bobo15b
3o16bob3o15b2o2bobo13bo2b2o18bobo14b2o2bo15b2obo16bobob2o14b2o2bo16bo
2bo15b2obobo15bo2bo18bobo13b2obobo14bobob2o14bobob2o14bobo3bo13bo2bo2b
o13b2o2bo15bo2bo$ob2o16bobo2bo14bobo2bobo12b2o2bobo13b2o2bobo13bo4bo
15bo4bo14bo2bo2bo13b2o19b2o2bo17bo20bo17bobobo16bobo15bobo17bobo16bob
2o18bo2bo14bobobo16bobo17bobobo15bo2bo15b2obobo13bobobobo13b3o$o19bo5b
o13bo5bo13bo4bo14bo4bo14b2obobo16bobobo15bobobo15bob2o15bobobo15b2ob2o
15b4o16bobobobo13b2obobo16bo18bob2o15bo21bobo15bo2bo17bo2b3o14bo2bobo
14bobo17bo2bo16bo2bobo$b3o17b5o15b5o15b4o16b4o16bob2o15bobob2o14bobob
2o14bobob2o14bo2bob2o13bo2bo16bo19bobo3bo13bobob2o14b3o17b2o18b2ob2o
15bo3bo15b2o18bobo4bo12bobo3bo13bobob2o14bobo17bobo3bo13b3o$4bo18bo19b
o57bo18b2o18b2o18b2o18bobo17bo2bo16bobo18bo19bo18bo19bo19bo2bo16b4o16b
o19b2o18b2o18b2o18b2o18b2o18bo2bo$3bobo55b2o18b2o17b2o79bo19b2o18b2o
58b2o18bo19bobo37b3o118bobo$3bo2bo54b2o18b2o199bo17b2o20bo19b2o19bo
119bobo$4b2o274bo61b2o140bo$280b2o11$b2o18b2o18b2o21bo18bob2o15b2o19b
2o15b2ob2o21bo18b2o18bo20b2o18bo20bo19b2o18bo19b2o18b2o15b2ob2o$o2bo
16bobo17bo2bo16b2obobo17b2obo15bobo17bo2bo14b2obobo16b2obobo16bo2bo16b
obo18bobo17bobo17b3o18bobo17bobo17bobo17bobo16bob2o$3obo15b2o18b4o16b
2obobo15b2o21bo18bobo17bobo16bo3bo17bo2bo16bo2bo14b2o2bo17bo2bo16bo21b
o19b2o18b2o18b2o17bo$3bobo57b2o15bobob2o14b4o16bo3bo15b2o2bo18b3o16b2o
b2o15b2obobo14bob2o18bobo17bob2o16bobo17b2o18b2o18b2o17bobo$2o2bo15b4o
16b4o16b2o18bobob2o14bo19b4o16bo42bo19bo2bo16bo18bob2o16b3ob2o15bobo
17bobo17bobo17bobo17b2o$o19bo3bo15bo3bo15bo20bo21b3o35bo19b3o17bobo17b
obo17bobo17bobo17bo21b2o18b2o18bo19bo17b2o$bo21bobo17bobo15bo41bo2bo
13b2o18b2o18bo2bo16bobo17bobo17bobo17bo2bo16bobo18b2o18b2o17b2obo17bob
o16bobo$2o21bobo18bo15b2o43b2o13bobo37b2o18b2o18b2o18b2o18bobo18bo18bo
bo17bobo17bobo17bobo18bo$24bo96bo119bo38b2o18b2o19bo18b2o32$2b2o18b2o
17b2o18b2o18b2o2b2o15b2o18bo19b2o18b2o19b2o16b2o18b2o18b2ob2o18b2o18b
2o16b2ob2o16b2o18b2o19bo21bo15b2o18b2o17b2o3bo14b2o2b2o14b2o$bo2bo16bo
2bo16bo2b2o15bobo17bo4bo14bo2bo16bobo17bo2bo16bo2bo17bo2bo16bo2b2o15bo
2bo16bob2o18bobo17bobo16bobo16bo2bo16bob3o17b3o18bobo14b2o2b2o14bo2b2o
14bobobobo13bobo2bo14bobobo$2bobo17b2o19b2obo15bobo17b4o15b2obo16bobo
17bo2bo16bo2bo17bobobo15bobobo15bobobo15bo18bo4bo14bo4bo14bo3bo15bo2bo
bo15bo4bo19bo15b3ob3o17bo15b2o2bo15bobobo15b3o17b2obo$3bo42bo16bobo38b
2o16bo19b2o18b2o17b2obo2bo13b2obo16b2obo2bo13b2ob2o15b5o15b5o15b4o16b
2obo2bo15bobobo14b4obo14bo7bo11b5o19bo16bo2bo15bo19bo3bo$22b4o17b3o19b
o16b2o20bo77bo2b2o17bo17bo2b2o15bob2o76bo2b2o14bobob2o14bo3b2o14bobo5b
2o10bo2bo16b5o15bobo17bobo17bob3o$b5o16bo3bo16bo17b4o16bobo17b2obo15b
5o15b4o16b4o16bobo18b3o16bobo17bo20b3o17b3o17b2o17bobo17bobo17bobo17bo
bo17bobo17bo2bo16bobo17bo2bo16bo2bo$o4bo14bobo2b2o14bobo16bo19bobo17bo
2bo16bo4bo14bo3bo15bo2bo16b2o18bo19b2o18b2o18bo2bo16bo2bo16bo2bo16b2o
19bo18bobo18bo18b2o18b2o18b2o18bobo18b2o$obo17b2o18bobo17bobo17b2o18bo
bo19b3o18bobo17bobo34b2o59b2o17b2o19b2o58bo99bo$b2o38bo19b2o38bo19b2o
21b2o18b2o12$2b2o18b2o18bo19b2o20b2o19b2o18b2o18bo17b2o20b2o18b2o14bo
5b2o12b2o18b2ob2o15b2o18b2o18b2o18b2o18b2obo16b2o18b2o18bo19bo19b2o21b
o$bo2bo16bo2bo16bobo17bo2bo16b2o2bo15b2obobo14b2obobo14b2obobo16bobo
18bo2bo17bo14bobo3bo2bo10bo2bo16bo2b2obo13bo2bo16bo2bo16bo2bo16bo2bo
16bo2b4o13bo2bo16bo2bo16bobo17bobo17bobo2b2o13b2obobo$b2o2bo15b2o2bo
15b2o18b3obo15b2obo16b2obo16b2obo16b2obobo18bo18bobo15b2obo15b2o3bob2o
11bobo17bo4bo14bo2bo16bo2bo16bo2bo16bo2bo16bo5bo13bobo2b2o13bobo17bobo
17bo3bo15bo4bo14bobo2bo$3b3o17b2obo38bo18b2o18b2o18b2o18b2o15b4o16bo3b
o15bo2bo18b2obo15bo19b4o16b3o17b3o17b3o17b3o17b3obobo13bo4bo14bo3bo15b
obo17b4o16b4o15bo2b2o$b2o18b2o2bo15b4o16b4o16b3o17b3o17b3o17b3o17bo19b
4o16b3o19bob2o137bob2o15b4o16b4o17bo57b2o$o2bo16bo2bo16bo4bo14bo19bo2b
o16bo2bo16bo2bo16bo2bo19b2o75b5o17b2o18b3o17b3o19b3o17b3o76bo18b4o16b
2o19bo$o2bo16bobo17b2o2bobo13bobo17bobo18b2o17b2o19b2o21bo16b2o18b3o
36bo4bo16b2o18bo2bo16bo2bo17bo2bo16bo3bo35b2o18b2o18b4o14bo3bo15bobo
19bobo$b2o18bo23bobo13b2o18bo81bo16bo2bo16bo2bo39bobo38bobo16bo2bo15bo
2bo17b2ob2o35b2o17bobo22bo12bobo18b2o21b2o$46bo113bobo18b2o18b2o40b2o
40b2o17b2o17b2o77b2o21bobo13bo$160b2o263b2o11$b2o18b2o18b2o2b2o13b2o
18b2o4b2o12b2o3bo14b2o18bob2ob2o13bo2bo2bo13b2ob2o15b2ob2o15b2ob2o15b
2ob2obo13b2o3b2o13b2o18b2o18b2o18b2o5bo12b2o2b2o14b2o3b2o13b2o18bo2bo
16b2o2b2o16b2o19bo$o2bo16bo2bo16bo2bo2bo13bobo17bobo2bobo12bobobobo13b
obob2o14b2obob2o13b7o13b2obobob2o11b2obobo14b2obobo14b2obob2o13bo2bo2b
o13bobo17bobo17bobo17bobo3bobo11bo2bobo14bobobo2bo12bobo17b6o14bo4bo
15bob3o15b3o$b2o2b2o14b2o2b2o14b3obo17bo18bo3bo15bobobo15bobobo16bo39b
obob2o14bobo17bob3o15bo17b5o15bo2bo16bobo17bobob2o14bobobo2bo12b2obo
17bobobobo13bo2b2o19bo14b4o15bo5bo13bo$3b2obo19bo17bo19bo17b4o16bob2o
16bo3bo16bob2o15b2ob2o16bobo17bobob2o14bo4bo14bob2o35b3o17b2o19bobobo
15bobobo14bobobo14b2obo2bo14bobobo15b3obo34b6o14b5o$b2o18b5o15b3o19b2o
38bo19b3o16b2ob2o15b2ob2o17b2o18b2ob2o13b2o3b2o13b2ob2o16bo58b2o2bo15b
2ob2o15bo2b2o18b2o14b2o2bo15bo2b2o15b2o42bo$2bo17bo2bo16bo41b2o17bobo
17bobo138bobo17b3o17b4o17bo37b2o39bo18b2o17bo2bo19b2o16b2o$2bobo15b2o
18b2o19b4o17b2o17b2o18b2o139bobo17bo2bo16bo3bo15bo79bobo35bo2bo19b2o
15bo2bo$3b2o55bo4bo197bo20bobo18bobo14b2o79b2o36b2o38bobo$60b2o2b2o
219b2o19b2o174bo12$3b2o18b2o18bo20b2o16b2o3bo14b2o21bo14b2ob2o19b2o17b
o3b2o15b2o18b2o15bob2o16bob2obo14bobo2bo14bobo17bob2obo14bob2obo14bobo
2bo14b2o18b2o18b2o18b2ob2o15b2ob2o15b2o$b3obo15b3obo15b5o15bo2bo16bo2b
obobo12bob3o18bobo14bobobo14b2o2bobo13bobobobo2bo10bo2bo2bo13b2obo2bo
13bob2obo14bob2ob2o13bob5o13bob2o16bob2ob2o13bob2ob2o13bob5o13bobo2b2o
13bobo17bobo17bobob2o14bob2o2bo13bob3o$o4bo14bo4bo14bo5bo13bobobo15bob
obobobo11bo5bo13b2obo2bo13bo4bo14bobobobo13b2o2bobob2o10b4o2bo13b2obob
o14bo4bo14bo19bo19bo3b2o14bo19bo19bo19bo5bo13bo4bo14bo4bo14bo19bo4bo
14bo4bo$b4o16b4o16b6o14b2obob2o13bo2bob2o13b2obobo14bobobo15b4o17bob2o
18bobo17b2o17bob2o14b4o16b3ob2o14b3ob2o14b3o2bo14b6o14b3ob2o14b3ob2o
14b5o15b5o15b5o15b5o15b4o16b4obo$64bob2o14b2o18bob2o15bob2o37bo22b2o
15b2o19bo39bob2o16bob2o16bob2o16bo2bo16b2obo16b2obo78bo40bo$b2o18b2o
20b2o19bo35bo21bo18b2o17bobo38bobo17bobo17b2o60bo79bo17b3o17b3o19bo17b
2o20b3o$bobo16bo2bo19b2o18b2o35b2o18bobo18bobo16b2o39b2o18b2o18bobo58b
2o78bobo15bo2bo16bo2bo19b2o16b2o20bo$2b2o17b2o97b2o20bo99bo139b2o17b2o
17b2o13$b2o18b2o18b2obo16bo3bobo13bo2b2o15bo19bobo2bo14bo5bo13b2ob2o
15bo19bo19b2ob2o19b2o14b2o18b2ob2o16b2o18b2o20bo20b2o16b2o18b2o18bo18b
2ob2o14b2o19b2ob2o$ob3o15bob3o15bobob3o13bobobob2o12bobo2bo14bobob2o
14bob5o13bobo3bobo11bobobobo13bobo3bo13bobo17bobob2o14b2o2bobo13bo2bob
o14bo2b2obo14bo2bo16bo2bo17b3o19bobo16bobo17bobo17b3o17bobo16b3o16bobo
b2o$o4bo14bo4bo14bo6bo12bobobo15bobobo15bobobobo13bo19bo2bobo2bo11bo2b
o2bo13bobo2bobo12bobo2b2o13bobo17bo3bo15b2ob2obo13b2o4bo14bobobo15bob
2o16bo18b2o2bo15bo4bo14bo4bo14bo5bo13bo2bobo14bo4bo14bo2bo$b4o16b4o16b
3obobo13b2obob2o13b2ob2o15b2obobo14bobob2o14bobobobo13bobobo15bo4bo14b
o4bo14bob3o16bob2o15bo4bo14bob3o14b2obobo14b2o18bobo3b2o12bobobobo13b
5o15b5o15b5obo13b3obo15b6o14b4o$43bob2o18bobo15bo2bo16bobo16b2ob2o15b
2ob2o15b2ob2o15b4o16b4o16bo2bo15b2o2bo15bob3o15bobo19bob2o15b3o16bobob
obo14bo2b2o57b2o17bo$b2o18b2o60bobo17bo119b2o15bo2bo18b2o18bo17b3o19bo
2bo17bobo14bobo17b3o17b3o17b2o18b3o19b2o16b2o$o2bo16bobo61bo17b2o78b2o
18b2o37b2o57bo22bo2bo16bobo14b2o18bo2bo16bo2bo16b2o18bo21bobo15b2o$b2o
17b2o160b2o17bobo120b2o18bo37b2o17b2o60bo$202bo12$2bo19bo19bo22b2o18bo
18b2o16bob2o17b2o18b2o18b2o21b2o13bo2b2o15bo2b2o15b2ob2o15b2ob2o15b2ob
2o15bob2o16bo2bo17b2o18b2o17b2o21b2o17b2o15b2o18b2o3b2o$bobo17bobo17bo
bo20bo2bo16bobo16bo2bo14bob2obo16bobo17b2o18b2o17b2obobo13b4obo14b4obo
14b2obobo14b2obobo14b2obobo14b2o2bo15b6o14bo2bo16bo2bo16bo2bo17b3obo
15bo2bo14bobob2o14bobobobo$o2b3o14bo2bo16bob2o16b2o2bobo13b2o2bobo13b
2o2bobo14bo5bo17bo57bobo20bo19bo18bo18bobo19bo17bobo20bo14b2obo16b3o
17b3o16bo4bo14bob2o17bobobo15bobo$3o3bo13bobo17bo3b2o14bo4bo14bo4bo14b
o4bo16bob3o14b4o16b4o16b4o16bobobobo13b5o15b3obo15b4o16b2o2bo15b5o15b
2obobo14b2o2bobo17bo55bo2b2o15bo20bo2bobo14bobo$3bob2o14bo19b2o2bo15b
4o16b4o16b4o15bobobo15bo19bo4bo14bo4bo14bobo3b2o12bo2bo16bo2b2o15bo19b
o2b2o15bo2bo16bobob2o14bobo2b2o13b5o15b5o15b5o15b2obo16b2ob2o15bobo3b
2o12bobob2o$3o19b3o18b2o75b2o18b3o18b4o16b4o15b2o18b2o18b2o18bobo17b2o
18b2o18b2o19bo18bo19bo4bo14bo4bo14bo2bo17bobo16b2o18b2o$o24bo17bo17b2o
18b2o18b2o40bo117b2o100b2o18bobo17bobo15b2o17bo2bo$24bobo17bo16b2o17bo
bo18b2o37b3o20b2o16b2o180b2o18b2o18b2o36b2o$24bo2bo15b2o36bo58bo22b2o
16b2o$25b2o11$2o18b2o18b2o3bo18b2o20bo16b2o16b2o18b2o21b2o18bo19b2o18b
o15b2o18b2o3b2o18b2o15b2o23bo15b2ob2o18bo15b2ob2o19b2o17b2o20b2o$obob
2o14bobo3b2o12bo2b3o14b2o2bobo13b2o3bobo12bo2bobo14bobo17bo2bo16b2obo
2bo13b2obobo17bobo17bobo14bobo17bobobobo18bobo15bo2bo18b3o15b2obo15b2o
bobo14b2obobo17bobo16bo2bo19bo$2bobobo14bobo2bo14b2o17bobobo2bo12bobob
o2bo12b3o2bo14b2o18b3o17b2obobo14b2obobo17bo17b3obo16bo19bobo17b2obobo
15bobobo16bo21bo15b2obobo17bobo17b2o16bobobo16b2obo$2bobobo15bobobo15b
ob2o16bo2bobo14bobobo16b2o58b2o18b2o15b2obobo14bo3bo15bo2b2o15bobobobo
16bob2o15b2obobo16bob2o15b3o19b2o15b2o2bo16b2o18bo2bo16bo2bo$obob2o14b
obob2o14bobob2o14bobo3bo13bobob2o14b2obo16b4o16b3o17b2o18b2o18bobob2o
14b4o16b2obo16b2o3b2o16bo19bo2bo15bob2obo14bo19b2o18bo21bo19b2o17bobo$
2o18b2o18b2o18b2o18b2o18bo2bo16bo3bo15bo2bo16bo19bo21bo40bo37bobo17bob
o17bobo17bobo18bo17bobo18b3o17b3o17b2obo$101b2o20bobo16bobo16bo19b3o
16bobo17b2o21b3o34bobo17bobo17bo2bo16bo2bo16bobo17b2o18bo19bo2bo16bo2b
o$123bo2bo16bobo14b2o21bo16b2o18bobo23bo33b2o19bo19b2o18b2o17b2o38bob
2o17b2o17bobo$124b2o18b2o75bo23b2o154bobo37bo32$2b2o18bo19b2o18b2o17b
2o18b2o2b2o17bo17bo19bo19bo19b2ob2o15bo18b2o18b2ob2o15b2ob2o18b2o16b2o
18b2ob2o19bo17b2o15b2ob2o19bo16b2ob2o18b2o15b2o$bo2bo16bobo17bo2bo16bo
2bo16bo19bo4bo15b3o16bobo17bobo17bobo17bobobo15bobo18bo2b2o15bobobo14b
2obobo17bobo16bo19bobo19bobo14b3obo15bobobo17bobo15b2obobo13b2obobo14b
o2bo$2bo2bo16bobo17b2obo16b2o18bo3b2o14b4o15bo19bobo17bo2bo16bo2bo16bo
3bo15bo2bo17bobo2bo14bobobo17bobo14bo4bo14bo19bo3bo15b2obobo14bo4bo14b
o4bo17b2o21bo14bobo16b2obo$3b2obo16bo19bobo37bo2bo35b3o17bo19b2obo16b
3o17b3o17bobo16b2obo2bo13b2ob2o15b2ob2o15b5o15b2o18b4o16b2obo16bob3o
15bob3o16b2o18b5o15bo2bo18b2o$6bo36bob2o15b4o18bobo15b4o19bo39bo57bo
18bo2b2o15bo19bo81b2o16bo19bo18bobo17bo2bo16b2ob2o15b2o2bo$b3obo15b5o
14b2obo17bo4bo15bob2o15bo3bo14b5o15b5o17b3o15b5o15b3o37bobo17bobo17bob
o18b3o17b4o16b2o18b3o19bo19bo17bo18bobo19bo17bo2b2o$o2b2o15bo5bo13bo2b
o16bobo2b2o14bobo16bobo17bo19bo4bo15bo18bo4bo14bo2bo17b5o14b2o18b2o18b
2o18bo2bo16bo4bo14bo2bo16bo2bo17bobo16b3o17b2o19bo18bobo17bobo$2o18bob
o2b2o14b2o17bobo17bo2bo17bo21b2o16b3obo14bobo20bobo16b2o16bo4bo74bobo
18b3obo15bobo17b2o17bobo17bo20bob2o35b2o19b2o$21b2o38bo19b2o40b2o18b2o
15bo2bo19b2o35bobo78bo21bob2o15bo38bo39bo2bo$161b2o58b2o199b2o11$2b2o
21b2o18b2o18bo19bo19bo19bo18bo20b2o13b2ob2o16bo19bo19bo19bo22bo16b2o
18b2o18b2o18bo3bo15bo19bo18b2o3b2o13b2o3bo14b2o5b2o11b2o$bo2bo16b2obob
o14b2obobo14b2obobo14b2obobo17bobo17bobo16bobo20bo14bobobo14bobo17bobo
17bobo17bobo17b2obobob2o11bo2bo16bo2bo16bo2bo16bobobobo13bobo17bobob2o
14bobobo2bo12bobobobo13bo5bo2bo10bobob2o$b2obo16b2obo16b2obo16b2obobo
14b2obobo15b3obo17bobo17bobo18bo15bo3bo15b2o18bo2bo16bo19bobo17bobobob
o13b2obo16b2o18b2o18b2obobo14b2o18b2obobo15bobo2bo14bobob3o12b3obobo2b
o11bobobo$4bobo17b2o18b2o18b2o19bo15bo3bo15bo3bo15bo4bo14b2obo17b3o18b
2o17b3o17b3o17bobo16bobobobo16bo59b2o40bo15bob3o15bobo4bo13bobo2b2o11b
o4bo$b3ob2o14b2o2bo15b3o17b3o17b4o16bob2o16b4o16b5o15b2ob2o37bobo38bo
18b2o17b2ob2o14b3o17b4o16b4o16b3o17b4o16b5o17bo19b2o3b2o14b2o16b4o$o2b
o16bo2b2o15bo2bo16bo2bo16bo19b2obo60bo15b3o22bo16b5o17bob2o52bo19bo4bo
14bo4bo14bo2bo16bo4bo14bo2bo20bo$bobo16b2o18bobo17bobo17bobo17bo2bo17b
2o18b3o17b2obo15bo2bo17b4o17bo4bo17b2obo12b4o35b2o18b2o2bobo13b2o2bobo
14b2o18b4o15b2o21b2o57b2o$2bo38bo19bo19b2o18b2o17bo2bo16bo2bo16bo2bo
18b2o16bo24bobo20bo11bo4bo35bo23bobo16bobo135b2o$120bo2bo17b2o18b2o37b
obo22b2o18b3o12b2o2b2o35bobo22bo18bo37b2o$121b2o78b2o42bo56b2o79b2o11$
2o18b2o18b2o3b2o13b2o3bo14b2o18b2o3b2o13b2o3b2o13b2o2b2o14b2o18b2o18b
2o18b2o20bo19bo19b2o19b2o15b2ob2o21bo14bo19b2o18b2o18b2o18b2ob2o15b2ob
2o15b2ob2o$obobo15bobo3bo13bobobobo13bobobobo13bobob2o14bobobobo13bobo
bobo13bobo2bo14bo2b2o15bo2b2o15bo2b2o15bobo18bobo17bobo17bob3o15b3obo
15bobobo14b2o3bobo12bobo17bobo17bobo2b2o13bobo17bobobo15bobobo15bobob
2o$2b2obo16bo2bobo14bobo17bobobo15bobobo15bobo17bobo18b2o16b3obo15b3ob
o15b3obo16bo2b2o13bo2bo16bo2bo16bo5bo13bo4bo14bo4bo14bobo2bobo12bo2bo
16bo2b2o15bo5bo13bo19bo4bo14bo5bo13bo$bo3bo15b2obo2bo13b2ob2o15b2ob2o
15b2obobo14b2ob2o15b2obo40bo19bo20bo14b2obobo14b2o18b2o18b6o14b4o16b4o
17bo3bo14b3o17b2o2bo15b5o15b4o16b4o16b6o14b5o$2b2ob2o15bo2b2o15bo19bo
19bo2bo16bobo17bob2o15b4o16b4o16b4o16b5o15bo2b2o116b4o38b2o39bo60bo$3b
o16bobo17bobo17bobo17bobo19bobo17bo17bo4bo15bo18bo20bo20bo18b4o16b4o
18b2o16b2o18b2o38b5o15b3o19bo17b4o16b2o20b2o18b3o$bobo16b2o18b2o18b2o
18b2o21bo17b2o17b2o2b2o16bo17bobo20bo19b3o14bo4bo14bo4bo17bobo14bo2bo
16bo2bo18b2o16bo4bo14bo2bo18bobo15bo19bobo20b2o18bo$b2o160bo17b2o19b2o
21bo15b3obo14bob3o19bo15bobo18b2o19b2o16bobo18b2o19bobo15bobo17b2o$
162b2o79b2o16b2o38bo59b2o40bo17b2o12$b2ob2o15b2ob2o15b2o18b2ob2o15b2ob
2o15b2o18bo19bo19bo19b2o21b2o18b2o16b2o19b2o18b2o19b2o15b2ob2o16bo19bo
19bo22b2o18bo19b2o19bo18bo$obob2o14bobob2o14bobo17bobobobo13bobobobo
13bobo17bobo17bobo17bobob2o14bob3o15b2o2b2o14b2o2b2o15bob3o17bobo17bob
o17bobo16bob2o15bobo17bobo17bobo17b2obobo14b2obobo14b2obo2bo13b2o2bobo
16bobo$o19bo19bo2b2o15bo4bobo12bo3bo2bo12bobob2o14bo2bo16bo2bo16bobobo
bo13bo4bo14bo19bo20bo4bo13bo4bo14bo4bo14bo2b2o15bobo17bo2bo16bob2o16bo
bo17bobobo15bobobobo13bobob2obo12bob4obo12b2o2bobo$b5o15b5o15b2o2bo15b
3obobo13b3obobo13b2o2bo15bobo2b2o13bobo2b2o13bo4bo14b2ob2o15b7o13b5o
14b2ob2obo13b5o15b5o15b3o17b2o2b2o14b3o17bo3b2o14bo4bo14bo4bo14bo4bo
14bo5bo13bo5bo13bo4bo$6bo18bo17b3o17bob2o16bob2o16b2o17bo4bo14bo4bo14b
4o16bobo22bo17bo17bobo57b2o20bo35b2o2bo15b5o15b4o16b4o16b5o15b5o15b4o$
3bobo15b2o18b2o58b2o20b4o16b4o34bo2bo18b2o16b2o17b3o17b3o17b3o17b2obo
20bo15b2obo19b2o78bo19bo$3b2o16b2o17bo2bo56bobo59b2o17bobo19b2o15bo2bo
16bo19bo2bo16bo2bo16bo2bo17bobo16b2ob3o15b2o18b3o17b2o18b2o58b2o$41b2o
57b2o23b2o16b2o17b2o18bo38b2o39bobo16bobo17b2o18b2o23bo13bobo17bo2bo
17b2o18b2o57bobo$125b2o16b2o118bo18bo62b2o14bo19b2o97b2o12$2ob2o17b2ob
2o16b2o18bo17b2o18b2ob2o15b2o2b2o14b2o3b2o15b2o16b2ob2o18bo16b2o3bo14b
2o18b2o21b2o17bo16bo22b2ob2o15b2o21b2o17b2o16b2o$bobobo17bob2o16b2o17b
obo16b2o2b2o14b2ob2o15b2o2b2o14bobobobo14bo2bo14bo2b2obo13bo2bobo14bo
2bobobo12bo2bob2o13bo2bob2o13b2obobo17b3o14b3obo17bobobo15bo2bo16b2obo
2bo15bo2bo15bobob2o$o2bobo16bo39bobo21bo56bobo15bobobo14b2o4bo13b4obo
14b2obobobo12b2obobobo12b2obobo14b2obo17b2o3bo16b2o17bo3bo15b2obo16b2o
bobo15bob2o18bob2o$3obo16bob4o14b4o16b2ob2o15b5o15b5o15b6o14bobobobo
13bobob2o14bob3o18bo18bob2o16bobobo15bobobo15bobo14bo2b3o14b2o21b3o17b
obobo17b2o15bobo20bo$3bo16bo2bo2bo13bo4bo14bo4bo14bo19bo4bo14bo2bo2bo
13bobo3b2o12b2obo16bo2bo16b4o16b3o17b3o3bo13b3o3b2o12b2o2b2o14b2obo16b
2ob2o38bo2b2o14b2o18bobo18bobo$3o17bobo17bob3o16b4o15b2o2b2o14bobo17b
2o19bo21bo17b2o17bo19bo19bo19bo19bo22bo19bobo15b3o17bobo18bo17b2obo19b
2o$o20bo19bo42b2o15b2o57b3o38b3o78bo17b3o20bo2bo13bo2bo16bobo17bobo18b
o19b2o$42b3o18b2o95bo42bo77b2o17bo23b2o14b2o18b2o18b2o19bobo16bobo$44b
o18b2o337b2o17bo32$2b2o17b2o3bo14b2o20bo20bob2o14bo19bo20b2o19b2o18b2o
18bo21bo19bo18b2o16b2o18b2o17b2o2b2o14b2o21b2o18bo20b2o17b2o14b2o18b2o
18b2o$bo2bo16bobobobo13bobob2o15bobo17b3obo14bobo17bobo18bo2bo18bobo
17b2o16b3o20bobo17bobo16bobo15bo2bo16bo2bo16bo4bo13bo2bo16b2obo2bo13b
2obobo18bobo15b3obo12bo2bo16bo2bob2o13bo2bo$2bobo18bobobo15bobobo13bo
2bo16bo4bo14bo2bo16bo2bo17bob2o15bo4bo14bo19bo19b2obo2bo13b2obo2bo16b
2o17b3o17b3o17b4o14b2obo16b2obobo14b2ob2o16bo2bo16bo4bo13bo2bo16bobobo
bo13b3o$3bo18b2ob2o15b2obobo14b2o18b4o16b2o18b3o16b2obo16b5o15b5o15b2o
18b2obobo14b2obobo15b2o80bobo17b2o35bobobo15bo2b3o15b3o17bo4bo16b2o$
23bo19bo2bo98bo39bo38b2o18b2o15bobo17b5o15b5o15b4o16b3ob2o14b3o17b5o
15bobob2o14b2obo38b4o14b2o2bo$b5o15bobo17bobo18b4o16b2o18b4o16b3o16b4o
16b3o17b4o16b4o16b3o17b3o17b2o17bo5bo13bo5bo13bo4bo14bo2bo16bo2bo16bo
4bo14b2obo18bo19b5o33bob2o$o5bo13bobo17bobo18bo4bo15bo18bo4bo14bo3bo
14bo19bo3bo15bo19bo4bo14bo2bo16bo2bo36b2o2bobo13bobo2b2o13b2o2b2o14bo
2bo16bobo17bobo17bo2bo16bobo19bo4bo15b2o15bo$2o2bobo14bo19bo18bobo2b2o
13bobo18bob3o14bobobobo13bobo17b2ob2o15bobo18b3obo15b2o17b2o19b4o19b2o
15b2o38b2o18bo19b2o18b2o17b2o23bobo15b2o16b3o$4b2o54bobo17b2o18b2obo
17bo3b2o14b2o38b2o20bob2o53bo3bo180b2o36bo$61bo198b2o11$b2o18b2o18b2o
18b2o18b2o17b2o18b2o2b2o14b2o18b2o3b2o13b2o18b2o18b2ob2obo13b2o2b2o14b
2o18b2o2b2o14b2o3bo16b2ob2o15b2o18b2o18b2ob2o16bob2o16b2o18b2o18bo17b
2o$o2bo16bo2bo16bo2bo16bo2bo16bo2bo16bo2bo16bo2bob3o12bobob2o14bobobo
2bo12bobob2o14bobob2o14b2obob2o13bo4bo14bo3b2o14bo2bo2bo13bobobobo14bo
bobobo13bob3o15bob3o15bobob2o14b3ob2o14b3obo15b3obo15b5o14bo2bo$b2o18b
3o17b3o17b3o17b3o17b3o17b3o4bo13bobobo15bobobo15bobobo15bob2o17bo17b4o
16b4obo14b3o2bo15bobobo13bo6bo12bo5bo13bo5bo13bo2bo16bo19bo4bo14bo5bo
13bo5bo13b2obo$124bobobo12bo4bo14b2ob2o15b2obo2bo13b2o20bob2o39bo17b2o
15bo3bo15b6o14b5o15b6o14b2ob3o14b6o14b4o16b5o15b5o17bob2o$b4o16b3o17b
3o17b3o17b3o19b3o17b2ob2o14b4o16bo19bo2b2o15bob2o15bobob2o14b4o16b5o
15b3o17b4o78bo2bo19bo76bob2o$o4bo14bo3bo15bo3bo15bo3bo15bo3bo18bo2bo
53bobo17bobo17bobob2o15b2o17bo4bo14bo2bo16bo2bo39b2o16b3o19b2o18bobo
17bobo15b2o18b3o17b3o16b2obo$b4o16b4o16b4o15b4o16b2o2b3o18b2o35b2o16b
2o18b2o18b2o38b2o2b2o14b2o18b2o21b2o18b2o15bo2bo18bobo19bo18b2o15bo2bo
16bo2bo16bo2bo16bo2bo$87bo19b2o33bobo158b2o36b2o19b2o56bo2bo17b2o18b2o
18b2o$b2o20b2o16b2o19b2o22b2o19bobo33bo277b2o$b2o20b2o16b2o19b2o44b2o
11$b2o18b2ob2o15bo19b2o18b2ob2o15b2ob2o15b2o18bo19bo19b2o18bo19bo19bo
22b2o15b2o19bo19b2o19b2ob2o16b2o16b2o16b2ob2o18b2o16b2ob2o16b2o18bo$o
2bo16bobobobo13bobo17bobo2b2o13bobobo15bobobobo13bob3o15bobob2o14bobob
2o14bo2bo2b2o12bobo17bobob2o14bobo17b2o2bobo13bo2bo17bobob2o14bo2bo19b
obobo15bo16bobo17bobobo17bobo16bobobo14bob3o15bobob2o$2obo16bobo3bo13b
o2bo16bo5bo13bo5bo13bo3bobo13bo4bo14bobob2o14bobobobo13bobo2bobo12bobo
17bobobobo13bo2bo16bo5bo13b2obo17bobobobo13bob2o16b3o4bo12b2obo16bobob
2o14bobobo14bo4bo14bobo3bo13bo5bo13bo2bobobo$3bob2o14bob3o15b3o17b5o
15b6o14b3obo15b3o2bo14b2o18b2o3bo14bo4bo14bo19bo4bo14b2o2bo15b5o15bo2b
2o14b2obobobo12b2o18bo2bob3o12bobob2o14b2obob2o13b2obob2o13b5o15b2ob3o
14b5obo13b4obobo$3bob2o16bo80bo18bob2o17b2o17b3o16b4o16b3o17b4o16bob2o
35bo4bo16bob2o15b3o16bobobo15bo3bo15bobo19bo2bo36bo20b2o20bo$2b2o17bob
o17b3o17b3o19b2o16b3o21bo15b2obo18bo41bo36bobo16b3o18b4o17bo18bo2bo16b
o22bob2o11bo2bo19bobo14b3o17b3o17b2o18b2o$3bo17b2o17bo3bo15bo2bo19bobo
15bo21bobo15bo2bo16bobo18b2o18b2obo18b2o15b2obo15bo2bo38b2o19bobo40bo
2bo10bobo21bo15bo2bo16bo19b2o18b2o$3bobo34bobobo16b2o21bo38b2o17b2o17b
2o19b2o19bob2o16bobo14bo2bo17b2o21b2o36b2ob2o40bobo11bo40bobo$4b2o35b
2ob2o157bo2bo17bo15b2o42b2o82bo54b2o$204b2o11$2b2o19b2o18b2o18bo20b2o
20bo15bo22bo18b2o19b2o15b2ob2o16b2o18b2ob2o15b2o20b2o14b2o18b2ob2o15b
2ob2o15b2ob2o15bo2bobo14b2ob2o16b2ob2o14b2o18b2o21bo$bo2bo16b3obo15b3o
bo15b5o15b2o2bo18b3o14bobo17b2obobo16bo2bo17bobo14bobobobo15b2o18b2obo
bo13bo2bo18bobo15bo2b2o14b2obobo14b2obobo14b2obo16b5obo14bobobo13bo2bo
bobo12bo2bob2o13bo2bo16b2obobo$o2bobo14bo4bo14bo4bo14bo5bo13bo2b2o15b
2obo16bob2o16bobobobo13b2o2bobo17b2o15bo2bo2bo40bo13bob2o18bo17bobobo
19bo17bobo17bobo20bo13bo4bo13b2obobobo12b2obobobo12b2obo16b2obo2bo$3o
2bo14b5o15b5o15b5obo13b3o17b2obob2o13bo19bo3b2o14bo4bo16b2o18bobobo14b
4o16b3ob3o13b2obo16b2obobo14b2obo16b5o15b3obo15b3ob2o14b2obobo14bob3o
17bob2o16bobo2bo14b2o18b3o$3b2o59b2o17b2o18bob2o14b5o15b3o17b4o15bo2bo
16bobob2o14bo4bo14bo2bobo14bo3bo15bobo2b2o13bo3b2o14bo19bo2bo16bo2bo
16bobob2o14b2obo16b3o17b3o3b2o12b3o17b3o$2obo16b3o17b3o17b2o18b2obo19b
o22bo16bo36b3o17b2o19bob2o15b2o18b4o16bobo17bob2o16bob2o16bo2bo16bo2bo
16b2o18bo2bo16bo19bo19bo2b2o15bo2bo$o2bo16bo2bo16bo2bo16b2o18bo2bo17bo
bo19b2obo13bobo18b2o57b2obo57bo19bobo17bobo17b2o18b2o38b2o59bo2bo15bob
o$b2o19b2o17b2o38b2o18b2o20b2ob2o12b2o18bo2bo18b3o35bo2bo38b2o18b3o17b
o160bobo16bo$161b2o19bo2bo35b2o39b2o20bo179bo$184b2o11$2b2o16bo2b2obo
13bo2bo2bo20bo16b2ob2o13b2ob2o20b2o$2b2o16b4ob2o13b7o19bobo13bo2bob2o
13b2obobo19bo$62b2obo2bo13b2obo19bo2bo15b2obo$4o16b4ob2o13b7o15b2obobo
17bo16b2o2bobo14bobobobo$o3bo15bo2bob2o13bo2bo2bo18b2o15b3o17bo4bo15b
2o3b2o$3bobo56b2o17bo18bobo18b2o$4b2o56bo17bobo17b2o18bobo$6b2o52bobo
17b2o38b2o$6bobo51b2o$7b2o31$b2ob2o15b2o18b2o2b2o19b2o19bo14b2o18b2ob
2o15bo20bo22bo19b2o16bobo15b2o3b2o13b2o21b2o14b2o18b2o3b2ob2o10b2o18bo
19b2o18b2o18b2o18b2o17bo19b2o$2bob2o15bo2b2o15bo4bo18bobo13b2o3bobo12b
o2bo16bobobo15bobo18bobo20bobo16b3obo15b2obo13bo2bobobo12bo2bob2o13b2o
bo2bo12bo2bo16bo2bobobob2o9bo2bob2o13bobo3b2o12bo2bo16bo2bo16bo2bo16bo
2bo16b3o17bo2bo$2bo19b2obo16b4o15b2obobo14bobobobo13bo2bo16bo3bo15bo2b
o16bo2bo16b2obo2bo15bo4bo18bo13b2obobo14b2obob2o13b2obob2o13b3o17bobob
obo13bobobobo13bo2bo2bo13b2o2bo15b2obo16b2o18b3o19bo17b3o$3b3o17bo38bo
bo18bobo16b2o18b3o17bobo16b3o17b2obobo16bob3o16b3o17bob2o16bo19bo19b2o
16b2obobo14b2o3bo14b5o16b3o18bo57bobo19b2o$5bo17bo18b4o16bo2bo17bob2o
56bo40b2o15b2ob2o15bo2bo16b3o17b4o16b4o18bo2bo19bo17b3o34b2o18b3o17b4o
16b3o18bo2bo17bo2bo$b4o15b2obob2o14bo3bo15b2ob2o14b2obo18b4o16b3o36b5o
15b3o16bobo18b3o16bo19bo19bo22bobo38bo17b3o17bob2o14bo19bo4bo14bo3bo
18b2o18bobo$o19bo2bob2o15bo19bo17bo2bo17bo4bo14bo2bo16b5o14bo5bo13bo2b
o16bobo37b2o18bobo17bobo18b2obo37bobo17bo2bo14bobob2o14bob2o17b2ob2o
15b3obo35b2obo$obo18b2o17bobo17bobo18b2o17bobo2b2o13bo2bo16bo5bo13bobo
2b2o13bobo18bo19b3o37b2o18b2o17bo2bo38b2o19bobo14b2o19bo2bo17bobo18bo
2bo14b4o15bo2bo$b2o37b2o18b2o38bobo18b2o17bobo2b2o14b2o18bo38bo2bo76bo
bo61bo37bo2bo16bobo19bobo13bo4bo14bobo$101bo39b2o78b2o78bo101b2o18bo
21bo14b2o2b2o15bo11$2o18b2o18b2o3b2o13b2o18b2o3b2o13b2o3b2o13b2o2b2o
14b2o20bo20b2o21bo14b2o18b2o18b2o18b2o18bo7bo11bo19bo19bo19bo19b2o18b
2ob2o15b2ob2o15b2ob2o15b2o$o2bob2o13bobo17bobobob3o11bobo17bobobobo13b
obobobo13bo4bo14bo2bo2bo14bobo17b3obo15bo3bobo12bo2bo16bo2bo16bo2bo16b
o2bo16bobo5bobo9bobo17bobo17bobo17bobo17bobo2b2o13bobobobo13bobob2o14b
obob2o14bob3o$b3obobo13b2o19bobo4bo12bo19bobo17bobo16b4o16b6o13bo2bo
16bo5bo13bobobo2bo12bo2b3o14bo2bo16bo2bo2b2o12bo2bo16bo2bo3bo2bo9bo2bo
16bo2bo16bo2bo16bo2bo16bo5bo13bo5bo13bo19bo19bo4bo$7bo15b2o16b2obob3o
12b2obo16b2obobo14b2ob2o55b2ob2o15b5o15b2obobo14b2o3bo14b2o18b3obobo
13b3ob2o14b2obobob2o11b2o18b3o17b3o17b2obo16b5o15b5o15b7o13b5o15b3o2bo
$3b4o16bobo19b2o16bobo16bo2b2o15bobo16b4o16b4o18bo2bo37b2o18b2o39b2o
17bobo17bobo76bobo61bo18bo17b2o$2bo22bo37bo2bo13bobo18bo2bo15bo4bo14bo
4bo17bobo15b3o17b3o17b3o17b4o18b2o16b3o20bobo14b4o16b5o15b5o17bo2bo14b
2ob2o17bo19b2o18b3o15b3o$2bobo19b2ob2o35b2obo12b2o19bobo16b2o2bobo13b
2o2b2o15b2obo15bo2bo16bo2bo16bo2bo16bo4bo16bobo16bo23bo14bo4bo14bo5bo
13bo5bo14b2ob2o15b2ob2o16bobo18b2o17bo17bo2bo$3b2o21bo2bo36bobo33bo22b
o34bo2bo16bobo18b2o17bobo17b2o2bobo15b2o18bobo35bob2obo14b2o2bobo13bob
o2b2o13bobo39bobo37b2o17b2o$26bo2bo36bo2bo90bobo18bo39bo23bobo35b2o36b
o2bo19b2o15b2o17bobo40bo$27b2o38b2o92bo84bo75b2o57bo11$bo19bo19bo22b2o
16b2o18b2o17b2o21bo18bo18b2ob2o16bo2bo16bo20b2o17b2ob2o15b2o16b2ob2o
15b2ob2o15b2obobo14b2ob2o14b2o19b2o21b2o16b2o20b2o17b2o$obo17bobo2b2o
13bobob2o14b2o2b2o15bo2bo16bo2bo15bo2bo19bobo16bobo16bobob2o14b6o14b5o
17bo2bo16b2obobo13bo2bo15b2obobo14b2obobo14b2ob2obo13b2obobo13bo2b2o
15bo2bo16b2obo2bo15bobo18bobo17bobo$obo2bo14bobo2bobo12bobobobo13bo20b
obo17bob2o16bob3o14bo2b2obo13bo2bo16bo19bo19bo5bo16b4o19bobo13bob2o20b
o19bo20bo16bo2bo13b2o2bo14b2obo16b2obo2bo18bo17bo21bo3b2o$b2obobo14bo
5bo13bo4bo14b5o14b2ob2o15b2o18b2o4bo13b3o3bo13b3o17b7o13bob2ob2o13bo2b
obo15b2o18b4o2bo13b2obo16b5o15b5o15b6o14b3obobo14bob2o17bob2o16b3o14b
6o14b2ob2o20bobo2bo$4bobo15b5o15b4o20bo18bo17b2o18b3o17b3o40bo14bobob
2o14b4o15bo2b2o15bo2bob2o13bo3bo15bo19bo19bo3bo15bo2bob2o13bobobo15b4o
b2o13b3o17bo19b2o3bo16b2obob2o$b3obo57b3o14b2ob2o15b3o2bo14b2obo16b2ob
o16b5o17b2o19bo36b2obo16b2o19b3o16b2o2b2o14bob2o17bo18b2o18b2o2bo15bo
19bo2bo19b3o17b2o16bo2bo$o2bo20bo19b2o16bo18bobo16bo2bobo14bo2bo16bo2b
o16bo4bo16b2o18b2o17b2o20bo60b2o15bobo16b2o42bobo14bo19bobo19bo2bo13b
2obo16bo2bo$bobo19bobo17bobo17b3o14bo2bo18bobo16b2o18b2o18b3obo54bo2bo
16b3o37bob2o38bo62b2o15bo19bo21bo2bo12bo2bo17b2o$2bo21b2o17b2o20bo15b
2o20bo59b2o56b2o17bo39b2obo117b2o42b2o14b2o12$3b2o$3bobob2o$5bob2o$5bo
$3bobo$b4o$o$obo$b2o32$2b2o18b2o18b2o18b2o19b2o22bo17b2o14b2ob2o15b2ob
2o19bo16b2ob2o16b2o20b2o18b2o15b2o17b2o18b2o18b2o17b2o2b2o14b2o18b2o2b
2o14b2ob2o15b2o21bob2o14bo$bo2bo16bo2bo16bo2bo16bo2bo17bob3o14b2o3bobo
15bobo15bob2o16bobo19bobo15b2obobo14bo2bo15b2obobo14b2obobo14bo2bo15bo
2bob2o13bo2bob2o13bo2bo16bo4bo14bo2bob2o13bo4bo14bo3bo15bobob2o15b3obo
bo12bobobo$2bobo17bobo17bo2bo16b3o16bo5bo13bobobo2bo15bo17bo19bobo18bo
2bo18bo2bo14b2o17bobo17bobo16b4o16b3obobo13b3ob2o14b3o17b4o16b3obobo
13b4o16b3o18bobobo13bo6bo12bobob3o$3bo19bo19b3o36b5o16bobobo13b2ob2o
15b2ob2o15b2ob2o16bob2o16b3obobo33bob2o16bob2o41bo79bo53bo4bo14b6o14bo
bo3bo$62b3o38bob2o15bobo17bobo17bobo16bobo17bo2bob2o13b4o16b2o18b2obo
16b4o16b2ob3o14b6o14b3o19b2o16b2ob3o14b4o16b5o15bob3o37bob2o$b5o15b5o
15b5o15bo3bo16b3o15b2obo18bobo15bobobobo13bobobobo13bo2bo16bobo17bo4bo
16bob2o16bobo15bo4bo16bobo15bo2bo2bo13bo3bo18bo3bo14bobo15bo4bo14bo5bo
13b2obo19b2o17b2obo$obo3bo13bo5bo13bo5bo14bob2o16bo2bo15bo2bo17b2ob2o
14b2o3b2o13b2o3b2o13b3o18bo18b2o2bobo13bobob2o14bobob2o15b4o17bobo15b
2o19b4o19b4o14bobo15b2o2bobo13b2o2bobo13bo2bo18bo2bo16bo2bo$o3b2o14bob
obobo13bobo2b2o13b2obo16bo2bo17b2o19bo102bobo12b2o18b2o41bo79bo20b2o
18b2o15b2o20b2o18b2o$b3o17b2ob2o15b2o17bo2bo17b2o37bobo57b3o43bobo54b
2o56b4o19b2o$3bo57b2o57b2o58bo2bo43b2o54b2o56bo2bo19b2o$181b2o10$b2o
18b2o18b2o18b2ob2o15b2ob2o15b2ob2o15b2ob2o15b2obo16b2ob2o15b2ob2o15b2o
b2o15bo3bo15bo3b2o14bo20b2o18b2o18bo19b2ob2o16bob2o19bo16bo19b2o18b2o
20bo18bo$o2bo16bobo17bobo17bobobobo13bobobobo13bobobobo13bobobobo13bob
ob3o13bobob2o14bobobobo13bobob2o2b2o10bobobobob2o10bobobobo13bobo4bo
13bo2bo18bo2bo14bobo17bobobobo13b3obobo16b3o14b5o17bobo17b2o19bobo17b
3o$o2bo16bo4bo14bo4bo14bo5bo13bo5bo13bo5bo13bo6bo12bo6bo12bo19bo3bobo
13bo8bo10bobobobobobo9bobobo15bo2bo2bobo12bob2o15bo2bobobo12bo2bo16bo
6bo12bo6bo12b2obo16bo5bo19bo36bo2bo20bo$b2ob2o15b5o15b5o15b5o15b5o15b
5o15b5obo13b5obo13b5o15b3obo15b3ob4o12b2obobobobo10b2obo16bobo2bobo11b
2o18b3o2bobo12b2ob2o15b7o13b7o13b2obob2o13bo2bo2bo14b4obo14b4o16b3obo
15b2o3b2o$3bo2bo118b2o18b2o18bo18bo18b2obo18bo3bo14b2o16bo4bo15b2o20b
2o16bo20bo19bo18bob2o14b5o14bo4bo14bo4bo14bo3bo15bobo2bo$3bobo15b5o17b
5o13b3o17b3o17b3o17b2o18b2o20b2o16b3o57b3o19b4o13b2obobo16b3o18bo2bo
13b2o18b2o18b2obo36b2ob2o15b6o15b3o16bo4bo$b2obo15bo4bo17bo4bo12bo2bo
16bo2bo15bo2bo17b2o18b2o20bo16bo59bo2bo36b2obo2bo14bo2bo19b5o11b2o18b
2o18bo2bo19bo17bobo57b4o$o2bo16bobo23bobo14b2o17b2o17b2o58bobo16b2o58b
2o21b2o19bobo15b2o25bo51b2o19bobo16bo2bo17b2o17b3o$obo18b2o23b2o113b2o
100b2o20bo40bobo73bobo17b2o17bo2bo15bo2bo17b2o$bo324b2o75bo38b2o16bobo
18b2o$461bo10$b2ob2o15b2obo19b2o14bob2ob2o13b2ob2obo22b2o18bo16bo$b2ob
obo14b2ob3o15b3obo13b2obob2o13b2obob2o18b2obobo14b2obobo11b2obobo$7bo
19bo13bo4bo16bo19bo20bobobo15bobobobo11b2obobo$b5obo13b5obo13bob3o14b
2obob2o13b2obob2o16bo2bob2o13bo2bob2o15bobobo$o4b2o13bo4b2o13b2obo16bo
2bob2o13bo2bob2o15bob2o16bob2o16b3o3b2o$obo17bobo38b2o18b2o18bobo17bob
o18bo$b2o18b2o17b3o57bo2bo16bo2bo16bobo$40bo2bo57b2o18b2o17b2o$41b2o
32$b2ob2o17bo19bo20bo20b2o15b2o16b2ob2o16b2o3bo14b2o3bo14b2o17b2o18b2o
3b2o14bo19b2ob2o17b2o18b2o20b2o14b2o18b2ob2o15b2o20b2ob2o$bo3bo16bobo
17bobo17b5o17bobo2b2o10bo2bo16bobobo14bo2bobobob2o9bo2bobobob2o9bo2bo
16bobo17bo2bo2bo13bobo17bobobobo16bobo17bobo15b2obobo14bobob2o14b2obob
o13bo2bo18bobobo$2b3o16bo2bo16bo2bo16bo5bo15bo2bobobo10b2obo16bo3bo15b
obobobobobo9bobobobobo11bobo18bo2b2o14b5o14bo2bo16bo5bo13bo4bo14b2obob
o14bobobo18bob2o19bo13b2obo17bo2bobo$22b2ob2o14b3o17b5obo15b3o2bo15bob
2o14b3o17b2obobobobo10b2obobobo12bob2o15b2obobo34b3o17b5o14b5o15b2obob
2o13bobob2o16b2o17b5o17b2o15bo3bob2o$4b3o17bo2bo37b2o14b2o5b2o11b4ob2o
38bo3bo15b2ob2o12bo2bo17bo16b2ob2o77bo17bo4bo13bo2bo16bo19b2o3bo14b4o$
3bo3bo16bobo14b5o15b2o17bo2bo16bo21b5o57bobo14b2obobo15bob2o15b5o15b2o
b2o14b2ob2o15b2obo18b4o14b3o17bobob2o14b2ob2o$3b2ob2o13b2ob2o14bo5bo
13bo2bo16bobo17b3o19bo4bo57b2ob2o12bo2b2o14bo18bo5bo14b2ob2o14b2obo16b
2obobo55b2ob2o17bo16b2o$b2o17bo2bo16bobobobo14bobo17bo21bo21bobo59bo2b
o9bobo17bo19bobobobo36bo20b2o18b2o16b3o35b2obo16bobo$obo17bo2bo17b2ob
2o16bo39b2o21b2o60bo2bo9b2o18b2o19b2ob2o34b3o41b2o15bo2bo35bobo18bo$bo
19b2o165b2o90bo60b2o38bo31$b2o19b2ob2o14b2ob2o18bob2o16b2o15bo18b2o18b
2o18b2o3b2o13b2o2b2o14b2o2b2o14b2o2b2o15b2o18b2o18b2obo16b2o19b2ob2o$b
obo17bobobobo14bobo17b3obobo15bobo13bobob2o14bobo17bobo17bobobobo13bo
4bo14bo4bo14bo4bo14bobo2b2o13bobo17bobob3o13bo2bo19bob2o$3bo17bo5bo14b
obo16bo6bo17bo14b2ob2o16bo18bo2bob2o14bobo16b4o16b4o16b4o15bo5bo13bo4b
o14bo6bo12bobo17bo2bo$3b3o16b5o14b2ob2o15b7o14b4o36b2o2b2o14b3obobo12b
2ob2o75b5o15b5o15b5obo13bo3bo14b3ob3o$6bo35bobo20bo15bo19b5o21bo20bo
13bobo16b2o18b4o16b4o60b2o15b4o17bo2bo$2o3bobo14b3o17bobo16b2o18b2ob2o
14bo5bo15b5o15b2ob3o12bobobobo13bo2bo16bo4bo14bo4bo15b5o15b5o15b2o37b
2obo$bo3bobo13bo2bo15bobobobo13bo2bo21bo14bobobobo15bo20bobo14b2o3b2o
13bob2o17b4o15b2o2bobo13bo4bo14bo5bo13bobo19b4o14b2ob2o$bob2obo13bo2bo
16b2o3b2o14b2o18b4o16b2ob2o14bobo2b2o16bobo35bo2b2o37bo2bo13bobo17b2o
2bobo13b2o19bo3bo$2bo2bo15b2o57bo39b2o3b2o17bo38bo2bo16b2o19b2o15b2o
21b2o34bobo$3b2o75bobo101b2o17b2o95bo2bo$81b2o218b2o30$b2ob2o15b2o19b
2o18b2ob2o14b2o$obobobo13bobo18bo2bo16bobob2o13bo2bo$o6bo12bobob2o15bo
b2o16bobo16b2obo$b7o13b2ob2o14b2obo16b2obob2o16bob2o$43bo19bob2o13b2ob
ob2o$b2ob2o15b5o17bob2o13b2obo16b2obo$b2ob2o14bo5bo13b2obobobo12bo2bo
19bob2o$20b2o2bobo14bobo2bo14b2o20bo2bo$24b2o15bobo40b2o$42bo31$b2o18b
2o18b2o18b2o20bo$o2bo16bobo2b2o13bobo17bo2bo19b3o$bob3o14bo5bo13bo4bo
14bobo17bo5bo$2bo3bo14b5o15b5o15bo18b7o$3b3o56b3ob2o$21b5o15b5o18bobob
ob2o8b7o$3b3o14bo5bo13bo5bo18bo2bob2o8bo5bo$2bo3bo13bobo2b2o13bobobobo
21bo14b3o$bob3o15b2o18b2ob2o20bobo14bo$o2bo62b2o$b2o30$b2o3b2o$o2bobo
2bo$2obobob2o$3bobo$3bobo$2b2ob2o$3bobo$3bobo$4bo32$5bo$4bobo$3bo2bo$
2bob2ob2o$bobo2bo2bo$o2bo2bobo$b2ob2obo$3bo2bo$3bobo$4bo71$3bo$b5o$o5b
o$7o2$7o$o5bo$b5o$3bo32$b2o2b2o$obo2b2o$o$b6o$7bo$b6o$o$obo2b2o$b2o2b
2o!
The list of object IDs looks like this:

Code: Select all

xs18_02596z69d113
xs18_02lligz643w23
xs18_031kmicz4a43
xs18_035a4oz69d11
xs18_03lk453z6521
xs18_0651u8z69521
xs18_0696z39d552
xs18_06996z3115ac
xs18_06996z31178c
xs18_08u1dik8z321
xs18_09f0s26z6511
xs18_09v0cik8z321
xs18_09v0rrz32
xs18_0c88b96z2553
xs18_0c88b96z6513
xs18_0c9b871z2552
xs18_0cq1dik8z321
xs18_0g6p3qicz121
xs18_0g88bqicz343
xs18_0g8k46164koz121
xs18_0gbbo8a6z321
xs18_0gjlkia4z3201
xs18_0j1u0696z321
xs18_0j9m453z3421
xs18_0j9mkicz1221
xs18_0ml9acz3443
xs18_0ml9ak8z3421
xs18_0mligz32w25a4
xs18_0mllicz346
xs18_0mmgdbz3421
xs18_0mmge93z1221
xs18_0mmge93z3201
xs18_0mmge96z1221
xs18_0o8b96zog853
xs18_0oggm952z4aa4
xs18_0okk871z4aa6
xs18_256o8gu156
xs18_2596z311d96
xs18_259ab96zw33
xs18_259aczw315ac
xs18_259aczw359a4
xs18_259aczw4a953
xs18_259aczx65156
xs18_259ar2qk8
xs18_259mggkczx66
xs18_259mggozwca6
xs18_25a4ozx32qic
xs18_25a88cz4a5113
xs18_25b88a6z0653
xs18_2egm9a4zx346
xs18_2lla84czw346
xs18_2lligkcz3201
xs18_2llm853z32
xs18_312kozca22ac
xs18_31e88a53zw33
xs18_31ege96z0321
xs18_31egmicz0321
xs18_32hv0rr
xs18_32qr2qr
xs18_330fhu066
xs18_330fhu0oo
xs18_33gv164ko
xs18_33gv1qr
xs18_354m453zw343
xs18_35a8czw315ac
xs18_35aczw3115ac
xs18_35is0ck8zw65
xs18_35is0si96
xs18_35s2djoz011
xs18_39e0ehla4
xs18_3hu08kczw346
xs18_3iabqicz011
xs18_3lk453z3443
xs18_4a9baaczx33
xs18_4aab8oz2596
xs18_4aab96z0356
xs18_4aab96z2552
xs18_4aabaaczx33
xs18_4ac0v1oozx23
xs18_4alhe0e96
xs18_4ap3qicz32
xs18_4s0si96z643
xs18_5b8b96z0352
xs18_62s0f96z321
xs18_6421egu156
xs18_64km996z0321
xs18_660u1daz0321
xs18_69ab96z0352
xs18_69ar1qr
xs18_69ar2qr
xs18_69ar4kozw23
xs18_69ar9ar
xs18_69arhar
xs18_69ariar
xs18_69b88a6zw652
xs18_69b88cz2553
xs18_69b88cz6513
xs18_69b8brzx32
xs18_69ba952z033
xs18_69baa4ozx311
xs18_69baa4z2552
xs18_69baa4z653
xs18_69bo3qic
xs18_69e0ehar
xs18_69egdbgzx121
xs18_69egeiczw23
xs18_69ir2qr
xs18_69is0si96
xs18_69js3pm
xs18_69mggka4zw66
xs18_69mggkcz04a6
xs18_69n8brzx11
xs18_6io0ep3z1221
xs18_6t1mkiczw11
xs18_6t1qb96zw1
xs18_8e1t2sgz311
xs18_8ehlmzw12452
xs18_8kai3g8ozx343
xs18_c4o0ehrz321
xs18_c88b96z3156
xs18_c88b96z3552
xs18_c88bqicz33
xs18_c89n871z311
xs18_c9baaczw352
xs18_ca9f033z33
xs18_ca9m4koz311
xs18_ci96zw11dik8
xs18_cil68ozxbd
xs18_ckggm952z066
xs18_ckggm96z4a6
xs18_ckgil96z066
xs18_g6p2r9a4z11
xs18_g88b96zd552
xs18_g88bbgz011dd
xs18_g88bbgz0dd11
xs18_g8ie0ehrz11
xs18_gbaqb96z11
xs18_gbaqj96z11
xs18_gbb8b52z123
xs18_gbbgn96z11
xs18_gbbob96z11
xs18_gbq1ticz11
xs18_gbq23qicz01
xs18_gillicz1w66
xs18_gillmz1w643
xs18_gjlkmz1w643
xs18_gs2ib96z1221
xs18_gs2ll2z2543
xs18_j1u06akoz11
xs18_j1u0uh3z11
xs18_j1u0uicz11
xs18_j5q4oge2z11
xs18_j5s2qrz11
xs18_m2s079icz11
xs18_m2s0si96z11
xs18_mk4r96z1221
xs18_mljgz1w69a4
xs18_mll2z1025ac
xs18_mm0e952z56
xs18_mm0e96z1226
xs18_o8gehrz643
xs18_okkm96z6a4
xs18_rh6o8zx32ac
xs18_rhe0ehr
xs18_w4s0f96z6521
xs18_w9v0cicz2521
xs18_wg0siarz2543
xs18_wgbb871z2543
xs18_wmm0e96z643
xs18_wrb0796z321
xs18_x8o653z695d
xs18_xcil96z2553
xs18_xo4k871z69521
xs19_0259a4oz651321
xs19_025a4z69d1156
xs19_025t2sgz3543
xs19_02lligz696w23
xs19_0358g0s4z4a9611
xs19_03lkkl3z252w1
xs19_04aabgz311dd
xs19_0696z355d96
xs19_069a4ozcil91
xs19_069acz311d96
xs19_069b871z3156
xs19_069iczciq226
xs19_09v0ciicz321
xs19_09v0f96z321
xs19_0br0f96z321
xs19_0c88b96z6953
xs19_0c93z255d1e8
xs19_0c9b871z2596
xs19_0cc0si52z2553
xs19_0ciab96z4a43
xs19_0dj8b96z6221
xs19_0g8o652z2fgkc
xs19_0gbbob96z121
xs19_0iu0mp3z643
xs19_0ml1eoz34611
xs19_0mlhegoz1243
xs19_0mm0ep3z32011
xs19_0mmge93z3421
xs19_0mmge96z3421
xs19_0mmgm96z346
xs19_0o4km96z3543
xs19_0oggm96zciic
xs19_0ogilicz4aa6
xs19_0oo0ol3z4aa43
xs19_178b96z3156
xs19_256o8gzciq221
xs19_25a8czw311d96
xs19_25a8ozy01qb96
xs19_25akozca22ac
xs19_2egu1uge2
xs19_2llicz3ego
xs19_2lligz32w25a4
xs19_2lligz32w696
xs19_2lmge96z1221
xs19_2lmggz122qq1
xs19_2lmgmicz3201
xs19_31ege996zx23
xs19_31egu164ko
xs19_354cgs259a4
xs19_39mgmiczw66
xs19_39mk2sgz0643
xs19_39u08kicz321
xs19_39u0e93z321
xs19_39u0e96z321
xs19_39u0eicz321
xs19_39u0u93zw121
xs19_39u0uh3z023
xs19_3hikl3z32w23
xs19_3lkmicz01ac
xs19_3lkmicz346
xs19_3lkmik8z0146
xs19_3pe0okczw1226
xs19_4a96z255d96
xs19_4a96z69d552
xs19_4a9baaczx352
xs19_4aab96z6952
xs19_5b8b96z2552
xs19_62sggm96zw66
xs19_69acz69d113
xs19_69b4koz2553
xs19_69b88a6zw696
xs19_69b88gz69d11
xs19_69b8b5z653
xs19_69b8b9czx33
xs19_69b8bbgzx311
xs19_69b8bbgzx321
xs19_69b8brz033
xs19_69bkkoz2552
xs19_69bo3tic
xs19_69bo7pic
xs19_69fgkcz653
xs19_69icw8ozx11dd
xs19_69icw8ozxdd11
xs19_69mgmiczw66
xs19_69r2qcz03421
xs19_6a88bb8ozx33
xs19_6a88brz2552
xs19_8e1raicz311
xs19_c88b96z315a4
xs19_c88b96z3596
xs19_c88ml3z3543
xs19_c970brz06421
xs19_ca96z33032ac
xs19_cil68oz4a611
xs19_ciligoz4aa6
xs19_cimgm93z066
xs19_cimgm96z066
xs19_cimgml96zx1
xs19_cimkkm96zx1
xs19_ckggm96zca6
xs19_db8n96z311
xs19_g85r8brz121
xs19_g88bbgz1255d
xs19_g8e1eoz011dd
xs19_gbb88a6z11w33
xs19_gbb8brz123
xs19_gbbo8brz11
xs19_gbhe0ehrz01
xs19_gs2t1e8z6221
xs19_md1qb96z011
xs19_mkkm96z1226
xs19_mlhe0e96z1
xs19_mlhe0eicz1
xs19_mlhe0eioz1
xs19_mm0ehrz146
xs19_ok4raa4z6221
xs19_rq2kmzx3452
xs19_w69b871z6513
xs19_w6t1egoz6521
xs19_wmm0e952z643
xs19_wo4q552z178d
xs19_xj1u066z4a611
xs20_02596z6511d96
xs20_039u0e96z2521
xs20_039u0eicz2521
xs20_04a96zcid1156
xs20_04aab871zc871
xs20_069a4z8e1d552
xs20_069acz4a515ac
xs20_08e1dmz69d11
xs20_0c88b96z65156
xs20_0c88brz69d11
xs20_0ca23z255d1e8
xs20_0cc0si96z2553
xs20_0cc0si96z6513
xs20_0g8o653zol54c
xs20_0gillmz32w643
xs20_0gillmz346w23
xs20_0gjlk453z32w23
xs20_0mlhegoz3443
xs20_0mmge952z3421
xs20_0mmgml2z346w1
xs20_0o4o0uh3z3543
xs20_0ok2qb96z643
xs20_259aczw311d96
xs20_259mgmiczx66
xs20_2ll68oz345d
xs20_2lligz1qq221
xs20_2llmz122qr
xs20_2llmz1qq23
xs20_2llmz32qq1
xs20_2llmz32w32ac
xs20_354mggzx1023cko
xs20_354mp3qic
xs20_39mgmiczw6a4
xs20_39u0e952z321
xs20_39u0eik8z321
xs20_39u0mmz321011
xs20_3j0v1qrz011
xs20_3lkkl3z32w23
xs20_3lkkmicz3201
xs20_3lkm996z3201
xs20_3pmgm96zx66
xs20_4a9b8b96zx33
xs20_4a9baa4z2553
xs20_4a9baaczw653
xs20_4a9n8brzx121
xs20_4aab8brzx321
xs20_4aab96z6996
xs20_4aab9a4z2553
xs20_4aabaa4z2553
xs20_651u0ooz3543
xs20_651u0oozw178c
xs20_697ob96z0321
xs20_69acz69d1e8
xs20_69b88a6z2553
xs20_69b8b9czx352
xs20_69b8n96z0311
xs20_69bq2kozx643
xs20_69e0mmz03543
xs20_69egmicz0643
xs20_69ligka6zw66
xs20_69mggzw2egnc
xs20_69mgmiczx4a6
xs20_69q4gozca343
xs20_6a88b96z2553
xs20_6t1688gzw11dd
xs20_8e1u0uiczw23
xs20_8ehlmzw56074
xs20_8k4t3ob96zw1
xs20_8kc0fpzy112596
xs20_8u1v0ccz3421
xs20_9f0v1eozx121
xs20_c88b96z315ac
xs20_c97ob96z311
xs20_ca9bqicz33
xs20_ca9e0eicz33
xs20_ca9licz3543
xs20_caab96z3156
xs20_caab96z3552
xs20_caabqicz33
xs20_caakl3z3543
xs20_cc0s2qrz0643
xs20_cilmggzx66074
xs20_cimge96z6421
xs20_ckgil96z4aa4
xs20_g08o653z11d4ko
xs20_g6p3sj96z11
xs20_g88bbgz6b871
xs20_g88r3ob96z11
xs20_g8e1t6z11dd
xs20_g8o0ehrz1254c
xs20_g9f0si6z1253
xs20_gbb8b96z1213
xs20_gbbo796z1221
xs20_gbbo79cz1221
xs20_gbq2ri96z11
xs20_gt3ob96z1221
xs20_mkhf0f96z1
xs20_mlhe0eik8z1
xs20_mlhe8z102596
xs20_mmge9a4z1243
xs20_o8bbgzx123cko
xs20_raar1qr
xs20_raaraar
xs20_wcc0si96zc871
xs20_wmkhf033z652
xs20_wrb079icz321
xs20_xokc0fhoz653
xs21_0178brz69d11
xs21_035s26z3543033
xs21_03lkkl3zc96w1
xs21_04s0ci53zc97011
xs21_062s0si52z3543
xs21_06996zcid1156
xs21_069b871z4a953
xs21_069iczciq22ac
xs21_0ca96z69d1156
xs21_0cc0si96z6953
xs21_0ggciqb96z343
xs21_0gwra96z8lld
xs21_0mlhe0e93z32
xs21_0mlhu066z346
xs21_0mmgu156z346
xs21_255m88gzcia521
xs21_259e0ehf033
xs21_259egmiczw643
xs21_25a8c8a6zw3596
xs21_2lla8cz643033
xs21_2llicz34aik8
xs21_2lligz12ege3
xs21_2llmz12269ic
xs21_32q48gzok45lo
xs21_354m88gzcia521
xs21_354mgmiczw346
xs21_356o8gzy023ciic
xs21_39e0ehraa4
xs21_39eg8gzx122dik8
xs21_39u0ehrz321
xs21_39u0u93z03421
xs21_3lkkl3z32w252
xs21_3lkmk46z32w23
xs21_4a9m88gzcia521
xs21_4aab9a4z6953
xs21_4ac0si96z2553
xs21_6996kk8z6953
xs21_6996z65115ak8
xs21_699e0okczw653
xs21_699eg8oz0359c
xs21_69a4o0o4a96zy0121
xs21_69a4z69ll96
xs21_69acz6511d96
xs21_69acz69d1156
xs21_69ak8gzcie1221
xs21_69b88a6z033033
xs21_69b8b96zw696
xs21_69b8bb8ozx33
xs21_69b8bbgzw6511
xs21_69baik8z2553
xs21_69e0o4oz259701
xs21_69mggmiczx4ac
xs21_69mgmiczxca6
xs21_6a88bbgzw255d
xs21_8e1dagz5b871
xs21_8e1lmz315a43
xs21_ad1mkk8z3543
xs21_c88mlicz3543
xs21_c8a52z355d96
xs21_ca9b8brzw33
xs21_ciar2qrzw23
xs21_ciiria4z4aa4
xs21_g88ml56zd543
xs21_g88rbgn96z11
xs21_g8e1t6zc95d
xs21_gbb8b96z11w33
xs21_gbb8b96z1253
xs21_gbb8ra96z23
xs21_gbbo7picz11
xs21_j5s2qcz11w346
xs21_mlhu0ooz1ac
xs21_mmge996z1243
xs21_o8b9aczx359a4
xs21_oo0e9jz6a871
xs21_wgj1u0og4cz25421
xs21_xj1u066z69d11
xs22_02596z69bp552
xs22_02596z69d1d96
xs22_0259acz69d1156
xs22_02llmzcnge21
xs22_04a9baa4z4a953
xs22_062s0si96z3543
xs22_08o0u93zoif032
xs22_09v0rbz3210123
xs22_09v0v9z3210123
xs22_0g8ka96zraahz011
xs22_0gbbo7picz121
xs22_0gill2z32w25ako
xs22_0iu0e93z643033
xs22_0iu0u93z643032
xs22_0mllmz122qq1
xs22_2ll6gmiczw343
xs22_2llmgmmz3201w1
xs22_2llmz1qaar
xs22_354kl3zx1qq23
xs22_3lk6gmiczw343
xs22_3lkkl3z32w652
xs22_3lkljgz32w643
xs22_3p6gmicz3543
xs22_4aab8b96zw2552
xs22_696o6kk8zw3543
xs22_699m88gzcia521
xs22_69b88cz69d113
xs22_69b88czx311d96
xs22_69b8b96z03156
xs22_69b8b96z03552
xs22_69b8b96z2553
xs22_69b8bpicz033
xs22_69b8bqicz033
xs22_69b8brz0c871
xs22_69b8n96z6511
xs22_69bojbo8a6
xs22_69e0ehe0eic
xs22_69e0uh3z6513
xs22_69icwciczxdd11
xs22_8e1lmz3303496
xs22_c8970sicz02553
xs22_ca1u8zx122ria4
xs22_ca9bob96z33
xs22_caabob96z33
xs22_cc0s2qrz3543
xs22_ciiriiczwcic
xs22_g88b9icz178b5
xs22_g88bbgz19ll91
xs22_g88ci96zo5ldz01
xs22_g8o03iacz1qq221
xs22_gbb8bpicz123
xs22_gbb8bqicz123
xs22_gs2qb96z6aa4
xs22_ra1v0rrz011
xs22_rb0v1qrz011
xs22_wg8kie0e93z2543
xs22_wg8kie0e96z2543
xs22_wmmge1egoz643
xs23_0354ljgz8kc32023
xs23_04a9m88gzciic321
xs23_0ca96z69d1d96
xs23_0caabqicz2596
xs23_0ggca970si6z3421
xs23_0mlhu0ooz32ac
xs23_178b96zw311d96
xs23_259e0ehe0eic
xs23_259e0ehu0ui
xs23_259m88gzy0123ciic
xs23_39e0o4czc970123
xs23_3lk6kl3zca1011
xs23_69acz69d1d96
xs23_69b8b96z033033
xs23_c88b96zrb871
xs23_cc0v1e8z330346
xs23_cie0e9jzw11dd
xs23_g39u066z1pl4c
xs23_gbb8b96z123033
xs23_ml1e8gzdl871
xs23_okihf0f9z6a4
xs24_031e88gz178kkb43
xs24_069b8b96z4a953
xs24_09v0v9z6430346
xs24_0caabob96z2552
xs24_0g88b96zo5l453z011
xs24_2lmgmmz3460643
xs24_31e8w8ozc8711dd
xs24_35a8c0c4ozw178711
xs24_39u0u93z3210123
xs24_3lk453z342bkk8
xs24_3lkkl3z122qq1
xs24_3lkkl3z3204a96
xs24_69b88a6z69d113
xs24_69b88cz6511d96
xs24_69b8bqicz653
xs24_69ligozo4ai26z011
xs24_c89n8brz33032
xs25_69b8b9acz033033
xs25_69f0ccz6511d96
xs25_8e1t6z2egf0352
xs25_8e1v0rrz3543
xs25_ml1u0ooz11078a6
xs26_259mkk8zg84qaa4z011
xs26_69b88a6z69d1156
xs26_69b88cz69d1d96
xs26_69lig0ggzy012pgf033
xs26_c88baacz311d553
xs27_651u0u156zw17871
xs28_0g8ka9m88gz122dia521
xs30_caabaacz355d553
xs31_69b88bbgz69d11dd
Anybody have a natural 29-cell still life yet, or anything over 31 cells -- or any non-mirror-symmetric still lifes above 26 cells?

EDIT: Updated stamp collection with 823 objects posted here.

User avatar
codeholic
Moderator
Posts: 1147
Joined: September 13th, 2011, 8:23 am
Location: Hamburg, Germany

Re: apgsearch: a high-performance soup searcher

Post by codeholic » October 8th, 2014, 4:34 pm

dvgrn wrote:...any non-mirror-symmetric still lifes above 26 cells?
I've got this one:

Code: Select all

x = 6, y = 12, rule = B3/S23
2o$o2bo$b3o2$b3o$o3bo$2ob2o2$5o$o4bo$3bobo$3b2o!
But I don't know how to find the soup that produces it. I think it's left from some previous runs.
Ivan Fomichev

User avatar
praosylen
Posts: 2443
Joined: September 13th, 2014, 5:36 pm
Location: Pembina University, Home of the Gliders
Contact:

Re: apgsearch: a high-performance soup searcher

Post by praosylen » October 8th, 2014, 4:47 pm

I have this 40-cell still life here:

Code: Select all

x = 10, y = 9, rule = B3/S23
4b2ob2o$2o2b2obobo$o8bo$b8o2$b8o$o8bo$2o2b2obobo$4b2ob2o!
It came from this soup:

Code: Select all

x = 16, y = 16, rule = B3/S23
2o2bobo2bo$6ob6o2bo$3ob4ob2obob2o$2bo6b7o$6o4bo2b3o$2o2b2o2bob5o$2bobo
bob5ob2o$2b3o2b2obo2b2o$4o2bo2bobob2o$2ob3ob3ob4o$bob2obo2b5o$b2o2bo3b
obobobo$2o2bo3b2ob3obo$b3o4bobo3b2o$o2bob5obobobo$2b2o3b2obo3b2o!
former username: A for Awesome
praosylen#5847 (Discord)

The only decision I made was made
of flowers, to jump universes to one of springtime in
a land of former winter, where no invisible walls stood,
or could stand for more than a few hours at most...

User avatar
dvgrn
Moderator
Posts: 10610
Joined: May 17th, 2009, 11:00 pm
Location: Madison, WI
Contact:

Re: apgsearch: a high-performance soup searcher

Post by dvgrn » October 8th, 2014, 5:42 pm

codeholic wrote:
dvgrn wrote:...any non-mirror-symmetric still lifes above 26 cells?
I've got this one:

Code: Select all

x = 6, y = 12, rule = B3/S23
2o$o2bo$b3o2$b3o$o3bo$2ob2o2$5o$o4bo$3bobo$3b2o!
But I don't know how to find the soup that produces it. I think it's left from some previous runs.
Did you find this by running the stamp-collection script? If so, you should be able to use the script's output report to see which run the object came from.

On my system, after I run the script, I get a pile of data copied to the clipboard which ends with

Code: Select all

xs30_caabaacz355d553 :
  1 ROOT 100Mb NUM_SOUPS 10750000   C:\Users\...\AppData\Roaming\Golly\apgsearch\progress\search_0bd6a197b3807c43f35da703b1bc1c68.txt
xs31_69b88bbgz69d11dd :
  25Me2411523 ROOT 25Me NUM_SOUPS 14168500   C:\Users\...\AppData\Roaming\Golly\apgsearch\progress\search_26821d5b1eb521a1f58a9ec0faa318b3.txt
So I can find the soup for the 31-cell still life just py entering "25Me2411523" into hashsoup.py.

The 30-cell still life was apparently found on an old interrupted multi-million-soup run, before I started running v0.44. So the first item on the line (before "ROOT") is just the count of objects found, no soup strings. To find that object again I'd have to run another 10750000-soup search with the root string "100Mb" -- it will be there somewhere...!

User avatar
praosylen
Posts: 2443
Joined: September 13th, 2014, 5:36 pm
Location: Pembina University, Home of the Gliders
Contact:

Re: apgsearch: a high-performance soup searcher

Post by praosylen » October 8th, 2014, 6:27 pm

Any idea why apgsearch called this still life a "bi-loaf 2"?:

Code: Select all

x = 6, y = 4, rule = B3/S23
b2ob2o$obobo$bo2bo$4b2o!
former username: A for Awesome
praosylen#5847 (Discord)

The only decision I made was made
of flowers, to jump universes to one of springtime in
a land of former winter, where no invisible walls stood,
or could stand for more than a few hours at most...

User avatar
Extrementhusiast
Posts: 1966
Joined: June 16th, 2009, 11:24 pm
Location: USA

Re: apgsearch: a high-performance soup searcher

Post by Extrementhusiast » October 8th, 2014, 8:45 pm

dvgrn wrote:...any non-mirror-symmetric still lifes above 26 cells?
This reaction makes an asymmetric 28-bitter:

Code: Select all

x = 8, y = 7, rule = B3/S23
5b3o$b3obo$o2bo$3bo$3bo$obo$bo!
I Like My Heisenburps! (and others)

User avatar
dvgrn
Moderator
Posts: 10610
Joined: May 17th, 2009, 11:00 pm
Location: Madison, WI
Contact:

Re: apgsearch: a high-performance soup searcher

Post by dvgrn » October 8th, 2014, 9:22 pm

A for awesome wrote:Any idea why apgsearch called this still life a "bi-loaf 2"?:

Code: Select all

x = 6, y = 4, rule = B3/S23
b2ob2o$obobo$bo2bo$4b2o!
Hmm, well, it means that you're running my hacked apgsearch v0.44, and that I made a silly copy-and-paste error while I was looking up objects very late at night in Achim Flammenkamp's Table of Most Seen Objects. I believe I've fixed the problem. That object does have a common name, but it's "cis boat and table", not "[bi-loaf2]" -- I had defined it twice, the second time incorrectly.

In v0.44, I added a few objects with common names in square brackets. The idea was that I was seeing lots of objects that I wanted to be "common", because they were showing up multiple times in million-soup runs. Most of the names were lifted straight from Achim's top-100 list. In a few cases I had to find a name elsewhere -- in this case from the LifeWiki, but some of my other invented names are much more questionable, so I put them in brackets so they can be taken out (or not) in the next official release.

Now that the attachment problem with the forums is fixed, I can attach a copy of the repaired script here, instead of using Dropbox:

EDIT: repaired incorrect tab characters
apgsearch-2014-10-08-v045.zip
Updated hacked apgsearch v0.45 (fixes the Biloaf2 Bug)
(19.59 KiB) Downloaded 559 times
I put this item on the To Do list:

Code: Select all

# TODO: extend the common-objects list further with top 1800 objects from
#       http://wwwhomes.uni-bielefeld.de/achim/ash-pattern.txt
I'm curious about what people think about radically extending the common-objects list in this way. I don't think this will make any noticeable difference in search speed, and it should give a better sense of when a search might possibly have turned up something that hasn't been seen before.
Last edited by dvgrn on October 14th, 2014, 9:49 am, edited 1 time in total.
Reason: fixed tab characters in v0.45 script

User avatar
dvgrn
Moderator
Posts: 10610
Joined: May 17th, 2009, 11:00 pm
Location: Madison, WI
Contact:

Re: apgsearch: a high-performance soup searcher

Post by dvgrn » October 9th, 2014, 12:50 pm

Extrementhusiast wrote:
dvgrn wrote:...any non-mirror-symmetric still lifes above 26 cells?
This reaction makes an asymmetric 28-bitter:

Code: Select all

x = 8, y = 7, rule = B3/S23
5b3o$b3obo$o2bo$3bo$3bo$obo$bo!
Achim Flammenkamp's soup search apparently ran into that once, and A for awesome's 40-cell object also. The 27-bit object that codeholic posted appears to be new, so we seem to be getting close to the Soup Search Frontier.

Here's the full list of 1,671 still lifes from Achim's text-dump web page, translated into apgsearch canonical form:

Code: Select all

block 33
beehive 696
loaf 2596
boat 253
tub 252
pond 6996
ship 356
longboat 25ac
ship_on_ship g8o653z11
barge 25a4
loaf_on_loaf g88m952z121
mango 69ic
eater 178c
longbarge 25ak8
aircraft 39c
paperclip 69bqic
longship 35ac
shillelagh 3pm
snake bd
big_S g88b96z123
boat_on_boat g8o652z01
pond_on_pond g88m996z1221
integral_sign 31ego
trans-boat_with_tail 178ko
hat 4aar
ship_on_boat g8o652z11
very_longboat 25ako
tub_with_tail 178k8
table_and_table raar
very_longship 35ako
sinking_ship 312ko
longsnake 3lo
?08-snake_eater 32qk
very_longsnake 31248c
cis-boat_with_tail 178kc
tub_with_long_tail 25a84c
long_shillelagh 312453
long_sinkingship g0g853z11
?09?001 178426
very_very_longsnake 31248go
block_and_table 32qr
beehive_with_tail 178kk8
loop 69ar
boat_with_long_tail 3215ac
?10-S-ten 3542ac
trans-barge_with_tail ggka52z1
broken_snake 0drz32
?10-great_snake_eater 1784ko
cis-barge_with_tail 178ka4
?10?003 358gkc
?10-tub_with_nine g0s252z11
very_longbarge g8ka52z01
?10?004 drz32
?10?005 4al96
very_longsinkingship xg853z321
?10?006 0j96z32
?10?007 0cp3z32
?10?008 ggka23z1
?10?009 25a8426
?10?010 31eg8o
?10?011 2eg853
?10?012 1784213
very_very_very_longsnake wg853z65
elevener g0s453z11
?11-loop 178jd
trans-loaf_with_tail ggm952z1
?11_boat_with_bend_tail 178b52
trans-boat_with_nine g0s253z11
?11?002 178c4go
cis-boat_and_table 2530f9
?11?003 69lic
?11?004 31461ac
boat_on_aircraft 08o652z32
cis-loaf_with_tail 178kic
very_very_longboat g8ka52z11
trans-boat_and_table 2560ui
?11?005 32132ac
?11?006 358gka4
?11?007 31eg84c
?11?008 69jzx56
cis-boat_with_nine g0s256z11
?11?010 354c826
?11?011 2ege13
?11?012 3586246
trans-longboat_with_tail ggka53z1
?11?013 25icz65
boat_on_snake 256o8go
?11?014 25a84ko
cis-longboat_with_tail 178ka6
?11?015 31e853
?11?016 25akg8o
?11?017 69jzx123
?11?018 3542156
?11?019 35a8426
?11?020 17842ac
?11?021 4ai3zx123
?11?022 178c48c
?11?023 17842sg
very_very_longsinking_ship wg84213z65
?11?025 25iczx113
?11?027 0drz65
?11?028 0g0s252z121
?11?029 0cp3z65
?11?030 g88a52z23
?11?031 3215a8o
very_very_very_very_longsnake xg853zca1
cis-block_and_longhook 3hu066
cis-aircraft_on_table 32qj4c
?12-beehive_bend_tail 2egm96
?12-snorkel_loop 2egm93
block_and_cap 330f96
longboat_on_boat 0g8o652z121
trans-block_and_longhook 330fho
?12-eater_with_nine 178c453
beehive_at_beehive o4q552z01
trans-mango_with_tail 69iczx113
?12?003 178br
eater_on_boat 256o8a6
?12-beehive_with_nine 0ggm96z32
?12?004 0ggm93z32
beehive_and_table 6960ui
?12?006 g4q453z11
?12?008 0g0s252z321
cis-mango_with_tail 178kia4
trans-ship_and_table 3560ui
?12?011 25a8og4c
?12?012 0ggs252z32
?12?013 31egma
boat_on_eater 0g8o652z23
ship_on_snake 3123cko
?12?014 651i4ozx11
?12?015 3542ako
?12?016 3215ako
very_very_longbarge 0g8ka52z121
?12?017 354qic
?12?018 0gbaa4z121
?12?019 31eozx123
?12?020 35iczx113
very_very_longship g8ka53z11
para-aircraft_and_table 39c0f9
?12?021 5b8ozx123
?12?022 0g8ge13z23
?12?023 178c2ko
?12?024 g4q552z11
cis-ship_and_table 6530f9
cis-longbarge_with_tail 178ka52
trans-barge_with_nine 0ggka52z32
?12?026 4ai3s4zx1
cis-barge_with_nine 0gila4z32
trans-longbarge_with_tail 0g8ka52z23
?12?029 321e853
?12?030 354cga6
?12?031 0g8ka23z23
?12?032 358m93
?12?033 g88a53z23
?12?034 252sga6
?12?035 31eg8426
ship_on_aircraft 08o653z32
?12?037 69jzx1ac
?12?038 35icz65
boat_on_longsnake 3lozx352
?12?040 3pczw1246
rotated_table 32qb8o
?12?042 178k871
?12?043 drz346
?12?044 0g0s256z121
?12?045 358mic
?12?046 03loz643
snake_and_table 32130f9
?12?049 69jzx1246
?12?050 4alla4
trans-aircraft_and_table 4s0c93z11
?12?052 641j4czx11
?12?054 25a8og8o
?12?055 3pcz643
?12?056 drz1226
?12?057 2ege123
?12?058 0cq23z65
?12?059 642tic
?12?060 31460ui
?12?062 178ka23
very_very_very_longsinkingship xg84213zca1
?12?063 g853zdb
?12?065 8ljgzx252
?12?066 32132qk
?12?067 ci52zw1246
?12?068 358gka6
?12?069 4ai3zx1246
?12?070 312312ko
?12?071 31eg853
?12?072 32qczx113
longboat_on_ship 0g8o653z121
?13-snorkel_loop 2eg6p3zx1
snake_and_R-bee 6970bd
trans-cis-boat_and_longhook 2530fho
krake 31ege13
?13-head 32qb96
cis-boat_and_cap 2530f96
?13?002 354mp3
R-bee_on_beehive g8ge96z121
?13?003 c88a52z33
beehive_at_loaf g88m96z121
?13?004 17871ac
?13?005 178n96
trans-eater_and_table 32arzx123
?13?007 259mge2
ortho-loaf_and_table 4a960ui
boat_on_shillelagh djozx352
?13?008 31egma4
?13?009 321fgkc
?13-trans-loaf_with_nine 0ggm952z32
trans-very_longboat_with_tail 0g8ka53z23
?13?011 0ggs253z32
?13-cis-loaf_with_nine 0gil96z32
?13?013 08ka96z321
?13?014 0ggs256z32
cis_cis-boat_and_longhook 3hu06a4
cis_trans-boat_and_longhook 2560uh3
ship_on_eater 0g8o653z23
R-bee_and_snake 69e0mq
?13?016 354djo
?13?017 0gbaa4z321
?13?018 4aarzx123
?13?019 3146178c
?13?020 0gbaicz121
trans-boat_and_cap 2560uic
snake_and_hook 39e0db
?13?022 0ggm96z56
boat_on_longship 0g8o652z321
beehive_on_eater 255q8a6
trans-longboat_with_nine 0ggka53z32
para-loaf_and_table 25960ui
?13?026 31kmiczw1
?13?027 g8ka23z56
?13?028 3123qic
?13?029 3pczw1156
?13-eater_on_ship 356o8a6
trans-trans-boat_and_longhook 0mk453z121
cis-longboat_and_table 25ac0f9
?13?031 08ob96z32
?13?032 wggm96z252
?13?033 08u156z32
?13?034 g0s2pmz11
?13?035 035iczca1
trans-longboat_and_table 0gbq23z121
beehive_on_hook 08o696z321
?13?038 oe1246z23
?13?039 32qkzx346
?13?040 wggm93z252
?13?041 352sga6
shillelagh_on_boat 256o8gkc
?13?043 31e86246
?13?044 2ege1e8
?13?045 358go8a6
?13?046 32qj96
?13?047 8ljgzx346
?13?048 354264ko
hook_and_snake 39e0mq
?13?050 0gbaa4z123
?13?051 0gbb8oz121
very_very_very_longboat 0g8ka52z321
ship_on_longsnake 3lozx356
?13?054 0g0s253z321
?13?055 32hu066
para-eater_and_table 178c0f9
?13?057 2lmge2z01
cis-eater_on_table 354c0f9
snake_on_longboat ggca52z65
?13?060 31231ego
?13?061 0o4871z643
?13?062 32qczx1246
boat_on_sinkingship wg8o652z65
?13?064 6246pic
?13?065 0gba96z121
very_very_very_very_longsinkingship 31248gzy212ko
?13?067 g6q453z11
aircraft_on_longboat 0ggca52z641
?13?069 651i4ozw121
?13?070 31eozca1
?13?071 g8ka52z56
cis-very_longboat_with_tail 178ka53
?13?073 c9jzbd
?13?074 31eozx1252
?13?076 25a8oge2
?13?077 0g6p56z121
?13?078 32ac0f9
?13?079 jhe8z65
?13?080 35a8og4c
?13?081 256o8a52
?13?082 0gbq23z23
?13?083 25akg853
?13?084 g842156z123
?13?085 354215ac
?13?086 652sga6
?13?087 0gjla4z32
?13?088 6421eozx32
?13?089 3146o8a6
?13?090 ci52z39c
?13?091 31eg84ko
?13?092 32hu0oo
?13?093 bdggkczw1
?13?094 ghn871z1
?13?095 0ggo8b5z32
?13?096 641vg4c
?13?097 25b8og8o
?13?098 32132ako
?13?099 j5c48cz11
?13?100 0g0s256z321
?13?101 3lo0ui
cis-mirrored_R-bee 6970796
cis-mirrored_hook 39e0e93
block_and_dock j1u066z11
14-ner 69bo8a6
cis-hook_and_R-bee 39e0e96
?14-bi-loaf 69la4ozx11
?14-beehive_with_long_bend_tail 31egm96
trans-hook_and_R-bee 39e0eic
pond_and_table 69960ui
loaf_at_loaf 4a9m88gzx121
cis-rotated_hook 6is079c
trans-rotated_R-bee g8o0e96z121
?14?005 c88a53z33
trans-mirrored_R-bee 69e0eic
beehive_and_cap 6960uic
?14?006 0gbqicz23
?14?007 j1u413z11
book_ends 1no3tg
R-loaf_on_beehive g88q552z121
trans-ship_and_cap 3560uic
trans-beehive_and_longhook g2u0696z11
para-R-bee_on_loaf g8o69a4z121
?14?011 2egu156
?14?012 g8id96z121
cis-beehive_and_longhook 3hu0696
?14?014 3lmge2z01
longhook_and_table 3hu0ui
?14?016 4a9ria4
?14?017 drz012156
?14?018 178jq23
?14?019 31ego8a6
cis-rotated_R-bee 6970sic
?14?020 08u1e8z321
ship_on_shillelagh djozx356
?14?021 65p68ozx11
trans-mirrored_hook 39e0eio
hook_on_hook 64lb8ozw11
?14-mango_with_bend_tail o4id1e8z01
?14?024 32qj4ko
?14?025 i5q453z11
cis-ship_and_cap 6530f96
?14?026 mmge13z1
para-mirrored_hook g4s079cz11
ortho-hook_and_R-bee 6970si6
?14?029 c88b52z33
para-hook_on_loaf 08o69a4z321
ship_on_longship 0g8o653z321
para-hook_and_R-bee o4s079cz01
?14?032 0cq1e8z321
?14?033 c88e13z33
trans-ship_and_longhook 0mk453z321
trans-mango_with_nine 69iczx1156
ortho-hook_on_loaf 08o6952z321
cis-aircraft_on_longhook 04s39cz321
loaf_on_eater 69akgkczx1
cis-mango_with_nine ci96zw1156
meta-hook_and_R-bee 08o0e96z321
?14?040 2552sga6
?14?041 69arzx123
?14?042 0gbb8oz321
?14?043 j96z178c
para-ship_and_longhook 3hu0okc
?14?044 178f1e8
cap_and_table 69f0f9
shift-hook_and_R-bee g4s0796z11
?14?046 31eozx1256
ortho-R-bee_on_loaf g88m552z121
?14?047 31egm93
?14?048 08u1acz321
?14?049 0g8ob96z23
eater_on_longboat 8ehjzw1252
?14?051 4a9raa4
snake_and_R-loaf 259e0mq
?14?053 wggm96z652
?14?054 4aaraa4
cis-longship_and_table 35ac0f9
?14?056 33gv146
cis-ship_and_longhook 3hu06ac
trans-rotated_hook 08o0e93z321
ortho-eater_on_eater 354c32ac
cis-boat_with_tail_on_boat 256o8b52
?14?061 2eg8o653
para-aircraft_on_cap 39c0f96
?14?063 dbgzmq1
?14?064 cai3zbd
?14?065 69ak8zx1252
trans-boat_with_tail_on_boat 256o8a53
?14?067 o8brzx123
cis-mango_and_table 69ic0f9
?14?069 178bq23
?14?070 wggm93z256
ortho-ship_and_longhook 3560uh3
ortho-longhook_and_table 4s0fhoz11
?14?073 0m2s53z121
?14?074 0gbaa4z343
?14?075 0gbaa4z643
?14?076 354cgs26
?14?077 64132qr
trans-mango_and_table 4s0ci96z11
?14?080 65la4ozx11
?14?081 0g6p2sgz121
?14?082 g6pb8oz11
shifted_R-bee o4s0796z01
longboat_on_longboat wggca52z2521
?14?086 0g0si52z343
?14?087 wggm93z643
?14?088 0gbaicz321
?14?089 255q8a52
?14?090 wggka53z252
?14?091 g84q552z121
?14?092 0g0s2pmz121
?14?093 0g8ehrz121
trans-longbarge_with_nine wg8ka52z643
?14?097 0md1e8z32
?14?098 69jzx12453
trans-longship_and_table 0gbq23z321
snake_on_longship ggca53z65
cis-snake_and_longhook 31230fho
?14?102 6421fgkc
trans-longhook_and_table 8o0uh3z23
?14?104 65pa4ozx11
?14?105 32132qr
?14?106 08u156z65
?14?107 4aabgzx1252
ortho-aircraft_and_longhook 0mk453z641
?14?109 wgil96z252
?14?110 31e8gzwbd
?14?111 c88a52z352
?14?112 31e861ac
?14?114 178bp46
?14?115 4a9b8ozx32
?14?116 wggka23z652
?14?117 0gbap3z121
?14?118 178c2ego
?14?119 wggm96z643
?14?120 65la8czw11
?14?121 3146164ko
?14?122 i5q8a6z11
?14?123 cilmzx252
?14?124 25b8oge2
?14?125 03lkk8z252
boat_on_integral_sign 0gba96z321
?14?127 xoge13z253
?14?128 0j5s26z121
?14?129 ck31246z023
?14?130 3542tic
?14?131 0gba96z123
longboat_on_eater wggc871z2521
cis-aircraft_and_longhook 3hu0oi6
?14?134 0ggm952z56
aircraft_on_cap 64pb8ozx11
?14?136 3pa4zw1156
?14?137 i5t246z11
?14?138 wggm952z252
?14?139 0gbb8oz123
?14?140 4s0f96z11
?14?141 0mp3zc96
?14?142 j5s252z11
?14?144 35iczx1156
?14?145 08ka952z321
?14?146 gilmz1w252
very_very_very_longship 0g8ka53z321
?14?148 wggm96z256
?14?149 w8o653zca1
?14?150 3hu06246
?14?151 4a9j08ozx121
?14?152 0c88b5z253
?14?153 xok871z253
?14?154 3542sga6
?14?156 cai3zw1156
?14?158 178ka4z311
?14?159 0gil96z56
?14?160 ml96z56
?14?161 39m8628c
?14?162 25a88cz0253
?14?163 25is0qm
?14?164 drz012552
?14?165 64lb8ozx11
?14?166 0c88a52z253
?14?167 0gbaa4z1252
?14?168 cp3z012156
?14?169 03iak8z6221
?14?170 djozx3146
?14?171 08k8a53z321
?14?172 354cj96
?14?173 g8o652z1ac
?14?174 39m86246
?14?175 6413kczw65
?14?176 032qk8z253
?14?177 3iarz056
?14?178 8u15a4z32
?14?179 4aab8ozx32
mooseantler 354cgc453
R-bee_on_pond g8o6996z121
trans-R-bee_and_R-loaf 259e0eic
?15-tub_scorp 25a8ob96
?15-often 4a9raic
?15-bee-hat 3lkm96z01
?15-block_and_long 09v0ccz321
?15?004 0cid96z321
cis-boat_and_dock j1u06a4z11
?15?005 4ap6426z032
?15?006 0gbb8oz343
para-loaf_and_cap 25960uic
?15-hovac_on_loaf 0g8ka96z3421
cis-R-bee_and_R-loaf 259e0e96
loaf_on_R-loaf 0ggca96z3421
trans-boat_and_dock 3lk453z121
hook_on_pond 08o6996z321
?15?009 0gilicz346
?15?010 g88m596z121
hook_and_shillelagh 39e0mp3
?15?012 33gv1oo
?15?013 3213ob96
?15?014 ca96zw3552
?15?015 ca96zw3156
trans-hook_and_R-loaf 259e0eio
cis-hook_and_R-loaf 259e0e93
?15?016 4a970si6
eater_on_longship 8ehjzw1256
?15?017 69bojd
?15?018 65123qic
?15?019 c88e13z352
R-bee_on_shillelagh o4s3pmz01
R-bee_and_shillelagh 3pm0eic
?15?022 06t1acz321
?15?023 g8id1egoz01
?15?024 0j1u066z121
snake_and_R-mango kc0si96z11
?15?025 oggm96z66
?15?026 cilmzx256
loaf_on_pond 699m88gzx121
?15?027 4a970sic
ortho-loaf_and_longhook 3hu069a4
?15?028 6t1egoz11
?15?029 695q88gzx121
?15?030 8e1u8zx1252
?15?031 3pm0e96
?15?032 wggm952z643
?15?033 0g0si53z343
?15?034 0c8a52z2553
?15?035 4a9b8oz033
beehive_on_R-mango 0g0si96z343
?15?036 69aczw2553
?15?037 253gv146
para-hook_and_R-loaf 69aczw6513
?15?039 25is0sic
?15?040 69ak8zx1256
?15?041 259mge13
?15?042 0ggci96z343
?15?043 4a960uic
?15?044 0mk453z1243
para-loaf_and_longhook 25960uh3
?15?045 2ego8br
R-loaf_on_loaf 0ggca96z1243
?15?046 35a88cz0253
?15?047 0c8a52z6513
?15?048 2egu15a4
?15?049 69aczx3552
?15?050 xoka52z653
?15?051 gilmz1w256
?15?052 0ggmp3z346
?15?053 wgil96z256
?15?054 69aczx3156
?15?055 0g6p2sgz321
?15?056 j5q8a6z11
?15?057 08u1daz321
?15?058 25is0si6
?15?059 178bqic
?15?060 0c88a52z653
?15?061 0mlla4z32
?15?062 0mk453z3421
?15?063 0at1e8z321
?15?064 0gbaa4z3452
?15?065 255q8a53
?15?066 0j9akoz321
?15?067 0g8ehrz321
?15?068 65la8ozw121
?15?069 0gba96z343
?15?071 gbb871z23
?15?072 3lkia4z32
?15?073 178bpic
?15?074 25a8czx6513
?15?075 2lla8oz121
?15?076 03lkicz252
?15?077 w8u156zca1
?15?078 3loz12ego
?15?079 4aara96
?15?080 4aab8oz033
?15?081 02l2sgz2543
?15?082 06t1e8z321
?15?083 g88a52z178c
?15?084 0c88b5z2552
?15?085 25b8o653
?15?086 cq23z012552
?15?087 xok871z653
?15?088 0j1u0ooz121
?15?089 bdgmiczw1
?15?090 2ege1ego
?15?091 39u0ooz32
?15?092 02llicz252
?15?093 699mkk8zx1
?15?094 64138n96
?15?095 354c0f96
?15?096 2eg8ob96
?15?097 wgil96z643
?15?098 08k453zca43
?15?099 354miozw32
?15?100 65la4ozw121
?15?101 25iczx1178c
?15?102 ciabgzx1252
?15?103 4aabgzx3452
?15?104 oggm93z66
?15?105 3pq32ac
?15?106 g8ob96z56
?15?107 0bq1e8z321
?15?108 31eozx12552
?15?109 0c88b5z653
?15?110 0c88a52z2552
?15?111 xc8a52z6513
?15?112 178c0f96
?15?113 4a9ri96
?15?114 025a8cz6513
?15?115 wggka53z643
?15?116 03lka4z643
?15?117 g8e13zpi6
?15?118 2lmge2z32
?15?119 wggm952z652
?15?120 32qjc48c
?15?121 178c0fho
?15?122 0ggci96z643
?15?123 wg8ka53z643
?15?124 69is0qm
?15?125 31ege2ko
?15?126 64lb8ozw121
?15?127 178c2dio
?15?128 4a9b88gzx311
?15?129 wmd1e8z65
?15?130 wggm96z696
?15?132 39u066z032
?15?133 wggm952z256
?15?134 c88b52z352
?15?135 0i5q453z121
?15?136 oggka52z66
?15?137 0gbaarz121
?15?138 g8hf0cicz01
?15?139 25aczw3553
?15?140 0gba952z123
?15?141 25ac0f96
?15?142 0gbb8oz643
?15?143 25ako0ui
?15?144 08o69icz321
?15?145 0gbhe8z3421
?15?146 8kk3123z641
?15?147 354m96zw32
?15?148 39u066z32
?15?149 wggca52z6521
?15?150 cilmzx346
?15?151 03lkk8z643
?15?152 0g6pb8oz121
?15?153 g8jdzpic
?15?154 39e0djo
?15?155 25ac0fho
?15?156 cq23z012156
?15?158 wggka52zc96
?15?159 wg8ob96z65
?15?160 xgs252zca43
?15?161 03lkk8z652
?15?162 32hu0696
?15?163 bd0ehr
?15?164 wgbqicz65
?15?165 0gba96z643
?15?166 0at1acz321
?15?167 4a9ra96
?15?168 69jc48a6
?15?169 0gbq2sgz121
?15?170 358gu156
?15?172 o5r8b5z01
?15?173 356o8a53
?15?174 g8o69icz121
?15?175 354m93zw32
?15?176 03lkk8z256
?15?177 0gbap3z321
?15?178 ca9jzw3452
?15?179 699m4k8zx11
?15?180 39c8a6z033
?15?181 69b88czw252
?15?182 4aar9ic
?15?183 03pczok452
?15?184 3hu0oka4
?15?185 ogkq23z66
?15?186 wggs252z696
?15?187 g4s3pmz11
?15?188 wgil96z652
?15?189 25is079c
?15?190 358ml96
?15?191 31e88cz0253
?15?192 025a8cz2553
?15?193 0gbaa4z1256
?15?194 0ggo8brz32
beehive_and_dock j1u0696z11
scorpion 69egmiczx1
cis-mirrored_R-loaf 259e0e952
cis-R-bee_and_R-mango 697079ic
mirrored_cap 69f0f96
?16-sym_scorp 69bob96
cis-mirrored_longhook 3hu0uh3
R-bee_and_C 69e0ehr
cis-hook_and_R-mango 69is0si6
hook_and_C 39e0ehr
trans-R-bee_and_R-mango 0ca952z2553
pond_and_cap 69960uic
cap_and_longhook 3hu0uic
?16?004 32qbzca43
trans-ship_and_dock 3lk453z321
loaf_on_R-mango 0g8o69a4z3421
?16?006 xca952z2553
?16?007 0ggs2qrz32
ortho-aircraft_and_dock 0c93z651156
para-aircraft_and_dock j1u06ioz11
table_and_dock j1u0uiz11
para-hook_and_R-havoc 259aczx6513
?16?011 w8k8a53z6521
para-hook_and_C m2s079cz11
?16?013 39egmiczx1
ortho-R-bee_and_C c4o0e96z321
mango_on_R-loaf wggci96z2543
?16?015 0c8a53z2553
?16?016 4aab96zx33
?16?017 c88q552z311
trans-hook_and_R-mango 0ca952z6513
?16?018 08o6hrz643
cis-ship_and_dock j1u06acz11
?16?019 gbbo8a6z11
ship_on_boat_with_longtail 0g8o653zbc1
?16?020 1no3qic
pond_on_R-loaf 0ggca96z3443
?16?021 69is079c
?16?022 4aab96z033
?16?023 69aczx3596
?16?024 04s0f96z321
?16?025 259e0mp3
?16?026 0gjlicz346
?16?027 0gjlkcz346
?16?028 g88e13z178c
?16?029 0259acz2553
?16?030 h7ob96z11
?16?031 35is0si6
?16?032 gs2ib8ozx32
?16?033 wg0si96z2543
?16?034 2ege96z321
?16?035 69ligozw66
?16?036 69ngbr
?16?037 6a88b52z033
?16?038 gbap56z121
?16?039 0c88a53z2552
?16?040 c4o79cz321
ortho-hook_and_C 08o0ehrz321
?16?042 0jhu0ooz32
?16?043 3iaj2acz011
?16?044 6ags2qr
?16?045 35is0sic
?16?046 69aczw6953
?16?048 35a8czx6513
?16?049 0c8a52z6953
?16?050 09v0ca4z321
?16?051 1787164ko
?16?052 0259acz6513
?16?054 25b88a6zw33
?16?055 0mp2sgz643
?16?056 0mk453z3443
?16?057 356o8br
?16?059 25aczw3115a4
?16?060 raarzx123
?16?061 o8bdzx3156
?16?062 69ara96
?16?063 4a970sia4
?16?064 69b88czw652
?16?065 mligz1w696
?16?066 0j1u066z321
?16?067 69b88czw256
?16?068 oggm952z66
?16?069 031e8gz8k871
?16?070 35s2mzx1252
?16?071 0g8ka952z3421
?16?072 35a8ob96
?16?073 3hu06996
?16?074 31egu156
?16?075 gilmz1w696
?16?076 c4gf96z321
?16?077 2llm853z01
?16?078 g88q596z1221
?16?081 4a9mk46zx121
?16?082 g8hf0cicz11
?16?084 xca952z6513
?16?085 03l2sgz2543
?16?086 0j1u0ooz321
?16?088 mmge1e8z1
?16?089 69araic
?16?090 02llicz643
?16?091 gs2596z1226
?16?092 c9b871z33
?16?093 259e0eik8
?16?094 25is0sia4
?16?095 0j9m4koz121
?16?096 08u1da4z321
?16?097 039m4koz311
?16?098 697o4iczx11
?16?100 259aria4
?16?102 09v0ck8z321
?16?103 8o6p96z1221
?16?104 mkhf0ccz1
?16?105 65lmge2zw1
?16?106 3hu069ic
?16?107 2552sgz0653
?16?108 69baiczx32
?16?109 0gs2arz3421
?16?110 6a88a52z253
?16?111 4a9r2pm
?16?112 xc8a53z6513
?16?113 m2s0796z11
?16?114 39u08k8z321
?16?115 0cp3z643033
?16?116 178f1ego
?16?117 c88m552z311
?16?118 2lla8cz1221
?16?119 8e1t6zx1252
?16?120 35aczw3553
?16?121 39m453z321
?16?122 04a96z4a5113
?16?123 0c88a52z2596
?16?124 39s0ca4z321
?16?125 cim453z641
?16?126 69aczx315a4
?16?128 0g0s2qrz321
?16?129 178c2djo
?16?130 ci4o0uh3zw1
?16?131 g88b96zc93
?16?132 2ege132ac
?16?133 39cz651156
?16?134 354kmzx1256
?16?135 03lkicz643
?16?136 4ap3zw12596
?16?137 69p64k8zw121
?16?138 25b8ob96
?16?139 31ege1da
?16?140 62s0f9z321
?16?141 3pm86248c
?16?142 0o4a952zbd
?16?143 312kozw12ego
?16?144 69iczxd552
?16?146 0g8id96z3421
?16?147 g8id1egoz11
?16?148 xggm952z4a43
?16?149 6a88brzx32
?16?150 0ml2sgz1243
?16?151 w8o6952z6521
?16?152 xoka53z653
?16?153 69f0ci96
?16?154 178jd453
?16?155 03lkk8zc96
?16?156 6s1raa4zw1
?16?157 03lka6z643
?16?158 wml5a4z643
?16?159 6970si96
?16?160 69ab8oz033
?16?161 0bq2sgz643
?16?163 69mggoz04a6
?16?164 62s0c93z321
?16?165 0c88b52z2552
?16?166 358gu15a4
?16?167 25is0si52
?16?168 252s0ccz2521
?16?169 259aczx2553
?16?170 62s0f96z011
?16?171 259mggozx66
?16?172 gill2z1w652
?16?173 0cq1egoz321
?16?174 g6q0si52z11
?16?175 0c8a53z6513
?16?176 0gil9a4z3421
?16?177 4s0c453z643
?16?178 0pf033z643
?16?179 c4o79icz011
?16?180 651248n96
?16?181 o4id1egoz01
?16?182 03lkk8z696
?16?183 ca2s53z311
?16?184 c8al96z311
?16?185 0i5t2sgz121
?16?186 0giu0696z32
?16?187 j5s2552z11
?16?188 wggm952z696
?16?189 8e1u8zx1256
?16?190 4a9b88czx33
?16?191 0j1u06a4z121
?16?192 358e1dio
?16?193 39u06a4z32
?16?194 2l2s53z321
?16?196 xgila4z4a96
twinpeaks 2ege1ege2
block_and_anvil 4aab871z033
para-R-loaf_and_C ca96z065156
para-loaf_and_dock 3lk453z3421
?17?002 660uh32ac
?17?003 2ege1t6zx11
?17?004 0259acz6953
?17?005 g6p3qicz11
?17?006 2lligoz1226
ortho-loaf_and_dock 3lk453z1243
ship_on_elevener 356o8a6z0321
?17?007 69raicz32
R-mango_on_pond 0g8o6996z3421
?17?009 gbb8b5z123
cis-R-loaf_and_R-mango 4a97079ic
?17?010 0356o8z69521
?17?011 3lkiacz1221
?17?012 178baa4zw33
?17?013 09v0cicz321
?17?014 03lk453z643
?17?015 0696z311d96
?17?016 256o696z0321
?17?017 xg8ge13zca611
?17?018 4aab96z0352
?17?019 6a88brz033
trans-R-loaf_and_R-mango 0ca952z6953
?17?020 g6t1qrz11
?17?021 j1u06ak8z11
?17?022 31e88gzc8711
?17?023 5b8b96zx33
?17?024 gie0e93z56
?17?025 025a4z69d113
?17?026 4aarahr
?17?027 69b88a6zw252
?17?028 025a4oz69d11
?17?029 01784oz69d11
?17?030 0c88b52z6952
?17?031 69mggkczw66
?17?032 ckggka52z066
?17?033 xg8k871zca611
?17?034 5b8b96z033
?17?035 069a4ozc8711
?17?036 j1u062sgz11
?17?037 178b9a4zw33
?17?038 0gs2qrz643
?17?039 4aarhar
?17?040 259e0ehr
?17?041 03lk453z2521
?17?042 cimggm96zx1
?17?043 0kc0f96z346
?17?044 0db88cz2553
?17?045 25ako0uic
?17?046 xg8o653zca23
?17?047 0mlhe8z3421
?17?048 2lla8k8z1221
?17?049 3lkm96z32
?17?050 39u08kcz321
?17?051 wg0s2qrz2521
?17?052 0312koz69a43
?17?053 0ggm96z3ego
?17?054 0ok2qrz643
?17?055 69ab96z033
?17?056 09v0bdz321
?17?057 259aczy0315a4
?17?058 4a9r8br
?17?059 69aczw65156
?17?060 0g8o653z1qm
?17?061 8o6pb8oz23
?17?062 wmkiarz252
?17?063 031e8gz69d11
?17?064 ckggm96z066
?17?065 0mp3z643033
?17?066 gie0e96z56
?17?067 3lka96z321
?17?068 259ege2z0321
?17?069 69baa4z253
?17?070 0ggciarz3421
?17?071 2ege952z321
?17?072 03hu0ooz643
?17?073 0gilmz32w652
?17?074 3pq3qic
?17?075 259ara96
?17?076 39c8a52z253
?17?077 25is0si96
?17?078 0g8ob96zc96
?17?079 g8ie0ehrz01
?17?080 39u0ooz643
?17?081 660u1e8z0321
?17?083 gwci96z11dd
?17?084 cc0v146z311
?17?085 w8o6996z6521
?17?086 8e1t6zx1256
?17?087 09v0f9z321
?17?088 6a88a52z653
?17?089 6a88b5z653
?17?090 wgs2qrz643
?17?091 4a9f0ckzx311
?17?092 4a970si96
?17?093 0c88brz2552
?17?094 39mgmaz321
?17?095 0dr0f9z321
?17?096 0oggm93z4aa4
?17?097 gbq1ticz01
?17?098 c4o79a4z321
?17?099 39u0uiz023
?17?100 0gbaarz343
?17?101 69bo8br
?17?102 65la8cz0343
?17?103 mm0e96z56
?17?104 4aar1qr
?17?105 okkm96z66
?17?106 69aczx359a4
?17?107 0c88e13z6952
?17?108 697o4czw343
?17?109 4aab96zw253
?17?110 09v0ca6z321
?17?111 wiu0696z643
?17?112 0h7ob96z121
?17?113 699mk4ozx121
?17?114 0c88bdz2553
?17?115 69r2qczw121
?17?116 08e1t6z6511
?17?117 gillicz146
?17?118 0j1u0696z121
?17?119 0gjlka4z346
?17?120 0oggm96z4aa4
?17?121 2egu1qr
?17?122 8e1t6zx1253
?17?123 ciarzxc952
?17?124 g84s3pmz121
?17?125 0gbb871z343
?17?126 c9baaczw33
?17?127 4aab96z253
?17?128 8kimgm96zx1
?17?129 25a8czx65156
?17?130 ckgojdzx66
?17?131 cp3qicz23
?17?132 6a88b9czx33
?17?133 4aligkczw66
?17?134 2egu164ko
?17?135 35is0sia4
?17?136 3lk2sgz343
?17?137 c89f033z33
?17?138 c89f0ccz33
?17?139 ckggm93z066
?17?140 0g8ie0e96z23
?17?141 0cq1dicz321
?17?142 04a96zca5113
?17?143 0651u8z4a521
?17?144 xohf033z253
?17?145 8k4r2qrzw1
?17?146 3iaczw11d96
?17?147 03lk453z4701
?17?148 mligz1w69a4
?17?150 6ao4a96z321
?17?151 69lmzx34a6
?17?152 62s0v1oozx1
?17?153 ogil96z6a4
?17?154 25a8czwca513
?17?155 mll2z1025a4
?17?156 4aq3qa4zw121
?17?157 069b8oz3156
?17?158 069b8oz3552
?17?159 mm0e96z146
?17?160 gilmz1w6jo
?17?161 08u1dioz321
?17?162 178c1fgkc
?17?163 g88bp453z23
?17?164 8kkjaaczx23
?17?165 0ggcaarz1243
?17?166 0c8a53z6953
?17?167 354kl3z0643
?17?168 031e8gzck871
?17?169 0ggm9icz3443
?17?170 c88bp46z33
?17?171 mm0e93z146
?17?172 259aczw315a4
?17?173 0g9fgka4z321
JC rhe0ehr
cis-mirrored_R-mango 69is0si96
?18-loaf_eater_tail 2egm9a4zx346
?18-boat_huge 69b88a6zw652
?18-block_scorp gbbgn96z11
rotated_C c4o0ehrz321
?18?003 02596z69d113
?18?004 bd0u2kozw23
?18?005 0c88b96z6513
?18?006 0mllicz346
?18?007 c89n871z311
?18?008 39e0ehla4
pond_and_dock 3lk453z3443
?18?009 ckggm952z066
R-mango_and_C m2s0si96z11
?18?011 gs2ll2z2543
?18?012 o8gehrz643
?18?013 0c88b96z2553
longhook_and_dock j1u0uh3z11
?18?014 gillmz1w643
?18?015 c88b96z3552
?18?016 0mmge96z1221
?18?017 8ehlmzw12452
?18?018 0mmge93z1221
?18?019 8kai3g8ozx343
?18?020 g88bbgz011dd
?18?021 m2s079icz11
?18?022 gs2ib96z1221
?18?023 69n8brzx11
?18?024 8e1t2sgz311
?18?025 69b88cz2553
?18?026 mm0e96z1226
?18?027 3iab96z343
?18?028 25aczw311dic
?18?029 69b88cz6513
?18?030 354m453zw343
?18?031 69js3pm
?18?032 259aczx65156
?18?033 4alhe0e96
?18?034 3iakgkcz3421
?18?035 ca9m4koz311
?18?036 69baa4ozx311
cap_and_dock j1u0uicz11
?18?037 259aczw4a953
?18?038 3hu0ok8z643
?18?039 3jgf96z321
?18?041 31e88a53zw33
?18?042 259aczw359a4
?18?044 4aabaaczx33
?18?045 0cp3z321079c
?18?046 31egogkczx66
?18?047 gjlkmz1w643
?18?048 g6p2r9a4z11
?18?050 69ir2qr
?18?051 259aczw315ac
?18?052 gbaqb96z11
?18?053 2ll2sgz3443
?18?054 69a4z65115a4
?18?055 03lk453z6521
?18?056 62s0f96z321
?18?057 gbbob96z11
?18?058 330fhu0oo
?18?059 69b8brzx32
?18?060 69bo3qic
?18?061 mllmz1w346
?18?062 0gilmz32w696
?18?063 69baa4z2552
?18?064 ckgil96z066
?18?065 0h7ob96z321
?18?066 25b8b96zw33
?18?067 69ar2qr
?18?068 69baa4z653
?18?069 3lowggozw3496
?18?070 g88bbgz0dd11
?18?071 g8ie0ehrz11
?18?072 69e0ehar
?18?074 c88b96z3156
?18?075 259mggozwca6
?18?076 31ege96z0321
?18?077 69b88a6zw256
?18?079 35is0si96
?18?080 ciab96z643
?18?081 qmgm96z66
?18?082 0c9b871z2552
?18?083 035a4oz69d11
?18?084 35is0si53
?18?085 0gbb871z3452
?18?086 gbaqj96z11
?18?087 gbbgf9z1221
?18?088 0j9mkk8z3421
?18?089 gbb8b52z123
?18?090 69egdbgzx121
?18?091 3iabqicz011
?18?092 62s0ci96z321
?18?093 4aab96z2552
?18?094 178bb8ozw33
?18?095 69arhar
?18?096 mm0e952z56
?18?097 69iczx11dik8
?18?098 c4o79icz321
?18?099 32qr2qr
?18?100 6a8o6hrzw23
?18?101 2lligkcz3201
?18?102 4a9b88a6zx33
?18?103 0ca1u8z69521
?18?104 0651u8z69521
?18?105 4a9baaczx33
?18?106 259mggkczx66
?18?107 35is079ic
?18?108 2ege1fgkc
?18?109 0mmge93z3201
?18?110 6a88brz253
?18?111 39u08ka4z321
?18?112 0gbbo8a6z321
?18?113 ckggm96z4a6
?18?114 35a88czca53
?18?115 0jhu0og4cz32
?18?116 4ap3qicz32
?18?117 6a88a53z653
?18?118 358e1fgkc
?18?119 0mk2qrz643
?18?120 0c88a53z6996
?18?121 35s2djoz011
?18?122 0o8b96zok96
?18?123 69mggkcz04a6
?18?124 wmm0e96z643
?18?125 39e0ooz0354c
?18?126 25a8cicz06511
?18?127 c970s4ozw6221
?18?129 33gv1oka4
?18?130 697o796zw11
?18?131 0oggm96z4aic
?18?132 gill2z1w69a4
?18?133 g88m952sgz121
?18?134 w6t1egoz2521
?18?135 c88bqicz33
?18?136 2596z311d96
?18?137 09v0cia4z321
?18?138 ckggka53z066
?18?139 mmge1da4z1
?18?140 0g88bpicz343
?18?141 35akggkczx66
?18?142 g8eht2sgz11
?18?143 0mkid96z1221
?18?144 j1u06akoz11
?18?145 0gs2552z12ego
?18?146 2lla8kcz1221
?18?147 02lligz652w23
?18?148 g88b96zd552
?18?149 3lk64koz321
?18?150 3hu0628c48c
?18?151 69fgkcz0643
?18?152 5b8b96z0352
?18?153 0c93z69d552
?18?154 4aq3ob5zw121
?18?155 ci96zw11dik8
?18?156 33gv164ko
?18?157 xraik8z3543
?18?158 0mligz32w696
?18?159 64kbaicz0321
?18?160 35iczw123cko
?18?161 31ekhf0cc
?18?162 j1u069icz11
?18?163 wgbb871z2543
?19?001 69icw8ozxdd11
?19?002 69b88gz69d11
?19?003 69bo3tic
?19?004 69bo7pic
?19?005 gbb8brz123
?19?006 mlhe0eicz1
?19?007 69mgmiczw66
?19?008 2lmgmicz3201
?19?009 3lkmicz346
?19?010 xj1u066z4a611
?19?011 mlhe0e96z1
?19?012 3lkmik8z0146
?19?013 069b871z3156
?19?014 025acz8kid113
?19?015 3hikl3z32w23
?19?016 c88b96z3596
?19?017 69d2sgz2553
?19?018 69b8brz033
?19?019 39u0u93zw121
?19?020 2egu1uge2
?19?021 0mmge93z3421
?19?022 09v0ciicz321
?19?023 cimgm96z066
?19?024 c97obbgzx121
?19?025 mllmz1w696
?19?026 rq2kmzx3452
?19?027 0mmge96z3421
?19?028 69baicz6511
?19?029 354mik8z0696
?19?030 39u08kicz321
?19?031 39u0e96z321
?19?032 39u0eicz321
?19?033 4aab88a6zw253
?19?034 39u0uh3z023
?19?035 39u0uicz023
?19?037 3lkmk46z01w23
?19?038 0gilmz122qq1
?19?039 g88bbgz1255d
?19?040 025t2sgz3543
?19?041 bq1mkicz0121
?19?042 69b8b9czx33
?19?043 wml5akoz643
?19?044 6a88bb8ozx33
?19?045 cimkkm96zx1
?19?046 0c88b96z6953
?19?047 8kk3qicz643
?19?048 c88b96z315a4
?19?049 069acz311d96
?19?050 69b88a6zw696
?19?051 8u1t2sgz0123
?19?052 8kkm996z6421
?19?053 0mlhegoz1243
?19?054 1no3tgz643
?19?055 06996z4a51156
?19?056 2lmgmicz0146
?19?057 39mge132ac
?19?058 2lmge93z1221
?19?059 mlhikoz1226
?19?060 031e88gz8kid11
?19?061 oggo2ticz66
?19?062 0ml1eoz34611
?19?063 4aa40vhar
?19?064 8u1vg33z23
?19?065 8e1qb96z311
?19?066 3p6o8gz178c1
?19?067 069iczciq226
?19?068 6icgf9gz23x11
?19?069 2lligz32w25a4
?19?070 cc0si96zbd
?19?071 0o4a952z178a6
?19?072 wmm0e952z643
?19?073 0g31eoz8ll91
?19?074 6a88brz2552
?19?075 330fhik8zw321
?19?076 4aab96z6952
?19?077 178b96z3156
?19?078 69acz69d113
?19?079 g6s1vg33z11
?19?080 0c93z255d1e8
?19?081 62sggm96zw66
?19?084 4aab871z653
?19?085 cc0s2qrz311
?19?086 ckggm96zca6
?19?087 69e0ok8z2553
?19?088 c970brz06421
?19?089 69egm96zx146
?19?090 259aczw315ak8
?19?091 259ar1qr
?19?092 mkkm96z1226
?19?093 cil9abgzx311
?19?094 3iar2qrzw1
?19?095 0178b96z2553
?19?096 0ogill2z4aa401
?19?097 39u0eioz321
?19?098 0696z355d96
?19?099 0358g0s4z4a9611
?19?100 3pabob96
?19?101 3jgv1ooz32
?19?102 25akozca22ac
?19?103 0mm0ep3z32011
?19?104 mkhf0cia4z1
?19?105 4a96z255d96
?19?106 cimkkm93zx1
?19?107 mlhe0eioz1
?19?108 0gbbob96z121
?19?109 04aabgz311dd
?19?110 4a96kk8z2553
?19?111 c9b8brzw321
?19?112 696o8zx123cko
?19?113 25a8cz311d96
?19?114 0gilmz1qq221
?19?115 8u1raicz23
?19?116 25a8c8a6zx696
?19?117 25ak8gzciq221
?19?118 69abaaczx33
?19?119 0ca52z65115ac
?19?120 6ikm996z1221
?19?121 0mmgm96z346
?19?122 696o6hrzw23
?19?123 69icw8ozx11dd
?19?124 03lkkl3z252w1
?19?125 178kozca22ac
?19?126 gbhe0ehrz01
?19?127 651u0ok8zw643
?19?128 8o0e9jzc9611
?19?129 02lligz696w23
?19?130 gbb871z178c
mirrored_dock 3lkkl3z32w23
?20?001 4a9b8b96zx33
?20?002 697ob96z0321
?20?003 25a8a6zx6515a4
?20?005 259aczw311d96
trans-ship_on_ship_and_longhook 354kmzx123cko
?20?007 0mmge952z3421
?20?008 69e0uiz03543
?20?009 gbbo79cz1221
?20?010 696k4ozcid11
?20?011 259mge132ac
?20?012 mlhe8z102596
?20?013 0c88b96z65156
?20?014 4aabaa4z2553
?20?015 g6p3sj96z11
?20?016 02596z6511d96
?20?017 0caab96z2553
?20?018 0gbbob96z321
?20?019 069b88cz4a953
?20?020 0ad1eoz69d11
?20?021 raaraar
?20?022 0mlhegoz3443
?20?023 354mggzx1023cko
?20?024 69b88brzx321
?20?025 69mgmiczx4a6
?20?026 39u0mmz321011
?20?027 0g8o653zol54c
?20?028 mlhe0eik8z1
?20?029 69mggzw2egnc
?20?030 0mll2z12269a4
?20?031 09v0rrz643
?20?032 0cc0si96z2553
?20?033 caabqicz33
?20?034 65lmzw14b871
?20?035 69b8brz253
?20?036 0c9baa4z6953
?20?037 02596z69d1156
?20?039 69b8n96z0311
?20?040 0gjlk453z32w23
?20?041 g8e1t6z11dd
?20?042 259mgmiczx66
?20?043 c88b96z359a4
?20?044 6a88b96z2553
?20?045 gbbgf96z1221
?20?046 g88r3ob96z11
?20?047 bq2r96z3421
?20?048 69b88a6z2553
?20?049 6t1688gzw11dd
?20?050 caakl3z3543
?20?052 651u0oozw178c
?20?053 069a4z8e1d952
?20?054 69egmicz0643
?20?055 69b8brz0352
?20?056 6996z69d552
?20?057 4a96z69d1da
?20?058 3lkm996z1221
?20?059 2lmge96z3421
?20?060 259acz311d96
?20?061 2lligz32w69a4
?20?062 356o8gzciq221
?20?063 0g8eht2sgz321
?20?064 cid96zw11d96
?20?065 0g88brz8ll91
?20?066 4a9n8brzx121
?20?067 ca9licz3543
?20?068 39e0okcz2553
?20?069 69e0ok8z6953
?20?070 caab96z3156
?20?071 0gillmz32w643
?20?072 3lkljgz346w1
?20?073 69e0mmz03543
?20?074 4aab9a4z2553
?20?075 3lkkmicz3201
?20?076 0cc0si96z6513
?20?077 xoie0e93z653
?20?078 2llmz1qq23
?20?079 g8e1t6zdd11
?20?080 3lkaarz32011
?20?081 0g04a96zold113
?20?082 4a9baa4z2553
?20?083 39e0okcz0354c
?20?084 69is0siar
?20?085 3pmgm96zx66
?20?086 69a4z65115ak8
?20?087 69bq2kozx643
?20?088 69b8b9czw253
?20?089 04aab871zc871
?20?090 39u0eik8z321
?20?091 0j9eg6p3z121w1
?20?092 65ligzw1023cko
?20?094 gbbo3qicz11
?20?095 2egu1vg33
?20?096 gt3ob96z1221
?20?097 gbb8b96z1213
?20?098 2lmgmicz1246
?20?099 6a88bqicz033
?20?100 xj1u0oozca611
?20?101 04aab96z3553
?20?102 069aczg8o6513z01
?20?103 651u0okczw643
?20?104 o8bb8oz011dd
?20?105 ca9e0eicz33
?20?106 3lm0uiz3443
?20?107 0g88b96zrq23
?20?108 gbaacz11dik8
?20?109 35aczw319lic
?20?110 0gillmz346w23
?20?111 cimge96z6421
?20?112 25a8c8a6zw3552
?21?001 39u0ehrz321
?21?002 0g8e1eoz6b871
?21?003 699e0okczw653
?21?006 3hu0o4ozc87011
?21?007 3pe0oka6z0643
?21?008 69ab8b96zx33
?21?009 6a88bbgzw255d
?21?010 gbbo7picz11
?21?011 4a9m88gzcia521
?21?012 0ca96z69d1156
?21?013 2llmz12269ic
?21?014 69eg6qzca611
?21?015 39eg88gzcia521
?21?016 69m88czxdd113
?21?017 69ak8gzcie1221
?21?018 69b8b96zw696
?21?019 3lkkl3z32w252
?21?020 256o8gzxol54ko
?21?021 oe1v0rrz011
?21?022 354mgmiczw346
?21?023 g88rbgn96z11
?21?024 0iu0ep3z34611
?21?025 8e1t2sgz3543
?21?026 178b96z4a953
?21?027 ca9bojdz33
?21?028 gbb8b96z1253
?21?029 255mgm93z0643
?21?030 c88bbgz311dd
?21?031 03lkkl3zc96w1
?21?032 255m88gzcia521
?21?033 69b88a6z033033
?21?034 69acz6511d96
?21?035 gbb8b96z11w33
?21?036 651u08oz4a9521
?21?037 ad1e8gz5b871
?21?038 xml1egoz66074
?21?039 mmge996z1243
?21?040 69b8bb8ozx33
?21?041 33gv1s6z03421
?21?042 oo0e9jz6a871
?21?043 651u08oz4aa611
?21?045 0cc0si96z6953
?21?046 4a9b8b96zw253
?21?047 0mlhu0ooz346
?21?048 xrhe0e96z253
?21?049 0jhkmz32w69ic
?21?050 69b8brz2552
?21?051 0mmgu156z346
?21?052 0mlhe0e96z32
?21?053 69acz69d1156
?21?054 069acz4all96
?21?055 6a88brz6996
?21?056 6is0si96z643
?21?057 39u066z643033
?21?058 699eg8oz0359c
?21?059 2llmz3ege3
?21?060 3pmz4aaq2sg
?21?061 j1u0mmz11w346
?21?062 39u0o4oz0c9611
?21?063 39mgmicz0ca6
?21?064 cic87piczw113
?21?065 cimgm93z4aa4
?21?066 0gt3ob96z3421
?21?067 69abaa4z2553
?21?068 8o6p3qicz0123
?21?069 c8a52z355d96
?21?070 4a60u1t6zw6221
?21?071 g88e1ege1e8z11
?21?072 354m88gzcia521
?21?073 69baik8z2553
?21?074 4a9b8b5zw6513
?22-trans-mirrored_long 08o0u93zoif032
?22?002 69b88cz69d113
?22?003 39e0ehu0ui
?22?004 gbb8bqicz123
?22?005 69b8b96z6513
?22?006 354kl3zx123cko
?22?007 0iu0e93z643033
?22?008 69b8b96z2553
?22?009 2llmz1qaar
?22?010 0mlhu0ok8z346
?22?011 3lkkl3z01w69a4
?22?012 3586178bqic
?22?013 ca9bob96z33
?22?014 09v0rbz3210123
?22?015 ca1u8zx122ria4
?22?016 gs2qb96z6aa4
?22?017 0g8861t6z345d11
?22?018 gbb8bpicz123
?22?019 03lkkl3z470641
?22?020 0iu0u93z643032
?22?021 69b8bpicz033
?22?022 ra1v0rrz011
?22?023 g88bbob96z123
?22?024 09v0v9z3210123
?22?025 4aicgn98czx1243
?22?026 caab9a4z3553
?22?027 xg84o0uh3z4a9611
?22?028 069riicz69a6
?22?029 2llmggz1qq221
?22?030 2llmz12egnc
?22?031 3lkljgz32w643
?22?032 02596z69bp552
?22?033 69b8b96z03156
?22?034 039q4oz6a870123
?22?035 08o0ehe0eicz321
?22?036 0g8e1dqz6b871
?22?037 699m88gzcia521
?22?038 0g8ka96zraahz011
?22?039 g88ci96zo5ldz01
?22?040 2llmgmmz3201w1
?22?041 6960uhe0e96
?22?042 3lk6gmiczw343
?22?043 39e0mp3z03543
?22?044 259e0ehraa4
?22?045 0g8ka96zraahzw11
?22?046 69f0rbz25521
?22?048 wg8kie0e96z2543
?22?049 69b8bqicz033
?22?050 354c0cczx69d113
?22?051 0g6p7ob96z321
?22?052 69mggozo4q226z01
?22?053 69b88czw69d113
?22?054 cc0v1u0oozx123
?22?055 4a9e0uiz03553
?22?056 gbbo79icz1221
?22?057 25akgka52zca26
?22?058 069ak8gz8kie1221
?22?059 caabaa4z3553
?22?060 xm2s079a4z4a611
?23?001 6996z69d1dic
?23?002 259e0ehu0ui
?23?003 3pmkkmzcia401
?23?004 0caabqicz2596
?23?005 xg8o652zm2s346z11
?23?006 69acz69d1d96
?23?007 0gbbo7picz321
?23?008 xrhe0ehrz253
?23?009 69b8b96z033033
?23?010 gbb8b96z123033
?23?011 256o8gzx6430ehr
?23?012 0mll2z344lkk8zx1
?23?013 cie0e9jzw11dd
?23?014 699e0o4k8zw69521
?23?015 3pmggzxmkl2zw1221
?23?016 259m88gzy0123ciic
?23?017 4ais0s2qb96zy21
?23?018 0ca96z69d1d96
?23?019 c8970sicz06953
?23?020 0oo0e952zoie033
?24?001 39u0u93z3210123
?24?002 c89n8brz33032
?24?003 0mlhe8gz32w358go
?24?004 69b8bqicz653
?24?005 4aab96z255d96
?24?007 0gs2t1eoz4aa611
?24?008 09v0v9z6430346
?24?009 69b88cz69d553
?25?001 660u1uge2z3543
?25?002 ca1v0ccz3303453
?25?003 8e1v0rrz3543
?25?004 69ege2s0siczx121
?25?005 69b8bb8ozw6996
?25?006 mlhegmmz1x3443
?26-mirrored_huge 6a88b9cz6511d93
?26?001 g88ml1eoz178a611
?26?002 69ab9cz695d93
?26?003 o8g0s2ibpicz643w1
?26?005 c88baacz311d553
?26?006 g39s0s48gz11d4ko11
?26?007 69b88a6z69d1156
?26?008 69bqa4zx4abqic
?26?009 g84q55q4oz01169521
?27?001 651u0u156zw17871
?27?002 354q4oz69d1ehp
?27?003 0gwo4qabqicz343032
?28-tetra_loaf 0g8ka9m88gz122dia521
?28?001 0caab96z321311d96
?28?002 xrhe0ehrz253y3352
?29?001 0gs2llmz32012egnc
?30-great_sym 69b8b96z69d1d96
?30?001 69b88c0cczx330311d96
?31?001 69b88bbgz69d11dd
?40?001 gj1u0u1jgzdlgf0fgld
My suggestion would be to add all of these objects (that aren't there already) to apgsearch's "common names" list. They don't necessarily have to be added under the above names... but I'm not planning on generating better names for them -- it doesn't matter what they're called, as long as they're noted as having been found before.

When something appears that's not on this extended list of objects, it will really be time to sit up and take notice. I wonder how many still lifes and oscillators have been found by apgsearch that were never seen by Achim Flammenkamp's or Andrej Okrasinski's searches? And what objects were found by those previous searches that haven't turned up in apgsearch yet?

dsmiller
Posts: 12
Joined: October 9th, 2014, 9:14 pm
Location: Emmaus, Pennsylvania

Re: apgsearch: a high-performance soup searcher

Post by dsmiller » October 9th, 2014, 9:48 pm

dvgrn wrote:-- All that said, I'd still absolutely love to see an eater2 pop out of a random soup sometime.
Here you go! (That didn't take long.) From the soup dsmillerrndss2019887:

Code: Select all

x = 16, y = 16, rule = B3/S23
oobboobbobooobob$
bbboooboboobobob$
booboobbbboboobb$
bobooboooboboboo$
oooboboooobbbobb$
obooooooooobobob$
bbbbobbboobbooob$
bobobooobobbboob$
bobboooooobobbbb$
booobbooobobbbbb$
obbbobobbbobbboo$
bobobobbbboboobo$
obbbboobbobobbbo$
oobbooobobbobbob$
oobbbbbbbbboboob$
booobooooooboooo$
!
The eater2 drops out of the soup pretty quickly, but there might be something there that can be used for synthesis.
David S. Miller

User avatar
dvgrn
Moderator
Posts: 10610
Joined: May 17th, 2009, 11:00 pm
Location: Madison, WI
Contact:

Re: apgsearch: a high-performance soup searcher

Post by dvgrn » October 9th, 2014, 10:32 pm

dsmiller wrote:
dvgrn wrote:-- All that said, I'd still absolutely love to see an eater2 pop out of a random soup sometime.
Here you go! (That didn't take long.) From the soup dsmillerrndss2019887... The eater2 drops out of the soup pretty quickly, but there might be something there that can be used for synthesis.
Wow -- not even a weird variant, but the original eater2! I'm going to think really hard before I make my next wish.

The minimal predecessor certainly looks promising (though I only know enough to be dangerous):

Code: Select all

x = 7, y = 13, rule = B3/S23
bo$bo$3bo$4b2o$2bob2o$obob2o$o3b2o$obob2o3$4bo$3bob2o$6bo!

User avatar
Extrementhusiast
Posts: 1966
Joined: June 16th, 2009, 11:24 pm
Location: USA

Re: apgsearch: a high-performance soup searcher

Post by Extrementhusiast » October 12th, 2014, 7:03 pm

Natural reaction that generates an extremely unusual 24-bitter:

Code: Select all

x = 31, y = 37, rule = B3/S23
9b2o$9b2o2$9b2o$9b2o2$b2o$obo$2o10$3bo$2bobo$2bobo5bo$3bo5bobo$9bobo$
10bo11b2o$21b2o$22bo$28b3o9$3b2o$3b2o!
All blocks can be replaced with appropriately-positioned gliders.
I Like My Heisenburps! (and others)

User avatar
dvgrn
Moderator
Posts: 10610
Joined: May 17th, 2009, 11:00 pm
Location: Madison, WI
Contact:

Re: apgsearch: a high-performance soup searcher

Post by dvgrn » October 12th, 2014, 7:26 pm

Extrementhusiast wrote:Natural reaction that generates an extremely unusual 24-bitter... All blocks can be replaced with appropriately-positioned gliders.
Nice one. Might there be any hope of starting from the pre-traffic light at T=108 instead of that far-off R-pentomino?

Code: Select all

x = 21, y = 37, rule = B3/S23
5b2o$5b2o6$b2o$obo$2o8$b3o3bo$b3obo2bobo$2bo4b2ob3o$7b2o4b2o$8bobo3bo$
7b2ob5o$7b3o8b2o$17bo2bo$3b3o12b2o$3b2o$4b2o$4b2ob3o$4b2o2bo$5b3o$6bo
4$12b2o$12b2o!

NickGotts
Posts: 101
Joined: November 10th, 2011, 6:20 pm

Re: apgsearch: a high-performance soup searcher

Post by NickGotts » October 13th, 2014, 11:45 am

Just trying apgsearch for the first time, and am getting a Python error. There's a stack ofcalls, but thew most recent is:

line 1247 in census
g.setrule("APG_CoalesceObjects_" + self.rg.alphanumeric)
RuntimeError: Given rule is not valid in any algorithm.

I have Python 2.7 installed. I've selected B3/S23. I've tried restarting Golly, two different versions of apgsearch (0.45 and 0.41), always get the same error. Anyone have any idea what the problem might be?

User avatar
dvgrn
Moderator
Posts: 10610
Joined: May 17th, 2009, 11:00 pm
Location: Madison, WI
Contact:

Re: apgsearch: a high-performance soup searcher

Post by dvgrn » October 13th, 2014, 12:30 pm

NickGotts wrote:Just trying apgsearch for the first time, and am getting a Python error...
Well, I've never seen anything like this, but...

Your Python installation is probably fine, since the script has gotten to line 1247. For some reason, apgsearch seems to be unable to write the rule tables it needs to Golly's Rules folder. (Or else it can't find the rule file when it needs it, but that seems less likely.)

Try running (just File > Run Clipboard is fine) --

Code: Select all

import golly as g
g.note(g.getdir("rules"))
-- and see if you can figure out any reason why apgsearch might not be allowed to write to that directory on your system.

What OS are you running Golly on? (It's really nice not having to ask this except as an afterthought...!)

NickGotts
Posts: 101
Joined: November 10th, 2011, 6:20 pm

Re: apgsearch: a high-performance soup searcher

Post by NickGotts » October 13th, 2014, 12:56 pm

dvgrn wrote:What OS are you running Golly on?
Ah, I think the problem was not the OS, but the version of Golly - I was inadvertenly running on 2.4 It seems to be working fine on 2.7b2-win-x64.

User avatar
Kazyan
Posts: 1247
Joined: February 6th, 2014, 11:02 pm

Re: apgsearch: a high-performance soup searcher

Post by Kazyan » October 13th, 2014, 3:14 pm

dvgrn wrote:The minimal predecessor certainly looks promising (though I only know enough to be dangerous):

Code: Select all

x = 7, y = 13, rule = B3/S23
bo$bo$3bo$4b2o$2bob2o$obob2o$o3b2o$obob2o3$4bo$3bob2o$6bo!
Glider synthesis amateur hour:

Code: Select all

x = 42, y = 41, rule = B3/S23
2bo37bo$3bo34b2o$b3o35b2o$8bo2bobo$6bobo3b2o$7b2o3bo3$4bo$2bobo31bobo$
3b2o31b2o$37bo5$22bobo$23b2o$23bo$25bo$20b2o2bo$19b2o3b3o$21bo$16b2o$
17b2o$16bo7$39b2o$6bo32bobo$6b2o31bo$5bobo$2o$b2o9b3o$o13bo23b2o$13bo
24bobo$38bo!
EDIT: Now with 10 gliders instead of 15. Replaced snake-kludge with a block-based method. Could maybe be cut down to 9 if the Block + TL can be made in 3 gliders.

Code: Select all

x = 19, y = 23, rule = B3/S23
16bo$16bobo$bo5bo8b2o$2b2o4bo$b2o3b3o2$4bo$5bo$3b3o8bo$13bo$6b2o5b3o$
5bobo$2o5bo$b2o$o16bo$16b2o$16bobo3$7b2o$8b2o6bo$7bo7b2o$15bobo!
Tanner Jacobi
Coldlander, a novel, available in paperback and as an ebook. Now on Amazon.

wildmyron
Posts: 1542
Joined: August 9th, 2013, 12:45 am
Location: Western Australia

Re: apgsearch: a high-performance soup searcher

Post by wildmyron » October 14th, 2014, 1:03 am

dvgrn wrote:I put this item on the To Do list:

Code: Select all

# TODO: extend the common-objects list further with top 1800 objects from
#       http://wwwhomes.uni-bielefeld.de/achim/ash-pattern.txt
I'm curious about what people think about radically extending the common-objects list in this way. I don't think this will make any noticeable difference in search speed, and it should give a better sense of when a search might possibly have turned up something that hasn't been seen before.
With the current list my observation is that a 10 million soup run will result in a large number of small objects which show up more than 5 times which aren't on the list, and also other objects which are on the list but only show up one or two times. Because the number of soupids recorded for a given object is determined by presence on the commonnames list, the rareobject soupids list is a bit lopsided and a very rare object which happens to show up twice may only have one soupid recorded.

Possible options:
* Adjust the commonnames list to only contain objects which have a reasonable probability of turning up in any single 1 million soup run
* Extend the dict to include a field which indicates rarity and use this to determine wether to save multiple soupids

Also, the commonnames list is very Life centric, and apgsearch is being used to search a range of rules. Some uncommon life objects will be common in other rules, and many objects which are very common in other rules but aren't supported in Life are of course missing. This suggests reading the common object list from a file which contains rule specific lists of objects. I also considered automating a way to determine rarity of objects in other rules and automatically keep track of the objects which are found to be common. I haven't implemented these ideas though due to a other projects.

A few other suggestions:

* Store the search version and the rule searched in the progress file:

Code: Select all

        # Header information:
        results = "@SEARCH apgsearch v0.4.5\n"
        results += "@MD5 " + md5root + "\n"
        results += "@ROOT " + root + "\n"
        results += "@NUM_SOUPS "+str(numsoups) + "\n"
        results += "@NUM_OBJECTS " + str(totobjs) + "\n"
        results += "@RULE " + self.rg.slashed + "\n"
        results += "\n"
You could check the rule used in post processing scripts such as get-high-bit-count-objs.py like this:

Code: Select all

for fn in fnlist:
  all = open(fn, 'r').read()
  for line in open(fn, 'r'):
    parts = line.split()
    if not parts:
      continue
    if (parts[0] == "@RULE"):
	  if parts[1] == "B3/S23":
	    continue
	  else:
	    break
    ...
* A few tab characters crept into v0.45 which messes up the indentation when tab length is not 8 spaces

* In my hashsoup.py script I return thesoup instead of putting it in the layer. If you do this, save_soup() can be simplified by replacing the rle generating code:

Code: Select all

    # Save soup RLE:
    def save_soup(self, root, soupnum):

        # Soup pattern will be stored in a temporary directory:
        souphash = hashlib.sha256(root + str(soupnum))
        rlepath = souphash.hexdigest()
        rlepath = g.getdir("temp") + rlepath + ".rle"
        
        results = "<a href=\"open:" + rlepath + "\">"
        results += root + str(soupnum)
        results += "</a>"

        thesoup = hashsoup(root + str(soupnum))

        try:
            g.store(thesoup, rlepath)
        except:
            g.warn("Unable to create soup pattern:\n" + rlepath)

        return results
The 5S project (Smallest Spaceships Supporting Specific Speeds) is now maintained by AforAmpere. The latest collection is hosted on GitHub and contains well over 1,000,000 spaceships.

Semi-active here - recovering from a severe case of LWTDS.

User avatar
dvgrn
Moderator
Posts: 10610
Joined: May 17th, 2009, 11:00 pm
Location: Madison, WI
Contact:

Re: apgsearch: a high-performance soup searcher

Post by dvgrn » October 14th, 2014, 10:10 am

wildmyron wrote:With the current list my observation is that a 10 million soup run will result in a large number of small objects which show up more than 5 times which aren't on the list, and also other objects which are on the list but only show up one or two times. Because the number of soupids recorded for a given object is determined by presence on the commonnames list, the rareobject soupids list is a bit lopsided and a very rare object which happens to show up twice may only have one soupid recorded.
Yes, 0.45 is definitely just a half-baked experiment in extending the common-names list. Clearly the number of soupIDs recorded for "rare" objects should be capped at some reasonable number: if ten or more soups are found in a given run, let's say, the object isn't rare any more (so it should have only one sample soupid listed).
wildmyron wrote:Also, the commonnames list is very Life centric, and apgsearch is being used to search a range of rules. Some uncommon life objects will be common in other rules, and many objects which are very common in other rules but aren't supported in Life are of course missing.
And the hacked version of apgsearch is _very_ Life-centric, because it will happily record hundreds or thousands of soup IDs for "rare" objects that are really very common in whatever Lifelike rule is being searched, making quite a mess of the census HTML and slowing down the census considerably with all the temporary files being written.

This is definitely worth fixing -- I'll probably put together a v0.46 in the next few days. Objects will be added to the common-names list (temporarily, for any given soup run) if ten or more of them are found; the "common name" will be simply the apgcode.

I'll probably throw all of Achim Flammenkamp's names into the common-names list, too, just as a continuation of the experiment. I've heard a rumor that apgsearch's proper author may be going through some kind of quantum phase transition about now (though those are notoriously hard to predict) and so may have enough time to roll the best of these ideas into an official 0.5 release.
wildmyron wrote:* A few tab characters crept into v0.45 which messes up the indentation when tab length is not 8 spaces
Fixed that just now and re-posted version 0.45 -- no other changes yet.

User avatar
Extrementhusiast
Posts: 1966
Joined: June 16th, 2009, 11:24 pm
Location: USA

Re: apgsearch: a high-performance soup searcher

Post by Extrementhusiast » October 19th, 2014, 9:11 pm

I don't really like how, if a rare object occurs in multiple soups, if it is named (e.g. mazing) only one soup is saved, but if it is unnamed, all soups are saved. Perhaps changing it to "save only the first N soups that have this object" for some N? (Or, just create a list of exemptions, or something to that effect.)
I Like My Heisenburps! (and others)

User avatar
dvgrn
Moderator
Posts: 10610
Joined: May 17th, 2009, 11:00 pm
Location: Madison, WI
Contact:

Re: apgsearch: a high-performance soup searcher

Post by dvgrn » October 19th, 2014, 9:21 pm

Attached is an "official" version 0.5 of apgsearch that Calcyman sent along to me nearly a week ago. It's pretty much version 0.45 with some improvements to make it a little less Life-centric -- e.g., adding the rule string and version number to the progress file as wildmyron recommended. And now we get (up to) ten sample soupids for every object found, also saved to the progress file.

I've run the new version for several days and have seen no new problems. It's definitely an improvement on my hacked version in several respects -- high time to make it available.
apgsearch-2014-10-14-v0.5.zip
apgsearch script version 0.5 -- ten soupids saved per object
(19.89 KiB) Downloaded 614 times
At some point I still might extend the common-names list to include Achim Flammenkamp's still-life and oscillator names, but that's not a very high priority for me at the moment.

Post Reply