basic operation and direct method