doin' some refactorin'