fixed overlap bug