Tag: abstract factory design pattern