checks at endpoints