depend on shallow thrift copy