add the 'degenerate' case ,but not finished