explained repo purpose