still searching for the negative value issue