better typings