adding thrift generation