Implement system functions, rename others