created repository interfaces