Thread for basic questions

For general discussion about Conway's Game of Life.
User avatar
Moosey
Posts: 4306
Joined: January 27th, 2019, 5:54 pm
Location: here
Contact:

Re: Thread for basic questions

Post by Moosey » June 19th, 2019, 12:48 pm

Why was a for all called a for all?
Is it because it resembles and A and an upside down one, the symbol for “for all” (∀), in one phase?
not active here but active on discord

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

Re: Thread for basic questions

Post by dvgrn » June 19th, 2019, 2:51 pm

Moosey wrote:Why was a for all called a for all?
Is it because it resembles [an] A and an upside down one, the symbol for “for all” (∀), in one phase?
That seems like a good theory. Dean Hickerson wasn't very specific about etymology when he introduced the name in an email in 1993.

Here's an unrelated basic question: what's the simplest way to destructively scan through a rectangular field that may or may not contain a block at any given (X,Y) value, and return enough data to allow the exact same pattern of blocks to be rebuilt somewhere else?

A simple kickback can be used to check for the presence of a block in various ways. Here's one that works as long as the nearest block on the same row is at least 7 cells away to the left, or 5 cells away to the right:

Code: Select all

x = 52, y = 20, rule = LifeHistory
2.2A5.2A3.2A21.2A5.2A3.2A$2.2A5.2A3.2A21.2A5.2A3.2A2$2.2A5.2A3.2A21.
2A5.2D3.2A$2.2A5.2A3.2A21.2A5.2D3.2A8$15.A34.A$14.2A33.2A$14.A.A32.A.
A3$3A32.3A$2.A34.A$.A34.A!
Or there's a different positioning that allows another block 5 cells away on the left, or 7 cells away to the right -- but the next block to the north has to be a little farther away, so this doesn't seem to be any kind of improvement:

Code: Select all

x = 56, y = 24, rule = LifeHistory
41.2A3.2A5.2A$41.2A3.2A5.2A2$2.2A3.2A5.2A$2.2A3.2A5.2A25.2A3.2A5.2A$
41.2A3.2A5.2A2$2.2A3.2D5.2A$2.2A3.2D5.2A5$54.A$53.2A$53.A.A$15.A$14.
2A$14.A.A22.3A$41.A$40.A$3A$2.A$.A!
Again, the idea here is to run the test reaction against each X,Y location in some rectangular (or diamond-shaped) area, collect the gliders that come back, and eventually maybe use that information to build an exact copy of the original block constellation. What's a good reaction that would allow nearby blocks to be closer -- 4 cells away in one of the directions on the same row, possibly?

(Really when you're doing a scan you'll start in one corner and work across systematically, so that 4-cell clearance would only be needed on one side.)

User avatar
Moosey
Posts: 4306
Joined: January 27th, 2019, 5:54 pm
Location: here
Contact:

Re: Thread for basic questions

Post by Moosey » June 25th, 2019, 8:48 am

This is a kind of weird question, but what happened with the minstrels? We discovered most of them in December 2018 through early February, and haven’t found one since!
Is it just that there’s not a lot of demand, and we’ve stopped searching? Also, does anybody have a script to link two existing minstrels together, i.e. to automate EV’s discovery of M4?
not active here but active on discord

GUYTU6J
Posts: 2200
Joined: August 5th, 2016, 10:27 am
Location: 拆哪!I repeat, CHINA! (a.k.a. 种花家)
Contact:

Re: Thread for basic questions

Post by GUYTU6J » June 25th, 2019, 1:07 pm

A small question: how to search for a monoengine/one-engine cordership?

User avatar
Moosey
Posts: 4306
Joined: January 27th, 2019, 5:54 pm
Location: here
Contact:

Re: Thread for basic questions

Post by Moosey » June 25th, 2019, 1:42 pm

GUYTU6J wrote:A small question: how to search for a monoengine/one-engine cordership?
The 2 engine CS was found using this script, but since you’re searching for a 1-engine cordership you could just try placing random objects near a switch engine. I doubt (and I believe you do too) it will be successful though.
not active here but active on discord

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

Re: Thread for basic questions

Post by dvgrn » June 25th, 2019, 1:56 pm

Moosey wrote:
GUYTU6J wrote:A small question: how to search for a monoengine/one-engine cordership?
The 2 engine CS was found using this script, but since you’re searching for a 1-engine cordership you could just try placing random objects near a switch engine. I doubt (and I believe you do too) it will be successful though.
Yes, the odds are pretty low that one of these will pop up (except for Calcyman's suggestion of building a fleet of fast Caterloopillar-like c/12 diagonal spaceships and using them to support a single switch engine.)

A fairly efficient way to search for them is to simply run the lastest apgsearch on C1 soups. If there's one out there that can be found by dropping random objects near a switch engine, well, Catagolue might well stumble on it eventually, since it has recorded hundreds of millions of switch engines already.

If you want the search to go faster, you can use the stdin symmetry and some custom coding to make sure that every initial soup includes a switch engine.

User avatar
Moosey
Posts: 4306
Joined: January 27th, 2019, 5:54 pm
Location: here
Contact:

Re: Thread for basic questions

Post by Moosey » June 30th, 2019, 6:39 pm

Just a quick question:
If we were going to make a Stable Storage Spaceship (a SS-SS), then would there be an encoding system involving still lives such that, when you use the encoded gliders in the SLs, they contain more information than is necessary to build the same SLs? I guess this is probably the very idea behind SS-SSes, but this wouldn't be a single glider repeatedly crashing into a giant constellation, where the end result is the exact same setup, but rather a UCC which reads a giant instruction tape, and recreates the whole thing.

Sort of a "genetic" spaceship, where each gene has more than enough information to build itself.
no massive glider loops, just a huge line of assorted SLs where the front ones code for a UCC, the middle ones code for all of the genes, and the back ones code for self-destruction?

So, where grey dots = active UCCs, white dots = not-yet-activated UCCs, green bits = UCC instructions, yellow bits = tape instructions, and red bits = self-destruction instructions:

Code: Select all

x = 38, y = 66, rule = LifeHistory
F.3A30E3D5$16.F$16.F$16.F$16.F$14.5F$15.3F$16.F6$C2$F4.30E3D6$16.F$
16.F$16.F$16.F$14.5F$15.3F$16.F7$C.3A30E3D2$F34.3D7$16.F$16.F$16.F$
16.F$16.F$14.5F$15.3F$16.F11$F.3A30E3D!
#c VERY [[ VIEWONLY ]]
not active here but active on discord

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

Re: Thread for basic questions

Post by dvgrn » July 1st, 2019, 7:31 am

Moosey wrote:Sort of a "genetic" spaceship, where each gene has more than enough information to build itself.
I think this description is what's known in the trade as wild hand-waving. If these kinds of "over-unity genes" can be constructed, and they end up being a reasonable size, they will be a great way to build self-constructing spaceships.

But whenever I try to design a construction encoding along these lines, so far I've always ended up with a huge tangle of complex wiring, well before I finish solving all the technical problems.

An idea that was explored a little bit, over a decade ago now, is the "UUCC" -- Universal Universal-Constructor Component. The idea is that you build all your circuitry out of identical copies of the exact same component. Each UUCC would contain 90-degree reflector inputs and outputs for every possible direction, maybe with splitter options, and would also include a complete chainable self-destruct mechanism.

With circuitry built entirely out of UUCCs, the "genes" for a spaceship could be just a list of locations to build UUCCs, plus maybe a few one-time turners here and there to chain the self-destruct sequences together. Theoretically this would require a much smaller set of construction instructions, compared to encoding each slow-salvo glider for every part of the construction recipe.

Unfortunately, in practice it seems to be terribly awkward to design circuitry built out of UUCCs that's complex enough to read a list of coordinates and re-use the same sub-recipe for each UUCC. The whole mechanism seems to end up far more complicated than a nice simple active glider loop with two copies of a recipe (or one copy sent out twice, once for a BUILD stage and once for a COPY stage).

User avatar
Moosey
Posts: 4306
Joined: January 27th, 2019, 5:54 pm
Location: here
Contact:

Re: Thread for basic questions

Post by Moosey » July 1st, 2019, 7:24 pm

How do I make a custom neighborhood in a ruletable?
such as a knight's move:

Code: Select all

x * x * x
* x x x *
x x x x x 
* x x x *
x * x * x
not active here but active on discord

User avatar
testitemqlstudop
Posts: 1367
Joined: July 21st, 2016, 11:45 am
Location: in catagolue
Contact:

Re: Thread for basic questions

Post by testitemqlstudop » July 1st, 2019, 8:09 pm

I would advise you to use CoordCA (see scripts forum), because the neighborhoods are easy to manipulate and it can automatically generate Golly rule tables.

User avatar
Saka
Posts: 3627
Joined: June 19th, 2015, 8:50 pm
Location: Indonesia
Contact:

Re: Thread for basic questions

Post by Saka » July 1st, 2019, 10:42 pm

Moosey wrote:How do I make a custom neighborhood in a ruletable?
such as a knight's move:

Code: Select all

x * x * x
* x x x *
x x x x x 
* x x x *
x * x * x
You can only make custom neighborhoods in apgsearch's / lifelib's ruleTables, not Golly.
testitemqlstudop wrote:I would advise you to use CoordCA (see scripts forum), because the neighborhoods are easy to manipulate and it can automatically generate Golly rule tables.
Yes!
CoordCA is available here:
http://www.conwaylife.com/forums/viewto ... f=9&t=3932

But Andrew made a golly script that can simulate CoordCA rules:
http://www.conwaylife.com/forums/viewto ... f=9&t=3995

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

Re: Thread for basic questions

Post by wildmyron » July 1st, 2019, 11:20 pm

Moosey wrote:How do I make a custom neighborhood in a ruletable?
such as a knight's move:

Code: Select all

x * x * x
* x x x *
x x x x x 
* x x x *
x * x * x
Further to the other responses above, this kind of rule can only be emulated by Golly ruletables. An implementation of this idea was posted to the forum years ago, and various semi-totalistic rules using that neighbourhood explored. The knights' move CA neighbourhood was also briefly discussed several years later. I mention this mainly as inspiration and for reference - I would suggest if you want to explore these rules that you should use something other than Golly ruletables. Options available (including those mention above):
  • The new lua CA simulation software for Golly NewCA.lua (either using the existing CoordCA.lua or writing a dedicated script for the knight neighbourhood to make rule specification easier).
  • CoordCA.
  • Brian Prentice's Java Square Cell.
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
Andrew
Moderator
Posts: 928
Joined: June 2nd, 2009, 2:08 am
Location: Melbourne, Australia
Contact:

Re: Thread for basic questions

Post by Andrew » July 2nd, 2019, 11:24 am

Below is a little script that makes it easy to create a CoordCA rule with a custom neighborhood. Here are the steps:

1. Run CoordCA.lua.
2. Make a selection (must be 3x3 or 5x5 or 7x7).
3. Draw live cells inside the selection representing the custom neighborhood.
4. Run the following script (save it as a .lua file or copy it to the clipboard and select File > Run Clipboard).

If a 5x5 selection contains Moosey's knight-move pattern then the rule will change to
154422A-2_3_2-3.

Code: Select all

-- This script can be run from CoordCA.lua to create a rule using the
-- live cells in the current selection for the custom neighborhood.

local g = golly()

local selrect = g.getselrect()
if #selrect == 0 then g.warn("There is no selection.") g.exit() end
if #g.getcells(selrect) == 0 then g.warn("The selection is empty.") g.exit() end
local _, _, wd, ht = table.unpack(selrect)
if not ((wd == 3 and ht == 3) or
        (wd == 5 and ht == 5) or
        (wd == 7 and ht == 7)) then
    g.warn("Selection size must be 3x3 or 5x5 or 7x7.") g.exit()
end

local h = 1
local midx = selrect[1]+(wd//2)
local midy = selrect[2]+(ht//2)
for y = selrect[2], selrect[2]+ht-1 do
    for x = selrect[1], selrect[1]+wd-1 do
        if x == midx and y == midy then
            -- ignore central cell
        else
            h = h * 2
            if g.getcell(x,y) > 0 then h = h + 1 end
        end
    end
end

SetRule(string.format("%X",h).."-"..(wd//2).."_3_2-3")
g.show("New rule uses a custom neighborhood based on cells in selection.")
Use Glu to explore CA rules on non-periodic tilings: DominoLife and HatLife

User avatar
Moosey
Posts: 4306
Joined: January 27th, 2019, 5:54 pm
Location: here
Contact:

Re: Thread for basic questions

Post by Moosey » July 3rd, 2019, 9:05 am

Would it be possible to make a reflector using the pi ->2G catalyst?

Code: Select all

#C found by hand, which is why this is a terribly cruddy partial result
x = 20, y = 24, rule = B3/S23
12b2o$2o10b2o$bo$bobo$2b2o4$7b3o$9bo$8bo5$14bo$13bobo$14bobo$6b2o3b3o
2b3o$6b2o2bo3b2o3bo$10bob2o2b3o$11bo2bobo$13bobo$14bo!
It seems the main problem is to replace the block while working around where the glider comes in.
If we did, would it be CC or CP?*
*would a slightly smaller CC reflector be really awesome? Or is it fine to stay with CC cenarks?
not active here but active on discord

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

Re: Thread for basic questions

Post by dvgrn » July 3rd, 2019, 10:06 am

Moosey wrote:Would it be possible to make a reflector using the pi ->2G catalyst?
...
It seems like the main problem is to replace the block while working around where the glider comes in.
It looks to me like the main problem is finding places to add catalysts to tame the leftover active reaction before it destroys everything. There's only a tiny and horribly awkward window of opportunity to work through, over on the left (the red preblock):

Code: Select all

x = 41, y = 24, rule = LifeHistory
15.2A$3.2A10.2A$4.A11.6D$4.A.A8.8D$5.2A7.4D2.4D$13.4D4.4D$12.4D6.4D$
11.4D8.4D$5.2D3.4D10.4D$5.D3.4D12.4D$8.4D14.4D$7.4D16.4D$6.4D18.4D$5.
4D20.4D$4.4D22.4D$3.4D10.A13.4D$2.4D10.A.A13.4D$17.A.A13.4D$3A6.2A3.
3A2.3A12.4D$2.A6.2A2.A3.2A3.A12.4D$.A11.A.2A2.3A14.4D$14.A2.A.A17.4D$
16.A.A$17.A!
#C [[ THUMBNAIL THUMBSIZE 2 ]]
Maybe a sacrificial bait object could be placed there to settle things down, but then you'd have two objects to rebuild instead of one. I wouldn't dare say it's impossible, but there are definitely thousands of reactions out there that look a lot more hopeful than this one.
Moosey wrote:If we did, would it be CC or CP? ...
[W]ould a slightly smaller CC reflector be really awesome? Or is it fine to stay with CC cenarks?
It would be color-changing. You can tell from the inside corner of an intersection of glider tracks like the one shown above. If the inside corner is one cell wide, it's color-preserving, like a Snark; if it's two cells wide, it's color-changing.

There isn't currently any such thing as a CC cenark. There are only CC semi-cenarks, which eat two input gliders for every output. So a CC reflector of any size under 50x37 (which I think is the current smallest one) would indeed be really awesome, especially if it's under 25x25 and recovers in 50 ticks or less. (That would win MikeP's open prize offer.)

User avatar
Ian07
Moderator
Posts: 891
Joined: September 22nd, 2018, 8:48 am
Location: New Jersey, US

Re: Thread for basic questions

Post by Ian07 » July 3rd, 2019, 10:49 am

Is Fore and back considered a billiard table? From what I understand it is, (and the infobox has specified this since 2016) but an edit mentioning this was reverted this morning, and I'd like to know if my conception of this is correct.

User avatar
Moosey
Posts: 4306
Joined: January 27th, 2019, 5:54 pm
Location: here
Contact:

Re: Thread for basic questions

Post by Moosey » July 3rd, 2019, 2:58 pm

dvgrn wrote:
Moosey wrote:Would it be possible to make a reflector using the pi ->2G catalyst?
...
It seems like the main problem is to replace the block while working around where the glider comes in.
It looks to me like the main problem is finding places to add catalysts to tame the leftover active reaction before it destroys everything. There's only a tiny and horribly awkward window of opportunity to work through, over on the left (the red preblock):
Well, to be fair, I was using the eater as an example catalyst, so we have a whole lot more space to work with:

Code: Select all

#C This is optimistic since there are probably very few catalyst you could place close
#C to the block, but it’s still a reasonable amount of space.
x = 41, y = 24, rule = LifeHistory
15.2A$15.2A$2.12D2.6D$2.11D2.8D$2.10D2.4D2.4D$2.9D2.4D4.4D$2.8D2.4D6.
4D$2.7D2.4D8.4D$2.6D2.4D10.4D$2.5D2.4D12.4D$2.4D2.4D14.4D$2.3D2.4D16.
4D$2.2D2.4D18.4D$2.D2.4D20.4D$4.4D22.4D$3.4D10.A13.4D$2.4D10.A.A13.4D
$17.A.A13.4D$3A6.2A3.3A2.3A12.4D$2.A6.2A2.A3.2A3.A12.4D$.A11.A.2A2.3A
14.4D$14.A2.A.A17.4D$16.A.A$17.A!
dvgrn wrote:
Moosey wrote:If we did, would it be CC or CP? ...
[W]ould a slightly smaller CC reflector be really awesome? Or is it fine to stay with CC cenarks?
It would be color-changing. You can tell from the inside corner of an intersection of glider tracks like the one shown above. If the inside corner is one cell wide, it's color-preserving, like a Snark; if it's two cells wide, it's color-changing.

There isn't currently any such thing as a CC cenark. There are only CC semi-cenarks, which eat two input gliders for every output. So a CC reflector of any size under 50x37 (which I think is the current smallest one) would indeed be really awesome, especially if it's under 25x25 and recovers in 50 ticks or less. (That would win MikeP's open prize offer.)
Oh, that’s better than I thought.

Is this a project worth undertaking, then?

(Apparently this would also probably be my most notable contribution yet- pointing another thing out. Apparently I have a lot of great ideas but no capacity to do any of them, whether it’s a SS-SS or a potential new smallest CC reflector (and maybe new smallest overall reflector too?))


Ian07 wrote:Is Fore and back considered a billiard table? From what I understand it is, (and the infobox has specified this since 2016) but an edit mentioning this was reverted this morning, and I'd like to know if my conception of this is correct.
My understanding is that a pattern is a billard table if you can’t draw an orthogonal ray through dead cells and hit a rotor cell before a live stator cell, but it could be wrong (in that case, somebody revert my revert).
Maybe it’s just if you can’t draw a ray that hits rotor cells before non-rotor cells in the bounding box/diamond/octagon.


Regardless, I shouldn’t have reverted the edit when I hardly knew myself- I just had a sort of stupid hunch.
not active here but active on discord

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

Re: Thread for basic questions

Post by dvgrn » July 3rd, 2019, 4:44 pm

Moosey wrote:I was using the eater as an example catalyst, so we have a whole lot more space to work with.
...Is this a project worth undertaking, then?
If you can complete the project, the reflector will certainly be notable, and will be a good mechanism to add to the elementary-conduits toolkit -- especially if it's smaller than 50x37 or so. It doesn't look like it will fit inside the bounding box for MikeP's challenge, though -- you'll need some kind of structure to replace the block once it's gone, and just the block and catalyst are already 24 cells high.

I'll be fairly surprised if anything can be made out of this particular reaction, just because the great majority of these hopeful ideas turn out to be dead ends. But it's certainly not impossible that Bellman or CatForce or ptbsearch or catgl or Guam's CollisionsSearch utility could find something to put in that larger red triangle that would just happen to throw a block back to exactly the right place.

You should expect to find at least a few dozen near misses first, though -- i.e., patterns that either don't quite put the block in the right place, or don't quite recover. That's just how these searches usually work; your mileage may vary.
Moosey wrote:My understanding is that a pattern is a billard table if you can’t draw an orthogonal ray through dead cells and hit a rotor cell before a live stator cell, but it could be wrong (in that case, somebody revert my revert).
Maybe it’s just if you can’t draw a ray that hits rotor cells before non-rotor cells in the bounding box/diamond/octagon.

Regardless, I shouldn’t have reverted the edit when I hardly knew myself- I just had a sort of stupid hunch.
I don't think you were particularly wrong, really -- you just weren't particularly right either. Different people have used "billiard table" in different ways. Personally I like your criterion about always having live stator cells before rotor cells, no matter which (orthogonal) direction you approach from. If an object passes that criterion, it's definitely a billiard table, no arguments. So it's a sufficient condition, but may or may not be a necessary one.

Going back to one of the old-guard experts on billiard tables, here's something Dean Hickerson put together in 1997:

Code: Select all

#C A collection of 234 billiard tables
#C These are billiard tables found by my program that searches for
#C 'drifters', small sets of changes that move against a stable
#C background.  As far as I know, all of these are new, except for
#C the first 3 p3s, which I found in 3/97 and which led to the idea of
#C writing the program.  (The second p3's rotor is 1/4 of a symmetric
#C oscillator found by Achim Flammenkamp on 7/30/94.  It's in the
#C stamp collection (3.5.3) in a larger form than given here.)
#C
#C The periods that occur are:
#C
#C period   3   4   5   6   7   8  9  10  11  12  13  14  17  22
#C count   35  44  31  66  18  14  7   9   1   4   2   1   1   1
#C
#C Note to historians:  Except for the 3 p3s mentioned above, all of
#C these were found between 3/28/97 and 5/1/97.  I didn't keep track
#C of the individual discovery dates, except:
#C 11.0.0 4/10      12.0.0 4/26      12.0.1 4/27      12.0.2-3 4/20
#C 13.0.0 4/12      13.0.1 4/19      14.0.0 4/21      17.0.0 4/27
#C 22.0.0 4/27
#C Dean Hickerson  5/1/97
x = 352, y = 377
2b2obo112bob2o125bob2o$2bob2o112b2obo125b2obo44b2o17bobo15b2o2bo$6b2o
23bo15bo2bo17bo47b2o16b2obo13b2o14bo13b2o24b2o42b2o8bob2o12b2o3bobo10b
o18b2obo14bo2bobo$6bo11b2o10bobo2bo11b4o11bo2bobobo10b2ob2o32bo16bob2o
12bob3o11bobo11bo2bo4b2o10b2o2b2o2bo43bo8b2obo11bo2bobob2o11b3o13b2o3b
3o13b2o2bo$7bo5b2o2bo2bo9bob4o9b2o15b4obo2bo8bobobo32bo12bob2obo3b2o
10bo4bo9bobobob2obo6b2o2b2o2bo11bo3bobo43bo24bob2obo11b3o3bo11bo2b3o3b
o9b3o4bob2o$6b2o5bo2bobobo7b2obo4b2o6bo2bob4o15bobo8bo3bobo30b2o11b2ob
obob2o2bo5bob2ob3o2bo8bo3bobob2o12b2o10bo4bo2b2o42b2o8b3o11b2o2bobob2o
7bo3b4o2bo8bobo3b4o2bo5bo3bobobobobo$2b2obo8b2obo2b2o7bo2bob2o2bo6b2ob
o4bo7bob2obobob2o6b2o5b3o30bob2o15bobo6b2obo4b2o6b2obo3bo11b2o2bo13b2o
3bobo42b2o7bobo3bo2b2o5bo2bo3bo2bo5bo2bobo4b3o5b2obo2bobo4b3o6bo2bo5bo
2bo$2bob2o12bo3bo6bobobo2b2o8bo2bob2o8b2obo6bo5bo2b4o4bo29b2obo11b2obo
2b2o9b2obo8b2obobo2bo10bo5b4o6b2o3bobobo43bo7b2obo6bo6b2o6bo6b4ob2o2bo
9bo2b3obo3bo10bobobobobo3bo$6b2o6b4ob3o6b2obo2b2o10bobobo2b3o10bob2o7b
2o6b3o34b2o12bobo15b2o9bobob2o11b4obo2bo5bo2bobo3bo43bo11bob5o9b5ob2o
10bobo2bo8bo8bo2bo10b2obo4b3o$6bo7bo2bobo12bo2bo9b2obo2b2o2bo9b2obo13b
2obo37bo12bobo14bo2bo8bobo18bo10b2o3b3o44b2o10bo15bo4bo9b4ob2obo9b7ob
2obo13bo2b2o$7bo25b2o14bo2bo15bo13bobo37bo14bo17b2o9bo2b2o13bo14b2obo
44b2o13b6o10b3obo9bo3bo2bo12bo4bo2bo14bobo2bo$6b2o42b2o16b2o52b2o43b2o
bo13b2o13bobo46bo15bo2bo12b2o13bo2bo15bo2bobo16bo2b2o$2b2obo112bob2o
125bo48b2o15b2o3bo$2bob2o112b2obo125b2o4$15b2obo10b2o14b2o14b2ob2o13b
2ob2o84b2o$14bobob3o6bo2bo13bo2bo12bobobobo13bobobo83bobob2o13bo17bo
59bo20bo21bo$14bobo4bo5b2obob2o10bobo4bo8bobo3bo11bobo3b3o44b2o6b2o10b
obo16bobo14b3o13b5o56bobo18bobo19bobo$13b2obob4o6bobo2bo9b2ob2ob2obo6b
2obobobobo7b3obobo4bo42bo2bo6bo8b3ob3o14bobo11bo5bob2o8bo5bo54bo2bo17b
o2bo13b2o4bo2bo14b2obo2bo11b2o$13bo14bo4bob2o8bo2bo3bo6bo7bobo5bo8b3o
43bobo3bobo7bobo7bobo5b2o4b2ob2obo7b5obobo9bob4obo53bobob2o15bobob2o
12bo2b2ob2obo12bobob4o10bo2bo$15b2obob2o7b3obobobo7bob2obob2o7b2ob2obo
bo6b3ob3obo44b2obobobob2o6b2obo5bob2o5bo8bob2o5b2o6bobo7b3o6b3o48b2obo
bo3bo8b2ob2obobo3bo11bobobobo2bo9bo2bobo16bo2bo$16bobo2bo15bo8bo2bobo
10bobo2b2o9bo4bo47bo8bo8bo5bo9b4o4bo9bobo6b2o5bo4bo2bo4bo48bobo5bo9bob
o2bo5bo9b2o2bo5b2obo6bobobobob2o10b3ob2o$16bo2bo9b4ob3o11bo2bo10bo2bo
14b3o48bob2ob2ob2o8bob3obo12bo3b2o9bobob5o8b3o6b3o49bo2b2o3bob2o6bo2b
2ob2o3bob2o7bobo2bo5bobo6bo2bo3bobo8bo2bo$17b2o10bo2bobo14b2o12b2o14b
2o49b2o2bobo13bo3bo10b3o3bo10b2obo5bo10bob4obo48b2obobo3bobob2o7bobobo
3bobobo7bo2b2o5b2o2bo9bo3bo2bo8bo3bobo$133bo2bo14bobo11bo2b4o14b3o14bo
5bo48b2obo3b2o2bo9b2obo3b2ob2o2bo6bobo5bo2bobo11b3ob2o6b3o4bob3o$134b
2o14b2ob2o13bo19bo15b5o52bo5bobo12bo5bo2bobo7bob2o5bo2b2o14bo7bo2b4o5b
o$169bo36bo54bo3bobob2o11bo3bobob2ob2o8bo2bobobobo11bob2obo10bo3b5o$
168b2o92b2obobo15b2obobo14bob2ob2o2bo11b2ob2o12b3o2bo$264bo2bo17bo2bo
15bo2bo4b2o29bo$19bo11b2o14b2o15bo3bo14b2obo177bobo18bobo17bobo$15bob
3o12bo15bo14bobobobo13bob4o176bo20bo19bo$15b2o14bo3bo11bo3bo10bo2bobo
2bo9b2obo5bo83b2o$18b2o10bob6o8bob4o10bobo3bobo10bobob2o2bo62b2o19b2o
23b2obo20b2o$13b5ob3o8bo7bo7bo5b2o7b2obobobobob2o7bo5bob2o43b2o3bo12bo
2bob2o35b2o2bob2o13bo5bo2bo$13bo8bo6b2obob2o2bo6b2obobo3bo6bo9bobo5b2o
2b2o2bo46bobobobo8b2obob2ob2o12b6o17bobobo3b2o10bobob2o2bobo$15bo2b2ob
obo6bobo3bob2o6bobo3b2obo7b2obob2obo8bobo4bo41b2o5bobo2bo7b2obo13b2o2b
o6bo13bo4bob4o2bo8bo2bobob2obo$14b2o2bobo2bo6bo2bo2bo9bobobo3bo9bob2o
2bobo7bo2b4o42bobo3bo2b3o11bo2b6o5bo2bobo3b2obo11bobo5bo2bobo9bob2o4bo
44bo2b2o$20bobo8b2o3bo10bobob3o10bo4bo2bo6b2o50bo2bo2bo11b2obo7bo6bobo
2bo3bobo11bobo6b2o2b2o5b2obo3bob2o2bo40b3o2bo18b2o12b2o23b2o15bo$19b2o
b2o9b3o13bobo11b2o5b2o11b2o46b2o6b2o9bo7bo9bobo7bobo7b2o2b2o6bobo7b2ob
o6bob2o34bob2obo6bo16bo2bo11bo18bo5bo15bobo$33bo15b2o32b2o49bo2bo2bo7b
o7bob2o10bobo3bo2bobo7bobo2bo5bobo10bo4bobo37b2obobo2b5o13bo3bo2bo8b2o
2bob2o12bobo6bo10bo2bobo$131b3o2bo3bobo5b6o2bo13bob2o3bobo2bo5bo2b4obo
4bo11bob5o2b2o37bobobo15bo2b4ob2obo8bob2obobo10bo2bo2b5o9bobobob2o$
130bo2bobo5b2o13bob2o11bo6bo2b2o6b2o3bobobo15bo8bo37bobobob4o8b3o7bo2b
o8bobo4bo10bob2obobo12bo2bobo2bobo$131bobobobo12b2ob2obob2o12b6o13b2ob
o2b2o16b8o35b2obo9bo6bo3b4obo3bo8b2o2b3obob2o6b2o2bobo3b2o6b2ob2obo2b
2ob2o$132bo3b2o12b2obo2bo34bob2o22bo2bo38bo2b2o3b2o2bo6bobo4bobo4b3o7b
obobobo2bo5bo2bo3bobo2bo5bobo2bobo3bo$155b2o17b2o83bo9bob2o6b2ob3o3b4o
2bo7bo3bo2bo8b2o6b2o7bo2bo3bobobo$14b2o16bo2bo28b2o16b2o90b2o84b4obobo
bo15b3o3bo9b2ob5o11b5obo9b2o6b2o$15bo5b2o9b6o11b2obob2o7bo2bob2o11bo2b
ob2o177bobobo9b6o3b3o12bo16bo4bo2bo9b5o$14bo5bobo7b2o6bo9bobob2obo7b2o
bobobo10bob2ob2o172b5o2bobob2o6bo6b2o15bobob2o12b3obob2o9bo4b2obo$14b
2o4bo8bo2bob2o2bo9bobo15bo3bo9b2obo176bo6bob2obo8bob3o2bo15b2ob2o14bob
o13b3obob2o$17bob2o7bobobo3bob2o5b2obo3b3o8b2o5b2o6bo2bo2b4o113b2o58bo
2b3o13b2obo3b2o35b2o15b2o$14b2o13bo3bo2bo8bo2bobo3bo7bobob4o2bo5b2ob4o
2bo114bo57b2o2bo$13bo2bob3o9b3o3bo9b2o4b2o7bo9b2o6bobo3b2o42b2o19b2o
11bo17b2o2bo16bobo$13b2o5bo12b3o12b4o10b6o11bo2b3o45bo17b3obo10b3o15bo
2bobo13b2obobo$20bobo9bo15bo2bo12bo2bo10b2o4bo45bobo14bo4bo13bo11bo3b
2o2bo12bo3bobo$21b2o9b2o97b2o4b2o8bobobob2o6b3obobo10b4o4b2o10bo2bobob
ob2o$135bo2bo5b2obo3bobo6bo2bobob3o13b3o2bo8bo7bo2bo$134b4o6bobo6bo7bo
8bo7b4o5b2o5bo2bobo3bo2bo60bob2o29b2obo$134bo12b3obob2o7b3obobo2bo5bo
5b4o7b3o7b2o59b4obo10bo2b2ob2o10bo2b2o$136b2o12b2o2bo9bobob3o6b2o2b2o
3bo10b3obo62bo15bobo2bobobo8bobo3b2o$70b2o65bo9b2o3b2o11bo16bo2bo10bo
5bo60bobob3o10bob2obo3bo9bob2o3bo$20bo33bo15bo17bo3bo43bo10bob3o14b3o
13bobo12b4obo56b2obo2bobo2bobo6b2o2bobo2b2obo9bob3obo$20b3o9b2o18b3o2b
o14bo14bobobobo42b2o13bo16bo14bo17bo58bob2obo2b2ob2o5bo2bo3bobo2bobo7b
o6bo$23bo9bo6b2o9bo3b3o10b5o2bo10bo2bobo2bo104bo60bo2bobo3bo9b2o6b2obo
bo7b2obo3bobo$18b3o2bo9bob2o2bo2bo8bo2bo3b2o9bo3b3o10bobo3bobo104b2o
60bo3bobobo11b5o2bob2o16bobo$14b2obo3bob2o7b2obo2bobo2bo5b2ob2o2bo3bo
6bo4bo3b2o7b2obobobob2o162b3o6b2o12bo4b2o11bob2obobobobo$15bobo3bo8bo
6b4ob2o6bobobo3b2obo5b5o2bo3bo16bo162bo2b5o16b3obo12b2obob2obobo$15bob
obobo8b2obobo5bo8bo2b2obo3bo9bobo3b2obo5b4obob3o166bo4b2obo14bobo20bo$
13b2o7b2o7bobo3b3obo7b2o4b2ob2o7b2o2b2obo3bo6bo3b2o171b3obob2o15bo21b
2o$14bob2ob2obo8bo2b3o2b2o10b3o3bo9bo5b2ob2o8b2o4b3o169b2o$14bo2bobo2b
o7b2o4bo14bo2b2obo10b4o4bo11b4o2bo43b2obo$15b2o3b2o32bobo13bob3obo11bo
2bo45bo2b2o15b2o34b2o$74b2o60bobo3b2o14bo14b2o18bo3bo11b2o$136bobob2o
2bo11bo17bo19b4o11bobo$133b2obobo2bobo11bob4o8b2obo18b3o17b3o$133b2obo
3bo2b2o10bobo3bo7bob3o3b2ob2o8bo4bo14bo3bo$91b2o43bo3bobo9b2obo4bobo
15bobo9bobobobo13b2ob2o$19bo16bo19bo14b2obo16bobo37b6obobobo9bo2b2o3bo
bo7b4o3bo2bo6b2obobo3bo10b2obo4b2o$16bobobo14bobo16b3o14bob2o14bobobo
36bo6bobobo8bobobo3bobob2o6bo2bo3bobo7bobo3bob2ob2o8bobobobo2bo$14b3ob
obo14bobo15bo3b2o10b2o4b2o11bobobob2o33bob3o2bo2bo10b2o2b2obo3bo9bo3bo
bob2o9b3o4bobo8bo5bob2o$13bo3bobo14b2ob2o14bo2bo2bo8bo2b3o3bo10bobo3bo
34bo7b3o14bo3b2obo8b2obob2o16b4o8b2ob2o4bo32b2obo50b2o17bo$13b3o3bobo
29bobo3b3o7bobo5b2o9bobo5bo35bobob3o18b3o2bo11bobo17bo12bobo2bobobo32b
ob2o9b2o31b2o2b2obo2bo12b2obobob2o9b2o$17bobob3o8b4obobob2o6b3obob2o
10bobobobobo8b3obob4o35b2ob2o3bo19bobo12bobo17bobo13bobob2o31b2o4b2o6b
o2bob2o14b2o3b2o5bo2bo2bobob2o13bobobobo11bo7bo$13b3o8bo7bo4bob2obo5bo
8bo7b2o6bobo7bo47bo3b2o21bo14bo19b2o14bo35bo5bo7bob2obobo13bobo2bo6b2o
b2o3bobo12bobobobobobo8bo6b3o$13bo2b4ob3o11bobo11b3ob3obo8bob2obobob2o
7b3ob4o39bob2o111bo5bo5b2obo2bobo10b2obo2bobo7bobo7bo10bobob2obo2bobo
7b2o4bo$16bo4bo8b4obobo13bo4bo9bo2bob2o13bo4bo40bobo110b2o4b2o5bo3bobo
bob2o8bobob2ob2o6bo2bo3b3obob2o6bo11bo14bo$17b3o10bo4bob2o14b3o11b2o
19b3o156b2obo8b2obobobo2bo8bo7bo7bobo7bobo8b4o3b4o6b5o2b3o$19b2o11b3o
17b2o33b2o158bob2o9bobo4bo7b2obobobob2o7b2obob3o3bo2bo24bo2bo6b2o$31b
2o212b2o4b2o7bobob3o8bobo4bobo12bo7bobo7b2o2bob2ob2o7bobob4obo$245bo5b
o9bo15bob3o2bo13bobo3b2ob2o5bo2bobobobo2bo5b2ob2o3bo2bo$246bo5bo9b4obo
8b2obo4b2o11b2obobo2bo2bo6bobobobobobo8bo3b2o2b2o$134b2o109b2o4b2o11bo
b2o29bo2bob2o2b2o8b2obobob2o9bob2o$135bo111b2obo47b2o20bo14bobo$135bob
2o65b2o41bob2o$26bo9b2o2bo29bo18bo44b2obobo16b2o2bo12bo14b2o13bo2bo$
16bo7b3o10b4o14bo3b2o9b3o15bobo43bo2bobo16bo2bobo9b3o13bo2bo13b2obo$
15bobob2o2bo11bo18bobo2bo7bo5bo14bobo44b3obob2o2bo7bo3b2o2bo8bo16bobo
3bob2o8bobo6b2o$15bobobo2bobo8b3ob6o9b3o2bobo7b5obo8b2o2b2obob2o2b2o
35b3o5bob4o7b4o4b2o7bo2b3o9b2o2bobobobobo6bo2b3o3bobo$14b2obo3b4o7bo
10bo7bo3bobob2o12bobo6bo2bo3bo3bo2bo34bo4bobobo10b2o5b3o2bo5b2obo3bo9b
obo8bo6bobo6bo54bo19bo19bo19bo19bo$17bobo5b2o6b3obob2o2bo6bobobo4bo7b
2obo3bobo6bobobo3bobobo35b4o5b4o7bo2b3o5b2o6bobo3bo9bob2ob2ob3o8bob2o
3b2o50bob3o15bob3o15bob3o15bob3o15bob3o$14b2o5b3obo9bobo3bob2o6bo2bob
2o2bo5bobo3bobobo5b2obo3bo3bob2o37bobobo4bo8b2o4b4o7bo2bo3bob2o5b2obo
3bobo8bobobo56b2o18b2o18b2o3b2o13b2o18b2o$13bobob4o2bobo9bo2bo2bo10b2o
4b2o6bo3b2obobo10b2obob2o36b4obo5b3o10bo2b2o3bo8b2ob2obobo10b3o2bo8b2o
bob2o2b2o53b2o2bo15b2o2bo15b2o2bo15b2o18b2o2bo$13bo7bo2bo11b2o3bo12b4o
9b3o3bo14bobo38bo2b2obob3o13bobo2bo12bo3bo2bo12bobo12bobo4bo50b3ob4o
12b3ob4o12b3obobo13b3ob3o13b3ob4o$14b3ob3o17b3o13bo2bo11bo3b2o13bobo
44bobo2bo13bo2b2o12bobobobo14bo13bobo2bo48b2obo17bobo17bobo4bob2o8b2ob
o7bo8b2obo$16bobo19bo50bo45bobob2o31b2ob2o30bo3b2o48bob3ob3o9b3ob3ob3o
9b3ob3ob3o2bo8bob3ob3obo9bob3ob3o$136b2obo120bo5bo2bo8bo7bo2bo8bo7bo4b
o7bo6bobobo8bo6bo2bo$139bo120b4o2bobo8bo2b4o2bobo8bo2b4o2bob3o7bob4o2b
obo9bob4o2bobo$139b2o125bob2o8b2o6bob2o8b2o6bobo9bo7bob2o8bo7bob2o$
258b4ob3o13bobob3o13bobob3o13b3ob3o13b3ob3o$258bo2b2o15bo2b2o15bo2b2o
18b2o18b2o$264b2o13b2o3b2o13b2o3b2o18b2o18b2o$261b3obo15b3obo15b3obo
15b3obo15b3obo$261bo19bo19bo19bo19bo$135b2o$135bobo$2o4b2o5b2o4bo2bo2b
o106bo4b3o$bo5bo6bo2b3o2b4o12bobobobo18bo16b2o14b2o34b5o3bo$o5bo7bobo
3b2o15bob2ob2obo16bobo16bo2bo11bo2b2o37bo2bo$2o4b2o5b2o2bobo3bo13bo7bo
14b3o2bo12b3o3b3o10bobobob2o27b3o2b4o127bo52b2o$2bob2o9bobobob2obo10b
2ob7ob2o11bo3bobo9bobo3b3o3bo8b2obob2obo24bobo132bob3o17bo17bo16b2o$2b
2obo9bo8bo6b2obo3bo5bo3bob2o6bob2obob2ob2o5b2ob3o4bo2bo40b2obo2bob2o
125b2o3b2o13b3o15b3o$6b2o5b2ob2o3b2ob2o6bobobob2o3b2obobobo7bobo2bo2bo
bo9bo2bobob3o8b2o3b3o28bobo4bo127b2o2bo11bo17bo19b4o$7bo6bo8bo7bo2bo3b
o5bo3bo2bo5b2o2bo3bo2bo9bo17bo6bo28bo2bobobo124b3obobo12bob4o12bob4o
13bobo2bo$6bo7bob2obobobo7b2o2b2ob7ob2o2b2o7bobo3bobo11b7o8bobo3b2obob
o27bobob2o121b2obo4bob2o9b2obo4bo9b2obo4bo9bo2bo2b2o2bo$6b2o7bo3bobo2b
2o11bo7bo13bobobobob2o16bo8b2o5bo2b2o28bo126bob3ob3o2bo7bobo3bobobo7bo
bo3bobobo7bobobo3bob2o$17b2o3bobo12bob2ob2obo14b2ob2o16b2o16bobo157bo
6bo4bo8bobo2b2obo2bo6bobo2b2obo2bo6bobobo3bobo$13b4o2b3o2bo13bobobobo
36b2o16b2o157bob4o2bob3o8b2obo4bo2b2o5b2obo4bo2b2o5b2obobobobobo$6b2o
5bo2bo2bo4b2o232bo7bobo9bo3bob3o10bo2bob3o13bobo4bo$6b2o251b3ob3o13b3o
16b2o18bob5o$261b2o18bob4o13b2obobob2o10bo$264b2o16b2o2bo13bob2ob2obo
11b3o$261b3obo56bo$261bo$56b2o17bo$52b2obobo16bobo17b2o$16b2o3b2o12bo
2bo12bobobo14b2o3bo3b2o14bo22b2obo$16bobobobo12b4o12bobo2bo13bo9bo12bo
24bob2o23bob2o27bo$18bobo12b2o4b2o7b2obo2bo12b2obobo5bobob2o8bob4o18b
2o11bo2bob2o9b2obo27b3obo15b2o$13b2o2bo3bo2b2o6bo2b2obo2bo6b2obo2bo3b
2o7bo2bobo5bobo2bo8bo5bo17bo12b4obo2bo10bob2o9bob2o9b2o3b2o13b3obo$13b
o2bo5bo2bo5bobo4b3obo8b2obo4bo8bobobo5bobobo6b2obo2bobobo17bo16bob2o5b
5obobo7b3obobo7bo2b2o12b2obo2bobo$14b11o7bo2b2obo2bo6b2obo2bo3bo10bo3b
5o3bo8bobo2bobobo16b2o13b3o2bo6bo5bo8bo4bobo8bobob3o10bob2o4b2o$33b2o
4b2o7b2obo2bo4b3o8b3o5b3o9bo4bo2bo19b2obo8bo3bobo7bo2bob2o6bo2b2o3b2o
6b2obo4bo8bo2bo3bobo$16b7o12b4o12bobo2bo4bo13bo15b3obo22bob2o8bo2bobo
9bo5bo6b2obob2o2bo8b3o2bo8b2o2b4obo$16bo2bo2bo12bo2bo12bobobo16b7o15bo
21b2o4b2o5b2obo10bobob5o7bo6bo6b2o6bob2o13bo48b2obo12b2o47bo2bo14b2ob
2o$52b2obobo14bo5bo14bo22bo5bo6bo2bob4o5b2obo12bobob3o7bo2bob2obo2bo
11bo50bob2o12b2o47b4o15bobobo$56b2o16bobo16b2o22bo5bo7b2obo2bo8bob2o
10b2obo10bobobo2b2o13b2o47b2o4b2o26b2ob2o12b2o12b2o17bo3bobo$73b2ob2o
38b2o4b2o22b2obo25b2obobo64bo5bo11b4o11bobobo14bo2bo2bo5bo3b3o11b4o2bo
b2o$118b2obo57b2o65bo5bo9bo4bo10bo3bo12bo4b4o6b2o4bo9bo4bobobo$118bob
2o123b2o4b2o7bo2bo3bo8bobob2ob2o10b2o14bobobo11b4obo2bo$247b2obo9b2obo
bobob2o5b2obo3bobo14b2o7bobo4b3o11bob3o$247bob2o14b2o2bo9bobo3bo9b2obo
2bo7b2obobobo2bo7b2obobo2b3o$39bo211b2o5b4ob2o4bo9bobobobob2o5bobobobo
11bobo3bobo6bo2b5o2bo$20bo18b3o11b2o13bo18b2o162bo6bo2b2o3b3o11bo5bobo
5bo3b2o12bobobobobo8bo5bo$20b3o14b2o3bo10bo13bobo15b3o164bo11b2o15b5o
9b3o15bo5bo10b5o$18b2o3bo8b2o2bobob2o12b3o10bobo14bo4bo57b2o18b2o15bo
66b2o8b3o2bo16bo13bo16b5o13bo$17bobob2o9bo2bobo2bo10b3o3bo7b2o2bob2o
10bob4obo44bo10bobo15b2o2bo13b5o12b2o46b2obo10bo3b2o49bo$13b2obobo2bo
8b2o2b2o4bo9bo4b2o2bo6bobo2b2o10bo4bobo43bobo8bo2bob2o11bo2b2o11bobo5b
o10bo2bo45bob2o$13bob2o4bo7bo2b2o3b3o9bobo4bob2o6bob2obo3b2o5b2obo4b2o
41bobobo7b2obobo11bo2bo2b3o8b2ob5o12b2o2b2o2b2o$18b3o9b2o2b2o13bobo2bo
bo8b2o2bobo4bo6bobob2o2bo39b3obobo10bobo12b2obobo2bo10bobo2b3o15bo2bo$
14b3o15b3obob2o8b2ob2obobo10bo2bob4o6bo2bo3b2o39bo6b2o6b2o4b2o11bo2bo
3bo10bobobo3bo8b2o2bobobo$14bo2bob2o11bo3bobo11bo4bo11b2obo11b2o2b3o
40bo2bobobo7bob2obobo12bo3b2ob2o8b2ob2obobo2bo6bo6bo$15bobob2o12b3o2bo
11bob3o15bob2o14bo41b3obobo7bo6bobo11b3o2bo2bo9bobobobob2o7b6o59b2o$
16bo18bobo13b2o17b2obo61bo9b3ob2ob4o12b2o2bo10bo2bobo2bo73bo11b2ob2o$
36bo95b3o12bo8bo10bo2b2o8b2obobo5bo10b2o63bo10bobobob2o$132bo16b4obobo
10b2o11bo2bo2b5o11b2o56b2ob4obo8bo2bobobo3b2o$148b2o2bob2o26b2o4bo69bo
2bobo4bo9b2obo4bo2bo$258b2obo3b3o17b3o$259bobobo4b3o7b3o$18b2o13bo15bo
14b2o193bo5b3o3bo4bo2bo4bob2o$17bob3o11b3o12bobo13bobobo191bob3o3bob2o
4b2o3bobobo2bo$17bo4bobo6b2o3bo9b3o2bo10b2o2b2obo10b2obob2o171bobobo2b
o2bobo9b2obobobo$15b2obob2ob2o5bo2bo2bo8bo4b2o11bobo3bo9bobob2obo46bo
32b2o36bo53b2o3b2o3bo2bo12b2ob2o$16bobo2bo9bobob2ob2o5bob2o3b2o9bobob
2ob2o6bo2bo51b3o11b2obob2o13bo3bo11b2o2bo14b3o60b3o2b2o$16bo4bo8b2o5bo
bo6bo3b2o2bo6b2o7bo7b4ob3o50bo10bob2obo2bo10bo3bobo10bo2bobo12bo63bo$
13b2obob2ob2o10b4o11bobo2b2o5bobob2obo2bo14bo45b5obo16b2o9bob4obo11b2o
2bo11bobob3o$13bobo4bo9b2o16bobo9bobo2bob3o7bob2obobo45bo6b3o8b2obo13b
o6b2o7b3o4b2o8b3obobo2bo$16b3obo8bo2b3o11bobob2o9bobo2bo10b2obob2o45bo
b3o2bo3bo7bo13b2obob4o10bo3b3o2bo6bo8bo$18b2o9b2o3bo11b2o14bo4bo61bo7b
3o9bob3obo6b2obo6b2o8b2o5b2o5bo2bobob3o$66b2o62bobob3o10bob2o3b2o10b3o
bobo6b3o3b4o8b5obo$129b2ob2o3bo8bobo3bo16b2o2bo5bo2b2obo2bo13bo$131bo
3b2o10bo2b2ob2obo9b2o3b2o9bobo14b3o$131bob2o13b2obobob2o9bob3o28bo$
132bobo35bo$56b2o12b2o2bobo17b2obo$18bobo15b2o12bo2bo2bo14bo2b2obo17b
2obo242b2o$18b2obo12b3o13b4o3bo11bo7bo15bo4bo142b2o4b2obo51bo38bobo4bo
$21b3o9bo4bo9b2o4b3obo9bob7ob2o2b2o8bob4ob2o2b2o137bo4bob2o31b2o17bobo
40bo2bobo$16b5o3bo7bob4obo7bo2bob2o4bo7b3o4bo4bobo2bo6b3o4bo3bo2bo45b
2o19b2o30b2ob2o33bo3b2o4b2o12bobo14bo19bo15bo23b2obo2bobo$13bobo6b2obo
6bo4bobo6bob2o3bo2bob2o5bo4b2o3b2o3bobo6bo3bo2b2obobobo29b2o14bo2bob2o
15bo12bobo3bobo8bo2bobobob2obo27b2o2bo5bo10bobob4o9b2obobo3bo28bobo21b
obob2obo2bo$13b2obobobo3bo6b2obo4b2o6bo2bob2o4bo7b3o4bo4bobob2o6b3o4bo
3bob2o27bo2bob2o10bob2obobo15bo11b2obobob2o8b2obo3bobob2o32bo5bo7b3obo
5bo5bobo2bobobobobo6b2o2b5o2b2o8bobo16b2o2bo7b3o$16bobo3b2o8bobob2o2bo
7b2o4b3obo9bob7ob2o12bob4ob2o31bob2obobo6b2obobo5bo8b2o3b2o14bobo14bo
2b2o32b2o2b2o4b2o6bo4bob2ob2o5b2obobobobob2o7bo2bo5bo2bo7b2ob2o5b2ob2o
5bo2bo4b3o$16bo2b3o9bo2bo3b2o10b4o3bo11bo7bo15bo4bo32b2obo5bo6bobo3b5o
8bo3bo2b2o9b2obo2b3o11bo4bo32bo2bo5bo6bo2b2obo2bobo9bobo4bo10bobo2bo2b
obo7bo2bo3b2o3bobo7bob2o6b2o$15b2o4bo9b2o2b3o12bo2bo2bo14bo2b2obo17b2o
bo30bo6b5o6bobobo11b2obobo3bo2bo8bo2bo4bo12b2obobo30bo4bo5bo6b2obo3bo
2bo9bo2bobobo9b2obo5bob2o7bobob2o4bo2bo8bo3bo2b2o2bo$37bo18b2o12b2o2bo
bo17b2obo31b2obobo11b2o5b3o7b2obobo3bobo6b2obo2bo4bob2o12bobo30b2o2b2o
4b2o7bo5bobo8b2obobo3bob2o5bo3b2o3b2o3bo7bobo6bobo10b2obobo3b2o$130bob
o3b3o10b4o2bo11bo5bo8bob2obo2b3obo8b4o3bob2o31bo5bo8bobobobob2o6bobobo
bobo2bobo5b4o3bo3b4o9bob2obobob2o10bobobo$130bo2b3o2bo7b2o4bo15b5o9bo
4bobo4bo7bo2bo3b2o2bo27b2o3bo5bo8b2ob2o11bo3bobob2o12b2o3b2o13bo2bob2o
12bo4bo$129b2o4bo11bob3o31b3obobob3o9bo3bo3bo30bo2b2o4b2o30bo13bo2bobo
bo2bo12b2o15bob3obobo$50b2o2b2o13b2ob2o73bobo20bo14b2o3b2o12b3ob3o30bo
5b2obo31b2o13b2o2bobo2b2o30bo2bo2b2o$19b2o16bo11bobo2bo13bobobobo73bo
20bobo34bobo32b2o4bob2o51bo36bobo$13b2obobobo15bobo8b3o5b3o10bobo3bo
13bo81bo169bo$13bob2obo15b3obo7bo3b5o2bo8b3obo3bob2o9bobo3b2o$19bo13bo
5b2o6b2o6bo9bo4bo3bobo9bo2bo3bo$14b4o14bob2obobo9bobob2o10b6obobobo8bo
b2ob2obo$14bo2bob2o11bo4bobo9bo6bo14bobobo9bo2bo3bo91b2o103bo$15b2o14b
2obo2bob2o10b2obobo8b2o3bo2bo12bobo2bo93bo5bo12bo2b2o76bob5o12bo3b2o
15b2o$16bob2obob2o5bo2b4o13bo6b2o6bo5b3o9b3o3bo45b2o17b2o12b2ob2o10bo
6bobo10bobo2bo53b2o8b2o11b2o5bo10bobo2bobo14bo$16bo2bob2obo6b2o15bo2b
5o3bo6b5o12bo2b3o45bo2bo12b2obo2bo10bobobobo9b5o2bobo10bo2b2o54bobo6bo
bo14b3o2bo9bobo4bo11b2obo$17b2o14b4o11b3o5b3o12bo14bo62bobob2obo10bo3b
o2bo13bobo2b2o7b2o4b3o53bo6bo13b3o3b2o7b2obob2o3bob2o7bobob2o3b2o$33bo
2bo14bo2bobo11b3o58b2o10b2o5bo5bobob2o6b2ob2obobo8b2o3bob2obobo5bo2b3o
4bo51b2obo2bob2o11bo4bobo9bobo4bobobo7bo2bo4bo2bo$50b2o2b2o12bo60bo2bo
b4obo2bo5bob3o3bo2bo5bo2bo3bo2b2o6bo2bo4bo2bo6b2o5b2obo49bo2bob4o4bo8b
obobobobo7bo2bobobobobobo7bobobobob3o$130b3obo2bob3o7bo4bobobo6b2obobo
2b2o2bo7b2ob2obo11b4o2b2o50b2o2bo5bob2o8bobo4bo8b2obobo4bo2b2o5b2obobo
$134b4o12b3o5b2o8bobo5bo9bo3bo12bo3b2o58b3o10b2obobo2b2o12bobo2b2o3bo
9bobo2b4o$132b2o4b2o13b3obo10bo2b5o8bo2b3o16bo2b4o48b5o4b5o5b2obobo3bo
bo10bobo3bobobo9bobo3bo2bo$131bo2bo2bo2bo11bo2bobo9b2o4bo10b2obo19bobo
2bo48bo5b2o5bo9b2obo2bobo10b2obobob2o11b2obo3bo$132b2o4b2o12b2o2bo30bo
20bo54b4o2b4o13bob2o2bo12bobo17bob3o$16b2o14b2o19bo12bo120b2o73b2o2bo
2bo2b2o12bo5b2o11bo19bobo$16bobobo11bo2b2o16b3o10b3o14bo201b2o17b2o20b
o$14b2o2b2obo11b2o2bo13b2o3bo12bob2o9bobo$15bobo3bo14b2o12bo3b3o7b4obo
bo9bo2bo$15bob2obob2o7b4o3b2o6b2obob2o10bo5bobo9bob2ob2o$13b2o2bo2bobo
8bo4b2o2bo5bob2obo2b3o7bobo4b2o7b2o4bo48b2o$14bob2o4bo9bobobo2b2o11b2o
2bo5bobobob3o8bo3bobo2bo47bo16bo17b2obo15bo2b2o11bo$14bo2bob3o7b3o2bob
o10b2obo4bo6b2o2bo3bo8b3o3bob2o45bobob2o12bobo15bo2b2o13b3o2b2o10bobo$
15bo13bo4bob2o9bo2bob3o11b4o13bobo47bob2o2b3o10bob3o12bobo3b2o10bo16bo
2b3o$16b6o9b3o14bobobo25bob2obobo47bo3bo4bo8b2o4bo11bo2b3o2bo9bo2b5o9b
obo3bo$18bo2bo8b2o17bo18b2o8b2obob2o44bob2obobob2o2bo7bo2bob2obo9b2o4b
obobo7b2obo5bo7b2ob2ob2o2bo$68b2o59b2obobobobobob2o5bobobo4bo8bo2b3o3b
obo8bobo2b3obo8bo4bobobo32b2o2b2o8bo$136bobobo9bo3bobobob2o5b2o5bobob
2o7bobo6bo8bob2o3bo2bo32bo3bo7bobo$133bobo4bob2o7b3o4bobo8b4o7bo7b2ob
2obob2o8bo3bobob2o31bo3bo7bo2b3o$133bo3bo4bo11b3obobo8bo3b3ob3o10bo3bo
bo10b2o5bo32b2o2b2o6bobo3bo3b2o$134b7obo10bo5bo12bo2bobo12bob2o2bo12b
4obo43b2obo2bobobobo$141bo12b5o14b2o16bobobo13bo3bo33b2o2b2o6bobobo2bo
bo$54bo81b4o16bo37bo17bo35bo3bo6bo3bobo3bo$53bobo34bobo43bo2b2o71b2o
33bo3bo8bobo2bobobo$20bo17bo14bobo18b2o13bob2o154b2o2b2o5bobobobo2bob
2o$17bo2b3o12bobobo11b2obob2o16bo14bo168b2o3bo3bobo$15b5o3bo9b3obo2bo
9bobobo3bo9bo2b2obo12b2ob3o154b2o2b2o11b3o2bo$14bo6b2obo7bo5b3o9bobobo
b3o8bobo2bob2o7bo2bobo4bo154bo3bo13bobo$13bobo2b2o2bobo7b5o11b2o9b2o6b
ob2o6bo5b4obo2bobo153bo3bo15bo$14bo2bo3bo2b2o12b2obo5bo2b3o3b3o2bo6bo
2b2obob2o10b2obob2o41bo2b2o11bo21b2o17bo53b2o2b2o$15b2o2bobobo8b2o2bob
ob2o6b2o9b2o8bobo2bobo8b2o5bo2bo40b4o11bobo16b2obob3o14bobo2b2o16b2o$
19bobobo7bo2bobobo11b3obobobo9b2o4bobo8bo2bob2o2b2o45bo8bo2b3o15bobo4b
o12bo2b4o2bo13bobo$15b4o2bob2o6b2o2bo2bo11bo3bobobo8bo2bo2b2ob2o8bobob
o43b7obo7bobo3bo14bo2b3obo9bo2b3o5b2o13bo$15bo2bobo15b2o13b2obob2o10bo
2bo15b2o2bo41bo8bo6b2ob2ob2o2bo10b2o4bobob2o6b3o4b4o7b2o2bo2b2o$19bo
33bobo13b2o19b2o42bobobobob2o7bo4bobobo8bo2b3o3bobo10b2o5bo7bo2bobo$
53bobo78bobo3bobo8bob2o3bobo9bo5bobobo9bo5b2o10b2o3b2o$54bo74b2obobobo
bobo2bo8bo3bobob3o8b4o5b2o8b4o4b3o10b2o2bo$129bob2obobob2o2b2o9b2o8bo
11b4o3bo5b2o5b3o2bo6bob2o3b2o$133bobo19b4ob3o10b2o5b2o6bo2b4o2bo9b2obo
$133bo21bo4bo12bo2b4o10b2o2bobo$132b2o22b3o16b2o2bo15bo138b2o$158b2o
144b2o28bo2b2obo$21bo17bo264bo2b2obo24bobob2o$20bobo15bobo2bo8b2o20b2o
9b2ob2o215bobob2o19b2o2b2o7bob2o$16b2o2bobo14bo2b4o8bobo11b2obob2o2bo
10bobobo209b2o2b2o24bo5bo6b2obo$15bo2bobob2o13bobo14bo2b2o7bob2obob2o
10bo5bo208bo5bo24b5o3b2o$15bobo2bobo2bo8b2obobo2b2o9b2obo2bo11bobo11b
2ob4o47b2o100b2o4b2obo9bo40b5o3b2o29bo2b3o$13b2o2bobobo2b2o8bo2bo3bo2b
o6bo4b3obo6b3obo2bo6bob2o53bobo31bo14b2o10b2o41bo4bob2o8bobob2o17b2o3b
2o21bo2b2o10b2o2b4ob2o4bobobobo$14bobo4bo9b2obobo2b2o2b2o6b4o4bo7bo4b
3o6b2obo2b3o44b2o2bo10bo20b3o2bo11b2o11bo40bo9b2o5bo2bobo18bo3bobo6b2o
2b4ob2o4bobobo11bo2bo2bob2o3b2obo3bo$14bobob2ob5o5b2obob2o19b2o9bobo
15bo2bo39b2o2bo2bob2o9b3o7b2o8bo3b3o23bo3bo37b2o8bo7b3obobo10bo2b2obo
3bo9bo2bo2bob2o3b2obo12bo14bobo2b2ob2o$13b2obo3bo4bo8bobo2b5obo5b4obo
10b2obob2obo5b2obobo42bo2bobobo3bo11bo7bo7bob2o4b2o7b6o7bob6o46bo12b3o
8b4obob2ob2o7bo14bobo12b2o9bobo3bobo2bobo$17b3o2bo11bob2obo2bob2o5bo2b
obo9bo2b2obob2o5bo2bob2o42b3obobob2obo9bo4b4o8bobob4o2bo5bo6bo6bo7bo
34b2o8b2o6b3o6bobo10bobobo2bo6b2o9bobo3bobob2o10b2o5bo4bobob2obo$20b3o
12bo2bo16bo10b2o14bobo56bo9bo4bo10b2o3bo4b2o5b3o2b3o5b2obob2o2bo35bo4b
2obo8bo7bob2o7b2o3bobobo10b2o5bo4bobob2obo7b3o3b2o2bo3bo3bo2bobo$19bo
16b2o45b2o47b3o3b3o13bobob2o6bo3b2o3bobo9bo10bobo3bob2o33bo5bob2o10b2o
3b2o9bobo3bob2o7bob2o3b2o2bo3bo3bo10bo4bob2o3bo8bo2bo$19b2o110bo20bo3b
obo8b2o4bo3bo6b3o2b3o6bo2bo2bo36b2o2b2o15bo2bobo8bo2bobobo10b2obobob2o
3bo8b2o6bob5o16b2o$131bob2obobob3o10bobo2bo10b5ob2o7bo2b2o2bo7b2o3bo
40bo16bob3o10b2ob2obob4o9b2o16bo6bobobobob2o4bob2o$132bo3bobobo2bo7bob
obobo11bo4bo11bo2bo11b3o37b2o3bo16bo14bo3bob2o2bo10bob2o4bobo2bo2bo8bo
2bobobo4bob2o$133b2obo2bo2b2o7b2o3bo15bobo12b2o12bo40bo2b2o17bo11bobo
3bo14bobobo4bob5o2b2o8b2obo2bo9bo$134bo2b2o33b2o67bo5b2obo12b2o11b2o3b
2o14b2o2bo26bobo4bob4obo$54bo17bo15bo43bobo106b2o4bob2o50b2o2bob4o17b
2o12bo$23bo11b2o17b3obo13b3obo10bobo42b2o171bo5bo21b3obob3o$22bobo11bo
20b2o16b2o9bo2bo216b2o2b2o20bo3b2obo$19bobobobo9bo18b2o16b2o13b3ob2o
208b2obobo26b2o3bo$17b3obo3bo9b2o17bob5o11bob3o13bo3b2o205bob2o2bo27b
3o$16bo4bob2o14bo11b2obo6bo7b2obo4bo9b2o6bo210b2o27bo$16bob2o15b2o3bob
2o7b2obo2bobobo7b2obo2bobo9bo$13b2obo3bob5o7bobo3bobo11bo2bob2o11bo2bo
b2o5b2obo4b6o37b2o15b2o15b2o20bo16b2o$14bo2b4obo3bo7b2o2bobo2bo7b2o4bo
11b2o4bo8bo2bob2o6bo36bo2bo14b2o16bo2bo2bo13bobo15b2o$14bo5bobo2bo6b2o
2bob2o2b2o6bob4obo10bob4obo10b2obo2bob3o36bobobo18b2o11bo3b4o12bo2b3o$
15b5o2bobo8bob2o13bo5bo11bo5bo15b3obo38bobob2o11b4o2bo11bob3o4b2o10bob
o3bo12b4o$17bo4b2o9bo2bo12b2o3bo12b2o3bo20bo35b2ob2obobo2bo8bo4bobo9b
3o4bob2o2bo6b2obobob2obo10bo4bob2o$34b2o18b2o16b2o18bo37bobo2bo3b2o7bo
bo3bobob2o5bo4bo2bo3b2obo5bo2bobo4bo9bobo3bobo$92b2o36bo2bo12bo2bo2bo
4bobo6b3o4bob2o2bo8bob2obobob2o7bobobobo2bo$131bobob6o5b2obob2ob2obo
10bob3o4b2o8b2o3bo2bobo7b2o3bo2bobo$130b2obo6bo8bo2bo3bobo10bo3b4o13bo
bobo2bo6bo2b2obob2ob2o$134b3obo10b2o2b3o2bo11bo2bo2bo10b2o2bo2bobo8bo
5bo31b2o2b2obo$17b2o13b2o19b2o13bo2bo64bob2o15bobo11b2o15bo2b2o3b2o10b
4obo32bo2bob2o32bo$16bobo12bobo18bo2bo12b6o82bo29b2o20bobo32bo7b2o9b2o
b2o15bobo$16bo14bo7b2o7bo2bobobo18bo168b2o6bo9bobobobo13bobobo$13b2obo
11b2obo6bobo7b4obo2b2o10b3ob2o2bo175bo8bo5bo11b3obob3o$13b2obo12bobo6b
o13b4o2bo8bo3bobob2o166b2o6b2o5b2obo5bob2o5bobo3bobo3bobo$16bobo8bobob
obo2b3o9b2obo5bo9bo3bobo170bo2b2obo7bobo2bobob2obo5b2ob2o5b2ob2o$16bob
2obo5b2o2bob2o12bo2bobob3o7b2obobobobo113bo17b2obo34bo3bob2o10b2obobo
12bobo3bobo$13b2ob2o3bo9b2o3b3o8bo2bobobo9bobo5bo60bo15bo3b2o12b2o18b
3o14bo2b2o34b2o6b2o9bobobo12bo7bo$13bobo3b2o13b2o2bo7b2obob2o14b5o60bo
bo13bobobobo11bo2bo15b2o3bo13b2o45bo9bo2b2o14b7o$16b3o12b3o3bo11bo3bo
15bo61bo2b3o10bo2bobo11bo2b2o15bo2b3o12b2o2b3o34b2o7bo8b2o$18bo12bo2b
3o12b2ob2o77bobo3bob2o6bob2obo11b3o2b3o12b2o4b3o8bo2bo4bo34bo6b2o26bob
2ob2obo$34bo95b2ob2ob2ob2o5b2o4bobob2o9bo4bo9b2o5bo3bo7bobo4bobo32bo3b
2obo28b2obobob2o$129bo7bo10bobo3b2obo8bo4bobo7bo2b2o3bo2bo6b2o2b2o3bob
o32b2o2bob2o$130bobob2obo10bo3b2o12b2o3bobo6bobobo2bobobo8bobo3bobob2o
$129b2obo3bo12bo5b2o7b2o3bobob2o5bob2o2bo3bo9bob2obo3bo$132bo2bo10b3o
7bo6bo2bobo3bo8bo5b3o9b2obo3b2obo$132bo3b3o7bo8bo8b2o3b2obo10b4o16b3o
2bo$133b3o2bo16b2o9b2obobo10b2o3bo17bobo$135bo30bobo17b2o18bo5$241b2o
2b2o4b2o$129bo7b2o22b2o31bo10b2o35bo3bo5bo$129b3o4bobo14b2o4bo2bo10b2o
2bo14b3o10bobo33bo3bo5bo14b2o$132bo2bo16bobo2b5o11bo2bobo12bo3b2o10bo
33b2o2b2o4b2o9b2obo2bo$131bo2bob5o10bo2bobo13bo3b2o2bo11bobobo2bo6bo2b
2o38bob2o10bobob2obo$131bob2o6bo9bob2obo2bo10b4o4b2o9bo2bo3b2o6b3o5b2o
27b2o4b2obo10bobobo2b2o$130b2o2bobob4o8b2o4bobobo7b2o4bob2o2bo8bobob2o
bo10b2obo2bo28bo8b2o5b2obo3bobo2bo$132b2o2bo5b2o8bobo3bo2bo6bo2b4o4b2o
6b2o4bobo2bo7bo3b3o28bo10bo5bo2bo3bobob2o$132bo4bob2obo9bo3b2ob2o8b2o
4b4o7bo2b3obobob2o7b2obo3b3o25b2o8bo7b2o2bobobo$133b5obo2bo10bo5bo10bo
bobo3bo8bo5bobo11bobob2o2bo35b2o7bob2obobo$138bo2bo8b3o6bobo8bobo2bo
12b5o2bo10bo2b2obo28b2o17bo2bob2o$135bobo4b3o5bo9b2o9bo2b2o14bo4b2o9b
2o34bo18b2o$135b2o7bo96bo9b2o$241b2o8b2o5$139bo$138bobo14b2ob2o35b2o$
138bobo10b2obobobo3b2o13bo18b3o$136b2obob2o8b2obobo3bo2bo12bobo15bo4bo
10b2o4b2o$135bobo3bobo10bobo2b4o11b3obo14bob2o2bo9bob3o2bo$135bobobo3b
o7b4obobo14bo4b2o13bobobob2o8bo4bobo$133b2o2bob2o2b2o5bo8b2o11bob3o3bo
10bobob2o2bo6b2obo3bo2b2o25b2o2bob2o$132bo8bobo6b5o3bo2bo10bo5b2obo8bo
bobo4bo6b2obo4bobo27bo2b2obo12bo$132b4o5bobo16b2o7b2obo2b2o3bo9bobo3b
3o11b5obo26bo7b2o9bobo$130b2o10bo7b2o2bobo12b2obo4b3o9b2obobo20bo27b2o
7bo9bobo3b2o$129bo2bob2o4b2o8bo2bobo17b3obo18b5o11bobo36bo7b2obob2o3bo
$130b2o3bo3bo12b2obobo18bo12b2ob4o4bo11b2o29b2o6b2o7bobo6bob2o$132b2o
2b2obo13bo2b2o17bo11bo2bo4bo2bo45bo4b2o7bo2bobob3obo2bo$132bo5bo12bobo
21b2o10b2o3b3o3b2o43bo6bo7b2obobo4bobo$133b5o13b2o38b2o50b2o4bo11bobo
2b2o2b2o$135bo113b2o10bobo3bobo$243b2o2b2o13b2obobobo$244bo3bo15bobobo
$243bo3bo16bobo$171b2o70b2o2b2o16b2o$171bo20b2o18bo$132b2o17b2o15b2obo
19bo2bo16bobo$132bo2bo15bo2b2o4b2o6bo2b2o14bo2bob2obo14bo2bo$133b2ob2o
14b2ob3o2bo9bo4bo2b2o7b4o4bo13bob2ob2o$129b2o3bo2bobo8b2o5bo2bobo7bob
5obo2bo11bobobob2o8b3o4bo$129bo2bobob4o8bo2bobo3b2ob2o5bobo6bobo8b2o2b
ob3o2bo7bo3bobobo$131b2obo5b2o8b2obo6bo6bo2b5obob2o6bo2bo6bo8bob2obo2b
o$132bo2b5o2bo8bo2b5obo7b2o6bo3bo5b2obob5o9bo5b2o$132bo8bo7bobo7bo10bo
3bo2bobo7bobo14b2obob2o$133b3o2b3o8b2o5b3o9b2o2bobob2ob2o6bo2b4o11bobo
2bo$135bo2bo17bo12bob2obobo11bobo2bo11bo2bo28b2obo6b2obo$169bo2bobobo
12bo16b2o29bob2o6bob2o10b2o5b2o$170b2o3bo65b2o8b2o8bo7bo$241bo9bo6b2ob
o7bob2o$242bo9bo5bo2b2o5b2o2bo$241b2o8b2o6b2o3bo5b2o$237b2obo6b2obo10b
2o3b4o$237bob2o6bob2o10bo7bo$133bo101b2o8b2o15b7o$132bobo100bo9bo$132b
obo101bo9bo17b3o$130b2o2b2o99b2o8b2o16bo3bo$129bobobo2bo100b2obo6b2obo
12b2ob2o$129bo2bobob2o99bob2o6bob2o$130bobo4bo$131bobob2o2b2o$133bobo
3bobo$133bobo5bo$134bo6b2o!
Most of these are enclosed to one degree or another, but quite often there's an orthogonal line in to the rotor from some direction or other. And just occasionally a rotor may even be completely open on one side. Seems like about the only thing we can safely say is that there are never any rotor cells at the edge of these oscillators' bounding boxes.

I don't think anybody objected in 1997 when Dean Hickerson called all 234 of these things "billiard tables". Dean didn't include any period-2 stuff in the collection, probably because they were so dead common they just weren't very interesting. There _was_ some objection raised back in 1995 to calling a beacon a billiard table, just because it seemed too small. Conway's original idea was apparently "largish, artificial, walled-in structures", so natural denizens of soup like beacons need not apply.

I seem to remember other people also occasionally used "billiard table" to refer to open-but-concave things like test tube baby, though.

User avatar
Moosey
Posts: 4306
Joined: January 27th, 2019, 5:54 pm
Location: here
Contact:

Re: Thread for basic questions

Post by Moosey » July 4th, 2019, 7:33 pm

Where IS that pi-2G from, anyways? It seems that catalyst pops up quite a bit but I can’t find the first mention of it on the forums.
not active here but active on discord

User avatar
testitemqlstudop
Posts: 1367
Joined: July 21st, 2016, 11:45 am
Location: in catagolue
Contact:

Re: Thread for basic questions

Post by testitemqlstudop » July 4th, 2019, 11:44 pm

I would like an actual synthesis using RCT of any object with 35 gliders, in RLE / MC format, and NOT some convoluted proof-of-concept that it "may work". When simulated in Golly to completion, it should synthesize the object in concern and nothing else.

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

Re: Thread for basic questions

Post by dvgrn » July 5th, 2019, 12:04 am

testitemqlstudop wrote:I would like an actual synthesis using RCT of any object with 35 gliders, in RLE / MC format, and NOT some convoluted proof-of-concept that it "may work". When simulated in Golly to completion, it should synthesize the object in concern and nothing else.
I'd like that, too, but it's not going to happen any time soon.

Someone would probably have to do several years of hard labor, figuring out specific seeds for all the maybe-specialized Corderships needed to clean up the long chains of junk left behind by the GPSEs, the BLSE, and the Sakapuffer, and then more seeds for the meteor showers that clean up whatever is left behind at the ends of those debris chains. Plus the seed for the gliders that stop the BLSE, I guess.

I think calcyman estimated that something like a 64,000-bit recipe might be runnable by HashLife. But my best estimate is that that would be barely enough to construct a really minimal object in the canonical way -- something like a pulsar, let's say, without worrying at all about cleaning up all of the mess.

Building any object, especially one that ordinarily needs more than 35 gliders, and then doing all the cleanup, will probably need something closer to 100 million bits encoded in the approaching Sakapuffer. That's just my guess, but if it's anywhere near right, then we aren't going to be running a full cleaned-up RCT recipe to completion in Golly in the foreseeable future. I would guess we'll have given up on fossil fuels and will be doing everything with renewable energy before we see a complete RCT simulation.

User avatar
testitemqlstudop
Posts: 1367
Joined: July 21st, 2016, 11:45 am
Location: in catagolue
Contact:

Re: Thread for basic questions

Post by testitemqlstudop » July 5th, 2019, 1:55 am

Then what about the original 385 coronership/gun recipe? That should be easier to clean up, and we can generalize that to the 35 glider recipe.

Also, I'm the kind of skeptic that doesn't believe something before seeing it in action.

User avatar
calcyman
Moderator
Posts: 2936
Joined: June 1st, 2009, 4:32 pm

Re: Thread for basic questions

Post by calcyman » July 5th, 2019, 4:55 am

I did some timing experiments in lifelib for running Dean Hickerson's (forward!) caber tosser for large numbers of generations:

Code: Select all

$ python cttest.py 1024
Instruction set AVX2 detected
0.2964649200439453

$ python cttest.py 2048
Instruction set AVX2 detected
0.5929415225982666

$ python cttest.py 4096
Instruction set AVX2 detected
1.1848986148834229

$ python cttest.py 8192
Instruction set AVX2 detected
2.3648428916931152

$ python cttest.py 16384
Instruction set AVX2 detected
4.730949401855469

$ python cttest.py 32768
Instruction set AVX2 detected
9.55366039276123

$ python cttest.py 65536
Instruction set AVX2 detected
18.842262268066406
The time grows logarithmically; it takes twice as long to run the pattern for 2 ** 65536 generations as it does to run it 2 ** 32768 generations. So this sort of thing could be possible in HashLife.

But really we want something more like HashLife ** 2. I'll talk to Tom Rokicki and see if this has any chance of working.
What do you do with ill crystallographers? Take them to the mono-clinic!

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

Re: Thread for basic questions

Post by dvgrn » July 5th, 2019, 6:59 am

calcyman wrote:I did some timing experiments in lifelib for running Dean Hickerson's (forward!) caber tosser for large numbers of generations...
The time grows logarithmically; it takes twice as long to run the pattern for 2 ** 65536 generations as it does to run it 2 ** 32768 generations. So this sort of thing could be possible in HashLife.
A full RCT will have to track the incredible amount of debris from the various puffers as well. Each increase in recipe size means only a logarithmic increase in memory use for storing the GPSEs' debris, so that will probably be manageable.

The BLSE debris is a bit more complicated, though. A 35-glider recipe will do non-periodic damage to the leftover blocks, and toward the end of the recipe there will be gliders passing close by multi-million-cell lengths of this perforated debris chain on both sides, forward and then back on the other side. I think a standard HashLife implementation will get slowed down by this more and more as the debris chain gets longer, so that there will be much more than a logarithmic increase in simulation time each time the recipe doubles in length.

There isn't a way to re-work the design so that we get an elbow block back at the end of each cycle of crystal growth and decay... is there? It would be really nice to be able to leave out the BLSE entirely.
testitemqlstudop wrote:Then what about the original 385 [Cordership]/gun recipe? That should be easier to clean up, and we can generalize that to the 35 glider recipe.

Also, I'm the kind of skeptic that doesn't believe something before seeing it in action.
It might even make sense to allow up to say 999 gliders, and also build the self-destruct circuitry for the guns as part of the initial recipe.

Otherwise, even if you're building something simple like a pulsar, the great majority of the incoming bits would be needed to build the self-destruct circuitry that has to be included with every construction. That might still push the incoming Cordership out far enough that it would be very time-consuming to simulate the pattern to completion.

User avatar
Moosey
Posts: 4306
Joined: January 27th, 2019, 5:54 pm
Location: here
Contact:

Re: Thread for basic questions

Post by Moosey » July 5th, 2019, 7:29 am

If you can’t build a pulsar reasonably, could you do a proof of concept to just synthesize the first non-nothing object the RCT can make, with out worrying about all the junk to clean up?

Also, I’m assuming that 35 gliders for any object means:
34 Gs to build the UCC, ready to interpret the final G.
1 more to give instructions. Or something along those lines
Last edited by Moosey on July 5th, 2019, 7:36 am, edited 2 times in total.
not active here but active on discord

Post Reply