#5 Modified repository implementation