Using new unsigned byte in Cooper (more code and cleanup)