fix bool2string() to handle optional values