add ideas
reduce complexity (flog)