~ubuntu-branches/ubuntu/raring/agda/raring-proposed

« back to all changes in this revision

Viewing changes to dist/build/Agda/Syntax/Parser/Parser.hs

  • Committer: Bazaar Package Importer
  • Author(s): Iain Lane
  • Date: 2010-01-05 23:43:20 UTC
  • mfrom: (1.1.1 upstream)
  • Revision ID: james.westby@ubuntu.com-20100105234320-6ksc0sdsfhtweknu
Tags: 2.2.6-1
* New upstream release 2.2.6, for headlines please see:
  http://wiki.portal.chalmers.se/agda/pmwiki.php?n=Main.Version-2-2-6
* debian/control
  + Bump standards-version to 3.8.3, no changes
  + Fix Vcs-Git to point to correct URL
  + Update build-depends for new upstream release
  + Undo arch/indep split per current pkg-haskell practice
  + Add Homepage field
* debian/copyright: Fix encoding to UTF-8 (thanks Lintian) 
* debian/README.source: Remove, no repacking so not necessary any more 
* debian/50agda.el:
  + Only load file if it exists, prevents a non-intrusive emacs warning
    where 50agda.el is left on system when package is removed. 
    (Closes: #559197). 
  + Do not load file on XEmacs — agda-mode is not compatible with XEmacs.

Show diffs side-by-side

added added

removed removed

Lines of Context:
6
6
      moduleParser
7
7
    , exprParser
8
8
    , tokensParser
 
9
    , tests
9
10
    ) where
10
11
 
 
12
import Control.Arrow
11
13
import Control.Monad
12
14
import Control.Monad.State
13
 
import Data.Char  (isDigit)
 
15
import Data.Char
14
16
import Data.List
15
17
import Data.Maybe
16
18
import qualified Data.Traversable as T
17
19
 
18
 
import Agda.Syntax.Position
 
20
import Agda.Syntax.Position hiding (tests)
19
21
import Agda.Syntax.Parser.Monad
20
22
import Agda.Syntax.Parser.Lexer
21
23
import Agda.Syntax.Parser.Tokens
27
29
import Agda.Syntax.Literal
28
30
 
29
31
import Agda.Utils.Monad
 
32
import Agda.Utils.QuickCheck
 
33
import Agda.Utils.TestHelpers
30
34
#if __GLASGOW_HASKELL__ >= 503
31
35
import Data.Array
32
36
#else
40
44
 
41
45
-- parser produced by Happy Version 1.17
42
46
 
43
 
newtype HappyAbsSyn t11 t12 t13 t25 t28 t30 t34 t35 t57 = HappyAbsSyn HappyAny
 
47
newtype HappyAbsSyn t11 t12 t13 t27 t30 t32 t36 t37 t59 = HappyAbsSyn HappyAny
44
48
#if __GLASGOW_HASKELL__ >= 607
45
49
type HappyAny = GHC.Exts.Any
46
50
#else
47
51
type HappyAny = forall a . a
48
52
#endif
49
 
happyIn6 :: ([Token]) -> (HappyAbsSyn t11 t12 t13 t25 t28 t30 t34 t35 t57)
 
53
happyIn6 :: ([Token]) -> (HappyAbsSyn t11 t12 t13 t27 t30 t32 t36 t37 t59)
50
54
happyIn6 x = unsafeCoerce# x
51
55
{-# INLINE happyIn6 #-}
52
 
happyOut6 :: (HappyAbsSyn t11 t12 t13 t25 t28 t30 t34 t35 t57) -> ([Token])
 
56
happyOut6 :: (HappyAbsSyn t11 t12 t13 t27 t30 t32 t36 t37 t59) -> ([Token])
53
57
happyOut6 x = unsafeCoerce# x
54
58
{-# INLINE happyOut6 #-}
55
 
happyIn7 :: ([Token]) -> (HappyAbsSyn t11 t12 t13 t25 t28 t30 t34 t35 t57)
 
59
happyIn7 :: ([Token]) -> (HappyAbsSyn t11 t12 t13 t27 t30 t32 t36 t37 t59)
56
60
happyIn7 x = unsafeCoerce# x
57
61
{-# INLINE happyIn7 #-}
58
 
happyOut7 :: (HappyAbsSyn t11 t12 t13 t25 t28 t30 t34 t35 t57) -> ([Token])
 
62
happyOut7 :: (HappyAbsSyn t11 t12 t13 t27 t30 t32 t36 t37 t59) -> ([Token])
59
63
happyOut7 x = unsafeCoerce# x
60
64
{-# INLINE happyOut7 #-}
61
 
happyIn8 :: (Token) -> (HappyAbsSyn t11 t12 t13 t25 t28 t30 t34 t35 t57)
 
65
happyIn8 :: (Token) -> (HappyAbsSyn t11 t12 t13 t27 t30 t32 t36 t37 t59)
62
66
happyIn8 x = unsafeCoerce# x
63
67
{-# INLINE happyIn8 #-}
64
 
happyOut8 :: (HappyAbsSyn t11 t12 t13 t25 t28 t30 t34 t35 t57) -> (Token)
 
68
happyOut8 :: (HappyAbsSyn t11 t12 t13 t27 t30 t32 t36 t37 t59) -> (Token)
65
69
happyOut8 x = unsafeCoerce# x
66
70
{-# INLINE happyOut8 #-}
67
 
happyIn9 :: (()) -> (HappyAbsSyn t11 t12 t13 t25 t28 t30 t34 t35 t57)
 
71
happyIn9 :: (()) -> (HappyAbsSyn t11 t12 t13 t27 t30 t32 t36 t37 t59)
68
72
happyIn9 x = unsafeCoerce# x
69
73
{-# INLINE happyIn9 #-}
70
 
happyOut9 :: (HappyAbsSyn t11 t12 t13 t25 t28 t30 t34 t35 t57) -> (())
 
74
happyOut9 :: (HappyAbsSyn t11 t12 t13 t27 t30 t32 t36 t37 t59) -> (())
71
75
happyOut9 x = unsafeCoerce# x
72
76
{-# INLINE happyOut9 #-}
73
 
happyIn10 :: (([Pragma], [Declaration])) -> (HappyAbsSyn t11 t12 t13 t25 t28 t30 t34 t35 t57)
 
77
happyIn10 :: (([Pragma], [Declaration])) -> (HappyAbsSyn t11 t12 t13 t27 t30 t32 t36 t37 t59)
74
78
happyIn10 x = unsafeCoerce# x
75
79
{-# INLINE happyIn10 #-}
76
 
happyOut10 :: (HappyAbsSyn t11 t12 t13 t25 t28 t30 t34 t35 t57) -> (([Pragma], [Declaration]))
 
80
happyOut10 :: (HappyAbsSyn t11 t12 t13 t27 t30 t32 t36 t37 t59) -> (([Pragma], [Declaration]))
77
81
happyOut10 x = unsafeCoerce# x
78
82
{-# INLINE happyOut10 #-}
79
 
happyIn11 :: t11 -> (HappyAbsSyn t11 t12 t13 t25 t28 t30 t34 t35 t57)
 
83
happyIn11 :: t11 -> (HappyAbsSyn t11 t12 t13 t27 t30 t32 t36 t37 t59)
80
84
happyIn11 x = unsafeCoerce# x
81
85
{-# INLINE happyIn11 #-}
82
 
happyOut11 :: (HappyAbsSyn t11 t12 t13 t25 t28 t30 t34 t35 t57) -> t11
 
86
happyOut11 :: (HappyAbsSyn t11 t12 t13 t27 t30 t32 t36 t37 t59) -> t11
83
87
happyOut11 x = unsafeCoerce# x
84
88
{-# INLINE happyOut11 #-}
85
 
happyIn12 :: t12 -> (HappyAbsSyn t11 t12 t13 t25 t28 t30 t34 t35 t57)
 
89
happyIn12 :: t12 -> (HappyAbsSyn t11 t12 t13 t27 t30 t32 t36 t37 t59)
86
90
happyIn12 x = unsafeCoerce# x
87
91
{-# INLINE happyIn12 #-}
88
 
happyOut12 :: (HappyAbsSyn t11 t12 t13 t25 t28 t30 t34 t35 t57) -> t12
 
92
happyOut12 :: (HappyAbsSyn t11 t12 t13 t27 t30 t32 t36 t37 t59) -> t12
89
93
happyOut12 x = unsafeCoerce# x
90
94
{-# INLINE happyOut12 #-}
91
 
happyIn13 :: t13 -> (HappyAbsSyn t11 t12 t13 t25 t28 t30 t34 t35 t57)
 
95
happyIn13 :: t13 -> (HappyAbsSyn t11 t12 t13 t27 t30 t32 t36 t37 t59)
92
96
happyIn13 x = unsafeCoerce# x
93
97
{-# INLINE happyIn13 #-}
94
 
happyOut13 :: (HappyAbsSyn t11 t12 t13 t25 t28 t30 t34 t35 t57) -> t13
 
98
happyOut13 :: (HappyAbsSyn t11 t12 t13 t27 t30 t32 t36 t37 t59) -> t13
95
99
happyOut13 x = unsafeCoerce# x
96
100
{-# INLINE happyOut13 #-}
97
 
happyIn14 :: (()) -> (HappyAbsSyn t11 t12 t13 t25 t28 t30 t34 t35 t57)
 
101
happyIn14 :: (()) -> (HappyAbsSyn t11 t12 t13 t27 t30 t32 t36 t37 t59)
98
102
happyIn14 x = unsafeCoerce# x
99
103
{-# INLINE happyIn14 #-}
100
 
happyOut14 :: (HappyAbsSyn t11 t12 t13 t25 t28 t30 t34 t35 t57) -> (())
 
104
happyOut14 :: (HappyAbsSyn t11 t12 t13 t27 t30 t32 t36 t37 t59) -> (())
101
105
happyOut14 x = unsafeCoerce# x
102
106
{-# INLINE happyOut14 #-}
103
 
happyIn15 :: (Integer) -> (HappyAbsSyn t11 t12 t13 t25 t28 t30 t34 t35 t57)
 
107
happyIn15 :: (Integer) -> (HappyAbsSyn t11 t12 t13 t27 t30 t32 t36 t37 t59)
104
108
happyIn15 x = unsafeCoerce# x
105
109
{-# INLINE happyIn15 #-}
106
 
happyOut15 :: (HappyAbsSyn t11 t12 t13 t25 t28 t30 t34 t35 t57) -> (Integer)
 
110
happyOut15 :: (HappyAbsSyn t11 t12 t13 t27 t30 t32 t36 t37 t59) -> (Integer)
107
111
happyOut15 x = unsafeCoerce# x
108
112
{-# INLINE happyOut15 #-}
109
 
happyIn16 :: (Name) -> (HappyAbsSyn t11 t12 t13 t25 t28 t30 t34 t35 t57)
 
113
happyIn16 :: (Name) -> (HappyAbsSyn t11 t12 t13 t27 t30 t32 t36 t37 t59)
110
114
happyIn16 x = unsafeCoerce# x
111
115
{-# INLINE happyIn16 #-}
112
 
happyOut16 :: (HappyAbsSyn t11 t12 t13 t25 t28 t30 t34 t35 t57) -> (Name)
 
116
happyOut16 :: (HappyAbsSyn t11 t12 t13 t27 t30 t32 t36 t37 t59) -> (Name)
113
117
happyOut16 x = unsafeCoerce# x
114
118
{-# INLINE happyOut16 #-}
115
 
happyIn17 :: (QName) -> (HappyAbsSyn t11 t12 t13 t25 t28 t30 t34 t35 t57)
 
119
happyIn17 :: ([Name]) -> (HappyAbsSyn t11 t12 t13 t27 t30 t32 t36 t37 t59)
116
120
happyIn17 x = unsafeCoerce# x
117
121
{-# INLINE happyIn17 #-}
118
 
happyOut17 :: (HappyAbsSyn t11 t12 t13 t25 t28 t30 t34 t35 t57) -> (QName)
 
122
happyOut17 :: (HappyAbsSyn t11 t12 t13 t27 t30 t32 t36 t37 t59) -> ([Name])
119
123
happyOut17 x = unsafeCoerce# x
120
124
{-# INLINE happyOut17 #-}
121
 
happyIn18 :: (QName) -> (HappyAbsSyn t11 t12 t13 t25 t28 t30 t34 t35 t57)
 
125
happyIn18 :: ([(Hiding, Name)]) -> (HappyAbsSyn t11 t12 t13 t27 t30 t32 t36 t37 t59)
122
126
happyIn18 x = unsafeCoerce# x
123
127
{-# INLINE happyIn18 #-}
124
 
happyOut18 :: (HappyAbsSyn t11 t12 t13 t25 t28 t30 t34 t35 t57) -> (QName)
 
128
happyOut18 :: (HappyAbsSyn t11 t12 t13 t27 t30 t32 t36 t37 t59) -> ([(Hiding, Name)])
125
129
happyOut18 x = unsafeCoerce# x
126
130
{-# INLINE happyOut18 #-}
127
 
happyIn19 :: (Name) -> (HappyAbsSyn t11 t12 t13 t25 t28 t30 t34 t35 t57)
 
131
happyIn19 :: (QName) -> (HappyAbsSyn t11 t12 t13 t27 t30 t32 t36 t37 t59)
128
132
happyIn19 x = unsafeCoerce# x
129
133
{-# INLINE happyIn19 #-}
130
 
happyOut19 :: (HappyAbsSyn t11 t12 t13 t25 t28 t30 t34 t35 t57) -> (Name)
 
134
happyOut19 :: (HappyAbsSyn t11 t12 t13 t27 t30 t32 t36 t37 t59) -> (QName)
131
135
happyOut19 x = unsafeCoerce# x
132
136
{-# INLINE happyOut19 #-}
133
 
happyIn20 :: ([Name]) -> (HappyAbsSyn t11 t12 t13 t25 t28 t30 t34 t35 t57)
 
137
happyIn20 :: (QName) -> (HappyAbsSyn t11 t12 t13 t27 t30 t32 t36 t37 t59)
134
138
happyIn20 x = unsafeCoerce# x
135
139
{-# INLINE happyIn20 #-}
136
 
happyOut20 :: (HappyAbsSyn t11 t12 t13 t25 t28 t30 t34 t35 t57) -> ([Name])
 
140
happyOut20 :: (HappyAbsSyn t11 t12 t13 t27 t30 t32 t36 t37 t59) -> (QName)
137
141
happyOut20 x = unsafeCoerce# x
138
142
{-# INLINE happyOut20 #-}
139
 
happyIn21 :: ([Name]) -> (HappyAbsSyn t11 t12 t13 t25 t28 t30 t34 t35 t57)
 
143
happyIn21 :: (Name) -> (HappyAbsSyn t11 t12 t13 t27 t30 t32 t36 t37 t59)
140
144
happyIn21 x = unsafeCoerce# x
141
145
{-# INLINE happyIn21 #-}
142
 
happyOut21 :: (HappyAbsSyn t11 t12 t13 t25 t28 t30 t34 t35 t57) -> ([Name])
 
146
happyOut21 :: (HappyAbsSyn t11 t12 t13 t27 t30 t32 t36 t37 t59) -> (Name)
143
147
happyOut21 x = unsafeCoerce# x
144
148
{-# INLINE happyOut21 #-}
145
 
happyIn22 :: ([String]) -> (HappyAbsSyn t11 t12 t13 t25 t28 t30 t34 t35 t57)
 
149
happyIn22 :: ([Name]) -> (HappyAbsSyn t11 t12 t13 t27 t30 t32 t36 t37 t59)
146
150
happyIn22 x = unsafeCoerce# x
147
151
{-# INLINE happyIn22 #-}
148
 
happyOut22 :: (HappyAbsSyn t11 t12 t13 t25 t28 t30 t34 t35 t57) -> ([String])
 
152
happyOut22 :: (HappyAbsSyn t11 t12 t13 t27 t30 t32 t36 t37 t59) -> ([Name])
149
153
happyOut22 x = unsafeCoerce# x
150
154
{-# INLINE happyOut22 #-}
151
 
happyIn23 :: (QName) -> (HappyAbsSyn t11 t12 t13 t25 t28 t30 t34 t35 t57)
 
155
happyIn23 :: ([Name]) -> (HappyAbsSyn t11 t12 t13 t27 t30 t32 t36 t37 t59)
152
156
happyIn23 x = unsafeCoerce# x
153
157
{-# INLINE happyIn23 #-}
154
 
happyOut23 :: (HappyAbsSyn t11 t12 t13 t25 t28 t30 t34 t35 t57) -> (QName)
 
158
happyOut23 :: (HappyAbsSyn t11 t12 t13 t27 t30 t32 t36 t37 t59) -> ([Name])
155
159
happyOut23 x = unsafeCoerce# x
156
160
{-# INLINE happyOut23 #-}
157
 
happyIn24 :: (Expr) -> (HappyAbsSyn t11 t12 t13 t25 t28 t30 t34 t35 t57)
 
161
happyIn24 :: ([String]) -> (HappyAbsSyn t11 t12 t13 t27 t30 t32 t36 t37 t59)
158
162
happyIn24 x = unsafeCoerce# x
159
163
{-# INLINE happyIn24 #-}
160
 
happyOut24 :: (HappyAbsSyn t11 t12 t13 t25 t28 t30 t34 t35 t57) -> (Expr)
 
164
happyOut24 :: (HappyAbsSyn t11 t12 t13 t27 t30 t32 t36 t37 t59) -> ([String])
161
165
happyOut24 x = unsafeCoerce# x
162
166
{-# INLINE happyOut24 #-}
163
 
happyIn25 :: t25 -> (HappyAbsSyn t11 t12 t13 t25 t28 t30 t34 t35 t57)
 
167
happyIn25 :: (QName) -> (HappyAbsSyn t11 t12 t13 t27 t30 t32 t36 t37 t59)
164
168
happyIn25 x = unsafeCoerce# x
165
169
{-# INLINE happyIn25 #-}
166
 
happyOut25 :: (HappyAbsSyn t11 t12 t13 t25 t28 t30 t34 t35 t57) -> t25
 
170
happyOut25 :: (HappyAbsSyn t11 t12 t13 t27 t30 t32 t36 t37 t59) -> (QName)
167
171
happyOut25 x = unsafeCoerce# x
168
172
{-# INLINE happyOut25 #-}
169
 
happyIn26 :: ([Expr]) -> (HappyAbsSyn t11 t12 t13 t25 t28 t30 t34 t35 t57)
 
173
happyIn26 :: (Expr) -> (HappyAbsSyn t11 t12 t13 t27 t30 t32 t36 t37 t59)
170
174
happyIn26 x = unsafeCoerce# x
171
175
{-# INLINE happyIn26 #-}
172
 
happyOut26 :: (HappyAbsSyn t11 t12 t13 t25 t28 t30 t34 t35 t57) -> ([Expr])
 
176
happyOut26 :: (HappyAbsSyn t11 t12 t13 t27 t30 t32 t36 t37 t59) -> (Expr)
173
177
happyOut26 x = unsafeCoerce# x
174
178
{-# INLINE happyOut26 #-}
175
 
happyIn27 :: ([Expr]) -> (HappyAbsSyn t11 t12 t13 t25 t28 t30 t34 t35 t57)
 
179
happyIn27 :: t27 -> (HappyAbsSyn t11 t12 t13 t27 t30 t32 t36 t37 t59)
176
180
happyIn27 x = unsafeCoerce# x
177
181
{-# INLINE happyIn27 #-}
178
 
happyOut27 :: (HappyAbsSyn t11 t12 t13 t25 t28 t30 t34 t35 t57) -> ([Expr])
 
182
happyOut27 :: (HappyAbsSyn t11 t12 t13 t27 t30 t32 t36 t37 t59) -> t27
179
183
happyOut27 x = unsafeCoerce# x
180
184
{-# INLINE happyOut27 #-}
181
 
happyIn28 :: t28 -> (HappyAbsSyn t11 t12 t13 t25 t28 t30 t34 t35 t57)
 
185
happyIn28 :: ([Expr]) -> (HappyAbsSyn t11 t12 t13 t27 t30 t32 t36 t37 t59)
182
186
happyIn28 x = unsafeCoerce# x
183
187
{-# INLINE happyIn28 #-}
184
 
happyOut28 :: (HappyAbsSyn t11 t12 t13 t25 t28 t30 t34 t35 t57) -> t28
 
188
happyOut28 :: (HappyAbsSyn t11 t12 t13 t27 t30 t32 t36 t37 t59) -> ([Expr])
185
189
happyOut28 x = unsafeCoerce# x
186
190
{-# INLINE happyOut28 #-}
187
 
happyIn29 :: ([Expr]) -> (HappyAbsSyn t11 t12 t13 t25 t28 t30 t34 t35 t57)
 
191
happyIn29 :: ([Expr]) -> (HappyAbsSyn t11 t12 t13 t27 t30 t32 t36 t37 t59)
188
192
happyIn29 x = unsafeCoerce# x
189
193
{-# INLINE happyIn29 #-}
190
 
happyOut29 :: (HappyAbsSyn t11 t12 t13 t25 t28 t30 t34 t35 t57) -> ([Expr])
 
194
happyOut29 :: (HappyAbsSyn t11 t12 t13 t27 t30 t32 t36 t37 t59) -> ([Expr])
191
195
happyOut29 x = unsafeCoerce# x
192
196
{-# INLINE happyOut29 #-}
193
 
happyIn30 :: t30 -> (HappyAbsSyn t11 t12 t13 t25 t28 t30 t34 t35 t57)
 
197
happyIn30 :: t30 -> (HappyAbsSyn t11 t12 t13 t27 t30 t32 t36 t37 t59)
194
198
happyIn30 x = unsafeCoerce# x
195
199
{-# INLINE happyIn30 #-}
196
 
happyOut30 :: (HappyAbsSyn t11 t12 t13 t25 t28 t30 t34 t35 t57) -> t30
 
200
happyOut30 :: (HappyAbsSyn t11 t12 t13 t27 t30 t32 t36 t37 t59) -> t30
197
201
happyOut30 x = unsafeCoerce# x
198
202
{-# INLINE happyOut30 #-}
199
 
happyIn31 :: ([(Name, Expr)]) -> (HappyAbsSyn t11 t12 t13 t25 t28 t30 t34 t35 t57)
 
203
happyIn31 :: ([Expr]) -> (HappyAbsSyn t11 t12 t13 t27 t30 t32 t36 t37 t59)
200
204
happyIn31 x = unsafeCoerce# x
201
205
{-# INLINE happyIn31 #-}
202
 
happyOut31 :: (HappyAbsSyn t11 t12 t13 t25 t28 t30 t34 t35 t57) -> ([(Name, Expr)])
 
206
happyOut31 :: (HappyAbsSyn t11 t12 t13 t27 t30 t32 t36 t37 t59) -> ([Expr])
203
207
happyOut31 x = unsafeCoerce# x
204
208
{-# INLINE happyOut31 #-}
205
 
happyIn32 :: ([(Name, Expr)]) -> (HappyAbsSyn t11 t12 t13 t25 t28 t30 t34 t35 t57)
 
209
happyIn32 :: t32 -> (HappyAbsSyn t11 t12 t13 t27 t30 t32 t36 t37 t59)
206
210
happyIn32 x = unsafeCoerce# x
207
211
{-# INLINE happyIn32 #-}
208
 
happyOut32 :: (HappyAbsSyn t11 t12 t13 t25 t28 t30 t34 t35 t57) -> ([(Name, Expr)])
 
212
happyOut32 :: (HappyAbsSyn t11 t12 t13 t27 t30 t32 t36 t37 t59) -> t32
209
213
happyOut32 x = unsafeCoerce# x
210
214
{-# INLINE happyOut32 #-}
211
 
happyIn33 :: ((Name, Expr)) -> (HappyAbsSyn t11 t12 t13 t25 t28 t30 t34 t35 t57)
 
215
happyIn33 :: ([(Name, Expr)]) -> (HappyAbsSyn t11 t12 t13 t27 t30 t32 t36 t37 t59)
212
216
happyIn33 x = unsafeCoerce# x
213
217
{-# INLINE happyIn33 #-}
214
 
happyOut33 :: (HappyAbsSyn t11 t12 t13 t25 t28 t30 t34 t35 t57) -> ((Name, Expr))
 
218
happyOut33 :: (HappyAbsSyn t11 t12 t13 t27 t30 t32 t36 t37 t59) -> ([(Name, Expr)])
215
219
happyOut33 x = unsafeCoerce# x
216
220
{-# INLINE happyOut33 #-}
217
 
happyIn34 :: t34 -> (HappyAbsSyn t11 t12 t13 t25 t28 t30 t34 t35 t57)
 
221
happyIn34 :: ([(Name, Expr)]) -> (HappyAbsSyn t11 t12 t13 t27 t30 t32 t36 t37 t59)
218
222
happyIn34 x = unsafeCoerce# x
219
223
{-# INLINE happyIn34 #-}
220
 
happyOut34 :: (HappyAbsSyn t11 t12 t13 t25 t28 t30 t34 t35 t57) -> t34
 
224
happyOut34 :: (HappyAbsSyn t11 t12 t13 t27 t30 t32 t36 t37 t59) -> ([(Name, Expr)])
221
225
happyOut34 x = unsafeCoerce# x
222
226
{-# INLINE happyOut34 #-}
223
 
happyIn35 :: t35 -> (HappyAbsSyn t11 t12 t13 t25 t28 t30 t34 t35 t57)
 
227
happyIn35 :: ((Name, Expr)) -> (HappyAbsSyn t11 t12 t13 t27 t30 t32 t36 t37 t59)
224
228
happyIn35 x = unsafeCoerce# x
225
229
{-# INLINE happyIn35 #-}
226
 
happyOut35 :: (HappyAbsSyn t11 t12 t13 t25 t28 t30 t34 t35 t57) -> t35
 
230
happyOut35 :: (HappyAbsSyn t11 t12 t13 t27 t30 t32 t36 t37 t59) -> ((Name, Expr))
227
231
happyOut35 x = unsafeCoerce# x
228
232
{-# INLINE happyOut35 #-}
229
 
happyIn36 :: ([TypedBindings]) -> (HappyAbsSyn t11 t12 t13 t25 t28 t30 t34 t35 t57)
 
233
happyIn36 :: t36 -> (HappyAbsSyn t11 t12 t13 t27 t30 t32 t36 t37 t59)
230
234
happyIn36 x = unsafeCoerce# x
231
235
{-# INLINE happyIn36 #-}
232
 
happyOut36 :: (HappyAbsSyn t11 t12 t13 t25 t28 t30 t34 t35 t57) -> ([TypedBindings])
 
236
happyOut36 :: (HappyAbsSyn t11 t12 t13 t27 t30 t32 t36 t37 t59) -> t36
233
237
happyOut36 x = unsafeCoerce# x
234
238
{-# INLINE happyOut36 #-}
235
 
happyIn37 :: (TypedBindings) -> (HappyAbsSyn t11 t12 t13 t25 t28 t30 t34 t35 t57)
 
239
happyIn37 :: t37 -> (HappyAbsSyn t11 t12 t13 t27 t30 t32 t36 t37 t59)
236
240
happyIn37 x = unsafeCoerce# x
237
241
{-# INLINE happyIn37 #-}
238
 
happyOut37 :: (HappyAbsSyn t11 t12 t13 t25 t28 t30 t34 t35 t57) -> (TypedBindings)
 
242
happyOut37 :: (HappyAbsSyn t11 t12 t13 t27 t30 t32 t36 t37 t59) -> t37
239
243
happyOut37 x = unsafeCoerce# x
240
244
{-# INLINE happyOut37 #-}
241
 
happyIn38 :: ([TypedBinding]) -> (HappyAbsSyn t11 t12 t13 t25 t28 t30 t34 t35 t57)
 
245
happyIn38 :: ([TypedBindings]) -> (HappyAbsSyn t11 t12 t13 t27 t30 t32 t36 t37 t59)
242
246
happyIn38 x = unsafeCoerce# x
243
247
{-# INLINE happyIn38 #-}
244
 
happyOut38 :: (HappyAbsSyn t11 t12 t13 t25 t28 t30 t34 t35 t57) -> ([TypedBinding])
 
248
happyOut38 :: (HappyAbsSyn t11 t12 t13 t27 t30 t32 t36 t37 t59) -> ([TypedBindings])
245
249
happyOut38 x = unsafeCoerce# x
246
250
{-# INLINE happyOut38 #-}
247
 
happyIn39 :: ([TypedBinding]) -> (HappyAbsSyn t11 t12 t13 t25 t28 t30 t34 t35 t57)
 
251
happyIn39 :: (TypedBindings) -> (HappyAbsSyn t11 t12 t13 t27 t30 t32 t36 t37 t59)
248
252
happyIn39 x = unsafeCoerce# x
249
253
{-# INLINE happyIn39 #-}
250
 
happyOut39 :: (HappyAbsSyn t11 t12 t13 t25 t28 t30 t34 t35 t57) -> ([TypedBinding])
 
254
happyOut39 :: (HappyAbsSyn t11 t12 t13 t27 t30 t32 t36 t37 t59) -> (TypedBindings)
251
255
happyOut39 x = unsafeCoerce# x
252
256
{-# INLINE happyOut39 #-}
253
 
happyIn40 :: (TypedBinding) -> (HappyAbsSyn t11 t12 t13 t25 t28 t30 t34 t35 t57)
 
257
happyIn40 :: ([TypedBinding]) -> (HappyAbsSyn t11 t12 t13 t27 t30 t32 t36 t37 t59)
254
258
happyIn40 x = unsafeCoerce# x
255
259
{-# INLINE happyIn40 #-}
256
 
happyOut40 :: (HappyAbsSyn t11 t12 t13 t25 t28 t30 t34 t35 t57) -> (TypedBinding)
 
260
happyOut40 :: (HappyAbsSyn t11 t12 t13 t27 t30 t32 t36 t37 t59) -> ([TypedBinding])
257
261
happyOut40 x = unsafeCoerce# x
258
262
{-# INLINE happyOut40 #-}
259
 
happyIn41 :: ([LamBinding]) -> (HappyAbsSyn t11 t12 t13 t25 t28 t30 t34 t35 t57)
 
263
happyIn41 :: ([TypedBinding]) -> (HappyAbsSyn t11 t12 t13 t27 t30 t32 t36 t37 t59)
260
264
happyIn41 x = unsafeCoerce# x
261
265
{-# INLINE happyIn41 #-}
262
 
happyOut41 :: (HappyAbsSyn t11 t12 t13 t25 t28 t30 t34 t35 t57) -> ([LamBinding])
 
266
happyOut41 :: (HappyAbsSyn t11 t12 t13 t27 t30 t32 t36 t37 t59) -> ([TypedBinding])
263
267
happyOut41 x = unsafeCoerce# x
264
268
{-# INLINE happyOut41 #-}
265
 
happyIn42 :: (([LamBinding], Hiding)) -> (HappyAbsSyn t11 t12 t13 t25 t28 t30 t34 t35 t57)
 
269
happyIn42 :: (TypedBinding) -> (HappyAbsSyn t11 t12 t13 t27 t30 t32 t36 t37 t59)
266
270
happyIn42 x = unsafeCoerce# x
267
271
{-# INLINE happyIn42 #-}
268
 
happyOut42 :: (HappyAbsSyn t11 t12 t13 t25 t28 t30 t34 t35 t57) -> (([LamBinding], Hiding))
 
272
happyOut42 :: (HappyAbsSyn t11 t12 t13 t27 t30 t32 t36 t37 t59) -> (TypedBinding)
269
273
happyOut42 x = unsafeCoerce# x
270
274
{-# INLINE happyOut42 #-}
271
 
happyIn43 :: ([Either Hiding LamBinding]) -> (HappyAbsSyn t11 t12 t13 t25 t28 t30 t34 t35 t57)
 
275
happyIn43 :: ([LamBinding]) -> (HappyAbsSyn t11 t12 t13 t27 t30 t32 t36 t37 t59)
272
276
happyIn43 x = unsafeCoerce# x
273
277
{-# INLINE happyIn43 #-}
274
 
happyOut43 :: (HappyAbsSyn t11 t12 t13 t25 t28 t30 t34 t35 t57) -> ([Either Hiding LamBinding])
 
278
happyOut43 :: (HappyAbsSyn t11 t12 t13 t27 t30 t32 t36 t37 t59) -> ([LamBinding])
275
279
happyOut43 x = unsafeCoerce# x
276
280
{-# INLINE happyOut43 #-}
277
 
happyIn44 :: ([LamBinding]) -> (HappyAbsSyn t11 t12 t13 t25 t28 t30 t34 t35 t57)
 
281
happyIn44 :: (([LamBinding], Hiding)) -> (HappyAbsSyn t11 t12 t13 t27 t30 t32 t36 t37 t59)
278
282
happyIn44 x = unsafeCoerce# x
279
283
{-# INLINE happyIn44 #-}
280
 
happyOut44 :: (HappyAbsSyn t11 t12 t13 t25 t28 t30 t34 t35 t57) -> ([LamBinding])
 
284
happyOut44 :: (HappyAbsSyn t11 t12 t13 t27 t30 t32 t36 t37 t59) -> (([LamBinding], Hiding))
281
285
happyOut44 x = unsafeCoerce# x
282
286
{-# INLINE happyOut44 #-}
283
 
happyIn45 :: ([LamBinding]) -> (HappyAbsSyn t11 t12 t13 t25 t28 t30 t34 t35 t57)
 
287
happyIn45 :: ([Either Hiding LamBinding]) -> (HappyAbsSyn t11 t12 t13 t27 t30 t32 t36 t37 t59)
284
288
happyIn45 x = unsafeCoerce# x
285
289
{-# INLINE happyIn45 #-}
286
 
happyOut45 :: (HappyAbsSyn t11 t12 t13 t25 t28 t30 t34 t35 t57) -> ([LamBinding])
 
290
happyOut45 :: (HappyAbsSyn t11 t12 t13 t27 t30 t32 t36 t37 t59) -> ([Either Hiding LamBinding])
287
291
happyOut45 x = unsafeCoerce# x
288
292
{-# INLINE happyOut45 #-}
289
 
happyIn46 :: ((Maybe AsName, ImportDirective)) -> (HappyAbsSyn t11 t12 t13 t25 t28 t30 t34 t35 t57)
 
293
happyIn46 :: ([LamBinding]) -> (HappyAbsSyn t11 t12 t13 t27 t30 t32 t36 t37 t59)
290
294
happyIn46 x = unsafeCoerce# x
291
295
{-# INLINE happyIn46 #-}
292
 
happyOut46 :: (HappyAbsSyn t11 t12 t13 t25 t28 t30 t34 t35 t57) -> ((Maybe AsName, ImportDirective))
 
296
happyOut46 :: (HappyAbsSyn t11 t12 t13 t27 t30 t32 t36 t37 t59) -> ([LamBinding])
293
297
happyOut46 x = unsafeCoerce# x
294
298
{-# INLINE happyOut46 #-}
295
 
happyIn47 :: (ImportDirective) -> (HappyAbsSyn t11 t12 t13 t25 t28 t30 t34 t35 t57)
 
299
happyIn47 :: ([LamBinding]) -> (HappyAbsSyn t11 t12 t13 t27 t30 t32 t36 t37 t59)
296
300
happyIn47 x = unsafeCoerce# x
297
301
{-# INLINE happyIn47 #-}
298
 
happyOut47 :: (HappyAbsSyn t11 t12 t13 t25 t28 t30 t34 t35 t57) -> (ImportDirective)
 
302
happyOut47 :: (HappyAbsSyn t11 t12 t13 t27 t30 t32 t36 t37 t59) -> ([LamBinding])
299
303
happyOut47 x = unsafeCoerce# x
300
304
{-# INLINE happyOut47 #-}
301
 
happyIn48 :: (ImportDirective) -> (HappyAbsSyn t11 t12 t13 t25 t28 t30 t34 t35 t57)
 
305
happyIn48 :: ((Maybe AsName, ImportDirective)) -> (HappyAbsSyn t11 t12 t13 t27 t30 t32 t36 t37 t59)
302
306
happyIn48 x = unsafeCoerce# x
303
307
{-# INLINE happyIn48 #-}
304
 
happyOut48 :: (HappyAbsSyn t11 t12 t13 t25 t28 t30 t34 t35 t57) -> (ImportDirective)
 
308
happyOut48 :: (HappyAbsSyn t11 t12 t13 t27 t30 t32 t36 t37 t59) -> ((Maybe AsName, ImportDirective))
305
309
happyOut48 x = unsafeCoerce# x
306
310
{-# INLINE happyOut48 #-}
307
 
happyIn49 :: (ImportDirective) -> (HappyAbsSyn t11 t12 t13 t25 t28 t30 t34 t35 t57)
 
311
happyIn49 :: (ImportDirective) -> (HappyAbsSyn t11 t12 t13 t27 t30 t32 t36 t37 t59)
308
312
happyIn49 x = unsafeCoerce# x
309
313
{-# INLINE happyIn49 #-}
310
 
happyOut49 :: (HappyAbsSyn t11 t12 t13 t25 t28 t30 t34 t35 t57) -> (ImportDirective)
 
314
happyOut49 :: (HappyAbsSyn t11 t12 t13 t27 t30 t32 t36 t37 t59) -> (ImportDirective)
311
315
happyOut49 x = unsafeCoerce# x
312
316
{-# INLINE happyOut49 #-}
313
 
happyIn50 :: (UsingOrHiding) -> (HappyAbsSyn t11 t12 t13 t25 t28 t30 t34 t35 t57)
 
317
happyIn50 :: (ImportDirective) -> (HappyAbsSyn t11 t12 t13 t27 t30 t32 t36 t37 t59)
314
318
happyIn50 x = unsafeCoerce# x
315
319
{-# INLINE happyIn50 #-}
316
 
happyOut50 :: (HappyAbsSyn t11 t12 t13 t25 t28 t30 t34 t35 t57) -> (UsingOrHiding)
 
320
happyOut50 :: (HappyAbsSyn t11 t12 t13 t27 t30 t32 t36 t37 t59) -> (ImportDirective)
317
321
happyOut50 x = unsafeCoerce# x
318
322
{-# INLINE happyOut50 #-}
319
 
happyIn51 :: ([Renaming]) -> (HappyAbsSyn t11 t12 t13 t25 t28 t30 t34 t35 t57)
 
323
happyIn51 :: (ImportDirective) -> (HappyAbsSyn t11 t12 t13 t27 t30 t32 t36 t37 t59)
320
324
happyIn51 x = unsafeCoerce# x
321
325
{-# INLINE happyIn51 #-}
322
 
happyOut51 :: (HappyAbsSyn t11 t12 t13 t25 t28 t30 t34 t35 t57) -> ([Renaming])
 
326
happyOut51 :: (HappyAbsSyn t11 t12 t13 t27 t30 t32 t36 t37 t59) -> (ImportDirective)
323
327
happyOut51 x = unsafeCoerce# x
324
328
{-# INLINE happyOut51 #-}
325
 
happyIn52 :: ([Renaming]) -> (HappyAbsSyn t11 t12 t13 t25 t28 t30 t34 t35 t57)
 
329
happyIn52 :: (UsingOrHiding) -> (HappyAbsSyn t11 t12 t13 t27 t30 t32 t36 t37 t59)
326
330
happyIn52 x = unsafeCoerce# x
327
331
{-# INLINE happyIn52 #-}
328
 
happyOut52 :: (HappyAbsSyn t11 t12 t13 t25 t28 t30 t34 t35 t57) -> ([Renaming])
 
332
happyOut52 :: (HappyAbsSyn t11 t12 t13 t27 t30 t32 t36 t37 t59) -> (UsingOrHiding)
329
333
happyOut52 x = unsafeCoerce# x
330
334
{-# INLINE happyOut52 #-}
331
 
happyIn53 :: (Renaming) -> (HappyAbsSyn t11 t12 t13 t25 t28 t30 t34 t35 t57)
 
335
happyIn53 :: ([Renaming]) -> (HappyAbsSyn t11 t12 t13 t27 t30 t32 t36 t37 t59)
332
336
happyIn53 x = unsafeCoerce# x
333
337
{-# INLINE happyIn53 #-}
334
 
happyOut53 :: (HappyAbsSyn t11 t12 t13 t25 t28 t30 t34 t35 t57) -> (Renaming)
 
338
happyOut53 :: (HappyAbsSyn t11 t12 t13 t27 t30 t32 t36 t37 t59) -> ([Renaming])
335
339
happyOut53 x = unsafeCoerce# x
336
340
{-# INLINE happyOut53 #-}
337
 
happyIn54 :: (ImportedName) -> (HappyAbsSyn t11 t12 t13 t25 t28 t30 t34 t35 t57)
 
341
happyIn54 :: ([Renaming]) -> (HappyAbsSyn t11 t12 t13 t27 t30 t32 t36 t37 t59)
338
342
happyIn54 x = unsafeCoerce# x
339
343
{-# INLINE happyIn54 #-}
340
 
happyOut54 :: (HappyAbsSyn t11 t12 t13 t25 t28 t30 t34 t35 t57) -> (ImportedName)
 
344
happyOut54 :: (HappyAbsSyn t11 t12 t13 t27 t30 t32 t36 t37 t59) -> ([Renaming])
341
345
happyOut54 x = unsafeCoerce# x
342
346
{-# INLINE happyOut54 #-}
343
 
happyIn55 :: (ImportedName) -> (HappyAbsSyn t11 t12 t13 t25 t28 t30 t34 t35 t57)
 
347
happyIn55 :: (Renaming) -> (HappyAbsSyn t11 t12 t13 t27 t30 t32 t36 t37 t59)
344
348
happyIn55 x = unsafeCoerce# x
345
349
{-# INLINE happyIn55 #-}
346
 
happyOut55 :: (HappyAbsSyn t11 t12 t13 t25 t28 t30 t34 t35 t57) -> (ImportedName)
 
350
happyOut55 :: (HappyAbsSyn t11 t12 t13 t27 t30 t32 t36 t37 t59) -> (Renaming)
347
351
happyOut55 x = unsafeCoerce# x
348
352
{-# INLINE happyOut55 #-}
349
 
happyIn56 :: ([ImportedName]) -> (HappyAbsSyn t11 t12 t13 t25 t28 t30 t34 t35 t57)
 
353
happyIn56 :: (ImportedName) -> (HappyAbsSyn t11 t12 t13 t27 t30 t32 t36 t37 t59)
350
354
happyIn56 x = unsafeCoerce# x
351
355
{-# INLINE happyIn56 #-}
352
 
happyOut56 :: (HappyAbsSyn t11 t12 t13 t25 t28 t30 t34 t35 t57) -> ([ImportedName])
 
356
happyOut56 :: (HappyAbsSyn t11 t12 t13 t27 t30 t32 t36 t37 t59) -> (ImportedName)
353
357
happyOut56 x = unsafeCoerce# x
354
358
{-# INLINE happyOut56 #-}
355
 
happyIn57 :: t57 -> (HappyAbsSyn t11 t12 t13 t25 t28 t30 t34 t35 t57)
 
359
happyIn57 :: (ImportedName) -> (HappyAbsSyn t11 t12 t13 t27 t30 t32 t36 t37 t59)
356
360
happyIn57 x = unsafeCoerce# x
357
361
{-# INLINE happyIn57 #-}
358
 
happyOut57 :: (HappyAbsSyn t11 t12 t13 t25 t28 t30 t34 t35 t57) -> t57
 
362
happyOut57 :: (HappyAbsSyn t11 t12 t13 t27 t30 t32 t36 t37 t59) -> (ImportedName)
359
363
happyOut57 x = unsafeCoerce# x
360
364
{-# INLINE happyOut57 #-}
361
 
happyIn58 :: (LHS) -> (HappyAbsSyn t11 t12 t13 t25 t28 t30 t34 t35 t57)
 
365
happyIn58 :: ([ImportedName]) -> (HappyAbsSyn t11 t12 t13 t27 t30 t32 t36 t37 t59)
362
366
happyIn58 x = unsafeCoerce# x
363
367
{-# INLINE happyIn58 #-}
364
 
happyOut58 :: (HappyAbsSyn t11 t12 t13 t25 t28 t30 t34 t35 t57) -> (LHS)
 
368
happyOut58 :: (HappyAbsSyn t11 t12 t13 t27 t30 t32 t36 t37 t59) -> ([ImportedName])
365
369
happyOut58 x = unsafeCoerce# x
366
370
{-# INLINE happyOut58 #-}
367
 
happyIn59 :: ([Pattern]) -> (HappyAbsSyn t11 t12 t13 t25 t28 t30 t34 t35 t57)
 
371
happyIn59 :: t59 -> (HappyAbsSyn t11 t12 t13 t27 t30 t32 t36 t37 t59)
368
372
happyIn59 x = unsafeCoerce# x
369
373
{-# INLINE happyIn59 #-}
370
 
happyOut59 :: (HappyAbsSyn t11 t12 t13 t25 t28 t30 t34 t35 t57) -> ([Pattern])
 
374
happyOut59 :: (HappyAbsSyn t11 t12 t13 t27 t30 t32 t36 t37 t59) -> t59
371
375
happyOut59 x = unsafeCoerce# x
372
376
{-# INLINE happyOut59 #-}
373
 
happyIn60 :: ([Expr]) -> (HappyAbsSyn t11 t12 t13 t25 t28 t30 t34 t35 t57)
 
377
happyIn60 :: (LHS) -> (HappyAbsSyn t11 t12 t13 t27 t30 t32 t36 t37 t59)
374
378
happyIn60 x = unsafeCoerce# x
375
379
{-# INLINE happyIn60 #-}
376
 
happyOut60 :: (HappyAbsSyn t11 t12 t13 t25 t28 t30 t34 t35 t57) -> ([Expr])
 
380
happyOut60 :: (HappyAbsSyn t11 t12 t13 t27 t30 t32 t36 t37 t59) -> (LHS)
377
381
happyOut60 x = unsafeCoerce# x
378
382
{-# INLINE happyOut60 #-}
379
 
happyIn61 :: (WhereClause) -> (HappyAbsSyn t11 t12 t13 t25 t28 t30 t34 t35 t57)
 
383
happyIn61 :: ([Pattern]) -> (HappyAbsSyn t11 t12 t13 t27 t30 t32 t36 t37 t59)
380
384
happyIn61 x = unsafeCoerce# x
381
385
{-# INLINE happyIn61 #-}
382
 
happyOut61 :: (HappyAbsSyn t11 t12 t13 t25 t28 t30 t34 t35 t57) -> (WhereClause)
 
386
happyOut61 :: (HappyAbsSyn t11 t12 t13 t27 t30 t32 t36 t37 t59) -> ([Pattern])
383
387
happyOut61 x = unsafeCoerce# x
384
388
{-# INLINE happyOut61 #-}
385
 
happyIn62 :: ([Declaration]) -> (HappyAbsSyn t11 t12 t13 t25 t28 t30 t34 t35 t57)
 
389
happyIn62 :: ([Expr]) -> (HappyAbsSyn t11 t12 t13 t27 t30 t32 t36 t37 t59)
386
390
happyIn62 x = unsafeCoerce# x
387
391
{-# INLINE happyIn62 #-}
388
 
happyOut62 :: (HappyAbsSyn t11 t12 t13 t25 t28 t30 t34 t35 t57) -> ([Declaration])
 
392
happyOut62 :: (HappyAbsSyn t11 t12 t13 t27 t30 t32 t36 t37 t59) -> ([Expr])
389
393
happyOut62 x = unsafeCoerce# x
390
394
{-# INLINE happyOut62 #-}
391
 
happyIn63 :: (Declaration) -> (HappyAbsSyn t11 t12 t13 t25 t28 t30 t34 t35 t57)
 
395
happyIn63 :: ([Expr]) -> (HappyAbsSyn t11 t12 t13 t27 t30 t32 t36 t37 t59)
392
396
happyIn63 x = unsafeCoerce# x
393
397
{-# INLINE happyIn63 #-}
394
 
happyOut63 :: (HappyAbsSyn t11 t12 t13 t25 t28 t30 t34 t35 t57) -> (Declaration)
 
398
happyOut63 :: (HappyAbsSyn t11 t12 t13 t27 t30 t32 t36 t37 t59) -> ([Expr])
395
399
happyOut63 x = unsafeCoerce# x
396
400
{-# INLINE happyOut63 #-}
397
 
happyIn64 :: (Declaration) -> (HappyAbsSyn t11 t12 t13 t25 t28 t30 t34 t35 t57)
 
401
happyIn64 :: (WhereClause) -> (HappyAbsSyn t11 t12 t13 t27 t30 t32 t36 t37 t59)
398
402
happyIn64 x = unsafeCoerce# x
399
403
{-# INLINE happyIn64 #-}
400
 
happyOut64 :: (HappyAbsSyn t11 t12 t13 t25 t28 t30 t34 t35 t57) -> (Declaration)
 
404
happyOut64 :: (HappyAbsSyn t11 t12 t13 t27 t30 t32 t36 t37 t59) -> (WhereClause)
401
405
happyOut64 x = unsafeCoerce# x
402
406
{-# INLINE happyOut64 #-}
403
 
happyIn65 :: (RHS) -> (HappyAbsSyn t11 t12 t13 t25 t28 t30 t34 t35 t57)
 
407
happyIn65 :: ([Declaration]) -> (HappyAbsSyn t11 t12 t13 t27 t30 t32 t36 t37 t59)
404
408
happyIn65 x = unsafeCoerce# x
405
409
{-# INLINE happyIn65 #-}
406
 
happyOut65 :: (HappyAbsSyn t11 t12 t13 t25 t28 t30 t34 t35 t57) -> (RHS)
 
410
happyOut65 :: (HappyAbsSyn t11 t12 t13 t27 t30 t32 t36 t37 t59) -> ([Declaration])
407
411
happyOut65 x = unsafeCoerce# x
408
412
{-# INLINE happyOut65 #-}
409
 
happyIn66 :: (Declaration) -> (HappyAbsSyn t11 t12 t13 t25 t28 t30 t34 t35 t57)
 
413
happyIn66 :: (Declaration) -> (HappyAbsSyn t11 t12 t13 t27 t30 t32 t36 t37 t59)
410
414
happyIn66 x = unsafeCoerce# x
411
415
{-# INLINE happyIn66 #-}
412
 
happyOut66 :: (HappyAbsSyn t11 t12 t13 t25 t28 t30 t34 t35 t57) -> (Declaration)
 
416
happyOut66 :: (HappyAbsSyn t11 t12 t13 t27 t30 t32 t36 t37 t59) -> (Declaration)
413
417
happyOut66 x = unsafeCoerce# x
414
418
{-# INLINE happyOut66 #-}
415
 
happyIn67 :: (Declaration) -> (HappyAbsSyn t11 t12 t13 t25 t28 t30 t34 t35 t57)
 
419
happyIn67 :: ([Declaration]) -> (HappyAbsSyn t11 t12 t13 t27 t30 t32 t36 t37 t59)
416
420
happyIn67 x = unsafeCoerce# x
417
421
{-# INLINE happyIn67 #-}
418
 
happyOut67 :: (HappyAbsSyn t11 t12 t13 t25 t28 t30 t34 t35 t57) -> (Declaration)
 
422
happyOut67 :: (HappyAbsSyn t11 t12 t13 t27 t30 t32 t36 t37 t59) -> ([Declaration])
419
423
happyOut67 x = unsafeCoerce# x
420
424
{-# INLINE happyOut67 #-}
421
 
happyIn68 :: (Declaration) -> (HappyAbsSyn t11 t12 t13 t25 t28 t30 t34 t35 t57)
 
425
happyIn68 :: ([(Hiding, Declaration)]) -> (HappyAbsSyn t11 t12 t13 t27 t30 t32 t36 t37 t59)
422
426
happyIn68 x = unsafeCoerce# x
423
427
{-# INLINE happyIn68 #-}
424
 
happyOut68 :: (HappyAbsSyn t11 t12 t13 t25 t28 t30 t34 t35 t57) -> (Declaration)
 
428
happyOut68 :: (HappyAbsSyn t11 t12 t13 t27 t30 t32 t36 t37 t59) -> ([(Hiding, Declaration)])
425
429
happyOut68 x = unsafeCoerce# x
426
430
{-# INLINE happyOut68 #-}
427
 
happyIn69 :: ([Declaration]) -> (HappyAbsSyn t11 t12 t13 t25 t28 t30 t34 t35 t57)
 
431
happyIn69 :: (Declaration) -> (HappyAbsSyn t11 t12 t13 t27 t30 t32 t36 t37 t59)
428
432
happyIn69 x = unsafeCoerce# x
429
433
{-# INLINE happyIn69 #-}
430
 
happyOut69 :: (HappyAbsSyn t11 t12 t13 t25 t28 t30 t34 t35 t57) -> ([Declaration])
 
434
happyOut69 :: (HappyAbsSyn t11 t12 t13 t27 t30 t32 t36 t37 t59) -> (Declaration)
431
435
happyOut69 x = unsafeCoerce# x
432
436
{-# INLINE happyOut69 #-}
433
 
happyIn70 :: (Declaration) -> (HappyAbsSyn t11 t12 t13 t25 t28 t30 t34 t35 t57)
 
437
happyIn70 :: (RHS) -> (HappyAbsSyn t11 t12 t13 t27 t30 t32 t36 t37 t59)
434
438
happyIn70 x = unsafeCoerce# x
435
439
{-# INLINE happyIn70 #-}
436
 
happyOut70 :: (HappyAbsSyn t11 t12 t13 t25 t28 t30 t34 t35 t57) -> (Declaration)
 
440
happyOut70 :: (HappyAbsSyn t11 t12 t13 t27 t30 t32 t36 t37 t59) -> (RHS)
437
441
happyOut70 x = unsafeCoerce# x
438
442
{-# INLINE happyOut70 #-}
439
 
happyIn71 :: (Declaration) -> (HappyAbsSyn t11 t12 t13 t25 t28 t30 t34 t35 t57)
 
443
happyIn71 :: (Declaration) -> (HappyAbsSyn t11 t12 t13 t27 t30 t32 t36 t37 t59)
440
444
happyIn71 x = unsafeCoerce# x
441
445
{-# INLINE happyIn71 #-}
442
 
happyOut71 :: (HappyAbsSyn t11 t12 t13 t25 t28 t30 t34 t35 t57) -> (Declaration)
 
446
happyOut71 :: (HappyAbsSyn t11 t12 t13 t27 t30 t32 t36 t37 t59) -> (Declaration)
443
447
happyOut71 x = unsafeCoerce# x
444
448
{-# INLINE happyOut71 #-}
445
 
happyIn72 :: (Declaration) -> (HappyAbsSyn t11 t12 t13 t25 t28 t30 t34 t35 t57)
 
449
happyIn72 :: (Declaration) -> (HappyAbsSyn t11 t12 t13 t27 t30 t32 t36 t37 t59)
446
450
happyIn72 x = unsafeCoerce# x
447
451
{-# INLINE happyIn72 #-}
448
 
happyOut72 :: (HappyAbsSyn t11 t12 t13 t25 t28 t30 t34 t35 t57) -> (Declaration)
 
452
happyOut72 :: (HappyAbsSyn t11 t12 t13 t27 t30 t32 t36 t37 t59) -> (Declaration)
449
453
happyOut72 x = unsafeCoerce# x
450
454
{-# INLINE happyOut72 #-}
451
 
happyIn73 :: (Declaration) -> (HappyAbsSyn t11 t12 t13 t25 t28 t30 t34 t35 t57)
 
455
happyIn73 :: (Name) -> (HappyAbsSyn t11 t12 t13 t27 t30 t32 t36 t37 t59)
452
456
happyIn73 x = unsafeCoerce# x
453
457
{-# INLINE happyIn73 #-}
454
 
happyOut73 :: (HappyAbsSyn t11 t12 t13 t25 t28 t30 t34 t35 t57) -> (Declaration)
 
458
happyOut73 :: (HappyAbsSyn t11 t12 t13 t27 t30 t32 t36 t37 t59) -> (Name)
455
459
happyOut73 x = unsafeCoerce# x
456
460
{-# INLINE happyOut73 #-}
457
 
happyIn74 :: (Declaration) -> (HappyAbsSyn t11 t12 t13 t25 t28 t30 t34 t35 t57)
 
461
happyIn74 :: (Declaration) -> (HappyAbsSyn t11 t12 t13 t27 t30 t32 t36 t37 t59)
458
462
happyIn74 x = unsafeCoerce# x
459
463
{-# INLINE happyIn74 #-}
460
 
happyOut74 :: (HappyAbsSyn t11 t12 t13 t25 t28 t30 t34 t35 t57) -> (Declaration)
 
464
happyOut74 :: (HappyAbsSyn t11 t12 t13 t27 t30 t32 t36 t37 t59) -> (Declaration)
461
465
happyOut74 x = unsafeCoerce# x
462
466
{-# INLINE happyOut74 #-}
463
 
happyIn75 :: (Declaration) -> (HappyAbsSyn t11 t12 t13 t25 t28 t30 t34 t35 t57)
 
467
happyIn75 :: ([Declaration]) -> (HappyAbsSyn t11 t12 t13 t27 t30 t32 t36 t37 t59)
464
468
happyIn75 x = unsafeCoerce# x
465
469
{-# INLINE happyIn75 #-}
466
 
happyOut75 :: (HappyAbsSyn t11 t12 t13 t25 t28 t30 t34 t35 t57) -> (Declaration)
 
470
happyOut75 :: (HappyAbsSyn t11 t12 t13 t27 t30 t32 t36 t37 t59) -> ([Declaration])
467
471
happyOut75 x = unsafeCoerce# x
468
472
{-# INLINE happyOut75 #-}
469
 
happyIn76 :: ([Expr]) -> (HappyAbsSyn t11 t12 t13 t25 t28 t30 t34 t35 t57)
 
473
happyIn76 :: (Declaration) -> (HappyAbsSyn t11 t12 t13 t27 t30 t32 t36 t37 t59)
470
474
happyIn76 x = unsafeCoerce# x
471
475
{-# INLINE happyIn76 #-}
472
 
happyOut76 :: (HappyAbsSyn t11 t12 t13 t25 t28 t30 t34 t35 t57) -> ([Expr])
 
476
happyOut76 :: (HappyAbsSyn t11 t12 t13 t27 t30 t32 t36 t37 t59) -> (Declaration)
473
477
happyOut76 x = unsafeCoerce# x
474
478
{-# INLINE happyOut76 #-}
475
 
happyIn77 :: (Declaration) -> (HappyAbsSyn t11 t12 t13 t25 t28 t30 t34 t35 t57)
 
479
happyIn77 :: (Declaration) -> (HappyAbsSyn t11 t12 t13 t27 t30 t32 t36 t37 t59)
476
480
happyIn77 x = unsafeCoerce# x
477
481
{-# INLINE happyIn77 #-}
478
 
happyOut77 :: (HappyAbsSyn t11 t12 t13 t25 t28 t30 t34 t35 t57) -> (Declaration)
 
482
happyOut77 :: (HappyAbsSyn t11 t12 t13 t27 t30 t32 t36 t37 t59) -> (Declaration)
479
483
happyOut77 x = unsafeCoerce# x
480
484
{-# INLINE happyOut77 #-}
481
 
happyIn78 :: (Declaration) -> (HappyAbsSyn t11 t12 t13 t25 t28 t30 t34 t35 t57)
 
485
happyIn78 :: (Declaration) -> (HappyAbsSyn t11 t12 t13 t27 t30 t32 t36 t37 t59)
482
486
happyIn78 x = unsafeCoerce# x
483
487
{-# INLINE happyIn78 #-}
484
 
happyOut78 :: (HappyAbsSyn t11 t12 t13 t25 t28 t30 t34 t35 t57) -> (Declaration)
 
488
happyOut78 :: (HappyAbsSyn t11 t12 t13 t27 t30 t32 t36 t37 t59) -> (Declaration)
485
489
happyOut78 x = unsafeCoerce# x
486
490
{-# INLINE happyOut78 #-}
487
 
happyIn79 :: (Declaration) -> (HappyAbsSyn t11 t12 t13 t25 t28 t30 t34 t35 t57)
 
491
happyIn79 :: (Declaration) -> (HappyAbsSyn t11 t12 t13 t27 t30 t32 t36 t37 t59)
488
492
happyIn79 x = unsafeCoerce# x
489
493
{-# INLINE happyIn79 #-}
490
 
happyOut79 :: (HappyAbsSyn t11 t12 t13 t25 t28 t30 t34 t35 t57) -> (Declaration)
 
494
happyOut79 :: (HappyAbsSyn t11 t12 t13 t27 t30 t32 t36 t37 t59) -> (Declaration)
491
495
happyOut79 x = unsafeCoerce# x
492
496
{-# INLINE happyOut79 #-}
493
 
happyIn80 :: ([Declaration]) -> (HappyAbsSyn t11 t12 t13 t25 t28 t30 t34 t35 t57)
 
497
happyIn80 :: (Declaration) -> (HappyAbsSyn t11 t12 t13 t27 t30 t32 t36 t37 t59)
494
498
happyIn80 x = unsafeCoerce# x
495
499
{-# INLINE happyIn80 #-}
496
 
happyOut80 :: (HappyAbsSyn t11 t12 t13 t25 t28 t30 t34 t35 t57) -> ([Declaration])
 
500
happyOut80 :: (HappyAbsSyn t11 t12 t13 t27 t30 t32 t36 t37 t59) -> (Declaration)
497
501
happyOut80 x = unsafeCoerce# x
498
502
{-# INLINE happyOut80 #-}
499
 
happyIn81 :: (Declaration) -> (HappyAbsSyn t11 t12 t13 t25 t28 t30 t34 t35 t57)
 
503
happyIn81 :: (Declaration) -> (HappyAbsSyn t11 t12 t13 t27 t30 t32 t36 t37 t59)
500
504
happyIn81 x = unsafeCoerce# x
501
505
{-# INLINE happyIn81 #-}
502
 
happyOut81 :: (HappyAbsSyn t11 t12 t13 t25 t28 t30 t34 t35 t57) -> (Declaration)
 
506
happyOut81 :: (HappyAbsSyn t11 t12 t13 t27 t30 t32 t36 t37 t59) -> (Declaration)
503
507
happyOut81 x = unsafeCoerce# x
504
508
{-# INLINE happyOut81 #-}
505
 
happyIn82 :: (Declaration) -> (HappyAbsSyn t11 t12 t13 t25 t28 t30 t34 t35 t57)
 
509
happyIn82 :: ([Expr]) -> (HappyAbsSyn t11 t12 t13 t27 t30 t32 t36 t37 t59)
506
510
happyIn82 x = unsafeCoerce# x
507
511
{-# INLINE happyIn82 #-}
508
 
happyOut82 :: (HappyAbsSyn t11 t12 t13 t25 t28 t30 t34 t35 t57) -> (Declaration)
 
512
happyOut82 :: (HappyAbsSyn t11 t12 t13 t27 t30 t32 t36 t37 t59) -> ([Expr])
509
513
happyOut82 x = unsafeCoerce# x
510
514
{-# INLINE happyOut82 #-}
511
 
happyIn83 :: (Pragma) -> (HappyAbsSyn t11 t12 t13 t25 t28 t30 t34 t35 t57)
 
515
happyIn83 :: (Declaration) -> (HappyAbsSyn t11 t12 t13 t27 t30 t32 t36 t37 t59)
512
516
happyIn83 x = unsafeCoerce# x
513
517
{-# INLINE happyIn83 #-}
514
 
happyOut83 :: (HappyAbsSyn t11 t12 t13 t25 t28 t30 t34 t35 t57) -> (Pragma)
 
518
happyOut83 :: (HappyAbsSyn t11 t12 t13 t27 t30 t32 t36 t37 t59) -> (Declaration)
515
519
happyOut83 x = unsafeCoerce# x
516
520
{-# INLINE happyOut83 #-}
517
 
happyIn84 :: (Pragma) -> (HappyAbsSyn t11 t12 t13 t25 t28 t30 t34 t35 t57)
 
521
happyIn84 :: (Declaration) -> (HappyAbsSyn t11 t12 t13 t27 t30 t32 t36 t37 t59)
518
522
happyIn84 x = unsafeCoerce# x
519
523
{-# INLINE happyIn84 #-}
520
 
happyOut84 :: (HappyAbsSyn t11 t12 t13 t25 t28 t30 t34 t35 t57) -> (Pragma)
 
524
happyOut84 :: (HappyAbsSyn t11 t12 t13 t27 t30 t32 t36 t37 t59) -> (Declaration)
521
525
happyOut84 x = unsafeCoerce# x
522
526
{-# INLINE happyOut84 #-}
523
 
happyIn85 :: (Pragma) -> (HappyAbsSyn t11 t12 t13 t25 t28 t30 t34 t35 t57)
 
527
happyIn85 :: (Declaration) -> (HappyAbsSyn t11 t12 t13 t27 t30 t32 t36 t37 t59)
524
528
happyIn85 x = unsafeCoerce# x
525
529
{-# INLINE happyIn85 #-}
526
 
happyOut85 :: (HappyAbsSyn t11 t12 t13 t25 t28 t30 t34 t35 t57) -> (Pragma)
 
530
happyOut85 :: (HappyAbsSyn t11 t12 t13 t27 t30 t32 t36 t37 t59) -> (Declaration)
527
531
happyOut85 x = unsafeCoerce# x
528
532
{-# INLINE happyOut85 #-}
529
 
happyIn86 :: (Pragma) -> (HappyAbsSyn t11 t12 t13 t25 t28 t30 t34 t35 t57)
 
533
happyIn86 :: ([Declaration]) -> (HappyAbsSyn t11 t12 t13 t27 t30 t32 t36 t37 t59)
530
534
happyIn86 x = unsafeCoerce# x
531
535
{-# INLINE happyIn86 #-}
532
 
happyOut86 :: (HappyAbsSyn t11 t12 t13 t25 t28 t30 t34 t35 t57) -> (Pragma)
 
536
happyOut86 :: (HappyAbsSyn t11 t12 t13 t27 t30 t32 t36 t37 t59) -> ([Declaration])
533
537
happyOut86 x = unsafeCoerce# x
534
538
{-# INLINE happyOut86 #-}
535
 
happyIn87 :: (Pragma) -> (HappyAbsSyn t11 t12 t13 t25 t28 t30 t34 t35 t57)
 
539
happyIn87 :: (Declaration) -> (HappyAbsSyn t11 t12 t13 t27 t30 t32 t36 t37 t59)
536
540
happyIn87 x = unsafeCoerce# x
537
541
{-# INLINE happyIn87 #-}
538
 
happyOut87 :: (HappyAbsSyn t11 t12 t13 t25 t28 t30 t34 t35 t57) -> (Pragma)
 
542
happyOut87 :: (HappyAbsSyn t11 t12 t13 t27 t30 t32 t36 t37 t59) -> (Declaration)
539
543
happyOut87 x = unsafeCoerce# x
540
544
{-# INLINE happyOut87 #-}
541
 
happyIn88 :: (Pragma) -> (HappyAbsSyn t11 t12 t13 t25 t28 t30 t34 t35 t57)
 
545
happyIn88 :: (Declaration) -> (HappyAbsSyn t11 t12 t13 t27 t30 t32 t36 t37 t59)
542
546
happyIn88 x = unsafeCoerce# x
543
547
{-# INLINE happyIn88 #-}
544
 
happyOut88 :: (HappyAbsSyn t11 t12 t13 t25 t28 t30 t34 t35 t57) -> (Pragma)
 
548
happyOut88 :: (HappyAbsSyn t11 t12 t13 t27 t30 t32 t36 t37 t59) -> (Declaration)
545
549
happyOut88 x = unsafeCoerce# x
546
550
{-# INLINE happyOut88 #-}
547
 
happyIn89 :: (Pragma) -> (HappyAbsSyn t11 t12 t13 t25 t28 t30 t34 t35 t57)
 
551
happyIn89 :: (Pragma) -> (HappyAbsSyn t11 t12 t13 t27 t30 t32 t36 t37 t59)
548
552
happyIn89 x = unsafeCoerce# x
549
553
{-# INLINE happyIn89 #-}
550
 
happyOut89 :: (HappyAbsSyn t11 t12 t13 t25 t28 t30 t34 t35 t57) -> (Pragma)
 
554
happyOut89 :: (HappyAbsSyn t11 t12 t13 t27 t30 t32 t36 t37 t59) -> (Pragma)
551
555
happyOut89 x = unsafeCoerce# x
552
556
{-# INLINE happyOut89 #-}
553
 
happyIn90 :: (Pragma) -> (HappyAbsSyn t11 t12 t13 t25 t28 t30 t34 t35 t57)
 
557
happyIn90 :: (Pragma) -> (HappyAbsSyn t11 t12 t13 t27 t30 t32 t36 t37 t59)
554
558
happyIn90 x = unsafeCoerce# x
555
559
{-# INLINE happyIn90 #-}
556
 
happyOut90 :: (HappyAbsSyn t11 t12 t13 t25 t28 t30 t34 t35 t57) -> (Pragma)
 
560
happyOut90 :: (HappyAbsSyn t11 t12 t13 t27 t30 t32 t36 t37 t59) -> (Pragma)
557
561
happyOut90 x = unsafeCoerce# x
558
562
{-# INLINE happyOut90 #-}
559
 
happyIn91 :: (Pragma) -> (HappyAbsSyn t11 t12 t13 t25 t28 t30 t34 t35 t57)
 
563
happyIn91 :: (Pragma) -> (HappyAbsSyn t11 t12 t13 t27 t30 t32 t36 t37 t59)
560
564
happyIn91 x = unsafeCoerce# x
561
565
{-# INLINE happyIn91 #-}
562
 
happyOut91 :: (HappyAbsSyn t11 t12 t13 t25 t28 t30 t34 t35 t57) -> (Pragma)
 
566
happyOut91 :: (HappyAbsSyn t11 t12 t13 t27 t30 t32 t36 t37 t59) -> (Pragma)
563
567
happyOut91 x = unsafeCoerce# x
564
568
{-# INLINE happyOut91 #-}
565
 
happyIn92 :: ([TypeSignature]) -> (HappyAbsSyn t11 t12 t13 t25 t28 t30 t34 t35 t57)
 
569
happyIn92 :: (Pragma) -> (HappyAbsSyn t11 t12 t13 t27 t30 t32 t36 t37 t59)
566
570
happyIn92 x = unsafeCoerce# x
567
571
{-# INLINE happyIn92 #-}
568
 
happyOut92 :: (HappyAbsSyn t11 t12 t13 t25 t28 t30 t34 t35 t57) -> ([TypeSignature])
 
572
happyOut92 :: (HappyAbsSyn t11 t12 t13 t27 t30 t32 t36 t37 t59) -> (Pragma)
569
573
happyOut92 x = unsafeCoerce# x
570
574
{-# INLINE happyOut92 #-}
571
 
happyIn93 :: ([TypeSignature]) -> (HappyAbsSyn t11 t12 t13 t25 t28 t30 t34 t35 t57)
 
575
happyIn93 :: (Pragma) -> (HappyAbsSyn t11 t12 t13 t27 t30 t32 t36 t37 t59)
572
576
happyIn93 x = unsafeCoerce# x
573
577
{-# INLINE happyIn93 #-}
574
 
happyOut93 :: (HappyAbsSyn t11 t12 t13 t25 t28 t30 t34 t35 t57) -> ([TypeSignature])
 
578
happyOut93 :: (HappyAbsSyn t11 t12 t13 t27 t30 t32 t36 t37 t59) -> (Pragma)
575
579
happyOut93 x = unsafeCoerce# x
576
580
{-# INLINE happyOut93 #-}
577
 
happyIn94 :: ([Constructor]) -> (HappyAbsSyn t11 t12 t13 t25 t28 t30 t34 t35 t57)
 
581
happyIn94 :: (Pragma) -> (HappyAbsSyn t11 t12 t13 t27 t30 t32 t36 t37 t59)
578
582
happyIn94 x = unsafeCoerce# x
579
583
{-# INLINE happyIn94 #-}
580
 
happyOut94 :: (HappyAbsSyn t11 t12 t13 t25 t28 t30 t34 t35 t57) -> ([Constructor])
 
584
happyOut94 :: (HappyAbsSyn t11 t12 t13 t27 t30 t32 t36 t37 t59) -> (Pragma)
581
585
happyOut94 x = unsafeCoerce# x
582
586
{-# INLINE happyOut94 #-}
583
 
happyIn95 :: ([Declaration]) -> (HappyAbsSyn t11 t12 t13 t25 t28 t30 t34 t35 t57)
 
587
happyIn95 :: (Pragma) -> (HappyAbsSyn t11 t12 t13 t27 t30 t32 t36 t37 t59)
584
588
happyIn95 x = unsafeCoerce# x
585
589
{-# INLINE happyIn95 #-}
586
 
happyOut95 :: (HappyAbsSyn t11 t12 t13 t25 t28 t30 t34 t35 t57) -> ([Declaration])
 
590
happyOut95 :: (HappyAbsSyn t11 t12 t13 t27 t30 t32 t36 t37 t59) -> (Pragma)
587
591
happyOut95 x = unsafeCoerce# x
588
592
{-# INLINE happyOut95 #-}
589
 
happyIn96 :: ([Declaration]) -> (HappyAbsSyn t11 t12 t13 t25 t28 t30 t34 t35 t57)
 
593
happyIn96 :: (Pragma) -> (HappyAbsSyn t11 t12 t13 t27 t30 t32 t36 t37 t59)
590
594
happyIn96 x = unsafeCoerce# x
591
595
{-# INLINE happyIn96 #-}
592
 
happyOut96 :: (HappyAbsSyn t11 t12 t13 t25 t28 t30 t34 t35 t57) -> ([Declaration])
 
596
happyOut96 :: (HappyAbsSyn t11 t12 t13 t27 t30 t32 t36 t37 t59) -> (Pragma)
593
597
happyOut96 x = unsafeCoerce# x
594
598
{-# INLINE happyOut96 #-}
595
 
happyIn97 :: ([Declaration]) -> (HappyAbsSyn t11 t12 t13 t25 t28 t30 t34 t35 t57)
 
599
happyIn97 :: (Pragma) -> (HappyAbsSyn t11 t12 t13 t27 t30 t32 t36 t37 t59)
596
600
happyIn97 x = unsafeCoerce# x
597
601
{-# INLINE happyIn97 #-}
598
 
happyOut97 :: (HappyAbsSyn t11 t12 t13 t25 t28 t30 t34 t35 t57) -> ([Declaration])
 
602
happyOut97 :: (HappyAbsSyn t11 t12 t13 t27 t30 t32 t36 t37 t59) -> (Pragma)
599
603
happyOut97 x = unsafeCoerce# x
600
604
{-# INLINE happyOut97 #-}
601
 
happyInTok :: Token -> (HappyAbsSyn t11 t12 t13 t25 t28 t30 t34 t35 t57)
 
605
happyIn98 :: ([TypeSignature]) -> (HappyAbsSyn t11 t12 t13 t27 t30 t32 t36 t37 t59)
 
606
happyIn98 x = unsafeCoerce# x
 
607
{-# INLINE happyIn98 #-}
 
608
happyOut98 :: (HappyAbsSyn t11 t12 t13 t27 t30 t32 t36 t37 t59) -> ([TypeSignature])
 
609
happyOut98 x = unsafeCoerce# x
 
610
{-# INLINE happyOut98 #-}
 
611
happyIn99 :: ([TypeSignature]) -> (HappyAbsSyn t11 t12 t13 t27 t30 t32 t36 t37 t59)
 
612
happyIn99 x = unsafeCoerce# x
 
613
{-# INLINE happyIn99 #-}
 
614
happyOut99 :: (HappyAbsSyn t11 t12 t13 t27 t30 t32 t36 t37 t59) -> ([TypeSignature])
 
615
happyOut99 x = unsafeCoerce# x
 
616
{-# INLINE happyOut99 #-}
 
617
happyIn100 :: ([(Hiding, TypeSignature)]) -> (HappyAbsSyn t11 t12 t13 t27 t30 t32 t36 t37 t59)
 
618
happyIn100 x = unsafeCoerce# x
 
619
{-# INLINE happyIn100 #-}
 
620
happyOut100 :: (HappyAbsSyn t11 t12 t13 t27 t30 t32 t36 t37 t59) -> ([(Hiding, TypeSignature)])
 
621
happyOut100 x = unsafeCoerce# x
 
622
{-# INLINE happyOut100 #-}
 
623
happyIn101 :: ([(Hiding, TypeSignature)]) -> (HappyAbsSyn t11 t12 t13 t27 t30 t32 t36 t37 t59)
 
624
happyIn101 x = unsafeCoerce# x
 
625
{-# INLINE happyIn101 #-}
 
626
happyOut101 :: (HappyAbsSyn t11 t12 t13 t27 t30 t32 t36 t37 t59) -> ([(Hiding, TypeSignature)])
 
627
happyOut101 x = unsafeCoerce# x
 
628
{-# INLINE happyOut101 #-}
 
629
happyIn102 :: ([Constructor]) -> (HappyAbsSyn t11 t12 t13 t27 t30 t32 t36 t37 t59)
 
630
happyIn102 x = unsafeCoerce# x
 
631
{-# INLINE happyIn102 #-}
 
632
happyOut102 :: (HappyAbsSyn t11 t12 t13 t27 t30 t32 t36 t37 t59) -> ([Constructor])
 
633
happyOut102 x = unsafeCoerce# x
 
634
{-# INLINE happyOut102 #-}
 
635
happyIn103 :: ((Maybe Name, [Declaration])) -> (HappyAbsSyn t11 t12 t13 t27 t30 t32 t36 t37 t59)
 
636
happyIn103 x = unsafeCoerce# x
 
637
{-# INLINE happyIn103 #-}
 
638
happyOut103 :: (HappyAbsSyn t11 t12 t13 t27 t30 t32 t36 t37 t59) -> ((Maybe Name, [Declaration]))
 
639
happyOut103 x = unsafeCoerce# x
 
640
{-# INLINE happyOut103 #-}
 
641
happyIn104 :: ([Declaration]) -> (HappyAbsSyn t11 t12 t13 t27 t30 t32 t36 t37 t59)
 
642
happyIn104 x = unsafeCoerce# x
 
643
{-# INLINE happyIn104 #-}
 
644
happyOut104 :: (HappyAbsSyn t11 t12 t13 t27 t30 t32 t36 t37 t59) -> ([Declaration])
 
645
happyOut104 x = unsafeCoerce# x
 
646
{-# INLINE happyOut104 #-}
 
647
happyIn105 :: ([Declaration]) -> (HappyAbsSyn t11 t12 t13 t27 t30 t32 t36 t37 t59)
 
648
happyIn105 x = unsafeCoerce# x
 
649
{-# INLINE happyIn105 #-}
 
650
happyOut105 :: (HappyAbsSyn t11 t12 t13 t27 t30 t32 t36 t37 t59) -> ([Declaration])
 
651
happyOut105 x = unsafeCoerce# x
 
652
{-# INLINE happyOut105 #-}
 
653
happyIn106 :: ([Declaration]) -> (HappyAbsSyn t11 t12 t13 t27 t30 t32 t36 t37 t59)
 
654
happyIn106 x = unsafeCoerce# x
 
655
{-# INLINE happyIn106 #-}
 
656
happyOut106 :: (HappyAbsSyn t11 t12 t13 t27 t30 t32 t36 t37 t59) -> ([Declaration])
 
657
happyOut106 x = unsafeCoerce# x
 
658
{-# INLINE happyOut106 #-}
 
659
happyInTok :: Token -> (HappyAbsSyn t11 t12 t13 t27 t30 t32 t36 t37 t59)
602
660
happyInTok x = unsafeCoerce# x
603
661
{-# INLINE happyInTok #-}
604
 
happyOutTok :: (HappyAbsSyn t11 t12 t13 t25 t28 t30 t34 t35 t57) -> Token
 
662
happyOutTok :: (HappyAbsSyn t11 t12 t13 t27 t30 t32 t36 t37 t59) -> Token
605
663
happyOutTok x = unsafeCoerce# x
606
664
{-# INLINE happyOutTok #-}
607
665
 
608
666
 
609
667
happyActOffsets :: HappyAddr
610
 
happyActOffsets = HappyA# "\x00\x00\xa8\x02\x3e\x03\x00\x00\x66\x01\xa9\x00\x1c\x03\x35\x03\x00\x00\x35\x03\x28\x03\x00\x00\x18\x03\x00\x00\x00\x00\x00\x00\x00\x00\x67\x00\x2f\x02\xa8\x02\x21\x03\x00\x00\x76\x00\x31\x03\x1a\x03\x00\x00\x00\x00\xd0\x01\x00\x00\xe0\x02\x00\x00\x00\x00\xd0\x01\x13\x02\xf7\x01\x00\x00\x00\x00\x00\x00\x0e\x03\xc4\x00\x22\x03\x14\x03\x0d\x03\xfb\x02\x04\x03\x00\x00\xfc\x02\xf6\x02\x00\x00\x00\x00\x00\x00\xd0\x01\xa8\x02\x00\x00\xf9\x02\xd0\x01\x00\x00\x8c\x02\x70\x02\x00\x00\xdb\x01\xbf\x01\x54\x02\xf9\x02\xe8\x02\xec\x02\x1e\x03\x00\x00\xc4\x02\xc4\x02\x00\x00\x00\x00\x00\x00\x00\x00\x54\x02\xc4\x02\xe0\x02\x00\x00\x00\x00\xf8\x02\xf8\x02\x00\x00\xf8\x02\x00\x00\x00\x00\x7e\x00\x13\x01\x13\x01\x98\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xe2\x02\xdc\x02\x00\x00\x00\x00\x28\x01\x97\x00\xe0\x02\x13\x01\x00\x00\xf3\x00\x00\x00\x00\x00\x00\x00\x00\x00\xe5\x02\x00\x00\x00\x00\xc4\x02\x54\x02\xea\x02\xdf\x02\xd4\x02\x00\x00\xde\x02\x00\x00\x00\x00\x7a\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x54\x02\x00\x00\x00\x00\x54\x02\x54\x02\xce\x02\x00\x00\xd8\x02\x00\x00\x00\x00\x00\x00\xc3\x02\x00\x00\x54\x02\xa3\x01\xe1\x00\x00\x00\x97\x00\xe0\x02\x12\x02\x00\x00\x00\x00\x00\x00\x00\x00\xf1\x02\x00\x00\xca\x02\xc7\x02\xc5\x02\xa7\x02\xb4\x02\x28\x01\xe7\x02\x28\x01\xc4\x02\xb1\x02\xb0\x02\xac\x02\x00\x00\x00\x00\xab\x02\x00\x00\xc2\x02\x00\x00\x12\x02\x00\x00\xd3\x02\x05\x00\x05\x00\x00\x00\x00\x00\x00\x00\x00\x00\x1e\x00\xbc\x02\x00\x00\xf3\xff\xdb\x02\xb2\x02\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xae\x02\xae\x02\xa5\x00\x9e\x02\x9e\x02\x9e\x02\xe5\xff\xad\x02\x93\x02\x93\x02\x93\x02\xa6\x02\xa6\x02\xa6\x02\x98\x02\x23\x03\x00\x00\x00\x00\x54\x02\x00\x00\x00\x00\x92\x02\x91\x02\x90\x02\x90\x02\x90\x02\xc0\x02\xe0\x02\x00\x00\x00\x00\x00\x00\xf6\xff\x00\x00\xf6\xff\xf6\xff\x87\x02\x00\x00\x28\x01\x28\x01\x28\x01\x28\x01\x86\x02\x00\x00\x00\x00\x85\x00\x54\x02\x00\x00\x54\x02\x54\x02\xa3\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x8e\x02\x89\x02\x00\x00\x7b\x02\x82\x02\x74\x02\x7a\x02\x80\x02\x9b\x02\x00\x00\x00\x00\x6d\x02\x00\x00\x00\x00\x00\x00\x75\x02\x60\x02\x60\x02\x84\x02\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x05\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x6c\x02\x52\x02\x28\x01\x0f\x00\x62\x02\x5f\x02\x5b\x02\x58\x02\xf6\xff\x00\x00\x00\x00\x00\x00\x3b\x02\xe0\x02\x00\x00\x34\x02\x00\x00\x2a\x02\x27\x02\x1b\x02\x22\x02\x1a\x02\x00\x00\x16\x02\x15\x02\x0e\x02\x00\x00\x00\x00\x03\x02\xe1\x00\x54\x02\x54\x02\x54\x02\x18\x02\x54\x02\x0d\x02\x30\x02\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x29\x01\x00\x00\x0b\x02\x54\x02\x12\x02\x00\x00\x24\x02\x1e\x02\x1d\x02\x1e\x00\xf5\x01\xee\x01\x00\x00\x00\x00\xda\x01\x00\x00\x00\x00\x00\x00\xcb\x01\x00\x00\xeb\x01\xeb\x01\xeb\x01\x00\x00\x12\x02\x00\x00\x00\x00\xd6\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xe0\x01\x72\x00\x00\x00\x00\x00"#
 
668
happyActOffsets = HappyA# "\x00\x00\x6d\x03\x88\x03\x00\x00\x19\x02\xb3\x00\x75\x03\x7b\x03\x00\x00\x7b\x03\x7c\x03\x00\x00\x70\x03\x00\x00\x00\x00\x00\x00\x00\x00\x9b\x00\xf1\x02\x6d\x03\x79\x03\x00\x00\x3c\x01\x72\x03\x6e\x03\x00\x00\x00\x00\xd9\x01\x00\x00\xa7\x03\x00\x00\x00\x00\xd9\x01\xd4\x02\xb7\x02\x00\x00\x00\x00\x00\x00\x55\x03\xcc\x00\x74\x03\x68\x03\x6c\x03\x63\x03\x6a\x03\x00\x00\x5f\x03\x5c\x03\x00\x00\x00\x00\x00\x00\xd9\x01\x6d\x03\x00\x00\x62\x03\xd9\x01\x00\x00\x50\x03\x33\x03\x00\x00\x9a\x02\x7d\x02\x16\x03\x62\x03\x4b\x03\x57\x03\x84\x03\x00\x00\x8a\x03\x8a\x03\x00\x00\x00\x00\x00\x00\x00\x00\x16\x03\x8a\x03\xa7\x03\x00\x00\x00\x00\x5b\x03\x5b\x03\x00\x00\x5b\x03\x00\x00\xfa\xff\xd4\x01\xd4\x01\x5d\x03\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x44\x03\x00\x00\x00\x00\x39\x01\x9e\x00\xa7\x03\xd4\x01\x00\x00\xbc\x00\x00\x00\x00\x00\x00\x00\x00\x00\x4a\x03\x00\x00\x00\x00\x8a\x03\x16\x03\x52\x03\x4e\x03\x41\x03\x00\x00\x4c\x03\x00\x00\x00\x00\xfc\xff\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x16\x03\x00\x00\x00\x00\x16\x03\x16\x03\x3e\x03\x00\x00\x49\x03\x00\x00\x00\x00\x00\x00\x35\x03\x00\x00\x16\x03\x58\x02\xa6\x01\x00\x00\x9e\x00\xa7\x03\xb6\x02\x00\x00\x00\x00\x00\x00\x00\x00\x61\x03\x00\x00\x37\x03\x31\x03\x2c\x03\xdc\x01\x22\x03\x39\x01\x56\x03\x39\x01\x8a\x03\x11\x03\x19\x03\x00\x00\x00\x00\x00\x00\x30\x03\x00\x00\xb6\x02\x00\x00\x38\x03\x24\x00\x24\x00\x00\x00\x00\x00\x00\x00\x00\x00\x49\x00\x24\x03\x00\x00\x7a\x00\x3d\x03\x1c\x03\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x1b\x03\x1b\x03\xae\x00\x04\x03\x04\x03\x04\x03\xe3\x00\x18\x03\xfd\x02\xfd\x02\xfd\x02\x17\x03\x17\x03\x17\x03\x06\x03\x59\x04\x00\x00\x00\x00\x16\x03\x00\x00\x00\x00\xfc\x02\xfb\x02\xfa\x02\xee\x02\xee\x02\xee\x02\x26\x03\xa7\x03\x00\x00\x00\x00\x00\x00\xe9\xff\x00\x00\xe9\xff\xe9\xff\xf3\x02\x00\x00\x39\x01\x39\x01\x39\x01\x39\x01\xed\x02\xf0\x02\x00\x00\x00\x00\x12\x00\x16\x03\x21\x03\x16\x03\x16\x03\x58\x02\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xf2\x02\xe7\x02\x00\x00\xe6\x02\xe1\x02\xdd\x02\xe0\x02\xe8\x02\x02\x03\x00\x00\x00\x00\xd7\x02\x00\x00\x00\x00\xe5\x02\xce\x02\xce\x02\xf7\x02\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x24\x00\x00\x00\x00\x00\x00\x00\x00\x00\x16\x03\x00\x00\x00\x00\xdf\x02\xc4\x02\xd9\x02\x39\x01\x28\x00\xd3\x02\xd1\x02\xd0\x02\xd2\x02\xe9\xff\x00\x00\x00\x00\x00\x00\xc3\x02\xa7\x03\xde\x02\xbc\x02\x00\x00\xb9\x02\xb0\x02\x00\x00\xa6\x02\xaa\x02\xa4\x02\x00\x00\xa3\x02\x9d\x02\xa2\x02\x00\x00\x00\x00\x00\x00\x79\x00\xa6\x01\x16\x03\x16\x03\x16\x03\xb4\x02\x16\x03\xac\x02\x94\x02\xa6\x01\xc8\x02\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xda\x01\x00\x00\xa0\x02\x49\x00\xa0\x02\x89\x02\x93\x02\x00\x00\x16\x03\xb6\x02\x00\x00\xba\x02\xb8\x02\xb1\x02\x49\x00\x8b\x02\x79\x00\x84\x02\x00\x00\x63\x02\x00\x00\x73\x02\x00\x00\x00\x00\x00\x00\x6d\x02\x16\x03\x00\x00\x79\x00\x00\x00\x83\x02\x83\x02\x83\x02\x00\x00\xb6\x02\x16\x03\x00\x00\x60\x02\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x5c\x02\x00\x00\x00\x00\x00\x00\x5a\x02\x00\x00\x00\x00\x00\x00\x79\x00\x00\x00\x6a\x02\x6a\x02\x1b\x00\x9a\x01\xa6\x01\x49\x00\x00\x00\xa6\x01\x50\x02\x00\x00\x00\x00\x49\x00\x64\x02\x00\x00\xa6\x01\x00\x00\x49\x00\x00\x00\x00\x00"#
611
669
 
612
670
happyGotoOffsets :: HappyAddr
613
 
happyGotoOffsets = HappyA# "\x4b\x00\x08\x05\x26\x00\xff\x01\xfd\x01\xaa\x00\x00\x00\xfa\x01\x00\x00\xf4\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x5d\x02\xf9\x04\x00\x00\x00\x00\xff\x00\x0d\x00\x00\x00\x00\x00\x00\x00\xe3\x00\x00\x00\xd9\x00\x00\x00\x00\x00\x00\x03\x94\x03\x7b\x03\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x2b\x03\xea\x04\x00\x00\x00\x00\x2a\x03\x00\x00\xe9\x03\xda\x03\x00\x00\xdb\x04\xcc\x04\xbd\x04\x00\x00\x13\x00\x00\x00\x00\x00\x00\x00\xcb\x03\xbc\x03\x00\x00\x00\x00\x00\x00\x00\x00\xae\x04\x17\x05\x1b\x00\x00\x00\x00\x00\x37\x00\x2c\x00\x00\x00\x03\x00\x00\x00\x00\x00\x8a\x02\x6e\x02\x4d\x02\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xe1\x01\x00\x00\x00\x00\x00\x00\x20\x03\x11\x03\x3f\x00\x40\x02\x00\x00\x6a\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xfa\x02\x9f\x04\xff\xff\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x62\x03\x00\x00\x00\x00\x90\x04\x81\x04\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x2d\x00\x00\x00\x72\x04\xd3\x00\x31\x00\x00\x00\x1e\x01\x2b\x00\x07\x05\x00\x00\x00\x00\x00\x00\x00\x00\xbc\x01\x00\x00\x00\x00\x00\x00\x00\x00\x7a\x01\xde\x01\x0c\x03\x00\x00\x0a\x03\xad\x03\x00\x00\x00\x00\xd3\x01\x00\x00\x00\x00\x00\x00\x00\x00\x06\x00\x00\x00\x98\x01\x00\x00\xce\x00\xc3\x00\x8b\x00\x00\x00\x00\x00\x00\x00\x00\x00\xd9\x01\xd4\x01\x00\x00\x00\x00\x9d\x01\x92\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x18\x00\x17\x00\x21\x01\xbd\x01\xb5\x01\xb4\x01\x5b\x01\x16\x00\x57\x01\x55\x01\x54\x01\x0c\x00\x0b\x00\x0a\x00\x23\x01\x00\x00\x00\x00\x00\x00\x49\x03\x00\x00\x00\x00\x00\x00\x46\x01\x11\x01\x08\x01\xfd\x00\xea\x00\x3a\x01\x00\x00\x00\x00\x00\x00\x2b\x02\x00\x00\xd7\x01\xbe\x01\x00\x00\x00\x00\xcd\x02\x79\x02\x57\x02\x1c\x02\xee\x00\x00\x00\x00\x00\xb5\x00\x63\x04\x00\x00\x54\x04\x45\x04\x87\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xdb\x00\x00\x00\xd8\x00\x00\x00\x00\x00\x00\x00\xba\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xfe\xff\xac\x00\xa0\x00\x0e\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xa1\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x09\x00\x8c\x00\xc8\x01\x00\x00\x00\x00\x00\x00\x00\x00\x14\x00\xf6\x00\x00\x00\x00\x00\x00\x00\x55\x00\x8e\x00\x00\x00\x34\x00\x00\x00\x00\x00\x32\x00\x00\x00\x2a\x00\x00\x00\x00\x00\x00\x00\xfa\xff\x00\x00\x00\x00\x00\x00\x07\x00\x21\x00\x36\x04\x27\x04\x18\x04\x04\x00\x09\x04\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x3b\x00\x00\x00\x08\x00\xfa\x03\x83\x01\x00\x00\x00\x00\x00\x00\x00\x00\x1a\x00\x2e\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xf9\xff\x00\x00\x02\x00\x12\x00\x11\x00\x00\x00\x09\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x01\x00\x1d\x00\x00\x00\x00\x00"#
 
671
happyGotoOffsets = HappyA# "\x04\x02\x4a\x06\x0f\x00\x81\x02\x85\x02\x22\x06\x00\x00\x80\x02\x00\x00\x79\x02\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xf1\x00\x32\x06\x00\x00\x00\x00\xbe\x01\x0e\x00\x00\x00\x00\x00\x00\x00\xf0\x00\x00\x00\x33\x00\x00\x00\x00\x00\xed\x00\x23\x04\x0a\x04\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xc2\x02\x1a\x06\x00\x00\x00\x00\x55\x01\x00\x00\x41\x04\x3c\x04\x00\x00\x02\x06\xea\x05\xd2\x05\x00\x00\x26\x00\x00\x00\x00\x00\x00\x00\xb7\x03\x9a\x03\x00\x00\x00\x00\x00\x00\x00\x00\xba\x05\x62\x06\x20\x00\x00\x00\x00\x00\x2c\x00\x2b\x00\x00\x00\x06\x00\x00\x00\x97\x02\xf3\x01\xb7\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x69\x02\x00\x00\x00\x00\x0e\x03\x4b\x02\x32\x00\xae\x01\x00\x00\x6c\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x03\x01\xa2\x05\x02\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xef\x03\x00\x00\x00\x00\x8a\x05\x72\x05\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xac\x00\x00\x00\x5a\x05\x3e\x01\x8c\x01\x00\x00\xcd\x01\x31\x00\x7d\x04\x00\x00\x00\x00\x00\x00\x00\x00\x3c\x02\x00\x00\x00\x00\x00\x00\x00\x00\x6f\x01\x53\x02\x7f\x02\x00\x00\x75\x02\x43\x03\x00\x00\x49\x02\x00\x00\x00\x00\x00\x00\x07\x00\x00\x00\x65\x04\x00\x00\x8f\x00\x9c\x00\x13\x00\x00\x00\x00\x00\x00\x00\x00\x00\x34\x02\x59\x02\x00\x00\x00\x00\x21\x02\xd8\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x1d\x00\x1c\x00\x27\x00\x09\x02\x01\x02\xff\x01\xf4\x01\x19\x00\xe4\x01\xd3\x01\xc8\x01\x0d\x00\x0c\x00\x0b\x00\xa1\x01\x00\x00\x00\x00\x00\x00\xd4\x03\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xc2\x01\xc0\x01\xbb\x01\x90\x01\xb9\x00\x00\x00\x00\x00\x00\x00\x63\x01\x00\x00\x52\x01\x40\x01\x00\x00\x00\x00\xbc\x01\x4f\x01\x42\x01\x3f\x01\xb6\x01\x00\x00\x00\x00\x00\x00\x84\x01\x42\x05\x81\x01\x2a\x05\x12\x05\xec\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x95\x01\x00\x00\x77\x01\x00\x00\x00\x00\x00\x00\x89\x01\x00\x00\x00\x00\x00\x00\x00\x00\x01\x00\x71\x01\x50\x01\x88\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x99\x00\x00\x00\x00\x00\x00\x00\x00\x00\xfa\x04\x00\x00\x00\x00\x0a\x00\x48\x01\x17\x00\xfd\x00\x00\x00\x00\x00\x00\x00\x00\x00\x14\x00\x1a\x01\x00\x00\x00\x00\x00\x00\x16\x01\x1f\x00\xf4\x00\x2d\x01\x00\x00\x00\x00\xee\x00\x00\x00\x00\x00\x1c\x01\x00\x00\x00\x00\x00\x00\xdd\x00\x00\x00\x00\x00\x00\x00\x00\x00\x46\x00\x87\x01\xe2\x04\xca\x04\xb2\x04\x05\x00\x9a\x04\x00\x00\x97\x00\x62\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x9a\x00\x00\x00\x09\x00\xe0\x00\x0c\x01\xcd\x00\x00\x00\x00\x00\x82\x04\x37\x02\x00\x00\x00\x00\x00\x00\x00\x00\xd7\x00\xbb\x00\x51\x01\x00\x00\x00\x00\x3a\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x6a\x04\x00\x00\x1a\x00\x00\x00\x03\x00\x16\x00\x15\x00\x00\x00\x79\x01\x52\x04\x00\x00\x8a\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x17\x01\x00\x00\xff\xff\x04\x00\x18\x00\x44\x00\x3a\x01\xa7\x00\x00\x00\x35\x01\x45\x00\x00\x00\x00\x00\x93\x00\xfe\xff\x00\x00\x19\x01\x00\x00\x22\x00\x00\x00\x00\x00"#
614
672
 
615
673
happyDefActions :: HappyAddr
616
 
happyDefActions = HappyA# "\xfa\xff\x00\x00\xbc\xff\x00\x00\xfc\xff\x00\x00\x00\x00\xbc\xff\xb9\xff\xbc\xff\xaf\xff\x96\xff\x00\x00\xa2\xff\xa1\xff\x9f\xff\x9e\xff\x00\x00\x99\xff\x00\x00\x00\x00\x81\xff\x7f\xff\xbc\xff\x00\x00\x92\xff\x91\xff\x00\x00\x90\xff\x00\x00\x93\xff\x94\xff\x00\x00\x00\x00\x00\x00\xb1\xff\xb0\xff\x95\xff\x00\x00\xaf\xff\x00\x00\x00\x00\x9f\xff\x00\x00\x7c\xff\x8c\xff\x00\x00\x00\x00\x8b\xff\xad\xff\x6b\xff\x71\xff\x00\x00\x9b\xff\x75\xff\x72\xff\xac\xff\x00\x00\x00\x00\x89\xff\x00\x00\x00\x00\x00\x00\x00\x00\x87\xff\x00\x00\x00\x00\x80\xff\x00\x00\x00\x00\x82\xff\xa5\xff\x9d\xff\x97\xff\x00\x00\x00\x00\x00\x00\xbb\xff\xba\xff\xbc\xff\xbc\xff\x21\xff\xbc\xff\x1c\xff\x1b\xff\x00\x00\x00\x00\x00\x00\x00\x00\xfb\xff\xf9\xff\xf8\xff\xf7\xff\xf6\xff\xf5\xff\xf4\xff\xf3\xff\xf2\xff\xf1\xff\xf0\xff\xef\xff\xee\xff\xed\xff\xec\xff\xeb\xff\xea\xff\xe9\xff\xe8\xff\xe7\xff\xe6\xff\xe5\xff\xe4\xff\xe3\xff\xe2\xff\xe1\xff\xe0\xff\xdf\xff\xde\xff\xdd\xff\xdc\xff\xdb\xff\xda\xff\xd9\xff\xd8\xff\xd7\xff\xd6\xff\xd5\xff\xd4\xff\xd3\xff\xd2\xff\xd1\xff\xd0\xff\xcf\xff\xce\xff\xcd\xff\xcc\xff\xcb\xff\xca\xff\xc9\xff\xc8\xff\xc7\xff\xc6\xff\xc5\xff\xc4\xff\xc3\xff\xc2\xff\xc1\xff\xc0\xff\xbf\xff\xbe\xff\xbd\xff\xa8\xff\x00\x00\xaf\xff\xae\xff\x6c\xff\x61\xff\x28\xff\x00\x00\xb8\xff\x00\x00\x20\xff\x1f\xff\x8a\xff\xa0\xff\x00\x00\xa3\xff\xa9\xff\x99\xff\x00\x00\xbc\xff\x00\x00\x00\x00\x86\xff\x85\xff\x76\xff\xa4\xff\x00\x00\x6f\xff\x70\xff\x74\xff\x9c\xff\x73\xff\x7e\xff\x8d\xff\x00\x00\x7d\xff\x8f\xff\x00\x00\x00\x00\x00\x00\x77\xff\x78\xff\x7a\xff\x7b\xff\x6a\xff\x00\x00\x88\xff\x00\x00\x00\x00\xbc\xff\x9a\xff\x61\xff\x28\xff\x61\xff\x24\xff\x69\xff\x67\xff\x65\xff\x62\xff\x63\xff\x00\x00\x00\x00\x00\x00\x61\xff\x00\x00\x6c\xff\x00\x00\x6c\xff\x00\x00\x00\x00\x00\x00\xa8\xff\xa7\xff\x14\xff\x00\x00\x6e\xff\xbc\xff\x6d\xff\x61\xff\x66\xff\xb3\xff\x00\x00\x56\xff\x64\xff\x29\xff\x27\xff\x23\xff\x00\x00\xbc\xff\xb5\xff\xaf\xff\x4e\xff\x36\xff\x04\xff\x49\xff\x47\xff\x46\xff\x45\xff\x44\xff\x48\xff\x43\xff\x42\xff\x41\xff\x40\xff\x3f\xff\x3e\xff\x3c\xff\x3d\xff\x3b\xff\x3a\xff\x1d\xff\x1a\xff\x18\xff\x16\xff\x17\xff\x15\xff\x19\xff\xbc\xff\xbc\xff\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xbc\xff\x00\x00\x00\x00\x00\x00\xbc\xff\xbc\xff\xbc\xff\x50\xff\x00\x00\x83\xff\x84\xff\x00\x00\x8e\xff\x79\xff\x00\x00\xa8\xff\x00\x00\x00\x00\x00\x00\x4e\xff\x00\x00\x2c\xff\x2d\xff\x2e\xff\x00\x00\xb2\xff\x00\x00\x00\x00\x00\x00\x2f\xff\x6c\xff\x6c\xff\x6c\xff\x6c\xff\x00\x00\x2a\xff\x2b\xff\x4c\xff\x00\x00\x52\xff\x00\x00\x00\x00\x00\x00\x08\xff\xb6\xff\xb7\xff\xb4\xff\x58\xff\x54\xff\x00\x00\x55\xff\x00\x00\x00\x00\x00\x00\x00\x00\x5c\xff\x00\x00\xb3\xff\x68\xff\x00\x00\x06\xff\x1e\xff\x0e\xff\xbc\xff\x00\x00\x00\x00\xb3\xff\x5e\xff\x5a\xff\x5f\xff\x57\xff\x60\xff\x00\x00\x05\xff\x39\xff\x4d\xff\x37\xff\x38\xff\xbc\xff\x00\x00\x6c\xff\x00\x00\x00\x00\x00\x00\x00\x00\xbc\xff\xaa\xff\x32\xff\x31\xff\x30\xff\x50\xff\x98\xff\x51\xff\xa8\xff\xa6\xff\x00\x00\xa8\xff\x00\x00\x00\x00\x00\x00\x0f\xff\x00\x00\xa8\xff\x00\x00\x4f\xff\xab\xff\x00\x00\xbc\xff\x00\x00\x00\x00\x00\x00\xbc\xff\x00\x00\x00\x00\x00\x00\x4b\xff\x53\xff\x5d\xff\x5b\xff\x59\xff\x00\x00\x07\xff\xbc\xff\x00\x00\x61\xff\x22\xff\x00\x00\x00\x00\x00\x00\x00\x00\xbc\xff\x00\x00\x0b\xff\x11\xff\x00\x00\x12\xff\x13\xff\x10\xff\x00\x00\x0d\xff\xbc\xff\xbc\xff\xbc\xff\x26\xff\x61\xff\x4a\xff\x25\xff\x00\x00\x0a\xff\x35\xff\x34\xff\x33\xff\x0c\xff\xbc\xff\x00\x00\x09\xff"#
 
674
happyDefActions = HappyA# "\xfa\xff\x00\x00\xbb\xff\x00\x00\xfc\xff\x00\x00\x00\x00\xbb\xff\xb8\xff\xbb\xff\xa8\xff\x8f\xff\x00\x00\x9b\xff\x9a\xff\x98\xff\x97\xff\x00\x00\x92\xff\x00\x00\x00\x00\x7a\xff\x78\xff\xbb\xff\x00\x00\x8b\xff\x8a\xff\x00\x00\x89\xff\x00\x00\x8c\xff\x8d\xff\x00\x00\x00\x00\x00\x00\xb0\xff\xa9\xff\x8e\xff\x00\x00\xa8\xff\x00\x00\x00\x00\x98\xff\x00\x00\x75\xff\x85\xff\x00\x00\x00\x00\x84\xff\xa6\xff\x64\xff\x6a\xff\x00\x00\x94\xff\x6e\xff\x6b\xff\xa5\xff\x00\x00\x00\x00\x82\xff\x00\x00\x00\x00\x00\x00\x00\x00\x80\xff\x00\x00\x00\x00\x79\xff\x00\x00\x00\x00\x7b\xff\x9e\xff\x96\xff\x90\xff\x00\x00\x00\x00\x00\x00\xba\xff\xb9\xff\xbb\xff\xbb\xff\x15\xff\xbb\xff\x10\xff\x00\x00\x00\x00\x00\x00\x00\x00\xfb\xff\xf9\xff\xf8\xff\xf7\xff\xf6\xff\xf5\xff\xf4\xff\xf3\xff\xf2\xff\xf1\xff\xf0\xff\xef\xff\xee\xff\xed\xff\xec\xff\xeb\xff\xea\xff\xe9\xff\xe8\xff\xe7\xff\xe6\xff\xe5\xff\xe4\xff\xe3\xff\xe2\xff\xe1\xff\xe0\xff\xdf\xff\xde\xff\xdd\xff\xdc\xff\xdb\xff\xda\xff\xd9\xff\xd8\xff\xd7\xff\xd6\xff\xd5\xff\xd4\xff\xd3\xff\xd2\xff\xd1\xff\xd0\xff\xcf\xff\xce\xff\xcd\xff\xcc\xff\xcb\xff\xca\xff\xc9\xff\xc8\xff\xc7\xff\xc6\xff\xc5\xff\xc4\xff\xc3\xff\xc2\xff\xc1\xff\xc0\xff\xbf\xff\xbe\xff\xbd\xff\xbc\xff\xa1\xff\xa8\xff\xa7\xff\x65\xff\x5a\xff\x1c\xff\x00\x00\xb7\xff\x00\x00\x14\xff\x13\xff\x83\xff\x99\xff\x00\x00\x9c\xff\xa2\xff\x92\xff\x00\x00\xbb\xff\x00\x00\x00\x00\x7f\xff\x7e\xff\x6f\xff\x9d\xff\x00\x00\x68\xff\x69\xff\x6d\xff\x95\xff\x6c\xff\x77\xff\x86\xff\x00\x00\x76\xff\x88\xff\x00\x00\x00\x00\x00\x00\x70\xff\x71\xff\x73\xff\x74\xff\x63\xff\x00\x00\x81\xff\x00\x00\x00\x00\xbb\xff\x93\xff\x5a\xff\x1c\xff\x5a\xff\x18\xff\x62\xff\x60\xff\x5e\xff\x5b\xff\x5c\xff\x00\x00\x00\x00\x00\x00\x5a\xff\x00\x00\x65\xff\x00\x00\x65\xff\x00\x00\x00\x00\xa1\xff\xa0\xff\x09\xff\x67\xff\xbb\xff\x66\xff\x5a\xff\x5f\xff\xb2\xff\x00\x00\x4f\xff\x5d\xff\x1d\xff\x1b\xff\x17\xff\x00\x00\xbb\xff\xb4\xff\xa8\xff\x45\xff\x2b\xff\xf2\xfe\x40\xff\x3e\xff\x3d\xff\x3c\xff\x3b\xff\x3f\xff\x3a\xff\x39\xff\x38\xff\x37\xff\x36\xff\x35\xff\x33\xff\x34\xff\x32\xff\x31\xff\x11\xff\x0f\xff\x0e\xff\x0c\xff\x0d\xff\x0b\xff\x0a\xff\xbb\xff\xbb\xff\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xbb\xff\x00\x00\x00\x00\x00\x00\xbb\xff\xbb\xff\xbb\xff\x49\xff\x00\x00\x7c\xff\x7d\xff\x00\x00\x87\xff\x72\xff\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x45\xff\x00\x00\x20\xff\x21\xff\x22\xff\x00\x00\xb1\xff\x00\x00\x00\x00\x00\x00\x23\xff\x65\xff\x65\xff\x65\xff\x65\xff\x00\x00\x00\x00\x1e\xff\x1f\xff\x43\xff\x00\x00\x47\xff\x00\x00\x00\x00\x00\x00\xf6\xfe\xb5\xff\xb6\xff\xb3\xff\x51\xff\x4d\xff\x00\x00\x4e\xff\x00\x00\x00\x00\x00\x00\x00\x00\x55\xff\x00\x00\xb2\xff\x61\xff\x00\x00\xf4\xfe\x12\xff\xbb\xff\x00\x00\x00\x00\xb2\xff\x57\xff\x53\xff\x58\xff\x50\xff\x59\xff\x00\x00\xf3\xfe\x30\xff\x44\xff\x4b\xff\x00\x00\x2c\xff\x2d\xff\xbb\xff\x00\x00\xbb\xff\x65\xff\x00\x00\x00\x00\x00\x00\x00\x00\xbb\xff\xa3\xff\x26\xff\x25\xff\x24\xff\x49\xff\x91\xff\x47\xff\xa1\xff\x9f\xff\x00\x00\xa1\xff\x03\xff\x00\x00\x00\x00\x00\x00\x04\xff\x00\x00\xa1\xff\x00\x00\x4a\xff\x48\xff\xa4\xff\x00\x00\xbb\xff\x00\x00\x00\x00\x00\x00\xbb\xff\x00\x00\x00\x00\x00\x00\xbb\xff\x00\x00\x42\xff\x46\xff\x4c\xff\x56\xff\x54\xff\x52\xff\x00\x00\xf5\xfe\xbb\xff\x00\x00\xbb\xff\xae\xff\x00\x00\x00\xff\x00\x00\x5a\xff\x16\xff\x00\x00\x00\x00\x00\x00\x00\x00\xbb\xff\xac\xff\x00\x00\xfd\xfe\x00\x00\x06\xff\x00\x00\x07\xff\x08\xff\x05\xff\x00\x00\x00\x00\xad\xff\x00\x00\xff\xfe\xbb\xff\xbb\xff\xbb\xff\x1a\xff\x5a\xff\x00\x00\xaf\xff\x00\x00\x02\xff\x41\xff\x01\xff\x2f\xff\x19\xff\x00\x00\xfb\xfe\x2a\xff\x29\xff\x00\x00\x28\xff\xfe\xfe\x2e\xff\xaa\xff\xab\xff\xbb\xff\xbb\xff\x00\x00\x00\x00\xbb\xff\x00\x00\xfa\xfe\xbb\xff\x00\x00\xfc\xfe\x27\xff\x00\x00\xbb\xff\xf7\xfe\xbb\xff\xf9\xfe\x00\x00\xf8\xfe"#
617
675
 
618
676
happyCheck :: HappyAddr
619
 
happyCheck = HappyA# "\xff\xff\x03\x00\x03\x00\x0a\x00\x03\x00\x03\x00\x03\x00\x03\x00\x05\x00\x03\x00\x10\x00\x03\x00\x03\x00\x03\x00\x03\x00\x03\x00\x03\x00\x0a\x00\x03\x00\x0e\x00\x03\x00\x03\x00\x08\x00\x03\x00\x33\x00\x03\x00\x03\x00\x03\x00\x29\x00\x0a\x00\x00\x00\x3a\x00\x06\x00\x2b\x00\x2f\x00\x06\x00\x03\x00\x0a\x00\x0b\x00\x0a\x00\x07\x00\x03\x00\x04\x00\x05\x00\x19\x00\x1a\x00\x1b\x00\x03\x00\x3a\x00\x03\x00\x39\x00\x18\x00\x03\x00\x0a\x00\x0b\x00\x0a\x00\x07\x00\x2a\x00\x03\x00\x11\x00\x2e\x00\x2f\x00\x30\x00\x3a\x00\x39\x00\x06\x00\x10\x00\x18\x00\x10\x00\x0a\x00\x0b\x00\x1a\x00\x1b\x00\x0a\x00\x0b\x00\x00\x00\x01\x00\x4a\x00\x13\x00\x14\x00\x15\x00\x16\x00\x17\x00\x18\x00\x36\x00\x37\x00\x39\x00\x18\x00\x57\x00\x5b\x00\x5b\x00\x59\x00\x5a\x00\x59\x00\x5a\x00\x59\x00\x5a\x00\x59\x00\x59\x00\x59\x00\x59\x00\x59\x00\x59\x00\x56\x00\x56\x00\x58\x00\x58\x00\x57\x00\x56\x00\x56\x00\x56\x00\x34\x00\x4a\x00\x46\x00\x00\x00\x38\x00\x39\x00\x3a\x00\x4a\x00\x3c\x00\x3d\x00\x3e\x00\x3f\x00\x40\x00\x41\x00\x42\x00\x43\x00\x44\x00\x45\x00\x4a\x00\x47\x00\x48\x00\x49\x00\x46\x00\x08\x00\x4c\x00\x03\x00\x4e\x00\x35\x00\x50\x00\x51\x00\x52\x00\x53\x00\x54\x00\x55\x00\x0a\x00\x0b\x00\x0e\x00\x2d\x00\x0a\x00\x0a\x00\x30\x00\x0a\x00\x0b\x00\x13\x00\x14\x00\x15\x00\x16\x00\x17\x00\x18\x00\x09\x00\x0a\x00\x0b\x00\x29\x00\x0d\x00\x17\x00\x18\x00\x31\x00\x36\x00\x33\x00\x0a\x00\x0a\x00\x3a\x00\x08\x00\x34\x00\x45\x00\x07\x00\x08\x00\x48\x00\x0e\x00\x1c\x00\x4b\x00\x0a\x00\x0e\x00\x3a\x00\x3b\x00\x22\x00\x34\x00\x31\x00\x32\x00\x33\x00\x38\x00\x39\x00\x3a\x00\x08\x00\x3c\x00\x3d\x00\x3e\x00\x3f\x00\x40\x00\x41\x00\x42\x00\x43\x00\x44\x00\x45\x00\x0a\x00\x47\x00\x48\x00\x49\x00\x3a\x00\x31\x00\x4c\x00\x33\x00\x4e\x00\x08\x00\x50\x00\x51\x00\x52\x00\x53\x00\x54\x00\x55\x00\x0a\x00\x0b\x00\x3a\x00\x3b\x00\x38\x00\x0a\x00\x0a\x00\x0b\x00\x0a\x00\x13\x00\x14\x00\x15\x00\x16\x00\x17\x00\x18\x00\x37\x00\x0a\x00\x2a\x00\x45\x00\x0d\x00\x18\x00\x48\x00\x2f\x00\x31\x00\x4b\x00\x33\x00\x4d\x00\x0a\x00\x4f\x00\x07\x00\x08\x00\x2e\x00\x2f\x00\x30\x00\x55\x00\x0a\x00\x0e\x00\x1f\x00\x0d\x00\x0e\x00\x24\x00\x23\x00\x34\x00\x25\x00\x28\x00\x27\x00\x38\x00\x39\x00\x3a\x00\x11\x00\x3c\x00\x3d\x00\x3e\x00\x3f\x00\x40\x00\x41\x00\x42\x00\x43\x00\x44\x00\x45\x00\x11\x00\x47\x00\x48\x00\x49\x00\x1e\x00\x1f\x00\x4c\x00\x36\x00\x4e\x00\x11\x00\x50\x00\x51\x00\x52\x00\x53\x00\x54\x00\x55\x00\x00\x00\x01\x00\x0a\x00\x0b\x00\x0c\x00\x05\x00\x06\x00\x07\x00\x08\x00\x29\x00\x2a\x00\x2b\x00\x2c\x00\x2d\x00\x0e\x00\x0f\x00\x10\x00\x11\x00\x12\x00\x13\x00\x14\x00\x15\x00\x16\x00\x17\x00\x18\x00\x19\x00\x1a\x00\x0a\x00\x0b\x00\x28\x00\x29\x00\x2a\x00\x2b\x00\x2c\x00\x2d\x00\x23\x00\x3a\x00\x3b\x00\x26\x00\x27\x00\x17\x00\x18\x00\x2b\x00\x2b\x00\x2c\x00\x10\x00\x2e\x00\x35\x00\x31\x00\x31\x00\x33\x00\x33\x00\x09\x00\x09\x00\x36\x00\x09\x00\x38\x00\x3a\x00\x3a\x00\x3b\x00\x0a\x00\x3d\x00\x01\x00\x02\x00\x03\x00\x04\x00\x05\x00\x06\x00\x07\x00\x08\x00\x09\x00\x0a\x00\x0b\x00\x0c\x00\x0d\x00\x0e\x00\x0f\x00\x10\x00\x11\x00\x12\x00\x13\x00\x14\x00\x15\x00\x16\x00\x17\x00\x18\x00\x19\x00\x1a\x00\x1b\x00\x1c\x00\x1d\x00\x1e\x00\x1f\x00\x20\x00\x21\x00\x22\x00\x23\x00\x24\x00\x25\x00\x26\x00\x27\x00\x28\x00\x29\x00\x2a\x00\x2b\x00\x2c\x00\x2d\x00\x2e\x00\x2f\x00\x30\x00\x31\x00\x32\x00\x33\x00\x34\x00\x35\x00\x36\x00\x37\x00\x38\x00\x39\x00\x3a\x00\x3b\x00\x3c\x00\x3d\x00\x01\x00\x2b\x00\x2c\x00\x2d\x00\x05\x00\x06\x00\x07\x00\x08\x00\x29\x00\x2a\x00\x2b\x00\x2c\x00\x2d\x00\x0e\x00\x0f\x00\x10\x00\x11\x00\x12\x00\x13\x00\x14\x00\x15\x00\x16\x00\x17\x00\x18\x00\x19\x00\x1a\x00\x0a\x00\x0a\x00\x01\x00\x29\x00\x2a\x00\x2b\x00\x2c\x00\x2d\x00\x23\x00\x0a\x00\x0a\x00\x26\x00\x27\x00\x0d\x00\x0e\x00\x3b\x00\x2b\x00\x2c\x00\x11\x00\x2e\x00\x0a\x00\x36\x00\x31\x00\x0d\x00\x33\x00\x03\x00\x19\x00\x1a\x00\x1b\x00\x38\x00\x01\x00\x3a\x00\x3b\x00\x06\x00\x3d\x00\x0a\x00\x23\x00\x10\x00\x0d\x00\x0e\x00\x27\x00\x1f\x00\x0a\x00\x2d\x00\x2b\x00\x2c\x00\x11\x00\x2e\x00\x26\x00\x27\x00\x31\x00\x10\x00\x33\x00\x34\x00\x19\x00\x1a\x00\x1b\x00\x03\x00\x01\x00\x3a\x00\x3b\x00\x2b\x00\x3d\x00\x03\x00\x23\x00\x02\x00\x01\x00\x31\x00\x27\x00\x33\x00\x24\x00\x3a\x00\x2b\x00\x2c\x00\x11\x00\x2e\x00\x3a\x00\x35\x00\x31\x00\x32\x00\x33\x00\x24\x00\x19\x00\x1a\x00\x1b\x00\x39\x00\x01\x00\x3a\x00\x3b\x00\x29\x00\x3d\x00\x24\x00\x23\x00\x09\x00\x0a\x00\x0b\x00\x27\x00\x0d\x00\x03\x00\x03\x00\x2b\x00\x2c\x00\x11\x00\x2e\x00\x0a\x00\x03\x00\x31\x00\x0d\x00\x33\x00\x34\x00\x19\x00\x1a\x00\x1b\x00\x24\x00\x01\x00\x3a\x00\x3b\x00\x03\x00\x3d\x00\x0a\x00\x23\x00\x2a\x00\x0d\x00\x0e\x00\x27\x00\x1f\x00\x24\x00\x3a\x00\x2b\x00\x2c\x00\x11\x00\x2e\x00\x26\x00\x27\x00\x31\x00\x32\x00\x33\x00\x39\x00\x19\x00\x1a\x00\x0a\x00\x0b\x00\x0c\x00\x3a\x00\x3b\x00\x39\x00\x3d\x00\x3c\x00\x23\x00\x39\x00\x39\x00\x01\x00\x27\x00\x0a\x00\x0b\x00\x0c\x00\x2b\x00\x2c\x00\x2d\x00\x2e\x00\x3c\x00\x30\x00\x31\x00\x0a\x00\x33\x00\x3c\x00\x0d\x00\x11\x00\x3c\x00\x0a\x00\x0b\x00\x3a\x00\x3b\x00\x30\x00\x3d\x00\x19\x00\x1a\x00\x1b\x00\x3c\x00\x01\x00\x15\x00\x16\x00\x17\x00\x18\x00\x1f\x00\x23\x00\x0a\x00\x0b\x00\x0c\x00\x27\x00\x24\x00\x26\x00\x27\x00\x2b\x00\x2c\x00\x11\x00\x2e\x00\x0a\x00\x29\x00\x31\x00\x0d\x00\x33\x00\x29\x00\x19\x00\x1a\x00\x29\x00\x3a\x00\x01\x00\x3a\x00\x3b\x00\x24\x00\x3d\x00\x0e\x00\x23\x00\x0a\x00\x0b\x00\x0c\x00\x27\x00\x1f\x00\x24\x00\x3a\x00\x2b\x00\x2c\x00\x11\x00\x2e\x00\x26\x00\x27\x00\x31\x00\x35\x00\x33\x00\x34\x00\x19\x00\x1a\x00\x0c\x00\x28\x00\x01\x00\x3a\x00\x3b\x00\x32\x00\x3d\x00\x3a\x00\x23\x00\x09\x00\x0a\x00\x0b\x00\x27\x00\x32\x00\x3a\x00\x28\x00\x2b\x00\x2c\x00\x11\x00\x2e\x00\x32\x00\x35\x00\x31\x00\x32\x00\x33\x00\x3a\x00\x19\x00\x1a\x00\x1b\x00\x04\x00\x01\x00\x3a\x00\x3b\x00\x30\x00\x3d\x00\x24\x00\x23\x00\x3c\x00\x3c\x00\x3c\x00\x27\x00\x3d\x00\x24\x00\x24\x00\x2b\x00\x2c\x00\x11\x00\x2e\x00\x0a\x00\x3a\x00\x31\x00\x0d\x00\x33\x00\x2a\x00\x19\x00\x1a\x00\x04\x00\x24\x00\x0e\x00\x3a\x00\x3b\x00\x39\x00\x3d\x00\x24\x00\x23\x00\x3c\x00\x39\x00\x03\x00\x27\x00\x1f\x00\x3c\x00\x3a\x00\x2b\x00\x2c\x00\x11\x00\x2e\x00\x26\x00\x27\x00\x31\x00\x31\x00\x33\x00\x31\x00\x19\x00\x1a\x00\x31\x00\x0b\x00\x3a\x00\x3a\x00\x3b\x00\x28\x00\x3d\x00\x34\x00\x23\x00\x0a\x00\x0b\x00\x28\x00\x27\x00\x34\x00\x2a\x00\x0a\x00\x2b\x00\x2c\x00\x0d\x00\x24\x00\x15\x00\x16\x00\x31\x00\x18\x00\x33\x00\x0a\x00\x30\x00\x0a\x00\x0d\x00\x3c\x00\x0d\x00\x3a\x00\x3b\x00\x24\x00\x3d\x00\x3c\x00\x1f\x00\x02\x00\x35\x00\x3a\x00\x23\x00\x24\x00\x25\x00\x2d\x00\x27\x00\x32\x00\x1f\x00\x0a\x00\x1f\x00\x28\x00\x0d\x00\x32\x00\x34\x00\x26\x00\x27\x00\x26\x00\x27\x00\x0a\x00\x0a\x00\x29\x00\x0d\x00\x0d\x00\x28\x00\x29\x00\x2a\x00\x2b\x00\x2c\x00\x2d\x00\x1f\x00\x1d\x00\x1e\x00\x1f\x00\x20\x00\x21\x00\x22\x00\x26\x00\x27\x00\x34\x00\x1f\x00\x1f\x00\x29\x00\x3e\x00\x33\x00\x2d\x00\x25\x00\x25\x00\x27\x00\x27\x00\x0a\x00\x0b\x00\x24\x00\x3e\x00\x2f\x00\x0f\x00\x24\x00\x3e\x00\x12\x00\x13\x00\x14\x00\x15\x00\x16\x00\x17\x00\x18\x00\x24\x00\xff\xff\xff\xff\x1c\x00\x1d\x00\x1e\x00\x1f\x00\x20\x00\x21\x00\x22\x00\x0a\x00\x0b\x00\xff\xff\xff\xff\xff\xff\x0f\x00\xff\xff\xff\xff\x12\x00\x13\x00\x14\x00\x15\x00\x16\x00\x17\x00\x18\x00\xff\xff\xff\xff\xff\xff\x1c\x00\x1d\x00\x1e\x00\x1f\x00\x20\x00\x21\x00\x22\x00\x0a\x00\x0b\x00\xff\xff\xff\xff\xff\xff\x0f\x00\xff\xff\xff\xff\x12\x00\x13\x00\x14\x00\x15\x00\x16\x00\x17\x00\x18\x00\xff\xff\xff\xff\xff\xff\x1c\x00\x1d\x00\x1e\x00\x1f\x00\x20\x00\xff\xff\x22\x00\x0a\x00\x0b\x00\xff\xff\xff\xff\xff\xff\x0f\x00\xff\xff\xff\xff\x12\x00\x13\x00\x14\x00\x15\x00\x16\x00\x17\x00\x18\x00\xff\xff\xff\xff\xff\xff\x1c\x00\x1d\x00\x1e\x00\x1f\x00\x20\x00\xff\xff\x22\x00\x0a\x00\x0b\x00\xff\xff\xff\xff\xff\xff\x0f\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x15\x00\x16\x00\xff\xff\x18\x00\x0a\x00\x0b\x00\xff\xff\xff\xff\xff\xff\x0f\x00\xff\xff\x20\x00\xff\xff\x22\x00\xff\xff\x15\x00\x16\x00\xff\xff\x18\x00\x0a\x00\x0b\x00\xff\xff\xff\xff\xff\xff\x0f\x00\xff\xff\x20\x00\xff\xff\x22\x00\xff\xff\x15\x00\x16\x00\xff\xff\x18\x00\x0a\x00\x0b\x00\xff\xff\xff\xff\xff\xff\x0f\x00\xff\xff\x20\x00\xff\xff\x22\x00\xff\xff\x15\x00\x16\x00\xff\xff\x18\x00\x0a\x00\x0b\x00\xff\xff\xff\xff\xff\xff\x0f\x00\xff\xff\x20\x00\xff\xff\x22\x00\xff\xff\x15\x00\x16\x00\xff\xff\x18\x00\xff\xff\xff\xff\x0a\x00\x0b\x00\xff\xff\xff\xff\xff\xff\x20\x00\xff\xff\x22\x00\x12\x00\x13\x00\x14\x00\x15\x00\x16\x00\x17\x00\x18\x00\x0a\x00\x0b\x00\xff\xff\x1c\x00\x1d\x00\x1e\x00\x1f\x00\xff\xff\x12\x00\x13\x00\x14\x00\x15\x00\x16\x00\x17\x00\x18\x00\x0a\x00\x0b\x00\xff\xff\x1c\x00\x1d\x00\x1e\x00\x1f\x00\xff\xff\x12\x00\x13\x00\x14\x00\x15\x00\x16\x00\x17\x00\x18\x00\x0a\x00\x0b\x00\xff\xff\x1c\x00\x1d\x00\x1e\x00\x1f\x00\xff\xff\x12\x00\x13\x00\x14\x00\x15\x00\x16\x00\x17\x00\x18\x00\x0a\x00\x0b\x00\xff\xff\x1c\x00\x1d\x00\x1e\x00\x1f\x00\xff\xff\x12\x00\x13\x00\x14\x00\x15\x00\x16\x00\x17\x00\x18\x00\x0a\x00\x0b\x00\xff\xff\x1c\x00\x1d\x00\x1e\x00\x1f\x00\xff\xff\x12\x00\x13\x00\x14\x00\x15\x00\x16\x00\x17\x00\x18\x00\x0a\x00\x0b\x00\xff\xff\x1c\x00\x1d\x00\x1e\x00\x1f\x00\xff\xff\x12\x00\x13\x00\x14\x00\x15\x00\x16\x00\x17\x00\x18\x00\x0a\x00\x0b\x00\xff\xff\x1c\x00\x1d\x00\x1e\x00\x1f\x00\xff\xff\x12\x00\x13\x00\x14\x00\x15\x00\x16\x00\x17\x00\x18\x00\x0a\x00\x0b\x00\xff\xff\x1c\x00\x1d\x00\x1e\x00\x1f\x00\xff\xff\x12\x00\x13\x00\x14\x00\x15\x00\x16\x00\x17\x00\x18\x00\x0a\x00\x0b\x00\xff\xff\x1c\x00\x1d\x00\x1e\x00\x1f\x00\xff\xff\x12\x00\x13\x00\x14\x00\x15\x00\x16\x00\x17\x00\x18\x00\x0a\x00\x0b\x00\xff\xff\x1c\x00\x1d\x00\x1e\x00\x1f\x00\xff\xff\x12\x00\x13\x00\x14\x00\x15\x00\x16\x00\x17\x00\x18\x00\x0a\x00\x0b\x00\xff\xff\x1c\x00\x1d\x00\x1e\x00\x1f\x00\xff\xff\x12\x00\x13\x00\x14\x00\x15\x00\x16\x00\x17\x00\x18\x00\x0a\x00\x0b\x00\xff\xff\x1c\x00\x1d\x00\x1e\x00\x1f\x00\xff\xff\x12\x00\x13\x00\x14\x00\x15\x00\x16\x00\x17\x00\x18\x00\x0a\x00\x0b\x00\xff\xff\x1c\x00\x1d\x00\x1e\x00\x1f\x00\xff\xff\x12\x00\x13\x00\x14\x00\x15\x00\x16\x00\x17\x00\x18\x00\x0a\x00\x0b\x00\xff\xff\x1c\x00\x1d\x00\x1e\x00\x1f\x00\xff\xff\x12\x00\x13\x00\x14\x00\x15\x00\x16\x00\x17\x00\x18\x00\x0a\x00\x0b\x00\xff\xff\x1c\x00\x1d\x00\x1e\x00\x1f\x00\xff\xff\x12\x00\x13\x00\x14\x00\x15\x00\x16\x00\x17\x00\x18\x00\x0a\x00\x0b\x00\xff\xff\x1c\x00\x1d\x00\x1e\x00\x1f\x00\xff\xff\x12\x00\x13\x00\x14\x00\x15\x00\x16\x00\x17\x00\x18\x00\x0a\x00\x0b\x00\xff\xff\x1c\x00\x1d\x00\x1e\x00\x1f\x00\xff\xff\x12\x00\x13\x00\x14\x00\x15\x00\x16\x00\x17\x00\x18\x00\x0a\x00\x0b\x00\xff\xff\x1c\x00\x1d\x00\x1e\x00\x1f\x00\xff\xff\x12\x00\x13\x00\x14\x00\x15\x00\x16\x00\x17\x00\x18\x00\x0a\x00\x0b\x00\xff\xff\x1c\x00\x1d\x00\x1e\x00\x1f\x00\xff\xff\xff\xff\xff\xff\x14\x00\x15\x00\x16\x00\x17\x00\x18\x00\x29\x00\x2a\x00\x2b\x00\x2c\x00\x2d\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff"#
 
677
happyCheck = HappyA# "\xff\xff\x03\x00\x03\x00\x09\x00\x03\x00\x03\x00\x03\x00\x03\x00\x03\x00\x03\x00\x03\x00\x05\x00\x03\x00\x03\x00\x03\x00\x03\x00\x03\x00\x03\x00\x03\x00\x04\x00\x05\x00\x03\x00\x2d\x00\x03\x00\x03\x00\x03\x00\x03\x00\x00\x00\x03\x00\x0a\x00\x06\x00\x03\x00\x03\x00\x0f\x00\x0a\x00\x0b\x00\x0a\x00\x3c\x00\x0c\x00\x2b\x00\x06\x00\x0a\x00\x0a\x00\x03\x00\x0d\x00\x0d\x00\x03\x00\x03\x00\x0a\x00\x0a\x00\x36\x00\x0f\x00\x0d\x00\x0e\x00\x3c\x00\x3d\x00\x19\x00\x1a\x00\x1a\x00\x0a\x00\x0a\x00\x0a\x00\x0d\x00\x0d\x00\x0d\x00\x1b\x00\x1c\x00\x1d\x00\x0a\x00\x0b\x00\x33\x00\x34\x00\x35\x00\x00\x00\x06\x00\x1a\x00\x1a\x00\x1a\x00\x0a\x00\x0a\x00\x0a\x00\x0d\x00\x0c\x00\x38\x00\x2c\x00\x3d\x00\x50\x00\x3c\x00\x3e\x00\x15\x00\x16\x00\x17\x00\x18\x00\x19\x00\x1a\x00\x50\x00\x3c\x00\x5d\x00\x64\x00\x64\x00\x61\x00\x64\x00\x64\x00\x62\x00\x63\x00\x62\x00\x63\x00\x62\x00\x62\x00\x62\x00\x62\x00\x62\x00\x62\x00\x5c\x00\x5c\x00\x5f\x00\x5d\x00\x60\x00\x60\x00\x5e\x00\x5c\x00\x5c\x00\x36\x00\x50\x00\x50\x00\x4c\x00\x4c\x00\x3b\x00\x3c\x00\x38\x00\x39\x00\x3f\x00\x3e\x00\x41\x00\x42\x00\x43\x00\x44\x00\x45\x00\x46\x00\x47\x00\x48\x00\x49\x00\x4a\x00\x4b\x00\x08\x00\x4d\x00\x4e\x00\x4f\x00\x0a\x00\x0b\x00\x52\x00\x08\x00\x54\x00\x06\x00\x56\x00\x57\x00\x58\x00\x59\x00\x5a\x00\x5b\x00\x06\x00\x0a\x00\x0b\x00\x0a\x00\x0a\x00\x2b\x00\x0a\x00\x0d\x00\x0a\x00\x0b\x00\x0c\x00\x31\x00\x0e\x00\x06\x00\x35\x00\x15\x00\x16\x00\x17\x00\x18\x00\x19\x00\x1a\x00\x3c\x00\x0a\x00\x09\x00\x30\x00\x31\x00\x32\x00\x08\x00\x09\x00\x0f\x00\x03\x00\x30\x00\x31\x00\x32\x00\x0f\x00\x0a\x00\x08\x00\x09\x00\x0d\x00\x3d\x00\x1c\x00\x1d\x00\x2f\x00\x0f\x00\x33\x00\x32\x00\x35\x00\x33\x00\x36\x00\x35\x00\x19\x00\x1a\x00\x3d\x00\x3b\x00\x3c\x00\x0a\x00\x0b\x00\x3f\x00\x3c\x00\x41\x00\x42\x00\x06\x00\x44\x00\x45\x00\x46\x00\x47\x00\x48\x00\x49\x00\x4a\x00\x4b\x00\x06\x00\x4d\x00\x4e\x00\x4f\x00\x3c\x00\x3d\x00\x52\x00\x3a\x00\x54\x00\x12\x00\x56\x00\x57\x00\x58\x00\x59\x00\x5a\x00\x5b\x00\x0a\x00\x0a\x00\x2c\x00\x0d\x00\x0a\x00\x0a\x00\x0f\x00\x31\x00\x0d\x00\x0f\x00\x12\x00\x15\x00\x16\x00\x17\x00\x18\x00\x19\x00\x1a\x00\x0a\x00\x17\x00\x18\x00\x19\x00\x1a\x00\x0f\x00\x0a\x00\x21\x00\x03\x00\x0d\x00\x21\x00\x25\x00\x26\x00\x27\x00\x25\x00\x29\x00\x27\x00\x35\x00\x29\x00\x17\x00\x18\x00\x03\x00\x1a\x00\x21\x00\x3c\x00\x07\x00\x0a\x00\x36\x00\x0c\x00\x0a\x00\x28\x00\x29\x00\x3b\x00\x3c\x00\x0f\x00\x10\x00\x3f\x00\x38\x00\x41\x00\x42\x00\x13\x00\x44\x00\x45\x00\x46\x00\x47\x00\x48\x00\x49\x00\x4a\x00\x4b\x00\x03\x00\x4d\x00\x4e\x00\x4f\x00\x07\x00\x03\x00\x52\x00\x12\x00\x54\x00\x07\x00\x56\x00\x57\x00\x58\x00\x59\x00\x5a\x00\x5b\x00\x0a\x00\x0a\x00\x0a\x00\x0d\x00\x0a\x00\x37\x00\x0f\x00\x0f\x00\x10\x00\x0f\x00\x0a\x00\x15\x00\x16\x00\x17\x00\x18\x00\x19\x00\x1a\x00\x0a\x00\x0a\x00\x0a\x00\x0a\x00\x0c\x00\x0f\x00\x0a\x00\x21\x00\x0f\x00\x10\x00\x21\x00\x0f\x00\x03\x00\x2d\x00\x28\x00\x29\x00\x07\x00\x28\x00\x29\x00\x33\x00\x0a\x00\x35\x00\x33\x00\x21\x00\x35\x00\x0f\x00\x10\x00\x36\x00\x3c\x00\x21\x00\x28\x00\x29\x00\x3b\x00\x3c\x00\x0a\x00\x27\x00\x3f\x00\x29\x00\x41\x00\x42\x00\x0a\x00\x44\x00\x45\x00\x46\x00\x47\x00\x48\x00\x49\x00\x4a\x00\x4b\x00\x03\x00\x4d\x00\x4e\x00\x4f\x00\x07\x00\x03\x00\x52\x00\x08\x00\x54\x00\x07\x00\x56\x00\x57\x00\x58\x00\x59\x00\x5a\x00\x5b\x00\x00\x00\x01\x00\x2d\x00\x2e\x00\x2f\x00\x0a\x00\x06\x00\x07\x00\x08\x00\x09\x00\x2b\x00\x2c\x00\x2d\x00\x2e\x00\x2f\x00\x0f\x00\x10\x00\x11\x00\x12\x00\x13\x00\x14\x00\x15\x00\x16\x00\x17\x00\x18\x00\x19\x00\x1a\x00\x1b\x00\x1c\x00\x4b\x00\x0a\x00\x38\x00\x4e\x00\x0d\x00\x0e\x00\x51\x00\x3a\x00\x25\x00\x0a\x00\x0a\x00\x28\x00\x29\x00\x0d\x00\x0e\x00\x0a\x00\x2d\x00\x2e\x00\x39\x00\x30\x00\x0f\x00\x26\x00\x33\x00\x13\x00\x35\x00\x2a\x00\x09\x00\x38\x00\x13\x00\x3a\x00\x13\x00\x3c\x00\x3d\x00\x37\x00\x3f\x00\x00\x00\x01\x00\x09\x00\x21\x00\x20\x00\x21\x00\x06\x00\x07\x00\x08\x00\x09\x00\x28\x00\x29\x00\x0a\x00\x0b\x00\x0c\x00\x0f\x00\x10\x00\x11\x00\x12\x00\x09\x00\x14\x00\x15\x00\x16\x00\x17\x00\x18\x00\x19\x00\x1a\x00\x1b\x00\x1c\x00\x2a\x00\x2b\x00\x2c\x00\x2d\x00\x2e\x00\x2f\x00\x0a\x00\x0a\x00\x25\x00\x0d\x00\x0e\x00\x28\x00\x29\x00\x00\x00\x01\x00\x2d\x00\x2d\x00\x2e\x00\x0a\x00\x30\x00\x0a\x00\x33\x00\x33\x00\x35\x00\x35\x00\x3c\x00\x3d\x00\x38\x00\x0a\x00\x3a\x00\x3c\x00\x3c\x00\x3d\x00\x40\x00\x3f\x00\x01\x00\x02\x00\x03\x00\x04\x00\x05\x00\x06\x00\x07\x00\x08\x00\x09\x00\x0a\x00\x0b\x00\x0c\x00\x0d\x00\x0e\x00\x0f\x00\x10\x00\x11\x00\x12\x00\x13\x00\x14\x00\x15\x00\x16\x00\x17\x00\x18\x00\x19\x00\x1a\x00\x1b\x00\x1c\x00\x1d\x00\x1e\x00\x1f\x00\x20\x00\x06\x00\x22\x00\x23\x00\x24\x00\x25\x00\x26\x00\x27\x00\x28\x00\x29\x00\x2a\x00\x2b\x00\x2c\x00\x2d\x00\x2e\x00\x2f\x00\x30\x00\x31\x00\x32\x00\x33\x00\x34\x00\x35\x00\x36\x00\x37\x00\x38\x00\x39\x00\x3a\x00\x3b\x00\x3c\x00\x3d\x00\x3e\x00\x3f\x00\x01\x00\x39\x00\x12\x00\x03\x00\x0a\x00\x06\x00\x07\x00\x08\x00\x09\x00\x2b\x00\x2c\x00\x2d\x00\x2e\x00\x2f\x00\x0f\x00\x10\x00\x11\x00\x12\x00\x2f\x00\x14\x00\x15\x00\x16\x00\x17\x00\x18\x00\x19\x00\x1a\x00\x1b\x00\x1c\x00\x2a\x00\x2b\x00\x2c\x00\x2d\x00\x2e\x00\x2f\x00\x12\x00\x03\x00\x25\x00\x01\x00\x0a\x00\x28\x00\x29\x00\x01\x00\x03\x00\x0f\x00\x2d\x00\x2e\x00\x02\x00\x30\x00\x0a\x00\x26\x00\x33\x00\x3c\x00\x35\x00\x0f\x00\x12\x00\x26\x00\x37\x00\x3a\x00\x37\x00\x3c\x00\x3d\x00\x21\x00\x3f\x00\x1b\x00\x1c\x00\x1d\x00\x01\x00\x3c\x00\x28\x00\x29\x00\x3c\x00\x21\x00\x0a\x00\x25\x00\x36\x00\x0d\x00\x0e\x00\x29\x00\x28\x00\x29\x00\x26\x00\x2d\x00\x2e\x00\x12\x00\x30\x00\x3b\x00\x2b\x00\x33\x00\x26\x00\x35\x00\x36\x00\x03\x00\x1b\x00\x1c\x00\x1d\x00\x01\x00\x3c\x00\x3d\x00\x03\x00\x3f\x00\x03\x00\x2b\x00\x25\x00\x0a\x00\x0b\x00\x0c\x00\x29\x00\x0e\x00\x3c\x00\x26\x00\x2d\x00\x2e\x00\x12\x00\x30\x00\x03\x00\x0a\x00\x33\x00\x34\x00\x35\x00\x3c\x00\x0f\x00\x1b\x00\x1c\x00\x1d\x00\x01\x00\x3c\x00\x3d\x00\x2c\x00\x3f\x00\x26\x00\x3e\x00\x25\x00\x3b\x00\x3b\x00\x3b\x00\x29\x00\x3b\x00\x04\x00\x21\x00\x2d\x00\x2e\x00\x12\x00\x30\x00\x3e\x00\x27\x00\x33\x00\x29\x00\x35\x00\x36\x00\x3e\x00\x1b\x00\x1c\x00\x1d\x00\x01\x00\x3c\x00\x3d\x00\x32\x00\x3f\x00\x3e\x00\x26\x00\x25\x00\x3e\x00\x2b\x00\x2b\x00\x29\x00\x2b\x00\x26\x00\x3c\x00\x2d\x00\x2e\x00\x12\x00\x30\x00\x26\x00\x0f\x00\x33\x00\x34\x00\x35\x00\x3c\x00\x26\x00\x1b\x00\x1c\x00\x37\x00\x0d\x00\x3c\x00\x3d\x00\x2a\x00\x3f\x00\x34\x00\x34\x00\x25\x00\x01\x00\x0a\x00\x3c\x00\x29\x00\x34\x00\x2a\x00\x0f\x00\x2d\x00\x2e\x00\x2f\x00\x30\x00\x3c\x00\x32\x00\x33\x00\x04\x00\x35\x00\x37\x00\x12\x00\x3c\x00\x37\x00\x05\x00\x3e\x00\x3c\x00\x3d\x00\x21\x00\x3f\x00\x1b\x00\x1c\x00\x1d\x00\x01\x00\x3b\x00\x28\x00\x29\x00\x32\x00\x3e\x00\x3e\x00\x25\x00\x3f\x00\x26\x00\x26\x00\x29\x00\x3c\x00\x26\x00\x05\x00\x2d\x00\x2e\x00\x12\x00\x30\x00\x0f\x00\x2c\x00\x33\x00\x26\x00\x35\x00\x3b\x00\x0a\x00\x1b\x00\x1c\x00\x0d\x00\x01\x00\x3c\x00\x3d\x00\x11\x00\x3f\x00\x26\x00\x3e\x00\x25\x00\x03\x00\x17\x00\x18\x00\x29\x00\x1a\x00\x3c\x00\x33\x00\x2d\x00\x2e\x00\x12\x00\x30\x00\x33\x00\x22\x00\x33\x00\x24\x00\x35\x00\x36\x00\x33\x00\x1b\x00\x1c\x00\x0c\x00\x01\x00\x3c\x00\x3d\x00\x3c\x00\x3f\x00\x2a\x00\x36\x00\x25\x00\x2a\x00\x36\x00\x26\x00\x29\x00\x2c\x00\x1e\x00\x32\x00\x2d\x00\x2e\x00\x12\x00\x30\x00\x26\x00\x3e\x00\x33\x00\x34\x00\x35\x00\x02\x00\x3c\x00\x1b\x00\x1c\x00\x1d\x00\x01\x00\x3c\x00\x3d\x00\x37\x00\x3f\x00\x34\x00\x2f\x00\x25\x00\x34\x00\x2a\x00\x40\x00\x29\x00\x2b\x00\x26\x00\x36\x00\x2d\x00\x2e\x00\x12\x00\x30\x00\x36\x00\x2b\x00\x33\x00\x26\x00\x35\x00\x35\x00\x0a\x00\x1b\x00\x1c\x00\x0d\x00\x2f\x00\x3c\x00\x3d\x00\x11\x00\x3f\x00\x31\x00\x26\x00\x25\x00\x40\x00\x17\x00\x18\x00\x29\x00\x1a\x00\x40\x00\xff\xff\x2d\x00\x2e\x00\x12\x00\x30\x00\xff\xff\x22\x00\x33\x00\x24\x00\x35\x00\xff\xff\x0a\x00\x1b\x00\x1c\x00\x0d\x00\xff\xff\x3c\x00\x3d\x00\x11\x00\x3f\x00\xff\xff\xff\xff\x25\x00\xff\xff\x17\x00\x18\x00\x29\x00\x1a\x00\xff\xff\xff\xff\x2d\x00\x2e\x00\xff\xff\xff\xff\xff\xff\x22\x00\x33\x00\x24\x00\x35\x00\xff\xff\x0a\x00\xff\xff\xff\xff\x0d\x00\xff\xff\x3c\x00\x3d\x00\x11\x00\x3f\x00\xff\xff\x14\x00\x15\x00\x16\x00\x17\x00\x18\x00\x19\x00\x1a\x00\xff\xff\xff\xff\xff\xff\x1e\x00\x1f\x00\x20\x00\x21\x00\x22\x00\x23\x00\x24\x00\x0a\x00\xff\xff\xff\xff\x0d\x00\xff\xff\xff\xff\xff\xff\x11\x00\xff\xff\xff\xff\x14\x00\x15\x00\x16\x00\x17\x00\x18\x00\x19\x00\x1a\x00\xff\xff\xff\xff\xff\xff\x1e\x00\x1f\x00\x20\x00\x21\x00\x22\x00\x23\x00\x24\x00\x0a\x00\xff\xff\xff\xff\x0d\x00\xff\xff\xff\xff\xff\xff\x11\x00\xff\xff\xff\xff\x14\x00\x15\x00\x16\x00\x17\x00\x18\x00\x19\x00\x1a\x00\xff\xff\xff\xff\xff\xff\x1e\x00\x1f\x00\x20\x00\x21\x00\x22\x00\x0a\x00\x24\x00\xff\xff\x0d\x00\xff\xff\xff\xff\xff\xff\x11\x00\xff\xff\xff\xff\x14\x00\x15\x00\x16\x00\x17\x00\x18\x00\x19\x00\x1a\x00\xff\xff\xff\xff\xff\xff\x1e\x00\x1f\x00\x20\x00\x21\x00\x22\x00\x0a\x00\x24\x00\xff\xff\x0d\x00\xff\xff\x0a\x00\xff\xff\x11\x00\x0d\x00\xff\xff\xff\xff\xff\xff\x11\x00\x17\x00\x18\x00\xff\xff\x1a\x00\xff\xff\x17\x00\x18\x00\xff\xff\x1a\x00\x0a\x00\xff\xff\x22\x00\x0d\x00\x24\x00\xff\xff\xff\xff\x22\x00\xff\xff\x24\x00\x14\x00\x15\x00\x16\x00\x17\x00\x18\x00\x19\x00\x1a\x00\xff\xff\xff\xff\xff\xff\x1e\x00\x1f\x00\x20\x00\x21\x00\x0a\x00\xff\xff\xff\xff\x0d\x00\x1f\x00\x20\x00\x21\x00\x22\x00\x23\x00\x24\x00\x14\x00\x15\x00\x16\x00\x17\x00\x18\x00\x19\x00\x1a\x00\xff\xff\xff\xff\xff\xff\x1e\x00\x1f\x00\x20\x00\x21\x00\x0a\x00\xff\xff\xff\xff\x0d\x00\x2b\x00\x2c\x00\x2d\x00\x2e\x00\x2f\x00\xff\xff\x14\x00\x15\x00\x16\x00\x17\x00\x18\x00\x19\x00\x1a\x00\xff\xff\xff\xff\xff\xff\x1e\x00\x1f\x00\x20\x00\x21\x00\x0a\x00\xff\xff\xff\xff\x0d\x00\x2b\x00\x2c\x00\x2d\x00\x2e\x00\x2f\x00\xff\xff\x14\x00\x15\x00\x16\x00\x17\x00\x18\x00\x19\x00\x1a\x00\xff\xff\xff\xff\xff\xff\x1e\x00\x1f\x00\x20\x00\x21\x00\x0a\x00\xff\xff\xff\xff\x0d\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x14\x00\x15\x00\x16\x00\x17\x00\x18\x00\x19\x00\x1a\x00\xff\xff\xff\xff\xff\xff\x1e\x00\x1f\x00\x20\x00\x21\x00\x0a\x00\xff\xff\xff\xff\x0d\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x14\x00\x15\x00\x16\x00\x17\x00\x18\x00\x19\x00\x1a\x00\xff\xff\xff\xff\xff\xff\x1e\x00\x1f\x00\x20\x00\x21\x00\x0a\x00\xff\xff\xff\xff\x0d\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x14\x00\x15\x00\x16\x00\x17\x00\x18\x00\x19\x00\x1a\x00\xff\xff\xff\xff\xff\xff\x1e\x00\x1f\x00\x20\x00\x21\x00\x0a\x00\xff\xff\xff\xff\x0d\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x14\x00\x15\x00\x16\x00\x17\x00\x18\x00\x19\x00\x1a\x00\xff\xff\xff\xff\xff\xff\x1e\x00\x1f\x00\x20\x00\x21\x00\x0a\x00\xff\xff\xff\xff\x0d\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x14\x00\x15\x00\x16\x00\x17\x00\x18\x00\x19\x00\x1a\x00\xff\xff\xff\xff\xff\xff\x1e\x00\x1f\x00\x20\x00\x21\x00\x0a\x00\xff\xff\xff\xff\x0d\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x14\x00\x15\x00\x16\x00\x17\x00\x18\x00\x19\x00\x1a\x00\xff\xff\xff\xff\xff\xff\x1e\x00\x1f\x00\x20\x00\x21\x00\x0a\x00\xff\xff\xff\xff\x0d\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x14\x00\x15\x00\x16\x00\x17\x00\x18\x00\x19\x00\x1a\x00\xff\xff\xff\xff\xff\xff\x1e\x00\x1f\x00\x20\x00\x21\x00\x0a\x00\xff\xff\xff\xff\x0d\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x14\x00\x15\x00\x16\x00\x17\x00\x18\x00\x19\x00\x1a\x00\xff\xff\xff\xff\xff\xff\x1e\x00\x1f\x00\x20\x00\x21\x00\x0a\x00\xff\xff\xff\xff\x0d\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x14\x00\x15\x00\x16\x00\x17\x00\x18\x00\x19\x00\x1a\x00\xff\xff\xff\xff\xff\xff\x1e\x00\x1f\x00\x20\x00\x21\x00\x0a\x00\xff\xff\xff\xff\x0d\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x14\x00\x15\x00\x16\x00\x17\x00\x18\x00\x19\x00\x1a\x00\xff\xff\xff\xff\xff\xff\x1e\x00\x1f\x00\x20\x00\x21\x00\x0a\x00\xff\xff\xff\xff\x0d\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x14\x00\x15\x00\x16\x00\x17\x00\x18\x00\x19\x00\x1a\x00\xff\xff\xff\xff\xff\xff\x1e\x00\x1f\x00\x20\x00\x21\x00\x0a\x00\xff\xff\xff\xff\x0d\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x14\x00\x15\x00\x16\x00\x17\x00\x18\x00\x19\x00\x1a\x00\xff\xff\xff\xff\xff\xff\x1e\x00\x1f\x00\x20\x00\x21\x00\x0a\x00\xff\xff\xff\xff\x0d\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x14\x00\x15\x00\x16\x00\x17\x00\x18\x00\x19\x00\x1a\x00\xff\xff\xff\xff\xff\xff\x1e\x00\x1f\x00\x20\x00\x21\x00\x0a\x00\xff\xff\xff\xff\x0d\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x14\x00\x15\x00\x16\x00\x17\x00\x18\x00\x19\x00\x1a\x00\xff\xff\xff\xff\xff\xff\x1e\x00\x1f\x00\x20\x00\x21\x00\x0a\x00\xff\xff\xff\xff\x0d\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x14\x00\x15\x00\x16\x00\x17\x00\x18\x00\x19\x00\x1a\x00\xff\xff\xff\xff\xff\xff\x1e\x00\x1f\x00\x20\x00\x21\x00\x0a\x00\xff\xff\xff\xff\x0d\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x14\x00\x15\x00\x16\x00\x17\x00\x18\x00\x19\x00\x1a\x00\xff\xff\xff\xff\xff\xff\x1e\x00\x1f\x00\x20\x00\x21\x00\x0a\x00\xff\xff\xff\xff\x0d\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x14\x00\x15\x00\x16\x00\x17\x00\x18\x00\x19\x00\x1a\x00\xff\xff\xff\xff\xff\xff\x1e\x00\x1f\x00\x20\x00\x21\x00\x0a\x00\xff\xff\xff\xff\x0d\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x14\x00\x15\x00\x16\x00\x17\x00\x18\x00\x19\x00\x1a\x00\xff\xff\xff\xff\xff\xff\x1e\x00\x1f\x00\x20\x00\x21\x00\x0a\x00\x4b\x00\xff\xff\x0d\x00\x4e\x00\xff\xff\xff\xff\x51\x00\xff\xff\x53\x00\xff\xff\x55\x00\x16\x00\x17\x00\x18\x00\x19\x00\x1a\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff"#
620
678
 
621
679
happyTable :: HappyAddr
622
 
happyTable = HappyA# "\x00\x00\x8b\x01\xc7\x00\x96\x01\xad\x01\x4e\x01\x05\x00\x4e\x01\x9f\x00\x4e\x01\x99\x01\x41\x00\x41\x00\x41\x00\x41\x00\x41\x00\x41\x00\x96\x01\x83\x01\x47\x01\xa6\x01\xa6\x01\x48\x01\x7d\x01\x41\x00\x2f\x01\x2f\x01\x2f\x01\x3d\x01\xab\x00\x40\x01\x24\x00\x9e\x01\x39\x00\x4d\x00\xae\x01\x94\x01\x0a\x00\x0b\x00\x96\x01\x95\x01\x05\x00\x06\x00\x07\x00\xac\x00\xad\x00\xae\x00\xa0\x00\x24\x00\x9d\x01\xab\x01\xa3\x00\xee\x00\x0a\x00\x0b\x00\xab\x00\xef\x00\x84\x01\xa0\x00\x76\x01\x88\x01\x4a\x01\x4b\x01\x24\x00\x97\x01\x8c\x01\x78\x01\xcb\x00\x7a\x01\xf1\x00\x0b\x00\x1d\x01\xae\x00\x0a\x00\x0b\x00\x26\x00\x04\x00\x08\x00\xf2\x00\x0e\x00\x0f\x00\x10\x00\xa5\x00\x12\x00\x41\x01\x42\x01\x97\x01\xcb\x00\x7e\x01\xc8\x00\xc8\x00\x4f\x01\xaa\x01\x4f\x01\x90\x01\x4f\x01\x50\x01\xa4\x01\x86\x01\x28\x01\x29\x01\x2a\x01\x42\x00\xa7\x01\xa7\x01\xa8\x01\xa9\x01\x7e\x01\x30\x01\x36\x01\x37\x01\xf3\x00\x08\x00\xec\x00\x40\x01\xf4\x00\xf5\x00\xf6\x00\xa1\x00\xf7\x00\xf8\x00\xf9\x00\xfa\x00\xfb\x00\xfc\x00\xfd\x00\xfe\x00\xff\x00\x00\x01\xa2\x00\x01\x01\x02\x01\x03\x01\xcc\x00\x9f\x00\x04\x01\x62\x01\x05\x01\x7b\x01\x06\x01\x07\x01\x08\x01\x09\x01\x0a\x01\x0b\x01\xf1\x00\x0b\x00\x63\x01\x4b\x00\x42\x01\x85\x01\x4c\x00\x0a\x00\x0b\x00\xf2\x00\x0e\x00\x0f\x00\x10\x00\xa5\x00\x12\x00\xd4\x00\xd5\x00\xd6\x00\xbd\x00\xd7\x00\x49\x00\x6e\x01\x45\x00\x41\x01\x46\x00\x89\x01\x42\x01\x24\x00\x9f\x00\xc4\x00\x4f\x00\x56\x00\x57\x00\x50\x00\x36\x01\x98\x00\x51\x00\x8a\x01\x58\x00\x24\x00\x25\x00\x99\x00\xf3\x00\x43\x01\x44\x01\x45\x01\x5c\x01\xf5\x00\xf6\x00\x53\x01\xf7\x00\xf8\x00\xf9\x00\xfa\x00\xfb\x00\xfc\x00\xfd\x00\xfe\x00\xff\x00\x00\x01\x42\x01\x01\x01\x02\x01\x03\x01\xd8\x00\x43\x01\x04\x01\x87\x01\x05\x01\x48\x01\x06\x01\x07\x01\x08\x01\x09\x01\x0a\x01\x0b\x01\xf1\x00\x0b\x00\x24\x00\x25\x00\x59\x00\x57\x01\x0a\x00\x0b\x00\x59\x01\xf2\x00\x0e\x00\x0f\x00\x10\x00\xa5\x00\x12\x00\x60\x01\x31\x00\xbe\x00\x4f\x00\x32\x00\x3b\x00\x50\x00\x4d\x00\x43\x01\x51\x00\x47\x01\x52\x00\x63\x01\x53\x00\x56\x00\x57\x00\x49\x01\x4a\x01\x4b\x01\x54\x00\x31\x00\x58\x00\x33\x00\x69\x01\x7c\x01\x0a\x00\x3e\x00\xf3\x00\x3f\x00\xf1\x00\x37\x00\xf4\x00\xf5\x00\xf6\x00\x70\x01\xf7\x00\xf8\x00\xf9\x00\xfa\x00\xfb\x00\xfc\x00\xfd\x00\xfe\x00\xff\x00\x00\x01\x72\x01\x01\x01\x02\x01\x03\x01\x43\x00\x16\x00\x04\x01\x6f\x01\x05\x01\x73\x01\x06\x01\x07\x01\x08\x01\x09\x01\x0a\x01\x0b\x01\x40\x01\x18\x00\x99\x00\x9a\x00\x9d\x00\x0d\x01\x0e\x01\x0f\x01\x57\x00\xa5\x01\xcf\x00\xd0\x00\xd1\x00\xd2\x00\x10\x01\x11\x01\x12\x01\x13\x01\x14\x01\x15\x01\x16\x01\x17\x01\x18\x01\x19\x01\x1a\x01\x1a\x00\x1b\x00\x0a\x00\x0b\x00\xed\x00\xce\x00\xcf\x00\xd0\x00\xd1\x00\xd2\x00\x1d\x00\x24\x00\x25\x00\x1b\x01\x1e\x00\x6d\x01\x6e\x01\x39\x00\x1f\x00\x20\x00\x74\x01\x21\x00\x26\x01\x45\x00\x3d\x00\xdc\x00\x3e\x00\x2b\x01\x2d\x01\x41\x01\x2e\x01\x1c\x01\x24\x00\x24\x00\x25\x00\x31\x01\x26\x00\x5b\x00\x5c\x00\x5d\x00\x5e\x00\x5f\x00\x60\x00\x61\x00\x62\x00\x63\x00\x64\x00\x65\x00\x66\x00\x67\x00\x68\x00\x69\x00\x6a\x00\x6b\x00\x6c\x00\x6d\x00\x6e\x00\x6f\x00\x70\x00\x71\x00\x72\x00\x73\x00\x74\x00\x75\x00\x76\x00\x77\x00\x78\x00\x79\x00\x7a\x00\x7b\x00\x7c\x00\x7d\x00\x7e\x00\x7f\x00\x80\x00\x81\x00\x82\x00\x83\x00\x84\x00\x85\x00\x86\x00\x87\x00\x88\x00\x89\x00\x8a\x00\x8b\x00\x8c\x00\x8d\x00\x8e\x00\x8f\x00\x90\x00\x91\x00\x92\x00\x93\x00\x94\x00\x95\x00\x96\x00\x97\x00\x18\x00\xe6\x00\xd1\x00\xd2\x00\x0d\x01\x0e\x01\x0f\x01\x57\x00\xa2\x01\xcf\x00\xd0\x00\xd1\x00\xd2\x00\x10\x01\x11\x01\x12\x01\x13\x01\x14\x01\x15\x01\x16\x01\x17\x01\x18\x01\x19\x01\x1a\x01\x1a\x00\x1b\x00\x32\x01\x33\x01\x18\x00\x4d\x01\xcf\x00\xd0\x00\xd1\x00\xd2\x00\x1d\x00\x34\x01\x31\x00\x1b\x01\x1e\x00\x69\x01\x6a\x01\x38\x01\x1f\x00\x20\x00\x19\x00\x21\x00\x31\x00\x3a\x01\x3d\x00\x32\x00\x3e\x00\x3d\x01\x1a\x00\x1b\x00\x1c\x00\x1c\x01\x18\x00\x24\x00\x25\x00\x3e\x01\x26\x00\x31\x00\x1d\x00\xdf\x00\x69\x01\x6b\x01\x1e\x00\xd8\x00\xe5\x00\xea\x00\x1f\x00\x20\x00\x19\x00\x21\x00\x84\x01\xda\x00\x22\x00\xdd\x00\x23\x00\x2e\x00\x1a\x00\x1b\x00\x1c\x00\x4d\x00\x18\x00\x24\x00\x25\x00\x39\x00\x26\x00\x4e\x00\x1d\x00\x59\x00\x04\x00\x3a\x00\x1e\x00\x3b\x00\x0a\x00\x24\x00\x1f\x00\x20\x00\x19\x00\x21\x00\x24\x00\xad\x01\x22\x00\x31\x00\x23\x00\x0a\x00\x1a\x00\x1b\x00\x1c\x00\x9d\x01\x18\x00\x24\x00\x25\x00\x3d\x01\x26\x00\x0a\x00\x1d\x00\xd4\x00\xd5\x00\xd6\x00\x1e\x00\xd7\x00\xa0\x01\xa1\x01\x1f\x00\x20\x00\x19\x00\x21\x00\x31\x00\xa2\x01\x22\x00\x32\x00\x23\x00\x2e\x00\x1a\x00\x1b\x00\x1c\x00\x0a\x00\x18\x00\x24\x00\x25\x00\x8e\x01\x26\x00\x31\x00\x1d\x00\x8f\x01\x69\x01\x6c\x01\x1e\x00\xd8\x00\x0a\x00\x24\x00\x1f\x00\x20\x00\x19\x00\x21\x00\x64\x01\xda\x00\x22\x00\x31\x00\x23\x00\x99\x01\x1a\x00\x1b\x00\x99\x00\x9a\x00\xca\x00\x24\x00\x25\x00\x9b\x01\x26\x00\xdf\x00\x1d\x00\x9c\x01\x78\x01\x18\x00\x1e\x00\x99\x00\x9a\x00\x9b\x00\x1f\x00\x20\x00\x98\xff\x21\x00\x72\x01\x98\xff\x3d\x00\x31\x00\x3e\x00\xdf\x00\x32\x00\x19\x00\x7a\x01\x0a\x00\x0b\x00\x24\x00\x25\x00\x28\x01\x26\x00\x1a\x00\x1b\x00\x1c\x00\xdf\x00\x18\x00\x48\x00\x10\x00\x49\x00\x12\x00\xd8\x00\x1d\x00\x99\x00\x9a\x00\x9c\x00\x1e\x00\x0a\x00\x65\x01\xda\x00\x1f\x00\x20\x00\x19\x00\x21\x00\x31\x00\x80\x01\x22\x00\x32\x00\x23\x00\x81\x01\x1a\x00\x1b\x00\x82\x01\x24\x00\x18\x00\x24\x00\x25\x00\x0a\x00\x26\x00\x4d\x01\x1d\x00\x99\x00\x9a\x00\x9d\x00\x1e\x00\xd8\x00\x0a\x00\x24\x00\x1f\x00\x20\x00\x19\x00\x21\x00\x66\x01\xda\x00\x3d\x00\x53\x01\x3e\x00\xb3\x00\x1a\x00\x1b\x00\x55\x01\x56\x01\x18\x00\x24\x00\x25\x00\x57\x01\x26\x00\x24\x00\x1d\x00\xd4\x00\xd5\x00\xd6\x00\x1e\x00\x59\x01\x24\x00\x5c\x01\x1f\x00\x20\x00\x19\x00\x21\x00\x5b\x01\x69\x01\x3d\x00\xb4\x00\x3e\x00\x24\x00\x1a\x00\x1b\x00\x1c\x00\x3c\x01\x18\x00\x24\x00\x25\x00\x28\x01\x26\x00\x0a\x00\x1d\x00\x72\x01\xdf\x00\x76\x01\x1e\x00\x2d\x01\x0a\x00\x0a\x00\x1f\x00\x20\x00\x19\x00\x21\x00\x31\x00\x24\x00\x22\x00\x32\x00\x23\x00\x3a\x01\x1a\x00\x1b\x00\x3c\x01\x0a\x00\x4d\x01\x24\x00\x25\x00\x52\x01\x26\x00\x0a\x00\x1d\x00\xdf\x00\xe1\x00\xe4\x00\x1e\x00\xd8\x00\xe2\x00\x24\x00\x1f\x00\x20\x00\x19\x00\x21\x00\x67\x01\xda\x00\x3d\x00\xe8\x00\x3e\x00\xe9\x00\x1a\x00\x1b\x00\xea\x00\xd6\x00\x24\x00\x24\x00\x25\x00\x1f\x01\x26\x00\x20\x01\x1d\x00\x0a\x00\x0b\x00\xc5\x00\x1e\x00\xc6\x00\xc7\x00\x31\x00\x1f\x00\x20\x00\x32\x00\x0a\x00\x48\x00\x10\x00\x3d\x00\xa8\x00\x3e\x00\x31\x00\x4c\x00\x31\x00\x32\x00\xdd\x00\x32\x00\x24\x00\x25\x00\x0a\x00\x26\x00\xdf\x00\x33\x00\xaa\x00\xab\x00\x24\x00\x34\x00\x35\x00\x36\x00\xb0\x00\x37\x00\xb8\x00\xd8\x00\x31\x00\xd8\x00\xba\x00\x32\x00\xb9\x00\xbb\x00\xe2\x00\xda\x00\xe4\x00\xda\x00\x31\x00\x31\x00\xa9\xff\x32\x00\x32\x00\xcd\x00\xce\x00\xcf\x00\xd0\x00\xd1\x00\xd2\x00\xd8\x00\x22\x01\x23\x01\x24\x01\x25\x01\x26\x01\x99\x00\xd9\x00\xda\x00\xbc\x00\x33\x00\x33\x00\xbd\x00\xff\xff\x41\x00\x47\x00\xb4\x00\xb6\x00\x37\x00\x37\x00\x0a\x00\x0b\x00\x0a\x00\xff\xff\x4d\x00\x28\x00\x0a\x00\xff\xff\xc0\x00\x0d\x00\x0e\x00\x2a\x00\x10\x00\x11\x00\x12\x00\x0a\x00\x00\x00\x00\x00\x13\x00\x14\x00\x15\x00\x16\x00\xc1\x00\x20\x01\x2c\x00\x0a\x00\x0b\x00\x00\x00\x00\x00\x00\x00\x28\x00\x00\x00\x00\x00\xc0\x00\x0d\x00\x0e\x00\x2a\x00\x10\x00\x11\x00\x12\x00\x00\x00\x00\x00\x00\x00\x13\x00\x14\x00\x15\x00\x16\x00\xc1\x00\xc2\x00\x2c\x00\x27\x00\x0b\x00\x00\x00\x00\x00\x00\x00\x28\x00\x00\x00\x00\x00\x29\x00\x0d\x00\x0e\x00\x2a\x00\x10\x00\x11\x00\x12\x00\x00\x00\x00\x00\x00\x00\x13\x00\x14\x00\x15\x00\x16\x00\x2b\x00\x00\x00\x2c\x00\x0a\x00\x0b\x00\x00\x00\x00\x00\x00\x00\x28\x00\x00\x00\x00\x00\x2e\x00\x0d\x00\x0e\x00\x2a\x00\x10\x00\x11\x00\x12\x00\x00\x00\x00\x00\x00\x00\x13\x00\x14\x00\x15\x00\x16\x00\x2f\x00\x00\x00\x2c\x00\x0a\x00\x0b\x00\x00\x00\x00\x00\x00\x00\xb1\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xa7\x00\x10\x00\x00\x00\xa8\x00\x0a\x00\x0b\x00\x00\x00\x00\x00\x00\x00\x28\x00\x00\x00\x2b\x00\x00\x00\x2c\x00\x00\x00\xa7\x00\x10\x00\x00\x00\xa8\x00\x0a\x00\x0b\x00\x00\x00\x00\x00\x00\x00\x28\x00\x00\x00\x2b\x00\x00\x00\x2c\x00\x00\x00\xa7\x00\x10\x00\x00\x00\xa8\x00\x0a\x00\x0b\x00\x00\x00\x00\x00\x00\x00\xb1\x00\x00\x00\x2f\x00\x00\x00\x2c\x00\x00\x00\xa7\x00\x10\x00\x00\x00\xa8\x00\x0a\x00\x0b\x00\x00\x00\x00\x00\x00\x00\x28\x00\x00\x00\x2b\x00\x00\x00\x2c\x00\x00\x00\xa7\x00\x10\x00\x00\x00\xa8\x00\x00\x00\x00\x00\x0a\x00\x0b\x00\x00\x00\x00\x00\x00\x00\x2f\x00\x00\x00\x2c\x00\xa3\x01\x0d\x00\x0e\x00\x0f\x00\x10\x00\x11\x00\x12\x00\x0a\x00\x0b\x00\x00\x00\x13\x00\x14\x00\x15\x00\x16\x00\x00\x00\x8f\x01\x0d\x00\x0e\x00\x0f\x00\x10\x00\x11\x00\x12\x00\x0a\x00\x0b\x00\x00\x00\x13\x00\x14\x00\x15\x00\x16\x00\x00\x00\x91\x01\x0d\x00\x0e\x00\x0f\x00\x10\x00\x11\x00\x12\x00\x0a\x00\x0b\x00\x00\x00\x13\x00\x14\x00\x15\x00\x16\x00\x00\x00\x92\x01\x0d\x00\x0e\x00\x0f\x00\x10\x00\x11\x00\x12\x00\x0a\x00\x0b\x00\x00\x00\x13\x00\x14\x00\x15\x00\x16\x00\x00\x00\x93\x01\x0d\x00\x0e\x00\x0f\x00\x10\x00\x11\x00\x12\x00\x0a\x00\x0b\x00\x00\x00\x13\x00\x14\x00\x15\x00\x16\x00\x00\x00\x5d\x01\x0d\x00\x0e\x00\x0f\x00\x10\x00\x11\x00\x12\x00\x0a\x00\x0b\x00\x00\x00\x13\x00\x14\x00\x15\x00\x16\x00\x00\x00\x5e\x01\x0d\x00\x0e\x00\x0f\x00\x10\x00\x11\x00\x12\x00\x0a\x00\x0b\x00\x00\x00\x13\x00\x14\x00\x15\x00\x16\x00\x00\x00\x5f\x01\x0d\x00\x0e\x00\x0f\x00\x10\x00\x11\x00\x12\x00\x0a\x00\x0b\x00\x00\x00\x13\x00\x14\x00\x15\x00\x16\x00\x00\x00\x1c\x01\x0d\x00\x0e\x00\x0f\x00\x10\x00\x11\x00\x12\x00\x0a\x00\x0b\x00\x00\x00\x13\x00\x14\x00\x15\x00\x16\x00\x00\x00\xbe\x00\x0d\x00\x0e\x00\x0f\x00\x10\x00\x11\x00\x12\x00\x0a\x00\x0b\x00\x00\x00\x13\x00\x14\x00\x15\x00\x16\x00\x00\x00\xbf\x00\x0d\x00\x0e\x00\x0f\x00\x10\x00\x11\x00\x12\x00\x0a\x00\x0b\x00\x00\x00\x13\x00\x14\x00\x15\x00\x16\x00\x00\x00\xc9\x00\x0d\x00\x0e\x00\x0f\x00\x10\x00\x11\x00\x12\x00\x0a\x00\x0b\x00\x00\x00\x13\x00\x14\x00\x15\x00\x16\x00\x00\x00\xa6\x00\x0d\x00\x0e\x00\x0f\x00\x10\x00\x11\x00\x12\x00\x0a\x00\x0b\x00\x00\x00\x13\x00\x14\x00\x15\x00\x16\x00\x00\x00\xb0\x00\x0d\x00\x0e\x00\x0f\x00\x10\x00\x11\x00\x12\x00\x27\x00\x0b\x00\x00\x00\x13\x00\x14\x00\x15\x00\x16\x00\x00\x00\x29\x00\x0d\x00\x0e\x00\x0f\x00\x10\x00\x11\x00\x12\x00\x0a\x00\x0b\x00\x00\x00\x13\x00\x14\x00\x15\x00\x16\x00\x00\x00\x2e\x00\x0d\x00\x0e\x00\x0f\x00\x10\x00\x11\x00\x12\x00\x0a\x00\x0b\x00\x00\x00\x13\x00\x14\x00\x15\x00\x16\x00\x00\x00\xb5\x00\x0d\x00\x0e\x00\x0f\x00\x10\x00\x11\x00\x12\x00\x0a\x00\x0b\x00\x00\x00\x13\x00\x14\x00\x15\x00\x16\x00\x00\x00\x47\x00\x0d\x00\x0e\x00\x0f\x00\x10\x00\x11\x00\x12\x00\x0a\x00\x0b\x00\x00\x00\x13\x00\x14\x00\x15\x00\x16\x00\x00\x00\x0c\x00\x0d\x00\x0e\x00\x0f\x00\x10\x00\x11\x00\x12\x00\x0a\x00\x0b\x00\x00\x00\x13\x00\x14\x00\x15\x00\x16\x00\x00\x00\x00\x00\x00\x00\xa4\x00\x0f\x00\x10\x00\xa5\x00\x12\x00\xeb\x00\xcf\x00\xd0\x00\xd1\x00\xd2\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00"#
 
680
happyTable = HappyA# "\x00\x00\xc6\x00\xc9\x01\x9e\x00\x91\x01\xc6\x00\xc0\x01\xc8\x01\x4d\x01\x05\x00\x4d\x01\x9e\x00\x41\x00\x41\x00\x41\x00\x41\x00\x41\x00\x41\x00\x05\x00\x06\x00\x07\x00\x62\x01\x39\x00\x80\x01\xbc\x01\xbc\x01\x88\x01\x3f\x01\x2d\x01\x41\x01\xcf\x01\x34\x01\x34\x01\x63\x01\x96\x01\x97\x01\xa1\x01\x24\x00\xa2\x01\xbc\x00\xd7\x01\x0a\x00\x0a\x00\x86\x01\x0b\x00\x0b\x00\x9f\x00\x9f\x00\xaa\x00\x98\x00\xc3\x00\x46\x01\x99\x00\x9c\x00\x24\x00\x25\x00\x49\x00\x6f\x01\xa2\x00\x0a\x00\x0a\x00\x0a\x00\x0b\x00\x0b\x00\x0b\x00\xab\x00\xac\x00\xad\x00\x96\x01\xaa\x01\x42\x01\x43\x01\x44\x01\x3f\x01\xcc\x01\xca\x00\xca\x00\x3b\x00\xee\x00\xd0\x01\xa1\x01\x0b\x00\xa2\x01\x40\x01\x87\x01\x98\x01\x08\x00\x24\x00\xc2\x01\xef\x00\x0e\x00\x0f\x00\x10\x00\xa4\x00\x12\x00\x08\x00\x24\x00\x89\x01\xd4\x01\xca\x01\xc1\x01\xc7\x00\xc7\x00\x4e\x01\x9b\x01\x4e\x01\x4f\x01\xb8\x01\x8b\x01\x26\x01\x27\x01\x28\x01\x42\x00\xbd\x01\xbd\x01\x81\x01\x89\x01\xbe\x01\xbf\x01\x2e\x01\x35\x01\x36\x01\xf0\x00\xa0\x00\xa1\x00\xe9\x00\xcb\x00\xf1\x00\xf2\x00\x40\x01\x41\x01\xf3\x00\xa3\x01\xf4\x00\xf5\x00\xcd\x01\xf6\x00\xf7\x00\xf8\x00\xf9\x00\xfa\x00\xfb\x00\xfc\x00\xfd\x00\x47\x01\xfe\x00\xff\x00\x00\x01\x96\x01\x97\x01\x01\x01\x47\x01\x02\x01\xd5\x01\x03\x01\x04\x01\x05\x01\x06\x01\x07\x01\x08\x01\x92\x01\x96\x01\x97\x01\x41\x01\xee\x00\x3c\x01\x41\x01\x0b\x00\xd3\x00\xd4\x00\xd5\x00\x4d\x00\xd6\x00\xd3\x01\xa5\x01\xef\x00\x0e\x00\x0f\x00\x10\x00\xa4\x00\x12\x00\x24\x00\xaa\x00\x9e\x00\x8e\x01\x49\x01\x4a\x01\x55\x00\x56\x00\x34\x01\xad\x01\x48\x01\x49\x01\x4a\x01\x57\x00\x0a\x00\x55\x00\x56\x00\x0b\x00\xb9\x01\x1a\x01\xad\x00\x4b\x00\x57\x00\x42\x01\x4c\x00\x8d\x01\x42\x01\xf0\x00\x46\x01\x6e\x01\x6f\x01\x98\x01\xf1\x00\xf2\x00\x96\x01\xb5\x01\xf3\x00\xd7\x00\xf4\x00\xf5\x00\xae\x01\xf6\x00\xf7\x00\xf8\x00\xf9\x00\xfa\x00\xfb\x00\xfc\x00\xfd\x00\xb7\x01\xfe\x00\xff\x00\x00\x01\x24\x00\x25\x00\x01\x01\x58\x00\x02\x01\xa6\x01\x03\x01\x04\x01\x05\x01\x06\x01\x07\x01\x08\x01\xee\x00\x31\x00\xbd\x00\x0b\x00\x31\x00\x0a\x00\x32\x00\x4d\x00\x0b\x00\x32\x00\x7a\x01\xef\x00\x0e\x00\x0f\x00\x10\x00\xa4\x00\x12\x00\x31\x00\x48\x00\x10\x00\x49\x00\x12\x00\x32\x00\x0a\x00\x33\x00\xb6\x01\x0b\x00\x33\x00\x34\x00\x35\x00\x36\x00\x3e\x00\x37\x00\x3f\x00\x41\x00\x37\x00\x48\x00\x10\x00\xd6\x01\xa7\x00\xd7\x00\x24\x00\xec\x00\xa1\x01\xf0\x00\xc5\x01\x31\x00\x87\x01\xd9\x00\x5a\x01\xf2\x00\x6a\x01\x7f\x01\xf3\x00\x7d\x01\xf4\x00\xf5\x00\x78\x01\xf6\x00\xf7\x00\xf8\x00\xf9\x00\xfa\x00\xfb\x00\xfc\x00\xfd\x00\xd1\x01\xfe\x00\xff\x00\x00\x01\xd2\x01\xcb\x01\x01\x01\x7c\x01\x02\x01\xec\x00\x03\x01\x04\x01\x05\x01\x06\x01\x07\x01\x08\x01\xee\x00\x31\x00\x31\x00\x0b\x00\x31\x00\x7e\x01\x32\x00\x6a\x01\x6b\x01\x32\x00\x8a\x01\xef\x00\x0e\x00\x0f\x00\x10\x00\xa4\x00\x12\x00\x31\x00\x8f\x01\xa1\x01\x31\x00\xac\x01\x32\x00\x31\x00\xd7\x00\x6a\x01\x6c\x01\xd7\x00\x32\x00\x94\x01\x39\x00\x65\x01\xd9\x00\x95\x01\x66\x01\xd9\x00\x45\x00\x31\x00\xdb\x00\x45\x00\xd7\x00\x46\x00\x6a\x01\x6d\x01\xf0\x00\x24\x00\x33\x00\x67\x01\xd9\x00\xf1\x00\xf2\x00\x90\x01\xb3\x00\xf3\x00\x37\x00\xf4\x00\xf5\x00\x55\x01\xf6\x00\xf7\x00\xf8\x00\xf9\x00\xfa\x00\xfb\x00\xfc\x00\xfd\x00\x9f\x01\xfe\x00\xff\x00\x00\x01\xa0\x01\xeb\x00\x01\x01\x51\x01\x02\x01\xec\x00\x03\x01\x04\x01\x05\x01\x06\x01\x07\x01\x08\x01\x3f\x01\x18\x00\xe3\x00\xd0\x00\xd1\x00\x57\x01\x0a\x01\x0b\x01\x0c\x01\x56\x00\xbb\x01\xce\x00\xcf\x00\xd0\x00\xd1\x00\x0d\x01\x0e\x01\x0f\x01\x10\x01\xcf\x01\x11\x01\x12\x01\x13\x01\x14\x01\x15\x01\x16\x01\x17\x01\x1a\x00\x1b\x00\x4f\x00\x98\x00\x5d\x01\x50\x00\x99\x00\xc9\x00\x51\x00\x60\x01\x1d\x00\x64\x01\x98\x00\x18\x01\x1e\x00\x99\x00\x9a\x00\x31\x00\x1f\x00\x20\x00\x70\x01\x21\x00\x32\x00\x0a\x00\x3d\x00\x71\x01\x3e\x00\xee\x00\x29\x01\x40\x01\x73\x01\x19\x01\x74\x01\x24\x00\x25\x00\x24\x01\x26\x00\x3f\x01\x18\x00\x2b\x01\xd7\x00\x43\x00\x16\x00\x0a\x01\x0b\x01\x0c\x01\x56\x00\x68\x01\xd9\x00\xd3\x00\xd4\x00\xd5\x00\x0d\x01\x0e\x01\x0f\x01\x10\x01\x2c\x01\x11\x01\x12\x01\x13\x01\x14\x01\x15\x01\x16\x01\x17\x01\x1a\x00\x1b\x00\xea\x00\xcd\x00\xce\x00\xcf\x00\xd0\x00\xd1\x00\x98\x00\x2f\x01\x1d\x00\x99\x00\x9b\x00\x18\x01\x1e\x00\x26\x00\x04\x00\x39\x00\x1f\x00\x20\x00\x30\x01\x21\x00\x31\x01\x3a\x00\x3d\x00\x3b\x00\x3e\x00\x24\x00\x25\x00\x40\x01\x32\x01\x19\x01\x24\x00\x24\x00\x25\x00\x37\x01\x26\x00\x5a\x00\x5b\x00\x5c\x00\x5d\x00\x5e\x00\x5f\x00\x60\x00\x61\x00\x62\x00\x63\x00\x64\x00\x65\x00\x66\x00\x67\x00\x68\x00\x69\x00\x6a\x00\x6b\x00\x6c\x00\x6d\x00\x6e\x00\x6f\x00\x70\x00\x71\x00\x72\x00\x73\x00\x74\x00\x75\x00\x76\x00\x77\x00\x78\x00\x79\x00\x3d\x01\x7a\x00\x7b\x00\x7c\x00\x7d\x00\x7e\x00\x7f\x00\x80\x00\x81\x00\x82\x00\x83\x00\x84\x00\x85\x00\x86\x00\x87\x00\x88\x00\x89\x00\x8a\x00\x8b\x00\x8c\x00\x8d\x00\x8e\x00\x8f\x00\x90\x00\x91\x00\x92\x00\x93\x00\x94\x00\x95\x00\x96\x00\x97\x00\x18\x00\x39\x01\xdd\x00\x3c\x01\xe2\x00\x0a\x01\x0b\x01\x0c\x01\x56\x00\xb2\x01\xce\x00\xcf\x00\xd0\x00\xd1\x00\x0d\x01\x0e\x01\x0f\x01\x10\x01\xe7\x00\x11\x01\x12\x01\x13\x01\x14\x01\x15\x01\x16\x01\x17\x01\x1a\x00\x1b\x00\xcc\x00\xcd\x00\xce\x00\xcf\x00\xd0\x00\xd1\x00\xdb\x00\x4d\x00\x1d\x00\x18\x00\x31\x00\x18\x01\x1e\x00\x04\x00\x4e\x00\x32\x00\x1f\x00\x20\x00\x58\x00\x21\x00\x31\x00\x0a\x00\x3d\x00\x24\x00\x3e\x00\x32\x00\x19\x00\x0a\x00\xc7\x01\x19\x01\xc8\x01\x24\x00\x25\x00\xd7\x00\x26\x00\x1a\x00\x1b\x00\x1c\x00\x18\x00\x24\x00\xdf\x00\xd9\x00\x24\x00\xd7\x00\x98\x00\x1d\x00\xc5\x01\x99\x00\x9c\x00\x1e\x00\xe1\x00\xd9\x00\x0a\x00\x1f\x00\x20\x00\x19\x00\x21\x00\xaa\x01\xac\x01\x22\x00\x0a\x00\x23\x00\x2e\x00\xb0\x01\x1a\x00\x1b\x00\x1c\x00\x18\x00\x24\x00\x25\x00\xb1\x01\x26\x00\xb2\x01\xb5\x01\x1d\x00\xd3\x00\xd4\x00\xd5\x00\x1e\x00\xd6\x00\x24\x00\x0a\x00\x1f\x00\x20\x00\x19\x00\x21\x00\x94\x01\x31\x00\x22\x00\x31\x00\x23\x00\x24\x00\x32\x00\x1a\x00\x1b\x00\x1c\x00\x18\x00\x24\x00\x25\x00\x9a\x01\x26\x00\x0a\x00\xdd\x00\x1d\x00\xa6\x01\xa8\x01\xa9\x01\x1e\x00\x7a\x01\x5f\x01\x33\x00\x1f\x00\x20\x00\x19\x00\x21\x00\x73\x01\xb5\x00\x22\x00\x37\x00\x23\x00\x2e\x00\xdd\x00\x1a\x00\x1b\x00\x1c\x00\x18\x00\x24\x00\x25\x00\x26\x01\x26\x00\x7c\x01\x0a\x00\x1d\x00\xdd\x00\x83\x01\x84\x01\x1e\x00\x85\x01\x0a\x00\x24\x00\x1f\x00\x20\x00\x19\x00\x21\x00\x0a\x00\x4c\x01\x22\x00\x31\x00\x23\x00\x24\x00\x0a\x00\x1a\x00\x1b\x00\x51\x01\x53\x01\x24\x00\x25\x00\x54\x01\x26\x00\x55\x01\x57\x01\x1d\x00\x18\x00\x31\x00\x24\x00\x1e\x00\x59\x01\x5a\x01\x32\x00\x1f\x00\x20\x00\x91\xff\x21\x00\x24\x00\x91\xff\x3d\x00\x5f\x01\x3e\x00\x64\x01\x19\x00\x24\x00\x6a\x01\x3b\x01\x73\x01\x24\x00\x25\x00\xd7\x00\x26\x00\x1a\x00\x1b\x00\x1c\x00\x18\x00\x76\x01\xd8\x00\xd9\x00\x26\x01\x77\x01\x78\x01\x1d\x00\x2b\x01\x0a\x00\x0a\x00\x1e\x00\x24\x00\x0a\x00\x3b\x01\x1f\x00\x20\x00\x19\x00\x21\x00\x4c\x01\x39\x01\x22\x00\x0a\x00\x23\x00\xdf\x00\x0a\x00\x1a\x00\x1b\x00\x0b\x00\x18\x00\x24\x00\x25\x00\xb0\x00\x26\x00\x0a\x00\xdd\x00\x1d\x00\xe1\x00\xa6\x00\x10\x00\x1e\x00\xa7\x00\x24\x00\xe5\x00\x1f\x00\x20\x00\x19\x00\x21\x00\xe6\x00\x2b\x00\x3d\x00\x2c\x00\x3e\x00\xb2\x00\xe7\x00\x1a\x00\x1b\x00\xd5\x00\x18\x00\x24\x00\x25\x00\x24\x00\x26\x00\x1c\x01\x1d\x01\x1d\x00\xc4\x00\xc5\x00\x0a\x00\x1e\x00\xc6\x00\x98\x00\x4c\x00\x1f\x00\x20\x00\x19\x00\x21\x00\x0a\x00\xdd\x00\x3d\x00\xb3\x00\x3e\x00\xa9\x00\x24\x00\x1a\x00\x1b\x00\x1c\x00\x18\x00\x24\x00\x25\x00\xaa\x00\x26\x00\xb7\x00\xaf\x00\x1d\x00\xb8\x00\xb9\x00\xff\xff\x1e\x00\xa2\xff\x0a\x00\xba\x00\x1f\x00\x20\x00\x19\x00\x21\x00\xbb\x00\xbc\x00\x22\x00\x0a\x00\x23\x00\x41\x00\x0a\x00\x1a\x00\x1b\x00\x0b\x00\x47\x00\x24\x00\x25\x00\x28\x00\x26\x00\x4d\x00\x0a\x00\x1d\x00\xff\xff\xa6\x00\x10\x00\x1e\x00\xa7\x00\xff\xff\x00\x00\x1f\x00\x20\x00\x19\x00\x21\x00\x00\x00\x2b\x00\x3d\x00\x2c\x00\x3e\x00\x00\x00\x0a\x00\x1a\x00\x1b\x00\x0b\x00\x00\x00\x24\x00\x25\x00\x28\x00\x26\x00\x00\x00\x00\x00\x1d\x00\x00\x00\xa6\x00\x10\x00\x1e\x00\xa7\x00\x00\x00\x00\x00\x1f\x00\x20\x00\x00\x00\x00\x00\x00\x00\x2f\x00\x3d\x00\x2c\x00\x3e\x00\x00\x00\x0a\x00\x00\x00\x00\x00\x0b\x00\x00\x00\x24\x00\x25\x00\x28\x00\x26\x00\x00\x00\xbf\x00\x0d\x00\x0e\x00\x2a\x00\x10\x00\x11\x00\x12\x00\x00\x00\x00\x00\x00\x00\x13\x00\x14\x00\x15\x00\x16\x00\xc0\x00\x1d\x01\x2c\x00\x0a\x00\x00\x00\x00\x00\x0b\x00\x00\x00\x00\x00\x00\x00\x28\x00\x00\x00\x00\x00\xbf\x00\x0d\x00\x0e\x00\x2a\x00\x10\x00\x11\x00\x12\x00\x00\x00\x00\x00\x00\x00\x13\x00\x14\x00\x15\x00\x16\x00\xc0\x00\xc1\x00\x2c\x00\x27\x00\x00\x00\x00\x00\x0b\x00\x00\x00\x00\x00\x00\x00\x28\x00\x00\x00\x00\x00\x29\x00\x0d\x00\x0e\x00\x2a\x00\x10\x00\x11\x00\x12\x00\x00\x00\x00\x00\x00\x00\x13\x00\x14\x00\x15\x00\x16\x00\x2b\x00\x0a\x00\x2c\x00\x00\x00\x0b\x00\x00\x00\x00\x00\x00\x00\x28\x00\x00\x00\x00\x00\x2e\x00\x0d\x00\x0e\x00\x2a\x00\x10\x00\x11\x00\x12\x00\x00\x00\x00\x00\x00\x00\x13\x00\x14\x00\x15\x00\x16\x00\x2f\x00\x0a\x00\x2c\x00\x00\x00\x0b\x00\x00\x00\x0a\x00\x00\x00\xb0\x00\x0b\x00\x00\x00\x00\x00\x00\x00\x28\x00\xa6\x00\x10\x00\x00\x00\xa7\x00\x00\x00\xa6\x00\x10\x00\x00\x00\xa7\x00\x0a\x00\x00\x00\x2b\x00\x0b\x00\x2c\x00\x00\x00\x00\x00\x2f\x00\x00\x00\x2c\x00\xba\x01\x0d\x00\x0e\x00\x0f\x00\x10\x00\x11\x00\x12\x00\x00\x00\x00\x00\x00\x00\x13\x00\x14\x00\x15\x00\x16\x00\x0a\x00\x00\x00\x00\x00\x0b\x00\x1f\x01\x20\x01\x21\x01\x22\x01\x23\x01\x24\x01\xc3\x01\x0d\x00\x0e\x00\x0f\x00\x10\x00\x11\x00\x12\x00\x00\x00\x00\x00\x00\x00\x13\x00\x14\x00\x15\x00\x16\x00\x0a\x00\x00\x00\x00\x00\x0b\x00\x4c\x01\xce\x00\xcf\x00\xd0\x00\xd1\x00\x00\x00\xb3\x01\x0d\x00\x0e\x00\x0f\x00\x10\x00\x11\x00\x12\x00\x00\x00\x00\x00\x00\x00\x13\x00\x14\x00\x15\x00\x16\x00\x0a\x00\x00\x00\x00\x00\x0b\x00\xe8\x00\xce\x00\xcf\x00\xd0\x00\xd1\x00\x00\x00\x9a\x01\x0d\x00\x0e\x00\x0f\x00\x10\x00\x11\x00\x12\x00\x00\x00\x00\x00\x00\x00\x13\x00\x14\x00\x15\x00\x16\x00\x0a\x00\x00\x00\x00\x00\x0b\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x9c\x01\x0d\x00\x0e\x00\x0f\x00\x10\x00\x11\x00\x12\x00\x00\x00\x00\x00\x00\x00\x13\x00\x14\x00\x15\x00\x16\x00\x0a\x00\x00\x00\x00\x00\x0b\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x9d\x01\x0d\x00\x0e\x00\x0f\x00\x10\x00\x11\x00\x12\x00\x00\x00\x00\x00\x00\x00\x13\x00\x14\x00\x15\x00\x16\x00\x0a\x00\x00\x00\x00\x00\x0b\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x9e\x01\x0d\x00\x0e\x00\x0f\x00\x10\x00\x11\x00\x12\x00\x00\x00\x00\x00\x00\x00\x13\x00\x14\x00\x15\x00\x16\x00\x0a\x00\x00\x00\x00\x00\x0b\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x8c\x01\x0d\x00\x0e\x00\x0f\x00\x10\x00\x11\x00\x12\x00\x00\x00\x00\x00\x00\x00\x13\x00\x14\x00\x15\x00\x16\x00\x0a\x00\x00\x00\x00\x00\x0b\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x5b\x01\x0d\x00\x0e\x00\x0f\x00\x10\x00\x11\x00\x12\x00\x00\x00\x00\x00\x00\x00\x13\x00\x14\x00\x15\x00\x16\x00\x0a\x00\x00\x00\x00\x00\x0b\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x5c\x01\x0d\x00\x0e\x00\x0f\x00\x10\x00\x11\x00\x12\x00\x00\x00\x00\x00\x00\x00\x13\x00\x14\x00\x15\x00\x16\x00\x0a\x00\x00\x00\x00\x00\x0b\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x5f\x01\x0d\x00\x0e\x00\x0f\x00\x10\x00\x11\x00\x12\x00\x00\x00\x00\x00\x00\x00\x13\x00\x14\x00\x15\x00\x16\x00\x0a\x00\x00\x00\x00\x00\x0b\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x19\x01\x0d\x00\x0e\x00\x0f\x00\x10\x00\x11\x00\x12\x00\x00\x00\x00\x00\x00\x00\x13\x00\x14\x00\x15\x00\x16\x00\x0a\x00\x00\x00\x00\x00\x0b\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xbd\x00\x0d\x00\x0e\x00\x0f\x00\x10\x00\x11\x00\x12\x00\x00\x00\x00\x00\x00\x00\x13\x00\x14\x00\x15\x00\x16\x00\x0a\x00\x00\x00\x00\x00\x0b\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xbe\x00\x0d\x00\x0e\x00\x0f\x00\x10\x00\x11\x00\x12\x00\x00\x00\x00\x00\x00\x00\x13\x00\x14\x00\x15\x00\x16\x00\x0a\x00\x00\x00\x00\x00\x0b\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xc8\x00\x0d\x00\x0e\x00\x0f\x00\x10\x00\x11\x00\x12\x00\x00\x00\x00\x00\x00\x00\x13\x00\x14\x00\x15\x00\x16\x00\x0a\x00\x00\x00\x00\x00\x0b\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xa5\x00\x0d\x00\x0e\x00\x0f\x00\x10\x00\x11\x00\x12\x00\x00\x00\x00\x00\x00\x00\x13\x00\x14\x00\x15\x00\x16\x00\x0a\x00\x00\x00\x00\x00\x0b\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xaf\x00\x0d\x00\x0e\x00\x0f\x00\x10\x00\x11\x00\x12\x00\x00\x00\x00\x00\x00\x00\x13\x00\x14\x00\x15\x00\x16\x00\x27\x00\x00\x00\x00\x00\x0b\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x29\x00\x0d\x00\x0e\x00\x0f\x00\x10\x00\x11\x00\x12\x00\x00\x00\x00\x00\x00\x00\x13\x00\x14\x00\x15\x00\x16\x00\x0a\x00\x00\x00\x00\x00\x0b\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x2e\x00\x0d\x00\x0e\x00\x0f\x00\x10\x00\x11\x00\x12\x00\x00\x00\x00\x00\x00\x00\x13\x00\x14\x00\x15\x00\x16\x00\x0a\x00\x00\x00\x00\x00\x0b\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xb4\x00\x0d\x00\x0e\x00\x0f\x00\x10\x00\x11\x00\x12\x00\x00\x00\x00\x00\x00\x00\x13\x00\x14\x00\x15\x00\x16\x00\x0a\x00\x00\x00\x00\x00\x0b\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x47\x00\x0d\x00\x0e\x00\x0f\x00\x10\x00\x11\x00\x12\x00\x00\x00\x00\x00\x00\x00\x13\x00\x14\x00\x15\x00\x16\x00\x0a\x00\x00\x00\x00\x00\x0b\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x0c\x00\x0d\x00\x0e\x00\x0f\x00\x10\x00\x11\x00\x12\x00\x00\x00\x00\x00\x00\x00\x13\x00\x14\x00\x15\x00\x16\x00\x0a\x00\x4f\x00\x00\x00\x0b\x00\x50\x00\x00\x00\x00\x00\x51\x00\x00\x00\x52\x00\x00\x00\x53\x00\xa3\x00\x0f\x00\x10\x00\xa4\x00\x12\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00"#
623
681
 
624
 
happyReduceArr = array (3, 251) [
 
682
happyReduceArr = array (3, 269) [
625
683
        (3 , happyReduce_3),
626
684
        (4 , happyReduce_4),
627
685
        (5 , happyReduce_5),
870
928
        (248 , happyReduce_248),
871
929
        (249 , happyReduce_249),
872
930
        (250 , happyReduce_250),
873
 
        (251 , happyReduce_251)
 
931
        (251 , happyReduce_251),
 
932
        (252 , happyReduce_252),
 
933
        (253 , happyReduce_253),
 
934
        (254 , happyReduce_254),
 
935
        (255 , happyReduce_255),
 
936
        (256 , happyReduce_256),
 
937
        (257 , happyReduce_257),
 
938
        (258 , happyReduce_258),
 
939
        (259 , happyReduce_259),
 
940
        (260 , happyReduce_260),
 
941
        (261 , happyReduce_261),
 
942
        (262 , happyReduce_262),
 
943
        (263 , happyReduce_263),
 
944
        (264 , happyReduce_264),
 
945
        (265 , happyReduce_265),
 
946
        (266 , happyReduce_266),
 
947
        (267 , happyReduce_267),
 
948
        (268 , happyReduce_268),
 
949
        (269 , happyReduce_269)
874
950
        ]
875
951
 
876
 
happy_n_terms = 63 :: Int
877
 
happy_n_nonterms = 92 :: Int
 
952
happy_n_terms = 65 :: Int
 
953
happy_n_nonterms = 101 :: Int
878
954
 
879
955
happyReduce_3 = happySpecReduce_1  0# happyReduction_3
880
956
happyReduction_3 happy_x_1
927
1003
 
928
1004
happyReduce_10 = happySpecReduce_1  2# happyReduction_10
929
1005
happyReduction_10 happy_x_1
930
 
         =  case happyOutTok happy_x_1 of { (TokKeyword KwPostulate happy_var_1) -> 
 
1006
         =  case happyOutTok happy_x_1 of { (TokKeyword KwRewrite happy_var_1) -> 
931
1007
        happyIn8
932
 
                 (TokKeyword KwPostulate happy_var_1
 
1008
                 (TokKeyword KwRewrite happy_var_1
933
1009
        )}
934
1010
 
935
1011
happyReduce_11 = happySpecReduce_1  2# happyReduction_11
936
1012
happyReduction_11 happy_x_1
937
 
         =  case happyOutTok happy_x_1 of { (TokKeyword KwPrimitive happy_var_1) -> 
 
1013
         =  case happyOutTok happy_x_1 of { (TokKeyword KwPostulate happy_var_1) -> 
938
1014
        happyIn8
939
 
                 (TokKeyword KwPrimitive happy_var_1
 
1015
                 (TokKeyword KwPostulate happy_var_1
940
1016
        )}
941
1017
 
942
1018
happyReduce_12 = happySpecReduce_1  2# happyReduction_12
943
1019
happyReduction_12 happy_x_1
 
1020
         =  case happyOutTok happy_x_1 of { (TokKeyword KwPrimitive happy_var_1) -> 
 
1021
        happyIn8
 
1022
                 (TokKeyword KwPrimitive happy_var_1
 
1023
        )}
 
1024
 
 
1025
happyReduce_13 = happySpecReduce_1  2# happyReduction_13
 
1026
happyReduction_13 happy_x_1
944
1027
         =  case happyOutTok happy_x_1 of { (TokKeyword KwOpen happy_var_1) -> 
945
1028
        happyIn8
946
1029
                 (TokKeyword KwOpen happy_var_1
947
1030
        )}
948
1031
 
949
 
happyReduce_13 = happySpecReduce_1  2# happyReduction_13
950
 
happyReduction_13 happy_x_1
951
 
         =  case happyOutTok happy_x_1 of { (TokKeyword KwImport happy_var_1) -> 
952
 
        happyIn8
953
 
                 (TokKeyword KwImport happy_var_1
954
 
        )}
955
 
 
956
1032
happyReduce_14 = happySpecReduce_1  2# happyReduction_14
957
1033
happyReduction_14 happy_x_1
 
1034
         =  case happyOutTok happy_x_1 of { (TokKeyword KwImport happy_var_1) -> 
 
1035
        happyIn8
 
1036
                 (TokKeyword KwImport happy_var_1
 
1037
        )}
 
1038
 
 
1039
happyReduce_15 = happySpecReduce_1  2# happyReduction_15
 
1040
happyReduction_15 happy_x_1
958
1041
         =  case happyOutTok happy_x_1 of { (TokKeyword KwUsing happy_var_1) -> 
959
1042
        happyIn8
960
1043
                 (TokKeyword KwUsing happy_var_1
961
1044
        )}
962
1045
 
963
 
happyReduce_15 = happySpecReduce_1  2# happyReduction_15
964
 
happyReduction_15 happy_x_1
 
1046
happyReduce_16 = happySpecReduce_1  2# happyReduction_16
 
1047
happyReduction_16 happy_x_1
965
1048
         =  case happyOutTok happy_x_1 of { (TokKeyword KwHiding happy_var_1) -> 
966
1049
        happyIn8
967
1050
                 (TokKeyword KwHiding happy_var_1
968
1051
        )}
969
1052
 
970
 
happyReduce_16 = happySpecReduce_1  2# happyReduction_16
971
 
happyReduction_16 happy_x_1
 
1053
happyReduce_17 = happySpecReduce_1  2# happyReduction_17
 
1054
happyReduction_17 happy_x_1
972
1055
         =  case happyOutTok happy_x_1 of { (TokKeyword KwRenaming happy_var_1) -> 
973
1056
        happyIn8
974
1057
                 (TokKeyword KwRenaming happy_var_1
975
1058
        )}
976
1059
 
977
 
happyReduce_17 = happySpecReduce_1  2# happyReduction_17
978
 
happyReduction_17 happy_x_1
 
1060
happyReduce_18 = happySpecReduce_1  2# happyReduction_18
 
1061
happyReduction_18 happy_x_1
979
1062
         =  case happyOutTok happy_x_1 of { (TokKeyword KwTo happy_var_1) -> 
980
1063
        happyIn8
981
1064
                 (TokKeyword KwTo happy_var_1
982
1065
        )}
983
1066
 
984
 
happyReduce_18 = happySpecReduce_1  2# happyReduction_18
985
 
happyReduction_18 happy_x_1
 
1067
happyReduce_19 = happySpecReduce_1  2# happyReduction_19
 
1068
happyReduction_19 happy_x_1
986
1069
         =  case happyOutTok happy_x_1 of { (TokKeyword KwPublic happy_var_1) -> 
987
1070
        happyIn8
988
1071
                 (TokKeyword KwPublic happy_var_1
989
1072
        )}
990
1073
 
991
 
happyReduce_19 = happySpecReduce_1  2# happyReduction_19
992
 
happyReduction_19 happy_x_1
 
1074
happyReduce_20 = happySpecReduce_1  2# happyReduction_20
 
1075
happyReduction_20 happy_x_1
993
1076
         =  case happyOutTok happy_x_1 of { (TokKeyword KwModule happy_var_1) -> 
994
1077
        happyIn8
995
1078
                 (TokKeyword KwModule happy_var_1
996
1079
        )}
997
1080
 
998
 
happyReduce_20 = happySpecReduce_1  2# happyReduction_20
999
 
happyReduction_20 happy_x_1
 
1081
happyReduce_21 = happySpecReduce_1  2# happyReduction_21
 
1082
happyReduction_21 happy_x_1
1000
1083
         =  case happyOutTok happy_x_1 of { (TokKeyword KwData happy_var_1) -> 
1001
1084
        happyIn8
1002
1085
                 (TokKeyword KwData happy_var_1
1003
1086
        )}
1004
1087
 
1005
 
happyReduce_21 = happySpecReduce_1  2# happyReduction_21
1006
 
happyReduction_21 happy_x_1
 
1088
happyReduce_22 = happySpecReduce_1  2# happyReduction_22
 
1089
happyReduction_22 happy_x_1
1007
1090
         =  case happyOutTok happy_x_1 of { (TokKeyword KwCoData happy_var_1) -> 
1008
1091
        happyIn8
1009
1092
                 (TokKeyword KwCoData happy_var_1
1010
1093
        )}
1011
1094
 
1012
 
happyReduce_22 = happySpecReduce_1  2# happyReduction_22
1013
 
happyReduction_22 happy_x_1
 
1095
happyReduce_23 = happySpecReduce_1  2# happyReduction_23
 
1096
happyReduction_23 happy_x_1
1014
1097
         =  case happyOutTok happy_x_1 of { (TokKeyword KwRecord happy_var_1) -> 
1015
1098
        happyIn8
1016
1099
                 (TokKeyword KwRecord happy_var_1
1017
1100
        )}
1018
1101
 
1019
 
happyReduce_23 = happySpecReduce_1  2# happyReduction_23
1020
 
happyReduction_23 happy_x_1
1021
 
         =  case happyOutTok happy_x_1 of { (TokKeyword KwField happy_var_1) -> 
1022
 
        happyIn8
1023
 
                 (TokKeyword KwField happy_var_1
1024
 
        )}
1025
 
 
1026
1102
happyReduce_24 = happySpecReduce_1  2# happyReduction_24
1027
1103
happyReduction_24 happy_x_1
1028
 
         =  case happyOutTok happy_x_1 of { (TokKeyword KwInfix happy_var_1) -> 
 
1104
         =  case happyOutTok happy_x_1 of { (TokKeyword KwConstructor happy_var_1) -> 
1029
1105
        happyIn8
1030
 
                 (TokKeyword KwInfix happy_var_1
 
1106
                 (TokKeyword KwConstructor happy_var_1
1031
1107
        )}
1032
1108
 
1033
1109
happyReduce_25 = happySpecReduce_1  2# happyReduction_25
1034
1110
happyReduction_25 happy_x_1
1035
 
         =  case happyOutTok happy_x_1 of { (TokKeyword KwInfixL happy_var_1) -> 
 
1111
         =  case happyOutTok happy_x_1 of { (TokKeyword KwField happy_var_1) -> 
1036
1112
        happyIn8
1037
 
                 (TokKeyword KwInfixL happy_var_1
 
1113
                 (TokKeyword KwField happy_var_1
1038
1114
        )}
1039
1115
 
1040
1116
happyReduce_26 = happySpecReduce_1  2# happyReduction_26
1041
1117
happyReduction_26 happy_x_1
1042
 
         =  case happyOutTok happy_x_1 of { (TokKeyword KwInfixR happy_var_1) -> 
 
1118
         =  case happyOutTok happy_x_1 of { (TokKeyword KwInfix happy_var_1) -> 
1043
1119
        happyIn8
1044
 
                 (TokKeyword KwInfixR happy_var_1
 
1120
                 (TokKeyword KwInfix happy_var_1
1045
1121
        )}
1046
1122
 
1047
1123
happyReduce_27 = happySpecReduce_1  2# happyReduction_27
1048
1124
happyReduction_27 happy_x_1
1049
 
         =  case happyOutTok happy_x_1 of { (TokKeyword KwMutual happy_var_1) -> 
 
1125
         =  case happyOutTok happy_x_1 of { (TokKeyword KwInfixL happy_var_1) -> 
1050
1126
        happyIn8
1051
 
                 (TokKeyword KwMutual happy_var_1
 
1127
                 (TokKeyword KwInfixL happy_var_1
1052
1128
        )}
1053
1129
 
1054
1130
happyReduce_28 = happySpecReduce_1  2# happyReduction_28
1055
1131
happyReduction_28 happy_x_1
1056
 
         =  case happyOutTok happy_x_1 of { (TokKeyword KwAbstract happy_var_1) -> 
 
1132
         =  case happyOutTok happy_x_1 of { (TokKeyword KwInfixR happy_var_1) -> 
1057
1133
        happyIn8
1058
 
                 (TokKeyword KwAbstract happy_var_1
 
1134
                 (TokKeyword KwInfixR happy_var_1
1059
1135
        )}
1060
1136
 
1061
1137
happyReduce_29 = happySpecReduce_1  2# happyReduction_29
1062
1138
happyReduction_29 happy_x_1
1063
 
         =  case happyOutTok happy_x_1 of { (TokKeyword KwPrivate happy_var_1) -> 
 
1139
         =  case happyOutTok happy_x_1 of { (TokKeyword KwMutual happy_var_1) -> 
1064
1140
        happyIn8
1065
 
                 (TokKeyword KwPrivate happy_var_1
 
1141
                 (TokKeyword KwMutual happy_var_1
1066
1142
        )}
1067
1143
 
1068
1144
happyReduce_30 = happySpecReduce_1  2# happyReduction_30
1069
1145
happyReduction_30 happy_x_1
1070
 
         =  case happyOutTok happy_x_1 of { (TokKeyword KwProp happy_var_1) -> 
 
1146
         =  case happyOutTok happy_x_1 of { (TokKeyword KwAbstract happy_var_1) -> 
1071
1147
        happyIn8
1072
 
                 (TokKeyword KwProp happy_var_1
 
1148
                 (TokKeyword KwAbstract happy_var_1
1073
1149
        )}
1074
1150
 
1075
1151
happyReduce_31 = happySpecReduce_1  2# happyReduction_31
1076
1152
happyReduction_31 happy_x_1
1077
 
         =  case happyOutTok happy_x_1 of { (TokKeyword KwSet happy_var_1) -> 
 
1153
         =  case happyOutTok happy_x_1 of { (TokKeyword KwPrivate happy_var_1) -> 
1078
1154
        happyIn8
1079
 
                 (TokKeyword KwSet happy_var_1
 
1155
                 (TokKeyword KwPrivate happy_var_1
1080
1156
        )}
1081
1157
 
1082
1158
happyReduce_32 = happySpecReduce_1  2# happyReduction_32
1083
1159
happyReduction_32 happy_x_1
1084
 
         =  case happyOutTok happy_x_1 of { (TokKeyword KwForall happy_var_1) -> 
 
1160
         =  case happyOutTok happy_x_1 of { (TokKeyword KwProp happy_var_1) -> 
1085
1161
        happyIn8
1086
 
                 (TokKeyword KwForall happy_var_1
 
1162
                 (TokKeyword KwProp happy_var_1
1087
1163
        )}
1088
1164
 
1089
1165
happyReduce_33 = happySpecReduce_1  2# happyReduction_33
1090
1166
happyReduction_33 happy_x_1
1091
 
         =  case happyOutTok happy_x_1 of { (TokKeyword KwOPTIONS happy_var_1) -> 
 
1167
         =  case happyOutTok happy_x_1 of { (TokKeyword KwSet happy_var_1) -> 
1092
1168
        happyIn8
1093
 
                 (TokKeyword KwOPTIONS happy_var_1
 
1169
                 (TokKeyword KwSet happy_var_1
1094
1170
        )}
1095
1171
 
1096
1172
happyReduce_34 = happySpecReduce_1  2# happyReduction_34
1097
1173
happyReduction_34 happy_x_1
1098
 
         =  case happyOutTok happy_x_1 of { (TokKeyword KwBUILTIN happy_var_1) -> 
 
1174
         =  case happyOutTok happy_x_1 of { (TokKeyword KwForall happy_var_1) -> 
1099
1175
        happyIn8
1100
 
                 (TokKeyword KwBUILTIN happy_var_1
 
1176
                 (TokKeyword KwForall happy_var_1
1101
1177
        )}
1102
1178
 
1103
1179
happyReduce_35 = happySpecReduce_1  2# happyReduction_35
1104
1180
happyReduction_35 happy_x_1
1105
 
         =  case happyOutTok happy_x_1 of { (TokKeyword KwIMPORT happy_var_1) -> 
 
1181
         =  case happyOutTok happy_x_1 of { (TokKeyword KwOPTIONS happy_var_1) -> 
1106
1182
        happyIn8
1107
 
                 (TokKeyword KwIMPORT happy_var_1
 
1183
                 (TokKeyword KwOPTIONS happy_var_1
1108
1184
        )}
1109
1185
 
1110
1186
happyReduce_36 = happySpecReduce_1  2# happyReduction_36
1111
1187
happyReduction_36 happy_x_1
1112
 
         =  case happyOutTok happy_x_1 of { (TokKeyword KwCOMPILED happy_var_1) -> 
 
1188
         =  case happyOutTok happy_x_1 of { (TokKeyword KwBUILTIN happy_var_1) -> 
1113
1189
        happyIn8
1114
 
                 (TokKeyword KwCOMPILED happy_var_1
 
1190
                 (TokKeyword KwBUILTIN happy_var_1
1115
1191
        )}
1116
1192
 
1117
1193
happyReduce_37 = happySpecReduce_1  2# happyReduction_37
1118
1194
happyReduction_37 happy_x_1
1119
 
         =  case happyOutTok happy_x_1 of { (TokKeyword KwCOMPILED_DATA happy_var_1) -> 
 
1195
         =  case happyOutTok happy_x_1 of { (TokKeyword KwIMPORT happy_var_1) -> 
1120
1196
        happyIn8
1121
 
                 (TokKeyword KwCOMPILED_DATA happy_var_1
 
1197
                 (TokKeyword KwIMPORT happy_var_1
1122
1198
        )}
1123
1199
 
1124
1200
happyReduce_38 = happySpecReduce_1  2# happyReduction_38
1125
1201
happyReduction_38 happy_x_1
1126
 
         =  case happyOutTok happy_x_1 of { (TokKeyword KwCOMPILED_TYPE happy_var_1) -> 
 
1202
         =  case happyOutTok happy_x_1 of { (TokKeyword KwCOMPILED happy_var_1) -> 
1127
1203
        happyIn8
1128
 
                 (TokKeyword KwCOMPILED_TYPE happy_var_1
 
1204
                 (TokKeyword KwCOMPILED happy_var_1
1129
1205
        )}
1130
1206
 
1131
1207
happyReduce_39 = happySpecReduce_1  2# happyReduction_39
1132
1208
happyReduction_39 happy_x_1
1133
 
         =  case happyOutTok happy_x_1 of { (TokKeyword KwLINE happy_var_1) -> 
 
1209
         =  case happyOutTok happy_x_1 of { (TokKeyword KwCOMPILED_DATA happy_var_1) -> 
1134
1210
        happyIn8
1135
 
                 (TokKeyword KwLINE happy_var_1
 
1211
                 (TokKeyword KwCOMPILED_DATA happy_var_1
1136
1212
        )}
1137
1213
 
1138
1214
happyReduce_40 = happySpecReduce_1  2# happyReduction_40
1139
1215
happyReduction_40 happy_x_1
1140
 
         =  case happyOutTok happy_x_1 of { (TokSetN happy_var_1) -> 
 
1216
         =  case happyOutTok happy_x_1 of { (TokKeyword KwCOMPILED_TYPE happy_var_1) -> 
1141
1217
        happyIn8
1142
 
                 (TokSetN happy_var_1
 
1218
                 (TokKeyword KwCOMPILED_TYPE happy_var_1
1143
1219
        )}
1144
1220
 
1145
1221
happyReduce_41 = happySpecReduce_1  2# happyReduction_41
1146
1222
happyReduction_41 happy_x_1
 
1223
         =  case happyOutTok happy_x_1 of { (TokSetN happy_var_1) -> 
 
1224
        happyIn8
 
1225
                 (TokSetN happy_var_1
 
1226
        )}
 
1227
 
 
1228
happyReduce_42 = happySpecReduce_1  2# happyReduction_42
 
1229
happyReduction_42 happy_x_1
1147
1230
         =  case happyOutTok happy_x_1 of { (TokTeX happy_var_1) -> 
1148
1231
        happyIn8
1149
1232
                 (TokTeX happy_var_1
1150
1233
        )}
1151
1234
 
1152
 
happyReduce_42 = happySpecReduce_1  2# happyReduction_42
1153
 
happyReduction_42 happy_x_1
 
1235
happyReduce_43 = happySpecReduce_1  2# happyReduction_43
 
1236
happyReduction_43 happy_x_1
1154
1237
         =  case happyOutTok happy_x_1 of { (TokComment happy_var_1) -> 
1155
1238
        happyIn8
1156
1239
                 (TokComment happy_var_1
1157
1240
        )}
1158
1241
 
1159
 
happyReduce_43 = happySpecReduce_1  2# happyReduction_43
1160
 
happyReduction_43 happy_x_1
1161
 
         =  case happyOutTok happy_x_1 of { (TokSymbol SymEllipsis happy_var_1) -> 
1162
 
        happyIn8
1163
 
                 (TokSymbol SymEllipsis happy_var_1
1164
 
        )}
1165
 
 
1166
1242
happyReduce_44 = happySpecReduce_1  2# happyReduction_44
1167
1243
happyReduction_44 happy_x_1
1168
 
         =  case happyOutTok happy_x_1 of { (TokSymbol SymDot happy_var_1) -> 
 
1244
         =  case happyOutTok happy_x_1 of { (TokSymbol SymEllipsis happy_var_1) -> 
1169
1245
        happyIn8
1170
 
                 (TokSymbol SymDot happy_var_1
 
1246
                 (TokSymbol SymEllipsis happy_var_1
1171
1247
        )}
1172
1248
 
1173
1249
happyReduce_45 = happySpecReduce_1  2# happyReduction_45
1174
1250
happyReduction_45 happy_x_1
1175
 
         =  case happyOutTok happy_x_1 of { (TokSymbol SymSemi happy_var_1) -> 
 
1251
         =  case happyOutTok happy_x_1 of { (TokSymbol SymDot happy_var_1) -> 
1176
1252
        happyIn8
1177
 
                 (TokSymbol SymSemi happy_var_1
 
1253
                 (TokSymbol SymDot happy_var_1
1178
1254
        )}
1179
1255
 
1180
1256
happyReduce_46 = happySpecReduce_1  2# happyReduction_46
1181
1257
happyReduction_46 happy_x_1
 
1258
         =  case happyOutTok happy_x_1 of { (TokSymbol SymSemi happy_var_1) -> 
 
1259
        happyIn8
 
1260
                 (TokSymbol SymSemi happy_var_1
 
1261
        )}
 
1262
 
 
1263
happyReduce_47 = happySpecReduce_1  2# happyReduction_47
 
1264
happyReduction_47 happy_x_1
1182
1265
         =  case happyOutTok happy_x_1 of { (TokSymbol SymColon happy_var_1) -> 
1183
1266
        happyIn8
1184
1267
                 (TokSymbol SymColon happy_var_1
1185
1268
        )}
1186
1269
 
1187
 
happyReduce_47 = happySpecReduce_1  2# happyReduction_47
1188
 
happyReduction_47 happy_x_1
 
1270
happyReduce_48 = happySpecReduce_1  2# happyReduction_48
 
1271
happyReduction_48 happy_x_1
1189
1272
         =  case happyOutTok happy_x_1 of { (TokSymbol SymEqual happy_var_1) -> 
1190
1273
        happyIn8
1191
1274
                 (TokSymbol SymEqual happy_var_1
1192
1275
        )}
1193
1276
 
1194
 
happyReduce_48 = happySpecReduce_1  2# happyReduction_48
1195
 
happyReduction_48 happy_x_1
1196
 
         =  case happyOutTok happy_x_1 of { (TokSymbol SymUnderscore happy_var_1) -> 
1197
 
        happyIn8
1198
 
                 (TokSymbol SymUnderscore happy_var_1
1199
 
        )}
1200
 
 
1201
1277
happyReduce_49 = happySpecReduce_1  2# happyReduction_49
1202
1278
happyReduction_49 happy_x_1
1203
 
         =  case happyOutTok happy_x_1 of { (TokSymbol SymQuestionMark happy_var_1) -> 
 
1279
         =  case happyOutTok happy_x_1 of { (TokSymbol SymUnderscore happy_var_1) -> 
1204
1280
        happyIn8
1205
 
                 (TokSymbol SymQuestionMark happy_var_1
 
1281
                 (TokSymbol SymUnderscore happy_var_1
1206
1282
        )}
1207
1283
 
1208
1284
happyReduce_50 = happySpecReduce_1  2# happyReduction_50
1209
1285
happyReduction_50 happy_x_1
 
1286
         =  case happyOutTok happy_x_1 of { (TokSymbol SymQuestionMark happy_var_1) -> 
 
1287
        happyIn8
 
1288
                 (TokSymbol SymQuestionMark happy_var_1
 
1289
        )}
 
1290
 
 
1291
happyReduce_51 = happySpecReduce_1  2# happyReduction_51
 
1292
happyReduction_51 happy_x_1
1210
1293
         =  case happyOutTok happy_x_1 of { (TokSymbol SymArrow happy_var_1) -> 
1211
1294
        happyIn8
1212
1295
                 (TokSymbol SymArrow happy_var_1
1213
1296
        )}
1214
1297
 
1215
 
happyReduce_51 = happySpecReduce_1  2# happyReduction_51
1216
 
happyReduction_51 happy_x_1
1217
 
         =  case happyOutTok happy_x_1 of { (TokSymbol SymLambda happy_var_1) -> 
1218
 
        happyIn8
1219
 
                 (TokSymbol SymLambda happy_var_1
1220
 
        )}
1221
 
 
1222
1298
happyReduce_52 = happySpecReduce_1  2# happyReduction_52
1223
1299
happyReduction_52 happy_x_1
 
1300
         =  case happyOutTok happy_x_1 of { (TokSymbol SymLambda happy_var_1) -> 
 
1301
        happyIn8
 
1302
                 (TokSymbol SymLambda happy_var_1
 
1303
        )}
 
1304
 
 
1305
happyReduce_53 = happySpecReduce_1  2# happyReduction_53
 
1306
happyReduction_53 happy_x_1
1224
1307
         =  case happyOutTok happy_x_1 of { (TokSymbol SymAs happy_var_1) -> 
1225
1308
        happyIn8
1226
1309
                 (TokSymbol SymAs happy_var_1
1227
1310
        )}
1228
1311
 
1229
 
happyReduce_53 = happySpecReduce_1  2# happyReduction_53
1230
 
happyReduction_53 happy_x_1
 
1312
happyReduce_54 = happySpecReduce_1  2# happyReduction_54
 
1313
happyReduction_54 happy_x_1
1231
1314
         =  case happyOutTok happy_x_1 of { (TokSymbol SymBar happy_var_1) -> 
1232
1315
        happyIn8
1233
1316
                 (TokSymbol SymBar happy_var_1
1234
1317
        )}
1235
1318
 
1236
 
happyReduce_54 = happySpecReduce_1  2# happyReduction_54
1237
 
happyReduction_54 happy_x_1
1238
 
         =  case happyOutTok happy_x_1 of { (TokSymbol SymOpenParen happy_var_1) -> 
1239
 
        happyIn8
1240
 
                 (TokSymbol SymOpenParen happy_var_1
1241
 
        )}
1242
 
 
1243
1319
happyReduce_55 = happySpecReduce_1  2# happyReduction_55
1244
1320
happyReduction_55 happy_x_1
 
1321
         =  case happyOutTok happy_x_1 of { (TokSymbol SymOpenParen happy_var_1) -> 
 
1322
        happyIn8
 
1323
                 (TokSymbol SymOpenParen happy_var_1
 
1324
        )}
 
1325
 
 
1326
happyReduce_56 = happySpecReduce_1  2# happyReduction_56
 
1327
happyReduction_56 happy_x_1
1245
1328
         =  case happyOutTok happy_x_1 of { (TokSymbol SymCloseParen happy_var_1) -> 
1246
1329
        happyIn8
1247
1330
                 (TokSymbol SymCloseParen happy_var_1
1248
1331
        )}
1249
1332
 
1250
 
happyReduce_56 = happySpecReduce_1  2# happyReduction_56
1251
 
happyReduction_56 happy_x_1
1252
 
         =  case happyOutTok happy_x_1 of { (TokSymbol SymOpenBrace happy_var_1) -> 
1253
 
        happyIn8
1254
 
                 (TokSymbol SymOpenBrace happy_var_1
1255
 
        )}
1256
 
 
1257
1333
happyReduce_57 = happySpecReduce_1  2# happyReduction_57
1258
1334
happyReduction_57 happy_x_1
 
1335
         =  case happyOutTok happy_x_1 of { (TokSymbol SymOpenBrace happy_var_1) -> 
 
1336
        happyIn8
 
1337
                 (TokSymbol SymOpenBrace happy_var_1
 
1338
        )}
 
1339
 
 
1340
happyReduce_58 = happySpecReduce_1  2# happyReduction_58
 
1341
happyReduction_58 happy_x_1
1259
1342
         =  case happyOutTok happy_x_1 of { (TokSymbol SymCloseBrace happy_var_1) -> 
1260
1343
        happyIn8
1261
1344
                 (TokSymbol SymCloseBrace happy_var_1
1262
1345
        )}
1263
1346
 
1264
 
happyReduce_58 = happySpecReduce_1  2# happyReduction_58
1265
 
happyReduction_58 happy_x_1
 
1347
happyReduce_59 = happySpecReduce_1  2# happyReduction_59
 
1348
happyReduction_59 happy_x_1
1266
1349
         =  case happyOutTok happy_x_1 of { (TokSymbol SymOpenVirtualBrace happy_var_1) -> 
1267
1350
        happyIn8
1268
1351
                 (TokSymbol SymOpenVirtualBrace happy_var_1
1269
1352
        )}
1270
1353
 
1271
 
happyReduce_59 = happySpecReduce_1  2# happyReduction_59
1272
 
happyReduction_59 happy_x_1
 
1354
happyReduce_60 = happySpecReduce_1  2# happyReduction_60
 
1355
happyReduction_60 happy_x_1
1273
1356
         =  case happyOutTok happy_x_1 of { (TokSymbol SymCloseVirtualBrace happy_var_1) -> 
1274
1357
        happyIn8
1275
1358
                 (TokSymbol SymCloseVirtualBrace happy_var_1
1276
1359
        )}
1277
1360
 
1278
 
happyReduce_60 = happySpecReduce_1  2# happyReduction_60
1279
 
happyReduction_60 happy_x_1
 
1361
happyReduce_61 = happySpecReduce_1  2# happyReduction_61
 
1362
happyReduction_61 happy_x_1
1280
1363
         =  case happyOutTok happy_x_1 of { (TokSymbol SymVirtualSemi happy_var_1) -> 
1281
1364
        happyIn8
1282
1365
                 (TokSymbol SymVirtualSemi happy_var_1
1283
1366
        )}
1284
1367
 
1285
 
happyReduce_61 = happySpecReduce_1  2# happyReduction_61
1286
 
happyReduction_61 happy_x_1
1287
 
         =  case happyOutTok happy_x_1 of { (TokSymbol SymOpenPragma happy_var_1) -> 
1288
 
        happyIn8
1289
 
                 (TokSymbol SymOpenPragma happy_var_1
1290
 
        )}
1291
 
 
1292
1368
happyReduce_62 = happySpecReduce_1  2# happyReduction_62
1293
1369
happyReduction_62 happy_x_1
 
1370
         =  case happyOutTok happy_x_1 of { (TokSymbol SymOpenPragma happy_var_1) -> 
 
1371
        happyIn8
 
1372
                 (TokSymbol SymOpenPragma happy_var_1
 
1373
        )}
 
1374
 
 
1375
happyReduce_63 = happySpecReduce_1  2# happyReduction_63
 
1376
happyReduction_63 happy_x_1
1294
1377
         =  case happyOutTok happy_x_1 of { (TokSymbol SymClosePragma happy_var_1) -> 
1295
1378
        happyIn8
1296
1379
                 (TokSymbol SymClosePragma happy_var_1
1297
1380
        )}
1298
1381
 
1299
 
happyReduce_63 = happySpecReduce_1  2# happyReduction_63
1300
 
happyReduction_63 happy_x_1
 
1382
happyReduce_64 = happySpecReduce_1  2# happyReduction_64
 
1383
happyReduction_64 happy_x_1
1301
1384
         =  case happyOutTok happy_x_1 of { (TokId happy_var_1) -> 
1302
1385
        happyIn8
1303
1386
                 (TokId happy_var_1
1304
1387
        )}
1305
1388
 
1306
 
happyReduce_64 = happySpecReduce_1  2# happyReduction_64
1307
 
happyReduction_64 happy_x_1
 
1389
happyReduce_65 = happySpecReduce_1  2# happyReduction_65
 
1390
happyReduction_65 happy_x_1
1308
1391
         =  case happyOutTok happy_x_1 of { (TokQId happy_var_1) -> 
1309
1392
        happyIn8
1310
1393
                 (TokQId happy_var_1
1311
1394
        )}
1312
1395
 
1313
 
happyReduce_65 = happySpecReduce_1  2# happyReduction_65
1314
 
happyReduction_65 happy_x_1
1315
 
         =  case happyOutTok happy_x_1 of { (TokString happy_var_1) -> 
1316
 
        happyIn8
1317
 
                 (TokString happy_var_1
1318
 
        )}
1319
 
 
1320
1396
happyReduce_66 = happySpecReduce_1  2# happyReduction_66
1321
1397
happyReduction_66 happy_x_1
 
1398
         =  case happyOutTok happy_x_1 of { (TokString happy_var_1) -> 
 
1399
        happyIn8
 
1400
                 (TokString happy_var_1
 
1401
        )}
 
1402
 
 
1403
happyReduce_67 = happySpecReduce_1  2# happyReduction_67
 
1404
happyReduction_67 happy_x_1
1322
1405
         =  case happyOutTok happy_x_1 of { (TokLiteral happy_var_1) -> 
1323
1406
        happyIn8
1324
1407
                 (TokLiteral happy_var_1
1325
1408
        )}
1326
1409
 
1327
 
happyReduce_67 = happySpecReduce_0  3# happyReduction_67
1328
 
happyReduction_67  =  happyIn9
 
1410
happyReduce_68 = happySpecReduce_0  3# happyReduction_68
 
1411
happyReduction_68  =  happyIn9
1329
1412
                 (()
1330
1413
        )
1331
1414
 
1332
 
happyReduce_68 = happySpecReduce_2  3# happyReduction_68
1333
 
happyReduction_68 happy_x_2
 
1415
happyReduce_69 = happySpecReduce_2  3# happyReduction_69
 
1416
happyReduction_69 happy_x_2
1334
1417
        happy_x_1
1335
1418
         =  happyIn9
1336
1419
                 (()
1337
1420
        )
1338
1421
 
1339
 
happyReduce_69 = happySpecReduce_2  4# happyReduction_69
1340
 
happyReduction_69 happy_x_2
 
1422
happyReduce_70 = happySpecReduce_2  4# happyReduction_70
 
1423
happyReduction_70 happy_x_2
1341
1424
        happy_x_1
1342
1425
         =  case happyOut11 happy_x_1 of { happy_var_1 -> 
1343
1426
        happyIn10
1344
1427
                 (happy_var_1
1345
1428
        )}
1346
1429
 
1347
 
happyReduce_70 = happySpecReduce_1  5# happyReduction_70
1348
 
happyReduction_70 happy_x_1
1349
 
         =  case happyOut80 happy_x_1 of { happy_var_1 -> 
 
1430
happyReduce_71 = happySpecReduce_1  5# happyReduction_71
 
1431
happyReduction_71 happy_x_1
 
1432
         =  case happyOut86 happy_x_1 of { happy_var_1 -> 
1350
1433
        happyIn11
1351
1434
                 (([], happy_var_1)
1352
1435
        )}
1353
1436
 
1354
 
happyReduce_71 = happySpecReduce_3  5# happyReduction_71
1355
 
happyReduction_71 happy_x_3
 
1437
happyReduce_72 = happySpecReduce_3  5# happyReduction_72
 
1438
happyReduction_72 happy_x_3
1356
1439
        happy_x_2
1357
1440
        happy_x_1
1358
 
         =  case happyOut83 happy_x_2 of { happy_var_2 -> 
 
1441
         =  case happyOut89 happy_x_2 of { happy_var_2 -> 
1359
1442
        case happyOut11 happy_x_3 of { happy_var_3 -> 
1360
1443
        happyIn11
1361
1444
                 (let (ps,m) = happy_var_3 in (happy_var_2 : ps, m)
1362
1445
        )}}
1363
1446
 
1364
 
happyReduce_72 = happySpecReduce_1  6# happyReduction_72
1365
 
happyReduction_72 happy_x_1
 
1447
happyReduce_73 = happySpecReduce_1  6# happyReduction_73
 
1448
happyReduction_73 happy_x_1
1366
1449
         =  happyIn12
1367
1450
                 (()
1368
1451
        )
1369
1452
 
1370
 
happyReduce_73 = happyMonadReduce 1# 6# happyReduction_73
1371
 
happyReduction_73 (happy_x_1 `HappyStk`
 
1453
happyReduce_74 = happyMonadReduce 1# 6# happyReduction_74
 
1454
happyReduction_74 (happy_x_1 `HappyStk`
1372
1455
        happyRest) tk
1373
1456
         = happyThen (( popContext)
1374
1457
        ) (\r -> happyReturn (happyIn12 r))
1375
1458
 
1376
 
happyReduce_74 = happySpecReduce_1  7# happyReduction_74
1377
 
happyReduction_74 happy_x_1
 
1459
happyReduce_75 = happySpecReduce_1  7# happyReduction_75
 
1460
happyReduction_75 happy_x_1
1378
1461
         =  case happyOutTok happy_x_1 of { (TokSymbol SymSemi happy_var_1) -> 
1379
1462
        happyIn13
1380
1463
                 (happy_var_1
1381
1464
        )}
1382
1465
 
1383
 
happyReduce_75 = happySpecReduce_2  7# happyReduction_75
1384
 
happyReduction_75 happy_x_2
 
1466
happyReduce_76 = happySpecReduce_2  7# happyReduction_76
 
1467
happyReduction_76 happy_x_2
1385
1468
        happy_x_1
1386
1469
         =  case happyOutTok happy_x_2 of { (TokSymbol SymVirtualSemi happy_var_2) -> 
1387
1470
        happyIn13
1388
1471
                 (happy_var_2
1389
1472
        )}
1390
1473
 
1391
 
happyReduce_76 = happyMonadReduce 0# 8# happyReduction_76
1392
 
happyReduction_76 (happyRest) tk
 
1474
happyReduce_77 = happyMonadReduce 0# 8# happyReduction_77
 
1475
happyReduction_77 (happyRest) tk
1393
1476
         = happyThen (( pushLexState imp_dir)
1394
1477
        ) (\r -> happyReturn (happyIn14 r))
1395
1478
 
1396
 
happyReduce_77 = happyMonadReduce 1# 9# happyReduction_77
1397
 
happyReduction_77 (happy_x_1 `HappyStk`
 
1479
happyReduce_78 = happyMonadReduce 1# 9# happyReduction_78
 
1480
happyReduction_78 (happy_x_1 `HappyStk`
1398
1481
        happyRest) tk
1399
1482
         = happyThen (case happyOutTok happy_x_1 of { (TokLiteral happy_var_1) -> 
1400
1483
        ( case happy_var_1 of {
1403
1486
                   })}
1404
1487
        ) (\r -> happyReturn (happyIn15 r))
1405
1488
 
1406
 
happyReduce_78 = happyMonadReduce 1# 10# happyReduction_78
1407
 
happyReduction_78 (happy_x_1 `HappyStk`
 
1489
happyReduce_79 = happyMonadReduce 1# 10# happyReduction_79
 
1490
happyReduction_79 (happy_x_1 `HappyStk`
1408
1491
        happyRest) tk
1409
1492
         = happyThen (case happyOutTok happy_x_1 of { (TokId happy_var_1) -> 
1410
1493
        ( mkName happy_var_1)}
1411
1494
        ) (\r -> happyReturn (happyIn16 r))
1412
1495
 
1413
 
happyReduce_79 = happyMonadReduce 1# 11# happyReduction_79
1414
 
happyReduction_79 (happy_x_1 `HappyStk`
 
1496
happyReduce_80 = happySpecReduce_2  11# happyReduction_80
 
1497
happyReduction_80 happy_x_2
 
1498
        happy_x_1
 
1499
         =  case happyOut16 happy_x_1 of { happy_var_1 -> 
 
1500
        case happyOut17 happy_x_2 of { happy_var_2 -> 
 
1501
        happyIn17
 
1502
                 (happy_var_1 : happy_var_2
 
1503
        )}}
 
1504
 
 
1505
happyReduce_81 = happySpecReduce_1  11# happyReduction_81
 
1506
happyReduction_81 happy_x_1
 
1507
         =  case happyOut16 happy_x_1 of { happy_var_1 -> 
 
1508
        happyIn17
 
1509
                 ([happy_var_1]
 
1510
        )}
 
1511
 
 
1512
happyReduce_82 = happySpecReduce_2  12# happyReduction_82
 
1513
happyReduction_82 happy_x_2
 
1514
        happy_x_1
 
1515
         =  case happyOut16 happy_x_1 of { happy_var_1 -> 
 
1516
        case happyOut18 happy_x_2 of { happy_var_2 -> 
 
1517
        happyIn18
 
1518
                 ((NotHidden, happy_var_1) : happy_var_2
 
1519
        )}}
 
1520
 
 
1521
happyReduce_83 = happySpecReduce_1  12# happyReduction_83
 
1522
happyReduction_83 happy_x_1
 
1523
         =  case happyOut16 happy_x_1 of { happy_var_1 -> 
 
1524
        happyIn18
 
1525
                 ([(NotHidden, happy_var_1)]
 
1526
        )}
 
1527
 
 
1528
happyReduce_84 = happyReduce 4# 12# happyReduction_84
 
1529
happyReduction_84 (happy_x_4 `HappyStk`
 
1530
        happy_x_3 `HappyStk`
 
1531
        happy_x_2 `HappyStk`
 
1532
        happy_x_1 `HappyStk`
 
1533
        happyRest)
 
1534
         = case happyOut17 happy_x_2 of { happy_var_2 -> 
 
1535
        case happyOut18 happy_x_4 of { happy_var_4 -> 
 
1536
        happyIn18
 
1537
                 (map ((,) Hidden) happy_var_2 ++ happy_var_4
 
1538
        ) `HappyStk` happyRest}}
 
1539
 
 
1540
happyReduce_85 = happySpecReduce_3  12# happyReduction_85
 
1541
happyReduction_85 happy_x_3
 
1542
        happy_x_2
 
1543
        happy_x_1
 
1544
         =  case happyOut17 happy_x_2 of { happy_var_2 -> 
 
1545
        happyIn18
 
1546
                 (map ((,) Hidden) happy_var_2
 
1547
        )}
 
1548
 
 
1549
happyReduce_86 = happyMonadReduce 1# 13# happyReduction_86
 
1550
happyReduction_86 (happy_x_1 `HappyStk`
1415
1551
        happyRest) tk
1416
1552
         = happyThen (case happyOutTok happy_x_1 of { (TokQId happy_var_1) -> 
1417
1553
        ( mkQName happy_var_1)}
1418
 
        ) (\r -> happyReturn (happyIn17 r))
 
1554
        ) (\r -> happyReturn (happyIn19 r))
1419
1555
 
1420
 
happyReduce_80 = happySpecReduce_1  11# happyReduction_80
1421
 
happyReduction_80 happy_x_1
 
1556
happyReduce_87 = happySpecReduce_1  13# happyReduction_87
 
1557
happyReduction_87 happy_x_1
1422
1558
         =  case happyOut16 happy_x_1 of { happy_var_1 -> 
1423
 
        happyIn17
 
1559
        happyIn19
1424
1560
                 (QName happy_var_1
1425
1561
        )}
1426
1562
 
1427
 
happyReduce_81 = happySpecReduce_1  12# happyReduction_81
1428
 
happyReduction_81 happy_x_1
1429
 
         =  case happyOut17 happy_x_1 of { happy_var_1 -> 
1430
 
        happyIn18
 
1563
happyReduce_88 = happySpecReduce_1  14# happyReduction_88
 
1564
happyReduction_88 happy_x_1
 
1565
         =  case happyOut19 happy_x_1 of { happy_var_1 -> 
 
1566
        happyIn20
1431
1567
                 (happy_var_1
1432
1568
        )}
1433
1569
 
1434
 
happyReduce_82 = happySpecReduce_1  13# happyReduction_82
1435
 
happyReduction_82 happy_x_1
 
1570
happyReduce_89 = happySpecReduce_1  15# happyReduction_89
 
1571
happyReduction_89 happy_x_1
1436
1572
         =  case happyOut16 happy_x_1 of { happy_var_1 -> 
1437
 
        happyIn19
 
1573
        happyIn21
1438
1574
                 (happy_var_1
1439
1575
        )}
1440
1576
 
1441
 
happyReduce_83 = happySpecReduce_1  13# happyReduction_83
1442
 
happyReduction_83 happy_x_1
 
1577
happyReduce_90 = happySpecReduce_1  15# happyReduction_90
 
1578
happyReduction_90 happy_x_1
1443
1579
         =  case happyOutTok happy_x_1 of { (TokSymbol SymUnderscore happy_var_1) -> 
1444
 
        happyIn19
 
1580
        happyIn21
1445
1581
                 (Name (getRange happy_var_1) [Hole]
1446
1582
        )}
1447
1583
 
1448
 
happyReduce_84 = happySpecReduce_2  14# happyReduction_84
1449
 
happyReduction_84 happy_x_2
 
1584
happyReduce_91 = happySpecReduce_2  16# happyReduction_91
 
1585
happyReduction_91 happy_x_2
1450
1586
        happy_x_1
1451
 
         =  case happyOut19 happy_x_1 of { happy_var_1 -> 
1452
 
        case happyOut20 happy_x_2 of { happy_var_2 -> 
1453
 
        happyIn20
 
1587
         =  case happyOut21 happy_x_1 of { happy_var_1 -> 
 
1588
        case happyOut22 happy_x_2 of { happy_var_2 -> 
 
1589
        happyIn22
1454
1590
                 (happy_var_1 : happy_var_2
1455
1591
        )}}
1456
1592
 
1457
 
happyReduce_85 = happySpecReduce_1  14# happyReduction_85
1458
 
happyReduction_85 happy_x_1
1459
 
         =  case happyOut19 happy_x_1 of { happy_var_1 -> 
1460
 
        happyIn20
 
1593
happyReduce_92 = happySpecReduce_1  16# happyReduction_92
 
1594
happyReduction_92 happy_x_1
 
1595
         =  case happyOut21 happy_x_1 of { happy_var_1 -> 
 
1596
        happyIn22
1461
1597
                 ([happy_var_1]
1462
1598
        )}
1463
1599
 
1464
 
happyReduce_86 = happyMonadReduce 1# 15# happyReduction_86
1465
 
happyReduction_86 (happy_x_1 `HappyStk`
 
1600
happyReduce_93 = happyMonadReduce 1# 17# happyReduction_93
 
1601
happyReduction_93 (happy_x_1 `HappyStk`
1466
1602
        happyRest) tk
1467
 
         = happyThen (case happyOut27 happy_x_1 of { happy_var_1 -> 
 
1603
         = happyThen (case happyOut29 happy_x_1 of { happy_var_1 -> 
1468
1604
        (
1469
1605
    let getName (Ident (QName x)) = Just x
1470
1606
        getName (Underscore r _)  = Just (Name r [Hole])
1473
1609
    case partition isJust $ map getName happy_var_1 of
1474
1610
        (good, []) -> return $ map fromJust good
1475
1611
        _          -> fail $ "expected sequence of bound identifiers")}
1476
 
        ) (\r -> happyReturn (happyIn21 r))
 
1612
        ) (\r -> happyReturn (happyIn23 r))
1477
1613
 
1478
 
happyReduce_87 = happySpecReduce_0  16# happyReduction_87
1479
 
happyReduction_87  =  happyIn22
 
1614
happyReduce_94 = happySpecReduce_0  18# happyReduction_94
 
1615
happyReduction_94  =  happyIn24
1480
1616
                 ([]
1481
1617
        )
1482
1618
 
1483
 
happyReduce_88 = happySpecReduce_2  16# happyReduction_88
1484
 
happyReduction_88 happy_x_2
 
1619
happyReduce_95 = happySpecReduce_2  18# happyReduction_95
 
1620
happyReduction_95 happy_x_2
1485
1621
        happy_x_1
1486
1622
         =  case happyOutTok happy_x_1 of { (TokString happy_var_1) -> 
1487
 
        case happyOut22 happy_x_2 of { happy_var_2 -> 
1488
 
        happyIn22
 
1623
        case happyOut24 happy_x_2 of { happy_var_2 -> 
 
1624
        happyIn24
1489
1625
                 (snd happy_var_1 : happy_var_2
1490
1626
        )}}
1491
1627
 
1492
 
happyReduce_89 = happyMonadReduce 1# 17# happyReduction_89
1493
 
happyReduction_89 (happy_x_1 `HappyStk`
 
1628
happyReduce_96 = happyMonadReduce 1# 19# happyReduction_96
 
1629
happyReduction_96 (happy_x_1 `HappyStk`
1494
1630
        happyRest) tk
1495
1631
         = happyThen (case happyOutTok happy_x_1 of { (TokString happy_var_1) -> 
1496
1632
        ( fmap QName (mkName happy_var_1))}
1497
 
        ) (\r -> happyReturn (happyIn23 r))
 
1633
        ) (\r -> happyReturn (happyIn25 r))
1498
1634
 
1499
 
happyReduce_90 = happySpecReduce_2  18# happyReduction_90
1500
 
happyReduction_90 happy_x_2
 
1635
happyReduce_97 = happySpecReduce_2  20# happyReduction_97
 
1636
happyReduction_97 happy_x_2
1501
1637
        happy_x_1
1502
 
         =  case happyOut34 happy_x_1 of { happy_var_1 -> 
1503
 
        case happyOut24 happy_x_2 of { happy_var_2 -> 
1504
 
        happyIn24
 
1638
         =  case happyOut36 happy_x_1 of { happy_var_1 -> 
 
1639
        case happyOut26 happy_x_2 of { happy_var_2 -> 
 
1640
        happyIn26
1505
1641
                 (Pi happy_var_1 happy_var_2
1506
1642
        )}}
1507
1643
 
1508
 
happyReduce_91 = happySpecReduce_3  18# happyReduction_91
1509
 
happyReduction_91 happy_x_3
 
1644
happyReduce_98 = happySpecReduce_3  20# happyReduction_98
 
1645
happyReduction_98 happy_x_3
1510
1646
        happy_x_2
1511
1647
        happy_x_1
1512
 
         =  case happyOut41 happy_x_2 of { happy_var_2 -> 
1513
 
        case happyOut24 happy_x_3 of { happy_var_3 -> 
1514
 
        happyIn24
 
1648
         =  case happyOut43 happy_x_2 of { happy_var_2 -> 
 
1649
        case happyOut26 happy_x_3 of { happy_var_3 -> 
 
1650
        happyIn26
1515
1651
                 (forallPi happy_var_2 happy_var_3
1516
1652
        )}}
1517
1653
 
1518
 
happyReduce_92 = happySpecReduce_3  18# happyReduction_92
1519
 
happyReduction_92 happy_x_3
 
1654
happyReduce_99 = happySpecReduce_3  20# happyReduction_99
 
1655
happyReduction_99 happy_x_3
1520
1656
        happy_x_2
1521
1657
        happy_x_1
1522
 
         =  case happyOut29 happy_x_1 of { happy_var_1 -> 
1523
 
        case happyOut24 happy_x_3 of { happy_var_3 -> 
1524
 
        happyIn24
 
1658
         =  case happyOut31 happy_x_1 of { happy_var_1 -> 
 
1659
        case happyOut26 happy_x_3 of { happy_var_3 -> 
 
1660
        happyIn26
1525
1661
                 (Fun (fuseRange happy_var_1 happy_var_3) (RawApp (getRange happy_var_1) happy_var_1) happy_var_3
1526
1662
        )}}
1527
1663
 
1528
 
happyReduce_93 = happySpecReduce_1  18# happyReduction_93
1529
 
happyReduction_93 happy_x_1
1530
 
         =  case happyOut25 happy_x_1 of { happy_var_1 -> 
1531
 
        happyIn24
 
1664
happyReduce_100 = happySpecReduce_1  20# happyReduction_100
 
1665
happyReduction_100 happy_x_1
 
1666
         =  case happyOut27 happy_x_1 of { happy_var_1 -> 
 
1667
        happyIn26
1532
1668
                 (happy_var_1
1533
1669
        )}
1534
1670
 
1535
 
happyReduce_94 = happyMonadReduce 1# 19# happyReduction_94
1536
 
happyReduction_94 (happy_x_1 `HappyStk`
 
1671
happyReduce_101 = happyMonadReduce 1# 21# happyReduction_101
 
1672
happyReduction_101 (happy_x_1 `HappyStk`
1537
1673
        happyRest) tk
1538
 
         = happyThen (case happyOut26 happy_x_1 of { happy_var_1 -> 
 
1674
         = happyThen (case happyOut28 happy_x_1 of { happy_var_1 -> 
1539
1675
        ( case happy_var_1 of
1540
1676
                      { [e]    -> return e
1541
1677
                      ; e : es -> return $ WithApp (fuseRange e es) e es
1542
1678
                      ; []     -> fail "impossible: empty with expressions"
1543
1679
                      })}
1544
 
        ) (\r -> happyReturn (happyIn25 r))
 
1680
        ) (\r -> happyReturn (happyIn27 r))
1545
1681
 
1546
 
happyReduce_95 = happySpecReduce_3  20# happyReduction_95
1547
 
happyReduction_95 happy_x_3
 
1682
happyReduce_102 = happySpecReduce_3  22# happyReduction_102
 
1683
happyReduction_102 happy_x_3
1548
1684
        happy_x_2
1549
1685
        happy_x_1
1550
 
         =  case happyOut29 happy_x_1 of { happy_var_1 -> 
1551
 
        case happyOut26 happy_x_3 of { happy_var_3 -> 
1552
 
        happyIn26
 
1686
         =  case happyOut31 happy_x_1 of { happy_var_1 -> 
 
1687
        case happyOut28 happy_x_3 of { happy_var_3 -> 
 
1688
        happyIn28
1553
1689
                 (RawApp (getRange happy_var_1) happy_var_1 :  happy_var_3
1554
1690
        )}}
1555
1691
 
1556
 
happyReduce_96 = happySpecReduce_1  20# happyReduction_96
1557
 
happyReduction_96 happy_x_1
1558
 
         =  case happyOut27 happy_x_1 of { happy_var_1 -> 
1559
 
        happyIn26
 
1692
happyReduce_103 = happySpecReduce_1  22# happyReduction_103
 
1693
happyReduction_103 happy_x_1
 
1694
         =  case happyOut29 happy_x_1 of { happy_var_1 -> 
 
1695
        happyIn28
1560
1696
                 ([RawApp (getRange happy_var_1) happy_var_1]
1561
1697
        )}
1562
1698
 
1563
 
happyReduce_97 = happySpecReduce_1  21# happyReduction_97
1564
 
happyReduction_97 happy_x_1
1565
 
         =  case happyOut28 happy_x_1 of { happy_var_1 -> 
1566
 
        happyIn27
 
1699
happyReduce_104 = happySpecReduce_1  23# happyReduction_104
 
1700
happyReduction_104 happy_x_1
 
1701
         =  case happyOut30 happy_x_1 of { happy_var_1 -> 
 
1702
        happyIn29
1567
1703
                 ([happy_var_1]
1568
1704
        )}
1569
1705
 
1570
 
happyReduce_98 = happySpecReduce_2  21# happyReduction_98
1571
 
happyReduction_98 happy_x_2
 
1706
happyReduce_105 = happySpecReduce_2  23# happyReduction_105
 
1707
happyReduction_105 happy_x_2
1572
1708
        happy_x_1
1573
 
         =  case happyOut30 happy_x_1 of { happy_var_1 -> 
1574
 
        case happyOut27 happy_x_2 of { happy_var_2 -> 
1575
 
        happyIn27
 
1709
         =  case happyOut32 happy_x_1 of { happy_var_1 -> 
 
1710
        case happyOut29 happy_x_2 of { happy_var_2 -> 
 
1711
        happyIn29
1576
1712
                 (happy_var_1 : happy_var_2
1577
1713
        )}}
1578
1714
 
1579
 
happyReduce_99 = happySpecReduce_3  22# happyReduction_99
1580
 
happyReduction_99 happy_x_3
 
1715
happyReduce_106 = happySpecReduce_3  24# happyReduction_106
 
1716
happyReduction_106 happy_x_3
1581
1717
        happy_x_2
1582
1718
        happy_x_1
1583
1719
         =  case happyOutTok happy_x_1 of { (TokSymbol SymLambda happy_var_1) -> 
1584
 
        case happyOut41 happy_x_2 of { happy_var_2 -> 
1585
 
        case happyOut24 happy_x_3 of { happy_var_3 -> 
1586
 
        happyIn28
 
1720
        case happyOut43 happy_x_2 of { happy_var_2 -> 
 
1721
        case happyOut26 happy_x_3 of { happy_var_3 -> 
 
1722
        happyIn30
1587
1723
                 (Lam (fuseRange happy_var_1 happy_var_3) happy_var_2 happy_var_3
1588
1724
        )}}}
1589
1725
 
1590
 
happyReduce_100 = happySpecReduce_2  22# happyReduction_100
1591
 
happyReduction_100 happy_x_2
 
1726
happyReduce_107 = happySpecReduce_2  24# happyReduction_107
 
1727
happyReduction_107 happy_x_2
1592
1728
        happy_x_1
1593
1729
         =  case happyOutTok happy_x_1 of { (TokSymbol SymLambda happy_var_1) -> 
1594
 
        case happyOut42 happy_x_2 of { happy_var_2 -> 
1595
 
        happyIn28
 
1730
        case happyOut44 happy_x_2 of { happy_var_2 -> 
 
1731
        happyIn30
1596
1732
                 (let (bs, h) = happy_var_2; r = fuseRange happy_var_1 bs in
1597
1733
                                     if null bs then AbsurdLam r h else
1598
1734
                                     Lam r bs (AbsurdLam r h)
1599
1735
        )}}
1600
1736
 
1601
 
happyReduce_101 = happyReduce 4# 22# happyReduction_101
1602
 
happyReduction_101 (happy_x_4 `HappyStk`
 
1737
happyReduce_108 = happyReduce 4# 24# happyReduction_108
 
1738
happyReduction_108 (happy_x_4 `HappyStk`
1603
1739
        happy_x_3 `HappyStk`
1604
1740
        happy_x_2 `HappyStk`
1605
1741
        happy_x_1 `HappyStk`
1606
1742
        happyRest)
1607
1743
         = case happyOutTok happy_x_1 of { (TokKeyword KwLet happy_var_1) -> 
1608
 
        case happyOut95 happy_x_2 of { happy_var_2 -> 
1609
 
        case happyOut24 happy_x_4 of { happy_var_4 -> 
1610
 
        happyIn28
 
1744
        case happyOut104 happy_x_2 of { happy_var_2 -> 
 
1745
        case happyOut26 happy_x_4 of { happy_var_4 -> 
 
1746
        happyIn30
1611
1747
                 (Let (fuseRange happy_var_1 happy_var_4) happy_var_2 happy_var_4
1612
1748
        ) `HappyStk` happyRest}}}
1613
1749
 
1614
 
happyReduce_102 = happySpecReduce_1  22# happyReduction_102
1615
 
happyReduction_102 happy_x_1
1616
 
         =  case happyOut30 happy_x_1 of { happy_var_1 -> 
1617
 
        happyIn28
 
1750
happyReduce_109 = happySpecReduce_1  24# happyReduction_109
 
1751
happyReduction_109 happy_x_1
 
1752
         =  case happyOut32 happy_x_1 of { happy_var_1 -> 
 
1753
        happyIn30
1618
1754
                 (happy_var_1
1619
1755
        )}
1620
1756
 
1621
 
happyReduce_103 = happySpecReduce_1  23# happyReduction_103
1622
 
happyReduction_103 happy_x_1
1623
 
         =  case happyOut30 happy_x_1 of { happy_var_1 -> 
1624
 
        happyIn29
 
1757
happyReduce_110 = happySpecReduce_1  25# happyReduction_110
 
1758
happyReduction_110 happy_x_1
 
1759
         =  case happyOut32 happy_x_1 of { happy_var_1 -> 
 
1760
        happyIn31
1625
1761
                 ([happy_var_1]
1626
1762
        )}
1627
1763
 
1628
 
happyReduce_104 = happySpecReduce_2  23# happyReduction_104
1629
 
happyReduction_104 happy_x_2
 
1764
happyReduce_111 = happySpecReduce_2  25# happyReduction_111
 
1765
happyReduction_111 happy_x_2
1630
1766
        happy_x_1
1631
 
         =  case happyOut30 happy_x_1 of { happy_var_1 -> 
1632
 
        case happyOut29 happy_x_2 of { happy_var_2 -> 
1633
 
        happyIn29
 
1767
         =  case happyOut32 happy_x_1 of { happy_var_1 -> 
 
1768
        case happyOut31 happy_x_2 of { happy_var_2 -> 
 
1769
        happyIn31
1634
1770
                 (happy_var_1 : happy_var_2
1635
1771
        )}}
1636
1772
 
1637
 
happyReduce_105 = happySpecReduce_1  24# happyReduction_105
1638
 
happyReduction_105 happy_x_1
1639
 
         =  case happyOut17 happy_x_1 of { happy_var_1 -> 
1640
 
        happyIn30
 
1773
happyReduce_112 = happySpecReduce_1  26# happyReduction_112
 
1774
happyReduction_112 happy_x_1
 
1775
         =  case happyOut19 happy_x_1 of { happy_var_1 -> 
 
1776
        happyIn32
1641
1777
                 (Ident happy_var_1
1642
1778
        )}
1643
1779
 
1644
 
happyReduce_106 = happySpecReduce_1  24# happyReduction_106
1645
 
happyReduction_106 happy_x_1
 
1780
happyReduce_113 = happySpecReduce_1  26# happyReduction_113
 
1781
happyReduction_113 happy_x_1
1646
1782
         =  case happyOutTok happy_x_1 of { (TokLiteral happy_var_1) -> 
1647
 
        happyIn30
 
1783
        happyIn32
1648
1784
                 (Lit happy_var_1
1649
1785
        )}
1650
1786
 
1651
 
happyReduce_107 = happySpecReduce_1  24# happyReduction_107
1652
 
happyReduction_107 happy_x_1
 
1787
happyReduce_114 = happySpecReduce_1  26# happyReduction_114
 
1788
happyReduction_114 happy_x_1
1653
1789
         =  case happyOutTok happy_x_1 of { (TokSymbol SymQuestionMark happy_var_1) -> 
1654
 
        happyIn30
 
1790
        happyIn32
1655
1791
                 (QuestionMark (getRange happy_var_1) Nothing
1656
1792
        )}
1657
1793
 
1658
 
happyReduce_108 = happySpecReduce_1  24# happyReduction_108
1659
 
happyReduction_108 happy_x_1
 
1794
happyReduce_115 = happySpecReduce_1  26# happyReduction_115
 
1795
happyReduction_115 happy_x_1
1660
1796
         =  case happyOutTok happy_x_1 of { (TokSymbol SymUnderscore happy_var_1) -> 
1661
 
        happyIn30
 
1797
        happyIn32
1662
1798
                 (Underscore (getRange happy_var_1) Nothing
1663
1799
        )}
1664
1800
 
1665
 
happyReduce_109 = happySpecReduce_1  24# happyReduction_109
1666
 
happyReduction_109 happy_x_1
 
1801
happyReduce_116 = happySpecReduce_1  26# happyReduction_116
 
1802
happyReduction_116 happy_x_1
1667
1803
         =  case happyOutTok happy_x_1 of { (TokKeyword KwProp happy_var_1) -> 
1668
 
        happyIn30
 
1804
        happyIn32
1669
1805
                 (Prop (getRange happy_var_1)
1670
1806
        )}
1671
1807
 
1672
 
happyReduce_110 = happySpecReduce_1  24# happyReduction_110
1673
 
happyReduction_110 happy_x_1
 
1808
happyReduce_117 = happySpecReduce_1  26# happyReduction_117
 
1809
happyReduction_117 happy_x_1
1674
1810
         =  case happyOutTok happy_x_1 of { (TokKeyword KwSet happy_var_1) -> 
1675
 
        happyIn30
 
1811
        happyIn32
1676
1812
                 (Set (getRange happy_var_1)
1677
1813
        )}
1678
1814
 
1679
 
happyReduce_111 = happySpecReduce_1  24# happyReduction_111
1680
 
happyReduction_111 happy_x_1
 
1815
happyReduce_118 = happySpecReduce_1  26# happyReduction_118
 
1816
happyReduction_118 happy_x_1
1681
1817
         =  case happyOutTok happy_x_1 of { (TokSetN happy_var_1) -> 
1682
 
        happyIn30
 
1818
        happyIn32
1683
1819
                 (SetN (getRange (fst happy_var_1)) (snd happy_var_1)
1684
1820
        )}
1685
1821
 
1686
 
happyReduce_112 = happySpecReduce_3  24# happyReduction_112
1687
 
happyReduction_112 happy_x_3
 
1822
happyReduce_119 = happySpecReduce_3  26# happyReduction_119
 
1823
happyReduction_119 happy_x_3
1688
1824
        happy_x_2
1689
1825
        happy_x_1
1690
1826
         =  case happyOutTok happy_x_1 of { (TokSymbol SymOpenBrace happy_var_1) -> 
1691
 
        case happyOut24 happy_x_2 of { happy_var_2 -> 
 
1827
        case happyOut26 happy_x_2 of { happy_var_2 -> 
1692
1828
        case happyOutTok happy_x_3 of { (TokSymbol SymCloseBrace happy_var_3) -> 
1693
 
        happyIn30
 
1829
        happyIn32
1694
1830
                 (HiddenArg (fuseRange happy_var_1 happy_var_3) (unnamed happy_var_2)
1695
1831
        )}}}
1696
1832
 
1697
 
happyReduce_113 = happyReduce 5# 24# happyReduction_113
1698
 
happyReduction_113 (happy_x_5 `HappyStk`
 
1833
happyReduce_120 = happyReduce 5# 26# happyReduction_120
 
1834
happyReduction_120 (happy_x_5 `HappyStk`
1699
1835
        happy_x_4 `HappyStk`
1700
1836
        happy_x_3 `HappyStk`
1701
1837
        happy_x_2 `HappyStk`
1703
1839
        happyRest)
1704
1840
         = case happyOutTok happy_x_1 of { (TokSymbol SymOpenBrace happy_var_1) -> 
1705
1841
        case happyOut16 happy_x_2 of { happy_var_2 -> 
1706
 
        case happyOut24 happy_x_4 of { happy_var_4 -> 
 
1842
        case happyOut26 happy_x_4 of { happy_var_4 -> 
1707
1843
        case happyOutTok happy_x_5 of { (TokSymbol SymCloseBrace happy_var_5) -> 
1708
 
        happyIn30
 
1844
        happyIn32
1709
1845
                 (HiddenArg (fuseRange happy_var_1 happy_var_5) (named (show happy_var_2) happy_var_4)
1710
1846
        ) `HappyStk` happyRest}}}}
1711
1847
 
1712
 
happyReduce_114 = happySpecReduce_3  24# happyReduction_114
1713
 
happyReduction_114 happy_x_3
 
1848
happyReduce_121 = happySpecReduce_3  26# happyReduction_121
 
1849
happyReduction_121 happy_x_3
1714
1850
        happy_x_2
1715
1851
        happy_x_1
1716
1852
         =  case happyOutTok happy_x_1 of { (TokSymbol SymOpenParen happy_var_1) -> 
1717
 
        case happyOut24 happy_x_2 of { happy_var_2 -> 
 
1853
        case happyOut26 happy_x_2 of { happy_var_2 -> 
1718
1854
        case happyOutTok happy_x_3 of { (TokSymbol SymCloseParen happy_var_3) -> 
1719
 
        happyIn30
 
1855
        happyIn32
1720
1856
                 (Paren (fuseRange happy_var_1 happy_var_3) happy_var_2
1721
1857
        )}}}
1722
1858
 
1723
 
happyReduce_115 = happySpecReduce_2  24# happyReduction_115
1724
 
happyReduction_115 happy_x_2
 
1859
happyReduce_122 = happySpecReduce_2  26# happyReduction_122
 
1860
happyReduction_122 happy_x_2
1725
1861
        happy_x_1
1726
1862
         =  case happyOutTok happy_x_1 of { (TokSymbol SymOpenBrace happy_var_1) -> 
1727
1863
        case happyOutTok happy_x_2 of { (TokSymbol SymCloseBrace happy_var_2) -> 
1728
 
        happyIn30
 
1864
        happyIn32
1729
1865
                 (let r = fuseRange happy_var_1 happy_var_2 in HiddenArg r $ unnamed $ Absurd r
1730
1866
        )}}
1731
1867
 
1732
 
happyReduce_116 = happySpecReduce_2  24# happyReduction_116
1733
 
happyReduction_116 happy_x_2
 
1868
happyReduce_123 = happySpecReduce_2  26# happyReduction_123
 
1869
happyReduction_123 happy_x_2
1734
1870
        happy_x_1
1735
1871
         =  case happyOutTok happy_x_1 of { (TokSymbol SymOpenParen happy_var_1) -> 
1736
1872
        case happyOutTok happy_x_2 of { (TokSymbol SymCloseParen happy_var_2) -> 
1737
 
        happyIn30
 
1873
        happyIn32
1738
1874
                 (Absurd (fuseRange happy_var_1 happy_var_2)
1739
1875
        )}}
1740
1876
 
1741
 
happyReduce_117 = happySpecReduce_3  24# happyReduction_117
1742
 
happyReduction_117 happy_x_3
 
1877
happyReduce_124 = happySpecReduce_3  26# happyReduction_124
 
1878
happyReduction_124 happy_x_3
1743
1879
        happy_x_2
1744
1880
        happy_x_1
1745
1881
         =  case happyOut16 happy_x_1 of { happy_var_1 -> 
1746
 
        case happyOut30 happy_x_3 of { happy_var_3 -> 
1747
 
        happyIn30
 
1882
        case happyOut32 happy_x_3 of { happy_var_3 -> 
 
1883
        happyIn32
1748
1884
                 (As (fuseRange happy_var_1 happy_var_3) happy_var_1 happy_var_3
1749
1885
        )}}
1750
1886
 
1751
 
happyReduce_118 = happySpecReduce_2  24# happyReduction_118
1752
 
happyReduction_118 happy_x_2
 
1887
happyReduce_125 = happySpecReduce_2  26# happyReduction_125
 
1888
happyReduction_125 happy_x_2
1753
1889
        happy_x_1
1754
1890
         =  case happyOutTok happy_x_1 of { (TokSymbol SymDot happy_var_1) -> 
1755
 
        case happyOut30 happy_x_2 of { happy_var_2 -> 
1756
 
        happyIn30
 
1891
        case happyOut32 happy_x_2 of { happy_var_2 -> 
 
1892
        happyIn32
1757
1893
                 (Dot (fuseRange happy_var_1 happy_var_2) happy_var_2
1758
1894
        )}}
1759
1895
 
1760
 
happyReduce_119 = happyReduce 4# 24# happyReduction_119
1761
 
happyReduction_119 (happy_x_4 `HappyStk`
 
1896
happyReduce_126 = happyReduce 4# 26# happyReduction_126
 
1897
happyReduction_126 (happy_x_4 `HappyStk`
1762
1898
        happy_x_3 `HappyStk`
1763
1899
        happy_x_2 `HappyStk`
1764
1900
        happy_x_1 `HappyStk`
1765
1901
        happyRest)
1766
1902
         = case happyOutTok happy_x_1 of { (TokKeyword KwRecord happy_var_1) -> 
1767
 
        case happyOut31 happy_x_3 of { happy_var_3 -> 
 
1903
        case happyOut33 happy_x_3 of { happy_var_3 -> 
1768
1904
        case happyOutTok happy_x_4 of { (TokSymbol SymCloseBrace happy_var_4) -> 
1769
 
        happyIn30
 
1905
        happyIn32
1770
1906
                 (Rec (getRange (happy_var_1,happy_var_4)) happy_var_3
1771
1907
        ) `HappyStk` happyRest}}}
1772
1908
 
1773
 
happyReduce_120 = happySpecReduce_0  25# happyReduction_120
1774
 
happyReduction_120  =  happyIn31
 
1909
happyReduce_127 = happySpecReduce_0  27# happyReduction_127
 
1910
happyReduction_127  =  happyIn33
1775
1911
                 ([]
1776
1912
        )
1777
1913
 
1778
 
happyReduce_121 = happySpecReduce_1  25# happyReduction_121
1779
 
happyReduction_121 happy_x_1
1780
 
         =  case happyOut32 happy_x_1 of { happy_var_1 -> 
1781
 
        happyIn31
1782
 
                 (happy_var_1
1783
 
        )}
1784
 
 
1785
 
happyReduce_122 = happySpecReduce_1  26# happyReduction_122
1786
 
happyReduction_122 happy_x_1
1787
 
         =  case happyOut33 happy_x_1 of { happy_var_1 -> 
1788
 
        happyIn32
1789
 
                 ([happy_var_1]
1790
 
        )}
1791
 
 
1792
 
happyReduce_123 = happySpecReduce_3  26# happyReduction_123
1793
 
happyReduction_123 happy_x_3
1794
 
        happy_x_2
1795
 
        happy_x_1
1796
 
         =  case happyOut33 happy_x_1 of { happy_var_1 -> 
1797
 
        case happyOut32 happy_x_3 of { happy_var_3 -> 
1798
 
        happyIn32
1799
 
                 (happy_var_1 : happy_var_3
1800
 
        )}}
1801
 
 
1802
 
happyReduce_124 = happySpecReduce_3  27# happyReduction_124
1803
 
happyReduction_124 happy_x_3
1804
 
        happy_x_2
1805
 
        happy_x_1
1806
 
         =  case happyOut16 happy_x_1 of { happy_var_1 -> 
1807
 
        case happyOut24 happy_x_3 of { happy_var_3 -> 
 
1914
happyReduce_128 = happySpecReduce_1  27# happyReduction_128
 
1915
happyReduction_128 happy_x_1
 
1916
         =  case happyOut34 happy_x_1 of { happy_var_1 -> 
1808
1917
        happyIn33
 
1918
                 (happy_var_1
 
1919
        )}
 
1920
 
 
1921
happyReduce_129 = happySpecReduce_1  28# happyReduction_129
 
1922
happyReduction_129 happy_x_1
 
1923
         =  case happyOut35 happy_x_1 of { happy_var_1 -> 
 
1924
        happyIn34
 
1925
                 ([happy_var_1]
 
1926
        )}
 
1927
 
 
1928
happyReduce_130 = happySpecReduce_3  28# happyReduction_130
 
1929
happyReduction_130 happy_x_3
 
1930
        happy_x_2
 
1931
        happy_x_1
 
1932
         =  case happyOut35 happy_x_1 of { happy_var_1 -> 
 
1933
        case happyOut34 happy_x_3 of { happy_var_3 -> 
 
1934
        happyIn34
 
1935
                 (happy_var_1 : happy_var_3
 
1936
        )}}
 
1937
 
 
1938
happyReduce_131 = happySpecReduce_3  29# happyReduction_131
 
1939
happyReduction_131 happy_x_3
 
1940
        happy_x_2
 
1941
        happy_x_1
 
1942
         =  case happyOut16 happy_x_1 of { happy_var_1 -> 
 
1943
        case happyOut26 happy_x_3 of { happy_var_3 -> 
 
1944
        happyIn35
1809
1945
                 ((happy_var_1, happy_var_3)
1810
1946
        )}}
1811
1947
 
1812
 
happyReduce_125 = happySpecReduce_2  28# happyReduction_125
1813
 
happyReduction_125 happy_x_2
 
1948
happyReduce_132 = happySpecReduce_2  30# happyReduction_132
 
1949
happyReduction_132 happy_x_2
1814
1950
        happy_x_1
1815
 
         =  case happyOut35 happy_x_1 of { happy_var_1 -> 
1816
 
        happyIn34
 
1951
         =  case happyOut37 happy_x_1 of { happy_var_1 -> 
 
1952
        happyIn36
1817
1953
                 (happy_var_1
1818
1954
        )}
1819
1955
 
1820
 
happyReduce_126 = happySpecReduce_1  29# happyReduction_126
1821
 
happyReduction_126 happy_x_1
1822
 
         =  case happyOut36 happy_x_1 of { happy_var_1 -> 
1823
 
        happyIn35
 
1956
happyReduce_133 = happySpecReduce_1  31# happyReduction_133
 
1957
happyReduction_133 happy_x_1
 
1958
         =  case happyOut38 happy_x_1 of { happy_var_1 -> 
 
1959
        happyIn37
1824
1960
                 ({-TeleBind-} happy_var_1
1825
1961
        )}
1826
1962
 
1827
 
happyReduce_127 = happySpecReduce_2  30# happyReduction_127
1828
 
happyReduction_127 happy_x_2
 
1963
happyReduce_134 = happySpecReduce_2  32# happyReduction_134
 
1964
happyReduction_134 happy_x_2
1829
1965
        happy_x_1
1830
 
         =  case happyOut37 happy_x_1 of { happy_var_1 -> 
1831
 
        case happyOut36 happy_x_2 of { happy_var_2 -> 
1832
 
        happyIn36
 
1966
         =  case happyOut39 happy_x_1 of { happy_var_1 -> 
 
1967
        case happyOut38 happy_x_2 of { happy_var_2 -> 
 
1968
        happyIn38
1833
1969
                 (happy_var_1 : happy_var_2
1834
1970
        )}}
1835
1971
 
1836
 
happyReduce_128 = happySpecReduce_1  30# happyReduction_128
1837
 
happyReduction_128 happy_x_1
1838
 
         =  case happyOut37 happy_x_1 of { happy_var_1 -> 
1839
 
        happyIn36
 
1972
happyReduce_135 = happySpecReduce_1  32# happyReduction_135
 
1973
happyReduction_135 happy_x_1
 
1974
         =  case happyOut39 happy_x_1 of { happy_var_1 -> 
 
1975
        happyIn38
1840
1976
                 ([happy_var_1]
1841
1977
        )}
1842
1978
 
1843
 
happyReduce_129 = happySpecReduce_3  31# happyReduction_129
1844
 
happyReduction_129 happy_x_3
 
1979
happyReduce_136 = happySpecReduce_3  33# happyReduction_136
 
1980
happyReduction_136 happy_x_3
1845
1981
        happy_x_2
1846
1982
        happy_x_1
1847
1983
         =  case happyOutTok happy_x_1 of { (TokSymbol SymOpenParen happy_var_1) -> 
1848
 
        case happyOut38 happy_x_2 of { happy_var_2 -> 
 
1984
        case happyOut40 happy_x_2 of { happy_var_2 -> 
1849
1985
        case happyOutTok happy_x_3 of { (TokSymbol SymCloseParen happy_var_3) -> 
1850
 
        happyIn37
 
1986
        happyIn39
1851
1987
                 (TypedBindings (fuseRange happy_var_1 happy_var_3) NotHidden happy_var_2
1852
1988
        )}}}
1853
1989
 
1854
 
happyReduce_130 = happySpecReduce_3  31# happyReduction_130
1855
 
happyReduction_130 happy_x_3
 
1990
happyReduce_137 = happySpecReduce_3  33# happyReduction_137
 
1991
happyReduction_137 happy_x_3
1856
1992
        happy_x_2
1857
1993
        happy_x_1
1858
1994
         =  case happyOutTok happy_x_1 of { (TokSymbol SymOpenBrace happy_var_1) -> 
1859
 
        case happyOut38 happy_x_2 of { happy_var_2 -> 
 
1995
        case happyOut40 happy_x_2 of { happy_var_2 -> 
1860
1996
        case happyOutTok happy_x_3 of { (TokSymbol SymCloseBrace happy_var_3) -> 
1861
 
        happyIn37
 
1997
        happyIn39
1862
1998
                 (TypedBindings (fuseRange happy_var_1 happy_var_3) Hidden    happy_var_2
1863
1999
        )}}}
1864
2000
 
1865
 
happyReduce_131 = happySpecReduce_1  32# happyReduction_131
1866
 
happyReduction_131 happy_x_1
1867
 
         =  case happyOut40 happy_x_1 of { happy_var_1 -> 
1868
 
        happyIn38
 
2001
happyReduce_138 = happySpecReduce_1  34# happyReduction_138
 
2002
happyReduction_138 happy_x_1
 
2003
         =  case happyOut42 happy_x_1 of { happy_var_1 -> 
 
2004
        happyIn40
1869
2005
                 ([happy_var_1]
1870
2006
        )}
1871
2007
 
1872
 
happyReduce_132 = happySpecReduce_3  32# happyReduction_132
1873
 
happyReduction_132 happy_x_3
 
2008
happyReduce_139 = happySpecReduce_3  34# happyReduction_139
 
2009
happyReduction_139 happy_x_3
1874
2010
        happy_x_2
1875
2011
        happy_x_1
1876
 
         =  case happyOut40 happy_x_1 of { happy_var_1 -> 
1877
 
        case happyOut39 happy_x_3 of { happy_var_3 -> 
1878
 
        happyIn38
 
2012
         =  case happyOut42 happy_x_1 of { happy_var_1 -> 
 
2013
        case happyOut41 happy_x_3 of { happy_var_3 -> 
 
2014
        happyIn40
1879
2015
                 (happy_var_1 : happy_var_3
1880
2016
        )}}
1881
2017
 
1882
 
happyReduce_133 = happySpecReduce_1  33# happyReduction_133
1883
 
happyReduction_133 happy_x_1
1884
 
         =  case happyOut38 happy_x_1 of { happy_var_1 -> 
1885
 
        happyIn39
 
2018
happyReduce_140 = happySpecReduce_1  35# happyReduction_140
 
2019
happyReduction_140 happy_x_1
 
2020
         =  case happyOut40 happy_x_1 of { happy_var_1 -> 
 
2021
        happyIn41
1886
2022
                 (happy_var_1
1887
2023
        )}
1888
2024
 
1889
 
happyReduce_134 = happySpecReduce_3  33# happyReduction_134
1890
 
happyReduction_134 happy_x_3
 
2025
happyReduce_141 = happySpecReduce_3  35# happyReduction_141
 
2026
happyReduction_141 happy_x_3
1891
2027
        happy_x_2
1892
2028
        happy_x_1
1893
 
         =  case happyOut24 happy_x_1 of { happy_var_1 -> 
1894
 
        case happyOut39 happy_x_3 of { happy_var_3 -> 
1895
 
        happyIn39
 
2029
         =  case happyOut26 happy_x_1 of { happy_var_1 -> 
 
2030
        case happyOut41 happy_x_3 of { happy_var_3 -> 
 
2031
        happyIn41
1896
2032
                 (TNoBind happy_var_1 : happy_var_3
1897
2033
        )}}
1898
2034
 
1899
 
happyReduce_135 = happySpecReduce_1  33# happyReduction_135
1900
 
happyReduction_135 happy_x_1
1901
 
         =  case happyOut24 happy_x_1 of { happy_var_1 -> 
1902
 
        happyIn39
 
2035
happyReduce_142 = happySpecReduce_1  35# happyReduction_142
 
2036
happyReduction_142 happy_x_1
 
2037
         =  case happyOut26 happy_x_1 of { happy_var_1 -> 
 
2038
        happyIn41
1903
2039
                 ([TNoBind happy_var_1]
1904
2040
        )}
1905
2041
 
1906
 
happyReduce_136 = happySpecReduce_3  34# happyReduction_136
1907
 
happyReduction_136 happy_x_3
 
2042
happyReduce_143 = happySpecReduce_3  36# happyReduction_143
 
2043
happyReduction_143 happy_x_3
1908
2044
        happy_x_2
1909
2045
        happy_x_1
1910
 
         =  case happyOut21 happy_x_1 of { happy_var_1 -> 
1911
 
        case happyOut24 happy_x_3 of { happy_var_3 -> 
1912
 
        happyIn40
 
2046
         =  case happyOut23 happy_x_1 of { happy_var_1 -> 
 
2047
        case happyOut26 happy_x_3 of { happy_var_3 -> 
 
2048
        happyIn42
1913
2049
                 (TBind (fuseRange happy_var_1 happy_var_3) (map mkBoundName_ happy_var_1) happy_var_3
1914
2050
        )}}
1915
2051
 
1916
 
happyReduce_137 = happyMonadReduce 2# 35# happyReduction_137
1917
 
happyReduction_137 (happy_x_2 `HappyStk`
 
2052
happyReduce_144 = happyMonadReduce 2# 37# happyReduction_144
 
2053
happyReduction_144 (happy_x_2 `HappyStk`
1918
2054
        happy_x_1 `HappyStk`
1919
2055
        happyRest) tk
1920
 
         = happyThen (case happyOut43 happy_x_1 of { happy_var_1 -> 
 
2056
         = happyThen (case happyOut45 happy_x_1 of { happy_var_1 -> 
1921
2057
        (
1922
2058
      case last happy_var_1 of
1923
2059
        Left _  -> parseError "Absurd lambda cannot have a body."
1924
2060
        _       -> return [ b | Right b <- happy_var_1 ])}
1925
 
        ) (\r -> happyReturn (happyIn41 r))
 
2061
        ) (\r -> happyReturn (happyIn43 r))
1926
2062
 
1927
 
happyReduce_138 = happyMonadReduce 1# 36# happyReduction_138
1928
 
happyReduction_138 (happy_x_1 `HappyStk`
 
2063
happyReduce_145 = happyMonadReduce 1# 38# happyReduction_145
 
2064
happyReduction_145 (happy_x_1 `HappyStk`
1929
2065
        happyRest) tk
1930
 
         = happyThen (case happyOut43 happy_x_1 of { happy_var_1 -> 
 
2066
         = happyThen (case happyOut45 happy_x_1 of { happy_var_1 -> 
1931
2067
        (
1932
2068
    case last happy_var_1 of
1933
2069
      Right _ -> parseError "Missing body for lambda"
1934
2070
      Left h  -> return ([ b | Right b <- init happy_var_1], h))}
1935
 
        ) (\r -> happyReturn (happyIn42 r))
 
2071
        ) (\r -> happyReturn (happyIn44 r))
1936
2072
 
1937
 
happyReduce_139 = happySpecReduce_2  37# happyReduction_139
1938
 
happyReduction_139 happy_x_2
 
2073
happyReduce_146 = happySpecReduce_2  39# happyReduction_146
 
2074
happyReduction_146 happy_x_2
1939
2075
        happy_x_1
1940
 
         =  case happyOut45 happy_x_1 of { happy_var_1 -> 
1941
 
        case happyOut43 happy_x_2 of { happy_var_2 -> 
1942
 
        happyIn43
 
2076
         =  case happyOut47 happy_x_1 of { happy_var_1 -> 
 
2077
        case happyOut45 happy_x_2 of { happy_var_2 -> 
 
2078
        happyIn45
1943
2079
                 (map Right happy_var_1 ++ happy_var_2
1944
2080
        )}}
1945
2081
 
1946
 
happyReduce_140 = happySpecReduce_2  37# happyReduction_140
1947
 
happyReduction_140 happy_x_2
 
2082
happyReduce_147 = happySpecReduce_2  39# happyReduction_147
 
2083
happyReduction_147 happy_x_2
1948
2084
        happy_x_1
1949
 
         =  case happyOut37 happy_x_1 of { happy_var_1 -> 
1950
 
        case happyOut43 happy_x_2 of { happy_var_2 -> 
1951
 
        happyIn43
 
2085
         =  case happyOut39 happy_x_1 of { happy_var_1 -> 
 
2086
        case happyOut45 happy_x_2 of { happy_var_2 -> 
 
2087
        happyIn45
1952
2088
                 (Right (DomainFull happy_var_1) : happy_var_2
1953
2089
        )}}
1954
2090
 
1955
 
happyReduce_141 = happySpecReduce_1  37# happyReduction_141
1956
 
happyReduction_141 happy_x_1
1957
 
         =  case happyOut45 happy_x_1 of { happy_var_1 -> 
1958
 
        happyIn43
 
2091
happyReduce_148 = happySpecReduce_1  39# happyReduction_148
 
2092
happyReduction_148 happy_x_1
 
2093
         =  case happyOut47 happy_x_1 of { happy_var_1 -> 
 
2094
        happyIn45
1959
2095
                 (map Right happy_var_1
1960
2096
        )}
1961
2097
 
1962
 
happyReduce_142 = happySpecReduce_1  37# happyReduction_142
1963
 
happyReduction_142 happy_x_1
1964
 
         =  case happyOut37 happy_x_1 of { happy_var_1 -> 
1965
 
        happyIn43
 
2098
happyReduce_149 = happySpecReduce_1  39# happyReduction_149
 
2099
happyReduction_149 happy_x_1
 
2100
         =  case happyOut39 happy_x_1 of { happy_var_1 -> 
 
2101
        happyIn45
1966
2102
                 ([Right $ DomainFull happy_var_1]
1967
2103
        )}
1968
2104
 
1969
 
happyReduce_143 = happySpecReduce_2  37# happyReduction_143
1970
 
happyReduction_143 happy_x_2
 
2105
happyReduce_150 = happySpecReduce_2  39# happyReduction_150
 
2106
happyReduction_150 happy_x_2
1971
2107
        happy_x_1
1972
 
         =  happyIn43
 
2108
         =  happyIn45
1973
2109
                 ([Left NotHidden]
1974
2110
        )
1975
2111
 
1976
 
happyReduce_144 = happySpecReduce_2  37# happyReduction_144
1977
 
happyReduction_144 happy_x_2
 
2112
happyReduce_151 = happySpecReduce_2  39# happyReduction_151
 
2113
happyReduction_151 happy_x_2
1978
2114
        happy_x_1
1979
 
         =  happyIn43
 
2115
         =  happyIn45
1980
2116
                 ([Left Hidden]
1981
2117
        )
1982
2118
 
1983
 
happyReduce_145 = happySpecReduce_2  38# happyReduction_145
1984
 
happyReduction_145 happy_x_2
 
2119
happyReduce_152 = happySpecReduce_2  40# happyReduction_152
 
2120
happyReduction_152 happy_x_2
1985
2121
        happy_x_1
1986
 
         =  case happyOut45 happy_x_1 of { happy_var_1 -> 
1987
 
        case happyOut44 happy_x_2 of { happy_var_2 -> 
1988
 
        happyIn44
 
2122
         =  case happyOut47 happy_x_1 of { happy_var_1 -> 
 
2123
        case happyOut46 happy_x_2 of { happy_var_2 -> 
 
2124
        happyIn46
1989
2125
                 (happy_var_1 ++ happy_var_2
1990
2126
        )}}
1991
2127
 
1992
 
happyReduce_146 = happySpecReduce_2  38# happyReduction_146
1993
 
happyReduction_146 happy_x_2
 
2128
happyReduce_153 = happySpecReduce_2  40# happyReduction_153
 
2129
happyReduction_153 happy_x_2
1994
2130
        happy_x_1
1995
 
         =  case happyOut37 happy_x_1 of { happy_var_1 -> 
1996
 
        case happyOut44 happy_x_2 of { happy_var_2 -> 
1997
 
        happyIn44
 
2131
         =  case happyOut39 happy_x_1 of { happy_var_1 -> 
 
2132
        case happyOut46 happy_x_2 of { happy_var_2 -> 
 
2133
        happyIn46
1998
2134
                 (DomainFull happy_var_1 : happy_var_2
1999
2135
        )}}
2000
2136
 
2001
 
happyReduce_147 = happySpecReduce_0  38# happyReduction_147
2002
 
happyReduction_147  =  happyIn44
 
2137
happyReduce_154 = happySpecReduce_0  40# happyReduction_154
 
2138
happyReduction_154  =  happyIn46
2003
2139
                 ([]
2004
2140
        )
2005
2141
 
2006
 
happyReduce_148 = happySpecReduce_1  39# happyReduction_148
2007
 
happyReduction_148 happy_x_1
2008
 
         =  case happyOut19 happy_x_1 of { happy_var_1 -> 
2009
 
        happyIn45
 
2142
happyReduce_155 = happySpecReduce_1  41# happyReduction_155
 
2143
happyReduction_155 happy_x_1
 
2144
         =  case happyOut21 happy_x_1 of { happy_var_1 -> 
 
2145
        happyIn47
2010
2146
                 ([DomainFree NotHidden $ mkBoundName_ happy_var_1]
2011
2147
        )}
2012
2148
 
2013
 
happyReduce_149 = happySpecReduce_3  39# happyReduction_149
2014
 
happyReduction_149 happy_x_3
 
2149
happyReduce_156 = happySpecReduce_3  41# happyReduction_156
 
2150
happyReduction_156 happy_x_3
2015
2151
        happy_x_2
2016
2152
        happy_x_1
2017
 
         =  case happyOut21 happy_x_2 of { happy_var_2 -> 
2018
 
        happyIn45
 
2153
         =  case happyOut23 happy_x_2 of { happy_var_2 -> 
 
2154
        happyIn47
2019
2155
                 (map (DomainFree Hidden . mkBoundName_) happy_var_2
2020
2156
        )}
2021
2157
 
2022
 
happyReduce_150 = happySpecReduce_1  40# happyReduction_150
2023
 
happyReduction_150 happy_x_1
2024
 
         =  case happyOut47 happy_x_1 of { happy_var_1 -> 
2025
 
        happyIn46
 
2158
happyReduce_157 = happySpecReduce_1  42# happyReduction_157
 
2159
happyReduction_157 happy_x_1
 
2160
         =  case happyOut49 happy_x_1 of { happy_var_1 -> 
 
2161
        happyIn48
2026
2162
                 ((Nothing, happy_var_1)
2027
2163
        )}
2028
2164
 
2029
 
happyReduce_151 = happyMonadReduce 3# 40# happyReduction_151
2030
 
happyReduction_151 (happy_x_3 `HappyStk`
 
2165
happyReduce_158 = happyMonadReduce 3# 42# happyReduction_158
 
2166
happyReduction_158 (happy_x_3 `HappyStk`
2031
2167
        happy_x_2 `HappyStk`
2032
2168
        happy_x_1 `HappyStk`
2033
2169
        happyRest) tk
2034
2170
         = happyThen (case happyOutTok happy_x_1 of { (TokId happy_var_1) -> 
2035
2171
        case happyOut16 happy_x_2 of { happy_var_2 -> 
2036
 
        case happyOut47 happy_x_3 of { happy_var_3 -> 
 
2172
        case happyOut49 happy_x_3 of { happy_var_3 -> 
2037
2173
        ( isName "as" happy_var_1 >>
2038
2174
                               return (Just (AsName happy_var_2 (getRange (fst happy_var_1))), happy_var_3))}}}
2039
 
        ) (\r -> happyReturn (happyIn46 r))
 
2175
        ) (\r -> happyReturn (happyIn48 r))
2040
2176
 
2041
 
happyReduce_152 = happyMonadReduce 1# 41# happyReduction_152
2042
 
happyReduction_152 (happy_x_1 `HappyStk`
 
2177
happyReduce_159 = happyMonadReduce 1# 43# happyReduction_159
 
2178
happyReduction_159 (happy_x_1 `HappyStk`
2043
2179
        happyRest) tk
2044
 
         = happyThen (case happyOut48 happy_x_1 of { happy_var_1 -> 
 
2180
         = happyThen (case happyOut50 happy_x_1 of { happy_var_1 -> 
2045
2181
        ( verifyImportDirective happy_var_1)}
2046
 
        ) (\r -> happyReturn (happyIn47 r))
 
2182
        ) (\r -> happyReturn (happyIn49 r))
2047
2183
 
2048
 
happyReduce_153 = happySpecReduce_2  42# happyReduction_153
2049
 
happyReduction_153 happy_x_2
 
2184
happyReduce_160 = happySpecReduce_2  44# happyReduction_160
 
2185
happyReduction_160 happy_x_2
2050
2186
        happy_x_1
2051
 
         =  case happyOut49 happy_x_2 of { happy_var_2 -> 
2052
 
        happyIn48
 
2187
         =  case happyOut51 happy_x_2 of { happy_var_2 -> 
 
2188
        happyIn50
2053
2189
                 (happy_var_2 { publicOpen = True }
2054
2190
        )}
2055
2191
 
2056
 
happyReduce_154 = happySpecReduce_1  42# happyReduction_154
2057
 
happyReduction_154 happy_x_1
2058
 
         =  case happyOut49 happy_x_1 of { happy_var_1 -> 
2059
 
        happyIn48
 
2192
happyReduce_161 = happySpecReduce_1  44# happyReduction_161
 
2193
happyReduction_161 happy_x_1
 
2194
         =  case happyOut51 happy_x_1 of { happy_var_1 -> 
 
2195
        happyIn50
2060
2196
                 (happy_var_1
2061
2197
        )}
2062
2198
 
2063
 
happyReduce_155 = happySpecReduce_2  43# happyReduction_155
2064
 
happyReduction_155 happy_x_2
 
2199
happyReduce_162 = happySpecReduce_2  45# happyReduction_162
 
2200
happyReduction_162 happy_x_2
2065
2201
        happy_x_1
2066
 
         =  case happyOut50 happy_x_1 of { happy_var_1 -> 
2067
 
        case happyOut51 happy_x_2 of { happy_var_2 -> 
2068
 
        happyIn49
 
2202
         =  case happyOut52 happy_x_1 of { happy_var_1 -> 
 
2203
        case happyOut53 happy_x_2 of { happy_var_2 -> 
 
2204
        happyIn51
2069
2205
                 (ImportDirective (fuseRange happy_var_1 happy_var_2) happy_var_1 happy_var_2 False
2070
2206
        )}}
2071
2207
 
2072
 
happyReduce_156 = happySpecReduce_1  43# happyReduction_156
2073
 
happyReduction_156 happy_x_1
2074
 
         =  case happyOut51 happy_x_1 of { happy_var_1 -> 
2075
 
        happyIn49
 
2208
happyReduce_163 = happySpecReduce_1  45# happyReduction_163
 
2209
happyReduction_163 happy_x_1
 
2210
         =  case happyOut53 happy_x_1 of { happy_var_1 -> 
 
2211
        happyIn51
2076
2212
                 (ImportDirective (getRange happy_var_1) (Hiding []) happy_var_1 False
2077
2213
        )}
2078
2214
 
2079
 
happyReduce_157 = happySpecReduce_1  43# happyReduction_157
2080
 
happyReduction_157 happy_x_1
2081
 
         =  case happyOut50 happy_x_1 of { happy_var_1 -> 
2082
 
        happyIn49
 
2215
happyReduce_164 = happySpecReduce_1  45# happyReduction_164
 
2216
happyReduction_164 happy_x_1
 
2217
         =  case happyOut52 happy_x_1 of { happy_var_1 -> 
 
2218
        happyIn51
2083
2219
                 (ImportDirective (getRange happy_var_1) happy_var_1 [] False
2084
2220
        )}
2085
2221
 
2086
 
happyReduce_158 = happySpecReduce_0  43# happyReduction_158
2087
 
happyReduction_158  =  happyIn49
 
2222
happyReduce_165 = happySpecReduce_0  45# happyReduction_165
 
2223
happyReduction_165  =  happyIn51
2088
2224
                 (ImportDirective noRange (Hiding []) [] False
2089
2225
        )
2090
2226
 
2091
 
happyReduce_159 = happyReduce 4# 44# happyReduction_159
2092
 
happyReduction_159 (happy_x_4 `HappyStk`
 
2227
happyReduce_166 = happyReduce 4# 46# happyReduction_166
 
2228
happyReduction_166 (happy_x_4 `HappyStk`
2093
2229
        happy_x_3 `HappyStk`
2094
2230
        happy_x_2 `HappyStk`
2095
2231
        happy_x_1 `HappyStk`
2096
2232
        happyRest)
2097
 
         = case happyOut56 happy_x_3 of { happy_var_3 -> 
2098
 
        happyIn50
 
2233
         = case happyOut58 happy_x_3 of { happy_var_3 -> 
 
2234
        happyIn52
2099
2235
                 (Using happy_var_3
2100
2236
        ) `HappyStk` happyRest}
2101
2237
 
2102
 
happyReduce_160 = happyReduce 4# 44# happyReduction_160
2103
 
happyReduction_160 (happy_x_4 `HappyStk`
 
2238
happyReduce_167 = happyReduce 4# 46# happyReduction_167
 
2239
happyReduction_167 (happy_x_4 `HappyStk`
2104
2240
        happy_x_3 `HappyStk`
2105
2241
        happy_x_2 `HappyStk`
2106
2242
        happy_x_1 `HappyStk`
2107
2243
        happyRest)
2108
 
         = case happyOut57 happy_x_3 of { happy_var_3 -> 
2109
 
        happyIn50
 
2244
         = case happyOut59 happy_x_3 of { happy_var_3 -> 
 
2245
        happyIn52
2110
2246
                 (Hiding happy_var_3
2111
2247
        ) `HappyStk` happyRest}
2112
2248
 
2113
 
happyReduce_161 = happyReduce 4# 45# happyReduction_161
2114
 
happyReduction_161 (happy_x_4 `HappyStk`
 
2249
happyReduce_168 = happyReduce 4# 47# happyReduction_168
 
2250
happyReduction_168 (happy_x_4 `HappyStk`
2115
2251
        happy_x_3 `HappyStk`
2116
2252
        happy_x_2 `HappyStk`
2117
2253
        happy_x_1 `HappyStk`
2118
2254
        happyRest)
2119
 
         = case happyOut52 happy_x_3 of { happy_var_3 -> 
2120
 
        happyIn51
 
2255
         = case happyOut54 happy_x_3 of { happy_var_3 -> 
 
2256
        happyIn53
2121
2257
                 (happy_var_3
2122
2258
        ) `HappyStk` happyRest}
2123
2259
 
2124
 
happyReduce_162 = happySpecReduce_3  46# happyReduction_162
2125
 
happyReduction_162 happy_x_3
 
2260
happyReduce_169 = happySpecReduce_3  48# happyReduction_169
 
2261
happyReduction_169 happy_x_3
2126
2262
        happy_x_2
2127
2263
        happy_x_1
2128
 
         =  case happyOut53 happy_x_1 of { happy_var_1 -> 
2129
 
        case happyOut52 happy_x_3 of { happy_var_3 -> 
2130
 
        happyIn52
 
2264
         =  case happyOut55 happy_x_1 of { happy_var_1 -> 
 
2265
        case happyOut54 happy_x_3 of { happy_var_3 -> 
 
2266
        happyIn54
2131
2267
                 (happy_var_1 : happy_var_3
2132
2268
        )}}
2133
2269
 
2134
 
happyReduce_163 = happySpecReduce_1  46# happyReduction_163
2135
 
happyReduction_163 happy_x_1
2136
 
         =  case happyOut53 happy_x_1 of { happy_var_1 -> 
2137
 
        happyIn52
 
2270
happyReduce_170 = happySpecReduce_1  48# happyReduction_170
 
2271
happyReduction_170 happy_x_1
 
2272
         =  case happyOut55 happy_x_1 of { happy_var_1 -> 
 
2273
        happyIn54
2138
2274
                 ([happy_var_1]
2139
2275
        )}
2140
2276
 
2141
 
happyReduce_164 = happySpecReduce_3  47# happyReduction_164
2142
 
happyReduction_164 happy_x_3
 
2277
happyReduce_171 = happySpecReduce_3  49# happyReduction_171
 
2278
happyReduction_171 happy_x_3
2143
2279
        happy_x_2
2144
2280
        happy_x_1
2145
 
         =  case happyOut54 happy_x_1 of { happy_var_1 -> 
 
2281
         =  case happyOut56 happy_x_1 of { happy_var_1 -> 
2146
2282
        case happyOutTok happy_x_2 of { (TokKeyword KwTo happy_var_2) -> 
2147
2283
        case happyOut16 happy_x_3 of { happy_var_3 -> 
2148
 
        happyIn53
 
2284
        happyIn55
2149
2285
                 (Renaming happy_var_1 happy_var_3 (getRange happy_var_2)
2150
2286
        )}}}
2151
2287
 
2152
 
happyReduce_165 = happySpecReduce_2  48# happyReduction_165
2153
 
happyReduction_165 happy_x_2
 
2288
happyReduce_172 = happySpecReduce_2  50# happyReduction_172
 
2289
happyReduction_172 happy_x_2
2154
2290
        happy_x_1
2155
2291
         =  case happyOut16 happy_x_2 of { happy_var_2 -> 
2156
 
        happyIn54
 
2292
        happyIn56
2157
2293
                 (ImportedName happy_var_2
2158
2294
        )}
2159
2295
 
2160
 
happyReduce_166 = happySpecReduce_3  48# happyReduction_166
2161
 
happyReduction_166 happy_x_3
 
2296
happyReduce_173 = happySpecReduce_3  50# happyReduction_173
 
2297
happyReduction_173 happy_x_3
2162
2298
        happy_x_2
2163
2299
        happy_x_1
2164
2300
         =  case happyOut16 happy_x_3 of { happy_var_3 -> 
2165
 
        happyIn54
 
2301
        happyIn56
2166
2302
                 (ImportedModule happy_var_3
2167
2303
        )}
2168
2304
 
2169
 
happyReduce_167 = happySpecReduce_1  49# happyReduction_167
2170
 
happyReduction_167 happy_x_1
 
2305
happyReduce_174 = happySpecReduce_1  51# happyReduction_174
 
2306
happyReduction_174 happy_x_1
2171
2307
         =  case happyOut16 happy_x_1 of { happy_var_1 -> 
2172
 
        happyIn55
 
2308
        happyIn57
2173
2309
                 (ImportedName happy_var_1
2174
2310
        )}
2175
2311
 
2176
 
happyReduce_168 = happySpecReduce_2  49# happyReduction_168
2177
 
happyReduction_168 happy_x_2
 
2312
happyReduce_175 = happySpecReduce_2  51# happyReduction_175
 
2313
happyReduction_175 happy_x_2
2178
2314
        happy_x_1
2179
2315
         =  case happyOut16 happy_x_2 of { happy_var_2 -> 
2180
 
        happyIn55
 
2316
        happyIn57
2181
2317
                 (ImportedModule happy_var_2
2182
2318
        )}
2183
2319
 
2184
 
happyReduce_169 = happySpecReduce_0  50# happyReduction_169
2185
 
happyReduction_169  =  happyIn56
 
2320
happyReduce_176 = happySpecReduce_0  52# happyReduction_176
 
2321
happyReduction_176  =  happyIn58
2186
2322
                 ([]
2187
2323
        )
2188
2324
 
2189
 
happyReduce_170 = happySpecReduce_1  50# happyReduction_170
2190
 
happyReduction_170 happy_x_1
2191
 
         =  case happyOut57 happy_x_1 of { happy_var_1 -> 
2192
 
        happyIn56
2193
 
                 (happy_var_1
2194
 
        )}
2195
 
 
2196
 
happyReduce_171 = happySpecReduce_1  51# happyReduction_171
2197
 
happyReduction_171 happy_x_1
2198
 
         =  case happyOut55 happy_x_1 of { happy_var_1 -> 
2199
 
        happyIn57
2200
 
                 ([happy_var_1]
2201
 
        )}
2202
 
 
2203
 
happyReduce_172 = happySpecReduce_3  51# happyReduction_172
2204
 
happyReduction_172 happy_x_3
2205
 
        happy_x_2
2206
 
        happy_x_1
2207
 
         =  case happyOut55 happy_x_1 of { happy_var_1 -> 
2208
 
        case happyOut57 happy_x_3 of { happy_var_3 -> 
2209
 
        happyIn57
2210
 
                 (happy_var_1 : happy_var_3
2211
 
        )}}
2212
 
 
2213
 
happyReduce_173 = happyMonadReduce 2# 52# happyReduction_173
2214
 
happyReduction_173 (happy_x_2 `HappyStk`
2215
 
        happy_x_1 `HappyStk`
2216
 
        happyRest) tk
2217
 
         = happyThen (case happyOut25 happy_x_1 of { happy_var_1 -> 
2218
 
        case happyOut60 happy_x_2 of { happy_var_2 -> 
2219
 
        ( exprToLHS happy_var_1 >>= \p -> return (p happy_var_2))}}
2220
 
        ) (\r -> happyReturn (happyIn58 r))
2221
 
 
2222
 
happyReduce_174 = happySpecReduce_3  52# happyReduction_174
2223
 
happyReduction_174 happy_x_3
2224
 
        happy_x_2
2225
 
        happy_x_1
2226
 
         =  case happyOutTok happy_x_1 of { (TokSymbol SymEllipsis happy_var_1) -> 
2227
 
        case happyOut59 happy_x_2 of { happy_var_2 -> 
2228
 
        case happyOut60 happy_x_3 of { happy_var_3 -> 
 
2325
happyReduce_177 = happySpecReduce_1  52# happyReduction_177
 
2326
happyReduction_177 happy_x_1
 
2327
         =  case happyOut59 happy_x_1 of { happy_var_1 -> 
2229
2328
        happyIn58
2230
 
                 (Ellipsis (fuseRange happy_var_1 happy_var_3) happy_var_2 happy_var_3
2231
 
        )}}}
2232
 
 
2233
 
happyReduce_175 = happySpecReduce_0  53# happyReduction_175
2234
 
happyReduction_175  =  happyIn59
2235
 
                 ([]
2236
 
        )
2237
 
 
2238
 
happyReduce_176 = happyMonadReduce 3# 53# happyReduction_176
2239
 
happyReduction_176 (happy_x_3 `HappyStk`
2240
 
        happy_x_2 `HappyStk`
2241
 
        happy_x_1 `HappyStk`
2242
 
        happyRest) tk
2243
 
         = happyThen (case happyOut29 happy_x_2 of { happy_var_2 -> 
 
2329
                 (happy_var_1
 
2330
        )}
 
2331
 
 
2332
happyReduce_178 = happySpecReduce_1  53# happyReduction_178
 
2333
happyReduction_178 happy_x_1
 
2334
         =  case happyOut57 happy_x_1 of { happy_var_1 -> 
 
2335
        happyIn59
 
2336
                 ([happy_var_1]
 
2337
        )}
 
2338
 
 
2339
happyReduce_179 = happySpecReduce_3  53# happyReduction_179
 
2340
happyReduction_179 happy_x_3
 
2341
        happy_x_2
 
2342
        happy_x_1
 
2343
         =  case happyOut57 happy_x_1 of { happy_var_1 -> 
2244
2344
        case happyOut59 happy_x_3 of { happy_var_3 -> 
 
2345
        happyIn59
 
2346
                 (happy_var_1 : happy_var_3
 
2347
        )}}
 
2348
 
 
2349
happyReduce_180 = happyMonadReduce 3# 54# happyReduction_180
 
2350
happyReduction_180 (happy_x_3 `HappyStk`
 
2351
        happy_x_2 `HappyStk`
 
2352
        happy_x_1 `HappyStk`
 
2353
        happyRest) tk
 
2354
         = happyThen (case happyOut27 happy_x_1 of { happy_var_1 -> 
 
2355
        case happyOut63 happy_x_2 of { happy_var_2 -> 
 
2356
        case happyOut62 happy_x_3 of { happy_var_3 -> 
 
2357
        ( exprToLHS happy_var_1 >>= \p -> return (p happy_var_2 happy_var_3))}}}
 
2358
        ) (\r -> happyReturn (happyIn60 r))
 
2359
 
 
2360
happyReduce_181 = happyReduce 4# 54# happyReduction_181
 
2361
happyReduction_181 (happy_x_4 `HappyStk`
 
2362
        happy_x_3 `HappyStk`
 
2363
        happy_x_2 `HappyStk`
 
2364
        happy_x_1 `HappyStk`
 
2365
        happyRest)
 
2366
         = case happyOutTok happy_x_1 of { (TokSymbol SymEllipsis happy_var_1) -> 
 
2367
        case happyOut61 happy_x_2 of { happy_var_2 -> 
 
2368
        case happyOut63 happy_x_3 of { happy_var_3 -> 
 
2369
        case happyOut62 happy_x_4 of { happy_var_4 -> 
 
2370
        happyIn60
 
2371
                 (Ellipsis (fuseRange happy_var_1 happy_var_3) happy_var_2 happy_var_3 happy_var_4
 
2372
        ) `HappyStk` happyRest}}}}
 
2373
 
 
2374
happyReduce_182 = happySpecReduce_0  55# happyReduction_182
 
2375
happyReduction_182  =  happyIn61
 
2376
                 ([]
 
2377
        )
 
2378
 
 
2379
happyReduce_183 = happyMonadReduce 3# 55# happyReduction_183
 
2380
happyReduction_183 (happy_x_3 `HappyStk`
 
2381
        happy_x_2 `HappyStk`
 
2382
        happy_x_1 `HappyStk`
 
2383
        happyRest) tk
 
2384
         = happyThen (case happyOut31 happy_x_2 of { happy_var_2 -> 
 
2385
        case happyOut61 happy_x_3 of { happy_var_3 -> 
2245
2386
        ( exprToPattern (RawApp (getRange happy_var_2) happy_var_2) >>= \p ->
2246
2387
                   return (p : happy_var_3))}}
2247
 
        ) (\r -> happyReturn (happyIn59 r))
2248
 
 
2249
 
happyReduce_177 = happySpecReduce_0  54# happyReduction_177
2250
 
happyReduction_177  =  happyIn60
2251
 
                 ([]
2252
 
        )
2253
 
 
2254
 
happyReduce_178 = happySpecReduce_2  54# happyReduction_178
2255
 
happyReduction_178 happy_x_2
2256
 
        happy_x_1
2257
 
         =  case happyOut24 happy_x_2 of { happy_var_2 -> 
2258
 
        happyIn60
2259
 
                 (case happy_var_2 of { WithApp _ e es -> e : es; e -> [e] }
2260
 
        )}
2261
 
 
2262
 
happyReduce_179 = happySpecReduce_0  55# happyReduction_179
2263
 
happyReduction_179  =  happyIn61
 
2388
        ) (\r -> happyReturn (happyIn61 r))
 
2389
 
 
2390
happyReduce_184 = happySpecReduce_0  56# happyReduction_184
 
2391
happyReduction_184  =  happyIn62
 
2392
                 ([]
 
2393
        )
 
2394
 
 
2395
happyReduce_185 = happySpecReduce_2  56# happyReduction_185
 
2396
happyReduction_185 happy_x_2
 
2397
        happy_x_1
 
2398
         =  case happyOut26 happy_x_2 of { happy_var_2 -> 
 
2399
        happyIn62
 
2400
                 (case happy_var_2 of { WithApp _ e es -> e : es; e -> [e] }
 
2401
        )}
 
2402
 
 
2403
happyReduce_186 = happySpecReduce_0  57# happyReduction_186
 
2404
happyReduction_186  =  happyIn63
 
2405
                 ([]
 
2406
        )
 
2407
 
 
2408
happyReduce_187 = happySpecReduce_2  57# happyReduction_187
 
2409
happyReduction_187 happy_x_2
 
2410
        happy_x_1
 
2411
         =  case happyOut26 happy_x_2 of { happy_var_2 -> 
 
2412
        happyIn63
 
2413
                 (case happy_var_2 of { WithApp _ e es -> e : es; e -> [e] }
 
2414
        )}
 
2415
 
 
2416
happyReduce_188 = happySpecReduce_0  58# happyReduction_188
 
2417
happyReduction_188  =  happyIn64
2264
2418
                 (NoWhere
2265
2419
        )
2266
2420
 
2267
 
happyReduce_180 = happySpecReduce_2  55# happyReduction_180
2268
 
happyReduction_180 happy_x_2
 
2421
happyReduce_189 = happySpecReduce_2  58# happyReduction_189
 
2422
happyReduction_189 happy_x_2
2269
2423
        happy_x_1
2270
 
         =  case happyOut95 happy_x_2 of { happy_var_2 -> 
2271
 
        happyIn61
 
2424
         =  case happyOut104 happy_x_2 of { happy_var_2 -> 
 
2425
        happyIn64
2272
2426
                 (AnyWhere happy_var_2
2273
2427
        )}
2274
2428
 
2275
 
happyReduce_181 = happyReduce 4# 55# happyReduction_181
2276
 
happyReduction_181 (happy_x_4 `HappyStk`
 
2429
happyReduce_190 = happyReduce 4# 58# happyReduction_190
 
2430
happyReduction_190 (happy_x_4 `HappyStk`
2277
2431
        happy_x_3 `HappyStk`
2278
2432
        happy_x_2 `HappyStk`
2279
2433
        happy_x_1 `HappyStk`
2280
2434
        happyRest)
2281
2435
         = case happyOut16 happy_x_2 of { happy_var_2 -> 
2282
 
        case happyOut95 happy_x_4 of { happy_var_4 -> 
2283
 
        happyIn61
 
2436
        case happyOut104 happy_x_4 of { happy_var_4 -> 
 
2437
        happyIn64
2284
2438
                 (SomeWhere happy_var_2 happy_var_4
2285
2439
        ) `HappyStk` happyRest}}
2286
2440
 
2287
 
happyReduce_182 = happySpecReduce_1  56# happyReduction_182
2288
 
happyReduction_182 happy_x_1
2289
 
         =  case happyOut63 happy_x_1 of { happy_var_1 -> 
2290
 
        happyIn62
2291
 
                 ([happy_var_1]
2292
 
        )}
2293
 
 
2294
 
happyReduce_183 = happySpecReduce_1  56# happyReduction_183
2295
 
happyReduction_183 happy_x_1
2296
 
         =  case happyOut69 happy_x_1 of { happy_var_1 -> 
2297
 
        happyIn62
2298
 
                 (happy_var_1
2299
 
        )}
2300
 
 
2301
 
happyReduce_184 = happySpecReduce_1  56# happyReduction_184
2302
 
happyReduction_184 happy_x_1
2303
 
         =  case happyOut64 happy_x_1 of { happy_var_1 -> 
2304
 
        happyIn62
2305
 
                 ([happy_var_1]
2306
 
        )}
2307
 
 
2308
 
happyReduce_185 = happySpecReduce_1  56# happyReduction_185
2309
 
happyReduction_185 happy_x_1
 
2441
happyReduce_191 = happySpecReduce_1  59# happyReduction_191
 
2442
happyReduction_191 happy_x_1
2310
2443
         =  case happyOut66 happy_x_1 of { happy_var_1 -> 
2311
 
        happyIn62
2312
 
                 ([happy_var_1]
2313
 
        )}
2314
 
 
2315
 
happyReduce_186 = happySpecReduce_1  56# happyReduction_186
2316
 
happyReduction_186 happy_x_1
2317
 
         =  case happyOut67 happy_x_1 of { happy_var_1 -> 
2318
 
        happyIn62
2319
 
                 ([happy_var_1]
2320
 
        )}
2321
 
 
2322
 
happyReduce_187 = happySpecReduce_1  56# happyReduction_187
2323
 
happyReduction_187 happy_x_1
2324
 
         =  case happyOut68 happy_x_1 of { happy_var_1 -> 
2325
 
        happyIn62
2326
 
                 ([happy_var_1]
2327
 
        )}
2328
 
 
2329
 
happyReduce_188 = happySpecReduce_1  56# happyReduction_188
2330
 
happyReduction_188 happy_x_1
2331
 
         =  case happyOut70 happy_x_1 of { happy_var_1 -> 
2332
 
        happyIn62
2333
 
                 ([happy_var_1]
2334
 
        )}
2335
 
 
2336
 
happyReduce_189 = happySpecReduce_1  56# happyReduction_189
2337
 
happyReduction_189 happy_x_1
2338
 
         =  case happyOut71 happy_x_1 of { happy_var_1 -> 
2339
 
        happyIn62
2340
 
                 ([happy_var_1]
2341
 
        )}
2342
 
 
2343
 
happyReduce_190 = happySpecReduce_1  56# happyReduction_190
2344
 
happyReduction_190 happy_x_1
2345
 
         =  case happyOut72 happy_x_1 of { happy_var_1 -> 
2346
 
        happyIn62
2347
 
                 ([happy_var_1]
2348
 
        )}
2349
 
 
2350
 
happyReduce_191 = happySpecReduce_1  56# happyReduction_191
2351
 
happyReduction_191 happy_x_1
2352
 
         =  case happyOut73 happy_x_1 of { happy_var_1 -> 
2353
 
        happyIn62
2354
 
                 ([happy_var_1]
2355
 
        )}
2356
 
 
2357
 
happyReduce_192 = happySpecReduce_1  56# happyReduction_192
 
2444
        happyIn65
 
2445
                 ([happy_var_1]
 
2446
        )}
 
2447
 
 
2448
happyReduce_192 = happySpecReduce_1  59# happyReduction_192
2358
2449
happyReduction_192 happy_x_1
2359
 
         =  case happyOut74 happy_x_1 of { happy_var_1 -> 
2360
 
        happyIn62
2361
 
                 ([happy_var_1]
 
2450
         =  case happyOut75 happy_x_1 of { happy_var_1 -> 
 
2451
        happyIn65
 
2452
                 (happy_var_1
2362
2453
        )}
2363
2454
 
2364
 
happyReduce_193 = happySpecReduce_1  56# happyReduction_193
 
2455
happyReduce_193 = happySpecReduce_1  59# happyReduction_193
2365
2456
happyReduction_193 happy_x_1
2366
 
         =  case happyOut75 happy_x_1 of { happy_var_1 -> 
2367
 
        happyIn62
 
2457
         =  case happyOut69 happy_x_1 of { happy_var_1 -> 
 
2458
        happyIn65
2368
2459
                 ([happy_var_1]
2369
2460
        )}
2370
2461
 
2371
 
happyReduce_194 = happySpecReduce_1  56# happyReduction_194
 
2462
happyReduce_194 = happySpecReduce_1  59# happyReduction_194
2372
2463
happyReduction_194 happy_x_1
2373
 
         =  case happyOut78 happy_x_1 of { happy_var_1 -> 
2374
 
        happyIn62
 
2464
         =  case happyOut71 happy_x_1 of { happy_var_1 -> 
 
2465
        happyIn65
2375
2466
                 ([happy_var_1]
2376
2467
        )}
2377
2468
 
2378
 
happyReduce_195 = happySpecReduce_1  56# happyReduction_195
 
2469
happyReduce_195 = happySpecReduce_1  59# happyReduction_195
2379
2470
happyReduction_195 happy_x_1
 
2471
         =  case happyOut72 happy_x_1 of { happy_var_1 -> 
 
2472
        happyIn65
 
2473
                 ([happy_var_1]
 
2474
        )}
 
2475
 
 
2476
happyReduce_196 = happySpecReduce_1  59# happyReduction_196
 
2477
happyReduction_196 happy_x_1
 
2478
         =  case happyOut74 happy_x_1 of { happy_var_1 -> 
 
2479
        happyIn65
 
2480
                 ([happy_var_1]
 
2481
        )}
 
2482
 
 
2483
happyReduce_197 = happySpecReduce_1  59# happyReduction_197
 
2484
happyReduction_197 happy_x_1
 
2485
         =  case happyOut76 happy_x_1 of { happy_var_1 -> 
 
2486
        happyIn65
 
2487
                 ([happy_var_1]
 
2488
        )}
 
2489
 
 
2490
happyReduce_198 = happySpecReduce_1  59# happyReduction_198
 
2491
happyReduction_198 happy_x_1
2380
2492
         =  case happyOut77 happy_x_1 of { happy_var_1 -> 
2381
 
        happyIn62
2382
 
                 ([happy_var_1]
2383
 
        )}
2384
 
 
2385
 
happyReduce_196 = happySpecReduce_1  56# happyReduction_196
2386
 
happyReduction_196 happy_x_1
 
2493
        happyIn65
 
2494
                 ([happy_var_1]
 
2495
        )}
 
2496
 
 
2497
happyReduce_199 = happySpecReduce_1  59# happyReduction_199
 
2498
happyReduction_199 happy_x_1
 
2499
         =  case happyOut78 happy_x_1 of { happy_var_1 -> 
 
2500
        happyIn65
 
2501
                 ([happy_var_1]
 
2502
        )}
 
2503
 
 
2504
happyReduce_200 = happySpecReduce_1  59# happyReduction_200
 
2505
happyReduction_200 happy_x_1
2387
2506
         =  case happyOut79 happy_x_1 of { happy_var_1 -> 
2388
 
        happyIn62
2389
 
                 ([happy_var_1]
2390
 
        )}
2391
 
 
2392
 
happyReduce_197 = happySpecReduce_1  56# happyReduction_197
2393
 
happyReduction_197 happy_x_1
2394
 
         =  case happyOut82 happy_x_1 of { happy_var_1 -> 
2395
 
        happyIn62
2396
 
                 ([happy_var_1]
2397
 
        )}
2398
 
 
2399
 
happyReduce_198 = happySpecReduce_3  57# happyReduction_198
2400
 
happyReduction_198 happy_x_3
 
2507
        happyIn65
 
2508
                 ([happy_var_1]
 
2509
        )}
 
2510
 
 
2511
happyReduce_201 = happySpecReduce_1  59# happyReduction_201
 
2512
happyReduction_201 happy_x_1
 
2513
         =  case happyOut80 happy_x_1 of { happy_var_1 -> 
 
2514
        happyIn65
 
2515
                 ([happy_var_1]
 
2516
        )}
 
2517
 
 
2518
happyReduce_202 = happySpecReduce_1  59# happyReduction_202
 
2519
happyReduction_202 happy_x_1
 
2520
         =  case happyOut81 happy_x_1 of { happy_var_1 -> 
 
2521
        happyIn65
 
2522
                 ([happy_var_1]
 
2523
        )}
 
2524
 
 
2525
happyReduce_203 = happySpecReduce_1  59# happyReduction_203
 
2526
happyReduction_203 happy_x_1
 
2527
         =  case happyOut84 happy_x_1 of { happy_var_1 -> 
 
2528
        happyIn65
 
2529
                 ([happy_var_1]
 
2530
        )}
 
2531
 
 
2532
happyReduce_204 = happySpecReduce_1  59# happyReduction_204
 
2533
happyReduction_204 happy_x_1
 
2534
         =  case happyOut83 happy_x_1 of { happy_var_1 -> 
 
2535
        happyIn65
 
2536
                 ([happy_var_1]
 
2537
        )}
 
2538
 
 
2539
happyReduce_205 = happySpecReduce_1  59# happyReduction_205
 
2540
happyReduction_205 happy_x_1
 
2541
         =  case happyOut85 happy_x_1 of { happy_var_1 -> 
 
2542
        happyIn65
 
2543
                 ([happy_var_1]
 
2544
        )}
 
2545
 
 
2546
happyReduce_206 = happySpecReduce_1  59# happyReduction_206
 
2547
happyReduction_206 happy_x_1
 
2548
         =  case happyOut88 happy_x_1 of { happy_var_1 -> 
 
2549
        happyIn65
 
2550
                 ([happy_var_1]
 
2551
        )}
 
2552
 
 
2553
happyReduce_207 = happySpecReduce_3  60# happyReduction_207
 
2554
happyReduction_207 happy_x_3
2401
2555
        happy_x_2
2402
2556
        happy_x_1
2403
2557
         =  case happyOut16 happy_x_1 of { happy_var_1 -> 
2404
 
        case happyOut24 happy_x_3 of { happy_var_3 -> 
2405
 
        happyIn63
 
2558
        case happyOut26 happy_x_3 of { happy_var_3 -> 
 
2559
        happyIn66
2406
2560
                 (TypeSig happy_var_1 happy_var_3
2407
2561
        )}}
2408
2562
 
2409
 
happyReduce_199 = happySpecReduce_3  58# happyReduction_199
2410
 
happyReduction_199 happy_x_3
2411
 
        happy_x_2
2412
 
        happy_x_1
2413
 
         =  case happyOut58 happy_x_1 of { happy_var_1 -> 
2414
 
        case happyOut65 happy_x_2 of { happy_var_2 -> 
2415
 
        case happyOut61 happy_x_3 of { happy_var_3 -> 
2416
 
        happyIn64
 
2563
happyReduce_208 = happySpecReduce_3  61# happyReduction_208
 
2564
happyReduction_208 happy_x_3
 
2565
        happy_x_2
 
2566
        happy_x_1
 
2567
         =  case happyOut17 happy_x_1 of { happy_var_1 -> 
 
2568
        case happyOut26 happy_x_3 of { happy_var_3 -> 
 
2569
        happyIn67
 
2570
                 (map (flip TypeSig happy_var_3) happy_var_1
 
2571
        )}}
 
2572
 
 
2573
happyReduce_209 = happySpecReduce_3  62# happyReduction_209
 
2574
happyReduction_209 happy_x_3
 
2575
        happy_x_2
 
2576
        happy_x_1
 
2577
         =  case happyOut18 happy_x_1 of { happy_var_1 -> 
 
2578
        case happyOut26 happy_x_3 of { happy_var_3 -> 
 
2579
        happyIn68
 
2580
                 (map (id *** flip TypeSig happy_var_3) happy_var_1
 
2581
        )}}
 
2582
 
 
2583
happyReduce_210 = happySpecReduce_3  63# happyReduction_210
 
2584
happyReduction_210 happy_x_3
 
2585
        happy_x_2
 
2586
        happy_x_1
 
2587
         =  case happyOut60 happy_x_1 of { happy_var_1 -> 
 
2588
        case happyOut70 happy_x_2 of { happy_var_2 -> 
 
2589
        case happyOut64 happy_x_3 of { happy_var_3 -> 
 
2590
        happyIn69
2417
2591
                 (FunClause happy_var_1 happy_var_2 happy_var_3
2418
2592
        )}}}
2419
2593
 
2420
 
happyReduce_200 = happySpecReduce_2  59# happyReduction_200
2421
 
happyReduction_200 happy_x_2
 
2594
happyReduce_211 = happySpecReduce_2  64# happyReduction_211
 
2595
happyReduction_211 happy_x_2
2422
2596
        happy_x_1
2423
 
         =  case happyOut24 happy_x_2 of { happy_var_2 -> 
2424
 
        happyIn65
 
2597
         =  case happyOut26 happy_x_2 of { happy_var_2 -> 
 
2598
        happyIn70
2425
2599
                 (RHS happy_var_2
2426
2600
        )}
2427
2601
 
2428
 
happyReduce_201 = happySpecReduce_0  59# happyReduction_201
2429
 
happyReduction_201  =  happyIn65
 
2602
happyReduce_212 = happySpecReduce_0  64# happyReduction_212
 
2603
happyReduction_212  =  happyIn70
2430
2604
                 (AbsurdRHS
2431
2605
        )
2432
2606
 
2433
 
happyReduce_202 = happyReduce 7# 60# happyReduction_202
2434
 
happyReduction_202 (happy_x_7 `HappyStk`
 
2607
happyReduce_213 = happyReduce 7# 65# happyReduction_213
 
2608
happyReduction_213 (happy_x_7 `HappyStk`
2435
2609
        happy_x_6 `HappyStk`
2436
2610
        happy_x_5 `HappyStk`
2437
2611
        happy_x_4 `HappyStk`
2441
2615
        happyRest)
2442
2616
         = case happyOutTok happy_x_1 of { (TokKeyword KwData happy_var_1) -> 
2443
2617
        case happyOut16 happy_x_2 of { happy_var_2 -> 
2444
 
        case happyOut44 happy_x_3 of { happy_var_3 -> 
2445
 
        case happyOut24 happy_x_5 of { happy_var_5 -> 
 
2618
        case happyOut46 happy_x_3 of { happy_var_3 -> 
 
2619
        case happyOut26 happy_x_5 of { happy_var_5 -> 
2446
2620
        case happyOutTok happy_x_6 of { (TokKeyword KwWhere happy_var_6) -> 
2447
 
        case happyOut94 happy_x_7 of { happy_var_7 -> 
2448
 
        happyIn66
 
2621
        case happyOut102 happy_x_7 of { happy_var_7 -> 
 
2622
        happyIn71
2449
2623
                 (Data (getRange (happy_var_1, happy_var_6, happy_var_7)) Inductive happy_var_2 (map addType happy_var_3) happy_var_5 happy_var_7
2450
2624
        ) `HappyStk` happyRest}}}}}}
2451
2625
 
2452
 
happyReduce_203 = happyReduce 7# 60# happyReduction_203
2453
 
happyReduction_203 (happy_x_7 `HappyStk`
 
2626
happyReduce_214 = happyReduce 7# 65# happyReduction_214
 
2627
happyReduction_214 (happy_x_7 `HappyStk`
2454
2628
        happy_x_6 `HappyStk`
2455
2629
        happy_x_5 `HappyStk`
2456
2630
        happy_x_4 `HappyStk`
2460
2634
        happyRest)
2461
2635
         = case happyOutTok happy_x_1 of { (TokKeyword KwCoData happy_var_1) -> 
2462
2636
        case happyOut16 happy_x_2 of { happy_var_2 -> 
2463
 
        case happyOut44 happy_x_3 of { happy_var_3 -> 
2464
 
        case happyOut24 happy_x_5 of { happy_var_5 -> 
 
2637
        case happyOut46 happy_x_3 of { happy_var_3 -> 
 
2638
        case happyOut26 happy_x_5 of { happy_var_5 -> 
2465
2639
        case happyOutTok happy_x_6 of { (TokKeyword KwWhere happy_var_6) -> 
2466
 
        case happyOut94 happy_x_7 of { happy_var_7 -> 
2467
 
        happyIn66
 
2640
        case happyOut102 happy_x_7 of { happy_var_7 -> 
 
2641
        happyIn71
2468
2642
                 (Data (getRange (happy_var_1, happy_var_6, happy_var_7)) CoInductive happy_var_2 (map addType happy_var_3) happy_var_5 happy_var_7
2469
2643
        ) `HappyStk` happyRest}}}}}}
2470
2644
 
2471
 
happyReduce_204 = happyReduce 7# 61# happyReduction_204
2472
 
happyReduction_204 (happy_x_7 `HappyStk`
 
2645
happyReduce_215 = happyReduce 7# 66# happyReduction_215
 
2646
happyReduction_215 (happy_x_7 `HappyStk`
2473
2647
        happy_x_6 `HappyStk`
2474
2648
        happy_x_5 `HappyStk`
2475
2649
        happy_x_4 `HappyStk`
2479
2653
        happyRest)
2480
2654
         = case happyOutTok happy_x_1 of { (TokKeyword KwRecord happy_var_1) -> 
2481
2655
        case happyOut16 happy_x_2 of { happy_var_2 -> 
2482
 
        case happyOut44 happy_x_3 of { happy_var_3 -> 
2483
 
        case happyOut24 happy_x_5 of { happy_var_5 -> 
 
2656
        case happyOut46 happy_x_3 of { happy_var_3 -> 
 
2657
        case happyOut26 happy_x_5 of { happy_var_5 -> 
2484
2658
        case happyOutTok happy_x_6 of { (TokKeyword KwWhere happy_var_6) -> 
2485
 
        case happyOut96 happy_x_7 of { happy_var_7 -> 
2486
 
        happyIn67
2487
 
                 (Record (getRange (happy_var_1, happy_var_6, happy_var_7)) happy_var_2 (map addType happy_var_3) happy_var_5 happy_var_7
 
2659
        case happyOut103 happy_x_7 of { happy_var_7 -> 
 
2660
        happyIn72
 
2661
                 (Record (getRange (happy_var_1, happy_var_6, happy_var_7)) happy_var_2 (fst happy_var_7) (map addType happy_var_3) happy_var_5 (snd happy_var_7)
2488
2662
        ) `HappyStk` happyRest}}}}}}
2489
2663
 
2490
 
happyReduce_205 = happySpecReduce_3  62# happyReduction_205
2491
 
happyReduction_205 happy_x_3
 
2664
happyReduce_216 = happySpecReduce_2  67# happyReduction_216
 
2665
happyReduction_216 happy_x_2
 
2666
        happy_x_1
 
2667
         =  case happyOut16 happy_x_2 of { happy_var_2 -> 
 
2668
        happyIn73
 
2669
                 (happy_var_2
 
2670
        )}
 
2671
 
 
2672
happyReduce_217 = happySpecReduce_3  68# happyReduction_217
 
2673
happyReduction_217 happy_x_3
2492
2674
        happy_x_2
2493
2675
        happy_x_1
2494
2676
         =  case happyOutTok happy_x_1 of { (TokKeyword KwInfix happy_var_1) -> 
2495
2677
        case happyOut15 happy_x_2 of { happy_var_2 -> 
2496
 
        case happyOut20 happy_x_3 of { happy_var_3 -> 
2497
 
        happyIn68
 
2678
        case happyOut22 happy_x_3 of { happy_var_3 -> 
 
2679
        happyIn74
2498
2680
                 (Infix (NonAssoc (fuseRange happy_var_1 happy_var_3) happy_var_2) happy_var_3
2499
2681
        )}}}
2500
2682
 
2501
 
happyReduce_206 = happySpecReduce_3  62# happyReduction_206
2502
 
happyReduction_206 happy_x_3
 
2683
happyReduce_218 = happySpecReduce_3  68# happyReduction_218
 
2684
happyReduction_218 happy_x_3
2503
2685
        happy_x_2
2504
2686
        happy_x_1
2505
2687
         =  case happyOutTok happy_x_1 of { (TokKeyword KwInfixL happy_var_1) -> 
2506
2688
        case happyOut15 happy_x_2 of { happy_var_2 -> 
2507
 
        case happyOut20 happy_x_3 of { happy_var_3 -> 
2508
 
        happyIn68
 
2689
        case happyOut22 happy_x_3 of { happy_var_3 -> 
 
2690
        happyIn74
2509
2691
                 (Infix (LeftAssoc (fuseRange happy_var_1 happy_var_3) happy_var_2) happy_var_3
2510
2692
        )}}}
2511
2693
 
2512
 
happyReduce_207 = happySpecReduce_3  62# happyReduction_207
2513
 
happyReduction_207 happy_x_3
 
2694
happyReduce_219 = happySpecReduce_3  68# happyReduction_219
 
2695
happyReduction_219 happy_x_3
2514
2696
        happy_x_2
2515
2697
        happy_x_1
2516
2698
         =  case happyOutTok happy_x_1 of { (TokKeyword KwInfixR happy_var_1) -> 
2517
2699
        case happyOut15 happy_x_2 of { happy_var_2 -> 
2518
 
        case happyOut20 happy_x_3 of { happy_var_3 -> 
2519
 
        happyIn68
 
2700
        case happyOut22 happy_x_3 of { happy_var_3 -> 
 
2701
        happyIn74
2520
2702
                 (Infix (RightAssoc (fuseRange happy_var_1 happy_var_3) happy_var_2) happy_var_3
2521
2703
        )}}}
2522
2704
 
2523
 
happyReduce_208 = happySpecReduce_2  63# happyReduction_208
2524
 
happyReduction_208 happy_x_2
 
2705
happyReduce_220 = happySpecReduce_2  69# happyReduction_220
 
2706
happyReduction_220 happy_x_2
2525
2707
        happy_x_1
2526
 
         =  case happyOut92 happy_x_2 of { happy_var_2 -> 
2527
 
        happyIn69
2528
 
                 (let toField (TypeSig x t) = Field x t in map toField happy_var_2
 
2708
         =  case happyOut100 happy_x_2 of { happy_var_2 -> 
 
2709
        happyIn75
 
2710
                 (let toField (h, TypeSig x t) = Field h x t in map toField happy_var_2
2529
2711
        )}
2530
2712
 
2531
 
happyReduce_209 = happySpecReduce_2  64# happyReduction_209
2532
 
happyReduction_209 happy_x_2
 
2713
happyReduce_221 = happySpecReduce_2  70# happyReduction_221
 
2714
happyReduction_221 happy_x_2
2533
2715
        happy_x_1
2534
2716
         =  case happyOutTok happy_x_1 of { (TokKeyword KwMutual happy_var_1) -> 
2535
 
        case happyOut95 happy_x_2 of { happy_var_2 -> 
2536
 
        happyIn70
 
2717
        case happyOut104 happy_x_2 of { happy_var_2 -> 
 
2718
        happyIn76
2537
2719
                 (Mutual (fuseRange happy_var_1 happy_var_2) happy_var_2
2538
2720
        )}}
2539
2721
 
2540
 
happyReduce_210 = happySpecReduce_2  65# happyReduction_210
2541
 
happyReduction_210 happy_x_2
 
2722
happyReduce_222 = happySpecReduce_2  71# happyReduction_222
 
2723
happyReduction_222 happy_x_2
2542
2724
        happy_x_1
2543
2725
         =  case happyOutTok happy_x_1 of { (TokKeyword KwAbstract happy_var_1) -> 
2544
 
        case happyOut95 happy_x_2 of { happy_var_2 -> 
2545
 
        happyIn71
 
2726
        case happyOut104 happy_x_2 of { happy_var_2 -> 
 
2727
        happyIn77
2546
2728
                 (Abstract (fuseRange happy_var_1 happy_var_2) happy_var_2
2547
2729
        )}}
2548
2730
 
2549
 
happyReduce_211 = happySpecReduce_2  66# happyReduction_211
2550
 
happyReduction_211 happy_x_2
 
2731
happyReduce_223 = happySpecReduce_2  72# happyReduction_223
 
2732
happyReduction_223 happy_x_2
2551
2733
        happy_x_1
2552
2734
         =  case happyOutTok happy_x_1 of { (TokKeyword KwPrivate happy_var_1) -> 
2553
 
        case happyOut95 happy_x_2 of { happy_var_2 -> 
2554
 
        happyIn72
 
2735
        case happyOut104 happy_x_2 of { happy_var_2 -> 
 
2736
        happyIn78
2555
2737
                 (Private (fuseRange happy_var_1 happy_var_2) happy_var_2
2556
2738
        )}}
2557
2739
 
2558
 
happyReduce_212 = happySpecReduce_2  67# happyReduction_212
2559
 
happyReduction_212 happy_x_2
 
2740
happyReduce_224 = happySpecReduce_2  73# happyReduction_224
 
2741
happyReduction_224 happy_x_2
2560
2742
        happy_x_1
2561
2743
         =  case happyOutTok happy_x_1 of { (TokKeyword KwPostulate happy_var_1) -> 
2562
 
        case happyOut92 happy_x_2 of { happy_var_2 -> 
2563
 
        happyIn73
 
2744
        case happyOut98 happy_x_2 of { happy_var_2 -> 
 
2745
        happyIn79
2564
2746
                 (Postulate (fuseRange happy_var_1 happy_var_2) happy_var_2
2565
2747
        )}}
2566
2748
 
2567
 
happyReduce_213 = happySpecReduce_2  68# happyReduction_213
2568
 
happyReduction_213 happy_x_2
 
2749
happyReduce_225 = happySpecReduce_2  74# happyReduction_225
 
2750
happyReduction_225 happy_x_2
2569
2751
        happy_x_1
2570
2752
         =  case happyOutTok happy_x_1 of { (TokKeyword KwPrimitive happy_var_1) -> 
2571
 
        case happyOut92 happy_x_2 of { happy_var_2 -> 
2572
 
        happyIn74
 
2753
        case happyOut98 happy_x_2 of { happy_var_2 -> 
 
2754
        happyIn80
2573
2755
                 (Primitive (fuseRange happy_var_1 happy_var_2) happy_var_2
2574
2756
        )}}
2575
2757
 
2576
 
happyReduce_214 = happyReduce 4# 69# happyReduction_214
2577
 
happyReduction_214 (happy_x_4 `HappyStk`
 
2758
happyReduce_226 = happyReduce 4# 75# happyReduction_226
 
2759
happyReduction_226 (happy_x_4 `HappyStk`
2578
2760
        happy_x_3 `HappyStk`
2579
2761
        happy_x_2 `HappyStk`
2580
2762
        happy_x_1 `HappyStk`
2581
2763
        happyRest)
2582
2764
         = case happyOutTok happy_x_1 of { (TokKeyword KwOpen happy_var_1) -> 
2583
 
        case happyOut18 happy_x_2 of { happy_var_2 -> 
2584
 
        case happyOut76 happy_x_3 of { happy_var_3 -> 
2585
 
        case happyOut47 happy_x_4 of { happy_var_4 -> 
2586
 
        happyIn75
 
2765
        case happyOut20 happy_x_2 of { happy_var_2 -> 
 
2766
        case happyOut82 happy_x_3 of { happy_var_3 -> 
 
2767
        case happyOut49 happy_x_4 of { happy_var_4 -> 
 
2768
        happyIn81
2587
2769
                 (let
2588
2770
    { m   = happy_var_2
2589
2771
    ; es  = happy_var_3
2598
2780
    }
2599
2781
        ) `HappyStk` happyRest}}}}
2600
2782
 
2601
 
happyReduce_215 = happySpecReduce_0  70# happyReduction_215
2602
 
happyReduction_215  =  happyIn76
 
2783
happyReduce_227 = happySpecReduce_0  76# happyReduction_227
 
2784
happyReduction_227  =  happyIn82
2603
2785
                 ([]
2604
2786
        )
2605
2787
 
2606
 
happyReduce_216 = happySpecReduce_2  70# happyReduction_216
2607
 
happyReduction_216 happy_x_2
 
2788
happyReduce_228 = happySpecReduce_2  76# happyReduction_228
 
2789
happyReduction_228 happy_x_2
2608
2790
        happy_x_1
2609
 
         =  case happyOut30 happy_x_1 of { happy_var_1 -> 
2610
 
        case happyOut76 happy_x_2 of { happy_var_2 -> 
2611
 
        happyIn76
 
2791
         =  case happyOut32 happy_x_1 of { happy_var_1 -> 
 
2792
        case happyOut82 happy_x_2 of { happy_var_2 -> 
 
2793
        happyIn82
2612
2794
                 (happy_var_1 : happy_var_2
2613
2795
        )}}
2614
2796
 
2615
 
happyReduce_217 = happyReduce 6# 71# happyReduction_217
2616
 
happyReduction_217 (happy_x_6 `HappyStk`
 
2797
happyReduce_229 = happyReduce 6# 77# happyReduction_229
 
2798
happyReduction_229 (happy_x_6 `HappyStk`
2617
2799
        happy_x_5 `HappyStk`
2618
2800
        happy_x_4 `HappyStk`
2619
2801
        happy_x_3 `HappyStk`
2622
2804
        happyRest)
2623
2805
         = case happyOutTok happy_x_1 of { (TokKeyword KwModule happy_var_1) -> 
2624
2806
        case happyOut16 happy_x_2 of { happy_var_2 -> 
2625
 
        case happyOut44 happy_x_3 of { happy_var_3 -> 
2626
 
        case happyOut24 happy_x_5 of { happy_var_5 -> 
2627
 
        case happyOut47 happy_x_6 of { happy_var_6 -> 
2628
 
        happyIn77
 
2807
        case happyOut46 happy_x_3 of { happy_var_3 -> 
 
2808
        case happyOut26 happy_x_5 of { happy_var_5 -> 
 
2809
        case happyOut49 happy_x_6 of { happy_var_6 -> 
 
2810
        happyIn83
2629
2811
                 (ModuleMacro (getRange (happy_var_1, happy_var_5, happy_var_6)) happy_var_2 (map addType happy_var_3) happy_var_5 DontOpen happy_var_6
2630
2812
        ) `HappyStk` happyRest}}}}}
2631
2813
 
2632
 
happyReduce_218 = happyReduce 7# 71# happyReduction_218
2633
 
happyReduction_218 (happy_x_7 `HappyStk`
 
2814
happyReduce_230 = happyReduce 7# 77# happyReduction_230
 
2815
happyReduction_230 (happy_x_7 `HappyStk`
2634
2816
        happy_x_6 `HappyStk`
2635
2817
        happy_x_5 `HappyStk`
2636
2818
        happy_x_4 `HappyStk`
2640
2822
        happyRest)
2641
2823
         = case happyOutTok happy_x_1 of { (TokKeyword KwOpen happy_var_1) -> 
2642
2824
        case happyOut16 happy_x_3 of { happy_var_3 -> 
2643
 
        case happyOut44 happy_x_4 of { happy_var_4 -> 
2644
 
        case happyOut24 happy_x_6 of { happy_var_6 -> 
2645
 
        case happyOut47 happy_x_7 of { happy_var_7 -> 
2646
 
        happyIn77
 
2825
        case happyOut46 happy_x_4 of { happy_var_4 -> 
 
2826
        case happyOut26 happy_x_6 of { happy_var_6 -> 
 
2827
        case happyOut49 happy_x_7 of { happy_var_7 -> 
 
2828
        happyIn83
2647
2829
                 (ModuleMacro (getRange (happy_var_1, happy_var_6, happy_var_7)) happy_var_3 (map addType happy_var_4) happy_var_6 DoOpen happy_var_7
2648
2830
        ) `HappyStk` happyRest}}}}}
2649
2831
 
2650
 
happyReduce_219 = happySpecReduce_3  72# happyReduction_219
2651
 
happyReduction_219 happy_x_3
 
2832
happyReduce_231 = happySpecReduce_3  78# happyReduction_231
 
2833
happyReduction_231 happy_x_3
2652
2834
        happy_x_2
2653
2835
        happy_x_1
2654
2836
         =  case happyOutTok happy_x_1 of { (TokKeyword KwImport happy_var_1) -> 
2655
 
        case happyOut18 happy_x_2 of { happy_var_2 -> 
2656
 
        case happyOut46 happy_x_3 of { happy_var_3 -> 
2657
 
        happyIn78
 
2837
        case happyOut20 happy_x_2 of { happy_var_2 -> 
 
2838
        case happyOut48 happy_x_3 of { happy_var_3 -> 
 
2839
        happyIn84
2658
2840
                 (Import (getRange (happy_var_1,happy_var_2,snd happy_var_3)) happy_var_2 (fst happy_var_3) DontOpen (snd happy_var_3)
2659
2841
        )}}}
2660
2842
 
2661
 
happyReduce_220 = happyReduce 4# 72# happyReduction_220
2662
 
happyReduction_220 (happy_x_4 `HappyStk`
 
2843
happyReduce_232 = happyReduce 4# 78# happyReduction_232
 
2844
happyReduction_232 (happy_x_4 `HappyStk`
2663
2845
        happy_x_3 `HappyStk`
2664
2846
        happy_x_2 `HappyStk`
2665
2847
        happy_x_1 `HappyStk`
2666
2848
        happyRest)
2667
2849
         = case happyOutTok happy_x_1 of { (TokKeyword KwOpen happy_var_1) -> 
2668
 
        case happyOut18 happy_x_3 of { happy_var_3 -> 
2669
 
        case happyOut46 happy_x_4 of { happy_var_4 -> 
2670
 
        happyIn78
 
2850
        case happyOut20 happy_x_3 of { happy_var_3 -> 
 
2851
        case happyOut48 happy_x_4 of { happy_var_4 -> 
 
2852
        happyIn84
2671
2853
                 (Import (getRange (happy_var_1,happy_var_3,snd happy_var_4)) happy_var_3 (fst happy_var_4) DoOpen (snd happy_var_4)
2672
2854
        ) `HappyStk` happyRest}}}
2673
2855
 
2674
 
happyReduce_221 = happyReduce 5# 73# happyReduction_221
2675
 
happyReduction_221 (happy_x_5 `HappyStk`
 
2856
happyReduce_233 = happyReduce 5# 79# happyReduction_233
 
2857
happyReduction_233 (happy_x_5 `HappyStk`
2676
2858
        happy_x_4 `HappyStk`
2677
2859
        happy_x_3 `HappyStk`
2678
2860
        happy_x_2 `HappyStk`
2680
2862
        happyRest)
2681
2863
         = case happyOutTok happy_x_1 of { (TokKeyword KwModule happy_var_1) -> 
2682
2864
        case happyOut16 happy_x_2 of { happy_var_2 -> 
2683
 
        case happyOut44 happy_x_3 of { happy_var_3 -> 
 
2865
        case happyOut46 happy_x_3 of { happy_var_3 -> 
2684
2866
        case happyOutTok happy_x_4 of { (TokKeyword KwWhere happy_var_4) -> 
2685
 
        case happyOut96 happy_x_5 of { happy_var_5 -> 
2686
 
        happyIn79
 
2867
        case happyOut105 happy_x_5 of { happy_var_5 -> 
 
2868
        happyIn85
2687
2869
                 (Module (getRange (happy_var_1,happy_var_4,happy_var_5)) (QName happy_var_2) (map addType happy_var_3) happy_var_5
2688
2870
        ) `HappyStk` happyRest}}}}}
2689
2871
 
2690
 
happyReduce_222 = happySpecReduce_2  74# happyReduction_222
2691
 
happyReduction_222 happy_x_2
 
2872
happyReduce_234 = happySpecReduce_2  80# happyReduction_234
 
2873
happyReduction_234 happy_x_2
 
2874
        happy_x_1
 
2875
         =  case happyOut87 happy_x_2 of { happy_var_2 -> 
 
2876
        happyIn86
 
2877
                 ([happy_var_2]
 
2878
        )}
 
2879
 
 
2880
happyReduce_235 = happySpecReduce_3  80# happyReduction_235
 
2881
happyReduction_235 happy_x_3
 
2882
        happy_x_2
 
2883
        happy_x_1
 
2884
         =  case happyOut84 happy_x_2 of { happy_var_2 -> 
 
2885
        case happyOut86 happy_x_3 of { happy_var_3 -> 
 
2886
        happyIn86
 
2887
                 (happy_var_2 : happy_var_3
 
2888
        )}}
 
2889
 
 
2890
happyReduce_236 = happySpecReduce_3  80# happyReduction_236
 
2891
happyReduction_236 happy_x_3
 
2892
        happy_x_2
2692
2893
        happy_x_1
2693
2894
         =  case happyOut81 happy_x_2 of { happy_var_2 -> 
2694
 
        happyIn80
2695
 
                 ([happy_var_2]
2696
 
        )}
2697
 
 
2698
 
happyReduce_223 = happySpecReduce_3  74# happyReduction_223
2699
 
happyReduction_223 happy_x_3
2700
 
        happy_x_2
2701
 
        happy_x_1
2702
 
         =  case happyOut78 happy_x_2 of { happy_var_2 -> 
2703
 
        case happyOut80 happy_x_3 of { happy_var_3 -> 
2704
 
        happyIn80
2705
 
                 (happy_var_2 : happy_var_3
2706
 
        )}}
2707
 
 
2708
 
happyReduce_224 = happySpecReduce_3  74# happyReduction_224
2709
 
happyReduction_224 happy_x_3
2710
 
        happy_x_2
2711
 
        happy_x_1
2712
 
         =  case happyOut75 happy_x_2 of { happy_var_2 -> 
2713
 
        case happyOut80 happy_x_3 of { happy_var_3 -> 
2714
 
        happyIn80
2715
 
                 (happy_var_2 : happy_var_3
2716
 
        )}}
2717
 
 
2718
 
happyReduce_225 = happyReduce 5# 75# happyReduction_225
2719
 
happyReduction_225 (happy_x_5 `HappyStk`
 
2895
        case happyOut86 happy_x_3 of { happy_var_3 -> 
 
2896
        happyIn86
 
2897
                 (happy_var_2 : happy_var_3
 
2898
        )}}
 
2899
 
 
2900
happyReduce_237 = happyReduce 5# 81# happyReduction_237
 
2901
happyReduction_237 (happy_x_5 `HappyStk`
2720
2902
        happy_x_4 `HappyStk`
2721
2903
        happy_x_3 `HappyStk`
2722
2904
        happy_x_2 `HappyStk`
2723
2905
        happy_x_1 `HappyStk`
2724
2906
        happyRest)
2725
2907
         = case happyOutTok happy_x_1 of { (TokKeyword KwModule happy_var_1) -> 
2726
 
        case happyOut18 happy_x_2 of { happy_var_2 -> 
2727
 
        case happyOut44 happy_x_3 of { happy_var_3 -> 
 
2908
        case happyOut20 happy_x_2 of { happy_var_2 -> 
 
2909
        case happyOut46 happy_x_3 of { happy_var_3 -> 
2728
2910
        case happyOutTok happy_x_4 of { (TokKeyword KwWhere happy_var_4) -> 
2729
 
        case happyOut96 happy_x_5 of { happy_var_5 -> 
2730
 
        happyIn81
 
2911
        case happyOut105 happy_x_5 of { happy_var_5 -> 
 
2912
        happyIn87
2731
2913
                 (Module (getRange (happy_var_1,happy_var_4,happy_var_5)) happy_var_2 (map addType happy_var_3) happy_var_5
2732
2914
        ) `HappyStk` happyRest}}}}}
2733
2915
 
2734
 
happyReduce_226 = happySpecReduce_1  76# happyReduction_226
2735
 
happyReduction_226 happy_x_1
2736
 
         =  case happyOut84 happy_x_1 of { happy_var_1 -> 
2737
 
        happyIn82
 
2916
happyReduce_238 = happySpecReduce_1  82# happyReduction_238
 
2917
happyReduction_238 happy_x_1
 
2918
         =  case happyOut90 happy_x_1 of { happy_var_1 -> 
 
2919
        happyIn88
2738
2920
                 (Pragma happy_var_1
2739
2921
        )}
2740
2922
 
2741
 
happyReduce_227 = happySpecReduce_1  77# happyReduction_227
2742
 
happyReduction_227 happy_x_1
2743
 
         =  case happyOut85 happy_x_1 of { happy_var_1 -> 
2744
 
        happyIn83
2745
 
                 (happy_var_1
2746
 
        )}
2747
 
 
2748
 
happyReduce_228 = happySpecReduce_1  77# happyReduction_228
2749
 
happyReduction_228 happy_x_1
2750
 
         =  case happyOut91 happy_x_1 of { happy_var_1 -> 
2751
 
        happyIn83
2752
 
                 (happy_var_1
2753
 
        )}
2754
 
 
2755
 
happyReduce_229 = happySpecReduce_1  78# happyReduction_229
2756
 
happyReduction_229 happy_x_1
2757
 
         =  case happyOut86 happy_x_1 of { happy_var_1 -> 
2758
 
        happyIn84
2759
 
                 (happy_var_1
2760
 
        )}
2761
 
 
2762
 
happyReduce_230 = happySpecReduce_1  78# happyReduction_230
2763
 
happyReduction_230 happy_x_1
2764
 
         =  case happyOut91 happy_x_1 of { happy_var_1 -> 
2765
 
        happyIn84
2766
 
                 (happy_var_1
2767
 
        )}
2768
 
 
2769
 
happyReduce_231 = happySpecReduce_1  78# happyReduction_231
2770
 
happyReduction_231 happy_x_1
2771
 
         =  case happyOut87 happy_x_1 of { happy_var_1 -> 
2772
 
        happyIn84
2773
 
                 (happy_var_1
2774
 
        )}
2775
 
 
2776
 
happyReduce_232 = happySpecReduce_1  78# happyReduction_232
2777
 
happyReduction_232 happy_x_1
2778
 
         =  case happyOut89 happy_x_1 of { happy_var_1 -> 
2779
 
        happyIn84
2780
 
                 (happy_var_1
2781
 
        )}
2782
 
 
2783
 
happyReduce_233 = happySpecReduce_1  78# happyReduction_233
2784
 
happyReduction_233 happy_x_1
2785
 
         =  case happyOut88 happy_x_1 of { happy_var_1 -> 
2786
 
        happyIn84
2787
 
                 (happy_var_1
2788
 
        )}
2789
 
 
2790
 
happyReduce_234 = happySpecReduce_1  78# happyReduction_234
2791
 
happyReduction_234 happy_x_1
2792
 
         =  case happyOut90 happy_x_1 of { happy_var_1 -> 
2793
 
        happyIn84
2794
 
                 (happy_var_1
2795
 
        )}
2796
 
 
2797
 
happyReduce_235 = happyReduce 4# 79# happyReduction_235
2798
 
happyReduction_235 (happy_x_4 `HappyStk`
 
2923
happyReduce_239 = happySpecReduce_1  83# happyReduction_239
 
2924
happyReduction_239 happy_x_1
 
2925
         =  case happyOut91 happy_x_1 of { happy_var_1 -> 
 
2926
        happyIn89
 
2927
                 (happy_var_1
 
2928
        )}
 
2929
 
 
2930
happyReduce_240 = happySpecReduce_1  84# happyReduction_240
 
2931
happyReduction_240 happy_x_1
 
2932
         =  case happyOut92 happy_x_1 of { happy_var_1 -> 
 
2933
        happyIn90
 
2934
                 (happy_var_1
 
2935
        )}
 
2936
 
 
2937
happyReduce_241 = happySpecReduce_1  84# happyReduction_241
 
2938
happyReduction_241 happy_x_1
 
2939
         =  case happyOut93 happy_x_1 of { happy_var_1 -> 
 
2940
        happyIn90
 
2941
                 (happy_var_1
 
2942
        )}
 
2943
 
 
2944
happyReduce_242 = happySpecReduce_1  84# happyReduction_242
 
2945
happyReduction_242 happy_x_1
 
2946
         =  case happyOut95 happy_x_1 of { happy_var_1 -> 
 
2947
        happyIn90
 
2948
                 (happy_var_1
 
2949
        )}
 
2950
 
 
2951
happyReduce_243 = happySpecReduce_1  84# happyReduction_243
 
2952
happyReduction_243 happy_x_1
 
2953
         =  case happyOut94 happy_x_1 of { happy_var_1 -> 
 
2954
        happyIn90
 
2955
                 (happy_var_1
 
2956
        )}
 
2957
 
 
2958
happyReduce_244 = happySpecReduce_1  84# happyReduction_244
 
2959
happyReduction_244 happy_x_1
 
2960
         =  case happyOut96 happy_x_1 of { happy_var_1 -> 
 
2961
        happyIn90
 
2962
                 (happy_var_1
 
2963
        )}
 
2964
 
 
2965
happyReduce_245 = happySpecReduce_1  84# happyReduction_245
 
2966
happyReduction_245 happy_x_1
 
2967
         =  case happyOut97 happy_x_1 of { happy_var_1 -> 
 
2968
        happyIn90
 
2969
                 (happy_var_1
 
2970
        )}
 
2971
 
 
2972
happyReduce_246 = happyReduce 4# 85# happyReduction_246
 
2973
happyReduction_246 (happy_x_4 `HappyStk`
2799
2974
        happy_x_3 `HappyStk`
2800
2975
        happy_x_2 `HappyStk`
2801
2976
        happy_x_1 `HappyStk`
2802
2977
        happyRest)
2803
2978
         = case happyOutTok happy_x_1 of { (TokSymbol SymOpenPragma happy_var_1) -> 
2804
 
        case happyOut22 happy_x_3 of { happy_var_3 -> 
 
2979
        case happyOut24 happy_x_3 of { happy_var_3 -> 
2805
2980
        case happyOutTok happy_x_4 of { (TokSymbol SymClosePragma happy_var_4) -> 
2806
 
        happyIn85
 
2981
        happyIn91
2807
2982
                 (OptionsPragma (fuseRange happy_var_1 happy_var_4) happy_var_3
2808
2983
        ) `HappyStk` happyRest}}}
2809
2984
 
2810
 
happyReduce_236 = happyReduce 5# 80# happyReduction_236
2811
 
happyReduction_236 (happy_x_5 `HappyStk`
 
2985
happyReduce_247 = happyReduce 5# 86# happyReduction_247
 
2986
happyReduction_247 (happy_x_5 `HappyStk`
2812
2987
        happy_x_4 `HappyStk`
2813
2988
        happy_x_3 `HappyStk`
2814
2989
        happy_x_2 `HappyStk`
2816
2991
        happyRest)
2817
2992
         = case happyOutTok happy_x_1 of { (TokSymbol SymOpenPragma happy_var_1) -> 
2818
2993
        case happyOutTok happy_x_3 of { (TokString happy_var_3) -> 
2819
 
        case happyOut23 happy_x_4 of { happy_var_4 -> 
 
2994
        case happyOut25 happy_x_4 of { happy_var_4 -> 
2820
2995
        case happyOutTok happy_x_5 of { (TokSymbol SymClosePragma happy_var_5) -> 
2821
 
        happyIn86
 
2996
        happyIn92
2822
2997
                 (BuiltinPragma (fuseRange happy_var_1 happy_var_5) (snd happy_var_3) (Ident happy_var_4)
2823
2998
        ) `HappyStk` happyRest}}}}
2824
2999
 
2825
 
happyReduce_237 = happyReduce 5# 81# happyReduction_237
2826
 
happyReduction_237 (happy_x_5 `HappyStk`
 
3000
happyReduce_248 = happyReduce 5# 87# happyReduction_248
 
3001
happyReduction_248 (happy_x_5 `HappyStk`
2827
3002
        happy_x_4 `HappyStk`
2828
3003
        happy_x_3 `HappyStk`
2829
3004
        happy_x_2 `HappyStk`
2830
3005
        happy_x_1 `HappyStk`
2831
3006
        happyRest)
2832
3007
         = case happyOutTok happy_x_1 of { (TokSymbol SymOpenPragma happy_var_1) -> 
2833
 
        case happyOut23 happy_x_3 of { happy_var_3 -> 
2834
 
        case happyOut22 happy_x_4 of { happy_var_4 -> 
 
3008
        case happyOut25 happy_x_3 of { happy_var_3 -> 
 
3009
        case happyOut24 happy_x_4 of { happy_var_4 -> 
2835
3010
        case happyOutTok happy_x_5 of { (TokSymbol SymClosePragma happy_var_5) -> 
2836
 
        happyIn87
 
3011
        happyIn93
2837
3012
                 (CompiledPragma (fuseRange happy_var_1 happy_var_5) happy_var_3 (unwords happy_var_4)
2838
3013
        ) `HappyStk` happyRest}}}}
2839
3014
 
2840
 
happyReduce_238 = happyReduce 5# 82# happyReduction_238
2841
 
happyReduction_238 (happy_x_5 `HappyStk`
 
3015
happyReduce_249 = happyReduce 5# 88# happyReduction_249
 
3016
happyReduction_249 (happy_x_5 `HappyStk`
2842
3017
        happy_x_4 `HappyStk`
2843
3018
        happy_x_3 `HappyStk`
2844
3019
        happy_x_2 `HappyStk`
2845
3020
        happy_x_1 `HappyStk`
2846
3021
        happyRest)
2847
3022
         = case happyOutTok happy_x_1 of { (TokSymbol SymOpenPragma happy_var_1) -> 
2848
 
        case happyOut23 happy_x_3 of { happy_var_3 -> 
2849
 
        case happyOut22 happy_x_4 of { happy_var_4 -> 
 
3023
        case happyOut25 happy_x_3 of { happy_var_3 -> 
 
3024
        case happyOut24 happy_x_4 of { happy_var_4 -> 
2850
3025
        case happyOutTok happy_x_5 of { (TokSymbol SymClosePragma happy_var_5) -> 
2851
 
        happyIn88
 
3026
        happyIn94
2852
3027
                 (CompiledTypePragma (fuseRange happy_var_1 happy_var_5) happy_var_3 (unwords happy_var_4)
2853
3028
        ) `HappyStk` happyRest}}}}
2854
3029
 
2855
 
happyReduce_239 = happyReduce 6# 83# happyReduction_239
2856
 
happyReduction_239 (happy_x_6 `HappyStk`
 
3030
happyReduce_250 = happyReduce 6# 89# happyReduction_250
 
3031
happyReduction_250 (happy_x_6 `HappyStk`
2857
3032
        happy_x_5 `HappyStk`
2858
3033
        happy_x_4 `HappyStk`
2859
3034
        happy_x_3 `HappyStk`
2861
3036
        happy_x_1 `HappyStk`
2862
3037
        happyRest)
2863
3038
         = case happyOutTok happy_x_1 of { (TokSymbol SymOpenPragma happy_var_1) -> 
2864
 
        case happyOut23 happy_x_3 of { happy_var_3 -> 
 
3039
        case happyOut25 happy_x_3 of { happy_var_3 -> 
2865
3040
        case happyOutTok happy_x_4 of { (TokString happy_var_4) -> 
2866
 
        case happyOut22 happy_x_5 of { happy_var_5 -> 
 
3041
        case happyOut24 happy_x_5 of { happy_var_5 -> 
2867
3042
        case happyOutTok happy_x_6 of { (TokSymbol SymClosePragma happy_var_6) -> 
2868
 
        happyIn89
 
3043
        happyIn95
2869
3044
                 (CompiledDataPragma (fuseRange happy_var_1 happy_var_6) happy_var_3 (snd happy_var_4) happy_var_5
2870
3045
        ) `HappyStk` happyRest}}}}}
2871
3046
 
2872
 
happyReduce_240 = happyReduce 4# 84# happyReduction_240
2873
 
happyReduction_240 (happy_x_4 `HappyStk`
2874
 
        happy_x_3 `HappyStk`
2875
 
        happy_x_2 `HappyStk`
2876
 
        happy_x_1 `HappyStk`
2877
 
        happyRest)
2878
 
         = case happyOutTok happy_x_1 of { (TokSymbol SymOpenPragma happy_var_1) -> 
2879
 
        case happyOut22 happy_x_3 of { happy_var_3 -> 
2880
 
        case happyOutTok happy_x_4 of { (TokSymbol SymClosePragma happy_var_4) -> 
2881
 
        happyIn90
2882
 
                 (ImportPragma (fuseRange happy_var_1 happy_var_4) (unwords happy_var_3)
2883
 
        ) `HappyStk` happyRest}}}
2884
 
 
2885
 
happyReduce_241 = happyMonadReduce 5# 85# happyReduction_241
2886
 
happyReduction_241 (happy_x_5 `HappyStk`
2887
 
        happy_x_4 `HappyStk`
 
3047
happyReduce_251 = happyMonadReduce 4# 90# happyReduction_251
 
3048
happyReduction_251 (happy_x_4 `HappyStk`
2888
3049
        happy_x_3 `HappyStk`
2889
3050
        happy_x_2 `HappyStk`
2890
3051
        happy_x_1 `HappyStk`
2891
3052
        happyRest) tk
2892
3053
         = happyThen (case happyOutTok happy_x_1 of { (TokSymbol SymOpenPragma happy_var_1) -> 
2893
3054
        case happyOutTok happy_x_3 of { (TokString happy_var_3) -> 
2894
 
        case happyOutTok happy_x_4 of { (TokString happy_var_4) -> 
2895
 
        case happyOutTok happy_x_5 of { (TokSymbol SymClosePragma happy_var_5) -> 
2896
 
        ( do
2897
 
      let r = fuseRange happy_var_1 happy_var_5
2898
 
          parseFile (i, f)
2899
 
            | head f == '"' && last f == '"'  = return $ init (tail f)
2900
 
            | otherwise = parseErrorAt (iStart i) $ "Expected \"filename\", found " ++ f
2901
 
          parseLine (i, l)
2902
 
            | all isDigit l = return $ read l
2903
 
            | otherwise     = parseErrorAt (iStart i) $ "Expected line number, found " ++ l
2904
 
      line <- parseLine happy_var_3
2905
 
      file <- parseFile happy_var_4
2906
 
      currentPos <- fmap parsePos get
2907
 
      setParsePos $ Pn
2908
 
        { srcFile = file
2909
 
        , posPos  = posPos currentPos
2910
 
        , posLine = line
2911
 
        , posCol  = 1
2912
 
        }
2913
 
      return $ LinePragma r line file)}}}}
2914
 
        ) (\r -> happyReturn (happyIn91 r))
2915
 
 
2916
 
happyReduce_242 = happyReduce 5# 86# happyReduction_242
2917
 
happyReduction_242 (happy_x_5 `HappyStk`
2918
 
        happy_x_4 `HappyStk`
2919
 
        happy_x_3 `HappyStk`
2920
 
        happy_x_2 `HappyStk`
2921
 
        happy_x_1 `HappyStk`
2922
 
        happyRest)
2923
 
         = case happyOut93 happy_x_3 of { happy_var_3 -> 
2924
 
        happyIn92
2925
 
                 (reverse happy_var_3
2926
 
        ) `HappyStk` happyRest}
2927
 
 
2928
 
happyReduce_243 = happyReduce 4# 87# happyReduction_243
2929
 
happyReduction_243 (happy_x_4 `HappyStk`
2930
 
        happy_x_3 `HappyStk`
2931
 
        happy_x_2 `HappyStk`
2932
 
        happy_x_1 `HappyStk`
2933
 
        happyRest)
2934
 
         = case happyOut93 happy_x_1 of { happy_var_1 -> 
2935
 
        case happyOut63 happy_x_4 of { happy_var_4 -> 
2936
 
        happyIn93
2937
 
                 (happy_var_4 : happy_var_1
2938
 
        ) `HappyStk` happyRest}}
2939
 
 
2940
 
happyReduce_244 = happySpecReduce_2  87# happyReduction_244
2941
 
happyReduction_244 happy_x_2
2942
 
        happy_x_1
2943
 
         =  case happyOut63 happy_x_2 of { happy_var_2 -> 
2944
 
        happyIn93
2945
 
                 ([happy_var_2]
2946
 
        )}
2947
 
 
2948
 
happyReduce_245 = happySpecReduce_1  88# happyReduction_245
2949
 
happyReduction_245 happy_x_1
2950
 
         =  case happyOut92 happy_x_1 of { happy_var_1 -> 
2951
 
        happyIn94
2952
 
                 (happy_var_1
2953
 
        )}
2954
 
 
2955
 
happyReduce_246 = happyReduce 4# 88# happyReduction_246
2956
 
happyReduction_246 (happy_x_4 `HappyStk`
2957
 
        happy_x_3 `HappyStk`
2958
 
        happy_x_2 `HappyStk`
2959
 
        happy_x_1 `HappyStk`
2960
 
        happyRest)
2961
 
         = happyIn94
2962
 
                 ([]
2963
 
        ) `HappyStk` happyRest
2964
 
 
2965
 
happyReduce_247 = happyReduce 5# 89# happyReduction_247
2966
 
happyReduction_247 (happy_x_5 `HappyStk`
2967
 
        happy_x_4 `HappyStk`
2968
 
        happy_x_3 `HappyStk`
2969
 
        happy_x_2 `HappyStk`
2970
 
        happy_x_1 `HappyStk`
2971
 
        happyRest)
2972
 
         = case happyOut97 happy_x_3 of { happy_var_3 -> 
2973
 
        happyIn95
2974
 
                 (reverse happy_var_3
2975
 
        ) `HappyStk` happyRest}
2976
 
 
2977
 
happyReduce_248 = happyReduce 4# 90# happyReduction_248
2978
 
happyReduction_248 (happy_x_4 `HappyStk`
2979
 
        happy_x_3 `HappyStk`
2980
 
        happy_x_2 `HappyStk`
2981
 
        happy_x_1 `HappyStk`
2982
 
        happyRest)
2983
 
         = happyIn96
2984
 
                 ([]
2985
 
        ) `HappyStk` happyRest
2986
 
 
2987
 
happyReduce_249 = happySpecReduce_1  90# happyReduction_249
2988
 
happyReduction_249 happy_x_1
2989
 
         =  case happyOut95 happy_x_1 of { happy_var_1 -> 
2990
 
        happyIn96
2991
 
                 (happy_var_1
2992
 
        )}
2993
 
 
2994
 
happyReduce_250 = happyReduce 4# 91# happyReduction_250
2995
 
happyReduction_250 (happy_x_4 `HappyStk`
2996
 
        happy_x_3 `HappyStk`
2997
 
        happy_x_2 `HappyStk`
2998
 
        happy_x_1 `HappyStk`
2999
 
        happyRest)
3000
 
         = case happyOut97 happy_x_1 of { happy_var_1 -> 
3001
 
        case happyOut62 happy_x_4 of { happy_var_4 -> 
3002
 
        happyIn97
3003
 
                 (reverse happy_var_4 ++ happy_var_1
3004
 
        ) `HappyStk` happyRest}}
3005
 
 
3006
 
happyReduce_251 = happySpecReduce_2  91# happyReduction_251
3007
 
happyReduction_251 happy_x_2
3008
 
        happy_x_1
3009
 
         =  case happyOut62 happy_x_2 of { happy_var_2 -> 
3010
 
        happyIn97
 
3055
        case happyOutTok happy_x_4 of { (TokSymbol SymClosePragma happy_var_4) -> 
 
3056
        ( let s = snd happy_var_3 in
 
3057
       if validHaskellModuleName s
 
3058
       then return $ ImportPragma (fuseRange happy_var_1 happy_var_4) s
 
3059
       else parseError $ "Malformed module name: " ++ s ++ ".")}}}
 
3060
        ) (\r -> happyReturn (happyIn96 r))
 
3061
 
 
3062
happyReduce_252 = happySpecReduce_3  91# happyReduction_252
 
3063
happyReduction_252 happy_x_3
 
3064
        happy_x_2
 
3065
        happy_x_1
 
3066
         =  case happyOutTok happy_x_1 of { (TokSymbol SymOpenPragma happy_var_1) -> 
 
3067
        case happyOutTok happy_x_3 of { (TokSymbol SymClosePragma happy_var_3) -> 
 
3068
        happyIn97
 
3069
                 (ImpossiblePragma (fuseRange happy_var_1 happy_var_3)
 
3070
        )}}
 
3071
 
 
3072
happyReduce_253 = happyReduce 5# 92# happyReduction_253
 
3073
happyReduction_253 (happy_x_5 `HappyStk`
 
3074
        happy_x_4 `HappyStk`
 
3075
        happy_x_3 `HappyStk`
 
3076
        happy_x_2 `HappyStk`
 
3077
        happy_x_1 `HappyStk`
 
3078
        happyRest)
 
3079
         = case happyOut99 happy_x_3 of { happy_var_3 -> 
 
3080
        happyIn98
 
3081
                 (reverse happy_var_3
 
3082
        ) `HappyStk` happyRest}
 
3083
 
 
3084
happyReduce_254 = happyReduce 4# 93# happyReduction_254
 
3085
happyReduction_254 (happy_x_4 `HappyStk`
 
3086
        happy_x_3 `HappyStk`
 
3087
        happy_x_2 `HappyStk`
 
3088
        happy_x_1 `HappyStk`
 
3089
        happyRest)
 
3090
         = case happyOut99 happy_x_1 of { happy_var_1 -> 
 
3091
        case happyOut67 happy_x_4 of { happy_var_4 -> 
 
3092
        happyIn99
 
3093
                 (reverse happy_var_4 ++ happy_var_1
 
3094
        ) `HappyStk` happyRest}}
 
3095
 
 
3096
happyReduce_255 = happySpecReduce_2  93# happyReduction_255
 
3097
happyReduction_255 happy_x_2
 
3098
        happy_x_1
 
3099
         =  case happyOut67 happy_x_2 of { happy_var_2 -> 
 
3100
        happyIn99
 
3101
                 (reverse happy_var_2
 
3102
        )}
 
3103
 
 
3104
happyReduce_256 = happyReduce 5# 94# happyReduction_256
 
3105
happyReduction_256 (happy_x_5 `HappyStk`
 
3106
        happy_x_4 `HappyStk`
 
3107
        happy_x_3 `HappyStk`
 
3108
        happy_x_2 `HappyStk`
 
3109
        happy_x_1 `HappyStk`
 
3110
        happyRest)
 
3111
         = case happyOut101 happy_x_3 of { happy_var_3 -> 
 
3112
        happyIn100
 
3113
                 (reverse happy_var_3
 
3114
        ) `HappyStk` happyRest}
 
3115
 
 
3116
happyReduce_257 = happyReduce 4# 95# happyReduction_257
 
3117
happyReduction_257 (happy_x_4 `HappyStk`
 
3118
        happy_x_3 `HappyStk`
 
3119
        happy_x_2 `HappyStk`
 
3120
        happy_x_1 `HappyStk`
 
3121
        happyRest)
 
3122
         = case happyOut101 happy_x_1 of { happy_var_1 -> 
 
3123
        case happyOut68 happy_x_4 of { happy_var_4 -> 
 
3124
        happyIn101
 
3125
                 (reverse happy_var_4 ++ happy_var_1
 
3126
        ) `HappyStk` happyRest}}
 
3127
 
 
3128
happyReduce_258 = happySpecReduce_2  95# happyReduction_258
 
3129
happyReduction_258 happy_x_2
 
3130
        happy_x_1
 
3131
         =  case happyOut68 happy_x_2 of { happy_var_2 -> 
 
3132
        happyIn101
 
3133
                 (reverse happy_var_2
 
3134
        )}
 
3135
 
 
3136
happyReduce_259 = happyReduce 4# 96# happyReduction_259
 
3137
happyReduction_259 (happy_x_4 `HappyStk`
 
3138
        happy_x_3 `HappyStk`
 
3139
        happy_x_2 `HappyStk`
 
3140
        happy_x_1 `HappyStk`
 
3141
        happyRest)
 
3142
         = happyIn102
 
3143
                 ([]
 
3144
        ) `HappyStk` happyRest
 
3145
 
 
3146
happyReduce_260 = happySpecReduce_1  96# happyReduction_260
 
3147
happyReduction_260 happy_x_1
 
3148
         =  case happyOut98 happy_x_1 of { happy_var_1 -> 
 
3149
        happyIn102
 
3150
                 (happy_var_1
 
3151
        )}
 
3152
 
 
3153
happyReduce_261 = happyReduce 4# 97# happyReduction_261
 
3154
happyReduction_261 (happy_x_4 `HappyStk`
 
3155
        happy_x_3 `HappyStk`
 
3156
        happy_x_2 `HappyStk`
 
3157
        happy_x_1 `HappyStk`
 
3158
        happyRest)
 
3159
         = happyIn103
 
3160
                 ((Nothing, [])
 
3161
        ) `HappyStk` happyRest
 
3162
 
 
3163
happyReduce_262 = happyReduce 6# 97# happyReduction_262
 
3164
happyReduction_262 (happy_x_6 `HappyStk`
 
3165
        happy_x_5 `HappyStk`
 
3166
        happy_x_4 `HappyStk`
 
3167
        happy_x_3 `HappyStk`
 
3168
        happy_x_2 `HappyStk`
 
3169
        happy_x_1 `HappyStk`
 
3170
        happyRest)
 
3171
         = case happyOut73 happy_x_4 of { happy_var_4 -> 
 
3172
        happyIn103
 
3173
                 ((Just happy_var_4, [])
 
3174
        ) `HappyStk` happyRest}
 
3175
 
 
3176
happyReduce_263 = happyReduce 8# 97# happyReduction_263
 
3177
happyReduction_263 (happy_x_8 `HappyStk`
 
3178
        happy_x_7 `HappyStk`
 
3179
        happy_x_6 `HappyStk`
 
3180
        happy_x_5 `HappyStk`
 
3181
        happy_x_4 `HappyStk`
 
3182
        happy_x_3 `HappyStk`
 
3183
        happy_x_2 `HappyStk`
 
3184
        happy_x_1 `HappyStk`
 
3185
        happyRest)
 
3186
         = case happyOut73 happy_x_4 of { happy_var_4 -> 
 
3187
        case happyOut106 happy_x_6 of { happy_var_6 -> 
 
3188
        happyIn103
 
3189
                 ((Just happy_var_4, reverse happy_var_6)
 
3190
        ) `HappyStk` happyRest}}
 
3191
 
 
3192
happyReduce_264 = happyReduce 5# 97# happyReduction_264
 
3193
happyReduction_264 (happy_x_5 `HappyStk`
 
3194
        happy_x_4 `HappyStk`
 
3195
        happy_x_3 `HappyStk`
 
3196
        happy_x_2 `HappyStk`
 
3197
        happy_x_1 `HappyStk`
 
3198
        happyRest)
 
3199
         = case happyOut106 happy_x_3 of { happy_var_3 -> 
 
3200
        happyIn103
 
3201
                 ((Nothing, reverse happy_var_3)
 
3202
        ) `HappyStk` happyRest}
 
3203
 
 
3204
happyReduce_265 = happyReduce 5# 98# happyReduction_265
 
3205
happyReduction_265 (happy_x_5 `HappyStk`
 
3206
        happy_x_4 `HappyStk`
 
3207
        happy_x_3 `HappyStk`
 
3208
        happy_x_2 `HappyStk`
 
3209
        happy_x_1 `HappyStk`
 
3210
        happyRest)
 
3211
         = case happyOut106 happy_x_3 of { happy_var_3 -> 
 
3212
        happyIn104
 
3213
                 (reverse happy_var_3
 
3214
        ) `HappyStk` happyRest}
 
3215
 
 
3216
happyReduce_266 = happyReduce 4# 99# happyReduction_266
 
3217
happyReduction_266 (happy_x_4 `HappyStk`
 
3218
        happy_x_3 `HappyStk`
 
3219
        happy_x_2 `HappyStk`
 
3220
        happy_x_1 `HappyStk`
 
3221
        happyRest)
 
3222
         = happyIn105
 
3223
                 ([]
 
3224
        ) `HappyStk` happyRest
 
3225
 
 
3226
happyReduce_267 = happySpecReduce_1  99# happyReduction_267
 
3227
happyReduction_267 happy_x_1
 
3228
         =  case happyOut104 happy_x_1 of { happy_var_1 -> 
 
3229
        happyIn105
 
3230
                 (happy_var_1
 
3231
        )}
 
3232
 
 
3233
happyReduce_268 = happyReduce 4# 100# happyReduction_268
 
3234
happyReduction_268 (happy_x_4 `HappyStk`
 
3235
        happy_x_3 `HappyStk`
 
3236
        happy_x_2 `HappyStk`
 
3237
        happy_x_1 `HappyStk`
 
3238
        happyRest)
 
3239
         = case happyOut106 happy_x_1 of { happy_var_1 -> 
 
3240
        case happyOut65 happy_x_4 of { happy_var_4 -> 
 
3241
        happyIn106
 
3242
                 (reverse happy_var_4 ++ happy_var_1
 
3243
        ) `HappyStk` happyRest}}
 
3244
 
 
3245
happyReduce_269 = happySpecReduce_2  100# happyReduction_269
 
3246
happyReduction_269 happy_x_2
 
3247
        happy_x_1
 
3248
         =  case happyOut65 happy_x_2 of { happy_var_2 -> 
 
3249
        happyIn106
3011
3250
                 (reverse happy_var_2
3012
3251
        )}
3013
3252
 
3015
3254
        = lexer(\tk -> 
3016
3255
        let cont i = happyDoAction i tk action sts stk in
3017
3256
        case tk of {
3018
 
        TokEOF -> happyDoAction 62# tk action sts stk;
 
3257
        TokEOF -> happyDoAction 64# tk action sts stk;
3019
3258
        TokKeyword KwLet happy_dollar_dollar -> cont 1#;
3020
3259
        TokKeyword KwIn happy_dollar_dollar -> cont 2#;
3021
3260
        TokKeyword KwWhere happy_dollar_dollar -> cont 3#;
3022
3261
        TokKeyword KwWith happy_dollar_dollar -> cont 4#;
3023
 
        TokKeyword KwPostulate happy_dollar_dollar -> cont 5#;
3024
 
        TokKeyword KwPrimitive happy_dollar_dollar -> cont 6#;
3025
 
        TokKeyword KwOpen happy_dollar_dollar -> cont 7#;
3026
 
        TokKeyword KwImport happy_dollar_dollar -> cont 8#;
3027
 
        TokKeyword KwUsing happy_dollar_dollar -> cont 9#;
3028
 
        TokKeyword KwHiding happy_dollar_dollar -> cont 10#;
3029
 
        TokKeyword KwRenaming happy_dollar_dollar -> cont 11#;
3030
 
        TokKeyword KwTo happy_dollar_dollar -> cont 12#;
3031
 
        TokKeyword KwPublic happy_dollar_dollar -> cont 13#;
3032
 
        TokKeyword KwModule happy_dollar_dollar -> cont 14#;
3033
 
        TokKeyword KwData happy_dollar_dollar -> cont 15#;
3034
 
        TokKeyword KwCoData happy_dollar_dollar -> cont 16#;
3035
 
        TokKeyword KwRecord happy_dollar_dollar -> cont 17#;
3036
 
        TokKeyword KwField happy_dollar_dollar -> cont 18#;
3037
 
        TokKeyword KwInfix happy_dollar_dollar -> cont 19#;
3038
 
        TokKeyword KwInfixL happy_dollar_dollar -> cont 20#;
3039
 
        TokKeyword KwInfixR happy_dollar_dollar -> cont 21#;
3040
 
        TokKeyword KwMutual happy_dollar_dollar -> cont 22#;
3041
 
        TokKeyword KwAbstract happy_dollar_dollar -> cont 23#;
3042
 
        TokKeyword KwPrivate happy_dollar_dollar -> cont 24#;
3043
 
        TokKeyword KwProp happy_dollar_dollar -> cont 25#;
3044
 
        TokKeyword KwSet happy_dollar_dollar -> cont 26#;
3045
 
        TokKeyword KwForall happy_dollar_dollar -> cont 27#;
3046
 
        TokKeyword KwOPTIONS happy_dollar_dollar -> cont 28#;
3047
 
        TokKeyword KwBUILTIN happy_dollar_dollar -> cont 29#;
3048
 
        TokKeyword KwIMPORT happy_dollar_dollar -> cont 30#;
3049
 
        TokKeyword KwCOMPILED happy_dollar_dollar -> cont 31#;
3050
 
        TokKeyword KwCOMPILED_DATA happy_dollar_dollar -> cont 32#;
3051
 
        TokKeyword KwCOMPILED_TYPE happy_dollar_dollar -> cont 33#;
3052
 
        TokKeyword KwLINE happy_dollar_dollar -> cont 34#;
3053
 
        TokSetN happy_dollar_dollar -> cont 35#;
3054
 
        TokTeX happy_dollar_dollar -> cont 36#;
3055
 
        TokComment happy_dollar_dollar -> cont 37#;
3056
 
        TokSymbol SymEllipsis happy_dollar_dollar -> cont 38#;
3057
 
        TokSymbol SymDot happy_dollar_dollar -> cont 39#;
3058
 
        TokSymbol SymSemi happy_dollar_dollar -> cont 40#;
3059
 
        TokSymbol SymColon happy_dollar_dollar -> cont 41#;
3060
 
        TokSymbol SymEqual happy_dollar_dollar -> cont 42#;
3061
 
        TokSymbol SymUnderscore happy_dollar_dollar -> cont 43#;
3062
 
        TokSymbol SymQuestionMark happy_dollar_dollar -> cont 44#;
3063
 
        TokSymbol SymArrow happy_dollar_dollar -> cont 45#;
3064
 
        TokSymbol SymLambda happy_dollar_dollar -> cont 46#;
3065
 
        TokSymbol SymAs happy_dollar_dollar -> cont 47#;
3066
 
        TokSymbol SymBar happy_dollar_dollar -> cont 48#;
3067
 
        TokSymbol SymOpenParen happy_dollar_dollar -> cont 49#;
3068
 
        TokSymbol SymCloseParen happy_dollar_dollar -> cont 50#;
3069
 
        TokSymbol SymOpenBrace happy_dollar_dollar -> cont 51#;
3070
 
        TokSymbol SymCloseBrace happy_dollar_dollar -> cont 52#;
3071
 
        TokSymbol SymOpenVirtualBrace happy_dollar_dollar -> cont 53#;
3072
 
        TokSymbol SymCloseVirtualBrace happy_dollar_dollar -> cont 54#;
3073
 
        TokSymbol SymVirtualSemi happy_dollar_dollar -> cont 55#;
3074
 
        TokSymbol SymOpenPragma happy_dollar_dollar -> cont 56#;
3075
 
        TokSymbol SymClosePragma happy_dollar_dollar -> cont 57#;
3076
 
        TokId happy_dollar_dollar -> cont 58#;
3077
 
        TokQId happy_dollar_dollar -> cont 59#;
3078
 
        TokString happy_dollar_dollar -> cont 60#;
3079
 
        TokLiteral happy_dollar_dollar -> cont 61#;
 
3262
        TokKeyword KwRewrite happy_dollar_dollar -> cont 5#;
 
3263
        TokKeyword KwPostulate happy_dollar_dollar -> cont 6#;
 
3264
        TokKeyword KwPrimitive happy_dollar_dollar -> cont 7#;
 
3265
        TokKeyword KwOpen happy_dollar_dollar -> cont 8#;
 
3266
        TokKeyword KwImport happy_dollar_dollar -> cont 9#;
 
3267
        TokKeyword KwUsing happy_dollar_dollar -> cont 10#;
 
3268
        TokKeyword KwHiding happy_dollar_dollar -> cont 11#;
 
3269
        TokKeyword KwRenaming happy_dollar_dollar -> cont 12#;
 
3270
        TokKeyword KwTo happy_dollar_dollar -> cont 13#;
 
3271
        TokKeyword KwPublic happy_dollar_dollar -> cont 14#;
 
3272
        TokKeyword KwModule happy_dollar_dollar -> cont 15#;
 
3273
        TokKeyword KwData happy_dollar_dollar -> cont 16#;
 
3274
        TokKeyword KwCoData happy_dollar_dollar -> cont 17#;
 
3275
        TokKeyword KwRecord happy_dollar_dollar -> cont 18#;
 
3276
        TokKeyword KwConstructor happy_dollar_dollar -> cont 19#;
 
3277
        TokKeyword KwField happy_dollar_dollar -> cont 20#;
 
3278
        TokKeyword KwInfix happy_dollar_dollar -> cont 21#;
 
3279
        TokKeyword KwInfixL happy_dollar_dollar -> cont 22#;
 
3280
        TokKeyword KwInfixR happy_dollar_dollar -> cont 23#;
 
3281
        TokKeyword KwMutual happy_dollar_dollar -> cont 24#;
 
3282
        TokKeyword KwAbstract happy_dollar_dollar -> cont 25#;
 
3283
        TokKeyword KwPrivate happy_dollar_dollar -> cont 26#;
 
3284
        TokKeyword KwProp happy_dollar_dollar -> cont 27#;
 
3285
        TokKeyword KwSet happy_dollar_dollar -> cont 28#;
 
3286
        TokKeyword KwForall happy_dollar_dollar -> cont 29#;
 
3287
        TokKeyword KwOPTIONS happy_dollar_dollar -> cont 30#;
 
3288
        TokKeyword KwBUILTIN happy_dollar_dollar -> cont 31#;
 
3289
        TokKeyword KwIMPORT happy_dollar_dollar -> cont 32#;
 
3290
        TokKeyword KwIMPOSSIBLE happy_dollar_dollar -> cont 33#;
 
3291
        TokKeyword KwCOMPILED happy_dollar_dollar -> cont 34#;
 
3292
        TokKeyword KwCOMPILED_DATA happy_dollar_dollar -> cont 35#;
 
3293
        TokKeyword KwCOMPILED_TYPE happy_dollar_dollar -> cont 36#;
 
3294
        TokSetN happy_dollar_dollar -> cont 37#;
 
3295
        TokTeX happy_dollar_dollar -> cont 38#;
 
3296
        TokComment happy_dollar_dollar -> cont 39#;
 
3297
        TokSymbol SymEllipsis happy_dollar_dollar -> cont 40#;
 
3298
        TokSymbol SymDot happy_dollar_dollar -> cont 41#;
 
3299
        TokSymbol SymSemi happy_dollar_dollar -> cont 42#;
 
3300
        TokSymbol SymColon happy_dollar_dollar -> cont 43#;
 
3301
        TokSymbol SymEqual happy_dollar_dollar -> cont 44#;
 
3302
        TokSymbol SymUnderscore happy_dollar_dollar -> cont 45#;
 
3303
        TokSymbol SymQuestionMark happy_dollar_dollar -> cont 46#;
 
3304
        TokSymbol SymArrow happy_dollar_dollar -> cont 47#;
 
3305
        TokSymbol SymLambda happy_dollar_dollar -> cont 48#;
 
3306
        TokSymbol SymAs happy_dollar_dollar -> cont 49#;
 
3307
        TokSymbol SymBar happy_dollar_dollar -> cont 50#;
 
3308
        TokSymbol SymOpenParen happy_dollar_dollar -> cont 51#;
 
3309
        TokSymbol SymCloseParen happy_dollar_dollar -> cont 52#;
 
3310
        TokSymbol SymOpenBrace happy_dollar_dollar -> cont 53#;
 
3311
        TokSymbol SymCloseBrace happy_dollar_dollar -> cont 54#;
 
3312
        TokSymbol SymOpenVirtualBrace happy_dollar_dollar -> cont 55#;
 
3313
        TokSymbol SymCloseVirtualBrace happy_dollar_dollar -> cont 56#;
 
3314
        TokSymbol SymVirtualSemi happy_dollar_dollar -> cont 57#;
 
3315
        TokSymbol SymOpenPragma happy_dollar_dollar -> cont 58#;
 
3316
        TokSymbol SymClosePragma happy_dollar_dollar -> cont 59#;
 
3317
        TokId happy_dollar_dollar -> cont 60#;
 
3318
        TokQId happy_dollar_dollar -> cont 61#;
 
3319
        TokString happy_dollar_dollar -> cont 62#;
 
3320
        TokLiteral happy_dollar_dollar -> cont 63#;
3080
3321
        _ -> happyError' tk
3081
3322
        })
3082
3323
 
3096
3337
  happySomeParser = happyThen (happyParse 0#) (\x -> happyReturn (happyOut6 x))
3097
3338
 
3098
3339
exprParser = happySomeParser where
3099
 
  happySomeParser = happyThen (happyParse 1#) (\x -> happyReturn (happyOut24 x))
 
3340
  happySomeParser = happyThen (happyParse 1#) (\x -> happyReturn (happyOut26 x))
3100
3341
 
3101
3342
moduleParser = happySomeParser where
3102
3343
  happySomeParser = happyThen (happyParse 2#) (\x -> happyReturn (happyOut10 x))
3115
3356
exprParser :: Parser Expr
3116
3357
 
3117
3358
-- | Parse a module.
3118
 
moduleParser :: Parser ([Pragma], [Declaration])
 
3359
moduleParser :: Parser Module
3119
3360
 
3120
3361
 
3121
3362
{--------------------------------------------------------------------------
3199
3440
        names (Using xs)    = xs
3200
3441
        names (Hiding xs)   = xs
3201
3442
 
 
3443
-- | Breaks up a string into substrings. Returns every maximal
 
3444
-- subsequence of zero or more characters distinct from @'.'@.
 
3445
--
 
3446
-- > splitOnDots ""         == [""]
 
3447
-- > splitOnDots "foo.bar"  == ["foo", "bar"]
 
3448
-- > splitOnDots ".foo.bar" == ["", "foo", "bar"]
 
3449
-- > splitOnDots "foo.bar." == ["foo", "bar", ""]
 
3450
-- > splitOnDots "foo..bar" == ["foo", "", "bar"]
 
3451
splitOnDots :: String -> [String]
 
3452
splitOnDots ""        = [""]
 
3453
splitOnDots ('.' : s) = [] : splitOnDots s
 
3454
splitOnDots (c   : s) = case splitOnDots s of
 
3455
  p : ps -> (c : p) : ps
 
3456
 
 
3457
prop_splitOnDots = and
 
3458
  [ splitOnDots ""         == [""]
 
3459
  , splitOnDots "foo.bar"  == ["foo", "bar"]
 
3460
  , splitOnDots ".foo.bar" == ["", "foo", "bar"]
 
3461
  , splitOnDots "foo.bar." == ["foo", "bar", ""]
 
3462
  , splitOnDots "foo..bar" == ["foo", "", "bar"]
 
3463
  ]
 
3464
 
 
3465
-- | Returns 'True' iff the name is a valid Haskell (hierarchical)
 
3466
-- module name.
 
3467
validHaskellModuleName :: String -> Bool
 
3468
validHaskellModuleName = all ok . splitOnDots
 
3469
  where
 
3470
  -- Checks if a dot-less module name is well-formed.
 
3471
  ok :: String -> Bool
 
3472
  ok []      = False
 
3473
  ok (c : s) =
 
3474
    isUpper c &&
 
3475
    all (\c -> isLower c || c == '_' ||
 
3476
               isUpper c ||
 
3477
               generalCategory c == DecimalNumber ||
 
3478
               c == '\'')
 
3479
        s
 
3480
 
3202
3481
{--------------------------------------------------------------------------
3203
3482
    Patterns
3204
3483
 --------------------------------------------------------------------------}
3205
3484
 
3206
3485
-- | Turn an expression into a left hand side.
3207
 
exprToLHS :: Expr -> Parser ([Expr] -> LHS)
 
3486
exprToLHS :: Expr -> Parser ([Expr] -> [Expr] -> LHS)
3208
3487
exprToLHS e = case e of
3209
3488
  WithApp r e es -> LHS <$> exprToPattern e <*> mapM exprToPattern es
3210
3489
  _              -> LHS <$> exprToPattern e <*> return []
3231
3510
        _                       ->
3232
3511
          let Just pos = rStart $ getRange e in
3233
3512
          parseErrorAt pos $ "Not a valid pattern: " ++ show e
 
3513
 
 
3514
{--------------------------------------------------------------------------
 
3515
    Tests
 
3516
 --------------------------------------------------------------------------}
 
3517
 
 
3518
-- | Test suite.
 
3519
tests :: IO Bool
 
3520
tests = runTests "Agda.Syntax.Parser.Parser"
 
3521
  [ quickCheck' prop_splitOnDots
 
3522
  ]
3234
3523
{-# LINE 1 "templates/GenericTemplate.hs" #-}
3235
3524
{-# LINE 1 "templates/GenericTemplate.hs" #-}
3236
3525
{-# LINE 1 "<built-in>" #-}