Added dataSource protocol and a property conforming to that type.