updated somethings all work correctly