This commit will accumulate the refactor