more type annotations