create factory for frame