added demo; added isCompleted fn;