Life tag testing

For scripts to aid with computation or simulation in cellular automata.
Locked
User avatar
dvgrn
Moderator
Posts: 12053
Joined: May 17th, 2009, 11:00 pm
Location: Madison, WI
Contact:

Re: Life tag testing

Post by dvgrn »

rowett wrote: October 28th, 2019, 9:04 am RuleTable load tests...
I guess it probably makes sense to move back to this thread instead of piling more minutia into the Conway Group chat.

I've added a sample set of -shared rules to the Rule namespace -- straight out of Golly, so the test can just be these five files from the Patersons-Worms subfolder:

Code: Select all

x = 1, y = 1, rule = Worm-1040512
A!

Code: Select all

x = 1, y = 1, rule = Worm-1042015
A!

Code: Select all

x = 1, y = 1, rule = Worm-1042020
A!

Code: Select all

x = 1, y = 1, rule = Worm-1252121
A!

Code: Select all

x = 1, y = 1, rule = Worm-1525115
A!
That might not be the greatest test as it stands, since there's only an @ICONS section in the Worm-shared file, no colors... so we won't be able to see right away if the shared information is being used or not. But we can certainly put a @COLORS section into Rule:Worm-shared at some point -- I highly doubt anyone will complain. The default colors aren't all that nice anyway. The default gradient across 16 states ends up being too gradual; better to find a nice set of contrasting colors so states can be told apart.
User avatar
rowett
Moderator
Posts: 4597
Joined: January 31st, 2013, 2:34 am
Location: UK
Contact:

Re: Life tag testing

Post by rowett »

Build 447 is now available on the lazyslug server

Enhancements in this build:
  • Ctrl+F6 will now run Identify in fast mode
    • Active Cells, Mod, Temperature and Volatility are not calculated
    • performance is much faster especially for large patterns
This build is a Release Candidate.
User avatar
rowett
Moderator
Posts: 4597
Joined: January 31st, 2013, 2:34 am
Location: UK
Contact:

Re: Life tag testing

Post by rowett »

Build 448 is now available on the lazyslug server

Fixes in this build:
  • fix false positive for Mod on some patterns
  • fix rule lookup for too big patterns
This build is a Release Candidate.
User avatar
rowett
Moderator
Posts: 4597
Joined: January 31st, 2013, 2:34 am
Location: UK
Contact:

Re: Life tag testing

Post by rowett »

Build 449 is now available on the lazyslug server

Enhancements in this build:
  • experimental RuleTree support
    • supports @TREE and @COLORS sections from Wiki repository

Code: Select all

#C [[ AUTOFIT ]]
x = 131, y = 33, rule = Hutton32
MIMIM4IMI4MI4MI4MI4MI4MI4MI4MIMI4MIM5IM5IM5IM5IM5IM5IM5IM5IM5IM5IM5IM
IM3IM2IMIN$N2OKOK4OKOK4OKO5KO3KOKO5KO5KO5KO5KO5KO5KO5KO5KO5KO5K4OKO4K
OKO4KOKO4KOKO4KOKO4KOKO$MI4MIMI4MIMIM4IMI4M5IM5IM5IM5IM5IM5IM5IM5IM5I
M5IMIM3IM5IMI4MIMI4MIMIM4IMI4MIM3IJ$J4OKOK4OKOK4OK4OKO4KOKOK4OKOK4OKO
5KO3KOKO5KO5KO5KO5KO5KO5KO5KO5KO5KO5K4OKO4KOKO$M5IM5IM5IM5IM5IM5IM5IM
5IM5IM5IMIM3IM5IMI4MIMI4MIMIM4IMI4MI4MIMIM4IMI4MI4MIMI4MJ$N2OKO4KOKOK
4OKOK4OK4OKO4KOKOK4OK4OKO4KOKOK4OKOK4OKO5KO3KOKO5KO5KO5KO5KO5KO5KO5KO
5KO$M5IM5IM5IM5IM5IM5IMIM3IM5IMI4MIMI4MIMIM4IMI4MIM4IMIM4IMI4MI4MIMIM
4IMIM4IMI4M5IM4IJ$J4KO5KO5K4OKO4KOKOK4OK4OK4OK4OKO4KOKOK4OKOK4OKOK4OK
O5KO3KOKOK4OKO5KO3KOKO5KO5KO5KO2K$M5IM5IM5IM5IM5IM5IM5IM5IM5IMIM3IM5I
MI4MIMI4MIMI4MIMIMI2MIMIMI2MIMIMI2MIMIMI2MIM5IM5IM2IJ$J4KOK2OKOKOK2OK
OKOK4OK3O2KOKOK4OKOK4OKOK4OKOK4OK2O3KOKOK4OKOK4OKO5KO3KOKO5KO5KO5KO5K
O5KO5KO$5IMIM3IM5IMI4MIMI4MIMIM3I2MI4MIMI4MIMI4MIMI4MIMIM2I3MI4MIMI4M
IMI4MIMIM2I3M5IM5IM5IM5IM4IJ$N5KO5KO5KO5KO5KO5KO5KO5KO5KO5K3O2KOKOK4O
KOK4OKOK4OKOK4OK4OK4OKOK4OKOK4OKOK4OKOK3O$2MIMI4MIMI4MIMI4MI4MIMI4MIM
IM2I3M5IM5IM5IM5IM5IM5IM5IM5IM5IM5IM5IMIM3IM5IMI4MIMIN$NOKOK4OKOK2OKO
KOK2OKOKOK4OKOK4OKO5KO3KOKO5KO5KO5KO5KO5KO5KO5KO5KO5KO5KO5K3O2KOKOK4O
KO$5IM5IM5IM5IM5IM5IM5IM5IM5IMIM3IM5IMI4MIMIM3I2MI4MIMI4MIMI4MI4MIMI
4MIMI4MIMI4MI4MJ$N5K2OKOKOK2OKOKOKOK4OKOK4OKOK4OKOK4OK4OKOK4OKOK4OK2O
3KOKOK4OKO5KO3KOKO5KO5KO5KO5KO5KO5KOK$3M5IM5IM5IM5IM5IM5IM5IM5IM5IM5I
MIM3IM5IMI4MIMIM3I2MI4MIMI4MIMI4MIMI4MIMI4MI4M3IJ$JKOKOK4OKOK4OKOK4OK
OK4OK2O3KOKOK4OKOK4OKOK4OK2O3KOKOK4OKO5KO3KOKO5KO5KO5KO5KO5KO5KO5KO2K
$2IM5IM5IM5IM5IMIM3IM5IMI4MIMI4MIMIMIMI2MIMIMI2MI4MIMIM3I2MI4MIMI4MIM
I4MIMI4MIMIM2I3M5IM5IM2IJ$J2KO5KO5KO5KO5K2OKOKOK2OKOKOK2OKOKOK2OKOKOK
OK4OKOK4OKOK4OKOK4OKOK4OKOK4OKO5KO3KOKOK4OKO5KO3KOKO2K$MIM3IM5IMI4MIM
I4MIMIM4IMI4MI4MI4MI4MI4MI4MI4MI4M5IM5IM5IM5IM5IM5IM5IM5IM5IM2IJ$J4KO
5KO5KO5KO5KO5KO5KO5KO5KO5KO4KOKO4KOKO4KOKO4KOKO4KOKO4KOKO4KOK4OKO4KOK
OK4OKOK2O$3IMIM3IM5IMI4MIMI4MIMIM4IMI4M5IM5IM5IMIM3IM5IMI4MIMI4MIMIM
4IMI4M5IM5IM5IMIM3IM5IMIMN$JKO5KO5K4OKO4KOKOK4OKOK4OKO5KO3KOKOK4OKO5K
O3KOKO5KO5KO5KO5KO5KO5KO5KO5KO5KO5K$3IM5IM5IM5IM5IM5IM5IM5IM5IM5IMIM
3IM5IMI4MIMI4MIMIM4IMI4MI4MI4MI4MI4MI4MI4MI3MN$JKO4KOKO4KOKO4KOKO4KOK
O4KOKO4KOKO4KOK4OKO4KOKOK4OKOK4OKO5KO3KOKO5KO5KO5K4OKO4KOKOK4OKOK3O$
4IMIM3IM5IMI4MIMI4MIMIM4IMI4M5IM5IM5IMIM3IM5IMI4MIMI4MIMIM4IMI4M5IM5I
M5IMIM3IM5IMIN$JO5KO5KO5KO5KO5KO5KO5KO5KO5K4OK4OK4OK4OKOK4OKOK4OKOK4O
KOK4OKOK4OKOK4OKOK4OKO5KO$3MIMI4MIMI4MIMI4MIMIM4IMI4MIM4IMIM4IMIM4IMI
M4IM5IM5IM5IM5IM5IM5IM5IM5IM5IM5IMIM2IJ$NKOK4OKO5KO3KOKO5KO5KO5KO5KO
5KO5K4OK4OK4OK4OK4OKOK4OKOK4OKO5KO3KOKO5KO5KO5KO4K$4IM5IM5IM5IM5IM5IM
5IM5IM5IM5IMIM3IM5IMI4MIMI4MIMIM4IMIM4IMIM4IMIM4IMI4M5IM5IMJ$J4OK4OK
4OK4OKO4KOKO4KOKOK4OKOK4OKOK4OKOK4OKOK4OKO5KO3KOKO5KO5KO5KO5KO5KO5KO
5KO5KO$50.I4MIMI4MIMI4MIMI4MIMI4MIMI4MIMIM4IMIM4IMIM4IMIM4IM5IM4IJ!
User avatar
dvgrn
Moderator
Posts: 12053
Joined: May 17th, 2009, 11:00 pm
Location: Madison, WI
Contact:

Re: Life tag testing

Post by dvgrn »

Something odd seems to have happened to embedded viewers on the LifeWiki, in some very recent build, as per Entity Valkyrie's report. Seems like I looked at NW31 over the weekend, and the buttons weren't visible on the embedded viewer there, but now they are.
User avatar
rowett
Moderator
Posts: 4597
Joined: January 31st, 2013, 2:34 am
Location: UK
Contact:

Re: Life tag testing

Post by rowett »

Build 450 is now available on the lazyslug server

Fixes in this build:
  • fixed thumbnail mode being ignored
User avatar
rowett
Moderator
Posts: 4597
Joined: January 31st, 2013, 2:34 am
Location: UK
Contact:

Re: Life tag testing

Post by rowett »

dvgrn wrote: November 4th, 2019, 9:18 am Something odd seems to have happened to embedded viewers on the LifeWiki, in some very recent build, as per Entity Valkyrie's report. Seems like I looked at NW31 over the weekend, and the buttons weren't visible on the embedded viewer there, but now they are.
Fixed in build 450, thanks.
User avatar
rowett
Moderator
Posts: 4597
Joined: January 31st, 2013, 2:34 am
Location: UK
Contact:

Re: Life tag testing

Post by rowett »

Build 451 is now available on the lazyslug server

Enhancements in this build:
  • support colour ramp in @COLORS section
  • RuleTree definitions are cached when retrieved from repository
    • cache information is in Help->Info->Rule Cache
2 ant p544 oscillator

Code: Select all

x = 13, y = 11, rule = Langtons-Ant
2.2A3.2A$2A.A$2A.A.2A$2A2.2A.A$.A.3A.2A$.A5.A.A$.A8.A$A2.A.A2.A.2A$A2.
2A2.A.F.2A$.A2.AB4.3A$2.2A2.6A!
Single ant

Code: Select all

x = 1, y = 1, rule = Langtons-Ant
B!
User avatar
dvgrn
Moderator
Posts: 12053
Joined: May 17th, 2009, 11:00 pm
Location: Madison, WI
Contact:

Re: Life tag testing

Post by dvgrn »

rowett wrote: November 5th, 2019, 5:32 am2 ant p544 oscillator...
Single ant...
Well, looky that there! That's LifeViewer doing its magic with a LifeWiki rule tree.

Are @TREEs easier to support than @TABLEs, maybe to the point where we should think about doing a RuleTableToTree.py-type conversion and storing the result on LifeWiki? The thing is, I think @TABLEs tend to take up a lot less space in a lot of cases... (based on vague memories, plus the comparison between Hutton32 table and tree in the LifeWiki.)
User avatar
rowett
Moderator
Posts: 4597
Joined: January 31st, 2013, 2:34 am
Location: UK
Contact:

Re: Life tag testing

Post by rowett »

dvgrn wrote: November 5th, 2019, 10:09 am Are @TREEs easier to support than @TABLEs, maybe to the point where we should think about doing a RuleTableToTree.py-type conversion and storing the result on LifeWiki? The thing is, I think @TABLEs tend to take up a lot less space in a lot of cases... (based on vague memories, plus the comparison between Hutton32 table and tree in the LifeWiki.
Yes they're much easier to support (and already done apart from @ICONS support which I'll get to). Perhaps you can put both @TABLE and @TREE sections in each rule, like the Byl-Loop.rule or Langtons-Loop.rule in the Golly collection. LifeViewer will just pick the @TREE one for now.

Code: Select all

x = 4, y = 4, rule = Byl-Loop
.2B$BCAB$BCDB$.BE!

Code: Select all

x = 15, y = 10, rule = Langtons-Loops
.8B$BAG.AD.ADB$B.6B.B$BGB4.BAB$BAB4.BAB$B.B4.BAB$BGB4.BAB$BA6BA5B$B.G
A.GA.G5AB$.13B!
User avatar
rowett
Moderator
Posts: 4597
Joined: January 31st, 2013, 2:34 am
Location: UK
Contact:

Re: Life tag testing

Post by rowett »

Build 452 is now available on the lazyslug server

Fixes in this build:
  • fix reading comments in the @COLORS section

Code: Select all

x = 204, y = 273, rule = Sand-Margolus-emulated
BABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABAB
ABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABA
BABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABA$
204B$BABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABA
BABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABAB
ABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABA
BA$204B$BABABABABABABABABABABABABABABABABABABABABABABABABABABABABABAB
ABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABA
BABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABAB
ABABA$204B$BABABABABABABABABABABABABABABABABABABABABABABABABABABABABA
BABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABAB
ABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABA
BABABABA$204B$BABABABABABABABABABABABABABABABABABABABABABABABABABABAB
ABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABA
BABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABAB
ABABABABABA$204B$BABABABABABABABABABABABABABABABABABABABABABABABABABA
BABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABAB
ABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABA
BABABABABABABA$204B$BABABABABABABABABABABABABABABABABABABABABABABABAB
ABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABA
BABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABAB
ABABABABABABABABA$204B$BABABABABABABABABABABABABABABABABABABABABABABA
BABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABAB
ABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABA
BABABABABABABABABABA$204B$BABABABABABABABABABABABABABABABABABABABABAB
ABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABA
BABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABAB
ABABABABABABABABABABABA$204B$BABABABABABABABABABABABABABABABABABABABA
BABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABAB
ABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABA
BABABABABABABABABABABABABA$204B$BABABABABABABABABABABABABABABABABABAB
ABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABA
BABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABAB
ABABABABABABABABABABABABABABA$204B$BABABABABABABABABABABABABABABABABA
BABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABAB
ABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABA
BABABABABABABABABABABABABABABABA$204B$BABABABABABABABABABABABABABABAB
ABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABA
BABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABAB
ABABABABABABABABABABABABABABABABABA$94BH109B$BABABABABABABABABABABABA
BABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABAB
ABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABA
BABABABABABABABABABABABABABABABABABABABABA$204B$BABABABABABABABABABAB
ABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABA
BABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABAB
ABABABABABABABABABABABABABABABABABABABABABABA$204B$BABABABABABABABABA
BABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABAB
ABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABA
BABABABABABABABABABABABABABABABABABABABABABABABA$204B$BABABABABABABAB
ABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABA
BABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABAB
ABABABABABABABABABABABABABABABABABABABABABABABABABA$204B$BABABABABABA
BABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABAB
ABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABA
BABABABABABABABABABABABABABABABABABABABABABABABABABABA$204B$BABABABAB
ABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABA
BABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABAB
ABABABABABABABABABABABABABABABABABABABABABABABABABABABABA$204B$BABABA
BABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABAB
ABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABA
BABABABABABABABABABABABABABABABABABABABABABABABABABABABABABA$204B$BAB
ABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABA
BABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABAB
ABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABA$204B$
BABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABAB
ABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABA
BABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABA$
204B$BABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABA
BABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABAB
ABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABA
BA$204B$BABABABABABABABABABABABABABABABABABABABABABABABABABABABABABAB
ABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABA
BABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABAB
ABABA$204B$BABABABABABABABABABABABABABABABABABABABABABABABABABABABABA
BABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABAB
ABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABA
BABABABA$204B$BABABABABABABABABABABABABABABABABABABABABABABABABABABAB
ABABABABABABABABABABABABABABAFABABABABABABABABABABABABABABABABABABABA
BABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABAB
ABABABABABA$84BF119B$BABABABABABABABABABABABABABABABABABABABABABABABA
BABABABABABABABABABABABABABABABABABAFABABABABABABABABABABABABABABABAB
ABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABA
BABABABABABABABABA$84B2F118B$BABABABABABABABABABABABABABABABABABABABA
BABABABABABABABABABABABABABABABABABABABABABABEBABABABABABABABABABABAB
ABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABA
BABABABABABABABABABABABABA$85B2F117B$BABABABABABABABABABABABABABABABA
BABABABABABABABABABABABABABABABABABABABABABABABABABABABEBABABABABABAB
ABEBABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABA
BABABABABABABABABABABABABABABABABA$88B2F12B2F100B$BABABABABABABABABAB
ABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABA
BEFEFEFEBABAFEFABABABABABABABABABABABABABABABABABABABABABABABABABABAB
ABABABABABABABABABABABABABABABABABABABABABABABA$95B6F103B$BABABABABAB
ABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABA
BABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABAB
ABABABABABABABABABABABABABABABABABABABABABABABABABABABA$204B$BABABABA
BABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABAB
ABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABA
BABABABABABABABABABABABABABABABABABABABABABABABABABABABABA$204B$BABAB
ABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABA
BABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABAB
ABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABA$204B$BA
BABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABAB
ABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABA
BABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABA$204B
$BABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABA
BABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABAB
ABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABA$
204B$BABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABA
BABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABAB
ABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABA
BA$204B$BABABABABABABABABABABABABABABABABABABABABABABABABABABABABABAB
ABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABA
BABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABAB
ABABA$204B$BABABABABABABABABABABABABABABABABABABABABABABABABABABABABA
BABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABAB
ABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABA
BABABABA$204B$BABABABABABABABABABABABABABABABABABABABABABABABABABABAB
ABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABA
BABABABABABABABABABABABABABABAFABABABABABABABABABABABABABABABABABABAB
ABABABABABA$154BF49B$BABABABABABABABABABABABABABABABABABABABABABABABA
BABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABAB
ABABABABABABABABABABABABABABABABABABAFABABABABABABABABABABABABABABABA
BABABABABABABABABA$154BF49B$BABABABABABABABABABABABABABABABABABABABAB
ABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABA
BABABABABABABABABABABABABABABABABABABABABABAFABABABABABABABABABABABAB
ABABABABABABABABABABABABA$154BF49B$BABABABABABABABABABABABABABABABABA
BABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABAB
ABABABABABABABABABABABABABABABABABABABABABABABABABEBABABABABABABABABA
BABABABABABABABABABABABABABABABA$153BF50B$BABABABABABABABABABABABABAB
ABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABA
BABABABABABABABABABABABABABABABABABABABABABABABABABABABABEBABABABABAB
ABABABABABABABABABABABABABABABABABABABA$153BF50B$BABABABABABABABABABA
BABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABAB
ABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABEBABA
BABABABABABABABABABABABABABABABABABABABABABABA$153BF50B$BABABABABABAB
ABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABA
BABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABAB
AFABABABABABABABABABABABABABABABABABABABABABABABABABA$89BF62BF51B$BAB
ABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABA
BABABABABABABABABEBABABABABABABABABABABABABABABABABABABABABABABABABAB
ABABABABABAFABABABABABABABABABABABABABABABABABABABABABABABABABA$90BF
61BF51B$BABABABABABABABABABABABABABABABABABABABABABABABABABABABABABAB
ABABABABABABABABABABABABABABAFABABABABABABABABABABABABABABABABABABABA
BABABABABABABABABABABAFABABABABABABABABABABABABABABABABABABABABABABAB
ABABA$91BF60BF51B$BABABABABABABABABABABABABABABABABABABABABABABABABAB
ABABABABABABABABABABABABABABABABABABABABEBABABABABABABABABABABABABABA
BABABABABABABABABABABABABABABABEBABABABABABABABABABABABABABABABABABAB
ABABABABABABABA$92BF58BF52B$BABABABABABABABABABABABABABABABABABABABAB
ABABABABABABABABABABABABABABABABABABABABABABABABABABEBABABABABABABABA
BABABABABABABABABABABABABABABABABABABABAFABABABABABABABABABABABABABAB
ABABABABABABABABABABABABA$93BF55BF54B$BABABABABABABABABABABABABABABAB
ABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABEBABABA
BABABABABABABABABABABABABABABABABABABABABABABABABEBABABABABABABABABAB
ABABABABABABABABABABABABABABABABABA$94BF53BF55B$BABABABABABABABABABAB
ABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABA
BABABEBABABABABABABABABABABABABABABABABABABABABABABABABABEBABABABABAB
ABABABABABABABABABABABABABABABABABABABABABABA$96BF48B2F57B$BABABABABA
BABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABAB
ABABABABABABABABABEBABABABABABABABABABABABABABABABABABABABABABABAFABA
BABABABABABABABABABABABABABABABABABABABABABABABABABABABA$98BF45BF59B$
BABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABAB
ABABABABABABABABABABABABABABABEBABABABABABABABABABABABABABABABABABABA
BABABEBABABABABABABABABABABABABABABABABABABABABABABABABABABABABABA$
100BF40B2F61B$BABABABABABABABABABABABABABABABABABABABABABABABABABABAB
ABABABABABABABABABABABABABABABABABABABABABABAFEBABABABABABABABABABABA
BABABABABABABAFEFABABABABABABABABABABABABABABABABABABABABABABABABABAB
ABABABABABA$102B2F30B4F66B$BABABABABABABABABABABABABABABABABABABABABA
BABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABAFEFABAB
ABABABABABABABABABABEFEBABABABABABABABABABABABABABABABABABABABABABABA
BABABABABABABABABABABABA$107B2F14B8F73B$BABABABABABABABABABABABABABAB
ABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABA
BABABABABABEFEFEFEFEFEFEFABABABABABABABABABABABABABABABABABABABABABAB
ABABABABABABABABABABABABABABABABABABA$204B$BABABABABABABABABABABABABA
BABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABAB
ABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABA
BABABABABABABABABABABABABABABABABABABABA$204B$BABABABABABABABABABABAB
ABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABA
BABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABAB
ABABABABABABABABABABABABABABABABABABABABABA$204B$BABABABABABABABABABA
BABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABAB
ABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABA
BABABABABABABABABABABABABABABABABABABABABABABA$204B$BABABABABABABABAB
ABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABA
BABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABAB
ABABABABABABABABABABABABABABABABABABABABABABABABA$204B$BABABABABABABA
BABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABAB
ABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABA
BABABABABABABABABABABABABABABABABABABABABABABABABABA$204B$BABABABABAB
ABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABA
BABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABAB
ABABABABABABABABABABABABABABABABABABABABABABABABABABABA$204B$BABABABA
BABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABAB
ABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABA
BABABABABABABABABABABABABABABABABABABABABABABABABABABABABA$204B$BABAB
ABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABA
BABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABAB
ABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABA$204B$BA
BABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABAB
ABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABA
BABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABA$204B
$BABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABA
BABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABAB
ABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABA$
204B$BABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABA
BABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABAB
ABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABA
BA$204B$BABABABABABABABABABABABABABABABABABABABABABABABABABABABABABAB
ABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABA
BABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABAB
ABABA$204B$BABABABABABABABABABABABABABABABABABABABABABABABABABABABABA
BABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABAB
ABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABA
BABABABA$204B$BABABABABABABABABABABABABABABABABABABABABABABABABABABAB
ABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABA
BABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABAB
ABABABABABA$204B$BABABABABABABABABABABABABABABABABABABABABABABABABABA
BABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABAB
ABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABA
BABABABABABABA$204B$BABABABABABABABABABABABABABABABABABABABABABABABAB
ABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABA
BABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABAB
ABABABABABABABABA$204B$BABABABABABABABABABABABABABABABABABABABABABABA
BABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABAB
ABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABA
BABABABABABABABABABA$204B$BABABABABABABABABABABABABABABABABABABABABAB
ABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABA
BABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABAB
ABABABABABABABABABABABA$204B$BABABABABABABABABABABABABABABABABABABABA
BABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABAB
ABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABA
BABABABABABABABABABABABABA$204B$BABABABABABABABABABABABABABABABABABAB
ABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABA
BABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABAB
ABABABABABABABABABABABABABABA$204B$BABABABABABABABABABABABABABABABABA
BABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABAB
ABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABA
BABABABABABABABABABABABABABABABA$204B$BABABABABABABABABABABABABABABAB
ABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABA
BABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABAB
ABABABABABABABABABABABABABABABABABA$204B$BABABABABABABABABABABABABABA
BABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABAB
ABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABA
BABABABABABABABABABABABABABABABABABABA$204B$BABABABABABABABABABABABAB
ABABABABABABABABABABABABABABABEBABABABABABABABABABABABABABABABABABABA
BABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABAB
ABABABABABABABABABABABABABABABABABABABABA$55BF148B$BABABABABABABABABA
BABABABABABABABABABABABABABABABABABABEBABABABABABABABABABABABABABABAB
ABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABA
BABABABABABABABABABABABABABABABABABABABABABABABA$55BF148B$BABABABABAB
ABABABABABABABABABABABABABABABABABABABABABABEBABABABABABABABABABABABA
BABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABAB
ABABABABABABABABABABABABABABABABABABABABABABABABABABABA$55BF148B$BABA
BABABABABABABABABABABABABABABABABABABABABABABABABABEBABABABABABABABAB
ABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABA
BABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABA$55BF
148B$BABABABABABABABABABABABABABABABABABABABABABABABABABABABEBABABABA
BABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABAB
ABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABA
BA$55BF148B$BABABABABABABABABABABABABABABABABABABABABABABABABABABABAF
ABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABA
BABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABAB
ABABABABA$56BF147B$BABABABABABABABABABABABABABABABABABABABABABABABABA
BABABAFABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABAB
ABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABA
BABABABABABABABA$56BF147B$BABABABABABABABABABABABABABABABABABABABABAB
ABABABABABABABEBABABABABABABABABABABABABABABABABABABABABABABABABABABA
BABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABAB
ABABABABABABABABABABABA$57BF146B$BABABABABABABABABABABABABABABABABABA
BABABABABABABABABABABAFABABABABABABABABABABABABABABABABABABABABABABAB
ABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABA
BABABABABABABABABABABABABABABA$58BF145B$BABABABABABABABABABABABABABAB
ABABABABABABABABABABABABABABABEFABABABABABABABABABABABABABABABABABABA
BABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABAB
ABABABABABABABABABABABABABABABABABABA$60BF143B$BABABABABABABABABABABA
BABABABABABABABABABABABABABABABABABABABEBABABABABABABABABABABABABABAB
ABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABA
BABABABABABABABABABABABABABABABABABABABABABA$61BF142B$BABABABABABABAB
ABABABABABABABABABABABABABABABABABABABABABABABAFABABABABABABABABABABA
BABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABAB
ABABABABABABABABABABABABABABABABABABABABABABABABABA$62BF101BF39B$BABA
BABABABABABABABABABABABABABABABABABABABABABABABABABABABABABEBABABABAB
ABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABA
BABABABABABABABABABABEBABABABABABABABABABABABABABABABABABABABA$64BF
98BF40B$BABABABABABABABABABABABABABABABABABABABABABABABABABABABABABAB
ABABEBABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABA
BABABABABABABABABABABABABABABABABEBABABABABABABABABABABABABABABABABAB
ABABA$66BF96BF40B$BABABABABABABABABABABABABABABABABABABABABABABABABAB
ABABABABABABABAFABABABABABABABABABABABABABABABABABABABABABABABABABABA
BABABABABABABABABABABABABABABABABABABABABAFABABABABABABABABABABABABAB
ABABABABABABABA$67B2F93BF41B$BABABABABABABABABABABABABABABABABABABABA
BABABABABABABABABABABABABABAFABABABABABABABABABABABABABABABABABABABAB
ABABABABABABABABABABABABABABABABABABABABABABABABABABAFABABABABABABABA
BABABABABABABABABABABABABA$69BF91BF42B$BABABABABABABABABABABABABABABA
BABABABABABABABABABABABABABABABABABABABAFABABABABABABABABABABABABABAB
ABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABAFABABABA
BABABABABABABABABABABABABABABABABABA$71BF88BF43B$BABABABABABABABABABA
BABABABABABABABABABABABABABABABABABABABABABABABABABAFABABABABABABABAB
ABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABA
BEBABABABABABABABABABABABABABABABABABABABABABA$72BF85BF45B$BABABABABA
BABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABEBABAB
ABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABA
BABABABABEBABABABABABABABABABABABABABABABABABABABABABABA$74BF80B2F47B
$BABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABA
BABABABEBABABABABABABABABABABABABABABABABABABABABABABABABABABABABABAB
ABABABABABABABABAFABABABABABABABABABABABABABABABABABABABABABABABABA$
76BF76BF50B$BABABABABABABABABABABABABABABABABABABABABABABABABABABABAB
ABABABABABABABABABAFABABABABABABABABABABABABABABABABABABABABABABABABA
BABABABABABABABABABABABABAFABABABABABABABABABABABABABABABABABABABABAB
ABABABABA$77B2F70B3F52B$BABABABABABABABABABABABABABABABABABABABABABAB
ABABABABABABABABABABABABABABABABABEBABABABABABABABABABABABABABABABABA
BABABABABABABABABABABABABABABABAFEFABABABABABABABABABABABABABABABABAB
ABABABABABABABABABABA$80BF63B2F58B$BABABABABABABABABABABABABABABABABA
BABABABABABABABABABABABABABABABABABABABABABABABEFABABABABABABABABABAB
ABABABABABABABABABABABABABABABABABABABABEBABABABABABABABABABABABABABA
BABABABABABABABABABABABABABABABA$83B3F54B3F61B$BABABABABABABABABABABA
BABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABAFEBAB
ABABABABABABABABABABABABABABABABABABABABABABABABEBABABABABABABABABABA
BABABABABABABABABABABABABABABABABABABABABABA$88B4F44B3F65B$BABABABABA
BABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABAB
ABABABABABABAFEFEBABABABABABABABABABABABABABABABABABABAFEBABABABABABA
BABABABABABABABABABABABABABABABABABABABABABABABABABABABA$96B17F14B7F
70B$BABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABAB
ABABABABABABABABABABABABABABABABABABABABABABABABEFEFEFEFEFEFEFABABABA
BABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABAB
A$204B$BABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABA
BABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABAB
ABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABA
BABA$204B$BABABABABABABABABABABABABABABABABABABABABABABABABABABABABAB
ABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABA
BABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABAB
ABABABA$204B$BABABABABABABABABABABABABABABABABABABABABABABABABABABABA
BABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABAB
ABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABA
BABABABABA$204B$BABABABABABABABABABABABABABABABABABABABABABABABABABAB
ABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABA
BABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABAB
ABABABABABABA$204B$BABABABABABABABABABABABABABABABABABABABABABABABABA
BABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABAB
ABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABA
BABABABABABABABA$204B$BABABABABABABABABABABABABABABABABABABABABABABAB
ABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABA
BABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABAB
ABABABABABABABABABA$204B$BABABABABABABABABABABABABABABABABABABABABABA
BABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABAB
ABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABA
BABABABABABABABABABABA$204B$BABABABABABABABABABABABABABABABABABABABAB
ABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABA
BABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABAB
ABABABABABABABABABABABABA$204B$BABABABABABABABABABABABABABABABABABABA
BABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABAB
ABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABA
BABABABABABABABABABABABABABA$204B$BABABABABABABABABABABABABABABABABAB
ABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABA
BABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABAB
ABABABABABABABABABABABABABABABA$204B$BABABABABABABABABABABABABABABABA
BABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABAB
ABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABA
BABABABABABABABABABABABABABABABABA$204B$BABABABABABABABABABABABABABAB
ABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABA
BABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABAB
ABABABABABABABABABABABABABABABABABABA$204B$BABABABABABABABABABABABABA
BABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABAB
ABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABA
BABABABABABABABABABABABABABABABABABABABA$204B$BABABABABABABABABABABAB
ABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABA
BABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABAB
ABABABABABABABABABABABABABABABABABABABABABA$204B$BABABABABABABABABABA
BABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABAB
ABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABA
BABABABABABABABABABABABABABABABABABABABABABABA$204B$BABABABABABABABAB
ABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABA
BABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABAB
ABABABABABABABABABABABABABABABABABABABABABABABABA$204B$BABABABABABABA
BABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABAB
ABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABA
BABABABABABABABABABABABABABABABABABABABABABABABABABA$204B$BABABABABAB
ABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABA
BABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABAB
ABABABABABABABABABABABABABABABABABABABABABABABABABABABA$204B$BABABABA
BABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABAB
ABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABA
BABABABABABABABABABABABABABABABABABABABABABABABABABABABABA$204B$BABAB
ABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABA
BABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABAB
ABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABA$204B$BA
BABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABAB
ABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABA
BABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABA$204B
$BABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABA
BABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABAB
ABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABA$
204B$BABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABA
BABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABAB
ABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABA
BA$204B$BABABABABABABABABABABABABABABABABABABABABABABABABABABABABABAB
ABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABA
BABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABAB
ABABA$204B$BABABABABABABABABABABABABABABABABABABABABABABABABABABABABA
BABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABAB
ABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABA
BABABABA$204B$BABABABABABABABABABABABABABABABABABABABABABABABABABABAB
ABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABA
BABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABAB
ABABABABABA$204B$BABABABABABABABABABABABABABABABABABABABABABABABABABA
BABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABAB
ABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABA
BABABABABABABA$204B$BABABABABABABABABABABABABABABABABABABABABABABABAB
ABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABA
BABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABAB
ABABABABABABABABA$204B$BABABABABABABABABABABABABABABABABABABABABABABA
BABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABAB
ABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABA
BABABABABABABABABABA$204B$BABABABABABABABABABABABABABABABABABABABABAB
ABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABA
BABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABAB
ABABABABABABABABABABABA$204B$BABABABABABABABABABABABABABABABABABABABA
BABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABAB
ABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABA
BABABABABABABABABABABABABA$204B$BABABABABABABABABABABABABABABABABABAB
ABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABA
BABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABAB
ABABABABABABABABABABABABABABA!

Code: Select all

x = 53, y = 23, rule = LifeOnTheEdge:P250
12.2A15.CA17.A$28.BAC17.B$47.A.A$47.CABA$48.BC4$2.A10.A$.3A8.2C14.C3B
A$B2.B7.BC14.BA2B.C$.B2AC$3.A4$48.B$48.CA$12.2CA16.CA15.CA$11.C2.BA
13.AB.C15.B$11.C2.BA12.B2.A12.B2ABAC.AC$11.B2AC15.2B15.BAC$12.2B14.B.
B17.B!
WireWorld rule with @TREE inserted created by RuleTableToTree.py

Code: Select all

x = 131, y = 84, rule = WireWorld
31.C.C.C2.C2.C2.2C2.C.C3.C3.C.C.C.C3.3C.3C.2C2.C3.3C.3C.2C$31.C.C.2C.
C.C.C.C.C.C.C3.2C.2C.C.C.C4.C3.C2.C.C.C4.C2.C3.C.C$31.C.C.C.2C.3C.2C
3.C4.C.C.C.C.C.C4.C3.C2.2C2.C4.C2.2C2.2C$31.C.C.C2.C.C.C.C.C2.C4.C3.C
.C.C.C4.C3.C2.C3.C4.C2.C3.C.C$32.C2.C2.C.C.C.C.C2.C4.C3.C2.C2.3C2.C2.
3C.C3.3C.3C.3C.C.C5$2.11C3.92C3.3C.3C3.6C$.C11.C.C92.C.C3.C3.C.C6.C$C
6.3C.C.4C16.C5.59C7.2C2.3C.3C2.C.C6.C$C2.B2.A3.B2C2.C2.2C.C.C5.C2.A.C
.A.C59.C5.C2.C2.C3.C3.C.C6.C$C.C.A2.BCA.C.C2.2C2.3C.C3.C.C2.B.BAC3.3C
.7C.3C.12C.4C.2C.10C5.BC3.C.C.4C.C3.3C5.C7.C$C2.C9.2C4.C.C2.C2.C2.C2.
A2.A3.C3.C7.C3.C12.C4.C2.C10.C3.A2.A3.3C2.C2.C6.C3.3C2.2C2.C$C2.C.C2.
5C2.C.2C4.3C.C2.C.5C2.C5.C6.C.C.C5.A6.C.C2.C2.C4.2C.B2.C.C.C2.B2.C.C
2.4C8.C3.C2.C2.B.C$C3.4C8.C2.C3.C.4C.C2.C.C2.C3.C2.C7.3C5.C.B2.C3.6C.
C3.2C.A.C2.3C3.C.C4.2C.A.C8.C3.2CA2.A.C$C4.C.C.4C2.3C.C2.C.BC.C2.C2.C
.C.C3.A.C.C8.C6.C.C.C.C.C.C2.A3.3C.4C2.C.C.C2.C.C3.C.2C.B2.7C7.BC2.C$
C3.C3.C4.C2.C2.C3.A4.2C3.C.C.C3.B.B.C.C5.3C5.B.C.C.C.C3.C.B.C5.C3.C4.
B2.A.C3.C6.C8.5C2.B2.C$C2.C7.C2.2C2.C10.C.2C3.2C.C.C.A2.2CA.A2.C.2C4.
A.C.C.C.C3.B.C.C.C3.C2.3C3.A2.B.C2.3C5.3C.2C.2C5.C2.A.C$C.3C2.C2.C.C
4.3C2.AB2CA3.C2.C.C2.2CA2.C.C.C.B.C2.AC.C.C.C.A.C.C.C3.A.C2.7C2.C.C3.
2C2.C.C.C.C3.C3.C2.C3.C3.C2.C.C$C2.C2.C.C.C.C.C.CA.A.C5.B.3C.C.C.C.C.
B.C.C3.C.C.B.C2.3C2.B.A.C.C3.C.A.C.C3.B2.C2.C7.C.C4.C2.C.C.C.3C.C.A3.
C.C.C$C.C.C.C.C.C2.3C.AB2.B5.C2.A2.C.B.C3.C.C.C3.C.B2.C2.C.C.B.C.B.C.
C3.C.B.C4.C.A.C3.7C2.C3.C.C2.3C3.C3.BA.C.C.C.C$C.C.C.C.C.C.C.C2.A.C.A
5.2CB4.A3.C2.C.B.C3.A.A5.C4.A2.C.C.C3.C.C.C4.C.C.C12.C3.C.C3.C2.2C3.A
.A3C2.C.C$C.C.C.C.C.C.C5.C3.3CBA4.3C5.C2.A3.C.B2.C4.C9.C2.C3.B.C.C4.C
.C.C2.A10.3C3.3C2.C5.3C.C.C.C.C$.C2.C.C.C.C.C2.2C3.C5.A3.C2.C.C.B2.C
5.C.C.B2.2C.C10.C.C4.A2.C4.A.B.C.C.B19.C7.C4.C.C.C$3.C2.C.C.C.C.C2.C.
C.2C2.3C3.C2.2CA.C2.C2.C.C.C.A.C2.C9.C.C.C7.C4.B.A.C2.2C2.C2.B2CAB2C
4.3C7.C.C2.C2.C.C$2.C3.C2.C2.C2.C.C.C3.C2.C3.3C2.C.C4.4C3.C2.C.5C5.3C
3.4C3.C4.C.C.C.C.5CA7.C2.C4.C4.3C2.C3.C.C$2.C.C.C6.C.C.C.C2.4C.3C.C3.
C8.C7.C2.C3.C3.C.C.C6.C2.C4.A.C.C.3C2.C2.2CBACBA2.C4.C.A4.C2.C4.C.C$
3.3C2.2CB2.C.C.C.C.C.C.C6.C.4C7.2C6.2C4.C3.C3.C.C.3C4.C4.B2.C2.C2.3C
10.C5.B2.C.C3.C.C.C2.C$4.C2.C3.A2.C3.C2.C4.C3.2C3.C2.C8.C10.3C2.C2.5C
6.3C6.C3.C2.C3.2C6.C4.6C5.3C3.C$2.2C2.C.ABC5.C5.4C3.C4.C4.A2.B5.C10.C
.C.C3.C.C8.C.C.2C2.C2.C.2C.C.C2.C5.C5.C2.C.2C2.C.C4.C$.C3.C6.6C12.4C
4.3BC.A5.10C3.C.3C3.8C3.C2.C.C.C6.3C2.C4.C3.4C3.C.C.C6.C$.C2.3C2.C.C
4.B.6C13.C.C2.C37.3C2.C.C6.C.C.C2.4C3.C.A.2C2.C.C.7C$2.C2.C2.C.C6.A6.
C12.C.C41.C12.C3.C10.B.2C.2C3.C$3.2C.2C2.C5.3C6.12C3.41C14.3C18.C$2.C
7.C.2C3.C2.C94.C$2.C8.C2.6C.B20.73C$2.C7.3C4.C2.A20.C$3.6C2.C29.C$2.C
6.2C30.C$2.C8.106C.5C.2C$2.C38.C75.C5.C2.C$2.C107.CBA.C.C2.C2.3C.C$2.
C106.A3.3C2.3C2.C2.C$2.C107.B2C.C.2C.C.C2.C.C$2.C117.C.2C2.C$2.C2.3C.
C.C.3C3.3C2.C2.2C2.3C12.C2.C3.2C2.C.C2.C2.2C2.3C.3C5.2C12.C30.C$2.C3.
C2.C.C.C6.C2.C.C.C.C.C13.C.C.C3.C.C.C.C.C.C.C.C.C4.C6.C.C.2C8.C3.2C2.
C22.C$2.C3.C2.3C.2C5.C2.3C.2C2.2C12.3C.C3.2C2.3C.3C.2C2.2C3.C6.2C6.C
5.C7.C22.C$2.C3.C2.C.C.C6.C2.C.C.C3.C13.C.C.C3.C3.C.C.C.C.C.C.C4.C6.C
.C.2C8.C3.2C2.C22.C$2.C3.C2.C.C.3C4.C2.C.C.C3.3C11.C.C.3C.C3.C.C.C.C.
2C2.3C2.C6.2C11.3C29.C$2.C123.C$2.C3.A3.A3.A3.A3.A3.C3.A3.A3.A3.A3.C
3.C3.C3.C3.C3.C3.C3.C3.C3.C3.C3.C3.C3.C3.C3.C3.C3.C3.C3.C3.C$3.C.B.C.
B.C.B.C.B.C.B.C.C.C.B.C.B.C.B.C.B.C.C.C.C.C.C.C.C.C.C.C.C.C.C.C.C.C.C
.C.C.C.C.C.C.C.C.C.C.C.C.C.C.C.C.C.C.C.C.C.C.C.C$3.C.C.C.C.C.C.C.C.C.
C.C.C.C.C.C.C.C.C.C.C.C.C.C.C.C.C.C.C.C.C.C.C.C.C.C.C.C.C.C.C.C.C.C.C
.C.C.C.C.C.C.C.C.C.C.C.C.C.C.C.C.C.C$3.B.C.C.C.C.C.C.C.C.C.C.C.C.C.C.
C.C.C.C.C.C.C.C.C.C.C.C.C.C.C.C.C.C.C.C.C.C.C.C.C.C.C.C.C.C.C.C.C.C.C
.C.C.C.C.C.C.C.C.C.C.C.C$4.A3.C3.C3.C3.C3.C3.C3.C3.C3.C3.C3.C3.C3.C3.
C3.C3.C3.C3.C3.C3.C3.C3.C3.C3.C3.C3.C3.C3.C3.C3.C5$.C2.3C4.3C7.C$C.C
2.C6.C3.2C2.C.C$3C2.C6.C7.C.C$C.C2.C6.C3.2C2.C.C$C.C2.C6.C8.C3$6.C3.C
3.C3.C3.C7.C3.C3.C3.C$2.C3.C3.C3.C3.C3.C3.C3.C3.C3.C3.C3.C3.C3.C3.C3.
C3.C3.C3.C3.C3.C3.C3.C3.C3.C3.C3.C3.C3.C3.C3.C3.C3.C$6.C3.C3.C3.C3.C
7.C3.C3.C3.C3$.C2.3C4.3C7.C2.3C.C3.2C2.C3.3C6.2C2.2C2.3C2.C3.C2.3C.3C
.3C$C.C2.C6.C3.2C3.C2.C.C.C5.C.C3.C.C2.2C4.C3.C.C.C3.C.C3.C3.C.C3.C$
3C2.C6.C8.C2.3C.3C2.C2.3C.C.C7.C3.C2.C.C4.C4.3C.C.C3.C$C.C2.C6.C3.2C
3.C4.C2.C2.C4.C2.C.C2.2C4.C.C3.C.C3.C.C3.C.C.C.C3.C$C.C2.C6.C7.3C.3C
2.C2.3C2.C2.3C6.2C2.3C.3C2.C3.C2.3C.3C3.C3$6.C3.C3.C3.C3.C7.C3.C3.C3.
C7.C3.C3.C3.C3.C3.C3.C3.C3.C3.C3.C3.C3.C3.C3.C3.C3.C3.C3.C3.C$2.C3.C
3.C3.C3.C3.C3.C3.C3.C3.C3.C3.C3.C3.C3.C3.C3.C3.C3.C3.C3.C3.C3.C3.C3.C
3.C3.C3.C3.C3.C3.C3.C3.C$6.C3.C3.C3.C3.C7.C3.C3.C3.C7.C3.C3.C3.C3.C3.
C3.C3.C3.C3.C3.C3.C3.C3.C3.C3.C3.C3.C3.C3.C!
User avatar
rowett
Moderator
Posts: 4597
Joined: January 31st, 2013, 2:34 am
Location: UK
Contact:

Re: Life tag testing

Post by rowett »

Build 453 is now available on the lazyslug server

Enhancements in this build:
  • the location of the rule Repository can be overriden with the <meta> tag on the web page hosting the Viewer
    • <meta name="LifeViewer" content="/myrepository/rules/">
    • an entry beginning with a "/" is used to define the location
User avatar
dvgrn
Moderator
Posts: 12053
Joined: May 17th, 2009, 11:00 pm
Location: Madison, WI
Contact:

Re: Life tag testing

Post by dvgrn »

This is kind of an odd result for the "Identify" function:

Code: Select all

x = 73, y = 5, rule = B3/S23:T74,5+1
4bobo7bobo7bobo5bobobo7bobo7bobo7bobo$obo7bobo7bobo7bo9bobo7bobo7bobo
7bobo$6bobo7bobo7bobo3bo3bobo7bobo7bobo7bobo$2bobo7bobo7bobo9bo7bobo7b
obo7bobo7bo$o7bobo7bobo7bobobo5bobo7bobo7bobo7bobo!
The period of this according to oscar.py/.lua is 174762, and that appears to be correct for other reasons.

LifeViewer currently reports it as a speed (-1,0)c/10367 spaceship, which seems ... well ... somewhat delusional. Also oddly, this is just a truncated version of a larger p174762 oscillator at the bottom of this post -- but LifeViewer reports that as a (-1,0)c/23853 spaceship.

Is this due to a hash-collision false positive? These things definitely aren't spaceships, and especially not spaceships of those speeds.

Some more of these weird agar test cases can be found higher up in the same post linked above.

EDIT: Haven't tried synchronized viewers before:

Code: Select all

x = 1, y = 30, rule = B3/S23:T74,30+1
o$o$o$o$o$o$o$o$o$o$o$o$o$o$o$o$o$o$o$o$o$o$o$o$o$o$o$o$o$o!
#C [[ THUMBNAIL THUMBSIZE 2 AUTOSTART GPS 2 ]]

Code: Select all

x = 73, y = 30, rule = B3/S23:T74,30+1
obo7bobo7bobo7bobo3bo3bobo7bobo7bobo7bobo$6bobo7bobo7bobo9bo7bobo7bobo
7bobo$2bobo7bobo7bobo7bobobo5bobo7bobo7bobo7bo$o7bobo7bobo7bobo5bobobo
7bobo7bobo7bobo$4bobo7bobo7bobo7bo9bobo7bobo7bobo$obo7bobo7bobo7bobo3b
o3bobo7bobo7bobo7bobo$6bobo7bobo7bobo9bo7bobo7bobo7bobo$2bobo7bobo7bob
o7bobobo5bobo7bobo7bobo7bo$o7bobo7bobo7bobo5bobobo7bobo7bobo7bobo$4bob
o7bobo7bobo7bo9bobo7bobo7bobo$obo7bobo7bobo7bobo3bo3bobo7bobo7bobo7bob
o$6bobo7bobo7bobo9bo7bobo7bobo7bobo$2bobo7bobo7bobo7bobobo5bobo7bobo7b
obo7bo$o7bobo7bobo7bobo5bobobo7bobo7bobo7bobo$4bobo7bobo7bobo7bo9bobo
7bobo7bobo$obo7bobo7bobo7bobo3bo3bobo7bobo7bobo7bobo$6bobo7bobo7bobo9b
o7bobo7bobo7bobo$2bobo7bobo7bobo7bobobo5bobo7bobo7bobo7bo$o7bobo7bobo
7bobo5bobobo7bobo7bobo7bobo$4bobo7bobo7bobo7bo9bobo7bobo7bobo$obo7bobo
7bobo7bobo3bo3bobo7bobo7bobo7bobo$6bobo7bobo7bobo9bo7bobo7bobo7bobo$2b
obo7bobo7bobo7bobobo5bobo7bobo7bobo7bo$o7bobo7bobo7bobo5bobobo7bobo7bo
bo7bobo$4bobo7bobo7bobo7bo9bobo7bobo7bobo$obo7bobo7bobo7bobo3bo3bobo7b
obo7bobo7bobo$6bobo7bobo7bobo9bo7bobo7bobo7bobo$2bobo7bobo7bobo7bobobo
5bobo7bobo7bobo7bo$o7bobo7bobo7bobo5bobobo7bobo7bobo7bobo$4bobo7bobo7b
obo7bo9bobo7bobo7bobo!
#C [[ THUMBNAIL THUMBSIZE 2 AUTOSTART GPS 2 ]]
... I guess they don't quite stay synchronized, which is just as well: as far as I can tell, they have hugely different periods anyway (2044 and 174762) in spite of having the same size and apparent structure. Scorbie explained why on the other thread...
User avatar
rowett
Moderator
Posts: 4597
Joined: January 31st, 2013, 2:34 am
Location: UK
Contact:

Re: Life tag testing

Post by rowett »

dvgrn wrote: November 6th, 2019, 3:17 pm This is kind of an odd result for the "Identify" function...

LifeViewer currently reports it as a speed (-1,0)c/10367 spaceship, which seems ... well ... somewhat delusional.
It must be a hash collision. The population and bounding box are fairly consistent so that's probably not helping detect the false hit.
The reason it's reported as a spaceship is that the two matching generations do not have an identically positioned top left cell so Identify thinks it's moving.
dvgrn wrote: November 6th, 2019, 3:17 pm EDIT: Haven't tried synchronized viewers before
Me neither though I guess it could be helpful. There are already a couple of functions that work across multiple Viewers: Shift+R resets all Viewers on the page. Shift Z stops playback in all Viewers on the page.
Maybe I could have a "master" mode where the playback controls from the current Viewer trigger all Viewers...
User avatar
dvgrn
Moderator
Posts: 12053
Joined: May 17th, 2009, 11:00 pm
Location: Madison, WI
Contact:

Re: Life tag testing

Post by dvgrn »

Just happened to see an odd little problem here:

Code: Select all

x = 12, y = 36, rule = B3/S23
3b2ob2o$3b2obobo$8bo$3b3o2b2o$2bobobobo2bo$2bo2bobo2b2o$b2obobo$o2bobo
$2obo$3bo2bo$3bo3bo$4b3o2$2b3ob3o$bo2bobo2bo$b2o5b2o5$5bo$5bobo$5b2o
11$5b2o$4b2o$6bo!
#C [[ AUTOSTART STOP 66 ]]
Let the viewer run, then click to activate it and type two b's, and then another one. The step from 65 to 64 will actually be a double step from 65 to 63, so then the third backward step won't have any visible effect -- LifeViewer is just catching up with the already displayed T=63 pattern. Must be something slightly off in the checkpoint system?

Sometimes stepping forward also does a double step at the same point, but that doesn't seem as easy to reproduce.
User avatar
rowett
Moderator
Posts: 4597
Joined: January 31st, 2013, 2:34 am
Location: UK
Contact:

Re: Life tag testing

Post by rowett »

dvgrn wrote: November 13th, 2019, 6:42 am Just happened to see an odd little problem
Yes it's a bug - well spotted! I'll fix it shortly.
User avatar
rowett
Moderator
Posts: 4597
Joined: January 31st, 2013, 2:34 am
Location: UK
Contact:

Re: Life tag testing

Post by rowett »

Build 454 is now available on the lazyslug server

Enhancements in this build:
  • Identify can perform much faster since it's no longer limited by maximum STEP
  • RuleTree algo performance improvements
Fixes in this build:
  • fix snapshot and step back issue at snapshot interval (every 64 generations)
  • reduce chance of Identify false positives
User avatar
rowett
Moderator
Posts: 4597
Joined: January 31st, 2013, 2:34 am
Location: UK
Contact:

Re: Life tag testing

Post by rowett »

dvgrn wrote: November 6th, 2019, 3:17 pm This is kind of an odd result for the "Identify" function:

Code: Select all

x = 73, y = 5, rule = B3/S23:T74,5+1
4bobo7bobo7bobo5bobobo7bobo7bobo7bobo$obo7bobo7bobo7bo9bobo7bobo7bobo
7bobo$6bobo7bobo7bobo3bo3bobo7bobo7bobo7bobo$2bobo7bobo7bobo9bo7bobo7b
obo7bobo7bo$o7bobo7bobo7bobobo5bobo7bobo7bobo7bobo!
The period of this according to oscar.py/.lua is 174762, and that appears to be correct for other reasons.
This should now be fixed. Performance is now much improved when using "Fast" mode for Identify (Ctrl+F6).
User avatar
rowett
Moderator
Posts: 4597
Joined: January 31st, 2013, 2:34 am
Location: UK
Contact:

Re: Life tag testing

Post by rowett »

Build 455 is now available on the lazyslug server

Enhancements in this build:
  • improved tile usage in RuleTree algorithm

Code: Select all

x = 22, y = 19, rule = GoucherLoops
5.10B$4.BG.AN.AD.AGB$4.BA8B.B$.4B.B6.BAB$B4AGB6.BG3B$BA4B7.B.AG.B$B.B
11.3BAB$BIB13.BGB$BAB13.B.B$B.B13.BAB$BEB13.BGB$BAB13.B.B$B.3B11.BAB$
BE3AB7.4BGB$.3BAB6.BA.GA.B$3.B.B6.BG4B$3.BG8B.7B$3.BA.GA.DA.DA.GA.GA.
C$4.17B!
[[ TRACK 23/407 0 ZOOM 9 GRID ]]
Fixes in this build:
  • neighbourhood was sometimes wrong in Help->Info for RuleTree rules
  • fixed set cell for RuleTree rule
  • only make one request per rule to the Repository
User avatar
rowett
Moderator
Posts: 4597
Joined: January 31st, 2013, 2:34 am
Location: UK
Contact:

Re: Life tag testing

Post by rowett »

I've added a few rules to the Wiki (with @TREE sections added where needed) and things appear to be working so far. Most recently (by request) I added Flow6 which has made the relevant forum page have working Viewers.
User avatar
dvgrn
Moderator
Posts: 12053
Joined: May 17th, 2009, 11:00 pm
Location: Madison, WI
Contact:

Re: Life tag testing

Post by dvgrn »

rowett wrote: November 19th, 2019, 4:38 am I've added a few rules to the Wiki (with @TREE sections added where needed) and things appear to be working so far. Most recently (by request) I added Flow6 which has made the relevant forum page have working Viewers.
Great! I thought I'd try fixing the extendedlife/ExtendedLife/extendedlifefancy/extendedlifephpbb12345 mess this morning, but I'm not getting LifeViewer links to show up for "extendedlife" or "ExtendedLife" code blocks.

What are the rules as far as capitalization goes? I think Golly on Linux could theoretically handle separate rules for "extendedlife" and "ExtendedLife", but that would be hopeless on Windows. And of course I can't make a Wiki page called "Rule:extendedlife", because the system will automatically change it to "Rule:Extendedlife". I set it up as "Rule:ExtendedLife", but the actual postings mostly use "rule = extendedlife" in the pattern header, so I'm wondering if I should change the actual rule name in the text, to "@RULE extendedlife".

Any suggestions on best practices for this? And what obvious thing am I doing wrong, that prevents LifeViewer from activating on "rule = ExtendedLife" patterns?
User avatar
rowett
Moderator
Posts: 4597
Joined: January 31st, 2013, 2:34 am
Location: UK
Contact:

Re: Life tag testing

Post by rowett »

dvgrn wrote: November 19th, 2019, 11:54 am I thought I'd try fixing the extendedlife/ExtendedLife/extendedlifefancy/extendedlifephpbb12345 mess this morning, but I'm not getting LifeViewer links to show up for "extendedlife" or "ExtendedLife" code blocks.

What are the rules as far as capitalization goes?
It's down to the operating system running the web server. My local test build runs on Windows which has a case-insensitive operating system so case is ignored in requests to the Repository.

I suspect LifeWiki is running on Linux becuase it does care about the case.
dvgrn wrote: November 19th, 2019, 11:54 am ... what obvious thing am I doing wrong, that prevents LifeViewer from activating on "rule = ExtendedLife" patterns?
The showstopper was actually an HTML line break <br /> in the Rule:ExtendedLife page that broke LifeViewer's parser. I've just fixed the parser so it ignores HTML line breaks.

Also the @COLORS section was incorrect since each line was prefixed with "color =". This wouldn't have prevented the rule loading but would have defaulted the colors to a colour ramp. I've fixed the @COLORS section on the Wiki page.

Here's one working (note the rule name must match the Wiki page name):

Code: Select all

x = 37, y = 28, rule = ExtendedLife
2A$.A$.A.A$2.2A19$36.C$31.C4$34.B.D!
So the rule is that the "rule = <name>" in the pattern must match the Rule:<name> on the Wiki exactly. Unless... someone configures the LifeWiki web server to be case insensitive (but you may not want to do that for other reasons).
User avatar
rowett
Moderator
Posts: 4597
Joined: January 31st, 2013, 2:34 am
Location: UK
Contact:

Re: Life tag testing

Post by rowett »

Build 456 is now available on the lazyslug server

Enhancements in this build:
  • improved clear tile performance
Fixes in this build:
  • handle HTML line breaks in Wiki rules
User avatar
dvgrn
Moderator
Posts: 12053
Joined: May 17th, 2009, 11:00 pm
Location: Madison, WI
Contact:

Re: Life tag testing

Post by dvgrn »

rowett wrote: November 19th, 2019, 12:46 pmSo the rule is that the "rule = <name>" in the pattern must match the Rule:<name> on the Wiki exactly. Unless... someone configures the LifeWiki web server to be case insensitive (but you may not want to do that for other reasons).
Hmm, I thought that was going to be tricky, but it appears there's a fairly reasonable solution. It doesn't seem to be possible to create all-lowercase rule names on the LifeWiki. I mean, you can create them, but then the system automatically capitalizes the first character.

Somehow we get along fine with this, when it's an "RLE:pname" article. A request for RLE:pname will automatically go to RLE:Pname. It's looking like the same is true when patterns have "rule = extendedlife" and I end up creating "Rule:Extendedlife": a request for "Rule:extendedlife" automatically ends up at "Rule:Extendedlife", so everything turns out okay. (Right?)

Until a moment ago, just about the only pattern on the ExtendedLife thread that could be displayed in LifeViewer was this one.

Then I tried moving the Rule:ExtendedLife article to "Rule:extendedlife", and it ended up at "Rule:Extendedlife", but now "rule = extendedlife" pattern headers are getting a LifeViewer link. And I left a redirect from "Rule:ExtendedLife", and now "rule = ExtendedLife" patterns seem to be working also.

See any obvious problems with the first-letter-capitalized Rule: article, plus optional redirects when needed?
User avatar
rowett
Moderator
Posts: 4597
Joined: January 31st, 2013, 2:34 am
Location: UK
Contact:

Re: Life tag testing

Post by rowett »

dvgrn wrote: November 19th, 2019, 1:08 pm a request for "Rule:extendedlife" automatically ends up at "Rule:Extendedlife", so everything turns out okay. (Right?)
Yes
dvgrn wrote: November 19th, 2019, 1:08 pm Until a moment ago, just about the only pattern on the ExtendedLife thread that could be displayed in LifeViewer was this one.
Yes because that was the only pattern that actually had the correct capitalization for the rule name.
dvgrn wrote: November 19th, 2019, 1:08 pm Then I tried moving the Rule:ExtendedLife article to "Rule:extendedlife", and it ended up at "Rule:Extendedlife", but now "rule = extendedlife" pattern headers are getting a LifeViewer link. And I left a redirect from "Rule:ExtendedLife", and now "rule = ExtendedLife" patterns seem to be working also.
OK that works. If you use Chrome and open the console you can see the requests made. For the "ExtendedLife" page you'll see two requests:
XHR finished loading: GET "https://conwaylife.com/wiki/Rule:ExtendedLife".
XHR finished loading: GET "https://conwaylife.com/wiki/Rule:Extendedlife"
dvgrn wrote: November 19th, 2019, 1:08 pm See any obvious problems with the first-letter-capitalized Rule: article, plus optional redirects when needed?
No, that seems to work well.
Locked