Tutorials/Seed building: Difference between revisions

From LifeWiki
Jump to navigation Jump to search
→Details: typo fix
m Copied from 1-time turner, and Tutorials/Glider_syntheses. Hope that this is allowed, Sokwe said okay.
 
(10 intermediate revisions by 6 users not shown)
Line 1: Line 1:
== Introduction ==
== Introduction ==
This tutorial describes a few stages of the process of building a [[1G seed]] -- an engineered constellation of small glider-constructible still lifes, designed so that when a single glider collides with it, a complex target object ([[spaceship]], [[rake]], [[wickstretcher]], etc.) is eventually produced.
This tutorial describes a few stages of the process of building a [[1G seed]] -- an engineered constellation of small glider-constructible still lifes, and in some cases, low-period oscillators, designed so that when a single glider collides with it, a complex target object ([[spaceship]], [[rake]], [[wickstretcher]], etc.) is eventually produced.


The usual underlying mechanism is either a standard [[glider synthesis]] recipe, or a modification of a standard recipe that includes additional [[bait]] objects to reduce the number of synchronized gliders needed. To turn a single incoming glider into any number of synchronized gliders, we can use [[one-time]] [[turner]]s and [[splitter]]s.
The usual underlying mechanism is either a [[glider synthesis]] recipe, or a modification of a recipe that includes additional stationary [[bait]] objects to reduce the number of synchronized gliders needed. To turn a single incoming glider into any number of synchronized gliders, we can use [[one-time]] [[turner]]s and [[splitter]]s.


For several years standard resource for one-time turners and splitters has been Michael Simkin's collection of constellations fitting inside 10×10, on the [https://conwaylife.com/forums/viewtopic.php?f=2&t=1512 Splitters with Common SL] thread.  However, these constellations included less common still lifes such as shipties and mangoes, and also allowed pseudo-objects, which are somewhat more expensive to construct.
For several years standard resource for one-time turners and splitters has been Michael Simkin's collection of constellations fitting inside {{times|10|10}}, on the [https://conwaylife.com/forums/viewtopic.php?f=2&t=1512 Splitters with Common SL] thread.  However, these constellations included less common still lifes such as shipties and mangoes, and also allowed pseudo-objects, which are somewhat more expensive to construct.


A more recent toolkit of 90-degree turners can be found [https://conwaylife.com/forums/viewtopic.php?p=101542#p101542 later in the same thread].  The classification of 90-degree turners is complete and correct, but as of September 2020 the 0-degree and 180-degree turner categories are a work in progress -- even "CP" and "CC" labels are inverted in some cases, and there should be separate categories for each output lane.  The 2-glider and 3-glider splitters are currently uncategorized; each should be labeled according to the two or three categories of turner that its output gliders fall into.
A more recent [[toolkit]] of 90-degree turners can be found [https://conwaylife.com/forums/viewtopic.php?p=101542#p101542 later in the same thread].  The classification of 90-degree turners is complete and correct, but as of September 2020 the 0-degree and 180-degree turner categories are a work in progress -- even "CP" and "CC" labels are inverted in some cases, and there should be separate categories for each output lane.  The 2-glider and 3-glider splitters are currently uncategorized; each should be labeled according to the two or three categories of turner that its output gliders fall into.
 
== One-time turners and splitters ==
One-time turners and splitters are extremely important objects in seeds, allowing for glider-synthesis based seeds. Below is a list of important one-time turners and splitters:
{{EmbedViewer
|pname        = turners
|viewerconfig = #C [[ THUMBNAIL THUMBSIZE 2 WIDTH 600 HEIGHT 600 ZOOM 4 STOP 106 ]]
                #C [[ COLOR LABEL Red LABELSIZE 18 LABELALPHA .50 ]]
                #C [[ LABEL -12 21 2 "180\ndegree" ]]
                #C [[ LABEL 40 -6 2 "90 degree" ]]
                #C [[ LABEL 95 23 2 "0\ndegree" ]]
                #C [[ LABEL 80 60 2 "1G-to-3G" ]]
                #C [[ LABEL 15 60 2 "inserters" ]]
                #C [[ LABEL 40 103 2 "1G-to-2G splitters" ]]
|position    = center
}}
 
Of the reactions on the first row, the glider output [[parity]] is even for the boat, eater and toad, and odd for the long boat and the [[Blockic]] 90-degree turner at the far right. The three singleton still lifes are all [[colour-changing]], but the toad and Blockic 90-degree turner are [[colour-preserving]].
 
Three of the simplest 180-degree turners are shown in the second row. The [[blockic]] 180-degree turner is colour-preserving. The [[long boat]] and [[long ship]] are again colour-changing; this is somewhat counterintuitive as the output glider is on exactly the same [[lane]] as the input glider, but gliders traveling in opposite directions on the same lane always have opposite colours. At the right end of the second row is an [[aircraft carrier]] serving as a colour-changing "0-degree turner".
 
The third row shows two turners that are unusually effective [[one-time]] [[inserter]]s, placing gliders close to existing gliders. The pond and long boat turner can place a 90-degree output glider directly behind an existing glider at the minimum separation of 14 ticks; the beehive and boat turner can place a 180-degree output glider directly in front of an existing glider, again at the minimum possible separation.  Many other turner-based glider [[injection]] mechanisms are available, depending on the required [[clearance]] around the inserted glider.
 
The right side of the third row shows a [[long long boat]] and block to split one glider into three gliders.  Three-glider outputs are very rare compared to the 1G-to-2G [[splitter]]s shown on the fourth row. The first two are modifications of singleton turners directly above them in the table; in each case a second still life is added that uses a transient [[spark]] to produce an additional glider. The [[loaf]] and block has the output gliders on different [[parity|parities]] and different [[Colour of a glider|colours]], and a passing glider needs to be at least 3 lanes away, whereas the [[highway robber|highway-robbing]] [[boat]] and block has the output gliders on the same parity and same colour.
 
== Finding active regions ==
Sometimes, objects are more easily created by reactions caused by gliders colliding with objects, such as [[Great on-off]]. To find these, you can use find-by-octohash-Python3.py and find-by-octo3.py.
 
Another database that can be useful when a specific active reaction is needed is the [[octohash database]].  The name "octohash" denotes a hash function that returns the exact same hash value for any of the eight orientations of a pattern -- i.e., the octohash of any rotation or reflection of a pattern will always be the same as the octohash of the original pattern.  [[lifelib]] has a similar function available called "octodigest", but the octohash database is designed to work with Golly and Python, without any dependency on lifelib.
 
The database is just a series of simple text files containing ten printable ASCII characters for each generation of each glider collision with each constellation.  Python can search through these text files very quickly to find matching hashes.  The hashing function first finds the canonical orientation of the current phase of the collision.  Then it runs the RLE through a SHA1 hash function, throws away everything except the first seven bytes, and encodes the resulting integer in base 90 using the ASCII characters from 37 to 126 -- mostly.  Backslashes, apostrophes, and commas are replaced with "!", "#", and "$" respectively, to make the text strings a little less likely to cause any escape-character or quote-character issues, in any programming language that may be used to work with these octohash strings.
 
This turns out to be a good enough hash function that no [https://en.wikipedia.org/wiki/Hash_collision hash collisions] showed up in the entire set of {{times|12|12}} constellation / glider interactions.
 
The current octohash databases catalogue every generation of every possible collision between a single glider and all possible small constellations of common objects:
 
* The octohash constellations may contain up to two well-separated objects -- no [[pseudo]] still lifes -- and must fit inside a {{times|12|12}} bounding box.  The objects used in the enumeration were [[block]], [[boat]], [[beehive]], [[tub]], [[pond]], [[ship]], [[loaf]], [[eater]], [[long boat]], and [[blinker]].
* The octo3obj constellations may contain up to three well-separated objects, and must fit inside an {{times|11|11}} bounding box. The objects used were [[block]], [[blinker]], [[beehive]], [[bi-block]], [[half blockade]], and [[teardrop]] ash (two beehives).
 
To use the octohash database, clone the [https://github.com/dvgrn/octohash octohash Git repository], or try the "Download ZIP" option under the "Code" dropdown.  In Golly, select the active pattern you want to create with a 1G collision.  For example, if you want to create a [[pentadecathlon]] by hitting a [[seed]] constellation with a trigger glider, place any of the 15 phases of a pentadecathlon in the Golly universe, select it, and run '''{{filename|find-octohash-Python3.py}}'''.
 
The octo3obj database can currently be downloaded from [https://drive.google.com/drive/folders/1_u-pTwgyldz5yKw89PUBh89OPIksLrTU?usp=sharing here], and the generating code including the {{filename|find-by-octo3.py}} script can be found in the [https://github.com/dvgrn/octo3obj/ octo3obj repository].


== Overview ==
== Overview ==
Line 83: Line 124:
[[ THEME LifeHistory GRID STOP 286 WIDTH 600 HEIGHT 600 THUMBSIZE 2 THUMBLAUNCH X 0 Y 0 Z 4 ]]}}</center>
[[ THEME LifeHistory GRID STOP 286 WIDTH 600 HEIGHT 600 THUMBSIZE 2 THUMBLAUNCH X 0 Y 0 Z 4 ]]}}</center>


Instead of the two-eater glider splitter, let's try using this eater-and-longboat splitter -- it produces its gliders much quicker and uses much less space (smaller [[reaction envelope]]):
Instead of the two-eater glider splitter, let's try using this eater-and-longboat splitter, also from the "Oo1/Oe3" stamp collection [https://conwaylife.com/forums/viewtopic.php?p=149304#p149304 here] -- it produces its gliders much quicker and uses much less space (smaller [[reaction envelope]]):


<center>{{LV:Viewer|x = 21, y = 19, rule = LifeHistory
<center>{{LV:Viewer|x = 21, y = 19, rule = LifeHistory
Line 147: Line 188:
Already we've reached the point where we just need to find exactly the right 90-degree one-time turner to replace the remaining NW-traveling glider, using the glider from the eaternlongboat splitter that's been blocked off (pun intended) by the red-and-yellow preblock.
Already we've reached the point where we just need to find exactly the right 90-degree one-time turner to replace the remaining NW-traveling glider, using the glider from the eaternlongboat splitter that's been blocked off (pun intended) by the red-and-yellow preblock.


You can see that the turn is a color-preserving turn, because there's just one cell on the inside of the turn (above the preblock).  Here's a possible mnemonic:  "CP" has one "C" in it, and there's one cell on the inside corner of a color-preserving turn; "CC" has two "C"s in it, and there are two adjacent cells on the inside of of a color-changing turn.
You can see that the turn is a color-preserving turn, because there's just one cell on the inside of the turn (above the preblock).  Here's a possible mnemonic:  "CP" has one "C" in it, and there's one cell on the inside corner of a color-preserving turn; "CC" has two "C"s in it, and there are two adjacent cells on the inside of a color-changing turn.


With a lot of cleverness we could figure out which category of turner would turn the NE-traveling glider into the NW-traveling glider.  But it's easier to just do it by experiment.  Simply put in a CP0 turner and see what happens, then replace it as necessary with a turner in a different category.
With a lot of cleverness we could figure out which category of turner would turn the NE-traveling glider into the NW-traveling glider.  But it's easier to just do it by experiment.  Simply put in a CP0 turner and see what happens, then replace it as necessary with a turner in a different category.
Line 253: Line 294:
2A$25.A.A20.2A$26.A20.A.A$48.A$3.3A$5.A$4.A!
2A$25.A.A20.2A$26.A20.A.A$48.A$3.3A$5.A$4.A!
[[ THEME LifeHistory GRID WIDTH 600 HEIGHT 600 THUMBSIZE 2 THUMBLAUNCH X 19 Y 7 Z 4 ]]}}</center>
[[ THEME LifeHistory GRID WIDTH 600 HEIGHT 600 THUMBSIZE 2 THUMBLAUNCH X 19 Y 7 Z 4 ]]}}</center>
This isn't a completely clean seed, since it leaves behind three blocks.  This is important for some uses of the seed, e.g., in self-constructing patterns like the [[Speed Demonoid]].  Something has to be left behind that can be re-worked by a slow salvo to make the bait still lifes that assist in lighting the two wicks.
It's fairly straightforward to design a completely clean double-wickstretcher seed, if that is needed.  If no modification of the base still lifes can be found that remove the blocks, they can be shot down by gliders split off from the initial trigger glider, and delayed appropriately -- a good follow-up exercise for the enterprrising reader.


[[Category:Tutorials|Seed building]]
{{Tutorial}}
[[Category:Synthesis| ]]

Latest revision as of 04:30, 18 February 2024

Introduction

This tutorial describes a few stages of the process of building a 1G seed -- an engineered constellation of small glider-constructible still lifes, and in some cases, low-period oscillators, designed so that when a single glider collides with it, a complex target object (spaceship, rake, wickstretcher, etc.) is eventually produced.

The usual underlying mechanism is either a glider synthesis recipe, or a modification of a recipe that includes additional stationary bait objects to reduce the number of synchronized gliders needed. To turn a single incoming glider into any number of synchronized gliders, we can use one-time turners and splitters.

For several years standard resource for one-time turners and splitters has been Michael Simkin's collection of constellations fitting inside 10 × 10, on the Splitters with Common SL thread. However, these constellations included less common still lifes such as shipties and mangoes, and also allowed pseudo-objects, which are somewhat more expensive to construct.

A more recent toolkit of 90-degree turners can be found later in the same thread. The classification of 90-degree turners is complete and correct, but as of September 2020 the 0-degree and 180-degree turner categories are a work in progress -- even "CP" and "CC" labels are inverted in some cases, and there should be separate categories for each output lane. The 2-glider and 3-glider splitters are currently uncategorized; each should be labeled according to the two or three categories of turner that its output gliders fall into.

One-time turners and splitters

One-time turners and splitters are extremely important objects in seeds, allowing for glider-synthesis based seeds. Below is a list of important one-time turners and splitters:

x = 90, y = 98, rule = B3/S23 o19bo19bo19bo19bo$b2o18b2o18b2o18b2o18b2o$2o18b2o18b2o18b2o18b2o6b2o$ 88b2o2$4b2o13b2o20bo22bo$3bobo12bobo19bobo20bo2bo16b2o$4bo13bo22bobo 19bo2bo16b2o$17b2o23b2o21bo12$o19bo19bo5b2o32bo$b2o18b2o18b2o3b2o33b2o $2o18b2o18b2o38b2o3$2bo20b2o58b2o$bobo18bobo17b2o37bo2bo$obo18bobo18b 2o37b2o$2o19b2o12$o19bo$b2o8bo9b2o5b2o50bo$2o8bobo7b2o5bobo51b2o$9bobo 16bo51b2o$9b2o75b2o$86b2o2$6b2o$5bo2bo$5bo2bo74b2o$6b2o17b2o55bobo$16b o7bo2bo53bobo$14b2o9b2o53bobo$15b2o64bo2$44b3o$44bo$45bo28$o39bo19bo 19bo$b2o38b2o18b2o18b2o$2o38b2o18b2o18b2o2$10bo36bo$4b2o3bobo29bo4bobo 11bo17b2o$3bobo4bobo27bobo3b2o11bobo16b2o$4bo6b2o28bobo14bo2bo$42b2o 15b2o$84bo$83bobo$67b2o14b2o$67b2o! #C [[ THUMBSIZE 2 THEME 6 GRID GRIDMAJOR 0 SUPPRESS THUMBLAUNCH ]] #C [[ THUMBNAIL THUMBSIZE 2 WIDTH 600 HEIGHT 600 ZOOM 4 STOP 106 ]] #C [[ COLOR LABEL Red LABELSIZE 18 LABELALPHA .50 ]] #C [[ LABEL -12 21 2 "180\ndegree" ]] #C [[ LABEL 40 -6 2 "90 degree" ]] #C [[ LABEL 95 23 2 "0\ndegree" ]] #C [[ LABEL 80 60 2 "1G-to-3G" ]] #C [[ LABEL 15 60 2 "inserters" ]] #C [[ LABEL 40 103 2 "1G-to-2G splitters" ]]
(click above to open LifeViewer)
RLE: here Plaintext: here

Of the reactions on the first row, the glider output parity is even for the boat, eater and toad, and odd for the long boat and the Blockic 90-degree turner at the far right. The three singleton still lifes are all colour-changing, but the toad and Blockic 90-degree turner are colour-preserving.

Three of the simplest 180-degree turners are shown in the second row. The blockic 180-degree turner is colour-preserving. The long boat and long ship are again colour-changing; this is somewhat counterintuitive as the output glider is on exactly the same lane as the input glider, but gliders traveling in opposite directions on the same lane always have opposite colours. At the right end of the second row is an aircraft carrier serving as a colour-changing "0-degree turner".

The third row shows two turners that are unusually effective one-time inserters, placing gliders close to existing gliders. The pond and long boat turner can place a 90-degree output glider directly behind an existing glider at the minimum separation of 14 ticks; the beehive and boat turner can place a 180-degree output glider directly in front of an existing glider, again at the minimum possible separation. Many other turner-based glider injection mechanisms are available, depending on the required clearance around the inserted glider.

The right side of the third row shows a long long boat and block to split one glider into three gliders. Three-glider outputs are very rare compared to the 1G-to-2G splitters shown on the fourth row. The first two are modifications of singleton turners directly above them in the table; in each case a second still life is added that uses a transient spark to produce an additional glider. The loaf and block has the output gliders on different parities and different colours, and a passing glider needs to be at least 3 lanes away, whereas the highway-robbing boat and block has the output gliders on the same parity and same colour.

Finding active regions

Sometimes, objects are more easily created by reactions caused by gliders colliding with objects, such as Great on-off. To find these, you can use find-by-octohash-Python3.py and find-by-octo3.py.

Another database that can be useful when a specific active reaction is needed is the octohash database. The name "octohash" denotes a hash function that returns the exact same hash value for any of the eight orientations of a pattern -- i.e., the octohash of any rotation or reflection of a pattern will always be the same as the octohash of the original pattern. lifelib has a similar function available called "octodigest", but the octohash database is designed to work with Golly and Python, without any dependency on lifelib.

The database is just a series of simple text files containing ten printable ASCII characters for each generation of each glider collision with each constellation. Python can search through these text files very quickly to find matching hashes. The hashing function first finds the canonical orientation of the current phase of the collision. Then it runs the RLE through a SHA1 hash function, throws away everything except the first seven bytes, and encodes the resulting integer in base 90 using the ASCII characters from 37 to 126 -- mostly. Backslashes, apostrophes, and commas are replaced with "!", "#", and "$" respectively, to make the text strings a little less likely to cause any escape-character or quote-character issues, in any programming language that may be used to work with these octohash strings.

This turns out to be a good enough hash function that no hash collisions showed up in the entire set of 12 × 12 constellation / glider interactions.

The current octohash databases catalogue every generation of every possible collision between a single glider and all possible small constellations of common objects:

To use the octohash database, clone the octohash Git repository, or try the "Download ZIP" option under the "Code" dropdown. In Golly, select the active pattern you want to create with a 1G collision. For example, if you want to create a pentadecathlon by hitting a seed constellation with a trigger glider, place any of the 15 phases of a pentadecathlon in the Golly universe, select it, and run find-octohash-Python3.py.

The octo3obj database can currently be downloaded from here, and the generating code including the find-by-octo3.py script can be found in the octo3obj repository.

Overview

What follows is a walkthrough of the first part of the construction process for finishing a c/4 diagonal wickstretcher seed for use in self-constructing circuitry. The walkthrough is based on this forum posting, which in turn was based on some notes from Discord.

The wickstretcher is made up of three parts:

  • a c/4 diagonal crab spaceship
  • a reaction that provides the necessary spark to start the wickstretching reaction behind the already-constructed crab
  • a "guard glider" that, once the wick has been set to burn at c/3, changes the way the burning fuse interacts with the crab when it catches up with it, destroying the crab and producing a minimum of ash and no output gliders.

For this project we'll use the wickstarting reaction twice, once on each side. We will also add a different guard glider on each side. The guard glider on the northwest side allows the wick to be burned without destroying the crab spaceship or the other wick, leaving behind a target object (a block) for a following slow salvo to make use of. The guard glider on the southeast is in a good location to allow the fuse to stop the crab spaceship, destroying it in a controlled way without releasing gliders, and again leaving a target behind.

x=68, y = 85, rule = LifeHistory 58.3A$60.A$59.A$56.2A$56.A2$54.A3.2A$53.A.A2.2A5.3A$52.A.A3.A.A6.A$ 51.A.A6.2A4.A$37.3A10.A.A6.A.4A$39.A9.A.A10.2A$38.A9.A.A8.A$47.A.A8.A .A$46.A.A8.A.A$45.A.A8.A.A$44.A.A8.A.A$43.A.A8.A.A$42.A.A8.A.A$41.A.A 8.A.A$40.A.A8.A.A$39.A.A8.A.A$38.A.A8.A.A3.3A$37.A.A8.A.A6.A$36.A.A8. A.A6.A$35.A.A8.A.A$34.A.A8.A.A$33.A.A8.A.A$32.A.A8.A.A$31.A.A8.A.A$ 31.2A8.A.A$40.A.A$39.A.A$39.2A2$16.C$15.C.C$16.2C5$5.3C$7.C3.2C$6.C3. C2.C$11.2C2$32.2E$32.E.E$33.E2$25.E$24.E.E$24.E.E$25.E28$.2E$E.E$2.E! [[ THEME LifeHistory GRID TRACK 1/4 -1/4 STOP 930 X 0 Y -15 Z 3 WIDTH 600 HEIGHT 600 THUMBNAIL THUMBSIZE 2 ]]

The two target objects can be separated by as far as we want by delaying the second (yellow) glider relative to the first (white) glider.

Outline

Starting from a non-working previous attempt at a seed, here are the steps that we'll follow:

  1. remove the incompatible splitter (two yellow eaters) and put in something that won't get in the way as much;
  2. connect up the top glider with a very fast turner, block off the other glider, get the wickstretcher activation working;
  3. put a NW-traveling glider in the right place to activate the guard glider correctly (right timing and everything);
  4. put in either a fast CP0 or fast CC0 turner to turn the lower glider from the splitter onto that same lane, and see whether it's off by 0 1 2 3 4 5 6 or 7 mod 8;
  5. put in a fast CXn instead of the CX0 -- a CP1, for example, will be one tick slower than a CP0;
  6. try it out, then count how many times 8 ticks it's off by, cross your fingers, and go and see if you have any turners in the right bucket.

If at the last step it happens that there aren't any turners available with exactly the right timing, one thing that could be tried is to shift the splitter over by one cell, changing the colors of the output gliders. Then retry the same steps. This will mean using all different 90-degree turners -- CP turners instead of CC ones, and vice versa -- so you get a second chance to have the timing work out.

Details

Here's the pattern that we'll start with:

x=97, y = 76, rule = LifeHistory 85.4B$84.4B$83.4B$82.4B$37.2A42.4B$37.2A41.4B$79.4B$78.4B$77.4B$76.4B $30.C44.4B.2E$28.3C2.2A39.4B.2BE2B$27.C5.A.A38.4B3E3B$27.2C6.A37.5BE 6B$35.2A36.13B$64.2B6.14B$26.C17.2A17.4B6.6B2E4B$25.C.C9.2A5.2A15.6B 6.5BE2BE3B$24.C.C11.A10.2A9.7B6.6BEBE5B$24.2C12.A.A3.2A2.A.A8.9B5.7BE 8B$39.2A2.A2.A2.A10.2B2D3B5.17B$43.A.A14.2B2D5B2.2E16B$44.A15.11BE17B $61.5B2DBEBE18B$48.A12.5B2DB2E14B2.4B3.B$47.A.A5.2A2.25B4.4B.B2E$43.A 3.A2.A3.A.A2.25B5.4BE2BE$37.2A4.A4.A.A4.A4.16B2EB2.2B7.4BE.E$37.A.A3. A5.A10.11BE4BEBE2B9.5BE$39.A14.A6.9BEBE4B2E3B7.6B$39.2A12.A.A.2A2.10B 2E9B8.6B$46.3A3.A2.A.2A2.23B5.7B$53.2A7.6B2.2B2D3BE6B5.6B$63.5B4.2D2B EBE3B.B2E3.6BE$63.3B8.BE2BE2B2.B2E4.4BE.E$54.2A8.2B9.B2E3B8.5B2EB$2C 52.A20.8B6.7B$.2C52.3A11.2A3.9B5.8B$C56.A11.2A2.10B4.4B2.B$60.A12.10B 3.4B$60.3A9.10B3.4B$63.A9.8B3.4B$62.2A9.9B.4B$72.14B$71.14B$63.2C5. 14B$63.C3.9BE6B$61.C.C3.7B3E5B$57.C3.2C.B2.6BE8B$56.C.C3.4B.6B2E7B$ 55.C.C3.8BE12B$55.2C3.17B2E4B$59.7B3E8BE6B$57.11BE6BEBE5B$56.11BE7B2E 4B$56.15B.7B$57.14B3.B.2B$59.5B.6B$60.B6.2B5$6.A$6.2A$5.A.A8$37.2C$ 38.2C$37.C! [[ THEME LifeHistory GRID WIDTH 600 HEIGHT 600 THUMBSIZE 2 THUMBLAUNCH X 23 Y -7 Z 4 ]]

The yellow and white OTTs each work fine in isolation, but they can't be combined -- the yellow splitter made out of two fishhook eaters is much too slow and takes up too much space.

This means that we're going to need a different way to produce the two yellow gliders below from one NE-traveling glider:

x=143, y = 95, rule = LifeHistory 82.3D$84.D$83.D$80.2D$80.D2$82.2D$82.2D5.3D$82.D.D6.D$84.2D4.D$83.D. 4D$86.2D$83.D$82.D.D$81.D.D$80.D.D$79.D.D3.4B$78.D.D3.4B$77.D.D3.4B$ 76.D.D3.4B$37.2A36.D.D3.4B$37.2A35.D.D3.4B$73.D.D3.3DB$72.D.D3.3BD$ 71.D.D3.3BD$70.D.D3.4B$30.C38.D.D3.4B.2E$28.3C2.2A33.D.D3.4B.2BE2B$ 27.C5.A.A31.D.D4.4B3E3B$27.2C6.A30.D.D4.5BE6B$35.2A28.D.D5.13B$64.B2D 5.14B$26.C17.2A17.4B6.6B2E4B$25.C.C9.2A5.2A15.6B6.5BE2BE3B$24.C.C11.A 10.2A9.7B6.6BEBE5B$24.2C12.A.A3.2A2.A.A8.9B5.7BE8B$39.2A2.A2.A2.A10. 2B2D3B5.17B$43.A.A14.2B2D5B2.2E16B$44.A15.11BE17B$61.5B2DBEBE18B$48.A 12.5B2DB2E14B2.B$47.A.A5.2A2.14B3.8B$43.A3.A2.A3.A.A2.14B3.8B$37.2A4. A4.A.A4.A4.13B8.2B$37.A.A3.A5.A10.11BE3B$39.A14.A6.9BEBE2B$39.2A12.A. A.2A2.10B2E2B$46.3A3.A2.A.2A2.14B$53.2A7.6B2.2B2DB$63.5B4.2DB$63.3B8. B$54.2A8.2B$2C52.A$.2C52.3A11.2A$C56.A11.2A$60.A$60.3A$63.A$62.2A3$ 63.2C$63.C$61.C.C$57.C3.2C$56.C.C$55.C.C$55.2C9$109.2E$108.2E$110.E$ 6.A$6.2A$5.A.A8$37.2C$38.2C$37.C$140.3E$140.E$141.E! [[ THEME LifeHistory GRID STOP 286 WIDTH 600 HEIGHT 600 THUMBSIZE 2 THUMBLAUNCH X 0 Y 0 Z 4 ]]

Instead of the two-eater glider splitter, let's try using this eater-and-longboat splitter, also from the "Oo1/Oe3" stamp collection here -- it produces its gliders much quicker and uses much less space (smaller reaction envelope):

x=21, y = 19, rule = LifeHistory 15.D$14.B2D$13.BDBD$12.4B$11.4B$10.4B$7.7B$7.7B5.D$5.8BE2B2.B2D$3.10B 3E2BDBD$2.7BE6BE3B$3.5BEBE4B2E2B$3.6BEBE6B$2.8B2E5B$.15B$3AB.10B$2BA 3.B.5B$.A7.4B$9.3B! [[ THEME LifeHistory GRID ]]

We'll try the same turner for the top glider that we used before, to turn it onto the correct lane. The result is something like this:

x=143, y = 95, rule = LifeHistory 82.3D$84.D$83.D$80.2D$80.D2$82.2D$82.2D5.3D$82.D.D6.D$84.2D4.D$83.D. 4D$86.2D$83.D$82.D.D$81.D.D$80.D.D$79.D.D3.4B$78.D.D3.4B$77.D.D3.4B$ 76.D.D3.4B$37.2A36.D.D3.4B$37.2A35.D.D3.4B$73.D.D3.3DB$72.D.D3.3BD$ 71.D.D3.3BD$70.D.D3.4B$30.C38.D.D3.4B.2E$28.3C2.2A33.D.D3.4B.2BE2B$ 27.C5.A.A31.D.D4.4B3E3B$27.2C6.A30.D.D4.5BE6B$35.2A28.D.D5.13B$64.B2D 5.14B$26.C17.2A17.4B6.6B2E4B$25.C.C9.2A5.2A15.6B6.5BE2BE3B$24.C.C11.A 10.2A9.7B6.6BEBE5B$24.2C12.A.A3.2A2.A.A8.9B5.7BE8B$39.2A2.A2.A2.A10. 2B2D3B5.17B$43.A.A14.2B2D5B2.2E16B$44.A15.11BE17B$61.5B2DBEBE18B$48.A 12.5B2DB2E14B2.B$47.A.A5.2A2.25B$43.A3.A2.A3.A.A2.25B$37.2A4.A4.A.A4. A4.13B.4B3.2B$37.A.A3.A5.A10.11BE7B$39.A14.A6.9BEBE2B.4B$39.2A12.A.A. 2A2.10B2E2B2.4B$46.3A3.A2.A.2A2.14B3.2B2A$53.2A7.6B2.2B2DB4.BABAB$63. 5B4.2DB5.B2A2B$63.3B8.B6.4B12.4B$54.2A8.2B14.6B12.4B$2C52.A24.2BA5B 12.4B$.2C52.3A11.2A7.2BABA5B12.4B$C56.A11.2A7.BA2BA6B12.4B$60.A18.B2A BDB.4B12.4B$60.3A16.4B2D6B12.4B$59.4BA7B7.4BDBD2B.4B12.4B$59.3B2A8B5. 10B2.4B12.4B$58.13B2D5.9B3.4B12.4B$58.12BDBD5.8B5.4B12.4B$57.6B2C6BD 3.10B7.4B12.4B$56.7BC3B8.7B5.D5.4B12.4B$55.6BCBC3B6.8BE2B2.B2D5.4B12. 4B$54.3BC3B2C4B4.10B3E2BDBD6.4B12.4B$54.2BCBC7B4.7BE6BE3B8.4B12.4B$ 53.2BCBC7B6.B2A2BEBE4B2E2B10.4B12.4B$52.3B2C3B.3B7.ABA3BEBE6B12.4B12. 4B$53.6B2.3B6.3BA4B2E5B14.4B12.4B$55.5B2.B6.15B16.4B12.4B$56.4B11.B. 10B18.4B12.4B$55.5B14.B.5B21.4B12.4B$54.4B19.4B22.4B12.4B$53.4B20.3B 24.4B12.4B$52.4B49.4B12.4B2$109.2E$108.2E$110.E$6.A$6.2A$5.A.A8$37.2C $38.2C$37.C$140.3E$140.E$141.E! [[ THEME LifeHistory GRID STOP 84 WIDTH 600 HEIGHT 600 THUMBSIZE 2 THUMBLAUNCH X 0 Y 0 Z 4 ]]

Where it stops at T=84, you can see that the glider is getting there 10 cells too soon -- 40 ticks. So move the NE-traveling yellow glider back by 10 cells, and delete the glider that it's replacing. Now we've successfully synchronized one of the two gliders; that signal is now coming from the southwest via a splitter, replacing the temporary reference glider that came from the southeast:

x=143, y = 95, rule = LifeHistory 82.3D$84.D$83.D$80.2D$80.D2$82.2D$82.2D5.3D$82.D.D6.D$84.2D4.D$83.D. 4D$86.2D$83.D$82.D.D$81.D.D$80.D.D$79.D.D3.4B$78.D.D3.4B$77.D.D3.4B$ 76.D.D3.4B$37.2A36.D.D3.4B$37.2A35.D.D3.4B$73.D.D3.3DB$72.D.D3.3BD$ 71.D.D3.3BD$70.D.D3.4B$30.C38.D.D3.4B.2E$28.3C2.2A33.D.D3.4B.2BE2B$ 27.C5.A.A31.D.D4.4B3E3B$27.2C6.A30.D.D4.5BE6B$35.2A28.D.D5.13B$64.B2D 5.14B$26.C17.2A17.4B6.6B2E4B$25.C.C9.2A5.2A15.6B6.5BE2BE3B$24.C.C11.A 10.2A9.7B6.6BEBE5B$24.2C12.A.A3.2A2.A.A8.9B5.7BE8B$39.2A2.A2.A2.A10. 2B2D3B5.17B$43.A.A14.2B2D5B2.2E16B$44.A15.11BE17B$61.5B2DBEBE18B$48.A 12.5B2DB2E14B2.B$47.A.A5.2A2.25B$43.A3.A2.A3.A.A2.25B$37.2A4.A4.A.A4. A4.13B.4B3.2B$37.A.A3.A5.A10.11BE7B$39.A14.A6.9BEBE2B.4B12.4B$39.2A 12.A.A.2A2.10B2E2B2.4B12.4B$46.3A3.A2.A.2A2.14B3.2B2E12.4B$53.2A7.6B 2.2B2DB4.BEBEB11.4B$63.5B4.2DB5.B2E2B11.4B$63.3B8.B6.4B12.4B$54.2A8. 2B14.6B12.3B$2C52.A24.2BE4B11.4B$.2C52.3A11.2A7.2BEBE2B11.BEDB$C56.A 11.2A7.BE2BE2B4.2E4.2B2E4.2B$60.A18.B2E3B4.2E3.4B5.3B$60.3A16.8B6.4B 6.4B$59.4BA7B7.9B5.4B8.4B$59.3B2A8B5.10B4.4B10.4B$58.13B2D5.9B3.4B12. 4B$58.12BDBD5.8B3.4B14.4B$57.6B2C6BD3.10B3.4B16.4B$56.7BC3B8.7B5.D3B 18.4B$55.6BCBC3B6.8BE2B2.B2DB20.4B$54.3BC3B2C4B4.10B3E2BDBD22.4B$54. 2BCBC7B4.7BE6BE3B24.4B$53.2BCBC7B6.5BEBE4B2E2B26.4B$52.3B2C3B.3B7.6BE BE6B28.4B$53.6B2.3B6.8B2E5B30.4B$55.5B2.B6.15B32.4B$56.4B8.4B.10B34. 4B$55.5B7.4B3.B.5B37.4B$54.4B8.4B7.4B38.4B$53.4B8.4B8.3B40.4B$52.4B8. 4B53.4B$64.3B$62.2E2B$61.EBEB$61.2BE$6.A$6.2A$5.A.A8$37.2C$38.2C$37.C $140.3E$140.E$141.E! [[ THEME LifeHistory GRID WIDTH 600 HEIGHT 600 THUMBSIZE 2 THUMBLAUNCH X 0 Y 0 Z 4 ]]

Already we've reached the point where we just need to find exactly the right 90-degree one-time turner to replace the remaining NW-traveling glider, using the glider from the eaternlongboat splitter that's been blocked off (pun intended) by the red-and-yellow preblock.

You can see that the turn is a color-preserving turn, because there's just one cell on the inside of the turn (above the preblock). Here's a possible mnemonic: "CP" has one "C" in it, and there's one cell on the inside corner of a color-preserving turn; "CC" has two "C"s in it, and there are two adjacent cells on the inside of a color-changing turn.

With a lot of cleverness we could figure out which category of turner would turn the NE-traveling glider into the NW-traveling glider. But it's easier to just do it by experiment. Simply put in a CP0 turner and see what happens, then replace it as necessary with a turner in a different category.

This is the fastest turner in the CP0 category, a CP0col9:

x=143, y = 95, rule = LifeHistory 82.3D$84.D$83.D$80.2D$80.D2$82.2D$82.2D5.3D$82.D.D6.D$84.2D4.D$83.D. 4D$86.2D$83.D$82.D.D$81.D.D$80.D.D$79.D.D3.4B$78.D.D3.4B$77.D.D3.4B$ 76.D.D3.4B$37.2A36.D.D3.4B$37.2A35.D.D3.4B$73.D.D3.3DB$72.D.D3.3BD$ 71.D.D3.3BD$70.D.D3.4B$30.C38.D.D3.4B.2E$28.3C2.2A33.D.D3.4B.2BE2B$ 27.C5.A.A31.D.D4.4B3E3B$27.2C6.A30.D.D4.5BE6B$35.2A28.D.D5.13B$64.B2D 5.14B$26.C17.2A17.4B6.6B2E4B$25.C.C9.2A5.2A15.6B6.5BE2BE3B$24.C.C11.A 10.2A9.7B6.6BEBE5B$24.2C12.A.A3.2A2.A.A8.9B5.7BE8B$39.2A2.A2.A2.A10. 2B2D3B5.17B$43.A.A14.2B2D5B2.2E16B$44.A15.11BE17B$61.5B2DBEBE18B$48.A 12.5B2DB2E14B2.4B$47.A.A5.2A2.25B4.4B$43.A3.A2.A3.A.A2.25B5.4B$37.2A 4.A4.A.A4.A4.13B.4B3.2B7.4B$37.A.A3.A5.A10.11BE7B12.4B$39.A14.A6.9BEB E2B.4B12.B2AB$39.2A12.A.A.2A2.10B2E2B2.4B12.ABA2B$46.3A3.A2.A.2A2.14B 3.2B2E12.ABAB$53.2A7.6B2.2B2DB4.BEBEB11.A2B$63.5B4.2DB5.B2E2B7.A5B$ 63.3B8.B6.4B6.ABA3B$54.2A8.2B14.6B6.ABAB$2C52.A24.2BE4B7.2AB$.2C52.3A 11.2A7.2BEBE2B7.6B$C56.A11.2A7.BE2BE2B4.2E.6B5.2B$60.A18.B2E3B4.2E2. 5B5.3B$60.3A16.8B6.5B5.4B$59.4BA7B7.9B5.4B8.4B$59.3B2A8B5.10B4.4B10. 4B$58.13B2D5.9B3.4B12.4B$58.12BDBD5.8B3.4B14.4B$57.6B2C6BD3.10B3.4B 16.4B$56.7BC3B8.7B5.4B18.4B$55.6BCBC3B6.8BE2B2.4B20.4B$54.3BC3B2C4B4. 10B3E5B22.4B$54.2BCBC7B4.7BE6BE3B24.4B$53.2BCBC7B6.5BEBE4B2E2B26.4B$ 52.3B2C3B.3B7.6BEBE6B28.4B$53.6B2.3B6.8B2E5B30.4B$55.5B2.B6.15B32.4B$ 56.4B8.4B.10B34.4B$55.5B7.4B3.B.5B37.4B$54.4B8.4B7.4B38.4B$53.4B8.4B 8.3B40.4B$52.4B8.4B53.4B$64.3B$62.2E2B$61.EBEB$61.2BE$6.A$6.2A$5.A.A 8$37.2C$38.2C$37.C$140.3E$140.E$141.E! [[ THEME LifeHistory GRID WIDTH 600 HEIGHT 600 THUMBSIZE 2 THUMBLAUNCH X 0 Y 0 Z 4 ]]

Run it and you'll see that a CP0col9 is exactly 30 ticks faster than what we need -- the glider gets to its destination too soon.

That means a CP6col9 would be exactly 24 ticks faster than what we need, so the turner we want is going to be in the CP6 bucket. Furthermore, every column "costs" four ticks (because gliders move at c/4) -- so the turner we really want is one that's rated CP6col15, six columns, 6*4 = 24 ticks, slower than col11.

However, when we try a CP2col15, it's still eight ticks too fast. This is a limitation of the current categorization system. A CP6 glider has traveled 6 ticks from the CP0 location, so it's already two columns over from its CP0 equivalent. Maybe the classification script will be adjusted in the future to account for this. But in the meantime, what we really want must be a CP6col17 --

x=106, y = 92, rule = LifeHistory 82.3D$84.D$83.D$80.2D$80.D2$82.2D$82.2D5.3D$82.D.D6.D$84.2D4.D$83.D. 4D$86.2D$83.D$82.D.D$81.D.D$80.D.D$79.D.D3.4B$78.D.D3.4B$77.D.D3.4B$ 76.D.D3.4B$37.2A36.D.D3.4B$37.2A35.D.D3.4B$73.D.D3.3DB$72.D.D3.3BD$ 71.D.D3.3BD$70.D.D3.4B$30.C38.D.D3.4B.2E$28.3C2.2A33.D.D3.4B.2BE2B$ 27.C5.A.A31.D.D4.4B3E3B$27.2C6.A30.D.D4.5BE6B$35.2A28.D.D5.13B$64.B2D 5.14B$26.C17.2A17.4B6.6B2E4B$25.C.C9.2A5.2A15.6B6.5BE2BE3B$24.C.C11.A 10.2A9.7B6.6BEBE5B$24.2C12.A.A3.2A2.A.A8.9B5.7BE8B$39.2A2.A2.A2.A10. 2B2D3B5.17B$43.A.A14.2B2D5B2.2E16B$44.A15.11BE17B$61.5B2DBEBE18B$48.A 12.5B2DB2E14B2.4B$47.A.A5.2A2.25B4.4B$43.A3.A2.A3.A.A2.25B5.4B$37.2A 4.A4.A.A4.A4.13B.4B3.2B7.4B4.2B$37.A.A3.A5.A10.11BE7B12.B2EB.4BE$39.A 14.A6.9BEBE2B.4B12.EBE4BEBE$39.2A12.A.A.2A2.10B2E2B2.4B12.EBE4B2EB$ 46.3A3.A2.A.2A2.14B3.2B2E11.BE10B$53.2A7.6B2.2B2DB4.BEBEB10.12B$63.5B 4.2DB5.B2E2B14.7B$63.3B8.B6.4B14.6B$54.2A8.2B14.6B12.6B$2C52.A24.2BE 4B11.6B$.2C52.3A11.2A7.2BEBE2B11.7B$C56.A11.2A7.BE2BE2B4.2E4.7B$60.A 18.B2E3B4.2E3.4B.3B$60.3A16.8B6.4B3.B$59.4BA7B7.9B5.4B$59.3B2A8B5.10B 4.4B$58.13B2D5.9B3.4B$58.12BDBD5.8B3.4B$57.6B2C6BD3.10B3.4B$56.7BC3B 8.7B5.D3B$55.6BCBC3B6.8BE2B2.B2DB$54.3BC3B2C4B4.10B3E2BDBD$54.2BCBC7B 4.7BE6BE3B$53.2BCBC7B6.5BEBE4B2E2B$52.3B2C3B.3B7.6BEBE6B$53.6B2.3B6. 8B2E5B$55.5B2.B6.15B$56.4B8.4B.10B$55.5B7.4B3.B.5B$54.4B8.4B7.4B$53. 4B8.4B8.3B$52.4B8.4B$64.3B$62.2E2B$61.EBEB$61.2BE$6.A$6.2A$5.A.A8$37. 2C$38.2C$37.C! [[ THEME LifeHistory GRID WIDTH 600 HEIGHT 600 THUMBSIZE 2 THUMBLAUNCH X 18 Y 1 Z 4 STOP 286 ]]

The whole structure can then be tightened up a little bit. One-time turners modifying c/4 spaceships are very forgiving -- for example, you could move all the yellow objects except for the yellow activation glider northeast as far as you want, and the mechanism will still work perfectly well.

So a final candidate 4G (four-glider) seed would be

x=96, y = 92, rule = LifeHistory 82.3D$84.D$83.D$80.2D$80.D2$82.2D$82.2D5.3D$82.D.D6.D$84.2D4.D$83.D. 4D$86.2D$83.D$82.D.D$81.D.D$80.D.D$79.D.D$78.D.D$77.D.D$76.D.D$37.2A 36.D.D$37.2A35.D.D$73.D.D3.3D$72.D.D6.D$71.D.D6.D$70.D.D$30.A38.D.D$ 28.3A2.2A33.D.D$27.A5.A.A31.D.D8.2E$27.2A6.A30.D.D10.E$35.2A28.D.D8. 3E$65.2D9.E$26.A17.2A$25.A.A9.2A5.2A$24.A.A11.A10.2A26.2E$24.2A12.A.A 3.2A2.A.A25.E2.E$39.2A2.A2.A2.A12.2D13.E.E$43.A.A16.2D7.2E5.E$44.A26. E$66.2D.E.E$48.A17.2D.2E$47.A.A5.2A$43.A3.A2.A3.A.A29.2E6.E$37.2A4.A 4.A.A4.A20.2E8.E.E4.E.E$37.A.A3.A5.A21.E4.E.E8.E.E4.2E$39.A14.A15.E.E 4.2E9.E$39.2A12.A.A.2A12.2E$46.3A3.A2.A.2A$53.2A22.E$76.E.E5.2E$75.E 2.E5.2E$54.2A20.2E$2A52.A$.2A52.3A11.2A$A56.A11.2A$60.A$60.3A$63.A$ 62.2A14.E$71.D6.3E$70.D.D.E6.E$63.2A6.2DE.E4.2E$63.A10.E.E$61.A.A11. 2E$57.A3.2A$56.A.A$55.A.A$55.2A9$54.2E$53.E.E$55.E$6.A$6.2A$5.A.A8$ 37.2A$38.2A$37.A! [[ THEME LifeHistory GRID WIDTH 600 HEIGHT 600 THUMBSIZE 2 THUMBLAUNCH X 23 Y 1 Z 4 ]]

We can repeat the same kind of analysis to add more splitters and synchronize their output gliders, creating the four synchronized gliders from one single input glider. Here's a sample completion of the project to make a 1G seed for the double wickstretcher:

x=96, y = 97, rule = LifeHistory 47.A$46.A.A$47.2A35.3D$86.D$85.D$82.2D$82.D2$80.D3.2D$79.D.D2.2D5.3D$ 28.2A48.D.D3.D.D6.D$27.A2.A46.D.D6.2D4.D$27.A.A33.3D10.D.D6.D.4D$28.A 36.D9.D.D10.2D$50.2A5.2A5.D9.D.D8.D$49.A2.A3.A.A14.D.D8.D.D$35.2A13.A .A3.A15.D.D8.D.D$35.2A14.A3.2A14.D.D8.D.D$70.D.D8.D.D$69.D.D8.D.D$22. 2A44.D.D8.D.D$21.A.A43.D.D8.D.D$21.2A43.D.D8.D.D$65.D.D8.D.D$64.D.D8. D.D3.3D$20.2A15.2A3.2A7.A11.D.D8.D.D6.D$19.A.A15.2A3.A.A4.3A10.D.D8.D .D6.D$18.A.A22.A4.A12.D.D8.D.D$19.A28.2A10.D.D8.D.D$59.D.D8.D.D$36.2A 20.D.D8.D.D$36.2A19.D.D8.D.D$57.2D8.D.D8.2A$13.2A51.D.D10.A$12.A.A50. D.D8.3A$12.2A15.2A34.2D9.A$29.A.A$31.A10.D$13.A17.2A8.D.D33.2A$12.A.A 21.3D3.2D32.A2.A$12.A.A23.D.2A35.A.A$13.A19.2A2.D2.2A29.2A5.A$34.A10. 2A24.A$34.A.A3.2A2.A.A22.A.A$4.2A29.2A2.A2.A2.A23.2A$4.2A33.A.A$.A38. A45.2A6.A$A.A7.A65.2A8.A.A4.A.A$A.A5.3A33.A26.A4.A.A8.A.A4.2A$.A5.A6. A28.A.A5.2A17.A.A4.2A9.A$7.2A4.A.A23.A3.A2.A3.A.A18.2A$12.A.A18.2A4.A 4.A.A4.A$12.2A19.A.A3.A5.A31.A$35.A14.A25.A.A5.2A$35.2A12.A.A.2A20.A 2.A5.2A$42.3A3.A2.A.2A21.2A$49.2A2$63.2A$27.2A8.2A11.2A11.2A$27.2A7.A 2.A10.A$31.A4.A2.A11.3A$30.A.A4.2A14.A$30.2A24.A$56.3A$59.A$36.A21.2A 14.A$35.A.A36.3A$34.A2.A32.A6.A$12.2A21.2A22.2A8.A.A4.2A$11.A.A16.2A 27.A10.A.A$12.A16.A2.A24.A.A11.2A$30.2A21.A3.2A$52.A.A$51.A.A$51.2A$ 12.2A28.A$11.A2.A26.A.A$11.A2.A5.2A18.A.A$12.2A5.A2.A17.2A$19.A2.A31. A$20.2A22.2A7.A.A$44.A9.A$42.A.A$42.2A5.2A$49.2A3$35.A$34.A.A$25.2A7. 2A$25.A.A20.2A$26.A20.A.A$48.A$3.3A$5.A$4.A! [[ THEME LifeHistory GRID WIDTH 600 HEIGHT 600 THUMBSIZE 2 THUMBLAUNCH X 19 Y 7 Z 4 ]]

This isn't a completely clean seed, since it leaves behind three blocks. This is important for some uses of the seed, e.g., in self-constructing patterns like the Speed Demonoid. Something has to be left behind that can be re-worked by a slow salvo to make the bait still lifes that assist in lighting the two wicks.

It's fairly straightforward to design a completely clean double-wickstretcher seed, if that is needed. If no modification of the base still lifes can be found that remove the blocks, they can be shot down by gliders split off from the initial trigger glider, and delayed appropriately -- a good follow-up exercise for the enterprrising reader.