Optimization

已经优化好了。现在应该没bug了。