cleaner and more polished code...better usage explanation