adding a more abstract tableservice