diff --git a/platformapi/ali_logistics_query/api.go b/platformapi/ali_logistics_query/api.go new file mode 100644 index 00000000..cded7d2c --- /dev/null +++ b/platformapi/ali_logistics_query/api.go @@ -0,0 +1,83 @@ +package ali_logistics_query + +import ( + "encoding/json" + "fmt" + "git.rosy.net.cn/baseapi/platformapi" + "git.rosy.net.cn/baseapi/utils" + "net/http" + "strings" +) + +const ( + BastUrl = "http://express3.market.alicloudapi.com" // 基础访问路由 + GetOrderDetailApi = "express3" // 获取物流订单详情 +) + +type API struct { + appKey string + appSecret string + appCode string + client *http.Client + config *platformapi.APIConfig +} + +func New(appKey, appSecret, appCode string, config ...*platformapi.APIConfig) (a *API) { + curConfig := platformapi.DefAPIConfig + if len(config) > 0 { + curConfig = *config[0] + } + + a = &API{ + appKey: appKey, + appSecret: appSecret, + appCode: appCode, + client: &http.Client{Timeout: curConfig.ClientTimeout}, + config: &curConfig, + } + return a +} + +func (a *API) GetAppCode() string { + return a.appCode +} + +func (a *API) AccessAPI(baseUrl, actionApi, method string, bizParams map[string]interface{}) (retVal map[string]interface{}, err error) { + // 序列化 + data, err := json.Marshal(bizParams) + if err != nil { + return nil, err + } + + // 发送请求 + sendUrl := func() *http.Request { + var request *http.Request + if http.MethodPost == method { + request, _ = http.NewRequest(http.MethodPost, utils.GenerateGetURL(baseUrl, actionApi, nil), strings.NewReader(string(data))) + } else { + request, _ = http.NewRequest(http.MethodGet, utils.GenerateGetURL(baseUrl, actionApi, bizParams), nil) + } + request.Header.Set("Content-Type", "application/json") + request.Header.Set("Authorization", "APPCODE "+a.appCode) + return request + } + + // 数据解析 + dataMarshal := func(response *http.Response, bodyStr string, jsonResult1 map[string]interface{}) (errLevel string, err error) { + if jsonResult1 == nil { + return platformapi.ErrLevelRecoverableErr, fmt.Errorf("mapData is nil") + } + if err != nil { + return "", err + } + if utils.MustInterface2Int64(jsonResult1["code"]) != 200 { + errLevel = platformapi.ErrLevelGeneralFail + err = utils.NewErrorCode(jsonResult1["msg"].(string), utils.Int64ToStr(utils.MustInterface2Int64(jsonResult1["code"]))) + } + retVal = jsonResult1 + return errLevel, err + } + + err = platformapi.AccessPlatformAPIWithRetry(a.client, sendUrl, a.config, dataMarshal) + return retVal, err +} diff --git a/platformapi/ali_logistics_query/logistics_model.go b/platformapi/ali_logistics_query/logistics_model.go new file mode 100644 index 00000000..d2fd4695 --- /dev/null +++ b/platformapi/ali_logistics_query/logistics_model.go @@ -0,0 +1,79 @@ +package ali_logistics_query + +// LogisticsStatusReceive 物流状态标签说明 +// https://market.aliyun.com/products/57126001/cmapi00054243.html?spm=5176.2020520132.101.2.3c557218Al5EBA#sku=yuncode4824300001 +const ( + // 揽件 + LogisticsStatusRECEVIE = "RECEVIE" // 接单中 + LogisticsStatusWAIT_ACCEPT = "WAIT_ACCEPT" // 待揽件 + LogisticsStatusACCEPT = "ACCEPT" // 已揽收 + + // 运输中 + LogisticsStatusTRANSPORT = "TRANSPORT" // 运输中 + LogisticsStatusSEND_ON = "SEND_ON" // 转单或修改地址 + LogisticsStatusARRIVE_CITY = "ARRIVE_CITY" // 到达目的城市 + + // 派件 + LogisticsStatusDELIVERING = "DELIVERING" // 派件中 + LogisticsStatusSTA_INBOUND = "STA_INBOUND" // 已放入快递柜或者驿站 + + // 签收 + LogisticsStatusAGENT_SIGN = "AGENT_SIGN" // 已代签收 + LogisticsStatusSIGN = "SIGN" // 已签收 + LogisticsStatusSTA_SIGN = "STA_SIGN" // 从快递柜或驿站取出 + LogisticsStatusRETURN_SIGN = "RETURN_SIGN" // 退回签收 + + // 包裹异常 + LogisticsStatusFAILED = "FAILED" // 包裹异常 + LogisticsStatusREFUSE_SIGN = "REFUSE_SIGN" // 拒收 + LogisticsStatusDELIVER_ABNORMAL = "DELIVER_ABNORMAL" // 派件异常 + LogisticsStatusRETENTION = "RETENTION" // 滞留件 + LogisticsStatusISSUE = "ISSUE" // 问题件 + LogisticsStatusRETURN = "RETURN" // 退回件 + LogisticsStatusDAMAGE = "DAMAGE" // 破损 + LogisticsStatusCANCEL_ORDER = "CANCEL_ORDER" // 揽件取消 +) + +// BaseModel 基础物流返回值 +type BaseModel struct { + Msg string `json:"msg"` // 请求返回通知 + Success bool `json:"success"` // 是否成功 + Code int `json:"code"` // 返回code +} + +// OrderDetail 物流订单详情 +type OrderDetail struct { + OrderNo string `json:"orderNo"` // 订单id + Info []struct { // 物流详情 + TheLastTime string `json:"theLastTime"` // 运单号物流流转当前最新变更时间 + CpCode string `json:"cpCode"` // 快递公司代号 + MailNo string `json:"mailNo"` // 快递单号 + CpMobile string `json:"cpMobile"` // 快递公司电话 + TheLastMessage string `json:"theLastMessage"` // 运单号物流流转当前最新描述 + LogisticsCompanyName string `json:"logisticsCompanyName"` // 快递公司名称 + CpUrl string `json:"cpUrl"` // 快递公司官网 + Courier string `json:"courier"` // 配送人名称 + LogisticsStatusDesc string `json:"logisticsStatusDesc"` // 运单号当前物流状态文字描述 + LogisticsTraceDetailList []struct { + AreaCode string `json:"areaCode,omitempty"` // 当前节点所在地址行政编码 + AreaName string `json:"areaName,omitempty"` // 当前节点所在地区,省,市,区或省,市 + SubLogisticsStatus string `json:"subLogisticsStatus"` // 物流流转子状态,详见:物流状态编码对照表 + Time int64 `json:"time"` // 时间,单位毫秒 + LogisticsStatus string `json:"logisticsStatus"` // 物流流转状态,详见:物流状态编码对照表 + Desc string `json:"desc"` // 物流流转描述 + Courier string `json:"courier,omitempty"` // 配送人名称 + CourierPhone string `json:"courierPhone,omitempty"` // 配送人电话 + } `json:"logisticsTraceDetailList"` + CourierPhone string `json:"courierPhone"` // 配送人电话 + LogisticsStatus string `json:"logisticsStatus"` // 物流流转状态 + } `json:"info"` +} + +/************************************************************************************/ + +type GetOrderDetail struct { + Msg string `json:"msg"` // 请求返回通知 + Success bool `json:"success"` // 是否成功 + Code int `json:"code"` // 返回code + Data *OrderDetail `json:"data"` +} diff --git a/platformapi/ali_logistics_query/logistics_query.go b/platformapi/ali_logistics_query/logistics_query.go new file mode 100644 index 00000000..5f4d6b54 --- /dev/null +++ b/platformapi/ali_logistics_query/logistics_query.go @@ -0,0 +1,32 @@ +package ali_logistics_query + +import ( + "errors" + "git.rosy.net.cn/baseapi/utils" + "net/http" +) + +func (a *API) GetLogisticsInfo(logisticsNumber string) (*OrderDetail, error) { + if len(logisticsNumber) == 0 { + return nil, errors.New("参数不能为空") + } + param := make(map[string]interface{}, 1) + param["number"] = logisticsNumber + + result, err := a.AccessAPI(BastUrl, GetOrderDetailApi, http.MethodGet, param) + if err != nil { + return nil, err + } + + var detail *GetOrderDetail + if err := utils.Map2StructByJson(result, &detail, false); err != nil { + return nil, err + } + + if detail.Code != 200 || !detail.Success { + return nil, errors.New(detail.Msg) + } + + return detail.Data, nil + +} diff --git a/platformapi/ali_logistics_query/logistics_test.go b/platformapi/ali_logistics_query/logistics_test.go new file mode 100644 index 00000000..db2d9d9c --- /dev/null +++ b/platformapi/ali_logistics_query/logistics_test.go @@ -0,0 +1,20 @@ +package ali_logistics_query + +import ( + "git.rosy.net.cn/baseapi/utils" + "git.rosy.net.cn/jx-callback/globals" + "testing" +) + +var ( + appKey = "23537670" + appSecret = "4a77a431c0bf01f6dfa63d1a1ec9ecd2" + appCode = "00a6eefba0204d3fa310ac0ee7a6fc54" +) + +func Test(t *testing.T) { + api := New(appKey, appSecret, appCode) + result, err := api.GetLogisticsInfo("JD0088184529553") + globals.SugarLogger.Debugf("result======== %s", utils.Format4Output(result, false)) + globals.SugarLogger.Debugf("err======== %s", utils.Format4Output(err, false)) +} diff --git a/platformapi/tiktok_shop/sdk-golang/api/superm_product_batchApplyStoreProductPrice/request/superm_product_batchApplyStoreProductPrice_request.go b/platformapi/tiktok_shop/sdk-golang/api/superm_product_batchApplyStoreProductPrice/request/superm_product_batchApplyStoreProductPrice_request.go new file mode 100644 index 00000000..e6eb3b46 --- /dev/null +++ b/platformapi/tiktok_shop/sdk-golang/api/superm_product_batchApplyStoreProductPrice/request/superm_product_batchApplyStoreProductPrice_request.go @@ -0,0 +1,54 @@ +package superm_product_batchApplyStoreProductPrice_request + +import ( + "encoding/json" + superm_product_batchApplyStoreProductPrice_response "git.rosy.net.cn/baseapi/platformapi/tiktok_shop/sdk-golang/api/superm_product_batchApplyStoreProductPrice/response" + doudian_sdk "git.rosy.net.cn/baseapi/platformapi/tiktok_shop/sdk-golang/core" +) + +type SupermProductBatchApplyStoreProductPriceRequest struct { + doudian_sdk.BaseDoudianOpApiRequest + Param *SupermProductBatchApplyStoreProductPriceParam +} + +func (c *SupermProductBatchApplyStoreProductPriceRequest) GetUrlPath() string { + return "/superm/product/batchApplyStoreProductPrice" +} + +func New() *SupermProductBatchApplyStoreProductPriceRequest { + request := &SupermProductBatchApplyStoreProductPriceRequest{ + Param: &SupermProductBatchApplyStoreProductPriceParam{}, + } + request.SetConfig(doudian_sdk.GlobalConfig) + request.SetClient(doudian_sdk.DefaultDoudianOpApiClient) + return request + +} + +func (c *SupermProductBatchApplyStoreProductPriceRequest) Execute(accessToken *doudian_sdk.AccessToken) (*superm_product_batchApplyStoreProductPrice_response.SupermProductBatchApplyStoreProductPriceResponse, error) { + responseJson, err := c.GetClient().Request(c, accessToken) + if err != nil { + return nil, err + } + response := &superm_product_batchApplyStoreProductPrice_response.SupermProductBatchApplyStoreProductPriceResponse{} + _ = json.Unmarshal([]byte(responseJson), response) + return response, nil + +} + +func (c *SupermProductBatchApplyStoreProductPriceRequest) GetParamObject() interface{} { + return c.Param +} + +func (c *SupermProductBatchApplyStoreProductPriceRequest) GetParams() *SupermProductBatchApplyStoreProductPriceParam { + return c.Param +} + +type TaskParams struct { + // 店铺主商品ID + MainProductId int64 `json:"main_product_id"` +} +type SupermProductBatchApplyStoreProductPriceParam struct { + // 异步任务参数 + TaskParams *TaskParams `json:"task_params"` +} diff --git a/platformapi/tiktok_shop/sdk-golang/api/superm_product_batchApplyStoreProductPrice/response/superm_product_batchApplyStoreProductPrice_response.go b/platformapi/tiktok_shop/sdk-golang/api/superm_product_batchApplyStoreProductPrice/response/superm_product_batchApplyStoreProductPrice_response.go new file mode 100644 index 00000000..c58c6504 --- /dev/null +++ b/platformapi/tiktok_shop/sdk-golang/api/superm_product_batchApplyStoreProductPrice/response/superm_product_batchApplyStoreProductPrice_response.go @@ -0,0 +1,14 @@ +package superm_product_batchApplyStoreProductPrice_response + +import ( + doudian_sdk "git.rosy.net.cn/baseapi/platformapi/tiktok_shop/sdk-golang/core" +) + +type SupermProductBatchApplyStoreProductPriceResponse struct { + doudian_sdk.BaseDoudianOpApiResponse + Data *SupermProductBatchApplyStoreProductPriceData `json:"data"` +} +type SupermProductBatchApplyStoreProductPriceData struct { + // 异步任务根任务ID + RootTaskId int64 `json:"root_task_id"` +} diff --git a/platformapi/tiktok_shop/sdk-golang/api/superm_product_batchRedistributeStoreProduct/request/superm_product_batchRedistributeStoreProduct_request.go b/platformapi/tiktok_shop/sdk-golang/api/superm_product_batchRedistributeStoreProduct/request/superm_product_batchRedistributeStoreProduct_request.go new file mode 100644 index 00000000..b77ba94e --- /dev/null +++ b/platformapi/tiktok_shop/sdk-golang/api/superm_product_batchRedistributeStoreProduct/request/superm_product_batchRedistributeStoreProduct_request.go @@ -0,0 +1,58 @@ +package superm_product_batchRedistributeStoreProduct_request + +import ( + "encoding/json" + superm_product_batchRedistributeStoreProduct_response "git.rosy.net.cn/baseapi/platformapi/tiktok_shop/sdk-golang/api/superm_product_batchRedistributeStoreProduct/response" + doudian_sdk "git.rosy.net.cn/baseapi/platformapi/tiktok_shop/sdk-golang/core" +) + +type SupermProductBatchRedistributeStoreProductRequest struct { + doudian_sdk.BaseDoudianOpApiRequest + Param *SupermProductBatchRedistributeStoreProductParam +} + +func (c *SupermProductBatchRedistributeStoreProductRequest) GetUrlPath() string { + return "/superm/product/batchRedistributeStoreProduct" +} + +func New() *SupermProductBatchRedistributeStoreProductRequest { + request := &SupermProductBatchRedistributeStoreProductRequest{ + Param: &SupermProductBatchRedistributeStoreProductParam{}, + } + request.SetConfig(doudian_sdk.GlobalConfig) + request.SetClient(doudian_sdk.DefaultDoudianOpApiClient) + return request + +} + +func (c *SupermProductBatchRedistributeStoreProductRequest) Execute(accessToken *doudian_sdk.AccessToken) (*superm_product_batchRedistributeStoreProduct_response.SupermProductBatchRedistributeStoreProductResponse, error) { + responseJson, err := c.GetClient().Request(c, accessToken) + if err != nil { + return nil, err + } + response := &superm_product_batchRedistributeStoreProduct_response.SupermProductBatchRedistributeStoreProductResponse{} + _ = json.Unmarshal([]byte(responseJson), response) + return response, nil + +} + +func (c *SupermProductBatchRedistributeStoreProductRequest) GetParamObject() interface{} { + return c.Param +} + +func (c *SupermProductBatchRedistributeStoreProductRequest) GetParams() *SupermProductBatchRedistributeStoreProductParam { + return c.Param +} + +type TaskParams struct { + // 店铺主商品ID + MainProductId int64 `json:"main_product_id"` + // 需要铺品的门店ID列表 + AddStoreIds []int64 `json:"add_store_ids"` + // 需要删除子品的门店ID列表 + DelStoreIds []int64 `json:"del_store_ids"` +} +type SupermProductBatchRedistributeStoreProductParam struct { + // 重新分配任务参数 + TaskParams *TaskParams `json:"task_params"` +} diff --git a/platformapi/tiktok_shop/sdk-golang/api/superm_product_batchRedistributeStoreProduct/response/superm_product_batchRedistributeStoreProduct_response.go b/platformapi/tiktok_shop/sdk-golang/api/superm_product_batchRedistributeStoreProduct/response/superm_product_batchRedistributeStoreProduct_response.go new file mode 100644 index 00000000..90014954 --- /dev/null +++ b/platformapi/tiktok_shop/sdk-golang/api/superm_product_batchRedistributeStoreProduct/response/superm_product_batchRedistributeStoreProduct_response.go @@ -0,0 +1,14 @@ +package superm_product_batchRedistributeStoreProduct_response + +import ( + doudian_sdk "git.rosy.net.cn/baseapi/platformapi/tiktok_shop/sdk-golang/core" +) + +type SupermProductBatchRedistributeStoreProductResponse struct { + doudian_sdk.BaseDoudianOpApiResponse + Data *SupermProductBatchRedistributeStoreProductData `json:"data"` +} +type SupermProductBatchRedistributeStoreProductData struct { + // 异步任务根任务ID + RootTaskId int64 `json:"root_task_id"` +} diff --git a/platformapi/tiktok_shop/sdk-golang/api/superm_product_createSubProduct/request/superm_product_createSubProduct_request.go b/platformapi/tiktok_shop/sdk-golang/api/superm_product_createSubProduct/request/superm_product_createSubProduct_request.go new file mode 100644 index 00000000..112d1305 --- /dev/null +++ b/platformapi/tiktok_shop/sdk-golang/api/superm_product_createSubProduct/request/superm_product_createSubProduct_request.go @@ -0,0 +1,62 @@ +package superm_product_createSubProduct_request + +import ( + "encoding/json" + superm_product_createSubProduct_response "git.rosy.net.cn/baseapi/platformapi/tiktok_shop/sdk-golang/api/superm_product_createSubProduct/response" + doudian_sdk "git.rosy.net.cn/baseapi/platformapi/tiktok_shop/sdk-golang/core" +) + +type SupermProductCreateSubProductRequest struct { + doudian_sdk.BaseDoudianOpApiRequest + Param *SupermProductCreateSubProductParam +} + +func (c *SupermProductCreateSubProductRequest) GetUrlPath() string { + return "/superm/product/createSubProduct" +} + +func New() *SupermProductCreateSubProductRequest { + request := &SupermProductCreateSubProductRequest{ + Param: &SupermProductCreateSubProductParam{}, + } + request.SetConfig(doudian_sdk.GlobalConfig) + request.SetClient(doudian_sdk.DefaultDoudianOpApiClient) + return request + +} + +func (c *SupermProductCreateSubProductRequest) Execute(accessToken *doudian_sdk.AccessToken) (*superm_product_createSubProduct_response.SupermProductCreateSubProductResponse, error) { + responseJson, err := c.GetClient().Request(c, accessToken) + if err != nil { + return nil, err + } + response := &superm_product_createSubProduct_response.SupermProductCreateSubProductResponse{} + _ = json.Unmarshal([]byte(responseJson), response) + return response, nil + +} + +func (c *SupermProductCreateSubProductRequest) GetParamObject() interface{} { + return c.Param +} + +func (c *SupermProductCreateSubProductRequest) GetParams() *SupermProductCreateSubProductParam { + return c.Param +} + +type SkuInfoItem struct { + // 子商品规格值列表 + SellPropertyNames []string `json:"sell_property_names"` + // 子商品SKU价格 (单位:分) + Price int64 `json:"price"` + // 子商品SKU库存 + Stock int64 `json:"stock"` +} +type SupermProductCreateSubProductParam struct { + // 店铺主商品ID + MainProductId int64 `json:"main_product_id"` + // 门店ID + StoreId int64 `json:"store_id"` + // 子商品SKU的库存、价格信息 + SkuInfo []SkuInfoItem `json:"sku_info"` +} diff --git a/platformapi/tiktok_shop/sdk-golang/api/superm_product_createSubProduct/response/superm_product_createSubProduct_response.go b/platformapi/tiktok_shop/sdk-golang/api/superm_product_createSubProduct/response/superm_product_createSubProduct_response.go new file mode 100644 index 00000000..f4d94ee0 --- /dev/null +++ b/platformapi/tiktok_shop/sdk-golang/api/superm_product_createSubProduct/response/superm_product_createSubProduct_response.go @@ -0,0 +1,14 @@ +package superm_product_createSubProduct_response + +import ( + doudian_sdk "git.rosy.net.cn/baseapi/platformapi/tiktok_shop/sdk-golang/core" +) + +type SupermProductCreateSubProductResponse struct { + doudian_sdk.BaseDoudianOpApiResponse + Data *SupermProductCreateSubProductData `json:"data"` +} +type SupermProductCreateSubProductData struct { + // 门店子商品ID + SubProductId int64 `json:"sub_product_id"` +} diff --git a/platformapi/tiktok_shop/sdk-golang/api/superm_product_launchProduct/request/superm_product_launchProduct_request.go b/platformapi/tiktok_shop/sdk-golang/api/superm_product_launchProduct/request/superm_product_launchProduct_request.go new file mode 100644 index 00000000..d5cd04ea --- /dev/null +++ b/platformapi/tiktok_shop/sdk-golang/api/superm_product_launchProduct/request/superm_product_launchProduct_request.go @@ -0,0 +1,50 @@ +package superm_product_launchProduct_request + +import ( + "encoding/json" + superm_product_launchProduct_response "git.rosy.net.cn/baseapi/platformapi/tiktok_shop/sdk-golang/api/superm_product_launchProduct/response" + doudian_sdk "git.rosy.net.cn/baseapi/platformapi/tiktok_shop/sdk-golang/core" +) + +type SupermProductLaunchProductRequest struct { + doudian_sdk.BaseDoudianOpApiRequest + Param *SupermProductLaunchProductParam +} + +func (c *SupermProductLaunchProductRequest) GetUrlPath() string { + return "/superm/product/launchProduct" +} + +func New() *SupermProductLaunchProductRequest { + request := &SupermProductLaunchProductRequest{ + Param: &SupermProductLaunchProductParam{}, + } + request.SetConfig(doudian_sdk.GlobalConfig) + request.SetClient(doudian_sdk.DefaultDoudianOpApiClient) + return request + +} + +func (c *SupermProductLaunchProductRequest) Execute(accessToken *doudian_sdk.AccessToken) (*superm_product_launchProduct_response.SupermProductLaunchProductResponse, error) { + responseJson, err := c.GetClient().Request(c, accessToken) + if err != nil { + return nil, err + } + response := &superm_product_launchProduct_response.SupermProductLaunchProductResponse{} + _ = json.Unmarshal([]byte(responseJson), response) + return response, nil + +} + +func (c *SupermProductLaunchProductRequest) GetParamObject() interface{} { + return c.Param +} + +func (c *SupermProductLaunchProductRequest) GetParams() *SupermProductLaunchProductParam { + return c.Param +} + +type SupermProductLaunchProductParam struct { + // 商品ID,支持主品上架,支持子品上架; (主品需要审核通过后上架) + ProductId int64 `json:"product_id"` +} diff --git a/platformapi/tiktok_shop/sdk-golang/api/superm_product_launchProduct/response/superm_product_launchProduct_response.go b/platformapi/tiktok_shop/sdk-golang/api/superm_product_launchProduct/response/superm_product_launchProduct_response.go new file mode 100644 index 00000000..2246b61c --- /dev/null +++ b/platformapi/tiktok_shop/sdk-golang/api/superm_product_launchProduct/response/superm_product_launchProduct_response.go @@ -0,0 +1,12 @@ +package superm_product_launchProduct_response + +import ( + doudian_sdk "git.rosy.net.cn/baseapi/platformapi/tiktok_shop/sdk-golang/core" +) + +type SupermProductLaunchProductResponse struct { + doudian_sdk.BaseDoudianOpApiResponse + Data *SupermProductLaunchProductData `json:"data"` +} +type SupermProductLaunchProductData struct { +} diff --git a/platformapi/tiktok_shop/tiktok_api/settl_bill_detail_test.go b/platformapi/tiktok_shop/tiktok_api/settl_bill_detail_test.go index 23c9a64a..d67f246a 100644 --- a/platformapi/tiktok_shop/tiktok_api/settl_bill_detail_test.go +++ b/platformapi/tiktok_shop/tiktok_api/settl_bill_detail_test.go @@ -1,6 +1,7 @@ package tiktok_api import ( + "fmt" order_getSettleBillDetailV3_request "git.rosy.net.cn/baseapi/platformapi/tiktok_shop/sdk-golang/api/order_getSettleBillDetailV3/request" "testing" ) @@ -11,3 +12,7 @@ func TestBillDetail(t *testing.T) { OrderId: "5006155889577954309", }) } + +func TestLen(t *testing.T) { + fmt.Println(len("【新鲜】带皮猪五花肉约500g/份")) +} diff --git a/platformapi/tiktok_shop/tiktok_api/sku.go b/platformapi/tiktok_shop/tiktok_api/sku.go index 7ede4c1e..922ea40a 100644 --- a/platformapi/tiktok_shop/tiktok_api/sku.go +++ b/platformapi/tiktok_shop/tiktok_api/sku.go @@ -27,7721 +27,14 @@ import ( sku_editPrice_request "git.rosy.net.cn/baseapi/platformapi/tiktok_shop/sdk-golang/api/sku_editPrice/request" sku_syncStock_request "git.rosy.net.cn/baseapi/platformapi/tiktok_shop/sdk-golang/api/sku_syncStock/request" sku_syncStockBatch_request "git.rosy.net.cn/baseapi/platformapi/tiktok_shop/sdk-golang/api/sku_syncStockBatch/request" + superm_product_batchApplyStoreProductPrice_request "git.rosy.net.cn/baseapi/platformapi/tiktok_shop/sdk-golang/api/superm_product_batchApplyStoreProductPrice/request" + superm_product_batchRedistributeStoreProduct_request "git.rosy.net.cn/baseapi/platformapi/tiktok_shop/sdk-golang/api/superm_product_batchRedistributeStoreProduct/request" + superm_product_createSubProduct_request "git.rosy.net.cn/baseapi/platformapi/tiktok_shop/sdk-golang/api/superm_product_createSubProduct/request" + superm_product_launchProduct_request "git.rosy.net.cn/baseapi/platformapi/tiktok_shop/sdk-golang/api/superm_product_launchProduct/request" "git.rosy.net.cn/baseapi/utils" "git.rosy.net.cn/jx-callback/globals" ) -// CategoryIsSupplyDayReturnRule2w 记录分类id是否支持七天可售 -var CategoryIsSupplyDayReturnRule2w = map[int64]bool{ - 20000: true, - 20001: true, - 20003: true, - 20004: true, - 20005: true, - 20006: true, - 20007: true, - 20008: true, - 20009: true, - 20010: true, - 20011: true, - 20013: true, - 20014: true, - 20015: true, - 20017: true, - 20018: true, - 20019: true, - 20020: true, - 20024: true, - 20025: true, - 20026: true, - 20027: true, - 20028: true, - 20029: true, - 20030: true, - 20032: true, - 20033: true, - 20035: true, - 20036: true, - 20038: true, - 20040: true, - 20041: true, - 20044: true, - 20046: true, - 20047: true, - 20048: true, - 20049: true, - 20050: true, - 20051: true, - 20052: true, - 20053: true, - 20054: true, - 20055: true, - 20056: true, - 20059: true, - 20061: true, - 20062: true, - 20065: true, - 20066: true, - 20067: true, - 20068: true, - 20069: true, - 20070: true, - 20071: true, - 20073: true, - 20074: true, - 20075: true, - 20076: true, - 20080: true, - 20081: true, - 20082: true, - 20083: true, - 20085: true, - 20087: true, - 20093: true, - 20095: true, - 20098: true, - 20099: true, - 20100: true, - 20101: true, - 20102: true, - 20104: true, - 20107: true, - 20108: true, - 20111: true, - 20115: true, - 20116: true, - 20121: true, - 20122: true, - 20126: true, - 20127: true, - 20131: true, - 20133: true, - 20134: true, - 20137: true, - 20140: true, - 20141: true, - 20142: true, - 20145: true, - 20146: true, - 20148: true, - 20150: true, - 20151: true, - 20152: true, - 20156: true, - 20158: true, - 20159: true, - 20160: true, - 20161: true, - 20162: true, - 20163: true, - 20164: true, - 20165: true, - 20166: true, - 20167: true, - 20169: true, - 20170: true, - 20171: true, - 20172: true, - 20173: true, - 20175: true, - 20177: true, - 20178: true, - 20179: true, - 20180: true, - 20181: true, - 20182: true, - 20183: true, - 20184: true, - 20185: true, - 20186: true, - 20187: true, - 20188: true, - 20189: true, - 20190: true, - 20191: true, - 20192: true, - 20193: true, - 20194: true, - 20196: true, - 20197: true, - 20198: true, - 20199: true, - 20200: true, - 20201: true, - 20202: true, - 20203: true, - 20204: true, - 20205: true, - 20206: true, - 20207: true, - 20210: true, - 20211: true, - 20212: true, - 20215: true, - 20216: true, - 20217: true, - 20218: true, - 20219: true, - 20220: true, - 20221: true, - 20222: true, - 20223: true, - 20224: true, - 20225: true, - 20226: true, - 20227: false, - 20228: true, - 20229: true, - 20230: true, - 20231: true, - 20232: true, - 20233: true, - 20234: true, - 20235: true, - 20236: true, - 20237: true, - 20240: true, - 20241: true, - 20242: true, - 20243: true, - 20244: true, - 20245: true, - 20246: true, - 20247: true, - 20248: true, - 20249: true, - 20250: true, - 20252: true, - 20253: true, - 20254: true, - 20255: true, - 20256: true, - 20257: true, - 20258: true, - 20265: true, - 20266: true, - 20267: true, - 20268: true, - 20269: true, - 20271: true, - 20272: true, - 20273: true, - 20274: true, - 20275: true, - 20276: true, - 20277: true, - 20278: true, - 20279: true, - 20280: true, - 20281: true, - 20282: true, - 20283: true, - 20284: true, - 20285: true, - 20286: true, - 20287: true, - 20288: true, - 20289: true, - 20290: true, - 20291: true, - 20292: true, - 20294: true, - 20295: true, - 20309: true, - 20310: true, - 20312: true, - 20313: true, - 20314: true, - 20318: true, - 20319: true, - 20328: true, - 20329: true, - 20331: true, - 20332: true, - 20333: true, - 20337: true, - 20349: true, - 20350: true, - 20351: true, - 20354: true, - 20355: true, - 20356: true, - 20363: true, - 20364: true, - 20366: true, - 20367: true, - 20368: true, - 20369: true, - 20370: true, - 20371: true, - 20372: true, - 20373: true, - 20374: true, - 20375: true, - 20376: true, - 20377: true, - 20378: true, - 20379: true, - 20380: true, - 20381: true, - 20382: true, - 20383: true, - 20385: true, - 20386: true, - 20387: true, - 20388: true, - 20389: true, - 20391: true, - 20401: true, - 20408: true, - 20409: true, - 20414: true, - 20415: true, - 20416: true, - 20417: true, - 20418: true, - 20433: true, - 20434: true, - 20435: true, - 20436: true, - 20440: true, - 20443: true, - 20445: true, - 20446: true, - 20447: true, - 20450: true, - 20454: true, - 20455: true, - 20456: true, - 20457: true, - 20458: true, - 20459: true, - 20460: true, - 20461: true, - 20462: true, - 20463: true, - 20464: true, - 20466: true, - 20467: true, - 20468: true, - 20469: true, - 20470: true, - 20471: true, - 20474: true, - 20476: true, - 20477: true, - 20478: true, - 20479: true, - 20480: true, - 20481: true, - 20482: true, - 20483: true, - 20484: true, - 20485: true, - 20486: true, - 20487: true, - 20488: true, - 20489: true, - 20490: true, - 20491: true, - 20492: true, - 20493: true, - 20494: true, - 20495: true, - 20496: true, - 20497: true, - 20498: true, - 20499: true, - 20500: true, - 20501: true, - 20502: true, - 20503: true, - 20504: true, - 20505: true, - 20506: true, - 20507: true, - 20508: true, - 20509: true, - 20510: true, - 20511: true, - 20512: true, - 20513: true, - 20514: true, - 20515: true, - 20516: true, - 20517: true, - 20518: true, - 20519: true, - 20520: true, - 20521: true, - 20522: true, - 20523: true, - 20524: true, - 20525: true, - 20526: true, - 20527: true, - 20528: true, - 20529: true, - 20530: true, - 20531: true, - 20532: true, - 20533: true, - 20534: true, - 20535: true, - 20536: true, - 20537: true, - 20538: true, - 20540: true, - 20541: true, - 20542: true, - 20543: true, - 20544: true, - 20545: true, - 20546: true, - 20547: true, - 20548: true, - 20549: true, - 20550: true, - 20551: true, - 20552: true, - 20553: true, - 20554: true, - 20555: true, - 20559: true, - 20560: true, - 20562: true, - 20563: true, - 20564: true, - 20565: true, - 20566: true, - 20567: true, - 20568: true, - 20570: true, - 20571: true, - 20572: true, - 20574: true, - 20575: true, - 20576: true, - 20577: true, - 20578: true, - 20579: true, - 20580: true, - 20581: true, - 20592: true, - 20593: true, - 20594: true, - 20595: true, - 20596: true, - 20597: true, - 20598: true, - 20599: true, - 20600: true, - 20601: true, - 20602: true, - 20603: true, - 20604: true, - 20606: true, - 20607: true, - 20608: true, - 20609: true, - 20610: true, - 20611: true, - 20612: true, - 20613: true, - 20614: true, - 20616: true, - 20617: true, - 20618: true, - 20619: true, - 20620: true, - 20621: true, - 20622: true, - 20623: true, - 20624: true, - 20625: true, - 20626: true, - 20627: true, - 20628: true, - 20629: true, - 20630: true, - 20631: true, - 20632: true, - 20633: true, - 20634: true, - 20635: true, - 20636: true, - 20637: true, - 20638: true, - 20639: true, - 20640: true, - 20641: true, - 20646: true, - 20647: true, - 20648: true, - 20649: true, - 20650: true, - 20651: true, - 20652: true, - 20653: true, - 20656: true, - 20657: true, - 20658: true, - 20659: true, - 20660: true, - 20661: true, - 20662: true, - 20663: true, - 20664: true, - 20665: true, - 20666: true, - 20667: true, - 20669: true, - 20670: true, - 20673: true, - 20675: true, - 20676: true, - 20677: true, - 20678: true, - 20679: true, - 20680: true, - 20681: true, - 20684: true, - 20685: true, - 20686: true, - 20687: true, - 20688: true, - 20689: true, - 20690: true, - 20691: true, - 20692: true, - 20693: true, - 20695: true, - 20696: true, - 20697: true, - 20698: true, - 20699: true, - 20700: true, - 20702: true, - 20703: true, - 20704: true, - 20705: true, - 20706: true, - 20707: true, - 20709: true, - 20710: true, - 20711: true, - 20716: true, - 20717: true, - 20718: true, - 20731: true, - 20732: true, - 20733: true, - 20734: true, - 20735: true, - 20736: true, - 20737: true, - 20738: true, - 20739: true, - 20740: true, - 20741: true, - 20742: true, - 20743: true, - 20746: true, - 20747: true, - 20748: true, - 20749: true, - 20750: true, - 20751: true, - 20752: true, - 20753: true, - 20754: true, - 20755: true, - 20756: true, - 20757: true, - 20758: true, - 20759: true, - 20760: true, - 20761: true, - 20762: true, - 20763: true, - 20766: true, - 20783: true, - 20784: true, - 20785: true, - 20786: true, - 20787: true, - 20788: true, - 20789: true, - 20790: true, - 20798: true, - 20799: true, - 20801: true, - 20815: true, - 20823: true, - 20824: true, - 20825: true, - 20826: true, - 20827: true, - 20828: true, - 20830: true, - 20831: true, - 20832: true, - 20833: true, - 20834: true, - 20835: true, - 20836: true, - 20837: true, - 20838: true, - 20839: true, - 20840: true, - 20841: true, - 20842: true, - 20843: true, - 20847: true, - 20848: true, - 20849: true, - 20850: true, - 20851: true, - 20852: true, - 20853: true, - 20854: true, - 20855: true, - 20856: true, - 20860: true, - 20861: true, - 20862: true, - 20863: true, - 20864: true, - 20865: true, - 20866: true, - 20867: true, - 20868: true, - 20869: true, - 20870: true, - 20871: true, - 20873: true, - 20874: true, - 20875: true, - 20876: true, - 20877: true, - 20878: true, - 20879: true, - 20880: true, - 20881: true, - 20882: true, - 20883: true, - 20884: true, - 20885: true, - 20886: true, - 20887: true, - 20888: true, - 20890: true, - 20891: true, - 20892: true, - 20893: true, - 20894: true, - 20897: true, - 20898: true, - 20899: true, - 20903: true, - 20904: true, - 20905: true, - 20906: true, - 20907: true, - 20909: true, - 20911: true, - 20913: true, - 20914: true, - 20916: true, - 20917: true, - 20918: true, - 20919: true, - 20920: true, - 20921: true, - 20922: true, - 20923: true, - 20924: true, - 20925: true, - 20935: false, - 20936: true, - 20937: true, - 20938: true, - 20939: true, - 20940: true, - 20941: true, - 20942: true, - 20944: true, - 20946: true, - 20952: true, - 20953: true, - 20954: true, - 20955: true, - 20956: true, - 20957: true, - 20958: true, - 20959: true, - 20960: true, - 20961: true, - 20962: true, - 20963: true, - 20964: true, - 20965: true, - 20966: true, - 20968: true, - 20969: true, - 20973: true, - 20974: true, - 20976: true, - 20977: true, - 20978: true, - 20979: true, - 20980: true, - 20981: true, - 20982: true, - 20983: true, - 20984: true, - 20985: true, - 20986: true, - 20987: true, - 20988: true, - 20989: true, - 20990: true, - 20995: true, - 20996: true, - 20998: true, - 20999: true, - 21000: true, - 21001: true, - 21002: true, - 21003: true, - 21004: true, - 21006: true, - 21011: true, - 21013: true, - 21014: true, - 21015: true, - 21017: true, - 21019: true, - 21024: true, - 21025: true, - 21028: true, - 21029: true, - 21033: true, - 21034: true, - 21035: true, - 21036: true, - 21037: true, - 21038: true, - 21040: true, - 21041: true, - 21043: true, - 21044: true, - 21045: true, - 21048: true, - 21049: true, - 21051: true, - 21053: true, - 21054: true, - 21056: true, - 21057: true, - 21060: true, - 21061: true, - 21062: true, - 21063: true, - 21066: true, - 21068: true, - 21069: true, - 21073: true, - 21075: true, - 21076: true, - 21082: true, - 21083: true, - 21084: true, - 21085: true, - 21086: true, - 21087: true, - 21093: true, - 21094: true, - 21095: true, - 21096: true, - 21097: true, - 21098: true, - 21099: true, - 21100: true, - 21101: true, - 21103: true, - 21104: true, - 21105: true, - 21106: true, - 21107: true, - 21108: true, - 21109: true, - 21110: true, - 21111: true, - 21112: true, - 21113: true, - 21114: true, - 21115: true, - 21116: true, - 21117: true, - 21118: true, - 21119: true, - 21120: true, - 21121: true, - 21122: true, - 21123: true, - 21125: true, - 21127: true, - 21128: true, - 21130: true, - 21131: true, - 21132: true, - 21133: true, - 21134: true, - 21136: true, - 21137: true, - 21138: true, - 21140: true, - 21142: true, - 21144: true, - 21145: true, - 21146: true, - 21147: true, - 21148: true, - 21149: true, - 21150: true, - 21151: true, - 21152: true, - 21156: true, - 21157: true, - 21158: true, - 21159: true, - 21160: true, - 21163: true, - 21165: true, - 21166: true, - 21168: true, - 21169: true, - 21170: true, - 21171: true, - 21172: true, - 21173: true, - 21174: true, - 21178: true, - 21179: true, - 21180: true, - 21181: true, - 21182: true, - 21184: true, - 21185: true, - 21186: true, - 21187: true, - 21188: true, - 21189: true, - 21191: true, - 21192: true, - 21193: true, - 21194: true, - 21195: true, - 21196: true, - 21197: true, - 21198: true, - 21226: true, - 21227: true, - 21228: true, - 21229: true, - 21230: true, - 21231: true, - 21232: true, - 21240: true, - 21241: true, - 21242: true, - 21243: true, - 21244: true, - 21245: true, - 21246: true, - 21247: true, - 21248: true, - 21249: true, - 21250: true, - 21251: true, - 21252: true, - 21253: true, - 21254: true, - 21255: true, - 21256: true, - 21257: true, - 21258: true, - 21259: true, - 21260: true, - 21261: true, - 21262: true, - 21263: true, - 21265: true, - 21269: true, - 21271: true, - 21273: true, - 21274: true, - 21275: true, - 21277: true, - 21279: true, - 21290: true, - 21291: true, - 21292: true, - 21293: true, - 21294: true, - 21295: true, - 21296: true, - 21299: true, - 21302: true, - 21303: true, - 21304: true, - 21306: true, - 21307: true, - 21308: true, - 21309: true, - 21310: true, - 21311: true, - 21312: true, - 21313: true, - 21314: true, - 21315: true, - 21316: true, - 21317: true, - 21318: true, - 21319: true, - 21320: true, - 21321: true, - 21322: true, - 21324: true, - 21325: true, - 21326: true, - 21328: true, - 21330: true, - 21331: true, - 21333: true, - 21334: true, - 21335: true, - 21336: true, - 21337: true, - 21338: true, - 21340: true, - 21341: true, - 21343: true, - 21344: true, - 21345: true, - 21346: true, - 21347: true, - 21349: true, - 21350: true, - 21351: true, - 21352: true, - 21353: true, - 21354: true, - 21355: true, - 21356: true, - 21357: true, - 21358: true, - 21360: true, - 21362: true, - 21364: true, - 21365: true, - 21366: true, - 21367: true, - 21368: true, - 21369: true, - 21370: true, - 21371: true, - 21372: true, - 21373: true, - 21375: true, - 21376: true, - 21377: true, - 21378: true, - 21379: true, - 21380: true, - 21381: true, - 21382: true, - 21383: true, - 21384: true, - 21385: true, - 21386: true, - 21389: true, - 21390: true, - 21391: true, - 21392: true, - 21393: true, - 21394: true, - 21395: true, - 21396: true, - 21397: true, - 21399: true, - 21400: true, - 21401: true, - 21402: true, - 21403: true, - 21405: true, - 21406: true, - 21407: true, - 21408: true, - 21409: true, - 21410: true, - 21411: true, - 21412: true, - 21413: true, - 21414: true, - 21415: true, - 21423: true, - 21424: true, - 21425: true, - 21426: true, - 21427: true, - 21428: true, - 21429: true, - 21430: true, - 21431: true, - 21432: true, - 21433: true, - 21434: true, - 21435: true, - 21436: true, - 21437: true, - 21438: true, - 21444: true, - 21445: true, - 21447: true, - 21450: true, - 21451: true, - 21452: true, - 21453: true, - 21454: true, - 21456: true, - 21457: true, - 21458: true, - 21459: true, - 21463: true, - 21464: true, - 21466: true, - 21467: true, - 21468: true, - 21469: true, - 21470: true, - 21471: true, - 21474: true, - 21484: true, - 21485: true, - 21487: true, - 21503: true, - 21504: true, - 21506: true, - 21507: true, - 21508: true, - 21509: true, - 21510: true, - 21511: true, - 21512: true, - 21513: true, - 21514: true, - 21515: true, - 21516: true, - 21522: true, - 21529: true, - 21531: true, - 21532: true, - 21533: true, - 21535: true, - 21536: true, - 21537: true, - 21538: true, - 21539: true, - 21540: true, - 21541: true, - 21542: true, - 21543: true, - 21544: true, - 21547: true, - 21551: true, - 21552: true, - 21553: true, - 21555: true, - 21556: true, - 21557: true, - 21561: true, - 21563: true, - 21570: true, - 21571: true, - 21572: true, - 21573: true, - 21575: true, - 21584: true, - 21585: true, - 21586: true, - 21587: true, - 21588: true, - 21589: true, - 21590: true, - 21591: true, - 21592: true, - 21593: true, - 21594: true, - 21595: true, - 21596: true, - 21597: true, - 21598: true, - 21599: true, - 21600: true, - 21601: true, - 21602: true, - 21603: true, - 21604: true, - 21605: true, - 21606: true, - 21607: true, - 21608: true, - 21609: true, - 21610: true, - 21612: true, - 21614: true, - 21616: true, - 21617: true, - 21618: true, - 21621: true, - 21622: true, - 21623: true, - 21624: true, - 21625: true, - 21627: true, - 21628: true, - 21629: true, - 21630: true, - 21633: true, - 21634: true, - 21635: true, - 21641: true, - 21643: true, - 21645: true, - 21646: true, - 21647: true, - 21648: true, - 21649: true, - 21650: true, - 21651: true, - 21653: true, - 21659: true, - 21661: true, - 21663: true, - 21664: true, - 21665: true, - 21666: true, - 21667: true, - 21668: true, - 21669: true, - 21670: true, - 21672: true, - 21673: true, - 21674: true, - 21675: true, - 21676: true, - 21678: true, - 21679: true, - 21687: true, - 21688: true, - 21694: true, - 21696: true, - 21709: true, - 21713: true, - 21714: true, - 21715: true, - 21716: true, - 21717: true, - 21762: true, - 21763: true, - 21769: true, - 21772: true, - 21775: true, - 21776: true, - 21777: true, - 22096: true, - 22147: true, - 22151: true, - 22152: true, - 22153: true, - 22155: true, - 22156: true, - 22157: true, - 22158: true, - 22159: true, - 22161: true, - 22162: true, - 22163: true, - 22164: true, - 22165: true, - 22166: true, - 22167: true, - 22168: true, - 22169: true, - 22170: true, - 22174: true, - 22175: true, - 22176: true, - 22177: true, - 22178: true, - 22179: true, - 22180: true, - 22181: true, - 22182: true, - 22183: true, - 22184: true, - 22187: true, - 22188: true, - 22190: true, - 22191: true, - 22197: true, - 22198: true, - 22200: true, - 22201: true, - 22202: true, - 22203: true, - 22204: true, - 22205: true, - 22206: true, - 22208: true, - 22210: true, - 22211: true, - 22212: true, - 22213: true, - 22214: true, - 22216: true, - 22218: true, - 22219: true, - 22220: true, - 22221: true, - 22222: true, - 22223: true, - 22224: true, - 22225: true, - 22226: true, - 22227: true, - 22228: true, - 22229: true, - 22230: true, - 22231: true, - 22232: true, - 22233: true, - 22234: true, - 22235: true, - 22236: true, - 22237: true, - 22238: true, - 22239: true, - 22240: true, - 22242: true, - 22243: true, - 22244: true, - 22245: true, - 22246: true, - 22247: true, - 22248: true, - 22249: true, - 22250: true, - 22251: true, - 22252: true, - 22256: true, - 22258: true, - 22262: true, - 22263: true, - 22264: true, - 22265: true, - 22267: true, - 22268: true, - 22270: true, - 22271: true, - 22272: true, - 22274: true, - 22275: true, - 22276: true, - 22277: true, - 22278: true, - 22279: true, - 22280: true, - 22281: true, - 22282: true, - 22283: true, - 22284: true, - 22285: true, - 22286: true, - 22287: true, - 22288: true, - 22289: true, - 22290: true, - 22291: true, - 22292: true, - 22293: true, - 22294: true, - 22295: true, - 22296: true, - 22297: true, - 22298: true, - 22299: true, - 22300: true, - 22301: true, - 22302: true, - 22303: true, - 22304: true, - 22305: true, - 22306: true, - 22307: true, - 22308: true, - 22309: true, - 22310: true, - 22311: true, - 22312: true, - 22313: true, - 22314: true, - 22315: true, - 22316: true, - 22317: true, - 22318: true, - 22319: true, - 22320: true, - 22321: true, - 22322: true, - 22323: true, - 22324: true, - 22328: true, - 22329: true, - 22330: true, - 22331: true, - 22332: true, - 22333: true, - 22334: true, - 22335: true, - 22337: true, - 22338: true, - 22339: true, - 22340: true, - 22341: true, - 22342: true, - 22343: true, - 22344: true, - 22345: true, - 22347: true, - 22348: true, - 22349: true, - 22350: true, - 22351: true, - 22352: true, - 22355: true, - 22356: true, - 22357: true, - 22358: true, - 22359: true, - 22360: true, - 22361: true, - 22362: true, - 22366: true, - 22367: true, - 22369: true, - 22370: true, - 22371: true, - 22372: true, - 22373: true, - 22374: true, - 22375: true, - 22376: true, - 22377: true, - 22378: true, - 22379: true, - 22380: true, - 22381: true, - 22382: true, - 22383: true, - 22385: true, - 22386: true, - 22387: true, - 22388: true, - 22389: true, - 22390: true, - 22391: true, - 22392: true, - 22393: true, - 22400: true, - 22402: true, - 22403: true, - 22404: true, - 22405: true, - 22406: true, - 22407: true, - 22408: true, - 22409: true, - 22410: true, - 22411: true, - 22412: true, - 22413: true, - 22414: true, - 22416: true, - 22417: true, - 22419: true, - 22420: true, - 22425: true, - 22426: true, - 22427: true, - 22428: true, - 22429: true, - 22430: true, - 22431: true, - 22433: true, - 22434: true, - 22435: true, - 22436: true, - 22438: true, - 22439: true, - 22440: true, - 22441: true, - 22442: true, - 22443: true, - 22444: true, - 22445: true, - 22446: true, - 22447: true, - 22448: true, - 22449: true, - 22450: true, - 22451: true, - 22452: true, - 22453: true, - 22454: true, - 22455: true, - 22456: true, - 22457: true, - 22458: true, - 22459: true, - 22460: true, - 22461: true, - 22462: true, - 22463: true, - 22464: true, - 22465: true, - 22473: true, - 22474: true, - 22476: true, - 22477: true, - 22478: true, - 22479: true, - 22480: true, - 22481: true, - 22482: true, - 22483: true, - 22484: true, - 22485: true, - 22487: true, - 22488: true, - 22489: true, - 22493: true, - 22495: true, - 22496: true, - 22497: true, - 22499: true, - 22500: true, - 22501: true, - 22502: true, - 22503: true, - 22504: true, - 22505: true, - 22506: true, - 22507: true, - 22508: true, - 22509: true, - 22510: true, - 22512: true, - 22513: true, - 22514: true, - 22518: true, - 22519: true, - 22520: true, - 22521: true, - 22522: true, - 22523: true, - 22528: true, - 22530: true, - 22531: true, - 22532: true, - 22534: true, - 22535: true, - 22536: true, - 22537: true, - 22538: true, - 22539: true, - 22540: true, - 22541: true, - 22542: true, - 22543: true, - 22544: true, - 22545: true, - 22547: true, - 22548: true, - 22549: true, - 22550: true, - 22551: true, - 22552: true, - 22553: true, - 22554: true, - 22555: true, - 22556: true, - 22557: true, - 22558: true, - 22559: true, - 22560: true, - 22561: true, - 22562: true, - 22563: true, - 22564: true, - 22565: true, - 22566: true, - 22568: true, - 22571: true, - 22572: true, - 22573: true, - 22574: true, - 22576: true, - 22577: true, - 22578: true, - 22579: true, - 22580: true, - 22581: true, - 22582: true, - 22583: true, - 22584: true, - 22585: true, - 22586: true, - 22587: true, - 22588: true, - 22589: true, - 22590: true, - 22591: true, - 22592: true, - 22593: true, - 22594: true, - 22595: true, - 22596: true, - 22597: true, - 22598: true, - 22599: true, - 22600: true, - 22601: true, - 22602: true, - 22603: true, - 22604: true, - 22605: true, - 22606: true, - 22607: true, - 22608: true, - 22609: true, - 22610: true, - 22611: true, - 22612: true, - 22613: true, - 22614: true, - 22615: true, - 22616: true, - 22617: true, - 22618: true, - 22619: true, - 22620: true, - 22621: true, - 22622: true, - 22623: true, - 22624: true, - 22625: true, - 22626: true, - 22627: true, - 22628: true, - 22629: true, - 22630: true, - 22631: true, - 22632: true, - 22633: true, - 22634: true, - 22636: true, - 22637: true, - 22638: true, - 22639: true, - 22640: true, - 22641: true, - 22642: true, - 22643: true, - 22644: true, - 22645: true, - 22646: true, - 22647: true, - 22648: true, - 22649: true, - 22650: true, - 22651: true, - 22652: true, - 22653: true, - 22654: true, - 22655: true, - 22656: true, - 22657: true, - 22658: true, - 22660: true, - 22661: true, - 22662: true, - 22663: true, - 22664: true, - 22665: true, - 22666: true, - 22667: true, - 22668: true, - 22669: true, - 22670: true, - 22671: true, - 22672: true, - 22673: true, - 22674: true, - 22675: true, - 22676: true, - 22677: true, - 22678: true, - 22679: true, - 22680: true, - 22681: true, - 22682: true, - 22683: true, - 22684: true, - 22685: true, - 22686: true, - 22687: true, - 22688: true, - 22689: true, - 22690: true, - 22691: true, - 22692: true, - 22693: true, - 22694: true, - 22695: true, - 22696: true, - 22697: true, - 22698: true, - 22699: true, - 22700: true, - 22701: true, - 22702: true, - 22703: true, - 22704: true, - 22705: true, - 22706: true, - 22707: true, - 22708: true, - 22709: true, - 22710: true, - 22711: true, - 22712: true, - 22713: true, - 22714: true, - 22715: true, - 22716: true, - 22717: true, - 22718: true, - 22719: true, - 22721: true, - 22722: true, - 22723: true, - 22724: true, - 22725: true, - 22726: true, - 22727: true, - 22728: true, - 22729: true, - 22730: true, - 22731: true, - 22740: true, - 22741: true, - 22746: true, - 22749: true, - 22753: true, - 22754: true, - 22755: true, - 22756: true, - 22757: true, - 22758: true, - 22759: true, - 22760: true, - 22761: true, - 22762: true, - 22763: true, - 22764: true, - 22765: true, - 22766: true, - 22767: true, - 22768: true, - 22769: true, - 22770: true, - 22771: true, - 22772: true, - 22773: true, - 22774: true, - 22775: true, - 22776: true, - 22777: true, - 22795: true, - 22804: true, - 22822: true, - 22842: true, - 22843: true, - 22844: true, - 22845: true, - 22910: true, - 22911: true, - 22912: true, - 22916: true, - 22960: true, - 22975: true, - 22976: true, - 22977: true, - 22979: true, - 22981: true, - 22982: true, - 22983: true, - 22987: true, - 22988: true, - 22989: true, - 22990: true, - 22992: true, - 22993: true, - 22994: true, - 22995: true, - 22996: true, - 22997: true, - 22998: true, - 22999: true, - 23000: true, - 23001: true, - 23002: true, - 23003: true, - 23004: true, - 23005: true, - 23006: true, - 23007: true, - 23008: true, - 23009: true, - 23010: true, - 23011: true, - 23012: true, - 23013: true, - 23014: true, - 23015: true, - 23016: true, - 23017: true, - 23018: true, - 23019: true, - 23020: true, - 23021: true, - 23022: true, - 23023: true, - 23024: true, - 23025: true, - 23026: true, - 23027: true, - 23028: true, - 23029: true, - 23030: true, - 23049: true, - 23050: true, - 23051: true, - 23052: true, - 23053: true, - 23054: true, - 23055: true, - 23056: true, - 23057: true, - 23059: true, - 23060: true, - 23061: true, - 23062: true, - 23063: true, - 23064: true, - 23065: true, - 23066: true, - 23067: true, - 23125: true, - 23126: true, - 23137: true, - 23138: true, - 23143: true, - 23144: true, - 23145: true, - 23146: true, - 23148: true, - 23149: true, - 23150: true, - 23151: true, - 23152: true, - 23153: true, - 23154: true, - 23155: true, - 23156: true, - 23177: true, - 23178: true, - 23179: true, - 23180: true, - 23181: true, - 23182: true, - 23183: true, - 23184: true, - 23185: true, - 23186: true, - 23187: true, - 23188: true, - 23189: true, - 23190: true, - 23191: true, - 23192: true, - 23193: true, - 23194: true, - 23195: true, - 23196: true, - 23197: true, - 23198: true, - 23199: true, - 23200: true, - 23201: true, - 23202: true, - 23203: true, - 23204: true, - 23205: true, - 23206: true, - 23207: true, - 23208: true, - 23209: true, - 23210: true, - 23211: true, - 23212: true, - 23213: true, - 23214: true, - 23215: true, - 23276: true, - 23277: true, - 23279: true, - 23280: true, - 23281: true, - 23282: true, - 23296: true, - 23325: true, - 23334: true, - 23335: true, - 23336: true, - 23337: true, - 23338: true, - 23348: true, - 23349: true, - 23350: true, - 23375: true, - 23376: true, - 23377: true, - 23378: true, - 23379: true, - 23380: true, - 23381: true, - 23382: true, - 23383: true, - 23384: true, - 23385: true, - 23386: true, - 23387: true, - 23388: true, - 23389: true, - 23390: true, - 23391: true, - 23437: true, - 23438: true, - 23439: true, - 23440: true, - 23442: true, - 23443: true, - 23444: true, - 23445: true, - 23446: true, - 23447: true, - 23448: true, - 23449: true, - 23450: true, - 23451: true, - 23452: true, - 23453: true, - 23454: true, - 23455: true, - 23456: true, - 23457: true, - 23458: true, - 23459: true, - 23460: true, - 23462: true, - 23463: true, - 23464: true, - 23465: true, - 23466: true, - 23467: true, - 23468: true, - 23469: true, - 23470: true, - 23471: true, - 23472: true, - 23473: true, - 23474: true, - 23475: true, - 23476: true, - 23477: true, - 23478: true, - 23479: true, - 23480: true, - 23481: true, - 23482: true, - 23483: true, - 23485: true, - 23486: true, - 23487: true, - 23488: true, - 23489: true, - 23490: true, - 23491: true, - 23492: true, - 23493: true, - 23494: true, - 23495: true, - 23496: true, - 23498: true, - 23499: true, - 23500: true, - 23508: true, - 23509: true, - 23510: true, - 23511: true, - 23512: true, - 23513: true, - 23514: true, - 23515: true, - 23516: true, - 23517: true, - 23518: true, - 23519: true, - 23520: true, - 23521: true, - 23522: true, - 23523: true, - 23524: true, - 23525: true, - 23526: true, - 23660: true, - 23661: true, - 23662: true, - 23663: true, - 23664: true, - 23665: true, - 23666: true, - 23671: true, - 23675: true, - 23676: true, - 23677: true, - 23678: true, - 23679: true, - 23680: true, - 23681: true, - 23683: true, - 23684: true, - 23685: true, - 23686: true, - 23687: true, - 23688: true, - 23689: true, - 23749: true, - 23750: true, - 23751: true, - 23764: true, - 23765: true, - 23766: true, - 23769: true, - 23770: true, - 23771: true, - 23772: true, - 23773: true, - 23774: true, - 23775: true, - 23776: true, - 23785: true, - 23789: true, - 23795: true, - 23797: true, - 23798: true, - 23799: true, - 23800: true, - 23801: true, - 23802: true, - 23803: true, - 23805: true, - 23806: true, - 23807: true, - 23808: true, - 23809: true, - 23822: true, - 23826: true, - 23827: true, - 23828: true, - 23829: true, - 23830: true, - 23832: true, - 23833: true, - 23834: true, - 23835: true, - 23836: true, - 23837: true, - 23838: true, - 23839: true, - 23840: true, - 23841: true, - 23842: true, - 23846: true, - 23847: true, - 23850: true, - 23851: true, - 23852: true, - 23919: true, - 23920: true, - 23921: true, - 23922: true, - 23927: true, - 23928: true, - 23929: true, - 23933: true, - 23934: true, - 23935: true, - 23936: true, - 23937: true, - 23938: true, - 23939: true, - 23940: true, - 23941: true, - 23942: true, - 23943: true, - 23944: true, - 23945: true, - 23946: true, - 23947: true, - 23948: true, - 23949: true, - 23950: true, - 23951: true, - 23952: true, - 23953: true, - 23954: true, - 23955: true, - 23956: true, - 23957: true, - 23958: true, - 23959: true, - 23960: true, - 23961: true, - 23962: true, - 23963: true, - 23964: true, - 23965: true, - 23966: true, - 23967: true, - 23968: true, - 23969: true, - 23970: true, - 23971: true, - 23972: true, - 23974: true, - 23977: true, - 23980: true, - 23982: true, - 23985: true, - 23986: true, - 23987: true, - 23988: true, - 23989: true, - 23990: true, - 23991: true, - 23992: true, - 23993: true, - 23994: true, - 23995: true, - 23996: true, - 23997: true, - 23998: true, - 23999: true, - 24001: true, - 24002: true, - 24003: true, - 24004: true, - 24005: true, - 24006: true, - 24007: true, - 24008: true, - 24009: true, - 24010: true, - 24011: true, - 24013: true, - 24014: true, - 24015: true, - 24017: true, - 24018: true, - 24019: true, - 24020: true, - 24024: true, - 24025: true, - 24026: true, - 24027: true, - 24028: true, - 24029: true, - 24030: true, - 24031: true, - 24032: true, - 24033: true, - 24034: true, - 24035: true, - 24037: true, - 24038: true, - 24039: true, - 24040: true, - 24041: true, - 24042: true, - 24043: true, - 24044: true, - 24045: true, - 24046: true, - 24047: true, - 24048: true, - 24049: true, - 24052: true, - 24053: true, - 24054: true, - 24055: true, - 24056: true, - 24057: true, - 24059: true, - 24060: true, - 24061: true, - 24062: true, - 24063: true, - 24067: true, - 24068: true, - 24069: true, - 24079: true, - 24080: true, - 24081: true, - 24082: true, - 24083: true, - 24084: true, - 24085: true, - 24086: true, - 24090: true, - 24091: true, - 24092: true, - 24093: true, - 24094: true, - 24095: true, - 24096: true, - 24097: true, - 24098: true, - 24100: true, - 24101: true, - 24102: true, - 24103: true, - 24104: true, - 24105: true, - 24106: true, - 24107: true, - 24108: true, - 24109: true, - 24110: true, - 24111: true, - 24112: true, - 24113: true, - 24114: true, - 24115: true, - 24116: true, - 24117: true, - 24118: true, - 24119: true, - 24120: true, - 24121: true, - 24122: true, - 24123: true, - 24124: true, - 24125: true, - 24126: true, - 24127: true, - 24128: true, - 24129: true, - 24130: true, - 24131: true, - 24132: true, - 24133: true, - 24134: true, - 24135: true, - 24136: true, - 24137: true, - 24138: true, - 24139: true, - 24140: true, - 24141: true, - 24142: true, - 24143: true, - 24144: true, - 24146: true, - 24147: true, - 24149: true, - 24150: true, - 24151: true, - 24152: true, - 24153: true, - 24154: true, - 24155: true, - 24157: true, - 24158: true, - 24159: true, - 24160: true, - 24161: true, - 24162: true, - 24163: true, - 24164: true, - 24165: true, - 24166: true, - 24168: true, - 24169: true, - 24170: true, - 24171: true, - 24172: true, - 24173: true, - 24174: true, - 24175: true, - 24176: true, - 24177: true, - 24178: true, - 24179: true, - 24180: true, - 24181: true, - 24182: true, - 24183: true, - 24184: true, - 24185: true, - 24186: true, - 24187: true, - 24188: true, - 24189: true, - 24190: true, - 24191: true, - 24192: true, - 24193: true, - 24194: true, - 24195: true, - 24196: true, - 24197: true, - 24199: true, - 24200: true, - 24201: true, - 24202: true, - 24203: true, - 24204: true, - 24205: true, - 24206: true, - 24207: true, - 24208: true, - 24211: true, - 24212: true, - 24213: true, - 24214: true, - 24215: true, - 24216: true, - 24217: true, - 24218: true, - 24219: true, - 24220: true, - 24221: true, - 24222: true, - 24223: true, - 24224: true, - 24225: true, - 24226: true, - 24227: true, - 24228: true, - 24229: true, - 24230: true, - 24231: true, - 24233: true, - 24234: true, - 24235: true, - 24236: true, - 24237: true, - 24238: true, - 24239: true, - 24240: true, - 24241: true, - 24242: true, - 24243: true, - 24244: true, - 24245: true, - 24246: true, - 24247: true, - 24248: true, - 24250: true, - 24251: true, - 24252: true, - 24254: true, - 24255: true, - 24256: true, - 24257: true, - 24258: true, - 24259: true, - 24260: true, - 24261: true, - 24262: true, - 24263: true, - 24264: true, - 24265: true, - 24266: true, - 24267: true, - 24268: true, - 24271: true, - 24272: true, - 24273: true, - 24274: true, - 24275: true, - 24276: true, - 24277: true, - 24278: true, - 24279: true, - 24280: true, - 24281: true, - 24282: true, - 24284: true, - 24285: true, - 24286: true, - 24287: true, - 24289: true, - 24290: true, - 24291: true, - 24292: true, - 24293: true, - 24294: true, - 24295: true, - 24296: true, - 24297: true, - 24298: true, - 24299: true, - 24300: true, - 24301: true, - 24302: true, - 24303: true, - 24304: true, - 24305: true, - 24307: true, - 24308: true, - 24309: true, - 24310: true, - 24311: true, - 24312: true, - 24313: true, - 24314: true, - 24315: true, - 24316: true, - 24317: true, - 24320: true, - 24321: true, - 24322: true, - 24323: true, - 24324: true, - 24325: true, - 24326: true, - 24328: true, - 24330: true, - 24331: true, - 24332: true, - 24333: true, - 24334: true, - 24335: true, - 24336: true, - 24337: true, - 24338: true, - 24339: true, - 24340: true, - 24341: true, - 24342: true, - 24343: true, - 24344: true, - 24345: true, - 24346: true, - 24347: true, - 24348: true, - 24349: true, - 24350: true, - 24351: true, - 24352: true, - 24353: true, - 24354: true, - 24355: true, - 24356: true, - 24357: true, - 24358: true, - 24359: true, - 24360: true, - 24361: true, - 24362: true, - 24363: true, - 24364: true, - 24365: true, - 24366: true, - 24367: true, - 24368: true, - 24369: true, - 24370: true, - 24371: true, - 24372: true, - 24373: true, - 24374: true, - 24375: true, - 24376: true, - 24377: true, - 24378: true, - 24379: true, - 24380: true, - 24381: true, - 24382: true, - 24383: true, - 24384: true, - 24385: true, - 24386: true, - 24387: true, - 24388: true, - 24390: true, - 24391: true, - 24392: true, - 24393: true, - 24394: true, - 24395: true, - 24396: true, - 24397: true, - 24398: true, - 24399: true, - 24400: true, - 24401: true, - 24402: true, - 24403: true, - 24404: true, - 24405: true, - 24406: true, - 24407: true, - 24408: true, - 24409: true, - 24410: true, - 24411: true, - 24412: true, - 24413: true, - 24414: true, - 24415: true, - 24416: true, - 24417: true, - 24418: true, - 24419: true, - 24420: true, - 24421: true, - 24422: true, - 24424: true, - 24425: true, - 24426: true, - 24427: true, - 24428: true, - 24430: true, - 24431: true, - 24432: true, - 24433: true, - 24435: true, - 24436: true, - 24437: true, - 24438: true, - 24439: true, - 24440: true, - 24441: true, - 24442: true, - 24443: true, - 24444: true, - 24445: true, - 24446: true, - 24448: true, - 24449: true, - 24450: true, - 24451: true, - 24453: true, - 24454: true, - 24455: true, - 24456: true, - 24457: true, - 24458: true, - 24459: true, - 24460: true, - 24461: true, - 24462: true, - 24463: true, - 24465: true, - 24466: true, - 24467: true, - 24468: true, - 24470: true, - 24471: true, - 24472: true, - 24473: true, - 24474: true, - 24475: true, - 24476: true, - 24477: true, - 24478: true, - 24479: true, - 24480: true, - 24481: true, - 24482: true, - 24483: true, - 24484: true, - 24485: true, - 24486: true, - 24487: true, - 24488: true, - 24489: true, - 24490: true, - 24491: true, - 24492: true, - 24493: true, - 24494: true, - 24495: true, - 24496: true, - 24497: true, - 24498: true, - 24499: true, - 24500: true, - 24501: true, - 24502: true, - 24503: true, - 24504: true, - 24505: true, - 24506: true, - 24507: true, - 24508: true, - 24509: true, - 24510: true, - 24511: true, - 24512: true, - 24513: true, - 24514: true, - 24515: true, - 24516: true, - 24517: true, - 24518: true, - 24519: true, - 24520: true, - 24521: true, - 24522: true, - 24523: true, - 24524: true, - 24525: true, - 24526: true, - 24527: true, - 24528: true, - 24529: true, - 24530: true, - 24531: true, - 24532: true, - 24533: true, - 24534: true, - 24535: true, - 24536: true, - 24537: true, - 24538: true, - 24539: true, - 24540: true, - 24541: true, - 24542: true, - 24543: true, - 24544: true, - 24545: true, - 24546: true, - 24547: true, - 24549: true, - 24550: true, - 24551: true, - 24552: true, - 24553: true, - 24554: true, - 24555: true, - 24556: true, - 24557: true, - 24558: true, - 24559: true, - 24560: true, - 24561: true, - 24562: true, - 24563: true, - 24564: true, - 24565: true, - 24566: true, - 24567: true, - 24568: true, - 24569: true, - 24570: true, - 24572: true, - 24573: true, - 24574: true, - 24575: true, - 24576: true, - 24577: true, - 24578: true, - 24579: true, - 24580: true, - 24581: true, - 24582: true, - 24583: true, - 24584: true, - 24585: true, - 24586: true, - 24587: true, - 24588: true, - 24589: true, - 24590: true, - 24591: true, - 24592: true, - 24593: true, - 24594: true, - 24595: true, - 24596: true, - 24597: true, - 24598: true, - 24599: true, - 24600: true, - 24601: true, - 24602: true, - 24603: true, - 24604: true, - 24605: true, - 24606: true, - 24607: true, - 24608: true, - 24609: true, - 24610: true, - 24611: true, - 24612: true, - 24613: true, - 24614: true, - 24616: true, - 24617: true, - 24619: true, - 24620: true, - 24621: true, - 24622: true, - 24623: true, - 24624: true, - 24625: true, - 24626: true, - 24627: true, - 24628: true, - 24629: true, - 24630: true, - 24632: true, - 24633: true, - 24634: true, - 24635: true, - 24636: true, - 24637: true, - 24638: true, - 24639: true, - 24640: true, - 24641: true, - 24642: true, - 24643: true, - 24644: true, - 24645: true, - 24646: true, - 24647: true, - 24648: true, - 24649: true, - 24650: true, - 24651: true, - 24652: true, - 24653: true, - 24654: true, - 24655: true, - 24656: true, - 24657: true, - 24658: true, - 24659: true, - 24660: true, - 24661: true, - 24662: true, - 24663: true, - 24664: true, - 24665: true, - 24666: true, - 24667: true, - 24668: true, - 24669: true, - 24670: true, - 24671: true, - 24672: true, - 24673: true, - 24674: true, - 24675: true, - 24676: true, - 24677: true, - 24678: true, - 24679: true, - 24680: true, - 24681: true, - 24682: true, - 24683: true, - 24684: true, - 24685: true, - 24686: true, - 24687: true, - 24688: true, - 24689: true, - 24690: true, - 24691: true, - 24692: true, - 24693: true, - 24694: true, - 24695: true, - 24696: true, - 24697: true, - 24698: true, - 24699: true, - 24700: true, - 24701: true, - 24702: true, - 24703: true, - 24704: true, - 24705: true, - 24706: true, - 24707: true, - 24708: true, - 24709: true, - 24710: true, - 24711: true, - 24712: true, - 24715: true, - 24716: true, - 24717: true, - 24718: true, - 24719: true, - 24720: true, - 24721: true, - 24722: true, - 24723: true, - 24724: true, - 24725: true, - 24726: true, - 24727: true, - 24728: true, - 24729: true, - 24730: true, - 24731: true, - 24732: true, - 24733: true, - 24734: true, - 24735: true, - 24736: true, - 24737: true, - 24738: true, - 24740: true, - 24741: true, - 24742: true, - 24743: true, - 24744: true, - 24745: true, - 24746: true, - 24747: true, - 24748: true, - 24749: true, - 24750: true, - 24751: true, - 24752: true, - 24753: true, - 24755: true, - 24756: true, - 24757: true, - 24758: true, - 24759: true, - 24760: true, - 24761: true, - 24762: true, - 24763: true, - 24764: true, - 24765: true, - 24766: true, - 24767: true, - 24768: true, - 24769: true, - 24770: true, - 24771: true, - 24772: true, - 24773: true, - 24774: true, - 24775: true, - 24776: true, - 24777: true, - 24778: true, - 24779: true, - 24780: true, - 24781: true, - 24782: true, - 24783: true, - 24784: true, - 24785: true, - 24786: true, - 24787: true, - 24788: true, - 24789: true, - 24790: true, - 24791: true, - 24792: true, - 24793: true, - 24794: true, - 24795: true, - 24796: true, - 24797: true, - 24798: true, - 24799: true, - 24800: true, - 24801: true, - 24802: true, - 24803: true, - 24804: true, - 24805: true, - 24806: true, - 24807: true, - 24808: true, - 24809: true, - 24810: true, - 24811: true, - 24812: true, - 24813: true, - 24814: true, - 24815: true, - 24816: true, - 24817: true, - 24818: true, - 24819: true, - 24820: true, - 24821: true, - 24822: true, - 24823: true, - 24824: true, - 24825: true, - 24826: true, - 24827: true, - 24829: true, - 24830: true, - 24831: true, - 24832: true, - 24834: true, - 24838: true, - 24843: true, - 24844: true, - 24845: true, - 24846: true, - 24847: true, - 24848: true, - 24849: true, - 24850: true, - 24851: true, - 24852: true, - 24853: true, - 24854: true, - 24855: true, - 24856: true, - 24857: true, - 24858: true, - 24859: true, - 24860: true, - 24861: true, - 24862: true, - 24863: true, - 24864: true, - 24865: true, - 24866: true, - 24867: true, - 24868: true, - 24869: true, - 24870: true, - 24871: true, - 24872: true, - 24873: true, - 24874: true, - 24875: true, - 24879: true, - 24880: true, - 24881: true, - 24882: true, - 24883: true, - 24884: true, - 24885: true, - 24886: true, - 24887: true, - 24888: true, - 24889: true, - 24891: true, - 24892: true, - 24893: true, - 24894: true, - 24895: true, - 24896: true, - 24897: true, - 24898: true, - 24899: true, - 24900: true, - 24901: true, - 24902: true, - 24903: true, - 24904: true, - 24905: true, - 24906: true, - 24907: true, - 24908: true, - 24909: true, - 24910: true, - 24911: true, - 24912: true, - 24913: true, - 24914: true, - 24915: true, - 24916: true, - 24917: true, - 24919: true, - 24920: true, - 24921: true, - 24922: true, - 24923: true, - 24924: true, - 24925: true, - 24926: true, - 24927: true, - 24928: true, - 24929: true, - 24930: true, - 24931: true, - 24932: true, - 24933: true, - 24934: true, - 24935: true, - 24936: true, - 24937: true, - 24938: true, - 24939: true, - 24940: true, - 24941: true, - 24942: true, - 24943: true, - 24944: true, - 24945: true, - 24946: true, - 24948: true, - 24949: true, - 24950: true, - 24951: true, - 24952: true, - 24953: true, - 24954: true, - 24955: true, - 24956: true, - 24957: true, - 24958: true, - 24959: true, - 24960: true, - 24961: true, - 24964: true, - 24965: true, - 24966: true, - 24967: true, - 24968: true, - 24969: true, - 24970: true, - 24971: true, - 24972: true, - 24973: true, - 24974: true, - 24975: true, - 24976: true, - 24977: true, - 24978: true, - 24979: true, - 24980: true, - 24981: true, - 24982: true, - 24983: true, - 24984: true, - 24985: true, - 24986: true, - 24992: true, - 24993: true, - 24994: true, - 24995: true, - 24996: true, - 24997: true, - 24998: true, - 24999: true, -} -var CategoryIsSupplyDayReturnRule25w = map[int64]bool{25000: true, - 25001: true, - 25002: true, - 25005: true, - 25006: true, - 25007: true, - 25008: true, - 25010: true, - 25011: true, - 25014: true, - 25015: true, - 25016: true, - 25017: true, - 25018: true, - 25019: true, - 25022: true, - 25023: true, - 25024: true, - 25025: true, - 25026: true, - 25027: true, - 25028: true, - 25029: true, - 25030: true, - 25031: true, - 25032: true, - 25033: true, - 25034: true, - 25035: true, - 25036: true, - 25037: true, - 25038: true, - 25039: true, - 25040: true, - 25041: true, - 25042: true, - 25043: true, - 25044: true, - 25045: true, - 25046: true, - 25047: true, - 25048: true, - 25049: true, - 25050: true, - 25051: true, - 25052: true, - 25053: true, - 25054: true, - 25057: true, - 25058: true, - 25061: true, - 25062: true, - 25068: true, - 25069: true, - 25070: true, - 25071: true, - 25072: true, - 25073: true, - 25075: true, - 25076: true, - 25077: true, - 25078: true, - 25079: true, - 25080: true, - 25081: true, - 25082: true, - 25083: true, - 25084: true, - 25085: true, - 25086: true, - 25087: true, - 25088: true, - 25089: true, - 25090: true, - 25091: true, - 25092: true, - 25093: true, - 25094: true, - 25095: true, - 25096: true, - 25097: true, - 25098: true, - 25099: true, - 25100: true, - 25101: true, - 25102: true, - 25103: true, - 25104: true, - 25105: true, - 25106: true, - 25107: true, - 25108: true, - 25109: true, - 25110: true, - 25111: true, - 25112: true, - 25113: true, - 25114: true, - 25116: true, - 25117: true, - 25118: true, - 25119: true, - 25120: true, - 25121: true, - 25122: true, - 25123: true, - 25124: true, - 25125: true, - 25126: true, - 25127: true, - 25128: true, - 25129: true, - 25130: true, - 25131: true, - 25132: true, - 25133: true, - 25134: true, - 25135: true, - 25136: true, - 25137: true, - 25138: true, - 25139: true, - 25140: true, - 25141: true, - 25142: true, - 25143: true, - 25146: true, - 25147: true, - 25148: true, - 25150: true, - 25153: true, - 25154: true, - 25156: true, - 25158: true, - 25159: true, - 25161: true, - 25162: true, - 25163: true, - 25165: true, - 25166: true, - 25168: true, - 25171: true, - 25172: true, - 25173: true, - 25174: true, - 25175: true, - 25178: true, - 25179: true, - 25180: true, - 25181: true, - 25182: true, - 25183: true, - 25184: true, - 25185: true, - 25186: true, - 25187: true, - 25188: true, - 25189: true, - 25190: true, - 25191: true, - 25192: true, - 25193: true, - 25194: true, - 25195: true, - 25196: true, - 25197: true, - 25198: true, - 25199: true, - 25200: true, - 25201: true, - 25202: true, - 25203: true, - 25204: true, - 25205: true, - 25206: true, - 25207: true, - 25209: true, - 25210: true, - 25211: true, - 25212: true, - 25213: true, - 25214: true, - 25215: true, - 25216: true, - 25217: true, - 25218: true, - 25219: true, - 25220: true, - 25221: true, - 25222: true, - 25223: true, - 25224: true, - 25225: true, - 25226: true, - 25227: true, - 25228: true, - 25229: true, - 25230: true, - 25231: true, - 25232: true, - 25233: true, - 25234: true, - 25235: true, - 25236: true, - 25237: true, - 25238: true, - 25239: true, - 25240: true, - 25241: true, - 25242: true, - 25243: true, - 25244: true, - 25258: true, - 25260: true, - 25261: true, - 25262: true, - 25268: true, - 25269: true, - 25270: true, - 25272: true, - 25273: true, - 25274: true, - 25275: true, - 25276: true, - 25277: true, - 25278: true, - 25280: true, - 25281: true, - 25282: true, - 25284: true, - 25285: true, - 25286: true, - 25288: true, - 25289: true, - 25290: true, - 25291: true, - 25292: true, - 25293: true, - 25294: true, - 25295: true, - 25296: true, - 25297: true, - 25298: true, - 25299: true, - 25300: true, - 25301: true, - 25302: true, - 25303: true, - 25304: true, - 25305: true, - 25306: true, - 25307: true, - 25308: true, - 25309: true, - 25310: true, - 25311: true, - 25322: true, - 25323: true, - 25324: true, - 25325: true, - 25326: true, - 25327: true, - 25328: true, - 25329: true, - 25330: true, - 25331: true, - 25332: true, - 25333: true, - 25334: true, - 25335: true, - 25336: true, - 25337: true, - 25338: true, - 25339: true, - 25345: true, - 25346: true, - 25347: true, - 25350: true, - 25352: true, - 25353: true, - 25354: true, - 25355: true, - 25356: true, - 25357: true, - 25358: true, - 25362: true, - 25363: true, - 25364: true, - 25367: true, - 25368: true, - 25369: true, - 25371: true, - 25373: true, - 25375: true, - 25376: true, - 25377: true, - 25378: true, - 25379: true, - 25380: true, - 25381: true, - 25382: true, - 25383: true, - 25386: true, - 25387: true, - 25388: true, - 25389: true, - 25391: true, - 25393: true, - 25394: true, - 25395: true, - 25396: true, - 25397: true, - 25398: true, - 25399: true, - 25400: true, - 25401: true, - 25402: true, - 25403: true, - 25404: true, - 25405: true, - 25406: true, - 25407: true, - 25408: true, - 25409: true, - 25410: true, - 25411: true, - 25412: true, - 25413: true, - 25414: true, - 25415: true, - 25416: true, - 25417: true, - 25418: true, - 25419: true, - 25420: true, - 25421: true, - 25422: true, - 25423: true, - 25424: true, - 25425: true, - 25426: true, - 25427: true, - 25428: true, - 25429: true, - 25430: true, - 25431: true, - 25432: true, - 25433: true, - 25434: true, - 25435: true, - 25436: true, - 25441: true, - 25446: true, - 25447: true, - 25455: true, - 25456: true, - 25458: true, - 25459: true, - 25461: true, - 25462: true, - 25463: true, - 25464: true, - 25465: true, - 25466: true, - 25467: true, - 25468: true, - 25469: true, - 25470: true, - 25471: true, - 25472: true, - 25473: true, - 25474: true, - 25475: true, - 25476: true, - 25478: true, - 25479: true, - 25480: true, - 25481: true, - 25482: true, - 25483: true, - 25484: true, - 25485: true, - 25486: true, - 25487: true, - 25488: true, - 25489: true, - 25490: true, - 25491: true, - 25492: true, - 25493: true, - 25494: true, - 25495: true, - 25496: true, - 25497: true, - 25498: true, - 25500: true, - 25501: true, - 25502: true, - 25503: true, - 25504: true, - 25505: true, - 25506: true, - 25525: true, - 25527: true, - 25528: true, - 25532: true, - 25546: true, - 25547: true, - 25568: true, - 25569: true, - 25571: true, - 25572: true, - 25573: true, - 25574: true, - 25575: true, - 25576: true, - 25577: true, - 25578: true, - 25579: true, - 25580: true, - 25584: true, - 25585: true, - 25588: true, - 25589: true, - 25590: true, - 25591: true, - 25592: true, - 25593: true, - 25594: true, - 25595: true, - 25596: true, - 25597: true, - 25598: true, - 25599: true, - 25600: true, - 25601: true, - 25602: true, - 25603: true, - 25604: true, - 25606: true, - 25607: true, - 25608: true, - 25609: true, - 25610: true, - 25611: true, - 25612: true, - 25613: true, - 25614: true, - 25615: true, - 25616: true, - 25617: true, - 25618: true, - 25619: true, - 25620: true, - 25621: true, - 25622: true, - 25623: true, - 25624: true, - 25625: true, - 25626: true, - 25627: true, - 25628: true, - 25629: true, - 25630: true, - 25631: true, - 25632: true, - 25633: true, - 25634: true, - 25635: true, - 25636: true, - 25637: true, - 25638: true, - 25639: true, - 25640: true, - 25641: true, - 25642: true, - 25645: true, - 25646: true, - 25647: true, - 25648: true, - 25649: true, - 25650: true, - 25651: true, - 25652: true, - 25653: true, - 25654: true, - 25655: true, - 25657: true, - 25658: true, - 25659: true, - 25660: true, - 25661: true, - 25662: true, - 25663: true, - 25664: true, - 25666: true, - 25667: true, - 25668: true, - 25669: true, - 25670: true, - 25671: true, - 25672: true, - 25673: true, - 25674: true, - 25675: true, - 25676: true, - 25677: true, - 25678: true, - 25679: true, - 25680: true, - 25681: true, - 25682: true, - 25683: true, - 25684: true, - 25685: true, - 25686: true, - 25687: true, - 25688: true, - 25689: true, - 25693: true, - 25698: true, - 25699: true, - 25700: true, - 25701: true, - 25702: true, - 25703: true, - 25704: true, - 25705: true, - 25706: true, - 25707: true, - 25708: true, - 25709: true, - 25710: true, - 25711: true, - 25712: true, - 25713: true, - 25714: true, - 25715: true, - 25716: true, - 25717: true, - 25718: true, - 25719: true, - 25720: true, - 25721: true, - 25722: true, - 25723: true, - 25724: true, - 25725: true, - 25726: true, - 25727: true, - 25728: true, - 25729: true, - 25730: true, - 25731: true, - 25732: true, - 25733: true, - 25734: true, - 25735: true, - 25736: true, - 25737: true, - 25738: true, - 25739: true, - 25741: true, - 25743: true, - 25744: true, - 25745: true, - 25746: true, - 25747: true, - 25748: true, - 25749: true, - 25750: true, - 25751: true, - 25752: true, - 25753: true, - 25754: true, - 25755: true, - 25756: true, - 25757: true, - 25758: true, - 25759: true, - 25763: true, - 25764: true, - 25766: true, - 25767: true, - 25768: true, - 25769: true, - 25770: true, - 25771: true, - 25772: true, - 25773: true, - 25774: true, - 25775: true, - 25776: true, - 25777: true, - 25778: true, - 25779: true, - 25780: true, - 25781: true, - 25782: true, - 25783: true, - 25784: true, - 25785: true, - 25786: true, - 25787: true, - 25788: true, - 25789: true, - 25793: true, - 25794: true, - 25795: true, - 25796: true, - 25797: true, - 25799: true, - 25800: true, - 25801: true, - 25802: true, - 25803: true, - 25804: true, - 25805: true, - 25806: true, - 25807: true, - 25808: true, - 25809: true, - 25810: true, - 25811: true, - 25812: true, - 25813: true, - 25814: true, - 25815: true, - 25816: true, - 25817: true, - 25818: true, - 25819: true, - 25820: true, - 25821: true, - 25822: true, - 25823: true, - 25824: true, - 25825: true, - 25826: true, - 25827: true, - 25828: true, - 25829: true, - 25830: true, - 25831: true, - 25832: true, - 25833: true, - 25834: true, - 25835: true, - 25836: true, - 25837: true, - 25838: true, - 25839: true, - 25840: true, - 25841: true, - 25842: true, - 25843: true, - 25844: true, - 25845: true, - 25846: true, - 25847: true, - 25848: true, - 25849: true, - 25850: true, - 25851: true, - 25853: true, - 25854: true, - 25856: true, - 25857: true, - 25858: true, - 25859: true, - 25860: true, - 25861: true, - 25862: true, - 25864: true, - 25866: true, - 25867: true, - 25868: true, - 25869: true, - 25870: true, - 25871: true, - 25872: true, - 25873: true, - 25874: true, - 25875: true, - 25876: true, - 25877: true, - 25878: true, - 25879: true, - 25880: true, - 25881: true, - 25882: true, - 25883: true, - 25884: true, - 25885: true, - 25886: true, - 25887: true, - 25888: true, - 25889: true, - 25890: true, - 25891: true, - 25892: true, - 25893: true, - 25894: true, - 25895: true, - 25896: true, - 25897: true, - 25899: true, - 25900: true, - 25901: true, - 25902: true, - 25903: true, - 25904: true, - 25905: true, - 25906: true, - 25907: true, - 25910: true, - 25911: true, - 25912: true, - 25913: true, - 25914: true, - 25915: true, - 25916: true, - 25917: true, - 25918: true, - 25919: true, - 25920: true, - 25921: true, - 25922: true, - 25923: true, - 25924: true, - 25926: true, - 25928: true, - 25929: true, - 25930: true, - 25933: true, - 25934: true, - 25935: true, - 25938: true, - 25939: true, - 25940: true, - 25942: true, - 25943: true, - 25944: true, - 25945: true, - 25946: true, - 25947: true, - 25948: true, - 25949: true, - 25957: true, - 25958: true, - 25960: true, - 25961: true, - 25964: true, - 25966: true, - 25967: true, - 25970: true, - 25977: true, - 25980: true, - 25981: true, - 25982: true, - 25983: true, - 25987: true, - 25988: true, - 25989: true, - 25990: true, - 25991: true, - 25992: true, - 25993: true, - 25994: true, - 25995: true, - 25996: true, - 25997: true, - 25998: true, - 25999: true, - 26000: true, - 26001: true, - 26002: true, - 26003: true, - 26004: true, - 26005: true, - 26007: true, - 26009: true, - 26010: true, - 26013: true, - 26014: true, - 26015: true, - 26017: true, - 26018: true, - 26019: true, - 26020: true, - 26026: true, - 26027: true, - 26028: true, - 26029: true, - 26037: true, - 26038: true, - 26039: true, - 26040: true, - 26041: true, - 26042: true, - 26043: true, - 26044: true, - 26045: true, - 26046: true, - 26047: true, - 26048: true, - 26049: true, - 26050: true, - 26051: true, - 26052: true, - 26053: true, - 26054: true, - 26055: true, - 26056: true, - 26057: true, - 26058: true, - 26059: true, - 26060: true, - 26061: true, - 26062: true, - 26063: true, - 26064: true, - 26065: true, - 26066: true, - 26067: true, - 26068: true, - 26069: true, - 26070: true, - 26071: true, - 26072: true, - 26073: true, - 26074: true, - 26075: true, - 26076: true, - 26077: true, - 26078: true, - 26079: true, - 26080: true, - 26081: true, - 26082: true, - 26083: true, - 26084: true, - 26085: true, - 26086: true, - 26087: true, - 26088: true, - 26089: true, - 26090: true, - 26092: true, - 26093: true, - 26094: true, - 26095: true, - 26112: true, - 26113: true, - 26114: true, - 26115: true, - 26116: true, - 26117: true, - 26118: true, - 26119: true, - 26120: true, - 26121: true, - 26122: true, - 26123: true, - 26124: true, - 26125: true, - 26126: true, - 26127: true, - 26128: true, - 26129: true, - 26130: true, - 26131: true, - 26132: true, - 26133: true, - 26134: true, - 26135: true, - 26137: true, - 26138: true, - 26139: true, - 26140: true, - 26141: true, - 26142: true, - 26143: true, - 26144: true, - 26145: true, - 26147: true, - 26148: true, - 26149: true, - 26150: true, - 26151: true, - 26152: true, - 26153: true, - 26154: true, - 26156: true, - 26157: true, - 26158: true, - 26159: true, - 26160: true, - 26161: true, - 26163: true, - 26164: true, - 26165: true, - 26166: true, - 26167: true, - 26168: true, - 26169: true, - 26170: true, - 26171: true, - 26172: true, - 26173: true, - 26175: true, - 26186: true, - 26187: true, - 26188: true, - 26189: true, - 26190: true, - 26191: true, - 26192: true, - 26193: true, - 26194: true, - 26195: true, - 26196: true, - 26197: true, - 26198: true, - 26199: true, - 26200: true, - 26201: true, - 26202: true, - 26203: true, - 26204: true, - 26205: true, - 26206: true, - 26207: true, - 26208: true, - 26212: true, - 26213: true, - 26214: true, - 26215: true, - 26216: true, - 26217: true, - 26218: true, - 26219: true, - 26220: true, - 26221: true, - 26222: true, - 26223: true, - 26224: true, - 26225: true, - 26226: true, - 26227: true, - 26228: true, - 26229: true, - 26230: true, - 26231: true, - 26232: true, - 26233: true, - 26234: true, - 26235: true, - 26236: true, - 26237: true, - 26238: true, - 26239: true, - 26240: true, - 26241: true, - 26243: true, - 26244: true, - 26245: true, - 26246: true, - 26247: true, - 26248: true, - 26249: true, - 26250: true, - 26251: true, - 26252: true, - 26262: true, - 26263: true, - 26264: true, - 26265: true, - 26266: true, - 26267: true, - 26268: true, - 26269: true, - 26270: true, - 26271: true, - 26272: true, - 26273: true, - 26274: true, - 26275: true, - 26278: true, - 26280: true, - 26281: true, - 26282: true, - 26283: true, - 26284: true, - 26286: true, - 26287: true, - 26289: true, - 26290: true, - 26291: true, - 26293: true, - 26294: true, - 26313: true, - 26314: true, - 26316: true, - 26317: true, - 26318: true, - 26319: true, - 26320: true, - 26321: true, - 26322: true, - 26323: true, - 26324: true, - 26325: true, - 26326: true, - 26327: true, - 26328: true, - 26329: true, - 26330: true, - 26331: true, - 26332: true, - 26333: true, - 26334: true, - 26336: true, - 26337: true, - 26338: true, - 26339: true, - 26340: true, - 26341: true, - 26344: true, - 26345: true, - 26346: true, - 26347: true, - 26348: true, - 26349: true, - 26350: false, - 26351: true, - 26352: true, - 26366: true, - 26367: true, - 26380: true, - 26384: true, - 26387: true, - 26391: true, - 26392: true, - 26394: true, - 26395: true, - 26396: true, - 26408: true, - 26411: true, - 26415: true, - 26418: true, - 26420: true, - 26421: true, - 26424: true, - 26425: true, - 26432: true, - 26433: true, - 26434: true, - 26435: true, - 26436: true, - 26437: true, - 26438: true, - 26439: true, - 26440: true, - 26441: true, - 26442: true, - 26443: true, - 26444: true, - 26445: true, - 26446: true, - 26447: true, - 26448: true, - 26449: true, - 26450: true, - 26451: true, - 26452: true, - 26453: true, - 26455: true, - 26456: true, - 26457: true, - 26458: true, - 26459: true, - 26460: true, - 26461: true, - 26462: true, - 26463: true, - 26464: true, - 26465: true, - 26466: true, - 26467: true, - 26468: true, - 26469: true, - 26470: true, - 26471: true, - 26472: true, - 26473: true, - 26474: true, - 26475: true, - 26476: true, - 26482: true, - 26484: true, - 26487: true, - 26488: true, - 26489: true, - 26490: true, - 26491: true, - 26492: true, - 26493: true, - 26494: true, - 26495: true, - 26496: true, - 26497: true, - 26498: true, - 26499: true, - 26500: true, - 26501: true, - 26502: true, - 26503: true, - 26504: true, - 26505: true, - 26506: true, - 26507: true, - 26508: true, - 26509: true, - 26510: true, - 26511: true, - 26512: true, - 26513: true, - 26514: true, - 26515: true, - 26516: true, - 26517: true, - 26518: true, - 26519: true, - 26520: true, - 26521: true, - 26522: true, - 26523: true, - 26524: true, - 26525: true, - 26526: true, - 26527: true, - 26528: true, - 26529: true, - 26530: true, - 26531: true, - 26532: true, - 26533: true, - 26534: true, - 26535: true, - 26536: true, - 26537: true, - 26538: true, - 26539: true, - 26540: true, - 26541: true, - 26542: true, - 26543: true, - 26545: true, - 26548: true, - 26558: true, - 26559: true, - 26560: true, - 26561: true, - 26562: true, - 26563: true, - 26564: true, - 26565: true, - 26566: true, - 26568: true, - 26569: true, - 26570: true, - 26571: true, - 26573: true, - 26574: true, - 26575: true, - 26576: true, - 26577: true, - 26578: true, - 26579: true, - 26580: true, - 26583: true, - 26592: true, - 26593: true, - 26594: true, - 26596: true, - 26621: true, - 26622: true, - 26623: true, - 26624: true, - 26625: true, - 26626: true, - 26627: true, - 26628: true, - 26632: true, - 26644: true, - 26645: true, - 26646: true, - 26647: true, - 26648: true, - 26649: true, - 26656: true, - 26657: true, - 26658: true, - 26659: true, - 26660: true, - 26661: true, - 26662: true, - 26665: true, - 26666: true, - 26671: true, - 26672: true, - 26674: true, - 26675: true, - 26676: true, - 26683: true, - 26687: true, - 26691: true, - 26693: true, - 26694: true, - 26695: true, - 26696: true, - 26697: true, - 26698: true, - 26700: true, - 26701: true, - 26702: true, - 26703: true, - 26704: true, - 26705: true, - 26706: true, - 26707: true, - 26708: true, - 26709: true, - 26710: true, - 26711: true, - 26712: true, - 26740: true, - 26741: true, - 26742: true, - 26743: true, - 26749: true, - 26750: true, - 26751: true, - 26752: true, - 26753: true, - 26754: true, - 26755: true, - 26756: true, - 26757: true, - 26758: true, - 26759: true, - 26760: true, - 26761: true, - 26762: true, - 26763: true, - 26764: true, - 26765: true, - 26769: true, - 26770: true, - 26771: true, - 26772: true, - 26773: true, - 26774: true, - 26775: true, - 26777: true, - 26778: true, - 26779: true, - 26780: true, - 26781: true, - 26782: true, - 26783: true, - 26784: true, - 26785: true, - 26786: true, - 26787: true, - 26788: true, - 26789: true, - 26790: true, - 26791: true, - 26792: true, - 26793: true, - 26794: true, - 26795: true, - 26796: true, - 26797: true, - 26798: true, - 26799: true, - 26800: true, - 26805: true, - 26808: true, - 26809: true, - 26810: true, - 26811: true, - 26815: true, - 26817: true, - 26818: true, - 26819: true, - 26820: true, - 26821: true, - 26822: true, - 26823: true, - 26824: true, - 26825: true, - 26826: true, - 26827: true, - 26828: true, - 26829: true, - 26830: true, - 26831: true, - 26832: true, - 26833: true, - 26834: true, - 26835: true, - 26836: true, - 26837: true, - 26838: true, - 26839: true, - 26840: true, - 26841: true, - 26842: true, - 26843: true, - 26844: true, - 26845: true, - 26846: true, - 26847: true, - 26848: true, - 26849: true, - 26851: true, - 26852: true, - 26853: true, - 26854: true, - 26855: true, - 26856: true, - 26857: true, - 26858: true, - 26866: true, - 26868: true, - 26869: true, - 26870: true, - 26871: true, - 26873: true, - 26874: true, - 26875: true, - 26876: true, - 26878: true, - 26880: true, - 26881: true, - 26882: true, - 26883: true, - 26884: true, - 26885: true, - 26886: true, - 26887: true, - 26888: true, - 26889: true, - 26890: true, - 26891: true, - 26892: true, - 26897: true, - 26898: true, - 26904: true, - 26905: true, - 26906: true, - 26907: true, - 26908: true, - 26909: true, - 26910: true, - 26911: true, - 26912: true, - 26913: true, - 26917: true, - 26925: true, - 26927: true, - 26928: true, - 26931: true, - 26932: true, - 26933: true, - 26934: true, - 26935: true, - 26955: true, - 26956: true, - 26957: true, - 26958: true, - 26959: true, - 26960: true, - 26961: true, - 26963: true, - 26968: true, - 26969: true, - 26970: true, - 26976: true, - 26977: true, - 26978: true, - 26999: true, - 27000: true, - 27001: true, - 27003: true, - 27004: true, - 27005: true, - 27006: true, - 27007: true, - 27013: true, - 27014: true, - 27015: true, - 27016: true, - 27019: true, - 27020: true, - 27021: true, - 27022: true, - 27023: true, - 27025: true, - 27026: true, - 27034: true, - 27036: true, - 27037: true, - 27039: true, - 27042: true, - 27043: true, - 27045: true, - 27047: true, - 27048: true, - 27049: true, - 27051: true, - 27052: true, - 27053: true, - 27054: true, - 27055: true, - 27056: true, - 27057: true, - 27058: true, - 27059: true, - 27070: true, - 27071: true, - 27072: true, - 27073: true, - 27074: true, - 27075: true, - 27076: true, - 27077: true, - 27078: true, - 27080: true, - 27081: true, - 27082: true, - 27083: true, - 27084: true, - 27085: true, - 27086: true, - 27087: true, - 27088: true, - 27089: true, - 27090: true, - 27092: true, - 27093: true, - 27094: true, - 27095: true, - 27096: true, - 27097: true, - 27098: true, - 27099: true, - 27101: true, - 27102: true, - 27103: true, - 27104: true, - 27105: true, - 27106: true, - 27107: true, - 27108: true, - 27109: true, - 27110: true, - 27111: true, - 27112: true, - 27115: true, - 27116: true, - 27117: true, - 27118: true, - 27119: true, - 27120: true, - 27121: true, - 27122: true, - 27123: true, - 27124: true, - 27125: true, - 27126: true, - 27127: true, - 27128: true, - 27129: true, - 27130: true, - 27131: true, - 27132: true, - 27133: true, - 27134: true, - 27135: true, - 27136: true, - 27137: true, - 27138: true, - 27139: true, - 27140: true, - 27141: true, - 27142: true, - 27143: true, - 27144: true, - 27145: true, - 27146: true, - 27147: true, - 27148: true, - 27149: true, - 27150: true, - 27151: true, - 27153: true, - 27154: true, - 27155: true, - 27157: true, - 27160: true, - 27163: true, - 27164: true, - 27165: true, - 27166: true, - 27167: true, - 27170: true, - 27171: true, - 27172: true, - 27173: true, - 27174: true, - 27177: true, - 27178: true, - 27180: true, - 27181: true, - 27182: true, - 27183: true, - 27184: true, - 27185: true, - 27186: true, - 27187: true, - 27196: true, - 27197: true, - 27198: true, - 27199: true, - 27200: true, - 27203: true, - 27204: true, - 27205: true, - 27206: true, - 27207: true, - 27208: true, - 27209: true, - 27210: true, - 27211: true, - 27212: true, - 27213: true, - 27215: true, - 27218: true, - 27220: true, - 27221: true, - 27222: true, - 27223: true, - 27224: true, - 27225: true, - 27226: true, - 27227: true, - 27279: true, - 27282: true, - 27283: true, - 27284: true, - 27285: true, - 27286: true, - 27287: true, - 27288: true, - 27289: true, - 27290: true, - 27291: true, - 27294: true, - 27295: true, - 27296: true, - 27298: true, - 27299: true, - 27301: true, - 27302: true, - 27303: true, - 27307: true, - 27308: true, - 27309: true, - 27310: true, - 27313: true, - 27315: true, - 27316: true, - 27317: true, - 27318: true, - 27320: true, - 27321: true, - 27324: true, - 27325: true, - 27326: true, - 27328: true, - 27329: true, - 27330: true, - 27332: true, - 27333: true, - 27334: true, - 27335: true, - 27337: true, - 27338: true, - 27343: true, - 27344: true, - 27345: true, - 27346: true, - 27347: true, - 27348: true, - 27349: true, - 27350: true, - 27351: true, - 27352: true, - 27353: true, - 27354: true, - 27355: true, - 27356: true, - 27357: true, - 27360: true, - 27361: true, - 27363: true, - 27364: true, - 27365: true, - 27366: true, - 27367: true, - 27374: true, - 27375: true, - 27376: true, - 27377: true, - 27378: true, - 27379: true, - 27380: true, - 27381: true, - 27382: true, - 27383: true, - 27384: true, - 27385: true, - 27386: true, - 27387: true, - 27388: true, - 27389: true, - 27390: true, - 27391: true, - 27392: true, - 27393: true, - 27394: true, - 27395: true, - 27396: true, - 27397: true, - 27405: true, - 27407: true, - 27408: true, - 27409: true, - 27410: true, - 27411: true, - 27412: true, - 27413: true, - 27414: true, - 27415: true, - 27416: true, - 27417: true, - 27418: true, - 27419: true, - 27420: true, - 27422: true, - 27423: true, - 27429: true, - 27430: true, - 27434: true, - 27435: true, - 27436: true, - 27437: true, - 27438: true, - 27444: true, - 27448: true, - 27450: true, - 27454: true, - 27455: true, - 27456: true, - 27457: true, - 27458: true, - 27459: true, - 27460: true, - 27461: true, - 27462: true, - 27463: true, - 27466: true, - 27467: true, - 27468: true, - 27469: true, - 27470: true, - 27471: true, - 27472: true, - 27473: true, - 27474: true, - 27475: true, - 27477: true, - 27478: true, - 27479: true, - 27480: true, - 27481: true, - 27482: true, - 27483: true, - 27484: true, - 27485: true, - 27486: true, - 27487: true, - 27488: true, - 27489: true, - 27490: true, - 27491: true, - 27492: true, - 27494: true, - 27495: true, - 27496: true, - 27497: true, - 27498: true, - 27499: true, - 27509: true, - 27510: true, - 27511: true, - 27512: true, - 27513: true, - 27532: true, - 27533: true, - 27537: true, - 27538: true, - 27539: true, - 27540: true, - 27541: true, - 27542: true, - 27543: true, - 27544: true, - 27545: true, - 27547: true, - 27548: true, - 27549: true, - 27551: true, - 27552: true, - 27553: true, - 27554: true, - 27555: true, - 27556: true, - 27577: true, - 27581: true, - 27583: true, - 27584: true, - 27586: true, - 27587: true, - 27588: true, - 27592: true, - 27595: true, - 27598: true, - 27599: true, - 27600: true, - 27601: true, - 27602: true, - 27603: true, - 27604: true, - 27605: true, - 27606: true, - 27607: true, - 27608: true, - 27609: true, - 27610: true, - 27611: true, - 27612: true, - 27613: true, - 27614: true, - 27615: true, - 27616: true, - 27617: true, - 27618: true, - 27619: true, - 27620: true, - 27621: true, - 27622: true, - 27623: true, - 27624: true, - 27625: true, - 27626: true, - 27627: true, - 27628: true, - 27629: true, - 27630: true, - 27631: true, - 27635: true, - 27636: true, - 27637: true, - 27639: true, - 27641: true, - 27642: true, - 27643: true, - 27644: true, - 27645: true, - 27646: true, - 27647: true, - 27648: true, - 27650: true, - 27651: true, - 27652: true, - 27653: true, - 27654: true, - 27655: true, - 27656: true, - 27673: true, - 27674: true, - 27675: true, - 27678: true, - 27679: true, - 27681: true, - 27682: true, - 27683: true, - 27684: true, - 27685: true, - 27686: true, - 27687: true, - 27688: true, - 27689: true, - 27691: true, - 27692: true, - 27693: true, - 27694: true, - 27695: true, - 27696: true, - 27697: true, - 27698: true, - 27699: true, - 27700: true, - 27701: true, - 27702: true, - 27703: true, - 27704: true, - 27705: true, - 27706: true, - 27707: true, - 27708: true, - 27709: true, - 27710: true, - 27711: true, - 27712: true, - 27713: true, - 27714: true, - 27715: true, - 27716: true, - 27717: true, - 27718: true, - 27719: true, - 27722: true, - 27723: true, - 27724: true, - 27725: true, - 27726: true, - 27727: true, - 27728: true, - 27729: true, - 27730: true, - 27733: true, - 27734: true, - 27735: true, - 27736: true, - 27737: true, - 27738: true, - 27739: true, - 27740: true, - 27741: true, - 27742: true, - 27743: true, - 27744: true, - 27745: true, - 27746: true, - 27747: true, - 27748: true, - 27749: true, - 27750: true, - 27751: true, - 27752: true, - 27753: true, - 27759: true, - 27760: true, - 27761: true, - 27762: true, - 27763: true, - 27764: true, - 27765: true, - 27766: true, - 27767: true, - 27768: true, - 27769: true, - 27770: true, - 27771: true, - 27772: true, - 27773: true, - 27776: true, - 27777: true, - 27778: true, - 27779: true, - 27780: true, - 27781: true, - 27805: true, - 27806: true, - 27807: true, - 27808: true, - 27809: true, - 27810: true, - 27812: true, - 27813: true, - 27814: true, - 27815: true, - 27816: true, - 27817: true, - 27823: true, - 27824: true, - 27825: true, - 27826: true, - 27827: true, - 27828: true, - 27829: true, - 27831: true, - 27832: true, - 27833: true, - 27834: true, - 27835: true, - 27837: true, - 27838: true, - 27839: true, - 27840: true, - 27841: true, - 27842: true, - 27843: true, - 27844: true, - 27845: true, - 27846: true, - 27847: true, - 27848: true, - 27849: true, - 27850: true, - 27851: true, - 27852: true, - 27853: true, - 27854: true, - 27855: true, - 27861: true, - 27862: true, - 27863: true, - 27864: true, - 27865: true, - 27866: true, - 27867: true, - 27868: true, - 27869: true, - 27870: true, - 27871: true, - 27873: true, - 27874: true, - 27875: true, - 27876: true, - 27877: true, - 27878: true, - 27879: true, - 27880: true, - 27881: true, - 27882: true, - 27883: true, - 27884: true, - 27885: true, - 27886: true, - 27891: true, - 27892: true, - 27893: true, - 27895: true, - 27896: true, - 27897: true, - 27898: true, - 27899: true, - 27901: true, - 27902: true, - 27904: true, - 27905: true, - 27906: true, - 27907: true, - 27908: true, - 27909: true, - 27942: true, - 27943: true, - 27944: true, - 27945: true, - 27946: true, - 27947: true, - 27948: true, - 27949: true, - 27950: true, - 27951: true, - 27952: true, - 27953: true, - 27954: true, - 27958: true, - 27960: true, - 27975: true, - 27976: true, - 27979: true, - 27982: true, - 27993: true, - 27994: true, - 28033: true, - 28034: true, - 28035: true, - 28036: true, - 28037: true, - 28041: true, - 28042: true, - 28050: true, - 28054: true, - 28055: true, - 28058: true, - 28067: true, - 28080: true, - 28081: true, - 28082: true, - 28083: true, - 28084: true, - 28085: true, - 28086: true, - 28087: true, - 28088: true, - 28091: true, - 28102: true, - 28103: true, - 28104: true, - 28105: true, - 28106: true, - 28107: true, - 28108: true, - 28109: true, - 28110: true, - 28111: true, - 28112: true, - 28113: true, - 28114: true, - 28115: true, - 28116: true, - 28117: true, - 28118: true, - 28119: true, - 28120: true, - 28121: true, - 28122: true, - 28123: true, - 28124: true, - 28125: true, - 28126: true, - 28127: true, - 28128: true, - 28129: true, - 28132: true, - 28133: true, - 28134: true, - 28135: true, - 28136: true, - 28140: true, - 28141: true, - 28142: true, - 28143: true, - 28144: true, - 28145: true, - 28146: true, - 28149: true, - 28150: true, - 28151: true, - 28152: true, - 28153: true, - 28154: true, - 28155: true, - 28156: true, - 28157: true, - 28159: true, - 28160: true, - 28161: true, - 28163: true, - 28164: true, - 28165: true, - 28166: true, - 28167: true, - 28168: true, - 28169: true, - 28171: true, - 28172: true, - 28174: true, - 28175: true, - 28176: true, - 28177: true, - 28178: true, - 28180: true, - 28186: true, - 28188: true, - 28190: true, - 28191: true, - 28192: true, - 28193: true, - 28194: true, - 28195: true, - 28196: true, - 28198: true, - 28200: true, - 28204: true, - 28208: true, - 28209: true, - 28210: true, - 28211: true, - 28212: true, - 28213: true, - 28214: true, - 28215: true, - 28216: true, - 28217: true, - 28218: true, - 28219: true, - 28220: true, - 28221: true, - 28222: true, - 28223: true, - 28224: true, - 28225: true, - 28226: true, - 28227: true, - 28228: true, - 28229: true, - 28230: true, - 28231: true, - 28232: true, - 28233: true, - 28234: true, - 28235: true, - 28236: true, - 28237: true, - 28238: true, - 28239: true, - 28240: true, - 28241: true, - 28242: true, - 28243: true, - 28244: true, - 28245: true, - 28246: true, - 28247: true, - 28248: true, - 28249: true, - 28250: true, - 28251: true, - 28252: true, - 28253: true, - 28254: true, - 28255: true, - 28256: true, - 28257: true, - 28258: true, - 28259: true, - 28260: true, - 28261: true, - 28262: true, - 28263: true, - 28264: true, - 28265: true, - 28266: true, - 28267: true, - 28268: true, - 28483: true, - 28484: true, - 28485: true, - 28486: true, - 28487: true, - 28488: true, - 28489: true, - 28490: true, - 28491: true, - 28492: true, - 28493: true, - 28494: true, - 28495: true, - 28496: true, - 28497: true, - 28498: true, - 28520: true, - 28522: true, - 28528: true, - 28535: true, - 28536: true, - 28543: true, - 28548: true, - 28549: true, - 28550: true, - 28551: true, - 28556: true, - 28576: true, - 28577: true, - 28578: true, - 28579: true, - 28581: true, - 28582: true, - 28583: true, - 28584: true, - 28585: true, - 28586: true, - 28587: true, - 28588: true, - 28589: true, - 28590: true, - 28591: true, - 28592: true, - 28593: true, - 28594: true, - 28595: true, - 28596: true, - 28599: true, - 28612: true, - 28630: true, - 28631: true, - 28632: true, - 28633: true, - 28634: true, - 28733: true, - 28734: true, - 28735: true, - 28736: true, - 28737: true, - 28747: true, - 28753: true, - 28754: true, - 28755: true, - 28756: true, - 28757: true, - 28758: true, - 28759: true, - 28760: true, - 28764: true, - 28765: true, - 28766: true, - 28767: true, - 28768: true, - 28825: true, - 28826: true, - 28827: true, - 28922: true, - 28923: true, - 28924: true, - 28925: true, - 28926: true, - 28927: true, - 28928: true, - 28929: true, - 28934: true, - 28935: true, - 28937: true, - 28940: true, - 29050: true, - 29051: true, - 29052: true, - 29053: true, - 29061: true, - 29062: true, - 29063: true, - 29064: true, - 29065: true, - 29066: true, - 29067: true, - 29068: true, - 29069: true, - 29070: true, - 29071: true, - 29073: true, - 29074: true, - 29075: true, - 29076: true, - 29079: true, - 29080: true, - 29081: true, - 29082: true, - 29083: true, - 29084: true, - 29085: true, - 29086: true, - 29088: true, - 29090: true, - 29092: true, - 29093: true, - 29094: true, - 29095: true, - 29096: true, - 29097: true, - 29098: true, - 29099: true, - 29100: true, - 29101: true, - 29102: true, - 29103: true, - 29104: true, - 29105: true, - 29106: true, - 29107: true, - 29108: true, - 29109: true, - 29110: true, - 29111: true, - 29112: true, - 29113: true, - 29114: true, - 29115: true, - 29116: true, - 29117: true, - 29118: true, - 29119: true, - 29120: true, - 29121: true, - 29122: true, - 29123: true, - 29124: true, - 29126: true, - 29127: true, - 29128: true, - 29129: true, - 29130: true, - 29131: true, - 29132: true, - 29133: true, - 29134: true, - 29135: true, - 29136: true, - 29137: true, - 29138: true, - 29139: true, - 29140: true, - 29141: true, - 29142: true, - 29143: true, - 29144: true, - 29145: true, - 29146: true, - 29147: true, - 29148: true, - 29149: true, - 29150: true, - 29151: true, - 29152: true, - 29153: true, - 29154: true, - 29155: true, - 29156: true, - 29157: true, - 29158: true, - 29159: true, - 29170: true, - 29173: true, - 29181: true, - 29182: true, - 29183: true, - 29184: true, - 29185: true, - 29186: true, - 29187: true, - 29188: true, - 29189: true, - 29190: true, - 29191: true, - 29192: true, - 29193: true, - 29269: true, - 29270: true, - 29271: true, - 29334: true, - 29335: true, - 29336: true, - 29337: true, - 29338: true, - 29339: true, - 29340: true, - 29341: true, - 29342: true, - 29345: true, - 29346: true, - 29347: true, - 29348: true, - 29349: true, - 29350: true, - 29351: true, - 29352: true, - 29353: true, - 29354: true, - 29355: true, - 29356: true, - 29357: true, - 29510: true, - 29511: true, - 29512: true, - 29513: true, - 29514: true, - 29516: true, - 29517: true, - 29518: true, - 29519: true, - 29520: true, - 29521: true, - 29522: true, - 29523: true, - 29524: true, - 29525: true, - 29526: true, - 29527: true, - 29528: true, - 29529: true, - 29530: true, - 29671: true, - 29672: true, - 29673: true, - 29674: true, - 29675: true, - 29676: true, - 29677: true, - 29678: true, - 29679: true, - 29680: true, - 29687: true, - 29688: true, - 29689: true, - 29690: true, - 29691: true, - 29692: true, - 29693: true, - 29694: true, - 29695: true, - 29696: true, - 29697: true, - 29699: true, - 29702: true, - 29703: true, - 29704: true, - 29705: true, - 29706: true, - 29709: true, - 29711: true, - 29712: true, - 29713: true, - 29714: true, - 29715: true, - 29716: true, - 29717: true, - 29718: true, - 29721: true, - 29733: true, - 29734: true, - 29735: true, - 29736: true, - 29737: true, - 29738: true, - 29739: true, - 29740: true, - 29741: true, - 29742: true, - 29743: true, - 29744: true, - 29745: true, - 29746: true, - 29747: true, - 29748: true, - 29749: true, - 29750: true, - 29751: true, - 29752: true, - 29753: true, - 29754: true, - 29755: true, - 29756: true, - 29757: true, - 29758: true, - 29759: true, - 29760: true, - 29761: true, - 29762: true, - 29763: true, - 29764: true, - 29765: true, - 29766: true, - 29767: true, - 29768: true, - 29769: true, - 29770: true, - 29771: true, - 29772: true, - 29773: true, - 29774: true, - 29775: true, - 29776: true, - 29777: true, - 29778: true, - 29779: true, - 29780: true, - 29781: true, - 29782: true, - 29783: true, - 29784: true, - 29785: true, - 29786: true, - 29787: true, - 29788: true, - 29789: true, - 29790: true, - 29791: true, - 29792: true, - 29793: true, - 29794: true, - 29795: true, - 29796: true, - 29797: true, - 29798: true, - 29799: true, - 29800: true, - 29801: true, - 29802: true, - 29803: true, - 29804: true, - 29805: true, - 29806: true, - 29807: true, - 29808: true, - 29809: true, - 29810: true, - 29811: true, - 29812: true, - 29813: true, - 29814: true, - 29815: true, - 29816: true, - 29817: true, - 29818: true, - 29819: true, - 29820: true, - 29821: true, - 29822: true, - 29823: true, - 29824: true, - 29825: true, - 29826: true, - 29827: true, - 29828: true, - 29829: true, - 29830: true, - 29831: true, -} -var CategoryIsSupplyDayReturnRule3w = map[int64]bool{30123: true, - 30124: true, - 30125: true, - 30126: true, - 30127: true, - 30128: true, - 30129: true, - 30130: true, - 30135: true, - 30137: true, - 30138: true, - 30139: true, - 30140: true, - 30141: true, - 30142: true, - 30143: true, - 30144: true, - 30145: true, - 30146: true, - 30147: true, - 30148: true, - 30149: true, - 30150: true, - 30151: true, - 30152: true, - 30153: true, - 30155: true, - 30158: true, - 30159: true, - 30160: true, - 30161: true, - 30162: true, - 30163: true, - 30164: true, - 30165: true, - 30167: true, - 30169: true, - 30170: true, - 30171: true, - 30172: true, - 30173: true, - 30175: true, - 30176: true, - 30177: true, - 30178: true, - 30179: true, - 30180: true, - 30181: true, - 30183: true, - 30185: true, - 30186: true, - 30187: true, - 30188: true, - 30189: true, - 30190: true, - 30191: true, - 30192: true, - 30194: true, - 30195: true, - 30196: true, - 30197: true, - 30199: true, - 30200: true, - 30203: true, - 30206: true, - 30207: true, - 30208: true, - 30209: true, - 30210: true, - 30211: true, - 30212: true, - 30213: true, - 30214: true, - 30215: true, - 30216: true, - 30217: true, - 30218: true, - 30219: true, - 30220: true, - 30221: true, - 30222: true, - 30223: true, - 30224: true, - 30225: true, - 30226: true, - 30227: true, - 30228: true, - 30229: true, - 30230: true, - 30231: true, - 30232: true, - 30233: true, - 30234: true, - 30235: true, - 30236: true, - 30237: true, - 30238: true, - 30239: true, - 30240: true, - 30241: true, - 30242: true, - 30243: true, - 30244: true, - 30245: true, - 30246: true, - 30247: true, - 30248: true, - 30249: true, - 30250: true, - 30251: true, - 30252: true, - 30253: true, - 30254: true, - 30255: true, - 30256: true, - 30257: true, - 30258: true, - 30259: false, - 30260: true, - 30261: true, - 30262: true, - 30263: true, - 30264: true, - 30265: true, - 30266: true, - 30267: true, - 30268: true, - 30269: true, - 30270: true, - 30271: true, - 30272: true, - 30273: true, - 30274: true, - 30275: true, - 30276: true, - 30277: true, - 30278: true, - 30279: true, - 30280: true, - 30281: true, - 30282: true, - 30283: true, - 30284: true, - 30285: true, - 30286: true, - 30287: true, - 30288: true, - 30289: true, - 30290: true, - 30291: true, - 30292: true, - 30293: true, - 30294: true, - 30295: true, - 30296: true, - 30297: true, - 30298: true, - 30299: true, - 30300: true, - 30301: true, - 30302: true, - 30303: true, - 30304: true, - 30305: true, - 30306: true, - 30307: true, - 30308: true, - 30309: true, - 30310: true, - 30311: true, - 30312: true, - 30313: true, - 30314: true, - 30315: true, - 30316: true, - 30317: true, - 30318: true, - 30319: true, - 30320: true, - 30321: true, - 30322: true, - 30323: true, - 30324: true, - 30325: true, - 30326: true, - 30327: true, - 30328: true, - 30329: true, - 30330: true, - 30331: true, - 30332: true, - 30333: true, - 30337: true, - 30339: true, - 30340: true, - 30341: true, - 30342: true, - 30343: true, - 30344: true, - 30345: true, - 30346: true, - 30347: true, - 30348: true, - 30349: true, - 30350: true, - 30351: true, - 30352: true, - 30353: true, - 30354: true, - 30355: true, - 30356: true, - 30357: true, - 30358: true, - 30359: true, - 30360: true, - 30361: true, - 30362: true, - 30363: true, - 30364: true, - 30365: true, - 30366: true, - 30369: true, - 30371: true, - 30372: true, - 30373: true, - 30374: true, - 30375: true, - 30376: true, - 30377: true, - 30378: true, - 30379: true, - 30380: true, - 30381: true, - 30382: true, - 30383: true, - 30384: true, - 30385: true, - 30386: true, - 30387: true, - 30388: true, - 30389: true, - 30390: true, - 30391: true, - 30392: true, - 30393: true, - 30394: true, - 30395: true, - 30396: true, - 30397: true, - 30398: true, - 30399: true, - 30400: true, - 30401: true, - 30402: true, - 30403: true, - 30404: true, - 30405: true, - 30406: true, - 30407: true, - 30408: true, - 30409: true, - 30410: true, - 30411: true, - 30412: true, - 30413: true, - 30414: true, - 30415: true, - 30416: true, - 30417: true, - 30418: true, - 30419: true, - 30420: true, - 30421: false, - 30422: true, - 30423: true, - 30424: true, - 30425: true, - 30426: true, - 30427: true, - 30428: true, - 30429: true, - 30430: true, - 30431: true, - 30432: true, - 30433: true, - 30434: true, - 30435: true, - 30436: true, - 30437: true, - 30438: true, - 30439: true, - 30440: true, - 30441: true, - 30442: true, - 30443: true, - 30444: true, - 30445: true, - 30446: true, - 30447: true, - 30448: true, - 30449: true, - 30450: true, - 30451: true, - 30452: true, - 30453: true, - 30454: true, - 30455: true, - 30456: true, - 30457: true, - 30458: true, - 30459: true, - 30460: true, - 30461: true, - 30462: true, - 30463: true, - 30464: true, - 30465: true, - 30466: true, - 30467: true, - 30468: true, - 30469: true, - 30470: true, - 30471: true, - 30472: true, - 30473: true, - 30474: true, - 30475: true, - 30476: true, - 30477: true, - 30478: true, - 30479: true, - 30480: true, - 30481: true, - 30482: true, - 30489: true, - 30490: true, - 30491: true, - 30492: true, - 30493: true, - 30500: true, - 30501: true, - 30502: true, - 30503: true, - 30509: true, - 30510: true, - 30513: true, - 30514: true, - 30515: true, - 30516: true, - 30517: true, - 30518: true, - 30519: true, - 30520: true, - 30521: true, - 30522: true, - 30523: true, - 30524: true, - 30525: true, - 30526: true, - 30527: true, - 30528: true, - 30532: true, - 30533: true, - 30534: true, - 30535: true, - 30536: true, - 30537: true, - 30538: true, - 30539: true, - 30540: true, - 30541: true, - 30542: true, - 30543: true, - 30544: true, - 30545: true, - 30546: true, - 30547: true, - 30548: true, - 30549: true, - 30550: true, - 30551: true, - 30552: true, - 30553: true, - 30554: true, - 30555: true, - 30556: true, - 30557: true, - 30558: true, - 30559: true, - 30560: true, - 30561: true, - 30562: true, - 30563: true, - 30564: true, - 30565: true, - 30566: true, - 30567: true, - 30568: true, - 30569: true, - 30570: true, - 30571: true, - 30572: true, - 30573: true, - 30574: true, - 30575: true, - 30576: true, - 30577: true, - 30578: true, - 30579: true, - 30580: true, - 30581: true, - 30582: true, - 30583: true, - 30584: true, - 30585: true, - 30586: true, - 30587: true, - 30588: true, - 30589: true, - 30590: true, - 30591: true, - 30593: true, - 30594: true, - 30595: true, - 30596: true, - 30597: true, - 30598: true, - 30599: true, - 30600: true, - 30601: true, - 30602: true, - 30603: true, - 30604: true, - 30605: true, - 30607: true, - 30608: true, - 30609: true, - 30610: true, - 30611: true, - 30612: true, - 30613: true, - 30614: true, - 30615: true, - 30616: true, - 30617: true, - 30618: true, - 30619: true, - 30620: true, - 30621: true, - 30622: true, - 30623: true, - 30624: true, - 30625: true, - 30626: true, - 30627: true, - 30628: true, - 30629: true, - 30630: true, - 30631: true, - 30632: true, - 30633: true, - 30634: true, - 30635: true, - 30636: true, - 30637: true, - 30638: true, - 30639: true, - 30640: true, - 30641: true, - 30642: true, - 30643: true, - 30644: true, - 30645: true, - 30646: true, - 30647: true, - 30649: true, - 30650: true, - 30651: true, - 30652: true, - 30653: true, - 30654: true, - 30655: true, - 30656: true, - 30657: true, - 30658: true, - 30659: true, - 30660: true, - 30661: true, - 30662: true, - 30663: true, - 30664: true, - 30665: true, - 30666: true, - 30667: true, - 30668: true, - 30669: true, - 30670: true, - 30671: true, - 30672: true, - 30673: true, - 30674: true, - 30675: true, - 30676: true, - 30677: true, - 30678: true, - 30679: true, - 30680: true, - 30681: true, - 30682: true, - 30683: true, - 30684: true, - 30686: true, - 30687: true, - 30688: true, - 30689: true, - 30690: true, - 30691: true, - 30692: true, - 30693: true, - 30694: true, - 30695: true, - 30696: true, - 30697: true, - 30698: true, - 30699: true, - 30700: true, - 30975: true, - 30976: true, - 30977: true, - 30978: true, - 30979: true, - 30980: true, - 30981: true, - 30982: true, - 30983: true, - 30984: true, - 30985: true, - 30986: true, - 30987: true, - 30988: true, - 30989: true, - 30990: true, - 30991: true, - 30992: true, - 30995: true, - 30997: true, - 30998: true, - 30999: true, - 31000: true, - 31001: true, - 31002: true, - 31003: true, - 31004: true, - 31005: true, - 31006: true, - 31007: true, - 31008: true, - 31009: true, - 31010: true, - 31011: true, - 31012: true, - 31013: true, - 31014: true, - 31015: true, - 31016: true, - 31017: true, - 31018: true, - 31019: true, - 31020: true, - 31021: true, - 31022: true, - 31023: true, - 31024: true, - 31025: true, - 31026: true, - 31027: true, - 31028: true, - 31029: true, - 31030: true, - 31170: true, - 31171: true, - 31172: true, - 31174: true, - 31175: true, - 31176: true, - 31178: true, - 31179: true, - 31180: true, - 31181: true, - 31182: true, - 31183: true, - 31184: true, - 31185: true, - 31186: true, - 31187: true, - 31188: true, - 31189: true, - 31190: true, - 31191: true, - 31192: true, - 31193: true, - 31194: true, - 31195: true, - 31196: true, - 31197: true, - 31198: true, - 31199: true, - 31200: true, - 31201: true, - 31202: true, - 31203: true, - 31204: true, - 31205: true, - 31206: true, - 31207: true, - 31208: true, - 31209: true, - 31210: true, - 31211: true, - 31212: true, - 31213: true, - 31214: true, - 31215: true, - 31216: true, - 31218: true, - 31219: true, - 31220: true, - 31221: true, - 31222: true, - 31223: true, - 31224: true, - 31225: true, - 31226: true, - 31227: true, - 31228: true, - 31230: true, - 31231: true, - 31232: true, - 31233: true, - 31234: true, - 31235: true, - 31236: true, - 31237: true, - 31238: true, - 31239: true, - 31240: true, - 31241: true, - 31242: true, - 31243: true, - 31244: true, - 31245: true, - 31246: true, - 31247: true, - 31248: true, - 31249: true, - 31250: true, - 31251: true, - 31252: true, - 31253: true, - 31254: true, - 31255: true, - 31256: true, - 31257: true, - 31258: true, - 31259: true, - 31260: true, - 31261: true, - 31262: true, - 31263: true, - 31264: true, - 31265: true, - 31459: true, - 31460: true, - 31461: true, - 31860: true, - 31863: true, - 31865: true, - 31866: true, - 31867: true, - 31868: true, - 31870: true, - 31982: true, - 31985: true, - 31986: true, - 31987: true, - 31988: true, - 32000: true, - 32001: true, - 32006: true, - 32007: true, - 32008: true, - 32009: true, - 32010: true, - 32011: true, - 32012: true, - 32013: true, - 32014: true, - 32015: true, - 32016: true, - 32017: true, - 32019: true, - 32020: true, - 32021: true, - 32022: true, - 32023: true, - 32026: true, - 32027: true, - 32028: true, - 32029: true, - 32030: true, - 32031: true, - 32032: true, - 32033: true, - 32034: true, - 32035: true, - 32036: true, - 32037: true, - 32038: true, - 32039: true, - 32040: true, - 32041: true, - 32042: true, - 32043: true, - 32044: true, - 32045: true, - 32046: true, - 32047: true, - 32048: true, - 32049: true, - 32050: true, - 32051: true, - 32052: true, - 32053: true, - 32054: true, - 32055: true, - 32056: true, - 32057: true, - 32058: true, - 32059: true, - 32060: true, - 32061: true, - 32062: true, - 32063: true, - 32064: true, - 32065: true, - 32066: true, - 32067: true, - 32068: true, - 32069: true, - 32070: true, - 32071: true, - 32072: true, - 32073: true, - 32074: true, - 32075: true, - 32076: true, - 32077: true, - 32078: true, - 32079: true, - 32080: true, - 32081: true, - 32082: true, - 32084: true, - 32085: true, - 32086: true, - 32087: true, - 32088: true, - 32089: true, - 32090: true, - 32091: true, - 32092: true, - 32093: true, - 32094: true, - 32095: true, - 32096: true, - 32097: true, - 32098: true, - 32099: true, - 32100: true, - 32101: true, - 32102: true, - 32103: true, - 32104: true, - 32105: true, - 32106: true, - 32107: true, - 32108: true, - 32109: true, - 32110: true, - 32111: true, - 32112: true, - 32113: true, - 32114: true, - 32115: true, - 32116: true, - 32117: true, - 32118: true, - 32120: true, - 32121: true, - 32122: true, - 32123: true, - 32124: true, - 32126: true, - 32128: true, - 32129: true, - 32131: true, - 32132: true, - 32133: true, - 32134: true, - 32135: true, - 32137: true, - 32138: true, - 32139: true, - 32140: true, - 32141: true, - 32142: true, - 32143: true, - 32144: true, - 32145: true, - 32146: true, - 32147: true, - 32148: true, - 32149: true, - 32150: true, - 32151: true, - 32152: true, - 32153: true, - 32154: true, - 32156: true, - 32157: true, - 32158: true, - 32159: true, - 32160: true, - 32161: true, - 32162: true, - 32163: true, - 32164: true, - 32166: true, - 32167: true, - 32168: true, - 32170: true, - 32172: true, - 32173: true, - 32175: true, - 32176: true, - 32177: true, - 32178: true, - 32179: true, - 32180: true, - 32181: true, - 32182: true, - 32183: true, - 32185: true, - 32186: true, - 32187: true, - 32188: true, - 32189: true, - 32190: true, - 32192: true, - 32193: true, - 32194: true, - 32195: true, - 32196: true, - 32197: true, - 32198: true, - 32199: true, - 32200: true, - 32201: true, - 32202: true, - 32203: true, - 32204: true, - 32206: true, - 32208: true, - 32209: true, - 32210: true, - 32211: true, - 32212: true, - 32213: true, - 32214: true, - 32215: true, - 32216: true, - 32217: true, - 32218: true, - 32219: true, - 32220: true, - 32221: true, - 32222: true, - 32223: true, - 32224: true, - 32225: true, - 32226: true, - 32229: true, - 32230: true, - 32231: true, - 32232: true, - 32233: true, - 32234: true, - 32235: true, - 32236: true, - 32237: true, - 32238: true, - 32239: true, - 32240: true, - 32241: true, - 32242: true, - 32243: true, - 32244: true, - 32245: true, - 32246: true, - 32247: true, - 32248: true, - 32249: true, - 32250: true, - 32251: true, - 32252: true, - 32253: true, - 32254: true, - 32255: true, - 32256: true, - 32257: true, - 32258: true, - 32259: true, - 32260: true, - 32261: true, - 32262: true, - 32263: true, - 32264: true, - 32265: true, - 32266: true, - 32267: true, - 32268: true, - 32269: true, - 32270: true, - 32271: true, - 32272: true, - 32282: true, - 32283: true, - 32284: true, - 32285: true, - 32286: true, - 32287: true, - 32288: true, - 32289: true, - 32290: true, - 32291: true, - 32292: true, - 32293: true, - 32294: true, - 32295: true, - 32296: true, - 32297: true, - 32298: true, - 32299: true, - 32300: true, - 32301: true, - 32302: true, - 32303: true, - 32304: true, - 32305: true, - 32309: true, - 32310: true, - 32311: true, - 32312: true, - 32313: true, - 32316: true, - 32317: true, - 32318: true, - 32319: true, - 32320: true, - 32321: true, - 32322: true, - 32323: true, - 32324: true, - 32325: true, - 32326: true, - 32327: true, - 32328: true, - 32329: true, - 32330: true, - 32331: true, - 32332: true, - 32333: true, - 32334: true, - 32335: true, - 32336: true, - 32337: true, - 32338: true, - 32339: true, - 32340: true, - 32341: true, - 32342: true, - 32343: true, - 32344: true, - 32345: true, - 32346: true, - 32347: true, - 32348: true, - 32349: true, - 32350: true, - 32351: true, - 32352: true, - 32353: true, - 32354: true, - 32355: true, - 32356: true, - 32357: true, - 32358: true, - 32359: true, - 32360: true, - 32361: true, - 32362: true, - 32363: true, - 32364: true, - 32365: true, - 32366: true, - 32367: true, - 32368: true, - 32369: true, - 32371: true, - 32372: true, - 32373: true, - 32374: true, - 32375: true, - 32380: true, - 32381: true, - 32382: true, - 32383: true, - 32385: true, - 32386: true, - 32387: true, - 32390: true, - 32391: true, - 32392: true, - 32398: true, - 32421: true, - 32423: true, - 32630: true, - 32657: true, - 32667: true, - 32679: true, - 32680: true, - 32688: true, - 32986: true, - 32987: true, - 32998: true, - 33016: true, - 33017: true, - 33018: true, - 33020: true, - 33029: true, - 33044: true, - 33047: true, - 33049: true, - 33050: true, - 33051: true, - 33053: true, - 33054: true, - 33056: true, - 33071: true, - 33072: true, - 33073: true, - 33074: true, - 33075: true, - 33076: true, - 33077: true, - 33078: true, - 33079: true, - 33080: true, - 33081: true, - 33082: true, - 33083: true, - 33084: true, - 33086: true, - 33087: true, - 33089: true, - 33090: true, - 33091: true, - 33092: true, - 33093: true, - 33094: true, - 33095: true, - 33096: true, - 33098: true, - 33099: true, - 33100: true, - 33101: true, - 33102: true, - 33103: true, - 33104: true, - 33106: true, - 33107: true, - 33108: true, - 33113: true, - 33114: true, - 33115: true, - 33116: true, - 33117: true, - 33118: true, - 33119: true, - 33120: true, - 33121: true, - 33122: true, - 33123: true, - 33124: true, - 33125: true, - 33126: true, - 33127: true, - 33128: true, - 33129: true, - 33137: true, - 33138: true, - 33139: true, - 33197: true, - 33198: true, - 33199: true, - 33200: true, - 33201: true, - 33205: true, - 33206: true, - 33207: true, - 33208: true, - 33209: true, - 33210: true, - 33211: true, - 33212: true, - 33213: true, - 33215: true, - 33216: true, - 33217: true, - 33218: true, - 33219: true, - 33220: true, - 33221: true, - 33222: true, - 33223: true, - 33224: true, - 33225: true, - 33226: true, - 33228: true, - 33229: true, - 33230: true, - 33231: true, - 33232: true, - 33233: true, - 33234: true, - 33235: true, - 33236: true, - 33237: true, - 33238: true, - 33239: true, - 33240: true, - 33241: true, - 33242: true, - 33243: true, - 33244: true, - 33245: true, - 33246: true, - 33247: true, - 33248: true, - 33249: true, - 33250: true, - 33251: true, - 33253: true, - 33254: true, - 33255: true, - 33256: true, - 33257: true, - 33258: true, - 33259: true, - 33260: true, - 33261: true, - 33262: true, - 33263: true, - 33264: true, - 33265: true, - 33266: true, - 33267: true, - 33268: true, - 33269: true, - 33270: true, - 33271: true, - 33272: true, - 33273: true, - 33274: true, - 33275: true, - 33276: true, - 33277: true, - 33278: true, - 33377: true, - 33378: true, - 33464: true, - 33466: true, - 33467: true, - 33468: true, - 33469: true, - 33470: true, - 33471: true, - 33472: true, - 33473: true, - 33474: true, - 33492: true, - 33493: true, - 33494: true, - 33495: true, - 33496: true, - 33497: true, - 33498: true, - 33499: true, - 33500: true, - 33501: true, - 33502: true, - 33503: true, - 33505: true, - 33506: true, - 33507: true, - 33509: true, - 33511: true, - 33512: true, - 33513: true, - 33514: true, - 33515: true, - 33516: true, - 33517: true, - 33518: true, - 33519: true, - 33520: true, - 33522: true, - 33523: true, - 33524: true, - 33525: true, - 33526: true, - 33527: true, - 33529: true, - 33531: true, - 33532: true, - 33533: true, - 33534: true, - 33535: true, - 33536: true, - 33537: true, - 33539: true, - 33540: true, - 33541: true, - 33542: true, - 33543: true, - 33544: true, - 33545: true, - 33546: true, - 33547: true, - 33549: true, - 33550: true, - 33551: true, - 33552: true, - 33553: true, - 33554: true, - 33556: true, - 33557: true, - 33558: true, - 33560: true, - 33561: true, - 33562: true, - 33563: true, - 33564: true, - 33565: true, - 33566: true, - 33567: true, - 33568: true, - 33569: true, - 33570: true, - 33571: true, - 33572: true, - 33573: true, - 33575: true, - 33577: true, - 33578: true, - 33579: true, - 33580: true, - 33581: true, - 33582: true, - 33583: true, - 33584: true, - 33585: true, - 33586: true, - 33587: true, - 33588: true, - 33589: true, - 33590: true, - 33591: true, - 33592: true, - 33593: true, - 33595: true, - 33596: true, - 33597: true, - 33598: true, - 33599: true, - 33600: true, - 33601: true, - 33604: true, - 33605: true, - 33606: true, - 33607: true, - 33615: true, - 33617: true, - 33618: true, - 33619: true, - 33620: true, - 33621: true, - 33622: true, - 33623: true, - 33624: true, - 33625: true, - 33626: true, - 33627: true, - 33678: true, - 33679: true, - 33694: true, - 33702: true, - 33708: true, - 33713: true, - 33718: true, - 33719: true, - 33720: true, - 33721: true, - 33722: true, - 33723: true, - 33724: true, - 33725: true, - 33726: true, - 33727: true, - 33728: true, - 33729: true, - 33730: true, - 33731: true, - 33732: true, - 33733: true, - 33734: true, - 33735: true, - 33736: true, - 33737: true, - 33738: true, - 33739: true, - 33740: true, - 33741: true, - 33742: true, - 33743: true, - 33744: true, - 33745: true, - 33746: true, - 33747: true, - 33748: true, - 33749: true, - 33750: true, - 33751: true, - 33764: true, - 33765: true, - 33766: true, - 33767: true, - 33768: true, - 33769: true, - 33770: true, - 33771: true, - 33811: true, - 33812: true, - 33813: true, - 33814: true, - 33818: true, - 33824: true, - 33825: true, - 33826: true, - 33847: true, - 33848: true, - 33849: true, - 33850: true, - 33851: true, - 33852: true, - 33853: true, - 33854: true, - 33855: true, - 33856: true, - 33857: true, - 33858: true, - 33859: true, - 33860: true, - 33887: true, - 33888: true, - 33890: true, - 33891: true, - 33892: true, - 33893: true, - 33894: true, - 33896: true, - 33897: true, - 33898: true, - 33899: true, - 33901: true, - 33902: true, - 33903: true, - 33905: true, - 33930: true, - 33932: true, - 33933: true, - 33935: true, - 33936: true, - 33937: true, - 33938: true, - 33939: true, - 33940: true, - 33941: true, - 33942: true, - 33943: true, - 33944: true, - 33945: true, - 33946: true, - 33951: true, - 33952: true, - 33953: true, - 33954: true, - 33957: true, - 33958: true, - 33959: true, - 33960: true, - 33962: true, - 33963: true, - 33964: true, - 33965: true, - 33966: true, - 33967: true, - 33968: true, - 33969: true, - 33970: true, - 33986: true, - 33987: true, - 33988: true, - 33989: true, - 33990: true, - 33994: true, - 33995: true, - 33996: true, - 33999: true, - 34002: true, - 34004: true, - 34005: true, - 34006: true, - 34012: true, - 34022: true, - 34030: true, - 34035: true, - 34036: true, - 34037: true, - 34038: true, - 34039: true, - 34040: true, - 34041: true, - 34042: true, - 34043: true, - 34044: true, - 34046: true, - 34047: true, - 34048: true, - 34052: true, - 34053: true, - 34054: true, - 34055: true, - 34060: true, - 34063: true, - 34068: true, - 34069: true, - 34071: true, - 34072: true, - 34073: true, - 34074: true, - 34075: true, - 34079: true, - 34080: true, - 34081: true, - 34082: true, - 34083: true, - 34084: true, - 34085: true, - 34182: true, - 34183: true, - 34184: true, - 34185: true, - 34186: true, - 34187: true, - 34188: true, - 34189: true, - 34190: true, - 34191: true, - 34192: true, - 34193: true, - 34194: true, - 34195: true, - 34196: true, - 34197: true, - 34198: true, - 34199: true, - 34200: true, - 34201: true, - 34202: true, - 34203: true, - 34206: true, - 34207: true, - 34208: true, - 34209: true, - 34210: true, - 34211: true, - 34212: true, - 34213: true, - 34214: true, - 34215: true, - 34216: true, - 34217: true, - 34218: true, - 34219: true, - 34220: true, - 34221: true, - 34222: true, - 34223: true, - 34224: true, - 34286: true, - 34287: true, - 34288: true, - 34289: true, - 34290: true, - 34291: true, - 34292: true, - 34293: true, - 34294: true, - 34295: true, - 34296: true, - 34297: true, - 34298: true, - 34299: true, - 34300: true, - 34301: true, - 34303: true, - 34327: true, - 34328: true, - 34329: true, - 34330: true, - 34331: true, - 34332: true, - 34333: true, - 34334: true, - 34335: true, - 34336: true, - 34341: true, - 34342: true, - 34343: true, - 34344: true, - 34345: true, - 34346: true, - 34347: true, - 34348: true, - 34349: true, - 34350: true, - 34351: true, - 34352: true, - 34354: true, - 34355: true, - 34356: true, - 34357: true, - 34358: true, - 34360: true, - 34361: true, - 34362: true, - 34366: true, - 34367: true, - 34368: true, - 34380: true, - 34381: true, - 34382: true, - 34384: true, - 34385: true, - 34386: true, - 34387: true, - 34388: true, - 34396: true, - 34397: true, - 34398: true, - 34399: true, - 34400: true, - 34401: true, - 34402: true, - 34405: true, - 34406: true, - 34407: true, - 34408: true, - 34409: true, - 34410: true, - 34411: true, - 34412: true, - 34413: true, - 34414: true, - 34415: true, - 34416: true, - 34417: true, - 34418: true, - 34419: true, - 34420: true, - 34421: true, - 34422: true, - 34423: true, - 34424: true, - 34425: true, - 34426: true, - 34427: true, - 34428: true, - 34429: true, - 34430: true, - 34433: true, - 34434: true, - 34435: true, - 34446: true, - 34447: true, - 34448: true, - 34449: true, - 34450: false, - 34451: true, - 34452: true, - 34455: true, - 34456: true, - 34457: true, - 34458: true, - 34459: true, - 34460: true, - 34461: true, - 34462: true, - 34463: true, - 34464: true, - 34465: true, - 34466: true, - 34467: true, - 34468: true, - 34471: true, - 34475: true, - 34476: true, - 34477: true, - 34478: true, - 34479: true, - 34480: true, - 34481: true, - 34482: true, - 34483: true, - 34484: true, - 34485: true, - 34486: true, - 34487: true, - 34488: true, - 34489: true, - 34490: true, - 34491: true, - 34492: true, - 34507: true, - 34508: true, - 34515: true, - 34516: true, - 34517: true, - 34518: true, - 34519: true, - 34520: true, - 34521: true, - 34522: true, - 34523: true, - 34524: true, - 34527: true, - 34528: true, - 34567: true, - 34569: true, - 34570: true, - 34571: true, - 34572: true, - 34573: true, - 34574: true, - 34575: true, - 34576: true, - 34577: true, - 34587: true, - 34589: true, - 34590: true, - 34591: true, - 34592: true, - 34594: true, - 34597: true, - 34598: true, - 34599: true, - 34600: true, - 34601: true, - 34602: true, - 34603: true, - 34605: true, - 34606: true, - 34607: true, - 34608: true, - 34609: true, - 34610: true, - 34614: true, - 34615: true, - 34625: true, - 34626: true, - 34630: true, - 34631: true, - 34632: true, - 34633: true, - 34634: true, - 34636: true, - 34637: true, - 34640: true, - 34641: true, - 34642: true, - 34643: true, - 34644: true, - 34645: true, - 34646: true, - 34647: true, - 34648: true, - 34649: true, - 34650: true, - 34651: true, - 34652: true, - 34653: true, - 34654: true, - 34655: true, - 34657: true, - 34658: true, - 34659: true, - 34660: true, - 34662: true, - 34663: true, - 34664: true, - 34665: true, - 34666: true, - 34667: true, - 34668: true, - 34669: true, - 34670: true, - 34671: true, - 34672: true, - 34673: true, - 34675: true, - 34676: true, - 34677: true, - 34678: true, - 34679: true, - 34685: true, - 34686: true, - 34687: true, - 34688: true, - 34689: true, - 34690: true, - 34691: true, - 34692: true, - 34693: true, - 34694: true, - 34695: true, - 34696: true, - 34697: true, - 34699: true, - 34700: true, - 34701: true, - 34702: true, - 34703: true, - 34704: true, - 34705: true, - 34706: true, - 34707: true, - 34708: true, - 34710: true, - 34711: true, - 34712: true, - 34713: true, - 34714: true, - 34715: true, - 34716: true, - 34717: true, - 34718: true, - 34719: true, - 34720: true, - 34721: true, - 34722: true, - 34723: true, - 34724: true, - 34725: true, - 34726: true, - 34727: true, - 34728: true, - 34729: true, - 34730: true, - 34731: true, - 34732: true, - 34733: true, - 34734: true, - 34735: true, - 34736: true, - 34738: true, - 34739: true, - 34740: true, - 34741: true, - 34742: true, - 34743: true, - 34744: true, - 34745: true, - 34746: true, - 34747: true, - 34748: true, - 34749: true, - 34750: true, - 34751: true, - 34752: true, - 34753: true, - 34754: true, - 34805: true, - 34806: true, - 34807: true, - 34808: true, - 34809: true, - 34810: true, - 34811: true, - 34812: true, - 34813: true, - 34814: true, - 34815: true, - 34816: true, - 34817: true, - 34819: true, - 34820: true, - 34821: true, - 34822: true, - 34825: true, - 34826: true, - 34827: true, - 34828: true, - 34829: true, - 34830: true, - 34831: true, - 34837: true, - 34838: true, - 34839: true, - 34844: true, - 34873: true, - 34874: true, - 34878: true, - 34910: true, - 34912: true, - 34913: true, - 34914: true, - 34978: true, - 34982: true, - 34983: true, - 34984: true, - 34985: true, - 34986: true, - 34987: true, - 34998: true, - 35212: true, - 35213: true, - 35214: true, - 35215: true, - 35220: true, - 35221: true, - 35222: true, - 35223: true, - 35224: true, - 35225: true, - 35226: true, - 35227: true, - 35228: true, - 35229: true, - 35230: true, - 35232: true, - 35233: true, - 35234: true, - 35235: true, - 35236: true, - 35237: true, - 35242: true, - 35243: true, - 35245: true, - 35246: true, - 35247: true, - 35249: true, - 35250: true, - 35252: true, - 35253: true, - 35254: true, - 35255: true, - 35256: true, - 35257: true, - 35258: true, - 35259: true, - 35260: true, - 35261: true, - 35262: true, - 35263: true, - 35264: true, - 35265: true, - 35266: true, - 35267: true, - 35268: true, - 35269: true, - 35270: true, - 35271: true, - 35272: true, - 35273: true, - 35274: true, - 35275: true, - 35276: true, - 35277: true, - 35278: true, - 35279: true, - 35280: true, - 35281: true, - 35282: true, - 35283: true, - 35284: true, - 35285: true, - 35287: true, - 35288: true, - 35289: true, - 35290: true, - 35291: true, - 35292: true, - 35293: true, - 35294: true, - 35295: true, - 35296: true, - 35297: true, - 35298: true, - 35299: true, - 35300: true, - 35301: true, - 35302: true, - 35303: true, - 35304: true, - 35305: true, - 35306: true, - 35307: true, - 35308: true, - 35309: true, - 35310: true, - 35311: true, - 35312: true, - 35313: true, - 35315: true, - 35316: true, - 35317: true, - 35318: true, - 35327: true, - 35328: true, - 35329: true, - 35330: true, - 35331: true, - 35332: true, - 35333: true, - 35334: true, - 35335: true, - 35336: true, - 35337: true, - 35338: true, - 35339: true, - 35340: true, - 35341: true, - 35342: true, - 35343: true, - 35344: true, - 35345: true, - 35346: true, - 35347: true, - 35348: true, - 35349: true, - 35350: true, - 35351: true, - 35352: true, - 35353: true, - 35434: true, - 35435: true, - 35436: true, - 35437: true, - 35438: true, - 35439: true, - 35440: true, - 35441: true, - 35442: true, - 35443: true, - 35445: true, - 35446: true, - 35450: true, - 35451: true, - 35452: true, - 35453: true, - 35456: true, - 35457: true, - 35461: true, - 35462: true, - 35463: true, - 35466: true, - 35468: true, - 35470: true, - 35471: true, - 35472: true, - 35473: true, - 35474: true, - 35475: true, - 35476: true, - 35477: true, - 35478: true, - 35479: true, - 35480: true, - 35481: true, - 35482: true, - 35483: true, - 35484: true, - 35485: true, - 35486: true, - 35488: true, - 35489: true, - 35490: true, - 35491: true, - 35492: true, - 35493: true, - 35494: true, - 35495: true, - 35496: true, - 35497: true, - 35498: true, - 35499: true, - 35500: true, - 35501: true, - 35502: true, - 35503: true, - 35504: true, - 35506: true, - 35507: true, - 35508: true, - 35509: true, - 35510: true, - 35511: true, - 35512: true, - 35539: true, - 35540: true, - 35541: true, - 35542: true, - 35543: true, - 35599: true, - 35600: true, - 35601: true, - 35602: true, - 35603: true, - 35604: true, - 35605: true, - 35606: true, - 35607: true, - 35608: true, - 35609: true, - 35615: true, - 35616: true, - 35617: true, - 35618: true, - 35619: true, - 35620: true, - 35621: true, - 35622: true, - 35623: true, - 35624: true, - 35625: true, - 35626: true, - 35684: true, - 35685: true, - 35686: true, - 35689: true, - 35690: true, - 35691: true, - 35692: true, - 35693: true, - 35694: true, - 35695: true, - 35696: true, - 35697: true, - 35698: true, - 35699: true, - 35704: true, - 35705: true, - 35706: true, - 35707: true, - 35708: true, - 35709: true, - 35711: true, - 35712: true, - 35713: true, - 35795: true, - 35796: true, - 35797: true, - 35798: true, - 35799: true, - 35800: true, - 35801: true, - 35802: true, - 35803: true, - 35804: true, - 35805: true, - 35806: true, - 35807: true, - 35808: true, - 35809: true, - 35811: true, - 35812: true, - 35814: true, - 35815: true, - 35816: true, - 35817: true, - 35818: true, - 35819: true, - 36416: true, - 36417: true, - 36418: true, - 36424: true, - 36433: true, - 36434: true, - 36437: true, - 36442: true, - 36443: true, - 36445: true, - 36446: true, - 36447: true, - 36448: true, - 36449: true, - 36450: true, - 36451: true, - 36452: true, - 36453: true, - 36454: true, - 36455: true, - 36456: true, - 36459: true, - 36460: true, - 36470: true, - 36471: true, - 36472: true, - 36473: true, - 36474: true, - 36475: true, - 36476: true, - 36477: true, - 36478: true, - 36479: true, - 36480: true, - 36481: true, - 36482: true, - 36483: true, - 36484: true, - 36485: true, - 36486: true, - 36487: true, - 36488: true, - 36489: true, - 36490: true, - 36491: true, - 36493: true, - 36494: true, - 36495: true, - 36496: true, - 36497: true, - 36498: true, - 36500: true, - 36501: true, - 36504: true, - 36505: true, - 36506: true, - 36507: true, - 36508: true, - 36509: true, - 36510: true, - 36511: true, - 36512: true, - 36513: true, - 36514: true, - 36515: true, - 36516: true, - 36517: true, - 36518: true, - 36525: true, - 36526: true, - 36527: true, - 36528: true, - 36529: true, - 36530: true, - 36531: true, - 36532: true, - 36533: true, - 36534: true, - 36535: true, - 36536: true, - 36537: true, - 36538: true, - 36539: true, - 36540: true, - 36541: true, - 36542: true, - 36543: true, - 36544: true, - 36545: true, - 36546: true, - 36547: true, - 36548: true, -} - // UpdateSkuStock // 1、支持修改普通库存,区域库存,阶梯库存 // 2、支持增量更新,当incremental=true时idempotent_id字段参数必传。例:原商品库存是10个,接口传入5个,执行成功商品库存是15个。 @@ -7826,7 +119,6 @@ func (a *API) GetCatePropertyV2(categoryLeftId int64) (*product_getCatePropertyV func (a *API) CreateStoreCommodity(skuParam *product_addV2_request.ProductAddV2Param) (*product_addV2_response.ProductAddV2Data, error) { request := product_addV2_request.New() request.Param = skuParam - globals.SugarLogger.Debugf("=========CreateStoreCommodity %s", utils.Format4Output(skuParam, false)) result, err := request.Execute(a.accessTokenObj) if err != nil { globals.SugarLogger.Debugf("======CreateStoreCommodity logid: %s,%d", result.LogId, skuParam.MainProductId) @@ -8106,18 +398,6 @@ func (a *API) OrderUserInfoSensitive(orderId, name, tel, address string) { // GetProductUpdateRule 查询分类是否支持七天无理由退货 func (a *API) GetProductUpdateRule(categoryId int64) bool { - if categoryId < 25000 { - _, ok := CategoryIsSupplyDayReturnRule2w[categoryId] - return ok - } - if 25000 <= categoryId && categoryId < 30000 { - _, ok := CategoryIsSupplyDayReturnRule25w[categoryId] - return ok - } - if categoryId >= 30000 { - _, ok := CategoryIsSupplyDayReturnRule3w[categoryId] - return ok - } request := product_getProductUpdateRule_request.New() param := request.GetParams() param.CategoryId = categoryId @@ -8220,3 +500,69 @@ func (a *API) GetRecommendCategory(picParams []string) int64 { } return 0 } + +/*--------------------------------方案二 将住上铺平铺到所有门店店中,不在使用子商品------------------------------------------------------------------------------------*/ + +// CreateSubProduct 基于店铺主品创建门店子品 (同步创建) +func (a *API) CreateSubProduct(mainProductId int64, storeId int64) (int64, error) { + request := superm_product_createSubProduct_request.New() + request.Param.MainProductId = mainProductId + request.Param.StoreId = storeId + + result, err := request.Execute(a.accessTokenObj) + if err != nil { + return 0, err + } + + if result.Code != CallbackSuccessCode { + return 0, errors.New(result.SubMsg) + } + + return result.Data.SubProductId, nil +} + +// BatchRedistributeStoreProduct 重新分配店铺主品对应的门店子品 (异步执行) +func (a *API) BatchRedistributeStoreProduct(param *superm_product_batchRedistributeStoreProduct_request.TaskParams) (int64, error) { + request := superm_product_batchRedistributeStoreProduct_request.New() + request.Param.TaskParams = param + + result, err := request.Execute(a.accessTokenObj) + if err != nil { + return 0, err + } + if result.Code != RequestSuccessCode { + return 0, err + } + + return result.Data.RootTaskId, nil +} + +// BatchApplyStoreProductPrice 同步主商品价格到子商品 +func (a *API) BatchApplyStoreProductPrice(mainProductId int64) (int64, error) { + request := superm_product_batchApplyStoreProductPrice_request.New() + request.Param.TaskParams.MainProductId = mainProductId + + result, err := request.Execute(a.accessTokenObj) + if err != nil { + return 0, err + } + if result.Code != RequestSuccessCode { + return 0, errors.New(result.SubMsg) + } + + return result.Data.RootTaskId, nil +} + +// LaunchProduct 上架商品 ,支持主商品和子商品上架 +func (a *API) LaunchProduct(productId int64) error { + request := superm_product_launchProduct_request.New() + request.Param.ProductId = productId + result, err := request.Execute(a.accessTokenObj) + if err != nil { + return err + } + if result.Code != RequestSuccessCode { + return errors.New(result.SubMsg) + } + return nil +} diff --git a/platformapi/tiktok_shop/tiktok_api/sku_test.go b/platformapi/tiktok_shop/tiktok_api/sku_test.go index 2a0bc36e..77e47f8e 100644 --- a/platformapi/tiktok_shop/tiktok_api/sku_test.go +++ b/platformapi/tiktok_shop/tiktok_api/sku_test.go @@ -30,7 +30,7 @@ func init() { } func TestCategory(t *testing.T) { - data, err := a.GetShopCategory(0) + data, err := a.GetShopCategory(20314) for _, v := range data { fmt.Println(v.Id, "---", v.Name, "---", v.IsLeaf, "---", v.Level) } @@ -224,8 +224,9 @@ func TestInt16(t *testing.T) { // 查询商品详情(抖音平台id) func TestGetSkuDetail(t *testing.T) { - data, err := a.GetSkuDetail("3580251132888538614", "") + data, err := a.GetSkuDetailLocalID("", "30204") fmt.Println(err) + // 3582171870197365727 3582171870197365727 globals.SugarLogger.Debugf("====%s", utils.Format4Output(data, false)) } @@ -408,3 +409,7 @@ func TestGetProductAuditList(t *testing.T) { } } + +func Test111(t *testing.T) { + fmt.Println(time.Now().Sub(time.Now().Add(time.Minute * 120))) +} diff --git a/platformapi/tiktok_shop/tiktok_api/sku_warehouse_test.go b/platformapi/tiktok_shop/tiktok_api/sku_warehouse_test.go index 4dfc8e5d..b1d3a1d2 100644 --- a/platformapi/tiktok_shop/tiktok_api/sku_warehouse_test.go +++ b/platformapi/tiktok_shop/tiktok_api/sku_warehouse_test.go @@ -3,7 +3,10 @@ package tiktok_api import ( "fmt" "git.rosy.net.cn/baseapi" + "git.rosy.net.cn/baseapi/utils" "go.uber.org/zap" + "math" + "strings" "testing" ) @@ -51,3 +54,86 @@ func TestRefundToken(t *testing.T) { a.RefreshToken() } + +func TestComposeSkuNameOriginal(t *testing.T) { + i := 0 + for { + if i >= 30 { + break + } + name1 := ComposeSkuNameOriginal("", "【新鲜】凤尾 莴笋尖 莴笋叶", "", "份", 500, "g", 0) + //fmt.Println("name1 == ", name1) + + name2 := ComposeSkuNameOriginal("", name1, "", "份", 500, "g", 0) + //fmt.Println("name2 == ", name2) + + name11 := LimitUTF8StringLen(name1, 60) + name22 := LimitUTF8StringLen(name2, 60) + fmt.Println("name11 = ", name11) + fmt.Println("name22 = ", name22) + i++ + } + +} +func ComposeSkuNameOriginal(prefix, name, comment, unit string, spec_quality float32, spec_unit string, maxLen int) (skuName string) { + strBuilder := &strings.Builder{} + if prefix != "" { + strBuilder.WriteString("[") + strBuilder.WriteString(prefix) + strBuilder.WriteString("]") + } + skuName += name + strBuilder.WriteString(name) + if unit == "份" { + strBuilder.WriteString("约") + } + if unit != "" { + strBuilder.WriteString(ComposeSkuSpec(spec_quality, spec_unit)) + strBuilder.WriteString("/") + strBuilder.WriteString(unit) + } + if comment != "" { + strBuilder.WriteString("(") + strBuilder.WriteString(comment) + strBuilder.WriteString(")") + } + skuName = strBuilder.String() + if maxLen > 0 { + skuName = utils.LimitUTF8StringLen(skuName, maxLen) + } + return skuName +} + +func ComposeSkuSpec(spec_quality float32, spec_unit string) (spec string) { + if spec_unit != "" { + if math.Round(float64(spec_quality)) == float64(spec_quality) || (spec_unit != "L" && spec_unit != "kg") { + spec = fmt.Sprintf("%d", int(spec_quality)) + } else { + spec = strings.TrimRight(fmt.Sprintf("%.2f", spec_quality), "0.") + } + spec += spec_unit + } + return spec +} +func LimitUTF8StringLen(str string, maxRuneCount int) (limitedStr string) { + if maxRuneCount > 0 { + if len(str) > maxRuneCount { + runeList := []rune(str) + if len(runeList) > maxRuneCount { + str = string(runeList[:maxRuneCount]) + } + } + } + return str +} + +func Test1111(t *testing.T) { + fmt.Println(len("【新鲜】凤尾 莴笋尖 莴笋叶约500g/份")) + fmt.Println(len("【新鲜】凤尾 莴笋尖 莴笋叶约500g/份约500g/ 份")) + fmt.Println(len("【新鲜】凤尾 莴笋尖 莴笋叶约500g/份约500g/份")) +} + +func Test22222(t *testing.T) { + fmt.Println(len("【新鲜】凤尾 莴笋尖 莴笋叶")) + fmt.Println(len("凤尾 莴笋尖 莴笋叶 约350g")) +}