some errors correct