fix code and add refer