implemented g2
merge g2 in dev