upadte & fix