initial commit with many modifications