packages feed

libasterix-0.14.0: test/Generated.hs

-- | Asterix specifications

-- This file is generated, DO NOT EDIT!
-- For more details, see:
--     - https://github.com/zoranbosnjak/asterix-specs

-- Types are BIG, disable depth checking.
{-# OPTIONS_GHC -freduction-depth=0 #-}

{-# LANGUAGE DataKinds #-}

module Generated where

import           Asterix.Schema

-- Asterix types

type TContent0 = 'GContentRaw
type TRuleContent0 = 'GContextFree TContent0
type TVariation7 = 'GElement 0 8 TRuleContent0
type TRuleVariation7 = 'GContextFree TVariation7
type TNonSpare84 = 'GNonSpare "SAC" "System Area Code" TRuleVariation7
type TItem34 = 'GItem TNonSpare84
type TNonSpare87 = 'GNonSpare "SIC" "System Identification Code" TRuleVariation7
type TItem37 = 'GItem TNonSpare87
type TVariation44 = 'GGroup 0 '[ TItem34, TItem37]
type TRuleVariation40 = 'GContextFree TVariation44
type TNonSpare3 = 'GNonSpare "010" "Data Source Identifier" TRuleVariation40
type TUapItem3 = 'GUapItem TNonSpare3
type TContent7 = 'GContentTable '[ '(1, "Message 1"), '(2, "Message 2"), '(3, "Message 3")]
type TRuleContent7 = 'GContextFree TContent7
type TVariation9 = 'GElement 0 8 TRuleContent7
type TRuleVariation9 = 'GContextFree TVariation9
type TNonSpare0 = 'GNonSpare "000" "Message Type" TRuleVariation9
type TUapItem0 = 'GUapItem TNonSpare0
type TNonSpare80 = 'GNonSpare "R" "Raw" TRuleVariation7
type TContent4 = 'GContentTable '[ '(0, "Test 0"), '(1, "Test 1"), '(2, "Test 2"), '(3, "Test 3")]
type TRuleContent4 = 'GContextFree TContent4
type TVariation8 = 'GElement 0 8 TRuleContent4
type TRuleVariation8 = 'GContextFree TVariation8
type TNonSpare88 = 'GNonSpare "T" "Table" TRuleVariation8
type TContent9 = 'GContentString 'GStringAscii
type TRuleContent9 = 'GContextFree TContent9
type TVariation22 = 'GElement 0 56 TRuleContent9
type TRuleVariation22 = 'GContextFree TVariation22
type TNonSpare81 = 'GNonSpare "S1" "String Ascii" TRuleVariation22
type TContent10 = 'GContentString 'GStringICAO
type TRuleContent10 = 'GContextFree TContent10
type TVariation21 = 'GElement 0 48 TRuleContent10
type TRuleVariation21 = 'GContextFree TVariation21
type TNonSpare82 = 'GNonSpare "S2" "String ICAO" TRuleVariation21
type TContent11 = 'GContentString 'GStringOctal
type TRuleContent11 = 'GContextFree TContent11
type TVariation17 = 'GElement 0 24 TRuleContent11
type TRuleVariation17 = 'GContextFree TVariation17
type TNonSpare83 = 'GNonSpare "S3" "String Octal" TRuleVariation17
type TContent13 = 'GContentInteger 'GUnsigned
type TRuleContent13 = 'GContextFree TContent13
type TVariation11 = 'GElement 0 8 TRuleContent13
type TRuleVariation11 = 'GContextFree TVariation11
type TNonSpare60 = 'GNonSpare "I1" "Unsigned Integer" TRuleVariation11
type TContent12 = 'GContentInteger 'GSigned
type TRuleContent12 = 'GContextFree TContent12
type TVariation10 = 'GElement 0 8 TRuleContent12
type TRuleVariation10 = 'GContextFree TVariation10
type TNonSpare65 = 'GNonSpare "I2" "Signed Integer" TRuleVariation10
type TContent15 = 'GContentQuantity 'GSigned ('GNumDiv ('GNumInt ('GZ 'GPlus 180)) ('GNumPow ('GZ 'GPlus 2) ('GZ 'GPlus 23))) "°"
type TRuleContent15 = 'GContextFree TContent15
type TVariation19 = 'GElement 0 24 TRuleContent15
type TRuleVariation19 = 'GContextFree TVariation19
type TNonSpare75 = 'GNonSpare "Q1LAT" "Latitude in WGS.84 in Two's Complement Form" TRuleVariation19
type TContent14 = 'GContentQuantity 'GSigned ('GNumDiv ('GNumInt ('GZ 'GPlus 180)) ('GNumPow ('GZ 'GPlus 2) ('GZ 'GPlus 23))) "°"
type TRuleContent14 = 'GContextFree TContent14
type TVariation18 = 'GElement 0 24 TRuleContent14
type TRuleVariation18 = 'GContextFree TVariation18
type TNonSpare76 = 'GNonSpare "Q2LON" "Longitude in WGS.84 in Two's Complement Form" TRuleVariation18
type TContent17 = 'GContentQuantity 'GUnsigned ('GNumInt ('GZ 'GPlus 1)) "kt"
type TRuleContent17 = 'GContextFree TContent17
type TVariation16 = 'GElement 0 16 TRuleContent17
type TRuleVariation16 = 'GContextFree TVariation16
type TNonSpare77 = 'GNonSpare "Q3" "Unsigned Quantity" TRuleVariation16
type TContent16 = 'GContentQuantity 'GUnsigned ('GNumInt ('GZ 'GPlus 1)) ""
type TRuleContent16 = 'GContextFree TContent16
type TVariation12 = 'GElement 0 8 TRuleContent16
type TRuleVariation12 = 'GContextFree TVariation12
type TNonSpare78 = 'GNonSpare "Q4" "Quantity No Unit" TRuleVariation12
type TContent18 = 'GContentQuantity 'GUnsigned ('GNumDiv ('GNumInt ('GZ 'GMinus 1)) ('GNumInt ('GZ 'GPlus 2))) ""
type TRuleContent18 = 'GContextFree TContent18
type TVariation13 = 'GElement 0 8 TRuleContent18
type TRuleVariation13 = 'GContextFree TVariation13
type TNonSpare79 = 'GNonSpare "Q5" "Negative Lsb" TRuleVariation13
type TContent24 = 'GContentBds 'GBdsWithAddress
type TRuleContent19 = 'GContextFree TContent24
type TVariation25 = 'GElement 0 64 TRuleContent19
type TRuleVariation25 = 'GContextFree TVariation25
type TNonSpare42 = 'GNonSpare "B1" "Bds With Address" TRuleVariation25
type TContent25 = 'GContentBds ('GBdsAt 'Nothing)
type TRuleContent20 = 'GContextFree TContent25
type TVariation23 = 'GElement 0 56 TRuleContent20
type TRuleVariation23 = 'GContextFree TVariation23
type TNonSpare43 = 'GNonSpare "B2" "Bds At Unknown Address" TRuleVariation23
type TContent26 = 'GContentBds ('GBdsAt ('Just 48))
type TRuleContent21 = 'GContextFree TContent26
type TVariation24 = 'GElement 0 56 TRuleContent21
type TRuleVariation24 = 'GContextFree TVariation24
type TNonSpare44 = 'GNonSpare "B3" "Bds At Known Address" TRuleVariation24
type TVariation69 = 'GCompound '[ 'Just TNonSpare80, 'Just TNonSpare88, 'Just TNonSpare81, 'Just TNonSpare82, 'Just TNonSpare83, 'Just TNonSpare60, 'Just TNonSpare65, 'Just TNonSpare75, 'Just TNonSpare76, 'Just TNonSpare77, 'Just TNonSpare78, 'Just TNonSpare79, 'Just TNonSpare42, 'Just TNonSpare43, 'Just TNonSpare44]
type TRuleVariation64 = 'GContextFree TVariation69
type TNonSpare4 = 'GNonSpare "020" "Different Contents" TRuleVariation64
type TUapItem4 = 'GUapItem TNonSpare4
type TContent1 = 'GContentTable '[ '(0, "Air Speed = IAS, LSB (Bit-1) = 2^-14 NM/s"), '(1, "Air Speed = Mach, LSB (Bit-1) = 0.001")]
type TRuleContent1 = 'GContextFree TContent1
type TVariation1 = 'GElement 0 1 TRuleContent1
type TRuleVariation1 = 'GContextFree TVariation1
type TNonSpare74 = 'GNonSpare "IM" "" TRuleVariation1
type TItem33 = 'GItem TNonSpare74
type TContent23 = 'GContentQuantity 'GUnsigned ('GNumDiv ('GNumInt ('GZ 'GPlus 1)) ('GNumPow ('GZ 'GPlus 2) ('GZ 'GPlus 14))) "NM/s"
type TContent20 = 'GContentQuantity 'GUnsigned ('GNumDiv ('GNumInt ('GZ 'GPlus 1)) ('GNumInt ('GZ 'GPlus 1000))) "Mach"
type TRuleContent23 = 'GDependent '[ '[ "030", "IM"]] TContent0 '[ '( '[ 0], TContent23), '( '[ 1], TContent20)]
type TVariation28 = 'GElement 1 15 TRuleContent23
type TRuleVariation28 = 'GContextFree TVariation28
type TNonSpare73 = 'GNonSpare "IAS" "" TRuleVariation28
type TItem32 = 'GItem TNonSpare73
type TVariation43 = 'GGroup 0 '[ TItem33, TItem32]
type TRuleVariation39 = 'GContextFree TVariation43
type TNonSpare6 = 'GNonSpare "030" "Simple Dependent Item" TRuleVariation39
type TUapItem6 = 'GUapItem TNonSpare6
type TContent19 = 'GContentQuantity 'GUnsigned ('GNumDiv ('GNumInt ('GZ 'GPlus 1)) ('GNumInt ('GZ 'GPlus 2))) "unit1"
type TContent21 = 'GContentQuantity 'GUnsigned ('GNumDiv ('GNumInt ('GZ 'GPlus 1)) ('GNumPow ('GZ 'GPlus 2) ('GZ 'GPlus 2))) "unit2"
type TContent22 = 'GContentQuantity 'GUnsigned ('GNumDiv ('GNumInt ('GZ 'GPlus 1)) ('GNumPow ('GZ 'GPlus 2) ('GZ 'GPlus 3))) "unit3"
type TRuleContent22 = 'GDependent '[ '[ "010", "SAC"], '[ "010", "SIC"]] TContent0 '[ '( '[ 1, 1], TContent19), '( '[ 1, 2], TContent21), '( '[ 2, 1], TContent22)]
type TVariation14 = 'GElement 0 8 TRuleContent22
type TRuleVariation14 = 'GContextFree TVariation14
type TNonSpare7 = 'GNonSpare "031" "Double Dependent Item" TRuleVariation14
type TUapItem7 = 'GUapItem TNonSpare7
type TNonSpare53 = 'GNonSpare "I1" "" TRuleVariation7
type TVariation4 = 'GElement 0 4 TRuleContent0
type TRuleVariation4 = 'GContextFree TVariation4
type TNonSpare89 = 'GNonSpare "TID" "Identification of Conflict Categories Definition Table" TRuleVariation4
type TItem38 = 'GItem TNonSpare89
type TVariation33 = 'GElement 4 3 TRuleContent0
type TContent6 = 'GContentTable '[ '(0, "Test0"), '(1, "Test1"), '(2, "Test2")]
type TRuleContent6 = 'GContextFree TContent6
type TVariation34 = 'GElement 4 3 TRuleContent6
type TContent8 = 'GContentTable '[ '(3, "Test3"), '(4, "Test4")]
type TRuleContent8 = 'GContextFree TContent8
type TVariation35 = 'GElement 4 3 TRuleContent8
type TContent5 = 'GContentTable '[ '(0, "Test0"), '(1, "Test1")]
type TRuleContent5 = 'GContextFree TContent5
type TVariation32 = 'GElement 4 1 TRuleContent5
type TRuleVariation32 = 'GContextFree TVariation32
type TNonSpare55 = 'GNonSpare "I1" "" TRuleVariation32
type TItem18 = 'GItem TNonSpare55
type TItem5 = 'GSpare 5 2
type TVariation49 = 'GGroup 4 '[ TItem18, TItem5]
type TRuleVariation65 = 'GDependent '[ '[ "000"], '[ "031", "CC", "TID"]] TVariation33 '[ '( '[ 1, 1], TVariation34), '( '[ 1, 2], TVariation35), '( '[ 2, 1], TVariation49)]
type TNonSpare46 = 'GNonSpare "CP" "Conflict Properties Class" TRuleVariation65
type TItem9 = 'GItem TNonSpare46
type TContent2 = 'GContentTable '[ '(0, "LOW"), '(1, "HIGH")]
type TRuleContent2 = 'GContextFree TContent2
type TVariation37 = 'GElement 7 1 TRuleContent2
type TRuleVariation35 = 'GContextFree TVariation37
type TNonSpare47 = 'GNonSpare "CS" "Conflict Severity" TRuleVariation35
type TItem10 = 'GItem TNonSpare47
type TVariation47 = 'GGroup 0 '[ TItem38, TItem9, TItem10]
type TRuleVariation43 = 'GContextFree TVariation47
type TNonSpare45 = 'GNonSpare "CC" "Conflict Classification" TRuleVariation43
type TVariation67 = 'GCompound '[ 'Just TNonSpare53, 'Just TNonSpare45]
type TRuleVariation62 = 'GContextFree TVariation67
type TNonSpare10 = 'GNonSpare "032" "Nested Dependent Item" TRuleVariation62
type TUapItem10 = 'GUapItem TNonSpare10
type TVariation6 = 'GElement 0 7 TRuleContent0
type TRuleVariation6 = 'GContextFree TVariation6
type TNonSpare52 = 'GNonSpare "I1" "" TRuleVariation6
type TItem15 = 'GItem TNonSpare52
type TItem7 = 'GSpare 7 2
type TVariation27 = 'GElement 1 6 TRuleContent0
type TRuleVariation27 = 'GContextFree TVariation27
type TNonSpare63 = 'GNonSpare "I2" "" TRuleVariation27
type TItem24 = 'GItem TNonSpare63
type TItem8 = 'GSpare 7 9
type TVariation40 = 'GGroup 0 '[ TItem15, TItem7, TItem24, TItem8]
type TRuleVariation38 = 'GContextFree TVariation40
type TNonSpare12 = 'GNonSpare "040" "Spare Items" TRuleVariation38
type TUapItem12 = 'GUapItem TNonSpare12
type TNonSpare15 = 'GNonSpare "051" "Element" TRuleVariation7
type TUapItem15 = 'GUapItem TNonSpare15
type TVariation5 = 'GElement 0 6 TRuleContent0
type TRuleVariation5 = 'GContextFree TVariation5
type TNonSpare51 = 'GNonSpare "I1" "" TRuleVariation5
type TItem14 = 'GItem TNonSpare51
type TItem6 = 'GSpare 6 2
type TNonSpare62 = 'GNonSpare "I2" "" TRuleVariation7
type TItem23 = 'GItem TNonSpare62
type TNonSpare67 = 'GNonSpare "I3" "" TRuleVariation4
type TItem27 = 'GItem TNonSpare67
type TItem4 = 'GSpare 4 8
type TVariation36 = 'GElement 4 4 TRuleContent0
type TRuleVariation34 = 'GContextFree TVariation36
type TNonSpare70 = 'GNonSpare "I4" "" TRuleVariation34
type TItem29 = 'GItem TNonSpare70
type TVariation39 = 'GGroup 0 '[ TItem14, TItem6, TItem23, TItem27, TItem4, TItem29]
type TRuleVariation37 = 'GContextFree TVariation39
type TNonSpare16 = 'GNonSpare "052" "Group" TRuleVariation37
type TUapItem16 = 'GUapItem TNonSpare16
type TVariation0 = 'GElement 0 1 TRuleContent0
type TRuleVariation0 = 'GContextFree TVariation0
type TNonSpare50 = 'GNonSpare "I1" "" TRuleVariation0
type TItem13 = 'GItem TNonSpare50
type TVariation3 = 'GElement 0 2 TRuleContent0
type TRuleVariation3 = 'GContextFree TVariation3
type TNonSpare66 = 'GNonSpare "I3" "" TRuleVariation3
type TItem26 = 'GItem TNonSpare66
type TItem1 = 'GSpare 2 1
type TVariation31 = 'GElement 3 4 TRuleContent0
type TRuleVariation31 = 'GContextFree TVariation31
type TNonSpare69 = 'GNonSpare "I4" "" TRuleVariation31
type TItem28 = 'GItem TNonSpare69
type TNonSpare71 = 'GNonSpare "I5" "" TRuleVariation6
type TItem30 = 'GItem TNonSpare71
type TVariation52 = 'GExtended '[ 'Just TItem13, 'Just TItem24, 'Nothing, 'Just TItem26, 'Just TItem1, 'Just TItem28, 'Nothing, 'Just TItem30, 'Nothing]
type TRuleVariation47 = 'GContextFree TVariation52
type TNonSpare17 = 'GNonSpare "053" "Extended With Trailing Fx" TRuleVariation47
type TUapItem17 = 'GUapItem TNonSpare17
type TNonSpare72 = 'GNonSpare "I5" "" TRuleVariation7
type TItem31 = 'GItem TNonSpare72
type TVariation53 = 'GExtended '[ 'Just TItem13, 'Just TItem24, 'Nothing, 'Just TItem26, 'Just TItem1, 'Just TItem28, 'Nothing, 'Just TItem31]
type TRuleVariation48 = 'GContextFree TVariation53
type TNonSpare18 = 'GNonSpare "054" "Extended Without Trailing Fx" TRuleVariation48
type TUapItem18 = 'GUapItem TNonSpare18
type TVariation57 = 'GRepetitive ('GRepetitiveRegular 1) TVariation7
type TRuleVariation52 = 'GContextFree TVariation57
type TNonSpare19 = 'GNonSpare "061" "Repetitive Regular" TRuleVariation52
type TUapItem19 = 'GUapItem TNonSpare19
type TItem16 = 'GItem TNonSpare53
type TVariation42 = 'GGroup 0 '[ TItem16, TItem23]
type TVariation58 = 'GRepetitive ('GRepetitiveRegular 1) TVariation42
type TRuleVariation53 = 'GContextFree TVariation58
type TNonSpare20 = 'GNonSpare "062" "Repetitive With Group" TRuleVariation53
type TUapItem20 = 'GUapItem TNonSpare20
type TVariation59 = 'GRepetitive 'GRepetitiveFx TVariation6
type TRuleVariation54 = 'GContextFree TVariation59
type TNonSpare21 = 'GNonSpare "063" "Repetitive Fx" TRuleVariation54
type TUapItem21 = 'GUapItem TNonSpare21
type TNonSpare61 = 'GNonSpare "I2" "" TRuleVariation6
type TItem22 = 'GItem TNonSpare61
type TVariation41 = 'GGroup 0 '[ TItem16, TItem22]
type TVariation60 = 'GRepetitive 'GRepetitiveFx TVariation41
type TRuleVariation55 = 'GContextFree TVariation60
type TNonSpare22 = 'GNonSpare "064" "Repetitive Fx With Group" TRuleVariation55
type TUapItem22 = 'GUapItem TNonSpare22
type TVariation61 = 'GExplicit 'Nothing
type TRuleVariation56 = 'GContextFree TVariation61
type TNonSpare23 = 'GNonSpare "071" "Explicit None" TRuleVariation56
type TUapItem23 = 'GUapItem TNonSpare23
type TVariation62 = 'GExplicit ('Just 'GReservedExpansion)
type TRuleVariation57 = 'GContextFree TVariation62
type TNonSpare24 = 'GNonSpare "072" "Explicit RE" TRuleVariation57
type TUapItem24 = 'GUapItem TNonSpare24
type TVariation63 = 'GExplicit ('Just 'GSpecialPurpose)
type TRuleVariation58 = 'GContextFree TVariation63
type TNonSpare25 = 'GNonSpare "073" "Explicit SP" TRuleVariation58
type TUapItem25 = 'GUapItem TNonSpare25
type TUapItem42 = 'GUapItemSpare
type TUapItem43 = 'GUapItemRFS
type TVariation64 = 'GCompound '[ 'Just TNonSpare53]
type TRuleVariation59 = 'GContextFree TVariation64
type TNonSpare26 = 'GNonSpare "091" "Compound With One Element" TRuleVariation59
type TUapItem26 = 'GUapItem TNonSpare26
type TVariation65 = 'GCompound '[ 'Just TNonSpare53, 'Nothing, 'Just TNonSpare62]
type TRuleVariation60 = 'GContextFree TVariation65
type TNonSpare27 = 'GNonSpare "092" "Compound With Two Elements" TRuleVariation60
type TUapItem27 = 'GUapItem TNonSpare27
type TNonSpare68 = 'GNonSpare "I3" "" TRuleVariation7
type TVariation66 = 'GCompound '[ 'Just TNonSpare53, 'Nothing, 'Just TNonSpare62, 'Nothing, 'Nothing, 'Nothing, 'Nothing, 'Just TNonSpare68]
type TRuleVariation61 = 'GContextFree TVariation66
type TNonSpare28 = 'GNonSpare "093" "Compound With Three Elements" TRuleVariation61
type TUapItem28 = 'GUapItem TNonSpare28
type TNonSpare48 = 'GNonSpare "EP" "Element Populated Bit" TRuleVariation0
type TItem11 = 'GItem TNonSpare48
type TVariation26 = 'GElement 1 1 TRuleContent0
type TRuleVariation26 = 'GContextFree TVariation26
type TNonSpare91 = 'GNonSpare "VAL" "Value" TRuleVariation26
type TItem40 = 'GItem TNonSpare91
type TVariation38 = 'GGroup 0 '[ TItem11, TItem40]
type TRuleVariation36 = 'GContextFree TVariation38
type TNonSpare85 = 'GNonSpare "SG1" "" TRuleVariation36
type TItem35 = 'GItem TNonSpare85
type TVariation29 = 'GElement 2 1 TRuleContent0
type TRuleVariation29 = 'GContextFree TVariation29
type TNonSpare49 = 'GNonSpare "EP" "Element Populated Bit" TRuleVariation29
type TItem12 = 'GItem TNonSpare49
type TVariation30 = 'GElement 3 1 TRuleContent0
type TRuleVariation30 = 'GContextFree TVariation30
type TNonSpare92 = 'GNonSpare "VAL" "Value" TRuleVariation30
type TItem41 = 'GItem TNonSpare92
type TVariation48 = 'GGroup 2 '[ TItem12, TItem41]
type TRuleVariation44 = 'GContextFree TVariation48
type TNonSpare86 = 'GNonSpare "SG2" "" TRuleVariation44
type TItem36 = 'GItem TNonSpare86
type TItem3 = 'GSpare 4 4
type TVariation46 = 'GGroup 0 '[ TItem35, TItem36, TItem3]
type TRuleVariation42 = 'GContextFree TVariation46
type TNonSpare30 = 'GNonSpare "101" "Nested Groups" TRuleVariation42
type TUapItem30 = 'GUapItem TNonSpare30
type TItem2 = 'GSpare 4 3
type TVariation45 = 'GGroup 0 '[ TItem35, TItem36, TItem2]
type TRuleVariation41 = 'GContextFree TVariation45
type TNonSpare64 = 'GNonSpare "I2" "" TRuleVariation41
type TItem25 = 'GItem TNonSpare64
type TVariation54 = 'GExtended '[ 'Just TItem15, 'Nothing, 'Just TItem25, 'Nothing]
type TRuleVariation49 = 'GContextFree TVariation54
type TNonSpare33 = 'GNonSpare "102" "Nested Groups Extended" TRuleVariation49
type TUapItem33 = 'GUapItem TNonSpare33
type TRecord9 = 'GRecord '[ TUapItem3, TUapItem0, TUapItem4, TUapItem6, TUapItem7, TUapItem10, TUapItem12, TUapItem15, TUapItem16, TUapItem17, TUapItem18, TUapItem19, TUapItem20, TUapItem21, TUapItem22, TUapItem23, TUapItem24, TUapItem25, TUapItem42, TUapItem43, TUapItem26, TUapItem27, TUapItem28, TUapItem30, TUapItem33]
type TUap3 = 'GUap TRecord9
type TAsterix0 = 'GAsterixBasic 0 ('GEdition 1 0) TUap3
type TExpansion1 = 'GExpansion ('Just 1) '[ 'Just TNonSpare53, 'Just TNonSpare62]
type TAsterix1 = 'GAsterixExpansion 0 ('GEdition 1 0) TExpansion1
type TNonSpare37 = 'GNonSpare "200" "Test" TRuleVariation7
type TUapItem37 = 'GUapItem TNonSpare37
type TRecord10 = 'GRecord '[ TUapItem3, TUapItem0, TUapItem4, TUapItem6, TUapItem7, TUapItem10, TUapItem12, TUapItem15, TUapItem16, TUapItem17, TUapItem18, TUapItem19, TUapItem20, TUapItem21, TUapItem23, TUapItem24, TUapItem25, TUapItem42, TUapItem43, TUapItem26, TUapItem27, TUapItem28, TUapItem30, TUapItem33, TUapItem37]
type TUap4 = 'GUap TRecord10
type TAsterix2 = 'GAsterixBasic 0 ('GEdition 1 1) TUap4
type TExpansion2 = 'GExpansion ('Just 2) '[ 'Just TNonSpare53, 'Nothing, 'Nothing, 'Just TNonSpare62, 'Nothing, 'Nothing, 'Nothing, 'Nothing, 'Nothing, 'Nothing, 'Just TNonSpare68]
type TAsterix3 = 'GAsterixExpansion 0 ('GEdition 1 1) TExpansion2
type TExpansion0 = 'GExpansion 'Nothing '[ 'Just TNonSpare53, 'Nothing, 'Nothing, 'Just TNonSpare62, 'Nothing, 'Nothing, 'Nothing, 'Nothing, 'Nothing, 'Nothing, 'Just TNonSpare68]
type TAsterix4 = 'GAsterixExpansion 0 ('GEdition 1 2) TExpansion0
type TNonSpare2 = 'GNonSpare "010" "Data Source Identifier" TRuleVariation40
type TUapItem2 = 'GUapItem TNonSpare2
type TContent3 = 'GContentTable '[ '(0, "Plot"), '(1, "Track")]
type TRuleContent3 = 'GContextFree TContent3
type TVariation2 = 'GElement 0 1 TRuleContent3
type TRuleVariation2 = 'GContextFree TVariation2
type TNonSpare90 = 'GNonSpare "TYP" "" TRuleVariation2
type TItem39 = 'GItem TNonSpare90
type TNonSpare54 = 'GNonSpare "I1" "" TRuleVariation27
type TItem17 = 'GItem TNonSpare54
type TVariation56 = 'GExtended '[ 'Just TItem39, 'Just TItem17, 'Nothing, 'Just TItem22, 'Nothing]
type TRuleVariation51 = 'GContextFree TVariation56
type TNonSpare5 = 'GNonSpare "020" "Target Report Descriptor" TRuleVariation51
type TUapItem5 = 'GUapItem TNonSpare5
type TNonSpare8 = 'GNonSpare "031" "For Plots Only" TRuleVariation7
type TUapItem8 = 'GUapItem TNonSpare8
type TNonSpare11 = 'GNonSpare "040" "Common" TRuleVariation7
type TUapItem11 = 'GUapItem TNonSpare11
type TNonSpare13 = 'GNonSpare "041" "For Plots Only" TRuleVariation7
type TUapItem13 = 'GUapItem TNonSpare13
type TRecord7 = 'GRecord '[ TUapItem2, TUapItem5, TUapItem8, TUapItem42, TUapItem11, TUapItem13]
type TVariation15 = 'GElement 0 16 TRuleContent0
type TRuleVariation15 = 'GContextFree TVariation15
type TNonSpare9 = 'GNonSpare "032" "For Tracks Only" TRuleVariation15
type TUapItem9 = 'GUapItem TNonSpare9
type TNonSpare14 = 'GNonSpare "042" "For Tracks Only" TRuleVariation15
type TUapItem14 = 'GUapItem TNonSpare14
type TRecord8 = 'GRecord '[ TUapItem2, TUapItem5, TUapItem42, TUapItem9, TUapItem11, TUapItem14]
type TUap5 = 'GUaps '[ '("plot", TRecord7), '("track", TRecord8)] ('Just ('GUapSelector '[ "020", "TYP"] '[ '( 0, "plot"), '( 1, "track")]))
type TAsterix5 = 'GAsterixBasic 1 ('GEdition 1 0) TUap5
type TNonSpare1 = 'GNonSpare "010" "" TRuleVariation7
type TUapItem1 = 'GUapItem TNonSpare1
type TNonSpare29 = 'GNonSpare "101" "" TRuleVariation7
type TUapItem29 = 'GUapItem TNonSpare29
type TNonSpare32 = 'GNonSpare "102" "" TRuleVariation7
type TUapItem32 = 'GUapItem TNonSpare32
type TRecord2 = 'GRecord '[ TUapItem1, TUapItem29, TUapItem32]
type TNonSpare38 = 'GNonSpare "201" "" TRuleVariation15
type TUapItem38 = 'GUapItem TNonSpare38
type TNonSpare39 = 'GNonSpare "202" "" TRuleVariation15
type TUapItem39 = 'GUapItem TNonSpare39
type TRecord5 = 'GRecord '[ TUapItem1, TUapItem38, TUapItem39]
type TVariation20 = 'GElement 0 32 TRuleContent0
type TRuleVariation20 = 'GContextFree TVariation20
type TNonSpare40 = 'GNonSpare "301" "" TRuleVariation20
type TUapItem40 = 'GUapItem TNonSpare40
type TRecord6 = 'GRecord '[ TUapItem1, TUapItem40]
type TRecord1 = 'GRecord '[ TUapItem1]
type TUap6 = 'GUaps '[ '("uap1", TRecord2), '("uap2", TRecord5), '("uap3", TRecord6), '("uap4", TRecord1)] 'Nothing
type TAsterix6 = 'GAsterixBasic 2 ('GEdition 1 0) TUap6
type TNonSpare41 = 'GNonSpare "302" "" TRuleVariation20
type TUapItem41 = 'GUapItem TNonSpare41
type TRecord4 = 'GRecord '[ TUapItem1, TUapItem29, TUapItem32, TUapItem43, TUapItem38, TUapItem43, TUapItem39, TUapItem40, TUapItem43, TUapItem42, TUapItem41]
type TUap2 = 'GUap TRecord4
type TAsterix7 = 'GAsterixBasic 3 ('GEdition 1 0) TUap2
type TRecord3 = 'GRecord '[ TUapItem1, TUapItem29, TUapItem32, TUapItem38, TUapItem39, TUapItem40, TUapItem42, TUapItem41]
type TUap1 = 'GUap TRecord3
type TAsterix8 = 'GAsterixBasic 4 ('GEdition 1 0) TUap1
type TNonSpare56 = 'GNonSpare "I1" "Test" TRuleVariation6
type TItem19 = 'GItem TNonSpare56
type TVariation55 = 'GExtended '[ 'Just TItem19, 'Nothing]
type TRuleVariation50 = 'GContextFree TVariation55
type TNonSpare31 = 'GNonSpare "101" "Single1" TRuleVariation50
type TUapItem31 = 'GUapItem TNonSpare31
type TItem0 = 'GSpare 0 4
type TRuleVariation33 = 'GContextFree TVariation33
type TNonSpare58 = 'GNonSpare "I1" "Test" TRuleVariation33
type TItem20 = 'GItem TNonSpare58
type TVariation50 = 'GExtended '[ 'Just TItem0, 'Just TItem20, 'Nothing]
type TRuleVariation45 = 'GContextFree TVariation50
type TNonSpare34 = 'GNonSpare "102" "Single2" TRuleVariation45
type TUapItem34 = 'GUapItem TNonSpare34
type TNonSpare59 = 'GNonSpare "I1" "Test" TRuleVariation34
type TItem21 = 'GItem TNonSpare59
type TVariation51 = 'GExtended '[ 'Just TItem0, 'Just TItem21]
type TRuleVariation46 = 'GContextFree TVariation51
type TNonSpare35 = 'GNonSpare "103" "Single3" TRuleVariation46
type TUapItem35 = 'GUapItem TNonSpare35
type TNonSpare57 = 'GNonSpare "I1" "Test" TRuleVariation7
type TVariation68 = 'GCompound '[ 'Just TNonSpare57]
type TRuleVariation63 = 'GContextFree TVariation68
type TNonSpare36 = 'GNonSpare "104" "Single4" TRuleVariation63
type TUapItem36 = 'GUapItem TNonSpare36
type TRecord0 = 'GRecord '[ TUapItem0, TUapItem31, TUapItem34, TUapItem35, TUapItem36]
type TUap0 = 'GUap TRecord0
type TAsterix9 = 'GAsterixBasic 5 ('GEdition 1 0) TUap0

-- Toplevel aliases

type Cat_000_1_0 = TAsterix0
type Ref_000_1_0 = TAsterix1
type Cat_000_1_1 = TAsterix2
type Ref_000_1_1 = TAsterix3
type Ref_000_1_2 = TAsterix4
type Cat_001_1_0 = TAsterix5
type Cat_002_1_0 = TAsterix6
type Cat_003_1_0 = TAsterix7
type Cat_004_1_0 = TAsterix8
type Cat_005_1_0 = TAsterix9

-- Manifest

manifest :: [GAsterix 'ValueLevel]
manifest =
    [ schema @Cat_000_1_0 Proxy
    , schema @Ref_000_1_0 Proxy
    , schema @Cat_000_1_1 Proxy
    , schema @Ref_000_1_1 Proxy
    , schema @Ref_000_1_2 Proxy
    , schema @Cat_001_1_0 Proxy
    , schema @Cat_002_1_0 Proxy
    , schema @Cat_003_1_0 Proxy
    , schema @Cat_004_1_0 Proxy
    , schema @Cat_005_1_0 Proxy
    ]