add a self balance program