added factory methods for test