﻿:: {g:g, v:v, o:o, s:s, b:b, qb:b?, r8:r8, qr8:r8?, r4:r4, qr4:r4?, i:i, qi:i?, i8:i8, qi8:i8?, i4:i4, qi4:i4?, i2:i2, qi2:i2?, i1:i1, qi1:i1?, u8:u8, qu8:u8?, u4:u4, qu4:u4?, u2:u2, qu2:u2?, u1:u1, qu1:u1?, r:{A:i8}, qr:{A:i8}?}

Opt(b)
Opt(i8)
Opt(r8)
Opt(i)
Opt(qi4)
Opt(s)
Opt(o)
Opt(g)
Opt(v)
Opt(r)
Opt(qr)

Def(b)
Def(i8)
Def(r8)
Def(i)
Def(qi4)
Def(s)
Def(o)
Def(g)
Def(v)
Def(r)
Def(qr)

DefReq(b)
DefReq(i8)
DefReq(r8)
DefReq(i)
DefReq(qi4)
DefReq(s)
DefReq(o)
DefReq(g)
DefReq(v)
DefReq(r)
DefReq(qr)

Null(b)
Null(i8)
Null(r8)
Null(i)
Null(qi4)
Null(s)
Null(o)
Null(g)
Null(v)
Null(r)
Null(qr)

:: {g:g*, v:v*, o:o*, s:s*, b:b*, qb:b?*, r8:r8*, qr8:r8?*, r4:r4*, qr4:r4?*, i:i*, qi:i?*, i8:i8*, qi8:i8?*, i4:i4*, qi4:i4?*, i2:i2*, qi2:i2?*, i1:i1*, qi1:i1?*, u8:u8*, qu8:u8?*, u4:u4*, qu4:u4?*, u2:u2*, qu2:u2?*, u1:u1*, qu1:u1?*, r:{A:i8}*, qr:{A:i8}?*}

Opt(r)

DefItem(b)
DefItem(i8)
DefItem(r8)
DefItem(i)
DefItem(qi4)
DefItem(s)
DefItem(o)
DefItem(g)
DefItem(v)
DefItem(r)
DefItem(qr)

DefItemReq(b)
DefItemReq(i8)
DefItemReq(r8)
DefItemReq(i)
DefItemReq(qi4)
DefItemReq(s)
DefItemReq(o)
DefItemReq(g)
DefItemReq(v)
DefItemReq(r)
DefItemReq(qr)

NullItem(b)
NullItem(i8)
NullItem(r8)
NullItem(i)
NullItem(qi4)
NullItem(s)
NullItem(o)
NullItem(g)
NullItem(v)
NullItem(r)
NullItem(qr)
