silly 'use of unitialized value' errors