after some few tweaks