basic machine implementation