default handler bug; clean up return values