Refactor and break apart into tabs