Function accepts external arguments, and IMAGE may be overriden as well