first working version.