design has come a long way
fix merge