1ParseOk
2  ( Module
3      SrcSpanInfo
4        { srcInfoSpan =
5            SrcSpan "tests/examples/PatternSynonyms3.hs" 1 1 77 1
6        , srcInfoPoints =
7            [ SrcSpan "tests/examples/PatternSynonyms3.hs" 1 1 1 1
8            , SrcSpan "tests/examples/PatternSynonyms3.hs" 3 1 3 1
9            , SrcSpan "tests/examples/PatternSynonyms3.hs" 5 1 5 1
10            , SrcSpan "tests/examples/PatternSynonyms3.hs" 5 1 5 1
11            , SrcSpan "tests/examples/PatternSynonyms3.hs" 5 1 5 1
12            , SrcSpan "tests/examples/PatternSynonyms3.hs" 8 1 8 1
13            , SrcSpan "tests/examples/PatternSynonyms3.hs" 9 1 9 1
14            , SrcSpan "tests/examples/PatternSynonyms3.hs" 10 1 10 1
15            , SrcSpan "tests/examples/PatternSynonyms3.hs" 12 1 12 1
16            , SrcSpan "tests/examples/PatternSynonyms3.hs" 13 1 13 1
17            , SrcSpan "tests/examples/PatternSynonyms3.hs" 16 1 16 1
18            , SrcSpan "tests/examples/PatternSynonyms3.hs" 17 1 17 1
19            , SrcSpan "tests/examples/PatternSynonyms3.hs" 19 1 19 1
20            , SrcSpan "tests/examples/PatternSynonyms3.hs" 20 1 20 1
21            , SrcSpan "tests/examples/PatternSynonyms3.hs" 22 1 22 1
22            , SrcSpan "tests/examples/PatternSynonyms3.hs" 23 1 23 1
23            , SrcSpan "tests/examples/PatternSynonyms3.hs" 25 1 25 1
24            , SrcSpan "tests/examples/PatternSynonyms3.hs" 26 1 26 1
25            , SrcSpan "tests/examples/PatternSynonyms3.hs" 28 1 28 1
26            , SrcSpan "tests/examples/PatternSynonyms3.hs" 30 1 30 1
27            , SrcSpan "tests/examples/PatternSynonyms3.hs" 31 1 31 1
28            , SrcSpan "tests/examples/PatternSynonyms3.hs" 34 1 34 1
29            , SrcSpan "tests/examples/PatternSynonyms3.hs" 36 1 36 1
30            , SrcSpan "tests/examples/PatternSynonyms3.hs" 37 1 37 1
31            , SrcSpan "tests/examples/PatternSynonyms3.hs" 39 1 39 1
32            , SrcSpan "tests/examples/PatternSynonyms3.hs" 40 1 40 1
33            , SrcSpan "tests/examples/PatternSynonyms3.hs" 42 1 42 1
34            , SrcSpan "tests/examples/PatternSynonyms3.hs" 43 1 43 1
35            , SrcSpan "tests/examples/PatternSynonyms3.hs" 46 1 46 1
36            , SrcSpan "tests/examples/PatternSynonyms3.hs" 48 1 48 1
37            , SrcSpan "tests/examples/PatternSynonyms3.hs" 50 1 50 1
38            , SrcSpan "tests/examples/PatternSynonyms3.hs" 53 1 53 1
39            , SrcSpan "tests/examples/PatternSynonyms3.hs" 56 1 56 1
40            , SrcSpan "tests/examples/PatternSynonyms3.hs" 58 1 58 1
41            , SrcSpan "tests/examples/PatternSynonyms3.hs" 60 1 60 1
42            , SrcSpan "tests/examples/PatternSynonyms3.hs" 63 1 63 1
43            , SrcSpan "tests/examples/PatternSynonyms3.hs" 65 1 65 1
44            , SrcSpan "tests/examples/PatternSynonyms3.hs" 67 1 67 1
45            , SrcSpan "tests/examples/PatternSynonyms3.hs" 69 1 69 1
46            , SrcSpan "tests/examples/PatternSynonyms3.hs" 72 1 72 1
47            , SrcSpan "tests/examples/PatternSynonyms3.hs" 75 1 75 1
48            , SrcSpan "tests/examples/PatternSynonyms3.hs" 77 1 77 1
49            , SrcSpan "tests/examples/PatternSynonyms3.hs" 77 1 77 1
50            ]
51        }
52      Nothing
53      [ LanguagePragma
54          SrcSpanInfo
55            { srcInfoSpan =
56                SrcSpan "tests/examples/PatternSynonyms3.hs" 1 1 2 36
57            , srcInfoPoints =
58                [ SrcSpan "tests/examples/PatternSynonyms3.hs" 1 1 1 13
59                , SrcSpan "tests/examples/PatternSynonyms3.hs" 1 29 1 30
60                , SrcSpan "tests/examples/PatternSynonyms3.hs" 1 43 1 44
61                , SrcSpan "tests/examples/PatternSynonyms3.hs" 1 54 1 55
62                , SrcSpan "tests/examples/PatternSynonyms3.hs" 1 65 1 66
63                , SrcSpan "tests/examples/PatternSynonyms3.hs" 1 72 1 73
64                , SrcSpan "tests/examples/PatternSynonyms3.hs" 2 18 2 19
65                , SrcSpan "tests/examples/PatternSynonyms3.hs" 2 33 2 36
66                ]
67            }
68          [ Ident
69              SrcSpanInfo
70                { srcInfoSpan =
71                    SrcSpan "tests/examples/PatternSynonyms3.hs" 1 14 1 29
72                , srcInfoPoints = []
73                }
74              "PatternSynonyms"
75          , Ident
76              SrcSpanInfo
77                { srcInfoSpan =
78                    SrcSpan "tests/examples/PatternSynonyms3.hs" 1 31 1 43
79                , srcInfoPoints = []
80                }
81              "BangPatterns"
82          , Ident
83              SrcSpanInfo
84                { srcInfoSpan =
85                    SrcSpan "tests/examples/PatternSynonyms3.hs" 1 45 1 54
86                , srcInfoPoints = []
87                }
88              "PolyKinds"
89          , Ident
90              SrcSpanInfo
91                { srcInfoSpan =
92                    SrcSpan "tests/examples/PatternSynonyms3.hs" 1 56 1 65
93                , srcInfoPoints = []
94                }
95              "DataKinds"
96          , Ident
97              SrcSpanInfo
98                { srcInfoSpan =
99                    SrcSpan "tests/examples/PatternSynonyms3.hs" 1 67 1 72
100                , srcInfoPoints = []
101                }
102              "GADTs"
103          , Ident
104              SrcSpanInfo
105                { srcInfoSpan =
106                    SrcSpan "tests/examples/PatternSynonyms3.hs" 2 2 2 18
107                , srcInfoPoints = []
108                }
109              "FlexibleContexts"
110          , Ident
111              SrcSpanInfo
112                { srcInfoSpan =
113                    SrcSpan "tests/examples/PatternSynonyms3.hs" 2 20 2 32
114                , srcInfoPoints = []
115                }
116              "ViewPatterns"
117          ]
118      , LanguagePragma
119          SrcSpanInfo
120            { srcInfoSpan =
121                SrcSpan "tests/examples/PatternSynonyms3.hs" 3 1 3 32
122            , srcInfoPoints =
123                [ SrcSpan "tests/examples/PatternSynonyms3.hs" 3 1 3 13
124                , SrcSpan "tests/examples/PatternSynonyms3.hs" 3 29 3 32
125                ]
126            }
127          [ Ident
128              SrcSpanInfo
129                { srcInfoSpan =
130                    SrcSpan "tests/examples/PatternSynonyms3.hs" 3 14 3 28
131                , srcInfoPoints = []
132                }
133              "ExplicitForAll"
134          ]
135      ]
136      []
137      [ PatSyn
138          SrcSpanInfo
139            { srcInfoSpan =
140                SrcSpan "tests/examples/PatternSynonyms3.hs" 5 1 5 24
141            , srcInfoPoints =
142                [ SrcSpan "tests/examples/PatternSynonyms3.hs" 5 1 5 8
143                , SrcSpan "tests/examples/PatternSynonyms3.hs" 5 18 5 20
144                ]
145            }
146          (PApp
147             SrcSpanInfo
148               { srcInfoSpan =
149                   SrcSpan "tests/examples/PatternSynonyms3.hs" 5 9 5 17
150               , srcInfoPoints = []
151               }
152             (UnQual
153                SrcSpanInfo
154                  { srcInfoSpan =
155                      SrcSpan "tests/examples/PatternSynonyms3.hs" 5 9 5 15
156                  , srcInfoPoints = []
157                  }
158                (Ident
159                   SrcSpanInfo
160                     { srcInfoSpan =
161                         SrcSpan "tests/examples/PatternSynonyms3.hs" 5 9 5 15
162                     , srcInfoPoints = []
163                     }
164                   "Single"))
165             [ PVar
166                 SrcSpanInfo
167                   { srcInfoSpan =
168                       SrcSpan "tests/examples/PatternSynonyms3.hs" 5 16 5 17
169                   , srcInfoPoints = []
170                   }
171                 (Ident
172                    SrcSpanInfo
173                      { srcInfoSpan =
174                          SrcSpan "tests/examples/PatternSynonyms3.hs" 5 16 5 17
175                      , srcInfoPoints = []
176                      }
177                    "x")
178             ])
179          (PList
180             SrcSpanInfo
181               { srcInfoSpan =
182                   SrcSpan "tests/examples/PatternSynonyms3.hs" 5 21 5 24
183               , srcInfoPoints =
184                   [ SrcSpan "tests/examples/PatternSynonyms3.hs" 5 21 5 22
185                   , SrcSpan "tests/examples/PatternSynonyms3.hs" 5 23 5 24
186                   ]
187               }
188             [ PVar
189                 SrcSpanInfo
190                   { srcInfoSpan =
191                       SrcSpan "tests/examples/PatternSynonyms3.hs" 5 22 5 23
192                   , srcInfoPoints = []
193                   }
194                 (Ident
195                    SrcSpanInfo
196                      { srcInfoSpan =
197                          SrcSpan "tests/examples/PatternSynonyms3.hs" 5 22 5 23
198                      , srcInfoPoints = []
199                      }
200                    "x")
201             ])
202          Unidirectional
203      , TypeSig
204          SrcSpanInfo
205            { srcInfoSpan =
206                SrcSpan "tests/examples/PatternSynonyms3.hs" 8 1 8 25
207            , srcInfoPoints =
208                [ SrcSpan "tests/examples/PatternSynonyms3.hs" 8 8 8 10 ]
209            }
210          [ Ident
211              SrcSpanInfo
212                { srcInfoSpan =
213                    SrcSpan "tests/examples/PatternSynonyms3.hs" 8 1 8 7
214                , srcInfoPoints = []
215                }
216              "single"
217          ]
218          (TyFun
219             SrcSpanInfo
220               { srcInfoSpan =
221                   SrcSpan "tests/examples/PatternSynonyms3.hs" 8 11 8 25
222               , srcInfoPoints =
223                   [ SrcSpan "tests/examples/PatternSynonyms3.hs" 8 15 8 17 ]
224               }
225             (TyList
226                SrcSpanInfo
227                  { srcInfoSpan =
228                      SrcSpan "tests/examples/PatternSynonyms3.hs" 8 11 8 14
229                  , srcInfoPoints =
230                      [ SrcSpan "tests/examples/PatternSynonyms3.hs" 8 11 8 12
231                      , SrcSpan "tests/examples/PatternSynonyms3.hs" 8 13 8 14
232                      ]
233                  }
234                (TyVar
235                   SrcSpanInfo
236                     { srcInfoSpan =
237                         SrcSpan "tests/examples/PatternSynonyms3.hs" 8 12 8 13
238                     , srcInfoPoints = []
239                     }
240                   (Ident
241                      SrcSpanInfo
242                        { srcInfoSpan =
243                            SrcSpan "tests/examples/PatternSynonyms3.hs" 8 12 8 13
244                        , srcInfoPoints = []
245                        }
246                      "a")))
247             (TyApp
248                SrcSpanInfo
249                  { srcInfoSpan =
250                      SrcSpan "tests/examples/PatternSynonyms3.hs" 8 18 8 25
251                  , srcInfoPoints = []
252                  }
253                (TyCon
254                   SrcSpanInfo
255                     { srcInfoSpan =
256                         SrcSpan "tests/examples/PatternSynonyms3.hs" 8 18 8 23
257                     , srcInfoPoints = []
258                     }
259                   (UnQual
260                      SrcSpanInfo
261                        { srcInfoSpan =
262                            SrcSpan "tests/examples/PatternSynonyms3.hs" 8 18 8 23
263                        , srcInfoPoints = []
264                        }
265                      (Ident
266                         SrcSpanInfo
267                           { srcInfoSpan =
268                               SrcSpan "tests/examples/PatternSynonyms3.hs" 8 18 8 23
269                           , srcInfoPoints = []
270                           }
271                         "Maybe")))
272                (TyVar
273                   SrcSpanInfo
274                     { srcInfoSpan =
275                         SrcSpan "tests/examples/PatternSynonyms3.hs" 8 24 8 25
276                     , srcInfoPoints = []
277                     }
278                   (Ident
279                      SrcSpanInfo
280                        { srcInfoSpan =
281                            SrcSpan "tests/examples/PatternSynonyms3.hs" 8 24 8 25
282                        , srcInfoPoints = []
283                        }
284                      "a"))))
285      , FunBind
286          SrcSpanInfo
287            { srcInfoSpan =
288                SrcSpan "tests/examples/PatternSynonyms3.hs" 9 1 10 19
289            , srcInfoPoints = []
290            }
291          [ Match
292              SrcSpanInfo
293                { srcInfoSpan =
294                    SrcSpan "tests/examples/PatternSynonyms3.hs" 9 1 9 27
295                , srcInfoPoints = []
296                }
297              (Ident
298                 SrcSpanInfo
299                   { srcInfoSpan =
300                       SrcSpan "tests/examples/PatternSynonyms3.hs" 9 1 9 7
301                   , srcInfoPoints = []
302                   }
303                 "single")
304              [ PParen
305                  SrcSpanInfo
306                    { srcInfoSpan =
307                        SrcSpan "tests/examples/PatternSynonyms3.hs" 9 8 9 18
308                    , srcInfoPoints =
309                        [ SrcSpan "tests/examples/PatternSynonyms3.hs" 9 8 9 9
310                        , SrcSpan "tests/examples/PatternSynonyms3.hs" 9 17 9 18
311                        ]
312                    }
313                  (PApp
314                     SrcSpanInfo
315                       { srcInfoSpan =
316                           SrcSpan "tests/examples/PatternSynonyms3.hs" 9 9 9 17
317                       , srcInfoPoints = []
318                       }
319                     (UnQual
320                        SrcSpanInfo
321                          { srcInfoSpan =
322                              SrcSpan "tests/examples/PatternSynonyms3.hs" 9 9 9 15
323                          , srcInfoPoints = []
324                          }
325                        (Ident
326                           SrcSpanInfo
327                             { srcInfoSpan =
328                                 SrcSpan "tests/examples/PatternSynonyms3.hs" 9 9 9 15
329                             , srcInfoPoints = []
330                             }
331                           "Single"))
332                     [ PVar
333                         SrcSpanInfo
334                           { srcInfoSpan =
335                               SrcSpan "tests/examples/PatternSynonyms3.hs" 9 16 9 17
336                           , srcInfoPoints = []
337                           }
338                         (Ident
339                            SrcSpanInfo
340                              { srcInfoSpan =
341                                  SrcSpan "tests/examples/PatternSynonyms3.hs" 9 16 9 17
342                              , srcInfoPoints = []
343                              }
344                            "x")
345                     ])
346              ]
347              (UnGuardedRhs
348                 SrcSpanInfo
349                   { srcInfoSpan =
350                       SrcSpan "tests/examples/PatternSynonyms3.hs" 9 19 9 27
351                   , srcInfoPoints =
352                       [ SrcSpan "tests/examples/PatternSynonyms3.hs" 9 19 9 20 ]
353                   }
354                 (App
355                    SrcSpanInfo
356                      { srcInfoSpan =
357                          SrcSpan "tests/examples/PatternSynonyms3.hs" 9 21 9 27
358                      , srcInfoPoints = []
359                      }
360                    (Con
361                       SrcSpanInfo
362                         { srcInfoSpan =
363                             SrcSpan "tests/examples/PatternSynonyms3.hs" 9 21 9 25
364                         , srcInfoPoints = []
365                         }
366                       (UnQual
367                          SrcSpanInfo
368                            { srcInfoSpan =
369                                SrcSpan "tests/examples/PatternSynonyms3.hs" 9 21 9 25
370                            , srcInfoPoints = []
371                            }
372                          (Ident
373                             SrcSpanInfo
374                               { srcInfoSpan =
375                                   SrcSpan "tests/examples/PatternSynonyms3.hs" 9 21 9 25
376                               , srcInfoPoints = []
377                               }
378                             "Just")))
379                    (Var
380                       SrcSpanInfo
381                         { srcInfoSpan =
382                             SrcSpan "tests/examples/PatternSynonyms3.hs" 9 26 9 27
383                         , srcInfoPoints = []
384                         }
385                       (UnQual
386                          SrcSpanInfo
387                            { srcInfoSpan =
388                                SrcSpan "tests/examples/PatternSynonyms3.hs" 9 26 9 27
389                            , srcInfoPoints = []
390                            }
391                          (Ident
392                             SrcSpanInfo
393                               { srcInfoSpan =
394                                   SrcSpan "tests/examples/PatternSynonyms3.hs" 9 26 9 27
395                               , srcInfoPoints = []
396                               }
397                             "x")))))
398              Nothing
399          , Match
400              SrcSpanInfo
401                { srcInfoSpan =
402                    SrcSpan "tests/examples/PatternSynonyms3.hs" 10 1 10 19
403                , srcInfoPoints = []
404                }
405              (Ident
406                 SrcSpanInfo
407                   { srcInfoSpan =
408                       SrcSpan "tests/examples/PatternSynonyms3.hs" 10 1 10 7
409                   , srcInfoPoints = []
410                   }
411                 "single")
412              [ PWildCard
413                  SrcSpanInfo
414                    { srcInfoSpan =
415                        SrcSpan "tests/examples/PatternSynonyms3.hs" 10 8 10 9
416                    , srcInfoPoints = []
417                    }
418              ]
419              (UnGuardedRhs
420                 SrcSpanInfo
421                   { srcInfoSpan =
422                       SrcSpan "tests/examples/PatternSynonyms3.hs" 10 10 10 19
423                   , srcInfoPoints =
424                       [ SrcSpan "tests/examples/PatternSynonyms3.hs" 10 10 10 11 ]
425                   }
426                 (Con
427                    SrcSpanInfo
428                      { srcInfoSpan =
429                          SrcSpan "tests/examples/PatternSynonyms3.hs" 10 12 10 19
430                      , srcInfoPoints = []
431                      }
432                    (UnQual
433                       SrcSpanInfo
434                         { srcInfoSpan =
435                             SrcSpan "tests/examples/PatternSynonyms3.hs" 10 12 10 19
436                         , srcInfoPoints = []
437                         }
438                       (Ident
439                          SrcSpanInfo
440                            { srcInfoSpan =
441                                SrcSpan "tests/examples/PatternSynonyms3.hs" 10 12 10 19
442                            , srcInfoPoints = []
443                            }
444                          "Nothing"))))
445              Nothing
446          ]
447      , PatSynSig
448          SrcSpanInfo
449            { srcInfoSpan =
450                SrcSpan "tests/examples/PatternSynonyms3.hs" 12 1 12 27
451            , srcInfoPoints =
452                [ SrcSpan "tests/examples/PatternSynonyms3.hs" 12 1 12 8
453                , SrcSpan "tests/examples/PatternSynonyms3.hs" 12 16 12 18
454                ]
455            }
456          [ Ident
457              SrcSpanInfo
458                { srcInfoSpan =
459                    SrcSpan "tests/examples/PatternSynonyms3.hs" 12 9 12 15
460                , srcInfoPoints = []
461                }
462              "Single"
463          ]
464          Nothing
465          Nothing
466          Nothing
467          Nothing
468          (TyFun
469             SrcSpanInfo
470               { srcInfoSpan =
471                   SrcSpan "tests/examples/PatternSynonyms3.hs" 12 19 12 27
472               , srcInfoPoints =
473                   [ SrcSpan "tests/examples/PatternSynonyms3.hs" 12 21 12 23 ]
474               }
475             (TyVar
476                SrcSpanInfo
477                  { srcInfoSpan =
478                      SrcSpan "tests/examples/PatternSynonyms3.hs" 12 19 12 20
479                  , srcInfoPoints = []
480                  }
481                (Ident
482                   SrcSpanInfo
483                     { srcInfoSpan =
484                         SrcSpan "tests/examples/PatternSynonyms3.hs" 12 19 12 20
485                     , srcInfoPoints = []
486                     }
487                   "a"))
488             (TyList
489                SrcSpanInfo
490                  { srcInfoSpan =
491                      SrcSpan "tests/examples/PatternSynonyms3.hs" 12 24 12 27
492                  , srcInfoPoints =
493                      [ SrcSpan "tests/examples/PatternSynonyms3.hs" 12 24 12 25
494                      , SrcSpan "tests/examples/PatternSynonyms3.hs" 12 26 12 27
495                      ]
496                  }
497                (TyVar
498                   SrcSpanInfo
499                     { srcInfoSpan =
500                         SrcSpan "tests/examples/PatternSynonyms3.hs" 12 25 12 26
501                     , srcInfoPoints = []
502                     }
503                   (Ident
504                      SrcSpanInfo
505                        { srcInfoSpan =
506                            SrcSpan "tests/examples/PatternSynonyms3.hs" 12 25 12 26
507                        , srcInfoPoints = []
508                        }
509                      "a"))))
510      , PatSyn
511          SrcSpanInfo
512            { srcInfoSpan =
513                SrcSpan "tests/examples/PatternSynonyms3.hs" 13 1 13 23
514            , srcInfoPoints =
515                [ SrcSpan "tests/examples/PatternSynonyms3.hs" 13 1 13 8
516                , SrcSpan "tests/examples/PatternSynonyms3.hs" 13 18 13 19
517                ]
518            }
519          (PApp
520             SrcSpanInfo
521               { srcInfoSpan =
522                   SrcSpan "tests/examples/PatternSynonyms3.hs" 13 9 13 17
523               , srcInfoPoints = []
524               }
525             (UnQual
526                SrcSpanInfo
527                  { srcInfoSpan =
528                      SrcSpan "tests/examples/PatternSynonyms3.hs" 13 9 13 15
529                  , srcInfoPoints = []
530                  }
531                (Ident
532                   SrcSpanInfo
533                     { srcInfoSpan =
534                         SrcSpan "tests/examples/PatternSynonyms3.hs" 13 9 13 15
535                     , srcInfoPoints = []
536                     }
537                   "Single"))
538             [ PVar
539                 SrcSpanInfo
540                   { srcInfoSpan =
541                       SrcSpan "tests/examples/PatternSynonyms3.hs" 13 16 13 17
542                   , srcInfoPoints = []
543                   }
544                 (Ident
545                    SrcSpanInfo
546                      { srcInfoSpan =
547                          SrcSpan "tests/examples/PatternSynonyms3.hs" 13 16 13 17
548                      , srcInfoPoints = []
549                      }
550                    "x")
551             ])
552          (PList
553             SrcSpanInfo
554               { srcInfoSpan =
555                   SrcSpan "tests/examples/PatternSynonyms3.hs" 13 20 13 23
556               , srcInfoPoints =
557                   [ SrcSpan "tests/examples/PatternSynonyms3.hs" 13 20 13 21
558                   , SrcSpan "tests/examples/PatternSynonyms3.hs" 13 22 13 23
559                   ]
560               }
561             [ PVar
562                 SrcSpanInfo
563                   { srcInfoSpan =
564                       SrcSpan "tests/examples/PatternSynonyms3.hs" 13 21 13 22
565                   , srcInfoPoints = []
566                   }
567                 (Ident
568                    SrcSpanInfo
569                      { srcInfoSpan =
570                          SrcSpan "tests/examples/PatternSynonyms3.hs" 13 21 13 22
571                      , srcInfoPoints = []
572                      }
573                    "x")
574             ])
575          ImplicitBidirectional
576      , PatSynSig
577          SrcSpanInfo
578            { srcInfoSpan =
579                SrcSpan "tests/examples/PatternSynonyms3.hs" 16 1 16 45
580            , srcInfoPoints =
581                [ SrcSpan "tests/examples/PatternSynonyms3.hs" 16 1 16 8
582                , SrcSpan "tests/examples/PatternSynonyms3.hs" 16 16 16 18
583                ]
584            }
585          [ Ident
586              SrcSpanInfo
587                { srcInfoSpan =
588                    SrcSpan "tests/examples/PatternSynonyms3.hs" 16 9 16 15
589                , srcInfoPoints = []
590                }
591              "Single"
592          ]
593          Nothing
594          (Just
595             (CxEmpty
596                SrcSpanInfo
597                  { srcInfoSpan =
598                      SrcSpan "tests/examples/PatternSynonyms3.hs" 16 19 16 24
599                  , srcInfoPoints =
600                      [ SrcSpan "tests/examples/PatternSynonyms3.hs" 16 19 16 20
601                      , SrcSpan "tests/examples/PatternSynonyms3.hs" 16 20 16 21
602                      , SrcSpan "tests/examples/PatternSynonyms3.hs" 16 22 16 24
603                      ]
604                  }))
605          Nothing
606          (Just
607             (CxSingle
608                SrcSpanInfo
609                  { srcInfoSpan =
610                      SrcSpan "tests/examples/PatternSynonyms3.hs" 16 25 16 36
611                  , srcInfoPoints =
612                      [ SrcSpan "tests/examples/PatternSynonyms3.hs" 16 25 16 26
613                      , SrcSpan "tests/examples/PatternSynonyms3.hs" 16 32 16 33
614                      , SrcSpan "tests/examples/PatternSynonyms3.hs" 16 34 16 36
615                      ]
616                  }
617                (ParenA
618                   SrcSpanInfo
619                     { srcInfoSpan =
620                         SrcSpan "tests/examples/PatternSynonyms3.hs" 16 25 16 36
621                     , srcInfoPoints =
622                         [ SrcSpan "tests/examples/PatternSynonyms3.hs" 16 25 16 26
623                         , SrcSpan "tests/examples/PatternSynonyms3.hs" 16 32 16 33
624                         , SrcSpan "tests/examples/PatternSynonyms3.hs" 16 34 16 36
625                         ]
626                     }
627                   (TypeA
628                      SrcSpanInfo
629                        { srcInfoSpan =
630                            SrcSpan "tests/examples/PatternSynonyms3.hs" 16 26 16 32
631                        , srcInfoPoints = []
632                        }
633                      (TyApp
634                         SrcSpanInfo
635                           { srcInfoSpan =
636                               SrcSpan "tests/examples/PatternSynonyms3.hs" 16 26 16 32
637                           , srcInfoPoints = []
638                           }
639                         (TyCon
640                            SrcSpanInfo
641                              { srcInfoSpan =
642                                  SrcSpan "tests/examples/PatternSynonyms3.hs" 16 26 16 32
643                              , srcInfoPoints = []
644                              }
645                            (UnQual
646                               SrcSpanInfo
647                                 { srcInfoSpan =
648                                     SrcSpan "tests/examples/PatternSynonyms3.hs" 16 26 16 30
649                                 , srcInfoPoints = []
650                                 }
651                               (Ident
652                                  SrcSpanInfo
653                                    { srcInfoSpan =
654                                        SrcSpan "tests/examples/PatternSynonyms3.hs" 16 26 16 30
655                                    , srcInfoPoints = []
656                                    }
657                                  "Show")))
658                         (TyVar
659                            SrcSpanInfo
660                              { srcInfoSpan =
661                                  SrcSpan "tests/examples/PatternSynonyms3.hs" 16 31 16 32
662                              , srcInfoPoints = []
663                              }
664                            (Ident
665                               SrcSpanInfo
666                                 { srcInfoSpan =
667                                     SrcSpan "tests/examples/PatternSynonyms3.hs" 16 31 16 32
668                                 , srcInfoPoints = []
669                                 }
670                               "a")))))))
671          (TyFun
672             SrcSpanInfo
673               { srcInfoSpan =
674                   SrcSpan "tests/examples/PatternSynonyms3.hs" 16 37 16 45
675               , srcInfoPoints =
676                   [ SrcSpan "tests/examples/PatternSynonyms3.hs" 16 39 16 41 ]
677               }
678             (TyVar
679                SrcSpanInfo
680                  { srcInfoSpan =
681                      SrcSpan "tests/examples/PatternSynonyms3.hs" 16 37 16 38
682                  , srcInfoPoints = []
683                  }
684                (Ident
685                   SrcSpanInfo
686                     { srcInfoSpan =
687                         SrcSpan "tests/examples/PatternSynonyms3.hs" 16 37 16 38
688                     , srcInfoPoints = []
689                     }
690                   "a"))
691             (TyList
692                SrcSpanInfo
693                  { srcInfoSpan =
694                      SrcSpan "tests/examples/PatternSynonyms3.hs" 16 42 16 45
695                  , srcInfoPoints =
696                      [ SrcSpan "tests/examples/PatternSynonyms3.hs" 16 42 16 43
697                      , SrcSpan "tests/examples/PatternSynonyms3.hs" 16 44 16 45
698                      ]
699                  }
700                (TyVar
701                   SrcSpanInfo
702                     { srcInfoSpan =
703                         SrcSpan "tests/examples/PatternSynonyms3.hs" 16 43 16 44
704                     , srcInfoPoints = []
705                     }
706                   (Ident
707                      SrcSpanInfo
708                        { srcInfoSpan =
709                            SrcSpan "tests/examples/PatternSynonyms3.hs" 16 43 16 44
710                        , srcInfoPoints = []
711                        }
712                      "a"))))
713      , PatSyn
714          SrcSpanInfo
715            { srcInfoSpan =
716                SrcSpan "tests/examples/PatternSynonyms3.hs" 17 1 17 23
717            , srcInfoPoints =
718                [ SrcSpan "tests/examples/PatternSynonyms3.hs" 17 1 17 8
719                , SrcSpan "tests/examples/PatternSynonyms3.hs" 17 18 17 19
720                ]
721            }
722          (PApp
723             SrcSpanInfo
724               { srcInfoSpan =
725                   SrcSpan "tests/examples/PatternSynonyms3.hs" 17 9 17 17
726               , srcInfoPoints = []
727               }
728             (UnQual
729                SrcSpanInfo
730                  { srcInfoSpan =
731                      SrcSpan "tests/examples/PatternSynonyms3.hs" 17 9 17 15
732                  , srcInfoPoints = []
733                  }
734                (Ident
735                   SrcSpanInfo
736                     { srcInfoSpan =
737                         SrcSpan "tests/examples/PatternSynonyms3.hs" 17 9 17 15
738                     , srcInfoPoints = []
739                     }
740                   "Single"))
741             [ PVar
742                 SrcSpanInfo
743                   { srcInfoSpan =
744                       SrcSpan "tests/examples/PatternSynonyms3.hs" 17 16 17 17
745                   , srcInfoPoints = []
746                   }
747                 (Ident
748                    SrcSpanInfo
749                      { srcInfoSpan =
750                          SrcSpan "tests/examples/PatternSynonyms3.hs" 17 16 17 17
751                      , srcInfoPoints = []
752                      }
753                    "x")
754             ])
755          (PList
756             SrcSpanInfo
757               { srcInfoSpan =
758                   SrcSpan "tests/examples/PatternSynonyms3.hs" 17 20 17 23
759               , srcInfoPoints =
760                   [ SrcSpan "tests/examples/PatternSynonyms3.hs" 17 20 17 21
761                   , SrcSpan "tests/examples/PatternSynonyms3.hs" 17 22 17 23
762                   ]
763               }
764             [ PVar
765                 SrcSpanInfo
766                   { srcInfoSpan =
767                       SrcSpan "tests/examples/PatternSynonyms3.hs" 17 21 17 22
768                   , srcInfoPoints = []
769                   }
770                 (Ident
771                    SrcSpanInfo
772                      { srcInfoSpan =
773                          SrcSpan "tests/examples/PatternSynonyms3.hs" 17 21 17 22
774                      , srcInfoPoints = []
775                      }
776                    "x")
777             ])
778          ImplicitBidirectional
779      , TypeSig
780          SrcSpanInfo
781            { srcInfoSpan =
782                SrcSpan "tests/examples/PatternSynonyms3.hs" 19 1 19 26
783            , srcInfoPoints =
784                [ SrcSpan "tests/examples/PatternSynonyms3.hs" 19 3 19 5 ]
785            }
786          [ Ident
787              SrcSpanInfo
788                { srcInfoSpan =
789                    SrcSpan "tests/examples/PatternSynonyms3.hs" 19 1 19 2
790                , srcInfoPoints = []
791                }
792              "f"
793          ]
794          (TyForall
795             SrcSpanInfo
796               { srcInfoSpan =
797                   SrcSpan "tests/examples/PatternSynonyms3.hs" 19 6 19 26
798               , srcInfoPoints = []
799               }
800             Nothing
801             (Just
802                (CxSingle
803                   SrcSpanInfo
804                     { srcInfoSpan =
805                         SrcSpan "tests/examples/PatternSynonyms3.hs" 19 6 19 17
806                     , srcInfoPoints =
807                         [ SrcSpan "tests/examples/PatternSynonyms3.hs" 19 6 19 7
808                         , SrcSpan "tests/examples/PatternSynonyms3.hs" 19 13 19 14
809                         , SrcSpan "tests/examples/PatternSynonyms3.hs" 19 15 19 17
810                         ]
811                     }
812                   (ParenA
813                      SrcSpanInfo
814                        { srcInfoSpan =
815                            SrcSpan "tests/examples/PatternSynonyms3.hs" 19 6 19 17
816                        , srcInfoPoints =
817                            [ SrcSpan "tests/examples/PatternSynonyms3.hs" 19 6 19 7
818                            , SrcSpan "tests/examples/PatternSynonyms3.hs" 19 13 19 14
819                            , SrcSpan "tests/examples/PatternSynonyms3.hs" 19 15 19 17
820                            ]
821                        }
822                      (TypeA
823                         SrcSpanInfo
824                           { srcInfoSpan =
825                               SrcSpan "tests/examples/PatternSynonyms3.hs" 19 7 19 13
826                           , srcInfoPoints = []
827                           }
828                         (TyApp
829                            SrcSpanInfo
830                              { srcInfoSpan =
831                                  SrcSpan "tests/examples/PatternSynonyms3.hs" 19 7 19 13
832                              , srcInfoPoints = []
833                              }
834                            (TyCon
835                               SrcSpanInfo
836                                 { srcInfoSpan =
837                                     SrcSpan "tests/examples/PatternSynonyms3.hs" 19 7 19 13
838                                 , srcInfoPoints = []
839                                 }
840                               (UnQual
841                                  SrcSpanInfo
842                                    { srcInfoSpan =
843                                        SrcSpan "tests/examples/PatternSynonyms3.hs" 19 7 19 11
844                                    , srcInfoPoints = []
845                                    }
846                                  (Ident
847                                     SrcSpanInfo
848                                       { srcInfoSpan =
849                                           SrcSpan "tests/examples/PatternSynonyms3.hs" 19 7 19 11
850                                       , srcInfoPoints = []
851                                       }
852                                     "Show")))
853                            (TyVar
854                               SrcSpanInfo
855                                 { srcInfoSpan =
856                                     SrcSpan "tests/examples/PatternSynonyms3.hs" 19 12 19 13
857                                 , srcInfoPoints = []
858                                 }
859                               (Ident
860                                  SrcSpanInfo
861                                    { srcInfoSpan =
862                                        SrcSpan "tests/examples/PatternSynonyms3.hs" 19 12 19 13
863                                    , srcInfoPoints = []
864                                    }
865                                  "a")))))))
866             (TyFun
867                SrcSpanInfo
868                  { srcInfoSpan =
869                      SrcSpan "tests/examples/PatternSynonyms3.hs" 19 18 19 26
870                  , srcInfoPoints =
871                      [ SrcSpan "tests/examples/PatternSynonyms3.hs" 19 22 19 24 ]
872                  }
873                (TyList
874                   SrcSpanInfo
875                     { srcInfoSpan =
876                         SrcSpan "tests/examples/PatternSynonyms3.hs" 19 18 19 21
877                     , srcInfoPoints =
878                         [ SrcSpan "tests/examples/PatternSynonyms3.hs" 19 18 19 19
879                         , SrcSpan "tests/examples/PatternSynonyms3.hs" 19 20 19 21
880                         ]
881                     }
882                   (TyVar
883                      SrcSpanInfo
884                        { srcInfoSpan =
885                            SrcSpan "tests/examples/PatternSynonyms3.hs" 19 19 19 20
886                        , srcInfoPoints = []
887                        }
888                      (Ident
889                         SrcSpanInfo
890                           { srcInfoSpan =
891                               SrcSpan "tests/examples/PatternSynonyms3.hs" 19 19 19 20
892                           , srcInfoPoints = []
893                           }
894                         "a")))
895                (TyVar
896                   SrcSpanInfo
897                     { srcInfoSpan =
898                         SrcSpan "tests/examples/PatternSynonyms3.hs" 19 25 19 26
899                     , srcInfoPoints = []
900                     }
901                   (Ident
902                      SrcSpanInfo
903                        { srcInfoSpan =
904                            SrcSpan "tests/examples/PatternSynonyms3.hs" 19 25 19 26
905                        , srcInfoPoints = []
906                        }
907                      "a"))))
908      , FunBind
909          SrcSpanInfo
910            { srcInfoSpan =
911                SrcSpan "tests/examples/PatternSynonyms3.hs" 20 1 20 17
912            , srcInfoPoints = []
913            }
914          [ Match
915              SrcSpanInfo
916                { srcInfoSpan =
917                    SrcSpan "tests/examples/PatternSynonyms3.hs" 20 1 20 17
918                , srcInfoPoints = []
919                }
920              (Ident
921                 SrcSpanInfo
922                   { srcInfoSpan =
923                       SrcSpan "tests/examples/PatternSynonyms3.hs" 20 1 20 2
924                   , srcInfoPoints = []
925                   }
926                 "f")
927              [ PParen
928                  SrcSpanInfo
929                    { srcInfoSpan =
930                        SrcSpan "tests/examples/PatternSynonyms3.hs" 20 3 20 13
931                    , srcInfoPoints =
932                        [ SrcSpan "tests/examples/PatternSynonyms3.hs" 20 3 20 4
933                        , SrcSpan "tests/examples/PatternSynonyms3.hs" 20 12 20 13
934                        ]
935                    }
936                  (PApp
937                     SrcSpanInfo
938                       { srcInfoSpan =
939                           SrcSpan "tests/examples/PatternSynonyms3.hs" 20 4 20 12
940                       , srcInfoPoints = []
941                       }
942                     (UnQual
943                        SrcSpanInfo
944                          { srcInfoSpan =
945                              SrcSpan "tests/examples/PatternSynonyms3.hs" 20 4 20 10
946                          , srcInfoPoints = []
947                          }
948                        (Ident
949                           SrcSpanInfo
950                             { srcInfoSpan =
951                                 SrcSpan "tests/examples/PatternSynonyms3.hs" 20 4 20 10
952                             , srcInfoPoints = []
953                             }
954                           "Single"))
955                     [ PVar
956                         SrcSpanInfo
957                           { srcInfoSpan =
958                               SrcSpan "tests/examples/PatternSynonyms3.hs" 20 11 20 12
959                           , srcInfoPoints = []
960                           }
961                         (Ident
962                            SrcSpanInfo
963                              { srcInfoSpan =
964                                  SrcSpan "tests/examples/PatternSynonyms3.hs" 20 11 20 12
965                              , srcInfoPoints = []
966                              }
967                            "x")
968                     ])
969              ]
970              (UnGuardedRhs
971                 SrcSpanInfo
972                   { srcInfoSpan =
973                       SrcSpan "tests/examples/PatternSynonyms3.hs" 20 14 20 17
974                   , srcInfoPoints =
975                       [ SrcSpan "tests/examples/PatternSynonyms3.hs" 20 14 20 15 ]
976                   }
977                 (Var
978                    SrcSpanInfo
979                      { srcInfoSpan =
980                          SrcSpan "tests/examples/PatternSynonyms3.hs" 20 16 20 17
981                      , srcInfoPoints = []
982                      }
983                    (UnQual
984                       SrcSpanInfo
985                         { srcInfoSpan =
986                             SrcSpan "tests/examples/PatternSynonyms3.hs" 20 16 20 17
987                         , srcInfoPoints = []
988                         }
989                       (Ident
990                          SrcSpanInfo
991                            { srcInfoSpan =
992                                SrcSpan "tests/examples/PatternSynonyms3.hs" 20 16 20 17
993                            , srcInfoPoints = []
994                            }
995                          "x"))))
996              Nothing
997          ]
998      , PatSynSig
999          SrcSpanInfo
1000            { srcInfoSpan =
1001                SrcSpan "tests/examples/PatternSynonyms3.hs" 22 1 22 41
1002            , srcInfoPoints =
1003                [ SrcSpan "tests/examples/PatternSynonyms3.hs" 22 1 22 8
1004                , SrcSpan "tests/examples/PatternSynonyms3.hs" 22 20 22 22
1005                ]
1006            }
1007          [ Ident
1008              SrcSpanInfo
1009                { srcInfoSpan =
1010                    SrcSpan "tests/examples/PatternSynonyms3.hs" 22 9 22 19
1011                , srcInfoPoints = []
1012                }
1013              "SinglePair"
1014          ]
1015          Nothing
1016          Nothing
1017          Nothing
1018          Nothing
1019          (TyFun
1020             SrcSpanInfo
1021               { srcInfoSpan =
1022                   SrcSpan "tests/examples/PatternSynonyms3.hs" 22 23 22 41
1023               , srcInfoPoints =
1024                   [ SrcSpan "tests/examples/PatternSynonyms3.hs" 22 30 22 32 ]
1025               }
1026             (TyTuple
1027                SrcSpanInfo
1028                  { srcInfoSpan =
1029                      SrcSpan "tests/examples/PatternSynonyms3.hs" 22 23 22 29
1030                  , srcInfoPoints =
1031                      [ SrcSpan "tests/examples/PatternSynonyms3.hs" 22 23 22 24
1032                      , SrcSpan "tests/examples/PatternSynonyms3.hs" 22 25 22 26
1033                      , SrcSpan "tests/examples/PatternSynonyms3.hs" 22 28 22 29
1034                      ]
1035                  }
1036                Boxed
1037                [ TyVar
1038                    SrcSpanInfo
1039                      { srcInfoSpan =
1040                          SrcSpan "tests/examples/PatternSynonyms3.hs" 22 24 22 25
1041                      , srcInfoPoints = []
1042                      }
1043                    (Ident
1044                       SrcSpanInfo
1045                         { srcInfoSpan =
1046                             SrcSpan "tests/examples/PatternSynonyms3.hs" 22 24 22 25
1047                         , srcInfoPoints = []
1048                         }
1049                       "a")
1050                , TyVar
1051                    SrcSpanInfo
1052                      { srcInfoSpan =
1053                          SrcSpan "tests/examples/PatternSynonyms3.hs" 22 27 22 28
1054                      , srcInfoPoints = []
1055                      }
1056                    (Ident
1057                       SrcSpanInfo
1058                         { srcInfoSpan =
1059                             SrcSpan "tests/examples/PatternSynonyms3.hs" 22 27 22 28
1060                         , srcInfoPoints = []
1061                         }
1062                       "a")
1063                ])
1064             (TyList
1065                SrcSpanInfo
1066                  { srcInfoSpan =
1067                      SrcSpan "tests/examples/PatternSynonyms3.hs" 22 33 22 41
1068                  , srcInfoPoints =
1069                      [ SrcSpan "tests/examples/PatternSynonyms3.hs" 22 33 22 34
1070                      , SrcSpan "tests/examples/PatternSynonyms3.hs" 22 40 22 41
1071                      ]
1072                  }
1073                (TyTuple
1074                   SrcSpanInfo
1075                     { srcInfoSpan =
1076                         SrcSpan "tests/examples/PatternSynonyms3.hs" 22 34 22 40
1077                     , srcInfoPoints =
1078                         [ SrcSpan "tests/examples/PatternSynonyms3.hs" 22 34 22 35
1079                         , SrcSpan "tests/examples/PatternSynonyms3.hs" 22 36 22 37
1080                         , SrcSpan "tests/examples/PatternSynonyms3.hs" 22 39 22 40
1081                         ]
1082                     }
1083                   Boxed
1084                   [ TyVar
1085                       SrcSpanInfo
1086                         { srcInfoSpan =
1087                             SrcSpan "tests/examples/PatternSynonyms3.hs" 22 35 22 36
1088                         , srcInfoPoints = []
1089                         }
1090                       (Ident
1091                          SrcSpanInfo
1092                            { srcInfoSpan =
1093                                SrcSpan "tests/examples/PatternSynonyms3.hs" 22 35 22 36
1094                            , srcInfoPoints = []
1095                            }
1096                          "a")
1097                   , TyVar
1098                       SrcSpanInfo
1099                         { srcInfoSpan =
1100                             SrcSpan "tests/examples/PatternSynonyms3.hs" 22 38 22 39
1101                         , srcInfoPoints = []
1102                         }
1103                       (Ident
1104                          SrcSpanInfo
1105                            { srcInfoSpan =
1106                                SrcSpan "tests/examples/PatternSynonyms3.hs" 22 38 22 39
1107                            , srcInfoPoints = []
1108                            }
1109                          "a")
1110                   ])))
1111      , PatSyn
1112          SrcSpanInfo
1113            { srcInfoSpan =
1114                SrcSpan "tests/examples/PatternSynonyms3.hs" 23 1 23 27
1115            , srcInfoPoints =
1116                [ SrcSpan "tests/examples/PatternSynonyms3.hs" 23 1 23 8
1117                , SrcSpan "tests/examples/PatternSynonyms3.hs" 23 22 23 23
1118                ]
1119            }
1120          (PApp
1121             SrcSpanInfo
1122               { srcInfoSpan =
1123                   SrcSpan "tests/examples/PatternSynonyms3.hs" 23 9 23 21
1124               , srcInfoPoints = []
1125               }
1126             (UnQual
1127                SrcSpanInfo
1128                  { srcInfoSpan =
1129                      SrcSpan "tests/examples/PatternSynonyms3.hs" 23 9 23 19
1130                  , srcInfoPoints = []
1131                  }
1132                (Ident
1133                   SrcSpanInfo
1134                     { srcInfoSpan =
1135                         SrcSpan "tests/examples/PatternSynonyms3.hs" 23 9 23 19
1136                     , srcInfoPoints = []
1137                     }
1138                   "SinglePair"))
1139             [ PVar
1140                 SrcSpanInfo
1141                   { srcInfoSpan =
1142                       SrcSpan "tests/examples/PatternSynonyms3.hs" 23 20 23 21
1143                   , srcInfoPoints = []
1144                   }
1145                 (Ident
1146                    SrcSpanInfo
1147                      { srcInfoSpan =
1148                          SrcSpan "tests/examples/PatternSynonyms3.hs" 23 20 23 21
1149                      , srcInfoPoints = []
1150                      }
1151                    "x")
1152             ])
1153          (PList
1154             SrcSpanInfo
1155               { srcInfoSpan =
1156                   SrcSpan "tests/examples/PatternSynonyms3.hs" 23 24 23 27
1157               , srcInfoPoints =
1158                   [ SrcSpan "tests/examples/PatternSynonyms3.hs" 23 24 23 25
1159                   , SrcSpan "tests/examples/PatternSynonyms3.hs" 23 26 23 27
1160                   ]
1161               }
1162             [ PVar
1163                 SrcSpanInfo
1164                   { srcInfoSpan =
1165                       SrcSpan "tests/examples/PatternSynonyms3.hs" 23 25 23 26
1166                   , srcInfoPoints = []
1167                   }
1168                 (Ident
1169                    SrcSpanInfo
1170                      { srcInfoSpan =
1171                          SrcSpan "tests/examples/PatternSynonyms3.hs" 23 25 23 26
1172                      , srcInfoPoints = []
1173                      }
1174                    "x")
1175             ])
1176          ImplicitBidirectional
1177      , TypeSig
1178          SrcSpanInfo
1179            { srcInfoSpan =
1180                SrcSpan "tests/examples/PatternSynonyms3.hs" 25 1 25 36
1181            , srcInfoPoints =
1182                [ SrcSpan "tests/examples/PatternSynonyms3.hs" 25 3 25 5 ]
1183            }
1184          [ Ident
1185              SrcSpanInfo
1186                { srcInfoSpan =
1187                    SrcSpan "tests/examples/PatternSynonyms3.hs" 25 1 25 2
1188                , srcInfoPoints = []
1189                }
1190              "f"
1191          ]
1192          (TyForall
1193             SrcSpanInfo
1194               { srcInfoSpan =
1195                   SrcSpan "tests/examples/PatternSynonyms3.hs" 25 6 25 36
1196               , srcInfoPoints = []
1197               }
1198             Nothing
1199             (Just
1200                (CxSingle
1201                   SrcSpanInfo
1202                     { srcInfoSpan =
1203                         SrcSpan "tests/examples/PatternSynonyms3.hs" 25 6 25 17
1204                     , srcInfoPoints =
1205                         [ SrcSpan "tests/examples/PatternSynonyms3.hs" 25 6 25 7
1206                         , SrcSpan "tests/examples/PatternSynonyms3.hs" 25 13 25 14
1207                         , SrcSpan "tests/examples/PatternSynonyms3.hs" 25 15 25 17
1208                         ]
1209                     }
1210                   (ParenA
1211                      SrcSpanInfo
1212                        { srcInfoSpan =
1213                            SrcSpan "tests/examples/PatternSynonyms3.hs" 25 6 25 17
1214                        , srcInfoPoints =
1215                            [ SrcSpan "tests/examples/PatternSynonyms3.hs" 25 6 25 7
1216                            , SrcSpan "tests/examples/PatternSynonyms3.hs" 25 13 25 14
1217                            , SrcSpan "tests/examples/PatternSynonyms3.hs" 25 15 25 17
1218                            ]
1219                        }
1220                      (TypeA
1221                         SrcSpanInfo
1222                           { srcInfoSpan =
1223                               SrcSpan "tests/examples/PatternSynonyms3.hs" 25 7 25 13
1224                           , srcInfoPoints = []
1225                           }
1226                         (TyApp
1227                            SrcSpanInfo
1228                              { srcInfoSpan =
1229                                  SrcSpan "tests/examples/PatternSynonyms3.hs" 25 7 25 13
1230                              , srcInfoPoints = []
1231                              }
1232                            (TyCon
1233                               SrcSpanInfo
1234                                 { srcInfoSpan =
1235                                     SrcSpan "tests/examples/PatternSynonyms3.hs" 25 7 25 13
1236                                 , srcInfoPoints = []
1237                                 }
1238                               (UnQual
1239                                  SrcSpanInfo
1240                                    { srcInfoSpan =
1241                                        SrcSpan "tests/examples/PatternSynonyms3.hs" 25 7 25 11
1242                                    , srcInfoPoints = []
1243                                    }
1244                                  (Ident
1245                                     SrcSpanInfo
1246                                       { srcInfoSpan =
1247                                           SrcSpan "tests/examples/PatternSynonyms3.hs" 25 7 25 11
1248                                       , srcInfoPoints = []
1249                                       }
1250                                     "Show")))
1251                            (TyVar
1252                               SrcSpanInfo
1253                                 { srcInfoSpan =
1254                                     SrcSpan "tests/examples/PatternSynonyms3.hs" 25 12 25 13
1255                                 , srcInfoPoints = []
1256                                 }
1257                               (Ident
1258                                  SrcSpanInfo
1259                                    { srcInfoSpan =
1260                                        SrcSpan "tests/examples/PatternSynonyms3.hs" 25 12 25 13
1261                                    , srcInfoPoints = []
1262                                    }
1263                                  "a")))))))
1264             (TyFun
1265                SrcSpanInfo
1266                  { srcInfoSpan =
1267                      SrcSpan "tests/examples/PatternSynonyms3.hs" 25 18 25 36
1268                  , srcInfoPoints =
1269                      [ SrcSpan "tests/examples/PatternSynonyms3.hs" 25 27 25 29 ]
1270                  }
1271                (TyList
1272                   SrcSpanInfo
1273                     { srcInfoSpan =
1274                         SrcSpan "tests/examples/PatternSynonyms3.hs" 25 18 25 26
1275                     , srcInfoPoints =
1276                         [ SrcSpan "tests/examples/PatternSynonyms3.hs" 25 18 25 19
1277                         , SrcSpan "tests/examples/PatternSynonyms3.hs" 25 25 25 26
1278                         ]
1279                     }
1280                   (TyTuple
1281                      SrcSpanInfo
1282                        { srcInfoSpan =
1283                            SrcSpan "tests/examples/PatternSynonyms3.hs" 25 19 25 25
1284                        , srcInfoPoints =
1285                            [ SrcSpan "tests/examples/PatternSynonyms3.hs" 25 19 25 20
1286                            , SrcSpan "tests/examples/PatternSynonyms3.hs" 25 21 25 22
1287                            , SrcSpan "tests/examples/PatternSynonyms3.hs" 25 24 25 25
1288                            ]
1289                        }
1290                      Boxed
1291                      [ TyVar
1292                          SrcSpanInfo
1293                            { srcInfoSpan =
1294                                SrcSpan "tests/examples/PatternSynonyms3.hs" 25 20 25 21
1295                            , srcInfoPoints = []
1296                            }
1297                          (Ident
1298                             SrcSpanInfo
1299                               { srcInfoSpan =
1300                                   SrcSpan "tests/examples/PatternSynonyms3.hs" 25 20 25 21
1301                               , srcInfoPoints = []
1302                               }
1303                             "a")
1304                      , TyVar
1305                          SrcSpanInfo
1306                            { srcInfoSpan =
1307                                SrcSpan "tests/examples/PatternSynonyms3.hs" 25 23 25 24
1308                            , srcInfoPoints = []
1309                            }
1310                          (Ident
1311                             SrcSpanInfo
1312                               { srcInfoSpan =
1313                                   SrcSpan "tests/examples/PatternSynonyms3.hs" 25 23 25 24
1314                               , srcInfoPoints = []
1315                               }
1316                             "a")
1317                      ]))
1318                (TyCon
1319                   SrcSpanInfo
1320                     { srcInfoSpan =
1321                         SrcSpan "tests/examples/PatternSynonyms3.hs" 25 30 25 36
1322                     , srcInfoPoints = []
1323                     }
1324                   (UnQual
1325                      SrcSpanInfo
1326                        { srcInfoSpan =
1327                            SrcSpan "tests/examples/PatternSynonyms3.hs" 25 30 25 36
1328                        , srcInfoPoints = []
1329                        }
1330                      (Ident
1331                         SrcSpanInfo
1332                           { srcInfoSpan =
1333                               SrcSpan "tests/examples/PatternSynonyms3.hs" 25 30 25 36
1334                           , srcInfoPoints = []
1335                           }
1336                         "String")))))
1337      , FunBind
1338          SrcSpanInfo
1339            { srcInfoSpan =
1340                SrcSpan "tests/examples/PatternSynonyms3.hs" 26 1 26 26
1341            , srcInfoPoints = []
1342            }
1343          [ Match
1344              SrcSpanInfo
1345                { srcInfoSpan =
1346                    SrcSpan "tests/examples/PatternSynonyms3.hs" 26 1 26 26
1347                , srcInfoPoints = []
1348                }
1349              (Ident
1350                 SrcSpanInfo
1351                   { srcInfoSpan =
1352                       SrcSpan "tests/examples/PatternSynonyms3.hs" 26 1 26 2
1353                   , srcInfoPoints = []
1354                   }
1355                 "f")
1356              [ PParen
1357                  SrcSpanInfo
1358                    { srcInfoSpan =
1359                        SrcSpan "tests/examples/PatternSynonyms3.hs" 26 3 26 17
1360                    , srcInfoPoints =
1361                        [ SrcSpan "tests/examples/PatternSynonyms3.hs" 26 3 26 4
1362                        , SrcSpan "tests/examples/PatternSynonyms3.hs" 26 16 26 17
1363                        ]
1364                    }
1365                  (PApp
1366                     SrcSpanInfo
1367                       { srcInfoSpan =
1368                           SrcSpan "tests/examples/PatternSynonyms3.hs" 26 4 26 16
1369                       , srcInfoPoints = []
1370                       }
1371                     (UnQual
1372                        SrcSpanInfo
1373                          { srcInfoSpan =
1374                              SrcSpan "tests/examples/PatternSynonyms3.hs" 26 4 26 14
1375                          , srcInfoPoints = []
1376                          }
1377                        (Ident
1378                           SrcSpanInfo
1379                             { srcInfoSpan =
1380                                 SrcSpan "tests/examples/PatternSynonyms3.hs" 26 4 26 14
1381                             , srcInfoPoints = []
1382                             }
1383                           "SinglePair"))
1384                     [ PVar
1385                         SrcSpanInfo
1386                           { srcInfoSpan =
1387                               SrcSpan "tests/examples/PatternSynonyms3.hs" 26 15 26 16
1388                           , srcInfoPoints = []
1389                           }
1390                         (Ident
1391                            SrcSpanInfo
1392                              { srcInfoSpan =
1393                                  SrcSpan "tests/examples/PatternSynonyms3.hs" 26 15 26 16
1394                              , srcInfoPoints = []
1395                              }
1396                            "x")
1397                     ])
1398              ]
1399              (UnGuardedRhs
1400                 SrcSpanInfo
1401                   { srcInfoSpan =
1402                       SrcSpan "tests/examples/PatternSynonyms3.hs" 26 18 26 26
1403                   , srcInfoPoints =
1404                       [ SrcSpan "tests/examples/PatternSynonyms3.hs" 26 18 26 19 ]
1405                   }
1406                 (App
1407                    SrcSpanInfo
1408                      { srcInfoSpan =
1409                          SrcSpan "tests/examples/PatternSynonyms3.hs" 26 20 26 26
1410                      , srcInfoPoints = []
1411                      }
1412                    (Var
1413                       SrcSpanInfo
1414                         { srcInfoSpan =
1415                             SrcSpan "tests/examples/PatternSynonyms3.hs" 26 20 26 24
1416                         , srcInfoPoints = []
1417                         }
1418                       (UnQual
1419                          SrcSpanInfo
1420                            { srcInfoSpan =
1421                                SrcSpan "tests/examples/PatternSynonyms3.hs" 26 20 26 24
1422                            , srcInfoPoints = []
1423                            }
1424                          (Ident
1425                             SrcSpanInfo
1426                               { srcInfoSpan =
1427                                   SrcSpan "tests/examples/PatternSynonyms3.hs" 26 20 26 24
1428                               , srcInfoPoints = []
1429                               }
1430                             "show")))
1431                    (Var
1432                       SrcSpanInfo
1433                         { srcInfoSpan =
1434                             SrcSpan "tests/examples/PatternSynonyms3.hs" 26 25 26 26
1435                         , srcInfoPoints = []
1436                         }
1437                       (UnQual
1438                          SrcSpanInfo
1439                            { srcInfoSpan =
1440                                SrcSpan "tests/examples/PatternSynonyms3.hs" 26 25 26 26
1441                            , srcInfoPoints = []
1442                            }
1443                          (Ident
1444                             SrcSpanInfo
1445                               { srcInfoSpan =
1446                                   SrcSpan "tests/examples/PatternSynonyms3.hs" 26 25 26 26
1447                               , srcInfoPoints = []
1448                               }
1449                             "x")))))
1450              Nothing
1451          ]
1452      , PatSyn
1453          SrcSpanInfo
1454            { srcInfoSpan =
1455                SrcSpan "tests/examples/PatternSynonyms3.hs" 28 1 28 14
1456            , srcInfoPoints =
1457                [ SrcSpan "tests/examples/PatternSynonyms3.hs" 28 1 28 8
1458                , SrcSpan "tests/examples/PatternSynonyms3.hs" 28 11 28 12
1459                ]
1460            }
1461          (PApp
1462             SrcSpanInfo
1463               { srcInfoSpan =
1464                   SrcSpan "tests/examples/PatternSynonyms3.hs" 28 9 28 10
1465               , srcInfoPoints = []
1466               }
1467             (UnQual
1468                SrcSpanInfo
1469                  { srcInfoSpan =
1470                      SrcSpan "tests/examples/PatternSynonyms3.hs" 28 9 28 10
1471                  , srcInfoPoints = []
1472                  }
1473                (Ident
1474                   SrcSpanInfo
1475                     { srcInfoSpan =
1476                         SrcSpan "tests/examples/PatternSynonyms3.hs" 28 9 28 10
1477                     , srcInfoPoints = []
1478                     }
1479                   "Q"))
1480             [])
1481          (PApp
1482             SrcSpanInfo
1483               { srcInfoSpan =
1484                   SrcSpan "tests/examples/PatternSynonyms3.hs" 28 13 28 14
1485               , srcInfoPoints = []
1486               }
1487             (UnQual
1488                SrcSpanInfo
1489                  { srcInfoSpan =
1490                      SrcSpan "tests/examples/PatternSynonyms3.hs" 28 13 28 14
1491                  , srcInfoPoints = []
1492                  }
1493                (Ident
1494                   SrcSpanInfo
1495                     { srcInfoSpan =
1496                         SrcSpan "tests/examples/PatternSynonyms3.hs" 28 13 28 14
1497                     , srcInfoPoints = []
1498                     }
1499                   "D"))
1500             [])
1501          ImplicitBidirectional
1502      , PatSynSig
1503          SrcSpanInfo
1504            { srcInfoSpan =
1505                SrcSpan "tests/examples/PatternSynonyms3.hs" 30 1 30 36
1506            , srcInfoPoints =
1507                [ SrcSpan "tests/examples/PatternSynonyms3.hs" 30 1 30 8
1508                , SrcSpan "tests/examples/PatternSynonyms3.hs" 30 11 30 13
1509                ]
1510            }
1511          [ Ident
1512              SrcSpanInfo
1513                { srcInfoSpan =
1514                    SrcSpan "tests/examples/PatternSynonyms3.hs" 30 9 30 10
1515                , srcInfoPoints = []
1516                }
1517              "C"
1518          ]
1519          Nothing
1520          Nothing
1521          Nothing
1522          Nothing
1523          (TyFun
1524             SrcSpanInfo
1525               { srcInfoSpan =
1526                   SrcSpan "tests/examples/PatternSynonyms3.hs" 30 14 30 36
1527               , srcInfoPoints =
1528                   [ SrcSpan "tests/examples/PatternSynonyms3.hs" 30 16 30 18 ]
1529               }
1530             (TyVar
1531                SrcSpanInfo
1532                  { srcInfoSpan =
1533                      SrcSpan "tests/examples/PatternSynonyms3.hs" 30 14 30 15
1534                  , srcInfoPoints = []
1535                  }
1536                (Ident
1537                   SrcSpanInfo
1538                     { srcInfoSpan =
1539                         SrcSpan "tests/examples/PatternSynonyms3.hs" 30 14 30 15
1540                     , srcInfoPoints = []
1541                     }
1542                   "a"))
1543             (TyApp
1544                SrcSpanInfo
1545                  { srcInfoSpan =
1546                      SrcSpan "tests/examples/PatternSynonyms3.hs" 30 19 30 36
1547                  , srcInfoPoints = []
1548                  }
1549                (TyApp
1550                   SrcSpanInfo
1551                     { srcInfoSpan =
1552                         SrcSpan "tests/examples/PatternSynonyms3.hs" 30 19 30 26
1553                     , srcInfoPoints = []
1554                     }
1555                   (TyCon
1556                      SrcSpanInfo
1557                        { srcInfoSpan =
1558                            SrcSpan "tests/examples/PatternSynonyms3.hs" 30 19 30 20
1559                        , srcInfoPoints = []
1560                        }
1561                      (UnQual
1562                         SrcSpanInfo
1563                           { srcInfoSpan =
1564                               SrcSpan "tests/examples/PatternSynonyms3.hs" 30 19 30 20
1565                           , srcInfoPoints = []
1566                           }
1567                         (Ident
1568                            SrcSpanInfo
1569                              { srcInfoSpan =
1570                                  SrcSpan "tests/examples/PatternSynonyms3.hs" 30 19 30 20
1571                              , srcInfoPoints = []
1572                              }
1573                            "X")))
1574                   (TyCon
1575                      SrcSpanInfo
1576                        { srcInfoSpan =
1577                            SrcSpan "tests/examples/PatternSynonyms3.hs" 30 21 30 26
1578                        , srcInfoPoints = []
1579                        }
1580                      (UnQual
1581                         SrcSpanInfo
1582                           { srcInfoSpan =
1583                               SrcSpan "tests/examples/PatternSynonyms3.hs" 30 21 30 26
1584                           , srcInfoPoints = []
1585                           }
1586                         (Ident
1587                            SrcSpanInfo
1588                              { srcInfoSpan =
1589                                  SrcSpan "tests/examples/PatternSynonyms3.hs" 30 21 30 26
1590                              , srcInfoPoints = []
1591                              }
1592                            "Maybe"))))
1593                (TyParen
1594                   SrcSpanInfo
1595                     { srcInfoSpan =
1596                         SrcSpan "tests/examples/PatternSynonyms3.hs" 30 27 30 36
1597                     , srcInfoPoints =
1598                         [ SrcSpan "tests/examples/PatternSynonyms3.hs" 30 27 30 28
1599                         , SrcSpan "tests/examples/PatternSynonyms3.hs" 30 35 30 36
1600                         ]
1601                     }
1602                   (TyApp
1603                      SrcSpanInfo
1604                        { srcInfoSpan =
1605                            SrcSpan "tests/examples/PatternSynonyms3.hs" 30 28 30 35
1606                        , srcInfoPoints = []
1607                        }
1608                      (TyCon
1609                         SrcSpanInfo
1610                           { srcInfoSpan =
1611                               SrcSpan "tests/examples/PatternSynonyms3.hs" 30 28 30 33
1612                           , srcInfoPoints = []
1613                           }
1614                         (UnQual
1615                            SrcSpanInfo
1616                              { srcInfoSpan =
1617                                  SrcSpan "tests/examples/PatternSynonyms3.hs" 30 28 30 33
1618                              , srcInfoPoints = []
1619                              }
1620                            (Ident
1621                               SrcSpanInfo
1622                                 { srcInfoSpan =
1623                                     SrcSpan "tests/examples/PatternSynonyms3.hs" 30 28 30 33
1624                                 , srcInfoPoints = []
1625                                 }
1626                               "Maybe")))
1627                      (TyVar
1628                         SrcSpanInfo
1629                           { srcInfoSpan =
1630                               SrcSpan "tests/examples/PatternSynonyms3.hs" 30 34 30 35
1631                           , srcInfoPoints = []
1632                           }
1633                         (Ident
1634                            SrcSpanInfo
1635                              { srcInfoSpan =
1636                                  SrcSpan "tests/examples/PatternSynonyms3.hs" 30 34 30 35
1637                              , srcInfoPoints = []
1638                              }
1639                            "a"))))))
1640      , PatSyn
1641          SrcSpanInfo
1642            { srcInfoSpan =
1643                SrcSpan "tests/examples/PatternSynonyms3.hs" 31 1 31 25
1644            , srcInfoPoints =
1645                [ SrcSpan "tests/examples/PatternSynonyms3.hs" 31 1 31 8
1646                , SrcSpan "tests/examples/PatternSynonyms3.hs" 31 13 31 14
1647                ]
1648            }
1649          (PApp
1650             SrcSpanInfo
1651               { srcInfoSpan =
1652                   SrcSpan "tests/examples/PatternSynonyms3.hs" 31 9 31 12
1653               , srcInfoPoints = []
1654               }
1655             (UnQual
1656                SrcSpanInfo
1657                  { srcInfoSpan =
1658                      SrcSpan "tests/examples/PatternSynonyms3.hs" 31 9 31 10
1659                  , srcInfoPoints = []
1660                  }
1661                (Ident
1662                   SrcSpanInfo
1663                     { srcInfoSpan =
1664                         SrcSpan "tests/examples/PatternSynonyms3.hs" 31 9 31 10
1665                     , srcInfoPoints = []
1666                     }
1667                   "C"))
1668             [ PVar
1669                 SrcSpanInfo
1670                   { srcInfoSpan =
1671                       SrcSpan "tests/examples/PatternSynonyms3.hs" 31 11 31 12
1672                   , srcInfoPoints = []
1673                   }
1674                 (Ident
1675                    SrcSpanInfo
1676                      { srcInfoSpan =
1677                          SrcSpan "tests/examples/PatternSynonyms3.hs" 31 11 31 12
1678                      , srcInfoPoints = []
1679                      }
1680                    "x")
1681             ])
1682          (PApp
1683             SrcSpanInfo
1684               { srcInfoSpan =
1685                   SrcSpan "tests/examples/PatternSynonyms3.hs" 31 15 31 25
1686               , srcInfoPoints = []
1687               }
1688             (UnQual
1689                SrcSpanInfo
1690                  { srcInfoSpan =
1691                      SrcSpan "tests/examples/PatternSynonyms3.hs" 31 15 31 16
1692                  , srcInfoPoints = []
1693                  }
1694                (Ident
1695                   SrcSpanInfo
1696                     { srcInfoSpan =
1697                         SrcSpan "tests/examples/PatternSynonyms3.hs" 31 15 31 16
1698                     , srcInfoPoints = []
1699                     }
1700                   "Y"))
1701             [ PParen
1702                 SrcSpanInfo
1703                   { srcInfoSpan =
1704                       SrcSpan "tests/examples/PatternSynonyms3.hs" 31 17 31 25
1705                   , srcInfoPoints =
1706                       [ SrcSpan "tests/examples/PatternSynonyms3.hs" 31 17 31 18
1707                       , SrcSpan "tests/examples/PatternSynonyms3.hs" 31 24 31 25
1708                       ]
1709                   }
1710                 (PApp
1711                    SrcSpanInfo
1712                      { srcInfoSpan =
1713                          SrcSpan "tests/examples/PatternSynonyms3.hs" 31 18 31 24
1714                      , srcInfoPoints = []
1715                      }
1716                    (UnQual
1717                       SrcSpanInfo
1718                         { srcInfoSpan =
1719                             SrcSpan "tests/examples/PatternSynonyms3.hs" 31 18 31 22
1720                         , srcInfoPoints = []
1721                         }
1722                       (Ident
1723                          SrcSpanInfo
1724                            { srcInfoSpan =
1725                                SrcSpan "tests/examples/PatternSynonyms3.hs" 31 18 31 22
1726                            , srcInfoPoints = []
1727                            }
1728                          "Just"))
1729                    [ PVar
1730                        SrcSpanInfo
1731                          { srcInfoSpan =
1732                              SrcSpan "tests/examples/PatternSynonyms3.hs" 31 23 31 24
1733                          , srcInfoPoints = []
1734                          }
1735                        (Ident
1736                           SrcSpanInfo
1737                             { srcInfoSpan =
1738                                 SrcSpan "tests/examples/PatternSynonyms3.hs" 31 23 31 24
1739                             , srcInfoPoints = []
1740                             }
1741                           "x")
1742                    ])
1743             ])
1744          ImplicitBidirectional
1745      , PatSynSig
1746          SrcSpanInfo
1747            { srcInfoSpan =
1748                SrcSpan "tests/examples/PatternSynonyms3.hs" 34 1 34 49
1749            , srcInfoPoints =
1750                [ SrcSpan "tests/examples/PatternSynonyms3.hs" 34 1 34 8
1751                , SrcSpan "tests/examples/PatternSynonyms3.hs" 34 13 34 15
1752                , SrcSpan "tests/examples/PatternSynonyms3.hs" 34 16 34 22
1753                , SrcSpan "tests/examples/PatternSynonyms3.hs" 34 32 34 33
1754                ]
1755            }
1756          [ Ident
1757              SrcSpanInfo
1758                { srcInfoSpan =
1759                    SrcSpan "tests/examples/PatternSynonyms3.hs" 34 9 34 12
1760                , srcInfoPoints = []
1761                }
1762              "Syn"
1763          ]
1764          (Just
1765             [ UnkindedVar
1766                 SrcSpanInfo
1767                   { srcInfoSpan =
1768                       SrcSpan "tests/examples/PatternSynonyms3.hs" 34 23 34 24
1769                   , srcInfoPoints = []
1770                   }
1771                 (Ident
1772                    SrcSpanInfo
1773                      { srcInfoSpan =
1774                          SrcSpan "tests/examples/PatternSynonyms3.hs" 34 23 34 24
1775                      , srcInfoPoints = []
1776                      }
1777                    "a")
1778             , UnkindedVar
1779                 SrcSpanInfo
1780                   { srcInfoSpan =
1781                       SrcSpan "tests/examples/PatternSynonyms3.hs" 34 25 34 26
1782                   , srcInfoPoints = []
1783                   }
1784                 (Ident
1785                    SrcSpanInfo
1786                      { srcInfoSpan =
1787                          SrcSpan "tests/examples/PatternSynonyms3.hs" 34 25 34 26
1788                      , srcInfoPoints = []
1789                      }
1790                    "b")
1791             , UnkindedVar
1792                 SrcSpanInfo
1793                   { srcInfoSpan =
1794                       SrcSpan "tests/examples/PatternSynonyms3.hs" 34 27 34 28
1795                   , srcInfoPoints = []
1796                   }
1797                 (Ident
1798                    SrcSpanInfo
1799                      { srcInfoSpan =
1800                          SrcSpan "tests/examples/PatternSynonyms3.hs" 34 27 34 28
1801                      , srcInfoPoints = []
1802                      }
1803                    "c")
1804             ])
1805          (Just
1806             (CxEmpty
1807                SrcSpanInfo
1808                  { srcInfoSpan =
1809                      SrcSpan "tests/examples/PatternSynonyms3.hs" 34 34 34 39
1810                  , srcInfoPoints =
1811                      [ SrcSpan "tests/examples/PatternSynonyms3.hs" 34 34 34 35
1812                      , SrcSpan "tests/examples/PatternSynonyms3.hs" 34 35 34 36
1813                      , SrcSpan "tests/examples/PatternSynonyms3.hs" 34 37 34 39
1814                      ]
1815                  }))
1816          Nothing
1817          (Just
1818             (CxEmpty
1819                SrcSpanInfo
1820                  { srcInfoSpan =
1821                      SrcSpan "tests/examples/PatternSynonyms3.hs" 34 40 34 45
1822                  , srcInfoPoints =
1823                      [ SrcSpan "tests/examples/PatternSynonyms3.hs" 34 40 34 41
1824                      , SrcSpan "tests/examples/PatternSynonyms3.hs" 34 41 34 42
1825                      , SrcSpan "tests/examples/PatternSynonyms3.hs" 34 43 34 45
1826                      ]
1827                  }))
1828          (TyCon
1829             SrcSpanInfo
1830               { srcInfoSpan =
1831                   SrcSpan "tests/examples/PatternSynonyms3.hs" 34 46 34 49
1832               , srcInfoPoints = []
1833               }
1834             (UnQual
1835                SrcSpanInfo
1836                  { srcInfoSpan =
1837                      SrcSpan "tests/examples/PatternSynonyms3.hs" 34 46 34 49
1838                  , srcInfoPoints = []
1839                  }
1840                (Ident
1841                   SrcSpanInfo
1842                     { srcInfoSpan =
1843                         SrcSpan "tests/examples/PatternSynonyms3.hs" 34 46 34 49
1844                     , srcInfoPoints = []
1845                     }
1846                   "Int")))
1847      , PatSynSig
1848          SrcSpanInfo
1849            { srcInfoSpan =
1850                SrcSpan "tests/examples/PatternSynonyms3.hs" 36 1 36 64
1851            , srcInfoPoints =
1852                [ SrcSpan "tests/examples/PatternSynonyms3.hs" 36 1 36 8
1853                , SrcSpan "tests/examples/PatternSynonyms3.hs" 36 11 36 13
1854                ]
1855            }
1856          [ Ident
1857              SrcSpanInfo
1858                { srcInfoSpan =
1859                    SrcSpan "tests/examples/PatternSynonyms3.hs" 36 9 36 10
1860                , srcInfoPoints = []
1861                }
1862              "C"
1863          ]
1864          Nothing
1865          (Just
1866             (CxSingle
1867                SrcSpanInfo
1868                  { srcInfoSpan =
1869                      SrcSpan "tests/examples/PatternSynonyms3.hs" 36 14 36 33
1870                  , srcInfoPoints =
1871                      [ SrcSpan "tests/examples/PatternSynonyms3.hs" 36 14 36 15
1872                      , SrcSpan "tests/examples/PatternSynonyms3.hs" 36 29 36 30
1873                      , SrcSpan "tests/examples/PatternSynonyms3.hs" 36 31 36 33
1874                      ]
1875                  }
1876                (ParenA
1877                   SrcSpanInfo
1878                     { srcInfoSpan =
1879                         SrcSpan "tests/examples/PatternSynonyms3.hs" 36 14 36 33
1880                     , srcInfoPoints =
1881                         [ SrcSpan "tests/examples/PatternSynonyms3.hs" 36 14 36 15
1882                         , SrcSpan "tests/examples/PatternSynonyms3.hs" 36 29 36 30
1883                         , SrcSpan "tests/examples/PatternSynonyms3.hs" 36 31 36 33
1884                         ]
1885                     }
1886                   (TypeA
1887                      SrcSpanInfo
1888                        { srcInfoSpan =
1889                            SrcSpan "tests/examples/PatternSynonyms3.hs" 36 15 36 29
1890                        , srcInfoPoints = []
1891                        }
1892                      (TyApp
1893                         SrcSpanInfo
1894                           { srcInfoSpan =
1895                               SrcSpan "tests/examples/PatternSynonyms3.hs" 36 15 36 29
1896                           , srcInfoPoints = []
1897                           }
1898                         (TyCon
1899                            SrcSpanInfo
1900                              { srcInfoSpan =
1901                                  SrcSpan "tests/examples/PatternSynonyms3.hs" 36 15 36 29
1902                              , srcInfoPoints = []
1903                              }
1904                            (UnQual
1905                               SrcSpanInfo
1906                                 { srcInfoSpan =
1907                                     SrcSpan "tests/examples/PatternSynonyms3.hs" 36 15 36 19
1908                                 , srcInfoPoints = []
1909                                 }
1910                               (Ident
1911                                  SrcSpanInfo
1912                                    { srcInfoSpan =
1913                                        SrcSpan "tests/examples/PatternSynonyms3.hs" 36 15 36 19
1914                                    , srcInfoPoints = []
1915                                    }
1916                                  "Show")))
1917                         (TyTuple
1918                            SrcSpanInfo
1919                              { srcInfoSpan =
1920                                  SrcSpan "tests/examples/PatternSynonyms3.hs" 36 20 36 29
1921                              , srcInfoPoints =
1922                                  [ SrcSpan "tests/examples/PatternSynonyms3.hs" 36 20 36 21
1923                                  , SrcSpan "tests/examples/PatternSynonyms3.hs" 36 22 36 23
1924                                  , SrcSpan "tests/examples/PatternSynonyms3.hs" 36 28 36 29
1925                                  ]
1926                              }
1927                            Boxed
1928                            [ TyVar
1929                                SrcSpanInfo
1930                                  { srcInfoSpan =
1931                                      SrcSpan "tests/examples/PatternSynonyms3.hs" 36 21 36 22
1932                                  , srcInfoPoints = []
1933                                  }
1934                                (Ident
1935                                   SrcSpanInfo
1936                                     { srcInfoSpan =
1937                                         SrcSpan "tests/examples/PatternSynonyms3.hs" 36 21 36 22
1938                                     , srcInfoPoints = []
1939                                     }
1940                                   "a")
1941                            , TyCon
1942                                SrcSpanInfo
1943                                  { srcInfoSpan =
1944                                      SrcSpan "tests/examples/PatternSynonyms3.hs" 36 24 36 28
1945                                  , srcInfoPoints = []
1946                                  }
1947                                (UnQual
1948                                   SrcSpanInfo
1949                                     { srcInfoSpan =
1950                                         SrcSpan "tests/examples/PatternSynonyms3.hs" 36 24 36 28
1951                                     , srcInfoPoints = []
1952                                     }
1953                                   (Ident
1954                                      SrcSpanInfo
1955                                        { srcInfoSpan =
1956                                            SrcSpan "tests/examples/PatternSynonyms3.hs" 36 24 36 28
1957                                        , srcInfoPoints = []
1958                                        }
1959                                      "Bool"))
1960                            ]))))))
1961          Nothing
1962          Nothing
1963          (TyFun
1964             SrcSpanInfo
1965               { srcInfoSpan =
1966                   SrcSpan "tests/examples/PatternSynonyms3.hs" 36 34 36 64
1967               , srcInfoPoints =
1968                   [ SrcSpan "tests/examples/PatternSynonyms3.hs" 36 36 36 38 ]
1969               }
1970             (TyVar
1971                SrcSpanInfo
1972                  { srcInfoSpan =
1973                      SrcSpan "tests/examples/PatternSynonyms3.hs" 36 34 36 35
1974                  , srcInfoPoints = []
1975                  }
1976                (Ident
1977                   SrcSpanInfo
1978                     { srcInfoSpan =
1979                         SrcSpan "tests/examples/PatternSynonyms3.hs" 36 34 36 35
1980                     , srcInfoPoints = []
1981                     }
1982                   "a"))
1983             (TyApp
1984                SrcSpanInfo
1985                  { srcInfoSpan =
1986                      SrcSpan "tests/examples/PatternSynonyms3.hs" 36 39 36 64
1987                  , srcInfoPoints = []
1988                  }
1989                (TyApp
1990                   SrcSpanInfo
1991                     { srcInfoSpan =
1992                         SrcSpan "tests/examples/PatternSynonyms3.hs" 36 39 36 46
1993                     , srcInfoPoints = []
1994                     }
1995                   (TyCon
1996                      SrcSpanInfo
1997                        { srcInfoSpan =
1998                            SrcSpan "tests/examples/PatternSynonyms3.hs" 36 39 36 40
1999                        , srcInfoPoints = []
2000                        }
2001                      (UnQual
2002                         SrcSpanInfo
2003                           { srcInfoSpan =
2004                               SrcSpan "tests/examples/PatternSynonyms3.hs" 36 39 36 40
2005                           , srcInfoPoints = []
2006                           }
2007                         (Ident
2008                            SrcSpanInfo
2009                              { srcInfoSpan =
2010                                  SrcSpan "tests/examples/PatternSynonyms3.hs" 36 39 36 40
2011                              , srcInfoPoints = []
2012                              }
2013                            "X")))
2014                   (TyCon
2015                      SrcSpanInfo
2016                        { srcInfoSpan =
2017                            SrcSpan "tests/examples/PatternSynonyms3.hs" 36 41 36 46
2018                        , srcInfoPoints = []
2019                        }
2020                      (UnQual
2021                         SrcSpanInfo
2022                           { srcInfoSpan =
2023                               SrcSpan "tests/examples/PatternSynonyms3.hs" 36 41 36 46
2024                           , srcInfoPoints = []
2025                           }
2026                         (Ident
2027                            SrcSpanInfo
2028                              { srcInfoSpan =
2029                                  SrcSpan "tests/examples/PatternSynonyms3.hs" 36 41 36 46
2030                              , srcInfoPoints = []
2031                              }
2032                            "Maybe"))))
2033                (TyParen
2034                   SrcSpanInfo
2035                     { srcInfoSpan =
2036                         SrcSpan "tests/examples/PatternSynonyms3.hs" 36 47 36 64
2037                     , srcInfoPoints =
2038                         [ SrcSpan "tests/examples/PatternSynonyms3.hs" 36 47 36 48
2039                         , SrcSpan "tests/examples/PatternSynonyms3.hs" 36 63 36 64
2040                         ]
2041                     }
2042                   (TyApp
2043                      SrcSpanInfo
2044                        { srcInfoSpan =
2045                            SrcSpan "tests/examples/PatternSynonyms3.hs" 36 48 36 63
2046                        , srcInfoPoints = []
2047                        }
2048                      (TyCon
2049                         SrcSpanInfo
2050                           { srcInfoSpan =
2051                               SrcSpan "tests/examples/PatternSynonyms3.hs" 36 48 36 53
2052                           , srcInfoPoints = []
2053                           }
2054                         (UnQual
2055                            SrcSpanInfo
2056                              { srcInfoSpan =
2057                                  SrcSpan "tests/examples/PatternSynonyms3.hs" 36 48 36 53
2058                              , srcInfoPoints = []
2059                              }
2060                            (Ident
2061                               SrcSpanInfo
2062                                 { srcInfoSpan =
2063                                     SrcSpan "tests/examples/PatternSynonyms3.hs" 36 48 36 53
2064                                 , srcInfoPoints = []
2065                                 }
2066                               "Maybe")))
2067                      (TyTuple
2068                         SrcSpanInfo
2069                           { srcInfoSpan =
2070                               SrcSpan "tests/examples/PatternSynonyms3.hs" 36 54 36 63
2071                           , srcInfoPoints =
2072                               [ SrcSpan "tests/examples/PatternSynonyms3.hs" 36 54 36 55
2073                               , SrcSpan "tests/examples/PatternSynonyms3.hs" 36 56 36 57
2074                               , SrcSpan "tests/examples/PatternSynonyms3.hs" 36 62 36 63
2075                               ]
2076                           }
2077                         Boxed
2078                         [ TyVar
2079                             SrcSpanInfo
2080                               { srcInfoSpan =
2081                                   SrcSpan "tests/examples/PatternSynonyms3.hs" 36 55 36 56
2082                               , srcInfoPoints = []
2083                               }
2084                             (Ident
2085                                SrcSpanInfo
2086                                  { srcInfoSpan =
2087                                      SrcSpan "tests/examples/PatternSynonyms3.hs" 36 55 36 56
2088                                  , srcInfoPoints = []
2089                                  }
2090                                "a")
2091                         , TyCon
2092                             SrcSpanInfo
2093                               { srcInfoSpan =
2094                                   SrcSpan "tests/examples/PatternSynonyms3.hs" 36 58 36 62
2095                               , srcInfoPoints = []
2096                               }
2097                             (UnQual
2098                                SrcSpanInfo
2099                                  { srcInfoSpan =
2100                                      SrcSpan "tests/examples/PatternSynonyms3.hs" 36 58 36 62
2101                                  , srcInfoPoints = []
2102                                  }
2103                                (Ident
2104                                   SrcSpanInfo
2105                                     { srcInfoSpan =
2106                                         SrcSpan "tests/examples/PatternSynonyms3.hs" 36 58 36 62
2107                                     , srcInfoPoints = []
2108                                     }
2109                                   "Bool"))
2110                         ])))))
2111      , PatSyn
2112          SrcSpanInfo
2113            { srcInfoSpan =
2114                SrcSpan "tests/examples/PatternSynonyms3.hs" 37 1 37 33
2115            , srcInfoPoints =
2116                [ SrcSpan "tests/examples/PatternSynonyms3.hs" 37 1 37 8
2117                , SrcSpan "tests/examples/PatternSynonyms3.hs" 37 13 37 14
2118                ]
2119            }
2120          (PApp
2121             SrcSpanInfo
2122               { srcInfoSpan =
2123                   SrcSpan "tests/examples/PatternSynonyms3.hs" 37 9 37 12
2124               , srcInfoPoints = []
2125               }
2126             (UnQual
2127                SrcSpanInfo
2128                  { srcInfoSpan =
2129                      SrcSpan "tests/examples/PatternSynonyms3.hs" 37 9 37 10
2130                  , srcInfoPoints = []
2131                  }
2132                (Ident
2133                   SrcSpanInfo
2134                     { srcInfoSpan =
2135                         SrcSpan "tests/examples/PatternSynonyms3.hs" 37 9 37 10
2136                     , srcInfoPoints = []
2137                     }
2138                   "C"))
2139             [ PVar
2140                 SrcSpanInfo
2141                   { srcInfoSpan =
2142                       SrcSpan "tests/examples/PatternSynonyms3.hs" 37 11 37 12
2143                   , srcInfoPoints = []
2144                   }
2145                 (Ident
2146                    SrcSpanInfo
2147                      { srcInfoSpan =
2148                          SrcSpan "tests/examples/PatternSynonyms3.hs" 37 11 37 12
2149                      , srcInfoPoints = []
2150                      }
2151                    "x")
2152             ])
2153          (PApp
2154             SrcSpanInfo
2155               { srcInfoSpan =
2156                   SrcSpan "tests/examples/PatternSynonyms3.hs" 37 15 37 33
2157               , srcInfoPoints = []
2158               }
2159             (UnQual
2160                SrcSpanInfo
2161                  { srcInfoSpan =
2162                      SrcSpan "tests/examples/PatternSynonyms3.hs" 37 15 37 16
2163                  , srcInfoPoints = []
2164                  }
2165                (Ident
2166                   SrcSpanInfo
2167                     { srcInfoSpan =
2168                         SrcSpan "tests/examples/PatternSynonyms3.hs" 37 15 37 16
2169                     , srcInfoPoints = []
2170                     }
2171                   "Y"))
2172             [ PParen
2173                 SrcSpanInfo
2174                   { srcInfoSpan =
2175                       SrcSpan "tests/examples/PatternSynonyms3.hs" 37 17 37 33
2176                   , srcInfoPoints =
2177                       [ SrcSpan "tests/examples/PatternSynonyms3.hs" 37 17 37 18
2178                       , SrcSpan "tests/examples/PatternSynonyms3.hs" 37 32 37 33
2179                       ]
2180                   }
2181                 (PApp
2182                    SrcSpanInfo
2183                      { srcInfoSpan =
2184                          SrcSpan "tests/examples/PatternSynonyms3.hs" 37 18 37 32
2185                      , srcInfoPoints = []
2186                      }
2187                    (UnQual
2188                       SrcSpanInfo
2189                         { srcInfoSpan =
2190                             SrcSpan "tests/examples/PatternSynonyms3.hs" 37 18 37 22
2191                         , srcInfoPoints = []
2192                         }
2193                       (Ident
2194                          SrcSpanInfo
2195                            { srcInfoSpan =
2196                                SrcSpan "tests/examples/PatternSynonyms3.hs" 37 18 37 22
2197                            , srcInfoPoints = []
2198                            }
2199                          "Just"))
2200                    [ PTuple
2201                        SrcSpanInfo
2202                          { srcInfoSpan =
2203                              SrcSpan "tests/examples/PatternSynonyms3.hs" 37 23 37 32
2204                          , srcInfoPoints =
2205                              [ SrcSpan "tests/examples/PatternSynonyms3.hs" 37 23 37 24
2206                              , SrcSpan "tests/examples/PatternSynonyms3.hs" 37 25 37 26
2207                              , SrcSpan "tests/examples/PatternSynonyms3.hs" 37 31 37 32
2208                              ]
2209                          }
2210                        Boxed
2211                        [ PVar
2212                            SrcSpanInfo
2213                              { srcInfoSpan =
2214                                  SrcSpan "tests/examples/PatternSynonyms3.hs" 37 24 37 25
2215                              , srcInfoPoints = []
2216                              }
2217                            (Ident
2218                               SrcSpanInfo
2219                                 { srcInfoSpan =
2220                                     SrcSpan "tests/examples/PatternSynonyms3.hs" 37 24 37 25
2221                                 , srcInfoPoints = []
2222                                 }
2223                               "x")
2224                        , PApp
2225                            SrcSpanInfo
2226                              { srcInfoSpan =
2227                                  SrcSpan "tests/examples/PatternSynonyms3.hs" 37 27 37 31
2228                              , srcInfoPoints = []
2229                              }
2230                            (UnQual
2231                               SrcSpanInfo
2232                                 { srcInfoSpan =
2233                                     SrcSpan "tests/examples/PatternSynonyms3.hs" 37 27 37 31
2234                                 , srcInfoPoints = []
2235                                 }
2236                               (Ident
2237                                  SrcSpanInfo
2238                                    { srcInfoSpan =
2239                                        SrcSpan "tests/examples/PatternSynonyms3.hs" 37 27 37 31
2240                                    , srcInfoPoints = []
2241                                    }
2242                                  "True"))
2243                            []
2244                        ]
2245                    ])
2246             ])
2247          ImplicitBidirectional
2248      , PatSynSig
2249          SrcSpanInfo
2250            { srcInfoSpan =
2251                SrcSpan "tests/examples/PatternSynonyms3.hs" 39 1 39 22
2252            , srcInfoPoints =
2253                [ SrcSpan "tests/examples/PatternSynonyms3.hs" 39 1 39 8
2254                , SrcSpan "tests/examples/PatternSynonyms3.hs" 39 11 39 13
2255                ]
2256            }
2257          [ Ident
2258              SrcSpanInfo
2259                { srcInfoSpan =
2260                    SrcSpan "tests/examples/PatternSynonyms3.hs" 39 9 39 10
2261                , srcInfoPoints = []
2262                }
2263              "P"
2264          ]
2265          Nothing
2266          Nothing
2267          Nothing
2268          Nothing
2269          (TyApp
2270             SrcSpanInfo
2271               { srcInfoSpan =
2272                   SrcSpan "tests/examples/PatternSynonyms3.hs" 39 14 39 22
2273               , srcInfoPoints = []
2274               }
2275             (TyApp
2276                SrcSpanInfo
2277                  { srcInfoSpan =
2278                      SrcSpan "tests/examples/PatternSynonyms3.hs" 39 14 39 20
2279                  , srcInfoPoints = []
2280                  }
2281                (TyCon
2282                   SrcSpanInfo
2283                     { srcInfoSpan =
2284                         SrcSpan "tests/examples/PatternSynonyms3.hs" 39 14 39 15
2285                     , srcInfoPoints = []
2286                     }
2287                   (UnQual
2288                      SrcSpanInfo
2289                        { srcInfoSpan =
2290                            SrcSpan "tests/examples/PatternSynonyms3.hs" 39 14 39 15
2291                        , srcInfoPoints = []
2292                        }
2293                      (Ident
2294                         SrcSpanInfo
2295                           { srcInfoSpan =
2296                               SrcSpan "tests/examples/PatternSynonyms3.hs" 39 14 39 15
2297                           , srcInfoPoints = []
2298                           }
2299                         "T")))
2300                (TyCon
2301                   SrcSpanInfo
2302                     { srcInfoSpan =
2303                         SrcSpan "tests/examples/PatternSynonyms3.hs" 39 16 39 20
2304                     , srcInfoPoints = []
2305                     }
2306                   (UnQual
2307                      SrcSpanInfo
2308                        { srcInfoSpan =
2309                            SrcSpan "tests/examples/PatternSynonyms3.hs" 39 16 39 20
2310                        , srcInfoPoints = []
2311                        }
2312                      (Ident
2313                         SrcSpanInfo
2314                           { srcInfoSpan =
2315                               SrcSpan "tests/examples/PatternSynonyms3.hs" 39 16 39 20
2316                           , srcInfoPoints = []
2317                           }
2318                         "Bool"))))
2319             (TyVar
2320                SrcSpanInfo
2321                  { srcInfoSpan =
2322                      SrcSpan "tests/examples/PatternSynonyms3.hs" 39 21 39 22
2323                  , srcInfoPoints = []
2324                  }
2325                (Ident
2326                   SrcSpanInfo
2327                     { srcInfoSpan =
2328                         SrcSpan "tests/examples/PatternSynonyms3.hs" 39 21 39 22
2329                     , srcInfoPoints = []
2330                     }
2331                   "b")))
2332      , PatSyn
2333          SrcSpanInfo
2334            { srcInfoSpan =
2335                SrcSpan "tests/examples/PatternSynonyms3.hs" 40 1 40 22
2336            , srcInfoPoints =
2337                [ SrcSpan "tests/examples/PatternSynonyms3.hs" 40 1 40 8
2338                , SrcSpan "tests/examples/PatternSynonyms3.hs" 40 11 40 13
2339                ]
2340            }
2341          (PApp
2342             SrcSpanInfo
2343               { srcInfoSpan =
2344                   SrcSpan "tests/examples/PatternSynonyms3.hs" 40 9 40 10
2345               , srcInfoPoints = []
2346               }
2347             (UnQual
2348                SrcSpanInfo
2349                  { srcInfoSpan =
2350                      SrcSpan "tests/examples/PatternSynonyms3.hs" 40 9 40 10
2351                  , srcInfoPoints = []
2352                  }
2353                (Ident
2354                   SrcSpanInfo
2355                     { srcInfoSpan =
2356                         SrcSpan "tests/examples/PatternSynonyms3.hs" 40 9 40 10
2357                     , srcInfoPoints = []
2358                     }
2359                   "P"))
2360             [])
2361          (PApp
2362             SrcSpanInfo
2363               { srcInfoSpan =
2364                   SrcSpan "tests/examples/PatternSynonyms3.hs" 40 14 40 22
2365               , srcInfoPoints = []
2366               }
2367             (UnQual
2368                SrcSpanInfo
2369                  { srcInfoSpan =
2370                      SrcSpan "tests/examples/PatternSynonyms3.hs" 40 14 40 17
2371                  , srcInfoPoints = []
2372                  }
2373                (Ident
2374                   SrcSpanInfo
2375                     { srcInfoSpan =
2376                         SrcSpan "tests/examples/PatternSynonyms3.hs" 40 14 40 17
2377                     , srcInfoPoints = []
2378                     }
2379                   "MkT"))
2380             [ PApp
2381                 SrcSpanInfo
2382                   { srcInfoSpan =
2383                       SrcSpan "tests/examples/PatternSynonyms3.hs" 40 18 40 22
2384                   , srcInfoPoints = []
2385                   }
2386                 (UnQual
2387                    SrcSpanInfo
2388                      { srcInfoSpan =
2389                          SrcSpan "tests/examples/PatternSynonyms3.hs" 40 18 40 22
2390                      , srcInfoPoints = []
2391                      }
2392                    (Ident
2393                       SrcSpanInfo
2394                         { srcInfoSpan =
2395                             SrcSpan "tests/examples/PatternSynonyms3.hs" 40 18 40 22
2396                         , srcInfoPoints = []
2397                         }
2398                       "True"))
2399                 []
2400             ])
2401          Unidirectional
2402      , PatSynSig
2403          SrcSpanInfo
2404            { srcInfoSpan =
2405                SrcSpan "tests/examples/PatternSynonyms3.hs" 42 1 42 35
2406            , srcInfoPoints =
2407                [ SrcSpan "tests/examples/PatternSynonyms3.hs" 42 1 42 8
2408                , SrcSpan "tests/examples/PatternSynonyms3.hs" 42 11 42 13
2409                ]
2410            }
2411          [ Ident
2412              SrcSpanInfo
2413                { srcInfoSpan =
2414                    SrcSpan "tests/examples/PatternSynonyms3.hs" 42 9 42 10
2415                , srcInfoPoints = []
2416                }
2417              "D"
2418          ]
2419          Nothing
2420          Nothing
2421          Nothing
2422          Nothing
2423          (TyFun
2424             SrcSpanInfo
2425               { srcInfoSpan =
2426                   SrcSpan "tests/examples/PatternSynonyms3.hs" 42 14 42 35
2427               , srcInfoPoints =
2428                   [ SrcSpan "tests/examples/PatternSynonyms3.hs" 42 16 42 18 ]
2429               }
2430             (TyVar
2431                SrcSpanInfo
2432                  { srcInfoSpan =
2433                      SrcSpan "tests/examples/PatternSynonyms3.hs" 42 14 42 15
2434                  , srcInfoPoints = []
2435                  }
2436                (Ident
2437                   SrcSpanInfo
2438                     { srcInfoSpan =
2439                         SrcSpan "tests/examples/PatternSynonyms3.hs" 42 14 42 15
2440                     , srcInfoPoints = []
2441                     }
2442                   "a"))
2443             (TyApp
2444                SrcSpanInfo
2445                  { srcInfoSpan =
2446                      SrcSpan "tests/examples/PatternSynonyms3.hs" 42 19 42 35
2447                  , srcInfoPoints = []
2448                  }
2449                (TyApp
2450                   SrcSpanInfo
2451                     { srcInfoSpan =
2452                         SrcSpan "tests/examples/PatternSynonyms3.hs" 42 19 42 30
2453                     , srcInfoPoints = []
2454                     }
2455                   (TyCon
2456                      SrcSpanInfo
2457                        { srcInfoSpan =
2458                            SrcSpan "tests/examples/PatternSynonyms3.hs" 42 19 42 20
2459                        , srcInfoPoints = []
2460                        }
2461                      (UnQual
2462                         SrcSpanInfo
2463                           { srcInfoSpan =
2464                               SrcSpan "tests/examples/PatternSynonyms3.hs" 42 19 42 20
2465                           , srcInfoPoints = []
2466                           }
2467                         (Ident
2468                            SrcSpanInfo
2469                              { srcInfoSpan =
2470                                  SrcSpan "tests/examples/PatternSynonyms3.hs" 42 19 42 20
2471                              , srcInfoPoints = []
2472                              }
2473                            "T")))
2474                   (TyParen
2475                      SrcSpanInfo
2476                        { srcInfoSpan =
2477                            SrcSpan "tests/examples/PatternSynonyms3.hs" 42 21 42 30
2478                        , srcInfoPoints =
2479                            [ SrcSpan "tests/examples/PatternSynonyms3.hs" 42 21 42 22
2480                            , SrcSpan "tests/examples/PatternSynonyms3.hs" 42 29 42 30
2481                            ]
2482                        }
2483                      (TyApp
2484                         SrcSpanInfo
2485                           { srcInfoSpan =
2486                               SrcSpan "tests/examples/PatternSynonyms3.hs" 42 22 42 29
2487                           , srcInfoPoints = []
2488                           }
2489                         (TyCon
2490                            SrcSpanInfo
2491                              { srcInfoSpan =
2492                                  SrcSpan "tests/examples/PatternSynonyms3.hs" 42 22 42 27
2493                              , srcInfoPoints = []
2494                              }
2495                            (UnQual
2496                               SrcSpanInfo
2497                                 { srcInfoSpan =
2498                                     SrcSpan "tests/examples/PatternSynonyms3.hs" 42 22 42 27
2499                                 , srcInfoPoints = []
2500                                 }
2501                               (Ident
2502                                  SrcSpanInfo
2503                                    { srcInfoSpan =
2504                                        SrcSpan "tests/examples/PatternSynonyms3.hs" 42 22 42 27
2505                                    , srcInfoPoints = []
2506                                    }
2507                                  "Maybe")))
2508                         (TyVar
2509                            SrcSpanInfo
2510                              { srcInfoSpan =
2511                                  SrcSpan "tests/examples/PatternSynonyms3.hs" 42 28 42 29
2512                              , srcInfoPoints = []
2513                              }
2514                            (Ident
2515                               SrcSpanInfo
2516                                 { srcInfoSpan =
2517                                     SrcSpan "tests/examples/PatternSynonyms3.hs" 42 28 42 29
2518                                 , srcInfoPoints = []
2519                                 }
2520                               "a")))))
2521                (TyCon
2522                   SrcSpanInfo
2523                     { srcInfoSpan =
2524                         SrcSpan "tests/examples/PatternSynonyms3.hs" 42 31 42 35
2525                     , srcInfoPoints = []
2526                     }
2527                   (UnQual
2528                      SrcSpanInfo
2529                        { srcInfoSpan =
2530                            SrcSpan "tests/examples/PatternSynonyms3.hs" 42 31 42 35
2531                        , srcInfoPoints = []
2532                        }
2533                      (Ident
2534                         SrcSpanInfo
2535                           { srcInfoSpan =
2536                               SrcSpan "tests/examples/PatternSynonyms3.hs" 42 31 42 35
2537                           , srcInfoPoints = []
2538                           }
2539                         "Bool")))))
2540      , PatSyn
2541          SrcSpanInfo
2542            { srcInfoSpan =
2543                SrcSpan "tests/examples/PatternSynonyms3.hs" 43 1 43 27
2544            , srcInfoPoints =
2545                [ SrcSpan "tests/examples/PatternSynonyms3.hs" 43 1 43 8
2546                , SrcSpan "tests/examples/PatternSynonyms3.hs" 43 13 43 14
2547                ]
2548            }
2549          (PApp
2550             SrcSpanInfo
2551               { srcInfoSpan =
2552                   SrcSpan "tests/examples/PatternSynonyms3.hs" 43 9 43 12
2553               , srcInfoPoints = []
2554               }
2555             (UnQual
2556                SrcSpanInfo
2557                  { srcInfoSpan =
2558                      SrcSpan "tests/examples/PatternSynonyms3.hs" 43 9 43 10
2559                  , srcInfoPoints = []
2560                  }
2561                (Ident
2562                   SrcSpanInfo
2563                     { srcInfoSpan =
2564                         SrcSpan "tests/examples/PatternSynonyms3.hs" 43 9 43 10
2565                     , srcInfoPoints = []
2566                     }
2567                   "D"))
2568             [ PVar
2569                 SrcSpanInfo
2570                   { srcInfoSpan =
2571                       SrcSpan "tests/examples/PatternSynonyms3.hs" 43 11 43 12
2572                   , srcInfoPoints = []
2573                   }
2574                 (Ident
2575                    SrcSpanInfo
2576                      { srcInfoSpan =
2577                          SrcSpan "tests/examples/PatternSynonyms3.hs" 43 11 43 12
2578                      , srcInfoPoints = []
2579                      }
2580                    "x")
2581             ])
2582          (PApp
2583             SrcSpanInfo
2584               { srcInfoSpan =
2585                   SrcSpan "tests/examples/PatternSynonyms3.hs" 43 15 43 27
2586               , srcInfoPoints = []
2587               }
2588             (UnQual
2589                SrcSpanInfo
2590                  { srcInfoSpan =
2591                      SrcSpan "tests/examples/PatternSynonyms3.hs" 43 15 43 18
2592                  , srcInfoPoints = []
2593                  }
2594                (Ident
2595                   SrcSpanInfo
2596                     { srcInfoSpan =
2597                         SrcSpan "tests/examples/PatternSynonyms3.hs" 43 15 43 18
2598                     , srcInfoPoints = []
2599                     }
2600                   "MkT"))
2601             [ PParen
2602                 SrcSpanInfo
2603                   { srcInfoSpan =
2604                       SrcSpan "tests/examples/PatternSynonyms3.hs" 43 19 43 27
2605                   , srcInfoPoints =
2606                       [ SrcSpan "tests/examples/PatternSynonyms3.hs" 43 19 43 20
2607                       , SrcSpan "tests/examples/PatternSynonyms3.hs" 43 26 43 27
2608                       ]
2609                   }
2610                 (PApp
2611                    SrcSpanInfo
2612                      { srcInfoSpan =
2613                          SrcSpan "tests/examples/PatternSynonyms3.hs" 43 20 43 26
2614                      , srcInfoPoints = []
2615                      }
2616                    (UnQual
2617                       SrcSpanInfo
2618                         { srcInfoSpan =
2619                             SrcSpan "tests/examples/PatternSynonyms3.hs" 43 20 43 24
2620                         , srcInfoPoints = []
2621                         }
2622                       (Ident
2623                          SrcSpanInfo
2624                            { srcInfoSpan =
2625                                SrcSpan "tests/examples/PatternSynonyms3.hs" 43 20 43 24
2626                            , srcInfoPoints = []
2627                            }
2628                          "Just"))
2629                    [ PVar
2630                        SrcSpanInfo
2631                          { srcInfoSpan =
2632                              SrcSpan "tests/examples/PatternSynonyms3.hs" 43 25 43 26
2633                          , srcInfoPoints = []
2634                          }
2635                        (Ident
2636                           SrcSpanInfo
2637                             { srcInfoSpan =
2638                                 SrcSpan "tests/examples/PatternSynonyms3.hs" 43 25 43 26
2639                             , srcInfoPoints = []
2640                             }
2641                           "x")
2642                    ])
2643             ])
2644          ImplicitBidirectional
2645      , PatSyn
2646          SrcSpanInfo
2647            { srcInfoSpan =
2648                SrcSpan "tests/examples/PatternSynonyms3.hs" 46 1 46 28
2649            , srcInfoPoints =
2650                [ SrcSpan "tests/examples/PatternSynonyms3.hs" 46 1 46 8
2651                , SrcSpan "tests/examples/PatternSynonyms3.hs" 46 15 46 16
2652                ]
2653            }
2654          (PApp
2655             SrcSpanInfo
2656               { srcInfoSpan =
2657                   SrcSpan "tests/examples/PatternSynonyms3.hs" 46 9 46 14
2658               , srcInfoPoints = []
2659               }
2660             (UnQual
2661                SrcSpanInfo
2662                  { srcInfoSpan =
2663                      SrcSpan "tests/examples/PatternSynonyms3.hs" 46 9 46 10
2664                  , srcInfoPoints = []
2665                  }
2666                (Ident
2667                   SrcSpanInfo
2668                     { srcInfoSpan =
2669                         SrcSpan "tests/examples/PatternSynonyms3.hs" 46 9 46 10
2670                     , srcInfoPoints = []
2671                     }
2672                   "P"))
2673             [ PVar
2674                 SrcSpanInfo
2675                   { srcInfoSpan =
2676                       SrcSpan "tests/examples/PatternSynonyms3.hs" 46 11 46 12
2677                   , srcInfoPoints = []
2678                   }
2679                 (Ident
2680                    SrcSpanInfo
2681                      { srcInfoSpan =
2682                          SrcSpan "tests/examples/PatternSynonyms3.hs" 46 11 46 12
2683                      , srcInfoPoints = []
2684                      }
2685                    "a")
2686             , PVar
2687                 SrcSpanInfo
2688                   { srcInfoSpan =
2689                       SrcSpan "tests/examples/PatternSynonyms3.hs" 46 13 46 14
2690                   , srcInfoPoints = []
2691                   }
2692                 (Ident
2693                    SrcSpanInfo
2694                      { srcInfoSpan =
2695                          SrcSpan "tests/examples/PatternSynonyms3.hs" 46 13 46 14
2696                      , srcInfoPoints = []
2697                      }
2698                    "b")
2699             ])
2700          (PApp
2701             SrcSpanInfo
2702               { srcInfoSpan =
2703                   SrcSpan "tests/examples/PatternSynonyms3.hs" 46 17 46 28
2704               , srcInfoPoints = []
2705               }
2706             (UnQual
2707                SrcSpanInfo
2708                  { srcInfoSpan =
2709                      SrcSpan "tests/examples/PatternSynonyms3.hs" 46 17 46 21
2710                  , srcInfoPoints = []
2711                  }
2712                (Ident
2713                   SrcSpanInfo
2714                     { srcInfoSpan =
2715                         SrcSpan "tests/examples/PatternSynonyms3.hs" 46 17 46 21
2716                     , srcInfoPoints = []
2717                     }
2718                   "Just"))
2719             [ PTuple
2720                 SrcSpanInfo
2721                   { srcInfoSpan =
2722                       SrcSpan "tests/examples/PatternSynonyms3.hs" 46 22 46 28
2723                   , srcInfoPoints =
2724                       [ SrcSpan "tests/examples/PatternSynonyms3.hs" 46 22 46 23
2725                       , SrcSpan "tests/examples/PatternSynonyms3.hs" 46 24 46 25
2726                       , SrcSpan "tests/examples/PatternSynonyms3.hs" 46 27 46 28
2727                       ]
2728                   }
2729                 Boxed
2730                 [ PVar
2731                     SrcSpanInfo
2732                       { srcInfoSpan =
2733                           SrcSpan "tests/examples/PatternSynonyms3.hs" 46 23 46 24
2734                       , srcInfoPoints = []
2735                       }
2736                     (Ident
2737                        SrcSpanInfo
2738                          { srcInfoSpan =
2739                              SrcSpan "tests/examples/PatternSynonyms3.hs" 46 23 46 24
2740                          , srcInfoPoints = []
2741                          }
2742                        "a")
2743                 , PVar
2744                     SrcSpanInfo
2745                       { srcInfoSpan =
2746                           SrcSpan "tests/examples/PatternSynonyms3.hs" 46 26 46 27
2747                       , srcInfoPoints = []
2748                       }
2749                     (Ident
2750                        SrcSpanInfo
2751                          { srcInfoSpan =
2752                              SrcSpan "tests/examples/PatternSynonyms3.hs" 46 26 46 27
2753                          , srcInfoPoints = []
2754                          }
2755                        "b")
2756                 ]
2757             ])
2758          ImplicitBidirectional
2759      , PatSyn
2760          SrcSpanInfo
2761            { srcInfoSpan =
2762                SrcSpan "tests/examples/PatternSynonyms3.hs" 48 1 48 23
2763            , srcInfoPoints =
2764                [ SrcSpan "tests/examples/PatternSynonyms3.hs" 48 1 48 8
2765                , SrcSpan "tests/examples/PatternSynonyms3.hs" 48 18 48 19
2766                ]
2767            }
2768          (PApp
2769             SrcSpanInfo
2770               { srcInfoSpan =
2771                   SrcSpan "tests/examples/PatternSynonyms3.hs" 48 9 48 17
2772               , srcInfoPoints = []
2773               }
2774             (UnQual
2775                SrcSpanInfo
2776                  { srcInfoSpan =
2777                      SrcSpan "tests/examples/PatternSynonyms3.hs" 48 9 48 15
2778                  , srcInfoPoints = []
2779                  }
2780                (Ident
2781                   SrcSpanInfo
2782                     { srcInfoSpan =
2783                         SrcSpan "tests/examples/PatternSynonyms3.hs" 48 9 48 15
2784                     , srcInfoPoints = []
2785                     }
2786                   "Single"))
2787             [ PVar
2788                 SrcSpanInfo
2789                   { srcInfoSpan =
2790                       SrcSpan "tests/examples/PatternSynonyms3.hs" 48 16 48 17
2791                   , srcInfoPoints = []
2792                   }
2793                 (Ident
2794                    SrcSpanInfo
2795                      { srcInfoSpan =
2796                          SrcSpan "tests/examples/PatternSynonyms3.hs" 48 16 48 17
2797                      , srcInfoPoints = []
2798                      }
2799                    "x")
2800             ])
2801          (PList
2802             SrcSpanInfo
2803               { srcInfoSpan =
2804                   SrcSpan "tests/examples/PatternSynonyms3.hs" 48 20 48 23
2805               , srcInfoPoints =
2806                   [ SrcSpan "tests/examples/PatternSynonyms3.hs" 48 20 48 21
2807                   , SrcSpan "tests/examples/PatternSynonyms3.hs" 48 22 48 23
2808                   ]
2809               }
2810             [ PVar
2811                 SrcSpanInfo
2812                   { srcInfoSpan =
2813                       SrcSpan "tests/examples/PatternSynonyms3.hs" 48 21 48 22
2814                   , srcInfoPoints = []
2815                   }
2816                 (Ident
2817                    SrcSpanInfo
2818                      { srcInfoSpan =
2819                          SrcSpan "tests/examples/PatternSynonyms3.hs" 48 21 48 22
2820                      , srcInfoPoints = []
2821                      }
2822                    "x")
2823             ])
2824          ImplicitBidirectional
2825      , PatSyn
2826          SrcSpanInfo
2827            { srcInfoSpan =
2828                SrcSpan "tests/examples/PatternSynonyms3.hs" 50 1 50 25
2829            , srcInfoPoints =
2830                [ SrcSpan "tests/examples/PatternSynonyms3.hs" 50 1 50 8
2831                , SrcSpan "tests/examples/PatternSynonyms3.hs" 50 17 50 18
2832                ]
2833            }
2834          (PInfixApp
2835             SrcSpanInfo
2836               { srcInfoSpan =
2837                   SrcSpan "tests/examples/PatternSynonyms3.hs" 50 9 50 16
2838               , srcInfoPoints = []
2839               }
2840             (PVar
2841                SrcSpanInfo
2842                  { srcInfoSpan =
2843                      SrcSpan "tests/examples/PatternSynonyms3.hs" 50 9 50 10
2844                  , srcInfoPoints = []
2845                  }
2846                (Ident
2847                   SrcSpanInfo
2848                     { srcInfoSpan =
2849                         SrcSpan "tests/examples/PatternSynonyms3.hs" 50 9 50 10
2850                     , srcInfoPoints = []
2851                     }
2852                   "a"))
2853             (UnQual
2854                SrcSpanInfo
2855                  { srcInfoSpan =
2856                      SrcSpan "tests/examples/PatternSynonyms3.hs" 50 11 50 14
2857                  , srcInfoPoints = []
2858                  }
2859                (Symbol
2860                   SrcSpanInfo
2861                     { srcInfoSpan =
2862                         SrcSpan "tests/examples/PatternSynonyms3.hs" 50 11 50 14
2863                     , srcInfoPoints = []
2864                     }
2865                   ":+:"))
2866             (PVar
2867                SrcSpanInfo
2868                  { srcInfoSpan =
2869                      SrcSpan "tests/examples/PatternSynonyms3.hs" 50 15 50 16
2870                  , srcInfoPoints = []
2871                  }
2872                (Ident
2873                   SrcSpanInfo
2874                     { srcInfoSpan =
2875                         SrcSpan "tests/examples/PatternSynonyms3.hs" 50 15 50 16
2876                     , srcInfoPoints = []
2877                     }
2878                   "b")))
2879          (PTuple
2880             SrcSpanInfo
2881               { srcInfoSpan =
2882                   SrcSpan "tests/examples/PatternSynonyms3.hs" 50 19 50 25
2883               , srcInfoPoints =
2884                   [ SrcSpan "tests/examples/PatternSynonyms3.hs" 50 19 50 20
2885                   , SrcSpan "tests/examples/PatternSynonyms3.hs" 50 21 50 22
2886                   , SrcSpan "tests/examples/PatternSynonyms3.hs" 50 24 50 25
2887                   ]
2888               }
2889             Boxed
2890             [ PVar
2891                 SrcSpanInfo
2892                   { srcInfoSpan =
2893                       SrcSpan "tests/examples/PatternSynonyms3.hs" 50 20 50 21
2894                   , srcInfoPoints = []
2895                   }
2896                 (Ident
2897                    SrcSpanInfo
2898                      { srcInfoSpan =
2899                          SrcSpan "tests/examples/PatternSynonyms3.hs" 50 20 50 21
2900                      , srcInfoPoints = []
2901                      }
2902                    "a")
2903             , PVar
2904                 SrcSpanInfo
2905                   { srcInfoSpan =
2906                       SrcSpan "tests/examples/PatternSynonyms3.hs" 50 23 50 24
2907                   , srcInfoPoints = []
2908                   }
2909                 (Ident
2910                    SrcSpanInfo
2911                      { srcInfoSpan =
2912                          SrcSpan "tests/examples/PatternSynonyms3.hs" 50 23 50 24
2913                      , srcInfoPoints = []
2914                      }
2915                    "b")
2916             ])
2917          ImplicitBidirectional
2918      , PatSyn
2919          SrcSpanInfo
2920            { srcInfoSpan =
2921                SrcSpan "tests/examples/PatternSynonyms3.hs" 53 1 53 24
2922            , srcInfoPoints =
2923                [ SrcSpan "tests/examples/PatternSynonyms3.hs" 53 1 53 8
2924                , SrcSpan "tests/examples/PatternSynonyms3.hs" 53 13 53 15
2925                ]
2926            }
2927          (PApp
2928             SrcSpanInfo
2929               { srcInfoSpan =
2930                   SrcSpan "tests/examples/PatternSynonyms3.hs" 53 9 53 12
2931               , srcInfoPoints = []
2932               }
2933             (UnQual
2934                SrcSpanInfo
2935                  { srcInfoSpan =
2936                      SrcSpan "tests/examples/PatternSynonyms3.hs" 53 9 53 10
2937                  , srcInfoPoints = []
2938                  }
2939                (Ident
2940                   SrcSpanInfo
2941                     { srcInfoSpan =
2942                         SrcSpan "tests/examples/PatternSynonyms3.hs" 53 9 53 10
2943                     , srcInfoPoints = []
2944                     }
2945                   "P"))
2946             [ PVar
2947                 SrcSpanInfo
2948                   { srcInfoSpan =
2949                       SrcSpan "tests/examples/PatternSynonyms3.hs" 53 11 53 12
2950                   , srcInfoPoints = []
2951                   }
2952                 (Ident
2953                    SrcSpanInfo
2954                      { srcInfoSpan =
2955                          SrcSpan "tests/examples/PatternSynonyms3.hs" 53 11 53 12
2956                      , srcInfoPoints = []
2957                      }
2958                    "x")
2959             ])
2960          (PApp
2961             SrcSpanInfo
2962               { srcInfoSpan =
2963                   SrcSpan "tests/examples/PatternSynonyms3.hs" 53 16 53 24
2964               , srcInfoPoints = []
2965               }
2966             (UnQual
2967                SrcSpanInfo
2968                  { srcInfoSpan =
2969                      SrcSpan "tests/examples/PatternSynonyms3.hs" 53 16 53 19
2970                  , srcInfoPoints = []
2971                  }
2972                (Ident
2973                   SrcSpanInfo
2974                     { srcInfoSpan =
2975                         SrcSpan "tests/examples/PatternSynonyms3.hs" 53 16 53 19
2976                     , srcInfoPoints = []
2977                     }
2978                   "MkT"))
2979             [ PLit
2980                 SrcSpanInfo
2981                   { srcInfoSpan =
2982                       SrcSpan "tests/examples/PatternSynonyms3.hs" 53 20 53 22
2983                   , srcInfoPoints = []
2984                   }
2985                 (Signless
2986                    SrcSpanInfo
2987                      { srcInfoSpan =
2988                          SrcSpan "tests/examples/PatternSynonyms3.hs" 53 20 53 22
2989                      , srcInfoPoints = []
2990                      })
2991                 (Int
2992                    SrcSpanInfo
2993                      { srcInfoSpan =
2994                          SrcSpan "tests/examples/PatternSynonyms3.hs" 53 20 53 22
2995                      , srcInfoPoints = []
2996                      }
2997                    42
2998                    "42")
2999             , PVar
3000                 SrcSpanInfo
3001                   { srcInfoSpan =
3002                       SrcSpan "tests/examples/PatternSynonyms3.hs" 53 23 53 24
3003                   , srcInfoPoints = []
3004                   }
3005                 (Ident
3006                    SrcSpanInfo
3007                      { srcInfoSpan =
3008                          SrcSpan "tests/examples/PatternSynonyms3.hs" 53 23 53 24
3009                      , srcInfoPoints = []
3010                      }
3011                    "x")
3012             ])
3013          Unidirectional
3014      , PatSyn
3015          SrcSpanInfo
3016            { srcInfoSpan =
3017                SrcSpan "tests/examples/PatternSynonyms3.hs" 56 1 56 25
3018            , srcInfoPoints =
3019                [ SrcSpan "tests/examples/PatternSynonyms3.hs" 56 1 56 8
3020                , SrcSpan "tests/examples/PatternSynonyms3.hs" 56 15 56 17
3021                ]
3022            }
3023          (PApp
3024             SrcSpanInfo
3025               { srcInfoSpan =
3026                   SrcSpan "tests/examples/PatternSynonyms3.hs" 56 9 56 14
3027               , srcInfoPoints = []
3028               }
3029             (UnQual
3030                SrcSpanInfo
3031                  { srcInfoSpan =
3032                      SrcSpan "tests/examples/PatternSynonyms3.hs" 56 9 56 10
3033                  , srcInfoPoints = []
3034                  }
3035                (Ident
3036                   SrcSpanInfo
3037                     { srcInfoSpan =
3038                         SrcSpan "tests/examples/PatternSynonyms3.hs" 56 9 56 10
3039                     , srcInfoPoints = []
3040                     }
3041                   "P"))
3042             [ PVar
3043                 SrcSpanInfo
3044                   { srcInfoSpan =
3045                       SrcSpan "tests/examples/PatternSynonyms3.hs" 56 11 56 12
3046                   , srcInfoPoints = []
3047                   }
3048                 (Ident
3049                    SrcSpanInfo
3050                      { srcInfoSpan =
3051                          SrcSpan "tests/examples/PatternSynonyms3.hs" 56 11 56 12
3052                      , srcInfoPoints = []
3053                      }
3054                    "x")
3055             , PVar
3056                 SrcSpanInfo
3057                   { srcInfoSpan =
3058                       SrcSpan "tests/examples/PatternSynonyms3.hs" 56 13 56 14
3059                   , srcInfoPoints = []
3060                   }
3061                 (Ident
3062                    SrcSpanInfo
3063                      { srcInfoSpan =
3064                          SrcSpan "tests/examples/PatternSynonyms3.hs" 56 13 56 14
3065                      , srcInfoPoints = []
3066                      }
3067                    "y")
3068             ])
3069          (PApp
3070             SrcSpanInfo
3071               { srcInfoSpan =
3072                   SrcSpan "tests/examples/PatternSynonyms3.hs" 56 18 56 25
3073               , srcInfoPoints = []
3074               }
3075             (UnQual
3076                SrcSpanInfo
3077                  { srcInfoSpan =
3078                      SrcSpan "tests/examples/PatternSynonyms3.hs" 56 18 56 21
3079                  , srcInfoPoints = []
3080                  }
3081                (Ident
3082                   SrcSpanInfo
3083                     { srcInfoSpan =
3084                         SrcSpan "tests/examples/PatternSynonyms3.hs" 56 18 56 21
3085                     , srcInfoPoints = []
3086                     }
3087                   "MkT"))
3088             [ PVar
3089                 SrcSpanInfo
3090                   { srcInfoSpan =
3091                       SrcSpan "tests/examples/PatternSynonyms3.hs" 56 22 56 23
3092                   , srcInfoPoints = []
3093                   }
3094                 (Ident
3095                    SrcSpanInfo
3096                      { srcInfoSpan =
3097                          SrcSpan "tests/examples/PatternSynonyms3.hs" 56 22 56 23
3098                      , srcInfoPoints = []
3099                      }
3100                    "x")
3101             , PVar
3102                 SrcSpanInfo
3103                   { srcInfoSpan =
3104                       SrcSpan "tests/examples/PatternSynonyms3.hs" 56 24 56 25
3105                   , srcInfoPoints = []
3106                   }
3107                 (Ident
3108                    SrcSpanInfo
3109                      { srcInfoSpan =
3110                          SrcSpan "tests/examples/PatternSynonyms3.hs" 56 24 56 25
3111                      , srcInfoPoints = []
3112                      }
3113                    "y")
3114             ])
3115          Unidirectional
3116      , PatSyn
3117          SrcSpanInfo
3118            { srcInfoSpan =
3119                SrcSpan "tests/examples/PatternSynonyms3.hs" 58 1 58 33
3120            , srcInfoPoints =
3121                [ SrcSpan "tests/examples/PatternSynonyms3.hs" 58 1 58 8
3122                , SrcSpan "tests/examples/PatternSynonyms3.hs" 58 13 58 15
3123                ]
3124            }
3125          (PApp
3126             SrcSpanInfo
3127               { srcInfoSpan =
3128                   SrcSpan "tests/examples/PatternSynonyms3.hs" 58 9 58 12
3129               , srcInfoPoints = []
3130               }
3131             (UnQual
3132                SrcSpanInfo
3133                  { srcInfoSpan =
3134                      SrcSpan "tests/examples/PatternSynonyms3.hs" 58 9 58 10
3135                  , srcInfoPoints = []
3136                  }
3137                (Ident
3138                   SrcSpanInfo
3139                     { srcInfoSpan =
3140                         SrcSpan "tests/examples/PatternSynonyms3.hs" 58 9 58 10
3141                     , srcInfoPoints = []
3142                     }
3143                   "P"))
3144             [ PVar
3145                 SrcSpanInfo
3146                   { srcInfoSpan =
3147                       SrcSpan "tests/examples/PatternSynonyms3.hs" 58 11 58 12
3148                   , srcInfoPoints = []
3149                   }
3150                 (Ident
3151                    SrcSpanInfo
3152                      { srcInfoSpan =
3153                          SrcSpan "tests/examples/PatternSynonyms3.hs" 58 11 58 12
3154                      , srcInfoPoints = []
3155                      }
3156                    "x")
3157             ])
3158          (PApp
3159             SrcSpanInfo
3160               { srcInfoSpan =
3161                   SrcSpan "tests/examples/PatternSynonyms3.hs" 58 16 58 33
3162               , srcInfoPoints = []
3163               }
3164             (UnQual
3165                SrcSpanInfo
3166                  { srcInfoSpan =
3167                      SrcSpan "tests/examples/PatternSynonyms3.hs" 58 16 58 19
3168                  , srcInfoPoints = []
3169                  }
3170                (Ident
3171                   SrcSpanInfo
3172                     { srcInfoSpan =
3173                         SrcSpan "tests/examples/PatternSynonyms3.hs" 58 16 58 19
3174                     , srcInfoPoints = []
3175                     }
3176                   "MkT"))
3177             [ PParen
3178                 SrcSpanInfo
3179                   { srcInfoSpan =
3180                       SrcSpan "tests/examples/PatternSynonyms3.hs" 58 20 58 31
3181                   , srcInfoPoints =
3182                       [ SrcSpan "tests/examples/PatternSynonyms3.hs" 58 20 58 21
3183                       , SrcSpan "tests/examples/PatternSynonyms3.hs" 58 30 58 31
3184                       ]
3185                   }
3186                 (PViewPat
3187                    SrcSpanInfo
3188                      { srcInfoSpan =
3189                          SrcSpan "tests/examples/PatternSynonyms3.hs" 58 21 58 30
3190                      , srcInfoPoints =
3191                          [ SrcSpan "tests/examples/PatternSynonyms3.hs" 58 23 58 25 ]
3192                      }
3193                    (Var
3194                       SrcSpanInfo
3195                         { srcInfoSpan =
3196                             SrcSpan "tests/examples/PatternSynonyms3.hs" 58 21 58 22
3197                         , srcInfoPoints = []
3198                         }
3199                       (UnQual
3200                          SrcSpanInfo
3201                            { srcInfoSpan =
3202                                SrcSpan "tests/examples/PatternSynonyms3.hs" 58 21 58 22
3203                            , srcInfoPoints = []
3204                            }
3205                          (Ident
3206                             SrcSpanInfo
3207                               { srcInfoSpan =
3208                                   SrcSpan "tests/examples/PatternSynonyms3.hs" 58 21 58 22
3209                               , srcInfoPoints = []
3210                               }
3211                             "f")))
3212                    (PApp
3213                       SrcSpanInfo
3214                         { srcInfoSpan =
3215                             SrcSpan "tests/examples/PatternSynonyms3.hs" 58 26 58 30
3216                         , srcInfoPoints = []
3217                         }
3218                       (UnQual
3219                          SrcSpanInfo
3220                            { srcInfoSpan =
3221                                SrcSpan "tests/examples/PatternSynonyms3.hs" 58 26 58 30
3222                            , srcInfoPoints = []
3223                            }
3224                          (Ident
3225                             SrcSpanInfo
3226                               { srcInfoSpan =
3227                                   SrcSpan "tests/examples/PatternSynonyms3.hs" 58 26 58 30
3228                               , srcInfoPoints = []
3229                               }
3230                             "True"))
3231                       []))
3232             , PVar
3233                 SrcSpanInfo
3234                   { srcInfoSpan =
3235                       SrcSpan "tests/examples/PatternSynonyms3.hs" 58 32 58 33
3236                   , srcInfoPoints = []
3237                   }
3238                 (Ident
3239                    SrcSpanInfo
3240                      { srcInfoSpan =
3241                          SrcSpan "tests/examples/PatternSynonyms3.hs" 58 32 58 33
3242                      , srcInfoPoints = []
3243                      }
3244                    "x")
3245             ])
3246          Unidirectional
3247      , GDataDecl
3248          SrcSpanInfo
3249            { srcInfoSpan =
3250                SrcSpan "tests/examples/PatternSynonyms3.hs" 60 1 63 0
3251            , srcInfoPoints =
3252                [ SrcSpan "tests/examples/PatternSynonyms3.hs" 60 8 60 13
3253                , SrcSpan "tests/examples/PatternSynonyms3.hs" 61 5 61 5
3254                , SrcSpan "tests/examples/PatternSynonyms3.hs" 63 1 63 0
3255                ]
3256            }
3257          (DataType
3258             SrcSpanInfo
3259               { srcInfoSpan =
3260                   SrcSpan "tests/examples/PatternSynonyms3.hs" 60 1 60 5
3261               , srcInfoPoints = []
3262               })
3263          Nothing
3264          (DHead
3265             SrcSpanInfo
3266               { srcInfoSpan =
3267                   SrcSpan "tests/examples/PatternSynonyms3.hs" 60 6 60 7
3268               , srcInfoPoints = []
3269               }
3270             (Ident
3271                SrcSpanInfo
3272                  { srcInfoSpan =
3273                      SrcSpan "tests/examples/PatternSynonyms3.hs" 60 6 60 7
3274                  , srcInfoPoints = []
3275                  }
3276                "T"))
3277          Nothing
3278          [ GadtDecl
3279              SrcSpanInfo
3280                { srcInfoSpan =
3281                    SrcSpan "tests/examples/PatternSynonyms3.hs" 61 5 61 33
3282                , srcInfoPoints =
3283                    [ SrcSpan "tests/examples/PatternSynonyms3.hs" 61 9 61 11 ]
3284                }
3285              (Ident
3286                 SrcSpanInfo
3287                   { srcInfoSpan =
3288                       SrcSpan "tests/examples/PatternSynonyms3.hs" 61 5 61 8
3289                   , srcInfoPoints = []
3290                   }
3291                 "MkT")
3292              Nothing
3293              Nothing
3294              Nothing
3295              (TyFun
3296                 SrcSpanInfo
3297                   { srcInfoSpan =
3298                       SrcSpan "tests/examples/PatternSynonyms3.hs" 61 12 61 33
3299                   , srcInfoPoints =
3300                       [ SrcSpan "tests/examples/PatternSynonyms3.hs" 61 14 61 16 ]
3301                   }
3302                 (TyVar
3303                    SrcSpanInfo
3304                      { srcInfoSpan =
3305                          SrcSpan "tests/examples/PatternSynonyms3.hs" 61 12 61 13
3306                      , srcInfoPoints = []
3307                      }
3308                    (Ident
3309                       SrcSpanInfo
3310                         { srcInfoSpan =
3311                             SrcSpan "tests/examples/PatternSynonyms3.hs" 61 12 61 13
3312                         , srcInfoPoints = []
3313                         }
3314                       "b"))
3315                 (TyFun
3316                    SrcSpanInfo
3317                      { srcInfoSpan =
3318                          SrcSpan "tests/examples/PatternSynonyms3.hs" 61 17 61 33
3319                      , srcInfoPoints =
3320                          [ SrcSpan "tests/examples/PatternSynonyms3.hs" 61 29 61 31 ]
3321                      }
3322                    (TyParen
3323                       SrcSpanInfo
3324                         { srcInfoSpan =
3325                             SrcSpan "tests/examples/PatternSynonyms3.hs" 61 17 61 28
3326                         , srcInfoPoints =
3327                             [ SrcSpan "tests/examples/PatternSynonyms3.hs" 61 17 61 18
3328                             , SrcSpan "tests/examples/PatternSynonyms3.hs" 61 27 61 28
3329                             ]
3330                         }
3331                       (TyFun
3332                          SrcSpanInfo
3333                            { srcInfoSpan =
3334                                SrcSpan "tests/examples/PatternSynonyms3.hs" 61 18 61 27
3335                            , srcInfoPoints =
3336                                [ SrcSpan "tests/examples/PatternSynonyms3.hs" 61 20 61 22 ]
3337                            }
3338                          (TyVar
3339                             SrcSpanInfo
3340                               { srcInfoSpan =
3341                                   SrcSpan "tests/examples/PatternSynonyms3.hs" 61 18 61 19
3342                               , srcInfoPoints = []
3343                               }
3344                             (Ident
3345                                SrcSpanInfo
3346                                  { srcInfoSpan =
3347                                      SrcSpan "tests/examples/PatternSynonyms3.hs" 61 18 61 19
3348                                  , srcInfoPoints = []
3349                                  }
3350                                "b"))
3351                          (TyCon
3352                             SrcSpanInfo
3353                               { srcInfoSpan =
3354                                   SrcSpan "tests/examples/PatternSynonyms3.hs" 61 23 61 27
3355                               , srcInfoPoints = []
3356                               }
3357                             (UnQual
3358                                SrcSpanInfo
3359                                  { srcInfoSpan =
3360                                      SrcSpan "tests/examples/PatternSynonyms3.hs" 61 23 61 27
3361                                  , srcInfoPoints = []
3362                                  }
3363                                (Ident
3364                                   SrcSpanInfo
3365                                     { srcInfoSpan =
3366                                         SrcSpan "tests/examples/PatternSynonyms3.hs" 61 23 61 27
3367                                     , srcInfoPoints = []
3368                                     }
3369                                   "Bool")))))
3370                    (TyCon
3371                       SrcSpanInfo
3372                         { srcInfoSpan =
3373                             SrcSpan "tests/examples/PatternSynonyms3.hs" 61 32 61 33
3374                         , srcInfoPoints = []
3375                         }
3376                       (UnQual
3377                          SrcSpanInfo
3378                            { srcInfoSpan =
3379                                SrcSpan "tests/examples/PatternSynonyms3.hs" 61 32 61 33
3380                            , srcInfoPoints = []
3381                            }
3382                          (Ident
3383                             SrcSpanInfo
3384                               { srcInfoSpan =
3385                                   SrcSpan "tests/examples/PatternSynonyms3.hs" 61 32 61 33
3386                               , srcInfoPoints = []
3387                               }
3388                             "T")))))
3389          ]
3390          []
3391      , PatSyn
3392          SrcSpanInfo
3393            { srcInfoSpan =
3394                SrcSpan "tests/examples/PatternSynonyms3.hs" 63 1 63 25
3395            , srcInfoPoints =
3396                [ SrcSpan "tests/examples/PatternSynonyms3.hs" 63 1 63 8
3397                , SrcSpan "tests/examples/PatternSynonyms3.hs" 63 15 63 17
3398                ]
3399            }
3400          (PApp
3401             SrcSpanInfo
3402               { srcInfoSpan =
3403                   SrcSpan "tests/examples/PatternSynonyms3.hs" 63 9 63 14
3404               , srcInfoPoints = []
3405               }
3406             (UnQual
3407                SrcSpanInfo
3408                  { srcInfoSpan =
3409                      SrcSpan "tests/examples/PatternSynonyms3.hs" 63 9 63 10
3410                  , srcInfoPoints = []
3411                  }
3412                (Ident
3413                   SrcSpanInfo
3414                     { srcInfoSpan =
3415                         SrcSpan "tests/examples/PatternSynonyms3.hs" 63 9 63 10
3416                     , srcInfoPoints = []
3417                     }
3418                   "P"))
3419             [ PVar
3420                 SrcSpanInfo
3421                   { srcInfoSpan =
3422                       SrcSpan "tests/examples/PatternSynonyms3.hs" 63 11 63 12
3423                   , srcInfoPoints = []
3424                   }
3425                 (Ident
3426                    SrcSpanInfo
3427                      { srcInfoSpan =
3428                          SrcSpan "tests/examples/PatternSynonyms3.hs" 63 11 63 12
3429                      , srcInfoPoints = []
3430                      }
3431                    "x")
3432             , PVar
3433                 SrcSpanInfo
3434                   { srcInfoSpan =
3435                       SrcSpan "tests/examples/PatternSynonyms3.hs" 63 13 63 14
3436                   , srcInfoPoints = []
3437                   }
3438                 (Ident
3439                    SrcSpanInfo
3440                      { srcInfoSpan =
3441                          SrcSpan "tests/examples/PatternSynonyms3.hs" 63 13 63 14
3442                      , srcInfoPoints = []
3443                      }
3444                    "f")
3445             ])
3446          (PApp
3447             SrcSpanInfo
3448               { srcInfoSpan =
3449                   SrcSpan "tests/examples/PatternSynonyms3.hs" 63 18 63 25
3450               , srcInfoPoints = []
3451               }
3452             (UnQual
3453                SrcSpanInfo
3454                  { srcInfoSpan =
3455                      SrcSpan "tests/examples/PatternSynonyms3.hs" 63 18 63 21
3456                  , srcInfoPoints = []
3457                  }
3458                (Ident
3459                   SrcSpanInfo
3460                     { srcInfoSpan =
3461                         SrcSpan "tests/examples/PatternSynonyms3.hs" 63 18 63 21
3462                     , srcInfoPoints = []
3463                     }
3464                   "MkT"))
3465             [ PVar
3466                 SrcSpanInfo
3467                   { srcInfoSpan =
3468                       SrcSpan "tests/examples/PatternSynonyms3.hs" 63 22 63 23
3469                   , srcInfoPoints = []
3470                   }
3471                 (Ident
3472                    SrcSpanInfo
3473                      { srcInfoSpan =
3474                          SrcSpan "tests/examples/PatternSynonyms3.hs" 63 22 63 23
3475                      , srcInfoPoints = []
3476                      }
3477                    "x")
3478             , PVar
3479                 SrcSpanInfo
3480                   { srcInfoSpan =
3481                       SrcSpan "tests/examples/PatternSynonyms3.hs" 63 24 63 25
3482                   , srcInfoPoints = []
3483                   }
3484                 (Ident
3485                    SrcSpanInfo
3486                      { srcInfoSpan =
3487                          SrcSpan "tests/examples/PatternSynonyms3.hs" 63 24 63 25
3488                      , srcInfoPoints = []
3489                      }
3490                    "f")
3491             ])
3492          Unidirectional
3493      , PatSyn
3494          SrcSpanInfo
3495            { srcInfoSpan =
3496                SrcSpan "tests/examples/PatternSynonyms3.hs" 65 1 65 24
3497            , srcInfoPoints =
3498                [ SrcSpan "tests/examples/PatternSynonyms3.hs" 65 1 65 8
3499                , SrcSpan "tests/examples/PatternSynonyms3.hs" 65 18 65 20
3500                ]
3501            }
3502          (PApp
3503             SrcSpanInfo
3504               { srcInfoSpan =
3505                   SrcSpan "tests/examples/PatternSynonyms3.hs" 65 9 65 17
3506               , srcInfoPoints = []
3507               }
3508             (UnQual
3509                SrcSpanInfo
3510                  { srcInfoSpan =
3511                      SrcSpan "tests/examples/PatternSynonyms3.hs" 65 9 65 15
3512                  , srcInfoPoints = []
3513                  }
3514                (Ident
3515                   SrcSpanInfo
3516                     { srcInfoSpan =
3517                         SrcSpan "tests/examples/PatternSynonyms3.hs" 65 9 65 15
3518                     , srcInfoPoints = []
3519                     }
3520                   "Single"))
3521             [ PVar
3522                 SrcSpanInfo
3523                   { srcInfoSpan =
3524                       SrcSpan "tests/examples/PatternSynonyms3.hs" 65 16 65 17
3525                   , srcInfoPoints = []
3526                   }
3527                 (Ident
3528                    SrcSpanInfo
3529                      { srcInfoSpan =
3530                          SrcSpan "tests/examples/PatternSynonyms3.hs" 65 16 65 17
3531                      , srcInfoPoints = []
3532                      }
3533                    "x")
3534             ])
3535          (PList
3536             SrcSpanInfo
3537               { srcInfoSpan =
3538                   SrcSpan "tests/examples/PatternSynonyms3.hs" 65 21 65 24
3539               , srcInfoPoints =
3540                   [ SrcSpan "tests/examples/PatternSynonyms3.hs" 65 21 65 22
3541                   , SrcSpan "tests/examples/PatternSynonyms3.hs" 65 23 65 24
3542                   ]
3543               }
3544             [ PVar
3545                 SrcSpanInfo
3546                   { srcInfoSpan =
3547                       SrcSpan "tests/examples/PatternSynonyms3.hs" 65 22 65 23
3548                   , srcInfoPoints = []
3549                   }
3550                 (Ident
3551                    SrcSpanInfo
3552                      { srcInfoSpan =
3553                          SrcSpan "tests/examples/PatternSynonyms3.hs" 65 22 65 23
3554                      , srcInfoPoints = []
3555                      }
3556                    "x")
3557             ])
3558          Unidirectional
3559      , PatSyn
3560          SrcSpanInfo
3561            { srcInfoSpan =
3562                SrcSpan "tests/examples/PatternSynonyms3.hs" 67 1 67 23
3563            , srcInfoPoints =
3564                [ SrcSpan "tests/examples/PatternSynonyms3.hs" 67 1 67 8
3565                , SrcSpan "tests/examples/PatternSynonyms3.hs" 67 11 67 13
3566                ]
3567            }
3568          (PApp
3569             SrcSpanInfo
3570               { srcInfoSpan =
3571                   SrcSpan "tests/examples/PatternSynonyms3.hs" 67 9 67 10
3572               , srcInfoPoints = []
3573               }
3574             (UnQual
3575                SrcSpanInfo
3576                  { srcInfoSpan =
3577                      SrcSpan "tests/examples/PatternSynonyms3.hs" 67 9 67 10
3578                  , srcInfoPoints = []
3579                  }
3580                (Ident
3581                   SrcSpanInfo
3582                     { srcInfoSpan =
3583                         SrcSpan "tests/examples/PatternSynonyms3.hs" 67 9 67 10
3584                     , srcInfoPoints = []
3585                     }
3586                   "P"))
3587             [])
3588          (PApp
3589             SrcSpanInfo
3590               { srcInfoSpan =
3591                   SrcSpan "tests/examples/PatternSynonyms3.hs" 67 14 67 23
3592               , srcInfoPoints = []
3593               }
3594             (UnQual
3595                SrcSpanInfo
3596                  { srcInfoSpan =
3597                      SrcSpan "tests/examples/PatternSynonyms3.hs" 67 14 67 18
3598                  , srcInfoPoints = []
3599                  }
3600                (Ident
3601                   SrcSpanInfo
3602                     { srcInfoSpan =
3603                         SrcSpan "tests/examples/PatternSynonyms3.hs" 67 14 67 18
3604                     , srcInfoPoints = []
3605                     }
3606                   "Just"))
3607             [ PApp
3608                 SrcSpanInfo
3609                   { srcInfoSpan =
3610                       SrcSpan "tests/examples/PatternSynonyms3.hs" 67 19 67 23
3611                   , srcInfoPoints = []
3612                   }
3613                 (UnQual
3614                    SrcSpanInfo
3615                      { srcInfoSpan =
3616                          SrcSpan "tests/examples/PatternSynonyms3.hs" 67 19 67 23
3617                      , srcInfoPoints = []
3618                      }
3619                    (Ident
3620                       SrcSpanInfo
3621                         { srcInfoSpan =
3622                             SrcSpan "tests/examples/PatternSynonyms3.hs" 67 19 67 23
3623                         , srcInfoPoints = []
3624                         }
3625                       "True"))
3626                 []
3627             ])
3628          Unidirectional
3629      , PatSyn
3630          SrcSpanInfo
3631            { srcInfoSpan =
3632                SrcSpan "tests/examples/PatternSynonyms3.hs" 69 1 69 15
3633            , srcInfoPoints =
3634                [ SrcSpan "tests/examples/PatternSynonyms3.hs" 69 1 69 8
3635                , SrcSpan "tests/examples/PatternSynonyms3.hs" 69 11 69 12
3636                ]
3637            }
3638          (PApp
3639             SrcSpanInfo
3640               { srcInfoSpan =
3641                   SrcSpan "tests/examples/PatternSynonyms3.hs" 69 9 69 10
3642               , srcInfoPoints = []
3643               }
3644             (UnQual
3645                SrcSpanInfo
3646                  { srcInfoSpan =
3647                      SrcSpan "tests/examples/PatternSynonyms3.hs" 69 9 69 10
3648                  , srcInfoPoints = []
3649                  }
3650                (Ident
3651                   SrcSpanInfo
3652                     { srcInfoSpan =
3653                         SrcSpan "tests/examples/PatternSynonyms3.hs" 69 9 69 10
3654                     , srcInfoPoints = []
3655                     }
3656                   "P"))
3657             [])
3658          (PLit
3659             SrcSpanInfo
3660               { srcInfoSpan =
3661                   SrcSpan "tests/examples/PatternSynonyms3.hs" 69 13 69 15
3662               , srcInfoPoints = []
3663               }
3664             (Signless
3665                SrcSpanInfo
3666                  { srcInfoSpan =
3667                      SrcSpan "tests/examples/PatternSynonyms3.hs" 69 13 69 15
3668                  , srcInfoPoints = []
3669                  })
3670             (Int
3671                SrcSpanInfo
3672                  { srcInfoSpan =
3673                      SrcSpan "tests/examples/PatternSynonyms3.hs" 69 13 69 15
3674                  , srcInfoPoints = []
3675                  }
3676                42
3677                "42"))
3678          ImplicitBidirectional
3679      , PatSyn
3680          SrcSpanInfo
3681            { srcInfoSpan =
3682                SrcSpan "tests/examples/PatternSynonyms3.hs" 72 1 72 15
3683            , srcInfoPoints =
3684                [ SrcSpan "tests/examples/PatternSynonyms3.hs" 72 1 72 8
3685                , SrcSpan "tests/examples/PatternSynonyms3.hs" 72 11 72 12
3686                ]
3687            }
3688          (PApp
3689             SrcSpanInfo
3690               { srcInfoSpan =
3691                   SrcSpan "tests/examples/PatternSynonyms3.hs" 72 9 72 10
3692               , srcInfoPoints = []
3693               }
3694             (UnQual
3695                SrcSpanInfo
3696                  { srcInfoSpan =
3697                      SrcSpan "tests/examples/PatternSynonyms3.hs" 72 9 72 10
3698                  , srcInfoPoints = []
3699                  }
3700                (Ident
3701                   SrcSpanInfo
3702                     { srcInfoSpan =
3703                         SrcSpan "tests/examples/PatternSynonyms3.hs" 72 9 72 10
3704                     , srcInfoPoints = []
3705                     }
3706                   "P"))
3707             [])
3708          (PApp
3709             SrcSpanInfo
3710               { srcInfoSpan =
3711                   SrcSpan "tests/examples/PatternSynonyms3.hs" 72 13 72 15
3712               , srcInfoPoints =
3713                   [ SrcSpan "tests/examples/PatternSynonyms3.hs" 72 13 72 14
3714                   , SrcSpan "tests/examples/PatternSynonyms3.hs" 72 14 72 15
3715                   ]
3716               }
3717             (Special
3718                SrcSpanInfo
3719                  { srcInfoSpan =
3720                      SrcSpan "tests/examples/PatternSynonyms3.hs" 72 13 72 15
3721                  , srcInfoPoints =
3722                      [ SrcSpan "tests/examples/PatternSynonyms3.hs" 72 13 72 14
3723                      , SrcSpan "tests/examples/PatternSynonyms3.hs" 72 14 72 15
3724                      ]
3725                  }
3726                (UnitCon
3727                   SrcSpanInfo
3728                     { srcInfoSpan =
3729                         SrcSpan "tests/examples/PatternSynonyms3.hs" 72 13 72 15
3730                     , srcInfoPoints =
3731                         [ SrcSpan "tests/examples/PatternSynonyms3.hs" 72 13 72 14
3732                         , SrcSpan "tests/examples/PatternSynonyms3.hs" 72 14 72 15
3733                         ]
3734                     }))
3735             [])
3736          ImplicitBidirectional
3737      , PatSyn
3738          SrcSpanInfo
3739            { srcInfoSpan =
3740                SrcSpan "tests/examples/PatternSynonyms3.hs" 75 1 75 24
3741            , srcInfoPoints =
3742                [ SrcSpan "tests/examples/PatternSynonyms3.hs" 75 1 75 8
3743                , SrcSpan "tests/examples/PatternSynonyms3.hs" 75 18 75 20
3744                ]
3745            }
3746          (PApp
3747             SrcSpanInfo
3748               { srcInfoSpan =
3749                   SrcSpan "tests/examples/PatternSynonyms3.hs" 75 9 75 17
3750               , srcInfoPoints = []
3751               }
3752             (UnQual
3753                SrcSpanInfo
3754                  { srcInfoSpan =
3755                      SrcSpan "tests/examples/PatternSynonyms3.hs" 75 9 75 15
3756                  , srcInfoPoints = []
3757                  }
3758                (Ident
3759                   SrcSpanInfo
3760                     { srcInfoSpan =
3761                         SrcSpan "tests/examples/PatternSynonyms3.hs" 75 9 75 15
3762                     , srcInfoPoints = []
3763                     }
3764                   "Single"))
3765             [ PVar
3766                 SrcSpanInfo
3767                   { srcInfoSpan =
3768                       SrcSpan "tests/examples/PatternSynonyms3.hs" 75 16 75 17
3769                   , srcInfoPoints = []
3770                   }
3771                 (Ident
3772                    SrcSpanInfo
3773                      { srcInfoSpan =
3774                          SrcSpan "tests/examples/PatternSynonyms3.hs" 75 16 75 17
3775                      , srcInfoPoints = []
3776                      }
3777                    "x")
3778             ])
3779          (PList
3780             SrcSpanInfo
3781               { srcInfoSpan =
3782                   SrcSpan "tests/examples/PatternSynonyms3.hs" 75 21 75 24
3783               , srcInfoPoints =
3784                   [ SrcSpan "tests/examples/PatternSynonyms3.hs" 75 21 75 22
3785                   , SrcSpan "tests/examples/PatternSynonyms3.hs" 75 23 75 24
3786                   ]
3787               }
3788             [ PVar
3789                 SrcSpanInfo
3790                   { srcInfoSpan =
3791                       SrcSpan "tests/examples/PatternSynonyms3.hs" 75 22 75 23
3792                   , srcInfoPoints = []
3793                   }
3794                 (Ident
3795                    SrcSpanInfo
3796                      { srcInfoSpan =
3797                          SrcSpan "tests/examples/PatternSynonyms3.hs" 75 22 75 23
3798                      , srcInfoPoints = []
3799                      }
3800                    "x")
3801             ])
3802          Unidirectional
3803      ]
3804  , []
3805  )
3806