Added abstract factory view