{-# LANGUAGE TemplateHaskell #-} {-# OPTIONS_GHC -fplugin Test.Inspection.Plugin #-} module MutualRecursion where import System.Exit import Test.Inspection inf = go0 where go0 = 'a' : go1 go1 = 'b' : go2 go2 = 'c' : go0 inf' = go0 where go1 = 'b' : go2 go0 = 'a' : go1 go2 = 'c' : go0 inf2' = go0 where go1 = 'b' : go2 go2 = 'c' : go0 go0 = 'a' : go1 inf3' = go0 where go0 = 'a' : go1 go1 = 'b' : go2 go2 = 'c' : go0 inspect $ 'inf === 'inf' inspect $ 'inf === 'inf2' inspect $ 'inf === 'inf3' letrec = let go0 = 'a' : go1 go1 = 'b' : go2 go2 = 'c' : go0 in go0 letrec' = let go1 = 'b' : go2 go0 = 'a' : go1 go2 = 'c' : go0 in go0 letrec2' = let go1 = 'b' : go2 go2 = 'c' : go0 go0 = 'a' : go1 in go0 letrec3' = let go0 = 'a' : go1 go1 = 'b' : go2 go2 = 'c' : go0 in go0 inspect $ 'letrec === 'letrec' inspect $ 'letrec === 'letrec2' inspect $ 'letrec === 'letrec3' something_else = let go0 = 'a' : go1 go1 = 'b' : go0 go2 = 'c' : go0 in go0 inspect $ 'letrec =/= 'something_else -- | Test to make sure we don't have any aggressively worst-case behavior. bigletrec = let go0 = '\x0' : go1 go1 = '\x1' : go2 go2 = '\x2' : go3 go3 = '\x3' : go4 go4 = '\x4' : go5 go5 = '\x5' : go6 go6 = '\x6' : go7 go7 = '\x7' : go8 go8 = '\x8' : go9 go9 = '\x9' : go10 go10 = '\x10' : go11 go11 = '\x11' : go12 go12 = '\x12' : go13 go13 = '\x13' : go14 go14 = '\x14' : go15 go15 = '\x15' : go16 go16 = '\x16' : go17 go17 = '\x17' : go18 go18 = '\x18' : go19 go19 = '\x19' : go20 go20 = '\x20' : go21 go21 = '\x21' : go22 go22 = '\x22' : go23 go23 = '\x23' : go24 go24 = '\x24' : go25 go25 = '\x25' : go26 go26 = '\x26' : go27 go27 = '\x27' : go28 go28 = '\x28' : go29 go29 = '\x29' : go30 go30 = '\x30' : go31 go31 = '\x31' : go32 go32 = '\x32' : go33 go33 = '\x33' : go34 go34 = '\x34' : go35 go35 = '\x35' : go36 go36 = '\x36' : go37 go37 = '\x37' : go38 go38 = '\x38' : go39 go39 = '\x39' : go40 go40 = '\x40' : go41 go41 = '\x41' : go42 go42 = '\x42' : go43 go43 = '\x43' : go44 go44 = '\x44' : go45 go45 = '\x45' : go46 go46 = '\x46' : go47 go47 = '\x47' : go48 go48 = '\x48' : go49 go49 = '\x49' : go50 go50 = '\x50' : go51 go51 = '\x51' : go52 go52 = '\x52' : go53 go53 = '\x53' : go54 go54 = '\x54' : go55 go55 = '\x55' : go56 go56 = '\x56' : go57 go57 = '\x57' : go58 go58 = '\x58' : go59 go59 = '\x59' : go60 go60 = '\x60' : go61 go61 = '\x61' : go62 go62 = '\x62' : go63 go63 = '\x63' : go64 go64 = '\x64' : go65 go65 = '\x65' : go66 go66 = '\x66' : go67 go67 = '\x67' : go68 go68 = '\x68' : go69 go69 = '\x69' : go70 go70 = '\x70' : go71 go71 = '\x71' : go72 go72 = '\x72' : go73 go73 = '\x73' : go74 go74 = '\x74' : go75 go75 = '\x75' : go76 go76 = '\x76' : go77 go77 = '\x77' : go78 go78 = '\x78' : go79 go79 = '\x79' : go80 go80 = '\x80' : go81 go81 = '\x81' : go82 go82 = '\x82' : go83 go83 = '\x83' : go84 go84 = '\x84' : go85 go85 = '\x85' : go86 go86 = '\x86' : go87 go87 = '\x87' : go88 go88 = '\x88' : go89 go89 = '\x89' : go90 go90 = '\x90' : go91 go91 = '\x91' : go92 go92 = '\x92' : go93 go93 = '\x93' : go94 go94 = '\x94' : go95 go95 = '\x95' : go96 go96 = '\x96' : go97 go97 = '\x97' : go98 go98 = '\x98' : go99 go99 = '\x99' : go100 go100 = '\x100' : go101 go101 = '\x101' : go102 go102 = '\x102' : go103 go103 = '\x103' : go104 go104 = '\x104' : go105 go105 = '\x105' : go106 go106 = '\x106' : go107 go107 = '\x107' : go108 go108 = '\x108' : go109 go109 = '\x109' : go110 go110 = '\x110' : go111 go111 = '\x111' : go112 go112 = '\x112' : go113 go113 = '\x113' : go114 go114 = '\x114' : go115 go115 = '\x115' : go116 go116 = '\x116' : go117 go117 = '\x117' : go118 go118 = '\x118' : go119 go119 = '\x119' : go120 go120 = '\x120' : go121 go121 = '\x121' : go122 go122 = '\x122' : go123 go123 = '\x123' : go124 go124 = '\x124' : go125 go125 = '\x125' : go126 go126 = '\x126' : go127 go127 = '\x127' : go128 go128 = '\x128' : go129 go129 = '\x129' : go130 go130 = '\x130' : go131 go131 = '\x131' : go132 go132 = '\x132' : go133 go133 = '\x133' : go134 go134 = '\x134' : go135 go135 = '\x135' : go136 go136 = '\x136' : go137 go137 = '\x137' : go138 go138 = '\x138' : go139 go139 = '\x139' : go140 go140 = '\x140' : go141 go141 = '\x141' : go142 go142 = '\x142' : go143 go143 = '\x143' : go144 go144 = '\x144' : go145 go145 = '\x145' : go146 go146 = '\x146' : go147 go147 = '\x147' : go148 go148 = '\x148' : go149 go149 = '\x149' : go150 go150 = '\x150' : go151 go151 = '\x151' : go152 go152 = '\x152' : go153 go153 = '\x153' : go154 go154 = '\x154' : go155 go155 = '\x155' : go156 go156 = '\x156' : go157 go157 = '\x157' : go158 go158 = '\x158' : go159 go159 = '\x159' : go160 go160 = '\x160' : go161 go161 = '\x161' : go162 go162 = '\x162' : go163 go163 = '\x163' : go164 go164 = '\x164' : go165 go165 = '\x165' : go166 go166 = '\x166' : go167 go167 = '\x167' : go168 go168 = '\x168' : go169 go169 = '\x169' : go170 go170 = '\x170' : go171 go171 = '\x171' : go172 go172 = '\x172' : go173 go173 = '\x173' : go174 go174 = '\x174' : go175 go175 = '\x175' : go176 go176 = '\x176' : go177 go177 = '\x177' : go178 go178 = '\x178' : go179 go179 = '\x179' : go180 go180 = '\x180' : go181 go181 = '\x181' : go182 go182 = '\x182' : go183 go183 = '\x183' : go184 go184 = '\x184' : go185 go185 = '\x185' : go186 go186 = '\x186' : go187 go187 = '\x187' : go188 go188 = '\x188' : go189 go189 = '\x189' : go190 go190 = '\x190' : go191 go191 = '\x191' : go192 go192 = '\x192' : go193 go193 = '\x193' : go194 go194 = '\x194' : go195 go195 = '\x195' : go196 go196 = '\x196' : go197 go197 = '\x197' : go198 go198 = '\x198' : go199 go199 = '\x199' : go200 go200 = '\x200' : go201 go201 = '\x201' : go202 go202 = '\x202' : go203 go203 = '\x203' : go204 go204 = '\x204' : go205 go205 = '\x205' : go206 go206 = '\x206' : go207 go207 = '\x207' : go208 go208 = '\x208' : go209 go209 = '\x209' : go210 go210 = '\x210' : go211 go211 = '\x211' : go212 go212 = '\x212' : go213 go213 = '\x213' : go214 go214 = '\x214' : go215 go215 = '\x215' : go216 go216 = '\x216' : go217 go217 = '\x217' : go218 go218 = '\x218' : go219 go219 = '\x219' : go220 go220 = '\x220' : go221 go221 = '\x221' : go222 go222 = '\x222' : go223 go223 = '\x223' : go224 go224 = '\x224' : go225 go225 = '\x225' : go226 go226 = '\x226' : go227 go227 = '\x227' : go228 go228 = '\x228' : go229 go229 = '\x229' : go230 go230 = '\x230' : go231 go231 = '\x231' : go232 go232 = '\x232' : go233 go233 = '\x233' : go234 go234 = '\x234' : go235 go235 = '\x235' : go236 go236 = '\x236' : go237 go237 = '\x237' : go238 go238 = '\x238' : go239 go239 = '\x239' : go240 go240 = '\x240' : go241 go241 = '\x241' : go242 go242 = '\x242' : go243 go243 = '\x243' : go244 go244 = '\x244' : go245 go245 = '\x245' : go246 go246 = '\x246' : go247 go247 = '\x247' : go248 go248 = '\x248' : go249 go249 = '\x249' : go250 go250 = '\x250' : go251 go251 = '\x251' : go252 go252 = '\x252' : go253 go253 = '\x253' : go254 go254 = '\x254' : go255 go255 = '\x255' : go256 go256 = '\x256' : go0 in go0 bigletrec' = let go0 = '\x0' : go1 go1 = '\x1' : go2 go2 = '\x2' : go3 go3 = '\x3' : go4 go4 = '\x4' : go5 go5 = '\x5' : go6 go6 = '\x6' : go7 go7 = '\x7' : go8 go8 = '\x8' : go9 go9 = '\x9' : go10 go10 = '\x10' : go11 go11 = '\x11' : go12 go12 = '\x12' : go13 go13 = '\x13' : go14 go14 = '\x14' : go15 go15 = '\x15' : go16 go16 = '\x16' : go17 go17 = '\x17' : go18 go18 = '\x18' : go19 go19 = '\x19' : go20 go20 = '\x20' : go21 go21 = '\x21' : go22 go22 = '\x22' : go23 go23 = '\x23' : go24 go24 = '\x24' : go25 go25 = '\x25' : go26 go26 = '\x26' : go27 go27 = '\x27' : go28 go28 = '\x28' : go29 go29 = '\x29' : go30 go30 = '\x30' : go31 go31 = '\x31' : go32 go32 = '\x32' : go33 go33 = '\x33' : go34 go34 = '\x34' : go35 go35 = '\x35' : go36 go36 = '\x36' : go37 go37 = '\x37' : go38 go38 = '\x38' : go39 go39 = '\x39' : go40 go40 = '\x40' : go41 go41 = '\x41' : go42 go42 = '\x42' : go43 go43 = '\x43' : go44 go44 = '\x44' : go45 go45 = '\x45' : go46 go46 = '\x46' : go47 go47 = '\x47' : go48 go48 = '\x48' : go49 go49 = '\x49' : go50 go50 = '\x50' : go51 go51 = '\x51' : go52 go52 = '\x52' : go53 go53 = '\x53' : go54 go54 = '\x54' : go55 go55 = '\x55' : go56 go56 = '\x56' : go57 go57 = '\x57' : go58 go58 = '\x58' : go59 go59 = '\x59' : go60 go60 = '\x60' : go61 go61 = '\x61' : go62 go62 = '\x62' : go63 go63 = '\x63' : go64 go64 = '\x64' : go65 go65 = '\x65' : go66 go66 = '\x66' : go67 go67 = '\x67' : go68 go68 = '\x68' : go69 go69 = '\x69' : go70 go70 = '\x70' : go71 go71 = '\x71' : go72 go72 = '\x72' : go73 go73 = '\x73' : go74 go74 = '\x74' : go75 go75 = '\x75' : go76 go76 = '\x76' : go77 go77 = '\x77' : go78 go78 = '\x78' : go79 go79 = '\x79' : go80 go80 = '\x80' : go81 go81 = '\x81' : go82 go82 = '\x82' : go83 go83 = '\x83' : go84 go84 = '\x84' : go85 go85 = '\x85' : go86 go86 = '\x86' : go87 go87 = '\x87' : go88 go88 = '\x88' : go89 go89 = '\x89' : go90 go90 = '\x90' : go91 go91 = '\x91' : go92 go92 = '\x92' : go93 go93 = '\x93' : go94 go94 = '\x94' : go95 go95 = '\x95' : go96 go96 = '\x96' : go97 go97 = '\x97' : go98 go98 = '\x98' : go99 go99 = '\x99' : go100 go100 = '\x100' : go101 go101 = '\x101' : go102 go102 = '\x102' : go103 go103 = '\x103' : go104 go104 = '\x104' : go105 go105 = '\x105' : go106 go106 = '\x106' : go107 go107 = '\x107' : go108 go108 = '\x108' : go109 go109 = '\x109' : go110 go110 = '\x110' : go111 go111 = '\x111' : go112 go112 = '\x112' : go113 go113 = '\x113' : go114 go114 = '\x114' : go115 go115 = '\x115' : go116 go116 = '\x116' : go117 go117 = '\x117' : go118 go118 = '\x118' : go119 go119 = '\x119' : go120 go120 = '\x120' : go121 go121 = '\x121' : go122 go122 = '\x122' : go123 go123 = '\x123' : go124 go124 = '\x124' : go125 go125 = '\x125' : go126 go126 = '\x126' : go127 go127 = '\x127' : go128 go128 = '\x128' : go129 go129 = '\x129' : go130 go130 = '\x130' : go131 go131 = '\x131' : go132 go132 = '\x132' : go133 go133 = '\x133' : go134 go134 = '\x134' : go135 go135 = '\x135' : go136 go136 = '\x136' : go137 go137 = '\x137' : go138 go138 = '\x138' : go139 go139 = '\x139' : go140 go140 = '\x140' : go141 go141 = '\x141' : go142 go142 = '\x142' : go143 go143 = '\x143' : go144 go144 = '\x144' : go145 go145 = '\x145' : go146 go146 = '\x146' : go147 go147 = '\x147' : go148 go148 = '\x148' : go149 go149 = '\x149' : go150 go150 = '\x150' : go151 go151 = '\x151' : go152 go152 = '\x152' : go153 go153 = '\x153' : go154 go154 = '\x154' : go155 go155 = '\x155' : go156 go156 = '\x156' : go157 go157 = '\x157' : go158 go158 = '\x158' : go159 go159 = '\x159' : go160 go160 = '\x160' : go161 go161 = '\x161' : go162 go162 = '\x162' : go163 go163 = '\x163' : go164 go164 = '\x164' : go165 go165 = '\x165' : go166 go166 = '\x166' : go167 go167 = '\x167' : go168 go168 = '\x168' : go169 go169 = '\x169' : go170 go170 = '\x170' : go171 go171 = '\x171' : go172 go172 = '\x172' : go173 go173 = '\x173' : go174 go174 = '\x174' : go175 go175 = '\x175' : go176 go176 = '\x176' : go177 go177 = '\x177' : go178 go178 = '\x178' : go179 go179 = '\x179' : go180 go180 = '\x180' : go181 go181 = '\x181' : go182 go182 = '\x182' : go183 go183 = '\x183' : go184 go184 = '\x184' : go185 go185 = '\x185' : go186 go186 = '\x186' : go187 go187 = '\x187' : go188 go188 = '\x188' : go189 go189 = '\x189' : go190 go190 = '\x190' : go191 go191 = '\x191' : go192 go192 = '\x192' : go193 go193 = '\x193' : go194 go194 = '\x194' : go195 go195 = '\x195' : go196 go196 = '\x196' : go197 go197 = '\x197' : go198 go198 = '\x198' : go199 go199 = '\x199' : go200 go200 = '\x200' : go201 go201 = '\x201' : go202 go202 = '\x202' : go203 go203 = '\x203' : go204 go204 = '\x204' : go205 go205 = '\x205' : go206 go206 = '\x206' : go207 go207 = '\x207' : go208 go208 = '\x208' : go209 go209 = '\x209' : go210 go210 = '\x210' : go211 go211 = '\x211' : go212 go212 = '\x212' : go213 go213 = '\x213' : go214 go214 = '\x214' : go215 go215 = '\x215' : go216 go216 = '\x216' : go217 go217 = '\x217' : go218 go218 = '\x218' : go219 go219 = '\x219' : go220 go220 = '\x220' : go221 go221 = '\x221' : go222 go222 = '\x222' : go223 go223 = '\x223' : go224 go224 = '\x224' : go225 go225 = '\x225' : go226 go226 = '\x226' : go227 go227 = '\x227' : go228 go228 = '\x228' : go229 go229 = '\x229' : go230 go230 = '\x230' : go231 go231 = '\x231' : go232 go232 = '\x232' : go233 go233 = '\x233' : go234 go234 = '\x234' : go235 go235 = '\x235' : go236 go236 = '\x236' : go237 go237 = '\x237' : go238 go238 = '\x238' : go239 go239 = '\x239' : go240 go240 = '\x240' : go241 go241 = '\x241' : go242 go242 = '\x242' : go243 go243 = '\x243' : go244 go244 = '\x244' : go245 go245 = '\x245' : go246 go246 = '\x246' : go247 go247 = '\x247' : go248 go248 = '\x248' : go249 go249 = '\x249' : go250 go250 = '\x250' : go251 go251 = '\x251' : go252 go252 = '\x252' : go253 go253 = '\x253' : go254 go254 = '\x254' : go255 go255 = '\x255' : go256 go256 = '\x256' : go0 in go0 badletrec' = let go0 = 'a' : go1 go1 = '\x1' : go2 go2 = '\x2' : go3 go3 = '\x3' : go4 go4 = '\x4' : go5 go5 = '\x5' : go6 go6 = '\x6' : go7 go7 = '\x7' : go8 go8 = '\x8' : go9 go9 = '\x9' : go10 go10 = '\x10' : go11 go11 = '\x11' : go12 go12 = '\x12' : go13 go13 = '\x13' : go14 go14 = '\x14' : go15 go15 = '\x15' : go16 go16 = '\x16' : go17 go17 = '\x17' : go18 go18 = '\x18' : go19 go19 = '\x19' : go20 go20 = '\x20' : go21 go21 = '\x21' : go22 go22 = '\x22' : go23 go23 = '\x23' : go24 go24 = '\x24' : go25 go25 = '\x25' : go26 go26 = '\x26' : go27 go27 = '\x27' : go28 go28 = '\x28' : go29 go29 = '\x29' : go30 go30 = '\x30' : go31 go31 = '\x31' : go32 go32 = '\x32' : go33 go33 = '\x33' : go34 go34 = '\x34' : go35 go35 = '\x35' : go36 go36 = '\x36' : go37 go37 = '\x37' : go38 go38 = '\x38' : go39 go39 = '\x39' : go40 go40 = '\x40' : go41 go41 = '\x41' : go42 go42 = '\x42' : go43 go43 = '\x43' : go44 go44 = '\x44' : go45 go45 = '\x45' : go46 go46 = '\x46' : go47 go47 = '\x47' : go48 go48 = '\x48' : go49 go49 = '\x49' : go50 go50 = '\x50' : go51 go51 = '\x51' : go52 go52 = '\x52' : go53 go53 = '\x53' : go54 go54 = '\x54' : go55 go55 = '\x55' : go56 go56 = '\x56' : go57 go57 = '\x57' : go58 go58 = '\x58' : go59 go59 = '\x59' : go60 go60 = '\x60' : go61 go61 = '\x61' : go62 go62 = '\x62' : go63 go63 = '\x63' : go64 go64 = '\x64' : go65 go65 = '\x65' : go66 go66 = '\x66' : go67 go67 = '\x67' : go68 go68 = '\x68' : go69 go69 = '\x69' : go70 go70 = '\x70' : go71 go71 = '\x71' : go72 go72 = '\x72' : go73 go73 = '\x73' : go74 go74 = '\x74' : go75 go75 = '\x75' : go76 go76 = '\x76' : go77 go77 = '\x77' : go78 go78 = '\x78' : go79 go79 = '\x79' : go80 go80 = '\x80' : go81 go81 = '\x81' : go82 go82 = '\x82' : go83 go83 = '\x83' : go84 go84 = '\x84' : go85 go85 = '\x85' : go86 go86 = '\x86' : go87 go87 = '\x87' : go88 go88 = '\x88' : go89 go89 = '\x89' : go90 go90 = '\x90' : go91 go91 = '\x91' : go92 go92 = '\x92' : go93 go93 = '\x93' : go94 go94 = '\x94' : go95 go95 = '\x95' : go96 go96 = '\x96' : go97 go97 = '\x97' : go98 go98 = '\x98' : go99 go99 = '\x99' : go100 go100 = '\x100' : go101 go101 = '\x101' : go102 go102 = '\x102' : go103 go103 = '\x103' : go104 go104 = '\x104' : go105 go105 = '\x105' : go106 go106 = '\x106' : go107 go107 = '\x107' : go108 go108 = '\x108' : go109 go109 = '\x109' : go110 go110 = '\x110' : go111 go111 = '\x111' : go112 go112 = '\x112' : go113 go113 = '\x113' : go114 go114 = '\x114' : go115 go115 = '\x115' : go116 go116 = '\x116' : go117 go117 = '\x117' : go118 go118 = '\x118' : go119 go119 = '\x119' : go120 go120 = '\x120' : go121 go121 = '\x121' : go122 go122 = '\x122' : go123 go123 = '\x123' : go124 go124 = '\x124' : go125 go125 = '\x125' : go126 go126 = '\x126' : go127 go127 = '\x127' : go128 go128 = '\x128' : go129 go129 = '\x129' : go130 go130 = '\x130' : go131 go131 = '\x131' : go132 go132 = '\x132' : go133 go133 = '\x133' : go134 go134 = '\x134' : go135 go135 = '\x135' : go136 go136 = '\x136' : go137 go137 = '\x137' : go138 go138 = '\x138' : go139 go139 = '\x139' : go140 go140 = '\x140' : go141 go141 = '\x141' : go142 go142 = '\x142' : go143 go143 = '\x143' : go144 go144 = '\x144' : go145 go145 = '\x145' : go146 go146 = '\x146' : go147 go147 = '\x147' : go148 go148 = '\x148' : go149 go149 = '\x149' : go150 go150 = '\x150' : go151 go151 = '\x151' : go152 go152 = '\x152' : go153 go153 = '\x153' : go154 go154 = '\x154' : go155 go155 = '\x155' : go156 go156 = '\x156' : go157 go157 = '\x157' : go158 go158 = '\x158' : go159 go159 = '\x159' : go160 go160 = '\x160' : go161 go161 = '\x161' : go162 go162 = '\x162' : go163 go163 = '\x163' : go164 go164 = '\x164' : go165 go165 = '\x165' : go166 go166 = '\x166' : go167 go167 = '\x167' : go168 go168 = '\x168' : go169 go169 = '\x169' : go170 go170 = '\x170' : go171 go171 = '\x171' : go172 go172 = '\x172' : go173 go173 = '\x173' : go174 go174 = '\x174' : go175 go175 = '\x175' : go176 go176 = '\x176' : go177 go177 = '\x177' : go178 go178 = '\x178' : go179 go179 = '\x179' : go180 go180 = '\x180' : go181 go181 = '\x181' : go182 go182 = '\x182' : go183 go183 = '\x183' : go184 go184 = '\x184' : go185 go185 = '\x185' : go186 go186 = '\x186' : go187 go187 = '\x187' : go188 go188 = '\x188' : go189 go189 = '\x189' : go190 go190 = '\x190' : go191 go191 = '\x191' : go192 go192 = '\x192' : go193 go193 = '\x193' : go194 go194 = '\x194' : go195 go195 = '\x195' : go196 go196 = '\x196' : go197 go197 = '\x197' : go198 go198 = '\x198' : go199 go199 = '\x199' : go200 go200 = '\x200' : go201 go201 = '\x201' : go202 go202 = '\x202' : go203 go203 = '\x203' : go204 go204 = '\x204' : go205 go205 = '\x205' : go206 go206 = '\x206' : go207 go207 = '\x207' : go208 go208 = '\x208' : go209 go209 = '\x209' : go210 go210 = '\x210' : go211 go211 = '\x211' : go212 go212 = '\x212' : go213 go213 = '\x213' : go214 go214 = '\x214' : go215 go215 = '\x215' : go216 go216 = '\x216' : go217 go217 = '\x217' : go218 go218 = '\x218' : go219 go219 = '\x219' : go220 go220 = '\x220' : go221 go221 = '\x221' : go222 go222 = '\x222' : go223 go223 = '\x223' : go224 go224 = '\x224' : go225 go225 = '\x225' : go226 go226 = '\x226' : go227 go227 = '\x227' : go228 go228 = '\x228' : go229 go229 = '\x229' : go230 go230 = '\x230' : go231 go231 = '\x231' : go232 go232 = '\x232' : go233 go233 = '\x233' : go234 go234 = '\x234' : go235 go235 = '\x235' : go236 go236 = '\x236' : go237 go237 = '\x237' : go238 go238 = '\x238' : go239 go239 = '\x239' : go240 go240 = '\x240' : go241 go241 = '\x241' : go242 go242 = '\x242' : go243 go243 = '\x243' : go244 go244 = '\x244' : go245 go245 = '\x245' : go246 go246 = '\x246' : go247 go247 = '\x247' : go248 go248 = '\x248' : go249 go249 = '\x249' : go250 go250 = '\x250' : go251 go251 = '\x251' : go252 go252 = '\x252' : go253 go253 = '\x253' : go254 go254 = '\x254' : go255 go255 = '\x255' : go256 go256 = '\x256' : go0 in go0 inspect $ 'bigletrec === 'bigletrec' inspect $ 'bigletrec =/= 'badletrec' main :: IO () main = pure ()