working one red move
totally merged code
fixed conflicts