[factory] add loader factory