borrowing operates on foreign keys rather than on simple types again