more strict conversion