modified for v1.2.0