added caster argument