Refactored the onliner