finished type inference, just need to do small step now