it will not replace but will re-factor and encapsulate.