// Code generated by protoc-gen-go. DO NOT EDIT.
// source: proto/pyre.proto

package pyre_proto

import proto "github.com/golang/protobuf/proto"
import fmt "fmt"
import math "math"
import _ "google.golang.org/genproto/googleapis/api/annotations"

import (
	context "golang.org/x/net/context"
	grpc "google.golang.org/grpc"
)

// Reference imports to suppress errors if they are not otherwise used.
var _ = proto.Marshal
var _ = fmt.Errorf
var _ = math.Inf

// This is a compile-time assertion to ensure that this generated file
// is compatible with the proto package it is being compiled against.
// A compilation error at this line likely means your copy of the
// proto package needs to be updated.
const _ = proto.ProtoPackageIsVersion2 // please upgrade the proto package

type AuthorizeAccountRequest struct {
	XXX_NoUnkeyedLiteral struct{} `json:"-"`
	XXX_unrecognized     []byte   `json:"-"`
	XXX_sizecache        int32    `json:"-"`
}

func (m *AuthorizeAccountRequest) Reset()         { *m = AuthorizeAccountRequest{} }
func (m *AuthorizeAccountRequest) String() string { return proto.CompactTextString(m) }
func (*AuthorizeAccountRequest) ProtoMessage()    {}
func (*AuthorizeAccountRequest) Descriptor() ([]byte, []int) {
	return fileDescriptor_pyre_492df08819220afa, []int{0}
}
func (m *AuthorizeAccountRequest) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_AuthorizeAccountRequest.Unmarshal(m, b)
}
func (m *AuthorizeAccountRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_AuthorizeAccountRequest.Marshal(b, m, deterministic)
}
func (dst *AuthorizeAccountRequest) XXX_Merge(src proto.Message) {
	xxx_messageInfo_AuthorizeAccountRequest.Merge(dst, src)
}
func (m *AuthorizeAccountRequest) XXX_Size() int {
	return xxx_messageInfo_AuthorizeAccountRequest.Size(m)
}
func (m *AuthorizeAccountRequest) XXX_DiscardUnknown() {
	xxx_messageInfo_AuthorizeAccountRequest.DiscardUnknown(m)
}

var xxx_messageInfo_AuthorizeAccountRequest proto.InternalMessageInfo

type AuthorizeAccountResponse struct {
	// The identifier for the account.
	AccountId string `protobuf:"bytes,1,opt,name=account_id,json=accountId,proto3" json:"account_id,omitempty"`
	// An authorization token to use with all calls, other than
	// b2_authorize_account, that need an Authorization header. This
	// authorization token is valid for at most 24 hours.
	AuthorizationToken string `protobuf:"bytes,2,opt,name=authorization_token,json=authorizationToken,proto3" json:"authorization_token,omitempty"`
	// The base URL to use for all API calls except for uploading and downloading
	// files.
	ApiUrl string `protobuf:"bytes,3,opt,name=api_url,json=apiUrl,proto3" json:"api_url,omitempty"`
	// The base URL to use for downloading files.
	DownloadUrl string `protobuf:"bytes,4,opt,name=download_url,json=downloadUrl,proto3" json:"download_url,omitempty"`
	// The recommended size for each part of a large file. We recommend using
	// this part size for optimal upload performance.
	RecommendedPartSize int32 `protobuf:"varint,5,opt,name=recommended_part_size,json=recommendedPartSize,proto3" json:"recommended_part_size,omitempty"`
	// The smallest possible size of a part of a large file (except the last
	// one). This is smaller than the recommended part size. If you use it, you
	// may find that it takes longer overall to upload a large file.
	AbsoluteMinimumPartSize int32    `protobuf:"varint,6,opt,name=absolute_minimum_part_size,json=absoluteMinimumPartSize,proto3" json:"absolute_minimum_part_size,omitempty"`
	MinimumPartSize         int32    `protobuf:"varint,7,opt,name=minimum_part_size,json=minimumPartSize,proto3" json:"minimum_part_size,omitempty"`
	XXX_NoUnkeyedLiteral    struct{} `json:"-"`
	XXX_unrecognized        []byte   `json:"-"`
	XXX_sizecache           int32    `json:"-"`
}

func (m *AuthorizeAccountResponse) Reset()         { *m = AuthorizeAccountResponse{} }
func (m *AuthorizeAccountResponse) String() string { return proto.CompactTextString(m) }
func (*AuthorizeAccountResponse) ProtoMessage()    {}
func (*AuthorizeAccountResponse) Descriptor() ([]byte, []int) {
	return fileDescriptor_pyre_492df08819220afa, []int{1}
}
func (m *AuthorizeAccountResponse) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_AuthorizeAccountResponse.Unmarshal(m, b)
}
func (m *AuthorizeAccountResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_AuthorizeAccountResponse.Marshal(b, m, deterministic)
}
func (dst *AuthorizeAccountResponse) XXX_Merge(src proto.Message) {
	xxx_messageInfo_AuthorizeAccountResponse.Merge(dst, src)
}
func (m *AuthorizeAccountResponse) XXX_Size() int {
	return xxx_messageInfo_AuthorizeAccountResponse.Size(m)
}
func (m *AuthorizeAccountResponse) XXX_DiscardUnknown() {
	xxx_messageInfo_AuthorizeAccountResponse.DiscardUnknown(m)
}

var xxx_messageInfo_AuthorizeAccountResponse proto.InternalMessageInfo

func (m *AuthorizeAccountResponse) GetAccountId() string {
	if m != nil {
		return m.AccountId
	}
	return ""
}

func (m *AuthorizeAccountResponse) GetAuthorizationToken() string {
	if m != nil {
		return m.AuthorizationToken
	}
	return ""
}

func (m *AuthorizeAccountResponse) GetApiUrl() string {
	if m != nil {
		return m.ApiUrl
	}
	return ""
}

func (m *AuthorizeAccountResponse) GetDownloadUrl() string {
	if m != nil {
		return m.DownloadUrl
	}
	return ""
}

func (m *AuthorizeAccountResponse) GetRecommendedPartSize() int32 {
	if m != nil {
		return m.RecommendedPartSize
	}
	return 0
}

func (m *AuthorizeAccountResponse) GetAbsoluteMinimumPartSize() int32 {
	if m != nil {
		return m.AbsoluteMinimumPartSize
	}
	return 0
}

func (m *AuthorizeAccountResponse) GetMinimumPartSize() int32 {
	if m != nil {
		return m.MinimumPartSize
	}
	return 0
}

type ListBucketsRequest struct {
	// The ID of your account.
	AccountId string `protobuf:"bytes,1,opt,name=account_id,json=accountId,proto3" json:"account_id,omitempty"`
	// When specified, the result will be a list containing just this bucket, if
	// it's present in the account, or no buckets if the account does not have a
	// bucket with this ID.
	BucketId string `protobuf:"bytes,2,opt,name=bucket_id,json=bucketId,proto3" json:"bucket_id,omitempty"`
	// When specified, the result will be a list containing just this bucket, if
	// it's present in the account, or no buckets if the account does not have a
	// bucket with this ID.
	BucketName string `protobuf:"bytes,3,opt,name=bucket_name,json=bucketName,proto3" json:"bucket_name,omitempty"`
	// If present, B2 will use it as a filter for bucket types returned in the
	// list buckets response. If not present, only buckets with bucket types
	// "allPublic", "allPrivate" and "snapshot" will be returned. A special
	// filter value of ["all"] will return all bucket types.
	//
	// If present, it must be in the form of a json array of strings containing
	// valid bucket types in quotes and separated by a comma. Valid bucket types
	// include "allPrivate", "allPublic", "snapshot", and other values added in
	// the future.
	//
	// A bad request error will be returned if "all" is used with other bucket
	// types, this field is empty, or invalid bucket types are requested.
	BucketTypes          []string `protobuf:"bytes,4,rep,name=bucket_types,json=bucketTypes,proto3" json:"bucket_types,omitempty"`
	XXX_NoUnkeyedLiteral struct{} `json:"-"`
	XXX_unrecognized     []byte   `json:"-"`
	XXX_sizecache        int32    `json:"-"`
}

func (m *ListBucketsRequest) Reset()         { *m = ListBucketsRequest{} }
func (m *ListBucketsRequest) String() string { return proto.CompactTextString(m) }
func (*ListBucketsRequest) ProtoMessage()    {}
func (*ListBucketsRequest) Descriptor() ([]byte, []int) {
	return fileDescriptor_pyre_492df08819220afa, []int{2}
}
func (m *ListBucketsRequest) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_ListBucketsRequest.Unmarshal(m, b)
}
func (m *ListBucketsRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_ListBucketsRequest.Marshal(b, m, deterministic)
}
func (dst *ListBucketsRequest) XXX_Merge(src proto.Message) {
	xxx_messageInfo_ListBucketsRequest.Merge(dst, src)
}
func (m *ListBucketsRequest) XXX_Size() int {
	return xxx_messageInfo_ListBucketsRequest.Size(m)
}
func (m *ListBucketsRequest) XXX_DiscardUnknown() {
	xxx_messageInfo_ListBucketsRequest.DiscardUnknown(m)
}

var xxx_messageInfo_ListBucketsRequest proto.InternalMessageInfo

func (m *ListBucketsRequest) GetAccountId() string {
	if m != nil {
		return m.AccountId
	}
	return ""
}

func (m *ListBucketsRequest) GetBucketId() string {
	if m != nil {
		return m.BucketId
	}
	return ""
}

func (m *ListBucketsRequest) GetBucketName() string {
	if m != nil {
		return m.BucketName
	}
	return ""
}

func (m *ListBucketsRequest) GetBucketTypes() []string {
	if m != nil {
		return m.BucketTypes
	}
	return nil
}

type LifecycleRule struct {
	// After a file is uploaded, the number of days before it can be hidden.
	DaysFromUploadingToHiding int32 `protobuf:"varint,1,opt,name=days_from_uploading_to_hiding,json=daysFromUploadingToHiding,proto3" json:"days_from_uploading_to_hiding,omitempty"`
	// After a file is hidden, the number of days before it can be deleted.
	DaysFromHidingToDeleting int32 `protobuf:"varint,2,opt,name=days_from_hiding_to_deleting,json=daysFromHidingToDeleting,proto3" json:"days_from_hiding_to_deleting,omitempty"`
	// The rule applies to files whose names start with this prefix.
	FileNamePrefix       string   `protobuf:"bytes,3,opt,name=file_name_prefix,json=fileNamePrefix,proto3" json:"file_name_prefix,omitempty"`
	XXX_NoUnkeyedLiteral struct{} `json:"-"`
	XXX_unrecognized     []byte   `json:"-"`
	XXX_sizecache        int32    `json:"-"`
}

func (m *LifecycleRule) Reset()         { *m = LifecycleRule{} }
func (m *LifecycleRule) String() string { return proto.CompactTextString(m) }
func (*LifecycleRule) ProtoMessage()    {}
func (*LifecycleRule) Descriptor() ([]byte, []int) {
	return fileDescriptor_pyre_492df08819220afa, []int{3}
}
func (m *LifecycleRule) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_LifecycleRule.Unmarshal(m, b)
}
func (m *LifecycleRule) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_LifecycleRule.Marshal(b, m, deterministic)
}
func (dst *LifecycleRule) XXX_Merge(src proto.Message) {
	xxx_messageInfo_LifecycleRule.Merge(dst, src)
}
func (m *LifecycleRule) XXX_Size() int {
	return xxx_messageInfo_LifecycleRule.Size(m)
}
func (m *LifecycleRule) XXX_DiscardUnknown() {
	xxx_messageInfo_LifecycleRule.DiscardUnknown(m)
}

var xxx_messageInfo_LifecycleRule proto.InternalMessageInfo

func (m *LifecycleRule) GetDaysFromUploadingToHiding() int32 {
	if m != nil {
		return m.DaysFromUploadingToHiding
	}
	return 0
}

func (m *LifecycleRule) GetDaysFromHidingToDeleting() int32 {
	if m != nil {
		return m.DaysFromHidingToDeleting
	}
	return 0
}

func (m *LifecycleRule) GetFileNamePrefix() string {
	if m != nil {
		return m.FileNamePrefix
	}
	return ""
}

type CorsRule struct {
	// A name for humans to recognize the rule in a user interface. Names must be
	// unique within a bucket. Names can consist of upper-case and lower-case
	// English letters, numbers, and "-". No other characters are allowed. A name
	// must be at least 6 characters long, and can be at most 50 characters long.
	// These are all allowed names: myPhotosSite, allowAnyHttps,
	// backblaze-images. Names that start with "b2-" are reserved for Backblaze
	// use.
	CorsRuleName string `protobuf:"bytes,1,opt,name=cors_rule_name,json=corsRuleName,proto3" json:"cors_rule_name,omitempty"`
	// A non-empty list specifying which origins the rule covers. Each value may
	// have one of many formats:
	//
	//  * The origin can be fully specified, such as http://www.example.com:8180
	//  or https://www.example.com:4433.
	//
	//  * The origin can omit a default port, such as https://www.example.com.
	//
	//  * The origin may have a single '*' as part of the domain name, such as
	//  https://*.example.com, https://*:8443 or https://*.
	//
	//  * The origin may be 'https' to match any origin that uses HTTPS. (This is
	//  broader than 'https://*' because it matches any port.)
	//
	//  * Finally, the origin can be a single '*' to match any origin.
	//
	// If any entry is "*", it must be the only entry. There can be at most one
	// "https" entry and no entry after it may start with "https:".
	AllowedOrigins []string `protobuf:"bytes,2,rep,name=allowed_origins,json=allowedOrigins,proto3" json:"allowed_origins,omitempty"`
	// A list specifying which operations the rule allows. At least one value
	// must be specified. All values must be from the following list. More values
	// may be added to this list at any time.
	//
	// b2_download_file_by_name
	// b2_download_file_by_id
	// b2_upload_file
	// b2_upload_part
	AllowedOperations []string `protobuf:"bytes,3,rep,name=allowed_operations,json=allowedOperations,proto3" json:"allowed_operations,omitempty"`
	// If present, this is a list of headers that are allowed in a pre-flight
	// OPTIONS's request's Access-Control-Request-Headers header value. Each
	// value may have one of many formats:
	//
	//  * It may be a complete header name, such as x-bz-content-sha1.
	//
	//  * It may end with an asterisk, such as x-bz-info-*.
	//
	//  * Finally, it may be a single '*' to match any header.
	//
	// If any entry is "*", it must be the only entry in the list. If this list
	// is missing, it is be treated as if it is a list with no entries.
	AllowedHeaders []string `protobuf:"bytes,4,rep,name=allowed_headers,json=allowedHeaders,proto3" json:"allowed_headers,omitempty"`
	// If present, this is a list of headers that may be exposed to an
	// application inside the client (eg. exposed to Javascript in a browser).
	// Each entry in the list must be a complete header name (eg.
	// "x-bz-content-sha1"). If this list is missing or empty, no headers will be
	// exposed.
	ExposeHeaders []string `protobuf:"bytes,5,rep,name=expose_headers,json=exposeHeaders,proto3" json:"expose_headers,omitempty"`
	// This specifies the maximum number of seconds that a browser may cache the
	// response to a preflight request. The value must not be negative and it
	// must not be more than 86,400 seconds (one day).
	MaxAgeSeconds        int32    `protobuf:"varint,6,opt,name=max_age_seconds,json=maxAgeSeconds,proto3" json:"max_age_seconds,omitempty"`
	XXX_NoUnkeyedLiteral struct{} `json:"-"`
	XXX_unrecognized     []byte   `json:"-"`
	XXX_sizecache        int32    `json:"-"`
}

func (m *CorsRule) Reset()         { *m = CorsRule{} }
func (m *CorsRule) String() string { return proto.CompactTextString(m) }
func (*CorsRule) ProtoMessage()    {}
func (*CorsRule) Descriptor() ([]byte, []int) {
	return fileDescriptor_pyre_492df08819220afa, []int{4}
}
func (m *CorsRule) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_CorsRule.Unmarshal(m, b)
}
func (m *CorsRule) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_CorsRule.Marshal(b, m, deterministic)
}
func (dst *CorsRule) XXX_Merge(src proto.Message) {
	xxx_messageInfo_CorsRule.Merge(dst, src)
}
func (m *CorsRule) XXX_Size() int {
	return xxx_messageInfo_CorsRule.Size(m)
}
func (m *CorsRule) XXX_DiscardUnknown() {
	xxx_messageInfo_CorsRule.DiscardUnknown(m)
}

var xxx_messageInfo_CorsRule proto.InternalMessageInfo

func (m *CorsRule) GetCorsRuleName() string {
	if m != nil {
		return m.CorsRuleName
	}
	return ""
}

func (m *CorsRule) GetAllowedOrigins() []string {
	if m != nil {
		return m.AllowedOrigins
	}
	return nil
}

func (m *CorsRule) GetAllowedOperations() []string {
	if m != nil {
		return m.AllowedOperations
	}
	return nil
}

func (m *CorsRule) GetAllowedHeaders() []string {
	if m != nil {
		return m.AllowedHeaders
	}
	return nil
}

func (m *CorsRule) GetExposeHeaders() []string {
	if m != nil {
		return m.ExposeHeaders
	}
	return nil
}

func (m *CorsRule) GetMaxAgeSeconds() int32 {
	if m != nil {
		return m.MaxAgeSeconds
	}
	return 0
}

type Bucket struct {
	AccountId            string            `protobuf:"bytes,1,opt,name=account_id,json=accountId,proto3" json:"account_id,omitempty"`
	BucketId             string            `protobuf:"bytes,2,opt,name=bucket_id,json=bucketId,proto3" json:"bucket_id,omitempty"`
	BucketName           string            `protobuf:"bytes,3,opt,name=bucket_name,json=bucketName,proto3" json:"bucket_name,omitempty"`
	BucketType           string            `protobuf:"bytes,4,opt,name=bucket_type,json=bucketType,proto3" json:"bucket_type,omitempty"`
	BucketInfo           map[string]string `protobuf:"bytes,5,rep,name=bucket_info,json=bucketInfo,proto3" json:"bucket_info,omitempty" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"bytes,2,opt,name=value,proto3"`
	CoresRules           []*CorsRule       `protobuf:"bytes,6,rep,name=cores_rules,json=coresRules,proto3" json:"cores_rules,omitempty"`
	LifecycleRules       []*LifecycleRule  `protobuf:"bytes,7,rep,name=lifecycle_rules,json=lifecycleRules,proto3" json:"lifecycle_rules,omitempty"`
	Revision             int32             `protobuf:"varint,8,opt,name=revision,proto3" json:"revision,omitempty"`
	XXX_NoUnkeyedLiteral struct{}          `json:"-"`
	XXX_unrecognized     []byte            `json:"-"`
	XXX_sizecache        int32             `json:"-"`
}

func (m *Bucket) Reset()         { *m = Bucket{} }
func (m *Bucket) String() string { return proto.CompactTextString(m) }
func (*Bucket) ProtoMessage()    {}
func (*Bucket) Descriptor() ([]byte, []int) {
	return fileDescriptor_pyre_492df08819220afa, []int{5}
}
func (m *Bucket) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_Bucket.Unmarshal(m, b)
}
func (m *Bucket) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_Bucket.Marshal(b, m, deterministic)
}
func (dst *Bucket) XXX_Merge(src proto.Message) {
	xxx_messageInfo_Bucket.Merge(dst, src)
}
func (m *Bucket) XXX_Size() int {
	return xxx_messageInfo_Bucket.Size(m)
}
func (m *Bucket) XXX_DiscardUnknown() {
	xxx_messageInfo_Bucket.DiscardUnknown(m)
}

var xxx_messageInfo_Bucket proto.InternalMessageInfo

func (m *Bucket) GetAccountId() string {
	if m != nil {
		return m.AccountId
	}
	return ""
}

func (m *Bucket) GetBucketId() string {
	if m != nil {
		return m.BucketId
	}
	return ""
}

func (m *Bucket) GetBucketName() string {
	if m != nil {
		return m.BucketName
	}
	return ""
}

func (m *Bucket) GetBucketType() string {
	if m != nil {
		return m.BucketType
	}
	return ""
}

func (m *Bucket) GetBucketInfo() map[string]string {
	if m != nil {
		return m.BucketInfo
	}
	return nil
}

func (m *Bucket) GetCoresRules() []*CorsRule {
	if m != nil {
		return m.CoresRules
	}
	return nil
}

func (m *Bucket) GetLifecycleRules() []*LifecycleRule {
	if m != nil {
		return m.LifecycleRules
	}
	return nil
}

func (m *Bucket) GetRevision() int32 {
	if m != nil {
		return m.Revision
	}
	return 0
}

type ListBucketsResponse struct {
	Buckets              []*Bucket `protobuf:"bytes,1,rep,name=buckets,proto3" json:"buckets,omitempty"`
	XXX_NoUnkeyedLiteral struct{}  `json:"-"`
	XXX_unrecognized     []byte    `json:"-"`
	XXX_sizecache        int32     `json:"-"`
}

func (m *ListBucketsResponse) Reset()         { *m = ListBucketsResponse{} }
func (m *ListBucketsResponse) String() string { return proto.CompactTextString(m) }
func (*ListBucketsResponse) ProtoMessage()    {}
func (*ListBucketsResponse) Descriptor() ([]byte, []int) {
	return fileDescriptor_pyre_492df08819220afa, []int{6}
}
func (m *ListBucketsResponse) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_ListBucketsResponse.Unmarshal(m, b)
}
func (m *ListBucketsResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_ListBucketsResponse.Marshal(b, m, deterministic)
}
func (dst *ListBucketsResponse) XXX_Merge(src proto.Message) {
	xxx_messageInfo_ListBucketsResponse.Merge(dst, src)
}
func (m *ListBucketsResponse) XXX_Size() int {
	return xxx_messageInfo_ListBucketsResponse.Size(m)
}
func (m *ListBucketsResponse) XXX_DiscardUnknown() {
	xxx_messageInfo_ListBucketsResponse.DiscardUnknown(m)
}

var xxx_messageInfo_ListBucketsResponse proto.InternalMessageInfo

func (m *ListBucketsResponse) GetBuckets() []*Bucket {
	if m != nil {
		return m.Buckets
	}
	return nil
}

type GetUploadUrlRequest struct {
	BucketId             string   `protobuf:"bytes,1,opt,name=bucket_id,json=bucketId,proto3" json:"bucket_id,omitempty"`
	XXX_NoUnkeyedLiteral struct{} `json:"-"`
	XXX_unrecognized     []byte   `json:"-"`
	XXX_sizecache        int32    `json:"-"`
}

func (m *GetUploadUrlRequest) Reset()         { *m = GetUploadUrlRequest{} }
func (m *GetUploadUrlRequest) String() string { return proto.CompactTextString(m) }
func (*GetUploadUrlRequest) ProtoMessage()    {}
func (*GetUploadUrlRequest) Descriptor() ([]byte, []int) {
	return fileDescriptor_pyre_492df08819220afa, []int{7}
}
func (m *GetUploadUrlRequest) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_GetUploadUrlRequest.Unmarshal(m, b)
}
func (m *GetUploadUrlRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_GetUploadUrlRequest.Marshal(b, m, deterministic)
}
func (dst *GetUploadUrlRequest) XXX_Merge(src proto.Message) {
	xxx_messageInfo_GetUploadUrlRequest.Merge(dst, src)
}
func (m *GetUploadUrlRequest) XXX_Size() int {
	return xxx_messageInfo_GetUploadUrlRequest.Size(m)
}
func (m *GetUploadUrlRequest) XXX_DiscardUnknown() {
	xxx_messageInfo_GetUploadUrlRequest.DiscardUnknown(m)
}

var xxx_messageInfo_GetUploadUrlRequest proto.InternalMessageInfo

func (m *GetUploadUrlRequest) GetBucketId() string {
	if m != nil {
		return m.BucketId
	}
	return ""
}

type GetUploadUrlResponse struct {
	BucketId             string   `protobuf:"bytes,1,opt,name=bucket_id,json=bucketId,proto3" json:"bucket_id,omitempty"`
	UploadUrl            string   `protobuf:"bytes,2,opt,name=upload_url,json=uploadUrl,proto3" json:"upload_url,omitempty"`
	AuthorizationToken   string   `protobuf:"bytes,3,opt,name=authorization_token,json=authorizationToken,proto3" json:"authorization_token,omitempty"`
	XXX_NoUnkeyedLiteral struct{} `json:"-"`
	XXX_unrecognized     []byte   `json:"-"`
	XXX_sizecache        int32    `json:"-"`
}

func (m *GetUploadUrlResponse) Reset()         { *m = GetUploadUrlResponse{} }
func (m *GetUploadUrlResponse) String() string { return proto.CompactTextString(m) }
func (*GetUploadUrlResponse) ProtoMessage()    {}
func (*GetUploadUrlResponse) Descriptor() ([]byte, []int) {
	return fileDescriptor_pyre_492df08819220afa, []int{8}
}
func (m *GetUploadUrlResponse) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_GetUploadUrlResponse.Unmarshal(m, b)
}
func (m *GetUploadUrlResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_GetUploadUrlResponse.Marshal(b, m, deterministic)
}
func (dst *GetUploadUrlResponse) XXX_Merge(src proto.Message) {
	xxx_messageInfo_GetUploadUrlResponse.Merge(dst, src)
}
func (m *GetUploadUrlResponse) XXX_Size() int {
	return xxx_messageInfo_GetUploadUrlResponse.Size(m)
}
func (m *GetUploadUrlResponse) XXX_DiscardUnknown() {
	xxx_messageInfo_GetUploadUrlResponse.DiscardUnknown(m)
}

var xxx_messageInfo_GetUploadUrlResponse proto.InternalMessageInfo

func (m *GetUploadUrlResponse) GetBucketId() string {
	if m != nil {
		return m.BucketId
	}
	return ""
}

func (m *GetUploadUrlResponse) GetUploadUrl() string {
	if m != nil {
		return m.UploadUrl
	}
	return ""
}

func (m *GetUploadUrlResponse) GetAuthorizationToken() string {
	if m != nil {
		return m.AuthorizationToken
	}
	return ""
}

type UploadFileResponse struct {
	FileId               string            `protobuf:"bytes,1,opt,name=file_id,json=fileId,proto3" json:"file_id,omitempty"`
	FileName             string            `protobuf:"bytes,2,opt,name=file_name,json=fileName,proto3" json:"file_name,omitempty"`
	AccountId            string            `protobuf:"bytes,3,opt,name=account_id,json=accountId,proto3" json:"account_id,omitempty"`
	BucketId             string            `protobuf:"bytes,4,opt,name=bucket_id,json=bucketId,proto3" json:"bucket_id,omitempty"`
	ContentLength        int32             `protobuf:"varint,5,opt,name=content_length,json=contentLength,proto3" json:"content_length,omitempty"`
	ContentSha1          string            `protobuf:"bytes,6,opt,name=content_sha1,json=contentSha1,proto3" json:"content_sha1,omitempty"`
	ContentType          string            `protobuf:"bytes,7,opt,name=content_type,json=contentType,proto3" json:"content_type,omitempty"`
	FileInfo             map[string]string `protobuf:"bytes,8,rep,name=file_info,json=fileInfo,proto3" json:"file_info,omitempty" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"bytes,2,opt,name=value,proto3"`
	Action               string            `protobuf:"bytes,9,opt,name=action,proto3" json:"action,omitempty"`
	UploadTimestamp      int64             `protobuf:"varint,10,opt,name=upload_timestamp,json=uploadTimestamp,proto3" json:"upload_timestamp,omitempty"`
	XXX_NoUnkeyedLiteral struct{}          `json:"-"`
	XXX_unrecognized     []byte            `json:"-"`
	XXX_sizecache        int32             `json:"-"`
}

func (m *UploadFileResponse) Reset()         { *m = UploadFileResponse{} }
func (m *UploadFileResponse) String() string { return proto.CompactTextString(m) }
func (*UploadFileResponse) ProtoMessage()    {}
func (*UploadFileResponse) Descriptor() ([]byte, []int) {
	return fileDescriptor_pyre_492df08819220afa, []int{9}
}
func (m *UploadFileResponse) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_UploadFileResponse.Unmarshal(m, b)
}
func (m *UploadFileResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_UploadFileResponse.Marshal(b, m, deterministic)
}
func (dst *UploadFileResponse) XXX_Merge(src proto.Message) {
	xxx_messageInfo_UploadFileResponse.Merge(dst, src)
}
func (m *UploadFileResponse) XXX_Size() int {
	return xxx_messageInfo_UploadFileResponse.Size(m)
}
func (m *UploadFileResponse) XXX_DiscardUnknown() {
	xxx_messageInfo_UploadFileResponse.DiscardUnknown(m)
}

var xxx_messageInfo_UploadFileResponse proto.InternalMessageInfo

func (m *UploadFileResponse) GetFileId() string {
	if m != nil {
		return m.FileId
	}
	return ""
}

func (m *UploadFileResponse) GetFileName() string {
	if m != nil {
		return m.FileName
	}
	return ""
}

func (m *UploadFileResponse) GetAccountId() string {
	if m != nil {
		return m.AccountId
	}
	return ""
}

func (m *UploadFileResponse) GetBucketId() string {
	if m != nil {
		return m.BucketId
	}
	return ""
}

func (m *UploadFileResponse) GetContentLength() int32 {
	if m != nil {
		return m.ContentLength
	}
	return 0
}

func (m *UploadFileResponse) GetContentSha1() string {
	if m != nil {
		return m.ContentSha1
	}
	return ""
}

func (m *UploadFileResponse) GetContentType() string {
	if m != nil {
		return m.ContentType
	}
	return ""
}

func (m *UploadFileResponse) GetFileInfo() map[string]string {
	if m != nil {
		return m.FileInfo
	}
	return nil
}

func (m *UploadFileResponse) GetAction() string {
	if m != nil {
		return m.Action
	}
	return ""
}

func (m *UploadFileResponse) GetUploadTimestamp() int64 {
	if m != nil {
		return m.UploadTimestamp
	}
	return 0
}

type StartLargeFileRequest struct {
	BucketId             string            `protobuf:"bytes,1,opt,name=bucket_id,json=bucketId,proto3" json:"bucket_id,omitempty"`
	FileName             string            `protobuf:"bytes,2,opt,name=file_name,json=fileName,proto3" json:"file_name,omitempty"`
	ContentType          string            `protobuf:"bytes,3,opt,name=content_type,json=contentType,proto3" json:"content_type,omitempty"`
	FileInfo             map[string]string `protobuf:"bytes,4,rep,name=file_info,json=fileInfo,proto3" json:"file_info,omitempty" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"bytes,2,opt,name=value,proto3"`
	XXX_NoUnkeyedLiteral struct{}          `json:"-"`
	XXX_unrecognized     []byte            `json:"-"`
	XXX_sizecache        int32             `json:"-"`
}

func (m *StartLargeFileRequest) Reset()         { *m = StartLargeFileRequest{} }
func (m *StartLargeFileRequest) String() string { return proto.CompactTextString(m) }
func (*StartLargeFileRequest) ProtoMessage()    {}
func (*StartLargeFileRequest) Descriptor() ([]byte, []int) {
	return fileDescriptor_pyre_492df08819220afa, []int{10}
}
func (m *StartLargeFileRequest) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_StartLargeFileRequest.Unmarshal(m, b)
}
func (m *StartLargeFileRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_StartLargeFileRequest.Marshal(b, m, deterministic)
}
func (dst *StartLargeFileRequest) XXX_Merge(src proto.Message) {
	xxx_messageInfo_StartLargeFileRequest.Merge(dst, src)
}
func (m *StartLargeFileRequest) XXX_Size() int {
	return xxx_messageInfo_StartLargeFileRequest.Size(m)
}
func (m *StartLargeFileRequest) XXX_DiscardUnknown() {
	xxx_messageInfo_StartLargeFileRequest.DiscardUnknown(m)
}

var xxx_messageInfo_StartLargeFileRequest proto.InternalMessageInfo

func (m *StartLargeFileRequest) GetBucketId() string {
	if m != nil {
		return m.BucketId
	}
	return ""
}

func (m *StartLargeFileRequest) GetFileName() string {
	if m != nil {
		return m.FileName
	}
	return ""
}

func (m *StartLargeFileRequest) GetContentType() string {
	if m != nil {
		return m.ContentType
	}
	return ""
}

func (m *StartLargeFileRequest) GetFileInfo() map[string]string {
	if m != nil {
		return m.FileInfo
	}
	return nil
}

type StartLargeFileResponse struct {
	FileId               string            `protobuf:"bytes,1,opt,name=file_id,json=fileId,proto3" json:"file_id,omitempty"`
	FileName             string            `protobuf:"bytes,2,opt,name=file_name,json=fileName,proto3" json:"file_name,omitempty"`
	AccountId            string            `protobuf:"bytes,3,opt,name=account_id,json=accountId,proto3" json:"account_id,omitempty"`
	BucketId             string            `protobuf:"bytes,4,opt,name=bucket_id,json=bucketId,proto3" json:"bucket_id,omitempty"`
	ContentType          string            `protobuf:"bytes,5,opt,name=content_type,json=contentType,proto3" json:"content_type,omitempty"`
	FileInfo             map[string]string `protobuf:"bytes,6,rep,name=file_info,json=fileInfo,proto3" json:"file_info,omitempty" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"bytes,2,opt,name=value,proto3"`
	UploadTimestamp      int64             `protobuf:"varint,7,opt,name=upload_timestamp,json=uploadTimestamp,proto3" json:"upload_timestamp,omitempty"`
	XXX_NoUnkeyedLiteral struct{}          `json:"-"`
	XXX_unrecognized     []byte            `json:"-"`
	XXX_sizecache        int32             `json:"-"`
}

func (m *StartLargeFileResponse) Reset()         { *m = StartLargeFileResponse{} }
func (m *StartLargeFileResponse) String() string { return proto.CompactTextString(m) }
func (*StartLargeFileResponse) ProtoMessage()    {}
func (*StartLargeFileResponse) Descriptor() ([]byte, []int) {
	return fileDescriptor_pyre_492df08819220afa, []int{11}
}
func (m *StartLargeFileResponse) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_StartLargeFileResponse.Unmarshal(m, b)
}
func (m *StartLargeFileResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_StartLargeFileResponse.Marshal(b, m, deterministic)
}
func (dst *StartLargeFileResponse) XXX_Merge(src proto.Message) {
	xxx_messageInfo_StartLargeFileResponse.Merge(dst, src)
}
func (m *StartLargeFileResponse) XXX_Size() int {
	return xxx_messageInfo_StartLargeFileResponse.Size(m)
}
func (m *StartLargeFileResponse) XXX_DiscardUnknown() {
	xxx_messageInfo_StartLargeFileResponse.DiscardUnknown(m)
}

var xxx_messageInfo_StartLargeFileResponse proto.InternalMessageInfo

func (m *StartLargeFileResponse) GetFileId() string {
	if m != nil {
		return m.FileId
	}
	return ""
}

func (m *StartLargeFileResponse) GetFileName() string {
	if m != nil {
		return m.FileName
	}
	return ""
}

func (m *StartLargeFileResponse) GetAccountId() string {
	if m != nil {
		return m.AccountId
	}
	return ""
}

func (m *StartLargeFileResponse) GetBucketId() string {
	if m != nil {
		return m.BucketId
	}
	return ""
}

func (m *StartLargeFileResponse) GetContentType() string {
	if m != nil {
		return m.ContentType
	}
	return ""
}

func (m *StartLargeFileResponse) GetFileInfo() map[string]string {
	if m != nil {
		return m.FileInfo
	}
	return nil
}

func (m *StartLargeFileResponse) GetUploadTimestamp() int64 {
	if m != nil {
		return m.UploadTimestamp
	}
	return 0
}

type GetUploadPartUrlRequest struct {
	FileId               string   `protobuf:"bytes,1,opt,name=file_id,json=fileId,proto3" json:"file_id,omitempty"`
	XXX_NoUnkeyedLiteral struct{} `json:"-"`
	XXX_unrecognized     []byte   `json:"-"`
	XXX_sizecache        int32    `json:"-"`
}

func (m *GetUploadPartUrlRequest) Reset()         { *m = GetUploadPartUrlRequest{} }
func (m *GetUploadPartUrlRequest) String() string { return proto.CompactTextString(m) }
func (*GetUploadPartUrlRequest) ProtoMessage()    {}
func (*GetUploadPartUrlRequest) Descriptor() ([]byte, []int) {
	return fileDescriptor_pyre_492df08819220afa, []int{12}
}
func (m *GetUploadPartUrlRequest) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_GetUploadPartUrlRequest.Unmarshal(m, b)
}
func (m *GetUploadPartUrlRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_GetUploadPartUrlRequest.Marshal(b, m, deterministic)
}
func (dst *GetUploadPartUrlRequest) XXX_Merge(src proto.Message) {
	xxx_messageInfo_GetUploadPartUrlRequest.Merge(dst, src)
}
func (m *GetUploadPartUrlRequest) XXX_Size() int {
	return xxx_messageInfo_GetUploadPartUrlRequest.Size(m)
}
func (m *GetUploadPartUrlRequest) XXX_DiscardUnknown() {
	xxx_messageInfo_GetUploadPartUrlRequest.DiscardUnknown(m)
}

var xxx_messageInfo_GetUploadPartUrlRequest proto.InternalMessageInfo

func (m *GetUploadPartUrlRequest) GetFileId() string {
	if m != nil {
		return m.FileId
	}
	return ""
}

type GetUploadPartUrlResponse struct {
	FileId               string   `protobuf:"bytes,1,opt,name=file_id,json=fileId,proto3" json:"file_id,omitempty"`
	UploadUrl            string   `protobuf:"bytes,2,opt,name=upload_url,json=uploadUrl,proto3" json:"upload_url,omitempty"`
	AuthorizationToken   string   `protobuf:"bytes,3,opt,name=authorization_token,json=authorizationToken,proto3" json:"authorization_token,omitempty"`
	XXX_NoUnkeyedLiteral struct{} `json:"-"`
	XXX_unrecognized     []byte   `json:"-"`
	XXX_sizecache        int32    `json:"-"`
}

func (m *GetUploadPartUrlResponse) Reset()         { *m = GetUploadPartUrlResponse{} }
func (m *GetUploadPartUrlResponse) String() string { return proto.CompactTextString(m) }
func (*GetUploadPartUrlResponse) ProtoMessage()    {}
func (*GetUploadPartUrlResponse) Descriptor() ([]byte, []int) {
	return fileDescriptor_pyre_492df08819220afa, []int{13}
}
func (m *GetUploadPartUrlResponse) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_GetUploadPartUrlResponse.Unmarshal(m, b)
}
func (m *GetUploadPartUrlResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_GetUploadPartUrlResponse.Marshal(b, m, deterministic)
}
func (dst *GetUploadPartUrlResponse) XXX_Merge(src proto.Message) {
	xxx_messageInfo_GetUploadPartUrlResponse.Merge(dst, src)
}
func (m *GetUploadPartUrlResponse) XXX_Size() int {
	return xxx_messageInfo_GetUploadPartUrlResponse.Size(m)
}
func (m *GetUploadPartUrlResponse) XXX_DiscardUnknown() {
	xxx_messageInfo_GetUploadPartUrlResponse.DiscardUnknown(m)
}

var xxx_messageInfo_GetUploadPartUrlResponse proto.InternalMessageInfo

func (m *GetUploadPartUrlResponse) GetFileId() string {
	if m != nil {
		return m.FileId
	}
	return ""
}

func (m *GetUploadPartUrlResponse) GetUploadUrl() string {
	if m != nil {
		return m.UploadUrl
	}
	return ""
}

func (m *GetUploadPartUrlResponse) GetAuthorizationToken() string {
	if m != nil {
		return m.AuthorizationToken
	}
	return ""
}

type FinishLargeFileRequest struct {
	FileId               string   `protobuf:"bytes,1,opt,name=file_id,json=fileId,proto3" json:"file_id,omitempty"`
	PartSha1Array        []string `protobuf:"bytes,2,rep,name=part_sha1_array,json=partSha1Array,proto3" json:"part_sha1_array,omitempty"`
	XXX_NoUnkeyedLiteral struct{} `json:"-"`
	XXX_unrecognized     []byte   `json:"-"`
	XXX_sizecache        int32    `json:"-"`
}

func (m *FinishLargeFileRequest) Reset()         { *m = FinishLargeFileRequest{} }
func (m *FinishLargeFileRequest) String() string { return proto.CompactTextString(m) }
func (*FinishLargeFileRequest) ProtoMessage()    {}
func (*FinishLargeFileRequest) Descriptor() ([]byte, []int) {
	return fileDescriptor_pyre_492df08819220afa, []int{14}
}
func (m *FinishLargeFileRequest) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_FinishLargeFileRequest.Unmarshal(m, b)
}
func (m *FinishLargeFileRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_FinishLargeFileRequest.Marshal(b, m, deterministic)
}
func (dst *FinishLargeFileRequest) XXX_Merge(src proto.Message) {
	xxx_messageInfo_FinishLargeFileRequest.Merge(dst, src)
}
func (m *FinishLargeFileRequest) XXX_Size() int {
	return xxx_messageInfo_FinishLargeFileRequest.Size(m)
}
func (m *FinishLargeFileRequest) XXX_DiscardUnknown() {
	xxx_messageInfo_FinishLargeFileRequest.DiscardUnknown(m)
}

var xxx_messageInfo_FinishLargeFileRequest proto.InternalMessageInfo

func (m *FinishLargeFileRequest) GetFileId() string {
	if m != nil {
		return m.FileId
	}
	return ""
}

func (m *FinishLargeFileRequest) GetPartSha1Array() []string {
	if m != nil {
		return m.PartSha1Array
	}
	return nil
}

type FinishLargeFileResponse struct {
	FileId               string            `protobuf:"bytes,1,opt,name=file_id,json=fileId,proto3" json:"file_id,omitempty"`
	FileName             string            `protobuf:"bytes,2,opt,name=file_name,json=fileName,proto3" json:"file_name,omitempty"`
	AccountId            string            `protobuf:"bytes,3,opt,name=account_id,json=accountId,proto3" json:"account_id,omitempty"`
	BucketId             string            `protobuf:"bytes,4,opt,name=bucket_id,json=bucketId,proto3" json:"bucket_id,omitempty"`
	ContentLength        int64             `protobuf:"varint,5,opt,name=content_length,json=contentLength,proto3" json:"content_length,omitempty"`
	ContentSha1          string            `protobuf:"bytes,6,opt,name=content_sha1,json=contentSha1,proto3" json:"content_sha1,omitempty"`
	ContentType          string            `protobuf:"bytes,7,opt,name=content_type,json=contentType,proto3" json:"content_type,omitempty"`
	FileInfo             map[string]string `protobuf:"bytes,8,rep,name=file_info,json=fileInfo,proto3" json:"file_info,omitempty" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"bytes,2,opt,name=value,proto3"`
	Action               string            `protobuf:"bytes,9,opt,name=action,proto3" json:"action,omitempty"`
	UploadTimestamp      int64             `protobuf:"varint,10,opt,name=upload_timestamp,json=uploadTimestamp,proto3" json:"upload_timestamp,omitempty"`
	XXX_NoUnkeyedLiteral struct{}          `json:"-"`
	XXX_unrecognized     []byte            `json:"-"`
	XXX_sizecache        int32             `json:"-"`
}

func (m *FinishLargeFileResponse) Reset()         { *m = FinishLargeFileResponse{} }
func (m *FinishLargeFileResponse) String() string { return proto.CompactTextString(m) }
func (*FinishLargeFileResponse) ProtoMessage()    {}
func (*FinishLargeFileResponse) Descriptor() ([]byte, []int) {
	return fileDescriptor_pyre_492df08819220afa, []int{15}
}
func (m *FinishLargeFileResponse) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_FinishLargeFileResponse.Unmarshal(m, b)
}
func (m *FinishLargeFileResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_FinishLargeFileResponse.Marshal(b, m, deterministic)
}
func (dst *FinishLargeFileResponse) XXX_Merge(src proto.Message) {
	xxx_messageInfo_FinishLargeFileResponse.Merge(dst, src)
}
func (m *FinishLargeFileResponse) XXX_Size() int {
	return xxx_messageInfo_FinishLargeFileResponse.Size(m)
}
func (m *FinishLargeFileResponse) XXX_DiscardUnknown() {
	xxx_messageInfo_FinishLargeFileResponse.DiscardUnknown(m)
}

var xxx_messageInfo_FinishLargeFileResponse proto.InternalMessageInfo

func (m *FinishLargeFileResponse) GetFileId() string {
	if m != nil {
		return m.FileId
	}
	return ""
}

func (m *FinishLargeFileResponse) GetFileName() string {
	if m != nil {
		return m.FileName
	}
	return ""
}

func (m *FinishLargeFileResponse) GetAccountId() string {
	if m != nil {
		return m.AccountId
	}
	return ""
}

func (m *FinishLargeFileResponse) GetBucketId() string {
	if m != nil {
		return m.BucketId
	}
	return ""
}

func (m *FinishLargeFileResponse) GetContentLength() int64 {
	if m != nil {
		return m.ContentLength
	}
	return 0
}

func (m *FinishLargeFileResponse) GetContentSha1() string {
	if m != nil {
		return m.ContentSha1
	}
	return ""
}

func (m *FinishLargeFileResponse) GetContentType() string {
	if m != nil {
		return m.ContentType
	}
	return ""
}

func (m *FinishLargeFileResponse) GetFileInfo() map[string]string {
	if m != nil {
		return m.FileInfo
	}
	return nil
}

func (m *FinishLargeFileResponse) GetAction() string {
	if m != nil {
		return m.Action
	}
	return ""
}

func (m *FinishLargeFileResponse) GetUploadTimestamp() int64 {
	if m != nil {
		return m.UploadTimestamp
	}
	return 0
}

type ListFileVersionsRequest struct {
	BucketId             string   `protobuf:"bytes,1,opt,name=bucket_id,json=bucketId,proto3" json:"bucket_id,omitempty"`
	StartFileName        string   `protobuf:"bytes,2,opt,name=start_file_name,json=startFileName,proto3" json:"start_file_name,omitempty"`
	StartFileId          string   `protobuf:"bytes,3,opt,name=start_file_id,json=startFileId,proto3" json:"start_file_id,omitempty"`
	MaxFileCount         int32    `protobuf:"varint,4,opt,name=max_file_count,json=maxFileCount,proto3" json:"max_file_count,omitempty"`
	Prefix               string   `protobuf:"bytes,5,opt,name=prefix,proto3" json:"prefix,omitempty"`
	Delimiter            string   `protobuf:"bytes,6,opt,name=delimiter,proto3" json:"delimiter,omitempty"`
	XXX_NoUnkeyedLiteral struct{} `json:"-"`
	XXX_unrecognized     []byte   `json:"-"`
	XXX_sizecache        int32    `json:"-"`
}

func (m *ListFileVersionsRequest) Reset()         { *m = ListFileVersionsRequest{} }
func (m *ListFileVersionsRequest) String() string { return proto.CompactTextString(m) }
func (*ListFileVersionsRequest) ProtoMessage()    {}
func (*ListFileVersionsRequest) Descriptor() ([]byte, []int) {
	return fileDescriptor_pyre_492df08819220afa, []int{16}
}
func (m *ListFileVersionsRequest) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_ListFileVersionsRequest.Unmarshal(m, b)
}
func (m *ListFileVersionsRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_ListFileVersionsRequest.Marshal(b, m, deterministic)
}
func (dst *ListFileVersionsRequest) XXX_Merge(src proto.Message) {
	xxx_messageInfo_ListFileVersionsRequest.Merge(dst, src)
}
func (m *ListFileVersionsRequest) XXX_Size() int {
	return xxx_messageInfo_ListFileVersionsRequest.Size(m)
}
func (m *ListFileVersionsRequest) XXX_DiscardUnknown() {
	xxx_messageInfo_ListFileVersionsRequest.DiscardUnknown(m)
}

var xxx_messageInfo_ListFileVersionsRequest proto.InternalMessageInfo

func (m *ListFileVersionsRequest) GetBucketId() string {
	if m != nil {
		return m.BucketId
	}
	return ""
}

func (m *ListFileVersionsRequest) GetStartFileName() string {
	if m != nil {
		return m.StartFileName
	}
	return ""
}

func (m *ListFileVersionsRequest) GetStartFileId() string {
	if m != nil {
		return m.StartFileId
	}
	return ""
}

func (m *ListFileVersionsRequest) GetMaxFileCount() int32 {
	if m != nil {
		return m.MaxFileCount
	}
	return 0
}

func (m *ListFileVersionsRequest) GetPrefix() string {
	if m != nil {
		return m.Prefix
	}
	return ""
}

func (m *ListFileVersionsRequest) GetDelimiter() string {
	if m != nil {
		return m.Delimiter
	}
	return ""
}

type ListFileVersionsResponse struct {
	Files                []*File  `protobuf:"bytes,1,rep,name=files,proto3" json:"files,omitempty"`
	NextFileName         string   `protobuf:"bytes,2,opt,name=next_file_name,json=nextFileName,proto3" json:"next_file_name,omitempty"`
	NextFileId           string   `protobuf:"bytes,3,opt,name=next_file_id,json=nextFileId,proto3" json:"next_file_id,omitempty"`
	XXX_NoUnkeyedLiteral struct{} `json:"-"`
	XXX_unrecognized     []byte   `json:"-"`
	XXX_sizecache        int32    `json:"-"`
}

func (m *ListFileVersionsResponse) Reset()         { *m = ListFileVersionsResponse{} }
func (m *ListFileVersionsResponse) String() string { return proto.CompactTextString(m) }
func (*ListFileVersionsResponse) ProtoMessage()    {}
func (*ListFileVersionsResponse) Descriptor() ([]byte, []int) {
	return fileDescriptor_pyre_492df08819220afa, []int{17}
}
func (m *ListFileVersionsResponse) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_ListFileVersionsResponse.Unmarshal(m, b)
}
func (m *ListFileVersionsResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_ListFileVersionsResponse.Marshal(b, m, deterministic)
}
func (dst *ListFileVersionsResponse) XXX_Merge(src proto.Message) {
	xxx_messageInfo_ListFileVersionsResponse.Merge(dst, src)
}
func (m *ListFileVersionsResponse) XXX_Size() int {
	return xxx_messageInfo_ListFileVersionsResponse.Size(m)
}
func (m *ListFileVersionsResponse) XXX_DiscardUnknown() {
	xxx_messageInfo_ListFileVersionsResponse.DiscardUnknown(m)
}

var xxx_messageInfo_ListFileVersionsResponse proto.InternalMessageInfo

func (m *ListFileVersionsResponse) GetFiles() []*File {
	if m != nil {
		return m.Files
	}
	return nil
}

func (m *ListFileVersionsResponse) GetNextFileName() string {
	if m != nil {
		return m.NextFileName
	}
	return ""
}

func (m *ListFileVersionsResponse) GetNextFileId() string {
	if m != nil {
		return m.NextFileId
	}
	return ""
}

type File struct {
	FileId               string            `protobuf:"bytes,1,opt,name=file_id,json=fileId,proto3" json:"file_id,omitempty"`
	FileName             string            `protobuf:"bytes,2,opt,name=file_name,json=fileName,proto3" json:"file_name,omitempty"`
	ContentLength        int64             `protobuf:"varint,3,opt,name=content_length,json=contentLength,proto3" json:"content_length,omitempty"`
	ContentType          string            `protobuf:"bytes,4,opt,name=content_type,json=contentType,proto3" json:"content_type,omitempty"`
	ContentSha1          string            `protobuf:"bytes,5,opt,name=content_sha1,json=contentSha1,proto3" json:"content_sha1,omitempty"`
	FileInfo             map[string]string `protobuf:"bytes,6,rep,name=file_info,json=fileInfo,proto3" json:"file_info,omitempty" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"bytes,2,opt,name=value,proto3"`
	Action               string            `protobuf:"bytes,7,opt,name=action,proto3" json:"action,omitempty"`
	Size                 int64             `protobuf:"varint,8,opt,name=size,proto3" json:"size,omitempty"`
	UploadTimestamp      int64             `protobuf:"varint,9,opt,name=upload_timestamp,json=uploadTimestamp,proto3" json:"upload_timestamp,omitempty"`
	XXX_NoUnkeyedLiteral struct{}          `json:"-"`
	XXX_unrecognized     []byte            `json:"-"`
	XXX_sizecache        int32             `json:"-"`
}

func (m *File) Reset()         { *m = File{} }
func (m *File) String() string { return proto.CompactTextString(m) }
func (*File) ProtoMessage()    {}
func (*File) Descriptor() ([]byte, []int) {
	return fileDescriptor_pyre_492df08819220afa, []int{18}
}
func (m *File) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_File.Unmarshal(m, b)
}
func (m *File) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_File.Marshal(b, m, deterministic)
}
func (dst *File) XXX_Merge(src proto.Message) {
	xxx_messageInfo_File.Merge(dst, src)
}
func (m *File) XXX_Size() int {
	return xxx_messageInfo_File.Size(m)
}
func (m *File) XXX_DiscardUnknown() {
	xxx_messageInfo_File.DiscardUnknown(m)
}

var xxx_messageInfo_File proto.InternalMessageInfo

func (m *File) GetFileId() string {
	if m != nil {
		return m.FileId
	}
	return ""
}

func (m *File) GetFileName() string {
	if m != nil {
		return m.FileName
	}
	return ""
}

func (m *File) GetContentLength() int64 {
	if m != nil {
		return m.ContentLength
	}
	return 0
}

func (m *File) GetContentType() string {
	if m != nil {
		return m.ContentType
	}
	return ""
}

func (m *File) GetContentSha1() string {
	if m != nil {
		return m.ContentSha1
	}
	return ""
}

func (m *File) GetFileInfo() map[string]string {
	if m != nil {
		return m.FileInfo
	}
	return nil
}

func (m *File) GetAction() string {
	if m != nil {
		return m.Action
	}
	return ""
}

func (m *File) GetSize() int64 {
	if m != nil {
		return m.Size
	}
	return 0
}

func (m *File) GetUploadTimestamp() int64 {
	if m != nil {
		return m.UploadTimestamp
	}
	return 0
}

func init() {
	proto.RegisterType((*AuthorizeAccountRequest)(nil), "pyre.proto.AuthorizeAccountRequest")
	proto.RegisterType((*AuthorizeAccountResponse)(nil), "pyre.proto.AuthorizeAccountResponse")
	proto.RegisterType((*ListBucketsRequest)(nil), "pyre.proto.ListBucketsRequest")
	proto.RegisterType((*LifecycleRule)(nil), "pyre.proto.LifecycleRule")
	proto.RegisterType((*CorsRule)(nil), "pyre.proto.CorsRule")
	proto.RegisterType((*Bucket)(nil), "pyre.proto.Bucket")
	proto.RegisterMapType((map[string]string)(nil), "pyre.proto.Bucket.BucketInfoEntry")
	proto.RegisterType((*ListBucketsResponse)(nil), "pyre.proto.ListBucketsResponse")
	proto.RegisterType((*GetUploadUrlRequest)(nil), "pyre.proto.GetUploadUrlRequest")
	proto.RegisterType((*GetUploadUrlResponse)(nil), "pyre.proto.GetUploadUrlResponse")
	proto.RegisterType((*UploadFileResponse)(nil), "pyre.proto.UploadFileResponse")
	proto.RegisterMapType((map[string]string)(nil), "pyre.proto.UploadFileResponse.FileInfoEntry")
	proto.RegisterType((*StartLargeFileRequest)(nil), "pyre.proto.StartLargeFileRequest")
	proto.RegisterMapType((map[string]string)(nil), "pyre.proto.StartLargeFileRequest.FileInfoEntry")
	proto.RegisterType((*StartLargeFileResponse)(nil), "pyre.proto.StartLargeFileResponse")
	proto.RegisterMapType((map[string]string)(nil), "pyre.proto.StartLargeFileResponse.FileInfoEntry")
	proto.RegisterType((*GetUploadPartUrlRequest)(nil), "pyre.proto.GetUploadPartUrlRequest")
	proto.RegisterType((*GetUploadPartUrlResponse)(nil), "pyre.proto.GetUploadPartUrlResponse")
	proto.RegisterType((*FinishLargeFileRequest)(nil), "pyre.proto.FinishLargeFileRequest")
	proto.RegisterType((*FinishLargeFileResponse)(nil), "pyre.proto.FinishLargeFileResponse")
	proto.RegisterMapType((map[string]string)(nil), "pyre.proto.FinishLargeFileResponse.FileInfoEntry")
	proto.RegisterType((*ListFileVersionsRequest)(nil), "pyre.proto.ListFileVersionsRequest")
	proto.RegisterType((*ListFileVersionsResponse)(nil), "pyre.proto.ListFileVersionsResponse")
	proto.RegisterType((*File)(nil), "pyre.proto.File")
	proto.RegisterMapType((map[string]string)(nil), "pyre.proto.File.FileInfoEntry")
}

// Reference imports to suppress errors if they are not otherwise used.
var _ context.Context
var _ grpc.ClientConn

// This is a compile-time assertion to ensure that this generated file
// is compatible with the grpc package it is being compiled against.
const _ = grpc.SupportPackageIsVersion4

// PyreServiceClient is the client API for PyreService service.
//
// For semantics around ctx use and closing/ending streaming RPCs, please refer to https://godoc.org/google.golang.org/grpc#ClientConn.NewStream.
type PyreServiceClient interface {
	// Used to log in to the B2 API. Returns an authorization token that can be
	// used for account-level operations, and a URL that should be used as the
	// base URL for subsequent API calls.
	AuthorizeAccount(ctx context.Context, in *AuthorizeAccountRequest, opts ...grpc.CallOption) (*AuthorizeAccountResponse, error)
	// Lists buckets associated with an account, in alphabetical order by bucket
	// name.
	ListBuckets(ctx context.Context, in *ListBucketsRequest, opts ...grpc.CallOption) (*ListBucketsResponse, error)
	// Creates a new bucket. A bucket belongs to the account used to create it.
	//
	// Buckets can be named. The name must be globally unique. No account can use
	// a bucket with the same name. Buckets are assigned a unique bucketId which
	// is used when uploading, downloading, or deleting files.
	//
	// There is a limit of 100 buckets per account.
	CreateBucket(ctx context.Context, in *Bucket, opts ...grpc.CallOption) (*Bucket, error)
	// Deletes the bucket specified. Only buckets that contain no version of any
	// files can be deleted.
	DeleteBucket(ctx context.Context, in *Bucket, opts ...grpc.CallOption) (*Bucket, error)
	GetUploadUrl(ctx context.Context, in *GetUploadUrlRequest, opts ...grpc.CallOption) (*GetUploadUrlResponse, error)
	// Prepares for uploading the parts of a large file.
	StartLargeFile(ctx context.Context, in *StartLargeFileRequest, opts ...grpc.CallOption) (*StartLargeFileResponse, error)
	// Gets an URL to use for uploading parts of a large file.
	GetUploadPartUrl(ctx context.Context, in *GetUploadPartUrlRequest, opts ...grpc.CallOption) (*GetUploadPartUrlResponse, error)
	// Converts the parts that have been uploaded into a single B2 file.
	FinishLargeFile(ctx context.Context, in *FinishLargeFileRequest, opts ...grpc.CallOption) (*FinishLargeFileResponse, error)
	// Lists all of the versions of all of the files contained in one bucket, in
	// alphabetical order by file name, and by reverse of date/time uploaded for
	// versions of files with the same name.
	ListFileVersions(ctx context.Context, in *ListFileVersionsRequest, opts ...grpc.CallOption) (*ListFileVersionsResponse, error)
}

type pyreServiceClient struct {
	cc *grpc.ClientConn
}

func NewPyreServiceClient(cc *grpc.ClientConn) PyreServiceClient {
	return &pyreServiceClient{cc}
}

func (c *pyreServiceClient) AuthorizeAccount(ctx context.Context, in *AuthorizeAccountRequest, opts ...grpc.CallOption) (*AuthorizeAccountResponse, error) {
	out := new(AuthorizeAccountResponse)
	err := c.cc.Invoke(ctx, "/pyre.proto.PyreService/AuthorizeAccount", in, out, opts...)
	if err != nil {
		return nil, err
	}
	return out, nil
}

func (c *pyreServiceClient) ListBuckets(ctx context.Context, in *ListBucketsRequest, opts ...grpc.CallOption) (*ListBucketsResponse, error) {
	out := new(ListBucketsResponse)
	err := c.cc.Invoke(ctx, "/pyre.proto.PyreService/ListBuckets", in, out, opts...)
	if err != nil {
		return nil, err
	}
	return out, nil
}

func (c *pyreServiceClient) CreateBucket(ctx context.Context, in *Bucket, opts ...grpc.CallOption) (*Bucket, error) {
	out := new(Bucket)
	err := c.cc.Invoke(ctx, "/pyre.proto.PyreService/CreateBucket", in, out, opts...)
	if err != nil {
		return nil, err
	}
	return out, nil
}

func (c *pyreServiceClient) DeleteBucket(ctx context.Context, in *Bucket, opts ...grpc.CallOption) (*Bucket, error) {
	out := new(Bucket)
	err := c.cc.Invoke(ctx, "/pyre.proto.PyreService/DeleteBucket", in, out, opts...)
	if err != nil {
		return nil, err
	}
	return out, nil
}

func (c *pyreServiceClient) GetUploadUrl(ctx context.Context, in *GetUploadUrlRequest, opts ...grpc.CallOption) (*GetUploadUrlResponse, error) {
	out := new(GetUploadUrlResponse)
	err := c.cc.Invoke(ctx, "/pyre.proto.PyreService/GetUploadUrl", in, out, opts...)
	if err != nil {
		return nil, err
	}
	return out, nil
}

func (c *pyreServiceClient) StartLargeFile(ctx context.Context, in *StartLargeFileRequest, opts ...grpc.CallOption) (*StartLargeFileResponse, error) {
	out := new(StartLargeFileResponse)
	err := c.cc.Invoke(ctx, "/pyre.proto.PyreService/StartLargeFile", in, out, opts...)
	if err != nil {
		return nil, err
	}
	return out, nil
}

func (c *pyreServiceClient) GetUploadPartUrl(ctx context.Context, in *GetUploadPartUrlRequest, opts ...grpc.CallOption) (*GetUploadPartUrlResponse, error) {
	out := new(GetUploadPartUrlResponse)
	err := c.cc.Invoke(ctx, "/pyre.proto.PyreService/GetUploadPartUrl", in, out, opts...)
	if err != nil {
		return nil, err
	}
	return out, nil
}

func (c *pyreServiceClient) FinishLargeFile(ctx context.Context, in *FinishLargeFileRequest, opts ...grpc.CallOption) (*FinishLargeFileResponse, error) {
	out := new(FinishLargeFileResponse)
	err := c.cc.Invoke(ctx, "/pyre.proto.PyreService/FinishLargeFile", in, out, opts...)
	if err != nil {
		return nil, err
	}
	return out, nil
}

func (c *pyreServiceClient) ListFileVersions(ctx context.Context, in *ListFileVersionsRequest, opts ...grpc.CallOption) (*ListFileVersionsResponse, error) {
	out := new(ListFileVersionsResponse)
	err := c.cc.Invoke(ctx, "/pyre.proto.PyreService/ListFileVersions", in, out, opts...)
	if err != nil {
		return nil, err
	}
	return out, nil
}

// PyreServiceServer is the server API for PyreService service.
type PyreServiceServer interface {
	// Used to log in to the B2 API. Returns an authorization token that can be
	// used for account-level operations, and a URL that should be used as the
	// base URL for subsequent API calls.
	AuthorizeAccount(context.Context, *AuthorizeAccountRequest) (*AuthorizeAccountResponse, error)
	// Lists buckets associated with an account, in alphabetical order by bucket
	// name.
	ListBuckets(context.Context, *ListBucketsRequest) (*ListBucketsResponse, error)
	// Creates a new bucket. A bucket belongs to the account used to create it.
	//
	// Buckets can be named. The name must be globally unique. No account can use
	// a bucket with the same name. Buckets are assigned a unique bucketId which
	// is used when uploading, downloading, or deleting files.
	//
	// There is a limit of 100 buckets per account.
	CreateBucket(context.Context, *Bucket) (*Bucket, error)
	// Deletes the bucket specified. Only buckets that contain no version of any
	// files can be deleted.
	DeleteBucket(context.Context, *Bucket) (*Bucket, error)
	GetUploadUrl(context.Context, *GetUploadUrlRequest) (*GetUploadUrlResponse, error)
	// Prepares for uploading the parts of a large file.
	StartLargeFile(context.Context, *StartLargeFileRequest) (*StartLargeFileResponse, error)
	// Gets an URL to use for uploading parts of a large file.
	GetUploadPartUrl(context.Context, *GetUploadPartUrlRequest) (*GetUploadPartUrlResponse, error)
	// Converts the parts that have been uploaded into a single B2 file.
	FinishLargeFile(context.Context, *FinishLargeFileRequest) (*FinishLargeFileResponse, error)
	// Lists all of the versions of all of the files contained in one bucket, in
	// alphabetical order by file name, and by reverse of date/time uploaded for
	// versions of files with the same name.
	ListFileVersions(context.Context, *ListFileVersionsRequest) (*ListFileVersionsResponse, error)
}

func RegisterPyreServiceServer(s *grpc.Server, srv PyreServiceServer) {
	s.RegisterService(&_PyreService_serviceDesc, srv)
}

func _PyreService_AuthorizeAccount_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
	in := new(AuthorizeAccountRequest)
	if err := dec(in); err != nil {
		return nil, err
	}
	if interceptor == nil {
		return srv.(PyreServiceServer).AuthorizeAccount(ctx, in)
	}
	info := &grpc.UnaryServerInfo{
		Server:     srv,
		FullMethod: "/pyre.proto.PyreService/AuthorizeAccount",
	}
	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
		return srv.(PyreServiceServer).AuthorizeAccount(ctx, req.(*AuthorizeAccountRequest))
	}
	return interceptor(ctx, in, info, handler)
}

func _PyreService_ListBuckets_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
	in := new(ListBucketsRequest)
	if err := dec(in); err != nil {
		return nil, err
	}
	if interceptor == nil {
		return srv.(PyreServiceServer).ListBuckets(ctx, in)
	}
	info := &grpc.UnaryServerInfo{
		Server:     srv,
		FullMethod: "/pyre.proto.PyreService/ListBuckets",
	}
	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
		return srv.(PyreServiceServer).ListBuckets(ctx, req.(*ListBucketsRequest))
	}
	return interceptor(ctx, in, info, handler)
}

func _PyreService_CreateBucket_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
	in := new(Bucket)
	if err := dec(in); err != nil {
		return nil, err
	}
	if interceptor == nil {
		return srv.(PyreServiceServer).CreateBucket(ctx, in)
	}
	info := &grpc.UnaryServerInfo{
		Server:     srv,
		FullMethod: "/pyre.proto.PyreService/CreateBucket",
	}
	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
		return srv.(PyreServiceServer).CreateBucket(ctx, req.(*Bucket))
	}
	return interceptor(ctx, in, info, handler)
}

func _PyreService_DeleteBucket_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
	in := new(Bucket)
	if err := dec(in); err != nil {
		return nil, err
	}
	if interceptor == nil {
		return srv.(PyreServiceServer).DeleteBucket(ctx, in)
	}
	info := &grpc.UnaryServerInfo{
		Server:     srv,
		FullMethod: "/pyre.proto.PyreService/DeleteBucket",
	}
	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
		return srv.(PyreServiceServer).DeleteBucket(ctx, req.(*Bucket))
	}
	return interceptor(ctx, in, info, handler)
}

func _PyreService_GetUploadUrl_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
	in := new(GetUploadUrlRequest)
	if err := dec(in); err != nil {
		return nil, err
	}
	if interceptor == nil {
		return srv.(PyreServiceServer).GetUploadUrl(ctx, in)
	}
	info := &grpc.UnaryServerInfo{
		Server:     srv,
		FullMethod: "/pyre.proto.PyreService/GetUploadUrl",
	}
	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
		return srv.(PyreServiceServer).GetUploadUrl(ctx, req.(*GetUploadUrlRequest))
	}
	return interceptor(ctx, in, info, handler)
}

func _PyreService_StartLargeFile_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
	in := new(StartLargeFileRequest)
	if err := dec(in); err != nil {
		return nil, err
	}
	if interceptor == nil {
		return srv.(PyreServiceServer).StartLargeFile(ctx, in)
	}
	info := &grpc.UnaryServerInfo{
		Server:     srv,
		FullMethod: "/pyre.proto.PyreService/StartLargeFile",
	}
	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
		return srv.(PyreServiceServer).StartLargeFile(ctx, req.(*StartLargeFileRequest))
	}
	return interceptor(ctx, in, info, handler)
}

func _PyreService_GetUploadPartUrl_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
	in := new(GetUploadPartUrlRequest)
	if err := dec(in); err != nil {
		return nil, err
	}
	if interceptor == nil {
		return srv.(PyreServiceServer).GetUploadPartUrl(ctx, in)
	}
	info := &grpc.UnaryServerInfo{
		Server:     srv,
		FullMethod: "/pyre.proto.PyreService/GetUploadPartUrl",
	}
	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
		return srv.(PyreServiceServer).GetUploadPartUrl(ctx, req.(*GetUploadPartUrlRequest))
	}
	return interceptor(ctx, in, info, handler)
}

func _PyreService_FinishLargeFile_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
	in := new(FinishLargeFileRequest)
	if err := dec(in); err != nil {
		return nil, err
	}
	if interceptor == nil {
		return srv.(PyreServiceServer).FinishLargeFile(ctx, in)
	}
	info := &grpc.UnaryServerInfo{
		Server:     srv,
		FullMethod: "/pyre.proto.PyreService/FinishLargeFile",
	}
	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
		return srv.(PyreServiceServer).FinishLargeFile(ctx, req.(*FinishLargeFileRequest))
	}
	return interceptor(ctx, in, info, handler)
}

func _PyreService_ListFileVersions_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
	in := new(ListFileVersionsRequest)
	if err := dec(in); err != nil {
		return nil, err
	}
	if interceptor == nil {
		return srv.(PyreServiceServer).ListFileVersions(ctx, in)
	}
	info := &grpc.UnaryServerInfo{
		Server:     srv,
		FullMethod: "/pyre.proto.PyreService/ListFileVersions",
	}
	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
		return srv.(PyreServiceServer).ListFileVersions(ctx, req.(*ListFileVersionsRequest))
	}
	return interceptor(ctx, in, info, handler)
}

var _PyreService_serviceDesc = grpc.ServiceDesc{
	ServiceName: "pyre.proto.PyreService",
	HandlerType: (*PyreServiceServer)(nil),
	Methods: []grpc.MethodDesc{
		{
			MethodName: "AuthorizeAccount",
			Handler:    _PyreService_AuthorizeAccount_Handler,
		},
		{
			MethodName: "ListBuckets",
			Handler:    _PyreService_ListBuckets_Handler,
		},
		{
			MethodName: "CreateBucket",
			Handler:    _PyreService_CreateBucket_Handler,
		},
		{
			MethodName: "DeleteBucket",
			Handler:    _PyreService_DeleteBucket_Handler,
		},
		{
			MethodName: "GetUploadUrl",
			Handler:    _PyreService_GetUploadUrl_Handler,
		},
		{
			MethodName: "StartLargeFile",
			Handler:    _PyreService_StartLargeFile_Handler,
		},
		{
			MethodName: "GetUploadPartUrl",
			Handler:    _PyreService_GetUploadPartUrl_Handler,
		},
		{
			MethodName: "FinishLargeFile",
			Handler:    _PyreService_FinishLargeFile_Handler,
		},
		{
			MethodName: "ListFileVersions",
			Handler:    _PyreService_ListFileVersions_Handler,
		},
	},
	Streams:  []grpc.StreamDesc{},
	Metadata: "proto/pyre.proto",
}

func init() { proto.RegisterFile("proto/pyre.proto", fileDescriptor_pyre_492df08819220afa) }

var fileDescriptor_pyre_492df08819220afa = []byte{
	// 1591 bytes of a gzipped FileDescriptorProto
	0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xcc, 0x58, 0xcb, 0x6f, 0x1b, 0x55,
	0x17, 0xd7, 0xd8, 0x71, 0x1c, 0x1f, 0xc7, 0xb1, 0x7b, 0xd3, 0x36, 0x13, 0xb7, 0x4d, 0xdc, 0xdb,
	0x24, 0x5f, 0x9a, 0xaf, 0x5f, 0xfc, 0x25, 0x08, 0x09, 0xb5, 0x02, 0x91, 0x06, 0x42, 0x23, 0xa5,
	0xa5, 0x72, 0x52, 0x24, 0x16, 0x68, 0x74, 0xe3, 0xb9, 0xb1, 0xaf, 0x3a, 0x0f, 0x73, 0x67, 0x9c,
	0xc6, 0x5d, 0xf1, 0x50, 0x17, 0x74, 0x0b, 0xff, 0x00, 0x7f, 0x07, 0x12, 0x1b, 0x36, 0xec, 0xd9,
	0xb3, 0xea, 0x86, 0x7f, 0x81, 0x0d, 0xe8, 0x3e, 0xc6, 0x9e, 0x47, 0x9c, 0x14, 0x68, 0x45, 0x57,
	0x9e, 0x39, 0xf7, 0x77, 0xce, 0x3d, 0xf7, 0x77, 0x1e, 0x73, 0xae, 0xa1, 0xd6, 0xe3, 0x7e, 0xe8,
	0x37, 0x7b, 0x03, 0x4e, 0xd7, 0xe5, 0x23, 0x82, 0xd1, 0x73, 0xfd, 0x6a, 0xc7, 0xf7, 0x3b, 0x0e,
	0x6d, 0x92, 0x1e, 0x6b, 0x12, 0xcf, 0xf3, 0x43, 0x12, 0x32, 0xdf, 0x0b, 0xd4, 0x2a, 0x9e, 0x87,
	0xb9, 0xad, 0x7e, 0xd8, 0xf5, 0x39, 0x7b, 0x4a, 0xb7, 0xda, 0x6d, 0xbf, 0xef, 0x85, 0x2d, 0xfa,
	0x79, 0x9f, 0x06, 0x21, 0xfe, 0x29, 0x07, 0x66, 0x76, 0x2d, 0xe8, 0xf9, 0x5e, 0x40, 0xd1, 0x35,
	0x00, 0xa2, 0x44, 0x16, 0xb3, 0x4d, 0xa3, 0x61, 0xac, 0x96, 0x5a, 0x25, 0x2d, 0xd9, 0xb5, 0x51,
	0x13, 0x66, 0x89, 0x56, 0x95, 0xdb, 0x59, 0xa1, 0xff, 0x98, 0x7a, 0x66, 0x4e, 0xe2, 0x50, 0x62,
	0xe9, 0x40, 0xac, 0xa0, 0x39, 0x28, 0x92, 0x1e, 0xb3, 0xfa, 0xdc, 0x31, 0xf3, 0x12, 0x34, 0x49,
	0x7a, 0xec, 0x11, 0x77, 0xd0, 0x75, 0x98, 0xb6, 0xfd, 0x27, 0x9e, 0xe3, 0x13, 0x5b, 0xae, 0x4e,
	0xc8, 0xd5, 0x72, 0x24, 0x13, 0x90, 0x4d, 0xb8, 0xc4, 0x69, 0xdb, 0x77, 0x5d, 0xea, 0xd9, 0xd4,
	0xb6, 0x7a, 0x84, 0x87, 0x56, 0xc0, 0x9e, 0x52, 0xb3, 0xd0, 0x30, 0x56, 0x0b, 0xad, 0xd9, 0xd8,
	0xe2, 0x43, 0xc2, 0xc3, 0x7d, 0xf6, 0x94, 0xa2, 0x3b, 0x50, 0x27, 0x87, 0x81, 0xef, 0xf4, 0x43,
	0x6a, 0xb9, 0xcc, 0x63, 0x6e, 0xdf, 0x8d, 0x29, 0x4e, 0x4a, 0xc5, 0xb9, 0x08, 0x71, 0x5f, 0x01,
	0x86, 0xca, 0x6b, 0x70, 0x21, 0xab, 0x53, 0x94, 0x3a, 0x55, 0x37, 0x89, 0xc5, 0xdf, 0x19, 0x80,
	0xf6, 0x58, 0x10, 0xde, 0xed, 0xb7, 0x1f, 0xd3, 0x30, 0xd0, 0xe4, 0x9e, 0xc7, 0xdf, 0x15, 0x28,
	0x1d, 0x4a, 0x05, 0xb1, 0xaa, 0x58, 0x9b, 0x52, 0x82, 0x5d, 0x1b, 0x2d, 0x42, 0x59, 0x2f, 0x7a,
	0xc4, 0xa5, 0x9a, 0x2f, 0x50, 0xa2, 0x07, 0xc4, 0xa5, 0x82, 0x33, 0x0d, 0x08, 0x07, 0x3d, 0x1a,
	0x98, 0x13, 0x8d, 0xbc, 0xe0, 0x4c, 0xc9, 0x0e, 0x84, 0x08, 0xff, 0x60, 0x40, 0x65, 0x8f, 0x1d,
	0xd1, 0xf6, 0xa0, 0xed, 0xd0, 0x56, 0xdf, 0xa1, 0xe8, 0x7d, 0xb8, 0x66, 0x93, 0x41, 0x60, 0x1d,
	0x71, 0xdf, 0xb5, 0xfa, 0x3d, 0x41, 0x2e, 0xf3, 0x3a, 0x56, 0xe8, 0x5b, 0x5d, 0x26, 0x9e, 0xa4,
	0x93, 0x85, 0xd6, 0xbc, 0x00, 0xed, 0x70, 0xdf, 0x7d, 0x14, 0x41, 0x0e, 0xfc, 0x7b, 0x12, 0x80,
	0xde, 0x83, 0xab, 0x23, 0x0b, 0x4a, 0x49, 0xa8, 0xdb, 0xd4, 0xa1, 0xa1, 0x30, 0x90, 0x93, 0x06,
	0xcc, 0xc8, 0x80, 0xd2, 0x3a, 0xf0, 0x3f, 0xd0, 0xeb, 0x68, 0x15, 0x6a, 0x47, 0xcc, 0xa1, 0xf2,
	0x54, 0x56, 0x8f, 0xd3, 0x23, 0x76, 0xa2, 0x0f, 0x37, 0x23, 0xe4, 0xe2, 0x68, 0x0f, 0xa5, 0x14,
	0x7f, 0x91, 0x83, 0xa9, 0x6d, 0x9f, 0x07, 0xd2, 0xf1, 0x25, 0x98, 0x69, 0xfb, 0x3c, 0xb0, 0x78,
	0x5f, 0xeb, 0x6a, 0x3a, 0xa7, 0xdb, 0x1a, 0x21, 0x39, 0xf9, 0x0f, 0x54, 0x89, 0xe3, 0xf8, 0x4f,
	0xa8, 0x6d, 0xf9, 0x9c, 0x75, 0x98, 0x17, 0x98, 0x39, 0x49, 0xcb, 0x8c, 0x16, 0x7f, 0xac, 0xa4,
	0xe8, 0x7f, 0x80, 0x86, 0xc0, 0x1e, 0xe5, 0xaa, 0x5a, 0xcc, 0xbc, 0xc4, 0x5e, 0x88, 0xb0, 0xc3,
	0x85, 0xb8, 0xdd, 0x2e, 0x25, 0x36, 0xe5, 0x11, 0xdd, 0x91, 0xdd, 0x7b, 0x4a, 0x8a, 0x96, 0x61,
	0x86, 0x9e, 0xf4, 0xfc, 0x80, 0x0e, 0x71, 0x05, 0x89, 0xab, 0x28, 0x69, 0x04, 0x5b, 0x81, 0xaa,
	0x4b, 0x4e, 0x2c, 0xd2, 0xa1, 0x56, 0x40, 0xdb, 0xbe, 0x67, 0x07, 0x3a, 0x1b, 0x2b, 0x2e, 0x39,
	0xd9, 0xea, 0xd0, 0x7d, 0x25, 0xc4, 0xdf, 0xe7, 0x61, 0x52, 0xe5, 0xd4, 0xeb, 0xcd, 0xa5, 0x11,
	0x40, 0xe4, 0x92, 0x2e, 0x3f, 0x18, 0xa5, 0x12, 0xda, 0x1e, 0x02, 0x98, 0x77, 0xe4, 0xcb, 0x43,
	0x95, 0x37, 0xf1, 0xfa, 0xa8, 0x03, 0xad, 0x2b, 0x37, 0xf5, 0xcf, 0xae, 0x77, 0xe4, 0x7f, 0xe8,
	0x85, 0x7c, 0x10, 0x19, 0x11, 0x02, 0xf4, 0x36, 0x94, 0xdb, 0x3e, 0xa7, 0x2a, 0x88, 0xe2, 0xc4,
	0xc2, 0xc8, 0xc5, 0xb8, 0x91, 0x28, 0xdc, 0x2d, 0x90, 0x40, 0xf1, 0x18, 0xa0, 0xbb, 0x50, 0x75,
	0xa2, 0x24, 0xd6, 0xaa, 0x45, 0xa9, 0x3a, 0x1f, 0x57, 0x4d, 0xe4, 0x79, 0x6b, 0xc6, 0x89, 0xbf,
	0x06, 0xa8, 0x0e, 0x53, 0x9c, 0x1e, 0xb3, 0x80, 0xf9, 0x9e, 0x39, 0x25, 0x99, 0x1e, 0xbe, 0xd7,
	0xdf, 0x85, 0x6a, 0xca, 0x6b, 0x54, 0x83, 0xfc, 0x63, 0x3a, 0xd0, 0x2c, 0x8b, 0x47, 0x74, 0x11,
	0x0a, 0xc7, 0xc4, 0xe9, 0x53, 0xcd, 0xad, 0x7a, 0xb9, 0x9d, 0x7b, 0xc7, 0xc0, 0xdb, 0x30, 0x9b,
	0x28, 0x7d, 0xdd, 0x3b, 0x6f, 0x41, 0x51, 0x1d, 0x3d, 0x30, 0x0d, 0xe9, 0x2d, 0xca, 0xb2, 0xd5,
	0x8a, 0x20, 0x78, 0x13, 0x66, 0x3f, 0xa2, 0xa1, 0xaa, 0xb6, 0x47, 0xdc, 0x89, 0x1a, 0x48, 0x22,
	0xaa, 0x46, 0x32, 0xaa, 0xf8, 0x6b, 0x03, 0x2e, 0x26, 0x95, 0xf4, 0xd6, 0x67, 0x69, 0x89, 0x3c,
	0x52, 0x75, 0x2f, 0x1b, 0xad, 0x3a, 0x4d, 0xa9, 0x1f, 0xd9, 0x18, 0xd7, 0xd3, 0xf3, 0xe3, 0x7a,
	0x3a, 0xfe, 0x31, 0x0f, 0x48, 0xb9, 0xb0, 0xc3, 0x1c, 0x3a, 0xf4, 0x61, 0x0e, 0x8a, 0xb2, 0xcc,
	0x87, 0x1e, 0x4c, 0x8a, 0x57, 0x95, 0xa8, 0xc3, 0xfa, 0x8f, 0x12, 0x35, 0x2a, 0xfc, 0x54, 0x92,
	0xe7, 0xcf, 0x4c, 0xf2, 0x89, 0xd4, 0xc1, 0x96, 0x45, 0x87, 0xf0, 0x42, 0xea, 0x85, 0x96, 0x43,
	0xbd, 0x4e, 0xd8, 0xd5, 0x5f, 0x86, 0x8a, 0x96, 0xee, 0x49, 0xa1, 0x68, 0x9b, 0x11, 0x2c, 0xe8,
	0x92, 0x0d, 0x59, 0x77, 0xa5, 0x56, 0x59, 0xcb, 0xf6, 0xbb, 0x64, 0x23, 0x0e, 0x91, 0xe5, 0x50,
	0x4c, 0x40, 0x64, 0x3d, 0xec, 0xea, 0x53, 0xc8, 0x6a, 0x98, 0x92, 0xf1, 0xbd, 0x15, 0x8f, 0x6f,
	0x96, 0x91, 0x75, 0xf1, 0x32, 0xaa, 0x0b, 0x79, 0x66, 0x59, 0x15, 0x97, 0x61, 0x92, 0xb4, 0x05,
	0x9f, 0x66, 0x49, 0x7f, 0x13, 0xe5, 0x1b, 0xba, 0x09, 0x35, 0x1d, 0xa8, 0x90, 0xb9, 0x34, 0x08,
	0x89, 0xdb, 0x33, 0xa1, 0x61, 0xac, 0xe6, 0x5b, 0x55, 0x25, 0x3f, 0x88, 0xc4, 0xf5, 0x3b, 0x50,
	0x49, 0x58, 0xff, 0x4b, 0xf9, 0xfb, 0x87, 0x01, 0x97, 0xf6, 0x43, 0xc2, 0xc3, 0x3d, 0xc2, 0x3b,
	0x54, 0xb9, 0x7c, 0x7e, 0xf6, 0x9d, 0x1d, 0xc7, 0x34, 0x83, 0xf9, 0x2c, 0x83, 0x7b, 0x71, 0x06,
	0x27, 0x24, 0x83, 0xcd, 0x38, 0x83, 0xa7, 0xba, 0x34, 0x8e, 0xc4, 0x7f, 0xc6, 0xc0, 0x8b, 0x1c,
	0x5c, 0x4e, 0x6f, 0xf7, 0xaf, 0xa5, 0x71, 0x9a, 0xba, 0x42, 0x96, 0xba, 0xfb, 0x71, 0xea, 0x54,
	0x17, 0xfd, 0xff, 0x59, 0xd4, 0x9d, 0x93, 0x80, 0xa7, 0x25, 0x5a, 0xf1, 0x35, 0x24, 0xda, 0x26,
	0xcc, 0x0d, 0xdb, 0x95, 0x98, 0x9c, 0x62, 0x7d, 0x6e, 0x1c, 0xcd, 0xa2, 0xc7, 0x99, 0x59, 0xa5,
	0xf3, 0x82, 0xf3, 0xaa, 0x7b, 0xdc, 0xa7, 0x70, 0x79, 0x87, 0x79, 0x2c, 0xe8, 0x66, 0x4a, 0x64,
	0xac, 0x0b, 0x2b, 0x50, 0x55, 0x53, 0x63, 0x97, 0x6c, 0x58, 0x84, 0x73, 0x32, 0xd0, 0x93, 0x48,
	0x45, 0x88, 0x45, 0x9b, 0xd9, 0x12, 0x42, 0xfc, 0x73, 0x1e, 0xe6, 0x32, 0xb6, 0xdf, 0xb0, 0x1e,
	0x9a, 0x7f, 0x3d, 0x3d, 0xf4, 0x41, 0xb6, 0x87, 0x6e, 0xc4, 0xd3, 0x78, 0x0c, 0x2d, 0x6f, 0x6c,
	0x23, 0xfd, 0xd5, 0x80, 0x39, 0x31, 0x09, 0x08, 0x0b, 0x9f, 0x50, 0x2e, 0x66, 0x8b, 0xe0, 0xa5,
	0x5a, 0xe9, 0x0a, 0x54, 0x03, 0x51, 0xb2, 0x56, 0x3a, 0xa8, 0x15, 0x29, 0xde, 0x89, 0x22, 0x8b,
	0xa1, 0x12, 0xc3, 0x0d, 0x83, 0x5b, 0x1e, 0xa2, 0x76, 0x6d, 0x31, 0x27, 0x8b, 0xc9, 0x52, 0x22,
	0x64, 0xc8, 0x65, 0x8c, 0x0b, 0xad, 0x69, 0x97, 0x9c, 0x08, 0xc8, 0xb6, 0x90, 0x09, 0xaa, 0xf4,
	0xe8, 0xad, 0xda, 0x8b, 0x7e, 0x43, 0x57, 0xa1, 0x64, 0x53, 0x87, 0xb9, 0x2c, 0xa4, 0x5c, 0x47,
	0x75, 0x24, 0xc0, 0xcf, 0x0d, 0x30, 0xb3, 0x07, 0xd4, 0xc9, 0xba, 0x02, 0x05, 0xb1, 0x69, 0x34,
	0xed, 0xd4, 0x92, 0x91, 0x74, 0x68, 0x4b, 0x2d, 0x0b, 0x07, 0x3d, 0x7a, 0x92, 0x3d, 0xeb, 0xb4,
	0x90, 0x0e, 0x8f, 0xda, 0x80, 0xe9, 0x11, 0x6a, 0x78, 0x52, 0x88, 0x30, 0xbb, 0x36, 0xfe, 0x3d,
	0x07, 0x13, 0xe2, 0xf1, 0x6f, 0x56, 0x49, 0x36, 0xd3, 0xf3, 0xe7, 0x64, 0x7a, 0x6c, 0x32, 0x4e,
	0xa4, 0x71, 0xba, 0x18, 0x0a, 0xd9, 0x62, 0xb8, 0x93, 0x6d, 0xd8, 0x0b, 0x69, 0x7e, 0x5e, 0x22,
	0xad, 0x8b, 0x89, 0xb4, 0x46, 0x30, 0x21, 0xaf, 0xa4, 0x53, 0xd2, 0x6f, 0xf9, 0x7c, 0x6a, 0xaa,
	0x97, 0x5e, 0x7d, 0xaa, 0x6f, 0xfe, 0x36, 0x05, 0xe5, 0x87, 0x03, 0x4e, 0xf7, 0x29, 0x3f, 0x66,
	0x6d, 0x8a, 0x9e, 0x19, 0x50, 0x4b, 0xff, 0x8b, 0x80, 0x6e, 0xc4, 0x8f, 0x38, 0xe6, 0xff, 0x87,
	0xfa, 0xd2, 0xd9, 0x20, 0x95, 0x5c, 0x78, 0xe5, 0xab, 0x5f, 0x5e, 0x7c, 0x9b, 0x6b, 0xa0, 0x85,
	0xe6, 0xe1, 0x26, 0xe9, 0xb1, 0xe6, 0xf1, 0x46, 0xf3, 0x70, 0xd3, 0x8a, 0x3a, 0x35, 0xb5, 0x74,
	0x7b, 0x43, 0x21, 0x94, 0x63, 0xb3, 0x38, 0x5a, 0x48, 0x5e, 0x10, 0xd2, 0xf7, 0xf3, 0xfa, 0xe2,
	0xd8, 0x75, 0xbd, 0xef, 0x92, 0xdc, 0x77, 0x01, 0xcf, 0x27, 0xf6, 0x75, 0x58, 0x10, 0x5a, 0x7a,
	0x72, 0xbf, 0x6d, 0xac, 0xa1, 0xcf, 0x60, 0x7a, 0x9b, 0x53, 0x12, 0x52, 0x7d, 0x55, 0x3b, 0x65,
	0xd2, 0xaf, 0x9f, 0x22, 0xc3, 0xcb, 0xd2, 0xfa, 0x22, 0xae, 0x27, 0xac, 0xb7, 0xa5, 0x29, 0x6d,
	0x5f, 0x9b, 0x97, 0xb7, 0xe7, 0x57, 0x63, 0x5e, 0x5e, 0xd4, 0xe3, 0xe6, 0x07, 0x30, 0x1d, 0xbf,
	0x45, 0xa0, 0x04, 0x29, 0xa7, 0x5c, 0x4a, 0xea, 0x8d, 0xf1, 0x80, 0x64, 0xb8, 0xf0, 0x95, 0xc4,
	0xce, 0x1d, 0x1a, 0x5a, 0xa3, 0xcf, 0xb2, 0xd8, 0xfa, 0x4b, 0x03, 0x66, 0x92, 0xc3, 0x0a, 0xba,
	0x7e, 0xee, 0x0c, 0x58, 0xc7, 0xe7, 0xcf, 0x3a, 0x78, 0x55, 0x7a, 0x80, 0xf1, 0xb5, 0x84, 0x07,
	0xaa, 0x7b, 0x3a, 0x02, 0x2d, 0x3b, 0x8b, 0xf0, 0xe1, 0xb9, 0x01, 0xb5, 0xf4, 0x84, 0x91, 0x4c,
	0xdd, 0x31, 0x43, 0x4b, 0x32, 0x75, 0xc7, 0x0d, 0x29, 0xf8, 0xbf, 0xd2, 0x93, 0x65, 0xdc, 0x18,
	0xc7, 0x85, 0x1c, 0x13, 0x34, 0x21, 0xcf, 0x0c, 0xa8, 0xa6, 0x3e, 0x7b, 0x08, 0x9f, 0xf9, 0x4d,
	0x54, 0xae, 0xdc, 0x78, 0x89, 0xef, 0x26, 0xbe, 0x29, 0x3d, 0xb9, 0x81, 0x93, 0x45, 0x74, 0x24,
	0xd1, 0x29, 0x52, 0xbe, 0x31, 0xa0, 0x96, 0xee, 0xf4, 0x49, 0x52, 0xc6, 0x7c, 0xe8, 0x92, 0xa4,
	0x8c, 0xfb, 0x58, 0xe0, 0x35, 0xe9, 0xca, 0x12, 0x5e, 0xcc, 0xd6, 0x95, 0x6c, 0x94, 0xc7, 0x5a,
	0xe1, 0xb6, 0xb1, 0x76, 0x38, 0x29, 0x6d, 0xbd, 0xf5, 0x67, 0x00, 0x00, 0x00, 0xff, 0xff, 0x09,
	0x84, 0xd9, 0x63, 0x01, 0x15, 0x00, 0x00,
}
