separate cl parser