added default success/fail callbacks and an available property