typehinting again