correctly propagate constructors for end points