added finish method