implemented exists