Final Version for v.1.2