hard work, but not understandable