Factory - assignment - solution