Expected cases

[edit]
Unset
((Progression))

((Progression))

((Progression/sandbox))

Set to 0
((Progression|0))

((Progression))

((Progression/sandbox))

Set to 36
((Progression|36))

((Progression))

((Progression/sandbox))

Set to 100
((Progression|100))

((Progression))

((Progression/sandbox))

Set to 0 of 150
((Progression|0|150))

((Progression))

((Progression/sandbox))

Set to 36 of 150
((Progression|36|150))

((Progression))

((Progression/sandbox))

Set to 100 of 150
((Progression|100|150))

((Progression))

((Progression/sandbox))

Set to 150 of 150
((Progression|150|150))

((Progression))

((Progression/sandbox))

Unexpected cases

[edit]
Set to 150
((Progression|150))

((Progression))

((Progression/sandbox))

Set to -50
((Progression|-50))

((Progression))

((Progression/sandbox))

Set to 200 of 150
((Progression|200|150))

((Progression))

((Progression/sandbox))

Set to -50 of 150
((Progression|-50|150))

((Progression))

((Progression/sandbox))

Defined, but null
((Progression|))

((Progression))

((Progression/sandbox))

Divide by zero
((Progression|50|0))

((Progression))

((Progression/sandbox))

zero of zero
((Progression|0|0))

((Progression))

((Progression/sandbox))