added Point and Bound structs