move some code to Common project,
add exclude mode