more type handling