starting map coloring (working basic CP) + polishing