a few bug has been fixed