tweak according to requirements