Typecheck solved but not tested