On the Subject of Waste Management

Fun fact — everything is less ambiguous when expressed as source code.

PAPER
Has IND and b ≤ 4+19
SND+15
Parallel port-44
b = 0 && ind ≤ 2+154
SN# “SAVEMYWORLD” && consonants ≤ 2+200
Morse module && time ≤ half of starting-26
PLASTIC
Even number of modules && empty pp-17
FRQ && D ≤ AA+153
TRN && strikes ≠ 1+91
FRK && strikes ≠ 2+69
METAL
BOB+199
MSA+92
CAR && no RJ-200
dup port && no DVI+153
FMN && (BOB && ports ≥ 6)+99
FMN && (no BOB || ports < 6)-84
SIG && time ≥ 1/5 of starting time+99
RULES   (round .5’s away from zero)

if (Paper + Plastic + Metal > 695):
    recycle everything
    DONE
else if (Metal > 200)
    Metal recycle = .75 × Metal
    Metal waste = Metal - Metal recycle
else if (Metal < Paper)
    Paper recycle = Paper
    Paper = 0
    Metal waste = .25 × Metal
    Leftover recycle = .5 × (Plastic + Metal - Metal waste)
    DONE

if (100 < Plastic < 300)
    Plastic recycle = .5 × Plastic
    Plastic = Plastic - Plastic recycle
    flag = true
else if (10 < Plastic < 100)
    Plastic waste = Plastic
    Plastic = 0

if (Paper < 65)
    if (flag)
        Paper recycle = Paper
        Paper = 0
    else
        Paper waste = Paper ÷ 3
        Paper = Paper - Paper waste

Leftover = Paper + Plastic + Metal
if (100 < Leftover < 300)
    Leftover recycle = Leftover
else
    Leftover waste = Leftover