Consolidated into one file [wip]