improve navigation type generation