first mc implementation