new added code by jemo