+```python Collapsed="false"
+wcat(chunks(spb, 5))
+```
+
+```python Collapsed="false"
+cat(w[-1] for w in chunks(spb, 5))
+```
+
+```python Collapsed="false"
+locR = [i for i, c in enumerate(spb) if c == 'r']
+locD = [i for i, c in enumerate(spb) if c == 'd']
+locF = [i for i, c in enumerate(spb) if c == 'f']
+len(locR), len(locD), len(locF)
+```
+
+```python Collapsed="false"
+triples = []
+for r in locR:
+ for d in locD:
+ for f in locF:
+ if d > r:
+ if d - r == f - d:
+ triples += [(r, d, f, d - r)]
+triples
+```
+
+```python Collapsed="false"
+t = cat(c if c.isupper() else '.' for c in pbscap)
+col = 305 % 32
+tcs = chunks(spb, 32)
+stcs = [wcat([c[:col], c[col], c[col+1:]]) for c in tcs]
+print(lcat(stcs))
+```
+
+```python Collapsed="false"
+results = []
+for l in range(1, 40):
+ for i in range(l):
+ cs = chunks(spb, l, fillvalue=' ')
+ t = cat(c[i] for c in cs)
+ f = Ptrigrams(t)
+ results += [{'l': l, 'i': i, 't': t, 'f': f * l}]
+len(results)
+```
+
+```python Collapsed="false"
+list(sorted(results, key=lambda r: r['f']))[-4:]
+```
+
+```python Collapsed="false"
+rdfresults = [r for r in results if 'rdf' in r['t']]
+len(rdfresults)
+```
+
+```python Collapsed="false"
+rdfresults
+```
+