initial commit with working code