analyze speed optimization
merged