Inplement OnDeaf, close #24