added exists method