a few new ideas
fix merge