Separated fundamental functionality from usage.