endCndn abstraction