fix bug, now it becomes slow again, keep working on it