a little bit clean up, still have issues that needs to be figured