using repo object to make things smoother