华为云用户手册
-
自定义冷热分离数据存储策略 使用clickhouse client客户端命令连接ClickHouseServer节点,具体请参考ClickHouse客户端使用实践。 创建配置冷热存储TTL策略的ReplicatedMergeTree表。 ClickHouse支持表级别的TTL表达式,允许您设置基于时间的规则,从而能够自动的在指定的磁盘或者卷之间移动数据,以实现了数据在不同的存储层之间的分层存储。 具体建表语句参考如下: CREATE TABLE example_table on cluster default_cluster ( d DateTime, a Int ) ENGINE = ReplicatedMergeTree('/clickhouse/tables/{shard}/default/example_table', '{replica}') PARTITION BY toYYYYMM(d) ORDER BY d TTL d + INTERVAL 3 YEAR, d + INTERVAL 1 YEAR TO VOLUME 'cold_obs_volume' SETTINGS storage_policy = 'hot_cold_separation_policy'; 以上示例,加粗部分为TTL配置。该示例将example_table表中d时间列三年后的冷数据删除,d时间列一年后的冷数据转存到OBS。 TTL表达式只是一个简单的SQL表达式,里边包含了时间以及时间的间隔,例如: 数据存活的时间为date_time时间的3天之后。 TTL date_time + INTERVAL 3 DAY 数据存活的时间为date_time时间的1年之后。 TTL date_time + INTERVAL 1 YEAR INTERVAL支持的操作:second,minute,hour,day,week,month,quarter,year。 storage_policy:指定自定义存储策略配置。当前示例为3“_clickhouse.storage_configuration.disks”参数中自定义的策略名。
-
导入数据ClickHouse测试验证 执行以下命令插入验证数据: insert into example_table values('2023-12-27','10086'); -- hot data insert into example_table values('2023-12-26','10086'); -- hot data insert into example_table values('2022-12-24','10086'); -- cold data insert into example_table values('2022-11-24','10086'); -- cold data insert into example_table values('2018-10-01','10086'); -- deleted data insert into example_table values('2017-10-01','10086'); -- deleted data 查询表数据。 tesspmrB0002.mrs-dviw.com :) select * from example_table FORMAT CS V; SELECT * FROM example_table FORMAT CSV Query id: 3d6bfcb4-f082-4e97-8d95-f885e22ae689 "2023-12-27 00:00:00",10086 "2023-12-26 00:00:00",10086 "2022-11-24 00:00:00",10086 "2022-12-24 00:00:00",10086 4 rows in set. Elapsed: 0.037 sec. 当前系统时间为2024年4月份,根据TTL策略规则example_table表d列为'2018-10-01'和'2017-10-01'的数据已被删除。 执行以下查询hot data和cold data的存储路径。 select name, partition, active, path from system.parts where database = '数据库名' and table= '表名' and active = 1; 图10 冷热数据查询结果 当前系统时间为2024年4月份,example_table表d列为'202211'和'202212'超过一年的数据存储到了名disk_s3的OBS下。
-
操作场景 ClickHouse基于开源ClickHouse的multi-volume storage特性,允许将ClickHouse表存储在包含多个设备的卷当中。通过在volume中定义不同类型的磁盘,根据数据的“冷”、“热”程度将数据存放在不同类型的磁盘上,即冷数据存储在OBS,热数据存储在ClickHouse中。实现了ClickHouse集群在提供查询性能的同时又能以低成本的方式实现数据的长期存放。 配置ClickHouse数据冷热分离存储的整体流程如下: 创建OBS并行文件系统 创建云服务委托并绑定集群 创建普通账号委托并绑定集群 ClickHouse集群添加OBS磁盘信息 配置磁盘存储策略 自定义冷热分离数据存储策略 导入数据ClickHouse测试验证
-
使用 CTS 审计 DLI 服务 通过 云审计 服务,您可以记录与DLI服务相关的操作事件,便于日后的查询、审计和回溯。 表1 云审计服务支持的DLI操作列表 操作名称 资源类型 事件名称 创建数据库 database createDatabase 删除数据库 database deleteDatabase 修改数据库所有者 database alterDatabaseOwner 创建表 table createTable 删除表 table deleteTable 导出表数据 table exportData 导入表数据 table importData 修改表的所有者 table alterTableOwner 创建队列 queue createQueue 删除队列 queue deleteQueue 队列授权 queue queueAuthorize 修改队列网段 queue replaceQueue 重启队列 queue queueActions 扩容/缩容队列 queue queueActions 提交作业(SQL) queue submitJob 取消作业(SQL) jobs cancelJob 授权obs桶给DLI服务 obs authorizeObsBucketsForStream 检查SQL语法 jobs checkSQL 删除作业 jobs deleteStreamJob 创建Flink opensource sql作业 jobs createStreamSqlJob 更新Flink opensource sql作业 jobs updateStreamSqlJob 批量删除Flink作业 jobs deleteStreamJobs 停止Flink作业 jobs stopStreamJobs 提交Flink作业 jobs submitStreamJobs 创建Flink jar作业 jobs createStreamJarJob 更新Flink jar作业 jobs updateStreamJarJob 查看flink作业 jobs checkStreamJob 导入保存点 jobs dealSavepoint 购买cu时套餐包 order orderPackage 数据授权 authorization dataAuthorize 跨项目数据授权 authorization projectDataAuthorize 导出查询结果 jobs storeJobResult 保存SQL模板 template createTemplate 更新SQL模板 template updateTemplate 删除SQL模板 template deleteTemplates 新建Flink模板 template createStreamTemplate 更新Flink模板 template updateStreamTemplate 查看Flink模板 template checkStreamTemplate 删除Flink模板 template deleteStreamTemplate 创建认证信息并上传证书 datasourceauth uploadAuthInfo 更新跨源认证信息 datasourceauth updateAuthInfo 删除跨源认证信息 datasourceauth deleteAuthInfo 上传资源包 resource uploadResources 删除资源包 resource deleteResource 创建增强型跨源连接 edsconnection createConnection 删除增强型跨源连接 edsconnection deleteConnection 创建经典型跨源连接 edsconnection createConnection 删除经典型跨源连接 edsconnection deleteConnection 绑定队列 edsconnection associateQueueToConnection 解绑队列 edsconnection disassociateQueueToConnection 修改主机信息 edsconnection updateHostInfo 添加路由 edsconnection addRoute 删除路由 edsconnection deleteRoute 创建批处理作业 jobs createBatch 取消批处理作业 jobs cancelBatch 创建全局变量 variable createGlobalVariable 删除全局变量 variable deleteGlobalVariable 修改全局变量 variable updateGlobalVariable 关于如何开通云审计服务以及如何查看追踪事件,请参考《云审计服务快速入门》中的相关章节。 关于云审计服务事件结构的关键字段详解,请参见《云审计服务用户指南》中的事件结构和事件样例。
-
Lite Server使用流程 ModelArts Lite Server提供多样化的xPU裸金属服务器,赋予用户以root账号自主安装和部署AI框架、应用程序等第三方软件的能力,为用户打造专属的云上物理服务器环境。用户只需轻松选择服务器的规格、镜像、网络配置及密钥等基本信息,即可迅速创建弹性裸金属服务器,获取所需的云上物理资源,充分满足算法工程师在日常训练和推理工作中的需求。 本文旨在帮助您了解Lite Server的基本使用流程,帮助您快速上手,使用流程包含以下步骤。 图1 使用流程 资源开通 由于Server为一台裸金属服务器,因此需要先购买资源后才能使用。 首先请联系客户经理确认Server资源方案,部分规格为受限规格,因此需要申请开通您所需的资源规格。 Server所需资源可能会超出华为云默认提供的资源配额(如ECS、EIP、SFS),因此需要提交工单提升资源配额。 为子用户账号开通Server功能所需的基础权限。 由于ModelArts服务在使用过程中会访问其他依赖服务,因此需要给ModelArts进行委托授权。 购买Server资源时,需要选择虚拟私有云用于网络通信,您可以使用已有的虚拟私有云或新创建的虚拟私有云。 若使用密钥对作为登录裸金属服务器的鉴权方式,您可以使用已有的密钥对或新创建的密钥对。 在ModelArts控制台购买Server资源。 资源配置 完成资源购买后,需要对网络、存储、软件环境进行相关配置。 资源使用 完成资源配置后,您可以登录到服务器进行训练和推理,具体案例可参考Lite Server资源使用。 资源管理 Lite Server提供启动、停止、切换操作系统等管理手段,您可在ModelArts控制台上对资源进行管理。 表1 相关名词解释 名词 含义 裸金属服务器 裸金属服务器是一款兼具虚拟机弹性和物理机性能的计算类服务,为您和您的企业提供专属的云上物理服务器,为核心数据库、关键应用系统、高性能计算、大数据等业务提供卓越的计算性能以及数据安全。 由于Server是一台裸金属服务器,在ModelArts管理控制台购买Server后,会在BMS管理控制台上创建一台与Server对应的裸金属服务器,后续挂载磁盘、绑定弹性网络IP等操作可在BMS服务控制台上完成。 更多裸金属服务器的介绍请见虚拟私有云 VPC。 xPU xPU泛指GPU和NPU。 GPU,即图形处理器,主要用于加速深度学习模型的训练和推理。 NPU,即神经网络处理器,是专门为加速神经网络计算而设计的硬件。与GPU相比,NPU在神经网络计算方面具有更高的效率和更低的功耗。 密钥对 弹性裸金属支持SSH密钥对的方式进行登录,用户无需输入密码就可以登录到弹性裸金属服务器,因此可以防止由于密码被拦截、破解造成的账户密码泄露,从而提高弹性裸金属服务器的安全性。 说明: 为保证云服务器安全,未进行私钥托管的私钥只能下载一次,请妥善保管。 虚拟私有云 虚拟私有云(Virtual Private Cloud,VPC)为裸金属服务器构建隔离的、用户自主配置和管理的虚拟网络环境,提升用户云中资源的安全性,简化用户的网络部署。您可以在VPC中定义安全组、VPN、IP地址段、带宽等网络特性。用户可以通过VPC方便地管理、配置内部网络,进行安全、快捷的网络变更。同时,用户可以自定义安全组内与组间的访问规则,加强裸金属服务器的安全保护。更多VPC介绍请见虚拟私有云 VPC。 父主题: Lite Server使用前必读
-
步骤3:基础权限开通 基础权限开通需要登录管理员账号,为子用户账号开通Server功能所需的基础权限(ModelArts FullAccess/BMS FullAccess/ECS FullAccess/VPC FullAccess/VPC Administrator/VPCEndpoint Administrator)。 登录 统一身份认证 服务管理控制台。 单击目录左侧“用户组”,然后在页面右上角单击“创建用户组”。 填写“用户组名称”并单击“确定”。 在操作列单击“用户组管理”,将需要配置权限的用户加入用户组中。 单击用户组名称,进入用户组详情页。 在权限管理页签下,单击“授权”。 图2 “配置权限” 在搜索栏输入“ModelArts FullAccess”,并勾选“ModelArts FullAccess”。 图3 ModelArts FullAccess 以相同的方式,依次添加:BMS FullAccess、ECS FullAccess、VPC FullAccess、VPC Administrator、VPCEndpoint Administrator。(Server Administrator、DNS Administrator为依赖策略,会自动被勾选)。 单击“下一步”,授权范围方案选择“所有资源”。 单击“确认”,完成基础权限开通。
-
响应参数 状态码: 400 表3 响应Body参数 参数 参数类型 描述 error_code String 错误码 error_msg String 错误描述 encoded_authorization_message String 加密后的详细拒绝原因,用户可以自行调用STS服务的decode-authorization-message接口进行解密。 状态码: 401 表4 响应Body参数 参数 参数类型 描述 error_code String 错误码 error_msg String 错误描述 encoded_authorization_message String 加密后的详细拒绝原因,用户可以自行调用STS服务的decode-authorization-message接口进行解密。 状态码: 403 表5 响应Body参数 参数 参数类型 描述 error_code String 错误码 error_msg String 错误描述 encoded_authorization_message String 加密后的详细拒绝原因,用户可以自行调用STS服务的decode-authorization-message接口进行解密。 状态码: 404 表6 响应Body参数 参数 参数类型 描述 error_code String 错误码 error_msg String 错误描述 encoded_authorization_message String 加密后的详细拒绝原因,用户可以自行调用STS服务的decode-authorization-message接口进行解密。 状态码: 405 表7 响应Body参数 参数 参数类型 描述 error_code String 错误码 error_msg String 错误描述 encoded_authorization_message String 加密后的详细拒绝原因,用户可以自行调用STS服务的decode-authorization-message接口进行解密。 状态码: 500 表8 响应Body参数 参数 参数类型 描述 error_code String 错误码 error_msg String 错误描述 encoded_authorization_message String 加密后的详细拒绝原因,用户可以自行调用STS服务的decode-authorization-message接口进行解密。 状态码: 503 表9 响应Body参数 参数 参数类型 描述 error_code String 错误码 error_msg String 错误描述 encoded_authorization_message String 加密后的详细拒绝原因,用户可以自行调用STS服务的decode-authorization-message接口进行解密。
-
响应参数 状态码: 200 表4 响应Body参数 参数 参数类型 描述 result_list Array of DeleteTerminalsBindingDesktopsResult objects 需删除的策略ID列表 表5 DeleteTerminalsBindingDesktopsResult 参数 参数类型 描述 id String 需删除的策略ID delete_result_code String 删除操作的结果码 delete_result_msg String 删除操作的结果信息 状态码: 400 表6 响应Body参数 参数 参数类型 描述 error_code String 错误码,失败时返回。 error_msg String 错误描述。 encoded_authorization_message String 加密后的详细拒绝原因,用户可以自行调用STS服务的decode-authorization-message接口进行解密。 状态码: 404 表7 响应Body参数 参数 参数类型 描述 error_code String 错误码,失败时返回。 error_msg String 错误描述。 encoded_authorization_message String 加密后的详细拒绝原因,用户可以自行调用STS服务的decode-authorization-message接口进行解密。 状态码: 500 表8 响应Body参数 参数 参数类型 描述 error_code String 错误码,失败时返回。 error_msg String 错误描述。 encoded_authorization_message String 加密后的详细拒绝原因,用户可以自行调用STS服务的decode-authorization-message接口进行解密。
-
请求参数 表2 请求Header参数 参数 是否必选 参数类型 描述 Content-Type 否 String 发送的实体的MIME类型。 X-Auth-Token 否 String 用户Token。 通过调用 IAM 服务获取用户Token接口获取(响应消息头中X-Subject-Token的值)。 表3 请求Body参数 参数 是否必选 参数类型 描述 id_list 否 Array of strings 绑定策略ID列表
-
响应参数 状态码: 200 表4 响应Body参数 参数 参数类型 描述 users Array of UserInGroup objects 组关联的用户列表。 total_count Integer 用户列表中用户总数。 表5 UserInGroup 参数 参数类型 描述 id String 用户ID。 user_name String 桌面用户名。 user_email String 用户邮箱。 user_phone String 用户手机号。 total_desktops Integer 用户桌面数。 description String 用户描述。
-
响应示例 状态码: 200 组关联的用户列表响应。 { "total_count" : 2, "users" : [ { "user_name" : "user1", "user_email" : "xx1@mail.com", "user_phone" : "18818008887", "id" : "8357fd328c62447d94e452bf49xxxx" }, { "user_name" : "user2", "user_email" : "xx2@mail.com", "user_phone" : "18818008888", "id" : "8357fd328c62447d94e452bf495xxxx" } ] }
-
URI GET /v2/{project_id}/groups/{group_id}/users 表1 路径参数 参数 是否必选 参数类型 描述 project_id 是 String 项目id。 group_id 是 String 用户组ID。 表2 Query参数 参数 是否必选 参数类型 描述 user_name 否 String 用户名支持模糊查询。 description 否 String 用户描述支持模糊查询。 active_type 否 String 激活类型。 USER_ACTIVATE:用户激活 ADMIN_ACTIVATE:管理员激活 limit 否 String 用于分页查询,返回桌面数量限制。如果不指定或为0,默认2000,最大2000。 offset 否 String 用于分页查询,查询的起始记录序号,从0开始。
-
请求参数 表2 请求Header参数 参数 是否必选 参数类型 描述 X-Auth-Token 否 String 用户Token。 通过调用IAM服务获取用户Token接口获取(响应消息头中X-Subject-Token的值)。 Content-Type 是 String 发送的实体的MIME类型,如:application/json。 表3 请求Body参数 参数 是否必选 参数类型 描述 group_name 是 String 用户组名称。 platform_type 是 String 用户组类型。 AD: AD域用户组 LOCAL: 本地liteAs用户组 description 否 String 用户组描述。
-
响应参数 状态码: 201 表4 响应Body参数 参数 参数类型 描述 error_code String 错误码 error_msg String 错误描述 encoded_authorization_message String 加密后的详细拒绝原因,用户可以自行调用STS服务的decode-authorization-message接口进行解密。 状态码: 400 表5 响应Body参数 参数 参数类型 描述 error_code String 错误码 error_msg String 错误描述 encoded_authorization_message String 加密后的详细拒绝原因,用户可以自行调用STS服务的decode-authorization-message接口进行解密。 状态码: 401 表6 响应Body参数 参数 参数类型 描述 error_code String 错误码 error_msg String 错误描述 encoded_authorization_message String 加密后的详细拒绝原因,用户可以自行调用STS服务的decode-authorization-message接口进行解密。 状态码: 403 表7 响应Body参数 参数 参数类型 描述 error_code String 错误码 error_msg String 错误描述 encoded_authorization_message String 加密后的详细拒绝原因,用户可以自行调用STS服务的decode-authorization-message接口进行解密。 状态码: 404 表8 响应Body参数 参数 参数类型 描述 error_code String 错误码 error_msg String 错误描述 encoded_authorization_message String 加密后的详细拒绝原因,用户可以自行调用STS服务的decode-authorization-message接口进行解密。 状态码: 405 表9 响应Body参数 参数 参数类型 描述 error_code String 错误码 error_msg String 错误描述 encoded_authorization_message String 加密后的详细拒绝原因,用户可以自行调用STS服务的decode-authorization-message接口进行解密。 状态码: 500 表10 响应Body参数 参数 参数类型 描述 error_code String 错误码 error_msg String 错误描述 encoded_authorization_message String 加密后的详细拒绝原因,用户可以自行调用STS服务的decode-authorization-message接口进行解密。 状态码: 503 表11 响应Body参数 参数 参数类型 描述 error_code String 错误码 error_msg String 错误描述 encoded_authorization_message String 加密后的详细拒绝原因,用户可以自行调用STS服务的decode-authorization-message接口进行解密。
-
响应参数 状态码: 400 表4 响应Body参数 参数 参数类型 描述 error_code String 错误码,失败时返回。 error_msg String 错误描述。 encoded_authorization_message String 加密后的详细拒绝原因,用户可以自行调用STS服务的decode-authorization-message接口进行解密。 状态码: 404 表5 响应Body参数 参数 参数类型 描述 error_code String 错误码,失败时返回。 error_msg String 错误描述。 encoded_authorization_message String 加密后的详细拒绝原因,用户可以自行调用STS服务的decode-authorization-message接口进行解密。 状态码: 500 表6 响应Body参数 参数 参数类型 描述 error_code String 错误码,失败时返回。 error_msg String 错误描述。 encoded_authorization_message String 加密后的详细拒绝原因,用户可以自行调用STS服务的decode-authorization-message接口进行解密。
-
请求参数 表2 请求Header参数 参数 是否必选 参数类型 描述 Content-Type 否 String 发送的实体的MIME类型。 X-Auth-Token 否 String 用户Token。 通过调用IAM服务获取用户Token接口获取(响应消息头中X-Subject-Token的值)。 表3 请求Body参数 参数 是否必选 参数类型 描述 id 是 String 策略id mac 是 String 终端MAC地址 desktop_name 是 String 虚拟机名称 description 否 String 描述
-
响应参数 状态码: 200 表4 响应Body参数 参数 参数类型 描述 desktop_used_info_list Array of DesktopUsedHoursInfo objects 桌面使用信息(以桌面Id划分)。 total_count Integer 总数。 表5 DesktopUsedHoursInfo 参数 参数类型 描述 desktop_id String 桌面Id。 desktop_username String 使用的用户。 used_info_list Array of DesktopUsedInfo objects 桌面使用时间列表。 表6 DesktopUsedInfo 参数 参数类型 描述 date String 日期,格式:yyyy-MM-dd(UTC时间)。 use_time String 总共在线时间单位:小时数(h),精确到两位小数,如:1.32。 状态码: default 表7 响应Body参数 参数 参数类型 描述 error_code String 错误码,失败时返回。 error_msg String 错误描述。 encoded_authorization_message String 加密后的详细拒绝原因,用户可以自行调用STS服务的decode-authorization-message接口进行解密。
-
响应示例 状态码: 200 查询使用桌面的时长响应。 { "desktop_used_info_list" : [ { "desktop_id" : "c6e6dbd7-c950-471d-a6a7-01d0fb62f450", "used_info_list" : [ { "date" : "2022-12-09", "use_time" : 12.62 }, { "date" : "2022-12-10", "use_time" : 2.62 }, { "date" : "2022-12-11", "use_time" : 1.02 }, { "date" : "2022-12-12", "use_time" : 0 }, { "date" : "2022-12-13", "use_time" : 0 }, { "date" : "2022-12-14", "use_time" : 3.87 }, { "date" : "2022-12-15", "use_time" : 3.56 } ] }, { "desktop_id" : "d5367f84-1d64-498e-9b92-093002ac6ce9", "used_info_list" : [ { "date" : "2022-12-09", "use_time" : 10.56 }, { "date" : "2022-12-10", "use_time" : 1.38 }, { "date" : "2022-12-11", "use_time" : 0 }, { "date" : "2022-12-12", "use_time" : 0 }, { "date" : "2022-12-13", "use_time" : 0 }, { "date" : "2022-12-14", "use_time" : 3.87 }, { "date" : "2022-12-15", "use_time" : 3.56 } ] } ], "total_count" : 2 }
-
请求参数 表2 请求Header参数 参数 是否必选 参数类型 描述 Content-Type 否 String 发送的实体的MIME类型。 X-Auth-Token 否 String 用户Token。 通过调用IAM服务获取用户Token接口获取(响应消息头中X-Subject-Token的值)。 表3 请求Body参数 参数 是否必选 参数类型 描述 desktop_ids 否 Array of strings 桌面id集合。 start_time 否 String 开始时间,格式:yyyy-MM-dd(UTC时间,不传查默认最近15天)最多查31天数据。 end_time 否 String 结束时间,格式:yyyy-MM-dd(UTC时间,不传查默认最近15天)最多查31天数据。 group_by_type 否 String 统计方式,不传则默认按天。可选值为: DAY: 按天。 HOUR: 按小时。 desktop_username 否 String 若传桌面的用户名,则查询使用时间只有该用户的使用时间。 offset 否 Integer 从查询结果中的第几条数据开始返回,用于分页查询,取值范围0-2147483647,默认从0开始。 limit 否 Integer 查询结果中想要返回的信息条目数量,用于分页查询,取值范围0-100,默认值100。
-
响应参数 状态码: 200 表3 响应Body参数 参数 参数类型 描述 otp_config_info OtpConfigInfo object OTP辅助认证方式配置 表4 OtpConfigInfo 参数 参数类型 描述 enable Boolean 是否启用 receive_mode String 验证码接收模式 VMFA:虚拟MFA设备 HMFA:硬件MFA设备 auth_url String 辅助认证服务器地址 app_id String 认证服务接入账号 app_secret String 认证服务接入密码 auth_server_access_mode String 辅助认证服务接入模式 INTERNET:互联网接入 DEDICATED:专线接入 SYSTEM_DEFAULT:系统默认 cert_content String pem格式证书内容 apply_rule ApplyRuleInfo object 认证应用对象信息,为null时代表对所有应用对象生效。 表5 ApplyRuleInfo 参数 参数类型 描述 rule_type String 认证应用对象类型。 AC CES S_MODE:接入类型 rule String 认证应用对象。 INTERNET:互联网接入,rule_type为ACCESS_MODE时可选该值 PRIVATE:专线接入,rule_type为ACCESS_MODE时可选该值 状态码: 400 表6 响应Body参数 参数 参数类型 描述 error_code String 错误码。 error_msg String 错误描述。 encoded_authorization_message String 加密后的详细拒绝原因,用户可以自行调用STS服务的decode-authorization-message接口进行解密。 状态码: 401 表7 响应Body参数 参数 参数类型 描述 error_code String 错误码。 error_msg String 错误描述。 encoded_authorization_message String 加密后的详细拒绝原因,用户可以自行调用STS服务的decode-authorization-message接口进行解密。 状态码: 403 表8 响应Body参数 参数 参数类型 描述 error_code String 错误码。 error_msg String 错误描述。 encoded_authorization_message String 加密后的详细拒绝原因,用户可以自行调用STS服务的decode-authorization-message接口进行解密。 状态码: 404 表9 响应Body参数 参数 参数类型 描述 error_code String 错误码。 error_msg String 错误描述。 encoded_authorization_message String 加密后的详细拒绝原因,用户可以自行调用STS服务的decode-authorization-message接口进行解密。 状态码: 500 表10 响应Body参数 参数 参数类型 描述 error_code String 错误码。 error_msg String 错误描述。 encoded_authorization_message String 加密后的详细拒绝原因,用户可以自行调用STS服务的decode-authorization-message接口进行解密。
-
响应参数 状态码: 200 表4 响应Body参数 参数 参数类型 描述 password String 密码。 状态码: 400 表5 响应Body参数 参数 参数类型 描述 error_code String 错误码 error_msg String 错误描述 encoded_authorization_message String 加密后的详细拒绝原因,用户可以自行调用STS服务的decode-authorization-message接口进行解密。 状态码: 401 表6 响应Body参数 参数 参数类型 描述 error_code String 错误码 error_msg String 错误描述 encoded_authorization_message String 加密后的详细拒绝原因,用户可以自行调用STS服务的decode-authorization-message接口进行解密。 状态码: 403 表7 响应Body参数 参数 参数类型 描述 error_code String 错误码 error_msg String 错误描述 encoded_authorization_message String 加密后的详细拒绝原因,用户可以自行调用STS服务的decode-authorization-message接口进行解密。 状态码: 404 表8 响应Body参数 参数 参数类型 描述 error_code String 错误码 error_msg String 错误描述 encoded_authorization_message String 加密后的详细拒绝原因,用户可以自行调用STS服务的decode-authorization-message接口进行解密。 状态码: 405 表9 响应Body参数 参数 参数类型 描述 error_code String 错误码 error_msg String 错误描述 encoded_authorization_message String 加密后的详细拒绝原因,用户可以自行调用STS服务的decode-authorization-message接口进行解密。 状态码: 500 表10 响应Body参数 参数 参数类型 描述 error_code String 错误码 error_msg String 错误描述 encoded_authorization_message String 加密后的详细拒绝原因,用户可以自行调用STS服务的decode-authorization-message接口进行解密。 状态码: 503 表11 响应Body参数 参数 参数类型 描述 error_code String 错误码 error_msg String 错误描述 encoded_authorization_message String 加密后的详细拒绝原因,用户可以自行调用STS服务的decode-authorization-message接口进行解密。
-
URI GET /v2/{project_id}/users/{user_id}/random-password 表1 路径参数 参数 是否必选 参数类型 描述 project_id 是 String 项目ID。 user_id 是 String 用户ID。 表2 Query参数 参数 是否必选 参数类型 描述 notification_type 否 String 通知用户类型,现在有“email”和“phone”两种,用","分开,用户为用户激活模式时必须要带上通知类型,以便接收到密码通知。
-
修订记录 发布日期 修订记录 2024-12-12 第二十五次正式发布。 新增: 协同配置 协同配置 桌面名称策略 磁盘 连接信息 产品套餐 报表统计 任务 终端与桌面绑定 2024-09-05 第二十四次正式发布。 新增: 应用仓库管理 镜像管理 获取VNC远程登录地址 2024-03-20 第二十三次正式发布。 新增: 解绑用户 分配用户 配额 可用分区 2024-01-11 第二十二次正式发布。 新增: 桌面池。 2023-12-18 第二十一次正式发布。 修改: 批量注销桌面接口中的请求示例。 2023-11-29 第二十次正式发布。 修改: 设置终端与桌面绑定的开关配置接口中tc_bind_switch参数的描述。 2023-11-16 第十九次发布。 新增: 批量添加多个桌面标签。 批量删除多个桌面标签。 2023-11-10 第十八次正式发布。 新增: 查询桌面网络。 2023-11-06 第十七次正式发布。 新增: 重建桌面。 2023-10-09 第十六次正式发布。 新增: 订单。 2023-09-15 第十五次正式发布。 新增: 切换桌面网络。 2023-07-04 第十四次正式发布。 新增: 批量注销桌面、查询在指定时间段未使用的桌面、查询使用桌面的时长、查询用户列表、创建用户组、批量删除用户组、删除用户组、修改用户组信息、操作用户组、查询用户组中的用户接口。 2023-06-20 第十三次正式发布。 新增: 云应用APIAPI参考指导。 云应用错误码。 2023-06-06 第十二次正式发布。 修改: 创建桌面章节中email_notification参数的描述。 2022-12-23 第十一次正式发布。 修改: 策略组下各接口新增请求及响应示例。 2022-12-20 第十次正式发布。 新增: 组织单元。 2022-12-08 第九次正式发布。 修改: 云办公服务中新增查询云办公服务是否被锁定、解除云办公服务锁定状态接口。 新增 查询OTP设备、解绑OTP设备接口。 删除桌面数据盘接口。 桌面名称策略。 用户组。 策略组。 2022-11-29 第八次正式发布。 修改: 终端节点中新增“西南-贵阳一”和“拉美-圣地亚哥”的终端节点信息。 2022-11-17 第七次正式发布。 删除: 删除“历史API”节点。 2022-11-14 第六次正式发布。 修改: 根据产品规划调整增加桌面磁盘中新增磁盘参数名称,由“addDesktopVolumesReq”变更为“desktop_volumes”。 根据产品规划调整扩容桌面磁盘中扩容磁盘参数名称,由“expandVolumesReq”变更为“desktop_volumes_expansion”。 优化创建用户和查询用户详情信息中时间格式。 新增: 新增“历史API”节点。将原参数名称的“增加桌面磁盘”、“扩容桌面磁盘”API接口归档至历史API节点下。 新增操作用户接口。 2022-10-27 第五次正式发布。 修改: 优化 云桌面 错误码。 2022-09-29 第四次正式发布。 修改: 优化查询产品套餐列表和查询可用分区列表参数描述。 优化云桌面错误码。 2022-09-15 第三次正式发布。 修改: 优化桌面中的示例。 2022-09-02 第二次正式发布。 新增: 变更规格。 2022-08-27 第一次正式发布。
-
请求参数 表2 请求Header参数 参数 是否必选 参数类型 描述 X-Auth-Token 否 String 用户Token。 通过调用IAM服务获取用户Token接口获取(响应消息头中X-Subject-Token的值)。 Content-Type 否 String 发送的实体的MIME类型。 表3 请求Body参数 参数 是否必选 参数类型 描述 desktop_ids 否 Array of strings 桌面id,不能为空 shutoff_after_detach 否 Boolean 解绑后是否关机。
-
响应参数 状态码: 200 表4 响应Body参数 参数 参数类型 描述 failed_operation_list Array of VmOperateResult objects 操作失败桌面列表 job_id String 任务ID 表5 VmOperateResult 参数 参数类型 描述 desktop_id String 桌面ID。 desktop_name String 桌面名称。 error_code String 操作失败的错误码。 error_msg String 操作失败的原因描述。 状态码: 400 表6 响应Body参数 参数 参数类型 描述 error_code String 错误码,失败时返回。 error_msg String 错误描述。 encoded_authorization_message String 加密后的详细拒绝原因,用户可以自行调用STS服务的decode-authorization-message接口进行解密。 状态码: 401 表7 响应Body参数 参数 参数类型 描述 error_code String 错误码,失败时返回。 error_msg String 错误描述。 encoded_authorization_message String 加密后的详细拒绝原因,用户可以自行调用STS服务的decode-authorization-message接口进行解密。 状态码: 403 表8 响应Body参数 参数 参数类型 描述 error_code String 错误码,失败时返回。 error_msg String 错误描述。 encoded_authorization_message String 加密后的详细拒绝原因,用户可以自行调用STS服务的decode-authorization-message接口进行解密。 状态码: 404 表9 响应Body参数 参数 参数类型 描述 error_code String 错误码,失败时返回。 error_msg String 错误描述。 encoded_authorization_message String 加密后的详细拒绝原因,用户可以自行调用STS服务的decode-authorization-message接口进行解密。 状态码: 409 表10 响应Body参数 参数 参数类型 描述 error_code String 错误码,失败时返回。 error_msg String 错误描述。 encoded_authorization_message String 加密后的详细拒绝原因,用户可以自行调用STS服务的decode-authorization-message接口进行解密。 状态码: 500 表11 响应Body参数 参数 参数类型 描述 error_code String 错误码,失败时返回。 error_msg String 错误描述。 encoded_authorization_message String 加密后的详细拒绝原因,用户可以自行调用STS服务的decode-authorization-message接口进行解密。
-
URI GET /v2/{project_id}/desktops/detail 表1 路径参数 参数 是否必选 参数类型 描述 project_id 是 String 项目ID。 表2 Query参数 参数 是否必选 参数类型 描述 status 否 String 桌面状态。 ACTIVE:运行中。 SHUTOFF:关机。 ERROR:异常。 HIBERNATED:休眠。 user_name 否 String 桌面所属用户,当传user_names时,本字段不生效。 user_names 否 Array of strings 桌面所属用户,批量筛选,最多不超过100个用户。 sort_field 否 String 排序字段名称,需要结合sort_type字段一起使用。 created 创建时间。 computer_name 桌面名称。 sort_type 否 String 排序类型,默认升序,需要结合sort_field字段一起使用。 ASC 升序。 DESC 降序。 computer_name 否 String 桌面名。 desktop_ip 否 String 桌面IP地址。 offset 否 Integer 用于分页查询,查询的起始记录序号,从0开始。 limit 否 Integer 用于分页查询,取值范围0-500,默认值500。 desktop_id 否 Array of strings 桌面ID。 desktop_type 否 String 桌面类型,为空时查所有桌面。 DEDICATED:普通桌面,包括专享桌面、专属桌面等 POOLED:池桌面,即桌面池里的桌面 tag 否 String 桌面的标签。样例: key1=value1。 key1=value1,key2=value2。 pool_id 否 String 桌面池ID,多个桌面池ID用逗号隔开。 user_attached 否 Boolean 是否分配了用户。 enterprise_project_id 否 String 企业项目ID image_id 否 String 镜像ID charge_mode 否 String 计费模式,0:包周期,1:按需。 in_maintenance_mode 否 Boolean 按照维护模式过滤 is_share_desktop 否 Boolean 是否为协同桌面 subnet_id 否 String 桌面的子网ID。 is_support_internet 否 Boolean 是否支持上网。 availability_zone 否 String 查询可用区
-
响应示例 状态码: 200 查询云桌面详情列表响应。 { "desktops" : [ { "desktop_id" : "21616aa6-061d-4b2f-bd83-b230d7a9a14c", "computer_name" : "CHENMIN01", "addresses" : [ { "addr" : "172.16.253.204", "version" : "4", "OS-EXT-IPS-MAC:mac_addr" : "fa:16:3e:2e:41:55", "OS-EXT-IPS:type" : "fixed" }, { "addr" : "10.0.9.55", "version" : "4", "OS-EXT-IPS-MAC:mac_addr" : "fa:16:3e:d5:b3:02", "OS-EXT-IPS:type" : "fixed" } ], "ip_addresses" : [ "172.16.253.204", "10.0.9.55" ], "desktop_type" : "DEDICATED", "metadata" : { "image_name" : "copy_uos-hjg1", "metering.resourcespeccode" : "rs3.large.2.linux", "charging_mode" : "0", "metering.image_id" : "39efed30-a0db-4520-8134-19a086e14c7e", "metering.resourcetype" : "1", "os_type" : "Linux", "os_bit" : "64", "desktop_os_version" : "20" }, "flavor" : { "id" : "rs3.large.2", "links" : [ ] }, "status" : "ACTIVE", "task_status" : "", "created" : "2022-01-21T06:57:47.459Z", "login_status" : "REGISTERED", "user_name" : "chenmin", "product_id" : "workspace.k.large2.uosv20pro", "share_resource_sku" : "workspace.collaborativedesktop.6party.standard", "root_volume" : { "type" : "SAS", "size" : 90, "device" : "/dev/vda", "id" : "e4406c227a8711ecaf56fa163ed8e03f", "volume_id" : "91b9457c-ef61-4058-9e82-c86b35f15934", "create_time" : "2022-03-28T00:00:00Z", "display_name" : "workspace002" }, "data_volumes" : [ { "type" : "SATA", "size" : 10, "device" : "/dev/vdc", "id" : "fd4597cb80b311ecaf56fa163ed8e03f", "volume_id" : "230432f1-44a4-47a1-862e-cd0b65c04bd1", "create_time" : "2022-03-28T00:00:00Z", "display_name" : "workspace001" } ], "user_group" : "default", "availability_zone" : "cn-north-5a", "site_type" : "IES", "site_name" : "边缘小站", "product" : { "product_id" : "workspace.k.large2.uosv20pro", "flavor_id" : "rs3.large.2", "type" : "BASE", "cpu" : "2", "memory" : "3072", "descriptions" : "CPU:2vCPUs,Memory:4GB", "charge_mode" : "0" }, "os_version" : "20", "sid" : "1f60adc1-941c-48b8-b5c8-64948329b7cb", "order_id" : "CS2201211457G0PUY", "tags" : [ ], "in_maintenance_mode" : false }, { "desktop_id" : "e7a27bad-323f-4ec8-9afe-e53d00171ba9", "computer_name" : "HJG01", "addresses" : [ { "addr" : "172.16.242.253", "version" : "4", "OS-EXT-IPS-MAC:mac_addr" : "fa:16:3e:20:14:00", "OS-EXT-IPS:type" : "fixed" }, { "addr" : "10.0.5.247", "version" : "4", "OS-EXT-IPS-MAC:mac_addr" : "fa:16:3e:29:c4:3f", "OS-EXT-IPS:type" : "fixed" } ], "ip_addresses" : [ "172.16.242.253", "10.0.5.247" ], "desktop_type" : "DEDICATED", "metadata" : { "image_name" : "UOS_20_PRO_chenmin", "metering.resourcespeccode" : "rs3.xlarge.2.linux", "charging_mode" : "0", "metering.image_id" : "6fe1cd9e-e997-4c02-8257-395c28de49b3", "metering.resourcetype" : "1", "os_type" : "Linux", "os_bit" : "64", "desktop_os_version" : "20" }, "flavor" : { "id" : "rs3.xlarge.2", "links" : [ ] }, "status" : "ACTIVE", "task_status" : "", "created" : "2022-01-18T07:53:25.815Z", "login_status" : "REGISTERED", "user_name" : "hjg", "product_id" : "workspace.k.large4.uosv20pro", "root_volume" : { "type" : "SAS", "size" : 80, "device" : "/dev/vda", "id" : "1791c183783411ecaf56fa163ed8e03f", "volume_id" : "703b49d6-794e-4474-a256-fb695fb46466" }, "user_group" : "sudo", "availability_zone" : "cn-north-5a", "site_type" : "CENTER", "site_name" : "北京四中心站", "product" : { "product_id" : "workspace.k.large4.uosv20pro", "flavor_id" : "rs3.xlarge.2", "type" : "BASE", "cpu" : "4", "memory" : "7168", "descriptions" : "CPU:4vCPUs,Memory:7GB", "charge_mode" : "0" }, "os_version" : "20", "sid" : "3f5cdbd5-9652-4339-9aab-70d0644f8abc", "order_id" : "CS220118155365RYV", "tags" : [ ], "in_maintenance_mode" : true } ], "total_count" : 2 }
-
请求参数 表2 请求Header参数 参数 是否必选 参数类型 描述 X-Auth-Token 否 String 用户Token。 通过调用IAM服务获取用户Token接口获取(响应消息头中X-Subject-Token的值)。 表3 请求Body参数 参数 是否必选 参数类型 描述 policy_name 是 String 策略名称,由数字、字母、中文、下划线组成,必须以字母或下划线开头,长度范围为1~30个字符。 name_prefix 是 String 策略前缀。 digit_number 是 Integer 策略后缀有效位数。 start_number 是 Integer 策略后缀起始数字。 single_domain_user_inc 是 Integer 是否单用户名递增。 1 单用户名递增。 0 租户递增。 is_default_policy 否 Boolean 是否为默认策略,true默认策略。
-
响应参数 状态码: 200 表4 响应Body参数 参数 参数类型 描述 policy_id String 策略id。 状态码: 400 表5 响应Body参数 参数 参数类型 描述 error_code String 错误码,失败时返回。 error_msg String 错误描述。 encoded_authorization_message String 加密后的详细拒绝原因,用户可以自行调用STS服务的decode-authorization-message接口进行解密。 状态码: 401 表6 响应Body参数 参数 参数类型 描述 error_code String 错误码,失败时返回。 error_msg String 错误描述。 encoded_authorization_message String 加密后的详细拒绝原因,用户可以自行调用STS服务的decode-authorization-message接口进行解密。 状态码: 403 表7 响应Body参数 参数 参数类型 描述 error_code String 错误码,失败时返回。 error_msg String 错误描述。 encoded_authorization_message String 加密后的详细拒绝原因,用户可以自行调用STS服务的decode-authorization-message接口进行解密。 状态码: 500 表8 响应Body参数 参数 参数类型 描述 error_code String 错误码,失败时返回。 error_msg String 错误描述。 encoded_authorization_message String 加密后的详细拒绝原因,用户可以自行调用STS服务的decode-authorization-message接口进行解密。
-
AK/SK认证 AK/SK签名认证方式仅支持消息体大小12MB以内,12MB以上的请求请使用Token认证。 AK/SK既可以使用永久访问密钥中的AK/SK,也可以使用临时访问密钥中的AK/SK,但使用临时访问密钥的AK/SK时需要额外携带“X-Security-Token”字段,字段值为临时访问密钥的security_token。 AK/SK认证就是使用AK/SK对请求进行签名,在请求时将签名信息添加到消息头,从而通过身份认证。 AK(Access Key ID):访问密钥ID。与私有访问密钥关联的唯一标识符;访问密钥ID和私有访问密钥一起使用,对请求进行加密签名。 SK(Secret Access Key):与访问密钥ID结合使用的密钥,对请求进行加密签名,可标识发送方,并防止请求被修改。 使用AK/SK认证时,您可以基于签名算法使用AK/SK对请求进行签名,也可以使用专门的签名SDK对请求进行签名。详细的签名方法和SDK使用方法请参见API签名指南。 签名SDK只提供签名功能,与服务提供的SDK不同,使用时请注意。 您也可以通过这个视频教程了解AK/SK认证的使用:https://bbs.huaweicloud.com/videos/100697 。
共100000条
- 1
- ...
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
- 11
- 12
- 13
- 14
- 15
- 16
- 17
- 18
- 19
- 20
- 21
- 22
- 23
- 24
- 25
- 26
- 27
- 28
- 29
- 30
- 31
- 32
- 33
- 34
- 35
- 36
- 37
- 38
- 39
- 40
- 41
- 42
- 43
- 44
- 45
- 46
- 47
- 48
- 49
- 50
- 51
- 52
- 53
- 54
- 55
- 56
- 57
- 58
- 59
- 60
- 61
- 62
- 63
- 64
- 65
- 66
- 67
- 68
- 69
- 70
- 71
- 72
- 73
- 74
- 75
- 76
- 77
- 78
- 79
- 80
- 81
- 82
- 83
- 84
- 85
- 86
- 87
- 88
- 89
- 90
- 91
- 92
- 93
- 94
- 95
- 96
- 97
- 98
- 99
- 100
- 101
- 102
- 103
- 104
- 105
- 106
- 107
- 108
- 109
- 110
- 111
- 112
- 113
- 114
- 115
- 116
- 117
- 118
- 119
- 120
- 121
- 122
- 123
- 124
- 125
- 126
- 127
- 128
- 129
- 130
- 131
- 132
- 133
- 134
- 135
- 136
- 137
- 138
- 139
- 140
- 141
- 142
- 143
- 144
- 145
- 146
- 147
- 148
- 149
- 150
- 151
- 152
- 153
- 154
- 155
- 156
- 157
- 158
- 159
- 160
- 161
- 162
- 163
- 164
- 165
- 166
- 167
- 168
- 169
- 170
- 171
- 172
- 173
- 174
- 175
- 176
- 177
- 178
- 179
- 180
- 181
- 182
- 183
- 184
- 185
- 186
- 187
- 188
- 189
- 190
- 191
- 192
- 193
- 194
- 195
- 196
- 197
- 198
- 199
- 200
- 201
- 202
- 203
- 204
- 205
- 206
- 207
- 208
- 209
- 210
- 211
- 212
- 213
- 214
- 215
- 216
- 217
- 218
- 219
- 220
- 221
- 222
- 223
- 224
- 225
- ...
- 226
- 227
- 228
- 229
- 230
- 231
- 232
- 233
- 234
- 235
- 236
- 237
- 238
- 239
- 240
- 241
- 242
- 243
- 244
- 245
- 246
- 247
- 248
- 249
- 250
- 251
- 252
- 253
- 254
- 255
- 256
- 257
- 258
- 259
- 260
- 261
- 262
- 263
- 264
- 265
- 266
- 267
- 268
- 269
- 270
- 271
- 272
- 273
- 274
- 275
- 276
- 277
- 278
- 279
- 280
- 281
- 282
- 283
- 284
- 285
- 286
- 287
- 288
- 289
- 290
- 291
- 292
- 293
- 294
- 295
- 296
- 297
- 298
- 299
- 300
- 301
- 302
- 303
- 304
- 305
- 306
- 307
- 308
- 309
- 310
- 311
- 312
- 313
- 314
- 315
- 316
- 317
- 318
- 319
- 320
- 321
- 322
- 323
- 324
- 325
- 326
- 327
- 328
- 329
- 330
- 331
- 332
- 333
- 334
- 335
- 336
- 337
- 338
- 339
- 340
- 341
- 342
- 343
- 344
- 345
- 346
- 347
- 348
- 349
- 350
- 351
- 352
- 353
- 354
- 355
- 356
- 357
- 358
- 359
- 360
- 361
- 362
- 363
- 364
- 365
- 366
- 367
- 368
- 369
- 370
- 371
- 372
- 373
- 374
- 375
- 376
- 377
- 378
- 379
- 380
- 381
- 382
- 383
- 384
- 385
- 386
- 387
- 388
- 389
- 390
- 391
- 392
- 393
- 394
- 395
- 396
- 397
- 398
- 399
- 400
- 401
- 402
- 403
- 404
- 405
- 406
- 407
- 408
- 409
- 410
- 411
- 412
- 413
- 414
- 415
- 416
- 417
- 418
- 419
- 420
- 421
- 422
- 423
- 424
- 425
- 426
- 427
- 428
- 429
- 430
- 431
- 432
- 433
- 434
- 435
- 436
- 437
- 438
- 439
- 440
- 441
- 442
- 443
- 444
- 445
- 446
- 447
- 448
- 449
- 450
- 451
- 452
- 453
- 454
- 455
- 456
- 457
- 458
- 459
- 460
- 461
- 462
- 463
- 464
- 465
- 466
- 467
- 468
- 469
- 470
- 471
- 472
- 473
- 474
- 475
- 476
- 477
- 478
- 479
- 480
- 481
- 482
- 483
- 484
- 485
- 486
- 487
- 488
- 489
- 490
- 491
- 492
- 493
- 494
- 495
- 496
- 497
- 498
- 499
- 500
- 501
- 502
- 503
- 504
- 505
- 506
- 507
- 508
- 509
- 510
- 511
- 512
- 513
- 514
- 515
- 516
- 517
- 518
- 519
- 520
- 521
- 522
- 523
- 524
- 525
- 526
- 527
- 528
- 529
- 530
- 531
- 532
- 533
- 534
- 535
- 536
- 537
- 538
- 539
- 540
- 541
- 542
- 543
- 544
- 545
- 546
- 547
- 548
- 549
- 550
- 551
- 552
- 553
- 554
- 555
- 556
- 557
- 558
- 559
- 560
- 561
- 562
- 563
- 564
- 565
- 566
- 567
- 568
- 569
- 570
- 571
- 572
- 573
- 574
- 575
- 576
- 577
- 578
- 579
- 580
- 581
- 582
- 583
- 584
- 585
- 586
- 587
- 588
- 589
- 590
- 591
- 592
- 593
- 594
- 595
- 596
- 597
- 598
- 599
- 600
- 601
- 602
- 603
- 604
- 605
- 606
- 607
- 608
- 609
- 610
- 611
- 612
- 613
- 614
- 615
- 616
- 617
- 618
- 619
- 620
- 621
- 622
- 623
- 624
- 625
- 626
- 627
- 628
- 629
- 630
- 631
- 632
- 633
- 634
- 635
- 636
- 637
- 638
- 639
- 640
- 641
- 642
- 643
- 644
- 645
- 646
- 647
- 648
- 649
- 650
- 651
- 652
- 653
- 654
- 655
- 656
- 657
- 658
- 659
- 660
- 661
- 662
- 663
- 664
- 665
- 666
- 667
- 668
- 669
- 670
- 671
- 672
- 673
- 674
- 675
- 676
- 677
- 678
- 679
- 680
- 681
- 682
- 683
- 684
- 685
- 686
- 687
- 688
- 689
- 690
- 691
- 692
- 693
- 694
- 695
- 696
- 697
- 698
- 699
- 700
- 701
- 702
- 703
- 704
- 705
- 706
- 707
- 708
- 709
- 710
- 711
- 712
- 713
- 714
- 715
- 716
- 717
- 718
- 719
- 720
- 721
- 722
- 723
- 724
- 725
- 726
- 727
- 728
- 729
- 730
- 731
- 732
- 733
- 734
- 735
- 736
- 737
- 738
- 739
- 740
- 741
- 742
- 743
- 744
- 745
- 746
- 747
- 748
- 749
- 750
- 751
- 752
- 753
- 754
- 755
- 756
- 757
- 758
- 759
- 760
- 761
- 762
- 763
- 764
- 765
- 766
- 767
- 768
- 769
- 770
- 771
- 772
- 773
- 774
- 775
- 776
- 777
- 778
- 779
- 780
- 781
- 782
- 783
- 784
- 785
- 786
- 787
- 788
- 789
- 790
- 791
- 792
- 793
- 794
- 795
- 796
- 797
- 798
- 799
- 800
- 801
- 802
- 803
- 804
- 805
- 806
- 807
- 808
- 809
- 810
- 811
- 812
- 813
- 814
- 815
- 816
- 817
- 818
- 819
- 820
- 821
- 822
- 823
- 824
- 825
- 826
- 827
- 828
- 829
- 830
- 831
- 832
- 833
- 834
- 835
- 836
- 837
- 838
- 839
- 840
- 841
- 842
- 843
- 844
- 845
- 846
- 847
- 848
- 849
- 850
- 851
- 852
- 853
- 854
- 855
- 856
- 857
- 858
- 859
- 860
- 861
- 862
- 863
- 864
- 865
- 866
- 867
- 868
- 869
- 870
- 871
- 872
- 873
- 874
- 875
- 876
- 877
- 878
- 879
- 880
- 881
- 882
- 883
- 884
- 885
- 886
- 887
- 888
- 889
- 890
- 891
- 892
- 893
- 894
- 895
- 896
- 897
- 898
- 899
- 900
- 901
- 902
- 903
- 904
- 905
- 906
- 907
- 908
- 909
- 910
- 911
- 912
- 913
- 914
- 915
- 916
- 917
- 918
- 919
- 920
- 921
- 922
- 923
- 924
- 925
- 926
- 927
- 928
- 929
- 930
- 931
- 932
- 933
- 934
- 935
- 936
- 937
- 938
- 939
- 940
- 941
- 942
- 943
- 944
- 945
- 946
- 947
- 948
- 949
- 950
- 951
- 952
- 953
- 954
- 955
- 956
- 957
- 958
- 959
- 960
- 961
- 962
- 963
- 964
- 965
- 966
- 967
- 968
- 969
- 970
- 971
- 972
- 973
- 974
- 975
- 976
- 977
- 978
- 979
- 980
- 981
- 982
- 983
- 984
- 985
- 986
- 987
- 988
- 989
- 990
- 991
- 992
- 993
- 994
- 995
- 996
- 997
- 998
- 999
- 1000
- 1001
- 1002
- 1003
- 1004
- 1005
- 1006
- 1007
- 1008
- 1009
- 1010
- 1011
- 1012
- 1013
- 1014
- 1015
- 1016
- 1017
- 1018
- 1019
- 1020
- 1021
- 1022
- 1023
- 1024
- 1025
- 1026
- 1027
- 1028
- 1029
- 1030
- 1031
- 1032
- 1033
- 1034
- 1035
- 1036
- 1037
- 1038
- 1039
- 1040
- 1041
- 1042
- 1043
- 1044
- 1045
- 1046
- 1047
- 1048
- 1049
- 1050
- 1051
- 1052
- 1053
- 1054
- 1055
- 1056
- 1057
- 1058
- 1059
- 1060
- 1061
- 1062
- 1063
- 1064
- 1065
- 1066
- 1067
- 1068
- 1069
- 1070
- 1071
- 1072
- 1073
- 1074
- 1075
- 1076
- 1077
- 1078
- 1079
- 1080
- 1081
- 1082
- 1083
- 1084
- 1085
- 1086
- 1087
- 1088
- 1089
- 1090
- 1091
- 1092
- 1093
- 1094
- 1095
- 1096
- 1097
- 1098
- 1099
- 1100
- 1101
- 1102
- 1103
- 1104
- 1105
- 1106
- 1107
- 1108
- 1109
- 1110
- 1111
- 1112
- 1113
- 1114
- 1115
- 1116
- 1117
- 1118
- 1119
- 1120
- 1121
- 1122
- 1123
- 1124
- 1125
- 1126
- 1127
- 1128
- 1129
- 1130
- 1131
- 1132
- 1133
- 1134
- 1135
- 1136
- 1137
- 1138
- 1139
- 1140
- 1141
- 1142
- 1143
- 1144
- 1145
- 1146
- 1147
- 1148
- 1149
- 1150
- 1151
- 1152
- 1153
- 1154
- 1155
- 1156
- 1157
- 1158
- 1159
- 1160
- 1161
- 1162
- 1163
- 1164
- 1165
- 1166
- 1167
- 1168
- 1169
- 1170
- 1171
- 1172
- 1173
- 1174
- 1175
- 1176
- 1177
- 1178
- 1179
- 1180
- 1181
- 1182
- 1183
- 1184
- 1185
- 1186
- 1187
- 1188
- 1189
- 1190
- 1191
- 1192
- 1193
- 1194
- 1195
- 1196
- 1197
- 1198
- 1199
- 1200
- 1201
- 1202
- 1203
- 1204
- 1205
- 1206
- 1207
- 1208
- 1209
- 1210
- 1211
- 1212
- 1213
- 1214
- 1215
- 1216
- 1217
- 1218
- 1219
- 1220
- 1221
- 1222
- 1223
- 1224
- 1225
- 1226
- 1227
- 1228
- 1229
- 1230
- 1231
- 1232
- 1233
- 1234
- 1235
- 1236
- 1237
- 1238
- 1239
- 1240
- 1241
- 1242
- 1243
- 1244
- 1245
- 1246
- 1247
- 1248
- 1249
- 1250
- 1251
- 1252
- 1253
- 1254
- 1255
- 1256
- 1257
- 1258
- 1259
- 1260
- 1261
- 1262
- 1263
- 1264
- 1265
- 1266
- 1267
- 1268
- 1269
- 1270
- 1271
- 1272
- 1273
- 1274
- 1275
- 1276
- 1277
- 1278
- 1279
- 1280
- 1281
- 1282
- 1283
- 1284
- 1285
- 1286
- 1287
- 1288
- 1289
- 1290
- 1291
- 1292
- 1293
- 1294
- 1295
- 1296
- 1297
- 1298
- 1299
- 1300
- 1301
- 1302
- 1303
- 1304
- 1305
- 1306
- 1307
- 1308
- 1309
- 1310
- 1311
- 1312
- 1313
- 1314
- 1315
- 1316
- 1317
- 1318
- 1319
- 1320
- 1321
- 1322
- 1323
- 1324
- 1325
- 1326
- 1327
- 1328
- 1329
- 1330
- 1331
- 1332
- 1333
- 1334
- 1335
- 1336
- 1337
- 1338
- 1339
- 1340
- 1341
- 1342
- 1343
- 1344
- 1345
- 1346
- 1347
- 1348
- 1349
- 1350
- 1351
- 1352
- 1353
- 1354
- 1355
- 1356
- 1357
- 1358
- 1359
- 1360
- 1361
- 1362
- 1363
- 1364
- 1365
- 1366
- 1367
- 1368
- 1369
- 1370
- 1371
- 1372
- 1373
- 1374
- 1375
- 1376
- 1377
- 1378
- 1379
- 1380
- 1381
- 1382
- 1383
- 1384
- 1385
- 1386
- 1387
- 1388
- 1389
- 1390
- 1391
- 1392
- 1393
- 1394
- 1395
- 1396
- 1397
- 1398
- 1399
- 1400
- 1401
- 1402
- 1403
- 1404
- 1405
- 1406
- 1407
- 1408
- 1409
- 1410
- 1411
- 1412
- 1413
- 1414
- 1415
- 1416
- 1417
- 1418
- 1419
- 1420
- 1421
- 1422
- 1423
- 1424
- 1425
- 1426
- 1427
- 1428
- 1429
- 1430
- 1431
- 1432
- 1433
- 1434
- 1435
- 1436
- 1437
- 1438
- 1439
- 1440
- 1441
- 1442
- 1443
- 1444
- 1445
- 1446
- 1447
- 1448
- 1449
- 1450
- 1451
- 1452
- 1453
- 1454
- 1455
- 1456
- 1457
- 1458
- 1459
- 1460
- 1461
- 1462
- 1463
- 1464
- 1465
- 1466
- 1467
- 1468
- 1469
- 1470
- 1471
- 1472
- 1473
- 1474
- 1475
- 1476
- 1477
- 1478
- 1479
- 1480
- 1481
- 1482
- 1483
- 1484
- 1485
- 1486
- 1487
- 1488
- 1489
- 1490
- 1491
- 1492
- 1493
- 1494
- 1495
- 1496
- 1497
- 1498
- 1499
- 1500
- 1501
- 1502
- 1503
- 1504
- 1505
- 1506
- 1507
- 1508
- 1509
- 1510
- 1511
- 1512
- 1513
- 1514
- 1515
- 1516
- 1517
- 1518
- 1519
- 1520
- 1521
- 1522
- 1523
- 1524
- 1525
- 1526
- 1527
- 1528
- 1529
- 1530
- 1531
- 1532
- 1533
- 1534
- 1535
- 1536
- 1537
- 1538
- 1539
- 1540
- 1541
- 1542
- 1543
- 1544
- 1545
- 1546
- 1547
- 1548
- 1549
- 1550
- 1551
- 1552
- 1553
- 1554
- 1555
- 1556
- 1557
- 1558
- 1559
- 1560
- 1561
- 1562
- 1563
- 1564
- 1565
- 1566
- 1567
- 1568
- 1569
- 1570
- 1571
- 1572
- 1573
- 1574
- 1575
- 1576
- 1577
- 1578
- 1579
- 1580
- 1581
- 1582
- 1583
- 1584
- 1585
- 1586
- 1587
- 1588
- 1589
- 1590
- 1591
- 1592
- 1593
- 1594
- 1595
- 1596
- 1597
- 1598
- 1599
- 1600
- 1601
- 1602
- 1603
- 1604
- 1605
- 1606
- 1607
- 1608
- 1609
- 1610
- 1611
- 1612
- 1613
- 1614
- 1615
- 1616
- 1617
- 1618
- 1619
- 1620
- 1621
- 1622
- 1623
- 1624
- 1625
- 1626
- 1627
- 1628
- 1629
- 1630
- 1631
- 1632
- 1633
- 1634
- 1635
- 1636
- 1637
- 1638
- 1639
- 1640
- 1641
- 1642
- 1643
- 1644
- 1645
- 1646
- 1647
- 1648
- 1649
- 1650
- 1651
- 1652
- 1653
- 1654
- 1655
- 1656
- 1657
- 1658
- 1659
- 1660
- 1661
- 1662
- 1663
- 1664
- 1665
- 1666
- 1667
- 1668
- 1669
- 1670
- 1671
- 1672
- 1673
- 1674
- 1675
- 1676
- 1677
- 1678
- 1679
- 1680
- 1681
- 1682
- 1683
- 1684
- 1685
- 1686
- 1687
- 1688
- 1689
- 1690
- 1691
- 1692
- 1693
- 1694
- 1695
- 1696
- 1697
- 1698
- 1699
- 1700
- 1701
- 1702
- 1703
- 1704
- 1705
- 1706
- 1707
- 1708
- 1709
- 1710
- 1711
- 1712
- 1713
- 1714
- 1715
- 1716
- 1717
- 1718
- 1719
- 1720
- 1721
- 1722
- 1723
- 1724
- 1725
- 1726
- 1727
- 1728
- 1729
- 1730
- 1731
- 1732
- 1733
- 1734
- 1735
- 1736
- 1737
- 1738
- 1739
- 1740
- 1741
- 1742
- 1743
- 1744
- 1745
- 1746
- 1747
- 1748
- 1749
- 1750
- 1751
- 1752
- 1753
- 1754
- 1755
- 1756
- 1757
- 1758
- 1759
- 1760
- 1761
- 1762
- 1763
- 1764
- 1765
- 1766
- 1767
- 1768
- 1769
- 1770
- 1771
- 1772
- 1773
- 1774
- 1775
- 1776
- 1777
- 1778
- 1779
- 1780
- 1781
- 1782
- 1783
- 1784
- 1785
- 1786
- 1787
- 1788
- 1789
- 1790
- 1791
- 1792
- 1793
- 1794
- 1795
- 1796
- 1797
- 1798
- 1799
- 1800
- 1801
- 1802
- 1803
- 1804
- 1805
- 1806
- 1807
- 1808
- 1809
- 1810
- 1811
- 1812
- 1813
- 1814
- 1815
- 1816
- 1817
- 1818
- 1819
- 1820
- 1821
- 1822
- 1823
- 1824
- 1825
- 1826
- 1827
- 1828
- 1829
- 1830
- 1831
- 1832
- 1833
- 1834
- 1835
- 1836
- 1837
- 1838
- 1839
- 1840
- 1841
- 1842
- 1843
- 1844
- 1845
- 1846
- 1847
- 1848
- 1849
- 1850
- 1851
- 1852
- 1853
- 1854
- 1855
- 1856
- 1857
- 1858
- 1859
- 1860
- 1861
- 1862
- 1863
- 1864
- 1865
- 1866
- 1867
- 1868
- 1869
- 1870
- 1871
- 1872
- 1873
- 1874
- 1875
- 1876
- 1877
- 1878
- 1879
- 1880
- 1881
- 1882
- 1883
- 1884
- 1885
- 1886
- 1887
- 1888
- 1889
- 1890
- 1891
- 1892
- 1893
- 1894
- 1895
- 1896
- 1897
- 1898
- 1899
- 1900
- 1901
- 1902
- 1903
- 1904
- 1905
- 1906
- 1907
- 1908
- 1909
- 1910
- 1911
- 1912
- 1913
- 1914
- 1915
- 1916
- 1917
- 1918
- 1919
- 1920
- 1921
- 1922
- 1923
- 1924
- 1925
- 1926
- 1927
- 1928
- 1929
- 1930
- 1931
- 1932
- 1933
- 1934
- 1935
- 1936
- 1937
- 1938
- 1939
- 1940
- 1941
- 1942
- 1943
- 1944
- 1945
- 1946
- 1947
- 1948
- 1949
- 1950
- 1951
- 1952
- 1953
- 1954
- 1955
- 1956
- 1957
- 1958
- 1959
- 1960
- 1961
- 1962
- 1963
- 1964
- 1965
- 1966
- 1967
- 1968
- 1969
- 1970
- 1971
- 1972
- 1973
- 1974
- 1975
- 1976
- 1977
- 1978
- 1979
- 1980
- 1981
- 1982
- 1983
- 1984
- 1985
- 1986
- 1987
- 1988
- 1989
- 1990
- 1991
- 1992
- 1993
- 1994
- 1995
- 1996
- 1997
- 1998
- 1999
- 2000
- 2001
- 2002
- 2003
- 2004
- 2005
- 2006
- 2007
- 2008
- 2009
- 2010
- 2011
- 2012
- 2013
- 2014
- 2015
- 2016
- 2017
- 2018
- 2019
- 2020
- 2021
- 2022
- 2023
- 2024
- 2025
- 2026
- 2027
- 2028
- 2029
- 2030
- 2031
- 2032
- 2033
- 2034
- 2035
- 2036
- 2037
- 2038
- 2039
- 2040
- 2041
- 2042
- 2043
- 2044
- 2045
- 2046
- 2047
- 2048
- 2049
- 2050
- 2051
- 2052
- 2053
- 2054
- 2055
- 2056
- 2057
- 2058
- 2059
- 2060
- 2061
- 2062
- 2063
- 2064
- 2065
- 2066
- 2067
- 2068
- 2069
- 2070
- 2071
- 2072
- 2073
- 2074
- 2075
- 2076
- 2077
- 2078
- 2079
- 2080
- 2081
- 2082
- 2083
- 2084
- 2085
- 2086
- 2087
- 2088
- 2089
- 2090
- 2091
- 2092
- 2093
- 2094
- 2095
- 2096
- 2097
- 2098
- 2099
- 2100
- 2101
- 2102
- 2103
- 2104
- 2105
- 2106
- 2107
- 2108
- 2109
- 2110
- 2111
- 2112
- 2113
- 2114
- 2115
- 2116
- 2117
- 2118
- 2119
- 2120
- 2121
- 2122
- 2123
- 2124
- 2125
- 2126
- 2127
- 2128
- 2129
- 2130
- 2131
- 2132
- 2133
- 2134
- 2135
- 2136
- 2137
- 2138
- 2139
- 2140
- 2141
- 2142
- 2143
- 2144
- 2145
- 2146
- 2147
- 2148
- 2149
- 2150
- 2151
- 2152
- 2153
- 2154
- 2155
- 2156
- 2157
- 2158
- 2159
- 2160
- 2161
- 2162
- 2163
- 2164
- 2165
- 2166
- 2167
- 2168
- 2169
- 2170
- 2171
- 2172
- 2173
- 2174
- 2175
- 2176
- 2177
- 2178
- 2179
- 2180
- 2181
- 2182
- 2183
- 2184
- 2185
- 2186
- 2187
- 2188
- 2189
- 2190
- 2191
- 2192
- 2193
- 2194
- 2195
- 2196
- 2197
- 2198
- 2199
- 2200
- 2201
- 2202
- 2203
- 2204
- 2205
- 2206
- 2207
- 2208
- 2209
- 2210
- 2211
- 2212
- 2213
- 2214
- 2215
- 2216
- 2217
- 2218
- 2219
- 2220
- 2221
- 2222
- 2223
- 2224
- 2225
- 2226
- 2227
- 2228
- 2229
- 2230
- 2231
- 2232
- 2233
- 2234
- 2235
- 2236
- 2237
- 2238
- 2239
- 2240
- 2241
- 2242
- 2243
- 2244
- 2245
- 2246
- 2247
- 2248
- 2249
- 2250
- 2251
- 2252
- 2253
- 2254
- 2255
- 2256
- 2257
- 2258
- 2259
- 2260
- 2261
- 2262
- 2263
- 2264
- 2265
- 2266
- 2267
- 2268
- 2269
- 2270
- 2271
- 2272
- 2273
- 2274
- 2275
- 2276
- 2277
- 2278
- 2279
- 2280
- 2281
- 2282
- 2283
- 2284
- 2285
- 2286
- 2287
- 2288
- 2289
- 2290
- 2291
- 2292
- 2293
- 2294
- 2295
- 2296
- 2297
- 2298
- 2299
- 2300
- 2301
- 2302
- 2303
- 2304
- 2305
- 2306
- 2307
- 2308
- 2309
- 2310
- 2311
- 2312
- 2313
- 2314
- 2315
- 2316
- 2317
- 2318
- 2319
- 2320
- 2321
- 2322
- 2323
- 2324
- 2325
- 2326
- 2327
- 2328
- 2329
- 2330
- 2331
- 2332
- 2333
- 2334
- 2335
- 2336
- 2337
- 2338
- 2339
- 2340
- 2341
- 2342
- 2343
- 2344
- 2345
- 2346
- 2347
- 2348
- 2349
- 2350
- 2351
- 2352
- 2353
- 2354
- 2355
- 2356
- 2357
- 2358
- 2359
- 2360
- 2361
- 2362
- 2363
- 2364
- 2365
- 2366
- 2367
- 2368
- 2369
- 2370
- 2371
- 2372
- 2373
- 2374
- 2375
- 2376
- 2377
- 2378
- 2379
- 2380
- 2381
- 2382
- 2383
- 2384
- 2385
- 2386
- 2387
- 2388
- 2389
- 2390
- 2391
- 2392
- 2393
- 2394
- 2395
- 2396
- 2397
- 2398
- 2399
- 2400
- 2401
- 2402
- 2403
- 2404
- 2405
- 2406
- 2407
- 2408
- 2409
- 2410
- 2411
- 2412
- 2413
- 2414
- 2415
- 2416
- 2417
- 2418
- 2419
- 2420
- 2421
- 2422
- 2423
- 2424
- 2425
- 2426
- 2427
- 2428
- 2429
- 2430
- 2431
- 2432
- 2433
- 2434
- 2435
- 2436
- 2437
- 2438
- 2439
- 2440
- 2441
- 2442
- 2443
- 2444
- 2445
- 2446
- 2447
- 2448
- 2449
- 2450
- 2451
- 2452
- 2453
- 2454
- 2455
- 2456
- 2457
- 2458
- 2459
- 2460
- 2461
- 2462
- 2463
- 2464
- 2465
- 2466
- 2467
- 2468
- 2469
- 2470
- 2471
- 2472
- 2473
- 2474
- 2475
- 2476
- 2477
- 2478
- 2479
- 2480
- 2481
- 2482
- 2483
- 2484
- 2485
- 2486
- 2487
- 2488
- 2489
- 2490
- 2491
- 2492
- 2493
- 2494
- 2495
- 2496
- 2497
- 2498
- 2499
- 2500
- 2501
- 2502
- 2503
- 2504
- 2505
- 2506
- 2507
- 2508
- 2509
- 2510
- 2511
- 2512
- 2513
- 2514
- 2515
- 2516
- 2517
- 2518
- 2519
- 2520
- 2521
- 2522
- 2523
- 2524
- 2525
- 2526
- 2527
- 2528
- 2529
- 2530
- 2531
- 2532
- 2533
- 2534
- 2535
- 2536
- 2537
- 2538
- 2539
- 2540
- 2541
- 2542
- 2543
- 2544
- 2545
- 2546
- 2547
- 2548
- 2549
- 2550
- 2551
- 2552
- 2553
- 2554
- 2555
- 2556
- 2557
- 2558
- 2559
- 2560
- 2561
- 2562
- 2563
- 2564
- 2565
- 2566
- 2567
- 2568
- 2569
- 2570
- 2571
- 2572
- 2573
- 2574
- 2575
- 2576
- 2577
- 2578
- 2579
- 2580
- 2581
- 2582
- 2583
- 2584
- 2585
- 2586
- 2587
- 2588
- 2589
- 2590
- 2591
- 2592
- 2593
- 2594
- 2595
- 2596
- 2597
- 2598
- 2599
- 2600
- 2601
- 2602
- 2603
- 2604
- 2605
- 2606
- 2607
- 2608
- 2609
- 2610
- 2611
- 2612
- 2613
- 2614
- 2615
- 2616
- 2617
- 2618
- 2619
- 2620
- 2621
- 2622
- 2623
- 2624
- 2625
- 2626
- 2627
- 2628
- 2629
- 2630
- 2631
- 2632
- 2633
- 2634
- 2635
- 2636
- 2637
- 2638
- 2639
- 2640
- 2641
- 2642
- 2643
- 2644
- 2645
- 2646
- 2647
- 2648
- 2649
- 2650
- 2651
- 2652
- 2653
- 2654
- 2655
- 2656
- 2657
- 2658
- 2659
- 2660
- 2661
- 2662
- 2663
- 2664
- 2665
- 2666
- 2667
- 2668
- 2669
- 2670
- 2671
- 2672
- 2673
- 2674
- 2675
- 2676
- 2677
- 2678
- 2679
- 2680
- 2681
- 2682
- 2683
- 2684
- 2685
- 2686
- 2687
- 2688
- 2689
- 2690
- 2691
- 2692
- 2693
- 2694
- 2695
- 2696
- 2697
- 2698
- 2699
- 2700
- 2701
- 2702
- 2703
- 2704
- 2705
- 2706
- 2707
- 2708
- 2709
- 2710
- 2711
- 2712
- 2713
- 2714
- 2715
- 2716
- 2717
- 2718
- 2719
- 2720
- 2721
- 2722
- 2723
- 2724
- 2725
- 2726
- 2727
- 2728
- 2729
- 2730
- 2731
- 2732
- 2733
- 2734
- 2735
- 2736
- 2737
- 2738
- 2739
- 2740
- 2741
- 2742
- 2743
- 2744
- 2745
- 2746
- 2747
- 2748
- 2749
- 2750
- 2751
- 2752
- 2753
- 2754
- 2755
- 2756
- 2757
- 2758
- 2759
- 2760
- 2761
- 2762
- 2763
- 2764
- 2765
- 2766
- 2767
- 2768
- 2769
- 2770
- 2771
- 2772
- 2773
- 2774
- 2775
- 2776
- 2777
- 2778
- 2779
- 2780
- 2781
- 2782
- 2783
- 2784
- 2785
- 2786
- 2787
- 2788
- 2789
- 2790
- 2791
- 2792
- 2793
- 2794
- 2795
- 2796
- 2797
- 2798
- 2799
- 2800
- 2801
- 2802
- 2803
- 2804
- 2805
- 2806
- 2807
- 2808
- 2809
- 2810
- 2811
- 2812
- 2813
- 2814
- 2815
- 2816
- 2817
- 2818
- 2819
- 2820
- 2821
- 2822
- 2823
- 2824
- 2825
- 2826
- 2827
- 2828
- 2829
- 2830
- 2831
- 2832
- 2833
- 2834
- 2835
- 2836
- 2837
- 2838
- 2839
- 2840
- 2841
- 2842
- 2843
- 2844
- 2845
- 2846
- 2847
- 2848
- 2849
- 2850
- 2851
- 2852
- 2853
- 2854
- 2855
- 2856
- 2857
- 2858
- 2859
- 2860
- 2861
- 2862
- 2863
- 2864
- 2865
- 2866
- 2867
- 2868
- 2869
- 2870
- 2871
- 2872
- 2873
- 2874
- 2875
- 2876
- 2877
- 2878
- 2879
- 2880
- 2881
- 2882
- 2883
- 2884
- 2885
- 2886
- 2887
- 2888
- 2889
- 2890
- 2891
- 2892
- 2893
- 2894
- 2895
- 2896
- 2897
- 2898
- 2899
- 2900
- 2901
- 2902
- 2903
- 2904
- 2905
- 2906
- 2907
- 2908
- 2909
- 2910
- 2911
- 2912
- 2913
- 2914
- 2915
- 2916
- 2917
- 2918
- 2919
- 2920
- 2921
- 2922
- 2923
- 2924
- 2925
- 2926
- 2927
- 2928
- 2929
- 2930
- 2931
- 2932
- 2933
- 2934
- 2935
- 2936
- 2937
- 2938
- 2939
- 2940
- 2941
- 2942
- 2943
- 2944
- 2945
- 2946
- 2947
- 2948
- 2949
- 2950
- 2951
- 2952
- 2953
- 2954
- 2955
- 2956
- 2957
- 2958
- 2959
- 2960
- 2961
- 2962
- 2963
- 2964
- 2965
- 2966
- 2967
- 2968
- 2969
- 2970
- 2971
- 2972
- 2973
- 2974
- 2975
- 2976
- 2977
- 2978
- 2979
- 2980
- 2981
- 2982
- 2983
- 2984
- 2985
- 2986
- 2987
- 2988
- 2989
- 2990
- 2991
- 2992
- 2993
- 2994
- 2995
- 2996
- 2997
- 2998
- 2999
- 3000
- 3001
- 3002
- 3003
- 3004
- 3005
- 3006
- 3007
- 3008
- 3009
- 3010
- 3011
- 3012
- 3013
- 3014
- 3015
- 3016
- 3017
- 3018
- 3019
- 3020
- 3021
- 3022
- 3023
- 3024
- 3025
- 3026
- 3027
- 3028
- 3029
- 3030
- 3031
- 3032
- 3033
- 3034
- 3035
- 3036
- 3037
- 3038
- 3039
- 3040
- 3041
- 3042
- 3043
- 3044
- 3045
- 3046
- 3047
- 3048
- 3049
- 3050
- 3051
- 3052
- 3053
- 3054
- 3055
- 3056
- 3057
- 3058
- 3059
- 3060
- 3061
- 3062
- 3063
- 3064
- 3065
- 3066
- 3067
- 3068
- 3069
- 3070
- 3071
- 3072
- 3073
- 3074
- 3075
- 3076
- 3077
- 3078
- 3079
- 3080
- 3081
- 3082
- 3083
- 3084
- 3085
- 3086
- 3087
- 3088
- 3089
- 3090
- 3091
- 3092
- 3093
- 3094
- 3095
- 3096
- 3097
- 3098
- 3099
- 3100
- 3101
- 3102
- 3103
- 3104
- 3105
- 3106
- 3107
- 3108
- 3109
- 3110
- 3111
- 3112
- 3113
- 3114
- 3115
- 3116
- 3117
- 3118
- 3119
- 3120
- 3121
- 3122
- 3123
- 3124
- 3125
- 3126
- 3127
- 3128
- 3129
- 3130
- 3131
- 3132
- 3133
- 3134
- 3135
- 3136
- 3137
- 3138
- 3139
- 3140
- 3141
- 3142
- 3143
- 3144
- 3145
- 3146
- 3147
- 3148
- 3149
- 3150
- 3151
- 3152
- 3153
- 3154
- 3155
- 3156
- 3157
- 3158
- 3159
- 3160
- 3161
- 3162
- 3163
- 3164
- 3165
- 3166
- 3167
- 3168
- 3169
- 3170
- 3171
- 3172
- 3173
- 3174
- 3175
- 3176
- 3177
- 3178
- 3179
- 3180
- 3181
- 3182
- 3183
- 3184
- 3185
- 3186
- 3187
- 3188
- 3189
- 3190
- 3191
- 3192
- 3193
- 3194
- 3195
- 3196
- 3197
- 3198
- 3199
- 3200
- 3201
- 3202
- 3203
- 3204
- 3205
- 3206
- 3207
- 3208
- 3209
- 3210
- 3211
- 3212
- 3213
- 3214
- 3215
- 3216
- 3217
- 3218
- 3219
- 3220
- 3221
- 3222
- 3223
- 3224
- 3225
- 3226
- 3227
- 3228
- 3229
- 3230
- 3231
- 3232
- 3233
- 3234
- 3235
- 3236
- 3237
- 3238
- 3239
- 3240
- 3241
- 3242
- 3243
- 3244
- 3245
- 3246
- 3247
- 3248
- 3249
- 3250
- 3251
- 3252
- 3253
- 3254
- 3255
- 3256
- 3257
- 3258
- 3259
- 3260
- 3261
- 3262
- 3263
- 3264
- 3265
- 3266
- 3267
- 3268
- 3269
- 3270
- 3271
- 3272
- 3273
- 3274
- 3275
- 3276
- 3277
- 3278
- 3279
- 3280
- 3281
- 3282
- 3283
- 3284
- 3285
- 3286
- 3287
- 3288
- 3289
- 3290
- 3291
- 3292
- 3293
- 3294
- 3295
- 3296
- 3297
- 3298
- 3299
- 3300
- 3301
- 3302
- 3303
- 3304
- 3305
- 3306
- 3307
- 3308
- 3309
- 3310
- 3311
- 3312
- 3313
- 3314
- 3315
- 3316
- 3317
- 3318
- 3319
- 3320
- 3321
- 3322
- 3323
- 3324
- 3325
- 3326
- 3327
- 3328
- 3329
- 3330
- 3331
- 3332
- 3333
- 3333
推荐文章