port to linear