dynamic print hide implemented