add IExternalSource