Core Functions

These are primarily private functions, and are not called directly in most cases. They are usually called privately by other functions as helpers.