add finish and list method