[abstractfactory.go](abstractfactory.go.md) [abstractfactory_test.go](abstractfactory_test.go.md)