new function is added
merged