update code

bug fixes