each of them has its pros and cons