implement repo fetch