1ParseOk
2  ( Module
3      SrcSpanInfo
4        { srcInfoSpan =
5            SrcSpan "tests/examples/NegativePatterns.hs" 1 1 16 1
6        , srcInfoPoints =
7            [ SrcSpan "tests/examples/NegativePatterns.hs" 1 1 1 1
8            , SrcSpan "tests/examples/NegativePatterns.hs" 1 1 1 1
9            , SrcSpan "tests/examples/NegativePatterns.hs" 1 1 1 1
10            , SrcSpan "tests/examples/NegativePatterns.hs" 2 1 2 1
11            , SrcSpan "tests/examples/NegativePatterns.hs" 3 1 3 1
12            , SrcSpan "tests/examples/NegativePatterns.hs" 4 1 4 1
13            , SrcSpan "tests/examples/NegativePatterns.hs" 6 1 6 1
14            , SrcSpan "tests/examples/NegativePatterns.hs" 8 1 8 1
15            , SrcSpan "tests/examples/NegativePatterns.hs" 9 1 9 1
16            , SrcSpan "tests/examples/NegativePatterns.hs" 10 1 10 1
17            , SrcSpan "tests/examples/NegativePatterns.hs" 12 1 12 1
18            , SrcSpan "tests/examples/NegativePatterns.hs" 13 1 13 1
19            , SrcSpan "tests/examples/NegativePatterns.hs" 14 1 14 1
20            , SrcSpan "tests/examples/NegativePatterns.hs" 15 1 15 1
21            , SrcSpan "tests/examples/NegativePatterns.hs" 16 1 16 1
22            , SrcSpan "tests/examples/NegativePatterns.hs" 16 1 16 1
23            ]
24        }
25      Nothing
26      []
27      []
28      [ FunBind
29          SrcSpanInfo
30            { srcInfoSpan =
31                SrcSpan "tests/examples/NegativePatterns.hs" 1 1 4 15
32            , srcInfoPoints = []
33            }
34          [ Match
35              SrcSpanInfo
36                { srcInfoSpan =
37                    SrcSpan "tests/examples/NegativePatterns.hs" 1 1 1 9
38                , srcInfoPoints = []
39                }
40              (Ident
41                 SrcSpanInfo
42                   { srcInfoSpan =
43                       SrcSpan "tests/examples/NegativePatterns.hs" 1 1 1 2
44                   , srcInfoPoints = []
45                   }
46                 "f")
47              [ PLit
48                  SrcSpanInfo
49                    { srcInfoSpan =
50                        SrcSpan "tests/examples/NegativePatterns.hs" 1 3 1 4
51                    , srcInfoPoints = []
52                    }
53                  (Signless
54                     SrcSpanInfo
55                       { srcInfoSpan =
56                           SrcSpan "tests/examples/NegativePatterns.hs" 1 3 1 4
57                       , srcInfoPoints = []
58                       })
59                  (Int
60                     SrcSpanInfo
61                       { srcInfoSpan =
62                           SrcSpan "tests/examples/NegativePatterns.hs" 1 3 1 4
63                       , srcInfoPoints = []
64                       }
65                     1
66                     "1")
67              ]
68              (UnGuardedRhs
69                 SrcSpanInfo
70                   { srcInfoSpan =
71                       SrcSpan "tests/examples/NegativePatterns.hs" 1 5 1 9
72                   , srcInfoPoints =
73                       [ SrcSpan "tests/examples/NegativePatterns.hs" 1 5 1 6 ]
74                   }
75                 (NegApp
76                    SrcSpanInfo
77                      { srcInfoSpan =
78                          SrcSpan "tests/examples/NegativePatterns.hs" 1 7 1 9
79                      , srcInfoPoints =
80                          [ SrcSpan "tests/examples/NegativePatterns.hs" 1 7 1 8 ]
81                      }
82                    (Lit
83                       SrcSpanInfo
84                         { srcInfoSpan =
85                             SrcSpan "tests/examples/NegativePatterns.hs" 1 8 1 9
86                         , srcInfoPoints = []
87                         }
88                       (Int
89                          SrcSpanInfo
90                            { srcInfoSpan =
91                                SrcSpan "tests/examples/NegativePatterns.hs" 1 8 1 9
92                            , srcInfoPoints = []
93                            }
94                          1
95                          "1"))))
96              Nothing
97          , Match
98              SrcSpanInfo
99                { srcInfoSpan =
100                    SrcSpan "tests/examples/NegativePatterns.hs" 2 1 2 11
101                , srcInfoPoints = []
102                }
103              (Ident
104                 SrcSpanInfo
105                   { srcInfoSpan =
106                       SrcSpan "tests/examples/NegativePatterns.hs" 2 1 2 2
107                   , srcInfoPoints = []
108                   }
109                 "f")
110              [ PParen
111                  SrcSpanInfo
112                    { srcInfoSpan =
113                        SrcSpan "tests/examples/NegativePatterns.hs" 2 3 2 7
114                    , srcInfoPoints =
115                        [ SrcSpan "tests/examples/NegativePatterns.hs" 2 3 2 4
116                        , SrcSpan "tests/examples/NegativePatterns.hs" 2 6 2 7
117                        ]
118                    }
119                  (PLit
120                     SrcSpanInfo
121                       { srcInfoSpan =
122                           SrcSpan "tests/examples/NegativePatterns.hs" 2 4 2 6
123                       , srcInfoPoints =
124                           [ SrcSpan "tests/examples/NegativePatterns.hs" 2 4 2 5 ]
125                       }
126                     (Negative
127                        SrcSpanInfo
128                          { srcInfoSpan =
129                              SrcSpan "tests/examples/NegativePatterns.hs" 2 4 2 5
130                          , srcInfoPoints =
131                              [ SrcSpan "tests/examples/NegativePatterns.hs" 2 4 2 5 ]
132                          })
133                     (Int
134                        SrcSpanInfo
135                          { srcInfoSpan =
136                              SrcSpan "tests/examples/NegativePatterns.hs" 2 5 2 6
137                          , srcInfoPoints = []
138                          }
139                        1
140                        "1"))
141              ]
142              (UnGuardedRhs
143                 SrcSpanInfo
144                   { srcInfoSpan =
145                       SrcSpan "tests/examples/NegativePatterns.hs" 2 8 2 11
146                   , srcInfoPoints =
147                       [ SrcSpan "tests/examples/NegativePatterns.hs" 2 8 2 9 ]
148                   }
149                 (Lit
150                    SrcSpanInfo
151                      { srcInfoSpan =
152                          SrcSpan "tests/examples/NegativePatterns.hs" 2 10 2 11
153                      , srcInfoPoints = []
154                      }
155                    (Int
156                       SrcSpanInfo
157                         { srcInfoSpan =
158                             SrcSpan "tests/examples/NegativePatterns.hs" 2 10 2 11
159                         , srcInfoPoints = []
160                         }
161                       1
162                       "1")))
163              Nothing
164          , Match
165              SrcSpanInfo
166                { srcInfoSpan =
167                    SrcSpan "tests/examples/NegativePatterns.hs" 3 1 3 13
168                , srcInfoPoints = []
169                }
170              (Ident
171                 SrcSpanInfo
172                   { srcInfoSpan =
173                       SrcSpan "tests/examples/NegativePatterns.hs" 3 1 3 2
174                   , srcInfoPoints = []
175                   }
176                 "f")
177              [ PParen
178                  SrcSpanInfo
179                    { srcInfoSpan =
180                        SrcSpan "tests/examples/NegativePatterns.hs" 3 3 3 9
181                    , srcInfoPoints =
182                        [ SrcSpan "tests/examples/NegativePatterns.hs" 3 3 3 4
183                        , SrcSpan "tests/examples/NegativePatterns.hs" 3 8 3 9
184                        ]
185                    }
186                  (PLit
187                     SrcSpanInfo
188                       { srcInfoSpan =
189                           SrcSpan "tests/examples/NegativePatterns.hs" 3 5 3 8
190                       , srcInfoPoints =
191                           [ SrcSpan "tests/examples/NegativePatterns.hs" 3 5 3 6 ]
192                       }
193                     (Negative
194                        SrcSpanInfo
195                          { srcInfoSpan =
196                              SrcSpan "tests/examples/NegativePatterns.hs" 3 5 3 6
197                          , srcInfoPoints =
198                              [ SrcSpan "tests/examples/NegativePatterns.hs" 3 5 3 6 ]
199                          })
200                     (Int
201                        SrcSpanInfo
202                          { srcInfoSpan =
203                              SrcSpan "tests/examples/NegativePatterns.hs" 3 7 3 8
204                          , srcInfoPoints = []
205                          }
206                        2
207                        "2"))
208              ]
209              (UnGuardedRhs
210                 SrcSpanInfo
211                   { srcInfoSpan =
212                       SrcSpan "tests/examples/NegativePatterns.hs" 3 10 3 13
213                   , srcInfoPoints =
214                       [ SrcSpan "tests/examples/NegativePatterns.hs" 3 10 3 11 ]
215                   }
216                 (Lit
217                    SrcSpanInfo
218                      { srcInfoSpan =
219                          SrcSpan "tests/examples/NegativePatterns.hs" 3 12 3 13
220                      , srcInfoPoints = []
221                      }
222                    (Int
223                       SrcSpanInfo
224                         { srcInfoSpan =
225                             SrcSpan "tests/examples/NegativePatterns.hs" 3 12 3 13
226                         , srcInfoPoints = []
227                         }
228                       2
229                       "2")))
230              Nothing
231          , Match
232              SrcSpanInfo
233                { srcInfoSpan =
234                    SrcSpan "tests/examples/NegativePatterns.hs" 4 1 4 15
235                , srcInfoPoints = []
236                }
237              (Ident
238                 SrcSpanInfo
239                   { srcInfoSpan =
240                       SrcSpan "tests/examples/NegativePatterns.hs" 4 1 4 2
241                   , srcInfoPoints = []
242                   }
243                 "f")
244              [ PParen
245                  SrcSpanInfo
246                    { srcInfoSpan =
247                        SrcSpan "tests/examples/NegativePatterns.hs" 4 3 4 11
248                    , srcInfoPoints =
249                        [ SrcSpan "tests/examples/NegativePatterns.hs" 4 3 4 4
250                        , SrcSpan "tests/examples/NegativePatterns.hs" 4 10 4 11
251                        ]
252                    }
253                  (PLit
254                     SrcSpanInfo
255                       { srcInfoSpan =
256                           SrcSpan "tests/examples/NegativePatterns.hs" 4 6 4 10
257                       , srcInfoPoints =
258                           [ SrcSpan "tests/examples/NegativePatterns.hs" 4 6 4 7 ]
259                       }
260                     (Negative
261                        SrcSpanInfo
262                          { srcInfoSpan =
263                              SrcSpan "tests/examples/NegativePatterns.hs" 4 6 4 7
264                          , srcInfoPoints =
265                              [ SrcSpan "tests/examples/NegativePatterns.hs" 4 6 4 7 ]
266                          })
267                     (Int
268                        SrcSpanInfo
269                          { srcInfoSpan =
270                              SrcSpan "tests/examples/NegativePatterns.hs" 4 9 4 10
271                          , srcInfoPoints = []
272                          }
273                        3
274                        "3"))
275              ]
276              (UnGuardedRhs
277                 SrcSpanInfo
278                   { srcInfoSpan =
279                       SrcSpan "tests/examples/NegativePatterns.hs" 4 12 4 15
280                   , srcInfoPoints =
281                       [ SrcSpan "tests/examples/NegativePatterns.hs" 4 12 4 13 ]
282                   }
283                 (Lit
284                    SrcSpanInfo
285                      { srcInfoSpan =
286                          SrcSpan "tests/examples/NegativePatterns.hs" 4 14 4 15
287                      , srcInfoPoints = []
288                      }
289                    (Int
290                       SrcSpanInfo
291                         { srcInfoSpan =
292                             SrcSpan "tests/examples/NegativePatterns.hs" 4 14 4 15
293                         , srcInfoPoints = []
294                         }
295                       3
296                       "3")))
297              Nothing
298          ]
299      , DataDecl
300          SrcSpanInfo
301            { srcInfoSpan =
302                SrcSpan "tests/examples/NegativePatterns.hs" 6 1 6 45
303            , srcInfoPoints =
304                [ SrcSpan "tests/examples/NegativePatterns.hs" 6 10 6 11
305                , SrcSpan "tests/examples/NegativePatterns.hs" 6 23 6 24
306                , SrcSpan "tests/examples/NegativePatterns.hs" 6 34 6 35
307                ]
308            }
309          (DataType
310             SrcSpanInfo
311               { srcInfoSpan =
312                   SrcSpan "tests/examples/NegativePatterns.hs" 6 1 6 5
313               , srcInfoPoints = []
314               })
315          Nothing
316          (DHApp
317             SrcSpanInfo
318               { srcInfoSpan =
319                   SrcSpan "tests/examples/NegativePatterns.hs" 6 6 6 9
320               , srcInfoPoints = []
321               }
322             (DHead
323                SrcSpanInfo
324                  { srcInfoSpan =
325                      SrcSpan "tests/examples/NegativePatterns.hs" 6 6 6 7
326                  , srcInfoPoints = []
327                  }
328                (Ident
329                   SrcSpanInfo
330                     { srcInfoSpan =
331                         SrcSpan "tests/examples/NegativePatterns.hs" 6 6 6 7
332                     , srcInfoPoints = []
333                     }
334                   "Z"))
335             (UnkindedVar
336                SrcSpanInfo
337                  { srcInfoSpan =
338                      SrcSpan "tests/examples/NegativePatterns.hs" 6 8 6 9
339                  , srcInfoPoints = []
340                  }
341                (Ident
342                   SrcSpanInfo
343                     { srcInfoSpan =
344                         SrcSpan "tests/examples/NegativePatterns.hs" 6 8 6 9
345                     , srcInfoPoints = []
346                     }
347                   "a")))
348          [ QualConDecl
349              SrcSpanInfo
350                { srcInfoSpan =
351                    SrcSpan "tests/examples/NegativePatterns.hs" 6 12 6 22
352                , srcInfoPoints = []
353                }
354              Nothing
355              Nothing
356              (ConDecl
357                 SrcSpanInfo
358                   { srcInfoSpan =
359                       SrcSpan "tests/examples/NegativePatterns.hs" 6 12 6 22
360                   , srcInfoPoints = []
361                   }
362                 (Ident
363                    SrcSpanInfo
364                      { srcInfoSpan =
365                          SrcSpan "tests/examples/NegativePatterns.hs" 6 12 6 18
366                      , srcInfoPoints = []
367                      }
368                    "Higher")
369                 [ TyVar
370                     SrcSpanInfo
371                       { srcInfoSpan =
372                           SrcSpan "tests/examples/NegativePatterns.hs" 6 19 6 20
373                       , srcInfoPoints = []
374                       }
375                     (Ident
376                        SrcSpanInfo
377                          { srcInfoSpan =
378                              SrcSpan "tests/examples/NegativePatterns.hs" 6 19 6 20
379                          , srcInfoPoints = []
380                          }
381                        "a")
382                 , TyVar
383                     SrcSpanInfo
384                       { srcInfoSpan =
385                           SrcSpan "tests/examples/NegativePatterns.hs" 6 21 6 22
386                       , srcInfoPoints = []
387                       }
388                     (Ident
389                        SrcSpanInfo
390                          { srcInfoSpan =
391                              SrcSpan "tests/examples/NegativePatterns.hs" 6 21 6 22
392                          , srcInfoPoints = []
393                          }
394                        "a")
395                 ])
396          , QualConDecl
397              SrcSpanInfo
398                { srcInfoSpan =
399                    SrcSpan "tests/examples/NegativePatterns.hs" 6 25 6 33
400                , srcInfoPoints = []
401                }
402              Nothing
403              Nothing
404              (ConDecl
405                 SrcSpanInfo
406                   { srcInfoSpan =
407                       SrcSpan "tests/examples/NegativePatterns.hs" 6 25 6 33
408                   , srcInfoPoints = []
409                   }
410                 (Ident
411                    SrcSpanInfo
412                      { srcInfoSpan =
413                          SrcSpan "tests/examples/NegativePatterns.hs" 6 25 6 29
414                      , srcInfoPoints = []
415                      }
416                    "Same")
417                 [ TyVar
418                     SrcSpanInfo
419                       { srcInfoSpan =
420                           SrcSpan "tests/examples/NegativePatterns.hs" 6 30 6 31
421                       , srcInfoPoints = []
422                       }
423                     (Ident
424                        SrcSpanInfo
425                          { srcInfoSpan =
426                              SrcSpan "tests/examples/NegativePatterns.hs" 6 30 6 31
427                          , srcInfoPoints = []
428                          }
429                        "a")
430                 , TyVar
431                     SrcSpanInfo
432                       { srcInfoSpan =
433                           SrcSpan "tests/examples/NegativePatterns.hs" 6 32 6 33
434                       , srcInfoPoints = []
435                       }
436                     (Ident
437                        SrcSpanInfo
438                          { srcInfoSpan =
439                              SrcSpan "tests/examples/NegativePatterns.hs" 6 32 6 33
440                          , srcInfoPoints = []
441                          }
442                        "a")
443                 ])
444          , QualConDecl
445              SrcSpanInfo
446                { srcInfoSpan =
447                    SrcSpan "tests/examples/NegativePatterns.hs" 6 36 6 45
448                , srcInfoPoints = []
449                }
450              Nothing
451              Nothing
452              (ConDecl
453                 SrcSpanInfo
454                   { srcInfoSpan =
455                       SrcSpan "tests/examples/NegativePatterns.hs" 6 36 6 45
456                   , srcInfoPoints = []
457                   }
458                 (Ident
459                    SrcSpanInfo
460                      { srcInfoSpan =
461                          SrcSpan "tests/examples/NegativePatterns.hs" 6 36 6 41
462                      , srcInfoPoints = []
463                      }
464                    "Lower")
465                 [ TyVar
466                     SrcSpanInfo
467                       { srcInfoSpan =
468                           SrcSpan "tests/examples/NegativePatterns.hs" 6 42 6 43
469                       , srcInfoPoints = []
470                       }
471                     (Ident
472                        SrcSpanInfo
473                          { srcInfoSpan =
474                              SrcSpan "tests/examples/NegativePatterns.hs" 6 42 6 43
475                          , srcInfoPoints = []
476                          }
477                        "a")
478                 , TyVar
479                     SrcSpanInfo
480                       { srcInfoSpan =
481                           SrcSpan "tests/examples/NegativePatterns.hs" 6 44 6 45
482                       , srcInfoPoints = []
483                       }
484                     (Ident
485                        SrcSpanInfo
486                          { srcInfoSpan =
487                              SrcSpan "tests/examples/NegativePatterns.hs" 6 44 6 45
488                          , srcInfoPoints = []
489                          }
490                        "a")
491                 ])
492          ]
493          []
494      , InfixDecl
495          SrcSpanInfo
496            { srcInfoSpan =
497                SrcSpan "tests/examples/NegativePatterns.hs" 8 1 8 18
498            , srcInfoPoints =
499                [ SrcSpan "tests/examples/NegativePatterns.hs" 8 8 8 9 ]
500            }
501          (AssocRight
502             SrcSpanInfo
503               { srcInfoSpan =
504                   SrcSpan "tests/examples/NegativePatterns.hs" 8 1 8 7
505               , srcInfoPoints = []
506               })
507          (Just 7)
508          [ ConOp
509              SrcSpanInfo
510                { srcInfoSpan =
511                    SrcSpan "tests/examples/NegativePatterns.hs" 8 10 8 18
512                , srcInfoPoints =
513                    [ SrcSpan "tests/examples/NegativePatterns.hs" 8 10 8 11
514                    , SrcSpan "tests/examples/NegativePatterns.hs" 8 11 8 17
515                    , SrcSpan "tests/examples/NegativePatterns.hs" 8 17 8 18
516                    ]
517                }
518              (Ident
519                 SrcSpanInfo
520                   { srcInfoSpan =
521                       SrcSpan "tests/examples/NegativePatterns.hs" 8 10 8 18
522                   , srcInfoPoints =
523                       [ SrcSpan "tests/examples/NegativePatterns.hs" 8 10 8 11
524                       , SrcSpan "tests/examples/NegativePatterns.hs" 8 11 8 17
525                       , SrcSpan "tests/examples/NegativePatterns.hs" 8 17 8 18
526                       ]
527                   }
528                 "Higher")
529          ]
530      , InfixDecl
531          SrcSpanInfo
532            { srcInfoSpan =
533                SrcSpan "tests/examples/NegativePatterns.hs" 9 1 9 16
534            , srcInfoPoints =
535                [ SrcSpan "tests/examples/NegativePatterns.hs" 9 8 9 9 ]
536            }
537          (AssocRight
538             SrcSpanInfo
539               { srcInfoSpan =
540                   SrcSpan "tests/examples/NegativePatterns.hs" 9 1 9 7
541               , srcInfoPoints = []
542               })
543          (Just 6)
544          [ ConOp
545              SrcSpanInfo
546                { srcInfoSpan =
547                    SrcSpan "tests/examples/NegativePatterns.hs" 9 10 9 16
548                , srcInfoPoints =
549                    [ SrcSpan "tests/examples/NegativePatterns.hs" 9 10 9 11
550                    , SrcSpan "tests/examples/NegativePatterns.hs" 9 11 9 15
551                    , SrcSpan "tests/examples/NegativePatterns.hs" 9 15 9 16
552                    ]
553                }
554              (Ident
555                 SrcSpanInfo
556                   { srcInfoSpan =
557                       SrcSpan "tests/examples/NegativePatterns.hs" 9 10 9 16
558                   , srcInfoPoints =
559                       [ SrcSpan "tests/examples/NegativePatterns.hs" 9 10 9 11
560                       , SrcSpan "tests/examples/NegativePatterns.hs" 9 11 9 15
561                       , SrcSpan "tests/examples/NegativePatterns.hs" 9 15 9 16
562                       ]
563                   }
564                 "Same")
565          ]
566      , InfixDecl
567          SrcSpanInfo
568            { srcInfoSpan =
569                SrcSpan "tests/examples/NegativePatterns.hs" 10 1 10 17
570            , srcInfoPoints =
571                [ SrcSpan "tests/examples/NegativePatterns.hs" 10 8 10 9 ]
572            }
573          (AssocRight
574             SrcSpanInfo
575               { srcInfoSpan =
576                   SrcSpan "tests/examples/NegativePatterns.hs" 10 1 10 7
577               , srcInfoPoints = []
578               })
579          (Just 5)
580          [ ConOp
581              SrcSpanInfo
582                { srcInfoSpan =
583                    SrcSpan "tests/examples/NegativePatterns.hs" 10 10 10 17
584                , srcInfoPoints =
585                    [ SrcSpan "tests/examples/NegativePatterns.hs" 10 10 10 11
586                    , SrcSpan "tests/examples/NegativePatterns.hs" 10 11 10 16
587                    , SrcSpan "tests/examples/NegativePatterns.hs" 10 16 10 17
588                    ]
589                }
590              (Ident
591                 SrcSpanInfo
592                   { srcInfoSpan =
593                       SrcSpan "tests/examples/NegativePatterns.hs" 10 10 10 17
594                   , srcInfoPoints =
595                       [ SrcSpan "tests/examples/NegativePatterns.hs" 10 10 10 11
596                       , SrcSpan "tests/examples/NegativePatterns.hs" 10 11 10 16
597                       , SrcSpan "tests/examples/NegativePatterns.hs" 10 16 10 17
598                       ]
599                   }
600                 "Lower")
601          ]
602      , TypeSig
603          SrcSpanInfo
604            { srcInfoSpan =
605                SrcSpan "tests/examples/NegativePatterns.hs" 12 1 12 17
606            , srcInfoPoints =
607                [ SrcSpan "tests/examples/NegativePatterns.hs" 12 3 12 5 ]
608            }
609          [ Ident
610              SrcSpanInfo
611                { srcInfoSpan =
612                    SrcSpan "tests/examples/NegativePatterns.hs" 12 1 12 2
613                , srcInfoPoints = []
614                }
615              "g"
616          ]
617          (TyFun
618             SrcSpanInfo
619               { srcInfoSpan =
620                   SrcSpan "tests/examples/NegativePatterns.hs" 12 6 12 17
621               , srcInfoPoints =
622                   [ SrcSpan "tests/examples/NegativePatterns.hs" 12 12 12 14 ]
623               }
624             (TyApp
625                SrcSpanInfo
626                  { srcInfoSpan =
627                      SrcSpan "tests/examples/NegativePatterns.hs" 12 6 12 11
628                  , srcInfoPoints = []
629                  }
630                (TyCon
631                   SrcSpanInfo
632                     { srcInfoSpan =
633                         SrcSpan "tests/examples/NegativePatterns.hs" 12 6 12 7
634                     , srcInfoPoints = []
635                     }
636                   (UnQual
637                      SrcSpanInfo
638                        { srcInfoSpan =
639                            SrcSpan "tests/examples/NegativePatterns.hs" 12 6 12 7
640                        , srcInfoPoints = []
641                        }
642                      (Ident
643                         SrcSpanInfo
644                           { srcInfoSpan =
645                               SrcSpan "tests/examples/NegativePatterns.hs" 12 6 12 7
646                           , srcInfoPoints = []
647                           }
648                         "Z")))
649                (TyCon
650                   SrcSpanInfo
651                     { srcInfoSpan =
652                         SrcSpan "tests/examples/NegativePatterns.hs" 12 8 12 11
653                     , srcInfoPoints = []
654                     }
655                   (UnQual
656                      SrcSpanInfo
657                        { srcInfoSpan =
658                            SrcSpan "tests/examples/NegativePatterns.hs" 12 8 12 11
659                        , srcInfoPoints = []
660                        }
661                      (Ident
662                         SrcSpanInfo
663                           { srcInfoSpan =
664                               SrcSpan "tests/examples/NegativePatterns.hs" 12 8 12 11
665                           , srcInfoPoints = []
666                           }
667                         "Int"))))
668             (TyCon
669                SrcSpanInfo
670                  { srcInfoSpan =
671                      SrcSpan "tests/examples/NegativePatterns.hs" 12 15 12 17
672                  , srcInfoPoints =
673                      [ SrcSpan "tests/examples/NegativePatterns.hs" 12 15 12 16
674                      , SrcSpan "tests/examples/NegativePatterns.hs" 12 16 12 17
675                      ]
676                  }
677                (Special
678                   SrcSpanInfo
679                     { srcInfoSpan =
680                         SrcSpan "tests/examples/NegativePatterns.hs" 12 15 12 17
681                     , srcInfoPoints =
682                         [ SrcSpan "tests/examples/NegativePatterns.hs" 12 15 12 16
683                         , SrcSpan "tests/examples/NegativePatterns.hs" 12 16 12 17
684                         ]
685                     }
686                   (UnitCon
687                      SrcSpanInfo
688                        { srcInfoSpan =
689                            SrcSpan "tests/examples/NegativePatterns.hs" 12 15 12 17
690                        , srcInfoPoints =
691                            [ SrcSpan "tests/examples/NegativePatterns.hs" 12 15 12 16
692                            , SrcSpan "tests/examples/NegativePatterns.hs" 12 16 12 17
693                            ]
694                        }))))
695      , FunBind
696          SrcSpanInfo
697            { srcInfoSpan =
698                SrcSpan "tests/examples/NegativePatterns.hs" 13 1 15 27
699            , srcInfoPoints = []
700            }
701          [ Match
702              SrcSpanInfo
703                { srcInfoSpan =
704                    SrcSpan "tests/examples/NegativePatterns.hs" 13 1 13 27
705                , srcInfoPoints = []
706                }
707              (Ident
708                 SrcSpanInfo
709                   { srcInfoSpan =
710                       SrcSpan "tests/examples/NegativePatterns.hs" 13 1 13 2
711                   , srcInfoPoints = []
712                   }
713                 "g")
714              [ PParen
715                  SrcSpanInfo
716                    { srcInfoSpan =
717                        SrcSpan "tests/examples/NegativePatterns.hs" 13 3 13 22
718                    , srcInfoPoints =
719                        [ SrcSpan "tests/examples/NegativePatterns.hs" 13 3 13 4
720                        , SrcSpan "tests/examples/NegativePatterns.hs" 13 21 13 22
721                        ]
722                    }
723                  (PInfixApp
724                     SrcSpanInfo
725                       { srcInfoSpan =
726                           SrcSpan "tests/examples/NegativePatterns.hs" 13 7 13 21
727                       , srcInfoPoints = []
728                       }
729                     (PLit
730                        SrcSpanInfo
731                          { srcInfoSpan =
732                              SrcSpan "tests/examples/NegativePatterns.hs" 13 7 13 9
733                          , srcInfoPoints =
734                              [ SrcSpan "tests/examples/NegativePatterns.hs" 13 7 13 8 ]
735                          }
736                        (Negative
737                           SrcSpanInfo
738                             { srcInfoSpan =
739                                 SrcSpan "tests/examples/NegativePatterns.hs" 13 7 13 8
740                             , srcInfoPoints =
741                                 [ SrcSpan "tests/examples/NegativePatterns.hs" 13 7 13 8 ]
742                             })
743                        (Int
744                           SrcSpanInfo
745                             { srcInfoSpan =
746                                 SrcSpan "tests/examples/NegativePatterns.hs" 13 8 13 9
747                             , srcInfoPoints = []
748                             }
749                           1
750                           "1"))
751                     (UnQual
752                        SrcSpanInfo
753                          { srcInfoSpan =
754                              SrcSpan "tests/examples/NegativePatterns.hs" 13 10 13 18
755                          , srcInfoPoints =
756                              [ SrcSpan "tests/examples/NegativePatterns.hs" 13 10 13 11
757                              , SrcSpan "tests/examples/NegativePatterns.hs" 13 11 13 17
758                              , SrcSpan "tests/examples/NegativePatterns.hs" 13 17 13 18
759                              ]
760                          }
761                        (Ident
762                           SrcSpanInfo
763                             { srcInfoSpan =
764                                 SrcSpan "tests/examples/NegativePatterns.hs" 13 11 13 17
765                             , srcInfoPoints = []
766                             }
767                           "Higher"))
768                     (PVar
769                        SrcSpanInfo
770                          { srcInfoSpan =
771                              SrcSpan "tests/examples/NegativePatterns.hs" 13 20 13 21
772                          , srcInfoPoints = []
773                          }
774                        (Ident
775                           SrcSpanInfo
776                             { srcInfoSpan =
777                                 SrcSpan "tests/examples/NegativePatterns.hs" 13 20 13 21
778                             , srcInfoPoints = []
779                             }
780                           "x")))
781              ]
782              (UnGuardedRhs
783                 SrcSpanInfo
784                   { srcInfoSpan =
785                       SrcSpan "tests/examples/NegativePatterns.hs" 13 23 13 27
786                   , srcInfoPoints =
787                       [ SrcSpan "tests/examples/NegativePatterns.hs" 13 23 13 24 ]
788                   }
789                 (Con
790                    SrcSpanInfo
791                      { srcInfoSpan =
792                          SrcSpan "tests/examples/NegativePatterns.hs" 13 25 13 27
793                      , srcInfoPoints =
794                          [ SrcSpan "tests/examples/NegativePatterns.hs" 13 25 13 26
795                          , SrcSpan "tests/examples/NegativePatterns.hs" 13 26 13 27
796                          ]
797                      }
798                    (Special
799                       SrcSpanInfo
800                         { srcInfoSpan =
801                             SrcSpan "tests/examples/NegativePatterns.hs" 13 25 13 27
802                         , srcInfoPoints =
803                             [ SrcSpan "tests/examples/NegativePatterns.hs" 13 25 13 26
804                             , SrcSpan "tests/examples/NegativePatterns.hs" 13 26 13 27
805                             ]
806                         }
807                       (UnitCon
808                          SrcSpanInfo
809                            { srcInfoSpan =
810                                SrcSpan "tests/examples/NegativePatterns.hs" 13 25 13 27
811                            , srcInfoPoints =
812                                [ SrcSpan "tests/examples/NegativePatterns.hs" 13 25 13 26
813                                , SrcSpan "tests/examples/NegativePatterns.hs" 13 26 13 27
814                                ]
815                            }))))
816              Nothing
817          , Match
818              SrcSpanInfo
819                { srcInfoSpan =
820                    SrcSpan "tests/examples/NegativePatterns.hs" 14 1 14 27
821                , srcInfoPoints = []
822                }
823              (Ident
824                 SrcSpanInfo
825                   { srcInfoSpan =
826                       SrcSpan "tests/examples/NegativePatterns.hs" 14 1 14 2
827                   , srcInfoPoints = []
828                   }
829                 "g")
830              [ PParen
831                  SrcSpanInfo
832                    { srcInfoSpan =
833                        SrcSpan "tests/examples/NegativePatterns.hs" 14 3 14 22
834                    , srcInfoPoints =
835                        [ SrcSpan "tests/examples/NegativePatterns.hs" 14 3 14 4
836                        , SrcSpan "tests/examples/NegativePatterns.hs" 14 21 14 22
837                        ]
838                    }
839                  (PInfixApp
840                     SrcSpanInfo
841                       { srcInfoSpan =
842                           SrcSpan "tests/examples/NegativePatterns.hs" 14 6 14 21
843                       , srcInfoPoints = []
844                       }
845                     (PLit
846                        SrcSpanInfo
847                          { srcInfoSpan =
848                              SrcSpan "tests/examples/NegativePatterns.hs" 14 6 14 10
849                          , srcInfoPoints =
850                              [ SrcSpan "tests/examples/NegativePatterns.hs" 14 6 14 7 ]
851                          }
852                        (Negative
853                           SrcSpanInfo
854                             { srcInfoSpan =
855                                 SrcSpan "tests/examples/NegativePatterns.hs" 14 6 14 7
856                             , srcInfoPoints =
857                                 [ SrcSpan "tests/examples/NegativePatterns.hs" 14 6 14 7 ]
858                             })
859                        (Int
860                           SrcSpanInfo
861                             { srcInfoSpan =
862                                 SrcSpan "tests/examples/NegativePatterns.hs" 14 9 14 10
863                             , srcInfoPoints = []
864                             }
865                           2
866                           "2"))
867                     (UnQual
868                        SrcSpanInfo
869                          { srcInfoSpan =
870                              SrcSpan "tests/examples/NegativePatterns.hs" 14 11 14 17
871                          , srcInfoPoints =
872                              [ SrcSpan "tests/examples/NegativePatterns.hs" 14 11 14 12
873                              , SrcSpan "tests/examples/NegativePatterns.hs" 14 12 14 16
874                              , SrcSpan "tests/examples/NegativePatterns.hs" 14 16 14 17
875                              ]
876                          }
877                        (Ident
878                           SrcSpanInfo
879                             { srcInfoSpan =
880                                 SrcSpan "tests/examples/NegativePatterns.hs" 14 12 14 16
881                             , srcInfoPoints = []
882                             }
883                           "Same"))
884                     (PVar
885                        SrcSpanInfo
886                          { srcInfoSpan =
887                              SrcSpan "tests/examples/NegativePatterns.hs" 14 20 14 21
888                          , srcInfoPoints = []
889                          }
890                        (Ident
891                           SrcSpanInfo
892                             { srcInfoSpan =
893                                 SrcSpan "tests/examples/NegativePatterns.hs" 14 20 14 21
894                             , srcInfoPoints = []
895                             }
896                           "x")))
897              ]
898              (UnGuardedRhs
899                 SrcSpanInfo
900                   { srcInfoSpan =
901                       SrcSpan "tests/examples/NegativePatterns.hs" 14 23 14 27
902                   , srcInfoPoints =
903                       [ SrcSpan "tests/examples/NegativePatterns.hs" 14 23 14 24 ]
904                   }
905                 (Con
906                    SrcSpanInfo
907                      { srcInfoSpan =
908                          SrcSpan "tests/examples/NegativePatterns.hs" 14 25 14 27
909                      , srcInfoPoints =
910                          [ SrcSpan "tests/examples/NegativePatterns.hs" 14 25 14 26
911                          , SrcSpan "tests/examples/NegativePatterns.hs" 14 26 14 27
912                          ]
913                      }
914                    (Special
915                       SrcSpanInfo
916                         { srcInfoSpan =
917                             SrcSpan "tests/examples/NegativePatterns.hs" 14 25 14 27
918                         , srcInfoPoints =
919                             [ SrcSpan "tests/examples/NegativePatterns.hs" 14 25 14 26
920                             , SrcSpan "tests/examples/NegativePatterns.hs" 14 26 14 27
921                             ]
922                         }
923                       (UnitCon
924                          SrcSpanInfo
925                            { srcInfoSpan =
926                                SrcSpan "tests/examples/NegativePatterns.hs" 14 25 14 27
927                            , srcInfoPoints =
928                                [ SrcSpan "tests/examples/NegativePatterns.hs" 14 25 14 26
929                                , SrcSpan "tests/examples/NegativePatterns.hs" 14 26 14 27
930                                ]
931                            }))))
932              Nothing
933          , Match
934              SrcSpanInfo
935                { srcInfoSpan =
936                    SrcSpan "tests/examples/NegativePatterns.hs" 15 1 15 27
937                , srcInfoPoints = []
938                }
939              (Ident
940                 SrcSpanInfo
941                   { srcInfoSpan =
942                       SrcSpan "tests/examples/NegativePatterns.hs" 15 1 15 2
943                   , srcInfoPoints = []
944                   }
945                 "g")
946              [ PParen
947                  SrcSpanInfo
948                    { srcInfoSpan =
949                        SrcSpan "tests/examples/NegativePatterns.hs" 15 3 15 22
950                    , srcInfoPoints =
951                        [ SrcSpan "tests/examples/NegativePatterns.hs" 15 3 15 4
952                        , SrcSpan "tests/examples/NegativePatterns.hs" 15 21 15 22
953                        ]
954                    }
955                  (PInfixApp
956                     SrcSpanInfo
957                       { srcInfoSpan =
958                           SrcSpan "tests/examples/NegativePatterns.hs" 15 5 15 21
959                       , srcInfoPoints = []
960                       }
961                     (PLit
962                        SrcSpanInfo
963                          { srcInfoSpan =
964                              SrcSpan "tests/examples/NegativePatterns.hs" 15 5 15 11
965                          , srcInfoPoints =
966                              [ SrcSpan "tests/examples/NegativePatterns.hs" 15 5 15 6 ]
967                          }
968                        (Negative
969                           SrcSpanInfo
970                             { srcInfoSpan =
971                                 SrcSpan "tests/examples/NegativePatterns.hs" 15 5 15 6
972                             , srcInfoPoints =
973                                 [ SrcSpan "tests/examples/NegativePatterns.hs" 15 5 15 6 ]
974                             })
975                        (Int
976                           SrcSpanInfo
977                             { srcInfoSpan =
978                                 SrcSpan "tests/examples/NegativePatterns.hs" 15 10 15 11
979                             , srcInfoPoints = []
980                             }
981                           3
982                           "3"))
983                     (UnQual
984                        SrcSpanInfo
985                          { srcInfoSpan =
986                              SrcSpan "tests/examples/NegativePatterns.hs" 15 12 15 19
987                          , srcInfoPoints =
988                              [ SrcSpan "tests/examples/NegativePatterns.hs" 15 12 15 13
989                              , SrcSpan "tests/examples/NegativePatterns.hs" 15 13 15 18
990                              , SrcSpan "tests/examples/NegativePatterns.hs" 15 18 15 19
991                              ]
992                          }
993                        (Ident
994                           SrcSpanInfo
995                             { srcInfoSpan =
996                                 SrcSpan "tests/examples/NegativePatterns.hs" 15 13 15 18
997                             , srcInfoPoints = []
998                             }
999                           "Lower"))
1000                     (PVar
1001                        SrcSpanInfo
1002                          { srcInfoSpan =
1003                              SrcSpan "tests/examples/NegativePatterns.hs" 15 20 15 21
1004                          , srcInfoPoints = []
1005                          }
1006                        (Ident
1007                           SrcSpanInfo
1008                             { srcInfoSpan =
1009                                 SrcSpan "tests/examples/NegativePatterns.hs" 15 20 15 21
1010                             , srcInfoPoints = []
1011                             }
1012                           "x")))
1013              ]
1014              (UnGuardedRhs
1015                 SrcSpanInfo
1016                   { srcInfoSpan =
1017                       SrcSpan "tests/examples/NegativePatterns.hs" 15 23 15 27
1018                   , srcInfoPoints =
1019                       [ SrcSpan "tests/examples/NegativePatterns.hs" 15 23 15 24 ]
1020                   }
1021                 (Con
1022                    SrcSpanInfo
1023                      { srcInfoSpan =
1024                          SrcSpan "tests/examples/NegativePatterns.hs" 15 25 15 27
1025                      , srcInfoPoints =
1026                          [ SrcSpan "tests/examples/NegativePatterns.hs" 15 25 15 26
1027                          , SrcSpan "tests/examples/NegativePatterns.hs" 15 26 15 27
1028                          ]
1029                      }
1030                    (Special
1031                       SrcSpanInfo
1032                         { srcInfoSpan =
1033                             SrcSpan "tests/examples/NegativePatterns.hs" 15 25 15 27
1034                         , srcInfoPoints =
1035                             [ SrcSpan "tests/examples/NegativePatterns.hs" 15 25 15 26
1036                             , SrcSpan "tests/examples/NegativePatterns.hs" 15 26 15 27
1037                             ]
1038                         }
1039                       (UnitCon
1040                          SrcSpanInfo
1041                            { srcInfoSpan =
1042                                SrcSpan "tests/examples/NegativePatterns.hs" 15 25 15 27
1043                            , srcInfoPoints =
1044                                [ SrcSpan "tests/examples/NegativePatterns.hs" 15 25 15 26
1045                                , SrcSpan "tests/examples/NegativePatterns.hs" 15 26 15 27
1046                                ]
1047                            }))))
1048              Nothing
1049          ]
1050      ]
1051  , []
1052  )
1053