Optimize && Fix bugs