reorganize code based off rubrick