Stable but need to implement epsilon