caster related refacto