| line | stmt | bran | cond | sub | pod | time | code | 
| 1 | 1 |  |  | 1 |  | 71158 | use 5.012; | 
|  | 1 |  |  |  |  | 4 |  | 
| 2 | 1 |  |  | 1 |  | 6 | use strict; | 
|  | 1 |  |  |  |  | 2 |  | 
|  | 1 |  |  |  |  | 22 |  | 
| 3 | 1 |  |  | 1 |  | 5 | use warnings; | 
|  | 1 |  |  |  |  | 3 |  | 
|  | 1 |  |  |  |  | 63 |  | 
| 4 |  |  |  |  |  |  |  | 
| 5 |  |  |  |  |  |  | # Artificial stupidity is easier to develop than artificial intelligence. | 
| 6 |  |  |  |  |  |  |  | 
| 7 |  |  |  |  |  |  | package Acme::ConspiracyTheory::Random; | 
| 8 |  |  |  |  |  |  |  | 
| 9 |  |  |  |  |  |  | our $AUTHORITY = 'cpan:TOBYINK'; | 
| 10 |  |  |  |  |  |  | our $VERSION   = '0.013'; | 
| 11 |  |  |  |  |  |  |  | 
| 12 | 1 |  |  | 1 |  | 521 | use Exporter::Shiny qw( theory bad_punctuation ); | 
|  | 1 |  |  |  |  | 4212 |  | 
|  | 1 |  |  |  |  | 7 |  | 
| 13 | 1 |  |  | 1 |  | 80 | use List::Util 1.54 (); | 
|  | 1 |  |  |  |  | 27 |  | 
|  | 1 |  |  |  |  | 632 |  | 
| 14 |  |  |  |  |  |  |  | 
| 15 |  |  |  |  |  |  | sub _RANDOM_ { | 
| 16 | 267040 |  |  | 267040 |  | 849639 | my $code = List::Util::sample( 1, @_ ); | 
| 17 | 267040 | 100 |  |  |  | 1000457 | ref($code) eq 'CODE' ? goto($code) : $code; | 
| 18 |  |  |  |  |  |  | } | 
| 19 |  |  |  |  |  |  |  | 
| 20 |  |  |  |  |  |  | sub _MERGE_ { | 
| 21 | 159993 |  |  | 159993 |  | 397707 | my ( $redstring, %new ) = @_; | 
| 22 | 159993 |  |  |  |  | 672321 | %$redstring = ( %$redstring, %new ); | 
| 23 |  |  |  |  |  |  | } | 
| 24 |  |  |  |  |  |  |  | 
| 25 |  |  |  |  |  |  | sub _UCFIRST_ ($) { # Some sentences start with a non-word character like a quote mark | 
| 26 | 153035 |  |  | 153035 |  | 559038 | ( my $str = shift ) | 
| 27 | 153035 |  |  |  |  | 443129 | =~ s/ (\w) / uc($1) /xe; | 
| 28 | 153035 |  |  |  |  | 673363 | $str; | 
| 29 |  |  |  |  |  |  | } | 
| 30 |  |  |  |  |  |  |  | 
| 31 |  |  |  |  |  |  | sub celebrity { | 
| 32 | 3884 |  | 50 | 3884 | 0 | 9320 | my $redstring = shift // {}; | 
| 33 | 3884 |  |  |  |  | 58442 | my $celeb = _RANDOM_( | 
| 34 |  |  |  |  |  |  | { female => 0, name => 'Bill Gates' }, | 
| 35 |  |  |  |  |  |  | { female => 0, name => 'Jeff Bezos' }, | 
| 36 |  |  |  |  |  |  | { female => 1, name => 'Hillary Clinton' }, | 
| 37 |  |  |  |  |  |  | { female => 0, name => 'Donald Trump' }, | 
| 38 |  |  |  |  |  |  | { female => 0, name => 'Barack Obama' }, | 
| 39 |  |  |  |  |  |  | { female => 0, name => 'Bernie Sanders' }, | 
| 40 |  |  |  |  |  |  | { female => 0, name => 'Joe Biden' }, | 
| 41 |  |  |  |  |  |  | { female => 0, name => 'Bill Clinton' }, | 
| 42 |  |  |  |  |  |  | { female => 1, name => 'Queen Elizabeth II' }, | 
| 43 |  |  |  |  |  |  | { female => 0, name => 'Johnny Depp' }, | 
| 44 |  |  |  |  |  |  | { female => 0, name => 'Q' }, | 
| 45 |  |  |  |  |  |  | { female => 1, name => 'Madonna' }, | 
| 46 |  |  |  |  |  |  | { female => 0, name => 'Sir Paul McCartney' }, | 
| 47 |  |  |  |  |  |  | { female => 1, name => 'Lady Gaga' }, | 
| 48 |  |  |  |  |  |  | { female => 1, name => 'Margaret Thatcher' }, | 
| 49 |  |  |  |  |  |  | { female => 0, name => 'George Soros' }, | 
| 50 |  |  |  |  |  |  | { female => 1, name => 'Beyonce' }, | 
| 51 |  |  |  |  |  |  | { female => 1, name => 'Whitney Houston' }, | 
| 52 |  |  |  |  |  |  | { female => 0, name => 'Joe Rogan' }, | 
| 53 |  |  |  |  |  |  | ); | 
| 54 | 3884 |  |  |  |  | 23015 | _MERGE_( $redstring, celebrity => $celeb ); | 
| 55 | 3884 |  |  |  |  | 9933 | return $celeb->{name}; | 
| 56 |  |  |  |  |  |  | } | 
| 57 |  |  |  |  |  |  |  | 
| 58 |  |  |  |  |  |  | sub shady_group { | 
| 59 | 31843 |  | 50 | 31843 | 0 | 72641 | my $redstring = shift // {}; | 
| 60 |  |  |  |  |  |  |  | 
| 61 | 31843 |  |  |  |  | 49306 | my $xx; | 
| 62 |  |  |  |  |  |  | PICK: { | 
| 63 | 31843 |  |  |  |  | 48285 | $xx = _RANDOM_( | 
| 64 |  |  |  |  |  |  | { plural => 1, name => 'the Knights Templar', shortname => 'the Templars' }, | 
| 65 |  |  |  |  |  |  | { plural => 1, name => 'the Illuminati' }, | 
| 66 |  |  |  |  |  |  | { plural => 1, name => 'the Freemasons', shortname => 'the Masons' }, | 
| 67 |  |  |  |  |  |  | { plural => 0, name => 'the Ordo Templi Orientis' }, | 
| 68 |  |  |  |  |  |  | { plural => 1, name => 'the Cabalists' }, | 
| 69 |  |  |  |  |  |  | { plural => 1, name => 'the Followers of the Temple Of The Vampire', shortname => 'the Vampires' }, | 
| 70 |  |  |  |  |  |  | { plural => 0, splural => 1, name => 'the Secret Order of the Knights of the Round Table', shortname => 'the Knights' }, | 
| 71 |  |  |  |  |  |  | { plural => 1, name => 'the Cardinals of the Catholic Church', shortname => 'the Cardinals' }, | 
| 72 |  |  |  |  |  |  | { plural => 0, name => 'the Church of Satan', shortname => 'the Church' }, | 
| 73 |  |  |  |  |  |  | { plural => 1, name => 'the Gnostics' }, | 
| 74 |  |  |  |  |  |  | { plural => 1, name => 'the Elders of Zion', shortname => 'the Elders' }, | 
| 75 |  |  |  |  |  |  | { plural => 1, name => 'the Jesuits' }, | 
| 76 |  |  |  |  |  |  | { plural => 0, name => 'the Babylonian Brotherhood', shortname => 'the Brotherhood' }, | 
| 77 |  |  |  |  |  |  | { plural => 0, name => 'the Hermetic Order of the Golden Dawn', shortname => 'the Order' }, | 
| 78 |  |  |  |  |  |  | { plural => 0, name => 'Opus Dei' }, | 
| 79 |  |  |  |  |  |  | { plural => 0, name => 'the Priory of Sion', shortname => 'the Priory' }, | 
| 80 |  |  |  |  |  |  | { plural => 0, name => 'GameStop' }, | 
| 81 |  |  |  |  |  |  | { plural => 0, splural => 1, name => 'the British Royal Family', shortname => 'the Royals' }, | 
| 82 |  |  |  |  |  |  | { plural => 0, name => 'NASA' }, | 
| 83 |  |  |  |  |  |  | { plural => 1, name => 'the Zionists' }, | 
| 84 |  |  |  |  |  |  | { plural => 0, name => 'the Trump administration' }, | 
| 85 |  |  |  |  |  |  | { plural => 0, name => 'the Biden administration' }, | 
| 86 |  |  |  |  |  |  | { plural => 0, splural => 1, name => 'the Republican party', shortname => 'the Republicans' }, | 
| 87 |  |  |  |  |  |  | { plural => 0, splural => 1, name => 'the Democrat party', shortname => 'the Democrats' }, | 
| 88 |  |  |  |  |  |  | { plural => 0, name => 'the New World Order' }, | 
| 89 |  |  |  |  |  |  | { plural => 1, name => 'the Communists' }, | 
| 90 |  |  |  |  |  |  | { plural => 0, name => 'the Shadow Government' }, | 
| 91 |  |  |  |  |  |  | { plural => 0, name => 'the global financial elite' }, | 
| 92 |  |  |  |  |  |  | { plural => 0, name => 'the global scientific elite' }, | 
| 93 |  |  |  |  |  |  | { plural => 0, name => 'Big Pharma' }, | 
| 94 |  |  |  |  |  |  | { plural => 0, name => 'Big Tobacco' }, | 
| 95 |  |  |  |  |  |  | { plural => 1, splural => 1, name => 'the lizard people', shortname => 'the lizardmen' }, | 
| 96 |  |  |  |  |  |  | { plural => 1, name => 'the grey aliens', shortname => 'the aliens' }, | 
| 97 |  |  |  |  |  |  | { plural => 1, name => 'the big Hollywood studios', shortname => 'Hollywood' }, | 
| 98 |  |  |  |  |  |  | { plural => 0, name => 'the music industry' }, | 
| 99 |  |  |  |  |  |  | { plural => 1, name => 'shape-shifting aliens', shortname => 'the shape-shifters' }, | 
| 100 |  |  |  |  |  |  | { plural => 1, name => 'Satanists' }, | 
| 101 |  |  |  |  |  |  | { plural => 1, name => 'pagans' }, | 
| 102 |  |  |  |  |  |  | { plural => 1, name => 'atheists' }, | 
| 103 |  |  |  |  |  |  | { plural => 1, name => 'people who like pineapple on pizza', shortname => 'the pineapple-lovers' }, | 
| 104 |  |  |  |  |  |  | { plural => 0, name => 'the deep state' }, | 
| 105 |  |  |  |  |  |  | { plural => 1, name => 'the descendents of Jesus', shortname => 'the descendents' }, | 
| 106 |  |  |  |  |  |  | { plural => 1, name => 'Qanon' }, | 
| 107 |  |  |  |  |  |  | { plural => 0, name => 'Microsoft' }, | 
| 108 |  |  |  |  |  |  | { plural => 0, name => 'Twitter' }, | 
| 109 |  |  |  |  |  |  | { plural => 0, name => 'Facebook' }, | 
| 110 |  |  |  |  |  |  | { plural => 0, name => 'Google' }, | 
| 111 |  |  |  |  |  |  | { plural => 0, name => 'the Wall Street establishment', shortname => 'Wall Street' }, | 
| 112 |  |  |  |  |  |  | { plural => 1, name => 'people at 10 Downing Street', shortname => "Downing Street" }, | 
| 113 |  |  |  |  |  |  | { plural => 0, name => 'Goldman Sachs' }, | 
| 114 |  |  |  |  |  |  | { plural => 0, name => 'Skull and Bones (Order 322)', shortname => 'the Order' }, | 
| 115 |  |  |  |  |  |  | { plural => 0, name => 'the London Stock Exchange', shortname => 'LSE' }, | 
| 116 |  |  |  |  |  |  | { plural => 0, name => 'the New York Stock Exchange', shortname => 'NYSE' }, | 
| 117 |  |  |  |  |  |  | { plural => 1, name => 'feminists' }, | 
| 118 |  |  |  |  |  |  | { plural => 1, name => 'Socialists' }, | 
| 119 |  |  |  |  |  |  | sub { | 
| 120 | 599 |  |  | 599 |  | 2767 | my $planet = _RANDOM_( | 
| 121 |  |  |  |  |  |  | ['Nibiru', 'the Nibiruans'], | 
| 122 |  |  |  |  |  |  | ['Venus', 'the Venutians'], | 
| 123 |  |  |  |  |  |  | ['Mars', 'the Martians'], | 
| 124 |  |  |  |  |  |  | ['Pluto', 'the Plutonians'], | 
| 125 |  |  |  |  |  |  | ['the moon', 'the moonlings'], | 
| 126 |  |  |  |  |  |  | ['the Counter-Earth', 'the anti-Earthlings'], | 
| 127 |  |  |  |  |  |  | ); | 
| 128 | 599 |  |  |  |  | 3453 | { plural => 1, name => "aliens from ".$planet->[0], shortname => $planet->[1] }; | 
| 129 |  |  |  |  |  |  | }, | 
| 130 | 32041 |  |  |  |  | 1187416 | ); | 
| 131 |  |  |  |  |  |  |  | 
| 132 | 1 |  |  | 1 |  | 8 | no warnings; | 
|  | 1 |  |  |  |  | 2 |  | 
|  | 1 |  |  |  |  | 12429 |  | 
| 133 |  |  |  |  |  |  | redo PICK | 
| 134 |  |  |  |  |  |  | if ( $redstring->{protagonists} and $redstring->{protagonists}{name} eq $xx->{name} ) | 
| 135 | 32041 | 100 | 100 |  |  | 560038 | || ( $redstring->{antagonists}  and $redstring->{antagonists}{name}  eq $xx->{name} ); | 
|  |  |  | 100 |  |  |  |  | 
|  |  |  | 100 |  |  |  |  | 
| 136 |  |  |  |  |  |  | }; | 
| 137 |  |  |  |  |  |  |  | 
| 138 | 31843 |  |  |  |  | 86599 | _MERGE_( $redstring, shady_group => $xx ); | 
| 139 | 31843 |  |  |  |  | 82616 | return $xx->{name}; | 
| 140 |  |  |  |  |  |  | } | 
| 141 |  |  |  |  |  |  |  | 
| 142 |  |  |  |  |  |  | sub real_animal { | 
| 143 | 1531 |  | 50 | 1531 | 0 | 4280 | my $redstring = shift // {}; | 
| 144 |  |  |  |  |  |  |  | 
| 145 | 1531 |  |  |  |  | 3639 | my $animal = _RANDOM_( | 
| 146 |  |  |  |  |  |  | 'cat', | 
| 147 |  |  |  |  |  |  | 'dog', | 
| 148 |  |  |  |  |  |  | 'horse', | 
| 149 |  |  |  |  |  |  | 'penguin', | 
| 150 |  |  |  |  |  |  | 'platypus', | 
| 151 |  |  |  |  |  |  | 'toucan', | 
| 152 |  |  |  |  |  |  | 'whale', | 
| 153 |  |  |  |  |  |  | 'zebra', | 
| 154 |  |  |  |  |  |  | 'frog', | 
| 155 |  |  |  |  |  |  | 'fish', | 
| 156 |  |  |  |  |  |  | ); | 
| 157 |  |  |  |  |  |  |  | 
| 158 | 1531 |  |  |  |  | 4514 | _MERGE_( $redstring, real_animal => $animal ); | 
| 159 | 1531 |  |  |  |  | 3384 | return $animal; | 
| 160 |  |  |  |  |  |  | } | 
| 161 |  |  |  |  |  |  |  | 
| 162 |  |  |  |  |  |  | sub fake_animal { | 
| 163 | 253 |  | 50 | 253 | 0 | 727 | my $redstring = shift // {}; | 
| 164 |  |  |  |  |  |  |  | 
| 165 | 253 |  |  |  |  | 642 | my $animal = _RANDOM_( | 
| 166 |  |  |  |  |  |  | 'unicorn', | 
| 167 |  |  |  |  |  |  | 'bigfoot', | 
| 168 |  |  |  |  |  |  | 'mermaid', | 
| 169 |  |  |  |  |  |  | 'werewolf', | 
| 170 |  |  |  |  |  |  | 'dragon', | 
| 171 |  |  |  |  |  |  | 'wyvern', | 
| 172 |  |  |  |  |  |  | 'yeti', | 
| 173 |  |  |  |  |  |  | 'Loch Ness monster', | 
| 174 |  |  |  |  |  |  | ); | 
| 175 |  |  |  |  |  |  |  | 
| 176 | 253 |  |  |  |  | 844 | _MERGE_( $redstring, fake_animal => $animal ); | 
| 177 | 253 |  |  |  |  | 646 | return $animal; | 
| 178 |  |  |  |  |  |  | } | 
| 179 |  |  |  |  |  |  |  | 
| 180 |  |  |  |  |  |  | sub objects { | 
| 181 | 486 |  | 50 | 486 | 0 | 1487 | my $redstring = shift // {}; | 
| 182 |  |  |  |  |  |  |  | 
| 183 | 486 |  |  |  |  | 1148 | my $objects = _RANDOM_( | 
| 184 |  |  |  |  |  |  | 'cars', | 
| 185 |  |  |  |  |  |  | 'TVs', | 
| 186 |  |  |  |  |  |  | 'smartphones', | 
| 187 |  |  |  |  |  |  | 'microwave ovens', | 
| 188 |  |  |  |  |  |  | 'trees', | 
| 189 |  |  |  |  |  |  | 'clothes', | 
| 190 |  |  |  |  |  |  | ); | 
| 191 |  |  |  |  |  |  |  | 
| 192 | 486 |  |  |  |  | 1361 | _MERGE_( $redstring, objects => $objects ); | 
| 193 | 486 |  |  |  |  | 1299 | return $objects; | 
| 194 |  |  |  |  |  |  | } | 
| 195 |  |  |  |  |  |  |  | 
| 196 |  |  |  |  |  |  | sub invention { | 
| 197 | 273 |  | 50 | 273 | 0 | 931 | my $redstring = shift // {}; | 
| 198 |  |  |  |  |  |  |  | 
| 199 | 273 |  |  |  |  | 1336 | my $invention = _RANDOM_( | 
| 200 |  |  |  |  |  |  | ['the internet', 0], | 
| 201 |  |  |  |  |  |  | ['cryptocurrencies', 1], | 
| 202 |  |  |  |  |  |  | ['smartphones', 1], | 
| 203 |  |  |  |  |  |  | ['bitcoin', 0], | 
| 204 |  |  |  |  |  |  | ); | 
| 205 |  |  |  |  |  |  |  | 
| 206 | 273 |  |  |  |  | 1306 | _MERGE_( $redstring, invention => $invention->[0], | 
| 207 |  |  |  |  |  |  | invention_plural => $invention->[1], ); | 
| 208 | 273 |  |  |  |  | 897 | return $invention->[0]; | 
| 209 |  |  |  |  |  |  | } | 
| 210 |  |  |  |  |  |  |  | 
| 211 |  |  |  |  |  |  | sub shady_project { | 
| 212 | 1543 |  | 50 | 1543 | 0 | 4265 | my $redstring = shift // {}; | 
| 213 |  |  |  |  |  |  |  | 
| 214 | 1543 |  |  |  |  | 3726 | my $x = _RANDOM_( | 
| 215 |  |  |  |  |  |  | 'Project Blue Beam', | 
| 216 |  |  |  |  |  |  | 'The Plan', | 
| 217 |  |  |  |  |  |  | 'the Global Warming Hoax', | 
| 218 |  |  |  |  |  |  | 'the New Chronology', | 
| 219 |  |  |  |  |  |  | 'the Great Replacement', | 
| 220 |  |  |  |  |  |  | 'the LGBT Agenda', | 
| 221 |  |  |  |  |  |  | 'the Kalergi Plan', | 
| 222 |  |  |  |  |  |  | 'Eurabia', | 
| 223 |  |  |  |  |  |  | 'the moon-landing hoax', | 
| 224 |  |  |  |  |  |  | ); | 
| 225 |  |  |  |  |  |  |  | 
| 226 | 1543 |  |  |  |  | 4735 | _MERGE_( $redstring, shady_project => $x ); | 
| 227 | 1543 |  |  |  |  | 3541 | return $x; | 
| 228 |  |  |  |  |  |  | } | 
| 229 |  |  |  |  |  |  |  | 
| 230 |  |  |  |  |  |  | sub authority { | 
| 231 | 383 |  | 50 | 383 | 0 | 1272 | my $redstring = shift // {}; | 
| 232 |  |  |  |  |  |  |  | 
| 233 | 383 |  |  |  |  | 1171 | my $x = _RANDOM_( | 
| 234 |  |  |  |  |  |  | 'the Supreme Court', | 
| 235 |  |  |  |  |  |  | 'the United Nations', | 
| 236 |  |  |  |  |  |  | 'the FBI', | 
| 237 |  |  |  |  |  |  | 'the CIA', | 
| 238 |  |  |  |  |  |  | 'NATO', | 
| 239 |  |  |  |  |  |  | ); | 
| 240 |  |  |  |  |  |  |  | 
| 241 | 383 |  |  |  |  | 1267 | _MERGE_( $redstring, authority => $x ); | 
| 242 | 383 |  |  |  |  | 1044 | return $x; | 
| 243 |  |  |  |  |  |  | } | 
| 244 |  |  |  |  |  |  |  | 
| 245 |  |  |  |  |  |  | sub dark_lord { | 
| 246 | 1670 |  | 50 | 1670 | 0 | 4092 | my $redstring = shift // {}; | 
| 247 |  |  |  |  |  |  |  | 
| 248 | 1670 |  |  |  |  | 4042 | my $x = _RANDOM_( | 
| 249 |  |  |  |  |  |  | 'the dark lord', | 
| 250 |  |  |  |  |  |  | 'Beelzebub', | 
| 251 |  |  |  |  |  |  | 'Lord Vader', | 
| 252 |  |  |  |  |  |  | 'Lord Satan', | 
| 253 |  |  |  |  |  |  | 'Thanos', | 
| 254 |  |  |  |  |  |  | 'the devil', | 
| 255 |  |  |  |  |  |  | 'the evil one', | 
| 256 |  |  |  |  |  |  | 'the almighty', | 
| 257 |  |  |  |  |  |  | ); | 
| 258 |  |  |  |  |  |  |  | 
| 259 | 1670 |  |  |  |  | 5048 | _MERGE_( $redstring, dark_lord => $x ); | 
| 260 | 1670 |  |  |  |  | 4574 | return $x; | 
| 261 |  |  |  |  |  |  | } | 
| 262 |  |  |  |  |  |  |  | 
| 263 |  |  |  |  |  |  | sub disease { | 
| 264 | 494 |  | 50 | 494 | 0 | 1571 | my $redstring = shift // {}; | 
| 265 |  |  |  |  |  |  |  | 
| 266 | 494 |  |  |  |  | 1483 | my $disease = _RANDOM_( | 
| 267 |  |  |  |  |  |  | 'cancer', | 
| 268 |  |  |  |  |  |  | 'COVID-19', | 
| 269 |  |  |  |  |  |  | 'HIV', | 
| 270 |  |  |  |  |  |  | 'the common cold', | 
| 271 |  |  |  |  |  |  | 'diabetes', | 
| 272 |  |  |  |  |  |  | 'obesity', | 
| 273 |  |  |  |  |  |  | 'autism', | 
| 274 |  |  |  |  |  |  | 'Ebola', | 
| 275 |  |  |  |  |  |  | ); | 
| 276 |  |  |  |  |  |  |  | 
| 277 | 494 |  |  |  |  | 1685 | _MERGE_( $redstring, disease => $disease ); | 
| 278 | 494 |  |  |  |  | 1477 | return $disease; | 
| 279 |  |  |  |  |  |  | } | 
| 280 |  |  |  |  |  |  |  | 
| 281 |  |  |  |  |  |  | sub disease_cause { | 
| 282 | 253 |  | 50 | 253 | 0 | 904 | my $redstring = shift // {}; | 
| 283 |  |  |  |  |  |  |  | 
| 284 |  |  |  |  |  |  | my $cause = _RANDOM_( | 
| 285 |  |  |  |  |  |  | sub { | 
| 286 | 39 |  |  | 39 |  | 127 | my $food = food( $redstring ); | 
| 287 | 39 | 100 |  |  |  | 239 | ( $food =~ /wine/ ) ? "drinking $food" : "eating $food"; | 
| 288 |  |  |  |  |  |  | }, | 
| 289 |  |  |  |  |  |  | sub { | 
| 290 | 33 |  |  | 33 |  | 109 | chemicals( $redstring ); | 
| 291 |  |  |  |  |  |  | }, | 
| 292 | 253 |  |  |  |  | 1786 | 'non-vegan food', | 
| 293 |  |  |  |  |  |  | 'vegan food', | 
| 294 |  |  |  |  |  |  | 'socialism', | 
| 295 |  |  |  |  |  |  | 'electromagnetic radiation (WiFi!)', | 
| 296 |  |  |  |  |  |  | 'radon gas', | 
| 297 |  |  |  |  |  |  | ); | 
| 298 |  |  |  |  |  |  |  | 
| 299 | 253 |  |  |  |  | 1754 | _MERGE_( $redstring, disease_cause => $cause ); | 
| 300 | 253 |  |  |  |  | 681 | return $cause; | 
| 301 |  |  |  |  |  |  | } | 
| 302 |  |  |  |  |  |  |  | 
| 303 |  |  |  |  |  |  | sub chemicals { | 
| 304 | 1006 |  | 50 | 1006 | 0 | 2780 | my $redstring = shift // {}; | 
| 305 |  |  |  |  |  |  |  | 
| 306 | 1006 |  |  |  |  | 2773 | my $chemicals = _RANDOM_( | 
| 307 |  |  |  |  |  |  | 'oestrogen', | 
| 308 |  |  |  |  |  |  | 'testosterone', | 
| 309 |  |  |  |  |  |  | 'acid', | 
| 310 |  |  |  |  |  |  | 'birth-control', | 
| 311 |  |  |  |  |  |  | 'fertilizer', | 
| 312 |  |  |  |  |  |  | 'Diet Coke', | 
| 313 |  |  |  |  |  |  | 'heavy hydrogen', | 
| 314 |  |  |  |  |  |  | '5G', | 
| 315 |  |  |  |  |  |  | 'antimatter', | 
| 316 |  |  |  |  |  |  | 'dark matter', | 
| 317 |  |  |  |  |  |  | ); | 
| 318 |  |  |  |  |  |  |  | 
| 319 | 1006 |  |  |  |  | 3255 | _MERGE_( $redstring, chemicals => $chemicals ); | 
| 320 | 1006 |  |  |  |  | 2332 | return $chemicals; | 
| 321 |  |  |  |  |  |  | } | 
| 322 |  |  |  |  |  |  |  | 
| 323 |  |  |  |  |  |  | sub food { | 
| 324 | 279 |  | 50 | 279 | 0 | 854 | my $redstring = shift // {}; | 
| 325 |  |  |  |  |  |  |  | 
| 326 | 279 |  |  |  |  | 601 | my $food = _RANDOM_( | 
| 327 |  |  |  |  |  |  | 'apples', | 
| 328 |  |  |  |  |  |  | 'Big Macs', | 
| 329 |  |  |  |  |  |  | 'KFC family buckets', | 
| 330 |  |  |  |  |  |  | 'most wines', | 
| 331 |  |  |  |  |  |  | 'Kraft instant mac and cheese boxes', | 
| 332 |  |  |  |  |  |  | 'bananas', | 
| 333 |  |  |  |  |  |  | ); | 
| 334 |  |  |  |  |  |  |  | 
| 335 | 279 |  |  |  |  | 799 | _MERGE_( $redstring, food => $food ); | 
| 336 | 279 |  |  |  |  | 737 | return $food; | 
| 337 |  |  |  |  |  |  | } | 
| 338 |  |  |  |  |  |  |  | 
| 339 |  |  |  |  |  |  | sub attribute { | 
| 340 | 252 |  | 50 | 252 | 0 | 817 | my $redstring = shift // {}; | 
| 341 |  |  |  |  |  |  |  | 
| 342 | 252 |  |  |  |  | 817 | my $attr = _RANDOM_( | 
| 343 |  |  |  |  |  |  | 'gay', | 
| 344 |  |  |  |  |  |  | 'insane', | 
| 345 |  |  |  |  |  |  | 'infertile', | 
| 346 |  |  |  |  |  |  | 'immobile', | 
| 347 |  |  |  |  |  |  | 'horny', | 
| 348 |  |  |  |  |  |  | 'female', | 
| 349 |  |  |  |  |  |  | 'fat', | 
| 350 |  |  |  |  |  |  | 'fluorescent', | 
| 351 |  |  |  |  |  |  | ); | 
| 352 |  |  |  |  |  |  |  | 
| 353 | 252 |  |  |  |  | 767 | _MERGE_( $redstring, attribute => $attr ); | 
| 354 | 252 |  |  |  |  | 636 | return $attr; | 
| 355 |  |  |  |  |  |  | } | 
| 356 |  |  |  |  |  |  |  | 
| 357 |  |  |  |  |  |  | sub artifact { | 
| 358 | 265 |  | 50 | 265 | 0 | 809 | my $redstring = shift // {}; | 
| 359 |  |  |  |  |  |  |  | 
| 360 | 265 |  |  |  |  | 800 | my $artifact = _RANDOM_( | 
| 361 |  |  |  |  |  |  | 'the holy grail', | 
| 362 |  |  |  |  |  |  | 'the golden fleece', | 
| 363 |  |  |  |  |  |  | 'Excalibur', | 
| 364 |  |  |  |  |  |  | 'the ark of the covenant', | 
| 365 |  |  |  |  |  |  | "Jesus's foreskin", | 
| 366 |  |  |  |  |  |  | 'the Holy Prepuce', | 
| 367 |  |  |  |  |  |  | 'the Book of the Dead', | 
| 368 |  |  |  |  |  |  | 'the Necronomicon', | 
| 369 |  |  |  |  |  |  | "the Philosopher's Stone", | 
| 370 |  |  |  |  |  |  | "a fragment of the true cross", | 
| 371 |  |  |  |  |  |  | "the seal of Solomon", | 
| 372 |  |  |  |  |  |  | ); | 
| 373 |  |  |  |  |  |  |  | 
| 374 | 265 |  |  |  |  | 964 | _MERGE_( $redstring, artifact => $artifact ); | 
| 375 | 265 |  |  |  |  | 653 | return $artifact; | 
| 376 |  |  |  |  |  |  | } | 
| 377 |  |  |  |  |  |  |  | 
| 378 |  |  |  |  |  |  | sub bad_place { | 
| 379 | 855 |  | 50 | 855 | 0 | 2504 | my $redstring = shift // {}; | 
| 380 |  |  |  |  |  |  |  | 
| 381 |  |  |  |  |  |  | my $bad_place = _RANDOM_( | 
| 382 |  |  |  |  |  |  | 'a secret Antarctic base', | 
| 383 |  |  |  |  |  |  | 'Area 51', | 
| 384 |  |  |  |  |  |  | 'Langley, Virginia', | 
| 385 |  |  |  |  |  |  | 'Guantanamo Bay Detention Camp', | 
| 386 |  |  |  |  |  |  | 'Windsor Castle', | 
| 387 |  |  |  |  |  |  | 'The Pentagon', | 
| 388 |  |  |  |  |  |  | 'Denver International Airport', | 
| 389 |  |  |  |  |  |  | 'the basement of the Vatican', | 
| 390 | 69 |  |  | 69 |  | 207 | sub { myth_place( $redstring ) }, | 
| 391 |  |  |  |  |  |  | sub { | 
| 392 | 70 |  |  | 70 |  | 166 | my $p = random_place( $redstring ); | 
| 393 | 70 |  |  |  |  | 227 | "a series of tunnels underneath $p"; | 
| 394 |  |  |  |  |  |  | }, | 
| 395 |  |  |  |  |  |  | sub { | 
| 396 | 80 |  |  | 80 |  | 204 | my $p = random_place( $redstring ); | 
| 397 | 80 |  |  |  |  | 276 | "a secret base in $p"; | 
| 398 |  |  |  |  |  |  | }, | 
| 399 | 855 |  |  |  |  | 6346 | 'a facility inside the hollow Earth', | 
| 400 |  |  |  |  |  |  | ); | 
| 401 |  |  |  |  |  |  |  | 
| 402 | 855 |  |  |  |  | 5530 | _MERGE_( $redstring, bad_place => $bad_place ); | 
| 403 | 855 |  |  |  |  | 1973 | return $bad_place; | 
| 404 |  |  |  |  |  |  | } | 
| 405 |  |  |  |  |  |  |  | 
| 406 |  |  |  |  |  |  | sub random_place { | 
| 407 | 6165 |  | 50 | 6165 | 0 | 16607 | my $redstring = shift // {}; | 
| 408 |  |  |  |  |  |  |  | 
| 409 | 6165 |  |  |  |  | 15621 | my $random_place = _RANDOM_( | 
| 410 |  |  |  |  |  |  | 'the USA', | 
| 411 |  |  |  |  |  |  | 'the UK', | 
| 412 |  |  |  |  |  |  | 'France', | 
| 413 |  |  |  |  |  |  | 'Italy', | 
| 414 |  |  |  |  |  |  | 'Germany', | 
| 415 |  |  |  |  |  |  | 'Spain', | 
| 416 |  |  |  |  |  |  | 'Egypt', | 
| 417 |  |  |  |  |  |  | 'Israel', | 
| 418 |  |  |  |  |  |  | 'Lebanon', | 
| 419 |  |  |  |  |  |  | 'Syria', | 
| 420 |  |  |  |  |  |  | 'Japan', | 
| 421 |  |  |  |  |  |  | 'China', | 
| 422 |  |  |  |  |  |  | 'Brazil', | 
| 423 |  |  |  |  |  |  | 'Argentina', | 
| 424 |  |  |  |  |  |  | 'Chile', | 
| 425 |  |  |  |  |  |  | 'Tunisia', | 
| 426 |  |  |  |  |  |  | 'Antarctica', | 
| 427 |  |  |  |  |  |  | 'Norway', | 
| 428 |  |  |  |  |  |  | 'Australia', | 
| 429 |  |  |  |  |  |  | 'New Zealand', | 
| 430 |  |  |  |  |  |  | ); | 
| 431 |  |  |  |  |  |  |  | 
| 432 | 6165 |  |  |  |  | 16156 | _MERGE_( $redstring, random_place => $random_place ); | 
| 433 | 6165 |  |  |  |  | 13658 | return $random_place; | 
| 434 |  |  |  |  |  |  | } | 
| 435 |  |  |  |  |  |  |  | 
| 436 |  |  |  |  |  |  | sub myth_place { | 
| 437 | 579 |  | 50 | 579 | 0 | 1664 | my $redstring = shift // {}; | 
| 438 |  |  |  |  |  |  |  | 
| 439 | 579 |  |  |  |  | 1512 | my $place = _RANDOM_( | 
| 440 |  |  |  |  |  |  | 'the Garden of Eden', | 
| 441 |  |  |  |  |  |  | 'the lost city of Atlantis', | 
| 442 |  |  |  |  |  |  | 'the final resting place of Noah\'s Ark', | 
| 443 |  |  |  |  |  |  | 'the umbilicus mundi', | 
| 444 |  |  |  |  |  |  | 'Camelot', | 
| 445 |  |  |  |  |  |  | "Lucifer's crypt", | 
| 446 |  |  |  |  |  |  | "Jesus's grave", | 
| 447 |  |  |  |  |  |  | "Jesus's true birthplace", | 
| 448 |  |  |  |  |  |  | 'the entrance to the hollow Earth', | 
| 449 |  |  |  |  |  |  | 'the REAL Stonehenge', | 
| 450 |  |  |  |  |  |  | ); | 
| 451 |  |  |  |  |  |  |  | 
| 452 | 579 |  |  |  |  | 1584 | _MERGE_( $redstring, myth_place => $place ); | 
| 453 | 579 |  |  |  |  | 1327 | return $place; | 
| 454 |  |  |  |  |  |  | } | 
| 455 |  |  |  |  |  |  |  | 
| 456 |  |  |  |  |  |  | sub cryptids { | 
| 457 | 511 |  | 50 | 511 | 0 | 1576 | my $redstring = shift // {}; | 
| 458 |  |  |  |  |  |  |  | 
| 459 | 511 |  |  |  |  | 1292 | my $cryptids = _RANDOM_( | 
| 460 |  |  |  |  |  |  | 'vampires', | 
| 461 |  |  |  |  |  |  | 'ghosts', | 
| 462 |  |  |  |  |  |  | 'werewolves', | 
| 463 |  |  |  |  |  |  | 'demons', | 
| 464 |  |  |  |  |  |  | 'angels', | 
| 465 |  |  |  |  |  |  | 'skinwalkers', | 
| 466 |  |  |  |  |  |  | 'elves', | 
| 467 |  |  |  |  |  |  | 'goblins', | 
| 468 |  |  |  |  |  |  | 'mermaids', | 
| 469 |  |  |  |  |  |  | ); | 
| 470 |  |  |  |  |  |  |  | 
| 471 | 511 |  |  |  |  | 1490 | _MERGE_( $redstring, cryptids => $cryptids ); | 
| 472 | 511 |  |  |  |  | 1203 | return $cryptids; | 
| 473 |  |  |  |  |  |  | } | 
| 474 |  |  |  |  |  |  |  | 
| 475 |  |  |  |  |  |  | sub fiction { | 
| 476 | 3058 |  | 100 | 3058 | 0 | 10011 | my $redstring = shift // {}; | 
| 477 |  |  |  |  |  |  |  | 
| 478 | 3058 |  |  |  |  | 26885 | my $fiction = _RANDOM_( | 
| 479 |  |  |  |  |  |  | { title => 'Harry Potter', author => 'J K Rowling' }, | 
| 480 |  |  |  |  |  |  | { title => 'Tintin', author => 'Herge' }, | 
| 481 |  |  |  |  |  |  | { title => 'Star Wars', author => 'George Lucas' }, | 
| 482 |  |  |  |  |  |  | { title => 'Avengers: Age of Ultron', author => 'Kevin Feige' }, | 
| 483 |  |  |  |  |  |  | { title => 'The Book of Mormon', author => 'Joseph Smith' }, | 
| 484 |  |  |  |  |  |  | { title => 'Lord of the Rings', author => 'J R R Tolkien' }, | 
| 485 |  |  |  |  |  |  | { title => 'The Chronicles of Narnia', author => 'C S Lewis' }, | 
| 486 |  |  |  |  |  |  | { title => 'Game of Thrones', author => 'George R R Martin' }, | 
| 487 |  |  |  |  |  |  | { title => 'Spider-Man', author => 'Stan Lee' }, | 
| 488 |  |  |  |  |  |  | ); | 
| 489 |  |  |  |  |  |  |  | 
| 490 | 3058 |  |  |  |  | 14143 | _MERGE_( $redstring, fiction => $fiction ); | 
| 491 | 3058 |  |  |  |  | 10268 | return $fiction->{title}; | 
| 492 |  |  |  |  |  |  | } | 
| 493 |  |  |  |  |  |  |  | 
| 494 |  |  |  |  |  |  | sub precious_resource { | 
| 495 | 3359 |  | 50 | 3359 | 0 | 7683 | my $redstring = shift // {}; | 
| 496 |  |  |  |  |  |  |  | 
| 497 | 3359 |  |  |  |  | 8037 | my $resource = _RANDOM_( | 
| 498 |  |  |  |  |  |  | 'pineapple', | 
| 499 |  |  |  |  |  |  | 'oil', | 
| 500 |  |  |  |  |  |  | 'coal', | 
| 501 |  |  |  |  |  |  | 'uranium', | 
| 502 |  |  |  |  |  |  | 'holy water', | 
| 503 |  |  |  |  |  |  | 'diamond', | 
| 504 |  |  |  |  |  |  | 'blood', | 
| 505 |  |  |  |  |  |  | 'gold', | 
| 506 |  |  |  |  |  |  | 'silver', | 
| 507 |  |  |  |  |  |  | 'neutron star material', | 
| 508 |  |  |  |  |  |  | 'Belle Delphine bath water', | 
| 509 |  |  |  |  |  |  | 'crystals', | 
| 510 |  |  |  |  |  |  | ); | 
| 511 |  |  |  |  |  |  |  | 
| 512 | 3359 |  |  |  |  | 8598 | _MERGE_( $redstring, precious_resource => $resource ); | 
| 513 | 3359 |  |  |  |  | 7737 | return $resource; | 
| 514 |  |  |  |  |  |  | } | 
| 515 |  |  |  |  |  |  |  | 
| 516 |  |  |  |  |  |  | sub precious_resource_with_quantity { | 
| 517 | 2853 |  | 50 | 2853 | 0 | 7831 | my $redstring = shift // {}; | 
| 518 | 2853 |  |  |  |  | 5696 | my $resource = precious_resource( $redstring ); | 
| 519 | 2853 |  |  |  |  | 6816 | my $quantity = _RANDOM_( | 
| 520 |  |  |  |  |  |  | 'a warehouse full', | 
| 521 |  |  |  |  |  |  | 'a lot', | 
| 522 |  |  |  |  |  |  | 'unknown quantities', | 
| 523 |  |  |  |  |  |  | 'vast amounts', | 
| 524 |  |  |  |  |  |  | 'unimaginable quantities', | 
| 525 |  |  |  |  |  |  | 'unspeakable quantities', | 
| 526 |  |  |  |  |  |  | '5.3 metric pounds', | 
| 527 |  |  |  |  |  |  | '6.9 Imperial litres', | 
| 528 |  |  |  |  |  |  | '666 tonnes', | 
| 529 |  |  |  |  |  |  | ); | 
| 530 | 2853 |  |  |  |  | 8377 | "$quantity of $resource"; | 
| 531 |  |  |  |  |  |  | } | 
| 532 |  |  |  |  |  |  |  | 
| 533 |  |  |  |  |  |  | sub mind_control_device { | 
| 534 | 507 |  | 50 | 507 | 0 | 1393 | my $redstring = shift // {}; | 
| 535 |  |  |  |  |  |  |  | 
| 536 | 507 |  |  |  |  | 4290 | my @mc = ( | 
| 537 |  |  |  |  |  |  | ['chemtrails', 1], | 
| 538 |  |  |  |  |  |  | ['mind control drugs in the water', 1], | 
| 539 |  |  |  |  |  |  | ['5G', 0], | 
| 540 |  |  |  |  |  |  | ['WiFi', 0], | 
| 541 |  |  |  |  |  |  | ['microchips implanted at birth', 1], | 
| 542 |  |  |  |  |  |  | ['vaccines', 1], | 
| 543 |  |  |  |  |  |  | ['childhood indoctrination', 0], | 
| 544 |  |  |  |  |  |  | ['neurolinguistic programming', 0], | 
| 545 |  |  |  |  |  |  | ['video games', 1], | 
| 546 |  |  |  |  |  |  | ['mass media', 1], | 
| 547 |  |  |  |  |  |  | ['space lasers', 1], | 
| 548 |  |  |  |  |  |  | ['hypnotism', 0], | 
| 549 |  |  |  |  |  |  | ); | 
| 550 |  |  |  |  |  |  |  | 
| 551 | 507 |  |  |  |  | 1248 | my $mc = _RANDOM_(@mc); | 
| 552 |  |  |  |  |  |  |  | 
| 553 | 507 |  |  |  |  | 1676 | _MERGE_( $redstring, mind_control_device => $mc->[0] ); | 
| 554 | 507 |  |  |  |  | 1664 | _MERGE_( $redstring, mind_control_device_plural => $mc->[1] ); | 
| 555 | 507 |  |  |  |  | 2110 | return $mc->[0]; | 
| 556 |  |  |  |  |  |  | } | 
| 557 |  |  |  |  |  |  |  | 
| 558 |  |  |  |  |  |  | sub future_time { | 
| 559 | 1006 |  | 50 | 1006 | 0 | 3152 | my $redstring = shift // {}; | 
| 560 |  |  |  |  |  |  |  | 
| 561 | 1006 |  |  |  |  | 2670 | my $time = _RANDOM_( | 
| 562 |  |  |  |  |  |  | 'in 2030', | 
| 563 |  |  |  |  |  |  | 'by the end of the century', | 
| 564 |  |  |  |  |  |  | 'in 2666', | 
| 565 |  |  |  |  |  |  | 'when Queen Elizabeth II dies', | 
| 566 |  |  |  |  |  |  | 'when the ice caps melt', | 
| 567 |  |  |  |  |  |  | 'next Christmas', | 
| 568 |  |  |  |  |  |  | ); | 
| 569 |  |  |  |  |  |  |  | 
| 570 | 1006 |  |  |  |  | 3274 | _MERGE_( $redstring, future_time => $time ); | 
| 571 | 1006 |  |  |  |  | 2444 | return $time; | 
| 572 |  |  |  |  |  |  | } | 
| 573 |  |  |  |  |  |  |  | 
| 574 |  |  |  |  |  |  | sub splural { | 
| 575 | 120167 |  |  | 120167 | 0 | 182609 | my $a = shift; | 
| 576 | 120167 | 100 |  |  |  | 232560 | if (defined $a->{splural}) { | 
| 577 | 10362 |  |  |  |  | 24834 | return $a->{splural}; | 
| 578 |  |  |  |  |  |  | } | 
| 579 | 109805 |  |  |  |  | 221661 | return $a->{plural}; | 
| 580 |  |  |  |  |  |  | } | 
| 581 |  |  |  |  |  |  |  | 
| 582 |  |  |  |  |  |  | sub a_long_time { | 
| 583 | 2495 |  | 100 | 2495 | 0 | 7996 | my $redstring = shift // {}; | 
| 584 |  |  |  |  |  |  |  | 
| 585 | 2495 |  |  |  |  | 4904 | my @extras = (); | 
| 586 | 2495 |  |  |  |  | 6258 | for my $actor ( qw/ protagonists antagonists / ) { | 
| 587 |  |  |  |  |  |  | push @extras, sub { | 
| 588 | 362 | 100 |  | 362 |  | 1151 | my $have = splural( $redstring->{$actor} ) ? 'have' : 'has'; | 
| 589 | 362 |  | 66 |  |  | 2132 | "for as long as " . ($redstring->{$actor}{shortname}//$redstring->{$actor}{name}) . " $have existed"; | 
| 590 | 4990 | 100 |  |  |  | 19690 | } if $redstring->{$actor}{name}; | 
| 591 |  |  |  |  |  |  | } | 
| 592 |  |  |  |  |  |  |  | 
| 593 | 2495 |  |  |  |  | 6675 | my $time = _RANDOM_( | 
| 594 |  |  |  |  |  |  | 'since 1492', | 
| 595 |  |  |  |  |  |  | 'since 1666', | 
| 596 |  |  |  |  |  |  | 'since 1066', | 
| 597 |  |  |  |  |  |  | 'since the time of Christ', | 
| 598 |  |  |  |  |  |  | 'since time immemorial', | 
| 599 |  |  |  |  |  |  | 'since the dawn of time', | 
| 600 |  |  |  |  |  |  | 'for hundreds of years', | 
| 601 |  |  |  |  |  |  | 'for millennia', | 
| 602 |  |  |  |  |  |  | @extras, | 
| 603 |  |  |  |  |  |  | ); | 
| 604 |  |  |  |  |  |  |  | 
| 605 | 2495 |  |  |  |  | 7095 | _MERGE_( $redstring, a_long_time => $time ); | 
| 606 | 2495 |  |  |  |  | 11767 | return $time; | 
| 607 |  |  |  |  |  |  | } | 
| 608 |  |  |  |  |  |  |  | 
| 609 |  |  |  |  |  |  | sub misinformation { | 
| 610 | 1478 |  | 50 | 1478 | 0 | 4398 | my $redstring = shift // {}; | 
| 611 |  |  |  |  |  |  |  | 
| 612 |  |  |  |  |  |  | my $info = _RANDOM_( | 
| 613 |  |  |  |  |  |  | 'the Earth is round', | 
| 614 |  |  |  |  |  |  | 'the Earth goes around the sun', | 
| 615 |  |  |  |  |  |  | 'humans are animals', | 
| 616 |  |  |  |  |  |  | 'birds are dinosaurs', | 
| 617 |  |  |  |  |  |  | sub { | 
| 618 | 83 |  |  | 83 |  | 392 | $redstring->{topic} = { name => 'the moon', plural => 0 }; | 
| 619 | 83 |  |  |  |  | 239 | 'men have walked on the moon'; | 
| 620 |  |  |  |  |  |  | }, | 
| 621 |  |  |  |  |  |  | sub { | 
| 622 | 77 |  |  | 77 |  | 393 | $redstring->{topic} = { name => 'electricity', plural => 0 }; | 
| 623 | 77 |  |  |  |  | 208 | 'electricity exists'; | 
| 624 |  |  |  |  |  |  | }, | 
| 625 |  |  |  |  |  |  | sub { | 
| 626 | 91 |  |  | 91 |  | 318 | $redstring->{topic} = { name => 'magnetism', plural => 0 }; | 
| 627 | 91 |  |  |  |  | 220 | 'magnetism is real'; | 
| 628 |  |  |  |  |  |  | }, | 
| 629 |  |  |  |  |  |  | sub { | 
| 630 | 94 |  |  | 94 |  | 406 | $redstring->{topic} = { name => 'gravity', plural => 0 }; | 
| 631 | 94 |  |  |  |  | 229 | 'gravity is real'; | 
| 632 |  |  |  |  |  |  | }, | 
| 633 |  |  |  |  |  |  | sub { | 
| 634 | 96 |  |  | 96 |  | 391 | $redstring->{topic} = { name => 'outer space', plural => 0 }; | 
| 635 | 96 |  |  |  |  | 239 | 'space is real'; | 
| 636 |  |  |  |  |  |  | }, | 
| 637 |  |  |  |  |  |  | sub { | 
| 638 | 78 |  |  | 78 |  | 314 | $redstring->{topic} = { name => 'viruses', plural => 1 }; | 
| 639 | 78 |  |  |  |  | 193 | 'viruses are real'; | 
| 640 |  |  |  |  |  |  | }, | 
| 641 |  |  |  |  |  |  | sub { | 
| 642 | 92 |  |  | 92 |  | 375 | $redstring->{topic} = { name => 'vaccines', plural => 1 }; | 
| 643 | 92 |  |  |  |  | 211 | 'vaccines are safe'; | 
| 644 |  |  |  |  |  |  | }, | 
| 645 |  |  |  |  |  |  | sub { | 
| 646 | 87 |  |  | 87 |  | 266 | my $animal = real_animal( $redstring ); | 
| 647 | 87 |  |  |  |  | 297 | "the $animal is real"; | 
| 648 |  |  |  |  |  |  | }, | 
| 649 |  |  |  |  |  |  | sub { | 
| 650 | 88 |  |  | 88 |  | 248 | my $place = random_place( $redstring ); | 
| 651 | 88 |  |  |  |  | 287 | "$place is real"; | 
| 652 |  |  |  |  |  |  | }, | 
| 653 |  |  |  |  |  |  | sub { | 
| 654 | 82 |  |  | 82 |  | 295 | $redstring->{topic} = { name => 'carbon dating', plural => 0 }; | 
| 655 | 82 |  |  |  |  | 163 | 'the Earth is 4.5 billion years old'; | 
| 656 |  |  |  |  |  |  | }, | 
| 657 |  |  |  |  |  |  | sub { | 
| 658 | 87 |  |  | 87 |  | 351 | $redstring->{topic} = { name => 'radiocarbon dating', plural => 0 }; | 
| 659 | 87 |  |  |  |  | 201 | 'the universe is 14 billion years old'; | 
| 660 |  |  |  |  |  |  | }, | 
| 661 |  |  |  |  |  |  | sub { | 
| 662 | 105 |  |  | 105 |  | 452 | $redstring->{topic} = { name => 'pigeons', plural => 1 }; | 
| 663 | 105 |  |  |  |  | 256 | 'dinosaurs are real'; | 
| 664 |  |  |  |  |  |  | }, | 
| 665 |  |  |  |  |  |  | sub { | 
| 666 | 86 |  |  | 86 |  | 340 | $redstring->{topic} = { name => 'surveillance drones', plural => 1 }; | 
| 667 | 86 |  |  |  |  | 196 | 'birds are real'; | 
| 668 |  |  |  |  |  |  | }, | 
| 669 | 1478 |  |  |  |  | 22370 | ); | 
| 670 |  |  |  |  |  |  |  | 
| 671 | 1478 |  |  |  |  | 18788 | _MERGE_( $redstring, misinformation => $info ); | 
| 672 | 1478 |  |  |  |  | 3410 | return $info; | 
| 673 |  |  |  |  |  |  | } | 
| 674 |  |  |  |  |  |  |  | 
| 675 |  |  |  |  |  |  | sub victim { | 
| 676 | 3005 |  | 50 | 3005 | 0 | 8766 | my $redstring = shift // {}; | 
| 677 |  |  |  |  |  |  |  | 
| 678 | 3005 |  |  |  |  | 8327 | my $victim = _RANDOM_( | 
| 679 |  |  |  |  |  |  | 'Elvis Presley', | 
| 680 |  |  |  |  |  |  | 'JFK', | 
| 681 |  |  |  |  |  |  | 'Hitler', | 
| 682 |  |  |  |  |  |  | 'Robin Williams', | 
| 683 |  |  |  |  |  |  | 'Martin Luther King Jr', | 
| 684 |  |  |  |  |  |  | 'Abraham Lincoln', | 
| 685 |  |  |  |  |  |  | 'King Charles I', | 
| 686 |  |  |  |  |  |  | 'Marilyn Monroe', | 
| 687 |  |  |  |  |  |  | 'Tupac Shakur', | 
| 688 |  |  |  |  |  |  | 'Princess Di', | 
| 689 |  |  |  |  |  |  | 'Jeff Buckley', | 
| 690 |  |  |  |  |  |  | 'Andy Kaufman', | 
| 691 |  |  |  |  |  |  | 'Jim Morrison', | 
| 692 |  |  |  |  |  |  | 'Brandon Lee', | 
| 693 |  |  |  |  |  |  | 'Lee Harvey Oswald', | 
| 694 |  |  |  |  |  |  | 'Archduke Franz Ferdinand', | 
| 695 |  |  |  |  |  |  | 'the original Avril Lavigne', | 
| 696 |  |  |  |  |  |  | 'Malcolm X', | 
| 697 |  |  |  |  |  |  | 'John Lennon', | 
| 698 |  |  |  |  |  |  | 'Michael Jackson', | 
| 699 |  |  |  |  |  |  | ); | 
| 700 |  |  |  |  |  |  |  | 
| 701 | 3005 |  |  |  |  | 9026 | _MERGE_( $redstring, victim => $victim ); | 
| 702 | 3005 |  |  |  |  | 6817 | return $victim; | 
| 703 |  |  |  |  |  |  | } | 
| 704 |  |  |  |  |  |  |  | 
| 705 |  |  |  |  |  |  | sub physicist {  # and chemists | 
| 706 | 1535 |  | 50 | 1535 | 0 | 4502 | my $redstring = shift // {}; | 
| 707 |  |  |  |  |  |  |  | 
| 708 | 1535 |  |  |  |  | 3920 | my $x = _RANDOM_( | 
| 709 |  |  |  |  |  |  | 'Nikola Tesla', | 
| 710 |  |  |  |  |  |  | 'Benjamin Franklin', | 
| 711 |  |  |  |  |  |  | 'Albert Einstein', | 
| 712 |  |  |  |  |  |  | 'Isaac Newton', | 
| 713 |  |  |  |  |  |  | 'Stephen Hawking', | 
| 714 |  |  |  |  |  |  | 'Henry Cavendish', | 
| 715 |  |  |  |  |  |  | ); | 
| 716 |  |  |  |  |  |  |  | 
| 717 | 1535 |  |  |  |  | 4729 | _MERGE_( $redstring, physicist => $x ); | 
| 718 | 1535 |  |  |  |  | 3624 | return $x; | 
| 719 |  |  |  |  |  |  | } | 
| 720 |  |  |  |  |  |  |  | 
| 721 |  |  |  |  |  |  | sub biologist {  # and medics | 
| 722 | 1510 |  | 50 | 1510 | 0 | 4081 | my $redstring = shift // {}; | 
| 723 |  |  |  |  |  |  |  | 
| 724 | 1510 |  |  |  |  | 3663 | my $x = _RANDOM_( | 
| 725 |  |  |  |  |  |  | 'Charles Darwin', | 
| 726 |  |  |  |  |  |  | 'Edward Jenner', | 
| 727 |  |  |  |  |  |  | 'Robert Koch', | 
| 728 |  |  |  |  |  |  | 'Carl Linneaus', | 
| 729 |  |  |  |  |  |  | 'Alexander Fleming', | 
| 730 |  |  |  |  |  |  | ); | 
| 731 |  |  |  |  |  |  |  | 
| 732 | 1510 |  |  |  |  | 3995 | _MERGE_( $redstring, biologist => $x ); | 
| 733 | 1510 |  |  |  |  | 3779 | return $x; | 
| 734 |  |  |  |  |  |  | } | 
| 735 |  |  |  |  |  |  |  | 
| 736 |  |  |  |  |  |  | sub website { | 
| 737 | 5459 |  | 100 | 5459 | 0 | 18737 | my $redstring = shift // {}; | 
| 738 |  |  |  |  |  |  |  | 
| 739 | 5459 |  |  |  |  | 12205 | my $x = _RANDOM_( | 
| 740 |  |  |  |  |  |  | 'Tumblr', | 
| 741 |  |  |  |  |  |  | 'Pinterest', | 
| 742 |  |  |  |  |  |  | 'Youtube', | 
| 743 |  |  |  |  |  |  | 'Facebook', | 
| 744 |  |  |  |  |  |  | 'Wikipedia', | 
| 745 |  |  |  |  |  |  | 'Twitter', | 
| 746 |  |  |  |  |  |  | 'Instagram', | 
| 747 |  |  |  |  |  |  | 'Geocities', | 
| 748 |  |  |  |  |  |  | 'Parler', | 
| 749 |  |  |  |  |  |  | ); | 
| 750 |  |  |  |  |  |  |  | 
| 751 | 5459 |  |  |  |  | 13473 | _MERGE_( $redstring, website => $x ); | 
| 752 | 5459 |  |  |  |  | 29596 | return $x; | 
| 753 |  |  |  |  |  |  | } | 
| 754 |  |  |  |  |  |  |  | 
| 755 |  |  |  |  |  |  | sub fatuous { | 
| 756 | 2696 |  | 50 | 2696 | 0 | 10742 | my $redstring = shift // {}; | 
| 757 |  |  |  |  |  |  |  | 
| 758 | 2696 |  |  |  |  | 7294 | my $x = _RANDOM_( | 
| 759 |  |  |  |  |  |  | "We all know what's going on here.", | 
| 760 |  |  |  |  |  |  | "It's plain and simple common sense.", | 
| 761 |  |  |  |  |  |  | 'Most people are in denial.', | 
| 762 |  |  |  |  |  |  | "Isn't it obvious?", | 
| 763 |  |  |  |  |  |  | "Wake up, sheeple!", | 
| 764 |  |  |  |  |  |  | "It's obvious if you connect the dots.", | 
| 765 |  |  |  |  |  |  | "They leave clues to mock us.", | 
| 766 |  |  |  |  |  |  | "It's not funny!", | 
| 767 |  |  |  |  |  |  | "There are too many coincidences to ignore.", | 
| 768 |  |  |  |  |  |  | ); | 
| 769 |  |  |  |  |  |  |  | 
| 770 | 2696 |  |  |  |  | 8381 | _MERGE_( $redstring, clone => $x ); | 
| 771 | 2696 |  |  |  |  | 9181 | return $x; | 
| 772 |  |  |  |  |  |  | } | 
| 773 |  |  |  |  |  |  |  | 
| 774 |  |  |  |  |  |  | sub clone { | 
| 775 | 610 |  | 50 | 610 | 0 | 1667 | my $redstring = shift // {}; | 
| 776 |  |  |  |  |  |  |  | 
| 777 | 610 |  |  |  |  | 1673 | my $x = _RANDOM_( | 
| 778 |  |  |  |  |  |  | 'an alien', | 
| 779 |  |  |  |  |  |  | 'an avatar', | 
| 780 |  |  |  |  |  |  | 'a CGI replica', | 
| 781 |  |  |  |  |  |  | 'a clone', | 
| 782 |  |  |  |  |  |  | 'a cyborg', | 
| 783 |  |  |  |  |  |  | 'a hologram', | 
| 784 |  |  |  |  |  |  | 'a look-alike', | 
| 785 |  |  |  |  |  |  | 'a robot', | 
| 786 |  |  |  |  |  |  | 'a shapeshifter', | 
| 787 |  |  |  |  |  |  | ); | 
| 788 |  |  |  |  |  |  |  | 
| 789 | 610 |  |  |  |  | 1748 | _MERGE_( $redstring, clone => $x ); | 
| 790 | 610 |  |  |  |  | 1849 | return $x; | 
| 791 |  |  |  |  |  |  | } | 
| 792 |  |  |  |  |  |  |  | 
| 793 |  |  |  |  |  |  | sub lies { | 
| 794 | 27798 |  | 50 | 27798 | 0 | 91106 | my $redstring = shift // {}; | 
| 795 |  |  |  |  |  |  |  | 
| 796 | 27798 |  |  |  |  | 58858 | my $x = _RANDOM_( | 
| 797 |  |  |  |  |  |  | 'obvious lies', | 
| 798 |  |  |  |  |  |  | 'a big coverup', | 
| 799 |  |  |  |  |  |  | 'a fairy tale', | 
| 800 |  |  |  |  |  |  | 'disinformation', | 
| 801 |  |  |  |  |  |  | ); | 
| 802 |  |  |  |  |  |  |  | 
| 803 | 27798 |  |  |  |  | 67604 | _MERGE_( $redstring, lies => $x ); | 
| 804 | 27798 |  |  |  |  | 74541 | return $x; | 
| 805 |  |  |  |  |  |  | } | 
| 806 |  |  |  |  |  |  |  | 
| 807 |  |  |  |  |  |  | sub evidence { | 
| 808 | 21423 |  | 50 | 21423 | 0 | 53893 | my $redstring = shift // {}; | 
| 809 |  |  |  |  |  |  |  | 
| 810 |  |  |  |  |  |  | my @x = ( | 
| 811 |  |  |  |  |  |  | "there's a video about it on YouTube", | 
| 812 | 1781 |  |  | 1781 |  | 4501 | sub { 'there was something about it on ' . website() }, | 
| 813 |  |  |  |  |  |  | "the voices told me", | 
| 814 |  |  |  |  |  |  | "I had a dream", | 
| 815 | 1821 |  |  | 1821 |  | 4389 | sub { website() . ' is censoring me' }, | 
| 816 | 1850 |  |  | 1850 |  | 5169 | sub { website() . ' was down this morning' }, | 
| 817 | 21423 |  |  |  |  | 112514 | ); | 
| 818 |  |  |  |  |  |  |  | 
| 819 | 21423 | 100 |  |  |  | 60016 | if ( my $c = $redstring->{disease_cause} ) { | 
| 820 | 243 |  |  |  |  | 748 | push @x, ( | 
| 821 |  |  |  |  |  |  | "$c is addictive", | 
| 822 |  |  |  |  |  |  | ); | 
| 823 |  |  |  |  |  |  | } | 
| 824 |  |  |  |  |  |  |  | 
| 825 | 21423 | 100 |  |  |  | 50881 | if ( my $m = $redstring->{misinformation} ) { | 
| 826 | 1478 |  |  |  |  | 6505 | push @x, ( | 
| 827 |  |  |  |  |  |  | "they indoctrinate people about '$m' at schools and if it were the truth they wouldn't need to", | 
| 828 |  |  |  |  |  |  | "'$m' gets pushed down our throats by mass media", | 
| 829 |  |  |  |  |  |  | "'$m' is a false-flag operation", | 
| 830 |  |  |  |  |  |  | ); | 
| 831 |  |  |  |  |  |  | } | 
| 832 |  |  |  |  |  |  |  | 
| 833 | 21423 | 100 |  |  |  | 50543 | if ( my $auth = $redstring->{authority} ) { | 
| 834 | 383 |  |  |  |  | 1868 | push @x, ( | 
| 835 |  |  |  |  |  |  | "$auth are the obvious people to go to", | 
| 836 |  |  |  |  |  |  | "$auth are the only ones with the power to stop them", | 
| 837 |  |  |  |  |  |  | "$auth are able to save us", | 
| 838 |  |  |  |  |  |  | ); | 
| 839 |  |  |  |  |  |  | } | 
| 840 |  |  |  |  |  |  |  | 
| 841 | 21423 | 100 |  |  |  | 48045 | if ( my $p = $redstring->{myth_place} ) { | 
| 842 | 548 |  |  |  |  | 3205 | push @x, ( | 
| 843 |  |  |  |  |  |  | "there are clues about $p in the Bible", | 
| 844 |  |  |  |  |  |  | "there are clues about $p in the Voynich manuscript", | 
| 845 |  |  |  |  |  |  | "$p is on some old maps", | 
| 846 |  |  |  |  |  |  | "$p is on Google Maps", | 
| 847 |  |  |  |  |  |  | ); | 
| 848 |  |  |  |  |  |  | } | 
| 849 |  |  |  |  |  |  |  | 
| 850 | 21423 | 100 |  |  |  | 48375 | if ( my $art = $redstring->{artifact} ) { | 
| 851 | 256 |  |  |  |  | 1307 | push @x, ( | 
| 852 |  |  |  |  |  |  | "$art isn't in any museum", | 
| 853 |  |  |  |  |  |  | "$art must be somewhere", | 
| 854 |  |  |  |  |  |  | "$art is out there", | 
| 855 |  |  |  |  |  |  | "$art can be found with GPS", | 
| 856 |  |  |  |  |  |  | ); | 
| 857 |  |  |  |  |  |  | } | 
| 858 |  |  |  |  |  |  |  | 
| 859 | 21423 | 100 |  |  |  | 46241 | if ( my $proj = $redstring->{shady_project} ) { | 
| 860 | 1543 |  |  |  |  | 6655 | push @x, ( | 
| 861 |  |  |  |  |  |  | "everybody knows $proj is happening soon", | 
| 862 |  |  |  |  |  |  | "$proj is well-funded", | 
| 863 |  |  |  |  |  |  | "$proj is an open secret", | 
| 864 |  |  |  |  |  |  | "there is so much evidence for $proj", | 
| 865 |  |  |  |  |  |  | ); | 
| 866 |  |  |  |  |  |  | } | 
| 867 |  |  |  |  |  |  |  | 
| 868 | 21423 | 100 |  |  |  | 46111 | if ( my $dl = $redstring->{dark_lord} ) { | 
| 869 | 1558 |  |  |  |  | 7952 | push @x, ( | 
| 870 |  |  |  |  |  |  | "$dl is known to be growing in power", | 
| 871 |  |  |  |  |  |  | "$dl has never seemed more powerful", | 
| 872 |  |  |  |  |  |  | "$dl needs to be getting power from somewhere", | 
| 873 |  |  |  |  |  |  | "$dl told me", | 
| 874 |  |  |  |  |  |  | "I have seen signs from $dl", | 
| 875 |  |  |  |  |  |  | ); | 
| 876 |  |  |  |  |  |  | } | 
| 877 |  |  |  |  |  |  |  | 
| 878 | 21423 | 100 | 100 |  |  | 98288 | if ( my $v = $redstring->{victim} // $redstring->{physicist} // $redstring->{biologist} ) { | 
|  |  |  | 100 |  |  |  |  | 
| 879 |  |  |  |  |  |  | push @x, ( | 
| 880 |  |  |  |  |  |  | "$v died too young", | 
| 881 |  |  |  |  |  |  | "$v sent a letter containing the truth before dying", | 
| 882 |  |  |  |  |  |  | sub { | 
| 883 | 335 |  |  | 335 |  | 949 | my $clone = clone( $redstring ); | 
| 884 | 335 |  |  |  |  | 1757 | "when they did an autopsy on $v it turned out it was $clone", | 
| 885 |  |  |  |  |  |  | }, | 
| 886 |  |  |  |  |  |  | "they never did an autopsy on $v", | 
| 887 |  |  |  |  |  |  | "$v wrote a will", | 
| 888 |  |  |  |  |  |  | sub { | 
| 889 | 341 |  |  | 341 |  | 909 | my $g = shady_group( $redstring ); | 
| 890 | 341 |  |  |  |  | 1943 | "$v was secretly one of $g"; | 
| 891 |  |  |  |  |  |  | }, | 
| 892 |  |  |  |  |  |  | sub { | 
| 893 | 313 |  |  | 313 |  | 927 | my $animal = real_animal( $redstring ); | 
| 894 | 313 |  |  |  |  | 1753 | "when they did an autopsy on $v it turned out they were secretly a $animal in a human suit"; | 
| 895 |  |  |  |  |  |  | }, | 
| 896 | 5797 |  |  |  |  | 43459 | ); | 
| 897 |  |  |  |  |  |  | } | 
| 898 |  |  |  |  |  |  |  | 
| 899 | 21423 | 100 | 100 |  |  | 73279 | if ( my $v = $redstring->{physicist} // $redstring->{biologist} ) { | 
| 900 | 3045 |  |  |  |  | 10358 | push @x, ( | 
| 901 |  |  |  |  |  |  | "$v isn't mentioned in Aristotle's writing", | 
| 902 |  |  |  |  |  |  | "$v hasn't given a lecture in months", | 
| 903 |  |  |  |  |  |  | "$v isn't taken seriously by TRUE SCIENTISTS", | 
| 904 |  |  |  |  |  |  | ); | 
| 905 |  |  |  |  |  |  | } | 
| 906 |  |  |  |  |  |  |  | 
| 907 | 21423 | 100 |  |  |  | 48152 | if ( my $c = $redstring->{celebrity} ) { | 
| 908 | 3874 | 100 |  |  |  | 8955 | if ( $c->{female} ) { | 
| 909 | 1452 |  |  |  |  | 3521 | push @x, ( | 
| 910 |  |  |  |  |  |  | "you can't trust women", | 
| 911 |  |  |  |  |  |  | "she said so on her Twitter", | 
| 912 |  |  |  |  |  |  | ); | 
| 913 |  |  |  |  |  |  | } | 
| 914 |  |  |  |  |  |  | else { | 
| 915 | 2422 |  |  |  |  | 5000 | push @x, ( | 
| 916 |  |  |  |  |  |  | "you can't trust men", | 
| 917 |  |  |  |  |  |  | "he said so on his Twitter", | 
| 918 |  |  |  |  |  |  | ); | 
| 919 |  |  |  |  |  |  | } | 
| 920 |  |  |  |  |  |  | } | 
| 921 |  |  |  |  |  |  |  | 
| 922 | 21423 | 100 |  |  |  | 45491 | if ( my $f = $redstring->{fiction} ) { | 
| 923 |  |  |  |  |  |  |  | 
| 924 |  |  |  |  |  |  | push @x, ( | 
| 925 |  |  |  |  |  |  | $f->{title} . " has secret messages encoded in it with numerology", | 
| 926 |  |  |  |  |  |  | $f->{title} . " is satanic", | 
| 927 |  |  |  |  |  |  | sub { | 
| 928 | 199 |  |  | 199 |  | 645 | my $g = shady_group( $redstring ); | 
| 929 | 199 | 100 |  |  |  | 576 | my $has = splural( $redstring->{shady_group} ) ? 'have' : 'has'; | 
| 930 | 199 |  |  |  |  | 1257 | $f->{author} . " $has ties to $g"; | 
| 931 |  |  |  |  |  |  | }, | 
| 932 |  |  |  |  |  |  | sub { | 
| 933 | 203 |  |  | 203 |  | 598 | my $b = bad_place( $redstring ); | 
| 934 | 203 |  |  |  |  | 1159 | $f->{author} . " got taken to $b for questioning"; | 
| 935 |  |  |  |  |  |  | }, | 
| 936 | 1996 |  |  |  |  | 12373 | ); | 
| 937 |  |  |  |  |  |  |  | 
| 938 | 1996 | 100 |  |  |  | 6986 | if ( my $p = $redstring->{random_place} ) { | 
| 939 |  |  |  |  |  |  | push @x, ( | 
| 940 |  |  |  |  |  |  | $f->{author} . " had a secret home in $p", | 
| 941 | 309 |  |  |  |  | 1427 | $f->{author} . " was secretly born in $p", | 
| 942 |  |  |  |  |  |  | ); | 
| 943 |  |  |  |  |  |  | } | 
| 944 |  |  |  |  |  |  | } | 
| 945 |  |  |  |  |  |  |  | 
| 946 | 21423 | 100 | 100 |  |  | 70862 | if ( my $animal = $redstring->{real_animal} // $redstring->{fake_animal} ) { | 
| 947 |  |  |  |  |  |  | push @x, ( | 
| 948 |  |  |  |  |  |  | "the $animal wasn't mentioned in the Bible", | 
| 949 |  |  |  |  |  |  | "the $animal was mentioned in the Satanic Verses", | 
| 950 |  |  |  |  |  |  | "the $animal looks kind of weird", | 
| 951 |  |  |  |  |  |  | "nobody has ever seen a $animal in real life", | 
| 952 |  |  |  |  |  |  | "the $animal obviously isn't native to this planet", | 
| 953 | 112 |  |  | 112 |  | 251 | sub { "${ \ shady_group($redstring) } sacrifice $animal${\'s'} to ${ \ dark_lord($redstring) }" }, | 
|  | 112 |  |  |  |  | 355 |  | 
|  | 112 |  |  |  |  | 287 |  | 
|  | 112 |  |  |  |  | 340 |  | 
| 954 | 1668 |  |  |  |  | 13331 | "the $animal looks bigger in real life", | 
| 955 |  |  |  |  |  |  | "the $animal makes a funny noise", | 
| 956 |  |  |  |  |  |  | "Alex Jones did a podcast about the $animal", | 
| 957 |  |  |  |  |  |  | ); | 
| 958 |  |  |  |  |  |  | } | 
| 959 |  |  |  |  |  |  |  | 
| 960 | 21423 | 100 |  |  |  | 44917 | if ( my $mc = $redstring->{mind_control_device} ) { | 
| 961 | 491 |  |  |  |  | 1366 | my $time = a_long_time(); | 
| 962 | 491 |  |  |  |  | 1071 | my $mcp = $redstring->{mind_control_device_plural}; | 
| 963 | 491 |  |  |  |  | 1074 | my $is = 'is'; | 
| 964 | 491 |  |  |  |  | 911 | my $has = 'has'; | 
| 965 | 491 |  |  |  |  | 1098 | my $was = 'was'; | 
| 966 | 491 | 100 |  |  |  | 1467 | if ($mcp) { | 
| 967 | 265 |  |  |  |  | 561 | $is = 'are'; | 
| 968 | 265 |  |  |  |  | 492 | $has = 'have'; | 
| 969 | 265 |  |  |  |  | 549 | $was = 'were'; | 
| 970 |  |  |  |  |  |  | } | 
| 971 |  |  |  |  |  |  | push @x, ( | 
| 972 |  |  |  |  |  |  | "everybody knows $mc $is real", | 
| 973 | 40 |  |  | 40 |  | 158 | sub { "$mc $has been researched by ${ \ shady_group($redstring) } $time" }, | 
|  | 40 |  |  |  |  | 114 |  | 
| 974 | 55 |  |  | 55 |  | 195 | sub { "$mc $was used to conceal ${ \ shady_group($redstring) } $time" }, | 
|  | 55 |  |  |  |  | 161 |  | 
| 975 | 47 |  |  | 47 |  | 162 | sub { "$mc $was used to infiltrate ${ \ shady_group($redstring) }" }, | 
|  | 47 |  |  |  |  | 113 |  | 
| 976 | 491 |  |  |  |  | 4535 | ); | 
| 977 |  |  |  |  |  |  | } | 
| 978 |  |  |  |  |  |  |  | 
| 979 | 21423 | 100 |  |  |  | 47629 | if ( my $ft = $redstring->{future_time} ) { | 
| 980 | 972 |  |  |  |  | 3565 | push @x, ( | 
| 981 |  |  |  |  |  |  | "some of the few people still alive $ft time-travelled back to tell us", | 
| 982 | 972 |  |  |  |  | 2337 | "the people still alive $ft sent us hidden messages in ${ \ fiction() }", | 
| 983 |  |  |  |  |  |  | "it will all become clear $ft", | 
| 984 |  |  |  |  |  |  | ); | 
| 985 |  |  |  |  |  |  | } | 
| 986 |  |  |  |  |  |  |  | 
| 987 | 21423 | 100 |  |  |  | 47517 | if ( my $d = $redstring->{disease} ) { | 
| 988 | 476 |  |  |  |  | 2797 | push @x, ( | 
| 989 |  |  |  |  |  |  | "patients with $d keep disappearing from hospitals", | 
| 990 |  |  |  |  |  |  | "patients with $d are being silenced by the government", | 
| 991 |  |  |  |  |  |  | "doctors working on $d are being killed", | 
| 992 |  |  |  |  |  |  | "$d probably isn't even a real disease", | 
| 993 |  |  |  |  |  |  | "nobody has ever died of $d", | 
| 994 |  |  |  |  |  |  | ); | 
| 995 |  |  |  |  |  |  | } | 
| 996 |  |  |  |  |  |  |  | 
| 997 | 21423 | 100 |  |  |  | 44718 | if ( my $f = $redstring->{food} ) { | 
| 998 | 266 |  |  |  |  | 1253 | push @x, ( | 
| 999 |  |  |  |  |  |  | "$f don't taste like they used to", | 
| 1000 |  |  |  |  |  |  | "$f smell funny", | 
| 1001 |  |  |  |  |  |  | "$f make me feel sick", | 
| 1002 |  |  |  |  |  |  | "I don't like $f", | 
| 1003 |  |  |  |  |  |  | ); | 
| 1004 |  |  |  |  |  |  | } | 
| 1005 |  |  |  |  |  |  |  | 
| 1006 | 21423 | 100 |  |  |  | 43625 | if ( my $chem = $redstring->{chemicals} ) { | 
| 1007 | 976 |  |  |  |  | 4242 | push @x, ( | 
| 1008 |  |  |  |  |  |  | "$chem isn't on the periodic table", | 
| 1009 |  |  |  |  |  |  | "$chem isn't real", | 
| 1010 |  |  |  |  |  |  | "$chem isn't natural", | 
| 1011 |  |  |  |  |  |  | "you'd have to be stupid to think $chem is real", | 
| 1012 |  |  |  |  |  |  | ); | 
| 1013 |  |  |  |  |  |  | } | 
| 1014 |  |  |  |  |  |  |  | 
| 1015 | 21423 | 100 |  |  |  | 46049 | if ( my $r = $redstring->{precious_resource} ) { | 
| 1016 | 3193 |  |  |  |  | 5752 | my ( $bad, $are, $r_are ); | 
| 1017 | 3193 | 100 |  |  |  | 8939 | $redstring->{shady_group}{name} or shady_group( $redstring ); | 
| 1018 | 3193 |  |  |  |  | 7124 | foreach ( qw/ antagonist protagonist shady_group / ) { | 
| 1019 | 9579 | 100 |  |  |  | 24577 | if ( $redstring->{$_}{name} ) { | 
| 1020 | 3193 |  |  |  |  | 6283 | $bad = $redstring->{$_}{name}; | 
| 1021 | 3193 | 100 |  |  |  | 8477 | $are = $redstring->{$_}{plural} ? 'are' : 'is'; | 
| 1022 | 3193 | 100 |  |  |  | 13522 | $r_are = ($r =~ /s$/) ? 'are' : 'is'; | 
| 1023 |  |  |  |  |  |  | } | 
| 1024 |  |  |  |  |  |  | } | 
| 1025 | 3193 |  |  |  |  | 23097 | push @x, ( | 
| 1026 |  |  |  |  |  |  | "the Wikipedia entry for $r keeps getting edited by $bad", | 
| 1027 |  |  |  |  |  |  | "$bad keeps buying $r secretly on the stock market", | 
| 1028 |  |  |  |  |  |  | "the global supply of $r is at an all time low", | 
| 1029 |  |  |  |  |  |  | "have you ever seen $r for real with your own eyes", | 
| 1030 |  |  |  |  |  |  | "$r $r_are so damn expensive", | 
| 1031 |  |  |  |  |  |  | "$r $r_are really rare", | 
| 1032 |  |  |  |  |  |  | "Alex Jones says $bad $are linked to $r", | 
| 1033 |  |  |  |  |  |  | ); | 
| 1034 |  |  |  |  |  |  | } | 
| 1035 |  |  |  |  |  |  |  | 
| 1036 | 21423 | 100 |  |  |  | 51751 | if ( my $topic = $redstring->{topic} ) { | 
| 1037 | 6925 |  |  |  |  | 13039 | my $topicname = $topic->{name}; | 
| 1038 | 6925 | 100 |  |  |  | 14822 | my $have      = $topic->{plural} ? 'have' : 'has'; | 
| 1039 | 6925 |  |  |  |  | 38727 | push @x, ( | 
| 1040 |  |  |  |  |  |  | "there's hidden clues in the Wikipedia page about $topicname", | 
| 1041 |  |  |  |  |  |  | "THEY let it slip during an edit war in a Wikipedia page about $topicname", | 
| 1042 |  |  |  |  |  |  | "Bible numerology has clues about $topicname", | 
| 1043 |  |  |  |  |  |  | "the Voynich manuscript has clues about $topicname", | 
| 1044 |  |  |  |  |  |  | "$topicname $have always been suspicious", | 
| 1045 |  |  |  |  |  |  | "$topicname $have connections to THEM", | 
| 1046 |  |  |  |  |  |  | "nobody really understands $topicname", | 
| 1047 |  |  |  |  |  |  | "all my posts about $topicname keep getting taken down by Tumblr", | 
| 1048 |  |  |  |  |  |  | ); | 
| 1049 |  |  |  |  |  |  | } | 
| 1050 |  |  |  |  |  |  |  | 
| 1051 | 21423 | 100 | 100 |  |  | 76130 | if ( my $p = $redstring->{random_place} // $redstring->{bad_place} ) { | 
| 1052 |  |  |  |  |  |  | my $bad = $redstring->{antagonist}{name} | 
| 1053 |  |  |  |  |  |  | // $redstring->{protagonist}{name} | 
| 1054 |  |  |  |  |  |  | // $redstring->{shady_group}{name} | 
| 1055 | 6346 |  | 33 |  |  | 41102 | // shady_group( $redstring ); | 
|  |  |  | 66 |  |  |  |  | 
|  |  |  | 66 |  |  |  |  | 
| 1056 | 6346 |  |  |  |  | 27144 | push @x, ( | 
| 1057 |  |  |  |  |  |  | "the Wikipedia entry for $p keeps getting edited by $bad", | 
| 1058 |  |  |  |  |  |  | # This has singular/plural problems - how to solve? | 
| 1059 |  |  |  |  |  |  | "$bad has ties to $p", | 
| 1060 |  |  |  |  |  |  | "$p probably isn't a real place anyway", | 
| 1061 |  |  |  |  |  |  | ); | 
| 1062 |  |  |  |  |  |  | } | 
| 1063 |  |  |  |  |  |  |  | 
| 1064 | 21423 |  |  |  |  | 47562 | for my $actor ( qw/ protagonists antagonists / ) { | 
| 1065 | 42846 | 100 |  |  |  | 111617 | next unless $redstring->{$actor}{name}; | 
| 1066 |  |  |  |  |  |  |  | 
| 1067 | 27798 |  | 66 |  |  | 76701 | my $name   = $redstring->{$actor}{shortname} // $redstring->{$actor}{name}; | 
| 1068 | 27798 | 100 |  |  |  | 62354 | my $have   = splural( $redstring->{$actor} ) ? 'have' : 'has'; | 
| 1069 | 27798 | 100 |  |  |  | 56569 | my $are    = splural( $redstring->{$actor} ) ? 'are'  : 'is'; | 
| 1070 | 27798 | 100 |  |  |  | 52049 | my $s      = splural( $redstring->{$actor} ) ? ''     : 's'; | 
| 1071 | 27798 | 100 |  |  |  | 53746 | my $ies    = splural( $redstring->{$actor} ) ? 'y'    : 'ies'; | 
| 1072 |  |  |  |  |  |  |  | 
| 1073 | 27798 |  |  |  |  | 105596 | ( my $fbname = $name ) =~ s/^the //i; | 
| 1074 | 27798 |  |  |  |  | 60107 | $fbname = _UCFIRST_ $fbname; | 
| 1075 |  |  |  |  |  |  |  | 
| 1076 | 27798 |  |  |  |  | 53649 | my $lies = lies(); | 
| 1077 |  |  |  |  |  |  |  | 
| 1078 | 27798 |  |  |  |  | 195749 | push @x, ( | 
| 1079 |  |  |  |  |  |  | "$name $have included it in their manifesto", | 
| 1080 |  |  |  |  |  |  | "$name $have been strangely quiet about it", | 
| 1081 |  |  |  |  |  |  | "$name $are always untrustworthy", | 
| 1082 |  |  |  |  |  |  | "$name $are controlling everything", | 
| 1083 |  |  |  |  |  |  | "if you Google for $name there's loads of info", | 
| 1084 |  |  |  |  |  |  | "the '$fbname Truth' Facebook page says so", | 
| 1085 |  |  |  |  |  |  | "the '$fbname Exposed' website says so", | 
| 1086 |  |  |  |  |  |  | "$name even admit$s it", | 
| 1087 |  |  |  |  |  |  | "$name den$ies it but that is $lies", | 
| 1088 |  |  |  |  |  |  | ); | 
| 1089 |  |  |  |  |  |  |  | 
| 1090 | 27798 | 100 | 100 |  |  | 107903 | if ( my $animal = $redstring->{real_animal} // $redstring->{fake_animal} ) { | 
| 1091 | 1815 |  |  |  |  | 5187 | push @x, "$name $have a picture of the $animal on their Wikipedia entry"; | 
| 1092 |  |  |  |  |  |  | } | 
| 1093 |  |  |  |  |  |  |  | 
| 1094 | 27798 | 100 |  |  |  | 64148 | if ( my $place  = $redstring->{random_place} ) { | 
| 1095 | 6115 |  |  |  |  | 16339 | push @x, "$name $have a secret base in $place"; | 
| 1096 |  |  |  |  |  |  | } | 
| 1097 |  |  |  |  |  |  |  | 
| 1098 | 27798 | 100 |  |  |  | 75865 | if ( my $topic = $redstring->{topic} ) { | 
| 1099 | 8804 |  |  |  |  | 14712 | my $topicname = $topic->{name}; | 
| 1100 | 8804 |  |  |  |  | 18451 | push @x, ( | 
| 1101 | 8804 | 100 |  |  |  | 59997 | "$name ${( $redstring->{$actor}{plural} ? \'keep' : \'keeps' )} editing the Wikipedia page about $topicname", | 
| 1102 |  |  |  |  |  |  | "$name $are known to have ties to $topicname", | 
| 1103 |  |  |  |  |  |  | "'$name' is almost an anagram of '$topicname'", | 
| 1104 |  |  |  |  |  |  | "'$name' is the Hebrew word for '$topicname'", | 
| 1105 |  |  |  |  |  |  | "'$name' is an anagram of '$topicname' (if you spell it wrong)", | 
| 1106 |  |  |  |  |  |  | ); | 
| 1107 |  |  |  |  |  |  | } | 
| 1108 |  |  |  |  |  |  | } | 
| 1109 |  |  |  |  |  |  |  | 
| 1110 | 21423 |  |  |  |  | 46821 | my @evidences = List::Util::uniq( map { _RANDOM_(@x) } 1..2 ); | 
|  | 42846 |  |  |  |  | 96375 |  | 
| 1111 |  |  |  |  |  |  |  | 
| 1112 | 21423 | 100 |  |  |  | 72075 | if ( @evidences == 2 ) { | 
|  |  | 50 |  |  |  |  |  | 
| 1113 | 20779 |  |  |  |  | 48770 | my ( $e1, $e2 ) = @evidences; | 
| 1114 |  |  |  |  |  |  | return _RANDOM_( | 
| 1115 |  |  |  |  |  |  | "You can tell this is the truth because $e1, and $e2.", | 
| 1116 |  |  |  |  |  |  | ( ( "I know because $e1, and $e2." ) x 6 ), | 
| 1117 |  |  |  |  |  |  | "You just need to connect the dots. " . _UCFIRST_( "$e1 and $e2." ), | 
| 1118 |  |  |  |  |  |  | "I used to be asleep like you, but then I saw the clues. " . _UCFIRST_( "$e1, and $e2. WAKE UP!" ), | 
| 1119 |  |  |  |  |  |  | "THEY HIDE THE TRUTH IN PLAIN SIGHT. " . _UCFIRST_( "$e1, and $e2." ), | 
| 1120 |  |  |  |  |  |  | "You won't believe how deep the rabbit hole goes. " . _UCFIRST_( "$e1, and $e2." ), | 
| 1121 | 1385 |  |  | 1385 |  | 5606 | sub { _UCFIRST_("$e1, and $e2. " . fatuous()) }, | 
| 1122 |  |  |  |  |  |  | sub { | 
| 1123 | 1311 |  |  | 1311 |  | 3687 | my $e3 = uc _RANDOM_(@x); | 
| 1124 | 1311 |  |  |  |  | 3445 | my $fatuous = fatuous(); | 
| 1125 | 1311 |  |  |  |  | 5826 | _UCFIRST_( "$e1, and $e2. $fatuous $e3!" ); | 
| 1126 |  |  |  |  |  |  | }, | 
| 1127 |  |  |  |  |  |  | sub { | 
| 1128 | 1400 |  |  | 1400 |  | 4197 | my $e3 = uc _RANDOM_(@x); | 
| 1129 | 1400 |  |  |  |  | 6568 | _UCFIRST_( "$e1, and $e2. They leave clues to mock us! $e3! MOCK! MOCK!" ); | 
| 1130 |  |  |  |  |  |  | }, | 
| 1131 |  |  |  |  |  |  | sub { | 
| 1132 | 1422 |  |  | 1422 |  | 3169 | my $t = {}; | 
| 1133 | 1422 |  |  |  |  | 5069 | theory($t); | 
| 1134 | 1422 |  |  |  |  | 7024 | _UCFIRST_( "$e1, and $e2. Isn't it obvious? Also: " . $t->{base_theory} ); | 
| 1135 |  |  |  |  |  |  | }, | 
| 1136 | 20779 |  |  |  |  | 102534 | ); | 
| 1137 |  |  |  |  |  |  | } | 
| 1138 |  |  |  |  |  |  | elsif ( @evidences == 1 ) { | 
| 1139 | 644 |  |  |  |  | 1550 | my ( $e1 ) = @evidences; | 
| 1140 | 644 |  |  |  |  | 2682 | return _RANDOM_( | 
| 1141 |  |  |  |  |  |  | "You can tell the truth because $e1.", | 
| 1142 |  |  |  |  |  |  | _UCFIRST_("$e1 and that reveals the truth."), | 
| 1143 |  |  |  |  |  |  | "The truth is obvious if you're not a sheep, $e1.", | 
| 1144 |  |  |  |  |  |  | ); | 
| 1145 |  |  |  |  |  |  | } | 
| 1146 |  |  |  |  |  |  |  | 
| 1147 | 0 |  |  |  |  | 0 | return _RANDOM_( | 
| 1148 |  |  |  |  |  |  | 'The truth is plain to see.', | 
| 1149 |  |  |  |  |  |  | "You're blind if you can't see the truth.", | 
| 1150 |  |  |  |  |  |  | "The truth is obvious if you're not a sheep.", | 
| 1151 |  |  |  |  |  |  | ); | 
| 1152 |  |  |  |  |  |  | } | 
| 1153 |  |  |  |  |  |  |  | 
| 1154 |  |  |  |  |  |  | sub hidden_truth { | 
| 1155 | 9599 |  | 100 | 9599 | 0 | 25091 | my $redstring = shift // {}; | 
| 1156 |  |  |  |  |  |  |  | 
| 1157 |  |  |  |  |  |  | my $truth = _RANDOM_( | 
| 1158 |  |  |  |  |  |  | sub { # wrap classics in a sub so they don't come up too often | 
| 1159 |  |  |  |  |  |  | _RANDOM_( | 
| 1160 |  |  |  |  |  |  | sub { | 
| 1161 | 16 |  |  |  |  | 89 | $redstring->{topic} = { name => 'geology', plural => 0 }; | 
| 1162 | 16 |  |  |  |  | 38 | 'the Earth is flat'; | 
| 1163 |  |  |  |  |  |  | }, | 
| 1164 |  |  |  |  |  |  | sub { | 
| 1165 | 6 |  |  |  |  | 28 | $redstring->{topic} = { name => 'Inner Space (1987)', plural => 0 }; | 
| 1166 | 6 |  |  |  |  | 18 | 'space is fake'; | 
| 1167 |  |  |  |  |  |  | }, | 
| 1168 |  |  |  |  |  |  | sub { | 
| 1169 | 12 |  |  |  |  | 55 | $redstring->{topic} = { name => 'theology', plural => 0 }; | 
| 1170 | 12 |  |  |  |  | 37 | 'God is real'; | 
| 1171 |  |  |  |  |  |  | }, | 
| 1172 |  |  |  |  |  |  | sub { | 
| 1173 | 10 |  |  |  |  | 45 | $redstring->{topic} = { name => 'Buddhism', plural => 0 }; | 
| 1174 | 10 |  |  |  |  | 28 | 'reincarnation is true'; | 
| 1175 |  |  |  |  |  |  | }, | 
| 1176 |  |  |  |  |  |  | sub { | 
| 1177 | 5 |  |  |  |  | 162 | $redstring->{topic} = { name => 'germs', plural => 1 }; | 
| 1178 | 5 |  |  |  |  | 21 | "germs aren't real"; | 
| 1179 |  |  |  |  |  |  | }, | 
| 1180 |  |  |  |  |  |  | sub { | 
| 1181 | 8 |  |  |  |  | 33 | $redstring->{topic} = { name => 'viruses', plural => 1 }; | 
| 1182 | 8 |  |  |  |  | 26 | "viruses aren't real"; | 
| 1183 |  |  |  |  |  |  | }, | 
| 1184 |  |  |  |  |  |  | sub { | 
| 1185 | 8 |  |  |  |  | 49 | $redstring->{topic} = { name => 'MKUltra', plural => 0 }; | 
| 1186 | 8 |  |  |  |  | 24 | "MKUltra is still happening"; | 
| 1187 |  |  |  |  |  |  | }, | 
| 1188 |  |  |  |  |  |  | sub { | 
| 1189 | 11 |  |  |  |  | 50 | $redstring->{topic} = { name => 'Jeffrey Epstein', plural => 0 }; | 
| 1190 | 11 |  |  |  |  | 32 | "Epstein didn't kill himself"; | 
| 1191 |  |  |  |  |  |  | }, | 
| 1192 |  |  |  |  |  |  | sub { | 
| 1193 | 8 |  |  |  |  | 39 | $redstring->{topic} = { name => "Sgt Pepper's Lonely Hearts Club Band", plural => 0 }; | 
| 1194 | 8 |  |  |  |  | 24 | "Paul McCartney died in a car crash in 1966"; | 
| 1195 |  |  |  |  |  |  | }, | 
| 1196 |  |  |  |  |  |  | sub { | 
| 1197 | 8 |  |  |  |  | 36 | $redstring->{topic} = { name => 'Stonehenge', plural => 0 }; | 
| 1198 | 8 |  | 100 |  |  | 48 | $redstring->{random_place} //= 'Somerset'; | 
| 1199 | 8 |  |  |  |  | 18 | "the aliens built Stonehenge"; | 
| 1200 |  |  |  |  |  |  | }, | 
| 1201 |  |  |  |  |  |  | sub { | 
| 1202 | 6 |  |  |  |  | 30 | $redstring->{topic} = { name => 'the Sphinx', plural => 0 }; | 
| 1203 | 6 |  | 100 |  |  | 32 | $redstring->{random_place} //= 'Egypt'; | 
| 1204 | 6 |  |  |  |  | 15 | "the aliens built the Pyramids"; | 
| 1205 |  |  |  |  |  |  | }, | 
| 1206 |  |  |  |  |  |  | sub { | 
| 1207 | 8 |  |  |  |  | 49 | $redstring->{topic} = { name => 'Loch Ness', plural => 0 }; | 
| 1208 | 8 |  | 100 |  |  | 56 | $redstring->{random_place} //= 'Scotland'; | 
| 1209 | 8 |  |  |  |  | 24 | "the Loch Ness monster is real"; | 
| 1210 |  |  |  |  |  |  | }, | 
| 1211 |  |  |  |  |  |  | sub { | 
| 1212 | 5 |  |  |  |  | 22 | $redstring->{topic} = { name => 'grain farming', plural => 0 }; | 
| 1213 | 5 |  | 100 |  |  | 28 | $redstring->{random_place} //= 'Alabama'; | 
| 1214 | 5 |  |  |  |  | 12 | "crop circles are caused by aliens"; | 
| 1215 |  |  |  |  |  |  | }, | 
| 1216 |  |  |  |  |  |  | sub { | 
| 1217 | 7 |  |  |  |  | 33 | $redstring->{topic} = { name => 'kidnapping', plural => 0 }; | 
| 1218 | 7 |  | 100 |  |  | 41 | $redstring->{random_place} //= 'Alabama'; | 
| 1219 | 7 |  |  |  |  | 21 | "aliens abduct people for probing"; | 
| 1220 |  |  |  |  |  |  | }, | 
| 1221 |  |  |  |  |  |  | sub { | 
| 1222 | 12 |  |  |  |  | 53 | $redstring->{topic} = { name => 'steal beams', plural => 1 }; | 
| 1223 | 12 |  | 100 |  |  | 68 | $redstring->{random_place} //= 'New York'; | 
| 1224 | 12 |  |  |  |  | 28 | "9/11 was an inside job"; | 
| 1225 |  |  |  |  |  |  | }, | 
| 1226 |  |  |  |  |  |  | sub { | 
| 1227 | 11 |  |  |  |  | 33 | my $badevent = _RANDOM_( | 
| 1228 |  |  |  |  |  |  | 'Columbine', | 
| 1229 |  |  |  |  |  |  | 'Sandy Hook', | 
| 1230 |  |  |  |  |  |  | 'the Boston Marathon Bombing', | 
| 1231 |  |  |  |  |  |  | 'Malaysia Airlines Flight 370', | 
| 1232 |  |  |  |  |  |  | 'the JFK assassination', | 
| 1233 |  |  |  |  |  |  | ); | 
| 1234 | 11 |  |  |  |  | 50 | $redstring->{topic} = { name => 'false flag operations', plural => 1 }; | 
| 1235 | 11 |  |  |  |  | 45 | "$badevent was orchestrated by the US government"; | 
| 1236 |  |  |  |  |  |  | }, | 
| 1237 |  |  |  |  |  |  | sub { | 
| 1238 | 16 |  |  |  |  | 86 | $redstring->{topic} = { name => 'glaciers', plural => 1 }; | 
| 1239 | 16 |  | 100 |  |  | 93 | $redstring->{random_place} //= 'Greenland'; | 
| 1240 | 16 |  |  |  |  | 42 | "global warming is a hoax"; | 
| 1241 |  |  |  |  |  |  | }, | 
| 1242 |  |  |  |  |  |  | sub { | 
| 1243 | 11 |  |  |  |  | 55 | $redstring->{topic} = { name => 'geology', plural => 0 }; | 
| 1244 | 11 |  |  |  |  | 33 | 'the US government knows exactly when Yellowstone will erupt'; | 
| 1245 |  |  |  |  |  |  | }, | 
| 1246 |  |  |  |  |  |  | sub { | 
| 1247 | 12 |  |  |  |  | 53 | $redstring->{topic} = { name => 'cloud seeding', plural => 0 }; | 
| 1248 | 12 |  |  |  |  | 67 | "the government controls the weather"; | 
| 1249 |  |  |  |  |  |  | }, | 
| 1250 |  |  |  |  |  |  | sub { | 
| 1251 | 8 |  |  |  |  | 39 | $redstring->{topic} = { name => 'Snapple', plural => 0 }; | 
| 1252 | 8 |  |  |  |  | 19 | "Snapple is owned by the KKK"; | 
| 1253 |  |  |  |  |  |  | }, | 
| 1254 |  |  |  |  |  |  | sub { | 
| 1255 | 16 |  |  |  |  | 52 | my $disease = disease( $redstring ); | 
| 1256 | 16 |  |  |  |  | 87 | $redstring->{topic} = { name => 'biological warfare', plural => 0 }; | 
| 1257 | 16 |  |  |  |  | 70 | "$disease was developed as a bioweapon"; | 
| 1258 |  |  |  |  |  |  | }, | 
| 1259 |  |  |  |  |  |  | sub { | 
| 1260 | 8 |  |  |  |  | 40 | $redstring->{topic} = { name => 'gas chambers', plural => 1 }; | 
| 1261 | 8 |  | 100 |  |  | 88 | $redstring->{random_place} //= 'Germany'; | 
| 1262 | 8 |  |  |  |  | 23 | "the holocaust never happened"; | 
| 1263 |  |  |  |  |  |  | }, | 
| 1264 |  |  |  |  |  |  | sub { | 
| 1265 | 7 |  |  |  |  | 38 | $redstring->{topic} = { name => 'fascism', plural => 0 }; | 
| 1266 | 7 |  | 100 |  |  | 37 | $redstring->{random_place} //= 'Australia'; | 
| 1267 | 7 |  |  |  |  | 19 | "Antifa International have been starting wildfires"; | 
| 1268 |  |  |  |  |  |  | }, | 
| 1269 |  |  |  |  |  |  | sub { | 
| 1270 | 7 |  |  |  |  | 35 | $redstring->{topic} = { name => 'phantom time', plural => 0 }; | 
| 1271 | 7 |  |  |  |  | 24 | "the years between 614 and 911 never happened"; | 
| 1272 |  |  |  |  |  |  | }, | 
| 1273 |  |  |  |  |  |  | sub { | 
| 1274 | 9 |  |  |  |  | 42 | $redstring->{topic} = { name => 'Nazis', plural => 1 }; | 
| 1275 | 9 |  |  |  |  | 31 | "there is a Nazi base on the moon"; | 
| 1276 |  |  |  |  |  |  | }, | 
| 1277 |  |  |  |  |  |  | sub { | 
| 1278 | 10 |  |  |  |  | 39 | $redstring->{topic} = { name => 'Nazis', plural => 1 }; | 
| 1279 | 10 |  |  |  |  | 31 | "there is a Nazi base in Antarctica"; | 
| 1280 |  |  |  |  |  |  | }, | 
| 1281 |  |  |  |  |  |  | sub { | 
| 1282 | 9 |  |  |  |  | 43 | $redstring->{topic} = { name => 'wrestling', plural => 0 }; | 
| 1283 | 9 |  |  |  |  | 25 | "all professional sports are scripted"; | 
| 1284 |  |  |  |  |  |  | }, | 
| 1285 |  |  |  |  |  |  | sub { | 
| 1286 | 7 |  |  |  |  | 30 | my $website = website( $redstring ); | 
| 1287 |  |  |  |  |  |  | my $spies   = _RANDOM_( | 
| 1288 |  |  |  |  |  |  | 'spies', | 
| 1289 |  |  |  |  |  |  | 'the CIA', | 
| 1290 |  |  |  |  |  |  | 'GCHQ', | 
| 1291 |  |  |  |  |  |  | 'the NSA', | 
| 1292 |  |  |  |  |  |  | 'the Kremlin', | 
| 1293 |  |  |  |  |  |  | 'Ipsos MORI', | 
| 1294 |  |  |  |  |  |  | sub { | 
| 1295 | 0 |  |  |  |  | 0 | my $g = shady_group( $redstring ); | 
| 1296 | 0 | 0 |  |  |  | 0 | $redstring->{shady_group}{plural} ? $g : "spies from $g"; | 
| 1297 |  |  |  |  |  |  | } | 
| 1298 | 7 |  |  |  |  | 39 | ); | 
| 1299 | 7 |  |  |  |  | 48 | $redstring->{topic} = { name => 'biscuits', plural => 1 }; | 
| 1300 | 7 |  |  |  |  | 31 | "$spies are using cookies to see everything you look at on $website"; | 
| 1301 |  |  |  |  |  |  | }, | 
| 1302 | 261 |  |  | 261 |  | 10374 | ); | 
| 1303 |  |  |  |  |  |  | }, | 
| 1304 |  |  |  |  |  |  | sub { | 
| 1305 | 240 |  |  | 240 |  | 985 | $redstring->{topic} = { name => 'the Mandela effect', plural => 0 }; | 
| 1306 | 240 |  |  |  |  | 641 | _RANDOM_( | 
| 1307 |  |  |  |  |  |  | 'Looney Tunes used to be Looney Toons', | 
| 1308 |  |  |  |  |  |  | 'the Berenstain Bears used to be spelled Berenstein', | 
| 1309 |  |  |  |  |  |  | 'Curious George used to have a tail', | 
| 1310 |  |  |  |  |  |  | 'Febreze used to have another E in it', | 
| 1311 |  |  |  |  |  |  | 'Froot Loops used to be Fruit Loops', | 
| 1312 |  |  |  |  |  |  | 'the Monopoly man is supposed to have a monocle', | 
| 1313 |  |  |  |  |  |  | 'Kitkat used to have a hyphen', | 
| 1314 |  |  |  |  |  |  | 'the Mona Lisa used to smile more', | 
| 1315 |  |  |  |  |  |  | 'C-3PO never used to have a silver leg', | 
| 1316 |  |  |  |  |  |  | 'Darth Vader said Luke I Am Your Father', | 
| 1317 |  |  |  |  |  |  | 'We Are the Champions used to say "of the world" at the end', | 
| 1318 |  |  |  |  |  |  | 'the USA used to have 52 states', | 
| 1319 |  |  |  |  |  |  | ); | 
| 1320 |  |  |  |  |  |  | }, | 
| 1321 |  |  |  |  |  |  | sub { | 
| 1322 | 231 |  |  | 231 |  | 945 | $redstring->{topic} = { name => 'the crusades', plural => 1 }; | 
| 1323 | 231 |  |  |  |  | 684 | my $subst = _RANDOM_( | 
| 1324 |  |  |  |  |  |  | 'TikTok', | 
| 1325 |  |  |  |  |  |  | 'Twitter', | 
| 1326 |  |  |  |  |  |  | 'the world wars', | 
| 1327 |  |  |  |  |  |  | 'intergalactic warfare', | 
| 1328 |  |  |  |  |  |  | 'the white genocide', | 
| 1329 |  |  |  |  |  |  | 'colonization', | 
| 1330 |  |  |  |  |  |  | 'robot wars', | 
| 1331 |  |  |  |  |  |  | ); | 
| 1332 | 231 |  |  |  |  | 774 | "the crusades never stopped, they were just replaced with $subst"; | 
| 1333 |  |  |  |  |  |  | }, | 
| 1334 |  |  |  |  |  |  | sub { | 
| 1335 | 270 |  |  | 270 |  | 930 | my $cryptids = cryptids( $redstring ); | 
| 1336 | 270 |  |  |  |  | 825 | "$cryptids are real"; | 
| 1337 |  |  |  |  |  |  | }, | 
| 1338 |  |  |  |  |  |  | sub { | 
| 1339 | 253 |  |  | 253 |  | 956 | my $cause   = disease_cause( $redstring ); | 
| 1340 | 253 |  |  |  |  | 751 | my $disease = disease( $redstring ); | 
| 1341 | 253 |  |  |  |  | 987 | $redstring->{topic} = { name => 'western medicine', plural => 0 }; | 
| 1342 | 253 |  |  |  |  | 904 | "$cause causes $disease"; | 
| 1343 |  |  |  |  |  |  | }, | 
| 1344 |  |  |  |  |  |  | sub { | 
| 1345 | 241 |  |  | 241 |  | 956 | my $cryptids = cryptids( $redstring ); | 
| 1346 | 241 |  |  |  |  | 629 | my $group    = shady_group( $redstring ); | 
| 1347 | 241 |  |  |  |  | 979 | "$group are $cryptids"; | 
| 1348 |  |  |  |  |  |  | }, | 
| 1349 |  |  |  |  |  |  | sub { | 
| 1350 | 237 |  |  | 237 |  | 826 | my $objects = objects( $redstring ); | 
| 1351 | 237 |  |  |  |  | 817 | "$objects are sentient"; | 
| 1352 |  |  |  |  |  |  | }, | 
| 1353 |  |  |  |  |  |  | sub { | 
| 1354 | 252 |  |  | 252 |  | 692 | my $celebrity = celebrity( $redstring ); | 
| 1355 | 252 |  |  |  |  | 730 | my $long_time = a_long_time( $redstring ); | 
| 1356 | 252 |  |  |  |  | 1043 | "$celebrity has been drinking the blood of infants $long_time to stay looking young"; | 
| 1357 |  |  |  |  |  |  | }, | 
| 1358 |  |  |  |  |  |  | sub { | 
| 1359 | 253 |  |  | 253 |  | 710 | my $celebrity = celebrity( $redstring ); | 
| 1360 | 253 |  |  |  |  | 831 | $redstring->{topic} = { name => 'cross-dressing', plural => 0 }; | 
| 1361 | 253 |  |  |  |  | 758 | $redstring->{celebrity}{female} = ! $redstring->{celebrity}{female}; | 
| 1362 | 253 |  |  |  |  | 792 | "$celebrity is transsexual"; | 
| 1363 |  |  |  |  |  |  | }, | 
| 1364 |  |  |  |  |  |  | sub { | 
| 1365 | 264 |  |  | 264 |  | 798 | my $celebrity = celebrity( $redstring ); | 
| 1366 |  |  |  |  |  |  | my $consequence = _RANDOM_( | 
| 1367 |  |  |  |  |  |  | sub { | 
| 1368 | 93 |  |  |  |  | 425 | $redstring->{topic} = { name => 'robotics', plural => 0 }; | 
| 1369 | 93 |  |  |  |  | 206 | 'replaced by a robot'; | 
| 1370 |  |  |  |  |  |  | }, | 
| 1371 |  |  |  |  |  |  | sub { | 
| 1372 | 96 |  |  |  |  | 385 | $redstring->{topic} = { name => 'impersonation', plural => 0 }; | 
| 1373 | 96 |  |  |  |  | 206 | 'replaced by a look-alike'; | 
| 1374 |  |  |  |  |  |  | }, | 
| 1375 |  |  |  |  |  |  | sub { | 
| 1376 | 75 |  |  |  |  | 327 | $redstring->{topic} = { name => 'blackmail', plural => 0 }; | 
| 1377 | 75 |  |  |  |  | 182 | 'blackmailed into silence'; | 
| 1378 |  |  |  |  |  |  | }, | 
| 1379 | 264 |  |  |  |  | 1754 | ); | 
| 1380 | 264 |  |  |  |  | 1982 | "$celebrity has been $consequence"; | 
| 1381 |  |  |  |  |  |  | }, | 
| 1382 |  |  |  |  |  |  | sub { | 
| 1383 | 249 |  |  | 249 |  | 943 | my $objects = objects( $redstring ); | 
| 1384 | 249 |  |  |  |  | 599 | my $group   = shady_group( $redstring ); | 
| 1385 | 249 |  |  |  |  | 1060 | "$objects were invented by $group"; | 
| 1386 |  |  |  |  |  |  | }, | 
| 1387 |  |  |  |  |  |  | sub { | 
| 1388 | 281 |  |  | 281 |  | 841 | my $resource = precious_resource( $redstring ); | 
| 1389 | 281 |  |  |  |  | 969 | "$resource is a source of free energy"; | 
| 1390 |  |  |  |  |  |  | }, | 
| 1391 |  |  |  |  |  |  | sub { | 
| 1392 | 252 |  |  | 252 |  | 805 | my $mythplace  = myth_place( $redstring ); | 
| 1393 | 252 |  |  |  |  | 747 | my $place      = random_place( $redstring ); | 
| 1394 | 252 |  |  |  |  | 918 | "$mythplace is in $place"; | 
| 1395 |  |  |  |  |  |  | }, | 
| 1396 |  |  |  |  |  |  | sub { | 
| 1397 | 258 |  |  | 258 |  | 784 | my $victim     = victim( $redstring ); | 
| 1398 | 258 |  |  |  |  | 815 | my $mythplace  = myth_place( $redstring ); | 
| 1399 | 258 |  |  |  |  | 1005 | "$victim discovered $mythplace and was killed to keep it a secret"; | 
| 1400 |  |  |  |  |  |  | }, | 
| 1401 |  |  |  |  |  |  | sub { | 
| 1402 | 225 |  |  | 225 |  | 640 | my $resource = precious_resource( $redstring ); | 
| 1403 | 225 |  |  |  |  | 706 | my $disease  = disease( $redstring ); | 
| 1404 | 225 |  |  |  |  | 838 | "$resource can cure $disease"; | 
| 1405 |  |  |  |  |  |  | }, | 
| 1406 |  |  |  |  |  |  | sub { | 
| 1407 | 220 |  |  | 220 |  | 667 | my $animal = real_animal( $redstring ); | 
| 1408 | 220 |  |  |  |  | 563 | my $group  = shady_group( $redstring ); | 
| 1409 | 220 |  |  |  |  | 999 | "the $animal is a fake animal, engineered by $group"; | 
| 1410 |  |  |  |  |  |  | }, | 
| 1411 |  |  |  |  |  |  | sub { | 
| 1412 | 252 |  |  | 252 |  | 822 | my $chemicals = chemicals( $redstring ); | 
| 1413 | 252 |  |  |  |  | 769 | my $animal    = real_animal( $redstring ); | 
| 1414 | 252 | 100 |  |  |  | 785 | my $s         = ($animal ne 'fish') ? 's' : ''; | 
| 1415 | 252 |  |  |  |  | 706 | my $attribute = attribute( $redstring ); | 
| 1416 | 252 |  |  |  |  | 1072 | "the $chemicals in the water is turning the $animal$s $attribute"; | 
| 1417 |  |  |  |  |  |  | }, | 
| 1418 |  |  |  |  |  |  | sub { | 
| 1419 | 240 |  |  | 240 |  | 796 | my $chemicals = chemicals( $redstring ); | 
| 1420 | 240 |  |  |  |  | 664 | my $food      = food( $redstring ); | 
| 1421 | 240 |  |  |  |  | 900 | "$food are full of $chemicals"; | 
| 1422 |  |  |  |  |  |  | }, | 
| 1423 |  |  |  |  |  |  | sub { | 
| 1424 | 254 |  |  | 254 |  | 684 | my $animal = real_animal( $redstring ); | 
| 1425 | 254 |  |  |  |  | 951 | "the $animal originally comes from another planet"; | 
| 1426 |  |  |  |  |  |  | }, | 
| 1427 |  |  |  |  |  |  | sub { | 
| 1428 | 264 |  |  | 264 |  | 752 | my $animal = real_animal( $redstring ); | 
| 1429 | 264 |  |  |  |  | 704 | my $group  = shady_group( $redstring ); | 
| 1430 | 264 |  |  |  |  | 603 | my $stupid = _RANDOM_( | 
| 1431 |  |  |  |  |  |  | 'people in costumes', | 
| 1432 |  |  |  |  |  |  | 'animatronics', | 
| 1433 |  |  |  |  |  |  | 'CGI', | 
| 1434 |  |  |  |  |  |  | 'highly coordinated swarms of bees', | 
| 1435 |  |  |  |  |  |  | 'holograms', | 
| 1436 |  |  |  |  |  |  | 'a mirage', | 
| 1437 |  |  |  |  |  |  | ); | 
| 1438 | 264 |  |  |  |  | 1204 | "the $animal is a fake animal and is just $stupid"; | 
| 1439 |  |  |  |  |  |  | }, | 
| 1440 |  |  |  |  |  |  | sub { | 
| 1441 | 253 |  |  | 253 |  | 765 | my $animal = fake_animal( $redstring ); | 
| 1442 | 253 |  |  |  |  | 888 | "the $animal is a real animal"; | 
| 1443 |  |  |  |  |  |  | }, | 
| 1444 |  |  |  |  |  |  | sub { | 
| 1445 | 268 |  |  | 268 |  | 883 | my $time = future_time( $redstring ); | 
| 1446 | 268 |  |  |  |  | 1085 | "the world will end $time"; | 
| 1447 |  |  |  |  |  |  | }, | 
| 1448 |  |  |  |  |  |  | sub { | 
| 1449 | 243 |  |  | 243 |  | 946 | my $time = future_time( $redstring ); | 
| 1450 | 243 |  |  |  |  | 918 | $redstring->{topic} = { name => 'comets', plural => 1 }; | 
| 1451 | 243 |  |  |  |  | 833 | "the comet will hit us $time"; | 
| 1452 |  |  |  |  |  |  | }, | 
| 1453 |  |  |  |  |  |  | sub { | 
| 1454 | 247 |  |  | 247 |  | 673 | my $place = random_place( $redstring ); | 
| 1455 | 247 |  |  |  |  | 864 | $redstring->{topic} = { name => 'flooding', plural => 1 }; | 
| 1456 | 247 |  |  |  |  | 911 | "$place was destroyed by floods"; | 
| 1457 |  |  |  |  |  |  | }, | 
| 1458 |  |  |  |  |  |  | sub { | 
| 1459 | 246 |  |  | 246 |  | 1037 | my $place = random_place( $redstring ); | 
| 1460 | 246 |  | 66 |  |  | 1183 | my $group = $redstring->{shady_group}{name} // shady_group( $redstring ); | 
| 1461 | 246 |  |  |  |  | 919 | $redstring->{topic} = { name => 'coup d\'etats', plural => 1 }; | 
| 1462 | 246 |  |  |  |  | 956 | "$place is ruled by $group"; | 
| 1463 |  |  |  |  |  |  | }, | 
| 1464 |  |  |  |  |  |  | sub { | 
| 1465 | 254 |  |  | 254 |  | 785 | my $time = future_time( $redstring ); | 
| 1466 | 254 |  |  |  |  | 1019 | $redstring->{topic} = { name => 'zombies', plural => 1 }; | 
| 1467 | 254 |  |  |  |  | 902 | "the zombie apocalypse will start $time"; | 
| 1468 |  |  |  |  |  |  | }, | 
| 1469 |  |  |  |  |  |  | sub { | 
| 1470 | 241 |  |  | 241 |  | 801 | my $time = future_time( $redstring ); | 
| 1471 | 241 |  |  |  |  | 806 | $redstring->{topic} = { name => 'Jesus', plural => 0 }; | 
| 1472 | 241 |  |  |  |  | 803 | "Jesus will return $time"; | 
| 1473 |  |  |  |  |  |  | }, | 
| 1474 |  |  |  |  |  |  | sub { | 
| 1475 | 241 |  |  | 241 |  | 808 | my $mc    = mind_control_device( $redstring ); | 
| 1476 | 241 |  | 66 |  |  | 1045 | my $group = $redstring->{shady_group}{name} // shady_group( $redstring ); | 
| 1477 | 241 |  |  |  |  | 1062 | "THEY ($group) are using $mc"; | 
| 1478 |  |  |  |  |  |  | }, | 
| 1479 |  |  |  |  |  |  | sub { | 
| 1480 | 243 |  |  | 243 |  | 660 | my $victim = victim( $redstring ); | 
| 1481 | 243 |  |  |  |  | 772 | my $place  = bad_place( $redstring ); | 
| 1482 | 243 |  |  |  |  | 857 | "$victim is alive and kept at $place"; | 
| 1483 |  |  |  |  |  |  | }, | 
| 1484 |  |  |  |  |  |  | sub { | 
| 1485 | 265 |  |  | 265 |  | 912 | my $artifact = artifact( $redstring ); | 
| 1486 | 265 |  |  |  |  | 662 | my $p = random_place( $redstring ); | 
| 1487 | 265 |  |  |  |  | 976 | "$artifact is in $p"; | 
| 1488 |  |  |  |  |  |  | }, | 
| 1489 |  |  |  |  |  |  | sub { | 
| 1490 | 254 |  |  | 254 |  | 703 | my $victim = victim( $redstring ); | 
| 1491 | 254 |  |  |  |  | 1017 | $redstring->{topic} = { name => 'the antichrist', plural => 0 }; | 
| 1492 | 254 |  |  |  |  | 850 | "$victim was the antichrist"; | 
| 1493 |  |  |  |  |  |  | }, | 
| 1494 |  |  |  |  |  |  | sub { | 
| 1495 | 280 |  |  | 280 |  | 790 | my $victim = victim( $redstring ); | 
| 1496 | 280 |  |  |  |  | 928 | "$victim was a time-traveller"; | 
| 1497 |  |  |  |  |  |  | }, | 
| 1498 |  |  |  |  |  |  | sub { | 
| 1499 | 253 |  |  | 253 |  | 791 | my $victim = victim( $redstring ); | 
| 1500 | 253 |  |  |  |  | 873 | "$victim was an inter-dimensional being"; | 
| 1501 |  |  |  |  |  |  | }, | 
| 1502 |  |  |  |  |  |  | sub { | 
| 1503 | 256 |  |  | 256 |  | 882 | my $chem = chemicals( $redstring ); | 
| 1504 | 256 |  |  |  |  | 613 | my $stupid = _RANDOM_( | 
| 1505 |  |  |  |  |  |  | 'water mixed with food-colouring', | 
| 1506 |  |  |  |  |  |  | 'water that they put in the microwave', | 
| 1507 |  |  |  |  |  |  | 'water that came from a goat\'s insides', | 
| 1508 |  |  |  |  |  |  | 'water that they used magic on', | 
| 1509 |  |  |  |  |  |  | 'made of fairy dust', | 
| 1510 |  |  |  |  |  |  | 'melted potato starch', | 
| 1511 |  |  |  |  |  |  | ); | 
| 1512 | 256 |  |  |  |  | 1018 | "$chem is really just $stupid"; | 
| 1513 |  |  |  |  |  |  | }, | 
| 1514 |  |  |  |  |  |  | sub { | 
| 1515 | 274 |  |  | 274 |  | 793 | my $fiction = fiction( $redstring ); | 
| 1516 | 274 |  |  |  |  | 907 | "$fiction is historically accurate"; | 
| 1517 |  |  |  |  |  |  | }, | 
| 1518 |  |  |  |  |  |  | sub { | 
| 1519 | 237 |  |  | 237 |  | 675 | my $fiction = fiction( $redstring ); | 
| 1520 | 237 |  | 66 |  |  | 914 | my $victim = $redstring->{victim} // victim( $redstring ); | 
| 1521 | 237 |  |  |  |  | 908 | "$fiction was really written by $victim"; | 
| 1522 |  |  |  |  |  |  | }, | 
| 1523 |  |  |  |  |  |  | sub { | 
| 1524 | 274 |  |  | 274 |  | 907 | my $p = random_place( $redstring ); | 
| 1525 | 274 |  |  |  |  | 687 | my $extinct = _RANDOM_( | 
| 1526 |  |  |  |  |  |  | 'dinosaur', | 
| 1527 |  |  |  |  |  |  | 'mammoth', | 
| 1528 |  |  |  |  |  |  | 'sabre-tooth tiger', | 
| 1529 |  |  |  |  |  |  | 'Tasmanian tiger', | 
| 1530 |  |  |  |  |  |  | 'pterodactyl', | 
| 1531 |  |  |  |  |  |  | ); | 
| 1532 | 274 |  | 66 |  |  | 1551 | $redstring->{real_animal} //= $extinct; | 
| 1533 | 274 |  |  |  |  | 1039 | "the $extinct is not extinct and there is a colony in $p"; | 
| 1534 |  |  |  |  |  |  | }, | 
| 1535 |  |  |  |  |  |  | sub { | 
| 1536 | 273 |  |  | 273 |  | 762 | my $group   = shady_group( $redstring ); | 
| 1537 | 273 |  |  |  |  | 1001 | my $invention = invention( $redstring ); | 
| 1538 | 273 | 100 |  |  |  | 933 | my $are = $redstring->{shady_group}{plural} ? 'are' : 'is'; | 
| 1539 | 273 | 100 |  |  |  | 611 | my $was = $redstring->{invention_plural} ? 'were' : 'was'; | 
| 1540 | 273 |  |  |  |  | 654 | my $invented = _RANDOM_( | 
| 1541 |  |  |  |  |  |  | 'invented', | 
| 1542 |  |  |  |  |  |  | 'cooked up', | 
| 1543 |  |  |  |  |  |  | 'fabricated', | 
| 1544 |  |  |  |  |  |  | ); | 
| 1545 | 273 |  |  |  |  | 1697 | _RANDOM_( | 
| 1546 |  |  |  |  |  |  | "$group $are behind $invention", | 
| 1547 |  |  |  |  |  |  | "$group $invented $invention", | 
| 1548 |  |  |  |  |  |  | "$invention $was $invented by $group", | 
| 1549 |  |  |  |  |  |  | ); | 
| 1550 |  |  |  |  |  |  | }, | 
| 1551 | 9599 |  |  |  |  | 354810 | ); | 
| 1552 |  |  |  |  |  |  |  | 
| 1553 | 9599 |  |  |  |  | 371735 | _MERGE_( $redstring, hidden_truth => $truth ); | 
| 1554 | 9599 |  |  |  |  | 25241 | return $truth; | 
| 1555 |  |  |  |  |  |  | } | 
| 1556 |  |  |  |  |  |  |  | 
| 1557 |  |  |  |  |  |  | sub theory { | 
| 1558 | 21423 |  | 100 | 21423 | 0 | 110999 | my $redstring = shift // {}; | 
| 1559 |  |  |  |  |  |  |  | 
| 1560 |  |  |  |  |  |  | my $theory = _RANDOM_( | 
| 1561 |  |  |  |  |  |  | sub { | 
| 1562 | 1478 |  |  | 1478 |  | 3447 | my $group = shady_group( $redstring ); | 
| 1563 | 1478 |  |  |  |  | 3425 | $redstring->{protagonists} = $redstring->{shady_group}; | 
| 1564 | 1478 | 100 |  |  |  | 3950 | my $is = $redstring->{protagonists}->{plural} ? 'are' : 'is'; | 
| 1565 |  |  |  |  |  |  |  | 
| 1566 | 1478 |  |  |  |  | 3775 | my $misinfo = misinformation( $redstring ); | 
| 1567 |  |  |  |  |  |  |  | 
| 1568 | 1478 |  |  |  |  | 3863 | my $truth = hidden_truth( $redstring ); | 
| 1569 |  |  |  |  |  |  |  | 
| 1570 | 1478 |  |  |  |  | 7798 | my $exclaim = _RANDOM_( | 
| 1571 |  |  |  |  |  |  | '', '', '', '', '', '', | 
| 1572 |  |  |  |  |  |  | " But the truth shall not be buried!", | 
| 1573 |  |  |  |  |  |  | " Don't let yourself be deceived!", | 
| 1574 |  |  |  |  |  |  | " Take the red pill!", | 
| 1575 |  |  |  |  |  |  | " Believing $misinfo is taking the blue pill!", | 
| 1576 |  |  |  |  |  |  | " Take the red pill - $truth!", | 
| 1577 |  |  |  |  |  |  | " Believing $misinfo is for blue-pilled sheeple!", | 
| 1578 |  |  |  |  |  |  | " Open your mind!", | 
| 1579 |  |  |  |  |  |  | ); | 
| 1580 |  |  |  |  |  |  |  | 
| 1581 | 1478 |  |  |  |  | 8129 | _UCFIRST_ "$group $is spreading the lie that $misinfo to distract the public from the truth that $truth.$exclaim"; | 
| 1582 |  |  |  |  |  |  | }, | 
| 1583 |  |  |  |  |  |  | sub { | 
| 1584 | 1493 |  |  | 1493 |  | 3878 | my $protagonists = shady_group( $redstring ); | 
| 1585 | 1493 |  |  |  |  | 3484 | $redstring->{protagonists} = $redstring->{shady_group}; | 
| 1586 |  |  |  |  |  |  |  | 
| 1587 | 1493 |  |  |  |  | 3217 | my $antagonists = shady_group( $redstring ); | 
| 1588 | 1493 |  |  |  |  | 3265 | $redstring->{antagonists} = $redstring->{shady_group}; | 
| 1589 |  |  |  |  |  |  |  | 
| 1590 | 1493 |  |  |  |  | 3686 | my $time = a_long_time( $redstring ); | 
| 1591 |  |  |  |  |  |  |  | 
| 1592 |  |  |  |  |  |  | my $war_reason = _RANDOM_( | 
| 1593 |  |  |  |  |  |  | 'Nobody knows why', | 
| 1594 |  |  |  |  |  |  | 'The reasons for this have been long forgotten', | 
| 1595 |  |  |  |  |  |  | sub { | 
| 1596 |  |  |  |  |  |  | my $consequence = _RANDOM_( | 
| 1597 |  |  |  |  |  |  | 'disappears', | 
| 1598 |  |  |  |  |  |  | 'is assassinated', | 
| 1599 |  |  |  |  |  |  | sub { | 
| 1600 | 76 |  |  |  |  | 246 | my $badplace = bad_place( $redstring ); | 
| 1601 | 76 |  |  |  |  | 257 | "is taken away to $badplace"; | 
| 1602 |  |  |  |  |  |  | }, | 
| 1603 |  |  |  |  |  |  | sub { | 
| 1604 | 75 |  |  |  |  | 257 | my $badplace = bad_place( $redstring ); | 
| 1605 | 75 |  |  |  |  | 257 | "has their mind wiped at $badplace"; | 
| 1606 |  |  |  |  |  |  | }, | 
| 1607 | 372 |  |  |  |  | 1721 | 'is given a blue pill', | 
| 1608 |  |  |  |  |  |  | ); | 
| 1609 | 372 |  |  |  |  | 1866 | "Everybody who finds out why $consequence"; | 
| 1610 |  |  |  |  |  |  | }, | 
| 1611 |  |  |  |  |  |  | sub { | 
| 1612 | 365 |  |  |  |  | 1079 | my $truth = hidden_truth(); | 
| 1613 | 365 |  | 66 |  |  | 1716 | my $pro   = $redstring->{protagonists}{shortname} // $protagonists; | 
| 1614 | 365 |  | 66 |  |  | 1431 | my $ant   = $redstring->{antagonists}{shortname} // $antagonists; | 
| 1615 | 365 | 100 |  |  |  | 1005 | my $want = splural( $redstring->{protagonists} ) ? 'want' : 'wants'; | 
| 1616 | 365 |  |  |  |  | 1949 | _UCFIRST_ "$pro $want to expose the truth that $truth and $ant will do whatever they can to stop them"; | 
| 1617 |  |  |  |  |  |  | }, | 
| 1618 | 1493 |  |  |  |  | 7906 | ); | 
| 1619 |  |  |  |  |  |  |  | 
| 1620 | 1493 |  |  |  |  | 13362 | _UCFIRST_ "$protagonists and $antagonists have been in a secret war with each other $time. $war_reason." | 
| 1621 |  |  |  |  |  |  | }, | 
| 1622 |  |  |  |  |  |  | sub { | 
| 1623 | 1522 |  |  | 1522 |  | 4017 | my $group = shady_group( $redstring ); | 
| 1624 | 1522 |  |  |  |  | 3641 | $redstring->{protagonists} = $redstring->{shady_group}; | 
| 1625 |  |  |  |  |  |  |  | 
| 1626 | 1522 |  |  |  |  | 3867 | my $victim = victim( $redstring ); | 
| 1627 |  |  |  |  |  |  |  | 
| 1628 | 1522 |  |  |  |  | 3545 | my $truth = hidden_truth( $redstring ); | 
| 1629 |  |  |  |  |  |  |  | 
| 1630 |  |  |  |  |  |  | my $explanation = _UCFIRST_ _RANDOM_( | 
| 1631 |  |  |  |  |  |  | sub { | 
| 1632 | 227 |  |  |  |  | 616 | my $group2 = shady_group( $redstring ); | 
| 1633 | 227 |  |  |  |  | 543 | $redstring->{antagonists} = $redstring->{shady_group}; | 
| 1634 |  |  |  |  |  |  |  | 
| 1635 | 227 |  |  |  |  | 989 | "$victim learnt the truth from $group2"; | 
| 1636 |  |  |  |  |  |  | }, | 
| 1637 | 1522 |  |  |  |  | 11917 | "Nobody knows how $victim found out", | 
| 1638 |  |  |  |  |  |  | "$victim found out because they were the source of all knowledge", | 
| 1639 |  |  |  |  |  |  | "$victim found out using time travel", | 
| 1640 |  |  |  |  |  |  | "$victim found out using mind reading", | 
| 1641 |  |  |  |  |  |  | "$victim took the red pill", | 
| 1642 |  |  |  |  |  |  | ); | 
| 1643 |  |  |  |  |  |  |  | 
| 1644 | 1522 |  |  |  |  | 9689 | _UCFIRST_ "$group killed $victim to hide the truth that $truth. $explanation."; | 
| 1645 |  |  |  |  |  |  | }, | 
| 1646 |  |  |  |  |  |  | sub { | 
| 1647 | 1535 |  |  | 1535 |  | 3996 | my $truth = hidden_truth( $redstring ); | 
| 1648 |  |  |  |  |  |  |  | 
| 1649 |  |  |  |  |  |  | my $sheeple = _RANDOM_( | 
| 1650 |  |  |  |  |  |  | 'people are sheeple', | 
| 1651 |  |  |  |  |  |  | 'they refuse to see the truth', | 
| 1652 |  |  |  |  |  |  | 'the mass media refuse to report it', | 
| 1653 |  |  |  |  |  |  | sub { | 
| 1654 | 266 |  |  |  |  | 772 | my $group = shady_group( $redstring ); | 
| 1655 | 266 |  |  |  |  | 760 | $redstring->{protagonists} = $redstring->{shady_group}; | 
| 1656 | 266 | 100 |  |  |  | 787 | my $is = $redstring->{protagonists}->{plural} ? 'are' : 'is'; | 
| 1657 | 266 |  |  |  |  | 820 | my $mc = mind_control_device( $redstring ); | 
| 1658 | 266 |  |  |  |  | 1164 | "$group $is controlling people's minds with $mc"; | 
| 1659 |  |  |  |  |  |  | }, | 
| 1660 |  |  |  |  |  |  | sub { | 
| 1661 | 259 |  |  |  |  | 654 | my $group = shady_group( $redstring ); | 
| 1662 | 259 |  |  |  |  | 624 | $redstring->{protagonists} = $redstring->{shady_group}; | 
| 1663 | 259 | 100 |  |  |  | 870 | my $have = $redstring->{protagonists}->{plural} ? 'have' : 'has'; | 
| 1664 | 259 |  |  |  |  | 787 | my $long_time = a_long_time( $redstring ); | 
| 1665 | 259 |  |  |  |  | 1199 | "$group $have been hiding it $long_time"; | 
| 1666 |  |  |  |  |  |  | }, | 
| 1667 |  |  |  |  |  |  | sub { | 
| 1668 | 238 |  |  |  |  | 713 | my $group = shady_group( $redstring ); | 
| 1669 | 238 |  |  |  |  | 760 | $redstring->{protagonists} = $redstring->{shady_group}; | 
| 1670 | 238 | 100 |  |  |  | 847 | my $is = $redstring->{protagonists}->{plural} ? 'are' : 'is'; | 
| 1671 | 238 |  |  |  |  | 790 | my $medium = _RANDOM_( | 
| 1672 |  |  |  |  |  |  | 'the Internet', | 
| 1673 |  |  |  |  |  |  | 'Twitter', | 
| 1674 |  |  |  |  |  |  | 'Facebook', | 
| 1675 |  |  |  |  |  |  | 'Instagram', | 
| 1676 |  |  |  |  |  |  | 'the mass media', | 
| 1677 |  |  |  |  |  |  | 'the TV news', | 
| 1678 |  |  |  |  |  |  | 'Tiktok', | 
| 1679 |  |  |  |  |  |  | 'both Tiktok and Instagram', | 
| 1680 |  |  |  |  |  |  | ); | 
| 1681 | 238 |  |  |  |  | 996 | "$group $is censoring $medium"; | 
| 1682 |  |  |  |  |  |  | }, | 
| 1683 | 1535 |  |  |  |  | 10448 | ); | 
| 1684 |  |  |  |  |  |  |  | 
| 1685 | 1535 |  |  |  |  | 18291 | _UCFIRST_ _RANDOM_( | 
| 1686 |  |  |  |  |  |  | "$truth but nobody knows because $sheeple.", | 
| 1687 |  |  |  |  |  |  | "$truth but nobody believes me because $sheeple.", | 
| 1688 |  |  |  |  |  |  | "$truth but everybody ignores it because $sheeple.", | 
| 1689 |  |  |  |  |  |  | "$truth but people are blind because $sheeple.", | 
| 1690 |  |  |  |  |  |  | ); | 
| 1691 |  |  |  |  |  |  | }, | 
| 1692 |  |  |  |  |  |  | sub { | 
| 1693 | 1575 |  |  | 1575 |  | 4687 | my $fiction = fiction( $redstring ); | 
| 1694 | 1575 |  |  |  |  | 4070 | my $truth = hidden_truth( $redstring ); | 
| 1695 |  |  |  |  |  |  |  | 
| 1696 |  |  |  |  |  |  | _UCFIRST_ _RANDOM_( | 
| 1697 |  |  |  |  |  |  | "$fiction has a hidden message that $truth.", | 
| 1698 |  |  |  |  |  |  | "$fiction is just an allegory which shows that $truth.", | 
| 1699 |  |  |  |  |  |  | sub { | 
| 1700 | 534 |  |  |  |  | 1315 | my $group = shady_group( $redstring ); | 
| 1701 | 534 |  | 66 |  |  | 3114 | $redstring->{protagonists} //= $redstring->{shady_group}; | 
| 1702 | 534 |  |  |  |  | 2842 | "$fiction was analysed with a computer by $group and it revealed $truth.", | 
| 1703 |  |  |  |  |  |  | }, | 
| 1704 | 1575 |  |  |  |  | 11878 | ); | 
| 1705 |  |  |  |  |  |  | }, | 
| 1706 |  |  |  |  |  |  | sub { | 
| 1707 | 1558 |  |  | 1558 |  | 4121 | my $group = shady_group( $redstring ); | 
| 1708 | 1558 |  |  |  |  | 3869 | $redstring->{protagonists} = $redstring->{shady_group}; | 
| 1709 | 1558 | 100 |  |  |  | 4129 | my $are = $redstring->{protagonists}->{plural} ? 'are' : 'is'; | 
| 1710 |  |  |  |  |  |  |  | 
| 1711 | 1558 |  |  |  |  | 4189 | my $place    = random_place( $redstring ); | 
| 1712 | 1558 |  |  |  |  | 4076 | my $darklord = dark_lord( $redstring ); | 
| 1713 |  |  |  |  |  |  |  | 
| 1714 |  |  |  |  |  |  | my $getting_kids = _RANDOM_( | 
| 1715 |  |  |  |  |  |  | 'abducting orphan children', | 
| 1716 |  |  |  |  |  |  | 'buying child slaves', | 
| 1717 |  |  |  |  |  |  | 'cloning babies', | 
| 1718 |  |  |  |  |  |  | 'growing babies in test tubes', | 
| 1719 |  |  |  |  |  |  | 'breeding babies', | 
| 1720 |  |  |  |  |  |  | 'buying kids from poor families', | 
| 1721 |  |  |  |  |  |  | 'stealing babies', | 
| 1722 |  |  |  |  |  |  | sub { | 
| 1723 | 174 |  | 50 |  |  | 1336 | $redstring->{topic} //= { name => 'adoption', plural => 0 }; | 
| 1724 | 174 |  |  |  |  | 395 | 'adopting babies'; | 
| 1725 |  |  |  |  |  |  | }, | 
| 1726 |  |  |  |  |  |  | sub { | 
| 1727 | 176 |  | 50 |  |  | 1239 | $redstring->{topic} //= { name => 'adoption', plural => 0 }; | 
| 1728 | 176 |  |  |  |  | 386 | 'adopting kids'; | 
| 1729 |  |  |  |  |  |  | }, | 
| 1730 | 1558 |  |  |  |  | 7087 | ); | 
| 1731 |  |  |  |  |  |  |  | 
| 1732 | 1558 |  |  |  |  | 6821 | my $sacrifice = _RANDOM_( | 
| 1733 |  |  |  |  |  |  | 'sacrifice them', | 
| 1734 |  |  |  |  |  |  | 'ritually sacrifice them', | 
| 1735 |  |  |  |  |  |  | 'offer them', | 
| 1736 |  |  |  |  |  |  | 'offer them as a blood sacrifice', | 
| 1737 |  |  |  |  |  |  | 'offer them as brides', | 
| 1738 |  |  |  |  |  |  | 'offer them as sex slaves', | 
| 1739 |  |  |  |  |  |  | 'feed them', | 
| 1740 |  |  |  |  |  |  | 'sell them', | 
| 1741 |  |  |  |  |  |  | 'mass sacrifice them', | 
| 1742 |  |  |  |  |  |  | ); | 
| 1743 |  |  |  |  |  |  |  | 
| 1744 | 1558 |  |  |  |  | 8568 | _UCFIRST_ "$group $are $getting_kids in $place to $sacrifice to $darklord."; | 
| 1745 |  |  |  |  |  |  | }, | 
| 1746 |  |  |  |  |  |  | sub { | 
| 1747 | 1474 |  |  | 1474 |  | 3897 | my $group = shady_group( $redstring ); | 
| 1748 | 1474 |  |  |  |  | 3242 | $redstring->{protagonists} = $redstring->{shady_group}; | 
| 1749 | 1474 | 100 |  |  |  | 4458 | my $have = $redstring->{protagonists}->{plural} ? 'have' : 'has'; | 
| 1750 | 1474 | 100 |  |  |  | 3354 | my $are  = $redstring->{protagonists}->{plural} ? 'are'  : 'is'; | 
| 1751 |  |  |  |  |  |  |  | 
| 1752 | 1474 |  |  |  |  | 3515 | my $resource = precious_resource_with_quantity( $redstring ); | 
| 1753 |  |  |  |  |  |  |  | 
| 1754 | 1474 |  |  |  |  | 10286 | _UCFIRST_ _RANDOM_( | 
| 1755 |  |  |  |  |  |  | "$group $have $resource.", | 
| 1756 |  |  |  |  |  |  | "$group $are trying to obtain $resource.", | 
| 1757 |  |  |  |  |  |  | "$group $are in possession of $resource.", | 
| 1758 |  |  |  |  |  |  | "$group $have taken a delivery of $resource.", | 
| 1759 |  |  |  |  |  |  | ); | 
| 1760 |  |  |  |  |  |  | }, | 
| 1761 |  |  |  |  |  |  | sub { | 
| 1762 | 1543 |  |  | 1543 |  | 3987 | my $group = shady_group( $redstring ); | 
| 1763 | 1543 |  |  |  |  | 3470 | $redstring->{protagonists} = $redstring->{shady_group}; | 
| 1764 | 1543 | 100 |  |  |  | 4333 | my $are  = $redstring->{protagonists}->{plural} ? 'are'  : 'is'; | 
| 1765 |  |  |  |  |  |  |  | 
| 1766 | 1543 |  |  |  |  | 4031 | my $project = shady_project( $redstring ); | 
| 1767 |  |  |  |  |  |  |  | 
| 1768 |  |  |  |  |  |  | _UCFIRST_ _RANDOM_( | 
| 1769 |  |  |  |  |  |  | "$group $are running $project.", | 
| 1770 |  |  |  |  |  |  | "$group $are in charge of $project.", | 
| 1771 |  |  |  |  |  |  | "$group $are working against $project.", | 
| 1772 |  |  |  |  |  |  | sub { | 
| 1773 | 383 |  |  |  |  | 1208 | my $auth = authority( $redstring ); | 
| 1774 | 383 |  |  |  |  | 1834 | "$group $are investigating $project. They will soon have enough evidence to go to $auth.", | 
| 1775 |  |  |  |  |  |  | }, | 
| 1776 | 1543 |  |  |  |  | 11838 | ); | 
| 1777 |  |  |  |  |  |  | }, | 
| 1778 |  |  |  |  |  |  | sub { | 
| 1779 | 1535 |  |  | 1535 |  | 3747 | my $group = shady_group( $redstring ); | 
| 1780 | 1535 |  |  |  |  | 3397 | $redstring->{protagonists} = $redstring->{shady_group}; | 
| 1781 |  |  |  |  |  |  |  | 
| 1782 | 1535 |  |  |  |  | 4372 | my $physicist = physicist( $redstring ); | 
| 1783 |  |  |  |  |  |  |  | 
| 1784 |  |  |  |  |  |  | my $fact = _RANDOM_( | 
| 1785 |  |  |  |  |  |  | sub { | 
| 1786 | 92 |  |  |  |  | 343 | $redstring->{topic} = { name => 'bathroom scales', plural => 1 }; | 
| 1787 | 92 |  |  |  |  | 192 | 'electrons have more mass than protons'; | 
| 1788 |  |  |  |  |  |  | }, | 
| 1789 |  |  |  |  |  |  | sub { | 
| 1790 | 91 |  |  |  |  | 343 | $redstring->{topic} = { name => 'weighing scales', plural => 1 }; | 
| 1791 | 91 |  |  |  |  | 227 | "protons don't have mass"; | 
| 1792 |  |  |  |  |  |  | }, | 
| 1793 |  |  |  |  |  |  | sub { | 
| 1794 | 113 |  |  |  |  | 258 | my $things = _RANDOM_( 'electrons', 'protons' ); | 
| 1795 | 113 |  |  |  |  | 403 | $redstring->{topic} = { name => $things, plural => 1 }; | 
| 1796 | 113 |  |  |  |  | 409 | "$things are not real particles, they are just the terminal lines of a dielectric pulse"; | 
| 1797 |  |  |  |  |  |  | }, | 
| 1798 |  |  |  |  |  |  | sub { | 
| 1799 | 121 |  |  |  |  | 467 | $redstring->{topic} = { name => 'water', plural => 0 }; | 
| 1800 | 121 |  |  |  |  | 278 | 'water is its own element'; | 
| 1801 |  |  |  |  |  |  | }, | 
| 1802 |  |  |  |  |  |  | sub { | 
| 1803 | 85 |  |  |  |  | 328 | $redstring->{topic} = { name => 'geocentrism', plural => 0 }; | 
| 1804 | 85 |  |  |  |  | 210 | 'the sun goes round the Earth'; | 
| 1805 |  |  |  |  |  |  | }, | 
| 1806 |  |  |  |  |  |  | sub { | 
| 1807 | 87 |  |  |  |  | 343 | $redstring->{topic} = { name => 'the moon', plural => 0 }; | 
| 1808 | 87 |  |  |  |  | 178 | 'the moon is a hologram'; | 
| 1809 |  |  |  |  |  |  | }, | 
| 1810 |  |  |  |  |  |  | sub { | 
| 1811 | 101 |  |  |  |  | 407 | $redstring->{topic} = { name => 'camembert', plural => 0 }; | 
| 1812 | 101 |  |  |  |  | 208 | 'the moon is made of cheese'; | 
| 1813 |  |  |  |  |  |  | }, | 
| 1814 |  |  |  |  |  |  | sub { | 
| 1815 | 104 |  |  |  |  | 391 | $redstring->{topic} = { name => 'the man in the moon', plural => 0 }; | 
| 1816 | 104 |  |  |  |  | 250 | 'the man in the moon is a real man'; | 
| 1817 |  |  |  |  |  |  | }, | 
| 1818 |  |  |  |  |  |  | sub { | 
| 1819 | 103 |  |  |  |  | 385 | my $chem = chemicals( $redstring ); | 
| 1820 | 103 |  |  |  |  | 374 | $redstring->{topic} = { name => 'the periodic table', plural => 0 }; | 
| 1821 | 103 |  |  |  |  | 373 | "element 119 is $chem"; | 
| 1822 |  |  |  |  |  |  | }, | 
| 1823 |  |  |  |  |  |  | sub { | 
| 1824 | 118 |  |  |  |  | 446 | $redstring->{topic} = { name => 'air', plural => 0 }; | 
| 1825 | 118 |  |  |  |  | 243 | "air isn't real"; | 
| 1826 |  |  |  |  |  |  | }, | 
| 1827 |  |  |  |  |  |  | sub { | 
| 1828 | 97 |  |  |  |  | 346 | $redstring->{topic} = { name => 'vacuum cleaners', plural => 0 }; | 
| 1829 | 97 |  |  |  |  | 214 | "space isn't a vacuum because then it would suck all the air"; | 
| 1830 |  |  |  |  |  |  | }, | 
| 1831 |  |  |  |  |  |  | sub { | 
| 1832 | 107 |  |  |  |  | 391 | $redstring->{topic} = { name => 'the firmament', plural => 0 }; | 
| 1833 | 107 |  |  |  |  | 245 | "there is a dome over the flat Earth"; | 
| 1834 |  |  |  |  |  |  | }, | 
| 1835 |  |  |  |  |  |  | sub { | 
| 1836 | 113 |  |  |  |  | 399 | $redstring->{topic} = { name => 'Satan', plural => 0 }; | 
| 1837 | 113 |  |  |  |  | 238 | 'the axis of evil in the cosmic microwave background was put there by Satan'; | 
| 1838 |  |  |  |  |  |  | }, | 
| 1839 |  |  |  |  |  |  | sub { | 
| 1840 | 93 |  |  |  |  | 343 | $redstring->{topic} = { name => 'the zodiac', plural => 0 }; | 
| 1841 | 93 |  |  |  |  | 217 | 'astrology has been scientifically verified'; | 
| 1842 |  |  |  |  |  |  | }, | 
| 1843 |  |  |  |  |  |  | sub { | 
| 1844 | 110 |  |  |  |  | 460 | $redstring->{topic} = { name => 'the year of the dragon', plural => 0 }; | 
| 1845 | 110 |  |  |  |  | 267 | 'the Chinese zodiac can predict the future'; | 
| 1846 |  |  |  |  |  |  | }, | 
| 1847 | 1535 |  |  |  |  | 21567 | ); | 
| 1848 |  |  |  |  |  |  |  | 
| 1849 | 1535 |  |  |  |  | 24981 | my $solution = _UCFIRST_ _RANDOM_( | 
| 1850 |  |  |  |  |  |  | "They paid $group to kill him.", | 
| 1851 |  |  |  |  |  |  | "$group helped cover up the truth.", | 
| 1852 |  |  |  |  |  |  | "$group threatened to kill him to keep him quiet.", | 
| 1853 |  |  |  |  |  |  | "He was a member of $group so they knew he would keep quiet.", | 
| 1854 |  |  |  |  |  |  | "$group arranged a convenient \"accident\".", | 
| 1855 |  |  |  |  |  |  | ); | 
| 1856 |  |  |  |  |  |  |  | 
| 1857 | 1535 |  |  |  |  | 4411 | my $destruction = _RANDOM_( | 
| 1858 |  |  |  |  |  |  | "all of modern physics", | 
| 1859 |  |  |  |  |  |  | 'our understanding of the universe', | 
| 1860 |  |  |  |  |  |  | "the Big Bang 'theory'", | 
| 1861 |  |  |  |  |  |  | "Einstein's theory of relativity", | 
| 1862 |  |  |  |  |  |  | ); | 
| 1863 |  |  |  |  |  |  |  | 
| 1864 | 1535 |  |  |  |  | 7197 | _UCFIRST_ "$physicist discovered that $fact but the scientific establishment is suppressing it because it would destroy $destruction. $solution"; | 
| 1865 |  |  |  |  |  |  | }, | 
| 1866 |  |  |  |  |  |  | sub { | 
| 1867 | 1510 |  |  | 1510 |  | 3848 | my $group = shady_group( $redstring ); | 
| 1868 | 1510 |  |  |  |  | 4183 | $redstring->{protagonists} = $redstring->{shady_group}; | 
| 1869 |  |  |  |  |  |  |  | 
| 1870 | 1510 |  |  |  |  | 4039 | my $biologist = biologist( $redstring ); | 
| 1871 |  |  |  |  |  |  |  | 
| 1872 |  |  |  |  |  |  | my $fact = _RANDOM_( | 
| 1873 |  |  |  |  |  |  | sub { | 
| 1874 | 130 |  |  |  |  | 515 | $redstring->{topic} = { name => 'pandas', plural => 1 }; | 
| 1875 | 130 |  |  |  |  | 303 | 'pandas are really just fat raccoons'; | 
| 1876 |  |  |  |  |  |  | }, | 
| 1877 |  |  |  |  |  |  | sub { | 
| 1878 | 131 |  |  |  |  | 539 | $redstring->{topic} = { name => 'spaghetti', plural => 1 }; | 
| 1879 | 131 |  |  |  |  | 327 | "spaghetti is a type of worm"; | 
| 1880 |  |  |  |  |  |  | }, | 
| 1881 |  |  |  |  |  |  | sub { | 
| 1882 | 135 |  | 50 |  |  | 1054 | $redstring->{celebrity} //= { name => 'Louis Armstrong', female => 0 }; | 
| 1883 | 135 |  |  |  |  | 392 | $redstring->{topic} = { name => 'snakes', plural => 1 }; | 
| 1884 | 135 |  |  |  |  | 269 | "snakes like jazz music"; | 
| 1885 |  |  |  |  |  |  | }, | 
| 1886 |  |  |  |  |  |  | sub { | 
| 1887 | 132 |  | 50 |  |  | 772 | $redstring->{real_place} //= 'Antarctica'; | 
| 1888 | 132 |  |  |  |  | 463 | $redstring->{topic} = { name => 'penguins', plural => 1 }; | 
| 1889 | 132 |  |  |  |  | 308 | "penguins can fly but they get nervous when people are watching"; | 
| 1890 |  |  |  |  |  |  | }, | 
| 1891 |  |  |  |  |  |  | sub { | 
| 1892 | 148 |  |  |  |  | 568 | $redstring->{topic} = { name => 'DNA', plural => 0 }; | 
| 1893 | 148 |  |  |  |  | 349 | "the 10 commandments are encoded in human DNA"; | 
| 1894 |  |  |  |  |  |  | }, | 
| 1895 |  |  |  |  |  |  | sub { | 
| 1896 | 155 |  |  |  |  | 609 | $redstring->{topic} = { name => 'essential oils', plural => 1 }; | 
| 1897 | 155 |  |  |  |  | 374 | "essential oils cure all diseases"; | 
| 1898 |  |  |  |  |  |  | }, | 
| 1899 |  |  |  |  |  |  | sub { | 
| 1900 | 135 |  |  |  |  | 492 | $redstring->{topic} = { name => 'vaccines', plural => 1 }; | 
| 1901 | 135 |  |  |  |  | 332 | "essential oils cure autism"; | 
| 1902 |  |  |  |  |  |  | }, | 
| 1903 |  |  |  |  |  |  | sub { | 
| 1904 | 129 |  |  |  |  | 556 | $redstring->{topic} = { name => 'anger management', plural => 0 }; | 
| 1905 | 129 |  |  |  |  | 303 | "wasps are just angry bees"; | 
| 1906 |  |  |  |  |  |  | }, | 
| 1907 |  |  |  |  |  |  | sub { | 
| 1908 | 152 |  |  |  |  | 562 | $redstring->{topic} = { name => 'oncology', plural => 0 }; | 
| 1909 | 152 |  |  |  |  | 371 | "windmills cause cancer"; | 
| 1910 |  |  |  |  |  |  | }, | 
| 1911 |  |  |  |  |  |  | sub { | 
| 1912 | 122 |  |  |  |  | 420 | my $chem = chemicals( $redstring ); | 
| 1913 | 122 |  |  |  |  | 468 | $redstring->{topic} = { name => 'honey', plural => 0 }; | 
| 1914 | 122 |  |  |  |  | 447 | "$chem is killing all the bees"; | 
| 1915 |  |  |  |  |  |  | }, | 
| 1916 |  |  |  |  |  |  | sub { | 
| 1917 | 141 |  |  |  |  | 394 | my $animal = real_animal( $redstring ); | 
| 1918 | 141 |  |  |  |  | 469 | $redstring->{topic} = { name => 'space flight', plural => 0 }; | 
| 1919 | 141 |  |  |  |  | 509 | "$animal DNA comes from space"; | 
| 1920 |  |  |  |  |  |  | }, | 
| 1921 | 1510 |  |  |  |  | 16874 | ); | 
| 1922 |  |  |  |  |  |  |  | 
| 1923 | 1510 |  |  |  |  | 21840 | my $solution = _UCFIRST_ _RANDOM_( | 
| 1924 |  |  |  |  |  |  | "They paid $group to kill him.", | 
| 1925 |  |  |  |  |  |  | "$group helped cover up the truth.", | 
| 1926 |  |  |  |  |  |  | "$group threatened to kill him to keep him quiet.", | 
| 1927 |  |  |  |  |  |  | "He was a member of $group so they knew he would keep quiet.", | 
| 1928 |  |  |  |  |  |  | "$group arranged a convenient \"accident\".", | 
| 1929 |  |  |  |  |  |  | ); | 
| 1930 |  |  |  |  |  |  |  | 
| 1931 | 1510 |  |  |  |  | 3719 | my $destruction = _RANDOM_( | 
| 1932 |  |  |  |  |  |  | "the 'theory' of evolution", | 
| 1933 |  |  |  |  |  |  | 'modern medicine', | 
| 1934 |  |  |  |  |  |  | "the germ theory of disease", | 
| 1935 |  |  |  |  |  |  | "our understanding of DNA", | 
| 1936 |  |  |  |  |  |  | 'creation science', | 
| 1937 |  |  |  |  |  |  | ); | 
| 1938 |  |  |  |  |  |  |  | 
| 1939 | 1510 |  |  |  |  | 7242 | _UCFIRST_ "$biologist discovered that $fact but the scientific establishment is suppressing it because it would destroy $destruction. $solution"; | 
| 1940 |  |  |  |  |  |  | }, | 
| 1941 |  |  |  |  |  |  | sub { | 
| 1942 | 1516 |  |  | 1516 |  | 3927 | my $group = shady_group( $redstring ); | 
| 1943 | 1516 |  |  |  |  | 3420 | $redstring->{protagonists} = $redstring->{shady_group}; | 
| 1944 | 1516 | 100 |  |  |  | 3889 | my $have = $redstring->{protagonists}->{plural} ? 'have' : 'has'; | 
| 1945 |  |  |  |  |  |  |  | 
| 1946 | 1516 |  |  |  |  | 3523 | my $place = random_place( $redstring ); | 
| 1947 |  |  |  |  |  |  |  | 
| 1948 | 1516 |  |  |  |  | 5766 | my $how = _RANDOM_( | 
| 1949 |  |  |  |  |  |  | "by diverting flights to $place to a Hollywood studio", | 
| 1950 |  |  |  |  |  |  | 'using mirrors', | 
| 1951 |  |  |  |  |  |  | 'by paying the UN', | 
| 1952 |  |  |  |  |  |  | 'by talking with funny accents', | 
| 1953 |  |  |  |  |  |  | 'by hacking satellites', | 
| 1954 |  |  |  |  |  |  | ); | 
| 1955 |  |  |  |  |  |  |  | 
| 1956 | 1516 |  |  |  |  | 7045 | _UCFIRST_ "$place is just a hologram created by $group who $have been hiding it for years $how."; | 
| 1957 |  |  |  |  |  |  | }, | 
| 1958 |  |  |  |  |  |  | sub { | 
| 1959 | 1569 |  |  | 1569 |  | 4357 | my $place  = random_place( $redstring ); | 
| 1960 | 1569 |  |  |  |  | 4063 | my $truth1 = hidden_truth( $redstring ); | 
| 1961 |  |  |  |  |  |  |  | 
| 1962 | 1569 |  |  |  |  | 10725 | _UCFIRST_ _RANDOM_( | 
| 1963 |  |  |  |  |  |  | "It is common knowledge in $place that $truth1.", | 
| 1964 |  |  |  |  |  |  | "They teach $truth1 at schools in $place.", | 
| 1965 |  |  |  |  |  |  | "Everybody in $place knows that $truth1.", | 
| 1966 |  |  |  |  |  |  | "People in $place found out that $truth1.", | 
| 1967 |  |  |  |  |  |  | ); | 
| 1968 |  |  |  |  |  |  | }, | 
| 1969 |  |  |  |  |  |  | sub { | 
| 1970 | 1555 |  |  | 1555 |  | 4208 | my $celeb  = celebrity( $redstring ); | 
| 1971 | 1555 | 100 |  |  |  | 4434 | my $pronoun = $redstring->{celebrity}{female} ? 'she' : 'he'; | 
| 1972 | 1555 |  |  |  |  | 3648 | my $truth1 = hidden_truth( $redstring ); | 
| 1973 | 1555 |  |  |  |  | 3718 | my $group = shady_group( $redstring ); | 
| 1974 | 1555 |  |  |  |  | 3677 | $redstring->{protagonists} = $redstring->{shady_group}; | 
| 1975 | 1555 | 100 |  |  |  | 4065 | my $are = $redstring->{protagonists}->{plural} ? 'are' : 'is'; | 
| 1976 |  |  |  |  |  |  |  | 
| 1977 |  |  |  |  |  |  | my $silence = _RANDOM_( | 
| 1978 |  |  |  |  |  |  | "$pronoun will probably have to be eliminated", | 
| 1979 |  |  |  |  |  |  | "$pronoun is going to be killed if $pronoun isn't dead already", | 
| 1980 |  |  |  |  |  |  | "$pronoun is being paid to stay quiet", | 
| 1981 |  |  |  |  |  |  | "$pronoun will meet a convenient \"accident\"", | 
| 1982 |  |  |  |  |  |  | sub { | 
| 1983 | 275 |  |  |  |  | 888 | my $clone = clone( $redstring ); | 
| 1984 | 275 |  |  |  |  | 983 | "$pronoun has been replaced by $clone"; | 
| 1985 |  |  |  |  |  |  | }, | 
| 1986 |  |  |  |  |  |  | sub { | 
| 1987 | 258 |  |  |  |  | 842 | my $place = bad_place( $redstring ); | 
| 1988 | 258 |  |  |  |  | 880 | "$pronoun has been imprisoned in $place"; | 
| 1989 |  |  |  |  |  |  | }, | 
| 1990 | 1555 |  |  |  |  | 11428 | ); | 
| 1991 |  |  |  |  |  |  |  | 
| 1992 | 1555 |  |  |  |  | 11053 | _UCFIRST_ "$celeb found out that $truth1 and $silence. " . _UCFIRST_ "$group $are protecting this secret."; | 
| 1993 |  |  |  |  |  |  | }, | 
| 1994 |  |  |  |  |  |  | sub { | 
| 1995 | 1560 |  |  | 1560 |  | 4421 | my $celeb  = celebrity( $redstring ); | 
| 1996 | 1560 | 100 |  |  |  | 4259 | my $pronoun = $redstring->{celebrity}{female} ? 'she' : 'he'; | 
| 1997 | 1560 |  |  |  |  | 3326 | my $group = shady_group( $redstring ); | 
| 1998 | 1560 |  |  |  |  | 3897 | $redstring->{protagonists} = $redstring->{shady_group}; | 
| 1999 |  |  |  |  |  |  |  | 
| 2000 | 1560 |  |  |  |  | 11426 | _UCFIRST_ _RANDOM_( | 
| 2001 |  |  |  |  |  |  | "$celeb is a member of $group.", | 
| 2002 |  |  |  |  |  |  | "$celeb is a former member of $group.", | 
| 2003 |  |  |  |  |  |  | "$celeb was thrown out of $group.", | 
| 2004 |  |  |  |  |  |  | "$celeb infiltrated $group.", | 
| 2005 |  |  |  |  |  |  | "$celeb is the leader of $group.", | 
| 2006 |  |  |  |  |  |  | "$celeb is secretly worshipped by $group.", | 
| 2007 |  |  |  |  |  |  | ); | 
| 2008 |  |  |  |  |  |  | }, | 
| 2009 | 21423 |  |  |  |  | 467144 | ); | 
| 2010 |  |  |  |  |  |  |  | 
| 2011 | 21423 | 100 | 100 |  |  | 794732 | if ( $redstring->{protagonists} and not $redstring->{antagonists} and _RANDOM_(0..1) ) { | 
|  |  |  | 100 |  |  |  |  | 
| 2012 | 8049 |  | 66 |  |  | 29390 | my $group1 = $redstring->{protagonists}{shortname} // $redstring->{protagonists}{name}; | 
| 2013 | 8049 |  |  |  |  | 19177 | my $group2 = shady_group( $redstring ); | 
| 2014 | 8049 |  |  |  |  | 17735 | $redstring->{antagonists} = $redstring->{shady_group}; | 
| 2015 | 8049 | 100 |  |  |  | 19455 | my $know = splural ($redstring->{antagonists}) ? 'know' : 'knows'; | 
| 2016 |  |  |  |  |  |  | $theory .= " " . _UCFIRST_ _RANDOM_( | 
| 2017 |  |  |  |  |  |  | sub { | 
| 2018 | 1379 |  |  | 1379 |  | 3813 | my $bribe = precious_resource_with_quantity( $redstring ); | 
| 2019 | 1379 |  |  |  |  | 5935 | "$group2 $know the truth but $group1 have paid them off with $bribe."; | 
| 2020 |  |  |  |  |  |  | }, | 
| 2021 | 8049 |  |  |  |  | 64071 | "$group2 $know the truth but $group1 have threatened them to keep them silent.", | 
| 2022 |  |  |  |  |  |  | "$group2 were helping them until $group1 betrayed them.", | 
| 2023 |  |  |  |  |  |  | "$group2 were helping them for a while.", | 
| 2024 |  |  |  |  |  |  | "$group2 were originally opposed to this but they're now in on it.", | 
| 2025 |  |  |  |  |  |  | "$group2 are trying to get evidence to prove it.", | 
| 2026 |  |  |  |  |  |  | ); | 
| 2027 |  |  |  |  |  |  | } | 
| 2028 |  |  |  |  |  |  |  | 
| 2029 | 21423 |  |  |  |  | 83940 | _MERGE_( $redstring, base_theory => $theory ); | 
| 2030 |  |  |  |  |  |  |  | 
| 2031 | 21423 |  |  |  |  | 59583 | my $evidence = evidence( $redstring ); | 
| 2032 | 21423 | 50 |  |  |  | 90713 | $theory .= " $evidence" if $evidence; | 
| 2033 |  |  |  |  |  |  |  | 
| 2034 | 21423 |  |  |  |  | 51614 | my $numerology = numerology( $redstring ); | 
| 2035 | 21423 | 100 |  |  |  | 51337 | $theory .= " $numerology" if $numerology; | 
| 2036 |  |  |  |  |  |  |  | 
| 2037 | 21423 |  |  |  |  | 58952 | _MERGE_( $redstring, theory => $theory ); | 
| 2038 |  |  |  |  |  |  |  | 
| 2039 | 21423 |  |  |  |  | 122063 | return $theory; | 
| 2040 |  |  |  |  |  |  | } | 
| 2041 |  |  |  |  |  |  |  | 
| 2042 |  |  |  |  |  |  | my %special_numbers = ( | 
| 2043 |  |  |  |  |  |  | 19   => [ qr/COVID/,             '19 is the coronavirus number' ], | 
| 2044 |  |  |  |  |  |  | 24   => [ qr/TINTIN/,            'There are 24 Tintin comics' ], | 
| 2045 |  |  |  |  |  |  | 33   => [ qr/MASON/,             '33 is associated with the masons' ], | 
| 2046 |  |  |  |  |  |  | 35   => [ qr/ELVIS/,             'Elvis was born in 1935' ], | 
| 2047 |  |  |  |  |  |  | 44   => [ qr/OBAMA/,             'Barack Obama was the 44th President of the USA' ], | 
| 2048 |  |  |  |  |  |  | 45   => [ qr/TRUMP|QANON|USA/,   'Donald Trump was the 45th President of the USA', | 
| 2049 |  |  |  |  |  |  | qr/UNITEDNATIONS/,     'The United Nations was founded in 1945' ], | 
| 2050 |  |  |  |  |  |  | 46   => [ qr/BIDEN/,             'Joe Biden was the 46th President of the USA' ], | 
| 2051 |  |  |  |  |  |  | 47   => [ qr/THECIA/,            'The CIA was founded in 1947', | 
| 2052 |  |  |  |  |  |  | qr/SILVER/,            'Silver has atomic number 47' ], | 
| 2053 |  |  |  |  |  |  | 49   => [ qr/NATO/,              'NATO was founded in 1949' ], | 
| 2054 |  |  |  |  |  |  | 51   => [ qr/KFC/,               'Area 51 is the fifty-first area' ], | 
| 2055 |  |  |  |  |  |  | 52   => [ qr/KFC/,               'KFC was founded in 1952' ], | 
| 2056 |  |  |  |  |  |  | 55   => [ qr/BIGMAC|MCDONALDS/,  'McDonalds was founded in 1955' ], | 
| 2057 |  |  |  |  |  |  | 63   => [ qr/JFK|OSWALD/,        'JFK was shot in 1963' ], | 
| 2058 |  |  |  |  |  |  | 79   => [ qr/GOLD/,              'Gold has the atomic number 79' ], | 
| 2059 |  |  |  |  |  |  | 81   => [ qr/HIV/,               'AIDS was discovered in 1981' ], | 
| 2060 |  |  |  |  |  |  | 82   => [ qr/COKE/,              'Diet Coke first came out in 1982' ], | 
| 2061 |  |  |  |  |  |  | 86   => [ qr/RADON/,             'The atomic number for radon is 86' ], | 
| 2062 |  |  |  |  |  |  | 92   => [ qr/URANIUM/,           'The atomic number for uranium is 92' ], | 
| 2063 |  |  |  |  |  |  | 322  => [ qr/SKULL/,             'Skull and Bones is Order 322' ], | 
| 2064 |  |  |  |  |  |  | 666  => [ qr/DEVIL|DEMON|SATAN/, '666 is the number of the beast' ], | 
| 2065 |  |  |  |  |  |  | ); | 
| 2066 |  |  |  |  |  |  |  | 
| 2067 |  |  |  |  |  |  | sub numerology { | 
| 2068 | 21423 |  | 50 | 21423 | 0 | 52107 | my $redstring = shift // {}; | 
| 2069 |  |  |  |  |  |  |  | 
| 2070 |  |  |  |  |  |  | my @strings = List::Util::uniq( | 
| 2071 | 147104 |  |  |  |  | 341651 | grep { length } | 
| 2072 | 147104 |  |  |  |  | 267791 | map { my $letters = uc( $_ ); $letters =~ s/[^A-Z0-9]//g; $letters } | 
|  | 147104 |  |  |  |  | 642411 |  | 
|  | 147104 |  |  |  |  | 290730 |  | 
| 2073 |  |  |  |  |  |  | map { | 
| 2074 | 147104 | 100 |  |  |  | 436629 | /^(the )(.+)$/i ? $2 : $_ | 
| 2075 |  |  |  |  |  |  | } | 
| 2076 |  |  |  |  |  |  | map { | 
| 2077 | 21423 | 100 |  |  |  | 59803 | ref( $_ ) ? grep( defined, $_->{name}, $_->{shortname}, $_->{title}, $_->{author} ) : $_ | 
|  | 156775 |  |  |  |  | 430238 |  | 
| 2078 |  |  |  |  |  |  | } | 
| 2079 |  |  |  |  |  |  | values( %$redstring ) | 
| 2080 |  |  |  |  |  |  | ); | 
| 2081 |  |  |  |  |  |  |  | 
| 2082 | 21423 |  |  |  |  | 79257 | my %calcs; | 
| 2083 | 21423 |  |  |  |  | 47819 | foreach my $string ( @strings ) { | 
| 2084 | 121835 | 100 |  |  |  | 272874 | next if length($string) >= 20; | 
| 2085 | 82698 |  |  |  |  | 248572 | my @letters = split //, $string; | 
| 2086 | 82698 | 100 |  |  |  | 738903 | my @numbers = map /[A-Z]/ ? ( ord($_) - 0x40 ) : $_, @letters; | 
| 2087 | 82698 |  |  |  |  | 221541 | my $sum     = List::Util::sum( @numbers ); | 
| 2088 |  |  |  |  |  |  |  | 
| 2089 | 82698 |  | 100 |  |  | 120026 | push @{ $calcs{$sum} ||= [] }, sprintf( | 
|  | 82698 |  |  |  |  | 827619 |  | 
| 2090 |  |  |  |  |  |  | '%s = %s = %s', | 
| 2091 |  |  |  |  |  |  | join( '+', @letters ), | 
| 2092 |  |  |  |  |  |  | join( '+', @numbers ), | 
| 2093 |  |  |  |  |  |  | $sum, | 
| 2094 |  |  |  |  |  |  | ); | 
| 2095 |  |  |  |  |  |  | } | 
| 2096 |  |  |  |  |  |  |  | 
| 2097 | 21423 |  |  |  |  | 99716 | foreach my $key ( %special_numbers ) { | 
| 2098 | 856920 | 100 |  |  |  | 1702459 | if ( $calcs{$key} ) { | 
| 2099 | 6949 |  |  |  |  | 10944 | my @copy = @{ $special_numbers{$key} }; | 
|  | 6949 |  |  |  |  | 17971 |  | 
| 2100 | 6949 |  |  |  |  | 18364 | while ( @copy ) { | 
| 2101 | 7272 |  |  |  |  | 20793 | my ( $test, $statement ) = splice( @copy, 0 , 2 ); | 
| 2102 | 7272 | 100 |  |  |  | 67805 | next unless "@strings" =~ $test; | 
| 2103 | 44 |  |  |  |  | 106 | push @{ $calcs{$key} }, "And guess what? " . $statement; | 
|  | 44 |  |  |  |  | 224 |  | 
| 2104 |  |  |  |  |  |  | } | 
| 2105 |  |  |  |  |  |  | } | 
| 2106 |  |  |  |  |  |  | } | 
| 2107 |  |  |  |  |  |  |  | 
| 2108 | 21423 | 100 |  |  |  | 64863 | my @wow = map { @$_ > 1 ? @$_ : () } values %calcs; | 
|  | 82040 |  |  |  |  | 160662 |  | 
| 2109 |  |  |  |  |  |  |  | 
| 2110 | 21423 | 100 |  |  |  | 51896 | if ( @wow ) { | 
| 2111 | 697 |  |  |  |  | 1767 | return sprintf( | 
| 2112 |  |  |  |  |  |  | "%s %s", | 
| 2113 |  |  |  |  |  |  | _RANDOM_( | 
| 2114 |  |  |  |  |  |  | 'The numbers never lie.', | 
| 2115 |  |  |  |  |  |  | 'Trust the numbers.', | 
| 2116 |  |  |  |  |  |  | 'You can see the truth in the numbers.', | 
| 2117 |  |  |  |  |  |  | ), | 
| 2118 |  |  |  |  |  |  | join( | 
| 2119 |  |  |  |  |  |  | '', | 
| 2120 |  |  |  |  |  |  | map( "$_. ", @wow ), | 
| 2121 |  |  |  |  |  |  | ) | 
| 2122 |  |  |  |  |  |  | ); | 
| 2123 |  |  |  |  |  |  | } | 
| 2124 |  |  |  |  |  |  |  | 
| 2125 | 20726 |  |  |  |  | 87322 | return ''; | 
| 2126 |  |  |  |  |  |  | } | 
| 2127 |  |  |  |  |  |  |  | 
| 2128 |  |  |  |  |  |  | sub bad_punctuation { | 
| 2129 | 0 |  |  | 0 | 0 |  | my ( $string, $cancel ) = @_; | 
| 2130 | 0 | 0 |  |  |  |  | unless ( $cancel ) { | 
| 2131 | 0 |  |  |  |  |  | $string =~ s/ ([A-Za-z]) ([,!?]) / $1 . _RANDOM_(    $2, " $2", " $2", " $2$2") /exg; | 
|  | 0 |  |  |  |  |  |  | 
| 2132 | 0 |  |  |  |  |  | $string =~ s/ ([A-Za-z]) ([.])   / $1 . _RANDOM_($2, $2, " $2", " ", " $2$2$2") /exg; | 
|  | 0 |  |  |  |  |  |  | 
| 2133 | 0 |  |  |  |  |  | $string =~ s/\!/_RANDOM_('!', '!', '!!',  "!!!!")/ex; | 
|  | 0 |  |  |  |  |  |  | 
| 2134 |  |  |  |  |  |  | } | 
| 2135 | 0 |  |  |  |  |  | return $string; | 
| 2136 |  |  |  |  |  |  | } | 
| 2137 |  |  |  |  |  |  |  | 
| 2138 |  |  |  |  |  |  | 1; | 
| 2139 |  |  |  |  |  |  |  | 
| 2140 |  |  |  |  |  |  | __END__ |