Refactor to fix abstract inheritence