extra module for Protobuf and push down projection

why do we need a TreeSet here?