in reply to Puzzling Hash of Arrays problem

how about changing assignment to:
$engine = sprintf(%02d,$1);

to make "00" which is true, rather than "0" which isn't, in cases where $1 = 0.

Seekers of truth must know thy path...

what is truth? (Camel 2, page 20)

So as long as you test "00" in a string rather than numerical context, you should be OK.

cLive ;-)

Update: after a minute's thought, I changed the line to sprintf to the assignment...