pub type Point = Point2D<i32>;
struct Point { pub x: i32, pub y: i32, /* private fields */ }
x: i32
y: i32