:: {g:g, o:o, s:s, b:b, qb:b?, n:n, qn:n?, 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?}

3 / 4 // R8
3 / 4u
3 / 4i
3 / 4d
3u / 4i
3i / 4i
3d / 4
3d / 4u
3d / 4i
3d / 4f
3f / 4d
3d / 4d

3 / 4f // R4
3u / 4f
3i / 4f
3f / 4
3f / 4u
3f / 4i
3f / 4f

2 / -1 // R8
2 / -1f // R4
2f / -1
 
2 / 0 // R8
2 / 0f // R4
2f / 0

-0 / 2 // R8
-0 / 2d
-0 / 2f // R4
-0d / 2 // R8
-0f / 2 // R4

-2 / -0 // R8
-2 / -0d
-2 / -0f // R4
-2d / -0 // R8
-2f / -0 // R4

0x3FFFFFFF / 2 // R8
0x3FFFFFFF / 4
0x7FFFFFFFU / 2
0x7FFFFFFFU / 2U
0x7FFFFFFFU / 4
0x3FFFFFFF / 2f // R4
0x3FFFFFFF / 4f
0x7FFFFFFFU / 2f
0x7FFFFFFFU / 2f
0x7FFFFFFFU / 4f

3 / null // R8
3d / null
3f / null // R4
null / 3 // R8
null / 3d
null / 3f // R4
0 / null // R8
0d / null
0f / null // R4
null / 0 // R8
null / 0d
null / 0f // R4

i4 / 3 // R8
i4 / 3d
i4 / 3f // R4
3 / i4 // R8
3d / i4
3f / i4 // R4

i4 / null // R8
i4 / CastR8(null)
i4 / CastR4(null) // R4
null / i4 // R8
CastR8(null) / i4
CastR4(null) / i4 // R4

i4 / 2 / null // R8
i4 / 2 / CastR8(null)
i4 / 2 / CastR4(null)
i4 / 2d / null
i4 / 2f / null // R4

null / i4 / 2 // R8
CastR8(null) / i4 / 2
CastR4(null) / i4 / 2 // R4

i1 / i2 / i2
i1 / i2 / i4
i4 / i2 / i1

(i1 / 3) / (i2 / 2)
(i1 / 3f) / (i2 / 2)
(i1 / 3) / (i2 / 2f)
(i1 / 3f) / (i2 / 2f)

(i1 / 3i1) / (i2 / i4)

i1 / 3i1 / 2i1
i1 / -1i1 / -1i1
i1 / -1f / -1f
i1 / 3i1 / -1i1
i1 / 3i1 / -1f
i1 / 3i1 / -1f / -1f
-i1 / -1f / -1f

i2 / qi2 / i1
i4 / qi2 / i1

3 / true
true / 3
false / true
true / false
"3" / true
3 / "true"
"3" / "true"

2.0f / 4.0f
2.0f / 3.0f
2.0d / 4.0d
2.0d / 3.0d

3f / null
null / 2f

2i1 / r4
r4 / 3i1
1i1 / r4
r4 / 1i1
null / r4
r4 / null
0i1 / r4
r4 / 0i1

2 / r4
r4 / 3
1 / r4
r4 / 1
null / r4
r4 / null
0 / r4
r4 / 0

r4 / r4 / 1
r4 / (r4 / 1)

r4 / -1f / -1f / -1f
r4 / -1f / -2f / -1f / -3f
r4 / -1f / -2f / -3f / -1f
r4 / -1f / -1f * -1f
r4 / -1f / -2f / -3f * -1f

-1f / r4 / -1f
r4 / -1f / i2 / -1f

r8 / r4 / -1

3 / g
3 / o
3 / s
3 / b
3 / n
3 / r8
3 / r4
3 / i
3 / i8
3 / i4
3 / i2
3 / i1
3 / u8
3 / u4
3 / u2
3 / u1

3u / g
3u / o
3u / s
3u / b
3u / n
3u / r8
3u / r4
3u / i
3u / i8
3u / i4
3u / i2
3u / i1
3u / u8
3u / u4
3u / u2
3u / u1

3d / g
3d / o
3d / s
3d / b
3d / n
3d / r8
3d / r4
3d / i
3d / i8
3d / i4
3d / i2
3d / i1
3d / u8
3d / u4
3d / u2
3d / u1

3f / g
3f / o
3f / s
3f / b
3f / n
3f / r8
3f / r4
3f / i
3f / i8
3f / i4
3f / i2
3f / i1
3f / u8
3f / u4
3f / u2
3f / u1

null / g
null / o
null / s
null / b
null / n
null / r8
null / r4
null / i
null / i8
null / i4
null / i2
null / i1
null / u8
null / u4
null / u2
null / u1

3 / qb
3 / qn
3 / qr8
3 / qr4
3 / qi
3 / qi8
3 / qi4
3 / qi2
3 / qi1
3 / qu8
3 / qu4
3 / qu2
3 / qu1

3u / qb
3u / qn
3u / qr8
3u / qr4
3u / qi
3u / qi8
3u / qi4
3u / qi2
3u / qi1
3u / qu8
3u / qu4
3u / qu2
3u / qu1

3d / qb
3d / qn
3d / qr8
3d / qr4
3d / qi
3d / qi8
3d / qi4
3d / qi2
3d / qi1
3d / qu8
3d / qu4
3d / qu2
3d / qu1

3f / qb
3f / qn
3f / qr8
3f / qr4
3f / qi
3f / qi8
3f / qi4
3f / qi2
3f / qi1
3f / qu8
3f / qu4
3f / qu2
3f / qu1

null / qb
null / qn
null / qr8
null / qr4
null / qi
null / qi8
null / qi4
null / qi2
null / qi1
null / qu8
null / qu4
null / qu2
null / qu1

i / qb
i / qn
i / qr8
i / qr4
i / qi
i / qi8
i / qi4
i / qi2
i / qi1
i / qu8
i / qu4
i / qu2
i / qu1

qi / qb
qi / qn
qi / qr8
qi / qr4
qi / qi
qi / qi8
qi / qi4
qi / qi2
qi / qi1
qi / qu8
qi / qu4
qi / qu2
qi / qu1

// *** Lifting
:: {g:g*, o:o*, s:s*, b:b*, qb:b?*, n:n*, qn:n?*, 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?*}

3 / g
3 / o
3 / s
3 / b
3 / n
3 / r8
3 / r4
3 / i
3 / i8
3 / i4
3 / i2
3 / i1
3 / u8
3 / u4
3 / u2
3 / u1

3 / qb
3 / qn
3 / qr8
3 / qr4
3 / qi
3 / qi8
3 / qi4
3 / qi2
3 / qi1
3 / qu8
3 / qu4
3 / qu2
3 / qu1
